diff --git a/build.gradle b/build.gradle index 8e2d942e48..5e9743fd1f 100644 --- a/build.gradle +++ b/build.gradle @@ -64,29 +64,19 @@ allprojects { } dependencies { - // 平台前端的jar - implementation 'com.fr.decision:fine-decision-webui:' + frVersion implementation 'com.fr.webui:fine-webui:' + frVersion - // 报表前端依赖 - implementation 'com.fr.decision:fine-decision-report-webui:' + frVersion //认证单点依赖 implementation "org.jasig.cas.client:cas-client-core:3.6.4" implementation "cas:casclient:2.0.11" - // 门户依赖前端 - implementation 'com.fr.portal:fine-portal-webui:' + apiVersion - //消息中心前端 - implementation 'com.fr.messenger:fine-messenger-webui:' + apiVersion - // 注册前端依赖 - implementation 'com.fr.license:fine-license-webui:' + apiVersion // 认证前端依赖 implementation 'com.fr.cbb:fine-cbb-common:' + cbbVersion - implementation 'com.fr.auth:fine-auth-webui:' + apiVersion // 门户 implementation 'com.fr.portal:fine-portal:' + apiVersion implementation 'com.fr.portal:fine-portal-api:' + apiVersion // cbb implementation 'com.fr.essential:fine-essential:' + cbbVersion - implementation 'com.fr.cbb:fine-universal-skeleton:' + cbbVersion + implementation 'com.fr.cbb:fine-cbb-common:' + cbbVersion + implementation 'com.fr.cbb:fine-cbb-extend:' + cbbVersion // plugin implementation 'com.fr.plugin:fine-plugin-api:' + apiVersion implementation 'com.fr.plugin:fine-plugin:' + apiVersion @@ -102,12 +92,9 @@ allprojects { // lic implementation 'com.fr.license:fine-license:' + apiVersion implementation 'com.fr.license:fine-license-api:' + apiVersion - // cluster - implementation 'com.fr.cluster:fine-cluster-api:' + apiVersion // messenger implementation 'com.fr.messenger:fine-messenger:' + carinaVersion implementation 'com.install4j:install4j-runtime:8.0.4' - implementation 'com.fr.third:jxbrowser:6.23' implementation "com.fr.third:jxbrowser-v7:${jxBrowserVersion}" implementation "com.fr.third:jxbrowser-swing-v7:${jxBrowserVersion}" implementation 'com.fr.third.server:servlet-api:3.0' @@ -143,18 +130,14 @@ allprojects { // 目前开发工程适配 mac_x64, mac_aarch64, windows_x64 if (OperatingSystem.current().isMacOsX() && "aarch64".equals(System.getProperty("os.arch"))) { dependencies { - // jxbrowser 6.23不支持M1,因此没有本地库,但是6.23jar还是需要留着,用来兼容 - implementation 'com.fr.third:jxbrowser-mac:6.23' implementation "com.fr.third:jxbrowser-mac-arm-v7:${jxBrowserVersion}" } } else if (OperatingSystem.current().isMacOsX()) { dependencies { - implementation 'com.fr.third:jxbrowser-mac:6.23' implementation "com.fr.third:jxbrowser-mac-v7:${jxBrowserVersion}" } } else if (OperatingSystem.current().isWindows()) { dependencies { - implementation 'com.fr.third:jxbrowser-win64:6.23' implementation "com.fr.third:jxbrowser-win64-v7:${jxBrowserVersion}" } } diff --git a/designer-base/src/main/java/com/fine/theme/icon/IconManager.java b/designer-base/src/main/java/com/fine/theme/icon/IconManager.java index aa2ef8b173..01f722e24b 100644 --- a/designer-base/src/main/java/com/fine/theme/icon/IconManager.java +++ b/designer-base/src/main/java/com/fine/theme/icon/IconManager.java @@ -1,5 +1,8 @@ package com.fine.theme.icon; +import com.fine.theme.icon.plugin.PluginIconSet; +import com.fine.theme.light.ui.FineLightIconSet; +import com.formdev.flatlaf.FlatLaf; import com.fr.base.extension.FileExtension; import com.fr.general.IOUtils; import com.fr.log.FineLoggerFactory; @@ -8,10 +11,13 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import javax.swing.Icon; +import javax.swing.LookAndFeel; +import javax.swing.UIManager; import java.awt.Dimension; import java.lang.ref.WeakReference; import java.util.ArrayList; import java.util.HashMap; +import java.util.List; /** * 图标管理器 @@ -26,12 +32,42 @@ import java.util.HashMap; */ @Immutable public class IconManager { - public static final String ICON_DISABLE_SUFFIX = "_disable"; public static final Dimension DEFAULT_DIMENSION = new Dimension(16, 16); - private static final ArrayList ICON_SETS = new ArrayList<>(2); + private static final ArrayList ICON_SETS = new ArrayList<>(); private static final HashMap> CACHE = new HashMap<>(64); + /** + * 初始化 Icon:FineIcon、PluginIcon + */ + public static void initializeIcon() { + addIconSet(); + } + + /** + * 切换 Icon + */ + public static void updateIcon() { + ICON_SETS.clear(); + clearCache(); + addIconSet(); + } + + private static void addIconSet() { + boolean dark = false; + LookAndFeel laf = UIManager.getLookAndFeel(); + if (laf instanceof FlatLaf) { + dark = ((FlatLaf) laf).isDark(); + } + if (dark) { + // dark 主题还没适配 + addSet(new FineLightIconSet()); + } else { + addSet(new FineLightIconSet()); + } + addSet(new PluginIconSet()); + } + /** * 获取图标集 @@ -40,10 +76,17 @@ public class IconManager { * @return 图标集 */ public static IconSet getSet(String id) { + IconSet iconSet = null; for (IconSet set : ICON_SETS) { if (set.getId().equals(id)) { - return set; + iconSet = set; } + if (set instanceof PluginIconSet && iconSet == null) { + iconSet = PluginIconSet.getIconSet(id); + } + } + if (iconSet != null) { + return iconSet; } throw new IconException("[IconManager] Can not find icon set by id: " + id); } diff --git a/designer-base/src/main/java/com/fine/theme/icon/plugin/PluginIconSet.java b/designer-base/src/main/java/com/fine/theme/icon/plugin/PluginIconSet.java new file mode 100644 index 0000000000..39d8c04112 --- /dev/null +++ b/designer-base/src/main/java/com/fine/theme/icon/plugin/PluginIconSet.java @@ -0,0 +1,127 @@ +package com.fine.theme.icon.plugin; + +import com.fine.theme.icon.AbstractIconSet; +import com.fine.theme.icon.IconSet; +import com.fine.theme.icon.IconType; +import com.fine.theme.icon.JsonIconSet; +import com.fine.theme.icon.UrlIconResource; +import com.formdev.flatlaf.FlatLaf; +import com.fr.design.fun.LazyIconProvider; +import com.fr.general.GeneralContext; +import com.fr.plugin.manage.PluginFilter; +import com.fr.plugin.observer.PluginEvent; +import com.fr.plugin.observer.PluginEventListener; +import com.fr.plugin.observer.PluginEventType; +import com.fr.stable.AssistUtils; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import javax.swing.Icon; +import javax.swing.LookAndFeel; +import javax.swing.UIManager; +import java.awt.Dimension; +import java.util.ArrayList; +import java.util.Set; +import java.util.function.Consumer; + + +/** + * 管理插件 iconSet + * @author lemon + * @since + * Created on + */ +public class PluginIconSet extends AbstractIconSet { + + private static final String NAME = "Plugin Icon Set"; + private static final ArrayList PLUGIN_ICON_SETS = new ArrayList<>(); + + public PluginIconSet() { + name = NAME; + listenPluginIcons(); + } + + /** + * 适配插件图标 Icon + */ + public static void listenPluginIcons() { + //注册插件监听 + PluginFilter filter = context -> context.contain(LazyIconProvider.MARK_STRING); + + PluginEventListener insert = new PluginEventListener() { + @Override + public void on(PluginEvent event) { + handlePluginEvent(event, (provider) -> PLUGIN_ICON_SETS.add(generateJsonIconSet(provider))); + } + }; + + PluginEventListener remove = new PluginEventListener() { + @Override + public void on(PluginEvent event) { + handlePluginEvent(event, (provider) -> PLUGIN_ICON_SETS.removeIf(iconSet -> iconSet.getId().equals(provider.pluginId()))); + } + }; + + GeneralContext.listenPlugin(PluginEventType.AfterRun, insert, filter); + GeneralContext.listenPlugin(PluginEventType.AfterInstall, insert, filter); + GeneralContext.listenPlugin(PluginEventType.AfterForbid, remove, filter); + GeneralContext.listenPlugin(PluginEventType.AfterUninstall, remove, filter); + } + + private static void handlePluginEvent(PluginEvent event, Consumer consumer) { + Set set = event.getContext().getRuntime().get(LazyIconProvider.MARK_STRING); + for (LazyIconProvider provider : set) { + consumer.accept(provider); + } + } + + private static JsonIconSet generateJsonIconSet(LazyIconProvider provider) { + LookAndFeel laf = UIManager.getLookAndFeel(); + boolean dark = ((FlatLaf) laf).isDark(); + String jsonPath = dark ? provider.darkJsonPath() : provider.lightJsonPath(); + return new JsonIconSet(new UrlIconResource(jsonPath)) { + @Override + public @NotNull String getId() { + return provider.pluginId(); + } + }; + } + + @Override + public @Nullable Icon findIcon(@NotNull String id, @NotNull Dimension dimension, IconType type) { + Icon icon; + for (IconSet iconSet : PLUGIN_ICON_SETS) { + icon = iconSet.findIcon(id, dimension, type); + if (icon != null) { + return icon; + } + } + return null; + } + + /** + * 根据 id 匹配 icon set + * @param id 对于 plugin icon set, id 是 plugin_id + * @return icon set + */ + public static IconSet getIconSet(@NotNull final String id ) { + for (IconSet iconSet : PLUGIN_ICON_SETS) { + if (iconSet.getId().equals(id)) { + return iconSet; + } + } + return null; + } + + + @Override + public boolean equals(Object obj) { + return obj instanceof PluginIconSet + && AssistUtils.equals(this.name, ((PluginIconSet) obj).name); + } + + @Override + public int hashCode() { + return AssistUtils.hashCode(name); + } +} diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineButtonBorder.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineButtonBorder.java index 16405a1552..26ef4ec2ba 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/FineButtonBorder.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineButtonBorder.java @@ -32,7 +32,7 @@ public class FineButtonBorder extends FlatButtonBorder { return; } g2.setPaint(borderPaint); - FineUIUtils.paintPartRoundButtonBorder(c, g2, x, y, width, height, borderWidth, (float) getArc(c)); + FineUIUtils.paintPartRoundButtonBorder(c, g2, x, y, width, height, borderWidth, getArc(c)); } else { super.paintBorder(c, g, x, y, width, height); } diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineCalendarPaneUI.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineCalendarPaneUI.java new file mode 100644 index 0000000000..17cb012f04 --- /dev/null +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineCalendarPaneUI.java @@ -0,0 +1,59 @@ +package com.fine.theme.light.ui; + +import com.formdev.flatlaf.ui.FlatUIUtils; +import com.fr.design.gui.date.UICalendarPanel; + +import javax.swing.JComponent; +import javax.swing.UIManager; +import javax.swing.border.LineBorder; +import javax.swing.plaf.ComponentUI; +import javax.swing.plaf.PanelUI; +import java.awt.Color; + + +/** + * {@link UICalendarPanel} 的 UI 样式 + * + * @author lemon + * @since 12.0 + * Created on 2024/09/22 + */ +public class FineCalendarPaneUI extends PanelUI { + protected Color defaultBackground; + + /** + * @param shared + * @since 2 + */ + protected FineCalendarPaneUI() { + super(); + } + + /** + * 创建UI + * + * @param c 组件 + * @return ComponentUI + */ + public static ComponentUI createUI(JComponent c) { + return FlatUIUtils.createSharedUI(FineCalendarPaneUI.class, FineCalendarPaneUI::new); + } + + /** + * @param c the component where this UI delegate is being installed + */ + public void installUI(JComponent c) { + super.installUI(c); + defaultBackground = UIManager.getColor("Calendar.background"); + + //renderer this + c.setBackground(defaultBackground); + c.setBorder(new LineBorder(FlatUIUtils.getUIColor("defaultBorderColor", Color.BLACK))); + } + + @Override + public void uninstallUI(JComponent c) { + super.uninstallUI(c); + } + +} diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineComboCheckBoxUI.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineComboCheckBoxUI.java new file mode 100644 index 0000000000..dd63f1c3be --- /dev/null +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineComboCheckBoxUI.java @@ -0,0 +1,37 @@ +package com.fine.theme.light.ui; + +import com.formdev.flatlaf.ui.FlatComboBoxUI; + +import javax.swing.JComponent; +import javax.swing.UIManager; +import javax.swing.plaf.ComponentUI; + + +/** + * {@link com.fr.design.gui.icombocheckbox.UIComboCheckBox} 的 UI 样式 + * + * @author lemon + * @since 12.0 + * Created on 2024/09/27 + */ +public class FineComboCheckBoxUI extends FlatComboBoxUI { + + public FineComboCheckBoxUI() { + super(); + } + + /** + * 创建UI + */ + public static ComponentUI createUI(JComponent c) { + return new FineComboCheckBoxUI(); + } + + @Override + public void installUI(JComponent c) { + super.installUI(c); + c.setBackground(UIManager.getColor("ComboCheckBox.background")); + c.setBorder(UIManager.getBorder("ComboCheckBox.border")); + } + +} diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineDayLabelUI.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineDayLabelUI.java new file mode 100644 index 0000000000..0018afd292 --- /dev/null +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineDayLabelUI.java @@ -0,0 +1,140 @@ +package com.fine.theme.light.ui; + +import com.formdev.flatlaf.ui.FlatLabelUI; +import com.formdev.flatlaf.ui.FlatRoundBorder; +import com.formdev.flatlaf.ui.FlatUIUtils; +import com.fr.design.gui.date.UIDayLabel; + +import javax.swing.JComponent; +import javax.swing.UIManager; +import javax.swing.plaf.ComponentUI; +import java.awt.Color; +import java.awt.Component; +import java.awt.FontMetrics; +import java.awt.Graphics; +import java.awt.Graphics2D; + +/** + * {@link UIDayLabel} 的 UI 样式 + * + * @author lemon + * @since 12.0 + * Created on 2024/09/22 + */ +public class FineDayLabelUI extends FlatLabelUI { + protected Color defaultBackground; + protected Color selectedBackground; + protected Color hoverBackground; + protected Color pressedBackground; + protected Color otherMonthForeground; + + protected int arc; + + /** + * @since 2 + */ + protected FineDayLabelUI() { + super(false); + } + + /** + * 创建UI + * + * @param c 组件 + * @return ComponentUI + */ + public static ComponentUI createUI(JComponent c) { + return FlatUIUtils.createSharedUI(FineDayLabelUI.class, FineDayLabelUI::new); + } + + /** + * @param c the component where this UI delegate is being installed + */ + public void installUI(JComponent c) { + super.installUI(c); + selectedBackground = UIManager.getColor("Calendar.day.selectedBackground"); + hoverBackground = UIManager.getColor("Calendar.day.hoverBackground"); + pressedBackground = UIManager.getColor("Calendar.day.pressedBackground"); + defaultBackground = UIManager.getColor("Calendar.background"); + otherMonthForeground = UIManager.getColor("Calendar.dayOtherMonth.foreground"); + + arc = UIManager.getInt("Calendar.day.arc"); + } + + @Override + public void uninstallUI(JComponent c) { + super.uninstallUI(c); + } + + /** + * UICalendarPanel paint, 目前只对 {@link UIDayLabel} 样式自定义,其余使用默认样式 + * + * @param g the Graphics context in which to paint + * @param c the component being painted; + * this argument is often ignored, + * but might be used if the UI object is stateless + * and shared by multiple components + */ + public void paint(Graphics g, JComponent c) { + super.paint(g, c); + if (c instanceof UIDayLabel) { + paintDayLabel((UIDayLabel) c); + } + } + + private void paintDayLabel(UIDayLabel label) { + if (!label.isSmallLabel()) { + label.setBackground(getBackgroundColor(label)); + return; + } + + label.setBorder(new DayLabelRoundedBorder()); + + if (!label.isCurrentMonth()) { + label.setForeground(otherMonthForeground); + } + } + + private Color getBackgroundColor(UIDayLabel dayLabel) { + if (dayLabel.isSelected()) { + return selectedBackground; + } + if (dayLabel.isHovered()) { + return hoverBackground; + } + if (dayLabel.isPressed()) { + return pressedBackground; + } + return defaultBackground; + } + + /** + * {@link UIDayLabel} 的 border 样式 + */ + private class DayLabelRoundedBorder extends FlatRoundBorder { + + public DayLabelRoundedBorder() { + } + + @Override + public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) { + Graphics2D g2 = (Graphics2D) g.create(); + + try { + FlatUIUtils.setRenderingHints(g2); + g2.setColor(getBackgroundColor((UIDayLabel) c)); + g2.fillRoundRect(0, 0, width, height, arc, arc); + + // 避免文字被背景色覆盖 + UIDayLabel dayLabel = (UIDayLabel) c; + g2.setColor(dayLabel.getForeground()); + FontMetrics metrics = g2.getFontMetrics(dayLabel.getFont()); + int x1 = (width - metrics.stringWidth(dayLabel.getText())) / 2; + int y1 = ((height - metrics.getHeight()) / 2) + metrics.getAscent(); + g2.drawString(dayLabel.getText(), x1, y1); + } finally { + g2.dispose(); + } + } + } +} diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineHeaderPaneUI.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineHeaderPaneUI.java index 4555096842..ea07516938 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/FineHeaderPaneUI.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineHeaderPaneUI.java @@ -18,6 +18,7 @@ import java.awt.FontMetrics; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Insets; +import java.awt.RenderingHints; import java.awt.geom.AffineTransform; /** @@ -100,6 +101,8 @@ public class FineHeaderPaneUI extends PanelUI implements AnimatedPainter { + FineUIScale.scale(UIManager.getInt("ExpandablePane.HeaderPane.hGap")); float titleY = (headerPane.getHeight() - (ascent + descent)) / 2.0f + ascent; FlatUIUtils.setRenderingHints(g2d); + g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_LCD_HRGB); + g2d.drawString(headerPane.getTitle(), titleX, titleY); g2d.dispose(); } diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineOptionPaneUI.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineOptionPaneUI.java index 517db0f72b..6d19ef966b 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/FineOptionPaneUI.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineOptionPaneUI.java @@ -1,14 +1,33 @@ package com.fine.theme.light.ui; +import com.fine.swing.ui.layout.Layouts; +import com.fine.theme.icon.LazyIcon; +import com.fine.theme.utils.FineUIScale; import com.fine.theme.utils.FineUIStyle; import com.formdev.flatlaf.ui.FlatOptionPaneUI; +import com.fr.design.gui.ilable.UILabel; +import sun.swing.DefaultLookup; +import javax.swing.Icon; import javax.swing.JButton; import javax.swing.JComponent; +import javax.swing.JPanel; +import javax.swing.SwingConstants; import javax.swing.UIManager; +import javax.swing.border.Border; import javax.swing.plaf.ComponentUI; +import java.awt.BorderLayout; import java.awt.Component; import java.awt.Container; +import java.awt.Dimension; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.Insets; + +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.column; +import static com.fine.swing.ui.layout.Layouts.flex; +import static com.fine.swing.ui.layout.Layouts.row; /** * @author Renekton @@ -35,4 +54,92 @@ public class FineOptionPaneUI extends FlatOptionPaneUI { } } } + + protected void installComponents() { + optionPane.setLayout(new BorderLayout()); + optionPane.add(createMessageArea()); + optionPane.add(createButtonArea(), BorderLayout.SOUTH); + optionPane.applyComponentOrientation(optionPane.getComponentOrientation()); + } + + protected Container createMessageArea() { + JPanel top = new JPanel(); + Border topBorder = (Border) DefaultLookup.get(optionPane, this, + "OptionPane.messageAreaBorder"); + if (topBorder != null) { + top.setBorder(topBorder); + } + top.setLayout(new BorderLayout()); + + /* Fill the body. */ + Container body = new JPanel(new GridBagLayout()); + Container realBody = new JPanel(new BorderLayout()); + + body.setName("OptionPane.body"); + realBody.setName("OptionPane.realBody"); + realBody.add(body, BorderLayout.NORTH); + + GridBagConstraints cons = new GridBagConstraints(); + cons.gridx = cons.gridy = 0; + cons.gridwidth = GridBagConstraints.REMAINDER; + cons.gridheight = 1; + cons.anchor = DefaultLookup.getInt(optionPane, this, + "OptionPane.messageAnchor", GridBagConstraints.CENTER); + cons.insets = new Insets(0,0,3,0); + + addMessageComponents(body, cons, getMessage(), + getMaxCharactersPerLineCount(), false); + top.add(realBody, BorderLayout.CENTER); + + addIcon(top); + top.setAlignmentX(Component.CENTER_ALIGNMENT); + return row(flex(), column(flex(), cell(top), flex()), flex()).getComponent(); + } + + @Override + protected void addIcon(Container top) { + Icon sideIcon = getIcon(); + + if (sideIcon != null) { + UILabel iconLabel = new UILabel(sideIcon); + iconLabel.setName("OptionPane.iconLabel"); + iconLabel.setVerticalAlignment(SwingConstants.TOP); + top.add(row(cell(iconLabel), Layouts.fix(10)).getComponent(), BorderLayout.BEFORE_LINE_BEGINS); + } + } + + @Override + protected Icon getIconForType(int messageType) { + String iconId = null; + switch (messageType) { + case 0: + iconId = "error"; + break; + case 1: + iconId = "information"; + break; + case 2: + iconId = "warning"; + break; + case 3: + iconId = "question"; + break; + default: + break; + } + if (iconId != null) { + return new LazyIcon(iconId, 20); + } + return null; + } + + public Dimension getPreferredSize(JComponent c) { + if (c == optionPane) { + Dimension size = super.getPreferredSize(c); + size.width = Math.max(FineUIScale.scale(360), size.width); + size.height = Math.max(FineUIScale.scale(130), size.height); + return size; + } + return null; + } } diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FinePopupMenuBorder.java b/designer-base/src/main/java/com/fine/theme/light/ui/FinePopupMenuBorder.java index 63bf5e88e0..c7b827862f 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/FinePopupMenuBorder.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FinePopupMenuBorder.java @@ -14,6 +14,6 @@ public class FinePopupMenuBorder extends FlatPopupMenuBorder { @Override public int getArc() { - return FineUIUtils.getAndScaleInt("PopupMenu.arc", 5); + return FineUIUtils.getAndScaleInt("PopupMenu.arc", 8); } } diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FinePopupMenuUI.java b/designer-base/src/main/java/com/fine/theme/light/ui/FinePopupMenuUI.java index 58a37da791..e0cf691950 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/FinePopupMenuUI.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FinePopupMenuUI.java @@ -19,7 +19,7 @@ import java.awt.geom.RoundRectangle2D; */ public class FinePopupMenuUI extends FlatPopupMenuUI { private int arc; - private final int DEFAULT_ARC = 10; + private final int DEFAULT_ARC = 8; /** * 创建UI diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineReportComponentBorder.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineReportComponentBorder.java index 6d381761ac..7ae570cb75 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/FineReportComponentBorder.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineReportComponentBorder.java @@ -18,7 +18,7 @@ public class FineReportComponentBorder extends FlatRoundBorder { @Override protected int getArc(Component c) { - return FineUIUtils.getAndScaleInt("Center.arc", 10); + return FineUIUtils.getAndScaleInt("Center.arc", 8); } @Override diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineReportComponentCompositeUI.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineReportComponentCompositeUI.java index 7886af3c33..8353f3e241 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/FineReportComponentCompositeUI.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineReportComponentCompositeUI.java @@ -33,7 +33,7 @@ public class FineReportComponentCompositeUI extends FlatPanelUI { @Override protected void installDefaults(JPanel p) { super.installDefaults(p); - this.arc = FineUIUtils.getAndScaleInt("Center.arc", 10); + this.arc = FineUIUtils.getAndScaleInt("Center.arc", 8); } diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineSliderUI.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineSliderUI.java index a8f150fb44..43aa163fc8 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/FineSliderUI.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineSliderUI.java @@ -50,6 +50,11 @@ public class FineSliderUI extends FlatSliderUI { defaultLabelHeight = FineUIUtils.getAndScaleInt("Slider.labelHeight", DEFAULT_LABEL_HEIGHT); } + @Override + protected Color getTrackColor() { + return trackColor; + } + @Override protected void calculateLabelRect() { diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineTableHeaderUI.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineTableHeaderUI.java index e129e77349..8be32bb5cf 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/FineTableHeaderUI.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineTableHeaderUI.java @@ -17,6 +17,7 @@ import javax.swing.table.DefaultTableCellRenderer; import javax.swing.table.JTableHeader; import java.awt.Color; import java.awt.Component; +import java.awt.FontMetrics; import java.awt.Graphics; /** @@ -87,7 +88,7 @@ public class FineTableHeaderUI extends FlatTableHeaderUI { public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { Class columnClass = table.getColumnClass(0); Border border; - if (column == table.getColumnCount() - 1) { + if (column == table.getColumnCount() - 1 && table.getAutoResizeMode() != JTable.AUTO_RESIZE_OFF) { border = BorderFactory.createCompoundBorder(BorderFactory.createMatteBorder(0, 0, 1, 0, UIManager.getColor("defaultBorderColor")), UIManager.getBorder("Table.cellNoFocusBorder")); } else { @@ -101,8 +102,26 @@ public class FineTableHeaderUI extends FlatTableHeaderUI { } setBackground(selectionBackground); setText(value == null ? StringUtils.BLANK : String.valueOf(value)); + setToolTipText(table, value, column); setBorder(border); return this; } + + /** + * 显示不全的文字,增加了 toolTip + * @param table + * @param value + * @param column + */ + private void setToolTipText(JTable table, Object value, int column) { + String tipText = value == null ? StringUtils.BLANK : String.valueOf(value); + FontMetrics fm = this.getFontMetrics(this.getFont()); + int textWidth = fm.stringWidth(String.valueOf(value)); + if (textWidth > table.getColumnModel().getColumn(column).getWidth()) { + setToolTipText(tipText); + } else { + setToolTipText(null); + } + } } } diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/FineToggleButtonUI.java b/designer-base/src/main/java/com/fine/theme/light/ui/FineToggleButtonUI.java index ad28f76f8c..8f14cd050c 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/FineToggleButtonUI.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/FineToggleButtonUI.java @@ -22,6 +22,7 @@ import java.awt.Shape; import java.awt.Rectangle; import static com.fine.theme.utils.FineClientProperties.BUTTON_TYPE_GROUP; +import static com.fine.theme.utils.FineClientProperties.BUTTON_TYPE_GROUP_FIT; import static com.fine.theme.utils.FineClientProperties.BUTTON_TYPE; import static com.fine.theme.utils.FineClientProperties.BUTTON_TYPE_TAB; import static com.fine.theme.utils.FineClientProperties.BUTTON_GROUP_POSITION; @@ -96,13 +97,21 @@ public class FineToggleButtonUI extends FlatToggleButtonUI { } static boolean isGroupButton(Component c) { + if (!(c instanceof UIButton)) { + return false; + } + String buttonType = getButtonTypeStr((UIButton) c); + return BUTTON_TYPE_GROUP.equals(buttonType) || BUTTON_TYPE_GROUP_FIT.equals(buttonType); + } + + static boolean isGroupButtonNotFit(Component c) { return c instanceof UIButton && BUTTON_TYPE_GROUP.equals(getButtonTypeStr((UIButton) c)); } @Override public void paint(Graphics g, JComponent c) { - if (isGroupButton(c) || isTabButton(c)) { - ((AbstractButton)c).setMargin(FineUIUtils.getUIInsets("ToggleButton.compact.margin", "ToggleButton.margin")); + if (isGroupButtonNotFit(c) || isTabButton(c)) { + ((AbstractButton) c).setMargin(FineUIUtils.getUIInsets("ToggleButton.compact.margin", "ToggleButton.margin")); } super.paint(g, c); } @@ -125,7 +134,7 @@ public class FineToggleButtonUI extends FlatToggleButtonUI { // paint background Color background; - if(c.isEnabled() && selected) { + if (c.isEnabled() && selected) { background = tabSelectedBackground; } else { Color enabledColor = selected ? clientPropertyColor(c, TAB_BUTTON_SELECTED_BACKGROUND, tabSelectedBackground) : null; @@ -161,9 +170,7 @@ public class FineToggleButtonUI extends FlatToggleButtonUI { float focusWidth = FlatUIUtils.getBorderFocusWidth(c); FlatUIUtils.paintComponentBackground(g2, 0, 0, c.getWidth(), c.getHeight(), focusWidth, 0); } else { - float arc = FlatUIUtils.getBorderArc( c ) / 2; - Shape path2D = getGroupButtonPath2D(c, position, arc); - g2.fill(path2D); + g2.fill(getGroupButtonPath2D(c, position, FlatUIUtils.getBorderArc(c))); } } finally { g2.dispose(); @@ -200,7 +207,7 @@ public class FineToggleButtonUI extends FlatToggleButtonUI { @Override protected Color getForeground(JComponent c) { - if (isGroupButton(c) && ((AbstractButton)c).isSelected()) { + if (isGroupButton(c) && ((AbstractButton) c).isSelected()) { return groupSelectedForeground; } return super.getForeground(c); @@ -209,7 +216,7 @@ public class FineToggleButtonUI extends FlatToggleButtonUI { @Override protected Color getBackground(JComponent c) { if (isGroupButton(c)) { - return ((AbstractButton)c).isSelected() ? groupSelectedBackground : groupBackground; + return ((AbstractButton) c).isSelected() ? groupSelectedBackground : groupBackground; } return super.getBackground(c); } diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/laf/FineDarkLaf.java b/designer-base/src/main/java/com/fine/theme/light/ui/laf/FineDarkLaf.java index e568f5af32..0af36de488 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/laf/FineDarkLaf.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/laf/FineDarkLaf.java @@ -2,7 +2,6 @@ package com.fine.theme.light.ui.laf; import com.fine.swing.ui.layout.Layouts; import com.fine.theme.icon.IconManager; -import com.fine.theme.light.ui.FineLightIconSet; import com.formdev.flatlaf.util.UIScale; import com.fr.stable.StringUtils; @@ -25,7 +24,7 @@ public class FineDarkLaf extends FineLaf { * @return 是否安装成功 */ public static boolean setup() { - IconManager.addSet(new FineLightIconSet()); + IconManager.initializeIcon(); Layouts.setScaleFactor(UIScale.getUserScaleFactor()); UIScale.addPropertyChangeListener(evt -> { if (StringUtils.equals(evt.getPropertyName(), USER_SCALE_FACTOR)) { diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/laf/FineLaf.java b/designer-base/src/main/java/com/fine/theme/light/ui/laf/FineLaf.java index edb038dd0f..aa67a7d2ca 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/laf/FineLaf.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/laf/FineLaf.java @@ -18,7 +18,6 @@ public abstract class FineLaf extends FlatLaf { private static final String NAME = "FineLaf"; - @Override public String getName() { return NAME; @@ -53,4 +52,5 @@ public abstract class FineLaf extends FlatLaf { System.setProperty("flatlaf.menuBarEmbedded", "false"); } } + } diff --git a/designer-base/src/main/java/com/fine/theme/light/ui/laf/FineLightLaf.java b/designer-base/src/main/java/com/fine/theme/light/ui/laf/FineLightLaf.java index 9e95b76f7e..5ccc51a8b1 100644 --- a/designer-base/src/main/java/com/fine/theme/light/ui/laf/FineLightLaf.java +++ b/designer-base/src/main/java/com/fine/theme/light/ui/laf/FineLightLaf.java @@ -2,7 +2,6 @@ package com.fine.theme.light.ui.laf; import com.fine.swing.ui.layout.Layouts; import com.fine.theme.icon.IconManager; -import com.fine.theme.light.ui.FineLightIconSet; import com.formdev.flatlaf.util.UIScale; import com.fr.stable.StringUtils; @@ -25,7 +24,7 @@ public class FineLightLaf extends FineLaf { * @return 是否安装成功 */ public static boolean setup() { - IconManager.addSet(new FineLightIconSet()); + IconManager.initializeIcon(); Layouts.setScaleFactor(UIScale.getUserScaleFactor()); UIScale.addPropertyChangeListener(evt -> { if (StringUtils.equals(evt.getPropertyName(), USER_SCALE_FACTOR)) { diff --git a/designer-base/src/main/java/com/fine/theme/utils/FineClientProperties.java b/designer-base/src/main/java/com/fine/theme/utils/FineClientProperties.java index 3b1e5933b2..da8e252ca5 100644 --- a/designer-base/src/main/java/com/fine/theme/utils/FineClientProperties.java +++ b/designer-base/src/main/java/com/fine/theme/utils/FineClientProperties.java @@ -13,6 +13,7 @@ public interface FineClientProperties extends FlatClientProperties { //--------------------------- ButtonGroup ----------------------- String BUTTON_TYPE_GROUP = "group"; + String BUTTON_TYPE_GROUP_FIT = "groupFit"; String BUTTON_BORDER = "buttonBorder"; String BUTTON_BORDER_LEFT_ROUND_RECT = "leftRoundRect"; diff --git a/designer-base/src/main/java/com/fine/theme/utils/FineComponentsFactory.java b/designer-base/src/main/java/com/fine/theme/utils/FineComponentsFactory.java index 80cc69c932..2e8e71d393 100644 --- a/designer-base/src/main/java/com/fine/theme/utils/FineComponentsFactory.java +++ b/designer-base/src/main/java/com/fine/theme/utils/FineComponentsFactory.java @@ -1,12 +1,22 @@ package com.fine.theme.utils; import com.fine.theme.icon.LazyIcon; +import com.formdev.flatlaf.util.ScaledEmptyBorder; +import com.fr.data.core.FormatField; +import com.fr.design.border.UIRoundedBorder; import com.fr.design.gui.ibutton.UIButtonGroup; +import com.fr.design.gui.ilable.UILabel; +import com.fr.design.i18n.Toolkit; import com.fr.stable.Constants; +import javax.swing.BorderFactory; import javax.swing.Icon; import javax.swing.JButton; import javax.swing.JPanel; +import javax.swing.border.Border; +import javax.swing.border.TitledBorder; + +import java.awt.Color; import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.flex; @@ -62,4 +72,24 @@ public class FineComponentsFactory { flex(), cell(confirmButton), cell(cancelButton)).getComponent(); } + /** + * 创建示例文本,圆角边框&浅灰背景 + * + * @return 示例文本Label + */ + public static UILabel createSampleLabel() { + Color labelColor = FineUIUtils.getUIColor("Label.tipColor", "inactiveCaption"); + Border interBorder = new UIRoundedBorder(labelColor, 0, 4); + + Border border = BorderFactory.createTitledBorder(interBorder, Toolkit.i18nText("Fine-Design_Report_Base_StyleFormat_Sample"), + TitledBorder.ABOVE_TOP, 0, null, labelColor); + + UILabel sampleLabel = new UILabel(FormatField.getInstance().getFormatValue()); + sampleLabel.setHorizontalAlignment(UILabel.CENTER); + sampleLabel.setBorder(BorderFactory.createCompoundBorder(border, new ScaledEmptyBorder(2, 0, 8, 0))); + FineUIStyle.setStyle(sampleLabel, FineUIStyle.LABEL_TIP); + + return sampleLabel; + } + } diff --git a/designer-base/src/main/java/com/fine/theme/utils/FineLayoutBuilder.java b/designer-base/src/main/java/com/fine/theme/utils/FineLayoutBuilder.java index b9144f31ef..2c46d446ae 100644 --- a/designer-base/src/main/java/com/fine/theme/utils/FineLayoutBuilder.java +++ b/designer-base/src/main/java/com/fine/theme/utils/FineLayoutBuilder.java @@ -4,8 +4,10 @@ import com.fine.swing.ui.layout.Column; import com.fine.swing.ui.layout.Layouts; import com.fine.swing.ui.layout.Row; import com.fine.swing.ui.layout.Spacer; +import com.fr.design.constants.LayoutConstants; import com.fr.design.foldablepane.UIExpandablePane; import com.fr.design.gui.ilable.UILabel; +import com.fr.design.i18n.Toolkit; import com.fr.log.FineLoggerFactory; import com.fr.stable.collections.combination.Pair; @@ -75,7 +77,7 @@ public class FineLayoutBuilder { Row row = new Row(); List visibleComponents = Arrays.stream(componentArray) .filter(com -> com != null && com.isVisible()).collect(Collectors.toList()); - if (visibleComponents.size() >= 1) { + if (!visibleComponents.isEmpty()) { // 仅当存在可见组件时处理布局 dealWithVisibleComponents(weight, column, componentArray, row, visibleComponents); } @@ -87,6 +89,17 @@ public class FineLayoutBuilder { return new JPanel(); } + /** + * 典型的左右网格布局,竖向间距为典型间距,标签及组件比例采用典型比例 + * + * @param components 组件,两列多行 + * @return 面板 + */ + public static JPanel commonLeftRightLayout(Component[][] components) { + return compatibleTableLayout(LayoutConstants.VERTICAL_GAP, components, + new double[]{LayoutConstants.LEFT_WEIGHT, LayoutConstants.RIGHT_WEIGHT}); + } + private static void dealWithVisibleComponents(double[] weight, Column column, Component[] value, Row row, List components) { if (components.size() == 1 && value[0] != null) { // 仅存在首个元素,则该元素自适应占满整行 diff --git a/designer-base/src/main/java/com/fine/theme/utils/FineUIScale.java b/designer-base/src/main/java/com/fine/theme/utils/FineUIScale.java index 6297166c78..ddde68539b 100644 --- a/designer-base/src/main/java/com/fine/theme/utils/FineUIScale.java +++ b/designer-base/src/main/java/com/fine/theme/utils/FineUIScale.java @@ -83,4 +83,16 @@ public class FineUIScale { public static Insets scale(Insets insets) { return UIScale.scale(insets); } + + /** + * Creates a scaled {@link Dimension} object based on the specified width and height. + *

+ * This method uses the current user scale factor to adjust the provided width and height values: + * - If the user scale factor is 1 (no scaling), the original width and height values are returned unchanged. + * - If the user scale factor is different from 1, a new {@link Dimension} instance is created and returned, + * with the width and height values scaled according to the user scale factor. + */ + public static Dimension createScaleDimension(int width, int height) { + return scale(new Dimension(width, height)); + } } diff --git a/designer-base/src/main/java/com/fine/theme/utils/FineUIStyle.java b/designer-base/src/main/java/com/fine/theme/utils/FineUIStyle.java index 925c0a438d..e2186efc4e 100644 --- a/designer-base/src/main/java/com/fine/theme/utils/FineUIStyle.java +++ b/designer-base/src/main/java/com/fine/theme/utils/FineUIStyle.java @@ -28,6 +28,7 @@ public interface FineUIStyle { String BRAND_COLOR_LABEL = "brandColorLabel"; String BUTTON_TAB_ACTION = "tabAction"; String LABEL_BOLD = "boldLabel"; + String LABEL_TIP_WINDOW_TITLE = "tipWindowTitleLabel"; String LABEL_SECONDARY = "secondaryLabel"; String LABEL_TIP = "tipLabel"; String LABEL_WARNING_TIP = "warningTipLabel"; @@ -40,6 +41,7 @@ public interface FineUIStyle { String POPUP_MENU_TOOL_BAR = "popupMenuToolBar"; String POPUP_MENU_DROPDOWN = "dropdownPopupMenu"; String TRANSPARENT_TEXT_FIELD = "transparentTextField"; + String OFFET_LEFT_TEXT_FIELD = "offsetLeftText"; String TRANSPARENT_BACKGROUND = "transparentBackground"; String PURE_LIST = "pureList"; String NO_BORDER_LIST = "noBorderList"; @@ -50,7 +52,11 @@ public interface FineUIStyle { String DEFAULT_TABLE = "defaultTable"; String WHITE_BUTTON = "whiteButton"; String ORIGINAL_BUTTON = "originalButton"; + String PLAIN_ARROW_BUTTON = "plainArrowButton"; + String GRAY_BUTTON = "grayButton"; String DETAIL_LABEL = "detailLabel"; + String WIDGET_EVENT_LABEL = "widgetEventLabel"; + String HYPER_LINK_LABEL = "hyperLinkLabel"; /** diff --git a/designer-base/src/main/java/com/fine/theme/utils/FineUIUtils.java b/designer-base/src/main/java/com/fine/theme/utils/FineUIUtils.java index bf48c66c6d..6ccf630ed2 100644 --- a/designer-base/src/main/java/com/fine/theme/utils/FineUIUtils.java +++ b/designer-base/src/main/java/com/fine/theme/utils/FineUIUtils.java @@ -6,6 +6,8 @@ import com.fr.design.border.FineBorderFactory; import com.fr.design.constants.LayoutConstants; import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.ilable.UILabel; +import com.fr.design.mainframe.theme.edit.ui.LabelUtils; +import com.fr.design.i18n.DesignSizeI18nManager; import com.fr.stable.os.OperatingSystem; import com.fr.value.AtomicClearableLazyValue; @@ -13,9 +15,11 @@ import javax.swing.JLabel; import javax.swing.JLayer; import javax.swing.ScrollPaneConstants; import javax.swing.UIManager; +import javax.swing.JTextArea; import java.awt.Color; import java.awt.Component; import java.awt.Composite; +import java.awt.Dimension; import java.awt.Font; import java.awt.Graphics; import java.awt.Graphics2D; @@ -40,6 +44,9 @@ import static com.formdev.flatlaf.util.UIScale.scale; */ public class FineUIUtils { + public static final String LEFT = "LEFT"; + public static final String RIGHT = "RIGHT"; + public static final int RETINA_SCALE_FACTOR = 2; /** @@ -179,10 +186,10 @@ public class FineUIUtils { * @param background 背景色 * @param width 宽度 * @param height 高度 - * @param radius 圆角 + * @param arc 圆角 */ public static void paintWithComposite(Graphics g, Composite composite, Color background, - int width, int height, int radius) { + int width, int height, int arc) { Graphics2D g2d = (Graphics2D) g; FlatUIUtils.setRenderingHints(g2d); @@ -190,7 +197,7 @@ public class FineUIUtils { g2d.setComposite(composite); g2d.setColor(background); - g2d.fill(new RoundRectangle2D.Float(0, 0, width, height, radius, radius)); + g2d.fill(new RoundRectangle2D.Float(0, 0, width, height, arc, arc)); g2d.setComposite(oldComposite); } @@ -208,17 +215,48 @@ public class FineUIUtils { */ public static void paintPartRoundButtonBorder(Component c, Graphics2D g2, int x, int y, int width, int height, float borderWidth, float arc) { + if (isLeftRoundButton(c)) { + paintPartRoundButtonBorder(g2, x, y, width, height, borderWidth, arc, LEFT, false); + } else { + paintPartRoundButtonBorder(g2, x, y, width, height, borderWidth, arc, RIGHT, false); + } + } + + /** + * 绘制部分圆角矩形边框 + * + * @param g2 Graphics2D + * @param x x坐标 + * @param y y坐标 + * @param width 宽度 + * @param height 高度 + * @param borderWidth 边框宽度 + * @param arc 圆角 + * @param roundPart 圆角的方位,当前只能设置一侧 + * @param closedPath 是否封闭,非圆角那一侧是否有边框,是为有边框 + */ + public static void paintPartRoundButtonBorder(Graphics2D g2, int x, int y, int width, int height, + float borderWidth, float arc, String roundPart, boolean closedPath) { FlatUIUtils.setRenderingHints(g2); arc = scale(arc); float t = scale(borderWidth); float t2x = t * 2; Path2D path2D = new Path2D.Float(Path2D.WIND_EVEN_ODD); - if (isLeftRoundButton(c)) { - path2D.append(createLeftRoundRectangle(x, y, width, height, arc), false); - path2D.append(createLeftRoundRectangle(x + t, y + t, width - t, height - t2x, arc - t), false); - } else { - path2D.append(createRightRoundRectangle(x, y, width, height, arc), false); - path2D.append(createRightRoundRectangle(x, y + t, width - t, height - t2x, arc - t), false); + switch (roundPart) { + + case LEFT: { + path2D.append(createLeftRoundRectangle(x, y, width, height, arc), false); + path2D.append(createLeftRoundRectangle(x + t, y + t, + width - (closedPath ? t2x : t), height - t2x, arc - t2x), false); + break; + } + case RIGHT: + default: { + path2D.append(createRightRoundRectangle(x, y, width, height, arc), false); + path2D.append(createRightRoundRectangle(x + (closedPath ? t : 0), y + t, + width - (closedPath ? t2x : t), height - t2x, arc - t2x), false); + break; + } } g2.fill(path2D); } @@ -242,12 +280,18 @@ public class FineUIUtils { float t2x = t * 2; Path2D path2D = new Path2D.Float(Path2D.WIND_EVEN_ODD); path2D.append(createTopRoundRectangle(x, y, width, height, arc), false); - path2D.append(createTopRoundRectangle(x + t, y + t, width - t2x, height - t, arc - t), false); + path2D.append(createTopRoundRectangle(x + t, y + t, width - t2x, height - t, arc - t2x), false); g2.fill(path2D); } /** * 创建一个部分圆角的矩形路径 + *

+ * 注意: + * 在swing中,UI的样式的 arc 数值是直径,而 css 中 border-radius 为半径, + * 因此我们配置的 arc 全部为 border-radius 的2倍。但是使用 Path2D 绘制时, + * 绘制方式其实是使用半径来进行计算的,为了保持调用一致,对外 API 还是以 arc + * 的形式,因此方法内部需要对 arc 进行取半处理, * * @param x x坐标 * @param y y坐标 @@ -261,16 +305,20 @@ public class FineUIUtils { */ public static Path2D createPartRoundRectangle(double x, double y, double width, double height, double arcTopLeft, double arcTopRight, double arcBottomRight, double arcBottomLeft) { - Path2D path = new Path2D.Double(Path2D.WIND_EVEN_ODD, 7); - path.moveTo(x + arcTopLeft, y); - path.lineTo(x + width - arcTopRight, y); - path.quadTo(x + width, y, x + width, y + arcTopRight); - path.lineTo(x + width, y + height - arcBottomRight); - path.quadTo(x + width, y + height, x + width - arcBottomRight, y + height); - path.lineTo(x + arcBottomLeft, y + height); - path.quadTo(x, y + height, x, y + height - arcBottomLeft); - path.lineTo(x, y + arcTopLeft); - path.quadTo(x, y, x + arcTopLeft, y); + double radiusTopLeft = arcTopLeft / 2; + double radiusTopRight = arcTopRight / 2; + double radiusBottomLeft = arcBottomLeft / 2; + double radiusBottomRight = arcBottomRight / 2; + Path2D path = new Path2D.Double(Path2D.WIND_EVEN_ODD, 10); + path.moveTo(x + radiusTopLeft, y); + path.lineTo(x + width - radiusTopRight, y); + path.quadTo(x + width, y, x + width, y + radiusTopRight); + path.lineTo(x + width, y + height - radiusBottomRight); + path.quadTo(x + width, y + height, x + width - radiusBottomRight, y + height); + path.lineTo(x + radiusBottomLeft, y + height); + path.quadTo(x, y + height, x, y + height - radiusBottomLeft); + path.lineTo(x, y + radiusTopLeft); + path.quadTo(x, y, x + radiusTopLeft, y); path.closePath(); return path; } @@ -435,4 +483,24 @@ public class FineUIUtils { Font newSizeFont = font.deriveFont(font.getStyle(), scale(size)); c.setFont(newSizeFont); } + + /** + * 获取缩放后的国际化尺寸 + * + * @param i18nDimensionKey 国际化key值 + * @return 缩放后的国际化尺寸 + */ + public static Dimension getScaledI18nDimension(String i18nDimensionKey) { + return FineUIScale.scale(DesignSizeI18nManager.getInstance().i18nDimension(i18nDimensionKey)); + } + + /** + * 创建一个支持自动换行的提示文本 + * + * @param text 显示的文本内容 + * @return 自动换行提示文本 + */ + public static JTextArea createAutoWrapTipLabel(String text) { + return LabelUtils.createAutoWrapLabel(text, FineUIUtils.getUIColor("Label.tipColor", "inactiveCaption")); + } } diff --git a/designer-base/src/main/java/com/fr/design/DesignerEnvManager.java b/designer-base/src/main/java/com/fr/design/DesignerEnvManager.java index 68e22fd2a9..026e01337a 100644 --- a/designer-base/src/main/java/com/fr/design/DesignerEnvManager.java +++ b/designer-base/src/main/java/com/fr/design/DesignerEnvManager.java @@ -104,12 +104,12 @@ import java.util.concurrent.atomic.AtomicBoolean; * The manager of Designer GUI. * 下面的作者日期都是随手写的,具体作者已经无法考究。 * - * @author anonymous - * @version 11.0 + * @author anonymous + * @version 11.0 * created by anonymous on 2002/11/08 */ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReadable { - + private static final int MAX_SHOW_NUM = 10; private static final String VERSION_80 = "80"; private static final String VERSION_90 = "90"; @@ -122,26 +122,26 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada * 指定默认工作空间 */ public static final String DEFAULT_WORKSPACE_PATH = "fr.designer.workspace.default"; - + public static final String LAST_EAST_REGION_LAYOUT = "LastEastRegionLayout"; public static final String LAST_WEST_REGION_LAYOUT = "LastWestRegionLayout"; - + private static DesignerEnvManager designerEnvManager; // gui. private String activationKey = null; private String logLocation = null; private Rectangle windowBounds = null; // window bounds. private String DialogCurrentDirectory = null; private String CurrentDirectoryPrefix = null; - + private Map> recentOpenedFileListMap = new HashMap<>(); private List tempRecentOpenedFilePathList = new ArrayList(); private XmlElement>> recentOpenedMapping = SimpleXmlElement.of(recentOpenedFileListMap); - + private boolean showPaintToolBar = true; private int maxNumberOrPreviewRow = 200; - + private XmlElement envConfig = SimpleXmlElement.of(new EnvConfiguration()); - + private boolean showProjectPane = true; private boolean showDataPane = true; //p:这是当前选择的数据库连接的名字,这个在新建数据源的时候用到. @@ -159,7 +159,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada private boolean rowHeaderVisible = true; private boolean verticalScrollBarVisible = true; private boolean horizontalScrollBarVisible = true; - private Color gridLineColor = Color.lightGray; // line color. + private Color gridLineColor = new Color(230, 233, 239); // line color. private Color paginationLineColor = Color.black; // line color of paper private boolean supportCellEditorDef = false; private boolean isDragPermited = false; @@ -195,12 +195,12 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada private boolean embedServerLazyStartup = false; //最近使用的颜色 private ColorSelectConfigManager configManager = new ColorSelectConfigManager(); - + /** * 环境检测配置 */ private EnvDetectorConfig envDetectorConfig = EnvDetectorConfig.getInstance(); - + /** * alphafine */ @@ -214,11 +214,11 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada private DesignerPushUpdateConfigManager designerPushUpdateConfigManager = DesignerPushUpdateConfigManager.getInstance(); private VcsConfigManager vcsConfigManager = VcsConfigManager.getInstance(); - + private DesignerStartupConfig designerStartupConfig = DesignerStartupConfig.getInstance(); private SwitchForSwingChecker switchForSwingChecker = SwitchForSwingChecker.getInstance(); - + public static final String CAS_CERTIFICATE_PATH = "certificatePath"; public static final String CAS_CERTIFICATE_PASSWORD = "certificatePass"; @@ -267,7 +267,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada designerEnvManager = new DesignerEnvManager(); //REPORT-15332有一个国际化调用比较早,需要在这边就设置好locale,由于后台GeneralContext默认是China GeneralContext.setLocale(designerEnvManager.getLanguage()); - + if (!asyncInitEnvManager()) { // 如果异步读取失败, 则恢复原来的逻辑 compatibleInitEnvManager(); @@ -287,9 +287,9 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada return designerEnvManager; } - + private static void compatibleInitEnvManager() { - + try { XMLTools.readFileXML(designerEnvManager, designerEnvManager.getDesignerEnvFile()); } catch (FileNotFoundException e) { @@ -299,7 +299,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada FineLoggerFactory.getLogger().error(e.getMessage(), e); } } - + /** * 异步初始化环境管理, 提供配置, 帮助处理预期外的问题 * 1-当优化开启时,才走异步逻辑 @@ -308,7 +308,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada * @return 是/否 */ private static boolean asyncInitEnvManager() { - + AtomicBoolean noEx = new AtomicBoolean(false); OptimizeUtil.initiateOpen(DesignerEnvManager.class.getSimpleName().toLowerCase(), () -> { try { @@ -326,7 +326,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada } public static void checkNameEnvMap() { - + if (designerEnvManager == null || designerEnvManager.getNameEnvMap().size() > 0) { return; } @@ -1020,22 +1020,6 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada designerLoginConfigManager.setPluginRemindOnFirstLaunch(pluginRemindOnFirstLaunch); } - public boolean isUseOldVersionLogin() { - return designerLoginConfigManager.isUseOldVersionLogin(); - } - - public void setUseOldVersionLogin(boolean useOldVersionLogin) { - designerLoginConfigManager.setUseOldVersionLogin(useOldVersionLogin); - } - - public boolean isUseNewPluginFirst() { - return designerLoginConfigManager.isUseNewPluginFirst(); - } - - public void setUseNewPluginFirst(boolean useNewPluginFirst) { - designerLoginConfigManager.setUseNewPluginFirst(useNewPluginFirst); - } - /** * 内置服务器是否使用时启动 * @@ -1076,11 +1060,11 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada public void setLanguage(Locale locale) { this.language = locale; } - + public boolean isStartupPageEnabled() { return this.designerStartupConfig.isEnabled(); } - + public void setStartupPageEnabled(boolean enabled) { this.designerStartupConfig.setEnabled(enabled); } @@ -1207,9 +1191,9 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada public void setCurrentDirectoryPrefix(String prefix) { this.CurrentDirectoryPrefix = prefix; } - + public List getRecentOpenedFilePathList4Env(String envName) { - + if (StringUtils.isEmpty(envName)) { return tempRecentOpenedFilePathList; } else { @@ -1217,7 +1201,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada recentOpenedMapping.getValue().put(envName, tempRecentOpenedFilePathList); } } - + return recentOpenedMapping.getValue().get(envName); } @@ -1225,7 +1209,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada * 返回最近打开的文件路径列表 */ public List getRecentOpenedFilePathList() { - + return this.getRecentOpenedFilePathList4Env(getCurEnvName()); } @@ -1729,7 +1713,16 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada } } } - Carina.config(LanguageConfigProvider.class).setLocale(CommonUtils.localeToString(designerEnvManager.getLanguage())); + setLocale(); + } + + private static void setLocale() { + try { + Carina.config(LanguageConfigProvider.class) + .setLocale(CommonUtils.localeToString(designerEnvManager.getLanguage())); + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + } } @@ -1869,10 +1862,10 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada public void setLayoutTemplateStyle(int layoutTemplateStyle) { this.layoutTemplateStyle = layoutTemplateStyle; } - + @Override public void initElements(File xmlFile) throws XmlException { - + try { backupOldXmlFile(); XmlInitialFactory xmlInitialFactory = XmlInitialFactory.create(xmlFile); @@ -1892,7 +1885,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada }); }) .init("EnvConfigMap", (e) -> { - + final EnvConfiguration previousConfig = this.envConfig.getValue(); this.envConfig = AsyncXmlElement.of(DesignerStartupPool.common(), () -> { DesignerEnvManager.this.readEnvConfigMap(e, previousConfig); @@ -1944,13 +1937,13 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada throw new XmlException(e); } } - + /** * 备份老的 xml 文件, 防止第一次修改存在问题 * 但是,只备份一次。其他都走老逻辑 */ private void backupOldXmlFile() { - + try { File oldFile = getEnvFile(); String newFilePath = ProductConstants.getEnvHome() + File.separator + ProductConstants.APP_NAME + "Env_backup.xml"; @@ -1964,7 +1957,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada } catch (Exception ignored) { } } - + /** * Read XML.
* The method will be invoked when read data from XML file.
@@ -2056,16 +2049,16 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada } private void readAlphaFineAttr(XMLableReader reader) { - + AlphaFineConfigManager config = AlphaFineConfigManager.getInstance(); reader.readXMLObject(config); this.alphaFineConfigManager = SimpleXmlElement.of(config); } - + private void readEnvDetectorConfig(XMLableReader reader) { reader.readXMLObject(this.envDetectorConfig); } - + private void readStartupConfig(XMLableReader reader) { reader.readXMLObject(this.designerStartupConfig); } @@ -2174,16 +2167,16 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada this.setUndoLimit(reader.getAttrAsInt("undoLimit", 5)); this.setStartWithEmptyFile(reader.getAttrAsBoolean("startWithEmptyFile", false)); this.setDefaultStringToFormula(reader.getAttrAsBoolean("defaultStringToFormula", false)); - if ((tmpVal = reader.getAttrAsString("gridLineColor", null)) != null) { + if ((tmpVal = reader.getAttrAsString("uiGridLineColor", null)) != null) { this.setGridLineColor(new Color(Integer.parseInt(tmpVal))); } - if ((tmpVal = reader.getAttrAsString("paginationLineColor", null)) != null) { + if ((tmpVal = reader.getAttrAsString("uiPaginationLineColor", null)) != null) { this.setPaginationLineColor(new Color(Integer.parseInt(tmpVal))); } } - + private void readEnvConfigMap(XMLableReader reader, EnvConfiguration envConfigs) { - + String currentEnv = reader.getAttrAsString("currentEnv", StringUtils.EMPTY); envConfigs.setCurEnvName(currentEnv); reader.readXMLObject(new XMLReadable() { @@ -2248,15 +2241,15 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada } }); } - + private void readRecentOpenFileList(XMLableReader reader) { - + readRecentOpenFileList0(reader); checkRecentOpenedFileNum(); } private void readRecentOpenFileList0(XMLableReader reader) { - + reader.readXMLObject(new XMLReadable() { @Override public void readXML(XMLableReader reader) { @@ -2374,13 +2367,13 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada writer.end(); } } - + private void writeEnvDetectorConfig(XMLPrintWriter writer) { if (this.envDetectorConfig != null) { this.envDetectorConfig.writeXML(writer); } } - + private void writeStartupConfig(XMLPrintWriter writer) { if (this.designerStartupConfig != null) { this.designerStartupConfig.writeXML(writer); @@ -2609,8 +2602,8 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada .attr("horizontalScrollBarVisible", this.isHorizontalScrollBarVisible()) .attr("supportCellEditorDef", this.isSupportCellEditorDef()) .attr("isDragPermited", this.isDragPermited()) - .attr("gridLineColor", this.getGridLineColor().getRGB()) - .attr("paginationLineColor", this.getPaginationLineColor().getRGB()) + .attr("uiGridLineColor", this.getGridLineColor().getRGB()) + .attr("uiPaginationLineColor", this.getPaginationLineColor().getRGB()) .attr("undoLimit", this.getUndoLimit()) .attr("startWithEmptyFile", this.isStartWithEmptyFile()) .end(); @@ -2646,7 +2639,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada } private void readFvsDesignerConfig(XMLableReader reader) { - + SimpleDesignerConfig config = fvsDesignerConfig.getValue(); reader.readXMLObject(config); fvsDesignerConfig = SimpleXmlElement.of(config); @@ -2688,39 +2681,39 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter, AsyncXmlReada public SnapChatConfig getSnapChatConfig() { return snapChatConfig; } - + private EnvConfiguration getEnvConfig() { - + return envConfig.getValue(); } - + private Map getNameEnvMap() { - + return getEnvConfig().getNameEnvMap(); } - + private static class EnvConfiguration { - + // name和Env的键值对 private Map nameEnvMap = new ListMap<>(); // marks: 当前报表服务器名字 private String curEnvName = null; - + public Map getNameEnvMap() { return nameEnvMap; } - + public void setNameEnvMap(Map nameEnvMap) { this.nameEnvMap = nameEnvMap; } - + public String getCurEnvName() { return curEnvName; } - + public void setCurEnvName(String curEnvName) { this.curEnvName = curEnvName; } } - + } diff --git a/designer-base/src/main/java/com/fr/design/EnvChangeEntrance.java b/designer-base/src/main/java/com/fr/design/EnvChangeEntrance.java index 4761002648..33be0b7fc4 100644 --- a/designer-base/src/main/java/com/fr/design/EnvChangeEntrance.java +++ b/designer-base/src/main/java/com/fr/design/EnvChangeEntrance.java @@ -2,8 +2,6 @@ package com.fr.design; import com.fr.common.report.ReportState; import com.fr.design.backup.EnvBackupHelper; -import com.fr.design.mainframe.manager.clip.TemplateTreeClipboard; -import com.fr.design.plugin.remind.PluginErrorDesignReminder; import com.fr.design.data.DesignTableDataManager; import com.fr.design.dialog.BasicDialog; import com.fr.design.dialog.DialogActionAdapter; @@ -52,7 +50,6 @@ import com.fr.workspace.engine.base.FineObjectPool; import com.fr.workspace.engine.channel.http.FunctionalHttpRequest; import com.fr.workspace.engine.exception.WorkspaceConnectionException; import com.fr.workspace.engine.rpc.WorkspaceProxyPool; -import static javax.swing.JOptionPane.QUESTION_MESSAGE; import javax.swing.JOptionPane; import javax.swing.SwingUtilities; @@ -68,9 +65,10 @@ import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Optional; -import java.util.Properties; import java.util.Set; +import static javax.swing.JOptionPane.QUESTION_MESSAGE; + public class EnvChangeEntrance { private static final String BRANCH_TAG = "#"; private static final String BRANCH_BEGIN = "-"; @@ -158,11 +156,11 @@ public class EnvChangeEntrance { } /** - * 由云端运维,触发切换埋点 - * 内部空实现 - * 见 实现 + * 异步提交埋点 + * */ private void triggerSwitchMetric() { + EnvSwitcherSubmitTask.asyncSubmit(); } /** @@ -180,8 +178,9 @@ public class EnvChangeEntrance { private boolean doSwitch2Env(final String envName, PopTipStrategy strategy) { DesignerWorkspaceInfo selectedEnv = getSelectedEnv(envName); - EnvBackupHelper.getInstance().backup(); + try { + EnvBackupHelper.getInstance().backup(); Workspace workspace = DesignerWorkspaceGenerator.generate(selectedEnv); if (notValid(workspace, selectedEnv)) { return false; diff --git a/designer-base/src/main/java/com/fr/design/EnvSwitcherSubmitTask.java b/designer-base/src/main/java/com/fr/design/EnvSwitcherSubmitTask.java new file mode 100644 index 0000000000..33edfc66cb --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/EnvSwitcherSubmitTask.java @@ -0,0 +1,214 @@ +package com.fr.design; + +import com.fr.concurrent.FineExecutors; +import com.fr.concurrent.NamedThreadFactory; +import com.fr.design.mainframe.SiteCenterToken; +import com.fr.design.metric.AbstractDesignerMetric; +import com.fr.general.CloudCenter; +import com.fr.general.http.HttpToolbox; +import com.fr.json.JSONArray; +import com.fr.json.JSONObject; +import com.fr.log.FineLoggerFactory; +import com.fr.stable.StringUtils; +import com.fr.workspace.Workspace; +import com.fr.workspace.WorkspaceSwitchProcess; +import com.fr.workspace.WorkspaceSwitchStatics; +import com.fr.workspace.switcher.WorkspaceSwitchHistory; +import org.jetbrains.annotations.NotNull; + +import java.util.Comparator; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +import java.util.TreeSet; +import java.util.concurrent.ExecutorService; + +/** + * 设计器环境切换埋点提交 + * + * @author Bruce.Deng + * @since 11.0 + * Created on 2024/9/5 + */ +public class EnvSwitcherSubmitTask extends AbstractDesignerMetric { + + private static final String TAG_MODULE = "module"; + private static final String TAG_SELF_USED = "selfUsed"; + private static final String TAG_SUB = "sub"; + private static final String WORK_DIRECTORY_TYPE_BEFORE_SWITCHING = "workDirectoryTypeBeforeSwitching"; + private static final String WORK_DIRECTORY_TYPE_AFTER_SWITCHING = "workDirectoryTypeAfterSwitching"; + private static final String SWITCH_COMPLETED = "switchCompleted"; + private static final String EXCHANGE_TIME = "exchangeTime"; + private static final String START_SLOW_MODULE_NAME = "startSlowModuleName"; + private static final String STOP_SLOW_MODULE_NAME = "stopSlowModuleName"; + private static final int MIN_LIMIT = 100; + private static final String SWITCH_TABLE_SUFFIX = "record_of_fbp_remoteSwitch/single"; + private final ExecutorService service; + + private EnvSwitcherSubmitTask() { + service = FineExecutors.newSingleThreadExecutor(new NamedThreadFactory("DesignEnvSwitchMetricSubmit")); + } + + /** + * 异步提交环境切换的埋点 + */ + public static void asyncSubmit() { + new EnvSwitcherSubmitTask().run(); + } + + /** + * 执行任务 + */ + private void run() { + + WorkspaceSwitchHistory.consume(workspaceSwitchProcesses -> { + Iterator workspaceSwitchProcessIterator = workspaceSwitchProcesses.descendingIterator(); + while (workspaceSwitchProcessIterator.hasNext()) { + WorkspaceSwitchProcess next = workspaceSwitchProcessIterator.next(); + // 过滤掉 source 为空的启动过程 + if (next != null && next.getSource() != null) { + submitProcess(next); + } + // 提交之后要移除掉 + workspaceSwitchProcessIterator.remove(); + } + }); + } + + private void submitProcess(WorkspaceSwitchProcess process) { + service.submit(new Runnable() { + @Override + public void run() { + collectAndSubmit(process); + } + }); + } + + private void collectAndSubmit(WorkspaceSwitchProcess process) { + Map para = new HashMap<>(); + para.put("token", SiteCenterToken.generateToken()); + para.put("content", collect(process)); + try { + HttpToolbox.post(getUrl(), para); + FineLoggerFactory.getLogger().debug("[EnvSwitcher] submit env switcher metric to cloud."); + } catch (Throwable t) { + FineLoggerFactory.getLogger().debug(t,"[EnvSwitcher] failed to submit env switcher metric to cloud."); + } + } + + private JSONObject collect(WorkspaceSwitchProcess process) { + JSONObject info = new JSONObject(); + addDefaultMetric(info); + addMeta(info, process); + addStatics(info, process.getStatics()); + return info; + } + + private static void addMeta(JSONObject info, WorkspaceSwitchProcess process) { + Workspace source = process.getSource(); + info.put(WORK_DIRECTORY_TYPE_BEFORE_SWITCHING, workspaceType(source)); + Workspace target = process.getTarget(); + info.put(WORK_DIRECTORY_TYPE_AFTER_SWITCHING, workspaceType(target)); + info.put(SWITCH_COMPLETED, switchCompleted(process)); + } + + @NotNull + private static String switchCompleted(WorkspaceSwitchProcess process) { + + return process.isSwitchSuccess() ? "yes" : "no"; + } + + @NotNull + private static String workspaceType(Workspace workspace) { + + return workspace.isLocal() ? "local" : "remote"; + } + + private void addStatics(JSONObject info, WorkspaceSwitchStatics statics) { + info.put(EXCHANGE_TIME, statics.getElapsed()); + JSONObject startSlowModuleName = convert2CloudModel(statics.getStartModuleUsed()); + info.put(START_SLOW_MODULE_NAME, startSlowModuleName); + JSONObject stopSlowModuleName = convert2CloudModel(statics.getStopModuleUsed()); + info.put(STOP_SLOW_MODULE_NAME, stopSlowModuleName); + } + + /* convert */ + + @NotNull + private JSONObject convert2CloudModel(JSONObject moduleUsedJO) { + + TreeSet entries = convert2SortSet(moduleUsedJO); + return convert2JO(entries); + } + + @NotNull + private static JSONObject convert2JO(TreeSet startEntries) { + + JSONObject moduleNames = new JSONObject(); + startEntries.stream() + .filter((e) -> e.getSelfUsed() > MIN_LIMIT) + .forEach((e) -> moduleNames.put(e.getModuleName(), e.getSelfUsed())); + return moduleNames; + } + + @NotNull + private TreeSet convert2SortSet(JSONObject moduleUsedJO) { + + TreeSet entries = new TreeSet<>(Comparator.comparingInt(Entry::getSelfUsed)); + sortBySelfUsed(moduleUsedJO, entries); + return entries; + } + + /** + * 循环处理 JSON, 并降序排序 + * + * @param moduleUsed 模块用时 {@link com.fr.module.engine.FineModule} + * @param entries 降序排序的树集合 + */ + private void sortBySelfUsed(JSONObject moduleUsed, TreeSet entries) { + + if (moduleUsed == null || moduleUsed.isEmpty()) { + return; + } + + String moduleName = moduleUsed.optString(TAG_MODULE); + int selfUsed = moduleUsed.optInt(TAG_SELF_USED); + entries.add(new Entry(moduleName, selfUsed)); + + JSONArray subModules = moduleUsed.optJSONArray(TAG_SUB); + if (subModules != null) { + int length = subModules.length(); + for (int i = 0; i < length; i++) { + JSONObject subModuleUsed = subModules.optJSONObject(i); + sortBySelfUsed(subModuleUsed, entries); + } + } + } + + private String getUrl() { + String monitorEntry = CloudCenter.getInstance().acquireUrlByKind("cloud.monitor.api.entrypoint"); + String url = (StringUtils.isNotEmpty(monitorEntry) ? monitorEntry : DEFAULT_MONITOR_URL) + + SWITCH_TABLE_SUFFIX; + return url; + } + + private static class Entry { + + private final String moduleName; + + private final Integer selfUsed; + + public Entry(String moduleName, Integer selfUsed) { + this.moduleName = moduleName; + this.selfUsed = selfUsed; + } + + public String getModuleName() { + return moduleName; + } + + public Integer getSelfUsed() { + return selfUsed; + } + } +} diff --git a/designer-base/src/main/java/com/fr/design/actions/TableDataSourceAction.java b/designer-base/src/main/java/com/fr/design/actions/TableDataSourceAction.java index dbc72adbd7..8ce229b272 100644 --- a/designer-base/src/main/java/com/fr/design/actions/TableDataSourceAction.java +++ b/designer-base/src/main/java/com/fr/design/actions/TableDataSourceAction.java @@ -9,10 +9,12 @@ import com.fr.design.data.datapane.TableDataTreePane; import com.fr.design.data.tabledata.ResponseDataSourceChange; import com.fr.design.dialog.BasicDialog; import com.fr.design.dialog.DialogActionAdapter; +import com.fr.design.i18n.DesignSizeI18nManager; import com.fr.design.mainframe.JTemplate; import com.fr.design.menu.KeySetUtils; import javax.swing.SwingUtilities; +import java.awt.Dimension; import java.util.HashMap; import java.util.Iterator; import java.util.Map; @@ -42,7 +44,8 @@ public class TableDataSourceAction extends TemplateComponentAction it.setVisible(!OperatingSystem.isLinux() && JdkVersion.LE_8.support())), - // 登录选项 - cell(createLoginSelectorPane()).with(it -> it.setVisible(SupportOSImpl.DESIGNER_LOGIN.support())), // Oracle设置 cell(createOraclePane()), // 内存设置 @@ -346,6 +317,7 @@ public class PreferencePane extends BasicPane { .addTab(i18nText("Fine-Design_Basic_General"), generalScrollPane) .addTab(i18nText("Fine-Design_Basic_Advanced"), adviceScrollPane) .addTab(i18nText("Fine-Design_Vcs_Title"), vcsParentPane) + .withAdaptiveFit() .build(); contentPane.add(tabbedPane, BorderLayout.CENTER); @@ -544,7 +516,7 @@ public class PreferencePane extends BasicPane { new SwingWorker() { @Override protected Boolean doInBackground() throws Exception { - return WorkContext.getCurrent().get(VcsAutoCleanOperator.class).isSupport(); + return VcsRepository.getInstance().isSupport(); } @Override protected void done() { @@ -731,10 +703,10 @@ public class PreferencePane extends BasicPane { private Component createColorSettingPane() { // Color Setting Pane - gridLineColorTBButton = new UINoThemeColorButton(IOUtils.readIcon("/com/fr/design/images/gui/color/foreground.png")); + gridLineColorTBButton = new UINoThemeColorButton(new LazyIcon("foreground")); gridLineColorTBButton.setEnabled(this.isEnabled()); - paginationLineColorTBButton = new UINoThemeColorButton(IOUtils.readIcon("/com/fr/design/images/gui/color/foreground.png")); + paginationLineColorTBButton = new UINoThemeColorButton(new LazyIcon("foreground")); paginationLineColorTBButton.setEnabled(this.isEnabled()); JPanel colorPanel = row(10, @@ -967,11 +939,7 @@ public class PreferencePane extends BasicPane { this.portEditor.setValue(new Integer(designerEnvManager.getEmbedServerPort())); if (useOptimizedUPMCheckbox != null) { - useOptimizedUPMCheckbox.setSelected(checkOptimizedUPMUse()); - } - - if (useNewVersionLoginCheckbox != null) { - useNewVersionLoginCheckbox.setSelected(!DesignerEnvManager.getEnvManager().isUseOldVersionLogin()); + useOptimizedUPMCheckbox.setSelected(true); } useUniverseDBMCheckbox.setSelected(ServerPreferenceConfig.getInstance().isUseUniverseDBM()); @@ -1010,15 +978,6 @@ public class PreferencePane extends BasicPane { this.startupPageEnabledCheckBox.setSelected(designerEnvManager.isStartupPageEnabled()); } - private boolean checkOptimizedUPMUse() { - //如果是没手动配置过则默认开启 - //isUseNewPluginFirst如果为true说明没手动配置过,直接开启 - //走到这里说明checkBox不为空,机型肯定符合 - return DesignerEnvManager.getEnvManager().isUseNewPluginFirst() - || ServerPreferenceConfig.getInstance().isUseOptimizedUPM() - || DesignerEnvManager.getEnvManager().isUseOptimizedUPM4Adapter(); - } - private int chooseCase(int sign) { switch (sign) { case 0: @@ -1085,8 +1044,6 @@ public class PreferencePane extends BasicPane { designerEnvManager.setImageCompress(this.imageCompressPanelCheckBox.isSelected()); boolean optimizedUPMFlag = this.useOptimizedUPMCheckbox != null && this.useOptimizedUPMCheckbox.isSelected(); designerEnvManager.setUseOptimizedUPM4Adapter(optimizedUPMFlag); - //只有取消掉使用新插件管理器这个选项才需要把useNewPluginFirst置false(意味着用户手动配置了,如果勾选着的话,这个useNewPluginFirst为true就行了) - designerEnvManager.setUseNewPluginFirst(optimizedUPMFlag); boolean cloudDelayFlag = this.cloudAnalyticsDelayCheckBox.isSelected(); designerEnvManager.setCloudAnalyticsDelay(cloudDelayFlag); // cloudDelayFlag默认为true,如果用户手动配置过才会是false,则后续的云端运维配置都按照用户意愿来 @@ -1124,10 +1081,6 @@ public class PreferencePane extends BasicPane { designerEnvManager.setAutoPushUpdateEnabled(this.autoPushUpdateCheckBox.isSelected()); } - if (useNewVersionLoginCheckbox != null) { - designerEnvManager.setUseOldVersionLogin(!this.useNewVersionLoginCheckbox.isSelected()); - } - designerEnvManager.setUndoLimit(maxUndoLimit.getSelectedIndex() * SELECTED_INDEX_5); if (maxUndoLimit.getSelectedIndex() == SELECTED_INDEX_5) { designerEnvManager.setUndoLimit(MAX_UNDO_LIMIT_50); @@ -1197,12 +1150,12 @@ public class PreferencePane extends BasicPane { if (useVcsAutoCleanScheduleCheckBox.isEnabled()) { if (useVcsAutoCleanScheduleCheckBox.isSelected()) { FineLoggerFactory.getLogger().info("[VcsV2] start auto clean!"); - WorkContext.getCurrent().get(VcsAutoCleanOperator.class).addOrUpdateVcsAutoCleanJob( + VcsRepository.getInstance().addOrUpdateVcsAutoCleanJob(new VcsTaskBean( VcsAutoCleanService.VCS_AUTO_CLEAN_JOB_NAME, getDay(autoCleanIntervalComboBox.getSelectedIndex()), - VcsAutoCleanSchedule.class); + VcsAutoCleanSchedule.class)); } else { - WorkContext.getCurrent().get(VcsAutoCleanOperator.class).stopVcsAutoCleanJob(VcsAutoCleanService.VCS_AUTO_CLEAN_JOB_NAME); + VcsRepository.getInstance().stopVcsAutoCleanJob(VcsAutoCleanService.VCS_AUTO_CLEAN_JOB_NAME); } } } @@ -1251,7 +1204,7 @@ public class PreferencePane extends BasicPane { @Override public BasicDialog showWindow(Window window, DialogActionListener l) { - return showWindowWithCustomSize(window, l, new Dimension(BasicDialog.DEFAULT.width, BasicDialog.DEFAULT.height + OFFSET_HEIGHT)); + return showWindowWithCustomSize(window, l, new Dimension(BasicDialog.DEFAULT.width + OFFSET_HEIGHT, BasicDialog.DEFAULT.height + OFFSET_HEIGHT)); } private void tryGc() { @@ -1260,7 +1213,7 @@ public class PreferencePane extends BasicPane { @Override protected Boolean doInBackground() { - size = WorkContext.getCurrent().get(VcsOperator.class).immediatelyGc(); + size = VcsRepository.getInstance().immediatelyGc(); return true; } diff --git a/designer-base/src/main/java/com/fr/design/actions/file/export/AbstractExportAction.java b/designer-base/src/main/java/com/fr/design/actions/file/export/AbstractExportAction.java index f62243a8c4..f669403db5 100644 --- a/designer-base/src/main/java/com/fr/design/actions/file/export/AbstractExportAction.java +++ b/designer-base/src/main/java/com/fr/design/actions/file/export/AbstractExportAction.java @@ -1,5 +1,7 @@ package com.fr.design.actions.file.export; +import com.fanruan.entity.template.TemplateExportBean; +import com.fanruan.repository.TemplateRepository; import com.fr.design.actions.JTemplateAction; import com.fr.design.base.mode.DesignModeContext; import com.fr.design.dialog.FineJOptionPane; @@ -15,15 +17,11 @@ import com.fr.file.filter.ChooseFileFilter; import com.fr.io.exporter.DesignExportType; import com.fr.io.exporter.ExporterKey; import com.fr.log.FineLoggerFactory; -import com.fanruan.product.ProductConstants; import com.fr.stable.StringUtils; +import com.fr.stable.project.ProjectConstants; import com.fr.third.jodd.io.FileNameUtil; -import com.fr.workspace.WorkContext; -import com.fr.workspace.server.exporter.TemplateExportOperator; -import javax.swing.JOptionPane; -import javax.swing.SwingWorker; -import javax.swing.UIManager; +import javax.swing.*; import java.awt.event.ActionEvent; import java.io.OutputStream; import java.util.Map; @@ -211,19 +209,13 @@ public abstract class AbstractExportAction> extends JT } private void dealExporter(OutputStream outputStream, String path, final Map para) throws Exception { + if (path.startsWith(ProjectConstants.REPORTLETS_NAME)) { + path = path.substring(ProjectConstants.REPORTLETS_NAME.length()); + } - // 没有办法处理这个 isLocal 判断,因为一个是修改参数传递结果,一个是返回值做结果 - // todo 后续想想办法 - if (WorkContext.getCurrent().isLocal()) { - WorkContext.getCurrent().get(TemplateExportOperator.class) - .export(exportKey(), exportType(), outputStream, path, para); - } else { - byte[] contents = - WorkContext.getCurrent().get(TemplateExportOperator.class) - .export(exportKey(), exportType(), null, path, para); + byte[] contents = TemplateRepository.getInstance().export(new TemplateExportBean().setKey(exportKey()).setType(exportType()).setPath(path).setParas(para)); - outputStream.write(contents); - } + outputStream.write(contents); } @Override diff --git a/designer-base/src/main/java/com/fr/design/actions/help/SystemInfoPane.java b/designer-base/src/main/java/com/fr/design/actions/help/SystemInfoPane.java index 06bf05a920..3dd835363b 100644 --- a/designer-base/src/main/java/com/fr/design/actions/help/SystemInfoPane.java +++ b/designer-base/src/main/java/com/fr/design/actions/help/SystemInfoPane.java @@ -11,16 +11,20 @@ import javax.swing.JTable; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableColumnModel; +import com.fr.design.gui.icontainer.UITableScrollPane; +import com.fr.design.gui.itable.FineUITable; import com.fr.design.layout.FRGUIPaneFactory; import com.fanruan.product.ProductConstants; +import static com.fine.theme.utils.FineUIScale.scale; + public class SystemInfoPane extends JPanel { public SystemInfoPane() { super(FRGUIPaneFactory.createBorderLayout()); DefaultTableModel tableModel = new DefaultTableModel(); - JTable table = new JTable(tableModel) { + FineUITable table = new FineUITable(tableModel) { public boolean isCellEditable(int row, int column) { return false; } @@ -57,10 +61,10 @@ public class SystemInfoPane extends JPanel { table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); TableColumnModel columnModel = table.getColumnModel(); - columnModel.getColumn(0).setPreferredWidth(160); - columnModel.getColumn(1).setPreferredWidth(240); + columnModel.getColumn(0).setPreferredWidth(scale(160)); + columnModel.getColumn(1).setPreferredWidth(scale(240)); - add(new JScrollPane(table), BorderLayout.CENTER); + add(new UITableScrollPane(table), BorderLayout.CENTER); } /** diff --git a/designer-base/src/main/java/com/fr/design/actions/server/GlobalTableDataAction.java b/designer-base/src/main/java/com/fr/design/actions/server/GlobalTableDataAction.java index 3778e49d7c..138ab32295 100644 --- a/designer-base/src/main/java/com/fr/design/actions/server/GlobalTableDataAction.java +++ b/designer-base/src/main/java/com/fr/design/actions/server/GlobalTableDataAction.java @@ -8,7 +8,8 @@ import com.fr.design.DesignModelAdapter; import com.fr.design.actions.UpdateAction; import com.fr.design.data.DesignTableDataManager; import com.fr.design.data.datapane.TableDataTreePane; -import com.fr.workspace.server.repository.tabledata.TableDataBeanHelper; +import com.fr.design.data.datapane.preview.ConnectionInfoBeanHelper; +import com.fr.design.data.datapane.preview.TableDataBeanHelper; import com.fr.design.data.tabledata.ResponseDataSourceChange; import com.fr.design.data.tabledata.tabledatapane.TableDataManagerPane; import com.fr.design.dialog.BasicDialog; @@ -24,10 +25,9 @@ import com.fr.esd.event.DSMapping; import com.fr.esd.event.DsNameTarget; import com.fr.esd.event.StrategyEventsNotifier; -import com.fr.file.TableDataConfig; +import com.fr.log.FineLoggerFactory; import com.fr.report.LockItem; import com.fr.security.encryption.transmission.TransmissionEncryptionManager; -import com.fr.workspace.server.entity.connection.ConnectionBean; import com.fr.workspace.server.repository.connection.ConnectionRepository; import com.fr.workspace.server.repository.tabledata.TableDataRepository; @@ -85,23 +85,15 @@ public class GlobalTableDataAction extends UpdateAction implements ResponseDataS // 锁定成功,执行后续操作 final DesignerFrame designerFrame = DesignerContext.getDesignerFrame(); final List beans = TableDataRepository.getInstance().getAllTableData(); - final List connectionInfoBeans = ConnectionRepository.getInstance().getAll(); - final Map connectionMap = new HashMap<>(); - for (ConnectionBean bean : connectionInfoBeans) { - connectionMap.put(bean.getName(), bean.getConnection()); - } + final Map connectionMap = ConnectionInfoBeanHelper.createConnectionMap(ConnectionRepository.getInstance().getAll()); final Map tableDataMap = new HashMap<>(); - try { - TransmissionEncryptionManager.setTransEncryptionLevel(1); - for (ServerDataSetBean bean : beans) { + for (ServerDataSetBean bean : beans) { + try { tableDataMap.put(bean.getDatasetName() , TableDataBeanHelper.getTableDataSet(connectionMap, bean.getDatasetType(), bean.getDatasetData())); + } catch (Exception e) { + FineLoggerFactory.getLogger().error("[TableData] getTableData :{} failed!", bean.getDatasetName(), e); } - } catch (Exception e) { - throw new RuntimeException(e); - } finally { - TransmissionEncryptionManager.removeTransEncryptionLevel(); } - final TableDataManagerPane globalTableDataPane = new TableDataManagerPane() { public void complete() { populate(tableDataMap); diff --git a/designer-base/src/main/java/com/fr/design/backup/DesignContext.java b/designer-base/src/main/java/com/fr/design/backup/DesignContext.java index e2aebc14db..ef5f99e396 100644 --- a/designer-base/src/main/java/com/fr/design/backup/DesignContext.java +++ b/designer-base/src/main/java/com/fr/design/backup/DesignContext.java @@ -7,6 +7,7 @@ import com.fr.stable.StringUtils; import javax.servlet.ServletContext; +import java.io.File; import java.util.Properties; /** @@ -17,7 +18,7 @@ import java.util.Properties; * Created on 2024/5/14 */ public class DesignContext extends CarinaApplicationContext { - public static final String WEB_INF = "\\WEB-INF"; + public static final String WEB_INF = "WEB-INF"; private String designWebInfPath; private String designDataPath; @@ -39,7 +40,7 @@ public class DesignContext extends CarinaApplicationContext { public void setDesignWebInfPath(String designWebInfPath) { this.designWebInfPath = designWebInfPath; if (StringUtils.isNotEmpty(this.designWebInfPath)) { - this.designDataPath = this.designWebInfPath.replace(WEB_INF, StringUtils.EMPTY); + this.designDataPath = this.designWebInfPath.replace(File.separatorChar + WEB_INF, StringUtils.EMPTY); } FineLoggerFactory.getLogger().info("[DesignContext] designWebInfPath:{}, designDataPath:{}", this.designWebInfPath, this.designDataPath); } diff --git a/designer-base/src/main/java/com/fr/design/backup/EnvBackupHelper.java b/designer-base/src/main/java/com/fr/design/backup/EnvBackupHelper.java index bb9575ea19..1dddbc2493 100644 --- a/designer-base/src/main/java/com/fr/design/backup/EnvBackupHelper.java +++ b/designer-base/src/main/java/com/fr/design/backup/EnvBackupHelper.java @@ -4,11 +4,13 @@ import com.fanruan.carina.Carina; import com.fanruan.config.realm.ConfigRepositoryFactory; import com.fanruan.config.realm.local.LocalConfigRepositoryBuilder; import com.fr.design.ConfigHelper; +import com.fr.design.env.RemoteWorkspace; import com.fr.design.mem.MemConfigBackupManager; import com.fr.design.mem.MemConfigRepositoryBuilder; import com.fr.log.FineLoggerFactory; import com.fr.workspace.WorkContext; import com.fr.workspace.Workspace; +import com.fr.workspace.server.repository.connect.FineWorkspaceHttpClient; import java.util.Properties; @@ -42,11 +44,13 @@ public class EnvBackupHelper { FineLoggerFactory.getLogger().info("[EnvBackup] 1.back start..."); this.swtiching = true; local = WorkContext.getCurrent().isLocal(); + origin = WorkContext.getCurrent(); if (local) { properties = ConfigHelper.getEnvProperties(); path = ConfigHelper.getEnvPropertiesPath(); + } else { + closeEnv(); } - origin = WorkContext.getCurrent(); } /** @@ -107,10 +111,30 @@ public class EnvBackupHelper { } else { // 如果是远程,则新环境的配置全部弃用,直接走老的 MemConfigBackupManager.getInstance().failed(); + rollbackEnv(); } } + /** + * 关闭环境 + */ + public void closeEnv() { + // 如果原来是远程,要先发请求告诉原来的环境我这边要断开 + if (origin instanceof RemoteWorkspace) { + origin.close(); + } + } + + /** + * 重新进入老环境 + */ + public void rollbackEnv() { + if (origin instanceof RemoteWorkspace && ((RemoteWorkspace) origin).getClient() instanceof FineWorkspaceHttpClient) { + ((FineWorkspaceHttpClient) ((RemoteWorkspace) origin).getClient()).connect(); + } + } + public boolean isSwtiching() { return swtiching; } diff --git a/designer-base/src/main/java/com/fr/design/components/notification/NotificationDialog.java b/designer-base/src/main/java/com/fr/design/components/notification/NotificationDialog.java index d9a1cf0c21..190cafe6fe 100644 --- a/designer-base/src/main/java/com/fr/design/components/notification/NotificationDialog.java +++ b/designer-base/src/main/java/com/fr/design/components/notification/NotificationDialog.java @@ -1,5 +1,8 @@ package com.fr.design.components.notification; +import com.fine.theme.icon.LazyIcon; +import com.fine.theme.utils.FineUIScale; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.function.ThrowableRunnable; import com.fr.base.svg.IconUtils; import com.fr.design.components.page.PageControlModel; @@ -53,7 +56,7 @@ public class NotificationDialog extends JDialog { */ private static final int CONTENT_SCROLL_WIDTH = 280; - private static final int CONTENT_WIDTH = 300; + private static final int CONTENT_WIDTH = 360; private static final int CONTENT_HEIGHT = 100; /** * 通知框的外部宽高 @@ -148,21 +151,20 @@ public class NotificationDialog extends JDialog { protected JPanel createContentPanel() { JPanel contentPanel = FRGUIPaneFactory.createBorderLayout_S_Pane(); - contentPanel.setBorder(BorderFactory.createEmptyBorder(8, 10, 8, 10)); + contentPanel.setBorder(new ScaledEmptyBorder(8, 10, 8, 10)); contentPanel.setName("contentPanel"); NotificationModel model = getCurrentModel(); UILabel icon = new UILabel(getIconForType(model.getType())); - icon.setPreferredSize(new Dimension(16, 16)); JPanel iconPanel = FRGUIPaneFactory.createBorderLayout_L_Pane(); - iconPanel.setBorder(BorderFactory.createEmptyBorder(0, 5, 10, 8)); + iconPanel.setBorder(new ScaledEmptyBorder(0, 5, 10, 8)); iconPanel.add(icon, BorderLayout.NORTH); contentPanel.add(iconPanel, BorderLayout.WEST); JPanel centerPanel = FRGUIPaneFactory.createBorderLayout_S_Pane(); - centerPanel.setBorder(BorderFactory.createEmptyBorder(0, 0, 5, 5)); + centerPanel.setBorder(new ScaledEmptyBorder(0, 0, 5, 5)); NotificationMessage[] messages = model.getMessages(); List messageComponents = Arrays.stream(messages) @@ -213,7 +215,7 @@ public class NotificationDialog extends JDialog { jScrollPane.setBorder(BorderFactory.createEmptyBorder()); centerPanel.add(jScrollPane, BorderLayout.CENTER); - centerPanel.setPreferredSize(CONTENT_SIZE); + centerPanel.setPreferredSize(FineUIScale.scale(CONTENT_SIZE)); contentPanel.add(centerPanel, BorderLayout.CENTER); @@ -282,7 +284,7 @@ public class NotificationDialog extends JDialog { NotificationAction action = currentModel.getAction(); if (action != null) { UIButton actionButton = new UIButton(action.name()); - actionButton.setPreferredSize(BUTTON_DIMENSION); + actionButton.setPreferredSize(FineUIScale.scale(BUTTON_DIMENSION)); actionButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { @@ -293,7 +295,7 @@ public class NotificationDialog extends JDialog { } UIButton knowButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Know")); - knowButton.setPreferredSize(BUTTON_DIMENSION); + knowButton.setPreferredSize(FineUIScale.scale(BUTTON_DIMENSION)); knowButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { @@ -359,21 +361,21 @@ public class NotificationDialog extends JDialog { protected Icon getIconForType(NotificationType type) { - String iconPath; + String iconId; switch (type) { case ERROR: - iconPath = "/com/fr/design/standard/reminder/reminder_error.svg"; + iconId = "error"; break; case INFO: - iconPath = "/com/fr/design/standard/reminder/reminder_success.svg"; + iconId = "success"; break; case WARNING: - iconPath = "/com/fr/design/standard/reminder/reminder_warning.svg"; + iconId = "warning"; break; default: return null; } - return IconUtils.readIcon(iconPath); + return new LazyIcon(iconId, 20); } private void destroy() { diff --git a/designer-base/src/main/java/com/fr/design/condition/ConditionAttributesPane.java b/designer-base/src/main/java/com/fr/design/condition/ConditionAttributesPane.java index bc2eca9fd1..cd0e8221c9 100644 --- a/designer-base/src/main/java/com/fr/design/condition/ConditionAttributesPane.java +++ b/designer-base/src/main/java/com/fr/design/condition/ConditionAttributesPane.java @@ -2,13 +2,12 @@ package com.fr.design.condition; import com.fine.theme.icon.LazyIcon; -import com.fine.theme.light.ui.FineRoundBorder; import com.fine.theme.utils.FineUIScale; import com.fine.theme.utils.FineUIUtils; -import com.formdev.flatlaf.ui.FlatUIUtils; import com.fr.common.annotations.Open; import com.fr.design.actions.UpdateAction; import com.fr.design.beans.BasicBeanPane; +import com.fr.design.border.FineBorderFactory; import com.fr.design.gui.itoolbar.UIToolbar; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.menu.ToolBarDef; @@ -19,7 +18,6 @@ import javax.swing.JComponent; import javax.swing.JPanel; import javax.swing.JScrollPane; import java.awt.BorderLayout; -import java.awt.Color; import java.awt.Dimension; import java.util.Iterator; import java.util.LinkedHashMap; @@ -73,18 +71,16 @@ public abstract class ConditionAttributesPane extends BasicBeanPane { UIToolbar toolBar = ToolBarDef.createJToolBar(); toolBar.setLayout(new BorderLayout()); - toolBar.setBorder(new FineRoundBorder()); - toolBar.setBackground(FlatUIUtils.getUIColor("background.normal", Color.WHITE)); toolbarDef.updateToolBar(toolBar); addItemPane.add(toolBar, BorderLayout.WEST); - addItemPane.setBorder(new FineRoundBorder()); + addItemPane.setBorder(FineBorderFactory.createWrappedRoundBorder()); addItemPane.setPreferredSize(new Dimension(addItemPane.getPreferredSize().width, FineUIScale.scale(24))); selectedItemPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); - // 选中的添加Itempane + // 选中的添加ItemPane selectedItemScrollPane.setViewportView(selectedItemPane); selectedItemScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); @@ -93,7 +89,8 @@ public abstract class ConditionAttributesPane extends BasicBeanPane { this.add(FineUIUtils.wrapComponentWithTitle(column( 10, row(cell(addItemPane), flex()), - cell(selectedItemScrollPane).with(it -> it.setBorder(new FineRoundBorder())), + cell(selectedItemScrollPane).weight(1).with( + it -> it.setBorder(FineBorderFactory.createWrappedRoundBorder())), fix(10) ).getComponent(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Property")), BorderLayout.NORTH); } diff --git a/designer-base/src/main/java/com/fr/design/condition/DSColumnLiteConditionPane.java b/designer-base/src/main/java/com/fr/design/condition/DSColumnLiteConditionPane.java index cee0410a95..825be9e635 100644 --- a/designer-base/src/main/java/com/fr/design/condition/DSColumnLiteConditionPane.java +++ b/designer-base/src/main/java/com/fr/design/condition/DSColumnLiteConditionPane.java @@ -123,8 +123,8 @@ public class DSColumnLiteConditionPane extends LiteConditionPane extends BasicPane { private static final long serialVersionUID = -4274960170813368817L; - + protected UIButton cancel; - + public SingleConditionPane(){ this(true); } - + public SingleConditionPane(boolean isRemove) { this.setLayout(FRGUIPaneFactory.createScaledBorderLayout(10, 0)); + this.setBorder(new ScaledEmptyBorder(4, 8, 4, 8)); if (isRemove) { - + if(cancel == null) { cancel = new UIButton(new LazyIcon("remove")); cancel.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Action_Remove")); cancel.addActionListener(cancleListener); - cancel.setMargin(new Insets(0, 0, 0, 0)); - cancel.setBorder(new ScaledEmptyBorder(0, 0, 0, 10)); - cancel.setBackground(FlatUIUtils.getUIColor("default.background", new Color(246, 248, 250, 255))); + FineUIStyle.setStyle(cancel, FineUIStyle.ORIGINAL_BUTTON); } addCancel(); } @@ -43,9 +46,9 @@ public abstract class SingleConditionPane extends BasicPane { * 添加删除按钮 */ public void addCancel() { - this.add(cancel, BorderLayout.EAST); + this.add(column(flex(), cell(cancel), flex()).getComponent(), BorderLayout.EAST); } - + ActionListener cancleListener = new ActionListener() { public void actionPerformed(ActionEvent e) { doCancel(); @@ -58,8 +61,8 @@ public abstract class SingleConditionPane extends BasicPane { public abstract void doCancel(); public abstract void setDefault(); - + public abstract void populate(T condition); - + public abstract T update(); } diff --git a/designer-base/src/main/java/com/fr/design/constants/UIConstants.java b/designer-base/src/main/java/com/fr/design/constants/UIConstants.java index 792ab91365..b47b8d94f9 100644 --- a/designer-base/src/main/java/com/fr/design/constants/UIConstants.java +++ b/designer-base/src/main/java/com/fr/design/constants/UIConstants.java @@ -4,7 +4,6 @@ package com.fr.design.constants; import com.fine.theme.icon.LazyIcon; -import com.fr.base.svg.IconUtils; import com.fr.base.svg.SVGLoader; import com.fr.general.IOUtils; import com.fr.stable.Constants; @@ -27,7 +26,6 @@ import java.awt.image.BufferedImage; */ public interface UIConstants { - public static final Icon CPT_ICON = IOUtils.readIcon("/com/fr/base/images/oem/cpt.png"); public static final Icon BLACK_ICON = IOUtils.readIcon("/com/fr/base/images/cell/blank.gif"); public static final String EMPTY_ICON = StringUtils.EMPTY; @@ -153,67 +151,17 @@ public interface UIConstants { public static final Color CHECK_BOX_TIP_FONT_COLOR = new Color(51, 51, 52, (int)Math.round(0.5 * 255)); public static final BufferedImage DRAG_BAR = IOUtils.readImage("com/fr/design/images/control/bar.png"); - public static final BufferedImage DRAG_BAR_LIGHT = IOUtils.readImage("com/fr/design/images/control/bar-light.png"); public static final Image ARROW_NORTH = SVGLoader.load("/com/fr/design/standard/arrowlinear/up_arrow.svg"); public static final Image ARROW_SOUTH = SVGLoader.load("/com/fr/design/standard/arrowlinear/down_arrow.svg"); public static final Image ARROW_EAST = SVGLoader.load("/com/fr/design/standard/arrowlinear/east_arrow.svg"); public static final Image ARROW_WEST = SVGLoader.load("/com/fr/design/standard/arrowlinear/west_arrow.svg"); - - public static final BufferedImage DRAG_BAR_RIGHT = IOUtils.readImage("com/fr/design/images/control/barm.png"); - public static final BufferedImage DRAG_BAR_LEFT = IOUtils.readImage("com/fr/design/images/control/barl.png"); - public static final Image DRAG_UP_NORMAL = SVGLoader.load("/com/fr/design/standard/triangle.arrow/up_normal.svg"); - public static final Image DRAG_UP_PRESS = SVGLoader.load("/com/fr/design/standard/triangle.arrow/up_hover.svg"); - public static final Image DRAG_DOWN_NORMAL = SVGLoader.load("/com/fr/design/standard/triangle.arrow/down_normal.svg"); - public static final Image DRAG_DOWN_PRESS = SVGLoader.load("/com/fr/design/standard/triangle.arrow/down_hover.svg"); - public static final Image DRAG_RIGHT_NORMAL = SVGLoader.load("/com/fr/design/standard/drag/right_normal.svg"); - public static final Image DRAG_RIGHT_PRESS = SVGLoader.load("/com/fr/design/standard/drag/right_pressed.svg"); - public static final Image DRAG_LEFT_NORMAL = SVGLoader.load("/com/fr/design/standard/drag/left_normal.svg"); - public static final Image DRAG_LEFT_PRESS = SVGLoader.load("/com/fr/design/standard/drag/left_pressed.svg"); public static final BufferedImage DRAG_DOT = IOUtils.readImage("com/fr/design/images/control/dot.png"); - public static final Image DRAG_LINE = SVGLoader.load("/com/fr/design/standard/dot_line_normal.svg"); - public static final BufferedImage ACCESSIBLE_EDITOR_DOT = IOUtils.readImage("com/fr/design/images/control/dot.png"); - public static final BufferedImage DRAG_DOT_VERTICAL = IOUtils.readImage("com/fr/design/images/control/dotv.png"); - public static final Image POP_BUTTON_DOWN = SVGLoader.load("/com/fr/design/standard/poparrow/pop_down_arrow.svg"); - public static final Image POP_BUTTON_UP = SVGLoader.load("/com/fr/design/standard/poparrow/pop_up_arrow.svg"); - public static final BufferedImage DRAG_DOWN_SELECTED_SMALL = IOUtils.readImage("com/fr/design/images/buttonicon/downSelected.png"); - public static final BufferedImage DRAG_LEFT_NORMAL_SMALL = IOUtils.readImage("com/fr/design/images/buttonicon/leftNormal.png"); public static final BufferedImage WATERMARK_BACKGROUND = IOUtils.readImage("/com/fr/design/images/dialog/watermark/" + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_WaterMark_Background_Icon_File_Name")); public static final int MODEL_NORMAL = 0; public static final int MODEL_PRESS = 1; - public static final Icon ARROW_DOWN_ICON = IconUtils.readIcon("/com/fr/design/standard/arrowlinear/down_arrow.svg"); - public static final Icon ARROW_UP_ICON = IOUtils.readIcon("com/fr/design/images/buttonicon/arrowup.png"); - public static final Icon YES_ICON = IOUtils.readIcon("com/fr/design/images/buttonicon/yes.png"); - public static final Icon CHOOSEN_ICON = IOUtils.readIcon("com/fr/design/images/buttonicon/select_item.png"); - public static final Icon PRE_WIDGET_ICON = IOUtils.readIcon("com/fr/design/images/buttonicon/prewidget.png"); - public static final Icon PRE_WIDGET_NORMAL_ICON = IconUtils.readIcon("com/fr/design/images/buttonicon/prewidget"); - public static final Icon EDIT_NORMAL_ICON = IconUtils.readIcon("/com/fr/design/standard/uimode/edit"); - public static final Icon EDIT_PRESSED_ICON = IconUtils.readIcon("/com/fr/design/standard/uimode/edit_pressed.svg"); - public static final Icon HIDE_NORMAL_ICON = IconUtils.readIcon("/com/fr/design/standard/uimode/hide"); - public static final Icon HIDE_PRESSED_ICON = IconUtils.readIcon("/com/fr/design/standard/uimode/hide_pressed.svg"); - public static final Icon VIEW_NORMAL_ICON = IconUtils.readIcon("/com/fr/design/standard/uimode/view"); - //public static final Icon VIEW_PRESSED_ICON = IconUtils.readIcon("/com/fr/design/standard/uimode/view"); - - public static final Icon RUN_BIG_ICON = IconUtils.readIcon("/com/fr/design/standard/preview/run24.svg"); - public static final Icon RUN_SMALL_ICON = IconUtils.readIcon("/com/fr/design/standard/preview/runs.svg"); - public static final Icon PAGE_BIG_ICON = IconUtils.readIcon("/com/fr/design/standard/preview/pageb24.svg"); - public static final Icon WRITE_BIG_ICON = IconUtils.readIcon("/com/fr/design/standard/preview/writeb24.svg"); - public static final Icon ANA_BIG_ICON = IconUtils.readIcon("/com/fr/design/standard/preview/anab24.svg"); - public static final Icon PAGE_SMALL_ICON = IconUtils.readIcon("/com/fr/design/standard/preview/pages.svg"); - public static final Icon WRITE_SMALL_ICON = IconUtils.readIcon("/com/fr/design/standard/preview/writes.svg"); - public static final Icon ANA_SMALL_ICON = IconUtils.readIcon("/com/fr/design/standard/preview/anas.svg"); - - public static final Icon REFRESH_ICON = IOUtils.readIcon("com/fr/design/images/buttonicon/refresh.png"); - public static final Icon FONT_ICON = IOUtils.readIcon("/com/fr/design/images/gui/color/foreground.png"); - public static final Icon AUTO_FONT_ICON = IOUtils.readIcon("/com/fr/design/images/gui/color/autoForeground.png"); - public static final Icon HISTORY_ICON = IOUtils.readIcon("com/fr/design/images/buttonicon/history.png"); - public static final Icon DELETE_ICON = IOUtils.readIcon("com/fr/design/images/m_file/close.png"); - public static final Icon EDIT_ICON = IOUtils.readIcon("com/fr/design/images/m_file/edit.png"); - public static final Icon SEARCH_ICON = IOUtils.readIcon("/com/fr/design/images/data/search.png"); - public static final Icon BLACK_SEARCH_ICON = IOUtils.readIcon("/com/fr/design/images/data/black_search.png"); - public static final Icon CLEAR_ICON = IOUtils.readIcon("/com/fr/design/images/data/source/delete.png"); - public static final Icon LIST_EDIT_ICON = IOUtils.readIcon("/com/fr/design/images/control/edit.png"); - public static final Icon LIST_EDIT_WHITE_ICON = IOUtils.readIcon("/com/fr/design/images/control/edit_white.png"); + public static final Icon ARROW_DOWN_ICON = new LazyIcon("down_arrow"); + public static final Icon ARROW_UP_ICON = new LazyIcon("up_arrow"); public static final Color PRESSED_DARK_GRAY = new Color(127, 127, 127); public static final Color GRDIENT_DARK_GRAY = new Color(45, 45, 45); public static final Color BARNOMAL = new Color(232, 232, 233); @@ -222,7 +170,6 @@ public interface UIConstants { public static final int BUTTON_GROUP_ARC = 0; public static final int LARGEARC = 6; public static final Stroke BS = new BasicStroke(1f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND, 2f, new float[]{3, 1}, 0); - public static final Icon PREVIEW_DOWN = IconUtils.readIcon("/com/fr/design/standard/preview_down_icon"); public static final int CLOSE_AUTHORITY_HEIGHT_AND_WIDTH = 24; public static final Icon CLOSE_OF_AUTHORITY = new LazyIcon("platform_close", CLOSE_AUTHORITY_HEIGHT_AND_WIDTH).disabled(); public static final Icon CLOSE_OVER_AUTHORITY = new LazyIcon("platform_close", CLOSE_AUTHORITY_HEIGHT_AND_WIDTH); diff --git a/designer-base/src/main/java/com/fr/design/data/BasicTableDataTreePane.java b/designer-base/src/main/java/com/fr/design/data/BasicTableDataTreePane.java index 8c1252651a..9ce92b756f 100644 --- a/designer-base/src/main/java/com/fr/design/data/BasicTableDataTreePane.java +++ b/designer-base/src/main/java/com/fr/design/data/BasicTableDataTreePane.java @@ -352,6 +352,13 @@ public abstract class BasicTableDataTreePane extends DockingView implements Resp }); } } + /** + * 重置 + */ + public void resetAddMenuDef() { + this.addMenuDef.clearShortCuts(); + this.createAddMenuDef(); + } private abstract class TDAction extends UpdateAction { diff --git a/designer-base/src/main/java/com/fr/design/data/DesignTableDataManager.java b/designer-base/src/main/java/com/fr/design/data/DesignTableDataManager.java index 46e0c4de84..0c17bcb0e9 100644 --- a/designer-base/src/main/java/com/fr/design/data/DesignTableDataManager.java +++ b/designer-base/src/main/java/com/fr/design/data/DesignTableDataManager.java @@ -9,8 +9,10 @@ import com.fr.data.MultiResultTableData; import com.fr.data.TableDataSource; import com.fr.data.TableDataSourceTailor; import com.fr.data.core.DataCoreXmlUtils; +import com.fr.data.impl.ConditionTableData; import com.fr.data.impl.EmbeddedTableData; import com.fr.data.impl.NameDataModel; +import com.fr.data.impl.RecursionTableData; import com.fr.data.impl.storeproc.ProcedureDataModel; import com.fr.data.impl.storeproc.StoreProcedure; import com.fr.data.impl.storeproc.StoreProcedureConstants; @@ -586,13 +588,17 @@ public abstract class DesignTableDataManager { TableDataSource source = TableDataSourceTailor.extractTableData(tableDataSource); bean.setDataSource(source); bean.setDataName(DataOperator.getTableDataName(source, tabledata)); - bean.setParameterMap(parameterMap); - if (checkBean(bean)) { + bean.setStart(rowCount); + bean.setEnd(-1); + bean.updateConvertMap(parameterMap); + if (checkBean(bean, tabledata)) { return (EmbeddedTableData) TableDataRepository.getInstance().previewTableData(bean).getTableData(); } else { PreviewDataBean dataBean = new PreviewDataBean(); dataBean.setDataSource(tabledata); - dataBean.setParameterMap(parameterMap); + dataBean.updateConvertMap(parameterMap); + dataBean.setStart(rowCount); + dataBean.setEnd(-1); return (EmbeddedTableData) TableDataRepository.getInstance().previewTableData(dataBean).getTableData(); } @@ -620,9 +626,16 @@ public abstract class DesignTableDataManager { } } - private static boolean checkBean(PreviewSourceBean bean) { - // dataName为空说明是新建的,得用tabledata传 - return !bean.getDataName().isEmpty(); + private static boolean checkBean(PreviewSourceBean bean, TableData tableData) { + if (bean.getDataName().isEmpty()) { + if (tableData instanceof ConditionTableData || tableData instanceof RecursionTableData) { + bean.getDataSource().putTableData(StringUtils.EMPTY, tableData); + return true; + } + // dataName为空并且不为特殊的数据集说明是新建的,得用tabledata传 + return false; + } + return true; } private static boolean needInputParams(boolean mustInputParameters, ParameterProvider[] parameters) { diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/ChoosePane.java b/designer-base/src/main/java/com/fr/design/data/datapane/ChoosePane.java index 4229b54036..49af47f2ca 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/ChoosePane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/ChoosePane.java @@ -332,7 +332,7 @@ public class ChoosePane extends BasicBeanPane implements Refresha List authConnections = getHasAuthConnections(); for (String name : authConnections) { if (ComparatorUtils.equals(selectedDSName, name)) { - return ConnectionRepository.getInstance().getByName(name).getConnection(); + return ConnectionInfoBeanHelper.createConnection(ConnectionRepository.getInstance().getByName(name)); } } return null; @@ -442,7 +442,7 @@ public class ChoosePane extends BasicBeanPane implements Refresha boolean connect = false; com.fr.data.impl.Connection database = null; try { - database = ConnectionRepository.getInstance().getByName(paras.getDatabaseName()).getConnection(); + database = ConnectionInfoBeanHelper.createConnection(ConnectionRepository.getInstance().getByName(paras.getDatabaseName())); } catch (Exception e) { FineLoggerFactory.getLogger().info(e.getMessage(), e); } diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java index c1adf134a4..2dcaea1aaa 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java @@ -14,7 +14,7 @@ import com.fine.theme.icon.LazyIcon; import com.fr.data.impl.storeproc.StoreProcedure; import com.fr.datacenters.tabledata.DCTableData; import com.fr.design.ExtraDesignClassManager; -import com.fr.design.data.tabledata.datacenter.DatacentersPane; +import com.fr.design.data.tabledata.datacenter.DCTableDataPane; import com.fr.design.data.tabledata.tabledatapane.ClassTableDataPane; import com.fr.design.data.tabledata.tabledatapane.DBTableDataPane; import com.fr.design.data.tabledata.tabledatapane.EmbeddedTableDataPane; @@ -95,7 +95,7 @@ public class TableDataCreatorProducer { return new TableDataNameObjectCreator[]{ new TableDataNameObjectCreator(i18nText("Fine-Design_Basic_DS_Datacenters"), new LazyIcon("datacenter"), - DCTableData.class, DatacentersPane.class) { + DCTableData.class, DCTableDataPane.class) { @Override public boolean shouldInsertSeparator() { return true; diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataPaneListPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataPaneListPane.java index f32e8d2e2f..cbc67bb2e8 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataPaneListPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataPaneListPane.java @@ -1,5 +1,6 @@ package com.fr.design.data.datapane; +import com.fine.theme.utils.FineUIScale; import com.fr.base.TableData; import com.fr.base.TableDataBean; import com.fr.data.MultiResultTableData; @@ -10,10 +11,11 @@ import com.fr.decision.webservice.bean.dataset.ServerDataSetBean; import com.fr.design.data.BasicTableDataUtils; import com.fr.design.data.DesignTableDataManager; import com.fr.design.data.MapCompareUtils; -import com.fr.workspace.server.repository.tabledata.TableDataBeanHelper; +import com.fr.design.data.datapane.preview.TableDataBeanHelper; import com.fr.design.dialog.FineJOptionPane; import com.fr.design.gui.controlpane.JListControlPane; import com.fr.design.gui.controlpane.NameableCreator; +import com.fr.design.gui.controlpane.ShortCut4JControlPane; import com.fr.design.gui.ilist.ListModelElement; import com.fr.design.i18n.Toolkit; import com.fr.file.ProcedureConfig; @@ -94,6 +96,21 @@ public class TableDataPaneListPane extends JListControlPane implements TableData return Toolkit.i18nText("Fine-Design_Basic_Table_Data_Duplicate_Name_Tips", getEditingName()); } + @Override + protected ShortCut4JControlPane[] createShortcuts() { + return new ShortCut4JControlPane[]{ + shortCutFactory.addItemShortCut(), + shortCutFactory.removeItemShortCut(), + shortCutFactory.copyItemShortCut(), + shortCutFactory.sortItemShortCut(), + }; + } + + @Override + protected int getLeftPreferredSize() { + return FineUIScale.scale(180); + } + @Override public Collection getExtraItemsToCheckNameRepeat() { return DesignTableDataManager.getGlobalDataSet().keySet(); @@ -261,13 +278,28 @@ public class TableDataPaneListPane extends JListControlPane implements TableData try { switch (entryEventKind) { case REMOVED: - deleteDatas.add(TableDataBeanHelper.getServerDataSetBean(s, tabledata)); + ServerDataSetBean remove = TableDataBeanHelper.getServerDataSetBean(s, tabledata); + if (StringUtils.isNotEmpty(remove.getDatasetData())) { + deleteDatas.add(remove); + } else { + FineLoggerFactory.getLogger().error("Unable to find the corresponding processor : {}", tabledata.getClass()); + } break; case ADDED: - addDatas.add(TableDataBeanHelper.getServerDataSetBean(s, tabledata)); + ServerDataSetBean add = TableDataBeanHelper.getServerDataSetBean(s, tabledata); + if (StringUtils.isNotEmpty(add.getDatasetData())) { + addDatas.add(add); + } else { + FineLoggerFactory.getLogger().error("Unable to find the corresponding processor : {}", tabledata.getClass()); + } break; case UPDATED: - updateDatas.add(TableDataBeanHelper.getServerDataSetBean(s, tabledata)); + ServerDataSetBean update = TableDataBeanHelper.getServerDataSetBean(s, tabledata); + if (StringUtils.isNotEmpty(update.getDatasetData())) { + updateDatas.add(update); + } else { + FineLoggerFactory.getLogger().error("Unable to find the corresponding processor : {}", tabledata.getClass()); + } break; default: break; diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataTree.java b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataTree.java index ca7cb38b4b..b1877fa75e 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataTree.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataTree.java @@ -64,11 +64,11 @@ public class TableDataTree extends UserObjectRefreshJTree { } else if (nameObject.getObject() instanceof Integer) { int num = (Integer) nameObject.getObject(); if (num == TableDataSourceOP.SERVER_TABLE_DATA) { - this.setIcon(IconUtils.readIcon(IconPathConstants.STD_SHOW_ICON_PATH)); + this.setIcon(new LazyIcon("server_database")); } else if (num == TableDataSourceOP.STORE_PRECEDURE_DATA) { - this.setIcon(IconUtils.readIcon(IconPathConstants.SP_SHOW_ICON_PATH)); + this.setIcon(new LazyIcon("store_procedure")); } else { - this.setIcon(IconUtils.readIcon(IconPathConstants.DS_QUERY_ICON_PATH)); + this.setIcon(new LazyIcon("database")); } } else { this.setIcon(new LazyIcon("store_procedure")); diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataTreePane.java b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataTreePane.java index 0c072ba033..0552f836e8 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataTreePane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataTreePane.java @@ -1,6 +1,7 @@ package com.fr.design.data.datapane; import com.fine.theme.icon.LazyIcon; +import com.fine.theme.light.ui.FineRoundBorder; import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.TableData; import com.fr.data.MultiResultTableData; @@ -11,6 +12,7 @@ import com.fr.design.DesignModelAdapter; import com.fr.design.DesignerEnvManager; import com.fr.design.ExtraDesignClassManager; import com.fr.design.actions.UpdateAction; +import com.fr.design.cache.DesignCacheManager; import com.fr.design.data.BasicTableDataTreePane; import com.fr.design.data.BasicTableDataUtils; import com.fr.design.data.DesignTableDataManager; @@ -39,6 +41,8 @@ import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilist.CheckBoxListWithPartialSelect; import com.fr.design.gui.imenu.UIPopupMenu; +import com.fr.design.gui.iscrollbar.UIBasicVerticalScrollBar; +import com.fr.design.gui.iscrollbar.UIScrollBar; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.gui.itoolbar.UIToolbar; import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode; @@ -73,10 +77,10 @@ import org.jetbrains.annotations.NotNull; import javax.swing.Icon; import javax.swing.JLabel; import javax.swing.JPanel; +import javax.swing.JScrollBar; import javax.swing.SwingUtilities; import javax.swing.SwingWorker; import javax.swing.ToolTipManager; -import javax.swing.border.EmptyBorder; import javax.swing.tree.TreePath; import java.awt.BorderLayout; import java.awt.Color; @@ -457,7 +461,7 @@ public class TableDataTreePane extends BasicTableDataTreePane { if (!ComparatorUtils.equals(oldName, tdName)) { map.put(oldName, tdName); } - fireDSChanged(map); + DesignCacheManager.processByCacheTableData(() -> fireDSChanged(map)); tc.fireTargetModified(); tc.parameterChanged(); int[] rows = tableDataTree.getSelectionRows(); @@ -504,11 +508,10 @@ public class TableDataTreePane extends BasicTableDataTreePane { } else if (!ComparatorUtils.equals(oldName, tempName) && isDsNameRepeaded(tempName)) { nPanel.setShowText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Table_Data_Duplicate_Name_Tips", tempName)); dg.setButtonEnabled(false); - } else if (oldName.length() >= PROCEDURE_NAME_INDEX && tableDataPane.updateBean() instanceof MultiResultTableData) { - if (isIncludeUnderline(tempName)) { - nPanel.setShowText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Multi_Result_Table_Data_Name_Tips")); - dg.setButtonEnabled(false); - } + } else if (oldName.length() >= PROCEDURE_NAME_INDEX && tableDataPane.updateBean() instanceof MultiResultTableData + && isIncludeUnderline(tempName)) { + nPanel.setShowText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Multi_Result_Table_Data_Name_Tips")); + dg.setButtonEnabled(false); } else if (!BasicTableDataUtils.checkName(tempName)) { dg.setButtonEnabled(false); } else { @@ -646,10 +649,6 @@ public class TableDataTreePane extends BasicTableDataTreePane { } - private void resetAddMenuDef() { - this.addMenuDef.clearShortCuts(); - this.createAddMenuDef(); - } /** * 感觉这里,把一堆Action和Op之类的送到抽象类里去检查,很奇怪,抽象类本身定义的Action只有add和connection @@ -1024,7 +1023,7 @@ public class TableDataTreePane extends BasicTableDataTreePane { @Override public void actionPerformed(ActionEvent e) { - dgEdit(getTableDataInstance().creatTableDataPane(), createDsName(getNamePrefix()), false); + DesignCacheManager.processByCacheTableData(() -> dgEdit(getTableDataInstance().creatTableDataPane(), createDsName(getNamePrefix()), false)); } } @@ -1110,7 +1109,12 @@ public class TableDataTreePane extends BasicTableDataTreePane { } // 可以半选的CheckBoxList CheckBoxListWithPartialSelect tableDataCheckBoxPane = new CheckBoxListWithPartialSelect(selectedNameObjects); - UIScrollPane scrollPane = new UIScrollPane(tableDataCheckBoxPane); + UIScrollPane scrollPane = new UIScrollPane(tableDataCheckBoxPane) { + @Override + public UIScrollBar createVerticalScrollBar() { + return new UIBasicVerticalScrollBar(JScrollBar.VERTICAL); + } + }; UILabel tips = new UILabel(Toolkit.i18nText("Fine-Design_Basic_Select_Source_To_Remove")); BasicPane basicPane = new BasicPane() { @Override @@ -1120,10 +1124,15 @@ public class TableDataTreePane extends BasicTableDataTreePane { }; basicPane.setLayout(new BorderLayout()); basicPane.add(tips, BorderLayout.NORTH); + scrollPane.setBorder(new FineRoundBorder()); basicPane.add(scrollPane, BorderLayout.CENTER); BasicDialog basicDialog = basicPane.showSmallWindow(SwingUtilities.getWindowAncestor(TableDataTreePane.this), new DialogActionAdapter() { @Override public void doOk() { + DesignCacheManager.processByCacheTableData(this::processRemove); + + } + private void processRemove() { List selectedValues = tableDataCheckBoxPane.getSelectedObjects(); // 删除时如果正在搜索,跳回原树 if (TableDataTreeSearchManager.getInstance().isInSearchMode()) { @@ -1137,7 +1146,6 @@ public class TableDataTreePane extends BasicTableDataTreePane { } } } - @Override public void doCancel() { super.doCancel(); @@ -1195,6 +1203,10 @@ public class TableDataTreePane extends BasicTableDataTreePane { @Override public void actionPerformed(ActionEvent e) { + DesignCacheManager.processByCacheTableData(this::doPaste); + } + + private void doPaste() { // 粘贴时如果正在搜索,跳回原树 if (TableDataTreeSearchManager.getInstance().isInSearchMode()) { TableDataTreeSearchManager.getInstance().outOfSearchMode(); diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/TreeTableDataComboBox.java b/designer-base/src/main/java/com/fr/design/data/datapane/TreeTableDataComboBox.java index b0f9a12551..8954d12593 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/TreeTableDataComboBox.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/TreeTableDataComboBox.java @@ -6,15 +6,14 @@ import com.fr.data.impl.Connection; import com.fr.data.impl.RecursionTableData; import com.fr.decision.webservice.bean.dataset.ServerDataSetBean; import com.fr.design.data.DesignTableDataManager; -import com.fr.workspace.server.repository.tabledata.TableDataBeanHelper; +import com.fr.design.data.datapane.preview.ConnectionInfoBeanHelper; +import com.fr.design.data.datapane.preview.TableDataBeanHelper; import com.fr.design.data.tabledata.wrapper.ServerTableDataWrapper; import com.fr.design.data.tabledata.wrapper.TableDataWrapper; import com.fr.design.data.tabledata.wrapper.TemplateTableDataWrapper; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.icombobox.UIComboBoxRenderer; -import com.fr.security.encryption.transmission.TransmissionEncryptionManager; import com.fr.stable.StringUtils; -import com.fr.workspace.server.entity.connection.ConnectionBean; import com.fr.workspace.server.repository.connection.ConnectionRepository; import com.fr.workspace.server.repository.tabledata.TableDataRepository; @@ -71,20 +70,13 @@ public class TreeTableDataComboBox extends UIComboBox { // 全局数据集 List beans = TableDataRepository.getInstance().getAllTableData(); Map map = new HashMap<>(); - final List connectionInfoBeans = ConnectionRepository.getInstance().getAll(); - final Map connectionMap = new HashMap<>(); - for (ConnectionBean bean : connectionInfoBeans) { - connectionMap.put(bean.getName(), bean.getConnection()); - } + final Map connectionMap = ConnectionInfoBeanHelper.createConnectionMap(ConnectionRepository.getInstance().getAll()); try { - TransmissionEncryptionManager.setTransEncryptionLevel(1); for (ServerDataSetBean bean : beans) { map.put(bean.getDatasetName() , TableDataBeanHelper.getTableDataSet(connectionMap, bean.getDatasetType(), bean.getDatasetData())); } } catch (Exception e) { throw new RuntimeException(e); - } finally { - TransmissionEncryptionManager.removeTransEncryptionLevel(); } for (Map.Entry entry : map.entrySet()) { TableData tableData = entry.getValue(); diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/AdvancePane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/AdvancePane.java index a2aadbb030..a9a2c90da9 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/AdvancePane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/AdvancePane.java @@ -53,7 +53,8 @@ public class AdvancePane extends BasicPane { flex(2) ), row( - cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_On_Borrow"), SwingConstants.LEFT)).weight(1), + cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_On_Borrow"), SwingConstants.LEFT)) + .with(it -> it.setToolTipText(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_On_Borrow"))).weight(1), cell(DBCP_TEST_ON_BORROW).weight(1.5), flex(2) ), diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionComboBoxPanel.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionComboBoxPanel.java index 4be579742a..2376872a0f 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionComboBoxPanel.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionComboBoxPanel.java @@ -7,6 +7,7 @@ import com.fr.data.impl.AbstractDatabaseConnection; import com.fr.data.impl.Connection; import com.fr.data.impl.NameDatabaseConnection; import com.fr.design.DesignerEnvManager; +import com.fr.design.data.datapane.preview.ConnectionInfoBeanHelper; import com.fr.design.editlock.ConnectionLockChangeChecker; import com.fr.design.editlock.EditLockUtils; import com.fr.design.gui.ibutton.UIButton; @@ -28,6 +29,7 @@ import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import java.util.List; +import java.util.Map; /** * 选择数据连接的下拉框 @@ -89,13 +91,13 @@ public class ConnectionComboBoxPanel extends ItemEditableComboBoxPanel { if (noAuthConnections == null) { return nameList.iterator(); } - List beans = ConnectionRepository.getInstance().getAll(); - for (ConnectionBean bean : beans) { - String conName = bean.getName(); + final Map connectionMap = ConnectionInfoBeanHelper.createConnectionMap(ConnectionRepository.getInstance().getAll()); + for (Map.Entry connectionEntry : connectionMap.entrySet()) { + String conName = connectionEntry.getKey(); if (noAuthConnections.contains(conName)) { continue; } - filterConnection(bean.getConnection(), conName, nameList); + filterConnection(connectionEntry.getValue(), conName, nameList); } return nameList.iterator(); } diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java index 2a6a43cd0d..48a09ba695 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java @@ -1,9 +1,8 @@ package com.fr.design.data.datapane.connect; -import com.fanruan.config.impl.data.ConnectionConfigProviderFactory; -import com.fanruan.config.impl.data.ConnectionConfigWriterFactory; -import com.fr.config.remote.RemoteConfigEvent; import com.fine.theme.icon.LazyIcon; +import com.fine.theme.utils.FineUIScale; +import com.fr.config.remote.RemoteConfigEvent; import com.fr.data.impl.Connection; import com.fr.data.impl.JDBCDatabaseConnection; import com.fr.data.impl.JNDIDatabaseConnection; @@ -12,10 +11,13 @@ import com.fr.design.ExtraDesignClassManager; import com.fr.design.data.MapCompareUtils; import com.fr.design.data.datapane.preview.ConnectionInfoBeanHelper; import com.fr.design.dialog.BasicDialog; +import com.fr.design.dialog.FineJOptionPane; +import com.fr.design.editlock.EditLockUtils; import com.fr.design.fun.ConnectionProvider; import com.fr.design.gui.controlpane.JListControlPane; import com.fr.design.gui.controlpane.NameObjectCreator; import com.fr.design.gui.controlpane.NameableCreator; +import com.fr.design.gui.controlpane.ShortCut4JControlPane; import com.fr.design.gui.ilist.ListModelElement; import com.fr.design.i18n.Toolkit; import com.fr.event.EventDispatcher; @@ -24,18 +26,18 @@ import com.fr.license.database.DBTypes; import com.fr.license.database.DataBaseTypePointManager; import com.fr.license.exception.DataBaseNotSupportedException; import com.fr.log.FineLoggerFactory; +import com.fr.report.LockItem; import com.fr.stable.ArrayUtils; import com.fr.stable.Nameable; import com.fr.stable.StringUtils; import com.fr.stable.core.PropertyChangeAdapter; import com.fr.workspace.WorkContext; -import com.fr.workspace.server.database.DataBaseTypeOperator; -import com.fr.workspace.server.entity.connection.ConnectionBean; +import com.fr.workspace.server.repository.WorkplaceConstants; import com.fr.workspace.server.repository.connection.ConnectionRepository; import org.jetbrains.annotations.NotNull; -import javax.swing.SwingWorker; -import java.awt.Window; +import javax.swing.*; +import java.awt.*; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; @@ -80,7 +82,7 @@ public class ConnectionListPane extends JListControlPane implements ConnectionSh SwingWorker, Void> getSupportedTypesWorker = new SwingWorker, Void>() { @Override protected List doInBackground() { - return WorkContext.getCurrent().get(DataBaseTypeOperator.class).getSupportedDatabaseTypes(); + return WorkplaceConstants.getSupportedDatabaseTypes(); } @Override @@ -95,6 +97,21 @@ public class ConnectionListPane extends JListControlPane implements ConnectionSh getSupportedTypesWorker.execute(); } + @Override + protected ShortCut4JControlPane[] createShortcuts() { + return new ShortCut4JControlPane[]{ + shortCutFactory.addItemShortCut(), + shortCutFactory.removeItemShortCut(), + shortCutFactory.copyItemShortCut(), + shortCutFactory.sortItemShortCut(), + }; + } + + @Override + protected int getLeftPreferredSize() { + return FineUIScale.scale(180); + } + @Override public String getEmptyNameTip() { return Toolkit.i18nText("Fine-Design_Basic_Connection_Empty_Name"); @@ -160,7 +177,7 @@ public class ConnectionListPane extends JListControlPane implements ConnectionSh JNDIDatabaseConnection.class, DatabaseConnectionPane.JNDI.class ); NameableCreator[] creators; - if (WorkContext.getCurrent().get(DataBaseTypeOperator.class).limitDatabaseType()) { + if (WorkplaceConstants.isLimitDatabaseType()) { // 不支持JNDI,屏蔽接口 creators = new NameableCreator[]{jdbc}; } else { @@ -190,11 +207,11 @@ public class ConnectionListPane extends JListControlPane implements ConnectionSh public void populate(Map connectionMap) { List nameObjectList = new ArrayList(); populatedConnectionsSnapshot.clear(); - List beans = ConnectionRepository.getInstance().getAll(); - for (com.fr.workspace.server.entity.connection.ConnectionBean entry : beans) { - nameObjectList.add(new NameObject(entry.getName(), entry.getConnection())); + final Map map = ConnectionInfoBeanHelper.createConnectionMap(ConnectionRepository.getInstance().getAll()); + for (Map.Entry entry : map.entrySet()) { + nameObjectList.add(new NameObject(entry.getKey(), entry.getValue())); try { - populatedConnectionsSnapshot.put(entry.getName(), (Connection) entry.getConnection().clone()); + populatedConnectionsSnapshot.put(entry.getKey(), (Connection) entry.getValue().clone()); } catch (Exception e) { FineLoggerFactory.getLogger().error(e.getMessage(), e); } @@ -222,12 +239,22 @@ public class ConnectionListPane extends JListControlPane implements ConnectionSh removedConnNames.add(s); break; case ADDED: - addConnections.add(ConnectionInfoBeanHelper.createConnectionInfoBean(s, connection, true)); - validConnection.add(connection); + ConnectionInfoBean add = ConnectionInfoBeanHelper.createConnectionInfoBean(s, connection, true); + if (StringUtils.isNotEmpty(add.getConnectionData())) { + addConnections.add(add); + validConnection.add(connection); + } else { + FineLoggerFactory.getLogger().error("Unable to find the corresponding processor : {}", connection.getClass()); + } break; case UPDATED: - updateConnection.add(ConnectionInfoBeanHelper.createConnectionInfoBean(s, connection, true)); - validConnection.add(connection); + ConnectionInfoBean update = ConnectionInfoBeanHelper.createConnectionInfoBean(s, connection, true); + if (StringUtils.isNotEmpty(update.getConnectionData())) { + updateConnection.add(update); + validConnection.add(connection); + } else { + FineLoggerFactory.getLogger().error("Unable to find the corresponding processor : {}", connection.getClass()); + } break; default: break; @@ -251,7 +278,13 @@ public class ConnectionListPane extends JListControlPane implements ConnectionSh * @return */ private boolean needUpdate0(Connection origin, Connection connection) { - return !connection.equals(origin) || !isEmbedConnection(connection); + // 先不考虑插件 + try { + return !connection.equals(origin); + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + return false; + } } /** @@ -333,41 +366,24 @@ public class ConnectionListPane extends JListControlPane implements ConnectionSh } } - private boolean saveByOldWay(List removedConnNames, List addedOrUpdatedConnections) { - final int remaining = ConnectionConfigProviderFactory.getConfigProvider().getRemainingCon(removedConnNames.size(), addedOrUpdatedConnections.size()); + public static void showDialog(Window parent) { try { - removedConnNames.forEach(n -> ConnectionConfigWriterFactory.getConfigWriter().removeConnection(n)); - int innerRemaining = remaining; - for (ConnectionBean cb : addedOrUpdatedConnections) { - if (innerRemaining > 0) { - ConnectionConfigWriterFactory.getConfigWriter().addConnectionWithoutCheck(cb.getName(), cb.getConnection()); - innerRemaining--; - } else { - break; + final Map connectionMap = ConnectionInfoBeanHelper.createConnectionMap(ConnectionRepository.getInstance().getAll()); + final ConnectionManagerPane connectionManagerPane = new ConnectionManagerPane() { + @Override + public void complete() { + populate(connectionMap); } - } - return true; + }; + final BasicDialog connectionListDialog = connectionManagerPane.showLargeWindow(parent, null); + connectionListDialog.addDialogActionListener(new ConnectionListDialogActionAdapter(connectionManagerPane, connectionListDialog, connectionMap)); + connectionListDialog.setVisible(true); } catch (Exception e) { FineLoggerFactory.getLogger().error(e.getMessage(), e); + FineJOptionPane.showMessageDialog(null, Toolkit.i18nText("Fine-Design_Remote_Data_Error"), + Toolkit.i18nText("Fine-Design_Basic_Error"), JOptionPane.ERROR_MESSAGE); + EditLockUtils.unlock(LockItem.CONNECTION); } - return false; - } - - public static void showDialog(Window parent) { - List beans = ConnectionRepository.getInstance().getAll(); - Map connectionMap = new HashMap<>(); - for (ConnectionBean bean : beans) { - connectionMap.put(bean.getName(), bean.getConnection()); - } - final ConnectionManagerPane connectionManagerPane = new ConnectionManagerPane() { - @Override - public void complete() { - populate(connectionMap); - } - }; - final BasicDialog connectionListDialog = connectionManagerPane.showLargeWindow(parent, null); - connectionListDialog.addDialogActionListener(new ConnectionListDialogActionAdapter(connectionManagerPane, connectionListDialog, connectionMap)); - connectionListDialog.setVisible(true); } @Override diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionTableProcedurePane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionTableProcedurePane.java index 4d8540fe95..7e13e49175 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionTableProcedurePane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionTableProcedurePane.java @@ -1,13 +1,13 @@ package com.fr.design.data.datapane.connect; import com.fine.theme.icon.LazyIcon; -import com.fine.theme.light.ui.FineRoundBorder; import com.fine.theme.utils.FineUIScale; import com.formdev.flatlaf.ui.FlatUIUtils; import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.data.core.db.TableProcedure; import com.fr.data.impl.AbstractDatabaseConnection; import com.fr.data.impl.Connection; +import com.fr.design.border.FineBorderFactory; import com.fr.design.border.UIRoundedBorder; import com.fr.design.constants.UIConstants; import com.fr.design.data.tabledata.tabledatapane.loading.SwitchableTableDataPane; @@ -22,7 +22,6 @@ import com.fr.design.layout.FRGUIPaneFactory; import com.fr.general.GeneralContext; import com.fr.stable.ArrayUtils; -import javax.swing.BorderFactory; import javax.swing.DefaultComboBoxModel; import javax.swing.JPanel; import javax.swing.ToolTipManager; @@ -171,11 +170,13 @@ public class ConnectionTableProcedurePane extends BasicPane { searchField = new UITextField(); searchField.setPlaceholder(Toolkit.i18nText("Fine-Design_Basic_Table_Search")); searchField.getDocument().addDocumentListener(searchListener); + searchField.setToolTipText(Toolkit.i18nText("Fine-Design_Basic_Table_Search")); // 搜索图标 UILabel searchLabel = new UILabel(new LazyIcon("search")); searchLabel.setBorder(new ScaledEmptyBorder(0, 3, 0, 3)); searchField.setBorder(null); - panel.add(row(cell(searchLabel), cell(searchField).weight(1)).with(it -> it.setBorder(new FineRoundBorder())).getComponent()); + panel.add(row(cell(searchLabel), cell(searchField).weight(1)).with( + it -> it.setBorder(FineBorderFactory.createWrappedRoundBorder())).getComponent()); panel.setBackground(FlatUIUtils.getUIColor("background.normal", Color.WHITE)); return panel; } diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/DBCPAttrPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/DBCPAttrPane.java index 5d54d907ee..d114f64544 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/DBCPAttrPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/DBCPAttrPane.java @@ -1,8 +1,8 @@ package com.fr.design.data.datapane.connect; import com.fine.swing.ui.layout.Layouts; +import com.fine.theme.utils.FineUIStyle; import com.fine.theme.utils.FineUIUtils; -import com.formdev.flatlaf.ui.FlatUIUtils; import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.data.core.db.dialect.DialectFactory; import com.fr.data.impl.JDBCDatabaseConnection; @@ -15,13 +15,12 @@ import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.i18n.Toolkit; +import com.fr.design.mainframe.theme.edit.ui.LabelUtils; import com.fr.general.ComparatorUtils; import com.fr.stable.StringUtils; import javax.swing.JPanel; -import javax.swing.JTextField; import java.awt.BorderLayout; -import java.awt.Color; import java.awt.Window; import java.awt.event.InputMethodEvent; import java.awt.event.InputMethodListener; @@ -78,35 +77,14 @@ public class DBCPAttrPane extends BasicPane { // JPanel northFlowPane northFlowPane = Layouts.column(LayoutConstants.VERTICAL_GAP, cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_ConnectionPool_Attr"))).with(FineUIUtils::wrapBoldLabelWithUnderline), - row( - cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Initial_Size"))).weight(1), - cell(DBCP_INITIAL_SIZE).weight(1), flex(1.2) - ), - row( - cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Min_Idle"))).weight(1), - cell(DBCP_MIN_IDLE).weight(1), flex(1.2) - ), - row( - cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_On_Return"))).weight(1), - cell(DBCP_TESTONRETURN).weight(1), flex(1.2) - ), - row( - cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_While_Idle"))).weight(1), - cell(DBCP_TESTWHILEIDLE).weight(1), flex(1.2) - ), - row( - cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Connection_Pool_Evictionruns_millis"))).weight(1), - cell(DBCP_TIMEBETWEENEVICTIONRUNSMILLS).weight(1), flex(1.2) - ), - row( - cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Num_Test_Per_Evction_Run"))).weight(1), - cell(DBCP_NUMTESTSPEREVICTIONRUN).weight(1), flex(1.2) - ), - row( - cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Connection_Pool_Mix_Evictable_Idle_Time_Millis"))).weight(1), - cell(DBCP_MINEVICTABLEIDLETIMEMILLIS).weight(1), flex(1.2) - ), - cell(new UILabel(Toolkit.i18nText("Fine-Design_Dbcp_Warning"))).with(it -> it.setForeground(FlatUIUtils.getUIColor("Label.strongHintColor", Color.RED))) + row(cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Initial_Size"))).weight(1), cell(DBCP_INITIAL_SIZE).weight(1)), + row(cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Min_Idle"))).weight(1), cell(DBCP_MIN_IDLE).weight(1)), + row(cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_On_Return"))).weight(1), cell(DBCP_TESTONRETURN).weight(1)), + row(cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_While_Idle"))).weight(1), cell(DBCP_TESTWHILEIDLE).weight(1)), + row(cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Connection_Pool_Evictionruns_millis"))).weight(1), cell(DBCP_TIMEBETWEENEVICTIONRUNSMILLS).weight(1)), + row(cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Dbcp_Num_Test_Per_Evction_Run"))).weight(1), cell(DBCP_NUMTESTSPEREVICTIONRUN).weight(1)), + row(cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Connection_Pool_Mix_Evictable_Idle_Time_Millis"))).weight(1), cell(DBCP_MINEVICTABLEIDLETIMEMILLIS).weight(1)), + cell(LabelUtils.createAutoWrapLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Dbcp_Warning"), FineUIUtils.getUIColor("Label.warningColor", "Label.warningColor"))) ).getComponent(); defaultPane.add(northFlowPane); this.add(defaultPane); diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/DatabaseConnectionPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/DatabaseConnectionPane.java index abc1decc5f..60a3df8463 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/DatabaseConnectionPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/DatabaseConnectionPane.java @@ -5,7 +5,6 @@ package com.fr.design.data.datapane.connect; import com.fine.swing.ui.layout.Layouts; import com.fine.theme.icon.LazyIcon; -import com.fine.theme.light.ui.FineRoundBorder; import com.fine.theme.utils.FineUIScale; import com.fine.theme.utils.FineUIStyle; import com.formdev.flatlaf.util.ScaledEmptyBorder; @@ -13,7 +12,6 @@ import com.fr.data.driver.util.JarFileParseUtil; import com.fr.data.impl.Connection; import com.fr.data.impl.JDBCDatabaseConnection; import com.fr.data.impl.JNDIDatabaseConnection; -import com.fr.data.operator.DataOperatorProvider; import com.fr.data.security.ssl.impl.NormalSsl; import com.fr.data.solution.ExceptionSolutionSelector; import com.fr.data.solution.entity.DriverPage; @@ -31,14 +29,12 @@ import com.fr.design.i18n.DesignSizeI18nManager; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.log.FineLoggerFactory; -import com.fr.rpc.ExceptionHandler; -import com.fr.rpc.RPCInvokerExceptionInfo; import com.fr.stable.ArrayUtils; import com.fr.stable.EncodeConstants; import com.fr.stable.StringUtils; import com.fr.workspace.WorkContext; +import com.fr.workspace.engine.exception.DriverUnExistException; import org.jetbrains.annotations.NotNull; -import com.fr.workspace.server.entity.connection.ConnectionBean; import com.fr.workspace.server.repository.connection.ConnectionRepository; import javax.swing.JDialog; @@ -479,6 +475,9 @@ public abstract class DatabaseConnectionPane jdbcMap = new HashMap(); + // 用于映射connection的database字段 + private static Map dbTypeMap = new HashMap<>(); private JPanel linkPanel; static { + dbTypeMap.put(ORACLE, DefaultDatabaseType.ORACLE.getType()); + dbTypeMap.put(DB2, DefaultDatabaseType.IBM_DB2.getType()); + dbTypeMap.put(SQL_SERVER, DefaultDatabaseType.MICROSOFT_SQL_SERVER.getType()); + dbTypeMap.put(MYSQL, DefaultDatabaseType.MYSQL.getType()); + dbTypeMap.put(SYBASE, DefaultDatabaseType.SAP_ASE.getType()); + dbTypeMap.put(ACCESS, DefaultDatabaseType.OTHER.getType()); + dbTypeMap.put(DERBY, DefaultDatabaseType.DERBY.getType()); + dbTypeMap.put(POSTGRE, DefaultDatabaseType.POSTGRESQL.getType()); + dbTypeMap.put(SQLITE, DefaultDatabaseType.SQLITE.getType()); + dbTypeMap.put(INCEPTOR, DefaultDatabaseType.TRANSWARP_INCEPTOR.getType()); + jdbcMap.put(OTHER_DB, new DriverURLName[]{new DriverURLName("sun.jdbc.odbc.JdbcOdbcDriver", "jdbc:odbc:"), new DriverURLName("org.hsqldb.jdbcDriver", "jdbc:hsqldb:file:[PATH_TO_DB_FILES]"), new DriverURLName("com.inet.tds.TdsDriver", "jdbc:inetdae7:localhost:1433/"), new DriverURLName("COM.cloudscape.JDBCDriver", "jdbc:cloudscape:/cloudscape/"), @@ -104,7 +130,7 @@ public class JDBCDefPane extends JPanel { private ReactiveCardPane centerPanel; private ReactiveCardPane driverSelectRow; // 请不要改动dbtype,只应该最后添加 - private final String[] dbtype = {"Oracle", "DB2", "SQL Server", "MySQL", "Sybase", "Access", "Derby", "Postgre", "SQLite", "Inceptor", OTHER_DB}; + private final String[] dbtype = {ORACLE, DB2, SQL_SERVER, MYSQL, SYBASE, ACCESS, DERBY, POSTGRE, SQLITE, INCEPTOR, OTHER_DB}; private JDBCDatabaseConnection jdbcDatabase; @@ -147,13 +173,15 @@ public class JDBCDefPane extends JPanel { urlTextField.setText(dus[i].getURL()); } } - // 更改数据库类型后 数据库名称置空和之前逻辑保持一致 - if (needRefresh) { - jdbcDatabase.setDatabase(StringUtils.EMPTY); + // 更改数据库类型后更新数据库名称 + if (needRefresh || StringUtils.isEmpty(jdbcDatabase.getDatabase())) { + jdbcDatabase.setDatabase(dbTypeMap.getOrDefault(GeneralUtils.objectToString(dbtypeComboBox.getSelectedItem()), DefaultDatabaseType.OTHER.getType())); } + changePane(dbtypeComboBox.getSelectedItem()); JDBCConnectionDef.getInstance().setConnection((String) dbtypeComboBox.getSelectedItem(), jdbcDatabase); DatabaseConnectionPane.JDBC.getAdvancedAttrPane().populate(jdbcDatabase); + needRefresh = true; } }; private HashBiMap nameAndRepresent; @@ -220,10 +248,10 @@ public class JDBCDefPane extends JPanel { cell(driverComboBox).weight(3), flex(2) ).getComponent()) .addSupplier("odbc", () -> row( - cell(driverComboBox).weight(3), flex(0.2), cell(odbcTipsLink).weight(1.8) + cell(driverComboBox).weight(3), flex(0.2), row(cell(odbcTipsLink)).weight(1.8) ).getComponent()) .addSupplier("define", () -> row( - cell(driverLoaderBox).weight(3), cell(driverManageLabel).weight(2) + cell(driverLoaderBox).weight(3), flex(0.2), row(cell(driverManageLabel)).weight(1.8) ).getComponent()); changeDriverRow(); @@ -331,7 +359,14 @@ public class JDBCDefPane extends JPanel { } private void initMap() { - Map driverLoaders = DriverLoaderConfig.getInstance().getDriverLoaders(); + Map driverLoaders = null; + try { + driverLoaders = ConnectionRepository.getInstance().getDriverLoaders(); + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + driverLoaders = new HashMap<>(); + } + driverLoaders.entrySet().removeIf(entry -> StringUtils.isEmpty(entry.getValue().getDriverClass())); nameAndRepresent = getDriverLoaderAndRepresent(driverLoaders); } @@ -380,6 +415,7 @@ public class JDBCDefPane extends JPanel { DriverURLName[] dus = entry.getValue(); for (int i = 0, len = dus.length; i < len; i++) { if (ComparatorUtils.equals(dus[i].getDriver(), jdbcDatabase.getDriver())) { + needRefresh = false; this.dbtypeComboBox.setSelectedItem(entry.getKey()); out = true; break; @@ -420,7 +456,6 @@ public class JDBCDefPane extends JPanel { } else { this.charSetComboBox.setSelectedItem(jdbcDatabase.getOriginalCharsetName()); } - needRefresh = false; } public JDBCDatabaseConnection update() { diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/LocalConnectionSource.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/LocalConnectionSource.java index 25e9da20d6..4b91320829 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/LocalConnectionSource.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/LocalConnectionSource.java @@ -1,14 +1,21 @@ package com.fr.design.data.datapane.connect; +import com.fanruan.config.impl.data.ConnectionConfigProviderFactory; import com.fr.data.driver.DriverClassNotFoundException; import com.fr.data.impl.Connection; import com.fr.decision.webservice.bean.datasource.ConnectionInfoBean; +import com.fr.decision.webservice.exception.general.DriverNotFoundException; import com.fr.decision.webservice.v10.datasource.connection.processor.impl.ConnectionProcessorFactory; +import com.fr.design.data.datapane.preview.ConnectionInfoBeanHelper; import com.fr.design.i18n.Toolkit; import com.fr.log.FineLoggerFactory; import com.fr.security.encryption.transmission.TransmissionEncryptionManager; +import com.fr.workspace.engine.exception.DriverUnExistException; import com.fr.workspace.server.repository.connection.BaseConnectionSource; import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; /** * 本地Connection资源操作 @@ -20,24 +27,50 @@ import java.sql.SQLException; public class LocalConnectionSource extends BaseConnectionSource { @Override - public void testConnection(ConnectionInfoBean database) throws Exception { + public ConnectionInfoBean[] getAll(){ + Map map = ConnectionConfigProviderFactory.getConfigProvider().getConnections(); + List beans = new ArrayList<>(); + for (String name : map.keySet()) { + try { + beans.add(ConnectionInfoBeanHelper.createConnectionInfoBean(name, map.get(name))); + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + } + } + return beans.toArray(new ConnectionInfoBean[0]); + } + + @Override + public ConnectionInfoBean getByName(String name) { + try { + return ConnectionInfoBeanHelper.createConnectionInfoBean(name, ConnectionConfigProviderFactory.getConfigProvider().getConnection(name)); + } catch (Exception e) { + throw new RuntimeException(e); + } + } + + @Override + public String[] testConnection(ConnectionInfoBean database) throws Exception { try { - // 暂时这么处理,后续最好拉到外层包装一下 - TransmissionEncryptionManager.setTransEncryptionLevel(1); - ConnectionProcessorFactory.testConnectionWithSchemaReturn(database); - } finally { - TransmissionEncryptionManager.removeTransEncryptionLevel(); + return ConnectionProcessorFactory.testConnectionWithSchemaReturn(database); + } catch (DriverNotFoundException e) { + throw new DriverUnExistException(); } } @Override public void add(ConnectionInfoBean bean) throws Exception { try { - TransmissionEncryptionManager.setTransEncryptionLevel(1); Connection connection = ConnectionProcessorFactory.createConnection(bean); validate(bean.getConnectionName(), connection); ConnectionProcessorFactory.addConnection(bean); - } finally { - TransmissionEncryptionManager.removeTransEncryptionLevel(); + } catch (DriverNotFoundException e) { + throw new DriverUnExistException(); + } catch (RuntimeException e) { + if (e.getCause() instanceof DriverNotFoundException) { + throw new DriverUnExistException(); + } else { + throw e; + } } } @@ -50,12 +83,17 @@ public class LocalConnectionSource extends BaseConnectionSource { @Override public void update(ConnectionInfoBean bean) throws Exception { try { - TransmissionEncryptionManager.setTransEncryptionLevel(1); Connection connection = ConnectionProcessorFactory.createConnection(bean); validate(bean.getConnectionName(), connection); ConnectionProcessorFactory.updateConnection(bean.getConnectionName(), bean); - } finally { - TransmissionEncryptionManager.removeTransEncryptionLevel(); + } catch (DriverNotFoundException e) { + throw new DriverUnExistException(); + } catch (RuntimeException e) { + if (e.getCause() instanceof DriverNotFoundException) { + throw new DriverUnExistException(); + } else { + throw e; + } } } diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/SshPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/SshPane.java index c404078263..4c672479ae 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/SshPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/SshPane.java @@ -116,7 +116,7 @@ public class SshPane extends BasicPane { coreCardPane = ReactiveCardPane.create() .addSupplier(NOT_USE_SSH, () -> cell(usingSsh).getComponent()) .addSupplier(USE_SSH, () -> Layouts.column(LayoutConstants.VERTICAL_GAP, - cell(usingSsh), + row(cell(usingSsh)), row( cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Host"))).weight(1), cell(ip).weight(5), diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/SslPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/SslPane.java index 10cd4e5e2f..62e6666acd 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/SslPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/SslPane.java @@ -146,7 +146,7 @@ public class SslPane extends BasicPane { @Override public void actionPerformed(ActionEvent e) { - FILEChooserPane fileChooser = FILEChooserPane.getInstanceWithDesignatePath(SslUtils.PREFIX, new ChooseFileFilter(true), SslUtils.CERTIFICATES); + FILEChooserPane fileChooser = FILEChooserPane.getFileCAChoosePane(new ChooseFileFilter(true)); int type = fileChooser.showOpenDialog(SslPane.this, StringUtils.EMPTY); if (type == FILEChooserPane.OK_OPTION) { final FILE file = fileChooser.getSelectedFILE(); diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/management/search/pane/FineSearchPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/management/search/pane/FineSearchPane.java index ccfd7be6be..e1dadc6131 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/management/search/pane/FineSearchPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/management/search/pane/FineSearchPane.java @@ -159,7 +159,6 @@ public class FineSearchPane extends JPanel implements HoverAware { @Override public void requestFocus() { - super.requestFocus(); searchTextField.requestFocus(); } } diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/preview/ConnectionInfoBeanHelper.java b/designer-base/src/main/java/com/fr/design/data/datapane/preview/ConnectionInfoBeanHelper.java index b2f8aad61b..2fb5832c57 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/preview/ConnectionInfoBeanHelper.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/preview/ConnectionInfoBeanHelper.java @@ -3,6 +3,7 @@ package com.fr.design.data.datapane.preview; import com.fr.data.auth.AuthenticationType; import com.fr.data.auth.kerberos.KerberosAuthentication; import com.fr.data.auth.kerberos.KerberosUtils; +import com.fr.data.core.db.dialect.DialectFactory; import com.fr.data.impl.Connection; import com.fr.data.impl.JDBCDatabaseConnection; import com.fr.data.impl.NameDatabaseConnection; @@ -10,7 +11,9 @@ import com.fr.data.pool.DBCPConnectionPoolAttr; import com.fr.data.security.ssh.BaseSsh; import com.fr.data.security.ssh.SshType; import com.fr.data.security.ssh.impl.KeyVerifySsh; +import com.fr.data.security.ssh.impl.NormalSsh; import com.fr.data.security.ssl.BaseSsl; +import com.fr.data.security.ssl.Ssl; import com.fr.data.security.ssl.SslType; import com.fr.data.security.ssl.impl.NormalSsl; import com.fr.decision.privilege.TransmissionTool; @@ -19,11 +22,21 @@ import com.fr.decision.webservice.bean.datasource.JDBCConnectionBean; import com.fr.decision.webservice.utils.DecisionServiceConstants; import com.fr.decision.webservice.v10.datasource.connection.processor.impl.ConnectionProcessorFactory; import com.fr.decision.webservice.v10.datasource.connection.processor.impl.JDBCConnectionProcessor; +import com.fr.log.FineLoggerFactory; +import com.fr.module.tool.ActivatorToolBox; import com.fr.security.encryption.transmission.TransmissionEncryptionManager; +import com.fr.stable.Constants; import com.fr.stable.StringUtils; +import com.fr.third.fasterxml.jackson.core.JsonProcessingException; import com.fr.third.fasterxml.jackson.databind.ObjectMapper; +import com.fr.third.springframework.beans.BeanUtils; import com.fr.workspace.server.repository.WorkplaceConstants; import com.fr.workspace.server.repository.connection.ConnectionRepository; +import com.fr.workspace.server.repository.tabledata.DataEncryptionHelper; + +import java.util.HashMap; +import java.util.Map; +import java.util.Optional; /** * 数据连接传输工具类 @@ -34,6 +47,55 @@ import com.fr.workspace.server.repository.connection.ConnectionRepository; */ public class ConnectionInfoBeanHelper { private static ObjectMapper objectMapper = new ObjectMapper(); + private static final Map FETCH_SIZE_MAP = ActivatorToolBox.sandbox(new HashMap()); + private static final int ORACLE_DEFAULT_FETCH_SIZE = 128; + private static final int DB2_DEFAULT_FETCH_SIZE = 50; + private static final int POSTGRE_DEFAULT_FETCH_SIZE = 10000; + + static { + FETCH_SIZE_MAP.put("oracle", ORACLE_DEFAULT_FETCH_SIZE); + FETCH_SIZE_MAP.put("ibm-db2", DB2_DEFAULT_FETCH_SIZE); + FETCH_SIZE_MAP.put("postgresql", POSTGRE_DEFAULT_FETCH_SIZE); + } + + + /** + * 获取连接Map + */ + public static Map createConnectionMap(ConnectionInfoBean[] beans) { + Map ans = new HashMap<>(); + for (ConnectionInfoBean infoBean : beans) { + try { + if (JDBCConnectionProcessor.KEY.acceptConnectionTypes().contains(infoBean.getConnectionType())) { + ans.put(infoBean.getConnectionName(), createJDBCConnection(infoBean)); + } else { + ans.put(infoBean.getConnectionName(), ConnectionProcessorFactory.createConnection(infoBean, true)); + } + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + } + } + return ans; + } + + /** + * 根据bean创建连接 + */ + public static Connection createConnection(ConnectionInfoBean infoBean) { + Connection connection = null; + try { + if (JDBCConnectionProcessor.KEY.acceptConnectionTypes().contains(infoBean.getConnectionType())) { + connection = createJDBCConnection(infoBean); + } else { + connection = ConnectionProcessorFactory.createConnection(infoBean, true); + } + connection.setConnectionName(infoBean.getConnectionName()); + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + return connection; + } + return connection; + } /** * 创建数据连接Bean,可自定义是否携带密码 @@ -41,7 +103,7 @@ public class ConnectionInfoBeanHelper { public static ConnectionInfoBean createConnectionInfoBean(String name, Connection connection, boolean withPassword) throws Exception { if (connection instanceof NameDatabaseConnection) { name = ((NameDatabaseConnection) connection).getName(); - connection = ConnectionRepository.getInstance().getByName(name).getConnection(); + connection = createConnection(ConnectionRepository.getInstance().getByName(name)); } if (JDBCConnectionProcessor.KEY.acceptConnections().contains(connection.getClass())) { ConnectionInfoBean bean = new ConnectionInfoBean(); @@ -98,7 +160,7 @@ public class ConnectionInfoBeanHelper { .user(jdbcConnection.getUser()) .driver(jdbcConnection.getDriver()) // 关键中的关键,由设计器发出的请求如果要携带密码,不能传明文,必须必须必须传加密后的密码 - .password(withPassword ? encrypt(jdbcConnection.getPassword()) : DecisionServiceConstants.DEFAULT_PASSWORD) + .password(withPassword ? DataEncryptionHelper.encrypt(jdbcConnection.getPassword()) : DecisionServiceConstants.DEFAULT_PASSWORD) .schema(jdbcConnection.getSchema()) .url(jdbcConnection.getURL()) .creator(jdbcConnection.getCreator()) @@ -129,12 +191,101 @@ public class ConnectionInfoBeanHelper { .verifyCa(jdbcConnection.getSsl().getSslType() == SslType.NORMAL && ((NormalSsl) jdbcConnection.getSsl()).isVerifyCa()); } - private static String encrypt(String password) { - // 如果是空密码或者默认密码,就返回默认的星号回去 - if (StringUtils.isEmpty(password) || StringUtils.equals(password, DecisionServiceConstants.DEFAULT_PASSWORD)) { - return DecisionServiceConstants.DEFAULT_PASSWORD; + + private static Connection createJDBCConnection(ConnectionInfoBean connectionInfoBean) throws Exception { + String name = connectionInfoBean.getConnectionName(); + if (StringUtils.isNotEmpty(connectionInfoBean.getConnectionId())) { + name = connectionInfoBean.getConnectionId(); + } + JDBCDatabaseConnection connection = new JDBCDatabaseConnection(); + JDBCConnectionBean bean = objectMapper.readValue(connectionInfoBean.getConnectionData(), JDBCConnectionBean.class); + if (StringUtils.isNotEmpty(name)) { + bean.setConnectionName(name); + } + DBCPConnectionPoolAttr connectionPoolAttr = new DBCPConnectionPoolAttr(); + BeanUtils.copyProperties(bean.getConnectionPoolAttr(), connectionPoolAttr); + connectionPoolAttr.setValidationQuery(DataEncryptionHelper.decrypt(connectionPoolAttr.getValidationQuery())); + connectionPoolAttr.setMinEvictableIdleTimeMillis(bean.getConnectionPoolAttr().getMinEvictableIdleTimeMillis() * Constants.MILLS_PER_SECOND); + connectionPoolAttr.setMaxEvictableIdleTimeMillis((long) bean.getConnectionPoolAttr().getMaxEvictableIdleTimeMillis() * Constants.MILLS_PER_SECOND); + connection.setDatabase(bean.getDatabase()); + connection.setSchema(bean.getSchema()); + connection.setDriver(bean.getDriver()); + connection.setURL(bean.getUrl()); + connection.setOriginalCharsetName(StringUtils.isEmpty(bean.getOriginalCharsetName()) ? null : bean.getOriginalCharsetName()); + connection.setNewCharsetName(StringUtils.isEmpty(bean.getNewCharsetName()) ? null : bean.getNewCharsetName()); + connection.setCreator(bean.getCreator()); + connection.setDriverSource(bean.getDriverSource()); + connection.setDbcpAttr(connectionPoolAttr); + if (StringUtils.isNotEmpty(bean.getAuthType())) { + connection.setAuthentication(new KerberosAuthentication(bean.getPrincipal(), bean.getKeyPath(), bean.isUseJaas())); } - return TransmissionEncryptionManager.getInstance().getEncryption(WorkplaceConstants.getEncryptionMode()).encrypt(password, WorkplaceConstants.getEncryptionKey()); + connection.setUser(bean.getUser()); + TransmissionEncryptionManager.getInstance().setCurrentEncryptionMode(WorkplaceConstants.getDecryptionMode()); + connection.setPassword(DataEncryptionHelper.decrypt(bean.getPassword())); + connection.setProperties(bean.getProperties()); + + setFetchSize(bean, connection); + + if (bean.getIdentity() != null) { + connection.setIdentity(bean.getIdentity()); + } + BaseSsh baseSsh; + String sshType = bean.getSshType(); + if (SshType.KEY.toString().equals(sshType)) { + baseSsh = new KeyVerifySsh(); + ((KeyVerifySsh) baseSsh).setPrivateKeyPath(bean.getSshPrivateKeyPath()); + } else { + baseSsh = new NormalSsh(); + } + baseSsh.setIp(bean.getSshIp()); + baseSsh.setUsingSsh(bean.isUsingSsh()); + baseSsh.setPort(bean.getSshPort()); + baseSsh.setUser(bean.getSshUser()); + baseSsh.setRedirectIp(bean.getRedirectIp()); + baseSsh.setRedirectPort(bean.getRedirectPort()); + baseSsh.setSecret(DataEncryptionHelper.decrypt(bean.getSshSecret())); + baseSsh.setKeepAlive(bean.getSshKeepAlive()); + baseSsh.setTimeOut(bean.getSshTimeOut()); + connection.setSsh(baseSsh); + connection.setSsl(createSsl(bean)); + return connection; + } + + private static Ssl createSsl(JDBCConnectionBean bean) { + //目前只有NormalSsl + BaseSsl baseSsl = new NormalSsl(); + if (SslType.NORMAL.toString().equals(bean.getSslType())) { + ((NormalSsl) baseSsl).setVerifyCa(bean.isVerifyCa()); + ((NormalSsl) baseSsl).setCipher(bean.getSslCipher()); + } + baseSsl.setUsingSsl(bean.isUsingSsl()); + baseSsl.setClientCertificate(bean.getSslClientCertificate()); + baseSsl.setClientPrivateKey(bean.getSslClientPrivateKey()); + baseSsl.setCaCertificate(bean.getCaCertificate()); + return baseSsl; } + /** + * 前端客户设置了一个fetchSize: + * 1. 如果是合法值(>0),就使用 + * 2. 如果是非法值(<=0): + * 2.1 如果我们对这种数据库有默认的fetchSize,就用默认的 + * 2.2 如果没有默认值,就不进行任何设置 + * @param bean bean + * @param connection connection + */ + private static void setFetchSize(JDBCConnectionBean bean, Connection connection) { + + int connectionBeanFetchSize = bean.getFetchSize(); + String connectionBeanDatabaseName = bean.getDatabase(); + if (DialectFactory.isValidFetchSize(connectionBeanFetchSize)) { + connection.setFetchSize(connectionBeanFetchSize); + } else if (FETCH_SIZE_MAP.containsKey(connectionBeanDatabaseName)) { + Optional.ofNullable(FETCH_SIZE_MAP.get(connectionBeanDatabaseName)).ifPresent(connection::setFetchSize); + } + FineLoggerFactory.getLogger().info("[Connection] fetchSize set to {} for connection {}", connection.getFetchSize(), bean.getConnectionName()); + + } + + } diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/preview/PreviewTablePane.java b/designer-base/src/main/java/com/fr/design/data/datapane/preview/PreviewTablePane.java index ded29560fe..6b6d887ef7 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/preview/PreviewTablePane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/preview/PreviewTablePane.java @@ -26,7 +26,7 @@ import com.fr.design.dialog.BasicPane; import com.fr.design.dialog.DialogActionAdapter; import com.fr.design.dialog.FineJOptionPane; import com.fr.design.file.HistoryTemplateListCache; -import com.fr.design.gui.frpane.UITabbedPane; +import com.fr.design.gui.frpane.FineTabbedPane; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.icontainer.UITableScrollPane; import com.fr.design.gui.ilable.UILabel; @@ -34,6 +34,7 @@ import com.fr.design.gui.iprogressbar.AutoProgressBar; import com.fr.design.gui.itable.SortableJTable; import com.fr.design.gui.itable.TableSorter; import com.fr.design.gui.itextfield.UINumberField; +import com.fr.design.i18n.DesignSizeI18nManager; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.DesignerContext; @@ -44,7 +45,6 @@ import com.fr.function.TIME; import com.fr.general.FRFont; import com.fr.general.data.DataModel; import com.fr.log.FineLoggerFactory; -import com.fr.workspace.server.entity.connection.ConnectionBean; import com.fr.workspace.server.repository.connection.ConnectionRepository; import javax.swing.BorderFactory; @@ -53,8 +53,6 @@ import javax.swing.JComponent; import javax.swing.JFrame; import javax.swing.JOptionPane; import javax.swing.JPanel; -import javax.swing.JScrollBar; -import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.SwingUtilities; import javax.swing.SwingWorker; @@ -102,7 +100,8 @@ public class PreviewTablePane extends BasicPane { private PreviewTableDesensitizationPane desensitizationPane; private static final int PREVIEW_TABLE_MIN_COLUMN_WIDTH = FineUIScale.scale(75); - private static final int PREVIEW_TABLE_WIDTH = FineUIScale.scale(600); + private static final int PREVIEW_TABLE_WIDTH = FineUIScale.scale(610); + private static final int TAB_MAX_COUNT_WITH_LINE = 7; /** * 用于refreshLabel的鼠标监听 @@ -258,7 +257,7 @@ public class PreviewTablePane extends BasicPane { public void doCancel() { } - }, BasicDialog.DEFAULT); + }, DesignSizeI18nManager.getInstance().i18nDimension("com.fr.design.data.datapane.preview.dialog")); dialog.setVisible(true); // 关闭预览页面 PreviewTablePane.this.dialog.setVisible(false); @@ -681,7 +680,7 @@ public class PreviewTablePane extends BasicPane { public static void previewMultiDataModels(NameDataModel[] nameDataModels) { // tab窗口 - UITabbedPane tabbedPane = new UITabbedPane(); + FineTabbedPane.TabPaneBuilder tabbedPane = new FineTabbedPane.TabPaneBuilder(); for (NameDataModel nameDataModel : nameDataModels) { // 单个结果集的展示面板 @@ -706,10 +705,33 @@ public class PreviewTablePane extends BasicPane { }; previewPane.setLayout(FRGUIPaneFactory.createBorderLayout()); - previewPane.add(tabbedPane, BorderLayout.CENTER); + if (nameDataModels.length > 0) { + int[] tabLayout = buildTabLayout(nameDataModels); + float headRatio = buildHeadRatio(tabLayout); + previewPane.add(tabbedPane.withHeadRatio(headRatio).withTabLayout(tabLayout).build(), BorderLayout.CENTER); + } previewPane.showWindow(new JFrame()).setVisible(true); } + private static float buildHeadRatio(int[] tabLayout) { + float maxLen = 0.8f; + if (tabLayout.length == 1) { + return (float) tabLayout[0] / TAB_MAX_COUNT_WITH_LINE; + } + return maxLen; + } + + private static int[] buildTabLayout(NameDataModel[] nameDataModels) { + int length = nameDataModels.length; + int size = (length + TAB_MAX_COUNT_WITH_LINE - 1) / TAB_MAX_COUNT_WITH_LINE; + int[] tabLayout = new int[size]; + int index = 0; + for (int i = 0; i < length; i += TAB_MAX_COUNT_WITH_LINE) { + tabLayout[index ++] = Math.min(TAB_MAX_COUNT_WITH_LINE, length - i); + } + return tabLayout; + } + /** * 直接预览存储过程的所有返回数据集,没有实际值和显示值 * diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/preview/TableDataBeanHelper.java b/designer-base/src/main/java/com/fr/design/data/datapane/preview/TableDataBeanHelper.java new file mode 100644 index 0000000000..a5309a8ce0 --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/data/datapane/preview/TableDataBeanHelper.java @@ -0,0 +1,235 @@ +package com.fr.design.data.datapane.preview; + +import com.fr.base.DataSetProcessors; +import com.fr.base.Parameter; +import com.fr.base.ParameterHelper; +import com.fr.base.ParameterTypeHandler; +import com.fr.base.StoreProcedureParameter; +import com.fr.base.TableData; +import com.fr.data.impl.Connection; +import com.fr.data.impl.DBTableData; +import com.fr.data.impl.NameDatabaseConnection; +import com.fr.data.impl.storeproc.StoreProcedure; +import com.fr.decision.fun.UniversalServerTableDataProvider; +import com.fr.decision.webservice.bean.dataset.ParameterBean; +import com.fr.decision.webservice.bean.dataset.ParameterExternal; +import com.fr.decision.webservice.bean.dataset.SQLDataSetBean; +import com.fr.decision.webservice.bean.dataset.ServerDataSetBean; +import com.fr.decision.webservice.bean.dataset.StoreProcedureBean; +import com.fr.decision.webservice.bean.dataset.StrategyConfigBean; +import com.fr.decision.webservice.v10.datasource.dataset.processor.impl.SQLDataSetProcessor; +import com.fr.decision.webservice.v10.datasource.dataset.processor.impl.StoreProcedureProcessor; +import com.fr.esd.core.strategy.config.StrategyConfig; +import com.fr.general.GeneralUtils; +import com.fr.general.sql.SqlUtils; +import com.fr.json.JSONObject; +import com.fr.log.FineLoggerFactory; +import com.fr.script.Calculator; +import com.fr.security.encryption.transmission.TransmissionEncryptionManager; +import com.fr.stable.ParameterProvider; +import com.fr.stable.StringUtils; +import com.fr.workspace.server.repository.connection.ConnectionRepository; +import com.fr.workspace.server.repository.tabledata.DataEncryptionHelper; +import com.fr.workspace.server.repository.tabledata.TableDataRepository; +import org.jetbrains.annotations.NotNull; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 数据集bean工具类 + * + * @author Destiny.Lin + * @since 11.0 + * Created on 2024/8/9 + */ +public class TableDataBeanHelper { + + /** + * 获取服务器数据集 + */ + public static Map getServerTableDatas() { + final List beans = TableDataRepository.getInstance().getAllTableData(); + final Map connectionMap = ConnectionInfoBeanHelper.createConnectionMap(ConnectionRepository.getInstance().getAll()); + final Map tableDataMap = new HashMap<>(); + try { + for (ServerDataSetBean bean : beans) { + tableDataMap.put(bean.getDatasetName() , TableDataBeanHelper.getTableDataSet(connectionMap, bean.getDatasetType(), bean.getDatasetData())); + } + } catch (Exception e) { + throw new RuntimeException(e); + } + return tableDataMap; + } + + /** + * 根据序列化数据生成tabledata + */ + public static TableData getTableDataSet(Map connectionMap, String type, String tableDataSetData) throws Exception { + if (DataSetProcessors.getProcessors().containsKey(type)) { + if (StringUtils.equals(SQLDataSetProcessor.TYPE, type)) { + return deserialize4SQL(connectionMap, null, new JSONObject(tableDataSetData)); + } else if (StringUtils.equals(StoreProcedureProcessor.TYPE, type)) { + return deserialize4Procedure(connectionMap, null, new JSONObject(tableDataSetData)); + } else { + UniversalServerTableDataProvider processor = DataSetProcessors.getProcessors().get(type); + return (TableData) processor.deserialize(null, new JSONObject(tableDataSetData)); + } + + } + return null; + } + + private static TableData deserialize4Procedure(Map connectionMap, DBTableData oldDataSet, JSONObject object) { + StoreProcedure storeProcedure = new StoreProcedure(); + StoreProcedureBean bean = object.mapTo(StoreProcedureBean.class); + storeProcedure.setShare(bean.isShare()); + storeProcedure.setMaxMemRowCount(bean.getMaxMemRowCount()); + storeProcedure.setQuery(bean.getQuery()); + if (StringUtils.isNotEmpty(bean.getDatabase())) { + Connection connection = connectionMap.get(bean.getDatabase()); + if (connection != null) { + storeProcedure.setDatabaseConnection(new NameDatabaseConnection(bean.getDatabase())); + } else { + FineLoggerFactory.getLogger().info("not find conn by {}", bean.getDatabase()); + } + } + Parameter[] parameters = new Parameter[bean.getParameters().size()]; + for (int i = 0; i < parameters.length; i++) { + ParameterBean parameterBean = bean.getParameters().get(i); + parameters[i] = (Parameter) ParameterTypeHandler.getInstance().parseParameter(parameterBean, new Parameter(parameterBean.getName())); + } + List externals = bean.getStoreProcedureParameterBeanList(); + StoreProcedureParameter[] procedureParameters = new StoreProcedureParameter[bean.getParameters().size()]; + for (int i = 0; i < procedureParameters.length; i++) { + StoreProcedureParameter storeProcedureParameter = new StoreProcedureParameter(); + storeProcedureParameter.setName(parameters[i].getName()); + storeProcedureParameter.setValue(parameters[i].getValue()); + storeProcedureParameter.setSchema(externals.get(i).getSchema()); + storeProcedureParameter.setType(externals.get(i).getTypeInt()); + procedureParameters[i] = storeProcedureParameter; + } + storeProcedure.setParameters(procedureParameters); + return storeProcedure; + } + + + /** + * 获取服务器数据集传输的bean + */ + public static ServerDataSetBean getServerDataSetBean(String name, TableData tableData) { + for (UniversalServerTableDataProvider processor : DataSetProcessors.getProcessors().values()) { + if (SQLDataSetProcessor.KEY.classForTableData() == tableData.getClass()) { + return serialize4SQL(name, tableData); + } else if (processor.classForTableData() == tableData.getClass()) { + ServerDataSetBean bean = new ServerDataSetBean(); + try { + bean.setDatasetData(processor.serialize(tableData).toString()); + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + bean.setDatasetData(StringUtils.EMPTY); + } + bean.setDatasetName(name); + bean.setDatasetId(name); + bean.setDatasetType(processor.nameForTableData()); + return bean; + } + } + return new ServerDataSetBean(name); + } + + private static ServerDataSetBean serialize4SQL(String name, TableData tableData) { + ServerDataSetBean bean = new ServerDataSetBean(); + try { + bean.setDatasetData(serialize4SQL0((DBTableData) tableData).toString()); + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + bean.setDatasetData(StringUtils.EMPTY); + } + bean.setDatasetName(name); + bean.setDatasetId(name); + bean.setDatasetType(SQLDataSetProcessor.KEY.nameForTableData()); + return bean; + } + + private static Object serialize4SQL0(DBTableData dataSet) { + SQLDataSetBean bean = new SQLDataSetBean(); + if (dataSet.getDatabase() instanceof NameDatabaseConnection) { + bean.setDatabase(((NameDatabaseConnection) dataSet.getDatabase()).getName()); + } + bean.setQuery(DataEncryptionHelper.encrypt(dataSet.getQuery())); + List parameterBeans = new ArrayList<>(); + ParameterProvider[] parameters = dataSet.getParameters(Calculator.createCalculator()); + for (ParameterProvider parameter : parameters) { + parameterBeans.add(new ParameterBean(parameter.getValue().getClass().getSimpleName(), parameter.getName(), GeneralUtils.objectToString(parameter.getValue()))); + } + bean.setParameters(parameterBeans); + StrategyConfig config = dataSet.getStrategyConfig(); + if (config != null) { + StrategyConfigBean strategyConfigBean = new StrategyConfigBean(); + strategyConfigBean.setUseGlobal(config.isUseGlobal()); + strategyConfigBean.setShouldMonitor(config.shouldMonitor()); + strategyConfigBean.setShouldEvolve(config.shouldEvolve()); + strategyConfigBean.setScheduleBySchema(config.isScheduleBySchema()); + strategyConfigBean.setTimeToLive(config.getTimeToLive()); + strategyConfigBean.setTimeToIdle(config.getTimeToIdle()); + strategyConfigBean.setUpdateInterval(config.getUpdateInterval()); + strategyConfigBean.setTerminalTime(config.getTerminalTime()); + strategyConfigBean.setUpdateSchema(config.getUpdateSchema()); + strategyConfigBean.setActiveInitiation(config.isActiveInitiation()); + strategyConfigBean.setShare(config.enabled()); + bean.setStrategyConfig(strategyConfigBean); + } + return JSONObject.mapFrom(bean); + } + + + private static TableData deserialize4SQL(Map connectionMap, DBTableData oldDataSet, JSONObject object) { + DBTableData tableData = new DBTableData(); + SQLDataSetBean bean = object.mapTo(SQLDataSetBean.class); + tableData.setQuery(DataEncryptionHelper.decrypt(bean.getQuery())); + Connection connection = connectionMap.get(bean.getDatabase()); + if (connection != null) { + tableData.setDatabase(new NameDatabaseConnection(bean.getDatabase())); + } else { + FineLoggerFactory.getLogger().info("not find conn by {}", bean.getDatabase()); + } + String sql = SqlUtils.clearSqlComments(DataEncryptionHelper.decrypt(bean.getQuery())); + Parameter[] parameters = new Parameter[bean.getParameters().size()]; + for (int i = 0; i < parameters.length; i++) { + ParameterBean parameterBean = bean.getParameters().get(i); + parameters[i] = (Parameter) ParameterTypeHandler.getInstance().parseParameter(parameterBean, new Parameter(parameterBean.getName())); + } + tableData.setParameters(ParameterHelper.analyzeAndUnionSameParameters(new String[]{sql}, parameters)); + if (oldDataSet != null) { + tableData.setMaxMemRowCount(oldDataSet.getMaxMemRowCount()); + tableData.setPageQuerySql(oldDataSet.getPageQuerySql()); + tableData.setShare(oldDataSet.isShare()); + tableData.setDataQueryProcessor(oldDataSet.getDataQueryProcessor()); + } + StrategyConfig config = getStrategyConfig(bean.getStrategyConfig()); + tableData.setStrategyConfig(config); + return tableData; + } + + private static StrategyConfig getStrategyConfig(StrategyConfigBean bean) { + if (bean == null) { + return new StrategyConfig(); + } + StrategyConfig config = new StrategyConfig(); + config.setEnable(bean.isShare()); + config.setUseGlobal(bean.isUseGlobal()); + config.setShouldMonitor(bean.isShouldMonitor()); + config.setShouldEvolve(bean.isShouldEvolve()); + config.setScheduleBySchema(bean.isScheduleBySchema()); + config.setTimeToLive(bean.getTimeToLive()); + config.setTimeToIdle(bean.getTimeToIdle()); + config.setUpdateInterval(bean.getUpdateInterval()); + config.setTerminalTime(bean.getTerminalTime()); + config.setUpdateSchema(bean.getUpdateSchema()); + config.setActiveInitiation(bean.isActiveInitiation()); + return config; + } +} diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/common/DesensitizationOpenPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/common/DesensitizationOpenPane.java index 0cf850d4dc..8abe19a405 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/common/DesensitizationOpenPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/common/DesensitizationOpenPane.java @@ -1,5 +1,6 @@ package com.fr.design.data.datapane.preview.desensitization.view.common; +import com.fine.theme.icon.LazyIcon; import com.fine.theme.utils.FineUIUtils; import com.fr.base.svg.IconUtils; import com.fr.design.border.UITitledBorder; @@ -23,6 +24,7 @@ import java.net.URL; import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.column; +import static com.fine.swing.ui.layout.Layouts.row; /** * 启用数据脱敏的面板 @@ -56,7 +58,7 @@ public class DesensitizationOpenPane extends JPanel { // 启用数据脱敏的勾选框 desensitizeOpenCheckBox = new UICheckBox(Toolkit.i18nText("Fine-Design_Report_Desensitization_Opened")); // 跳转帮助文档Label - hyperlinkLabel = new UILabel(IconUtils.readIcon("/com/fr/design/standard/tip/tips")); + hyperlinkLabel = new UILabel(new LazyIcon("jump_to_references")); hyperlinkLabel.setToolTipText(Toolkit.i18nText("Fine-Design_Report_Desensitization_Open_Tips")); hyperlinkLabel.addMouseListener(new MouseAdapter() { @Override @@ -70,8 +72,7 @@ public class DesensitizationOpenPane extends JPanel { } } }); - panel.add(desensitizeOpenCheckBox); - panel.add(hyperlinkLabel); + panel.add(row(4, cell(desensitizeOpenCheckBox), cell(hyperlinkLabel)).getComponent()); // 提示Label tipsLabel = new UILabel(Toolkit.i18nText("Fine-Design_Report_Desensitization_Opened_Tooltips")); diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/rule/DesensitizationRuleChoosePane.java b/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/rule/DesensitizationRuleChoosePane.java index dc0eaf2011..c5f9e06d15 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/rule/DesensitizationRuleChoosePane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/rule/DesensitizationRuleChoosePane.java @@ -2,6 +2,7 @@ package com.fr.design.data.datapane.preview.desensitization.view.rule; import com.fine.theme.icon.LazyIcon; import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIStyle; import com.formdev.flatlaf.ui.FlatUIUtils; import com.fr.base.svg.IconUtils; import com.fr.data.desensitize.rule.DesensitizationRuleManager; @@ -12,6 +13,7 @@ import com.fr.design.data.datapane.preview.desensitization.view.common.ChooseMar import com.fr.design.dialog.BasicDialog; import com.fr.design.dialog.DialogActionAdapter; import com.fr.design.gui.ilable.UILabel; +import com.fr.design.gui.itable.FineUITableCellEditor; import com.fr.design.gui.itableeditorpane.UITableEditAction; import com.fr.design.gui.itableeditorpane.UITableEditorPane; import com.fr.design.gui.itableeditorpane.UITableModelAdapter; @@ -20,12 +22,10 @@ import com.fr.design.i18n.Toolkit; import com.fr.stable.StringUtils; import com.fr.stable.collections.CollectionUtils; -import javax.swing.AbstractCellEditor; -import javax.swing.BorderFactory; +import javax.swing.JComponent; import javax.swing.JPanel; import javax.swing.JTable; import javax.swing.SwingUtilities; -import javax.swing.UIManager; import javax.swing.table.TableCellEditor; import javax.swing.table.TableCellRenderer; import java.awt.CardLayout; @@ -195,17 +195,15 @@ public class DesensitizationRuleChoosePane extends JPanel { /** * 规则状态展示页面 */ - private class DesensitizationRuleStatusPane extends AbstractCellEditor implements TableCellEditor, TableCellRenderer { + private class DesensitizationRuleStatusPane extends FineUITableCellEditor { private UILabel ruleStatusLabel; DesensitizationRuleStatusPane() { // 规则状态 this.ruleStatusLabel = new UILabel(); - this.ruleStatusLabel.setForeground(Color.RED); this.ruleStatusLabel.setOpaque(true); - this.ruleStatusLabel.setBackground(FlatUIUtils.getUIColor("background.normal", Color.WHITE)); - this.ruleStatusLabel.setBorder(BorderFactory.createMatteBorder(0, 0, 1, 0, UIManager.getColor("defaultBorderColor"))); + FineUIStyle.setStyle(ruleStatusLabel, FineUIStyle.LABEL_WARNING_TIP); } /** @@ -239,6 +237,9 @@ public class DesensitizationRuleChoosePane extends JPanel { @Override public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { refreshRuleStatus(getList().get(row)); + JComponent c = (JComponent) super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); + ruleStatusLabel.setBorder(c.getBorder()); + ruleStatusLabel.setBackground(c.getBackground()); return ruleStatusLabel; } } diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/setting/TableDataDesensitizationTableModel.java b/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/setting/TableDataDesensitizationTableModel.java index 32959ef942..b55479dc9a 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/setting/TableDataDesensitizationTableModel.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/preview/desensitization/view/setting/TableDataDesensitizationTableModel.java @@ -1,7 +1,6 @@ package com.fr.design.data.datapane.preview.desensitization.view.setting; import com.fine.theme.icon.LazyIcon; -import com.fine.theme.light.ui.FineRoundBorder; import com.fine.theme.utils.FineUIStyle; import com.formdev.flatlaf.ui.FlatUIUtils; import com.fr.data.desensitize.base.DesensitizationTableData; @@ -14,10 +13,10 @@ import com.fr.design.data.datapane.preview.desensitization.view.rule.Desensitiza import com.fr.design.dialog.BasicDialog; import com.fr.design.dialog.DialogActionAdapter; import com.fr.design.gui.ibutton.UIButton; -import com.fr.design.gui.icombobox.ComboCheckBox; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.icombocheckbox.UIComboCheckBox; import com.fr.design.gui.ilable.UILabel; +import com.fr.design.gui.itable.FineUITableCellEditor; import com.fr.design.gui.itableeditorpane.UITableEditAction; import com.fr.design.gui.itableeditorpane.UITableModelAdapter; import com.fr.design.gui.itextfield.UITextField; @@ -38,7 +37,6 @@ import javax.swing.UIManager; import javax.swing.event.CellEditorListener; import javax.swing.event.ChangeEvent; import javax.swing.table.TableCellEditor; -import javax.swing.table.TableCellRenderer; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Component; @@ -56,6 +54,8 @@ import java.util.Objects; import java.util.Optional; import java.util.Set; +import static com.fine.theme.utils.FineUIStyle.setStyle; + /** * 处理TableDataDesensitizationTablePane中TableEditPane的Model * @@ -127,8 +127,6 @@ public class TableDataDesensitizationTableModel extends UITableModelAdapter getAllNames(String username) { + Set authServerDataSetNames = new HashSet<>(); + for (String authServerDataSetName : TableDataConfigProviderFactory.getInstance().getTableDatas().keySet()) { + authServerDataSetNames.add(authServerDataSetName); + } + return authServerDataSetNames; + } + + @Override + public boolean lock(String str) { + // 本地默认锁定成功,让其执行后续动作 + return true; + } + + @Override + public boolean unlock(String str) { + // 本地默认解锁成功 + return true; + } + + @Override + public boolean isLock(String str) { + // 本地默认未锁定 + return false; + } + + @Override + public List getFileList(String fileType) { + return FileProcessor.KEY.getFileList(fileType, StringUtils.EMPTY); + } + + @Override + public boolean testFilePath(FileDataSetBean fileDataSetBean) { + try { + return FileProcessor.KEY.testFilePath(fileDataSetBean); + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + return false; + } + } + + @Override + public List getCertificatesFile(String keyword) throws Exception { + String pPath = CommonUtils.pathJoin(ProjectConstants.RESOURCES_NAME, ProjectConstants.CERTIFICATES_DIRECTORY); + return FileNodeService.getInstance().getAllRecursiveFileNodes(pPath, ProjectConstants.RESOURCES_NAME, keyword); + } + + + @Override + public List getAllTableData() { + + List beans = new ArrayList<>(); + TableData[] tableDatas = TableDataConfigProviderFactory.getInstance().getTableDatas().values().toArray(new TableData[0]); + for (TableData data : tableDatas) { + beans.add(TableDataBeanHelper.getServerDataSetBean(data.getName(), data)); + } + return beans; + } + + + @Override + public void add(ServerDataSetBean bean) throws Exception { + TableDataConfigProviderFactory.getInstance().addTableData(bean.getDatasetName(), TableDataBeanHelper.getTableDataSet(ConnectionConfigProviderFactory.getConfigProvider().getConnections(), bean.getDatasetType(), bean.getDatasetData())); + } + + @Override + public void delete(ServerDataSetBean bean) throws Exception { + TableDataConfigProviderFactory.getInstance().removeTableData(bean.getDatasetName()); + } + + @Override + public void update(ServerDataSetBean bean) throws Exception { + TableDataConfigProviderFactory.getInstance().updateTableData(bean.getDatasetName(), TableDataBeanHelper.getTableDataSet(ConnectionConfigProviderFactory.getConfigProvider().getConnections(), bean.getDatasetType(), bean.getDatasetData())); + } + +} diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DatacentersJSBridge.java b/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DCTableDataJSBridge.java similarity index 85% rename from designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DatacentersJSBridge.java rename to designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DCTableDataJSBridge.java index f8e164dccf..9cc7b780fc 100644 --- a/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DatacentersJSBridge.java +++ b/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DCTableDataJSBridge.java @@ -4,7 +4,9 @@ import com.fr.base.BaseFormula; import com.fr.datacenters.tabledata.bean.DCFilterQueryBean; import com.fr.datacenters.tabledata.bean.DCTableDataBean; import com.fr.datacenters.tabledata.filter.DCFilter; +import com.fr.datacenters.tabledata.parameter.DCParameter; import com.fr.design.bridge.exec.JSBridge; +import com.fr.design.data.DesignTableDataManager; import com.fr.design.dialog.DialogActionListener; import com.fr.design.dialog.UIDialog; import com.fr.design.formula.FormulaFactory; @@ -37,7 +39,7 @@ import java.util.stream.Collectors; * Created on 2024/6/17 */ @JsAccessible -public class DatacentersJSBridge { +public class DCTableDataJSBridge { private static final String EVENT_FORMULA_UPDATE = "OK"; private static final String EVENT_FORMULA_CANCEL = "CANCEL"; @@ -47,25 +49,25 @@ public class DatacentersJSBridge { * @param window js环境的window对象 * @return 桥接实例 */ - public static DatacentersJSBridge getBridge(JsObject window) { - return new DatacentersJSBridge(window); + public static DCTableDataJSBridge getBridge(JsObject window) { + return new DCTableDataJSBridge(window); } private final JsObject window; - private DatacentersJSBridge(JsObject window) { + private DCTableDataJSBridge(JsObject window) { this.window = window; } - private static DatacentersPane relationPanel; + private static DCTableDataPane relationPanel; /** * 设置窗口,用于打开对话框的层级 * * @param panel 面板 */ - public static void relationPanel(DatacentersPane panel) { + public static void relationPanel(DCTableDataPane panel) { relationPanel = panel; } @@ -134,6 +136,16 @@ public class DatacentersJSBridge { }).setVisible(true); } + /** + * 当前所有数据集名称 + */ + @JSBridge + public void getDatasetNames(final JsFunction callback) { + JxUIPane.DEFAULT_EXECUTOR.submit(() -> + callback.invoke(window, EmbedJson.encode( + DesignTableDataManager.getAllDSNames(DesignTableDataManager.getEditingTableDataSource())))); + } + /** * 解析公式参数 */ @@ -161,7 +173,9 @@ public class DatacentersJSBridge { JxUIPane.DEFAULT_EXECUTOR.submit(() -> { try { DCTableDataBean decoded = EmbedJson.decodeValue(tableData, DCTableDataBean.class); - DCFilter dcFilter = decoded.getFilter().evalValue(decoded.getParameters(), Calculator.createCalculator()); + DCParameter[] dcParameters = Arrays.stream(decoded.getParameters()) + .map(DCParameter::fromBean).toArray(DCParameter[]::new); + DCFilter dcFilter = decoded.getFilter().evalValue(dcParameters, Calculator.createCalculator()); DCFilterQueryBean queryBean = dcFilter.toQueryBean(); String encode = EmbedJson.encode(queryBean); callback.invoke(window, encode); diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DatacentersPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DCTableDataPane.java similarity index 56% rename from designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DatacentersPane.java rename to designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DCTableDataPane.java index e8a539f115..c5950ae57d 100644 --- a/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DatacentersPane.java +++ b/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DCTableDataPane.java @@ -4,9 +4,9 @@ import com.fanruan.workplace.http.ServiceType; import com.fr.datacenters.tabledata.DCTableData; import com.fr.datacenters.tabledata.bean.DCNameBean; import com.fr.datacenters.tabledata.bean.DCTableDataBean; +import com.fr.design.data.DesignTableDataManager; import com.fr.design.data.tabledata.tabledatapane.AbstractTableDataPane; -import com.fr.design.dialog.DialogActionListener; -import com.fr.design.dialog.UIDialog; +import com.fr.design.i18n.Toolkit; import com.fr.design.jxbrowser.JxEngine; import com.fr.design.jxbrowser.JxUIPane; import com.fr.json.revise.EmbedJson; @@ -14,9 +14,12 @@ import com.fr.stable.StringUtils; import com.fr.third.guava.collect.ImmutableMap; import com.fr.workspace.WorkContext; -import javax.swing.SwingUtilities; import java.awt.BorderLayout; -import java.awt.Window; +import java.util.Arrays; + +import static com.fr.design.ui.ModernUIConstants.DOT; +import static com.fr.design.ui.ModernUIConstants.EMB_TAG; +import static com.fr.design.ui.ModernUIConstants.SCHEME_HEADER; /** * 数据中心数据集面板 @@ -25,56 +28,46 @@ import java.awt.Window; * @since 11.0 * Created on 2024/6/17 */ -public class DatacentersPane extends AbstractTableDataPane { +public class DCTableDataPane extends AbstractTableDataPane { private static final JxEngine JX_ENGINE = JxEngine.newInstance(false); private static final String DATA_CENTER = "dc"; private static final String DATA_CENTER_HELPER = "dcHelper"; + private static final String DATA_CENTER_INJECT_URL = "fineServletURL"; + private static final String DC_INDEX_HTML = "com/fr/design/data/tabledata/datacenter/web/data-choose.prod.html"; private final JxUIPane dataCenterJxUIPane; - private JxTableDataNamePane namePane; + private final JxTableDataNamePane namePane = new JxTableDataNamePane(this); // 用于复制粘贴场景 private DCTableData dcTableData; /** - * 借用,只运行一次 + * 用于创建带有名称的面板 + * + * @param name 名称 */ - private void addDialogActionListener() { - - // 保证在窗口加载完成后执行 - SwingUtilities.invokeLater(() -> { - Window ancestor = SwingUtilities.getWindowAncestor(DatacentersPane.this); - if (ancestor instanceof UIDialog) { - ((UIDialog) ancestor).addDialogActionListener(new DialogActionListener() { - @Override - public void doOk() { - dataCenterJxUIPane.disposeBrowser(); - } - - @Override - public void doCancel() { - dataCenterJxUIPane.disposeBrowser(); - } - }); - } - }); + public DCTableDataPane(String name) { + this(); + namePane.setObjectName(name); } - public DatacentersPane() { + public DCTableDataPane() { setLayout(new BorderLayout()); dataCenterJxUIPane = getJxUIPane(); add(dataCenterJxUIPane, BorderLayout.CENTER); dataCenterJxUIPane.addXHRHeaders(ImmutableMap.of("Authorization", WorkContext.getCurrent().getConnection().getToken())); + // 关联 bridge 和 pane + DCTableDataJSBridge.relationPanel(this); } private static JxUIPane getJxUIPane() { + return new JxUIPane.Builder() .engine(JX_ENGINE) .namespace(DATA_CENTER) - .bindWindow(DATA_CENTER_HELPER, DatacentersJSBridge::getBridge) - .withEMB("com/fr/design/data/tabledata/datacenter/web/data-choose.prod.html", - ImmutableMap.of("fineServletURL", getDatacentersUrl())) + .bindWindow(DATA_CENTER_HELPER, DCTableDataJSBridge::getBridge) + .withEMB(DC_INDEX_HTML, ImmutableMap.of(DATA_CENTER_INJECT_URL, getDatacentersUrl())) .build(); } @@ -89,15 +82,37 @@ public class DatacentersPane extends AbstractTableDataPane { @Override public NamePane asNamePane() { - return namePane = new JxTableDataNamePane(this); + return namePane; } @Override public void populateBean(DCTableData ob) { - DatacentersJSBridge.relationPanel(this); + reload(); dcTableData = ob; - dataCenterJxUIPane.populate(EmbedJson.encode(ob.toBean())); + updateTableDataName(dcTableData, namePane.getObjectName()); + dataCenterJxUIPane.populate(EmbedJson.encode(dcTableData.toBean())); + setDatasetNames(dcTableData); + } + + private void reload() { + dataCenterJxUIPane.redirect(EMB_TAG + SCHEME_HEADER + DC_INDEX_HTML, + ImmutableMap.of(DATA_CENTER_INJECT_URL, getDatacentersUrl())); + } + + private static void updateTableDataName(DCTableData dcTableData, String name) { + if (StringUtils.isNotBlank(name)) { + dcTableData.setDsName(name); + dcTableData.setName(name); + } + } + + private void setDatasetNames(DCTableData ob) { + String[] allDSNames = DesignTableDataManager.getAllDSNames(DesignTableDataManager.getEditingTableDataSource()); + String[] allName = Arrays.stream(allDSNames) + .filter(name -> !ob.getDsName().equals(name)) + .toArray(String[]::new); + dataCenterJxUIPane.executeJS(DATA_CENTER + DOT + "datasetNames=" + EmbedJson.encode(allName)); } @@ -109,7 +124,8 @@ public class DatacentersPane extends AbstractTableDataPane { namePane.setObjectName(tableDataBean.getDsName()); return DCTableData.fromBean(tableDataBean); } else { - // 复制的场景下,不打开界面需要返回数据集 + // 复制的场景下,不打开界面需要返回数据集,需同步面板的名称 + updateTableDataName(dcTableData, namePane.getObjectName()); return dcTableData; } } @@ -125,6 +141,6 @@ public class DatacentersPane extends AbstractTableDataPane { @Override protected String title4PopupWindow() { - return ""; + return Toolkit.i18nText("Fine-Design_Basic_DS_Datacenters"); } } diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ClassTableDataPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ClassTableDataPane.java index 312f5291f4..191b3312e2 100644 --- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ClassTableDataPane.java +++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ClassTableDataPane.java @@ -55,7 +55,6 @@ public class ClassTableDataPane extends AbstractTableDataPane { //类名 classNameTextField = new UITextField(); UIButton browserButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select")); - browserButton.setPreferredSize(new Dimension(browserButton.getPreferredSize().width, classNameTextField.getPreferredSize().height)); browserButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { final ClassNameSelectPane bPane = new ClassNameSelectPane(); diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/DBTableDataPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/DBTableDataPane.java index 32dc440a3d..dbe45885cc 100644 --- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/DBTableDataPane.java +++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/DBTableDataPane.java @@ -165,7 +165,8 @@ public class DBTableDataPane extends AbstractTableDataPane implemen ParameterTableModel model = new ParameterTableModel() { @Override public UITableEditAction[] createAction() { - return ArrayUtils.add(super.createDBTableAction(), new RefreshAction()); + // 当前仅支持刷新参数功能 + return ArrayUtils.toArray(new RefreshAction()); } }; editorPane = new UITableEditorPane<>(model); @@ -208,6 +209,7 @@ public class DBTableDataPane extends AbstractTableDataPane implemen @Override public void keyPressed(KeyEvent e) { + searchField.setToolTipText(searchField.getText()); if (e.getKeyCode() == KeyEvent.VK_ENTER) { e.setKeyCode(KeyEvent.VK_UP); DBTableDataPane.this.connectionTableProcedurePane.requestFocus(); diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/EmbeddedTableDataPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/EmbeddedTableDataPane.java index 8ab58d8603..8d2798ae62 100644 --- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/EmbeddedTableDataPane.java +++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/EmbeddedTableDataPane.java @@ -1,6 +1,8 @@ package com.fr.design.data.tabledata.tabledatapane; +import com.fine.theme.light.ui.FineTableHeaderUI; import com.fine.theme.utils.FineUIScale; +import com.formdev.flatlaf.ui.FlatUIUtils; import com.fr.data.impl.EmbeddedTableData; import com.fr.design.constants.LayoutConstants; import com.fr.design.dialog.BasicDialog; @@ -19,6 +21,7 @@ import javax.swing.JPanel; import javax.swing.JTable; import javax.swing.event.TableModelEvent; import javax.swing.event.TableModelListener; +import javax.swing.table.AbstractTableModel; import javax.swing.table.DefaultTableCellRenderer; import javax.swing.table.TableCellEditor; import javax.swing.table.TableColumn; @@ -27,6 +30,8 @@ import java.awt.Color; import java.awt.Component; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import java.awt.event.ComponentEvent; +import java.awt.event.ComponentListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.MouseAdapter; @@ -42,7 +47,7 @@ import static com.fine.swing.ui.layout.Layouts.flex; public class EmbeddedTableDataPane extends AbstractTableDataPane { private static final int MIN_CELL_WIDTH = 30; private static final int PREVIEW_TABLE_MIN_COLUMN_WIDTH = FineUIScale.scale(75); - private static final int PREVIEW_TABLE_WIDTH = FineUIScale.scale(600); + private static final int PREVIEW_TABLE_WIDTH = FineUIScale.scale(860); private JTable dataJTable ; private UITableScrollPane scrollPane; private UILabel coordinatelabel; @@ -64,11 +69,14 @@ public class EmbeddedTableDataPane extends AbstractTableDataPane 1) { + dataJTable.getTableHeader().setVisible(true); + } else { + dataJTable.getTableHeader().setVisible(false); + } } - private class DoubleRenderer extends DefaultTableCellRenderer { + private class DoubleRenderer extends FineTableHeaderUI.TableRenderer { public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { setHorizontalAlignment(RIGHT); return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); } } - private class DateRenderer extends DefaultTableCellRenderer { + private class DateRenderer extends FineTableHeaderUI.TableRenderer { public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { Date date2Format = DateUtils.object2Date(value, true); return super.getTableCellRendererComponent(table, date2Format == null ? StringUtils.EMPTY : DateUtils.DATEFORMAT1.format(date2Format), isSelected, hasFocus, row, diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/FileTableDataPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/FileTableDataPane.java index 447bb82e50..7efe6f7196 100644 --- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/FileTableDataPane.java +++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/FileTableDataPane.java @@ -14,6 +14,7 @@ import com.fr.data.impl.ExcelTableData; import com.fr.data.impl.FileTableData; import com.fr.data.impl.TextTableData; import com.fr.data.impl.XMLTableData; +import com.fr.decision.webservice.bean.dataset.FileDataSetBean; import com.fr.design.actions.UpdateAction; import com.fr.design.constants.LayoutConstants; import com.fr.design.data.datapane.preview.PreviewTablePane; @@ -47,6 +48,7 @@ import com.fr.stable.ParameterProvider; import com.fr.stable.StringUtils; import com.fr.stable.xml.XMLReadable; import com.fr.stable.xml.XMLableReader; +import com.fr.workspace.server.repository.tabledata.TableDataRepository; import javax.swing.ButtonGroup; import javax.swing.JOptionPane; @@ -194,16 +196,18 @@ public class FileTableDataPane extends AbstractTableDataPane { urlText.setEditable(false); // 选择按钮 chooseFile = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Selection")); + chooseFile.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Selection")); chooseFile.addActionListener(chooseFileListener); // 测试连接按钮 testConnection = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Datasource_Test_Connection")); + testConnection.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Datasource_Test_Connection")); testConnection.setEnabled(false); testConnection.addActionListener(testConnectionListener); // 提示信息 tipPanel = column( - cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Type_Parameter_Desc"), FineUIStyle.LABEL_TIP)), - cell(new UILabel("reportlets/excel/FineReport${abc}." + "txt", FineUIStyle.LABEL_TIP)), - cell(new UILabel("http://192.168.100.120:8080/XXServer/Report/excel${abc}.jsp", FineUIStyle.LABEL_TIP)) + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Type_Parameter"), FineUIStyle.LABEL_TIP)), + cell(new UILabel("assets/file_dataset/FineReport${abc}." + "txt", FineUIStyle.LABEL_TIP)), + cell(new UILabel("http://192.168.100.120:8080/webroot/help/excel${abc}.jsp", FineUIStyle.LABEL_TIP)) ).getComponent(); return column( LayoutConstants.VERTICAL_GAP, @@ -233,22 +237,20 @@ public class FileTableDataPane extends AbstractTableDataPane { } params = getEditorPaneParameter(); URLDataSource url = new URLDataSource(urlText.getText().trim(), params); - InputStream in = null; + boolean result = false; try { - in = url.getSourceStream(params); + String urlText = ParameterHelper.analyze4Templatee(url.getUrl(), params); + FileDataSetBean bean = new FileDataSetBean(); + bean.setFilePath(urlText); + result = TableDataRepository.getInstance().testFilePath(bean); } catch (Throwable e) { FineLoggerFactory.getLogger().error(e.getMessage(), e); } - if (in == null) { + if (!result) { FineJOptionPane.showMessageDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Database_Connection_Failed"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Error"), JOptionPane.ERROR_MESSAGE, UIManager.getIcon("OptionPane.errorIcon")); } else { FineJOptionPane.showMessageDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Datasource_Connection_Successfully")); - try { - in.close(); - } catch (IOException e) { - in = null; - } } } }; @@ -448,7 +450,7 @@ public class FileTableDataPane extends AbstractTableDataPane { @Override public void actionPerformed(ActionEvent e) { - FILEChooserPane fileChooser = FILEChooserPane.getInstance(true, false, new ChooseFileFilter(getFileSuffix())); + FILEChooserPane fileChooser = FILEChooserPane.getFileDataChoosePane(new ChooseFileFilter(getFileSuffix())); if (fileChooser.showOpenDialog(FileTableDataPane.this) == FILEChooserPane.OK_OPTION) { final FILE file = fileChooser.getSelectedFILE(); if (file == null) {// 选择的文件不能是 null diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/MultiTDTableDataPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/MultiTDTableDataPane.java index 25964be6d8..88bb77b042 100644 --- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/MultiTDTableDataPane.java +++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/MultiTDTableDataPane.java @@ -102,8 +102,12 @@ public class MultiTDTableDataPane extends AbstractTableDataPane it.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Multi_Dataset_Name"))) + .weight(0.2), + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Multi_Dataset_Conditions"))) + .with(it -> it.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Multi_Dataset_Conditions"))) + .weight(0.2), flex(0.6) ).getComponent()); @@ -130,7 +134,7 @@ public class MultiTDTableDataPane extends AbstractTableDataPane(new ParameterTableModel() { @@ -329,7 +333,7 @@ public class MultiTDTableDataPane extends AbstractTableDataPane map = new java.util.LinkedHashMap<>(); + private static Map map = new LinkedHashMap<>(); private static Map defaultMap = new LinkedHashMap<>(); @@ -79,7 +79,7 @@ public abstract class TableDataFactory { i18nText("Fine-Design_Basic_DS_Datacenters"), new LazyIcon("datacenter"), DCTableData.class, - DatacentersPane.class)); + DCTableDataPane.class)); map.putAll(defaultMap); } @@ -129,12 +129,12 @@ public abstract class TableDataFactory { AbstractTableDataPane datapane = null; TableDataNameObjectCreator tableDataNameObjectCreator = getTableDataNameObjectCreator(tabledata); Class> creatorClass = (Class>) tableDataNameObjectCreator.getUpdatePane(); - if (tableDataNameObjectCreator != null && creatorClass != null) { + if (creatorClass != null) { try { - if (ComparatorUtils.equals(creatorClass, MultiTDTableDataPane.class) || ComparatorUtils.equals(creatorClass, TreeTableDataPane.class)) { - Constructor constructor = creatorClass.getDeclaredConstructor(new Class[]{String.class}); + if (TableDataPaneHelper.isNamedTableDataPane(creatorClass)) { + Constructor> constructor = creatorClass.getDeclaredConstructor(String.class); constructor.setAccessible(true); - datapane = (AbstractTableDataPane) constructor.newInstance(name); + datapane = constructor.newInstance(name); } else { datapane = creatorClass.newInstance(); } @@ -205,11 +205,7 @@ public abstract class TableDataFactory { clearAll(); try { List beans = TableDataRepository.getInstance().getAllTableData(); - final List connectionInfoBeans = ConnectionRepository.getInstance().getAll(); - final Map connectionMap = new HashMap<>(); - for (ConnectionBean bean : connectionInfoBeans) { - connectionMap.put(bean.getName(), bean.getConnection()); - } + final Map connectionMap = ConnectionInfoBeanHelper.createConnectionMap(ConnectionRepository.getInstance().getAll()); Map tableDataMap = new HashMap<>(); for (ServerDataSetBean bean : beans) { tableDataMap.put(bean.getDatasetName(), TableDataBeanHelper.getTableDataSet(connectionMap, bean.getDatasetType(), bean.getDatasetData())); @@ -233,11 +229,7 @@ public abstract class TableDataFactory { Map tableDataMap = new HashMap<>(); try { List beans = TableDataRepository.getInstance().getAllTableData(); - final List connectionInfoBeans = ConnectionRepository.getInstance().getAll(); - final Map connectionMap = new HashMap<>(); - for (ConnectionBean bean : connectionInfoBeans) { - connectionMap.put(bean.getName(), bean.getConnection()); - } + final Map connectionMap = ConnectionInfoBeanHelper.createConnectionMap(ConnectionRepository.getInstance().getAll()); for (ServerDataSetBean bean : beans) { tableDataMap.put(bean.getDatasetName(), TableDataBeanHelper.getTableDataSet(connectionMap, bean.getDatasetType(), bean.getDatasetData())); } diff --git a/designer-base/src/main/java/com/fr/design/dialog/BasicScrollPane.java b/designer-base/src/main/java/com/fr/design/dialog/BasicScrollPane.java index 5c80e2b167..5434e71ce9 100644 --- a/designer-base/src/main/java/com/fr/design/dialog/BasicScrollPane.java +++ b/designer-base/src/main/java/com/fr/design/dialog/BasicScrollPane.java @@ -5,6 +5,7 @@ import com.fr.design.gui.iscrollbar.UIScrollBar; import javax.swing.JPanel; import javax.swing.JScrollBar; +import javax.swing.SwingUtilities; import java.awt.AWTEvent; import java.awt.Color; import java.awt.Component; @@ -111,6 +112,15 @@ public abstract class BasicScrollPane extends BasicBeanPane{ doLayout(); } + /** + * 插入图表后单元格元素使用cardLayout布局,需要滚动效果获取高度在子类中重新计算 + * + * @return height + */ + protected int getMaxHeight(){ + return getHeight(); + } + protected class BarLayout implements LayoutManager { @Override @@ -135,7 +145,7 @@ public abstract class BasicScrollPane extends BasicBeanPane{ @Override public void layoutContainer(Container parent) { - if(getHeight() >= leftcontentPane.getPreferredSize().height) { + if(getMaxHeight() >= leftcontentPane.getPreferredSize().height) { scrollBar.setEnabled(false); scrollBar.setVisible(false); } else { @@ -143,7 +153,7 @@ public abstract class BasicScrollPane extends BasicBeanPane{ scrollBar.setEnabled(show); scrollBar.setVisible(show); } - maxheight = getHeight() - DET_HEIGHT; + maxheight = getMaxHeight() - DET_HEIGHT; if ((MAXVALUE - scrollBar.getVisibleAmount()) == 0) { beginY = 0; } else { diff --git a/designer-base/src/main/java/com/fr/design/dialog/FineJOptionPane.java b/designer-base/src/main/java/com/fr/design/dialog/FineJOptionPane.java index a5f890de6d..387dafec02 100644 --- a/designer-base/src/main/java/com/fr/design/dialog/FineJOptionPane.java +++ b/designer-base/src/main/java/com/fr/design/dialog/FineJOptionPane.java @@ -1,5 +1,6 @@ package com.fr.design.dialog; +import com.fine.theme.icon.LazyIcon; import com.fr.invoke.Reflect; import com.fr.stable.StringUtils; @@ -31,6 +32,8 @@ public class FineJOptionPane extends JOptionPane { //选项类型optionType 和 选项字符串数组 一一对应 private final static Map OPTION_MAP = new HashMap<>(); + public Icon successMessageIcon; + static { OPTION_MAP.put(DEFAULT_OPTION, OPTION_DEFAULT); OPTION_MAP.put(YES_NO_OPTION, OPTION_YES_NO); @@ -42,6 +45,17 @@ public class FineJOptionPane extends JOptionPane { private final static String CONFIRM_DIALOG_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dialog_Prompt"); private final static String INPUT_DIALOG_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tool_Tips"); + public FineJOptionPane(Object message, int messageType, int optionType, + Icon icon, Object[] options, Object initialValue, + boolean successMessage) { + super(message, messageType, optionType, icon, options, initialValue); + if (successMessage) { + successMessageIcon = new LazyIcon("success", 20); + } + } + + + /** * 使用默认 标题 和 消息类型 的消息提示弹出框 * @param parentComponent 父容器 @@ -54,6 +68,34 @@ public class FineJOptionPane extends JOptionPane { INFORMATION_MESSAGE); } + /** + * 使用 success 图标、 默认 标题 和 消息类型 的消息提示弹出框 + * @param parentComponent 父容器 + * @param message 具体的提示消息 + * @throws HeadlessException + */ + public static void showSuccessMessageDialog(Component parentComponent, Object message) + throws HeadlessException { + showMessageDialog(parentComponent, message, MESSAGE_DIALOG_TITLE, INFORMATION_MESSAGE, true); + } + + + /** + * 使用默认 标题 和 消息类型 的消息提示弹出框 + * @param parentComponent 父容器 + * @param message 具体的提示消息 + * @param title 标题 + * @param messageType 消息类型 + * @param isSuccessMessage 是否使用 success 图标,如果不是则根据消息类型生成图标 + * @throws HeadlessException + */ + public static void showMessageDialog(Component parentComponent, Object message, + String title, int messageType, boolean isSuccessMessage) + throws HeadlessException { + showOptionDialog(parentComponent, message, title, DEFAULT_OPTION, + messageType, null, OPTION_DEFAULT, null, isSuccessMessage); + } + /** * 使用默认 Icon 的消息提示弹出框 * @param parentComponent 父容器 @@ -101,7 +143,7 @@ public class FineJOptionPane extends JOptionPane { Icon icon, Object[] options, Object initialValue) throws HeadlessException { showOptionDialog(parentComponent, message, title, optionType, - messageType, icon, options, initialValue); + messageType, icon, options, initialValue, false); } /** @@ -182,7 +224,7 @@ public class FineJOptionPane extends JOptionPane { Object[] options, Object initialValue) throws HeadlessException { return showOptionDialog(parentComponent, message, title, optionType, - messageType, icon, options, initialValue); + messageType, icon, options, initialValue, false); } /** @@ -199,7 +241,7 @@ public class FineJOptionPane extends JOptionPane { String title, Icon icon, Object initialValue, ActionListener listener) throws HeadlessException { int val = showOptionDialog(parentComponent, message, title, JOptionPane.DEFAULT_OPTION, - FineJOptionPane.WARNING_MESSAGE, icon, OPTION_OK_CANCEL, initialValue); + FineJOptionPane.WARNING_MESSAGE, icon, OPTION_OK_CANCEL, initialValue, false); if (val == JOptionPane.OK_OPTION && listener!=null) { listener.actionPerformed(null); } @@ -315,4 +357,71 @@ public class FineJOptionPane extends JOptionPane { return value; } + /** + * 根据 message type 生成 icon + * @return + */ + public Icon getIcon() { + if (successMessageIcon != null) { + return successMessageIcon; + } + switch (messageType) { + case ERROR_MESSAGE: + return new LazyIcon("error", 20); + case WARNING_MESSAGE: + return new LazyIcon("warning", 20); + case INFORMATION_MESSAGE: + return new LazyIcon("information", 20); + case QUESTION_MESSAGE: + return new LazyIcon("question", 20); + default: + return icon; + } + } + + /** + * 自定义的确认弹出框 + * @param parentComponent 父容器 + * @param message 具体的提示消息 + * @param title 标题 + * @param optionType 选项类型 + * @param messageType 消息类型 + * @param icon 图标 + * @param options 选项 + * @param initialValue 初始选项 + * @param isSuccessMessage 是否使用 success 图标 + */ + public static int showOptionDialog(Component parentComponent, Object message, + String title, int optionType, int messageType, + Icon icon, Object[] options, Object initialValue, + boolean isSuccessMessage) { + FineJOptionPane pane = new FineJOptionPane(message, messageType, optionType, icon, options, initialValue, isSuccessMessage); + pane.setInitialValue(initialValue); + pane.setComponentOrientation(((parentComponent == null) ? getRootFrame() : parentComponent).getComponentOrientation()); + + JDialog dialog = pane.createDialog(parentComponent, title); + pane.selectInitialValue(); + dialog.show(); + dialog.dispose(); + + Object selectedValue = pane.getValue(); + + if (selectedValue == null){ + return CLOSED_OPTION; + } + if (options == null) { + if (selectedValue instanceof Integer) { + return ((Integer) selectedValue).intValue(); + } + return CLOSED_OPTION; + } + for(int counter = 0, maxCounter = options.length; + counter < maxCounter; counter++) { + if (options[counter].equals(selectedValue)) { + return counter; + } + } + return CLOSED_OPTION; + } + } diff --git a/designer-base/src/main/java/com/fr/design/dialog/TipDialog.java b/designer-base/src/main/java/com/fr/design/dialog/TipDialog.java index 35f9c3c0fb..7822ee7f0e 100644 --- a/designer-base/src/main/java/com/fr/design/dialog/TipDialog.java +++ b/designer-base/src/main/java/com/fr/design/dialog/TipDialog.java @@ -5,6 +5,7 @@ import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.utils.gui.GUICoreUtils; +import com.fr.design.utils.gui.UIComponentUtils; import com.fr.general.IOUtils; import com.fr.stable.StringUtils; @@ -36,6 +37,7 @@ public abstract class TipDialog extends JDialog implements ActionListener { iconPane.setPreferredSize(new Dimension(50, 50)); JPanel tipPane = FRGUIPaneFactory.createBorderLayout_L_Pane(); UILabel tipLabel = new UILabel(tip); + UIComponentUtils.setLineWrap(tipLabel); tipPane.add(tipLabel); northPane.add(iconPane, BorderLayout.WEST); northPane.add(tipPane, BorderLayout.CENTER); diff --git a/designer-base/src/main/java/com/fr/design/dialog/UIDetailErrorLinkDialog.java b/designer-base/src/main/java/com/fr/design/dialog/UIDetailErrorLinkDialog.java index 24ff7e10c7..ebacf24d5d 100644 --- a/designer-base/src/main/java/com/fr/design/dialog/UIDetailErrorLinkDialog.java +++ b/designer-base/src/main/java/com/fr/design/dialog/UIDetailErrorLinkDialog.java @@ -1,5 +1,9 @@ package com.fr.design.dialog; +import com.fine.theme.icon.LazyIcon; +import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIStyle; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.GraphHelper; import com.fr.design.dialog.link.MessageWithLink; import com.fr.design.gui.ibutton.UIButton; @@ -7,6 +11,7 @@ import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextarea.UITextArea; import com.fr.design.i18n.Toolkit; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.utils.DesignUtils; import com.fr.design.utils.gui.GUICoreUtils; import com.fr.general.IOUtils; @@ -30,6 +35,11 @@ import javax.swing.JComponent; import javax.swing.JPanel; import javax.swing.SwingUtilities; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.column; +import static com.fine.swing.ui.layout.Layouts.fix; +import static com.fine.swing.ui.layout.Layouts.row; + /** * 带链接的错误详情弹窗 * @@ -40,13 +50,13 @@ import javax.swing.SwingUtilities; public class UIDetailErrorLinkDialog extends UIDialog { private static final Color LINK_COLOR = new Color(51, 152, 253); - private static final int GAP_5 = 5; + private static final int GAP_8 = 8; private static final int GAP_10 = 10; private static final String TAG_A_START = ""; private static final String TAG_A_END = ""; private static final double SCALE = 1.2; - private final Dimension dimension = new Dimension(300, 180); + private final Dimension dimension = new Dimension(360, 200); public static Builder newBuilder() { return new Builder(); @@ -65,15 +75,12 @@ public class UIDetailErrorLinkDialog extends UIDialog { private void init(Builder builder) { this.setTitle(builder.title); // 顶部 图标和提示 - UILabel errorIcon = new UILabel(IOUtils.readIcon("com/fr/design/images/lookandfeel/Information_Icon_Error_32x32.png")); + UILabel errorIcon = new UILabel(new LazyIcon("error", 20)); UILabel errorInfo= new UILabel(builder.reason); - JPanel topPane = new JPanel(new FlowLayout(FlowLayout.LEFT, GAP_10, GAP_5)); - topPane.add(errorIcon); - topPane.add(errorInfo); + FineUIStyle.setStyle(errorInfo, FineUIStyle.LABEL_TIP_WINDOW_TITLE); // 中部 详细内容 - JPanel contentPane = new JPanel(new BorderLayout()); - contentPane.setBorder(BorderFactory.createEmptyBorder(0, GAP_5,0,0)); + JPanel contentPane = new JPanel(FRGUIPaneFactory.createScaledBorderLayout(GAP_10, GAP_10)); UILabel errorCodeLabel = new UILabel(Toolkit.i18nText("Fine_Design_Basic_Error_Code", builder.errorCode)); UILabel link = new UILabel(Toolkit.i18nText("Fine_Design_Basic_Show_Error_Stack")); link.setForeground(LINK_COLOR); @@ -92,13 +99,19 @@ public class UIDetailErrorLinkDialog extends UIDialog { contentPane.add(link, BorderLayout.SOUTH); // 确定 + 取消 - JPanel actionPane = new JPanel(new FlowLayout(FlowLayout.RIGHT, GAP_10, GAP_5)); - actionPane.add(createButton(Toolkit.i18nText("Fine-Design_Report_OK"))); + JPanel actionPane = new JPanel(new FlowLayout(FlowLayout.RIGHT, GAP_8, GAP_10)); + UIButton okButton = createButton(Toolkit.i18nText("Fine-Design_Report_OK")); + FineUIStyle.setStyle(okButton, FineUIStyle.STYLE_PRIMARY); + actionPane.add(okButton); actionPane.add(createButton(Toolkit.i18nText("Fine-Design_Basic_Cancel"))); - this.getContentPane().add(topPane, BorderLayout.NORTH); - this.getContentPane().add(contentPane, BorderLayout.CENTER); + + this.getContentPane().add(column(10, + row(10, cell(errorIcon), cell(errorInfo)), + row(10, fix(20), cell(contentPane)) + ).with(it -> it.setBorder(new ScaledEmptyBorder(GAP_10, GAP_10, GAP_10, GAP_10))).getComponent()); + this.getContentPane().add(actionPane, BorderLayout.SOUTH); - this.setSize(dimension); + this.setSize(FineUIScale.scale(dimension)); this.setResizable(false); this.setModal(true); GUICoreUtils.centerWindow(this); diff --git a/designer-base/src/main/java/com/fr/design/editlock/EditLockUtils.java b/designer-base/src/main/java/com/fr/design/editlock/EditLockUtils.java index 87ca587f5f..c988f2a711 100644 --- a/designer-base/src/main/java/com/fr/design/editlock/EditLockUtils.java +++ b/designer-base/src/main/java/com/fr/design/editlock/EditLockUtils.java @@ -1,13 +1,10 @@ package com.fr.design.editlock; -import com.fr.base.svg.IconUtils; +import com.fine.theme.icon.LazyIcon; import com.fr.base.svg.SVGLoader; import com.fr.design.dialog.FineJOptionPane; import com.fr.design.i18n.Toolkit; import com.fr.design.mainframe.DesignerContext; -import com.fr.general.IOUtils; -import com.fr.workspace.WorkContext; -import com.fr.workspace.server.lock.editlock.EditLockOperator; import com.fr.report.LockItem; import com.fr.workspace.server.repository.connection.ConnectionRepository; import com.fr.workspace.server.repository.tabledata.TableDataRepository; @@ -30,7 +27,7 @@ public class EditLockUtils { /** * 数据连接锁定标志 */ - public static final Icon CONNECTION_LOCKED_ICON = IconUtils.readIcon("/com/fr/design/images/m_web/connection_locked"); + public static final Icon CONNECTION_LOCKED_ICON = new LazyIcon("connection_locked"); /** * 小锁图片 @@ -40,7 +37,7 @@ public class EditLockUtils { /** * 提示弹窗中的提示标志 */ - public static final Icon TOOLTIPS_ICON = IOUtils.readIcon("/com/fr/design/images/m_web/warningIcon.png"); + public static final Icon TOOLTIPS_ICON = new LazyIcon("warning"); /** * 数据连接锁定中 diff --git a/designer-base/src/main/java/com/fr/design/editor/ValueEditorPane.java b/designer-base/src/main/java/com/fr/design/editor/ValueEditorPane.java index 5822570e1a..cbfe35b0ff 100644 --- a/designer-base/src/main/java/com/fr/design/editor/ValueEditorPane.java +++ b/designer-base/src/main/java/com/fr/design/editor/ValueEditorPane.java @@ -58,7 +58,7 @@ public class ValueEditorPane extends BasicPane implements UIObserver, GlobalName } public ValueEditorPane(Editor[] cards, String popupName, String textEditorValue) { - initComponents(cards, popupName, textEditorValue, 200); + initComponents(cards, popupName, textEditorValue, FineUIScale.scale(200)); } public ValueEditorPane(Editor[] cards, String popupName, String textEditorValue, int centerPaneWidth) { diff --git a/designer-base/src/main/java/com/fr/design/editor/editor/ColumnSelectedEditor.java b/designer-base/src/main/java/com/fr/design/editor/editor/ColumnSelectedEditor.java index e6ffbadd66..250e32748d 100644 --- a/designer-base/src/main/java/com/fr/design/editor/editor/ColumnSelectedEditor.java +++ b/designer-base/src/main/java/com/fr/design/editor/editor/ColumnSelectedEditor.java @@ -1,5 +1,6 @@ package com.fr.design.editor.editor; +import com.fr.design.constants.LayoutConstants; import com.fr.design.data.DesignTableDataManager; import com.fr.data.SimpleDSColumn; import com.fr.design.data.datapane.TableDataComboBox; @@ -18,6 +19,7 @@ import java.util.regex.Pattern; import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.row; +import static com.fine.swing.ui.layout.Layouts.fix; /** * 选择数据列编辑器 @@ -54,7 +56,7 @@ public class ColumnSelectedEditor extends Editor implements Prep } }); columnNameComboBox = new UIComboBox(); - this.add(row(10, cell(tableDataComboBox), cell(columnNameComboBox)).getComponent()); + this.add(row(cell(tableDataComboBox).weight(1), fix(LayoutConstants.HGAP_LARGE),cell(columnNameComboBox).weight(1)).getComponent()); } @Override diff --git a/designer-base/src/main/java/com/fr/design/editor/editor/CursorEditor.java b/designer-base/src/main/java/com/fr/design/editor/editor/CursorEditor.java index d8997a5556..caf4fc4893 100644 --- a/designer-base/src/main/java/com/fr/design/editor/editor/CursorEditor.java +++ b/designer-base/src/main/java/com/fr/design/editor/editor/CursorEditor.java @@ -28,6 +28,11 @@ public class CursorEditor extends Editor { return "type_cursor"; } + @Override + public String getIconId() { + return "type_cursor"; + } + @Override public boolean accept(Object object) { return object instanceof CursorEditor ; diff --git a/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java b/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java index 3687735601..47b67e6463 100644 --- a/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java +++ b/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java @@ -4,17 +4,20 @@ import com.fanruan.workplace.http.HttpConstants; import com.fanruan.workplace.http.HttpServiceMap; import com.fanruan.workplace.http.RepositoryManager; import com.fanruan.workplace.http.info.Stub; -import com.fr.log.FineLoggerFactory; -import com.fr.stable.StringUtils; -import com.fr.workspace.server.repository.authority.RemoteAuthorityRepository; -import com.fr.workspace.server.repository.compatible.register.CompatibleRegister; -import com.fr.workspace.server.repository.connect.FineWorkspaceHttpClient; +import com.fanruan.workplace.network.RemoteNetworkRepository; import com.fr.decision.webservice.bean.authentication.LoginRequestInfoBean; import com.fr.decision.webservice.bean.authentication.LoginResponseInfoBean; +import com.fr.stable.StringUtils; import com.fr.workspace.connect.WorkspaceClient; import com.fr.workspace.connect.WorkspaceConnection; import com.fr.workspace.connect.WorkspaceConnectionInfo; import com.fr.workspace.connect.WorkspaceConnector; +import com.fr.workspace.engine.exception.RemoteDesignConnectionException; +import com.fr.workspace.engine.exception.RemoteDesignNoAuthException; +import com.fr.workspace.server.repository.authority.RemoteAuthorityRepository; +import com.fr.workspace.server.repository.authority.RemoteAuthoritySource; +import com.fr.workspace.server.repository.compatible.register.CompatibleRegister; +import com.fr.workspace.server.repository.connect.FineWorkspaceHttpClient; import java.net.InetAddress; import java.util.Map; @@ -41,37 +44,20 @@ public class HttpWorkspaceConnector implements WorkspaceConnector { @Override public boolean testConnection(WorkspaceConnectionInfo connectionInfo) throws Exception { FineWorkspaceHttpClient client = FineWorkspaceHttpClient.create("Http-Client", connectionInfo); - LoginResponseInfoBean bean; try { - bean = RemoteAuthorityRepository.getInstance().login(createLoginBean(connectionInfo)); + return testConnect(client, connectionInfo); } finally { client.closePool(); } - - return StringUtils.isNotEmpty(bean.getAccessToken()); } @Override public WorkspaceClient connect(WorkspaceConnectionInfo connectionInfo) throws Exception { FineWorkspaceHttpClient client = FineWorkspaceHttpClient.create("Http-Client", connectionInfo); try { - for (Map.Entry> entry : HttpServiceMap.getInstance().entrySet()) { - Stub stub = entry.getValue(); - stub.clearProxy(); + if (testConnect(client, connectionInfo)) { + client.connect(); } - LoginResponseInfoBean bean = RemoteAuthorityRepository.getInstance().login(createLoginBean(connectionInfo)); - // 服务器如果没返回token,肯定是出问题了,直接抛出异常 - if (StringUtils.isEmpty(bean.getAccessToken())) { - throw new RuntimeException("Empty token, try connect again and check server"); - } - FineLoggerFactory.getLogger().info("[connector] infos:{}", bean.getAccessToken()); - WorkspaceConnection connection = new WorkspaceConnection( - UUID.randomUUID().toString(), - connectionInfo.getUserName(), - HttpConstants.AUTHORIZATION_PREFIX + bean.getAccessToken(), - InetAddress.getLocalHost().getHostAddress()); - client.updateConnection(connection); - client.startHeartBeat(); } catch (Exception e) { client.closePool(); throw e; @@ -81,12 +67,38 @@ public class HttpWorkspaceConnector implements WorkspaceConnector { return client; } - private LoginRequestInfoBean createLoginBean(WorkspaceConnectionInfo connectionInfo) { + private boolean testConnect(FineWorkspaceHttpClient client, WorkspaceConnectionInfo connectionInfo) throws Exception { + for (Map.Entry> entry : HttpServiceMap.getInstance().entrySet()) { + Stub stub = entry.getValue(); + stub.clearProxy(); + } + Map loginConfigMap = RemoteAuthorityRepository.getInstance().getLoginConfigMap(); + long timeout = Long.parseLong(String.valueOf(loginConfigMap.get(RemoteAuthoritySource.LOGIN_TIMEOUT))); + boolean rememberLogin = (boolean) loginConfigMap.get(RemoteAuthoritySource.SUPPORT_REMEMBER_LOGIN); + LoginResponseInfoBean bean = RemoteAuthorityRepository.getInstance().login(createLoginBean(connectionInfo, rememberLogin)); + WorkspaceConnection connection = new WorkspaceConnection( + UUID.randomUUID().toString(), + connectionInfo.getUserName(), + HttpConstants.AUTHORIZATION_PREFIX + bean.getAccessToken(), + InetAddress.getLocalHost().getHostAddress()); + client.updateConnection(connection); + client.setRememberLogin(rememberLogin); + client.setTimeout(timeout); + try { + return RemoteNetworkRepository.getInstance().testConnect(); + } catch (RemoteDesignNoAuthException e) { + throw e; + } catch (Exception e) { + throw new RemoteDesignConnectionException(e, StringUtils.EMPTY); + } + } + + private LoginRequestInfoBean createLoginBean(WorkspaceConnectionInfo connectionInfo, boolean rememberLogin) { LoginRequestInfoBean bean = new LoginRequestInfoBean(); bean.setUsername(connectionInfo.getUserName()); bean.setPassword(connectionInfo.getPassword()); bean.setEncrypted(false); - bean.setValidity(-2); + bean.setValidity(rememberLogin ? -2 : -1); return bean; } } \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/env/RemoteWorkspace.java b/designer-base/src/main/java/com/fr/design/env/RemoteWorkspace.java index ca070219e5..177ff86931 100644 --- a/designer-base/src/main/java/com/fr/design/env/RemoteWorkspace.java +++ b/designer-base/src/main/java/com/fr/design/env/RemoteWorkspace.java @@ -13,6 +13,7 @@ import com.fr.workspace.connect.WorkspaceConnection; import com.fr.workspace.connect.WorkspaceConnectionInfo; import com.fr.workspace.server.authority.decision.DecisionOperator; import com.fr.workspace.pool.WorkObjectPool; +import com.fr.workspace.server.repository.WorkplaceConstants; import com.fr.workspace.server.repository.authority.RemoteAuthorityRepository; import javax.swing.SwingWorker; @@ -80,7 +81,7 @@ public class RemoteWorkspace implements Workspace { if (isRoot == null) { synchronized (this) { if (isRoot == null) { - isRoot = RemoteAuthorityRepository.getInstance().isRoot(getConnection().getUserName()); + isRoot = WorkplaceConstants.isRoot(); } } } diff --git a/designer-base/src/main/java/com/fr/design/extra/LoginDialog.java b/designer-base/src/main/java/com/fr/design/extra/LoginDialog.java deleted file mode 100644 index 8fbb2d2a5d..0000000000 --- a/designer-base/src/main/java/com/fr/design/extra/LoginDialog.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.fr.design.extra; - -import com.fr.design.dialog.UIDialog; -import com.fr.design.utils.gui.GUICoreUtils; -import com.fr.stable.StableUtils; - -import javax.swing.*; -import java.awt.*; - -/** - * Created by vito on 2017/5/5. - */ -public class LoginDialog extends UIDialog { - private static final Dimension DEFAULT_SHOP = new Dimension(401, 301); - - public LoginDialog(Frame frame, Component pane) { - super(frame); - init(pane); - } - - public LoginDialog(Dialog dialog, Component pane) { - super(dialog); - init(pane); - } - - private void init(Component pane) { - if (StableUtils.getMajorJavaVersion() >= 8) { - setUndecorated(true); - } - JPanel panel = (JPanel) getContentPane(); - panel.setLayout(new BorderLayout()); - add(pane, BorderLayout.CENTER); - setSize(DEFAULT_SHOP); - GUICoreUtils.centerWindow(this); - setResizable(false); - } - - @Override - public void checkValid() throws Exception { - // do nothing - } -} diff --git a/designer-base/src/main/java/com/fr/design/extra/LoginWebBridge.java b/designer-base/src/main/java/com/fr/design/extra/LoginWebBridge.java deleted file mode 100644 index 212cf2cae7..0000000000 --- a/designer-base/src/main/java/com/fr/design/extra/LoginWebBridge.java +++ /dev/null @@ -1,200 +0,0 @@ -package com.fr.design.extra; - -import com.fanruan.carina.Carina; -import com.fanruan.cloud.FanruanCloud; -import com.fanruan.config.bbs.FineBBSConfigProvider; -import com.fr.concurrent.NamedThreadFactory; -import com.fr.design.DesignerEnvManager; -import com.fr.design.dialog.UIDialog; -import com.fr.design.extra.exe.PluginLoginExecutor; -import com.fr.design.gui.ilable.UILabel; -import com.fr.design.locale.impl.BbsRegisterMark; -import com.fr.design.locale.impl.BbsResetMark; -import com.fr.design.login.service.DesignerLoginClient; -import com.fr.design.login.service.DesignerLoginResult; -import com.fr.general.CloudCenter; -import com.fr.general.http.HttpClient; -import com.fr.general.locale.LocaleCenter; -import com.fr.general.locale.LocaleMark; -import com.fr.log.FineLoggerFactory; -import com.fr.stable.StringUtils; -import javafx.concurrent.Task; -import javafx.scene.web.WebEngine; -import netscape.javascript.JSObject; - -import javax.swing.*; -import java.awt.*; -import java.net.URI; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; - -/** - * @author vito - */ -public class LoginWebBridge { - - //最低消息的条数 - private static final int MIN_MESSAGE_COUNT = 0; - //网络连接失败 - private static final String NET_FAILED = "-4"; - //用户名,密码为空 - private static final String LOGIN_INFO_EMPTY = "-5"; - private static final Color LOGIN_BACKGROUND = new Color(184, 220, 242); - private static LoginWebBridge helper; - //消息条数 - private int messageCount; - private UIDialog uiDialog; - private UIDialog qqDialog; - private UILabel uiLabel; - private WebEngine webEngine; - - private LoginWebBridge() { - } - - public static LoginWebBridge getHelper() { - if (helper != null) { - return helper; - } - synchronized (LoginWebBridge.class) { - if (helper == null) { - helper = new LoginWebBridge(); - } - return helper; - } - } - - public static LoginWebBridge getHelper(WebEngine webEngine) { - getHelper(); - helper.setWebEngine(webEngine); - return helper; - } - - public void setWebEngine(WebEngine webEngine) { - this.webEngine = webEngine; - } - - public int getMessageCount() { - return messageCount; - } - - /** - * 设置获取的消息长度,并设置显示 - * - * @param count - */ - public void setMessageCount(int count) { - if (count == MIN_MESSAGE_COUNT) { - Carina.config(FineBBSConfigProvider.class).setBbsUsername(DesignerEnvManager.getEnvManager().getDesignerLoginUsername()); - return; - } - this.messageCount = count; - StringBuilder sb = new StringBuilder(); - sb.append(StringUtils.BLANK).append(DesignerEnvManager.getEnvManager().getDesignerLoginUsername()) - .append("(").append(this.messageCount) - .append(")").append(StringUtils.BLANK); - Carina.config(FineBBSConfigProvider.class).setBbsUsername(sb.toString()); - } - - public void setQQDialog(UIDialog qqDialog) { - closeQQWindow(); - this.qqDialog = qqDialog; - } - - public void setDialogHandle(UIDialog uiDialog) { - closeWindow(); - this.uiDialog = uiDialog; - } - - public void setUILabel(UILabel uiLabel) { - this.uiLabel = uiLabel; - } - - /** - * 测试论坛网络连接 - * - * @return - */ - private boolean testConnection() { - HttpClient client = new HttpClient(CloudCenter.getInstance().acquireUrlByKind("bbs.test")); - return client.isServerAlive(); - } - - /** - * 注册页面 - */ - public void registerHref() { - try { - LocaleMark registerMark = LocaleCenter.getMark(BbsRegisterMark.class); - Desktop.getDesktop().browse(new URI(registerMark.getValue())); - } catch (Exception e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - } - - /** - * 忘记密码 - */ - public void forgetHref() { - try { - LocaleMark resetMark = LocaleCenter.getMark(BbsResetMark.class); - Desktop.getDesktop().browse(new URI(resetMark.getValue())); - } catch (Exception e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - } - - /** - * 设计器端的用户登录 - * - * @param username 用户名 - * @param password 密码 - * @return 登录信息标志 - */ - public void defaultLogin(String username, String password, final JSObject callback) { - Task task = new PluginTask<>(webEngine, callback, new PluginLoginExecutor(username, password)); - ExecutorService es = Executors.newSingleThreadExecutor(new NamedThreadFactory("bbsDefaultLogin")); - es.submit(task); - es.shutdown(); - } - - /** - * 登录操作 - * - * @param userInfo 登录信息 - * @param password 密码 - * @return 登录信息标志 - */ - public String login(String userInfo, String password) { - DesignerLoginClient client = new DesignerLoginClient(); - DesignerLoginResult result = client.login(userInfo, password); - int uid = result.getUid(); - if (uid > 0) { - closeWindow(); - } - return String.valueOf(uid); - } - - /** - * 关闭窗口 - */ - public void closeWindow() { - if (uiDialog != null) { - uiDialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); - uiDialog.setVisible(false); - } - } - - /** - * 关闭QQ授权窗口 - */ - public void closeQQWindow() { - if (qqDialog != null) { - qqDialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); - qqDialog.setVisible(false); - } - } - - public void openUrlAtLocalWebBrowser(WebEngine eng, String url) { - // do nothing - } -} \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/extra/LoginWebPane.java b/designer-base/src/main/java/com/fr/design/extra/LoginWebPane.java deleted file mode 100644 index d0a155a582..0000000000 --- a/designer-base/src/main/java/com/fr/design/extra/LoginWebPane.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.fr.design.extra; - -import com.fr.design.dialog.FineJOptionPane; -import javafx.application.Platform; -import javafx.embed.swing.JFXPanel; -import javafx.event.EventHandler; -import javafx.scene.Scene; -import javafx.scene.layout.BorderPane; -import javafx.scene.web.WebEngine; -import javafx.scene.web.WebEvent; -import javafx.scene.web.WebView; -import netscape.javascript.JSObject; - -import javax.swing.*; - -/** - * Created by zhaohehe on 16/7/26. - */ -public class LoginWebPane extends JFXPanel { - - public LoginWebPane(final String installHome) { - Platform.setImplicitExit(false); - Platform.runLater(new Runnable() { - @Override - public void run() { - BorderPane root = new BorderPane(); - Scene scene = new Scene(root); - LoginWebPane.this.setScene(scene); - WebView webView = new WebView(); - WebEngine webEngine = webView.getEngine(); - webEngine.load("file:///" + installHome + "/scripts/login.html"); - webEngine.setOnAlert(new EventHandler>() { - @Override - public void handle(WebEvent event) { - showAlert(event.getData()); - } - }); - JSObject obj = (JSObject) webEngine.executeScript("window"); - obj.setMember("LoginHelper", LoginWebBridge.getHelper(webEngine)); - webView.setContextMenuEnabled(false);//屏蔽右键 - root.setCenter(webView); - } - }); - } - - private void showAlert(final String message) { - SwingUtilities.invokeLater(new Runnable() { - @Override - public void run() { - FineJOptionPane.showMessageDialog(LoginWebPane.this, message); - } - }); - } -} diff --git a/designer-base/src/main/java/com/fr/design/extra/PluginOperateUtils.java b/designer-base/src/main/java/com/fr/design/extra/PluginOperateUtils.java index aa506e679f..89110cb256 100644 --- a/designer-base/src/main/java/com/fr/design/extra/PluginOperateUtils.java +++ b/designer-base/src/main/java/com/fr/design/extra/PluginOperateUtils.java @@ -30,13 +30,11 @@ import com.fr.plugin.view.PluginView; import com.fr.plugin.xml.PluginElementName; import com.fr.plugin.xml.PluginXmlElement; import com.fr.stable.StringUtils; -import com.teamdev.jxbrowser.chromium.JSArray; import javax.swing.JOptionPane; import javax.swing.SwingUtilities; import java.io.File; import java.net.HttpURLConnection; -import java.util.ArrayList; import java.util.List; diff --git a/designer-base/src/main/java/com/fr/design/extra/PluginWebBridge.java b/designer-base/src/main/java/com/fr/design/extra/PluginWebBridge.java deleted file mode 100644 index 58b731cf79..0000000000 --- a/designer-base/src/main/java/com/fr/design/extra/PluginWebBridge.java +++ /dev/null @@ -1,601 +0,0 @@ -package com.fr.design.extra; - -import com.fanruan.carina.Carina; -import com.fanruan.cloud.FanruanCloud; -import com.fanruan.config.bbs.FineBBSConfigProvider; -import com.fr.config.MarketConfig; -import com.fr.design.DesignerEnvManager; -import com.fr.design.RestartHelper; -import com.fr.design.bridge.exec.JSCallback; -import com.fr.design.dialog.UIDialog; -import com.fr.design.extra.exe.GetInstalledPluginsExecutor; -import com.fr.design.extra.exe.GetPluginCategoriesExecutor; -import com.fr.design.extra.exe.GetPluginFromStoreExecutor; -import com.fr.design.extra.exe.GetPluginPrefixExecutor; -import com.fr.design.extra.exe.PluginLoginExecutor; -import com.fr.design.extra.exe.ReadUpdateOnlineExecutor; -import com.fr.design.extra.exe.SearchOnlineExecutor; -import com.fr.design.locale.impl.BbsRegisterMark; -import com.fr.design.locale.impl.BbsResetMark; -import com.fr.design.locale.impl.BbsSpaceMark; -import com.fr.design.login.DesignerLoginSource; -import com.fr.design.plugin.DesignerPluginContext; -import com.fr.design.utils.concurrent.ThreadFactoryBuilder; -import com.fr.general.locale.LocaleCenter; -import com.fr.general.locale.LocaleMark; -import com.fr.json.JSONObject; -import com.fr.log.FineLoggerFactory; -import com.fr.plugin.context.PluginMarker; -import com.fr.stable.ArrayUtils; -import com.fr.stable.StringUtils; -import javafx.concurrent.Task; -import javafx.scene.web.WebEngine; -import javafx.stage.FileChooser; -import javafx.stage.Stage; -import netscape.javascript.JSObject; - -import javax.swing.*; -import java.awt.*; -import java.io.File; -import java.io.IOException; -import java.net.URI; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.ThreadPoolExecutor; -import java.util.concurrent.TimeUnit; - -/** - * 开放给Web组件的接口,用于安装,卸载,更新以及更改插件可用状态 - */ -public class PluginWebBridge { - private static final String THREAD_NAME_TEMPLATE = "pluginbridge-thread-%s"; - private static final String ACTION = "action"; - private static final String KEYWORD = "keyword"; - private static final String PLUGIN_INFO = "pluginInfo"; - private static final int COREPOOLSIZE = 3; - private static final int MAXPOOLSIZE = 5; - - private static PluginWebBridge helper; - - private UIDialog uiDialog; - private ACTIONS actions; - - private Map config; - private WebEngine webEngine; - - private ExecutorService threadPoolExecutor = new ThreadPoolExecutor(COREPOOLSIZE, MAXPOOLSIZE, - 0L, TimeUnit.MILLISECONDS, - new LinkedBlockingQueue(COREPOOLSIZE), - new ThreadFactoryBuilder().setNameFormat(THREAD_NAME_TEMPLATE).build()); - - private PluginWebBridge() { - } - - public static PluginWebBridge getHelper() { - if (helper != null) { - return helper; - } - synchronized (PluginWebBridge.class) { - if (helper == null) { - helper = new PluginWebBridge(); - } - return helper; - } - } - - public static PluginWebBridge getHelper(WebEngine webEngine) { - getHelper(); - helper.setEngine(webEngine); - return helper; - } - - /** - * 获取打开动作配置 - * - * @return 配置信息 - */ - public String getRunConfig() { - if (actions != null) { - JSONObject jsonObject = new JSONObject(); - try { - jsonObject.put(ACTION, actions.getContext()); - Set keySet = config.keySet(); - for (String key : keySet) { - jsonObject.put(key, config.get(key).toString()); - } - } catch (Exception e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - return jsonObject.toString(); - } - return StringUtils.EMPTY; - } - - /** - * 配置打开动作 - * - * @param action 动作 - * @param config 参数 - */ - public void setRunConfig(ACTIONS action, Map config) { - this.actions = action; - this.config = config; - } - - /** - * 清楚打开动作 - */ - public void clearRunConfig() { - this.actions = null; - this.config = null; - } - - /** - * 打开时搜索 - * - * @param keyword 关键词 - */ - - public void openWithSearch(String keyword) { - HashMap map = new HashMap(2); - map.put(KEYWORD, keyword); - setRunConfig(ACTIONS.SEARCH, map); - } - - /** - * 根据插件信息跳转到应用中心 - * - * @param keyword - * @param pluginInfo - */ - public void showResultInStore(String keyword, String pluginInfo) { - HashMap map = new HashMap<>(); - map.put(KEYWORD, keyword); - map.put(PLUGIN_INFO, pluginInfo); - setRunConfig(ACTIONS.SHOW_RESULT, map); - } - - public void setEngine(WebEngine webEngine) { - this.webEngine = webEngine; - } - - public void setDialogHandle(UIDialog uiDialog) { - closeWindow(); - this.uiDialog = uiDialog; - } - - /** - * 从插件服务器上安装插件 - * - * @param pluginInfo 插件的ID - * @param callback 回调函数 - */ - public void installPluginOnline(final String pluginInfo, final JSObject callback) { - JSCallback jsCallback = new JSCallback(PluginJavaFxExecutor.create(webEngine, callback)); - PluginMarker pluginMarker = PluginUtils.createPluginMarker(pluginInfo); - PluginOperateUtils.installPluginOnline(pluginMarker, jsCallback); - } - - /** - * 从磁盘上选择插件安装包进行安装 - * - * @param filePath 插件包的路径 - */ - public void installPluginFromDisk(final String filePath, final JSObject callback) { - JSCallback jsCallback = new JSCallback(PluginJavaFxExecutor.create(webEngine, callback)); - File file = new File(filePath); - PluginOperateUtils.installPluginFromDisk(file, jsCallback); - } - - /** - * 卸载当前选中的插件 - * - * @param pluginInfo 插件信息 - */ - public void uninstallPlugin(final String pluginInfo, final boolean isForce, final JSObject callback) { - JSCallback jsCallback = new JSCallback(PluginJavaFxExecutor.create(webEngine, callback)); - PluginOperateUtils.uninstallPlugin(pluginInfo, isForce, jsCallback); - } - - /** - * 从插件服务器上更新选中的插件 - * - * @param pluginIDs 插件集合 - */ - public void updatePluginOnline(JSObject pluginIDs, final JSObject callback) { - JSCallback jsCallback = new JSCallback(PluginJavaFxExecutor.create(webEngine, callback)); - String[] pluginInfos = jsObjectToStringArray(pluginIDs); - List pluginMarkerList = new ArrayList(); - for (int i = 0; i < pluginInfos.length; i++) { - pluginMarkerList.add(PluginUtils.createPluginMarker(pluginInfos[i])); - } - PluginOperateUtils.updatePluginOnline(pluginMarkerList, jsCallback); - } - - /** - * 从磁盘上选择插件安装包进行插件升级 - * - * @param filePath 插件包的路径 - */ - public void updatePluginFromDisk(String filePath, final JSObject callback) { - JSCallback jsCallback = new JSCallback(PluginJavaFxExecutor.create(webEngine, callback)); - File file = new File(filePath); - PluginOperateUtils.updatePluginFromDisk(file, jsCallback); - } - - /** - * 修改选中的插件的活跃状态 - * - * @param pluginID 插件ID - */ - public void setPluginActive(String pluginID, final JSObject callback) { - JSCallback jsCallback = new JSCallback(PluginJavaFxExecutor.create(webEngine, callback)); - PluginOperateUtils.setPluginActive(pluginID, jsCallback); - } - - /** - * 已安装插件检查更新 - */ - public void readUpdateOnline(final JSObject callback) { - Task task = new PluginTask<>(webEngine, callback, new ReadUpdateOnlineExecutor()); - threadPoolExecutor.submit(task); - } - - /** - * 选择文件对话框 - * - * @return 选择的文件的路径 - */ - public String showFileChooser() { - return showFileChooserWithFilter(StringUtils.EMPTY, StringUtils.EMPTY); - } - - /** - * 选择文件对话框 - * - * @param des 过滤文件描述 - * @param filter 文件的后缀 - * @return 选择的文件的路径 - * 这里换用JFileChooser会卡死,不知道为什么 - */ - public String showFileChooserWithFilter(String des, String filter) { - FileChooser fileChooser = new FileChooser(); - - if (StringUtils.isNotEmpty(filter)) { - fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter(des, filter)); - } - - File selectedFile = fileChooser.showOpenDialog(new Stage()); - if (selectedFile == null) { - return null; - } - return selectedFile.getAbsolutePath(); - } - - /** - * 选择文件对话框 - * - * @param des 过滤文件描述 - * @param args 文件的后缀 - * @return 选择的文件的路径 - */ - public String showFileChooserWithFilters(String des, JSObject args) { - FileChooser fileChooser = new FileChooser(); - String[] filters = jsObjectToStringArray(args); - if (ArrayUtils.isNotEmpty(filters)) { - fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter(des, filters)); - } - - File selectedFile = fileChooser.showOpenDialog(new Stage()); - if (selectedFile == null) { - return null; - } - return selectedFile.getAbsolutePath(); - } - - /** - * 获取已经安装的插件的数组 - * - * @return 已安装的插件组成的数组 - */ - public void getInstalledPlugins(final JSObject callback) { - Task task = new PluginTask<>(webEngine, callback, new GetInstalledPluginsExecutor()); - threadPoolExecutor.submit(task); - } - - private String[] jsObjectToStringArray(JSObject obj) { - if (obj == null) { - return ArrayUtils.EMPTY_STRING_ARRAY; - } - int len = (int) obj.getMember("length"); - List list = new ArrayList<>(); - for (int i = 0; i < len; i++) { - list.add(obj.getSlot(i).toString()); - } - return list.toArray(new String[len]); - } - - /** - * 搜索在线插件 - * - * @param keyword 关键字 - */ - public void searchPlugin(String keyword, final JSObject callback) { - Task task = new PluginTask<>(webEngine, callback, new SearchOnlineExecutor(keyword)); - threadPoolExecutor.submit(task); - } - - /** - * 根据条件获取在线插件的 - * - * @param category 分类 - * @param seller 卖家性质 - * @param fee 收费类型 - * @param callback 回调函数 - */ - public void getPluginFromStore(String category, String seller, String fee, final JSObject callback) { - Task task = new PluginTask<>(webEngine, callback, new GetPluginFromStoreExecutor(category, seller, fee, "")); - threadPoolExecutor.submit(task); - } - - /** - * 根据条件获取在线插件 - * - * @param info 插件信息 - * @param callback 回调函数 - */ - public void getPluginFromStoreNew(String info, final JSObject callback) { - try { - Task task = new PluginTask<>(webEngine, callback, new GetPluginFromStoreExecutor(new JSONObject(info))); - threadPoolExecutor.submit(task); - } catch (Exception e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - } - - - public void getPluginPrefix(final JSObject callback) { - Task task = new PluginTask<>(webEngine, callback, new GetPluginPrefixExecutor()); - threadPoolExecutor.submit(task); - } - - /** - * 在线获取插件分类 - * - * @param callback 回调函数 - */ - public void getPluginCategories(final JSObject callback) { - Task task = new PluginTask<>(webEngine, callback, new GetPluginCategoriesExecutor()); - threadPoolExecutor.submit(task); - } - - /** - * 展示一个重启的对话框(少用,莫名其妙会有bug) - * - * @param message 展示的消息 - */ - public void showRestartMessage(String message) { - int rv = JOptionPane.showOptionDialog( - null, - message, - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), - JOptionPane.YES_NO_OPTION, - JOptionPane.INFORMATION_MESSAGE, - null, - new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Restart_Designer"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Restart_Designer_Later")}, - null - ); - if (rv == JOptionPane.OK_OPTION) { - RestartHelper.restart(); - } - } - - /** - * 关闭窗口 - */ - public void closeWindow() { - if (uiDialog != null) { - uiDialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); - uiDialog.setVisible(false); - } - if (uiDialog == DesignerPluginContext.getPluginDialog()) { - DesignerPluginContext.setPluginDialog(null); - } - } - - /** - * 窗口是否无装饰(判断是否使用系统标题栏) - */ - public boolean isCustomTitleBar() { - if (uiDialog != null) { - return uiDialog.isUndecorated(); - } - return false; - } - - /** - * 获取系统登录的用户名 - * - * @param callback - */ - public String getLoginInfo(final JSObject callback) { - registerLoginInfo(callback); - return DesignerEnvManager.getEnvManager().getDesignerLoginUsername(); - } - - /** - * 系统登录注册 - * - * @param callback - */ - public void registerLoginInfo(final JSObject callback) { - JSCallback jsCallback = new JSCallback(PluginJavaFxExecutor.create(webEngine, callback)); - PluginOperateUtils.getLoginInfo(jsCallback); - } - - /** - * 打开论坛消息界面 - */ - public void getPriviteMessage() { - try { - LocaleMark spaceMark = LocaleCenter.getMark(BbsSpaceMark.class); - Desktop.getDesktop().browse(new URI(spaceMark.getValue())); - } catch (Exception exp) { - FineLoggerFactory.getLogger().info(exp.getMessage()); - } - } - - /** - * 打开登录页面 - */ - public void loginContent() { - SwingUtilities.invokeLater(new Runnable() { - @Override - public void run() { - UserLoginContext.fireLoginContextListener(DesignerLoginSource.NORMAL); - } - }); - } - - /** - * 在本地浏览器里打开url - * tips:重载的时候,需要给js调用的方法需要放在前面,否则可能不会被调用(此乃坑) - * 所以最好的是不要重载在js可以访问的接口文件中 - * - * @param url 要打开的地址 - */ - public void openShopUrlAtWebBrowser(String url) { - openUrlAtLocalWebBrowser(webEngine, url); - } - - /** - * 在本地浏览器里打开url - * - * @param eng web引擎 - * @param url 要打开的地址 - */ - public void openUrlAtLocalWebBrowser(WebEngine eng, String url) { - if (Desktop.isDesktopSupported()) { - try { - //创建一个URI实例,注意不是URL - URI uri = URI.create(url); - //获取当前系统桌面扩展 - Desktop desktop = Desktop.getDesktop(); - //判断系统桌面是否支持要执行的功能 - if (desktop.isSupported(Desktop.Action.BROWSE)) { - //获取系统默认浏览器打开链接 - desktop.browse(uri); - } - } catch (NullPointerException e) { - //此为uri为空时抛出异常 - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } catch (IOException e) { - //此为无法获取系统默认浏览器 - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - } - } - - /** - * 注册页面 - */ - public void registerHref() { - try { - LocaleMark registerMark = LocaleCenter.getMark(BbsRegisterMark.class); - Desktop.getDesktop().browse(new URI(registerMark.getValue())); - } catch (Exception e) { - FineLoggerFactory.getLogger().info(e.getMessage()); - } - } - - - /*-------------------------------登录部分的处理----------------------------------*/ - - /** - * 忘记密码 - */ - public void forgetHref() { - try { - LocaleMark resetMark = LocaleCenter.getMark(BbsResetMark.class); - Desktop.getDesktop().browse(new URI(resetMark.getValue())); - } catch (Exception e) { - FineLoggerFactory.getLogger().info(e.getMessage()); - } - } - - /** - * 设计器端的用户登录 - * - * @param username 用户名 - * @param password 密码 - * @return 登录信息标志 - */ - public void defaultLogin(String username, String password, final JSObject callback) { - Task task = new PluginTask<>(webEngine, callback, new PluginLoginExecutor(username, password)); - threadPoolExecutor.submit(task); - } - - /** - * 通过QQ登录后通知登录 - */ - public void ucsynLogin(long uid, String username, String password, final JSONObject callback) { - - } - - /** - * 清除用户信息 - */ - public void clearUserInfo() { - Carina.config(FineBBSConfigProvider.class).setBbsUsername(StringUtils.EMPTY); - } - - public void getPackInfo(final JSObject callback){ - JSCallback jsCallback = new JSCallback(PluginJavaFxExecutor.create(webEngine, callback)); - jsCallback.execute(StringUtils.EMPTY); - } - - /** - * 初始化设计器部分 - */ - public void initExtraDiff(final JSObject callback) { - //todo 初始化设计器其他部分 - } - - - /** - * 国际化(用来做兼容,暂时不删) - */ - public String parseI18(final String key) { - return com.fr.design.i18n.Toolkit.i18nText(key); - } - - - /** - * 是否是在设计器中操作 - */ - public boolean isDesigner() { - return true; - } - - /** - * 动作枚举 - */ - public enum ACTIONS { - SEARCH("search"), SHOW_RESULT("showResult"); - private String context; - - ACTIONS(String context) { - this.context = context; - } - - public String getContext() { - return context; - } - } - -} diff --git a/designer-base/src/main/java/com/fr/design/extra/PluginWebPane.java b/designer-base/src/main/java/com/fr/design/extra/PluginWebPane.java deleted file mode 100644 index 002ac88bf1..0000000000 --- a/designer-base/src/main/java/com/fr/design/extra/PluginWebPane.java +++ /dev/null @@ -1,112 +0,0 @@ -package com.fr.design.extra; - -import com.fr.base.TemplateUtils; -import com.fr.design.dialog.FineJOptionPane; -import com.fr.general.GeneralContext; -import com.fr.general.IOUtils; -import com.fr.log.FineLoggerFactory; -import com.fr.stable.EncodeConstants; -import com.fr.stable.StableUtils; -import com.fr.stable.StringUtils; -import javafx.application.Platform; -import javafx.embed.swing.JFXPanel; -import javafx.event.EventHandler; -import javafx.scene.Scene; -import javafx.scene.layout.BorderPane; -import javafx.scene.web.WebEngine; -import javafx.scene.web.WebEvent; -import javafx.scene.web.WebView; -import netscape.javascript.JSObject; - -import javax.swing.JOptionPane; -import javax.swing.SwingUtilities; -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.net.URLEncoder; -import java.util.HashMap; -import java.util.Map; - -/** - * Created by richie on 16/3/19. - */ -public class PluginWebPane extends JFXPanel { - private static final String RESOURCE_URL = "resourceURL"; - private static final String LANGUAGE = "language"; - private static final String URL_PLUS = "+"; - private static final String URL_SPACING = "%20"; - private static final String URL_PREFIX = "file:///"; - private WebEngine webEngine; - - public PluginWebPane(final String installHome, final String mainJs) { - Platform.setImplicitExit(false); - Platform.runLater(new Runnable() { - @Override - public void run() { - BorderPane root = new BorderPane(); - Scene scene = new Scene(root); - PluginWebPane.this.setScene(scene); - WebView webView = new WebView(); - webEngine = webView.getEngine(); - try{ - String htmlString = getRenderedHtml(installHome, mainJs); - webEngine.loadContent(htmlString); - webEngine.setOnAlert(new EventHandler>() { - @Override - public void handle(WebEvent event) { - showAlert(event.getData()); - } - }); - JSObject obj = (JSObject) webEngine.executeScript("window"); - obj.setMember("PluginHelper", PluginWebBridge.getHelper(webEngine)); - webView.setContextMenuEnabled(false);//屏蔽右键 - root.setCenter(webView); - }catch (Exception e){ - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - - } - }); - } - - private String getRenderedHtml(String installHome, String mainJs) throws IOException { - InputStream inp = IOUtils.readResource(StableUtils.pathJoin(installHome, mainJs)); - if (inp == null) { - throw new IOException("Not found template: " + mainJs); - } - BufferedReader reader = new BufferedReader(new InputStreamReader(inp, StableUtils.RESOURCE_ENCODER)); - BufferedReader read = new BufferedReader(reader); - StringBuffer sb = new StringBuffer(); - String line; - Map map4Tpl = new HashMap(); - //URL中关于空格的编码与空格所在位置相关:空格被编码成+的情况只能在查询字符串部分出现,而被编码成%20则可以出现在路径和查询字符串中 - //URLEncoder会将空格转成+,这边需要+转成%20 - map4Tpl.put(RESOURCE_URL, URL_PREFIX + URLEncoder.encode(installHome, EncodeConstants.ENCODING_UTF_8).replace(URL_PLUS, URL_SPACING)); - map4Tpl.put(LANGUAGE, GeneralContext.getLocale().toString()); - while ((line = read.readLine()) != null) { - if (sb.length() > 0) { - sb.append('\n'); - } - sb.append(line); - } - String htmlString = StringUtils.EMPTY; - try{ - htmlString = TemplateUtils.renderParameter4Tpl(sb.toString(), map4Tpl); - }catch (Exception e){ - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - reader.close(); - inp.close(); - return htmlString; - } - - private void showAlert(final String message) { - SwingUtilities.invokeLater(new Runnable() { - @Override - public void run() { - FineJOptionPane.showMessageDialog(PluginWebPane.this, message); - } - }); - } -} diff --git a/designer-base/src/main/java/com/fr/design/extra/QQLoginDialog.java b/designer-base/src/main/java/com/fr/design/extra/QQLoginDialog.java deleted file mode 100644 index 3ba60054f2..0000000000 --- a/designer-base/src/main/java/com/fr/design/extra/QQLoginDialog.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.fr.design.extra; - -import com.fr.design.dialog.UIDialog; -import com.fr.design.utils.gui.GUICoreUtils; - -import javax.swing.*; -import java.awt.*; - -/** - * Created by zhaohehe on 16/7/28. - */ -public class QQLoginDialog extends UIDialog { - private static final Dimension DEFAULT_SHOP = new Dimension(700, 500); - - public QQLoginDialog(Frame frame, Component pane) { - super(frame); - setUndecorated(true); - JPanel panel = (JPanel) getContentPane(); - panel.setLayout(new BorderLayout()); - add(pane, BorderLayout.CENTER); - setSize(DEFAULT_SHOP); - GUICoreUtils.centerWindow(this); - setResizable(false); - setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Manager")); - } - - @Override - public void checkValid() throws Exception { - // do nothing - } - -} \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/extra/ShopDialog.java b/designer-base/src/main/java/com/fr/design/extra/ShopDialog.java deleted file mode 100644 index fed3179894..0000000000 --- a/designer-base/src/main/java/com/fr/design/extra/ShopDialog.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.fr.design.extra; - -import com.fr.design.dialog.BasicPane; -import com.fr.design.dialog.UIDialog; -import com.fr.design.jdk.JdkVersion; -import com.fr.design.plugin.DesignerPluginContext; -import com.fr.design.utils.gui.GUICoreUtils; -import com.fr.stable.StableUtils; - -import javax.swing.*; -import java.awt.*; - -/** - * Created by vito on 16/4/18. - */ -public class ShopDialog extends UIDialog { - - public ShopDialog(Frame frame, BasicPane pane) { - super(frame); - if (StableUtils.getMajorJavaVersion() >= 8) { - setUndecorated(true); - } - JPanel panel = (JPanel) getContentPane(); - panel.setLayout(new BorderLayout()); - add(pane, BorderLayout.CENTER); - setSize(createDefaultDimension()); - GUICoreUtils.centerWindow(this); - setResizable(false); - DesignerPluginContext.setPluginDialog(this); - } - - private Dimension createDefaultDimension() { - Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); - // jdk11 分辨率较低 缩放较大时 屏幕高度小于或接近设定的高度 需要调整下 - if (JdkVersion.GE_9.support() && screenSize.height - 700 < 50) { - return new Dimension(900, screenSize.height - 100); - } else { - return new Dimension(900, 700); - } - } - - @Override - public void checkValid() throws Exception { - // do nothing - } -} diff --git a/designer-base/src/main/java/com/fr/design/extra/ShopManagerPane.java b/designer-base/src/main/java/com/fr/design/extra/ShopManagerPane.java deleted file mode 100644 index c7d0894f95..0000000000 --- a/designer-base/src/main/java/com/fr/design/extra/ShopManagerPane.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.fr.design.extra; - -import com.fr.design.dialog.BasicPane; - - -import java.awt.BorderLayout; -import java.awt.Component; - -/** - * @author richie - * @date 2015-03-09 - * @since 8.0 - * 应用中心的构建采用JavaScript代码来动态实现,但是不总是依赖于服务器端的HTML - * 采用JDK提供的JavaScript引擎,实际是用JavaScript语法实现Java端的功能,并通过JavaScript引擎动态调用 - * JavaScript放在安装目录下的scripts/store目录下,检测到新版本的时候,可以通过更新这个目录下的文件实现热更新 - * 不直接嵌入WebView组件的原因是什么呢? - * 因为如果直接嵌入WebView,和设计器的交互就需要预先设定好,这样灵活性会差很多,而如果使用JavaScript引擎, - * 就可以直接在JavaScript中和WebView组件做交互,而同时JavaScript中可以调用任何的设计器API. - */ -public class ShopManagerPane extends BasicPane { - - public ShopManagerPane(Component webPane) { - setLayout(new BorderLayout()); - add(webPane, BorderLayout.CENTER); - } - - @Override - protected String title4PopupWindow() { - return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Manager"); - } -} \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/extra/ShopPaneConfig.java b/designer-base/src/main/java/com/fr/design/extra/ShopPaneConfig.java deleted file mode 100644 index 9d265168db..0000000000 --- a/designer-base/src/main/java/com/fr/design/extra/ShopPaneConfig.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.fr.design.extra; - -import javafx.embed.swing.JFXPanel; - -/** - * Created by vito on 2016/9/28. - */ -public abstract class ShopPaneConfig { - private String mainJS; - private String scriptsId; - private JFXPanel webPane; - - public ShopPaneConfig() { - this.mainJS = setMainJS(); - this.scriptsId = setScriptsId(); - this.webPane = setWebPane(); - } - - abstract String setMainJS(); - - abstract String setScriptsId(); - - abstract JFXPanel setWebPane(); - - public String getMainJS() { - return mainJS; - } - - public String getScriptsId() { - return scriptsId; - } - - public JFXPanel getWebPane() { - return webPane; - } -} diff --git a/designer-base/src/main/java/com/fr/design/extra/WebViewDlgHelper.java b/designer-base/src/main/java/com/fr/design/extra/WebViewDlgHelper.java deleted file mode 100644 index 97e99f22b3..0000000000 --- a/designer-base/src/main/java/com/fr/design/extra/WebViewDlgHelper.java +++ /dev/null @@ -1,307 +0,0 @@ -package com.fr.design.extra; - -import com.fr.design.dialog.BasicPane; -import com.fr.design.dialog.FineJOptionPane; -import com.fr.design.dialog.UIDialog; -import com.fr.design.gui.frpane.UITabbedPane; -import com.fr.design.login.utils.DesignerLoginUtils; -import com.fr.design.mainframe.DesignerContext; -import com.fr.general.CloudCenter; -import com.fr.general.CommonIOUtils; -import com.fr.general.ComparatorUtils; -import com.fr.general.GeneralContext; -import com.fr.general.IOUtils; -import com.fr.general.http.HttpToolbox; -import com.fr.json.JSONObject; -import com.fr.log.FineLoggerFactory; -import com.fr.plugin.PluginStoreConfig; -import com.fr.plugin.PluginStoreConstants; -import com.fr.stable.CommonUtils; -import com.fr.stable.EnvChangedListener; -import com.fanruan.product.ProductConstants; -import com.fr.stable.StableUtils; - -import javax.swing.JOptionPane; -import javax.swing.SwingWorker; -import java.awt.BorderLayout; -import java.awt.Component; -import java.awt.Dialog; -import java.awt.Frame; -import java.awt.Window; -import java.io.File; -import java.io.IOException; -import java.lang.reflect.Constructor; -import java.util.concurrent.ExecutionException; - -/** - * 在合适的 jre 环境下创建带有 WebView 的窗口 - * - * @author vito - * @date 2016/9/28 - */ -public class WebViewDlgHelper { - private static final String LATEST = "latest"; - private static final String SHOP_SCRIPTS = "shop_scripts"; - private static final int VERSION_8 = 8; - private static String installHome = PluginStoreConstants.getLocalInstallHome(); - private static final String MAIN_JS_PATH = "/scripts/plugin.html"; - - static { - GeneralContext.addEnvChangedListener(new EnvChangedListener() { - @Override - public void envChanged() { - installHome = PluginStoreConstants.getLocalInstallHome(); - } - }); - } - - public static void createPluginDialog() { - if (StableUtils.getMajorJavaVersion() >= VERSION_8) { - String mainJsPath = StableUtils.pathJoin(installHome, MAIN_JS_PATH); - File file = new File(mainJsPath); - if (!file.exists()) { - int rv = FineJOptionPane.showConfirmDialog( - null, - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Shop_Need_Install"), - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), - JOptionPane.OK_CANCEL_OPTION, - JOptionPane.INFORMATION_MESSAGE - ); - if (rv == JOptionPane.OK_OPTION) { - downloadShopScripts(SHOP_SCRIPTS); - } - return; - } - // 检测更新前先刷新一下版本号 - PluginStoreConstants.refreshProps(); - - String jarVersion = PluginStoreConfig.getInstance().getEnvVersion(); - if (ComparatorUtils.equals(jarVersion, ProductConstants.VERSION)) { - updateShopScripts(SHOP_SCRIPTS); - showPluginDlg(); - } else { - int rv = FineJOptionPane.showConfirmDialog( - null, - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Shop_Need_Install_Version"), - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), - JOptionPane.OK_CANCEL_OPTION, - JOptionPane.INFORMATION_MESSAGE - ); - if (rv == JOptionPane.OK_OPTION) { - downloadShopScripts(SHOP_SCRIPTS); - deleteExtraFile(StableUtils.pathJoin(installHome, "plugin.html")); - } - } - - } else { - BasicPane traditionalStorePane = new BasicPane() { - @Override - protected String title4PopupWindow() { - return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Manager"); - } - }; - traditionalStorePane.setLayout(new BorderLayout()); - traditionalStorePane.add(initTraditionalStore(), BorderLayout.CENTER); - UIDialog dlg = new ShopDialog(DesignerContext.getDesignerFrame(), traditionalStorePane); - dlg.setVisible(true); - } - } - - /** - * 检查script文件夹中的plugin.html文件 - */ - public static void checkAndCopyMainFile(String indexPath, String mainJsPath) { - File file = new File(indexPath); - if (!file.exists()) { - copyMainFile(mainJsPath); - } - } - - /** - * 將script文件夹中的plugin.html文件复制到webreport下 - */ - private static void copyMainFile(String mainJsPath) { - try { - CommonIOUtils.copy(new File(mainJsPath), new File(installHome)); - } catch (IOException e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - } - - - /** - * 删除9.0工程下无用的plugin.html文件 - * - * @param filePath 待删除文件路径 - */ - private static void deleteExtraFile(String filePath) { - CommonIOUtils.deleteFile(new File(filePath)); - } - - /** - * 以关键词打开设计器商店 - * - * @param keyword 关键词 - */ - public static void createPluginDialog(String keyword) { - PluginWebBridge.getHelper().openWithSearch(keyword); - createPluginDialog(); - } - - /** - * 以关键词打开设计器商店显示搜索结果 - * - * @param keyword - * @param data - */ - @Deprecated - public static void showPluginInStore(String keyword, String data) { - PluginWebBridge.getHelper().showResultInStore(keyword, data); - createPluginDialog(); - } - - public static void createLoginDialog() { - if (StableUtils.getMajorJavaVersion() >= VERSION_8) { - File file = new File(StableUtils.pathJoin(installHome, "scripts")); - if (!file.exists()) { - confirmDownLoadShopJS(); - } else { - showLoginDlg(DesignerContext.getDesignerFrame()); - updateShopScripts(SHOP_SCRIPTS); - } - } - } - - - public static void createLoginDialog(Window parent) { - if (StableUtils.getMajorJavaVersion() >= VERSION_8) { - File file = new File(StableUtils.pathJoin(installHome, "scripts")); - if (!file.exists()) { - confirmDownLoadShopJS(); - } else { - showLoginDlg(parent); - updateShopScripts(SHOP_SCRIPTS); - } - } - } - - private static void confirmDownLoadShopJS() { - int rv = FineJOptionPane.showConfirmDialog( - null, - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Shop_Need_Install"), - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), - JOptionPane.OK_CANCEL_OPTION, - JOptionPane.INFORMATION_MESSAGE - ); - if (rv == JOptionPane.OK_OPTION) { - downloadShopScripts(SHOP_SCRIPTS); - } - } - - private static void showPluginDlg() { - try { - Class clazz = Class.forName("com.fr.design.extra.PluginWebPane"); - Constructor constructor = clazz.getConstructor(String.class, String.class); - Component webPane = (Component) constructor.newInstance(installHome, MAIN_JS_PATH); - - BasicPane managerPane = new ShopManagerPane(webPane); - UIDialog dlg = new ShopDialog(DesignerContext.getDesignerFrame(), managerPane); - PluginWebBridge.getHelper().setDialogHandle(dlg); - dlg.setVisible(true); - DesignerLoginUtils.showPluginRemindOnFirstLaunch(dlg); - } catch (Exception e) { - // ignored - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - } - - private static void showLoginDlg(Window window) { - try { - Class clazz = Class.forName("com.fr.design.extra.LoginWebPane"); - Constructor constructor = clazz.getConstructor(String.class); - Component webPane = (Component) constructor.newInstance(installHome); - UIDialog qqdlg; - if (window instanceof Dialog) { - qqdlg = new LoginDialog((Dialog) window, webPane); - } else { - qqdlg = new LoginDialog((Frame) window, webPane); - } - LoginWebBridge.getHelper().setDialogHandle(qqdlg); - qqdlg.setVisible(true); - } catch (Throwable ignored) { - // ignored - } - } - - private static Component initTraditionalStore() { - UITabbedPane tabbedPane = new UITabbedPane(); - PluginInstalledPane installedPane = new PluginInstalledPane(); - tabbedPane.addTab(installedPane.tabTitle(), installedPane); - tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Update"), new PluginUpdatePane(tabbedPane)); - tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_All_Plugins"), new PluginFromStorePane(tabbedPane)); - return tabbedPane; - } - - private static void downloadShopScripts(final String scriptsId) { - new SwingWorker() { - @Override - protected Boolean doInBackground() throws Exception { - return PluginUtils.downloadShopScripts(scriptsId, new Process() { - @Override - public void process(Double integer) { - // 这个注释毫无意义,就是为了通过SonarQube - } - }); - } - - @Override - protected void done() { - - try { - if (get()) { - File scriptZip = new File(StableUtils.pathJoin(PluginConstants.DOWNLOAD_PATH, PluginConstants.TEMP_FILE)); - if (scriptZip.exists()) { - IOUtils.unzip(scriptZip, installHome); - CommonUtils.deleteFile(scriptZip); - } - PluginStoreConstants.refreshProps(); // 下载完刷新一下版本号等 - FineJOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Shop_Installed"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tool_Tips"), JOptionPane.INFORMATION_MESSAGE); - } - } catch (InterruptedException e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - Thread.currentThread().interrupt(); - } catch (ExecutionException e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - - } - }.execute(); - } - - private static void updateShopScripts(final String scriptsId) { - new SwingWorker() { - @Override - protected Void doInBackground() throws Exception { - String url = CloudCenter.getInstance().acquireUrlByKind("shop.plugin.update"); - if (url != null) { - String text = HttpToolbox.get(url + "?" + PluginUtils.FR_VERSION + "=" + ProductConstants.VERSION + "&version=" + PluginStoreConfig.getInstance().getVersion()); - JSONObject resultJSONObject = new JSONObject(text); - String isLatest = resultJSONObject.optString("result"); - if (!ComparatorUtils.equals(isLatest, LATEST)) { - int rv = FineJOptionPane.showConfirmDialog( - null, - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Shop_Need_Update"), - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), - JOptionPane.OK_CANCEL_OPTION, - JOptionPane.INFORMATION_MESSAGE - ); - if (rv == JOptionPane.OK_OPTION) { - downloadShopScripts(scriptsId); - } - } - } - return null; - } - }.execute(); - } -} diff --git a/designer-base/src/main/java/com/fr/design/extra/exe/PluginLoginExecutor.java b/designer-base/src/main/java/com/fr/design/extra/exe/PluginLoginExecutor.java index 7c6de0e06a..f31a71626e 100644 --- a/designer-base/src/main/java/com/fr/design/extra/exe/PluginLoginExecutor.java +++ b/designer-base/src/main/java/com/fr/design/extra/exe/PluginLoginExecutor.java @@ -1,6 +1,5 @@ package com.fr.design.extra.exe; -import com.fr.design.extra.LoginWebBridge; import com.fr.design.extra.Process; import com.fr.design.login.service.DesignerPassportManager; @@ -36,9 +35,6 @@ public class PluginLoginExecutor implements Executor { @Override public void run(Process process) { int uid = DesignerPassportManager.getInstance().login(username, password); - if (uid > 0) { - LoginWebBridge.getHelper().closeWindow(); - } result = String.valueOf(uid); } } diff --git a/designer-base/src/main/java/com/fr/design/file/DefaultTemplateTreeDefineProcessor.java b/designer-base/src/main/java/com/fr/design/file/DefaultTemplateTreeDefineProcessor.java index 728b915163..af018d032f 100644 --- a/designer-base/src/main/java/com/fr/design/file/DefaultTemplateTreeDefineProcessor.java +++ b/designer-base/src/main/java/com/fr/design/file/DefaultTemplateTreeDefineProcessor.java @@ -1,8 +1,8 @@ package com.fr.design.file; import com.fine.theme.icon.LazyIcon; +import com.fine.theme.utils.FineComponentsFactory; import com.fine.theme.utils.FineUIScale; -import com.fine.theme.utils.FineUIStyle; import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.actions.UpdateAction; import com.fr.design.actions.file.DelFileAction; @@ -33,7 +33,6 @@ import com.fr.stable.StringUtils; import com.fr.stable.collections.CollectionUtils; import com.fr.stable.project.ProjectConstants; -import javax.swing.BorderFactory; import javax.swing.JDialog; import javax.swing.JOptionPane; import javax.swing.JPanel; @@ -42,15 +41,11 @@ import java.awt.BorderLayout; import java.awt.CardLayout; import java.awt.Dimension; import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; import java.awt.event.MouseEvent; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; -import static com.fine.swing.ui.layout.Layouts.cell; -import static com.fine.swing.ui.layout.Layouts.flex; -import static com.fine.swing.ui.layout.Layouts.row; import static javax.swing.JOptionPane.WARNING_MESSAGE; import static javax.swing.JOptionPane.YES_NO_OPTION; @@ -380,28 +375,16 @@ public class DefaultTemplateTreeDefineProcessor extends AbstractTemplateTreeDefi // 确认按钮,默认就可用 confirmButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Confirm")); - FineUIStyle.setStyle(confirmButton, FineUIStyle.STYLE_PRIMARY); - confirmButton.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - confirmClose(); - } - }); + confirmButton.addActionListener(e -> confirmClose()); confirmButton.setEnabled(true); - // 取消按钮 UIButton cancelButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Cancel")); - cancelButton.addActionListener(new ActionListener() { - - @Override - public void actionPerformed(ActionEvent e) { - dispose(); - } - }); + cancelButton.addActionListener(e -> dispose()); - this.add(row(8, flex(), cell(confirmButton), cell(cancelButton)) - .with(it -> it.setBorder(new ScaledEmptyBorder(0, 0, 10, 10))).getComponent(), BorderLayout.SOUTH); + JPanel buttonPane = FineComponentsFactory.createConfirmCancelButtonPane(confirmButton, cancelButton); + buttonPane.setBorder(new ScaledEmptyBorder(0, 10, 10, 10)); + this.add(buttonPane, BorderLayout.SOUTH); this.setSize(FineUIScale.scale(new Dimension(660, 600))); this.setTitle(Toolkit.i18nText("Fine-Design_Basic_Move")); diff --git a/designer-base/src/main/java/com/fr/design/file/MultiTemplateTabPane.java b/designer-base/src/main/java/com/fr/design/file/MultiTemplateTabPane.java index c063bdd26b..0c8d62d587 100644 --- a/designer-base/src/main/java/com/fr/design/file/MultiTemplateTabPane.java +++ b/designer-base/src/main/java/com/fr/design/file/MultiTemplateTabPane.java @@ -1,6 +1,7 @@ package com.fr.design.file; +import com.fanruan.repository.TemplateRepository; import com.fine.swing.ui.layout.Layouts; import com.fine.swing.ui.layout.Row; import com.fine.theme.icon.LazyIcon; @@ -11,8 +12,8 @@ import com.fr.base.vcs.DesignerMode; import com.fr.design.ExtraDesignClassManager; import com.fr.design.actions.UpdateAction; import com.fr.design.actions.file.LocateAction; -import com.fr.design.cache.DesignCacheManager; import com.fr.design.actions.template.NewWorkBookToolButtonAction; +import com.fr.design.cache.DesignCacheManager; import com.fr.design.constants.UIConstants; import com.fr.design.dialog.FineJOptionPane; import com.fr.design.fun.MenuHandler; @@ -33,23 +34,13 @@ import com.fr.design.worker.save.CallbackSaveWorker; import com.fr.file.FILE; import com.fr.file.FileNodeFILE; import com.fr.general.ComparatorUtils; +import com.fr.general.IOUtils; import com.fr.log.FineLoggerFactory; import com.fr.stable.collections.combination.Pair; import com.fr.third.javax.annotation.Nonnull; -import com.fr.workspace.WorkContext; -import com.fr.workspace.server.lock.TplOperator; - -import javax.swing.Icon; -import javax.swing.JButton; -import javax.swing.JOptionPane; -import javax.swing.JSeparator; -import javax.swing.SwingUtilities; -import javax.swing.ToolTipManager; -import java.awt.AWTEvent; -import java.awt.Color; -import java.awt.Dimension; -import java.awt.FlowLayout; -import java.awt.Graphics; + +import javax.swing.*; +import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; @@ -65,9 +56,7 @@ import static com.fine.theme.utils.FineUIScale.scale; import static com.fine.theme.utils.FineUIStyle.BUTTON_TAB_ACTION; import static com.formdev.flatlaf.FlatClientProperties.BUTTON_TYPE; import static com.fr.design.dialog.FineJOptionPane.showConfirmDialog; -import static javax.swing.JOptionPane.OK_CANCEL_OPTION; -import static javax.swing.JOptionPane.OK_OPTION; -import static javax.swing.JOptionPane.WARNING_MESSAGE; +import static javax.swing.JOptionPane.*; /** * 模版Tab组件 @@ -357,6 +346,7 @@ public class MultiTemplateTabPane extends Row { public RightMenuCloseAction(CloseOption option, int tplIndex) { this.option = option; this.setName(option.optionName); + this.setSmallIcon(IOUtils.readIcon("/com/fr/base/images/cell/blank.gif")); this.tplIndex = tplIndex; } @@ -411,7 +401,7 @@ public class MultiTemplateTabPane extends Row { // 只有是环境内的文件,才执行释放锁 if (file != null && file.isEnvFile()) { // release lock - WorkContext.getCurrent().get(TplOperator.class).closeAndFreeFile(file.getPath()); + TemplateRepository.getInstance().close(file.getPath()); } } } @@ -847,7 +837,7 @@ public class MultiTemplateTabPane extends Row { setIsCloseCurrent(true); } closeFormat(template); - closeSpecifiedTemplate(template); + DesignCacheManager.processByCacheTableData(() -> closeSpecifiedTemplate(template)); DesignerContext.getDesignerFrame().getContentFrame().repaint(); isShowList = false; } else { diff --git a/designer-base/src/main/java/com/fr/design/file/SaveSomeTemplatePane.java b/designer-base/src/main/java/com/fr/design/file/SaveSomeTemplatePane.java index 8ee5c61fb2..18065fb37d 100644 --- a/designer-base/src/main/java/com/fr/design/file/SaveSomeTemplatePane.java +++ b/designer-base/src/main/java/com/fr/design/file/SaveSomeTemplatePane.java @@ -10,6 +10,8 @@ import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilist.UIList; +import com.fr.design.gui.iscrollbar.UIBasicVerticalScrollBar; +import com.fr.design.gui.iscrollbar.UIScrollBar; import com.fr.design.gui.iscrollbar.UIScrollBarUI; import com.fr.design.gui.itree.checkboxtree.NullTristateCheckBox; import com.fr.design.gui.itree.checkboxtree.TristateCheckBox; @@ -21,10 +23,10 @@ import com.fr.log.FineLoggerFactory; import org.jetbrains.annotations.Nullable; import javax.swing.AbstractListModel; -import javax.swing.BorderFactory; import javax.swing.DefaultListCellRenderer; import javax.swing.JList; import javax.swing.JPanel; +import javax.swing.JScrollBar; import java.awt.BorderLayout; import java.awt.Component; import java.awt.Window; @@ -83,11 +85,13 @@ public class SaveSomeTemplatePane extends BasicPane { UILabel tip = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select_The_Source_To_Save")); this.add(tip, BorderLayout.NORTH); templatesChoosePane = FRGUIPaneFactory.createBorderLayout_S_Pane(); - UIScrollPane scrollPane = new UIScrollPane(templatesChoosePane); + UIScrollPane scrollPane = new UIScrollPane(templatesChoosePane) { + @Override + public UIScrollBar createVerticalScrollBar() { + return new UIBasicVerticalScrollBar(JScrollBar.VERTICAL); + } + }; scrollPane.setBorder(new FineRoundBorder()); - if (SystemInfo.isWindows) { - scrollPane.getVerticalScrollBar().setUI(new UIScrollBarUI()); - } this.add(scrollPane, BorderLayout.CENTER); this.isJudgeCurrentEditingTemplate = isNeedTojudgeCurrent; } diff --git a/designer-base/src/main/java/com/fr/design/file/TemplateDirTreePane.java b/designer-base/src/main/java/com/fr/design/file/TemplateDirTreePane.java index 08531b895c..1145616e9f 100644 --- a/designer-base/src/main/java/com/fr/design/file/TemplateDirTreePane.java +++ b/designer-base/src/main/java/com/fr/design/file/TemplateDirTreePane.java @@ -1,6 +1,7 @@ package com.fr.design.file; -import com.fr.base.FRContext; +import com.fanruan.repository.TemplateRepository; +import com.fr.design.border.FineBorderFactory; import com.fr.design.gui.itree.filetree.TemplateDirTree; import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode; import com.fr.design.i18n.Toolkit; @@ -11,11 +12,9 @@ import com.fr.file.filetree.IOFileNodeFilter; import com.fr.log.FineLoggerFactory; import com.fr.stable.ArrayUtils; -import javax.swing.BorderFactory; import javax.swing.JPanel; import javax.swing.tree.TreePath; import java.awt.BorderLayout; -import java.awt.Color; /** * 目录树面板 @@ -35,7 +34,7 @@ public class TemplateDirTreePane extends JPanel { public TemplateDirTreePane() { this.setLayout(FRGUIPaneFactory.createBorderLayout()); - this.setBorder(BorderFactory.createLineBorder(Color.gray)); + this.setBorder(FineBorderFactory.createWrappedRoundBorder()); templateDirTree = new TemplateDirTree(); remindPane = new TemplateDirSearchRemindPane(getTemplateDirTree()); @@ -75,7 +74,7 @@ public class TemplateDirTreePane extends JPanel { * 刷新 */ public void refreshDockingView() { - templateDirTree.setFileNodeFilter(new IOFileNodeFilter(FRContext.getFileNodes().getSupportedTypes())); + templateDirTree.setFileNodeFilter(new IOFileNodeFilter(TemplateRepository.getInstance().getSupportedTypes())); templateDirTree.refreshEnv(); } diff --git a/designer-base/src/main/java/com/fr/design/file/TemplateTreePane.java b/designer-base/src/main/java/com/fr/design/file/TemplateTreePane.java index db63112647..262da62117 100644 --- a/designer-base/src/main/java/com/fr/design/file/TemplateTreePane.java +++ b/designer-base/src/main/java/com/fr/design/file/TemplateTreePane.java @@ -3,7 +3,7 @@ */ package com.fr.design.file; -import com.fr.base.FRContext; +import com.fanruan.repository.TemplateRepository; import com.fr.design.ExtraDesignClassManager; import com.fr.design.cache.DesignCacheManager; import com.fr.design.dialog.FineJOptionPane; @@ -12,10 +12,10 @@ import com.fr.design.gui.itree.filetree.TemplateFileTree; import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; +import com.fr.design.lock.LockInfoDialog; import com.fr.design.lock.LockInfoUtils; import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.DesignerFrameFileDealerPane; -import com.fr.design.lock.LockInfoDialog; import com.fr.design.mainframe.JTemplate; import com.fr.design.mainframe.manager.search.TemplateTreeSearchManager; import com.fr.design.mainframe.manager.search.searcher.control.pane.TemplateSearchRemindPane; @@ -28,26 +28,20 @@ import com.fr.form.fit.web.editpreview.FileLockStateObservable; import com.fr.general.ComparatorUtils; import com.fr.general.IOUtils; import com.fr.log.FineLoggerFactory; -import com.fr.workspace.base.UserInfo; import com.fr.stable.ArrayUtils; import com.fr.stable.CoreConstants; import com.fr.stable.StableUtils; import com.fr.stable.project.ProjectConstants; import com.fr.workspace.WorkContext; +import com.fr.workspace.base.UserInfo; +import com.fr.workspace.server.repository.vcs.VcsRepository; +import org.jetbrains.annotations.Nullable; -import com.fr.report.lock.LockInfoOperator; -import java.util.UUID; -import javax.swing.JOptionPane; -import javax.swing.JPanel; -import javax.swing.SwingUtilities; -import javax.swing.SwingWorker; -import javax.swing.ToolTipManager; +import javax.swing.*; import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.TreeNode; import javax.swing.tree.TreePath; -import java.awt.BorderLayout; -import java.awt.Desktop; -import java.awt.Dimension; +import java.awt.*; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.awt.event.MouseAdapter; @@ -62,14 +56,10 @@ import java.util.Objects; import java.util.Observable; import java.util.Observer; import java.util.Set; +import java.util.UUID; import java.util.concurrent.ExecutionException; import java.util.stream.Collectors; -import com.fr.workspace.server.repository.template.TemplateRepository; -import com.fr.workspace.server.vcs.VcsOperator; -import org.jetbrains.annotations.Nullable; - - import static javax.swing.JOptionPane.WARNING_MESSAGE; import static javax.swing.JOptionPane.YES_NO_OPTION; @@ -112,7 +102,7 @@ public class TemplateTreePane extends JPanel implements FileOperations { @Override public void mousePressed(MouseEvent evt) { - if (reportletsTree.getPathForLocation(evt.getX(), evt.getY()) != null && evt.getClickCount() == 2) { + if (evt.getClickCount() == 2) { DesignCacheManager.processByCacheTableData(() -> openFile()); } } @@ -410,7 +400,7 @@ public class TemplateTreePane extends JPanel implements FileOperations { if (nodeFILE.exists()) { if (!VcsHelper.getInstance().isLegacyMode()) { try { - WorkContext.getCurrent().get(VcsOperator.class).recycleVersion(VcsHelper.getInstance().getCurrentUsername(), nodeFILE.getPath()); + VcsRepository.getInstance().recycleVersion(VcsHelper.getInstance().getCurrentUsername(), nodeFILE.getPath()); } catch (Exception e) { FineLoggerFactory.getLogger().error("[VcsV2] recycle {} failed", nodeFILE.getName()); } diff --git a/designer-base/src/main/java/com/fr/design/file/impl/DefaultTemplateResource.java b/designer-base/src/main/java/com/fr/design/file/impl/DefaultTemplateResource.java index 96f01f231f..5c4766adc5 100644 --- a/designer-base/src/main/java/com/fr/design/file/impl/DefaultTemplateResource.java +++ b/designer-base/src/main/java/com/fr/design/file/impl/DefaultTemplateResource.java @@ -2,8 +2,7 @@ package com.fr.design.file.impl; import com.fr.file.FILE; import com.fr.workspace.WorkContext; -import com.fr.workspace.server.lock.TplOperator; -import com.fr.workspace.server.repository.template.TemplateRepository; +import com.fanruan.repository.TemplateRepository; import java.io.ByteArrayInputStream; import java.io.InputStream; diff --git a/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java b/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java index 05053eec4f..7f26c4884c 100644 --- a/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java +++ b/designer-base/src/main/java/com/fr/design/formula/DefaultTinyFormulaPane.java @@ -1,6 +1,14 @@ package com.fr.design.formula; +import com.fine.theme.utils.FineUIScale; import com.fr.base.BaseFormula; +import com.fr.design.gui.ilable.UILabel; +import java.awt.Component; +import java.awt.BorderLayout; + +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.row; +import static com.fine.swing.ui.layout.Layouts.flex; /** * @author Carlson @@ -10,8 +18,44 @@ import com.fr.base.BaseFormula; **/ public class DefaultTinyFormulaPane extends TinyFormulaPane{ + /** + * 默认构造方法 + * 一个输入框和一个F(x)按钮。 + */ + public DefaultTinyFormulaPane() { + this.initComponents(); + this.initLayout(); + } + + /** + * 带标题的构造方法 + * 当需要显示标题时使用此构造方法。 + * + * @param title 要在布局中显示的标题 + */ + public DefaultTinyFormulaPane(String title) { + this.initComponents(); + this.initLayout(title); + } + + private void initLayout(String title) { + this.setLayout(new BorderLayout()); + this.add(row(cell(new UILabel(title)).weight(1.2), cell(createDefaultTinyFormulaPane()).weight(3)).getComponent()); + } + @Override protected void populateTextField(BaseFormula fm) { formulaTextField.setText(fm.getContent()); } + + @Override + protected void initLayout() { + this.setLayout(new BorderLayout()); + formulaTextFieldButton.setPreferredSize(FineUIScale.createScaleDimension(24, 24)); + this.add(createDefaultTinyFormulaPane()); + } + + private Component createDefaultTinyFormulaPane() { + return row(cell(formulaTextField).weight(1), flex(0.1), cell(formulaTextFieldButton)).getComponent(); + } } diff --git a/designer-base/src/main/java/com/fr/design/formula/FormulaPane.java b/designer-base/src/main/java/com/fr/design/formula/FormulaPane.java index 7c24d0636f..af825fb4a6 100644 --- a/designer-base/src/main/java/com/fr/design/formula/FormulaPane.java +++ b/designer-base/src/main/java/com/fr/design/formula/FormulaPane.java @@ -41,6 +41,7 @@ import com.fr.design.gui.itextarea.UITextArea; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.gui.syntax.ui.rsyntaxtextarea.RSyntaxTextArea; import com.fr.design.gui.syntax.ui.rsyntaxtextarea.SyntaxConstants; +import com.fr.design.i18n.DesignSizeI18nManager; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.DesignerContext; @@ -743,7 +744,7 @@ public class FormulaPane extends BasicPane implements KeyListener, UIFormula { } public BasicDialog showLargeWindow(Window window, DialogActionListener l) { - Dimension dimension = new Dimension(900, 640); + Dimension dimension = DesignSizeI18nManager.getInstance().i18nDimension("com.fr.design.formula.FormulaPane"); BasicDialog basicDialog = super.showWindowWithCustomSize(window, l, dimension); basicDialog.setResizable(true); return basicDialog; @@ -915,7 +916,7 @@ public class FormulaPane extends BasicPane implements KeyListener, UIFormula { private void showMessageDialog(String message, boolean formulaValid, boolean calException) { if (formulaValid && !calException) { - FineJOptionPane.showMessageDialog( + FineJOptionPane.showSuccessMessageDialog( FormulaPane.this, message); } else { diff --git a/designer-base/src/main/java/com/fr/design/formula/JavaEditorPane.java b/designer-base/src/main/java/com/fr/design/formula/JavaEditorPane.java index a34762a1fd..be5f479544 100644 --- a/designer-base/src/main/java/com/fr/design/formula/JavaEditorPane.java +++ b/designer-base/src/main/java/com/fr/design/formula/JavaEditorPane.java @@ -1,6 +1,7 @@ package com.fr.design.formula; import com.fr.base.FRContext; +import com.fr.design.border.FineBorderFactory; import com.fr.design.dialog.BasicPane; import com.fr.design.dialog.FineJOptionPane; import com.fr.design.gui.ibutton.UIButton; @@ -18,12 +19,10 @@ import com.fr.stable.project.ProjectConstants; import com.fr.workspace.WorkContext; import javax.swing.AbstractAction; -import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.SwingWorker; import java.awt.BorderLayout; import java.awt.Dimension; -import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.ByteArrayInputStream; @@ -32,6 +31,9 @@ import java.io.InputStream; import java.util.ArrayList; import java.util.concurrent.ExecutionException; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.row; + public class JavaEditorPane extends BasicPane { private RSyntaxTextArea javaText; @@ -40,8 +42,9 @@ public class JavaEditorPane extends BasicPane { public JavaEditorPane(String className, String defaultText) { this.className = className; - this.setLayout(FRGUIPaneFactory.createBorderLayout()); + this.setLayout(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); javaText = new RSyntaxTextArea(); + javaText.setBorder(null); configRSyntax(javaText); if (StringUtils.isNotEmpty(className)) { javaText.setText("//Loading source code from server..."); @@ -83,13 +86,13 @@ public class JavaEditorPane extends BasicPane { } UIScrollPane jt = new UIScrollPane(javaText); - JPanel toolbarPane = new JPanel(new FlowLayout(FlowLayout.LEFT)); + jt.setBorder(FineBorderFactory.createWrappedRoundBorder()); + JPanel toolbarPane = new JPanel(new BorderLayout()); UIButton saveButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Save")); saveButton.setAction(new SaveAction()); UIButton compileButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Compile")); compileButton.setAction(new CompilerAction()); - toolbarPane.add(saveButton); - toolbarPane.add(compileButton); + toolbarPane.add(row(8, cell(saveButton), cell(compileButton)).getComponent()); this.add(toolbarPane, BorderLayout.NORTH); this.add(jt, BorderLayout.CENTER); @@ -155,7 +158,7 @@ public class JavaEditorPane extends BasicPane { private void saveTextToFile(String text) { if (StringUtils.isEmpty(text)) { - return; + return; } if (StringUtils.isEmpty(className)) { return; @@ -180,7 +183,7 @@ public class JavaEditorPane extends BasicPane { @Override protected JavaCompileInfo doInBackground() throws Exception { - + return FRContext.getCommonOperator().compile(javaText.getText()); } diff --git a/designer-base/src/main/java/com/fr/design/fun/LazyIconProvider.java b/designer-base/src/main/java/com/fr/design/fun/LazyIconProvider.java new file mode 100644 index 0000000000..f51a2323d7 --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/fun/LazyIconProvider.java @@ -0,0 +1,39 @@ +package com.fr.design.fun; + +import com.fr.stable.fun.mark.Mutable; + +/** + * 插件图标适配接口 + * + * @author lemon + * @since + * Created on + */ +public interface LazyIconProvider extends Mutable { + String MARK_STRING = "LazyIconProvider"; + + int CURRENT_LEVEL = 1; + + /** + * 插件 id,icon 来源标识 + * + * @return 来源标识 + */ + String pluginId(); + + + /** + * light 主题 + * + * @return 图标注册 json 路径 + */ + String lightJsonPath(); + + /** + * dark 主题 + * + * @return 图标注册 json 路径 + */ + String darkJsonPath(); + +} diff --git a/designer-base/src/main/java/com/fr/design/fun/impl/AbstractLazyIconProvider.java b/designer-base/src/main/java/com/fr/design/fun/impl/AbstractLazyIconProvider.java new file mode 100644 index 0000000000..916a100923 --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/fun/impl/AbstractLazyIconProvider.java @@ -0,0 +1,59 @@ +package com.fr.design.fun.impl; + +import com.fr.design.fun.LazyIconProvider; +import com.fr.stable.fun.impl.AbstractProvider; +import com.fr.stable.fun.mark.API; + +import java.util.List; + + +/** + * 插件图标 LazyIcon 加载适配抽象类 + * + * @author lemon + * @since + * Created on + */ +@API(level = LazyIconProvider.CURRENT_LEVEL) +public abstract class AbstractLazyIconProvider extends AbstractProvider implements LazyIconProvider { + + /** + * 当前接口的API等级,用于判断是否需要升级插件 + * @return API等级 + */ + @Override + public int currentAPILevel() { + return CURRENT_LEVEL; + } + + /** + * 区分插件 + * + * @return 插件 id + */ + @Override + public String pluginId() { + throw new RuntimeException("plugin id is blank"); + } + + /** + * light 主题 + * + * @return 图标注册 json 路径 + */ + @Override + public String lightJsonPath() { + return ""; + } + + /** + * dark 主题 + * + * @return 图标注册 json 路径 + */ + @Override + public String darkJsonPath() { + return ""; + } + +} diff --git a/designer-base/src/main/java/com/fr/design/gui/columnrow/ColumnRowPane.java b/designer-base/src/main/java/com/fr/design/gui/columnrow/ColumnRowPane.java index d23a1fd22f..6f0fd085aa 100644 --- a/designer-base/src/main/java/com/fr/design/gui/columnrow/ColumnRowPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/columnrow/ColumnRowPane.java @@ -1,32 +1,22 @@ package com.fr.design.gui.columnrow; -import com.fine.theme.utils.FineUIUtils; import com.fr.design.event.UIObserver; import com.fr.design.event.UIObserverListener; -import com.fr.design.gui.ispinner.ColumnRowSpinner; -import com.fr.design.gui.ispinner.UIBasicSpinner; -import com.fr.design.gui.ispinner.UpperCaseSpinner; -import com.fr.design.gui.itextfield.UITextField; -import com.fr.design.utils.gui.GUICoreUtils; +import com.fr.design.gui.ispinner.FineUpperCaseSpinner; +import com.fr.design.gui.ispinner.UISpinner; + import com.fr.general.ComparatorUtils; import com.fr.stable.ColumnRow; import com.fr.stable.StableUtils; -import com.fr.stable.StringUtils; -import javax.swing.JFormattedTextField; import javax.swing.JPanel; -import javax.swing.SpinnerListModel; -import javax.swing.JSpinner.DefaultEditor; + import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; -import javax.swing.text.AbstractDocument; -import javax.swing.text.AttributeSet; -import javax.swing.text.BadLocationException; -import javax.swing.text.DocumentFilter; + import java.awt.BorderLayout; -import java.awt.Dimension; import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.fix; @@ -40,29 +30,17 @@ import static com.fine.swing.ui.layout.Layouts.row; public class ColumnRowPane extends JPanel implements UIObserver { private static final long serialVersionUID = 1L; - private static String[] columnarray = new String[1000]; - private static String[] rowarray = new String[5000]; - - protected UpperCaseSpinner columnSpinner; - protected UIBasicSpinner rowSpinner; - - static { - for (int i = 1; i <= 1000; i++) { - columnarray[i - 1] = StableUtils.convertIntToABC(i); - } - for (int i = 1; i <= 5000; i++) { - rowarray[i - 1] = StringUtils.EMPTY + i; - } - } + protected FineUpperCaseSpinner columnSpinner; + protected UISpinner rowSpinner; protected DocumentListener d = new DocumentListener() { @Override public void removeUpdate(DocumentEvent e) { - String rolText = ((DefaultEditor) columnSpinner.getEditor()).getTextField().getText(); - String rowText = ((DefaultEditor) rowSpinner.getEditor()).getTextField().getText(); + String rolText = columnSpinner.getTextFieldNew().getText(); + String rowText = rowSpinner.getTextField().getText(); if (rolText == null || rolText.length() == 0 || rowText == null || rowText.length() == 0) { return; } @@ -73,8 +51,8 @@ public class ColumnRowPane extends JPanel implements UIObserver { @Override public void insertUpdate(DocumentEvent e) { - int col = StableUtils.convertABCToInt(((DefaultEditor) columnSpinner.getEditor()).getTextField().getText()) - 1; - int row = Integer.parseInt(((DefaultEditor) rowSpinner.getEditor()).getTextField().getText()) - 1; + int col = StableUtils.convertABCToInt(columnSpinner.getTextFieldNew().getText()) - 1; + int row = Integer.parseInt(rowSpinner.getTextField().getText()) - 1; setColumnRow(ColumnRow.valueOf(col, row)); } @@ -128,58 +106,21 @@ public class ColumnRowPane extends JPanel implements UIObserver { protected void initRowSpinner() { - rowSpinner = new ColumnRowSpinner((new SpinnerListModel(rowarray))) { - public boolean shouldResponseChangeListener() { - return false; - } - - }; - rowSpinner.setBackground(FineUIUtils.getUIColor("background.normal", "background.normal")); - JFormattedTextField rftf = GUICoreUtils.getSpinnerTextField(rowSpinner); - if (rftf != null) { - rftf.setColumns(4); // specify more width than we need - rftf.setHorizontalAlignment(UITextField.LEFT); - } + rowSpinner = new UISpinner(1, 5000, 1); } protected void initColSpinner() { - SpinnerListModel columnSpinnerListModel = new SpinnerListModel(columnarray); - columnSpinner = new UpperCaseSpinner(columnSpinnerListModel) { - public boolean shouldResponseChangeListener() { - return false; - } - }; - columnSpinner.setBackground(FineUIUtils.getUIColor("background.normal", "background.normal")); - JFormattedTextField cftf = GUICoreUtils.getSpinnerTextField(columnSpinner); - if (cftf != null) { - cftf.setColumns(3); // specify more width than we need - cftf.setHorizontalAlignment(UITextField.LEFT); - }else { - throw new IllegalArgumentException("Spinner'Editor can not be null!"); - } - - ((AbstractDocument) cftf.getDocument()).setDocumentFilter(new DocumentFilter() { - public void insertString(FilterBypass fb, int offset, String string, AttributeSet attr) throws BadLocationException { - fb.insertString(offset, string.toUpperCase(), attr); - } - - public void replace(FilterBypass fb, int offset, int length, String string, AttributeSet attr) throws BadLocationException { - if (string != null) { - string = string.toUpperCase(); - } - fb.replace(offset, length, string, attr); - } - }); + columnSpinner = new FineUpperCaseSpinner(1, 5000, 1); } protected void addDocumentListener(DocumentListener l) { - ((DefaultEditor) columnSpinner.getEditor()).getTextField().getDocument().addDocumentListener(l); - ((DefaultEditor) rowSpinner.getEditor()).getTextField().getDocument().addDocumentListener(l); + columnSpinner.getTextFieldNew().getDocument().addDocumentListener(l); + rowSpinner.getTextField().getDocument().addDocumentListener(l); } private void removeDocumentListener(DocumentListener l) { - ((DefaultEditor) columnSpinner.getEditor()).getTextField().getDocument().removeDocumentListener(l); - ((DefaultEditor) rowSpinner.getEditor()).getTextField().getDocument().removeDocumentListener(l); + columnSpinner.getTextFieldNew().getDocument().removeDocumentListener(l); + rowSpinner.getTextField().getDocument().removeDocumentListener(l); } /** @@ -208,17 +149,13 @@ public class ColumnRowPane extends JPanel implements UIObserver { column = 0; } removeDocumentListener(d); - String colValue = StableUtils.convertIntToABC(column + 1); - columnSpinner.setValue(colValue); - ((DefaultEditor) columnSpinner.getEditor()).getTextField().setText(colValue); + columnSpinner.setValue(column+1); int row = columnRow.getRow(); // shoc 小于0就蹦了 if (row < 0) { row = 0; } - String rowValue = Integer.toString(row + 1); - rowSpinner.setValue(rowValue); - ((DefaultEditor) rowSpinner.getEditor()).getTextField().setText(rowValue); + rowSpinner.setValue(row+1); addDocumentListener(d); fireChanged(); } diff --git a/designer-base/src/main/java/com/fr/design/gui/controlpane/JControlUpdatePane.java b/designer-base/src/main/java/com/fr/design/gui/controlpane/JControlUpdatePane.java index b1bf63bcfe..88d29f82e7 100644 --- a/designer-base/src/main/java/com/fr/design/gui/controlpane/JControlUpdatePane.java +++ b/designer-base/src/main/java/com/fr/design/gui/controlpane/JControlUpdatePane.java @@ -3,16 +3,12 @@ package com.fr.design.gui.controlpane; import com.fr.data.impl.Connection; import com.fr.design.DesignerEnvManager; import com.fr.design.beans.BasicBeanPane; -import com.fr.design.data.tabledata.tabledatapane.GlobalMultiTDTableDataPane; -import com.fr.design.data.tabledata.tabledatapane.GlobalTreeTableDataPane; -import com.fr.design.data.tabledata.tabledatapane.MultiTDTableDataPane; -import com.fr.design.data.tabledata.tabledatapane.TreeTableDataPane; +import com.fr.design.data.tabledata.tabledatapane.TableDataPaneHelper; import com.fr.design.env.DesignerWorkspaceInfo; import com.fr.design.env.RemoteDesignerWorkspaceInfo; import com.fr.design.gui.ilist.ListModelElement; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.form.event.Listener; -import com.fr.general.ComparatorUtils; import com.fr.log.FineLoggerFactory; import javax.swing.JPanel; @@ -70,7 +66,7 @@ class JControlUpdatePane extends JPanel { Object ob2Populate = creators[i].acceptObject2Populate(el.wrapper); if (ob2Populate != null) { if (updatePanes[i] == null) { - if (isMulti(creators[i].getUpdatePane()) || isTree(creators[i].getUpdatePane())) { + if (TableDataPaneHelper.isNamedTableDataPane(creators[i].getUpdatePane())) { updatePanes[i] = listControlPane.createPaneByCreators(creators[i], el.wrapper.getName()); } else { updatePanes[i] = listControlPane.createPaneByCreators(creators[i]); @@ -94,15 +90,6 @@ class JControlUpdatePane extends JPanel { } } - - public boolean isMulti(Class _class) { - return ComparatorUtils.equals(_class, GlobalMultiTDTableDataPane.class) || ComparatorUtils.equals(_class, MultiTDTableDataPane.class); - } - - public boolean isTree(Class _class) { - return ComparatorUtils.equals(_class, GlobalTreeTableDataPane.class) || ComparatorUtils.equals(_class, TreeTableDataPane.class); - } - public void update() { NameableCreator[] creators = listControlPane.creators(); for (int i = 0; i < updatePanes.length; i++) { diff --git a/designer-base/src/main/java/com/fr/design/gui/controlpane/JListControlPane.java b/designer-base/src/main/java/com/fr/design/gui/controlpane/JListControlPane.java index 5b6bc8cdea..a4b80242a9 100644 --- a/designer-base/src/main/java/com/fr/design/gui/controlpane/JListControlPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/controlpane/JListControlPane.java @@ -30,6 +30,7 @@ import javax.swing.JPopupMenu; import javax.swing.ListCellRenderer; import javax.swing.ListSelectionModel; import javax.swing.SwingUtilities; +import javax.swing.UIManager; import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; import java.awt.BorderLayout; @@ -374,25 +375,23 @@ public abstract class JListControlPane extends JControlPane implements ListContr this.iconLabel.setBorder(new ScaledEmptyBorder(0, 4, 0, 0)); add(this.textLabel, BorderLayout.CENTER); add(this.iconLabel, BorderLayout.WEST); - this.iconLabel.setBackground(FlatUIUtils.getUIColor("List.cellRender.background", Color.WHITE)); - //iconLabel和textLabel的背景颜色不会被JList背景颜色覆盖,开发者自定义 - this.textLabel.setOpaque(true); - this.iconLabel.setOpaque(true); + this.textLabel.setOpaque(false); + this.iconLabel.setOpaque(false); } @Override public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { - setPreferredSize(FineUIScale.scale(new Dimension(list.getWidth(), 24))); + setPreferredSize(new Dimension(list.getWidth(), FineUIScale.scale(UIManager.getInt("List.cellRender.height")))); if (value instanceof ListModelElement) { ListModelElement element = ((ListModelElement) value); Nameable nameable = element.wrapper; this.textLabel.setText(nameable.getName()); boolean iconSet = false; if(isSelected) { - this.textLabel.setBackground(FlatUIUtils.getUIColor("List.selectionInactiveBackground", Color.GRAY)); + setBackground(FlatUIUtils.getUIColor("List.selectionInactiveBackground", Color.GRAY)); } else { - this.textLabel.setBackground(FlatUIUtils.getUIColor("List.cellRender.background", Color.WHITE)); + setBackground(FlatUIUtils.getUIColor("List.cellRender.background", Color.WHITE)); } for (NameableCreator creator : JListControlPane.this.creators()) { if (creator.menuIcon() != null && creator.acceptObject2Populate(nameable) != null) { diff --git a/designer-base/src/main/java/com/fr/design/gui/controlpane/ListControlPaneHelper.java b/designer-base/src/main/java/com/fr/design/gui/controlpane/ListControlPaneHelper.java index 7fe1a27efe..701bdeefb7 100644 --- a/designer-base/src/main/java/com/fr/design/gui/controlpane/ListControlPaneHelper.java +++ b/designer-base/src/main/java/com/fr/design/gui/controlpane/ListControlPaneHelper.java @@ -1,5 +1,6 @@ package com.fr.design.gui.controlpane; +import com.fine.theme.utils.FineUIScale; import com.fr.design.beans.BasicBeanPane; import com.fr.design.dialog.FineJOptionPane; import com.fr.design.gui.ilist.JNameEdList; @@ -38,6 +39,7 @@ import java.util.Map; */ class ListControlPaneHelper { private static final int EDIT_RANGE = 25; // 编辑按钮的x坐标范围 + private static final int DIALOG_GAP = 25; // 编辑按钮的x坐标范围 private ListControlPaneProvider listControlPane; @@ -160,7 +162,7 @@ class ListControlPaneHelper { // 不能太低 int maxY = frame.getLocationOnScreen().y + frame.getHeight() - popupEditDialog.getHeight(); if (resultPos.y > maxY) { - resultPos.y = maxY; + resultPos.y = maxY - FineUIScale.scale(DIALOG_GAP); } // 也不能太高 int minY = frame.getLocationOnScreen().y + EDIT_RANGE; diff --git a/designer-base/src/main/java/com/fr/design/gui/controlpane/UIListGroupControlPane.java b/designer-base/src/main/java/com/fr/design/gui/controlpane/UIListGroupControlPane.java index 0e06bcd344..df78b837d9 100644 --- a/designer-base/src/main/java/com/fr/design/gui/controlpane/UIListGroupControlPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/controlpane/UIListGroupControlPane.java @@ -1,9 +1,9 @@ package com.fr.design.gui.controlpane; -import com.fine.theme.light.ui.FineRoundBorder; -import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIStyle; import com.fine.theme.utils.FineUIUtils; import com.fr.design.beans.BasicBeanPane; +import com.fr.design.border.FineBorderFactory; import com.fr.design.constants.UIConstants; import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.ilable.UILabel; @@ -28,7 +28,6 @@ import javax.swing.DefaultListModel; import javax.swing.JPanel; import javax.swing.ListModel; import javax.swing.ListSelectionModel; -import javax.swing.UIManager; import javax.swing.event.ListDataEvent; import javax.swing.event.ListDataListener; import javax.swing.event.ListSelectionEvent; @@ -101,7 +100,7 @@ public abstract class UIListGroupControlPane extends UIControlPane implements Li @Override protected void initLeftPane(JPanel leftPane) { leftPane.add(new UIScrollPane(contentPane = FRGUIPaneFactory.createVerticalFlowLayout_Pane(true, FlowLayout.LEADING, 0, 0)), BorderLayout.CENTER); - leftPane.setBorder(new FineRoundBorder()); + leftPane.setBorder(FineBorderFactory.createWrappedRoundBorder()); } @@ -567,7 +566,7 @@ public abstract class UIListGroupControlPane extends UIControlPane implements Li }; label.setBorder(BorderFactory.createMatteBorder(scale(1), 0, scale(1), 0, FineUIUtils.getUIColor("fill.hover", "fill.hover"))); - label.setForeground(UIManager.getColor("List.wrapper.text.fontColor")); + FineUIStyle.setStyle(label, FineUIStyle.WIDGET_EVENT_LABEL); label.setFont(label.getFont().deriveFont(scale(11F))); label.setPreferredSize(new Dimension(this.getPreferredSize().width, scale(24))); this.nameEdList = nameEdList; diff --git a/designer-base/src/main/java/com/fr/design/gui/controlpane/UISimpleListControlPane.java b/designer-base/src/main/java/com/fr/design/gui/controlpane/UISimpleListControlPane.java index 79c96067fe..c6536e138b 100644 --- a/designer-base/src/main/java/com/fr/design/gui/controlpane/UISimpleListControlPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/controlpane/UISimpleListControlPane.java @@ -2,13 +2,13 @@ package com.fr.design.gui.controlpane; import com.fine.theme.icon.LazyIcon; import com.fr.design.actions.UpdateAction; +import com.fr.design.border.FineBorderFactory; import com.fr.design.constants.UIConstants; import com.fr.design.dialog.BasicPane; import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilist.ListModelElement; import com.fr.design.gui.ilist.UIList; -import com.fr.design.gui.itoolbar.UIToolBarUI; import com.fr.design.gui.itoolbar.UIToolbar; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.menu.ShortCut; @@ -22,7 +22,6 @@ import sun.swing.DefaultLookup; import javax.swing.BorderFactory; import javax.swing.DefaultListModel; -import javax.swing.JComponent; import javax.swing.JList; import javax.swing.JPanel; import javax.swing.ListCellRenderer; @@ -33,8 +32,6 @@ import javax.swing.event.ListSelectionListener; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Component; -import java.awt.Graphics; -import java.awt.Graphics2D; import java.awt.Point; import java.awt.Toolkit; import java.awt.event.ActionEvent; @@ -89,22 +86,14 @@ public class UISimpleListControlPane extends BasicPane { toolbarDef.addShortCut(sj.getShortCut()); } toolBar = ToolBarDef.createJToolBar(); - toolBar.setUI(new UIToolBarUI(){ - @Override - public void paint(Graphics g, JComponent c) { - Graphics2D g2 = (Graphics2D) g; - g2.setColor(Color.WHITE); - g2.fillRect(0, 0, c.getWidth(), c.getHeight()); - } - }); toolbarDef.updateToolBar(toolBar); // 封装一层,加边框 JPanel toolBarPane = new JPanel(new BorderLayout()); toolBarPane.add(toolBar, BorderLayout.CENTER); - toolBarPane.setBorder(BorderFactory.createMatteBorder(1, 1, 0, 1, UIConstants.RULER_LINE_COLOR)); + toolBarPane.setBorder(FineBorderFactory.createDefaultUnderlineBorder()); listPane.add(toolBarPane, BorderLayout.NORTH); - + contentPane.setBorder(FineBorderFactory.createWrappedRoundBorder()); return contentPane; } @@ -420,7 +409,6 @@ public class UISimpleListControlPane extends BasicPane { private void initComponents() { label = new UILabel(); -// label.setBorder(BorderFactory.createEmptyBorder(3, 10, 3, 0)); initialLabelForeground = label.getForeground(); this.setLayout(new BorderLayout()); this.add(label, BorderLayout.CENTER); diff --git a/designer-base/src/main/java/com/fr/design/gui/date/CalendarNumberField.java b/designer-base/src/main/java/com/fr/design/gui/date/CalendarNumberField.java index 1908751c6a..b965f2929a 100644 --- a/designer-base/src/main/java/com/fr/design/gui/date/CalendarNumberField.java +++ b/designer-base/src/main/java/com/fr/design/gui/date/CalendarNumberField.java @@ -12,6 +12,8 @@ import java.awt.Toolkit; import java.awt.event.FocusAdapter; import java.awt.event.FocusEvent; +import static com.fine.theme.utils.FineUIScale.createScaleDimension; + /** * Created with IntelliJ IDEA. * User: 小灰灰 @@ -19,12 +21,13 @@ import java.awt.event.FocusEvent; * Time: 上午11:06 * To change this template use File | Settings | File Templates. */ -public class CalendarNumberField extends UINumberField { +class CalendarNumberField extends UINumberField { private static final int NUM_TEN = 10; public CalendarNumberField(double maxValue) { super(2, 0, 0, maxValue); + this.setHorizontalAlignment(CENTER); this.setBorderPainted(false); addFocusListener(new FocusAdapter() { @Override @@ -32,7 +35,6 @@ public class CalendarNumberField extends UINumberField { setValue(getIntValue()); } }); - this.setFont(DesignUtils.getDefaultGUIFont()); } public void setValue(int value) { @@ -96,7 +98,7 @@ public class CalendarNumberField extends UINumberField { } public Dimension getPreferredSize() { - return new Dimension(24, 11); + return createScaleDimension(24, 24); } public boolean shouldResponseChangeListener() { @@ -104,7 +106,7 @@ public class CalendarNumberField extends UINumberField { } public Insets getInsets() { - return new Insets(0, 6, 0, 4); + return new Insets(0, 0, 0, 0); } } \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/gui/date/UICalendarPanel.java b/designer-base/src/main/java/com/fr/design/gui/date/UICalendarPanel.java index 43b4704a55..e0f668951c 100644 --- a/designer-base/src/main/java/com/fr/design/gui/date/UICalendarPanel.java +++ b/designer-base/src/main/java/com/fr/design/gui/date/UICalendarPanel.java @@ -1,53 +1,41 @@ package com.fr.design.gui.date; import com.fanruan.product.ProductConstantsBase; -import com.formdev.flatlaf.ui.FlatUIUtils; +import com.fine.theme.icon.LazyIcon; +import com.fine.theme.light.ui.FineRoundBorder; +import com.fine.theme.utils.FineUIStyle; +import com.fine.theme.utils.FineUIUtils; import com.formdev.flatlaf.util.ScaledEmptyBorder; -import com.fr.base.BaseUtils; -import com.fr.base.background.GradientBackground; +import com.fr.design.border.FineBorderFactory; import com.fr.design.carton.MonthlyCartonFile; import com.fr.design.carton.SwitchForSwingChecker; -import com.fr.design.constants.UIConstants; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.ilable.UILabel; -import com.fr.design.gui.itextfield.UITextField; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.utils.DesignUtils; -import com.fr.design.utils.gui.GUIPaintUtils; import com.fr.general.GeneralUtils; -import com.fr.stable.Constants; import com.fr.stable.StableUtils; import com.fr.stable.StringUtils; -import javax.swing.BorderFactory; import javax.swing.Box; import javax.swing.Icon; -import javax.swing.JComponent; -import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.SwingConstants; -import javax.swing.UIManager; -import javax.swing.border.LineBorder; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import javax.swing.event.EventListenerList; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; -import java.awt.FlowLayout; import java.awt.Font; import java.awt.Graphics; -import java.awt.Graphics2D; import java.awt.GridLayout; import java.awt.Insets; -import java.awt.Rectangle; -import java.awt.Shape; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; -import java.awt.geom.RoundRectangle2D; import java.io.File; import java.text.SimpleDateFormat; import java.util.Calendar; @@ -55,25 +43,24 @@ import java.util.Date; import java.util.HashSet; import java.util.Set; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.fix; +import static com.fine.swing.ui.layout.Layouts.flex; +import static com.fine.swing.ui.layout.Layouts.row; +import static com.fine.theme.utils.FineUIScale.createScaleDimension; import static com.fine.theme.utils.FineUIScale.scale; +import static com.fine.theme.utils.FineUIStyle.STYLE_TEXT; +import static com.fine.theme.utils.FineUIStyle.setStyle; public class UICalendarPanel extends JPanel { - private static final Font FONT_UI = DesignUtils.getDefaultGUIFont().applySize(scale(12)); - private static final Font FONT_BLACK = new Font(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Black_Font"), Font.PLAIN, scale(12)); + private static final String UI_CLASS_ID = "CalendarPaneUI"; + private static final int WEEKDAY_COUNT = 7; private static final int TOTAL_DAYS_COUNT = 42; - - private static final int WIDTH = scale(31); - private static final int HEIGHT = scale(19); - private static final int START_X = scale(30); - private static final int START_Y = scale(19); + protected final Insets defaultInsets = new Insets(0, 6, 0, 6); //卡顿日志所在地址 private static final String JOURNAL_FILE_PATH = StableUtils.pathJoin(ProductConstantsBase.getEnvHome(), "journal_log"); - protected Color selectedBackground; - protected Color selectedForeground; - protected Color background; - protected Color foreground; private Calendar calendar = null; private UILabel monthLabel = null; @@ -83,9 +70,11 @@ public class UICalendarPanel extends JPanel { private boolean isSupportDateChangeListener = false; private java.util.Date selectedDate = null; private boolean isTimePicker; - private final Color LABEL_FORGE_GROUND = new Color(0x6F6F6); private MouseListener todayListener; private UIDayLabel lbToday; + private static final int WEEK_LABEL_WIDTH = 24; + private static final int WEEK_LABEL_HEIGHT = 24; + private final int ICON_WIDTH = 12; /** * 一个int类型用于判断日历是否是专门用于处理卡顿的设计器反馈箱中的日历 * 0表示是 @@ -125,26 +114,12 @@ public class UICalendarPanel extends JPanel { this.selectedDate = selectedDate; this.isTimePicker = isTimerPicker; calendar = Calendar.getInstance(); - - selectedBackground = UIManager.getColor( - "ComboBox.selectionBackground"); - selectedForeground = UIManager.getColor( - "ComboBox.selectionForeground"); - background = UIManager.getColor("ComboBox.background"); - foreground = UIManager.getColor("ComboBox.foreground"); - dayBttListener = createDayBttListener(); - //renderer this - setPreferredSize(scale(new Dimension(218, 179))); - setBackground(FlatUIUtils.getUIColor("fill.normal", Color.WHITE)); - setBorder(new LineBorder(FlatUIUtils.getUIColor("defaultBorderColor", Color.BLACK))); - setLayout(FRGUIPaneFactory.createBorderLayout()); add(BorderLayout.NORTH, createNorthPane()); add(BorderLayout.CENTER, createCenterPane()); if (isTimerPicker) { - setPreferredSize(scale(new Dimension(218, 209))); add(BorderLayout.SOUTH, createSouthPane()); updateHMS(); } @@ -158,45 +133,23 @@ public class UICalendarPanel extends JPanel { // << < yyyy/MM/dd > >> private JPanel createNorthPane() { JPanel pNorth = FRGUIPaneFactory.createX_AXISBoxInnerContainer_S_Pane(); - pNorth.setBackground(new Color(0xFFFFFF)); - pNorth.setPreferredSize(new Dimension(1, 22)); - + pNorth.setPreferredSize(new Dimension(pNorth.getPreferredSize().width, scale(40))); + pNorth.setOpaque(false); pNorth.add(Box.createHorizontalStrut(5)); - pNorth.add(createSkipButton(Calendar.YEAR, -1, new Icon[]{ - BaseUtils.readIcon("/com/fr/design/images/calender/year_reduce.png"), - BaseUtils.readIcon("/com/fr/design/images/calender/year_reduce_hover.png"), - BaseUtils.readIcon("/com/fr/design/images/calender/year_reduce_click.png") - })); + pNorth.add(createSkipButton(Calendar.YEAR, -1, new LazyIcon("drag_left"))); pNorth.add(Box.createHorizontalStrut(11)); - UILabel monthMinus = createSkipButton(Calendar.MONTH, -1, new Icon[]{ - BaseUtils.readIcon("/com/fr/design/images/calender/month_reduce.png"), - BaseUtils.readIcon("/com/fr/design/images/calender/month_reduce_hover.png"), - BaseUtils.readIcon("/com/fr/design/images/calender/month_reduce_click.png") - }); - monthMinus.setPreferredSize(scale(new Dimension(20, 20))); + UIButton monthMinus = createSkipButton(Calendar.MONTH, -1, new LazyIcon("left_arrow")); pNorth.add(monthMinus); monthLabel = new UILabel("", UILabel.CENTER); - monthLabel.setBackground(new Color(0xFFFFFF)); - monthLabel.setForeground(new Color(0x000000)); - monthLabel.setFont(FONT_UI); pNorth.add(Box.createHorizontalGlue()); pNorth.add(monthLabel); pNorth.add(Box.createHorizontalGlue()); - UILabel monthPlus = createSkipButton(Calendar.MONTH, 1, new Icon[]{ - BaseUtils.readIcon("/com/fr/design/images/calender/month_add.png"), - BaseUtils.readIcon("/com/fr/design/images/calender/month_add_hover.png"), - BaseUtils.readIcon("/com/fr/design/images/calender/month_add_click.png") - }); - monthPlus.setPreferredSize(scale(new Dimension(20, 20))); + UIButton monthPlus = createSkipButton(Calendar.MONTH, 1, new LazyIcon("right_arrow")); monthPlus.setHorizontalAlignment(SwingConstants.RIGHT); pNorth.add(monthPlus); pNorth.add(Box.createHorizontalStrut(11)); - pNorth.add(createSkipButton(Calendar.YEAR, 1, new Icon[]{ - BaseUtils.readIcon("/com/fr/design/images/calender/year_add.png"), - BaseUtils.readIcon("/com/fr/design/images/calender/year_add_hover.png"), - BaseUtils.readIcon("/com/fr/design/images/calender/year_add_click.png") - })); + pNorth.add(createSkipButton(Calendar.YEAR, 1, new LazyIcon("drag_right"))); pNorth.add(Box.createHorizontalStrut(5)); return pNorth; @@ -205,10 +158,8 @@ public class UICalendarPanel extends JPanel { private JPanel createCenterPane() { //星期日 星期一 星期二 星期三 星期四 星期五 星期六 - JPanel pWeeks = new JPanel(new GridLayout(1, 7, 1, 0)); - pWeeks.setPreferredSize(scale(new Dimension(216, 22))); - pWeeks.setBackground(new Color(0xFFFFFF)); - pWeeks.setOpaque(true); + JPanel pWeeks = new JPanel(new GridLayout(1, 7, 9, 0)); + pWeeks.setOpaque(false); String[] strWeeks = new String[]{StringUtils.EMPTY, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sun"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Mon"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tue"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Wed"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Thu"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Fri"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Sat") @@ -216,61 +167,47 @@ public class UICalendarPanel extends JPanel { for (int i = 1; i <= WEEKDAY_COUNT; i++) { UILabel label = new UILabel(); label.setHorizontalAlignment(UILabel.CENTER); - label.setForeground(new Color(0x4D4C4C)); - label.setFont(FONT_BLACK); label.setText(strWeeks[i]); + label.setPreferredSize(createScaleDimension(WEEK_LABEL_WIDTH, WEEK_LABEL_HEIGHT)); pWeeks.add(label); } + pWeeks.setBorder(new ScaledEmptyBorder(3, 9, 3, 9)); //中间放日期的面板 days = new DayPane(); - days.setOpaque(true); - days.setPreferredSize(scale(new Dimension(216, 115))); + days.setOpaque(false); + days.setPreferredSize(new Dimension(pWeeks.getPreferredSize().width, scale(165))); JPanel pCenter = FRGUIPaneFactory.createBorderLayout_S_Pane(); - pCenter.setOpaque(true); + pCenter.setOpaque(false); pCenter.add(pWeeks, BorderLayout.NORTH); pCenter.add(days, BorderLayout.CENTER); //显示今天的日期,直接单击图标跳到今天 - GradientPane pToday = new GradientPane(new GradientBackground(new Color(0x097BDA), new Color(0x40A3EE), GradientBackground.TOP2BOTTOM), false); - pToday.setPreferredSize(scale(new Dimension(216, 18))); - pToday.setLayout(new BorderLayout()); lbToday = new UIDayLabel(new Date(), false); - lbToday.setForeground(new Color(0x000000)); - todayListener = createTodayListener(pToday, lbToday); + lbToday.setPreferredSize(new Dimension(lbToday.getPreferredSize().width, scale(30))); + lbToday.setBorder(FineBorderFactory.createDefaultTopBorder()); + todayListener = createTodayListener(lbToday); lbToday.addMouseListener(todayListener); - pToday.setBackground(new Color(0xF0F0F0)); - pToday.add(lbToday, BorderLayout.CENTER); - pCenter.add(pToday, BorderLayout.SOUTH); + pCenter.add(lbToday, BorderLayout.SOUTH); return pCenter; } private JPanel createSouthPane() { JPanel sPane = new JPanel(); - sPane.setPreferredSize(scale(new Dimension(216, 30))); - sPane.setBackground(Color.WHITE); - sPane.setLayout(new FlowLayout(FlowLayout.LEFT, 0, 6)); + sPane.setOpaque(false); + sPane.setLayout(new BorderLayout()); UILabel timeLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Time") + ":"); - timeLabel.setBorder(new ScaledEmptyBorder(0, 9, 0, 5)); - timeLabel.setFont(FONT_UI); - sPane.add(timeLabel); hms = new HMSPane(); - sPane.add(hms); - - UILabel gap = new UILabel(); - gap.setPreferredSize(scale(new Dimension(26, 1))); - sPane.add(gap); UIButton okButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_OK")) { public Dimension getPreferredSize() { - return scale(new Dimension(32, 18)); + return createScaleDimension(48, 24); } public Insets getInsets() { return new Insets(0, 0, 0, 0); } }; - okButton.setFont(FONT_UI); okButton.setVerticalAlignment(SwingConstants.CENTER); okButton.addActionListener(new ActionListener() { @@ -282,18 +219,11 @@ public class UICalendarPanel extends JPanel { } }); - sPane.add(okButton); - + sPane.add(row(cell(timeLabel).weight(36), cell(hms).weight(180), flex(), cell(okButton).weight(48)).getComponent()); + sPane.setBorder(new ScaledEmptyBorder(10, 12, 10, 12)); return sPane; } - public void resetHMSPaneSelectedNumberField() { - if (this.hms != null) { - this.hms.selectedNumberField = this.hms.hField; - this.hms.nextButton.requestFocus(); - } - } - /** * 创建上一月,下一月,上一年,下一年"按钮" * @@ -301,37 +231,20 @@ public class UICalendarPanel extends JPanel { * @param amount int * @return UILabel */ - protected UILabel createSkipButton(final int field, final int amount, final Icon[] icons) { - if (icons.length != 3) { - return new UILabel(); - } - UILabel label = new UILabel(); - label.setIcon(icons[0]); - label.setRequestFocusEnabled(false); - label.addMouseListener(createSkipListener(label, field, amount, icons)); - return label; + protected UIButton createSkipButton(final int field, final int amount, final Icon icon) { + UIButton button = new UIButton(); + FineUIStyle.setStyle(button, FineUIStyle.ORIGINAL_BUTTON); + button.setIcon(icon); + button.setRequestFocusEnabled(false); + button.addMouseListener(createSkipListener(field, amount)); + return button; } - protected MouseListener createSkipListener(final UILabel label, final int field, - final int amount, final Icon[] icons) { + protected MouseListener createSkipListener(final int field, final int amount) { return new MouseAdapter() { public void mouseReleased(MouseEvent e) { - label.setIcon(icons[1]); calendar.add(field, amount); updateDays(); - resetHMSPaneSelectedNumberField(); - } - - public void mouseEntered(MouseEvent e) { - label.setIcon(icons[1]); - } - - public void mouseExited(MouseEvent e) { - label.setIcon(icons[0]); - } - - public void mousePressed(MouseEvent e) { - label.setIcon(icons[2]); } }; } @@ -383,10 +296,6 @@ public class UICalendarPanel extends JPanel { } } else { label.addMouseListener(dayBttListener); - label.setEnabled(isCurrentMonth); - } - if (!isCurrentMonth) { - label.setForeground(LABEL_FORGE_GROUND); } } /** @@ -432,30 +341,23 @@ public class UICalendarPanel extends JPanel { } for (int i = 0; i < TOTAL_DAYS_COUNT; i++) { setupCalendar.add(Calendar.DATE, 1); - GradientPane gp = new GradientPane(new GradientBackground(new Color(0xFEFEFE), new Color(0xF3F2F3), GradientBackground.TOP2BOTTOM), true); - gp.setIndex(i); - gp.setLayout(new BorderLayout()); - gp.setBorder(null); UIDayLabel label = new UIDayLabel(setupCalendar.getTime()); - label.setHorizontalAlignment(SwingConstants.RIGHT); - label.setBorder(new ScaledEmptyBorder(0, 0, 0, 9)); + label.setIndex(i); if ("1".equals(label.getText())) { isCurrentMonth = !isCurrentMonth; } setUIDayLabel(label, isCurrentMonth, setupCalendar, logSet); + label.setCurrentMonth(isCurrentMonth); + days.add(label); //当前选择的日期 if (setupCalendar.get(Calendar.DAY_OF_MONTH) == selectedCalendar.get(Calendar.DAY_OF_MONTH) && isCurrentMonth) { - gp.setGradientBackground(new GradientBackground(new Color(0x097BD9), new Color(0x41A3EE), GradientBackground.TOP2BOTTOM)); - gp.add(label, BorderLayout.CENTER); - days.add(gp); days.setSelectedIndex(i); + label.setSelected(true); this.selectedDate = label.getDate(); this.calendar.setTime(this.selectedDate); - } else { - gp.add(label, BorderLayout.CENTER); - days.add(gp); } } + days.setBorder(new ScaledEmptyBorder(3, 9, 3, 9)); days.validate(); } @@ -466,33 +368,11 @@ public class UICalendarPanel extends JPanel { } } - protected MouseListener createTodayListener(final GradientPane jp, final UIDayLabel label) { + protected MouseListener createTodayListener(final UIDayLabel label) { return new MouseAdapter() { - @Override - public void mousePressed(MouseEvent e) { - jp.setBorder(BorderFactory.createLineBorder(new Color(0x3868AA))); - jp.setPaintGradientBackground(true); - jp.repaint(); - label.setForeground(new Color(0xFFFFFF)); - } - - @Override - public void mouseExited(MouseEvent e) { - jp.setBackground(new Color(0xF0F0F0)); - } - - @Override - public void mouseEntered(MouseEvent e) { - jp.setBackground(new Color(0xC8DDEE)); - } @Override public void mouseReleased(MouseEvent e) { - jp.setBackground(new Color(0xF0F0F0)); - label.setForeground(new Color(0x000000)); - jp.setBorder(null); - jp.setPaintGradientBackground(false); - jp.repaint(); if (isTimePicker) { UICalendarPanel.this.setSelectedDate(label.getDate()); updateDays(); @@ -501,7 +381,6 @@ public class UICalendarPanel extends JPanel { UICalendarPanel.this.setSelectedDate(label.getDate()); UICalendarPanel.this.isSupportDateChangeListener = false; } - resetHMSPaneSelectedNumberField(); } }; } @@ -511,12 +390,11 @@ public class UICalendarPanel extends JPanel { public void mousePressed(MouseEvent e) { if (isEnabled()) { UIDayLabel com = (UIDayLabel) e.getComponent(); - GradientPane gp = (GradientPane) com.getParent(); - if (days.selectedIndex != -1) { - ((GradientPane) days.getComponent(days.selectedIndex)).setGradientBackground(new GradientBackground(new Color(0xFEFEFE), new Color(0xF3F2F3), GradientBackground.TOP2BOTTOM)); - } - gp.setGradientBackground(new GradientBackground(new Color(0x097BD9), new Color(0x41A3EE), GradientBackground.TOP2BOTTOM)); - days.setSelectedIndex(gp.getIndex()); + days.setSelectedIndex(com.getIndex()); + com.setHovered(false); + com.setPressed(true); + com.getParent().validate(); + com.getParent().repaint(); } } @@ -530,31 +408,30 @@ public class UICalendarPanel extends JPanel { UICalendarPanel.this.setSelectedDate(com.getDate()); UICalendarPanel.this.isSupportDateChangeListener = false; } - resetHMSPaneSelectedNumberField(); } public void mouseEntered(MouseEvent e) { if (isEnabled()) { - JComponent com = (JComponent) e.getComponent(); - GradientPane gp = (GradientPane) com.getParent(); - if (gp.getIndex() == days.selectedIndex) { + UIDayLabel com = (UIDayLabel) e.getComponent(); + com.setHovered(true); + if (com.getIndex() == days.selectedIndex) { return; } - gp.setGradientBackground(new GradientBackground(new Color(0xFFFFFF), new Color(0xEAF4FC), GradientBackground.TOP2BOTTOM)); - days.setFloatIndex(gp.getIndex()); + days.setFloatIndex(com.getIndex()); + com.getParent().validate(); + com.getParent().repaint(); } } public void mouseExited(MouseEvent e) { if (isEnabled()) { - JComponent com = (JComponent) e.getComponent(); - GradientPane gp = (GradientPane) com.getParent(); - if (gp.getIndex() != days.selectedIndex) { - gp.setGradientBackground(new GradientBackground(new Color(0xFEFEFE), new Color(0xF3F2F3), GradientBackground.TOP2BOTTOM)); - } + UIDayLabel com = (UIDayLabel) e.getComponent(); + com.setHovered(false); + com.setPressed(false); days.setFloatIndex(-1); - days.repaint(); + com.getParent().validate(); + com.getParent().repaint(); } } }; @@ -596,127 +473,34 @@ public class UICalendarPanel extends JPanel { return selectedDate; } - private class GradientPane extends JPanel { - - private int index; - private boolean isGradientBackground; - private GradientBackground gradientBackground; - - public GradientPane() { - - } - - public GradientPane(GradientBackground gradientBackground, boolean isGradientBackground) { - super(); - this.gradientBackground = gradientBackground; - this.isGradientBackground = isGradientBackground; - } - - public void paint(Graphics g) { - super.paint(g); - if (isGradientBackground && gradientBackground != null) { - gradientBackground.paint(g, new Rectangle(this.getWidth(), this.getHeight())); - } - paintChildren(g); - } - - public void setPaintGradientBackground(boolean flag) { - this.isGradientBackground = flag; - } - - public void setGradientBackground(GradientBackground gradientBackground) { - this.gradientBackground = gradientBackground; - } - - public void setIndex(int i) { - this.index = i; - } - - public int getIndex() { - return this.index; - } - - public void setForeground(Color c) { - super.setForeground(c); - if (getComponentCount() > 0) { - getComponent(0).setForeground(c); - } - } - } - private class DayPane extends JPanel { private Color floatColor = new Color(0xC5E2F9); - private Color selectedColor = new Color(0x41A3EE); private int floateIndex; private int selectedIndex; public DayPane() { floateIndex = -1; selectedIndex = -1; - this.setLayout(new GridLayout(6, 7, 1, 1)); - this.setBackground(new Color(0xFFFFFF)); - this.setBorder(BorderFactory.createMatteBorder(1, 0, 1, 0, new Color(0xDADADA))); + this.setLayout(new GridLayout(6, 7, scale(9), scale(3))); } public void paint(Graphics g) { super.paint(g); - int width = UICalendarPanel.WIDTH; - int height = UICalendarPanel.HEIGHT; Color oldColor = g.getColor(); - g.setColor(new Color(0xDADADA)); - int start_x = UICalendarPanel.START_X; - int start_y = UICalendarPanel.START_Y; - for (int i = 0; i < 6; i++) { - g.drawLine(start_x, 0, start_x, getHeight()); - start_x += width; - } - for (int i = 0; i < 5; i++) { - g.drawLine(0, start_y, getWidth(), start_y); - start_y += height; - } if (floateIndex > -1) { g.setColor(floatColor); - paintChindPane(g, floateIndex); - } - if (selectedIndex > -1) { - g.setColor(selectedColor); - paintChindPane(g, selectedIndex); } g.setColor(oldColor); } - private void paintChindPane(Graphics g, int index) { - if (index % 7 == 0) { - int y1 = index / 7 * UICalendarPanel.HEIGHT; - g.drawLine(0, y1, UICalendarPanel.START_X, y1); - g.drawLine(0, y1 + UICalendarPanel.HEIGHT, UICalendarPanel.START_X, y1 + UICalendarPanel.HEIGHT); - g.drawLine(UICalendarPanel.START_X, y1, UICalendarPanel.START_X, y1 + UICalendarPanel.HEIGHT); - } else if (index % 7 == 6) { - int y1 = index / 7 * UICalendarPanel.HEIGHT; - g.drawLine(scale(185), y1, scale(216), y1); - g.drawLine(scale(185), y1 + UICalendarPanel.HEIGHT, scale(216), y1 + UICalendarPanel.HEIGHT); - g.drawLine(scale(185), y1, scale(185), y1 + UICalendarPanel.HEIGHT); - } else { - int x1 = index % 7 * UICalendarPanel.WIDTH - 1; - int y1 = index / 7 * UICalendarPanel.HEIGHT; - g.drawRect(x1, y1, UICalendarPanel.WIDTH, UICalendarPanel.HEIGHT); - } - } - public void setFloatIndex(int index) { this.floateIndex = index; repaint(); } public void setSelectedIndex(int index) { - if (this.selectedIndex != -1 && this.selectedIndex < getComponentCount()) { - this.getComponent(selectedIndex).setForeground(Color.black); - } - if (index != -1 && index < getComponentCount()) { - this.getComponent(index).setForeground(Color.WHITE); - } this.selectedIndex = index; repaint(); } @@ -725,17 +509,13 @@ public class UICalendarPanel extends JPanel { private class HMSPane extends JPanel { private boolean isRolOver; - private UIButton preButton; - private UIButton nextButton; private CalendarNumberField hField; private CalendarNumberField mField; private CalendarNumberField sField; - private CalendarNumberField selectedNumberField; public HMSPane() { - this.setPreferredSize(scale(new Dimension(101, 18))); this.setLayout(new BorderLayout(0, 0)); - this.setBackground(null); + this.setOpaque(false); initComponents(); initListener(); @@ -757,49 +537,68 @@ public class UICalendarPanel extends JPanel { } private void initComponents() { - JPanel jp = new JPanel(new FlowLayout(FlowLayout.LEFT, 0, 2)); - jp.setBackground(null); - jp.setBorder(null); - hField = new CalendarNumberField(23); mField = new CalendarNumberField(59); sField = new CalendarNumberField(59); - selectedNumberField = hField; + this.add(row(cell(combineFieldArrowPane(hField)), cell(createGapLabel()), cell(combineFieldArrowPane(mField)), + cell(createGapLabel()), cell(combineFieldArrowPane(sField)), fix(4)).getComponent(), BorderLayout.CENTER); + } + + private JPanel combineFieldArrowPane(CalendarNumberField field) { + JPanel panel = new JPanel(new BorderLayout()); + panel.setOpaque(false); + Insets insets = FineUIUtils.getUIInsets("InputTextField.borderInsets", defaultInsets); + field.setBorder(new ScaledEmptyBorder(insets.top, insets.left, insets.bottom, insets.right)); + UIButton preButton = createArrowButton(new LazyIcon("up_arrow", ICON_WIDTH)); + UIButton nextButton = createArrowButton(new LazyIcon("down_arrow", ICON_WIDTH)); + JPanel arrowPane = createArrowPane(preButton, nextButton); + panel.add(field, BorderLayout.CENTER); + panel.add(arrowPane, BorderLayout.EAST); + panel.setBorder(new FineRoundBorder()); - jp.add(hField); - jp.add(createGapLabel()); - jp.add(mField); - jp.add(createGapLabel()); - jp.add(sField); + nextButton.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + field.setValue(field.getIntValue() - 1); + field.requestFocus(); + field.selectAll(); - this.add(jp, BorderLayout.CENTER); - preButton = new UIButton(UIConstants.ARROW_UP_ICON) { - public boolean shouldResponseChangeListener() { - return false; } - }; - preButton.setRoundBorder(true, Constants.LEFT); - nextButton = new UIButton(UIConstants.ARROW_DOWN_ICON) { - public boolean shouldResponseChangeListener() { - return false; + }); + preButton.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + field.setValue(field.getIntValue() + 1); + field.requestFocus(); + field.selectAll(); } - }; - nextButton.setRoundBorder(true, Constants.LEFT); + }); + return panel; + } + + private JPanel createArrowPane(UIButton preButton, UIButton nextButton) { JPanel arrowPane = new JPanel(); - arrowPane.setPreferredSize(scale(new Dimension(11, 18))); + arrowPane.setPreferredSize(createScaleDimension(12, 24)); arrowPane.setLayout(new GridLayout(2, 1)); arrowPane.add(preButton); arrowPane.add(nextButton); - this.add(arrowPane, BorderLayout.EAST); + arrowPane.setOpaque(false); + return arrowPane; } - private void initListener() { - MouseAdapter backgroundAdapter = new MouseAdapter() { - @Override - public void mousePressed(MouseEvent e) { - HMSPane.this.selectedNumberField = (CalendarNumberField) e.getComponent(); + private UIButton createArrowButton(Icon icon) { + UIButton arrowButton = new UIButton(icon) { + public boolean shouldResponseChangeListener() { + return false; } + }; + setStyle(arrowButton, STYLE_TEXT); + return arrowButton; + } + + private void initListener() { + MouseAdapter backgroundAdapter = new MouseAdapter() { @Override public void mouseExited(MouseEvent e) { isRolOver = false; @@ -815,32 +614,10 @@ public class UICalendarPanel extends JPanel { hField.addMouseListener(backgroundAdapter); mField.addMouseListener(backgroundAdapter); sField.addMouseListener(backgroundAdapter); - nextButton.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - HMSPane.this.selectedNumberField.setValue(HMSPane.this.selectedNumberField.getIntValue() - 1); - HMSPane.this.selectedNumberField.requestFocus(); - HMSPane.this.selectedNumberField.selectAll(); - - } - }); - preButton.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - HMSPane.this.selectedNumberField.setValue(HMSPane.this.selectedNumberField.getIntValue() + 1); - HMSPane.this.selectedNumberField.requestFocus(); - HMSPane.this.selectedNumberField.selectAll(); - } - }); } - private UILabel createGapLabel() { - UILabel uiLabel = new UILabel(":"); - uiLabel.setHorizontalAlignment(SwingConstants.CENTER); - uiLabel.setBackground(null); - uiLabel.setBorder(null); - uiLabel.setPreferredSize(scale(new Dimension(6, 10))); - return uiLabel; + private JPanel createGapLabel() { + return row(fix(4), cell(new UILabel(":")), fix(4)).getComponent(); } public Insets getInsets() { @@ -849,17 +626,6 @@ public class UICalendarPanel extends JPanel { public void paint(Graphics g) { super.paint(g); - paintBorder(g); - } - - public void paintBorder(Graphics g) { - Graphics2D g2d = (Graphics2D) g; - if (isRolOver) { - Shape shape = new RoundRectangle2D.Double(1, 1, 86, 15, UIConstants.ARC, UIConstants.ARC); - GUIPaintUtils.paintBorderShadow(g2d, 3, shape, UIConstants.HOVER_BLUE, Color.WHITE); - } else { - GUIPaintUtils.drawBorder(g2d, 0, 0, 101, 18, true, 3); - } } public void populate(Calendar calendar) { @@ -875,21 +641,8 @@ public class UICalendarPanel extends JPanel { } } - public static void main(String[] args) { - JFrame frame = new JFrame(); - UICalendarPanel calendarPanel = new UICalendarPanel(); - final UITextField field = new UITextField(); - field.setPreferredSize(new Dimension(120, 25)); - calendarPanel.addDateChangeListener(new ChangeListener() { - public void stateChanged(ChangeEvent e) { - Date selectedDate = (Date) e.getSource(); - SimpleDateFormat f = new SimpleDateFormat("yyyy/MM/dd"); - field.setText(f.format(selectedDate)); - } - }); - frame.getContentPane().setLayout(FRGUIPaneFactory.createCenterFlowLayout()); - frame.getContentPane().add(field); - frame.getContentPane().add(calendarPanel); - frame.setVisible(true); + @Override + public String getUIClassID() { + return UI_CLASS_ID; } } diff --git a/designer-base/src/main/java/com/fr/design/gui/date/UIDatePicker.java b/designer-base/src/main/java/com/fr/design/gui/date/UIDatePicker.java index cbbc8ceeea..eddf8945b2 100644 --- a/designer-base/src/main/java/com/fr/design/gui/date/UIDatePicker.java +++ b/designer-base/src/main/java/com/fr/design/gui/date/UIDatePicker.java @@ -1,10 +1,7 @@ package com.fr.design.gui.date; -import com.fine.theme.icon.LazyIcon; -import com.fine.theme.utils.FineUIStyle; -import com.fr.design.gui.ibutton.UIButton; +import com.fine.theme.light.ui.FineComboBoxUI; import com.fr.design.gui.icombobox.UIComboBox; -import com.fr.design.gui.icombobox.UIComboBoxUI; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.utils.gui.GUICoreUtils; import com.fr.general.ComparatorUtils; @@ -13,6 +10,7 @@ import com.fr.stable.StringUtils; import com.fr.design.carton.FeedbackToolboxDialog; import javax.swing.BorderFactory; +import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JPanel; @@ -26,6 +24,7 @@ import javax.swing.plaf.basic.ComboPopup; import java.awt.BorderLayout; import java.awt.Cursor; import java.awt.LayoutManager; +import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.io.Serializable; import java.text.ParseException; @@ -236,9 +235,6 @@ public class UIDatePicker extends UIComboBox implements Serializable { if (willHide || UIDatePicker.this.isEnabled() == false) { return; } - if (calendarPanel != null) { - calendarPanel.resetHMSPaneSelectedNumberField(); - } super.show(); } @@ -292,40 +288,44 @@ public class UIDatePicker extends UIComboBox implements Serializable { @Override protected ComboBoxUI getUIComboBoxUI() { - return new UIComboBoxUI() { + return new FineComboBoxUI() { @Override - protected UIButton createArrowButton() { - arrowButton = new UIButton(new LazyIcon("down_arrow")) { - public boolean shouldResponseChangeListener() { - return false; - } - }; - arrowButton.addMouseListener(this); - comboBox.addMouseListener(this); - FineUIStyle.setStyle(arrowButton, FineUIStyle.PLAIN_BUTTON); - return (UIButton) arrowButton; + protected JButton createArrowButton() { + JButton button = super.createArrowButton(); + button.addMouseListener(getPopupMouseAdapter()); + return button; } @Override protected ComboPopup createPopup() { return new DatePopup(comboBox); } + @Override - public void mousePressed(MouseEvent e) { - if (UIDatePicker.this.isPopupVisible()) { - willHide = true; - UIDatePicker.this.hidePopup(); - } else { - willHide = false; - UIDatePicker.this.showPopup(); - } + protected void installListeners() { + super.installListeners(); + comboBox.addMouseListener(getPopupMouseAdapter()); + } + + MouseAdapter getPopupMouseAdapter() { + return new MouseAdapter() { + @Override + public void mousePressed(MouseEvent e) { + if (UIDatePicker.this.isPopupVisible()) { + willHide = true; + UIDatePicker.this.hidePopup(); + } else { + willHide = false; + UIDatePicker.this.showPopup(); + } + } + }; } }; } - //设置dataFormat public void setDateFormat(SimpleDateFormat format){ this.dateFormat = format; diff --git a/designer-base/src/main/java/com/fr/design/gui/date/UIDayLabel.java b/designer-base/src/main/java/com/fr/design/gui/date/UIDayLabel.java index 06f30e1aef..794b9f3cd0 100644 --- a/designer-base/src/main/java/com/fr/design/gui/date/UIDayLabel.java +++ b/designer-base/src/main/java/com/fr/design/gui/date/UIDayLabel.java @@ -1,16 +1,48 @@ package com.fr.design.gui.date; import com.fr.design.gui.ilable.UILabel; -import com.fr.design.utils.DesignUtils; -import java.awt.Dimension; import java.text.SimpleDateFormat; import java.util.Date; +/** + * 日期控件,day label + * + * @author lemon + * @since 12.0 + * Created on 2024/09/22 + */ public class UIDayLabel extends UILabel { + private static final String UI_CLASS_ID = "DayLabelUI"; private Date date = null; + private int index; + private boolean pressed = false; + private boolean hovered = false; + private boolean selected = false; + private boolean currentMonth = false; + private boolean smallLabel = false; + + public boolean isHovered() { + return hovered; + } + + public boolean isPressed() { + return pressed; + } + + public boolean isSelected() { + return selected; + } + + public boolean isCurrentMonth() { + return currentMonth; + } + + public boolean isSmallLabel() { + return smallLabel; + } /** * 日期格式(TODAY/TIP用) @@ -26,11 +58,11 @@ public class UIDayLabel extends UILabel { } public UIDayLabel(Date date, boolean isSmallLabel) { + setOpaque(false); setHorizontalAlignment(UILabel.CENTER); - setFont(DesignUtils.getDefaultGUIFont()); this.date = date; - setPreferredSize(new Dimension(30, 18)); - if (isSmallLabel) { + this.smallLabel = isSmallLabel; + if (smallLabel) { setText(dayFormat.format(date)); } else { setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Today") + ":" + dateFormat.format(new Date())); @@ -42,8 +74,38 @@ public class UIDayLabel extends UILabel { return date; } + public void setHovered(boolean hovered) { + this.hovered = hovered; + } + + public void setPressed(boolean pressed) { + this.pressed = pressed; + } + + public void setSelected(boolean selected) { + this.selected = selected; + } + + public void setCurrentMonth(boolean currentMonth) { + this.currentMonth = currentMonth; + } + + public void setDate(Date date) { this.date = date; } + public void setIndex(int i) { + this.index = i; + } + + public int getIndex() { + return this.index; + } + + @Override + public String getUIClassID() { + return UI_CLASS_ID; + } + } \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/ClosableBubbleFloatPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/ClosableBubbleFloatPane.java index 41a4471daa..7f6a7a59f0 100644 --- a/designer-base/src/main/java/com/fr/design/gui/frpane/ClosableBubbleFloatPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/frpane/ClosableBubbleFloatPane.java @@ -1,10 +1,9 @@ package com.fr.design.gui.frpane; -import com.fr.base.BaseUtils; +import com.fine.theme.icon.LazyIcon; import com.fr.design.beans.BasicBeanPane; import com.fr.design.gui.ilable.UILabel; -import javax.swing.Icon; import javax.swing.JPanel; import java.awt.BorderLayout; import java.awt.Point; @@ -30,8 +29,7 @@ public abstract class ClosableBubbleFloatPane extends UIBubbleFloatPane { protected JPanel initTopOptionMenu() { JPanel menu = new JPanel(new BorderLayout()); - Icon icon = BaseUtils.readIcon("/com/fr/design/images/buttonicon/close_icon.png"); - UILabel label = new UILabel(icon); + UILabel label = new UILabel(new LazyIcon("close")); label.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/FineTabbedPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/FineTabbedPane.java index 5ed4b5bcf3..508b58ca96 100644 --- a/designer-base/src/main/java/com/fr/design/gui/frpane/FineTabbedPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/frpane/FineTabbedPane.java @@ -4,6 +4,7 @@ import com.fine.swing.ui.layout.Box; import com.fine.theme.utils.FineUIUtils; import com.formdev.flatlaf.ui.FlatUIUtils; import com.formdev.flatlaf.util.ScaledEmptyBorder; +import com.fr.design.gui.ibutton.FitUIButtonGroup; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.utils.ColorUtils; @@ -42,15 +43,15 @@ public class FineTabbedPane extends Box { private final UIButtonGroup tabGroup; private final Map tabComponents; private final int[] tabLayout; + private final boolean useFitTab; - private FineTabbedPane(Map tabComponents, float headRatio, int[] tabLayout) { + private FineTabbedPane(Map tabComponents, float headRatio, int[] tabLayout, boolean useFitTab) { this.headRatio = headRatio; this.tabComponents = tabComponents; this.tabLayout = tabLayout; - + this.useFitTab = useFitTab; String[] titleArray = tabComponents.keySet().toArray(new String[0]); - this.tabGroup = new UIButtonGroup<>(titleArray, titleArray, tabLayout); - + this.tabGroup = useFitTab ? new FitUIButtonGroup<>(titleArray, titleArray, tabLayout) : new UIButtonGroup<>(titleArray, titleArray, tabLayout); initLayout(); initListeners(); } @@ -71,6 +72,7 @@ public class FineTabbedPane extends Box { private int[] tabLayout; private float headRatio = 0.5f; private final Map tabComponents = new LinkedHashMap<>(); + private boolean useFitTab = false; /** * 设置头部居中比例,0-1之间 @@ -94,6 +96,16 @@ public class FineTabbedPane extends Box { return this; } + /** + * 设置使用自适应文本Tab + * + * @return TabPaneBuilder + */ + public TabPaneBuilder withAdaptiveFit() { + this.useFitTab = true; + return this; + } + /** * 添加tab标签 * @@ -122,7 +134,7 @@ public class FineTabbedPane extends Box { } else if (Arrays.stream(tabLayout).sum() != tabComponents.size()) { throw new IllegalArgumentException("illegal tab layout argument!"); } - return new FineTabbedPane(tabComponents, headRatio, tabLayout); + return new FineTabbedPane(tabComponents, headRatio, tabLayout, useFitTab); } } @@ -130,36 +142,45 @@ public class FineTabbedPane extends Box { initCoreComponents(); setMatchParentSize(true); float flexRatio = (1 - headRatio) / 2; - int headHeight = FlatUIUtils.getUIInt("Component.defaultHeight",24) * tabLayout.length / 2; + int headHeight = FlatUIUtils.getUIInt("Component.defaultHeight", 24) * tabLayout.length / 2; + Component tabRow = useFitTab ? row(flex(), cell(tabGroup), flex()).getComponent() : row(flex(flexRatio), cell(tabGroup).weight(headRatio), flex(flexRatio)).getComponent(); + Component backgroundComp = createBackGroundComp(); add( column( - row( - flex(flexRatio), cell(tabGroup).weight(headRatio), flex(flexRatio) - ), - flex() + cell(tabRow), + cell(centerPane).with(it -> it.setBorder(new ScaledEmptyBorder(10, 10, 10, 10))).weight(1) ), column( fix(headHeight), - cell(centerPane).with(it -> it.setBorder(new ScaledEmptyBorder(headHeight + 10, 10, 10, 10))).weight(1) + cell(backgroundComp).weight(1) ) ); fillBackgroundColor(); } + private Component createBackGroundComp() { + JPanel pane = new JPanel(); + pane.putClientProperty(PANEL_TYPE, ROUNDED_PANEL); + pane.setBackground(getFillColor()); + return pane; + } + private void initCoreComponents() { cards = new CardLayout(); centerPane = new JPanel(cards); - centerPane.putClientProperty(PANEL_TYPE, ROUNDED_PANEL); tabComponents.forEach((key, value) -> { value.setOpaque(false); centerPane.add(value, key); }); } + private Color getFillColor() { + return FineUIUtils.getUIColor("FineTabbedPane.background", "fill.gray"); + } + private void fillBackgroundColor() { - Color fillColor = FineUIUtils.getUIColor("FineTabbedPane.background", "fill.gray"); Color defaultColor = FineUIUtils.getUIColor("default.background", "Component.background"); - ColorUtils.syncBackgroundIfAbsent(centerPane, fillColor, defaultColor); + ColorUtils.syncBackgroundIfAbsent(centerPane, getFillColor(), defaultColor); } private void initListeners() { diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/UIBubbleFloatPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/UIBubbleFloatPane.java index eba2ce53bd..4916e33100 100644 --- a/designer-base/src/main/java/com/fr/design/gui/frpane/UIBubbleFloatPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/frpane/UIBubbleFloatPane.java @@ -3,6 +3,7 @@ package com.fr.design.gui.frpane; import com.fine.theme.utils.FineUIUtils; import com.formdev.flatlaf.util.SystemInfo; import com.fr.design.beans.BasicBeanPane; +import com.fr.design.constants.LayoutConstants; import com.fr.design.dialog.UIDialog; import com.fr.design.utils.AWTUtilities; import com.fr.log.FineLoggerFactory; @@ -32,6 +33,9 @@ import java.awt.Window; import java.awt.event.AWTEventListener; import java.awt.event.MouseEvent; +import static com.fine.swing.ui.layout.Layouts.column; +import static com.fine.swing.ui.layout.Layouts.cell; + /** * @author Jerry * 非模态悬浮对话框,气泡形状 @@ -226,8 +230,7 @@ public abstract class UIBubbleFloatPane extends BasicBeanPane { } this.setLayout(new BorderLayout()); - this.add(initTopOptionMenu(), BorderLayout.NORTH); - this.add(contentPane, BorderLayout.CENTER); + this.add(column(LayoutConstants.VGAP_MEDIUM, cell(initTopOptionMenu()), cell(contentPane)).getComponent()); } protected JPanel initTopOptionMenu() { diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/UINumberDragPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/UINumberDragPane.java index 053b5a56d6..7fdbad0f2a 100644 --- a/designer-base/src/main/java/com/fr/design/gui/frpane/UINumberDragPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/frpane/UINumberDragPane.java @@ -1,6 +1,7 @@ package com.fr.design.gui.frpane; import com.fine.swing.ui.layout.Layouts; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.beans.BasicBeanPane; import com.fr.design.event.GlobalNameListener; import com.fr.design.event.GlobalNameObserver; @@ -12,11 +13,13 @@ import java.awt.BorderLayout; import java.awt.Dimension; import static com.fine.swing.ui.layout.Layouts.cell; -import static com.fine.swing.ui.layout.Layouts.flex; +import static com.fine.swing.ui.layout.Layouts.fix; public class UINumberDragPane extends BasicBeanPane implements GlobalNameObserver { private static final long serialVersionUID = -8681716725163358249L; + private static double DRAG_BAR_WEIGHT = 0.6; + private static double SPINNER_WIGHT = 0.4; private UISlider dragBar; private UISpinner spinner; private boolean isEditing = false; @@ -38,12 +41,14 @@ public class UINumberDragPane extends BasicBeanPane implements GlobalNam public UINumberDragPane(double minValue, double maxValue, double dierta) { dragBar = new UISlider((int) minValue, (int) maxValue); dragBar.setPaintLabels(true); - dragBar.setMajorTickSpacing((int) maxValue); + dragBar.setMajorTickSpacing(minValue < 0 ? (int) maxValue : (int) maxValue - (int) minValue); spinner = createUISpinner(minValue, maxValue, dierta); + spinner.getTextField().setBorder(new ScaledEmptyBorder(0, 0, 0, 0)); spinner.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation")); + spinner.setValue(dragBar.getValue()); this.setLayout(new BorderLayout()); this.add(Layouts.row( - cell(dragBar).weight(0.7), flex(0.1), cell(spinner).weight(0.7) + cell(dragBar).weight(DRAG_BAR_WEIGHT), fix(8), cell(spinner).weight(SPINNER_WIGHT) ).getComponent()); dragBar.addChangeListener(e -> { if (globalNameListener != null && shouldResponseNameListener()) { diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/UnitInputPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/UnitInputPane.java index 5769fdacfe..415da6f1e8 100644 --- a/designer-base/src/main/java/com/fr/design/gui/frpane/UnitInputPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/frpane/UnitInputPane.java @@ -24,6 +24,9 @@ import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.math.BigDecimal; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.row; + /** * For input Number. */ @@ -43,16 +46,13 @@ public abstract class UnitInputPane extends BasicPane { this.setLayout(FRGUIPaneFactory.createBorderLayout()); JPanel centerPane = FRGUIPaneFactory.createTitledBorderPane(""); this.add(centerPane, BorderLayout.CENTER); - centerPane.setLayout(new FlowLayout(FlowLayout.LEFT, 5, 30)); + centerPane.setLayout(new FlowLayout(FlowLayout.LEFT, 20, 30)); UILabel titleLabel = new UILabel(title + ":"); centerPane.add(titleLabel); // Denny:在对话框中加入JSpinner对象 numberFieldSpinner = new UIBasicSpinner(new SpinnerNumberModel(0, 0, MAX_NUM, 1)); GUICoreUtils.setColumnForSpinner(numberFieldSpinner, 24); - numberFieldSpinner.setPreferredSize(new Dimension(60, 20)); - numberFieldSpinner.setMinimumSize(new Dimension(60, 20)); - centerPane.add(numberFieldSpinner); numberFieldSpinner.addChangeListener(new ChangeListener() { @Override @@ -64,7 +64,7 @@ public abstract class UnitInputPane extends BasicPane { }); unitLabel = new UILabel(""); - centerPane.add(unitLabel); + centerPane.add(row(4, cell(numberFieldSpinner), cell(unitLabel)).getComponent()); } public void setUnitText(String unit) { diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDependenceSettingPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDependenceSettingPane.java index b3ad1e179a..c3d7ba7ef3 100644 --- a/designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDependenceSettingPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDependenceSettingPane.java @@ -1,9 +1,10 @@ package com.fr.design.gui.frpane.tree.layer.config; +import com.fine.theme.light.ui.FineTableHeaderUI; import com.fr.design.data.tabledata.wrapper.TableDataWrapper; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.icombobox.UIComboBox; -import com.fr.design.gui.ilable.UILabel; +import com.fr.design.gui.icontainer.UITableScrollPane; import com.fr.design.present.dict.TableDataDictPane; import com.fr.form.ui.tree.LayerDependence; @@ -126,7 +127,7 @@ public class LayerDependenceSettingPane extends JPanel implements ItemListener { buttonPanel.add(delButton); this.add(buttonPanel, BorderLayout.NORTH); //添加Table的panel - JScrollPane tablePanel = new JScrollPane(dependenceTable); + UITableScrollPane tablePanel = new UITableScrollPane(dependenceTable); this.add(tablePanel, BorderLayout.CENTER); @@ -177,23 +178,21 @@ public class LayerDependenceSettingPane extends JPanel implements ItemListener { /** * 第一列renderer */ - private static final class FirstRenderer extends UILabel implements TableCellRenderer { + private static final class FirstRenderer extends FineTableHeaderUI.TableRenderer { + public FirstRenderer() { + this.setOpaque(true); + } @Override public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { - + JLabel label = (JLabel) super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); if (value != null) { //value是用户选择的字段索引值,从1开始的 - this.setText(String.valueOf(value)); - } else { - this.setText(""); - } - if (hasFocus) { - this.setBorder(UIManager.getBorder("Table.focusCelHighlightBorder")); + label.setText(String.valueOf(value)); } else { - this.setBorder(null); + label.setText(""); } - return this; + return label; } } @@ -201,14 +200,14 @@ public class LayerDependenceSettingPane extends JPanel implements ItemListener { * 第二列renderer * 由于从model中获取的数据是数据集列的索引值,这里要转换为列的名称 */ - private static final class FieldRenderer extends UILabel implements TableCellRenderer { + private static final class FieldRenderer extends FineTableHeaderUI.TableRenderer { //用于将字段索引转换为字段名;保存改pane,是为了当用户选择其他数据集时,renderer可同步更新 private TableDataDictPane tableDataDictPane; public FieldRenderer(TableDataDictPane tableDataDictPane) { - this.tableDataDictPane = tableDataDictPane; + this.setOpaque(true); } /** @@ -217,20 +216,15 @@ public class LayerDependenceSettingPane extends JPanel implements ItemListener { */ @Override public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { - + JLabel label = (JLabel) super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); if (value != null) { List columnNames = getColumnNameList(this.tableDataDictPane); //value是用户选择的字段索引值,从1开始的 - this.setText(columnNames.get(Integer.valueOf(String.valueOf(value)))); - } else { - this.setText(""); - } - if (hasFocus) { - this.setBorder(UIManager.getBorder("Table.focusCelHighlightBorder")); + label.setText(columnNames.get(Integer.valueOf(String.valueOf(value)))); } else { - this.setBorder(null); + label.setText(""); } - return this; + return label; } } diff --git a/designer-base/src/main/java/com/fr/design/gui/ibutton/FitUIButtonGroup.java b/designer-base/src/main/java/com/fr/design/gui/ibutton/FitUIButtonGroup.java new file mode 100644 index 0000000000..25267feaaf --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/gui/ibutton/FitUIButtonGroup.java @@ -0,0 +1,53 @@ +package com.fr.design.gui.ibutton; + +import com.fine.swing.ui.layout.Row; + +import java.util.List; + +import static com.fine.theme.utils.FineClientProperties.BUTTON_GROUP_POSITION; +import static com.fine.theme.utils.FineClientProperties.BUTTON_TYPE_GROUP_FIT; +import static com.formdev.flatlaf.FlatClientProperties.BUTTON_TYPE; + + +/** + * 自适应文案宽度的ButtonGroup + * + * @author Levy.Xie + * @since 11.0 + * Created on 2024/08/28 + */ +public class FitUIButtonGroup extends UIButtonGroup { + + public FitUIButtonGroup(String[] textArray) { + super(textArray); + } + + public FitUIButtonGroup(String[] textArray, T[] objects) { + super(textArray, objects); + } + + public FitUIButtonGroup(String[] textArray, T[] objects, int[] customCols) { + super(textArray, objects, customCols); + } + + @Override + protected void initLayout(int[] cols, boolean inToolbar) { + Row row = new Row(); + List buttonList = getLabelButtonList(); + for (int i = 0; i < buttonList.size(); i++) { + row.add(buttonList.get(i)); + if (i != buttonList.size() - 1 && !inToolbar) { + row.add(createDivider()); + } + } + add(row); + } + + @Override + protected void initButton(UIToggleButton labelButton, int index) { + labelButton.setBorderPainted(false); + labelButton.putClientProperty(BUTTON_TYPE, BUTTON_TYPE_GROUP_FIT); + labelButton.putClientProperty(BUTTON_GROUP_POSITION, getGroupButtonPosition(index)); + labelButtonList.add(labelButton); + } +} diff --git a/designer-base/src/main/java/com/fr/design/gui/ibutton/UIButtonGroup.java b/designer-base/src/main/java/com/fr/design/gui/ibutton/UIButtonGroup.java index ddb402db2d..4e392da122 100644 --- a/designer-base/src/main/java/com/fr/design/gui/ibutton/UIButtonGroup.java +++ b/designer-base/src/main/java/com/fr/design/gui/ibutton/UIButtonGroup.java @@ -1,6 +1,7 @@ package com.fr.design.gui.ibutton; import com.fine.swing.ui.layout.Column; +import com.fine.swing.ui.layout.Layouts; import com.fine.swing.ui.layout.Row; import com.fine.swing.ui.layout.Spacer; import com.fine.theme.light.ui.FineRoundBorder; @@ -180,6 +181,7 @@ public class UIButtonGroup extends Column implements GlobalNameObserver, UIOb } setBorder(new FineRoundBorder()); initLayout(getCols()); + initTabListeners(); } public UIButtonGroup(String[] textArray, T[] objects) { @@ -191,6 +193,19 @@ public class UIButtonGroup extends Column implements GlobalNameObserver, UIOb return UI_CLASS_ID; } + private void initTabListeners() { + for (UIToggleButton tab : labelButtonList) { + tab.addMouseListener(new MouseAdapter() { + @Override + public void mouseEntered(MouseEvent e) { + if (tab.getPreferredSize().width > tab.getWidth()) { + tab.setToolTipText(tab.getText()); + } + } + }); + } + } + /** * 计算按钮组的列布局;支持自定义布局 * @@ -213,24 +228,24 @@ public class UIButtonGroup extends Column implements GlobalNameObserver, UIOb int col = cols[row]; Row rowContainer = new Row(); for (int j = 0; j < col; j++) { - rowContainer.add(cell(getLabelButtonList().get(currentIndex)).weight(1.0)); + Layouts.populate(rowContainer, cell(getLabelButtonList().get(currentIndex)).weight(1.0)); currentIndex++; if (j != col - 1 && !inToolbar) { rowContainer.add(createDivider()); } } - add(rowContainer); + Layouts.populate(this, cell(rowContainer).weight(1.0)); if (row != cols.length - 1) { add(createDivider()); } } } - private List getLabelButtonList() { + public List getLabelButtonList() { return labelButtonList; } - private Spacer createDivider() { + protected Spacer createDivider() { Spacer spacer = new Spacer(FineUIScale.scale(1)); spacer.setBorder(new LineBorder(FineUIUtils.getUIColor("defaultBorderColor", "Component.borderColor"))); return spacer; diff --git a/designer-base/src/main/java/com/fr/design/gui/ibutton/UIColorButtonWithAuto.java b/designer-base/src/main/java/com/fr/design/gui/ibutton/UIColorButtonWithAuto.java index b10b1d91f8..7a9a41aef2 100644 --- a/designer-base/src/main/java/com/fr/design/gui/ibutton/UIColorButtonWithAuto.java +++ b/designer-base/src/main/java/com/fr/design/gui/ibutton/UIColorButtonWithAuto.java @@ -2,7 +2,6 @@ package com.fr.design.gui.ibutton; import com.fine.theme.icon.LazyIcon; import com.fr.chart.base.ChartConstants; -import com.fr.design.constants.UIConstants; import com.fr.design.style.color.ColorControlWindow; import com.fr.design.style.color.ColorControlWindowWithAuto; import com.fr.general.ComparatorUtils; @@ -17,7 +16,7 @@ public class UIColorButtonWithAuto extends UIColorButton { } if (!ComparatorUtils.equals(oldColor, ChartConstants.AUTO_FONT_COLOR) && ComparatorUtils.equals(newColor, ChartConstants.AUTO_FONT_COLOR)) { - setIcon(UIConstants.AUTO_FONT_ICON); + setIcon(new LazyIcon("autoForeground")); } super.checkColorChange(oldColor, newColor); diff --git a/designer-base/src/main/java/com/fr/design/gui/ibutton/UICombinationButton.java b/designer-base/src/main/java/com/fr/design/gui/ibutton/UICombinationButton.java index 70f229d2a3..ad9151fdbc 100644 --- a/designer-base/src/main/java/com/fr/design/gui/ibutton/UICombinationButton.java +++ b/designer-base/src/main/java/com/fr/design/gui/ibutton/UICombinationButton.java @@ -1,10 +1,7 @@ package com.fr.design.gui.ibutton; -import com.fr.design.utils.gui.GUICoreUtils; - import javax.swing.Icon; import javax.swing.JPanel; -import javax.swing.JPopupMenu; import java.awt.BorderLayout; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; @@ -148,8 +145,4 @@ public class UICombinationButton extends JPanel { rightButton.putClientProperty(BUTTON_TYPE, BUTTON_TYPE_TOOLBAR_BUTTON); setStyle(rightButton, IN_TOOLBAR_RIGHT); } - - protected void showPopWindow(JPopupMenu menu) { - GUICoreUtils.showPopupMenu(menu, this, 0, getY() + getHeight() - 3); - } } \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/gui/ibutton/UIHeadGroup.java b/designer-base/src/main/java/com/fr/design/gui/ibutton/UIHeadGroup.java index 4f6ee08cc8..e6730126d8 100644 --- a/designer-base/src/main/java/com/fr/design/gui/ibutton/UIHeadGroup.java +++ b/designer-base/src/main/java/com/fr/design/gui/ibutton/UIHeadGroup.java @@ -5,6 +5,8 @@ import com.fine.swing.ui.layout.Row; import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.third.guava.collect.Streams; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; import javax.swing.AbstractButton; import javax.swing.ButtonGroup; import javax.swing.Icon; @@ -72,6 +74,20 @@ public class UIHeadGroup extends Row { add(buttonGroup()); setSelectedIndex(0); setBorder(new ScaledEmptyBorder(2, 2, 2, 2)); + initButtonListeners(); + } + + private void initButtonListeners() { + for (AbstractButton tab : btns) { + tab.addMouseListener(new MouseAdapter() { + @Override + public void mouseEntered(MouseEvent e) { + if (tab.getPreferredSize().width > tab.getWidth()) { + tab.setToolTipText(tab.getText()); + } + } + }); + } } private Layouts.Cell[] buttonGroup() { @@ -85,6 +101,7 @@ public class UIHeadGroup extends Row { b.setEnabled(h.isEnable()); b.putClientProperty(BUTTON_TYPE, BUTTON_TYPE_TAB); b.addActionListener(e -> setSelectedIndex((int) index)); + b.setFocusPainted(false); }) ).toArray(Layouts.Cell[]::new); diff --git a/designer-base/src/main/java/com/fr/design/gui/ibutton/UILockButton.java b/designer-base/src/main/java/com/fr/design/gui/ibutton/UILockButton.java index 77b5516f51..5f34b8320b 100644 --- a/designer-base/src/main/java/com/fr/design/gui/ibutton/UILockButton.java +++ b/designer-base/src/main/java/com/fr/design/gui/ibutton/UILockButton.java @@ -4,6 +4,7 @@ import com.fr.design.editlock.EditLockChangeEvent; import com.fr.design.editlock.EditLockChangeListener; import com.fr.design.editlock.EditLockUtils; import com.fr.report.LockItem; +import com.fr.start.common.DesignerStartupContext; import javax.swing.Icon; @@ -41,7 +42,8 @@ public class UILockButton extends UIButton implements EditLockChangeListener { } private void init() { - boolean locked = EditLockUtils.isLocked(LockItem.CONNECTION); + // 设计器如果还在启动中就不需要判断上锁情况,界面都还没出现呢,直接短路掉 + boolean locked = !DesignerStartupContext.getInstance().isOnStartup() && EditLockUtils.isLocked(LockItem.CONNECTION); this.setIcon(locked ? lockedIcon : normalIcon); this.setToolTipText(locked ? lockedTooltips : normalTooltips); } diff --git a/designer-base/src/main/java/com/fr/design/gui/ibutton/UIPreviewButton.java b/designer-base/src/main/java/com/fr/design/gui/ibutton/UIPreviewButton.java index 50bbc1440d..2438e4a3fb 100644 --- a/designer-base/src/main/java/com/fr/design/gui/ibutton/UIPreviewButton.java +++ b/designer-base/src/main/java/com/fr/design/gui/ibutton/UIPreviewButton.java @@ -1 +1 @@ -package com.fr.design.gui.ibutton; import com.fr.design.constants.UIConstants; import com.fr.stable.Constants; import com.fr.design.utils.gui.GUICoreUtils; import javax.swing.*; import java.awt.*; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; /** * Author : daisy * Date: 13-8-1 * Time: 下午3:41 */ public class UIPreviewButton extends JPanel { private static final int START_X = -7; protected UIButton upButton; protected UIButton downButton; protected void upButtonClickEvent() { // do nothing } protected void downButtonClickEvent() { // do nothing } public UIPreviewButton() { this(new UIButton(), new UIButton()); } public UIPreviewButton(UIButton up, UIButton down) { upButton = up; downButton = down; upButton.setRoundBorder(true, Constants.CENTER); downButton.setRoundBorder(true, Constants.CENTER); upButton.addMouseListener(new MouseAdapter() { @Override public void mousePressed(MouseEvent e) { downButton.getModel().setPressed(true); downButton.getModel().setSelected(true); downButton.repaint(); } @Override public void mouseReleased(MouseEvent e) { downButton.getModel().setPressed(false); downButton.getModel().setSelected(false); downButton.repaint(); } @Override public void mouseClicked(MouseEvent e) { upButtonClickEvent(); } }); downButton.addMouseListener(new MouseAdapter() { @Override public void mousePressed(MouseEvent e) { upButton.getModel().setPressed(true); upButton.getModel().setSelected(true); upButton.repaint(); } @Override public void mouseReleased(MouseEvent e) { upButton.getModel().setPressed(false); upButton.getModel().setSelected(false); upButton.repaint(); } @Override public void mouseClicked(MouseEvent e) { downButtonClickEvent(); } }); this.setLayout(new FlowLayout(FlowLayout.CENTER,5,0)); this.add(upButton); this.add(downButton); } public UIPreviewButton(Icon left, Icon right) { this(); upButton.setIcon(left); downButton.setIcon(right); } public UIButton getUpButton() { return upButton; } public void setExtraPainted(boolean isExtraPainted) { if (!isExtraPainted) { upButton.setBackground(null); downButton.setBackground(null); upButton.setOpaque(false); downButton.setOpaque(false); } } public UIButton getDownButton() { return downButton; } public void set4Toolbar() { upButton.setNormalPainted(false); downButton.setNormalPainted(false); upButton.setBorderPaintedOnlyWhenPressed(true); downButton.setBorderPaintedOnlyWhenPressed(true); } protected void showPopWindow(JPopupMenu menu) { GUICoreUtils.showPopupMenu(menu, this, START_X, getY() + getHeight() - 3); } public static void main(String... args) { JFrame jf = new JFrame("test"); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel content = (JPanel) jf.getContentPane(); content.setLayout(null); UIPreviewButton bb = new UIPreviewButton(UIConstants.PAGE_BIG_ICON, UIConstants.PREVIEW_DOWN); bb.setBounds(20, 20, bb.getPreferredSize().width, bb.getPreferredSize().height); content.add(bb); GUICoreUtils.centerWindow(jf); jf.setSize(100, 100); jf.setVisible(true); } } \ No newline at end of file +package com.fr.design.gui.ibutton; import com.fr.design.constants.UIConstants; import com.fr.stable.Constants; import com.fr.design.utils.gui.GUICoreUtils; import javax.swing.*; import java.awt.*; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; /** * Author : daisy * Date: 13-8-1 * Time: 下午3:41 */ public class UIPreviewButton extends JPanel { private static final int START_X = -7; protected UIButton upButton; protected UIButton downButton; protected void upButtonClickEvent() { // do nothing } protected void downButtonClickEvent() { // do nothing } public UIPreviewButton() { this(new UIButton(), new UIButton()); } public UIPreviewButton(UIButton up, UIButton down) { upButton = up; downButton = down; upButton.setRoundBorder(true, Constants.CENTER); downButton.setRoundBorder(true, Constants.CENTER); upButton.addMouseListener(new MouseAdapter() { @Override public void mousePressed(MouseEvent e) { downButton.getModel().setPressed(true); downButton.getModel().setSelected(true); downButton.repaint(); } @Override public void mouseReleased(MouseEvent e) { downButton.getModel().setPressed(false); downButton.getModel().setSelected(false); downButton.repaint(); } @Override public void mouseClicked(MouseEvent e) { upButtonClickEvent(); } }); downButton.addMouseListener(new MouseAdapter() { @Override public void mousePressed(MouseEvent e) { upButton.getModel().setPressed(true); upButton.getModel().setSelected(true); upButton.repaint(); } @Override public void mouseReleased(MouseEvent e) { upButton.getModel().setPressed(false); upButton.getModel().setSelected(false); upButton.repaint(); } @Override public void mouseClicked(MouseEvent e) { downButtonClickEvent(); } }); this.setLayout(new FlowLayout(FlowLayout.CENTER,5,0)); this.add(upButton); this.add(downButton); } public UIPreviewButton(Icon left, Icon right) { this(); upButton.setIcon(left); downButton.setIcon(right); } public UIButton getUpButton() { return upButton; } public void setExtraPainted(boolean isExtraPainted) { if (!isExtraPainted) { upButton.setBackground(null); downButton.setBackground(null); upButton.setOpaque(false); downButton.setOpaque(false); } } public UIButton getDownButton() { return downButton; } public void set4Toolbar() { upButton.setNormalPainted(false); downButton.setNormalPainted(false); upButton.setBorderPaintedOnlyWhenPressed(true); downButton.setBorderPaintedOnlyWhenPressed(true); } protected void showPopWindow(JPopupMenu menu) { GUICoreUtils.showPopupMenu(menu, this, START_X, getY() + getHeight() - 3); } } \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/gui/icombobox/ColorSchemeComboBox.java b/designer-base/src/main/java/com/fr/design/gui/icombobox/ColorSchemeComboBox.java index 2ace77e344..1c7ced9ec6 100644 --- a/designer-base/src/main/java/com/fr/design/gui/icombobox/ColorSchemeComboBox.java +++ b/designer-base/src/main/java/com/fr/design/gui/icombobox/ColorSchemeComboBox.java @@ -233,7 +233,7 @@ public class ColorSchemeComboBox extends UIComboBox { @Override public Dimension getPreferredSize() { Dimension preferredSize = super.getPreferredSize(); - preferredSize.setSize(super.getPreferredSize().getWidth(), FineUIScale.scale(HEIGHT)); + preferredSize.setSize(ColorSchemeComboBox.this.getPreferredSize().width, FineUIScale.scale(HEIGHT)); return preferredSize; } diff --git a/designer-base/src/main/java/com/fr/design/gui/icombobox/FRTreeComboBox.java b/designer-base/src/main/java/com/fr/design/gui/icombobox/FRTreeComboBox.java index 6f8589a104..6679b7d358 100644 --- a/designer-base/src/main/java/com/fr/design/gui/icombobox/FRTreeComboBox.java +++ b/designer-base/src/main/java/com/fr/design/gui/icombobox/FRTreeComboBox.java @@ -1,17 +1,13 @@ package com.fr.design.gui.icombobox; import com.fine.theme.light.ui.FineComboBoxUI; -import com.fr.design.constants.UIConstants; -import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.general.ComparatorUtils; import com.fr.general.NameObject; -import com.fr.stable.Constants; import com.fr.stable.StringUtils; -import javax.swing.BorderFactory; import javax.swing.DefaultListCellRenderer; import javax.swing.JComboBox; import javax.swing.JComponent; @@ -25,7 +21,6 @@ import javax.swing.UIManager; import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; import javax.swing.event.PopupMenuListener; -import javax.swing.plaf.basic.BasicComboBoxUI; import javax.swing.plaf.basic.ComboPopup; import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.DefaultTreeModel; @@ -34,13 +29,9 @@ import javax.swing.tree.TreeNode; import javax.swing.tree.TreePath; import java.util.Enumeration; import java.awt.BorderLayout; -import java.awt.Color; import java.awt.Component; import java.awt.Dimension; -import java.awt.Graphics; -import java.awt.Graphics2D; import java.awt.IllegalComponentStateException; -import java.awt.RenderingHints; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; @@ -50,10 +41,12 @@ import java.awt.event.MouseListener; import java.awt.event.MouseMotionAdapter; import java.awt.event.MouseMotionListener; +import static com.fine.theme.utils.FineUIScale.scale; + public class FRTreeComboBox extends UIComboBox { - private static final int PAGE_DIFF = 5; - private static final int DEFAULT_HEIGHT = 120; + private static final int PAGE_DIFF = scale(5); + private static final int DEFAULT_HEIGHT = scale(120); // richer:下拉展示用的tree protected JTree tree; diff --git a/designer-base/src/main/java/com/fr/design/gui/icombobox/LineComboBox.java b/designer-base/src/main/java/com/fr/design/gui/icombobox/LineComboBox.java index eef2c2c8b9..28f29c23b1 100644 --- a/designer-base/src/main/java/com/fr/design/gui/icombobox/LineComboBox.java +++ b/designer-base/src/main/java/com/fr/design/gui/icombobox/LineComboBox.java @@ -129,7 +129,7 @@ public class LineComboBox extends UIComboBox { } public Dimension getPreferredSize() { - return new Dimension(getWidth(), FineUIScale.scale(LINE_HEIGHT)); + return new Dimension(super.getPreferredSize().width, FineUIScale.scale(LINE_HEIGHT)); } public Dimension getMinimumSize() { diff --git a/designer-base/src/main/java/com/fr/design/gui/icombobox/UIComboBoxRenderer.java b/designer-base/src/main/java/com/fr/design/gui/icombobox/UIComboBoxRenderer.java index f0bf7b1a4e..0b8b4fe592 100644 --- a/designer-base/src/main/java/com/fr/design/gui/icombobox/UIComboBoxRenderer.java +++ b/designer-base/src/main/java/com/fr/design/gui/icombobox/UIComboBoxRenderer.java @@ -1,10 +1,15 @@ package com.fr.design.gui.icombobox; +import java.awt.Component; import java.awt.Dimension; import javax.swing.DefaultListCellRenderer; +import javax.swing.JLabel; +import javax.swing.JList; import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIUtils; +import com.formdev.flatlaf.util.ScaledEmptyBorder; /** * @@ -19,6 +24,15 @@ public class UIComboBoxRenderer extends DefaultListCellRenderer { super(); } + @Override + public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { + JLabel renderer =(JLabel) super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); + renderer.setBorder(new ScaledEmptyBorder(FineUIUtils.getUIInsets( + "ComboBox.renderInset", "ComboBox.padding" + ))); + return renderer; + } + @Override public Dimension getPreferredSize() { return new Dimension(super.getPreferredSize().width, FineUIScale.scale(24)); diff --git a/designer-base/src/main/java/com/fr/design/gui/icombocheckbox/UICheckListPopup.java b/designer-base/src/main/java/com/fr/design/gui/icombocheckbox/UICheckListPopup.java index 7bc5dac7e7..b63298dbb0 100644 --- a/designer-base/src/main/java/com/fr/design/gui/icombocheckbox/UICheckListPopup.java +++ b/designer-base/src/main/java/com/fr/design/gui/icombocheckbox/UICheckListPopup.java @@ -31,6 +31,10 @@ import java.awt.event.ItemListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.fix; +import static com.fine.swing.ui.layout.Layouts.row; + public class UICheckListPopup extends UIPopupMenu { private List listeners = new ArrayList(); private List checkBoxList = new ArrayList(); @@ -120,15 +124,12 @@ public class UICheckListPopup extends UIPopupMenu { } private void addOneCheckValue(Object checkValue) { - JPanel checkPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); - checkPane.setPreferredSize(FineUIScale.scale(new Dimension(144, CHECKBOX_HEIGHT))); + JPanel checkPane = new JPanel(new BorderLayout()); final JCheckBox temp = createCheckbox(); final UILabel label = new UILabel(checkValue.toString()); label.setBackground(Color.WHITE); - label.setPreferredSize(FineUIScale.scale(new Dimension(100, 20))); checkPane.setBackground(Color.WHITE); - checkPane.add(temp); - checkPane.add(label); + checkPane.add(row(fix(4), cell(temp), cell(label)).getComponent()); if (labelNeedToolTips) { // 设置每项Label的tooltips为其省略前的内容 label.setToolTipText(checkValue.toString()); diff --git a/designer-base/src/main/java/com/fr/design/gui/icombocheckbox/UIComboCheckBox.java b/designer-base/src/main/java/com/fr/design/gui/icombocheckbox/UIComboCheckBox.java index d5f573f773..400c5594ab 100644 --- a/designer-base/src/main/java/com/fr/design/gui/icombocheckbox/UIComboCheckBox.java +++ b/designer-base/src/main/java/com/fr/design/gui/icombocheckbox/UIComboCheckBox.java @@ -2,19 +2,20 @@ package com.fr.design.gui.icombocheckbox; import com.fine.theme.icon.LazyIcon; import com.fine.theme.light.ui.FineRoundBorder; -import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIUtils; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.event.GlobalNameListener; import com.fr.design.event.GlobalNameObserver; import com.fr.design.event.HoverAware; import com.fr.design.event.UIObserver; import com.fr.design.event.UIObserverListener; import com.fr.design.gui.ibutton.UIButton; -import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.stable.StringUtils; import javax.swing.Icon; +import javax.swing.JComboBox; import javax.swing.JComponent; import javax.swing.JFrame; import javax.swing.JPanel; @@ -36,6 +37,11 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; +import static com.fine.theme.utils.FineUIStyle.OFFET_LEFT_TEXT_FIELD; +import static com.fine.theme.utils.FineUIStyle.PLAIN_ARROW_BUTTON; +import static com.fine.theme.utils.FineUIStyle.TRANSPARENT_TEXT_FIELD; +import static com.fine.theme.utils.FineUIStyle.setStyle; + /** * 设计器下拉复选框组件 * 支持全选、半选 @@ -43,10 +49,10 @@ import java.util.Map; * 可以省略显示 * * @author - * @since - * Created on + * @since Created on */ -public class UIComboCheckBox extends JComponent implements UIObserver, GlobalNameObserver, HoverAware { +public class UIComboCheckBox extends JComboBox implements UIObserver, GlobalNameObserver, HoverAware { + private static final String UI_CLASS_ID = "ComboCheckBoxUI"; //下拉框的值 private Object[] values; //已经选中的值 @@ -55,8 +61,8 @@ public class UIComboCheckBox extends JComponent implements UIObserver, GlobalNam private List listeners = new ArrayList(); private UICheckListPopup popup; private UITextField editor; + private final JPanel clickPane = new JPanel(new BorderLayout()); private UIButton arrowButton; - private UILabel label; //选中的值之间显示的分隔符 private String valueSperator; private static final String DEFAULT_VALUE_SPERATOR = ","; @@ -71,6 +77,7 @@ public class UIComboCheckBox extends JComponent implements UIObserver, GlobalNam private String placeHolder = StringUtils.EMPTY; private boolean rollOver; + private boolean popupVisible = false; public UIComboCheckBox(Object[] value) { this(value, DEFAULT_VALUE_SPERATOR, true); @@ -123,19 +130,22 @@ public class UIComboCheckBox extends JComponent implements UIObserver, GlobalNam } private void initComponent() { - this.popup = new UICheckListPopup(values, supportSelectAll); + this.popup = new UICheckListPopup(values, supportSelectAll) { + @Override + public Dimension getPreferredSize() { + Dimension size = super.getPreferredSize(); + size.width = UIComboCheckBox.this.getWidth(); + return size; + } + }; + this.popup.setBorder(new FineRoundBorder()); this.popup.addActionListener(new PopupAction()); - this.editor = createEditor(); - this.arrowButton = createArrowButton(); - this.label = new UILabel(getIcon()); - label.setPreferredSize(FineUIScale.scale(new Dimension(24, 24))); + initClickPane(); setLayoutAndAddComponents(); setText(); addPopupListener(this); - setBackground(Color.WHITE); - setOpaque(true); } /** @@ -152,8 +162,8 @@ public class UIComboCheckBox extends JComponent implements UIObserver, GlobalNam return popup; } - public UITextField getEditor() { - return editor; + public JPanel getClickPane() { + return clickPane; } public String getPlaceHolder() { @@ -164,31 +174,37 @@ public class UIComboCheckBox extends JComponent implements UIObserver, GlobalNam this.placeHolder = placeHolder; } - public UIButton getArrowButton() { - return arrowButton; - } + private void initClickPane() { + editor = new TextField(); + editor.setEditable(false); + setStyle(editor, OFFET_LEFT_TEXT_FIELD); - public UILabel getLabel() { - return label; - } + arrowButton = new UIButton(getIcon()); + setStyle(arrowButton, PLAIN_ARROW_BUTTON); - private UIButton createArrowButton() { - final UIButton arrowBtn = new UIButton(); - arrowBtn.setNormalPainted(false); - arrowBtn.setPreferredSize(FineUIScale.scale(new Dimension(20, 5))); - arrowBtn.setIcon(getIcon()); - arrowBtn.setExtraPainted(false); - addPopupListener(arrowBtn); + clickPane.add(editor, BorderLayout.CENTER); + clickPane.add(arrowButton, BorderLayout.EAST); - return arrowBtn; + addPopupListener(editor); + addPopupListener(arrowButton); + addHoverStatusListener(editor); + addHoverStatusListener(arrowButton); } - private UITextField createEditor() { - UITextField editor = new TextField(); - editor.setEditable(false); - addPopupListener(editor); + protected void addHoverStatusListener(JComponent component) { + component.addMouseListener(new MouseAdapter() { + @Override + public void mouseEntered(MouseEvent e) { + rollOver = true; + repaint(); + } - return editor; + @Override + public void mouseExited(MouseEvent e) { + rollOver = popup.isVisible(); + repaint(); + } + }); } /** @@ -202,18 +218,6 @@ public class UIComboCheckBox extends JComponent implements UIObserver, GlobalNam public void mouseClicked(MouseEvent e) { togglePopup(); } - - @Override - public void mouseEntered(MouseEvent e) { - rollOver = true; - repaint(); - } - - @Override - public void mouseExited(MouseEvent e) { - rollOver = false; - repaint(); - } }); } @@ -240,7 +244,7 @@ public class UIComboCheckBox extends JComponent implements UIObserver, GlobalNam @Override public boolean isHovered() { - return rollOver || this.popup.isShowing(); + return rollOver; } private class PopupAction implements ActionListener { @@ -258,11 +262,34 @@ public class UIComboCheckBox extends JComponent implements UIObserver, GlobalNam private void togglePopup() { if (this.arrowButton.isEnabled()) { - popup.setBorder(new FineRoundBorder()); - popup.show(this, 0, getHeight()); + if (popupVisible) { + hidePopup(); + } else { + showPopup(); + } } } + /** + * 展示 popup + */ + public void showPopup() { + this.popup.show(this, 0, getHeight()); + arrowButton.setIcon(new LazyIcon("up_arrow")); + arrowButton.repaint(); + popupVisible = true; + } + + /** + * 隐藏 popup + */ + public void hidePopup() { + popup.setVisible(false); + arrowButton.setIcon(new LazyIcon("down_arrow")); + arrowButton.repaint(); + popupVisible = false; + } + /** * 清除文本框 */ @@ -300,6 +327,7 @@ public class UIComboCheckBox extends JComponent implements UIObserver, GlobalNam /** * 为为添加placeholder + * * @param editor */ protected void setEditorPlaceHolder(UITextField editor) { @@ -334,7 +362,7 @@ public class UIComboCheckBox extends JComponent implements UIObserver, GlobalNam for (int i = 1; i <= chars.length; i++) { //如果原文本+省略号长度超过文本框 - if (fontMetrics.charsWidth(chars, 0, i) + omitLength > textEditor.getPreferredSize().getWidth()) { + if (fontMetrics.charsWidth(chars, 0, i) + omitLength > textEditor.getWidth()) { //从第i-1的位置截断再拼上省略号 omitText = text.substring(0, i - 2) + OMIT_TEXT; break; @@ -465,8 +493,14 @@ public class UIComboCheckBox extends JComponent implements UIObserver, GlobalNam } } + @Override + public String getUIClassID() { + return UI_CLASS_ID; + } + /** * 简单的测试demo + * * @param args */ public static void main(String args[]) { diff --git a/designer-base/src/main/java/com/fr/design/gui/icontainer/UIEastResizableContainer.java b/designer-base/src/main/java/com/fr/design/gui/icontainer/UIEastResizableContainer.java index d85793d5c4..f4ff190182 100644 --- a/designer-base/src/main/java/com/fr/design/gui/icontainer/UIEastResizableContainer.java +++ b/designer-base/src/main/java/com/fr/design/gui/icontainer/UIEastResizableContainer.java @@ -3,27 +3,26 @@ package com.fr.design.gui.icontainer; import com.fine.theme.icon.LazyIcon; import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIUtils; import com.fr.design.base.mode.DesignModeContext; import com.fr.design.constants.UIConstants; -import com.fr.design.gui.ibutton.UIButton; import com.fr.design.layout.VerticalFlowLayout; import com.fr.design.mainframe.DesignerContext; -import com.fr.design.utils.gui.GUICoreUtils; import javax.swing.BorderFactory; -import javax.swing.UIManager; +import javax.swing.Icon; import javax.swing.JComponent; -import javax.swing.JFrame; import javax.swing.JPanel; -import javax.swing.Icon; +import javax.swing.SwingUtilities; +import javax.swing.UIManager; import javax.swing.border.Border; -import java.awt.BorderLayout; import java.awt.Component; import java.awt.Container; import java.awt.Cursor; import java.awt.Dimension; import java.awt.Graphics; import java.awt.LayoutManager; +import java.awt.Point; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseMotionListener; @@ -34,32 +33,97 @@ import java.awt.event.MouseMotionListener; public class UIEastResizableContainer extends JPanel { private static final long serialVersionUID = 1854340560790476907L; - public static final int MAX_CONTAINER_WIDTH = FineUIScale.scale(340); - public static final int MIN_CONTAINER_WIDTH = FineUIScale.scale(286); + public static final int MAX_CONTAINER_WIDTH = FineUIUtils.getScaledI18nDimension( + "com.fr.design.mainframe.EastRegionContainerPane.maximum").width; + public static final int MIN_CONTAINER_WIDTH = FineUIUtils.getScaledI18nDimension( + "com.fr.design.mainframe.EastRegionContainerPane.minimum").width; + public static final int STD_CONTAINER_WIDTH = FineUIUtils.getScaledI18nDimension( + "com.fr.design.mainframe.EastRegionContainerPane.standard").width; + + private int containerWidth = STD_CONTAINER_WIDTH; + private int preferredWidth = STD_CONTAINER_WIDTH; + protected final int leftPaneWidth = FineUIScale.scale(42); + protected final int topToolPaneHeight = FineUIScale.scale(40); - private int containerWidth = FineUIScale.scale(240); - private int preferredWidth = FineUIScale.scale(240); - private int topToolPaneHeight = FineUIScale.scale(40); - private int leftPaneWidth = FineUIScale.scale(42); + private static final int ARROW_RANGE = FineUIScale.scale(35); private JComponent leftPane; private JComponent rightPane; private TopToolPane topToolPane; - - private static final int ARROW_MARGIN = FineUIScale.scale(15); - private static final int ARROW_RANGE = FineUIScale.scale(35); - + private static final int DRAG_GAP_SIZE = 10; + private Point dragPoint; + private boolean dragging; public UIEastResizableContainer() { this(new JPanel(), new JPanel()); + initMouseListener(); + } + + private void initMouseListener() { + MouseAdapter mouseAdapter = new MouseAdapter() { + @Override + public void mouseMoved(MouseEvent e) { + updateCursor(e); + } + + @Override + public void mousePressed(MouseEvent e) { + if (isEnableDrag(e)) { + dragPoint = e.getPoint(); + dragging = true; + } + } + + @Override + public void mouseDragged(MouseEvent e) { + if (dragging) { + resizePanel(e); + } + } + + @Override + public void mouseReleased(MouseEvent e) { + dragging = false; + updateCursor(e); + } + }; + + addMouseListener(mouseAdapter); + addMouseMotionListener(mouseAdapter); + } + + private void updateCursor(MouseEvent e) { + if (isEnableDrag(e)) { + setCursor(Cursor.getPredefinedCursor(Cursor.W_RESIZE_CURSOR)); + } else { + setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); + } + } + + protected boolean isEnableDrag(MouseEvent e) { + return e.getX() <= DRAG_GAP_SIZE && isRightPaneVisible(); + } + + protected void resizePanel(MouseEvent e) { + if (!isRightPaneVisible()) { + return; + } + int dx = e.getX() - dragPoint.x; + Dimension size = getSize(); + + int newWidth = size.width - dx; + // 限制container大小为指定范围 + containerWidth = Math.max(MIN_CONTAINER_WIDTH, Math.min(newWidth, MAX_CONTAINER_WIDTH)); + + SwingUtilities.invokeLater(this::revalidate); } /** * 设置面板宽度 * - * @param width + * @param width 宽度 */ public void setContainerWidth(int width) { this.containerWidth = width; @@ -70,8 +134,6 @@ public class UIEastResizableContainer extends JPanel { return containerWidth > leftPaneWidth; } - - private void setPreferredWidth(int width) { this.preferredWidth = width; } @@ -81,7 +143,7 @@ public class UIEastResizableContainer extends JPanel { this.rightPane = rightPane; this.topToolPane = new TopToolPane(); topToolPane.setLayout(new VerticalFlowLayout(VerticalFlowLayout.TOP, 1, 0)); - topToolPane.setBorder(BorderFactory.createMatteBorder(0 ,1, 0, 1, UIManager.getColor("East.border"))); + topToolPane.setBorder(BorderFactory.createMatteBorder(0, 1, 0, 1, UIManager.getColor("East.border"))); setLayout(containerLayout); add(topToolPane); @@ -89,38 +151,6 @@ public class UIEastResizableContainer extends JPanel { add(rightPane); } - public static void main(String... args) { - JFrame jf = new JFrame("test"); - jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); - JPanel content = (JPanel) jf.getContentPane(); - content.setLayout(new BorderLayout()); - - JPanel leftPane = new JPanel(); -// leftPane.setBackground(Color.yellow); - JPanel rightPane = new JPanel(); -// rightPane.setBackground(Color.green); - - UIButton b1, b2; - b1 = new UIButton("b1"); - b2 = new UIButton("b2"); - b1.setPreferredSize(new Dimension(40, 40)); - b2.setPreferredSize(new Dimension(40, 40)); - leftPane.add(b1); - leftPane.add(b2); - - - UIEastResizableContainer bb = new UIEastResizableContainer(leftPane, rightPane); - - JPanel cc = new JPanel(); -// cc.setBackground(Color.WHITE); - - content.add(bb, BorderLayout.EAST); - content.add(cc, BorderLayout.CENTER); - GUICoreUtils.centerWindow(jf); - jf.setSize(500, 500); - jf.setVisible(true); - } - /** * 将面板设置成最佳的宽度 */ @@ -156,7 +186,6 @@ public class UIEastResizableContainer extends JPanel { @Override public void removeLayoutComponent(Component comp) { - // TODO Auto-generated method stub } @@ -182,7 +211,7 @@ public class UIEastResizableContainer extends JPanel { @Override public void addLayoutComponent(String name, Component comp) { - // do nothing + } }; diff --git a/designer-base/src/main/java/com/fr/design/gui/icontainer/UIModeControlContainer.java b/designer-base/src/main/java/com/fr/design/gui/icontainer/UIModeControlContainer.java index 9002faf8b6..18ac4eaeeb 100644 --- a/designer-base/src/main/java/com/fr/design/gui/icontainer/UIModeControlContainer.java +++ b/designer-base/src/main/java/com/fr/design/gui/icontainer/UIModeControlContainer.java @@ -123,6 +123,8 @@ public class UIModeControlContainer extends JLayeredPane { horizontToolPane = new JPanel() { @Override public void paint(Graphics g) { + g.setColor(FineUIUtils.getUIColor("fill.normal", "fill.normal")); + g.fillRect(0, 0, getWidth(), getHeight()); if (upEditMode) { g.drawImage(UIConstants.DRAG_DOT, (getWidth() - toolPaneHeight) / 2, 3, toolPaneHeight, 8, null); } diff --git a/designer-base/src/main/java/com/fr/design/gui/icontainer/UIResizableContainer.java b/designer-base/src/main/java/com/fr/design/gui/icontainer/UIResizableContainer.java index 6cd8e8df4f..598ec35677 100644 --- a/designer-base/src/main/java/com/fr/design/gui/icontainer/UIResizableContainer.java +++ b/designer-base/src/main/java/com/fr/design/gui/icontainer/UIResizableContainer.java @@ -43,7 +43,7 @@ public class UIResizableContainer extends JPanel { private int direction; private boolean hasParameterPane; - private static final int MAX_WIDTH = FineUIScale.scale(300); + private static final int MAX_WIDTH = FineUIScale.scale(350); private static final int ARROW_RANGE = FineUIScale.scale(35); private static final int ARROW_RANGE_VERTICAL = FineUIScale.scale(25); @@ -391,17 +391,6 @@ public class UIResizableContainer extends JPanel { repaint(); } - @Override - public void mouseClicked(MouseEvent e) { - if (e.getX() <= ARROW_RANGE) { - toolPaneY = 0; - } else if (e.getX() >= getWidth() - ARROW_RANGE) { - toolPaneY = UIResizableContainer.this.getHeight() - toolPaneHeight - getParameterPaneHeight(); - } else { - return; - } - refreshContainer(); - } }); } diff --git a/designer-base/src/main/java/com/fr/design/gui/ilist/JNameEdList.java b/designer-base/src/main/java/com/fr/design/gui/ilist/JNameEdList.java index 4c9135e151..7029fac1f8 100644 --- a/designer-base/src/main/java/com/fr/design/gui/ilist/JNameEdList.java +++ b/designer-base/src/main/java/com/fr/design/gui/ilist/JNameEdList.java @@ -22,10 +22,10 @@ import java.util.Vector; public class JNameEdList extends UIList implements CellEditorListener { /** - * 原值为20,设计器图标由png替换为svg之后JNameEdList的icon大小为16x16 + * 原值为20,设计器图标由png替换为svg之后JNameEdList的icon大小为24x24 * 重命名是会出现左侧一部分带有背景色的渲染 */ - private static final int ICON_WIDTH = 16; + private static final int ICON_WIDTH = 24; private boolean editable = true; // kunsnat: 是否强制ListName是数字 (int型) @@ -240,7 +240,7 @@ public class JNameEdList extends UIList implements CellEditorListener { return false; } Rectangle rect = this.getCellBounds(index, index); - // alex:所有的JNameEdList都有Icon,空出前面20 * 20的位置就是放的Icon + // alex:所有的JNameEdList都有Icon,空出前面24 * 24的位置就是放的Icon rect.setRect(createRect(rect, getIconWidth())); editorComp.setBounds(rect); diff --git a/designer-base/src/main/java/com/fr/design/gui/ilist/TableViewList.java b/designer-base/src/main/java/com/fr/design/gui/ilist/TableViewList.java index b0483dfdd3..50c050b013 100644 --- a/designer-base/src/main/java/com/fr/design/gui/ilist/TableViewList.java +++ b/designer-base/src/main/java/com/fr/design/gui/ilist/TableViewList.java @@ -104,7 +104,7 @@ public class TableViewList extends UIList { @Override protected DefaultListModel doInBackground() throws Exception { - Connection datasource = ConnectionRepository.getInstance().getByName(databaseName).getConnection(); + Connection datasource = ConnectionInfoBeanHelper.createConnection(ConnectionRepository.getInstance().getByName(databaseName)); boolean status = false; int count = 3; //总共给3次连接的机会 @@ -123,7 +123,7 @@ public class TableViewList extends UIList { if (refresh) { clearCache(datasource); } - return processDataInAnotherThread(databaseName, searchFilter, typesFilter); + return processDataInAnotherThread(datasource, searchFilter, typesFilter); } @Override @@ -144,7 +144,7 @@ public class TableViewList extends UIList { } private void clearCache(Connection datasource) { - String[] schemas = DataCoreUtils.getDatabaseSchema(datasource); + String[] schemas = DataCoreUtils.getDatabaseSchemaByName(datasource); schemas = (schemas == null || schemas.length == 0) ? new String[]{null} : schemas; for (String schema : schemas) { doClearCache(datasource, schema); @@ -166,18 +166,17 @@ public class TableViewList extends UIList { * @param searchFilter * @param typesFilter */ - private DefaultListModel processDataInAnotherThread(String databaseName, String searchFilter, String... typesFilter) throws Exception { + private DefaultListModel processDataInAnotherThread(Connection datasource, String searchFilter, String... typesFilter) throws Exception { DefaultListModel defaultListModel = new DefaultListModel(); - Connection datasource = ConnectionRepository.getInstance().getByName(databaseName).getConnection(); if (datasource == null) { return defaultListModel; } - String[] schemas = DataCoreUtils.getDatabaseSchema(datasource); + String[] schemas = DataCoreUtils.getDatabaseSchemaByName(datasource); searchFilter = searchFilter.toLowerCase(); boolean isOracleSystemSpace = DesignerEnvManager.getEnvManager().isOracleSystemSpace(); // oracle不勾选显示所有表,则只显示用户下的(包括存储过程和table表) - DataBaseDetail detail = DataOperator.getInstance().getDataBaseDetail(datasource, isOracleSystemSpace); + DataBaseDetail detail = DataOperator.getInstance().getDataBaseDetail(datasource.getConnectionName(), isOracleSystemSpace); if (ArrayUtils.isNotEmpty(detail.getSchemas())) { schemas = detail.getSchemas(); } diff --git a/designer-base/src/main/java/com/fr/design/gui/imenu/UICheckBoxMenuItem.java b/designer-base/src/main/java/com/fr/design/gui/imenu/UICheckBoxMenuItem.java index fba8bfd7f4..376338358d 100644 --- a/designer-base/src/main/java/com/fr/design/gui/imenu/UICheckBoxMenuItem.java +++ b/designer-base/src/main/java/com/fr/design/gui/imenu/UICheckBoxMenuItem.java @@ -1,5 +1,6 @@ package com.fr.design.gui.imenu; +import com.fine.theme.icon.LazyIcon; import com.fr.design.constants.UIConstants; public class UICheckBoxMenuItem extends UIMenuItem { @@ -19,7 +20,7 @@ public class UICheckBoxMenuItem extends UIMenuItem { public void setSelected(boolean b) { super.setSelected(b); if (this.isSelected()) { - setIcon(UIConstants.CHOOSEN_ICON); + setIcon(new LazyIcon("checkbox_checked")); } else { setIcon(UIConstants.BLACK_ICON); } diff --git a/designer-base/src/main/java/com/fr/design/gui/iscrollbar/UIBasicVerticalScrollBar.java b/designer-base/src/main/java/com/fr/design/gui/iscrollbar/UIBasicVerticalScrollBar.java new file mode 100644 index 0000000000..336ed71ef8 --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/gui/iscrollbar/UIBasicVerticalScrollBar.java @@ -0,0 +1,22 @@ +package com.fr.design.gui.iscrollbar; + +/** + * 解决 Windows 下垂直滚动条不显示的临时方案:替换 UI + * + * @author lemon + * @since + * Created on + */ +public class UIBasicVerticalScrollBar extends UIScrollBar { + private static final String UI_CLASS_ID = "BasicVerticalScrollBarUI"; + private static final long serialVersionUID = 1L; + + public UIBasicVerticalScrollBar(int orientation) { + super(orientation); + } + + public String getUIClassID() { + return UI_CLASS_ID; + } + +} diff --git a/designer-base/src/main/java/com/fr/design/gui/iscrollbar/UIScrollBarUI.java b/designer-base/src/main/java/com/fr/design/gui/iscrollbar/UIScrollBarUI.java index 949b3958ae..487eafb31e 100644 --- a/designer-base/src/main/java/com/fr/design/gui/iscrollbar/UIScrollBarUI.java +++ b/designer-base/src/main/java/com/fr/design/gui/iscrollbar/UIScrollBarUI.java @@ -56,6 +56,7 @@ public class UIScrollBarUI extends ScrollBarUI implements LayoutManager, SwingCo protected Color thumbLightShadowColor; protected Color thumbDarkShadowColor; protected Color thumbColor; + protected Color pressedThumbColor; protected Color trackColor; protected Color trackHighlightColor; @@ -139,6 +140,7 @@ public class UIScrollBarUI extends ScrollBarUI implements LayoutManager, SwingCo thumbLightShadowColor = UIManager.getColor("ScrollBar.thumbShadow"); thumbDarkShadowColor = UIManager.getColor("ScrollBar.thumbDarkShadow"); thumbColor = UIManager.getColor("ScrollBar.thumb"); + pressedThumbColor = UIManager.getColor( "ScrollBar.pressedThumbColor" ); trackColor = UIManager.getColor("ScrollBar.track"); trackHighlightColor = UIManager.getColor("ScrollBar.trackHighlight"); } @@ -472,9 +474,9 @@ public class UIScrollBarUI extends ScrollBarUI implements LayoutManager, SwingCo g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); g2.translate(thumbBounds.x, thumbBounds.y); - Color color = isPressing ? UIConstants.LINE_COLOR : UIConstants.BARNOMAL; + Color color = isPressing ? pressedThumbColor : thumbColor; g2.setColor(color); - g2.fillRoundRect(1, 1, width - 2, height - 2, UIConstants.LARGEARC, UIConstants.LARGEARC); + g2.fillRoundRect(1, 1, width - 4, height - 4, UIConstants.LARGEARC, UIConstants.LARGEARC); } diff --git a/designer-base/src/main/java/com/fr/design/gui/ispinner/FineUpperCaseSpinner.java b/designer-base/src/main/java/com/fr/design/gui/ispinner/FineUpperCaseSpinner.java new file mode 100644 index 0000000000..72929d6c76 --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/gui/ispinner/FineUpperCaseSpinner.java @@ -0,0 +1,152 @@ +package com.fr.design.gui.ispinner; + +import com.fine.theme.utils.FineUIUtils; +import com.formdev.flatlaf.util.ScaledEmptyBorder; +import com.fr.design.gui.itextfield.UITextField; +import com.fr.stable.StableUtils; +import com.fr.stable.StringUtils; + +import javax.swing.event.DocumentEvent; +import javax.swing.event.DocumentListener; +import javax.swing.text.AbstractDocument; +import javax.swing.text.AttributeSet; +import javax.swing.text.BadLocationException; +import javax.swing.text.DocumentFilter; +import java.awt.BorderLayout; +import java.awt.Insets; +import java.awt.event.FocusAdapter; +import java.awt.event.FocusEvent; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; + +/** + * 字母spinner + * + * @author Renekton + * @since 11.0 + * @Created on 2024/09/11 + */ +public class FineUpperCaseSpinner extends UISpinner { + + private UITextField textField; + + public FineUpperCaseSpinner(double minValue, double maxValue, double dierta) { + super(minValue, maxValue, dierta); + } + + protected void initComponents() { + setLayout(new BorderLayout()); + textField = initTextField(); + Insets insets = FineUIUtils.getUIInsets("InputTextField.borderInsets", defaultInsets); + textField.setBorder(new ScaledEmptyBorder(insets.top, insets.left, insets.bottom, insets.right)); + textField.setOpaque(false); + add(textField, BorderLayout.CENTER); + setValue(value); + + initArrowPane(); + componentInitListeners(); + } + + protected void setTextField(double value) { + textField.getDocument().removeDocumentListener(docListener); + textField.setText(StableUtils.convertIntToABC((int)value).toUpperCase()); + textField.getDocument().addDocumentListener(docListener); + } + + + protected UITextField initTextField() { + int columns = this.numberFieldColumns == 0 ? DEFAULT_NUMBERFIELD_COLUMNS : this.numberFieldColumns; + UITextField textField = new UITextField(columns) { + public boolean shouldResponseChangeListener() { + return false; + } + }; + ((AbstractDocument) textField.getDocument()).setDocumentFilter(new DocumentFilter() { + public void insertString(FilterBypass fb, int offset, String string, AttributeSet attr) throws BadLocationException { + fb.insertString(offset, string.toUpperCase(), attr); + } + + public void replace(FilterBypass fb, int offset, int length, String string, AttributeSet attr) throws BadLocationException { + if (string != null) { + string = string.toUpperCase(); + } + fb.replace(offset, length, string, attr); + } + }); + return textField; + } + + protected DocumentListener docListener = new DocumentListener() { + @Override + public void removeUpdate(DocumentEvent e) { + setTextFieldValue(getTextValue()); + } + + @Override + public void insertUpdate(DocumentEvent e) { + setTextFieldValue(getTextValue()); + } + + @Override + public void changedUpdate(DocumentEvent e) { + setTextFieldValue(getTextValue()); + } + }; + + + protected void initTextFiledListeners() { + textField.getDocument().removeDocumentListener(docListener); + textField.getDocument().addDocumentListener(docListener); + textField.addFocusListener(new FocusAdapter() { + @Override + public void focusGained(FocusEvent e) { + textFieldFocus = true; + } + + @Override + public void focusLost(FocusEvent e) { + textFieldFocus = false; + textField.getDocument().removeDocumentListener(docListener); + if (!preAction && !nextAction) { + textField.setText(StableUtils.convertIntToABC((int)value).toUpperCase()); + } + textField.getDocument().addDocumentListener(docListener); + preAction = false; + nextAction = false; + } + }); + } + + protected void initTextMouseListener() { + textField.addMouseListener(new MouseAdapter() { + @Override + public void mouseEntered(MouseEvent e) { + hover = true; + repaint(); + } + + @Override + public void mouseExited(MouseEvent e) { + hover = false; + repaint(); + } + }); + } + + public UITextField getTextFieldNew() { + return textField; + } + + private double getTextValue() { + try { + if (StringUtils.isEmpty(textField.getText())) { + return 1; + } else if (StringUtils.isNumber(textField.getText())) { + return Double.parseDouble(textField.getText()); + } + return StableUtils.convertABCToInt(textField.getText()); + } catch (NumberFormatException numberFormatException) { + return 1; + } + } +} diff --git a/designer-base/src/main/java/com/fr/design/gui/ispinner/UISpinner.java b/designer-base/src/main/java/com/fr/design/gui/ispinner/UISpinner.java index b47d162a27..e95d1d3ef4 100644 --- a/designer-base/src/main/java/com/fr/design/gui/ispinner/UISpinner.java +++ b/designer-base/src/main/java/com/fr/design/gui/ispinner/UISpinner.java @@ -2,6 +2,7 @@ package com.fr.design.gui.ispinner; import com.fine.theme.icon.LazyIcon; import com.fine.theme.utils.FineUIUtils; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.event.GlobalNameListener; import com.fr.design.event.GlobalNameObserver; import com.fr.design.event.HoverAware; @@ -12,7 +13,6 @@ import com.fr.design.gui.itextfield.UINumberField; import com.fr.stable.CommonUtils; import com.fr.stable.StringUtils; -import javax.swing.BorderFactory; import javax.swing.Icon; import javax.swing.JPanel; import javax.swing.event.ChangeEvent; @@ -45,11 +45,11 @@ import static com.fine.theme.utils.FineUIStyle.setStyle; */ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, HoverAware { - private final Insets defaultInsets = new Insets(0, 6, 0, 6); + protected final Insets defaultInsets = new Insets(0, 6, 0, 6); private final int defaultButtonSize = 24; private final int ICON_WIDTH = 12; protected double value; - private static final int DEFAULT_NUMBERFIELD_COLUMNS = 2; + protected static final int DEFAULT_NUMBERFIELD_COLUMNS = 2; private UINumberField textField; private UIButton preButton; private UIButton nextButton; @@ -63,10 +63,14 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, /** * Spinner内的数字文本框长度 */ - private int numberFieldColumns; - private boolean textFieldFocus = false; + protected int numberFieldColumns; + protected boolean textFieldFocus = false; - private boolean hover; + protected boolean hover; + + protected boolean preAction; + + protected boolean nextAction; private static final String UI_CLASS_ID = "InputUI"; @@ -115,6 +119,11 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, }); } + initTextMouseListener(); + + } + + protected void initTextMouseListener() { textField.addMouseListener(new MouseAdapter() { @Override public void mouseEntered(MouseEvent e) { @@ -128,7 +137,6 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, repaint(); } }); - } /** @@ -280,19 +288,24 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, return hover; } - private void initComponents() { + protected void initComponents() { + setLayout(new BorderLayout()); textField = initNumberField(); textField.setMaxValue(maxValue); textField.setMinValue(minValue); - Insets insets = FineUIUtils.getAndScaleUIInsets("InputTextField.borderInsets", defaultInsets); - textField.setBorder(BorderFactory.createEmptyBorder(insets.top, insets.left, insets.bottom, insets.right)); + Insets insets = FineUIUtils.getUIInsets("InputTextField.borderInsets", defaultInsets); + textField.setBorder(new ScaledEmptyBorder(insets.top, insets.left, insets.bottom, insets.right)); textField.setOpaque(false); + add(textField, BorderLayout.CENTER); setValue(value); + initArrowPane(); + componentInitListeners(); + } + + protected void initArrowPane() { preButton = createArrowButton(new LazyIcon("up_arrow", ICON_WIDTH)); nextButton = createArrowButton(new LazyIcon("down_arrow", ICON_WIDTH)); - setLayout(new BorderLayout()); - add(textField, BorderLayout.CENTER); JPanel arrowPane = new JPanel(); arrowPane.setLayout(new GridLayout(2, 1)); arrowPane.add(preButton); @@ -303,7 +316,6 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, int buttonHeight = FineUIUtils.getAndScaleInt("InputButton.height", defaultButtonSize); arrowPane.setPreferredSize(new Dimension(buttonWidth, buttonHeight)); add(arrowPane, BorderLayout.EAST); - componentInitListeners(); } private UIButton createArrowButton(Icon icon) { @@ -336,16 +348,18 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, textField.setMinValue(minValue); } - private void componentInitListeners() { + protected void componentInitListeners() { preButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { + preAction = true; setValue(value + dierta); } }); nextButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { + nextAction = true; setValue(value - dierta); } }); @@ -390,7 +404,7 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver, return numberField; } - private DocumentListener docListener = new DocumentListener() { + protected DocumentListener docListener = new DocumentListener() { @Override public void removeUpdate(DocumentEvent e) { setTextFieldValue(textField.getValue()); diff --git a/designer-base/src/main/java/com/fr/design/gui/itable/FineUITableCellEditor.java b/designer-base/src/main/java/com/fr/design/gui/itable/FineUITableCellEditor.java new file mode 100644 index 0000000000..cba3c07bba --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/gui/itable/FineUITableCellEditor.java @@ -0,0 +1,33 @@ +package com.fr.design.gui.itable; + +import com.fine.theme.light.ui.FineTableHeaderUI; + +import javax.swing.AbstractCellEditor; +import javax.swing.JTable; +import javax.swing.table.TableCellEditor; +import javax.swing.table.TableCellRenderer; +import java.awt.Component; + +/** + * TableCellEditor 应用 {@link FineTableHeaderUI.TableRenderer} + * + * @author lemon + * @since + * Created on 2024/09/10 + */ +public class FineUITableCellEditor extends AbstractCellEditor implements TableCellEditor, TableCellRenderer { + @Override + public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) { + return null; + } + + @Override + public Object getCellEditorValue() { + return null; + } + + @Override + public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { + return new FineTableHeaderUI.TableRenderer().getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); + } +} diff --git a/designer-base/src/main/java/com/fr/design/gui/itextfield/UISearchTextField.java b/designer-base/src/main/java/com/fr/design/gui/itextfield/UISearchTextField.java index b3cc839a34..9ffeebd10e 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itextfield/UISearchTextField.java +++ b/designer-base/src/main/java/com/fr/design/gui/itextfield/UISearchTextField.java @@ -1,6 +1,7 @@ package com.fr.design.gui.itextfield; +import com.fine.theme.icon.LazyIcon; import com.fr.design.constants.UIConstants; import com.fr.design.gui.ilable.UILabel; @@ -25,8 +26,8 @@ import java.awt.geom.RoundRectangle2D; */ public class UISearchTextField extends UITextField { - private UILabel iconLabel = new UILabel(UIConstants.BLACK_SEARCH_ICON); - private UILabel clearLabel = new UILabel(UIConstants.CLEAR_ICON); + private UILabel iconLabel = new UILabel(new LazyIcon("search")); + private UILabel clearLabel = new UILabel(new LazyIcon("clear")); private UILabel infoLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Search")); private Dimension iconSize; private Dimension infoSize; @@ -268,29 +269,4 @@ public class UISearchTextField extends UITextField { this.showClearIcon = showClearIcon; this.repaint(); } - - public static void main(String[] args) { - JPanel p = new JPanel(new FlowLayout(FlowLayout.LEFT)); - UISearchTextField comp = new UISearchTextField(20); - p.add(comp); - comp = new UISearchTextField(20); - comp.setShowClearIcon(false); - p.add(comp); - comp = new UISearchTextField(20); - comp.setIconPosition(SwingConstants.RIGHT); - p.add(comp); - comp = new UISearchTextField(20); - comp.setShowClearIcon(false); - comp.setIconPosition(SwingConstants.RIGHT); - p.add(comp); - p.add(new JTextField(20)); - JFrame frame = new JFrame(); - frame.setTitle("UITextField"); - frame.setContentPane(p); - frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); - frame.setSize(300, 200); - frame.setLocationRelativeTo(null); - frame.setVisible(true); - } - } \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/gui/itextfield/UITextField.java b/designer-base/src/main/java/com/fr/design/gui/itextfield/UITextField.java index 61f1b6b62c..07dfde3cde 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itextfield/UITextField.java +++ b/designer-base/src/main/java/com/fr/design/gui/itextfield/UITextField.java @@ -154,7 +154,7 @@ public class UITextField extends JTextField implements UIObserver, GlobalNameObs * 设置变化的背景颜色 */ public void setBackgroundUIColor(Color color) { -// ((UITextFieldUI) this.ui).setBackgroundColor4NoGiveNumber(color); + setBackground(color); } /** diff --git a/designer-base/src/main/java/com/fr/design/gui/itooltip/MultiLineToolTip.java b/designer-base/src/main/java/com/fr/design/gui/itooltip/MultiLineToolTip.java index b644ae4db6..f5ad495dfa 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itooltip/MultiLineToolTip.java +++ b/designer-base/src/main/java/com/fr/design/gui/itooltip/MultiLineToolTip.java @@ -1,10 +1,11 @@ package com.fr.design.gui.itooltip; +import com.fine.theme.light.ui.FineTooltipUI; import javax.swing.JToolTip; public class MultiLineToolTip extends JToolTip { public MultiLineToolTip() { - setUI(new MultiLineToolTipUI()); + setUI(new FineTooltipUI()); } } \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/gui/itree/checkboxtree/CheckBoxTreeCellRenderer.java b/designer-base/src/main/java/com/fr/design/gui/itree/checkboxtree/CheckBoxTreeCellRenderer.java index 3a92b44692..d2592aaaa8 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itree/checkboxtree/CheckBoxTreeCellRenderer.java +++ b/designer-base/src/main/java/com/fr/design/gui/itree/checkboxtree/CheckBoxTreeCellRenderer.java @@ -17,7 +17,6 @@ import javax.swing.JComponent; import javax.swing.JPanel; import javax.swing.JTree; import javax.swing.border.Border; -import javax.swing.border.EmptyBorder; import javax.swing.tree.TreeCellRenderer; import javax.swing.tree.TreePath; import java.awt.BorderLayout; @@ -65,6 +64,7 @@ public class CheckBoxTreeCellRenderer extends NullPanel implements TreeCellRende add(_checkBox, BorderLayout.WEST); JPanel gapPanel = new JPanel(); gapPanel.setPreferredSize(FineUIScale.scale(new Dimension(4, 20))); + gapPanel.setOpaque(false); add(gapPanel, BorderLayout.CENTER); _actualTreeRenderer = renderer; } @@ -80,7 +80,7 @@ public class CheckBoxTreeCellRenderer extends NullPanel implements TreeCellRende public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) { _checkBox.setPreferredSize(FineUIScale.scale(new Dimension(PROTOTYPE.getPreferredSize().width, 0))); setComponentOrientation(tree.getComponentOrientation()); - + setOpaque(false); TreePath path = tree.getPathForRow(row); handleCheckBox(tree, path); diff --git a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/EnvFileTree.java b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/EnvFileTree.java index 0d11eb491f..1d5405bd89 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/EnvFileTree.java +++ b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/EnvFileTree.java @@ -1,6 +1,7 @@ package com.fr.design.gui.itree.filetree; -import com.fr.base.FRContext; +import com.fanruan.entity.template.TemplateListBean; +import com.fanruan.repository.TemplateRepository; import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode; import com.fr.design.gui.itree.refreshabletree.RefreshableJTree; import com.fr.design.i18n.Toolkit; @@ -11,13 +12,12 @@ import com.fr.log.FineLoggerFactory; import com.fr.stable.CoreConstants; import com.fr.stable.StableUtils; import com.fr.workspace.WorkContext; -import com.fr.workspace.server.repository.template.TemplateRepository; -import javax.swing.JTree; +import javax.swing.*; import javax.swing.tree.DefaultTreeCellRenderer; import javax.swing.tree.DefaultTreeModel; import javax.swing.tree.TreePath; -import java.awt.Component; +import java.awt.*; import java.io.File; import java.util.Arrays; import java.util.HashMap; @@ -77,7 +77,7 @@ public class EnvFileTree extends RefreshableJTree { } this.setIcon(FileTreeIcon.getIconWithExpandAttr(node, expanded)); } else { - this.setIcon(FileTreeIcon.getFolderHalfImageIcon()); + this.setIcon(FileTreeIcon.getFolderHalfImageIcon(expanded)); } this.setText(name); } else if (userObj == PENDING) { @@ -188,7 +188,7 @@ public class EnvFileTree extends RefreshableJTree { FileNode[] resFns = null; try { - resFns = WorkContext.getCurrent() == null ? new FileNode[0] : FRContext.getFileNodes().list(filePath); + resFns = WorkContext.getCurrent() == null ? new FileNode[0] : TemplateRepository.getInstance().list(new TemplateListBean(filePath)); } catch (Exception e) { FineLoggerFactory.getLogger().error(e.getMessage(), e); } diff --git a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileNodeComparator.java b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileNodeComparator.java index 1429aac3e0..32cad14b5e 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileNodeComparator.java +++ b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileNodeComparator.java @@ -1,8 +1,7 @@ package com.fr.design.gui.itree.filetree; -import com.fr.base.FRContext; import com.fr.file.filetree.FileNode; -import com.fr.workspace.server.repository.template.TemplateRepository; +import com.fanruan.repository.TemplateRepository; import java.io.Serializable; import java.util.Arrays; diff --git a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileNodeConstants.java b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileNodeConstants.java index 242865aeca..13d1d2490f 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileNodeConstants.java +++ b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileNodeConstants.java @@ -1,6 +1,5 @@ package com.fr.design.gui.itree.filetree; -import com.fr.base.FRContext; import com.fr.base.extension.FileExtension; import com.fr.general.GeneralContext; import com.fr.plugin.context.PluginContext; @@ -10,7 +9,7 @@ import com.fr.plugin.observer.PluginEvent; import com.fr.plugin.observer.PluginEventListener; import com.fr.report.ExtraReportClassManager; import com.fr.report.fun.ReportSupportedFileProvider; -import com.fr.workspace.server.repository.template.TemplateRepository; +import com.fanruan.repository.TemplateRepository; import java.util.Arrays; import java.util.LinkedHashSet; diff --git a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileTreeIcon.java b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileTreeIcon.java index ca26e435aa..92de91aa1e 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileTreeIcon.java +++ b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/FileTreeIcon.java @@ -49,9 +49,10 @@ public class FileTreeIcon { public static final Icon FRM_FILE_LOCK_ICON = new LazyIcon("frm_locked"); public static final Icon FVS_FILE_LOCK_ICON = new LazyIcon("fvs_locked"); - // TODO: 以下Icon视觉暂未提供,需提供后替换 + public static final Icon FOLDER_HALF_IMAGE_ICON = new LazyIcon("folder_half_authority"); + public static final Icon FOLDER_HALF_IMAGE_ICON_OPEN = new LazyIcon("folder_half_authority_open"); + public static final Icon BLANK_IMAGE_ICON = BaseUtils.readIcon("/com/fr/design/images/gui/blank.gif"); - public static final Icon FOLDER_HALF_IMAGE_ICON = IconUtils.readIcon("/com/fr/design/standard/fileicon/folder_half_authority.svg"); public static final Icon CPTX_LOCKED_ICON = IconUtils.readIcon("/com/fr/design/standard/fileicon/cptx_icon_locked.svg"); public static final LockIcon FOLDER_LOCK_ICON = @@ -130,7 +131,17 @@ public class FileTreeIcon { } public static Icon getFolderHalfImageIcon() { - return FOLDER_HALF_IMAGE_ICON; + return getFolderHalfImageIcon(false); + } + + /** + * 获取文件夹有部分权限时的图标 + * + * @param isExpand 文件夹是否已打开 + * @return 图标 + */ + public static Icon getFolderHalfImageIcon(boolean isExpand) { + return isExpand ? FOLDER_HALF_IMAGE_ICON_OPEN : FOLDER_HALF_IMAGE_ICON; } /** diff --git a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/TemplateDirTree.java b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/TemplateDirTree.java index 82f7bc3269..57bd2170af 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/TemplateDirTree.java +++ b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/TemplateDirTree.java @@ -1,11 +1,10 @@ package com.fr.design.gui.itree.filetree; -import com.fr.base.FRContext; import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode; import com.fr.design.mainframe.manager.search.TemplateDirTreeSearchManager; import com.fr.file.filetree.FileNode; -import com.fr.workspace.server.entity.template.TemplateListBean; -import com.fr.workspace.server.repository.template.TemplateRepository; +import com.fanruan.entity.template.TemplateListBean; +import com.fanruan.repository.TemplateRepository; import java.util.Arrays; import java.util.Map; diff --git a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/TemplateFileTree.java b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/TemplateFileTree.java index ad36be8cd4..b939e3d9d9 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itree/filetree/TemplateFileTree.java +++ b/designer-base/src/main/java/com/fr/design/gui/itree/filetree/TemplateFileTree.java @@ -1,6 +1,5 @@ package com.fr.design.gui.itree.filetree; -import com.fr.base.FRContext; import com.fr.base.extension.FileExtension; import com.fr.design.ExtraDesignClassManager; import com.fr.design.file.NodeAuthProcessor; @@ -13,8 +12,8 @@ import com.fr.stable.ArrayUtils; import com.fr.stable.StableUtils; import com.fr.stable.collections.CollectionUtils; import com.fr.stable.project.ProjectConstants; -import com.fr.workspace.server.entity.template.TemplateListBean; -import com.fr.workspace.server.repository.template.TemplateRepository; +import com.fanruan.entity.template.TemplateListBean; +import com.fanruan.repository.TemplateRepository; import javax.swing.text.Position; import javax.swing.tree.DefaultTreeModel; diff --git a/designer-base/src/main/java/com/fr/design/gui/itree/refreshabletree/TreeRootPane.java b/designer-base/src/main/java/com/fr/design/gui/itree/refreshabletree/TreeRootPane.java index 9b1edf986f..b33d97c3d8 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itree/refreshabletree/TreeRootPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/itree/refreshabletree/TreeRootPane.java @@ -17,6 +17,7 @@ import java.util.List; import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.column; +import static com.fine.swing.ui.layout.Layouts.row; public class TreeRootPane extends BasicPane { @@ -44,10 +45,10 @@ public class TreeRootPane extends BasicPane { addCheckBoxListener(); this.add(column(LayoutConstants.VERTICAL_GAP, - cell(checkTypeCheckBox), - cell(loadTypeCheckBox), - cell(layerTypeCheckBox), - cell(returnFullPathCheckBox) + row(cell(checkTypeCheckBox)), + row(cell(loadTypeCheckBox)), + row(cell(layerTypeCheckBox)), + row(cell(returnFullPathCheckBox)) ).getComponent()); } diff --git a/designer-base/src/main/java/com/fr/design/gui/style/AbstractTranslucentBackgroundSpecialPane.java b/designer-base/src/main/java/com/fr/design/gui/style/AbstractTranslucentBackgroundSpecialPane.java index f1bc865c9f..8d0c572da5 100644 --- a/designer-base/src/main/java/com/fr/design/gui/style/AbstractTranslucentBackgroundSpecialPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/style/AbstractTranslucentBackgroundSpecialPane.java @@ -1,6 +1,8 @@ package com.fr.design.gui.style; +import com.fine.theme.utils.FineLayoutBuilder; import com.formdev.flatlaf.util.ScaledEmptyBorder; +import com.fr.design.constants.LayoutConstants; import com.fr.design.designer.IntervalConstants; import com.fr.design.dialog.BasicPane; import com.fr.design.gui.frpane.UIPercentDragPane; @@ -46,27 +48,25 @@ public abstract class AbstractTranslucentBackgroundSpecialPane 0 ? this.uiSettingWidth : f}; - // 确保BackgroundSpecialPane高度变化时,Label依然保持与其顶部对齐 JPanel backgroundLabelPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); backgroundLabelPane.setBorder(new ScaledEmptyBorder(7, 0, 0, 0)); - backgroundLabelPane.add(FRWidgetFactory.createLineWrapLabel(backgroundName), BorderLayout.NORTH); + UILabel backgroundLabel = new UILabel(backgroundName); + backgroundLabel.setToolTipText(backgroundName); + backgroundLabelPane.add(backgroundLabel, BorderLayout.NORTH); - JPanel backgroundComposedPane = TableLayoutHelper.createGapTableLayoutPane( + JPanel backgroundComposedPane = FineLayoutBuilder.compatibleTableLayout(10, new JComponent[][]{ {backgroundLabelPane, backgroundPane} }, - new double[]{p}, columnSize, IntervalConstants.INTERVAL_L1, IntervalConstants.INTERVAL_L1); + new double[]{LayoutConstants.LEFT_WEIGHT, LayoutConstants.RIGHT_WEIGHT}); - JPanel opacityComposedPane = TableLayoutHelper.createGapTableLayoutPane( + JPanel opacityComposedPane = FineLayoutBuilder.compatibleTableLayout(10, new JComponent[][]{ {new UILabel(""), FRWidgetFactory.createLineWrapLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget-Style_Alpha"))}, {new UILabel(""), opacityPane} }, - new double[]{p, p}, columnSize, IntervalConstants.INTERVAL_L1, IntervalConstants.INTERVAL_L1); + new double[]{LayoutConstants.LEFT_WEIGHT, LayoutConstants.RIGHT_WEIGHT}); opacityComposedPane.setBorder(new ScaledEmptyBorder(IntervalConstants.INTERVAL_L1, 0, 0, 0)); opacityComposedPane.setVisible(false); diff --git a/designer-base/src/main/java/com/fr/design/gui/style/AlignmentPane.java b/designer-base/src/main/java/com/fr/design/gui/style/AlignmentPane.java index 4cbbe01590..4ba5c9aa5b 100644 --- a/designer-base/src/main/java/com/fr/design/gui/style/AlignmentPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/style/AlignmentPane.java @@ -212,11 +212,12 @@ public class AlignmentPane extends AbstractBasicStylePane implements GlobalNameO private JPanel seniorUpPane() { return Layouts.column(LayoutConstants.VERTICAL_GAP, row( - cell(new UILabel((Toolkit.i18nText("Fine-Design_Basic_Image_Layout")), SwingConstants.LEFT)).weight(1.2), + cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Image_Layout"), SwingConstants.LEFT)) + .with(it -> it.setToolTipText(Toolkit.i18nText("Fine-Design_Basic_Image_Layout"))).weight(1.2), cell(imageLayoutComboBox).weight(3.0) ), row( - cell(new UILabel((Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Text_Style")), SwingConstants.LEFT)).weight(1.2), + cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Text_Style"), SwingConstants.LEFT)).weight(1.2), cell(textComboBox).weight(3.0) ) ).getComponent(); @@ -225,12 +226,14 @@ public class AlignmentPane extends AbstractBasicStylePane implements GlobalNameO private JPanel seniorMiddlePane() { rotationBarPane = ReactiveCardPane.create() .addSupplier("hide", () -> Layouts.row( - cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation"), SwingConstants.LEFT)).weight(1.2), + cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation"), SwingConstants.LEFT)) + .with(it -> it.setToolTipText(Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation"))).weight(1.2), cell(textRotationComboBox).weight(3) ).getComponent()) .addSupplier("show", () -> Layouts.column(LayoutConstants.VERTICAL_GAP, row( - cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation"), SwingConstants.LEFT)).weight(1.2), + cell(new UILabel(Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation"), SwingConstants.LEFT)) + .with(it -> it.setToolTipText(Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation"))).weight(1.2), cell(textRotationComboBox).weight(3) ), row( @@ -249,9 +252,11 @@ public class AlignmentPane extends AbstractBasicStylePane implements GlobalNameO private JPanel seniorDownPane() { UILabel indentationLabel = new UILabel((Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Style_Indentation")), SwingConstants.LEFT); + indentationLabel.setToolTipText(indentationLabel.getText()); UILabel partSpacingLabel = new UILabel((Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Style_Part_Spacing")), SwingConstants.LEFT); + partSpacingLabel.setToolTipText(partSpacingLabel.getText()); UILabel spacingLabel = new UILabel((Toolkit.i18nText("Fine-Design_Basic_Style_Line_Spacing")), SwingConstants.LEFT); - + spacingLabel.setToolTipText(spacingLabel.getText()); return Layouts.column( row( cell(indentationLabel).weight(1.2), diff --git a/designer-base/src/main/java/com/fr/design/gui/style/BorderPane.java b/designer-base/src/main/java/com/fr/design/gui/style/BorderPane.java index 81759d5f04..ca73c9b59e 100644 --- a/designer-base/src/main/java/com/fr/design/gui/style/BorderPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/style/BorderPane.java @@ -104,7 +104,8 @@ public class BorderPane extends AbstractBasicStylePane implements GlobalNameObse cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Color"), SwingConstants.LEFT)).weight(1.2), cell(currentLineColorPane).weight(3)), row( - cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Out_Border"), SwingConstants.LEFT)).weight(1.2), + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Out_Border"), SwingConstants.LEFT)) + .with(it -> it.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Out_Border"))).weight(1.2), cell(outerToggleButton = new UIToggleButton(new Icon[]{new LazyIcon("out"), IOUtils.readIcon("/com/fr/design/images/m_format/cellstyle/out_white.png")}, false)). with(it -> it.setPreferredSize(new Dimension(-1, FineUIScale.scale(24)))).weight(3)), diff --git a/designer-base/src/main/java/com/fr/design/gui/style/ComponentIntegralStylePane.java b/designer-base/src/main/java/com/fr/design/gui/style/ComponentIntegralStylePane.java index 0fe9c14891..65c72b6d2d 100644 --- a/designer-base/src/main/java/com/fr/design/gui/style/ComponentIntegralStylePane.java +++ b/designer-base/src/main/java/com/fr/design/gui/style/ComponentIntegralStylePane.java @@ -1,5 +1,7 @@ package com.fr.design.gui.style; +import com.fine.theme.utils.FineLayoutBuilder; +import com.fr.design.constants.LayoutConstants; import com.fr.design.designer.IntervalConstants; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ispinner.UISpinner; @@ -66,17 +68,12 @@ public class ComponentIntegralStylePane extends AbstractBorderPackerPane { setLayout(FRGUIPaneFactory.createBorderLayout()); this.initializeComponents(); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] rowSize = supportCornerRadius ? new double[] {p, p, p} : new double[]{p, p}; - double[] columnSize = {this.uiLabelWidth, this.uiSettingWidth > 0 ? this.uiSettingWidth : f}; - - JPanel content = TableLayoutHelper.createGapTableLayoutPane(new JComponent[][]{ + JPanel content = FineLayoutBuilder.compatibleTableLayout(10, new JComponent[][]{ {FRWidgetFactory.createLineWrapLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Style_Render_Style")), FRGUIPaneFactory.createBorderLayoutNorthPaneWithComponent(borderStyleCombo)}, {this.borderPane, null}, {FRWidgetFactory.createLineWrapLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Radius")), cornerSpinner}, }, - rowSize, columnSize, IntervalConstants.INTERVAL_L1, IntervalConstants.INTERVAL_L1); + new double[]{LayoutConstants.LEFT_WEIGHT, LayoutConstants.RIGHT_WEIGHT}); this.add(content, BorderLayout.NORTH); } diff --git a/designer-base/src/main/java/com/fr/design/gui/style/ComponentTitleStylePane.java b/designer-base/src/main/java/com/fr/design/gui/style/ComponentTitleStylePane.java index 1f2fb91b82..d8167d090a 100644 --- a/designer-base/src/main/java/com/fr/design/gui/style/ComponentTitleStylePane.java +++ b/designer-base/src/main/java/com/fr/design/gui/style/ComponentTitleStylePane.java @@ -1,7 +1,9 @@ package com.fr.design.gui.style; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.base.Utils; import com.fr.base.svg.IconUtils; +import com.fr.design.constants.LayoutConstants; import com.fr.design.designer.IntervalConstants; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.ibutton.UIButtonGroup; @@ -187,21 +189,13 @@ public class ComponentTitleStylePane extends AbstractBorderPackerPane { } private JPanel createTitleContentPane() { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] rowSize = {p}; - double[] columnSize = {this.uiLabelWidth, this.uiSettingWidth > 0 ? this.uiSettingWidth : f}; - return TableLayoutHelper.createCommonTableLayoutPane( + return FineLayoutBuilder.compatibleTableLayout(10, new JComponent[][]{{FRWidgetFactory.createLineWrapLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Style_Title_Content")), textContentPane}}, - rowSize, columnSize, IntervalConstants.INTERVAL_L1); + new double[]{LayoutConstants.LEFT_WEIGHT, LayoutConstants.RIGHT_WEIGHT}); } private JPanel createTitleOtherSettingPane() { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] rowSize = {p, p, p, p, p}; - double[] columnSize = {this.uiLabelWidth, this.uiSettingWidth > 0 ? this.uiSettingWidth : f}; JComponent[][] components = new JComponent[][]{ {FRWidgetFactory.createLineWrapLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Style_Title_Format")), FRGUIPaneFactory.createBorderLayoutNorthPaneWithComponent(fontFamilyComboBox)}, @@ -211,18 +205,14 @@ public class ComponentTitleStylePane extends AbstractBorderPackerPane { {backgroundPane, null} }; - return TableLayoutHelper.createCommonTableLayoutPane(components, rowSize, columnSize, IntervalConstants.INTERVAL_L1); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); } protected JPanel createTitleFontButtonPane(){ - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] rowSize = {p}; - double[] columnSize = {f, p, p, p, p}; - JPanel buttonPane = TableLayoutHelper.createCommonTableLayoutPane( new JComponent[][] { + JPanel buttonPane = FineLayoutBuilder.compatibleTableLayout(10, new JComponent[][] { {fontSizeComboBox, fontColorSelectPane, fontItalicButton, fontBoldButton, fontUnderlineButton}, - }, rowSize, columnSize, IntervalConstants.INTERVAL_W0); + }, new double[]{LayoutConstants.LEFT_WEIGHT, LayoutConstants.RIGHT_WEIGHT}); JPanel containerPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); containerPane.add(buttonPane, BorderLayout.NORTH); diff --git a/designer-base/src/main/java/com/fr/design/gui/style/FollowingThemePane.java b/designer-base/src/main/java/com/fr/design/gui/style/FollowingThemePane.java index d4b7db8281..128c3177da 100644 --- a/designer-base/src/main/java/com/fr/design/gui/style/FollowingThemePane.java +++ b/designer-base/src/main/java/com/fr/design/gui/style/FollowingThemePane.java @@ -1,6 +1,6 @@ package com.fr.design.gui.style; -import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineLayoutBuilder; import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.theme.TemplateTheme; import com.fr.design.dialog.BasicPane; @@ -12,15 +12,11 @@ import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.JTemplate; import com.fr.design.widget.FRWidgetFactory; import javax.swing.JPanel; import java.awt.BorderLayout; -import java.awt.Component; -import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.ArrayList; @@ -71,14 +67,8 @@ public class FollowingThemePane extends BasicPane implements UIObserver { }); UILabel followingThemeLabel = FRWidgetFactory.createLineWrapLabel(name); - - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - JPanel followingThemePane = - TableLayoutHelper.createGapTableLayoutPane( new Component[][]{new Component[] { followingThemeLabel, FRGUIPaneFactory.createBorderLayoutNorthPaneWithComponent(followingThemeButtonGroup)}}, - new double[] { p }, new double[] {FineUIScale.scale(SETTING_LABEL_WIDTH), f }, 10, 0); + JPanel followingThemePane = FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, followingThemeLabel, followingThemeButtonGroup); followingThemePane.setVisible(false); - followingThemePane.setPreferredSize(new Dimension(FineUIScale.scale(275), (int) followingThemePane.getPreferredSize().getHeight())); add(followingThemePane, BorderLayout.NORTH); container = FRGUIPaneFactory.createBorderLayout_S_Pane(); diff --git a/designer-base/src/main/java/com/fr/design/gui/style/FormatPane.java b/designer-base/src/main/java/com/fr/design/gui/style/FormatPane.java index 8ab812e9dc..7d3f7d5a9b 100644 --- a/designer-base/src/main/java/com/fr/design/gui/style/FormatPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/style/FormatPane.java @@ -1,9 +1,9 @@ package com.fr.design.gui.style; +import com.fine.theme.utils.FineComponentsFactory; import com.fine.theme.utils.FineLayoutBuilder; import com.fine.theme.utils.FineUIScale; import com.fine.theme.utils.FineUIStyle; -import com.fine.theme.utils.FineUIUtils; import com.fr.base.CoreDecimalFormat; import com.fr.base.Style; import com.fr.base.TextFormat; @@ -12,8 +12,6 @@ import com.fr.data.core.FormatField.FormatContents; import com.fr.design.event.UIObserverListener; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.i18n.Toolkit; -import com.fr.design.border.UIRoundedBorder; -import com.fr.design.constants.UIConstants; import com.fr.design.event.GlobalNameListener; import com.fr.design.event.GlobalNameObserver; import com.fr.design.gui.icombobox.TextFontComboBox; @@ -28,13 +26,10 @@ import java.awt.BorderLayout; import java.awt.Color; import java.awt.Component; import java.math.RoundingMode; -import javax.swing.BorderFactory; import javax.swing.JLabel; import javax.swing.JList; import javax.swing.JPanel; import javax.swing.SwingConstants; -import javax.swing.border.Border; -import javax.swing.border.TitledBorder; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.text.Format; @@ -161,14 +156,7 @@ public class FormatPane extends AbstractBasicStylePane implements GlobalNameObse } private void initSampleLabel() { - Color labelColor = FineUIUtils.getUIColor("Label.tipColor", "inactiveCaption"); - Border interBorder = new UIRoundedBorder(UIConstants.LINE_COLOR, 1, 4); - String title = Toolkit.i18nText("Fine-Design_Report_Base_StyleFormat_Sample"); - Border border = BorderFactory.createTitledBorder(interBorder, title, TitledBorder.LEFT, 0, null, labelColor); - sampleLabel = new UILabel(FormatField.getInstance().getFormatValue()); - sampleLabel.setHorizontalAlignment(UILabel.CENTER); - sampleLabel.setBorder(border); - FineUIStyle.setStyle(sampleLabel, FineUIStyle.LABEL_TIP); + sampleLabel = FineComponentsFactory.createSampleLabel(); } diff --git a/designer-base/src/main/java/com/fr/design/gui/style/TextFormatPane.java b/designer-base/src/main/java/com/fr/design/gui/style/TextFormatPane.java index a86bc70e05..e2d65aa91c 100644 --- a/designer-base/src/main/java/com/fr/design/gui/style/TextFormatPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/style/TextFormatPane.java @@ -1,15 +1,13 @@ package com.fr.design.gui.style; +import com.fine.theme.utils.FineComponentsFactory; import com.fine.theme.utils.FineUIStyle; -import com.fine.theme.utils.FineUIUtils; import com.fr.base.CoreDecimalFormat; import com.fr.base.Style; import com.fr.base.TextFormat; import com.fr.data.core.FormatField; import com.fr.data.core.FormatField.FormatContents; -import com.fr.design.border.UIRoundedBorder; import com.fr.design.constants.LayoutConstants; -import com.fr.design.constants.UIConstants; import com.fr.design.event.GlobalNameListener; import com.fr.design.event.GlobalNameObserver; import com.fr.design.event.UIObserverListener; @@ -22,17 +20,11 @@ import com.fr.design.i18n.Toolkit; import com.fr.general.ComparatorUtils; import com.fr.stable.StringUtils; -import javax.swing.BorderFactory; import javax.swing.JLabel; import javax.swing.JList; -import javax.swing.UIManager; -import javax.swing.border.Border; -import javax.swing.border.TitledBorder; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Component; -import java.awt.FontMetrics; -import java.awt.Graphics; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.math.RoundingMode; @@ -112,14 +104,7 @@ public class TextFormatPane extends AbstractBasicStylePane implements GlobalName } private void initPreviewLabel4GeneralFormat() { - Color labelColor = FineUIUtils.getUIColor("Label.tipColor", "inactiveCaption"); - Border interBorder = new UIRoundedBorder(UIConstants.LINE_COLOR, 0, 4); - String title = Toolkit.i18nText("Fine-Design_Report_Base_StyleFormat_Sample"); - Border border = BorderFactory.createTitledBorder(interBorder, title, TitledBorder.ABOVE_TOP, 0, null, labelColor); - previewLabel = new UILabel(FormatField.getInstance().getFormatValue()); - previewLabel.setHorizontalAlignment(UILabel.CENTER); - previewLabel.setBorder(border); - FineUIStyle.setStyle(previewLabel, FineUIStyle.LABEL_TIP); + previewLabel = FineComponentsFactory.createSampleLabel(); } protected void initLayout() { diff --git a/designer-base/src/main/java/com/fr/design/gui/style/TextInsetImageBackgroundSpecialPane.java b/designer-base/src/main/java/com/fr/design/gui/style/TextInsetImageBackgroundSpecialPane.java index b3556dc6f8..61872ff7b9 100644 --- a/designer-base/src/main/java/com/fr/design/gui/style/TextInsetImageBackgroundSpecialPane.java +++ b/designer-base/src/main/java/com/fr/design/gui/style/TextInsetImageBackgroundSpecialPane.java @@ -1,9 +1,11 @@ package com.fr.design.gui.style; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.base.Style; import com.fr.base.background.ImageBackground; import com.fr.base.background.ImageFileBackground; import com.fr.design.border.UIRoundedBorder; +import com.fr.design.constants.LayoutConstants; import com.fr.design.constants.UIConstants; import com.fr.design.designer.IntervalConstants; import com.fr.design.event.UIObserver; @@ -154,7 +156,7 @@ public class TextInsetImageBackgroundSpecialPane extends JPanel implements UIObs } }); - return TableLayoutHelper.createCommonTableLayoutPane( + return FineLayoutBuilder.compatibleTableLayout(10, new JComponent[][]{ {null, deletableImagePreviewPane}, {null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Style_Title_Inset_Relative_Location"))}, @@ -162,7 +164,7 @@ public class TextInsetImageBackgroundSpecialPane extends JPanel implements UIObs {null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Style_Title_Inset_Padding"))}, {null, this.imagePaddingPane} }, - rowSize, columnSize, IntervalConstants.INTERVAL_L1); + new double[]{LayoutConstants.LEFT_WEIGHT, LayoutConstants.RIGHT_WEIGHT}); } private void initImageFileChooserIfNotExist() { diff --git a/designer-base/src/main/java/com/fr/design/gui/syntax/ui/rtextarea/RTextAreaBase.java b/designer-base/src/main/java/com/fr/design/gui/syntax/ui/rtextarea/RTextAreaBase.java index db3f50c327..9a39e31fcb 100644 --- a/designer-base/src/main/java/com/fr/design/gui/syntax/ui/rtextarea/RTextAreaBase.java +++ b/designer-base/src/main/java/com/fr/design/gui/syntax/ui/rtextarea/RTextAreaBase.java @@ -24,6 +24,7 @@ import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import javax.swing.JTextArea; +import javax.swing.UIManager; import javax.swing.event.CaretEvent; import javax.swing.plaf.ColorUIResource; import javax.swing.plaf.TextUI; @@ -73,7 +74,7 @@ int currentCaretY; // Used to know when to rehighlight current line. private RTAMouseListener mouseListener; private static final Color DEFAULT_CARET_COLOR = new ColorUIResource(255,51,51); - private static final Color DEFAULT_CURRENT_LINE_HIGHLIGHT_COLOR = new Color(255,255,170); + private static final Color DEFAULT_CURRENT_LINE_HIGHLIGHT_COLOR = UIManager.getColor("TextArea.currentLineHighlightColor"); private static final Color DEFAULT_MARGIN_LINE_COLOR = new Color(255,224,224); private static final int DEFAULT_TAB_SIZE = 4; private static final int DEFAULT_MARGIN_LINE_POSITION = 80; diff --git a/designer-base/src/main/java/com/fr/design/hyperlink/AbstractHyperNorthPane.java b/designer-base/src/main/java/com/fr/design/hyperlink/AbstractHyperNorthPane.java index 5d27e3ea7d..1ed57797ac 100644 --- a/designer-base/src/main/java/com/fr/design/hyperlink/AbstractHyperNorthPane.java +++ b/designer-base/src/main/java/com/fr/design/hyperlink/AbstractHyperNorthPane.java @@ -64,14 +64,14 @@ public abstract class AbstractHyperNorthPane extends BasicB UILabel widthLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Designer_Width")); widthTextFiled = new UISpinner(0, Integer.MAX_VALUE, 1, DEFAULT_V_VALUE); newWindowConfPane.add(column(10, - row(cell(heightLabel).weight(0.13), cell(heightTextFiled).weight(0.87)), - row(cell(widthLabel).weight(0.13), cell(widthTextFiled).weight(0.87)) + row(cell(heightLabel).weight(0.2), cell(heightTextFiled).weight(0.8)), + row(cell(widthLabel).weight(0.2), cell(widthTextFiled).weight(0.8)) ).getComponent()); JPanel centerPanel = new JPanel(new BorderLayout()); centerPanel.add(column(10, - row(cell(targetFrameLabel).weight(0.13), cell(targetFrameComboBox).weight(0.87)), + row(cell(targetFrameLabel).weight(0.2), cell(targetFrameComboBox).weight(0.8)), cell(newWindowConfPane) ).getComponent()); newWindowConfPane.setVisible(false); diff --git a/designer-base/src/main/java/com/fr/design/hyperlink/ReportletHyperNorthPane.java b/designer-base/src/main/java/com/fr/design/hyperlink/ReportletHyperNorthPane.java index ed9ea8a556..55bb6edd58 100644 --- a/designer-base/src/main/java/com/fr/design/hyperlink/ReportletHyperNorthPane.java +++ b/designer-base/src/main/java/com/fr/design/hyperlink/ReportletHyperNorthPane.java @@ -44,7 +44,6 @@ import java.util.List; import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.column; -import static com.fine.swing.ui.layout.Layouts.flex; import static com.fine.swing.ui.layout.Layouts.row; /** @@ -174,8 +173,8 @@ public class ReportletHyperNorthPane extends AbstractHyperNorthPane { UILabel urlLabel = new UILabel("URL"); JPanel urlWithHelp = new JPanel(new BorderLayout()); urlWithHelp.add(row( - cell(urlLabel).weight(0.13), - cell(urlTextField).weight(0.87) + cell(urlLabel).weight(0.2), + cell(urlTextField).weight(0.8) ).getComponent()); if (this.needRenamePane) { diff --git a/designer-base/src/main/java/com/fr/design/hyperlink/popup/MobilePopupRegularPane.java b/designer-base/src/main/java/com/fr/design/hyperlink/popup/MobilePopupRegularPane.java index bc10b89144..7978159c1c 100644 --- a/designer-base/src/main/java/com/fr/design/hyperlink/popup/MobilePopupRegularPane.java +++ b/designer-base/src/main/java/com/fr/design/hyperlink/popup/MobilePopupRegularPane.java @@ -1,11 +1,13 @@ package com.fr.design.hyperlink.popup; +import com.fine.theme.utils.FineUIStyle; +import com.formdev.flatlaf.util.ScaledEmptyBorder; +import com.fr.design.constants.LayoutConstants; import com.fr.design.dialog.BasicPane; import com.fr.design.gui.ibutton.UIRadioButton; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ispinner.UISpinner; import com.fr.design.i18n.Toolkit; -import com.fr.design.layout.VerticalFlowLayout; import com.fr.stable.StringUtils; import javax.swing.*; @@ -13,6 +15,11 @@ import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import static com.fine.swing.ui.layout.Layouts.column; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.row; +import static com.fine.swing.ui.layout.Layouts.flex; + public class MobilePopupRegularPane extends BasicPane { private String label; @@ -35,13 +42,15 @@ public class MobilePopupRegularPane extends BasicPane { private void initComponent() { this.setLayout(new BorderLayout()); - this.add(this.createRadioButtonGroupPane(), BorderLayout.NORTH); spinnerGroupPane = this.createSpinnerPane(); - this.add(spinnerGroupPane, BorderLayout.CENTER); + this.add(column(LayoutConstants.VERTICAL_GAP, + cell(this.createRadioButtonGroupPane()), + row(flex(1), cell(spinnerGroupPane).weight(3)) + ).getComponent()); } private JPanel createRadioButtonGroupPane() { - radiosPane = new JPanel(new FlowLayout(FlowLayout.LEFT, 5, 5)); + radiosPane = new JPanel(new BorderLayout()); customRadio = new UIRadioButton(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Custom")); customRadio.addActionListener(radioActionListener); @@ -52,10 +61,8 @@ public class MobilePopupRegularPane extends BasicPane { radioButtons.add(customRadio); radioButtons.add(autoRadio); - radiosPane.add(customRadio); - radiosPane.add(autoRadio); - - return MobilePopupUIUtils.createLeftTileRightContentPanel(this.label, radiosPane, Color.GRAY, 20); + radiosPane.add(row(30, cell(customRadio), cell(autoRadio), flex()).getComponent()); + return row(cell(new UILabel(this.label, FineUIStyle.LABEL_SECONDARY)).weight(1), cell(radiosPane).weight(3)).getComponent(); } private ActionListener radioActionListener = new ActionListener() { @@ -66,40 +73,32 @@ public class MobilePopupRegularPane extends BasicPane { }; private JPanel createSpinnerPane() { - JPanel spinnerPane = new JPanel(new FlowLayout(FlowLayout.LEFT, 15, 5)); - spinnerPane.setBorder(BorderFactory.createEmptyBorder(0, MobilePopupUIUtils.Left_Title_width, 0, 0)); + JPanel spinnerPane = new JPanel(new FlowLayout(FlowLayout.LEFT, 15, 0)); + spinnerPane.setBorder(new ScaledEmptyBorder(0, 0, 0, 0)); widthSpinner = new UISpinner(0, 100, 1, 95); widthSpinnerPane = this.createSpinnerLabelPane(widthSpinner, Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Width")); heightSpinner = new UISpinner(0, 100, 1, 95); heightSpinnerPane = this.createSpinnerLabelPane(heightSpinner, Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Height")); - - spinnerPane.add(widthSpinnerPane); - spinnerPane.add(heightSpinnerPane); - + spinnerPane.add(row(cell(widthSpinnerPane), cell(heightSpinnerPane)).getComponent()); return spinnerPane; } private JPanel createSpinnerLabelPane(UISpinner spinner, String labelText) { - JPanel spinnerLabelPane = new JPanel(new VerticalFlowLayout(VerticalFlowLayout.TOP, 0, 5)); - - JPanel spinnerPane = new JPanel(new FlowLayout(FlowLayout.LEFT, 2,0)); + JPanel spinnerLabelPane = new JPanel(new BorderLayout()); UILabel percent = new UILabel("%"); - spinnerPane.add(spinner); - spinnerPane.add(percent); - UILabel label = new UILabel(labelText); label.setHorizontalAlignment(SwingConstants.CENTER); - - spinnerLabelPane.add(spinnerPane); - spinnerLabelPane.add(label); - + spinnerLabelPane.add(column(LayoutConstants.VGAP_SMALL, + row(cell(spinner).weight(1), cell(percent)).weight(1), + cell(label) + ).getComponent()); return spinnerLabelPane; } private void resetSpinnerGroupPane(boolean showHeightSpinnerPane) { spinnerGroupPane.removeAll(); spinnerGroupPane.add(widthSpinnerPane); - if(showHeightSpinnerPane) { + if (showHeightSpinnerPane) { spinnerGroupPane.add(heightSpinnerPane); } spinnerGroupPane.revalidate(); diff --git a/designer-base/src/main/java/com/fr/design/hyperlink/popup/StyleSettingPane.java b/designer-base/src/main/java/com/fr/design/hyperlink/popup/StyleSettingPane.java index 3073203496..701594bf12 100644 --- a/designer-base/src/main/java/com/fr/design/hyperlink/popup/StyleSettingPane.java +++ b/designer-base/src/main/java/com/fr/design/hyperlink/popup/StyleSettingPane.java @@ -1,6 +1,8 @@ package com.fr.design.hyperlink.popup; +import com.fine.theme.utils.FineUIStyle; import com.fr.design.beans.BasicBeanPane; +import com.fr.design.constants.LayoutConstants; import com.fr.design.gui.frpane.UINumberDragPane; import com.fr.design.gui.icombobox.LineComboBox; import com.fr.design.gui.ilable.UILabel; @@ -57,14 +59,11 @@ public class StyleSettingPane extends BasicBeanPane { JPanel typePane = FRGUIPaneFactory.createBorderLayout_S_Pane(); popupTypeLabel = new UILabel(""); UILabel typeLabel = new UILabel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Type")); - typePane.add(row(44, - cell(typeLabel), - cell(popupTypeLabel) - ).getComponent()); + typePane.add(row(cell(typeLabel).weight(1), row(cell(popupTypeLabel), flex()).weight(6)).getComponent()); return typePane; } - private JPanel createStylePane() { + private JPanel createStylePane() { JPanel stylePane = FRGUIPaneFactory.createBorderLayout_S_Pane(); stylePane.add(column(10, cell(this.createBorderSettingPane()), @@ -82,14 +81,11 @@ public class StyleSettingPane extends BasicBeanPane { borderColor = new NewColorSelectBox(100); borderRadiusSpinner = new UISpinner(0, maxBorderRadius, 1, 20); UILabel borderLabel = new UILabel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Border")); - borderPane.add(row(44, - column(10, - cell(borderLabel).weight(0.3), - flex().weight(0.7)), - column(10, - cell(MobilePopupUIUtils.createLeftTileRightContentPanel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Line"), borderType, Color.GRAY, 64)), - cell(MobilePopupUIUtils.createLeftTileRightContentPanel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Colors"), borderColor, Color.GRAY, 64)), - cell(MobilePopupUIUtils.createLeftTileRightContentPanel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Radius"), borderRadiusSpinner, Color.GRAY, 64))) + + borderPane.add(column(LayoutConstants.VERTICAL_GAP, + row(cell(borderLabel).weight(1), cell(new UILabel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Line"), FineUIStyle.LABEL_SECONDARY)).weight(1), cell(borderType).weight(2), flex(3)), + row(flex(1), cell(new UILabel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Colors"), FineUIStyle.LABEL_SECONDARY)).weight(1), cell(borderColor).weight(2), flex(3)), + row(flex(1), cell(new UILabel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Radius"), FineUIStyle.LABEL_SECONDARY)).weight(1), cell(borderRadiusSpinner).weight(2), flex(3)) ).getComponent()); return borderPane; } @@ -99,39 +95,31 @@ public class StyleSettingPane extends BasicBeanPane { bgPane.setLayout(new BorderLayout()); bgColor = new NewColorSelectBox(100); - JPanel transparencyPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); - this.numberDragPane = new UINumberDragPane(0,100); + this.numberDragPane = new UINumberDragPane(0, 100); transparencyPane.add(numberDragPane, BorderLayout.CENTER); transparencyPane.add(new UILabel(" %"), BorderLayout.EAST); JLabel bgLabel = new JLabel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Background")); - bgPane.add(row(44, - column(10, - cell(bgLabel).weight(0.6), - flex().weight(0.4)), - column(10, - cell(MobilePopupUIUtils.createLeftTileRightContentPanel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Colors"), bgColor, Color.GRAY, 64)), - cell(MobilePopupUIUtils.createLeftTileRightContentPanel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Opacity"), transparencyPane, Color.GRAY, 64)) - ) + + bgPane.add(column(LayoutConstants.VERTICAL_GAP, + row(cell(bgLabel).weight(1), cell(new UILabel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Colors"), FineUIStyle.LABEL_SECONDARY)).weight(1), cell(bgColor).weight(2), flex(3)), + row(flex(1), cell(new UILabel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Opacity"), FineUIStyle.LABEL_SECONDARY)).weight(1), cell(transparencyPane).weight(3), flex(2)) ).getComponent()); return bgPane; } private JPanel createPopupSizePane() { JPanel sizePane = new JPanel(new BorderLayout()); - mobileRegularPane = new MobilePopupRegularPane(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Mobile_Rules")); padRegularPane = new MobilePopupRegularPane(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Pad_Rules")); JLabel sizeLabel = new JLabel(Toolkit.i18nText("FR-Plugin-Designer_Mobile_Popup_Size")); - sizePane.add(row(20, - column(10, - cell(sizeLabel).weight(0.16), - flex().weight(0.84)), - column(10, - cell(mobileRegularPane), - cell(padRegularPane) - ) + sizePane.add(column(LayoutConstants.VERTICAL_GAP, + row( + column(LayoutConstants.VERTICAL_GAP, cell(sizeLabel), flex()).weight(1), + cell(mobileRegularPane).weight(4), flex(2) + ), + row(flex(1), cell(padRegularPane).weight(4), flex(2)) ).getComponent()); return sizePane; } @@ -204,7 +192,7 @@ public class StyleSettingPane extends BasicBeanPane { private void updateBackgroundSettingBean(MobilePopupHyperlink link) { link.setBgColor(bgColor.getSelectObject()); - link.setBgOpacity((float)(numberDragPane.updateBean() / maxNumber)); + link.setBgOpacity((float) (numberDragPane.updateBean() / maxNumber)); } private void populatePopupSizeBean(MobilePopupHyperlink link) { diff --git a/designer-base/src/main/java/com/fr/design/i18n/DesignI18nImpl.java b/designer-base/src/main/java/com/fr/design/i18n/DesignI18nImpl.java index 3bd65fd7ae..7d57708642 100644 --- a/designer-base/src/main/java/com/fr/design/i18n/DesignI18nImpl.java +++ b/designer-base/src/main/java/com/fr/design/i18n/DesignI18nImpl.java @@ -1,5 +1,6 @@ package com.fr.design.i18n; +import com.fr.design.DesignerEnvManager; import com.fr.general.GeneralContext; import com.fr.general.log.MessageFormatter; import com.fr.locale.DesignI18nProvider; @@ -14,10 +15,10 @@ import java.util.Locale; public class DesignI18nImpl implements DesignI18nProvider { -// static { -// // GeneralContext上下文 存储本次启动的语言环境 直接使用DesignerEnvManager 会在设置语言环境后 不重启 立即生效 存在问题 -// GeneralContext.setLocale(DesignerEnvManager.getEnvManager().getLanguage()); -// } + static { + // GeneralContext上下文 存储本次启动的语言环境 直接使用DesignerEnvManager 会在设置语言环境后 不重启 立即生效 存在问题 + GeneralContext.setLocale(DesignerEnvManager.getEnvManager().getLanguage()); + } private static DesignI18nImpl instance = new DesignI18nImpl(); diff --git a/designer-base/src/main/java/com/fr/design/i18n/DesignSizeI18nManager.java b/designer-base/src/main/java/com/fr/design/i18n/DesignSizeI18nManager.java index 1dd2306b89..88c6e30b5f 100644 --- a/designer-base/src/main/java/com/fr/design/i18n/DesignSizeI18nManager.java +++ b/designer-base/src/main/java/com/fr/design/i18n/DesignSizeI18nManager.java @@ -1,5 +1,6 @@ package com.fr.design.i18n; +import com.fine.theme.utils.FineUIScale; import com.fr.design.dialog.BasicDialog; import com.fr.general.GeneralContext; import com.fr.locale.LocaleManager; diff --git a/designer-base/src/main/java/com/fr/design/javascript/Commit2DBJavaScriptPane.java b/designer-base/src/main/java/com/fr/design/javascript/Commit2DBJavaScriptPane.java index a475fa1cdb..101c5a293f 100644 --- a/designer-base/src/main/java/com/fr/design/javascript/Commit2DBJavaScriptPane.java +++ b/designer-base/src/main/java/com/fr/design/javascript/Commit2DBJavaScriptPane.java @@ -17,6 +17,7 @@ import java.awt.Dimension; import java.util.ArrayList; import java.util.List; +import static com.fine.swing.ui.layout.Layouts.column; import static com.fine.swing.ui.layout.Layouts.row; import static com.fine.swing.ui.layout.Layouts.cell; @@ -53,14 +54,12 @@ public class Commit2DBJavaScriptPane extends FurtherBasicBeanPane { initCenterPane(mainTextLabel, scrollPane, fill, preferred); this.add(centerPane, BorderLayout.CENTER); mainTextEditor.setAutoscrolls(true); - checkEmailConfig(EmailCenter.isEmailConfigValid()); + checkEmailConfig(ConfigRepository.getInstance().isEmailConfigValid()); } /** @@ -128,7 +127,7 @@ public class EmailPane extends FurtherBasicBeanPane { if (showTplContent != null) { showTplContent.setSelected(ob ==null ? false: ob.isShowTplContent()); } - checkEmailConfig(EmailCenter.isEmailConfigValid()); + checkEmailConfig(ConfigRepository.getInstance().isEmailConfigValid()); } @Override diff --git a/designer-base/src/main/java/com/fr/design/javascript/ExportJavaScriptPane.java b/designer-base/src/main/java/com/fr/design/javascript/ExportJavaScriptPane.java index 67f63e8acb..ab62b8e668 100644 --- a/designer-base/src/main/java/com/fr/design/javascript/ExportJavaScriptPane.java +++ b/designer-base/src/main/java/com/fr/design/javascript/ExportJavaScriptPane.java @@ -1,6 +1,5 @@ package com.fr.design.javascript; -import com.fine.theme.utils.FineUIScale; import com.fr.base.BaseFormula; import com.fr.base.Parameter; import com.fr.base.extension.FileExtension; @@ -17,6 +16,7 @@ import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.icombobox.UIComboBoxRenderer; import com.fr.design.gui.ilable.UILabel; +import com.fr.design.gui.itable.FineUITableCellEditor; import com.fr.design.gui.itableeditorpane.ParameterTableModel; import com.fr.design.gui.itableeditorpane.UITableEditAction; import com.fr.design.gui.itableeditorpane.UITableEditorPane; @@ -147,7 +147,7 @@ public class ExportJavaScriptPane extends AbstractHyperLinkPane it.setBorder(new ScaledEmptyBorder(0, 0, 0, 10))).getComponent()); return jsParaPane; } diff --git a/designer-base/src/main/java/com/fr/design/javascript/JSContentWithDescriptionPane.java b/designer-base/src/main/java/com/fr/design/javascript/JSContentWithDescriptionPane.java index 4116f4f1d0..cdd7601c35 100644 --- a/designer-base/src/main/java/com/fr/design/javascript/JSContentWithDescriptionPane.java +++ b/designer-base/src/main/java/com/fr/design/javascript/JSContentWithDescriptionPane.java @@ -1,8 +1,11 @@ package com.fr.design.javascript; +import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIStyle; +import com.formdev.flatlaf.ui.FlatUIUtils; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.svg.IconUtils; -import com.fr.design.border.UIRoundedBorder; -import com.fr.design.constants.UIConstants; +import com.fr.design.border.FineBorderFactory; import com.fr.design.gui.autocomplete.AutoCompleteExtraRefreshComponent; import com.fr.design.gui.autocomplete.BasicCompletion; import com.fr.design.gui.autocomplete.CompletionCellRenderer; @@ -53,7 +56,6 @@ import java.awt.Color; import java.awt.Component; import java.awt.Cursor; import java.awt.Desktop; -import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.FocusAdapter; @@ -71,7 +73,6 @@ import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; -import java.util.Locale; import java.util.concurrent.ExecutionException; public class JSContentWithDescriptionPane extends JSContentPane implements KeyListener { @@ -140,7 +141,7 @@ public class JSContentWithDescriptionPane extends JSContentPane implements KeyLi //js函数声明面板 JPanel jsParaPane = createJSParaPane(); - jsParaPane.setPreferredSize(new Dimension(650, 80)); + jsParaPane.setPreferredSize(FineUIScale.createScaleDimension(650, 80)); //右上角的搜索提示面板 JPanel tipsPane = createTipsPane(); @@ -153,7 +154,7 @@ public class JSContentWithDescriptionPane extends JSContentPane implements KeyLi UIScrollPane contentTextAreaPanel = createContentTextAreaPanel(); initContextAreaListener(); - contentTextAreaPanel.setPreferredSize(new Dimension(850, 250)); + contentTextAreaPanel.setPreferredSize(FineUIScale.createScaleDimension(850, 250)); //js函数结束标签 UILabel endBracketsLabel = new UILabel(); endBracketsLabel.setText("}"); @@ -173,7 +174,7 @@ public class JSContentWithDescriptionPane extends JSContentPane implements KeyLi //函数分类和函数说明面板================================== JPanel functionNameAndDescriptionPanel = createInterfaceAndDescriptionPanel(); - functionNameAndDescriptionPanel.setPreferredSize(new Dimension(880, 220)); + functionNameAndDescriptionPanel.setPreferredSize(FineUIScale.createScaleDimension(880, 220)); this.add(functionNameAndDescriptionPanel, BorderLayout.SOUTH); } @@ -423,27 +424,27 @@ public class JSContentWithDescriptionPane extends JSContentPane implements KeyLi JPanel mainPane = new JPanel(card); initHelpDocumentList(); UIScrollPane helpDOCScrollPane = new UIScrollPane(helpDOCList); - helpDOCScrollPane.setPreferredSize(new Dimension(200, 200)); + helpDOCScrollPane.setPreferredSize(FineUIScale.createScaleDimension(200, 200)); helpDOCScrollPane.setBorder(null); mainPane.add(helpDOCScrollPane, DOC_LIST_CARD); UILabel imageLabel = new UILabel(); imageLabel.setIcon(IconUtils.readIcon("com/fr/design/javascript/jsapi/images/connectFailed.svg")); - imageLabel.setPreferredSize(new Dimension(180, 65)); + imageLabel.setPreferredSize(FineUIScale.createScaleDimension(180, 65)); JPanel imagePane = FRGUIPaneFactory.createBorderLayout_S_Pane(); - imagePane.setBorder(BorderFactory.createEmptyBorder(0, 42, 0, 0)); + imagePane.setBorder(new ScaledEmptyBorder(0, 42, 0, 0)); imagePane.add(imageLabel); imagePane.setBackground(Color.WHITE); UILabel failedLabel = new UILabel(Toolkit.i18nText("Fine-Design_Net_Connect_Failed"), 0); - failedLabel.setPreferredSize(new Dimension(180, 20)); + failedLabel.setPreferredSize(FineUIScale.createScaleDimension(180, 20)); UILabel reloadLabel = new UILabel(Toolkit.i18nText("Fine-Design_Basic_Reload"), 0); reloadLabel.setCursor(new Cursor(Cursor.HAND_CURSOR)); - reloadLabel.setPreferredSize(new Dimension(180, 20)); + reloadLabel.setPreferredSize(FineUIScale.createScaleDimension(180, 20)); reloadLabel.setForeground(Color.blue); JPanel labelPane = FRGUIPaneFactory.createVerticalFlowLayout_Pane(true, 0, 0, 0); - labelPane.setBorder(BorderFactory.createEmptyBorder(35, 45, 0, 0)); + labelPane.setBorder(new ScaledEmptyBorder(35, 45, 0, 0)); labelPane.setBackground(Color.WHITE); labelPane.add(imagePane); labelPane.add(failedLabel); @@ -505,7 +506,7 @@ public class JSContentWithDescriptionPane extends JSContentPane implements KeyLi super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); if (value instanceof HelpDocument) { this.setText(((HelpDocument) value).getName()); - this.setForeground(Color.BLUE); + this.setForeground(FlatUIUtils.getUIColor("brand.normal", Color.BLUE)); } return this; } @@ -544,10 +545,12 @@ public class JSContentWithDescriptionPane extends JSContentPane implements KeyLi private void initDescriptionArea(JPanel descriptionPanel) { descriptionTextArea = new UITextArea(); + descriptionTextArea.setBorder(null); UIScrollPane descriptionScrollPane = new UIScrollPane(descriptionTextArea); - descriptionScrollPane.setPreferredSize(new Dimension(300, 200)); + descriptionScrollPane.setBorder(FineBorderFactory.createWrappedRoundBorder()); + descriptionScrollPane.setPreferredSize(FineUIScale.createScaleDimension(300, 200)); descriptionPanel.add(this.createNamePane(Toolkit.i18nText("Fine-Design_Interface_Description"), descriptionScrollPane), BorderLayout.CENTER); - descriptionTextArea.setBackground(Color.white); + descriptionTextArea.setBackground(FlatUIUtils.getUIColor("fill.normal", Color.WHITE)); descriptionTextArea.setLineWrap(true); descriptionTextArea.setWrapStyleWord(true); descriptionTextArea.setEditable(false); @@ -580,10 +583,12 @@ public class JSContentWithDescriptionPane extends JSContentPane implements KeyLi private void initInterfaceModuleTree(JPanel interfacePanel) { moduleTree = new JTree(); + FineUIStyle.setStyle(moduleTree, FineUIStyle.PURE_TREE); + UIScrollPane moduleTreePane = new UIScrollPane(moduleTree); - moduleTreePane.setBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, UIConstants.ARC)); + moduleTreePane.setBorder(FineBorderFactory.createWrappedRoundBorder()); interfacePanel.add(this.createNamePane(Toolkit.i18nText("Fine-Design_Module"), moduleTreePane), BorderLayout.WEST); - moduleTreePane.setPreferredSize(new Dimension(180, 200)); + moduleTreePane.setPreferredSize(FineUIScale.createScaleDimension(180, 200)); moduleTree.setRootVisible(false); moduleTree.setShowsRootHandles(true); @@ -647,13 +652,14 @@ public class JSContentWithDescriptionPane extends JSContentPane implements KeyLi private void initInterfaceNameList(JPanel interfacePanel) { interfaceNameList = new JList(new DefaultListModel()); + FineUIStyle.setStyle(interfaceNameList, FineUIStyle.PURE_LIST); UIScrollPane interfaceNamePanelScrollPane = new UIScrollPane(interfaceNameList); - interfaceNamePanelScrollPane.setPreferredSize(new Dimension(180, 200)); + interfaceNamePanelScrollPane.setPreferredSize(FineUIScale.createScaleDimension(180, 200)); interfacePanel.add( this.createNamePane(Toolkit.i18nText("Fine-Design_Interface") + ":", interfaceNamePanelScrollPane), BorderLayout.CENTER); - interfaceNamePanelScrollPane.setBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, UIConstants.ARC)); + interfaceNamePanelScrollPane.setBorder(FineBorderFactory.createWrappedRoundBorder()); initInterfaceNameModule(); initInterfaceNameListSelectionListener(); initInterfaceNameListMouseListener(); @@ -856,8 +862,8 @@ public class JSContentWithDescriptionPane extends JSContentPane implements KeyLi popupMenu = new JPopupMenu(); JScrollPane tipsScrollPane = new JScrollPane(tipsList); popupMenu.add(tipsScrollPane); - tipsScrollPane.setPreferredSize(new Dimension(220, 146)); - tipsScrollPane.setBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, UIConstants.ARC)); + tipsScrollPane.setPreferredSize(FineUIScale.createScaleDimension(220, 146)); + tipsScrollPane.setBorder(FineBorderFactory.createWrappedRoundBorder()); } private void popTips() { diff --git a/designer-base/src/main/java/com/fr/design/javascript/JavaScriptActionPane.java b/designer-base/src/main/java/com/fr/design/javascript/JavaScriptActionPane.java index f32fbe9d23..c1a198cca4 100644 --- a/designer-base/src/main/java/com/fr/design/javascript/JavaScriptActionPane.java +++ b/designer-base/src/main/java/com/fr/design/javascript/JavaScriptActionPane.java @@ -30,6 +30,8 @@ public abstract class JavaScriptActionPane extends UIComboBoxPane { private static final long serialVersionUID = 1L; + private static final int DEFAULT_GAP = 4; + private List contentDBManiPane; private JavaScriptResourceInfo resourceInfo; @@ -104,6 +106,7 @@ public abstract class JavaScriptActionPane extends UIComboBoxPane { */ public UIButton createCallButton() { UIButton callButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Callback_Function")); + callButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Callback_Function")); callButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { @@ -129,6 +132,10 @@ public abstract class JavaScriptActionPane extends UIComboBoxPane { return new String[]{WebContentUtils.FR_SUBMITINFO}; } + @Override + public int getVerticalGap() { + return JavaScriptActionPane.this.getVerticalGap(); + } }; callPane.populateBean(getCall()); @@ -226,4 +233,10 @@ public abstract class JavaScriptActionPane extends UIComboBoxPane { } }; } + + public int getVerticalGap() { + + return DEFAULT_GAP; + } + } \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/javascript/JavaScriptImplPane.java b/designer-base/src/main/java/com/fr/design/javascript/JavaScriptImplPane.java index 1efd313940..bb1921689b 100644 --- a/designer-base/src/main/java/com/fr/design/javascript/JavaScriptImplPane.java +++ b/designer-base/src/main/java/com/fr/design/javascript/JavaScriptImplPane.java @@ -13,13 +13,11 @@ import com.fr.design.hyperlink.AbstractHyperLinkPane; import com.fr.design.javascript.jsapi.JSImplPopulateAction; import com.fr.design.javascript.jsapi.JSImplUpdateAction; import com.fr.design.mainframe.DesignerContext; -import com.fr.design.scrollruler.ModLineBorder; import com.fr.design.utils.gui.GUICoreUtils; import com.fr.js.JavaScriptImpl; import com.fr.stable.ParameterProvider; import com.fr.stable.StringUtils; -import javax.swing.BorderFactory; import javax.swing.JPanel; import javax.swing.event.TableModelEvent; import javax.swing.event.TableModelListener; @@ -30,7 +28,6 @@ import java.util.HashMap; import java.util.HashSet; import java.util.List; -import static com.fine.swing.ui.layout.Layouts.column; import static com.fine.swing.ui.layout.Layouts.row; import static com.fine.swing.ui.layout.Layouts.cell; @@ -76,12 +73,11 @@ public class JavaScriptImplPane extends AbstractHyperLinkPane { cell(FineUIUtils.wrapComponentWithTitle(importedJsPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ReportServerP_Import_JavaScript"))).weight(0.5), cell(FineUIUtils.wrapComponentWithTitle(parameterPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter"))).weight(0.5) ).getComponent()); + topPane.setPreferredSize(new Dimension(super.getPreferredSize().width, 150)); this.setLayout(new BorderLayout()); - this.add(column(10, - cell(topPane).weight(0.5), - cell(FineUIUtils.wrapComponentWithTitle(jsPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_JavaScript"))).weight(0.5) - ).getComponent()); + this.add(topPane, BorderLayout.NORTH); + this.add(FineUIUtils.wrapComponentWithTitle(jsPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_JavaScript")), BorderLayout.CENTER); this.reLayoutForChart(); } diff --git a/designer-base/src/main/java/com/fr/design/jxbrowser/JxUIPane.java b/designer-base/src/main/java/com/fr/design/jxbrowser/JxUIPane.java index 09718d0c5e..a40a11e3bc 100644 --- a/designer-base/src/main/java/com/fr/design/jxbrowser/JxUIPane.java +++ b/designer-base/src/main/java/com/fr/design/jxbrowser/JxUIPane.java @@ -2,19 +2,17 @@ package com.fr.design.jxbrowser; import com.fr.concurrent.NamedThreadFactory; import com.fr.design.DesignerEnvManager; +import com.fr.design.dialog.BasicPane; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.itoolbar.UIToolbar; import com.fr.design.i18n.Toolkit; import com.fr.design.ui.ModernUIConstants; -import com.fr.design.ui.ModernUIPane; import com.fr.stable.StringUtils; import com.fr.stable.collections.combination.Pair; import com.fr.stable.os.OperatingSystem; import com.fr.web.struct.AssembleComponent; import com.teamdev.jxbrowser.browser.Browser; import com.teamdev.jxbrowser.browser.callback.InjectJsCallback; -import com.teamdev.jxbrowser.chromium.events.LoadListener; -import com.teamdev.jxbrowser.chromium.events.ScriptContextListener; import com.teamdev.jxbrowser.event.Observer; import com.teamdev.jxbrowser.frame.Frame; import com.teamdev.jxbrowser.js.JsObject; @@ -31,6 +29,7 @@ import java.util.Objects; import java.util.Optional; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import java.util.function.Consumer; import static com.fr.design.ui.ModernUIConstants.COMPONENT_TAG; import static com.fr.design.ui.ModernUIConstants.DEFAULT_EXPRESSION; @@ -50,7 +49,7 @@ import static com.fr.design.ui.ModernUIConstants.WINDOW; * @since 11.0 * Created on 2023-06-12 */ -public class JxUIPane extends ModernUIPane { +public class JxUIPane extends BasicPane { public static final ExecutorService DEFAULT_EXECUTOR = Executors.newSingleThreadExecutor(new NamedThreadFactory("jx-simple", true)); @@ -68,11 +67,9 @@ public class JxUIPane extends ModernUIPane { private JxEngine jxEngine = JxEngine.getInstance(); private JxUIPane() { - super(); } private JxUIPane(JxEngine jxEngine) { - super(); this.jxEngine = jxEngine; } @@ -155,7 +152,6 @@ public class JxUIPane extends ModernUIPane { * * @param url 新的地址 */ - @Override public void redirect(String url) { browser.navigation().loadUrl(encodeWindowsPath(url)); } @@ -166,7 +162,6 @@ public class JxUIPane extends ModernUIPane { * @param url 新的地址 * @param map 初始化参数 */ - @Override public void redirect(String url, Map map) { setMap(map); browser.navigation().loadUrl(encodeWindowsPath(url)); @@ -186,16 +181,27 @@ public class JxUIPane extends ModernUIPane { } - @Override + /** + * 更新数据到界面 + * + * @param t 数据类 + */ public void populate(final T t) { setInjectJsCallback(params -> { executeJsObject(params.frame(), WINDOW + DOT + namespace) .ifPresent(ns -> ns.putProperty(variable, t)); return InjectJsCallback.Response.proceed(); }); + if (browser.mainFrame().isPresent()) { + executeJavaScript(WINDOW + DOT + namespace, + (Consumer) jsObject -> { + if (Objects.nonNull(jsObject)) { + jsObject.putProperty(variable, t); + } + }); + } } - @Override @Nullable public T update() { if (browser.mainFrame().isPresent()) { @@ -238,6 +244,18 @@ public class JxUIPane extends ModernUIPane { } } + /** + * 执行一段js + * + * @param javaScript 待执行的js脚本 + * @see JxUIPane#executeJS(String) + */ + public void executeJavaScript(String javaScript, Consumer consumer) { + if (browser != null) { + browser.mainFrame().ifPresent(frame -> frame.executeJavaScript(javaScript, consumer)); + } + } + /** * 获取js对象 * 注意:类内部使用,用于简化编码,提供 Optional 包装 @@ -283,7 +301,7 @@ public class JxUIPane extends ModernUIPane { * * @param 参数 */ - public static class Builder extends ModernUIPane.Builder { + public static class Builder { private JxEngine jxEngine; private String namespace; private String variable; @@ -302,8 +320,6 @@ public class JxUIPane extends ModernUIPane { private String html; public Builder() { - // 为了兼容继承关系,但又不允许创建,用这个方式先处理一下 - super((ModernUIPane) null); this.jxEngine = JxEngine.getInstance(); this.namespace = DEFAULT_NAMESPACE; this.variable = DEFAULT_VARIABLE; @@ -342,24 +358,14 @@ public class JxUIPane extends ModernUIPane { return this; } - @Override - public Builder prepareForV6(ScriptContextListener contextListener) { - return this; - } - - @Override - public Builder prepareForV6(LoadListener loadListener) { - return this; - } - - @Override - public JxUIPane.Builder prepareForV7(InjectJsCallback callback) { - prepare(callback); - return this; - } - - @Override - public JxUIPane.Builder prepareForV7(Class event, Observer listener) { + /** + * 注册一个监听器 + * + * @param event 事件 + * @param listener 监听器 + * @return builder + */ + public JxUIPane.Builder prepare(Class event, Observer listener) { listenerPair = new Pair<>(event, listener); return this; } diff --git a/designer-base/src/main/java/com/fr/design/layout/TableLayoutHelper.java b/designer-base/src/main/java/com/fr/design/layout/TableLayoutHelper.java index 5e31ba2f7f..e172b9f117 100644 --- a/designer-base/src/main/java/com/fr/design/layout/TableLayoutHelper.java +++ b/designer-base/src/main/java/com/fr/design/layout/TableLayoutHelper.java @@ -370,7 +370,7 @@ public class TableLayoutHelper { JPanel secondMenu = createTableLayoutPane(components, rowSize, columnSize); double p = TableLayout.PREFERRED; double f = TableLayout.FILL; - double[] column = {LayoutConstants.CHART_ATTR_TOMARGIN, f}; + double[] column = {LayoutConstants.HORIZONTAL_GAP, f}; double[] row = {p, p}; StringBuilder resultText = new StringBuilder(); for (String text : title) { diff --git a/designer-base/src/main/java/com/fr/design/lock/LockInfoDialog.java b/designer-base/src/main/java/com/fr/design/lock/LockInfoDialog.java index c183dac2e9..5bac69c3f8 100644 --- a/designer-base/src/main/java/com/fr/design/lock/LockInfoDialog.java +++ b/designer-base/src/main/java/com/fr/design/lock/LockInfoDialog.java @@ -1,7 +1,11 @@ package com.fr.design.lock; +import com.fine.theme.icon.LazyIcon; +import com.fine.theme.utils.FineUIScale; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.file.TemplateTreePane; import com.fr.design.gui.ibutton.UIButton; +import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.DesignSizeI18nManager; import com.fr.design.i18n.Toolkit; @@ -39,12 +43,12 @@ public class LockInfoDialog extends JDialog { super(DesignerContext.getDesignerFrame()); this.saveEnum = saveEnum; JPanel panel = new JPanel(new BorderLayout()); - panel.setBorder(BorderFactory.createEmptyBorder(0, 10, 0, 0)); + panel.setBorder(new ScaledEmptyBorder(0, 10, 0, 0)); panel.add(createContentPane(userInfo), BorderLayout.CENTER); panel.add(createControlPane(), BorderLayout.SOUTH); this.getContentPane().add(panel); this.setTitle(Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Title_Hint")); - this.setSize(DesignSizeI18nManager.getInstance().i18nDimension("com.fr.design.lock.LockInfoDialog")); + this.setSize(FineUIScale.scale(DesignSizeI18nManager.getInstance().i18nDimension("com.fr.design.lock.LockInfoDialog"))); this.setResizable(false); this.setModal(true); GUICoreUtils.centerWindow(this); @@ -53,40 +57,37 @@ public class LockInfoDialog extends JDialog { private JPanel createContentPane(UserInfo userInfo) { JPanel contentPanel = new JPanel(new BorderLayout()); - contentPanel.setBorder(BorderFactory.createEmptyBorder(5, 0, 0, 0)); - JPanel messagePane = new JPanel(new BorderLayout(13, 0)); - UILabel iconLabel = new UILabel(IOUtils.readIcon("/com/fr/design/images/warnings/warning32.png")); - iconLabel.setBorder(BorderFactory.createEmptyBorder(5, 0, 0, 0)); + contentPanel.setBorder(new ScaledEmptyBorder(10, 0, 10, 10)); + JPanel messagePane = FRGUIPaneFactory.createScaledBorderLayout_S_Pane(10, 0); + UILabel iconLabel = new UILabel(new LazyIcon("warning", 20)); messagePane.add(iconLabel, BorderLayout.WEST); UILabel tipLabel = new UILabel(Toolkit.i18nText("Fine-Design_Template_Lock_And_SaveAs_Tip")); - tipLabel.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0)); messagePane.add(tipLabel, BorderLayout.CENTER); contentPanel.add(messagePane, BorderLayout.NORTH); JPanel detailInfoPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); - detailInfoPane.setBorder(BorderFactory.createEmptyBorder(0, 45, 0,0)); + detailInfoPane.setBorder(new ScaledEmptyBorder(0, 30, 0,0)); if (userInfo != null && StringUtils.isNotEmpty(userInfo.getUserName())) { UILabel label = createLabel(Toolkit.i18nText("Fine-Design_Template_Lock_Holder", userInfo.getUserName())); - label .setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0)); detailInfoPane.add(label); } if (userInfo != null && StringUtils.isNotEmpty(userInfo.getIp())) { detailInfoPane.add(createLabel(Toolkit.i18nText("Fine-Design_Template_Lock_Holder_Ip", userInfo.getIp()) )); } detailInfoPane.add(createLabel(Toolkit.i18nText("Fine-Design_Template_Lock_Get_Time", FORMATTER.format(LocalDateTime.now())))); - contentPanel.add(detailInfoPane, BorderLayout.CENTER); + contentPanel.add(new UIScrollPane(detailInfoPane), BorderLayout.CENTER); return contentPanel; } private UILabel createLabel(String text) { UILabel label = new UILabel(text); label.setForeground(Color.GRAY); - label.setBorder(BorderFactory.createEmptyBorder(8, 0, 0, 0)); + label.setBorder(new ScaledEmptyBorder(10, 0, 0, 0)); return label; } private JPanel createControlPane() { - JPanel controlPane = new JPanel(new FlowLayout(FlowLayout.RIGHT, 10, 5)); - controlPane.setBorder(BorderFactory.createEmptyBorder(0, 0, 0,5)); + JPanel controlPane = new JPanel(new FlowLayout(FlowLayout.RIGHT, FineUIScale.scale(10), 0)); + controlPane.setBorder(new ScaledEmptyBorder(0, 0, 10,10)); UIButton saveAsButton = new UIButton(Toolkit.i18nText("Fine_Design_Template_Lock_Save_As")); UIButton cancelButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Button_Cancel")); saveAsButton.addActionListener(new ActionListener() { diff --git a/designer-base/src/main/java/com/fr/design/lock/TemplateLockInfoReSave.java b/designer-base/src/main/java/com/fr/design/lock/TemplateLockInfoReSave.java index f1f927abb1..7eda9b222e 100644 --- a/designer-base/src/main/java/com/fr/design/lock/TemplateLockInfoReSave.java +++ b/designer-base/src/main/java/com/fr/design/lock/TemplateLockInfoReSave.java @@ -1,12 +1,12 @@ package com.fr.design.lock; +import com.fanruan.repository.TemplateRepository; import com.fr.design.file.HistoryTemplateListCache; import com.fr.design.mainframe.JTemplate; import com.fr.event.Event; import com.fr.event.EventDispatcher; import com.fr.event.Listener; import com.fr.log.FineLoggerFactory; -import com.fr.report.lock.LockInfoOperator; import com.fr.stable.collections.CollectionUtils; import com.fr.workspace.WorkContext; import com.fr.workspace.Workspace; @@ -31,7 +31,7 @@ public class TemplateLockInfoReSave { return; } String[] paths = templates.stream().map(JTemplate::getPath).toArray(String[]::new); - String[] lockedPath = WorkContext.getCurrent().get(LockInfoOperator.class).lockTemplates(paths); + String[] lockedPath = TemplateRepository.getInstance().lockTemplates(paths); FineLoggerFactory.getLogger().warn("template lock failed:{}", String.join(";", lockedPath)); } }; diff --git a/designer-base/src/main/java/com/fr/design/login/DesignerLoginHelper.java b/designer-base/src/main/java/com/fr/design/login/DesignerLoginHelper.java index 8976a07345..1ead505a7a 100644 --- a/designer-base/src/main/java/com/fr/design/login/DesignerLoginHelper.java +++ b/designer-base/src/main/java/com/fr/design/login/DesignerLoginHelper.java @@ -2,10 +2,8 @@ package com.fr.design.login; import com.fr.design.DesignerEnvManager; import com.fr.design.dialog.UIDialog; -import com.fr.design.extra.WebViewDlgHelper; import com.fr.design.i18n.Toolkit; import com.fr.design.mainframe.DesignerContext; -import com.fr.design.os.impl.SupportOSImpl; import com.fr.design.plugin.DesignerPluginContext; import com.fr.design.update.ui.dialog.UpdateMainDialog; import com.fr.general.GeneralContext; @@ -47,10 +45,6 @@ public class DesignerLoginHelper { } public static void showLoginDialog(DesignerLoginSource source, Map params, Window window) { - if (!SupportOSImpl.DESIGNER_LOGIN.support() || DesignerEnvManager.getEnvManager().isUseOldVersionLogin()) { - WebViewDlgHelper.createLoginDialog(window); - return; - } boolean hasJxBrowser = true; try { Class.forName(JXBROWSER); diff --git a/designer-base/src/main/java/com/fr/design/login/executor/DesignerLoginBrowserExecutor.java b/designer-base/src/main/java/com/fr/design/login/executor/DesignerLoginBrowserExecutor.java deleted file mode 100644 index fa7fa6487e..0000000000 --- a/designer-base/src/main/java/com/fr/design/login/executor/DesignerLoginBrowserExecutor.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.fr.design.login.executor; - -import com.fr.design.bridge.exec.JSExecutor; -import com.teamdev.jxbrowser.chromium.JSFunction; -import com.teamdev.jxbrowser.chromium.JSObject; - -/** - * @author richie - * @version 10.0 - * Created by richie on 2019-04-18 - */ -public class DesignerLoginBrowserExecutor implements JSExecutor { - - public static DesignerLoginBrowserExecutor create(JSObject window, JSFunction callback) { - return new DesignerLoginBrowserExecutor(window, callback); - } - - private JSObject window; - private JSFunction callback; - - private DesignerLoginBrowserExecutor(JSObject window, JSFunction callback) { - this.window = window; - this.callback = callback; - } - - @Override - public void executor(String newValue) { - callback.invoke(window, newValue); - } -} diff --git a/designer-base/src/main/java/com/fr/design/login/guide/DesignerGuideHelper.java b/designer-base/src/main/java/com/fr/design/login/guide/DesignerGuideHelper.java index 05956da7c3..696ff1176f 100644 --- a/designer-base/src/main/java/com/fr/design/login/guide/DesignerGuideHelper.java +++ b/designer-base/src/main/java/com/fr/design/login/guide/DesignerGuideHelper.java @@ -43,8 +43,7 @@ public class DesignerGuideHelper { if (!DesignerLoginUtils.isOnline() || !SupportOSImpl.DESIGNER_LOGIN.support() || !FRContext.isChineseEnv() - || DesignerPushUpdateManager.getInstance().isShouldPopUp() - || DesignerEnvManager.getEnvManager().isUseOldVersionLogin()) { + || DesignerPushUpdateManager.getInstance().isShouldPopUp()) { return; } if (isActivatedForOneWeek()) { diff --git a/designer-base/src/main/java/com/fr/design/login/message/NotificationActionType.java b/designer-base/src/main/java/com/fr/design/login/message/NotificationActionType.java index e34caa7456..ff72210632 100644 --- a/designer-base/src/main/java/com/fr/design/login/message/NotificationActionType.java +++ b/designer-base/src/main/java/com/fr/design/login/message/NotificationActionType.java @@ -1,20 +1,15 @@ package com.fr.design.login.message; -import com.fr.config.ServerPreferenceConfig; import com.fr.design.dialog.NotificationDialogAction; -import com.fr.design.extra.WebViewDlgHelper; import com.fr.design.mainframe.BaseJForm; import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.EastRegionContainerPane; import com.fr.design.mainframe.JTemplate; -import com.fr.design.os.impl.SupportOSImpl; import com.fr.design.upm.UpmFinder; import com.fr.design.utils.DesignUtils; import com.fr.log.FineLoggerFactory; import com.fr.stable.StringUtils; import com.fr.stable.bridge.StableFactory; -import com.fr.stable.os.Arch; -import com.fr.stable.os.OperatingSystem; /** * @author Lanlan @@ -31,17 +26,10 @@ public enum NotificationActionType { @Override public void doClick() { try { - if (Arch.getArch() == Arch.ARM || OperatingSystem.isLinux() || SupportOSImpl.MACOS_WEB_PLUGIN_MANAGEMENT.support()) { - DesignUtils.visitEnvServerByParameters("#management/plugin", null, null); - return; - } - if (ServerPreferenceConfig.getInstance().isUseOptimizedUPM() || SupportOSImpl.MACOS_NEW_PLUGIN_MANAGEMENT.support()) { - UpmFinder.showUPMDialog(); - } else { - WebViewDlgHelper.createPluginDialog(); - } - } catch (Exception e) { + UpmFinder.showUPMDialog(); + } catch (Throwable e) { FineLoggerFactory.getLogger().error(e.getMessage(), e); + DesignUtils.visitEnvServerByParameters("#management/plugin", null, null); } } }), diff --git a/designer-base/src/main/java/com/fr/design/mainframe/DecodeDialog.java b/designer-base/src/main/java/com/fr/design/mainframe/DecodeDialog.java index f76ed4711b..017b971876 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/DecodeDialog.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/DecodeDialog.java @@ -1,11 +1,15 @@ package com.fr.design.mainframe; -import java.awt.Color; +import com.fr.design.constants.LayoutConstants; +import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JDialog; +import javax.swing.JPanel; +import com.fine.theme.utils.FineUIStyle; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.BaseUtils; import com.fr.base.io.XMLEncryptUtils; import com.fr.design.DesignerEnvManager; @@ -19,6 +23,10 @@ import com.fr.stable.CodeUtils; import com.fr.stable.StringUtils; import com.fr.design.utils.gui.GUICoreUtils; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.row; +import static com.fine.swing.ui.layout.Layouts.column; + public class DecodeDialog { private UITextField jt; @@ -30,24 +38,26 @@ public class DecodeDialog { public DecodeDialog(final FILE file) { this.file = file; - + jd = new JDialog(); - jd.setLayout(null); - UILabel newNameLable = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_ECP_Input_Pwd")); - newNameLable.setBounds(20, 10, 130, 30); + jd.setLayout(new BorderLayout()); + JPanel contentPanel = new JPanel(); + contentPanel.setLayout(new BorderLayout()); + // 密码输入 + UILabel newNameLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_ECP_Input_Pwd")); jt = new UITextField(StringUtils.EMPTY); jt.selectAll(); - jt.setBounds(130, 15, 150, 20); - jd.add(newNameLable); - jd.add(jt); - + // 提示文本 hintsLabel = new UILabel(); - hintsLabel.setBounds(20, 50, 250, 30); - hintsLabel.setForeground(Color.RED); + FineUIStyle.setStyle(hintsLabel, FineUIStyle.LABEL_WARNING_TIP); hintsLabel.setVisible(false); + contentPanel.add(column(LayoutConstants.VERTICAL_GAP, + row(20, cell(newNameLabel), cell(jt).weight(1)), + cell(hintsLabel) + ).getComponent()); + contentPanel.setBorder(new ScaledEmptyBorder(30, 20, 10, 20)); confirmButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm")); - confirmButton.setBounds(180, 90, 60, 25); confirmButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String key = jt.getText(); @@ -64,16 +74,17 @@ public class DecodeDialog { }); UIButton cancelButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cancel")); - cancelButton.setBounds(250, 90, 60, 25); cancelButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { jd.dispose(); } }); - jd.add(cancelButton); - jd.add(confirmButton); - jd.add(hintsLabel); + JPanel buttonPane = new JPanel(new BorderLayout()); + buttonPane.setBorder(new ScaledEmptyBorder(10, 10, 10, 10)); + buttonPane.add(row(8, cell(confirmButton), cell(cancelButton)).getComponent(), BorderLayout.EAST); + jd.add(contentPanel,BorderLayout.CENTER); + jd.add(buttonPane, BorderLayout.SOUTH); jd.setSize(340, 180); jd.setModal(true); jd.setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_ECP_Decode")); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java index fc6be544d2..1417bd548a 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java @@ -107,6 +107,8 @@ import java.util.Set; import java.util.UUID; import java.util.concurrent.CopyOnWriteArrayList; +import static com.fine.theme.utils.FineUIScale.scale; + public class DesignerFrame extends JFrame implements JTemplateActionListener, TargetModifiedListener { private static final String DESIGNER_FRAME_NAME = "designer_frame"; @@ -115,7 +117,7 @@ public class DesignerFrame extends JFrame implements JTemplateActionListener, Ta private static final long serialVersionUID = -8732559571067484460L; - private static final int MENU_HEIGHT = 26; + private static final int MENU_HEIGHT = scale(26); private static final Integer SECOND_LAYER = 100; @@ -578,8 +580,8 @@ public class DesignerFrame extends JFrame implements JTemplateActionListener, Ta closeButton.setBorder(null); int x = contentWidth - EastRegionContainerPane.getInstance().getContainerWidth() - closeMode.getIconWidth() / 2; int y = MENU_HEIGHT - closeMode.getIconHeight() / 2; - closeButton.setBounds(x, y, UIConstants.CLOSE_AUTHORITY_HEIGHT_AND_WIDTH, - UIConstants.CLOSE_AUTHORITY_HEIGHT_AND_WIDTH); + closeButton.setBounds(x, y, scale(UIConstants.CLOSE_AUTHORITY_HEIGHT_AND_WIDTH), + scale(UIConstants.CLOSE_AUTHORITY_HEIGHT_AND_WIDTH)); } /** @@ -755,6 +757,7 @@ public class DesignerFrame extends JFrame implements JTemplateActionListener, Ta refresh(); DesignerFrameFileDealerPane.getInstance().refreshDockingView(); TemplateTreePane.getInstance().refreshDockingView(); + TableDataTreePane.getInstanceWithoutRefreshEverytime(DesignModelAdapter.getCurrentModelAdapter()).resetAddMenuDef(); } /** diff --git a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java index 31259ffbda..d0ad936913 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java @@ -1,6 +1,10 @@ package com.fr.design.mainframe; +import com.fanruan.repository.TemplateRepository; import com.fine.theme.icon.LazyIcon; +import com.fine.theme.utils.FineLayoutBuilder; +import com.fine.theme.utils.FineUIStyle; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.BaseUtils; import com.fr.base.extension.FileExtension; import com.fr.base.vcs.DesignerMode; @@ -49,14 +53,12 @@ import com.fr.event.Event; import com.fr.file.filetree.FileNode; import com.fr.general.ComparatorUtils; import com.fr.general.GeneralContext; -import com.fr.general.IOUtils; import com.fr.log.FineLoggerFactory; import com.fr.plugin.context.PluginContext; import com.fr.plugin.injectable.PluginModule; import com.fr.plugin.manage.PluginFilter; import com.fr.plugin.observer.PluginEvent; import com.fr.plugin.observer.PluginEventListener; -import com.fr.report.lock.LockInfoOperator; import com.fr.stable.CoreConstants; import com.fr.stable.StableUtils; import com.fr.stable.StringUtils; @@ -64,22 +66,10 @@ import com.fr.stable.project.ProjectConstants; import com.fr.third.org.apache.commons.io.FilenameUtils; import com.fr.workspace.WorkContext; -import com.fr.report.lock.LockInfoOperator; -import com.fr.workspace.server.repository.template.TemplateRepository; - -import javax.swing.BorderFactory; -import javax.swing.JDialog; -import javax.swing.JOptionPane; -import javax.swing.JPanel; -import javax.swing.SwingConstants; +import javax.swing.*; import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; -import java.awt.BorderLayout; -import java.awt.CardLayout; -import java.awt.Color; -import java.awt.Component; -import java.awt.Dimension; -import java.awt.FlowLayout; +import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; @@ -224,13 +214,15 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt JPanel panel = new JPanel(new BorderLayout()); if (WorkContext.getCurrent().isRoot()) { rightToolBar = new UIToolbar(FlowLayout.RIGHT); - rightToolBar.setBorder(BorderFactory.createMatteBorder(0, 0, 1, 0, UIConstants.TOOLBAR_BORDER_COLOR)); + JPanel contentPane = FineLayoutBuilder.asBorderLayoutWrapped(rightToolBar); + contentPane.setBorder(BorderFactory.createCompoundBorder(new ScaledEmptyBorder(4, 8, 4, 8), + BorderFactory.createMatteBorder(0, 0, 1, 0, UIConstants.TOOLBAR_BORDER_COLOR))); rightToolBar.setBorderPainted(true); UILabel tipLabel = new UILabel(Toolkit.i18nText("Fine_Design_Template_Lock_Status")); - tipLabel.setForeground(Color.GRAY); + FineUIStyle.setStyle(tipLabel, FineUIStyle.LABEL_TIP); rightToolBar.add(tipLabel); - UIButton button = new UIButton(IOUtils.readIcon("/com/fr/design/images/toolbarbtn/lock.png")); - button.setRolloverIcon(IOUtils.readIcon("/com/fr/design/images/toolbarbtn/unlock.png")); + UIButton button = new UIButton(new LazyIcon("locked")); + button.setRolloverIcon(new LazyIcon("unlocked")); button.setBorderPainted(false); button.setContentAreaFilled(false); button.set4ToolbarButton(); @@ -243,11 +235,11 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt Toolkit.i18nText("Fine-Design_Basic_Alert"), JOptionPane.YES_NO_OPTION, JOptionPane.WARNING_MESSAGE, - IOUtils.readIcon("/com/fr/design/images/warnings/warning32.png"), + new LazyIcon("warning", 20), new Object[] {Toolkit.i18nText("Fine_Design_Template_UnLock_I_Known"), Toolkit.i18nText("Fine-Design_Basic_Button_Cancel")}, null); if (option == JOptionPane.YES_OPTION) { String path = StableUtils.pathJoin(ProjectConstants.REPORTLETS_NAME, TemplateTreePane.getInstance().getTemplateFileTree().getSelectedTemplatePath()); - boolean success = WorkContext.getCurrent().get(LockInfoOperator.class).unLockTpl(path); + boolean success = TemplateRepository.getInstance().unLockTpl(path); if (success) { FileNode fileNode = TemplateTreePane.getInstance().getFileNode(); refreshRightToolBarBy(fileNode); @@ -264,7 +256,7 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt }); rightToolBar.add(button); refreshRightToolBarBy(TemplateTreePane.getInstance().getFileNode()); - panel.add(rightToolBar, BorderLayout.EAST); + panel.add(contentPane, BorderLayout.EAST); } return panel; } @@ -708,7 +700,6 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt // 确认按钮 confirmButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Confirm")); - confirmButton.setPreferredSize(new Dimension(60, 25)); confirmButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { @@ -719,8 +710,6 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt // 取消按钮 UIButton cancelButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Cancel")); - cancelButton.setPreferredSize(new Dimension(60, 25)); - cancelButton.addActionListener(new ActionListener() { @Override diff --git a/designer-base/src/main/java/com/fr/design/mainframe/DesignerUIModeConfig.java b/designer-base/src/main/java/com/fr/design/mainframe/DesignerUIModeConfig.java index 99e7d0335b..b617d0cdb7 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/DesignerUIModeConfig.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/DesignerUIModeConfig.java @@ -20,7 +20,7 @@ public class DesignerUIModeConfig { } private void init() { - uiDevMode = Boolean.parseBoolean(System.getProperty("uiDevMode", "false")); + uiDevMode = Boolean.parseBoolean(System.getProperty("devMode", "false")); } public static DesignerUIModeConfig getInstance() { diff --git a/designer-base/src/main/java/com/fr/design/mainframe/DesktopCardPane.java b/designer-base/src/main/java/com/fr/design/mainframe/DesktopCardPane.java index 02fa561416..e62c55b592 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/DesktopCardPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/DesktopCardPane.java @@ -148,6 +148,7 @@ public class DesktopCardPane extends BasicPane implements TargetModifiedListener public void showForbiddenStatus() { component.setVisible(false); + forbiddenPane.setVisible(true); layeredPane.moveToFront(forbiddenPane); forbidToolBar(); EastRegionContainerPane.getInstance().updateAllPropertyPane(); @@ -156,6 +157,7 @@ public class DesktopCardPane extends BasicPane implements TargetModifiedListener public void hideCover() { recoverToolBar(); transparentPane.stop(); + forbiddenPane.setVisible(false); layeredPane.moveToFront(component); EastRegionContainerPane.getInstance().updateAllPropertyPane(); JComponent downPane = WestRegionContainerPane.getInstance().getDownPane(); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java b/designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java index 09ea0d2052..f462c018d4 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java @@ -90,7 +90,7 @@ public class EastRegionContainerPane extends UIEastResizableContainer { private static final int ARROW_RANGE_START = CONTENT_WIDTH - FineUIScale.scale(30); // 弹出对话框高度 private static final int POPUP_MIN_HEIGHT = FineUIScale.scale(145); - private static final int POPUP_DEFAULT_HEIGHT = FineUIScale.scale(356); + private static final int POPUP_DEFAULT_HEIGHT = FineUIScale.scale(600); public static final String KEY_CELL_ELEMENT = "cellElement"; public static final String KEY_CELL_ATTR = "cellAttr"; public static final String KEY_FLOAT_ELEMENT = "floatElement"; @@ -142,10 +142,13 @@ public class EastRegionContainerPane extends UIEastResizableContainer { private static int containerWidth() { - if (FRContext.isChineseEnv()) { - return UIEastResizableContainer.MIN_CONTAINER_WIDTH; - } - return UIEastResizableContainer.MAX_CONTAINER_WIDTH; + return UIEastResizableContainer.STD_CONTAINER_WIDTH; + } + + @Override + protected boolean isEnableDrag(MouseEvent e) { + return super.isEnableDrag(e) + && e.getY() > topToolPaneHeight + leftPane.getPreferredSize().height; } /** @@ -836,7 +839,7 @@ public class EastRegionContainerPane extends UIEastResizableContainer { if (StringUtils.equals(KEY_WIDGET_SETTINGS, name)) { title = currentMode.getTitle(); button.setToolTipText(title); - UILabel uiLabel = (UILabel) ((BorderLayout) popupToolPane.contentPane.getLayout()).getLayoutComponent(BorderLayout.WEST); + UILabel uiLabel = (UILabel) ((BorderLayout) popupToolPane.contentPane.getLayout()).getLayoutComponent(BorderLayout.CENTER); uiLabel.setText(title); } } catch (Exception e) { diff --git a/designer-base/src/main/java/com/fr/design/mainframe/ForbiddenPane.java b/designer-base/src/main/java/com/fr/design/mainframe/ForbiddenPane.java index 482986241b..e6fe5eed68 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/ForbiddenPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/ForbiddenPane.java @@ -1,5 +1,6 @@ package com.fr.design.mainframe; +import com.fanruan.repository.TemplateRepository; import com.fr.design.file.HistoryTemplateListCache; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.DesignSizeI18nManager; @@ -8,25 +9,10 @@ import com.fr.design.mainframe.guide.base.GuideView; import com.fr.design.utils.gui.GUICoreUtils; import com.fr.general.IOUtils; import com.fr.log.FineLoggerFactory; -import com.fr.report.lock.LockInfoOperator; -import com.fr.workspace.WorkContext; - -import javax.swing.ImageIcon; -import javax.swing.JButton; -import javax.swing.JDialog; -import javax.swing.JFrame; -import javax.swing.JPanel; -import javax.swing.SwingWorker; -import java.awt.BorderLayout; -import java.awt.Color; -import java.awt.Component; -import java.awt.Container; -import java.awt.Dimension; -import java.awt.Font; -import java.awt.Graphics; -import java.awt.Graphics2D; -import java.awt.LayoutManager; -import java.awt.RenderingHints; +import com.fr.workspace.base.UserInfo; + +import javax.swing.*; +import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -125,7 +111,8 @@ public class ForbiddenPane extends JPanel { @Override protected Boolean doInBackground() throws Exception { - return WorkContext.getCurrent().get(LockInfoOperator.class).isTplLocked(template.getEditingFILE().getPath()); + UserInfo info = TemplateRepository.getInstance().showLockInfo(template.getEditingFILE().getPath()); + return info.getTplLocked(); } @Override diff --git a/designer-base/src/main/java/com/fr/design/mainframe/JFormSliderPane.java b/designer-base/src/main/java/com/fr/design/mainframe/JFormSliderPane.java index cef7222edf..ce399c954d 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/JFormSliderPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/JFormSliderPane.java @@ -164,7 +164,6 @@ public class JFormSliderPane extends JPanel { } - private void showValFieldChange(int value) { isButtonOrIsTxt = true; showValue = getPreferredValue(value); @@ -172,7 +171,7 @@ public class JFormSliderPane extends JPanel { refreshSlider(); } - private int getPreferredValue(int value){ + private int getPreferredValue(int value) { if (value > FOUR_HUNDRED) { value = FOUR_HUNDRED; } @@ -182,7 +181,7 @@ public class JFormSliderPane extends JPanel { return value; } - private void refreshShowValueFieldText(){ + private void refreshShowValueFieldText() { showValField.setValue(showValue); setAdjustButtonStatus(); } @@ -211,7 +210,7 @@ public class JFormSliderPane extends JPanel { slider.setValue(calSliderValue(showValue)); } - private void setAdjustButtonStatus(){ + private void setAdjustButtonStatus() { this.downButton.setEnabled(this.showValue > TEN); this.upButton.setEnabled(this.showValue < FOUR_HUNDRED); } @@ -230,8 +229,10 @@ public class JFormSliderPane extends JPanel { @Override public void paintComponent(Graphics g) { - int arc = FineUIUtils.getAndScaleInt("Center.arc", 10) / 2; - Path2D roundedPath = FineUIUtils.createPartRoundRectangle(0, 0, this.getWidth(), this.getHeight(), 0, 0, arc, 0); + int arc = FineUIUtils.getAndScaleInt("Center.arc", 8); + Path2D roundedPath = FineUIUtils.createPartRoundRectangle(0, 0, + this.getWidth(), this.getHeight(), + 0, 0, arc, 0); FlatUIUtils.setRenderingHints(g); Graphics2D g2 = (Graphics2D) g; g2.setColor(getBackground()); @@ -292,8 +293,12 @@ public class JFormSliderPane extends JPanel { showValFieldChange(value); } - - public void addValueChangeListener(ChangeListener changeListener){ + /** + * 添加值变化监听器 + * + * @param changeListener 变化监听器 + */ + public void addValueChangeListener(ChangeListener changeListener) { this.slider.addChangeListener(changeListener); } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/JTemplate.java b/designer-base/src/main/java/com/fr/design/mainframe/JTemplate.java index a315b0e83c..159bcbe282 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/JTemplate.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/JTemplate.java @@ -1,6 +1,8 @@ package com.fr.design.mainframe; +import com.fanruan.datasource.web.bean.ConnectionAuthorityConfigBean; import com.fanruan.product.ProductConstants; +import com.fanruan.repository.TemplateRepository; import com.fine.theme.icon.LazyIcon; import com.fr.base.Parameter; import com.fr.base.TRL; @@ -71,7 +73,6 @@ import com.fr.design.write.submit.DBManipulationPane; import com.fr.event.EventDispatcher; import com.fr.file.FILE; import com.fr.file.FILEChooserPane; -import com.fr.file.FileFILE; import com.fr.file.MemFILE; import com.fr.file.StashedFILE; import com.fr.form.ui.NoneWidget; @@ -92,29 +93,19 @@ import com.fr.plugin.observer.PluginEvent; import com.fr.plugin.observer.PluginEventListener; import com.fr.plugin.observer.PluginEventType; import com.fr.plugin.observer.PluginListenerRegistration; -import com.fr.report.InconsistentLockException; -import com.fr.report.LockedException; -import com.fr.report.UnLockedException; import com.fr.report.cell.Elem; import com.fr.report.cell.cellattr.CellImage; -import com.fr.report.lock.LockInfoOperator; import com.fr.stable.ArrayUtils; import com.fr.stable.Filter; import com.fr.stable.StringUtils; import com.fr.stable.core.UUID; import com.fr.widgettheme.designer.WidgetThemeDisplayAction; import com.fr.workspace.WorkContext; -import com.fr.workspace.base.UserInfo; -import com.fr.workspace.server.lock.TplOperator; -import com.fr.workspace.server.repository.template.TemplateRepository; - -import javax.swing.BorderFactory; -import javax.swing.Icon; -import javax.swing.JComponent; -import javax.swing.JOptionPane; -import javax.swing.SwingConstants; +import com.fr.workspace.server.repository.connection.ConnectionRepository; + +import javax.swing.*; import javax.swing.undo.UndoManager; -import java.awt.BorderLayout; +import java.awt.*; import java.io.ByteArrayOutputStream; import java.nio.file.Paths; import java.util.Arrays; @@ -266,9 +257,14 @@ public abstract class JTemplate> TemplateTheme usingTheme = getTemplateTheme(); boolean isUsingThemeChanged = StringUtils.equals(event.themName, usingTheme.getName()); - if (isUsingThemeChanged && (event.action == TemplateThemeConfig.ThemeConfigAction.REMOVE || - event.action == TemplateThemeConfig.ThemeConfigAction.UPDATE)) { - checkAndResetTheme(); + if (event.action == TemplateThemeConfig.ThemeConfigAction.REMOVE || + event.action == TemplateThemeConfig.ThemeConfigAction.UPDATE) { + if (isUsingThemeChanged) { + checkAndResetTheme(); + } else { + // 修改主题配置,但是没有修改主题名称 , 需要重新保存文件 + fireSuperTargetModified(); + } } } }; @@ -935,12 +931,12 @@ public abstract class JTemplate> // 目标本地文件 !editingFILE.isEnvFile() || // 目标远程文件 - WorkContext.getCurrent().get(TplOperator.class).saveAs(editingFILE.getPath()); + TemplateRepository.getInstance().saveAs(editingFILE.getPath()); if (lockedTarget) { boolean saved = saveNewFile(editingFILE, oldName); // 目标文件保存成功并且源文件不一致的情况下,把源文件锁释放掉 if (saved && !ComparatorUtils.equals(editingFILE.getPath(), sourceFile.getPath())) { - WorkContext.getCurrent().get(TplOperator.class).closeAndFreeFile(sourceFile.getPath()); + TemplateRepository.getInstance().close(sourceFile.getPath()); } return saved; } else { @@ -1749,10 +1745,13 @@ public abstract class JTemplate> } private boolean checkJTemplateAuthority() { - // todo:微服务待调整 - //if (!FSConfig.getInstance().getAuthorizeAttr().isDataConnectionAuthority()) { - // return true; - //} + if (WorkContext.getCurrent().isRoot()) { + return true; + } + ConnectionAuthorityConfigBean bean = ConnectionRepository.getInstance().getConnectionAuthorityConfig(); + if (!(bean !=null && bean.isConnectionEditAuth())) { + return true; + } JTemplateAuthorityChecker jTemplateAuthorityChecker = new JTemplateAuthorityChecker(this); if (jTemplateAuthorityChecker.isAuthority()) { return true; diff --git a/designer-base/src/main/java/com/fr/design/mainframe/authority/JTemplateAuthorityChecker.java b/designer-base/src/main/java/com/fr/design/mainframe/authority/JTemplateAuthorityChecker.java index a0ed56876d..e661add2fa 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/authority/JTemplateAuthorityChecker.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/authority/JTemplateAuthorityChecker.java @@ -1,38 +1,31 @@ package com.fr.design.mainframe.authority; -import com.fanruan.config.impl.data.ConnectionConfigProviderFactory; -import com.fanruan.config.impl.data.TableDataConfigProviderFactory; -import com.fr.base.CloneCollector; import com.fr.design.dialog.FineJOptionPane; - import com.fr.design.i18n.Toolkit; import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.JTemplate; - import com.fr.log.FineLoggerFactory; import com.fr.workspace.WorkContext; import com.fr.workspace.server.authority.user.UserAuthority; import com.fr.workspace.server.repository.authority.RemoteAuthorityRepository; - import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; +import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; - import static javax.swing.JOptionPane.WARNING_MESSAGE; public class JTemplateAuthorityChecker { JTemplate jTemplate; - Set allConnectionNames; Set authConnectionNames; - Set allDatasetNames; Set authDatasetNames; + Set templateDatasetNames; Map checkerMap = new HashMap<>(); Set authFailConnectionNames = new HashSet<>(); Set authFailDatasetNames = new HashSet<>(); @@ -47,13 +40,12 @@ public class JTemplateAuthorityChecker { } private void initAuthNames() { - allDatasetNames = new HashSet<>(); - for (String authServerDataSetName : TableDataConfigProviderFactory.getInstance().getTableDatas().keySet()) { - allDatasetNames.add(authServerDataSetName); + // 无需获取所有服务器数据集和数据连接了,因为当前只能获取自己有权限的,只要拿一下模板数据集就行 + templateDatasetNames = new HashSet<>(); + Iterator tableDataNameIterator = jTemplate.getTarget().getTableDataNameIterator(); + while (tableDataNameIterator.hasNext()) { + templateDatasetNames.add(tableDataNameIterator.next()); } - - allConnectionNames = ConnectionConfigProviderFactory.getConfigProvider().getConnections().keySet(); - Map> authNamesMap = RemoteAuthorityRepository.getInstance().getAuthServerDataSetAndConnectionNames(WorkContext.getCurrent().getConnection().getUserName()); if (authNamesMap != null) { //有权限的数据连接名称 @@ -95,8 +87,8 @@ public class JTemplateAuthorityChecker { } } } - authFailConnectionNames.retainAll(allConnectionNames); - authFailDatasetNames.retainAll(allDatasetNames); + // 排除模板数据集的部分 + authFailDatasetNames.removeAll(templateDatasetNames); FineLoggerFactory.getLogger().info("JTemplateAuthorityChecker check time consume:" + (System.currentTimeMillis() - s)); return authFailConnectionNames.size() == 0 && authFailDatasetNames.size() == 0; } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/GradientBackgroundQuickPane.java b/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/GradientBackgroundQuickPane.java index 176cd9b8c5..fe4622a8a1 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/GradientBackgroundQuickPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/GradientBackgroundQuickPane.java @@ -43,6 +43,7 @@ public class GradientBackgroundQuickPane extends BackgroundQuickPane { com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Top_To_Bottom")}; Integer[] valueArray = {GradientBackground.LEFT2RIGHT, GradientBackground.TOP2BOTTOM}; directionPane = new UIButtonGroup<>(textArray, valueArray); + directionPane.setAllToolTips(textArray); directionPane.setSelectedIndex(0); gradientBar = new GradientBar(4, this.gradientBarWidth); this.setLayout(new BorderLayout()); @@ -91,8 +92,9 @@ public class GradientBackgroundQuickPane extends BackgroundQuickPane { */ @Override public void registerChangeListener(final UIObserverListener listener) { - gradientBar.addChangeListener(new ChangeListenerImpl(listener)); - directionPane.addChangeListener(new ChangeListenerImpl(listener)); + gradientBar.addChangeListener(new ChangeListenerImpl(listener)); + + directionPane.addChangeListener(new ChangeListenerImpl(listener)); } @Override diff --git a/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/ImageBackgroundQuickPane.java b/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/ImageBackgroundQuickPane.java index 6bdc8bb008..70ee8625d0 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/ImageBackgroundQuickPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/ImageBackgroundQuickPane.java @@ -50,6 +50,7 @@ public class ImageBackgroundQuickPane extends BackgroundQuickPane { String[] nameArray = {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Image_Default"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Image_Titled"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Image_Extend"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Image_Adjust")}; Byte[] valueArray = {Constants.IMAGE_CENTER, Constants.IMAGE_TILED, Constants.IMAGE_EXTEND, Constants.IMAGE_ADJUST}; imageLayoutPane = new UIButtonGroup(nameArray, valueArray); + imageLayoutPane.setAllToolTips(nameArray); imageLayoutPane.setSelectedIndex(0); previewPane = new ImagePreviewPane(); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/PatternBackgroundQuickPane.java b/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/PatternBackgroundQuickPane.java index 789bcd16cf..48984a4590 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/PatternBackgroundQuickPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/PatternBackgroundQuickPane.java @@ -59,13 +59,21 @@ public class PatternBackgroundQuickPane extends BackgroundQuickPane { backgroundColorPane = new ColorSelectBox(FineUIScale.scale(60)); foregroundColorPane.setSelectObject(DEFAULT_FOREGROUND); foregroundColorPane.setSelectObject(DEFAULT_BACKGROUND); + UILabel foregroundLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Foreground"), UILabel.LEFT); + foregroundLabel.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Foreground")); + UILabel backgroundLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background"), UILabel.LEFT); + backgroundLabel.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background")); + this.add(Layouts.column(LayoutConstants.VERTICAL_GAP, row( - cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Foreground"), UILabel.LEFT)).weight(1), + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Foreground"), UILabel.LEFT)) + .with(it -> it.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Foreground"))).weight(1), cell(foregroundColorPane).weight(4)), row( - cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background"), UILabel.LEFT)).weight(1), - cell(backgroundColorPane).weight(4)) + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background"), UILabel.LEFT)) + .with(it -> it.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background"))).weight(1), + cell(backgroundColorPane).weight(4)), + row(cell(foregroundLabel).weight(1), cell(foregroundColorPane).weight(4)) ).with(it -> it.setBorder(new ScaledEmptyBorder(LayoutConstants.VERTICAL_GAP, 0, 0, 0))).getComponent(), BorderLayout.CENTER); foregroundColorPane.addSelectChangeListener(colorChangeListener); backgroundColorPane.addSelectChangeListener(colorChangeListener); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/check/CheckButton.java b/designer-base/src/main/java/com/fr/design/mainframe/check/CheckButton.java index dc502dcdf4..9332368881 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/check/CheckButton.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/check/CheckButton.java @@ -1,30 +1,22 @@ package com.fr.design.mainframe.check; +import com.fanruan.repository.TemplateRepository; import com.fine.theme.icon.LazyIcon; -import com.fr.base.BaseUtils; +import com.fine.theme.utils.FineUIUtils; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.dialog.FineJOptionPane; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.ilable.UILabel; -import com.fr.design.i18n.DesignSizeI18nManager; import com.fr.design.i18n.Toolkit; import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.JTemplate; import com.fr.design.worker.save.CallbackSaveWorker; import com.fr.file.FILE; import com.fr.file.FileNodeFILE; -import com.fr.general.IOUtils; import com.fr.log.FineLoggerFactory; -import com.fr.rpc.ExceptionHandler; -import com.fr.rpc.RPCInvokerExceptionInfo; -import com.fr.workspace.WorkContext; -import com.fr.workspace.server.check.TemplateChecker; -import javax.swing.BoxLayout; -import javax.swing.JDialog; -import javax.swing.JPanel; -import javax.swing.SwingUtilities; -import javax.swing.SwingWorker; -import java.awt.FlowLayout; +import javax.swing.*; +import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; @@ -32,10 +24,9 @@ import java.awt.event.WindowEvent; import java.util.Set; import java.util.concurrent.ExecutionException; +import static com.fine.swing.ui.layout.Layouts.*; import static com.fr.design.dialog.FineJOptionPane.showConfirmDialog; -import static javax.swing.JOptionPane.OK_CANCEL_OPTION; -import static javax.swing.JOptionPane.OK_OPTION; -import static javax.swing.JOptionPane.WARNING_MESSAGE; +import static javax.swing.JOptionPane.*; public class CheckButton extends UIButton { @@ -73,7 +64,7 @@ public class CheckButton extends UIButton { } if (set.isEmpty()) { okButton.setEnabled(true); - imageLabel.setIcon(BaseUtils.readIcon("com/fr/design/images/correct.png")); + imageLabel.setIcon(new LazyIcon("success", 20)); message.setText("" + Toolkit.i18nText("Fine_Designer_Check_Font_Success") + ""); } else { if (dialog != null) { @@ -168,16 +159,15 @@ public class CheckButton extends UIButton { private Set check(JTemplate jtemplate) { String path = jtemplate.getEditingFILE().getEnvFullName(); - Set fontSet = WorkContext.getCurrent().get(TemplateChecker.class, new ExceptionHandler() { - - @Override - public Void callHandler(RPCInvokerExceptionInfo rpcInvokerExceptionInfo) { - imageLabel.setIcon(BaseUtils.readIcon("com/fr/design/images/error.png")); - message.setText("" + Toolkit.i18nText("Fine_Designer_Check_Font_Upgrade") + ""); - okButton.setEnabled(true); - return null; - } - }).checkFont(path); + Set fontSet = null; + try { + fontSet = TemplateRepository.getInstance().checkFont(path); + } catch (Exception e) { + imageLabel.setIcon(new LazyIcon("error", 20)); + message.setText("" + Toolkit.i18nText("Fine_Designer_Check_Font_Upgrade") + ""); + okButton.setEnabled(true); + return null; + } return fontSet; } @@ -195,19 +185,19 @@ public class CheckButton extends UIButton { dialog = new JDialog(); dialog.setTitle(Toolkit.i18nText("Fine_Designer_Check_Font")); dialog.setModal(true); - dialog.setSize(DesignSizeI18nManager.getInstance().i18nDimension(this.getClass().getName())); + dialog.setSize(FineUIUtils.getScaledI18nDimension(this.getClass().getName())); JPanel jp = new JPanel(); JPanel upPane = new JPanel(); - JPanel downPane = new JPanel(); - imageLabel = new UILabel(IOUtils.readIcon("com/fr/design/images/waiting.png")); - upPane.setLayout(new FlowLayout(FlowLayout.LEFT, 10, 10)); - upPane.add(imageLabel); - upPane.add(message); - downPane.setLayout(new FlowLayout(FlowLayout.CENTER, 6, 0)); - downPane.add(okButton); - jp.setLayout(new BoxLayout(jp, BoxLayout.Y_AXIS)); - jp.add(upPane); - jp.add(downPane); + JPanel downPane = new JPanel(new BorderLayout()); + imageLabel = new UILabel(new LazyIcon("waiting", 20)); + upPane.add(row(10, + column(cell(imageLabel),flex()), cell(message) + ).getComponent()); + downPane.add(okButton, BorderLayout.EAST); + jp.setLayout(new BorderLayout()); + jp.add(column(flex(), cell(upPane), flex()).getComponent()); + jp.add(downPane, BorderLayout.SOUTH); + jp.setBorder(new ScaledEmptyBorder(10, 10, 10,10)); dialog.add(jp); dialog.setResizable(false); dialog.setLocationRelativeTo(SwingUtilities.getWindowAncestor(this)); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/manager/search/searcher/control/pane/TemplateDirTreeSearchPane.java b/designer-base/src/main/java/com/fr/design/mainframe/manager/search/searcher/control/pane/TemplateDirTreeSearchPane.java index 73d909ae81..11ab4a26ea 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/manager/search/searcher/control/pane/TemplateDirTreeSearchPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/manager/search/searcher/control/pane/TemplateDirTreeSearchPane.java @@ -1,8 +1,8 @@ package com.fr.design.mainframe.manager.search.searcher.control.pane; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.data.datapane.management.search.pane.FineSearchPane; import com.fr.design.file.TemplateDirTreePane; -import com.fr.design.gui.itextfield.UITextField; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.manager.search.TemplateDirTreeSearchManager; @@ -10,15 +10,10 @@ import com.fr.design.search.event.TreeSearchStatusChangeEvent; import com.fr.design.search.event.TreeSearchStatusChangeListener; import com.fr.stable.StringUtils; -import javax.swing.BorderFactory; import javax.swing.JPanel; import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; import java.awt.BorderLayout; -import java.awt.Color; -import java.awt.Insets; -import java.awt.event.FocusEvent; -import java.awt.event.FocusListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.MouseAdapter; @@ -29,11 +24,6 @@ import java.awt.event.MouseEvent; */ public class TemplateDirTreeSearchPane extends JPanel implements TreeSearchStatusChangeListener { - /** - * 搜索输入框 - */ - private UITextField searchTextField; - /** * 搜索面板 */ @@ -43,14 +33,14 @@ public class TemplateDirTreeSearchPane extends JPanel implements TreeSearchStatu @Override public void keyPressed(KeyEvent e) { if (e.getKeyCode() == KeyEvent.VK_ENTER) { - TemplateDirTreeSearchManager.getInstance().startSearch(searchTextField.getText()); + TemplateDirTreeSearchManager.getInstance().startSearch(searchPane.getText()); } } }; public TemplateDirTreeSearchPane() { this.setLayout(FRGUIPaneFactory.createBorderLayout()); - this.setBorder(BorderFactory.createEmptyBorder(10, 15, 0, 10)); + this.setBorder(new ScaledEmptyBorder(10, 10, 0, 10)); initSearchPane(); add(searchPane, BorderLayout.CENTER); TemplateDirTreeSearchManager.getInstance().registerTreeSearchStatusChangeListener(this); @@ -94,7 +84,7 @@ public class TemplateDirTreeSearchPane extends JPanel implements TreeSearchStatu } private void dealWithTextChange() { - if (StringUtils.isEmpty(searchTextField.getText()) && TemplateDirTreeSearchManager.getInstance().isInSearchMode()) { + if (StringUtils.isEmpty(searchPane.getText()) && TemplateDirTreeSearchManager.getInstance().isInSearchMode()) { // 如果是搜索模式下,看作是用户删除输入框文字,仅复原TemplateTreePane TemplateDirTreeSearchManager.getInstance().restoreTreePane(); TemplateDirTreePane.getInstance().refreshDockingView(); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/predefined/ui/detail/ColorFillStylePane.java b/designer-base/src/main/java/com/fr/design/mainframe/predefined/ui/detail/ColorFillStylePane.java index d835e2f372..2cde384fdc 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/predefined/ui/detail/ColorFillStylePane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/predefined/ui/detail/ColorFillStylePane.java @@ -86,6 +86,14 @@ public class ColorFillStylePane extends BasicBeanPane { return customPane; } + @Override + public void repaint() { + if (colorAdjustPane != null) { + colorAdjustPane.repaint(); + } + super.repaint(); + } + protected ColorSchemeComboBox createColorSchemeComboBox() { return new ColorSchemeComboBox(); } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/FormThemeProfilePane.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/FormThemeProfilePane.java index 922230b158..94067cd59b 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/FormThemeProfilePane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/FormThemeProfilePane.java @@ -1,5 +1,6 @@ package com.fr.design.mainframe.theme; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.theme.FormTheme; import com.fr.base.theme.TemplateThemeConfig; import com.fr.base.theme.settings.ThemedComponentStyle; @@ -71,6 +72,7 @@ public class FormThemeProfilePane extends TemplateThemeProfilePane { componentStyleSettingPane = new ComponentStyleEditPane(); addCustomEditorPane(i18nText("Fine-Design_Predefined_Component_Style"), componentStyleSettingPane); + initializePane(); refreshExtraAdvancedPane(); } @@ -98,5 +100,11 @@ public class FormThemeProfilePane extends TemplateThemeProfilePane { ThemedComponentStyle componentStyle = componentStyleSettingPane.updateBean(); theme.setComponentStyle(componentStyle); } + + @Override + protected void buildTabPane() { + uiTabbedPane = tabPaneBuilder.withHeadRatio(0.6f).build(); + uiTabbedPane.setBorder(new ScaledEmptyBorder(10, 5, 10, 1)); + } } } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/ReportThemeProfilePane.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/ReportThemeProfilePane.java index 3f654cae5c..d5eb2b3a1a 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/ReportThemeProfilePane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/ReportThemeProfilePane.java @@ -52,6 +52,7 @@ public class ReportThemeProfilePane extends TemplateThemeProfilePane extends JPanel { private final TemplateThemeProfilePane profilePane; private final Icon theme4currentTemplateMarkIcon = IOUtils.readIcon("/com/fr/design/form/images/theme4currentTemplate.png"); private final Icon theme4NewTemplateMarkIcon= IOUtils.readIcon("/com/fr/design/form/images/theme4newTemplate.png"); - private final Icon profileIcon = IOUtils.readIcon("/com/fr/design/icon/icon_edit.png"); + private final Icon profileIcon = new LazyIcon("theme_edit"); private final boolean displayTheme4NewTemplateMarker; private final ThumbnailPane thumbnailPane; diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/TemplateThemeEditorPane.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/TemplateThemeEditorPane.java index 2d43c3f76b..3346ab92cd 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/TemplateThemeEditorPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/TemplateThemeEditorPane.java @@ -7,6 +7,7 @@ import com.fr.base.theme.TemplateTheme; import com.fr.base.theme.TemplateThemeConfig; import com.fr.base.theme.settings.ThemedCellStyleList; import com.fr.base.theme.settings.ThemedColorScheme; +import com.fr.design.gui.frpane.FineTabbedPane; import com.fr.widgettheme.ThemePreviewTerminal; import com.fr.widgettheme.util.WidgetThemeDesignerUtils; import com.fr.design.ExtraDesignClassManager; @@ -67,7 +68,8 @@ public abstract class TemplateThemeEditorPane extends J protected final List> extraPaneList = new ArrayList<>(); protected boolean isPopulating = false; - protected UITabbedPane uiTabbedPane; + protected FineTabbedPane.TabPaneBuilder tabPaneBuilder; + protected FineTabbedPane uiTabbedPane; private final TemplateThemeConfig config; @@ -81,10 +83,10 @@ public abstract class TemplateThemeEditorPane extends J super(); this.config = config; theme = config.createNewTheme(); - initializePane(); + tabPaneBuilder = FineTabbedPane.builder(); } - private void initializePane() { + protected void initializePane() { setLayout(new BorderLayout(0, 0)); setPreferredSize(FineUIScale.scale(new Dimension(RIGHT_PANE_WIDTH, RIGHT_PANE_HEIGHT))); JPanel nameEditPane = createNameEditPane(); @@ -180,9 +182,7 @@ public abstract class TemplateThemeEditorPane extends J protected JPanel createCustomEditorsPane() { JPanel container = new JPanel(new BorderLayout()); container.setBorder(BorderUtils.createTitleBorder(Toolkit.i18nText("Fine-Design_Basic_Template_Theme_Edit_Pane_Custom_Settings_Title"))); - - uiTabbedPane = new UITabbedPane(); - uiTabbedPane.setBorder(new ScaledEmptyBorder(10, 5, 10, 1)); + buildTabPane(); container.add(uiTabbedPane, BorderLayout.CENTER); initPluginListener(); return container; @@ -203,7 +203,7 @@ public abstract class TemplateThemeEditorPane extends J fireAttributeChange(); } }); - uiTabbedPane.addTab(title, settingPane); + tabPaneBuilder.addTab(title, settingPane); } protected void refreshExtraAdvancedPane() { @@ -359,4 +359,13 @@ public abstract class TemplateThemeEditorPane extends J } return ThemePreviewTerminal.PC; } + + protected void buildTabPane() { + if (WidgetThemeDesignerUtils.enableWidgetEnhance()) { + uiTabbedPane = tabPaneBuilder.withHeadRatio(1.0f).build(); + } else { + uiTabbedPane = tabPaneBuilder.withHeadRatio(0.6f).build(); + } + uiTabbedPane.setBorder(new ScaledEmptyBorder(10, 5, 10, 1)); + } } \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeDialog.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeDialog.java index 1864a91b1f..def9c7d626 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeDialog.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeDialog.java @@ -1,5 +1,6 @@ package com.fr.design.mainframe.theme.dialog; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.utils.gui.GUICoreUtils; @@ -14,17 +15,19 @@ import java.awt.Window; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; +import static com.fine.theme.utils.FineUIScale.scale; + /** * @author Starryi * @version 1.0 * Created by Starryi on 2021/8/16 */ public abstract class TemplateThemeDialog extends JDialog { - public static final int DIALOG_TITLE_HEIGHT = 28; + public static final int DIALOG_TITLE_HEIGHT = scale(28); - public static final int DIALOG_BOTTOM_ACTION_BAR_HEIGHT = 30; - public static final int DIALOG_BOTTOM_ACTION_BUTTON_GAP = 10; - public static final int DIALOG_BOTTOM_ACTION_BUTTON_HEIGHT = 20; + public static final int DIALOG_BOTTOM_ACTION_BAR_HEIGHT = scale(30); + public static final int DIALOG_BOTTOM_ACTION_BUTTON_GAP = scale(10); + public static final int DIALOG_BOTTOM_ACTION_BUTTON_HEIGHT = scale(20); private final JPanel contentContainer; private final JPanel actionContainer; @@ -97,7 +100,7 @@ public abstract class TemplateThemeDialog extends JDialog { private JPanel createActionsContainer(int align, UIButton... buttons) { JPanel container = new JPanel(new FlowLayout(align, DIALOG_BOTTOM_ACTION_BUTTON_GAP, 0)); int paddingVertical = getPaddingVertical(); - container.setBorder(BorderFactory.createEmptyBorder(paddingVertical, 0, paddingVertical, 0)); + container.setBorder(new ScaledEmptyBorder(paddingVertical, 0, paddingVertical, 0)); if (buttons == null || buttons.length == 0) { return container; diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeGridPagesDialog.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeGridPagesDialog.java index bf65b9be28..d7e986c346 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeGridPagesDialog.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeGridPagesDialog.java @@ -9,14 +9,16 @@ import com.fr.design.mainframe.theme.TemplateThemeGridPane; import javax.swing.JPanel; import java.awt.Window; +import static com.fine.theme.utils.FineUIScale.scale; + /** * @author Starryi * @version 1.0 * Created by Starryi on 2021/8/13 */ public class TemplateThemeGridPagesDialog extends TemplateThemeDialog implements TemplateThemeGridPagesPane.PageChangeListener { - public static final int CONTENT_WIDTH = TemplateThemeGridPane.CONTENT_WIDTH + 48; - public static final int CONTENT_HEIGHT = TemplateThemeGridPane.CONTENT_HEIGHT + 37; + public static final int CONTENT_WIDTH = TemplateThemeGridPane.CONTENT_WIDTH + scale(48); + public static final int CONTENT_HEIGHT = TemplateThemeGridPane.CONTENT_HEIGHT + scale(37); protected TemplateThemeGridPagesPane overallPane; diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/CellStyleListEditPane.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/CellStyleListEditPane.java index 5e569afbf5..c50e15d29c 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/CellStyleListEditPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/CellStyleListEditPane.java @@ -46,6 +46,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import static com.fine.theme.utils.FineUIScale.scale; import static com.fr.design.i18n.Toolkit.i18nText; /** @@ -127,8 +128,8 @@ public class CellStyleListEditPane extends JListControlPane { this.setCreators(this.createNameableCreators()); initCardPane(); JPanel leftPane = getLeftPane(); - leftPane.setPreferredSize(new Dimension(90, 0)); - cardPane.setPreferredSize(new Dimension(270, 0)); + leftPane.setPreferredSize(new Dimension(scale(90), super.getPreferredSize().height)); + cardPane.setPreferredSize(new Dimension(scale(270), super.getPreferredSize().height)); JPanel mainSplitPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); mainSplitPane.add(leftPane, BorderLayout.WEST); mainSplitPane.add(cardPane, BorderLayout.CENTER); @@ -292,7 +293,7 @@ public class CellStyleListEditPane extends JListControlPane { Component component = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); if (component instanceof NameableListCellRenderer) { ((NameableListCellRenderer) component).setIcon(null); - ((NameableListCellRenderer) component).setBorder(BorderFactory.createEmptyBorder(0, 4, 0, 0)); + ((NameableListCellRenderer) component).setBorder(new ScaledEmptyBorder(0, 4, 0, 0)); } return component; } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/ChartStyleEditPane.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/ChartStyleEditPane.java index 48ff8b21e1..f6d2d41c77 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/ChartStyleEditPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/ChartStyleEditPane.java @@ -4,6 +4,7 @@ import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.theme.settings.ThemedChartStyle; import com.fr.design.dialog.BasicPane; import com.fr.design.dialog.MultiTabPane; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.theme.edit.chart.ChartAxisStylePane; import com.fr.design.mainframe.theme.edit.chart.ChartDataSheetStylePane; import com.fr.design.mainframe.theme.edit.chart.ChartLabelStylePane; @@ -11,7 +12,7 @@ import com.fr.design.mainframe.theme.edit.chart.ChartLegendStylePane; import com.fr.design.mainframe.theme.edit.chart.ChartSeriesStylePane; import com.fr.design.mainframe.theme.edit.chart.ChartTitleAndBackgroundStylePane; -import javax.swing.BorderFactory; +import java.awt.BorderLayout; import java.util.ArrayList; import java.util.List; @@ -34,7 +35,9 @@ public class ChartStyleEditPane extends MultiTabPane { @Override protected void initLayout() { - super.initLayout(); + this.setLayout(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); + this.add(tabPane, BorderLayout.NORTH); + this.add(centerPane, BorderLayout.CENTER); setBorder(new ScaledEmptyBorder(10, 10, 10, 10)); } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/cell/CellStyleEditPane.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/cell/CellStyleEditPane.java index 9865321987..84213f6c32 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/cell/CellStyleEditPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/cell/CellStyleEditPane.java @@ -1,5 +1,6 @@ package com.fr.design.mainframe.theme.edit.cell; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.CellBorderStyle; import com.fr.base.Style; import com.fr.base.theme.settings.ThemedCellStyle; @@ -24,6 +25,7 @@ import java.awt.Dimension; import java.util.ArrayList; import java.util.List; +import static com.fine.theme.utils.FineUIScale.scale; import static com.fr.design.i18n.Toolkit.i18nText; @@ -129,14 +131,14 @@ public class CellStyleEditPane extends MultiTabPane { @Override protected void initLayout() { this.setLayout(new BorderLayout(0, 10)); - this.setBorder(BorderFactory.createEmptyBorder(0, 4, 0, 4)); + this.setBorder(new ScaledEmptyBorder(0, 4, 0, 4)); JPanel previewPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); previewArea = new CellRectangleStylePreviewPane(true); - previewArea.setPreferredSize(new Dimension(207, 48)); + previewArea.setPreferredSize(scale(new Dimension(207, 48))); previewPane.setBorder(BorderFactory.createCompoundBorder( BorderUtils.createTitleBorder(i18nText("Fine-Design_Basic_Preview")), - BorderFactory.createEmptyBorder(4, 4, 4, 4))); + new ScaledEmptyBorder(4, 4, 4, 4))); previewPane.add(previewArea, BorderLayout.NORTH); this.add(previewPane, BorderLayout.NORTH); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/AbstractChartStylePane.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/AbstractChartStylePane.java index 547b5c1d25..9625edb642 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/AbstractChartStylePane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/AbstractChartStylePane.java @@ -1,5 +1,6 @@ package com.fr.design.mainframe.theme.edit.chart; +import com.fine.theme.utils.FineLayoutBuilder; import com.fine.theme.utils.FineUIScale; import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.theme.settings.ThemedChartStyle; @@ -31,11 +32,8 @@ public abstract class AbstractChartStylePane extends BasicPane { protected void initPane() { this.setLayout(FRGUIPaneFactory.createBorderLayout()); - double labelWidth = 90; - double totalWidth = 190; - double p = TableLayout.PREFERRED; - double[] columnSize = {labelWidth, totalWidth}; - JPanel gapTableLayoutPane = TableLayoutHelper.createGapTableLayoutPane(getComponent(), getRows(p), columnSize, 5, LayoutConstants.VGAP_LARGE); + + JPanel gapTableLayoutPane = FineLayoutBuilder.compatibleTableLayout(10, getComponent(), new double[]{1.2, 3}); gapTableLayoutPane.setBorder(new ScaledEmptyBorder(0, 10, 0, 0)); UIScrollPane rightTopPane = new UIScrollPane(gapTableLayoutPane); rightTopPane.setBorder(BorderFactory.createEmptyBorder()); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartFontPane.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartFontPane.java index 1d1967ad3c..19a81b866a 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartFontPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartFontPane.java @@ -1,19 +1,17 @@ package com.fr.design.mainframe.theme.edit.chart; import com.fine.theme.icon.LazyIcon; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.base.FRContext; -import com.fr.design.constants.LayoutConstants; import com.fr.design.dialog.BasicPane; import com.fr.design.event.UIObserverListener; import com.fr.design.gui.ibutton.UIColorButton; import com.fr.design.gui.ibutton.UIToggleButton; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.UILabel; +import com.fr.design.gui.itoolbar.UIToolbar; import com.fr.design.i18n.Toolkit; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.utils.DesignUtils; -import com.fr.design.utils.gui.GUICoreUtils; import com.fr.general.FRFont; import com.fr.general.GeneralUtils; @@ -21,7 +19,6 @@ import javax.swing.JPanel; import javax.swing.SwingConstants; import java.awt.BorderLayout; import java.awt.Component; -import java.awt.FlowLayout; import java.awt.Font; /** @@ -64,11 +61,13 @@ public class ChartFontPane extends BasicPane { } protected void initComponents() { - Component[] components = new Component[]{ - fontSizeComboBox, fontColor, italic, bold - }; - JPanel buttonPane = new JPanel(); - buttonPane.add(GUICoreUtils.createFlowPane(components, FlowLayout.LEFT, LayoutConstants.HGAP_LARGE)); + UIToolbar toolbar = new UIToolbar(); + toolbar.add(fontSizeComboBox); + toolbar.add(fontColor); + toolbar.add(italic); + toolbar.add(bold); + JPanel buttonPane = new JPanel(new BorderLayout()); + buttonPane.add(toolbar); this.setLayout(new BorderLayout()); this.add(getContentPane(buttonPane), BorderLayout.CENTER); @@ -77,19 +76,16 @@ public class ChartFontPane extends BasicPane { } protected JPanel getContentPane(JPanel buttonPane) { - double labelWidth = 90; - double totalWidth = 190; - double p = TableLayout.PREFERRED; - double[] rows = {p, p, p}; - double[] columnSize = {labelWidth, totalWidth}; + UILabel text = new UILabel(getUILabelText(), SwingConstants.LEFT); + text.setToolTipText(getUILabelText()); Component[][] components = { new Component[]{null, null}, new Component[]{text, fontNameComboBox}, new Component[]{null, buttonPane} }; - return TableLayoutHelper.createGapTableLayoutPane(components, rows, columnSize, 5, 0); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); } public String getUILabelText() { diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartSeriesStylePane.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartSeriesStylePane.java index f9ca4edf32..09b8e1f94a 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartSeriesStylePane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartSeriesStylePane.java @@ -28,6 +28,7 @@ public class ChartSeriesStylePane extends AbstractChartStylePane { protected void initComponents() { colorTypeButton = new UIButtonGroup<>(new String[]{Toolkit.i18nText("Fine-Design_Chart_Custom_Color"), Toolkit.i18nText("Fine-Design_Chart_Legend_Gradual")}); + colorTypeButton.getButton(0).setToolTipText(Toolkit.i18nText("Fine-Design_Chart_Custom_Color")); gradientBar = new FixedGradientBar(4, 130); initListener(); } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartTitleAndBackgroundStylePane.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartTitleAndBackgroundStylePane.java index 2dc0659d00..f2d928479c 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartTitleAndBackgroundStylePane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartTitleAndBackgroundStylePane.java @@ -86,12 +86,14 @@ public class ChartTitleAndBackgroundStylePane extends AbstractChartStylePane { String chartAreaBgLabelName = Toolkit.i18nText("Fine-Design_Chart_Area_Background_Color"); UILabel chartAreaBgLabel = new UILabel(chartAreaBgLabelName); chartAreaBgLabel.setToolTipText(chartAreaBgLabelName); + UILabel gridLineLabel = new UILabel(Toolkit.i18nText("Fine-Design_Chart_Grid_Line_Color")); + gridLineLabel.setToolTipText(gridLineLabel.getText()); return new Component[][]{ new Component[]{chartFontPane, null}, new Component[]{null, null}, new Component[]{chartAreaBgLabel, typeComboBox}, new Component[]{null, centerPane}, - new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Grid_Line_Color")), mainGridColor} + new Component[]{gridLineLabel, mainGridColor} }; } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/component/ComponentMarginStylePane.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/component/ComponentMarginStylePane.java index 643c1e9601..ef66eb5515 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/component/ComponentMarginStylePane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/component/ComponentMarginStylePane.java @@ -1,6 +1,8 @@ package com.fr.design.mainframe.theme.edit.component; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.base.theme.settings.ThemedComponentStyle; +import com.fr.design.constants.LayoutConstants; import com.fr.design.designer.IntervalConstants; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ispinner.UISpinner; @@ -50,16 +52,9 @@ public class ComponentMarginStylePane extends JPanel { uiLabel.setBorder(BorderFactory.createEmptyBorder(IntervalConstants.INTERVAL_L1, 0, 0, 0)); uiLabel.setVerticalAlignment(SwingConstants.TOP); - - double f = TableLayout.FILL; - double p = TableLayout.PREFERRED; - double[] rowSize = { p }; - double[] columnSize = { this.uiLabelWidth, this.uiSettingWidth > 0 ? this.uiSettingWidth : f }; - - JPanel panel = TableLayoutHelper.createGapTableLayoutPane( + JPanel panel = FineLayoutBuilder.compatibleTableLayout(10, new Component[][]{new Component[]{uiLabel, createPaddingPane()}}, - rowSize, columnSize, - IntervalConstants.INTERVAL_L1, 0 + new double[]{LayoutConstants.LEFT_WEIGHT, LayoutConstants.RIGHT_WEIGHT} ); this.add(panel); } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/toolbar/DebugModeMenuDef.java b/designer-base/src/main/java/com/fr/design/mainframe/toolbar/DebugModeMenuDef.java new file mode 100644 index 0000000000..989e88b5c5 --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/mainframe/toolbar/DebugModeMenuDef.java @@ -0,0 +1,51 @@ +package com.fr.design.mainframe.toolbar; + +import com.fanruan.gui.UiInspector; +import com.fine.theme.light.ui.laf.FineDarkLaf; +import com.fine.theme.light.ui.laf.FineLightLaf; +import com.fr.design.actions.UpdateAction; +import com.fr.design.gui.UILookAndFeel; +import com.fr.design.mainframe.DesignerContext; +import com.fr.design.menu.MenuDef; +import com.fr.design.remote.ui.debug.RemoteDesignNetWorkAction; + +import java.awt.event.ActionEvent; + +/** + * 调试模式菜单 + * + * @author vito + * @since 11.0 + * Created on 2024/9/24 + */ +public class DebugModeMenuDef extends MenuDef { + + public DebugModeMenuDef() { + super("Debug"); + addLookAndFeelMenu(); + addRemotePane(); + } + + private void addUIInspect() { + this.addShortCut(new UpdateAction() { + @Override + public void actionPerformed(ActionEvent e) { + new UiInspector().showInspector(DesignerContext.getDesignerFrame()); + } + }); + } + + private void addLookAndFeelMenu() { + MenuDef lookAndFeel = new MenuDef("Look And Feel", 'L'); + lookAndFeel.addShortCut( + new LookAndFeelAction(new FineLightLaf()), + new LookAndFeelAction(new FineDarkLaf()), + new LookAndFeelAction(new UILookAndFeel()) + ); + this.addShortCut(lookAndFeel); + } + + private void addRemotePane() { + this.addShortCut(new RemoteDesignNetWorkAction()); + } +} diff --git a/designer-base/src/main/java/com/fr/design/mainframe/toolbar/LookAndFeelAction.java b/designer-base/src/main/java/com/fr/design/mainframe/toolbar/LookAndFeelAction.java index 613fe0a0c1..3edf09d953 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/toolbar/LookAndFeelAction.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/toolbar/LookAndFeelAction.java @@ -5,6 +5,7 @@ package com.fr.design.mainframe.toolbar; +import com.fine.theme.icon.IconManager; import com.formdev.flatlaf.FlatLaf; import com.formdev.flatlaf.extras.FlatAnimatedLafChange; import com.fr.design.actions.UpdateAction; @@ -32,6 +33,8 @@ public class LookAndFeelAction extends UpdateAction { FlatAnimatedLafChange.showSnapshot(); try { UIManager.setLookAndFeel( lookAndFeel ); + // 多主题场景下,需要判断是否需要切换图标 + IconManager.updateIcon(); } catch (UnsupportedLookAndFeelException e) { throw new RuntimeException(e); } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java b/designer-base/src/main/java/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java index e74ffc708b..fec6fdc9e5 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java @@ -3,8 +3,6 @@ */ package com.fr.design.mainframe.toolbar; -import com.fine.theme.light.ui.laf.FineDarkLaf; -import com.fine.theme.light.ui.laf.FineLightLaf; import com.fr.base.FRContext; import com.fr.base.vcs.DesignerMode; import com.fr.design.DesignState; @@ -34,7 +32,6 @@ import com.fr.design.actions.file.SwitchExistEnv; import com.fr.design.actions.help.AboutAction; import com.fr.design.actions.help.FineUIAction; import com.fr.design.actions.help.TutorialAction; -import com.fr.design.actions.help.WebDemoAction; import com.fr.design.actions.help.alphafine.AlphaFineAction; import com.fr.design.actions.help.alphafine.AlphaFineConfigManager; import com.fr.design.actions.server.ConnectionListAction; @@ -49,7 +46,6 @@ import com.fr.design.fun.MenuHandler; import com.fr.design.fun.OemProcessor; import com.fr.design.fun.PluginManagerProvider; import com.fr.design.fun.TableDataPaneProcessor; -import com.fr.design.gui.UILookAndFeel; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.ibutton.UICombinationButton; import com.fr.design.gui.ilable.UILabel; @@ -66,9 +62,7 @@ import com.fr.design.menu.ShortCut; import com.fr.design.menu.ToolBarDef; import com.fr.design.os.impl.SupportOSImpl; import com.fr.design.remote.action.RemoteDesignAuthManagerAction; -import com.fr.design.update.actions.SoftwareUpdateAction; import com.fr.design.utils.ThemeUtils; -import com.fr.env.detect.ui.EnvDetectorAction; import com.fr.general.ComparatorUtils; import com.fr.general.GeneralContext; import com.fr.general.locale.LocaleAction; @@ -298,7 +292,7 @@ public abstract class ToolBarMenuDock { // 当前仅UI开发者模式显示外观配置选项 if (DesignerUIModeConfig.getInstance().isUIDevMode()) { - menuList.add(createLookAndFeel()); + menuList.add(new DebugModeMenuDef()); } // 添加全部UpdateAction到actionmanager中 @@ -668,17 +662,6 @@ public abstract class ToolBarMenuDock { return menuDef; } - public MenuDef createLookAndFeel() { - MenuDef menuDef = new MenuDef("外观", 'H'); - menuDef.addShortCut( - new LookAndFeelAction(new FineLightLaf()), - new LookAndFeelAction(new FineDarkLaf()), - new LookAndFeelAction(new UILookAndFeel()) - ); - insertMenu(menuDef, "laf"); - return menuDef; - } - public MenuDef createCommunityMenuDef() { diff --git a/designer-base/src/main/java/com/fr/design/mainframe/vcs/VcsOperatorWorker.java b/designer-base/src/main/java/com/fr/design/mainframe/vcs/VcsOperatorWorker.java index 799abcf17c..99c1187bc3 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/vcs/VcsOperatorWorker.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/vcs/VcsOperatorWorker.java @@ -9,12 +9,12 @@ import com.fr.log.FineLoggerFactory; import com.fr.report.entity.VcsEntity; import com.fr.stable.StringUtils; import com.fr.workspace.WorkContext; +import com.fr.workspace.server.entity.vcs.VcsBean; +import com.fr.workspace.server.repository.vcs.VcsRepository; import com.fr.workspace.server.vcs.VcsOperator; import com.fr.workspace.server.vcs.v2.VcsTaskResult; -import javax.swing.SwingUtilities; -import javax.swing.SwingWorker; -import java.util.ArrayList; +import javax.swing.*; import java.util.List; import java.util.concurrent.ExecutionException; @@ -108,7 +108,7 @@ public class VcsOperatorWorker { VcsProcessFailedWrapper wrapper = new VcsProcessFailedWrapper(); startProcess(vcsEntities, wrapper, (vcsEntity, operator) -> { String fileName = vcsEntity.getFilename(); - VcsTaskResult result = operator.restoreVersion(fileName); + VcsTaskResult result = VcsRepository.getInstance().restoreVersion(fileName); if (!result.isSuccess()) { wrapper.addFailedEntity(vcsEntity); } @@ -129,9 +129,9 @@ public class VcsOperatorWorker { String fileName = vcsEntity.getFilename(); VcsTaskResult result; if (all) { - result = operator.deleteVersionForRecycle(fileName); + result = VcsRepository.getInstance().deleteVersionForRecycle(fileName); } else { - result = operator.deleteVersion(fileName, vcsEntity.getVersion(), VcsEntity.CommitType.TYPE_DEFAULT); + result = VcsRepository.getInstance().deleteVersion(new VcsBean(new VcsEntity(null, null, fileName, null, null, vcsEntity.getVersion(), 0, VcsEntity.CommitType.TYPE_DEFAULT))); } if (!result.isSuccess()) { wrapper.addFailedEntity(vcsEntity); @@ -148,7 +148,7 @@ public class VcsOperatorWorker { */ public void doDelete(VcsEntity entity, VcsTableOperatorListener listener) { String fileName = entity.getFilename(); - start4Single(entity, (vcsEntity, operator) -> operator.deleteVersionForRecycle(fileName), fileName + everyFailedStr, listener); + start4Single(entity, (vcsEntity, operator) -> VcsRepository.getInstance().deleteVersionForRecycle(fileName), fileName + everyFailedStr, listener); } /** @@ -160,7 +160,9 @@ public class VcsOperatorWorker { String fileName = entity.getFilename(); int version = entity.getVersion(); VcsEntity.CommitType commitType = entity.getCommitType(); - start4Single(entity, (vcsEntity, operator) -> operator.deleteVersion(fileName, version, commitType), fileName + everyFailedStr, listener); + start4Single(entity, (vcsEntity, operator) -> + VcsRepository.getInstance().deleteVersion(new VcsBean(new VcsEntity(null, null, fileName, null, null, version, 0, commitType))), + fileName + everyFailedStr, listener); } @@ -171,7 +173,7 @@ public class VcsOperatorWorker { */ public void updateEntityAnnotation(VcsEntity entity, VcsTableOperatorListener listener) { start4Single(entity, (vcsEntity, operator) -> { - operator.updateVersion(entity); + VcsRepository.getInstance().updateVersion(new VcsBean(entity)); return new VcsTaskResult(true); }, everyFailedStr, listener); } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/vcs/VcsRecycleSettingHelper.java b/designer-base/src/main/java/com/fr/design/mainframe/vcs/VcsRecycleSettingHelper.java index 3e6a5bab96..db93616342 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/vcs/VcsRecycleSettingHelper.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/vcs/VcsRecycleSettingHelper.java @@ -3,9 +3,9 @@ package com.fr.design.mainframe.vcs; import com.fr.concurrent.NamedThreadFactory; import com.fr.transaction.Configurations; import com.fr.transaction.WorkerAdaptor; -import com.fr.workspace.WorkContext; +import com.fr.workspace.server.entity.vcs.VcsTaskBean; +import com.fr.workspace.server.repository.vcs.VcsRepository; import com.fr.workspace.server.vcs.VcsConfig; -import com.fr.workspace.server.vcs.v2.scheduler.VcsAutoCleanOperator; import com.fr.workspace.server.vcs.v2.scheduler.VcsAutoCleanService; import com.fr.workspace.server.vcs.v2.scheduler.VcsAutoRecycleSchedule; @@ -39,10 +39,10 @@ public class VcsRecycleSettingHelper { VcsConfig.getInstance().setV2CleanRecycleInterval(day); } }); - WorkContext.getCurrent().get(VcsAutoCleanOperator.class).addOrUpdateVcsAutoCleanJob( + VcsRepository.getInstance().addOrUpdateVcsAutoCleanJob(new VcsTaskBean( VcsAutoCleanService.VCS_AUTO_CLEAN_RECYCLE_JOB_NAME, 1, - VcsAutoRecycleSchedule.class); + VcsAutoRecycleSchedule.class)); } }); } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/vcs/common/VcsCacheFileNodeFile.java b/designer-base/src/main/java/com/fr/design/mainframe/vcs/common/VcsCacheFileNodeFile.java index 16062c2936..e6bb0981ea 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/vcs/common/VcsCacheFileNodeFile.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/vcs/common/VcsCacheFileNodeFile.java @@ -1,14 +1,13 @@ package com.fr.design.mainframe.vcs.common; -import com.fr.io.FineEncryptUtils; +import com.fanruan.repository.TemplateRepository; import com.fr.base.io.XMLEncryptUtils; import com.fr.file.FileNodeFILE; import com.fr.file.filetree.FileNode; import com.fr.general.ComparatorUtils; +import com.fr.io.FineEncryptUtils; import com.fr.stable.StableUtils; -import com.fr.workspace.WorkContext; import com.fr.workspace.resource.WorkResourceOutputStream; -import com.fr.workspace.server.lock.TplOperator; import com.fr.workspace.server.vcs.filesystem.VcsFileSystem; import java.io.ByteArrayInputStream; @@ -43,9 +42,7 @@ public class VcsCacheFileNodeFile extends FileNodeFILE { return null; } InputStream in = new ByteArrayInputStream( - WorkContext.getCurrent().get(TplOperator.class).readAndLockFile( - StableUtils.pathJoin(vcsCacheDir, envPath.substring(vcsCacheDir.length() + 1)) - ) + TemplateRepository.getInstance().open( StableUtils.pathJoin(vcsCacheDir, envPath.substring(vcsCacheDir.length() + 1))) ); return envPath.endsWith(".cpt") || envPath.endsWith(".frm") diff --git a/designer-base/src/main/java/com/fr/design/mainframe/vcs/common/VcsHelper.java b/designer-base/src/main/java/com/fr/design/mainframe/vcs/common/VcsHelper.java index 15787348fe..082faf09fd 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/vcs/common/VcsHelper.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/vcs/common/VcsHelper.java @@ -24,19 +24,19 @@ import com.fr.plugin.manage.PluginManager; import com.fr.report.entity.VcsEntity; import com.fr.stable.StableUtils; import com.fr.stable.StringUtils; -import com.fr.stable.project.ProjectConstants; import com.fr.workspace.WorkContext; import com.fr.workspace.Workspace; import com.fr.workspace.WorkspaceEvent; +import com.fr.workspace.server.entity.vcs.VcsBean; +import com.fr.workspace.server.entity.vcs.VcsQuery; +import com.fr.workspace.server.repository.vcs.VcsRepository; import com.fr.workspace.server.vcs.VcsFileUtils; import com.fr.workspace.server.vcs.VcsOperator; -import com.fr.workspace.server.vcs.filesystem.VcsFileSystem; import com.fr.workspace.server.vcs.git.config.GcConfig; -import javax.swing.Icon; -import javax.swing.SwingUtilities; +import javax.swing.*; import javax.swing.border.EmptyBorder; -import java.awt.Color; +import java.awt.*; import java.util.List; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -84,7 +84,7 @@ public class VcsHelper implements JTemplateActionListener { // 开了设计器启动页面时一开始取不到VcsOperator,通过下面的切换环境事件再取,这边判断下 if (op != null) { try { - legacyMode = op.isLegacyMode(); + legacyMode = VcsRepository.getInstance().isLegacyMode(); root = WorkContext.getCurrent().isLocal() || WorkContext.getCurrent().isRoot(); } catch (Exception e) { legacyMode = true; @@ -96,7 +96,7 @@ public class VcsHelper implements JTemplateActionListener { @Override protected void on(Event event) { try { - legacyMode = WorkContext.getCurrent().get(VcsOperator.class).isLegacyMode(); + legacyMode = VcsRepository.getInstance().isLegacyMode(); FineLoggerFactory.getLogger().info("[VcsHelper] legacyMode:{}", legacyMode); } catch (Exception e) { //保险起见走老逻辑 @@ -217,22 +217,22 @@ public class VcsHelper implements JTemplateActionListener { public void run() { String fileName = getEditingFilename(); VcsOperator operator = WorkContext.getCurrent().get(VcsOperator.class); - VcsEntity entity = operator.getFileVersionByIndex(fileName, 0); + VcsEntity entity = VcsRepository.getInstance().getVersion(new VcsQuery(fileName, 0, null, null)); boolean replace = needDeleteVersion(entity); int latestFileVersion = 0; if (entity != null) { latestFileVersion = entity.getVersion(); } if (jt.getEditingFILE() instanceof VcsCacheFileNodeFile) { - operator.saveVersionFromCache(getCurrentUsername(), fileName, StringUtils.EMPTY, latestFileVersion + 1, replace); + VcsRepository.getInstance().saveVersionFromCache(new VcsBean(new VcsEntity(getCurrentUsername(), StringUtils.EMPTY, fileName, null, null, latestFileVersion + 1), replace)); String path = DesignerFrameFileDealerPane.getInstance().getSelectedOperation().getFilePath(); - List updatedList = WorkContext.getCurrent().get(VcsOperator.class).getVersions(path.replaceFirst(VCS_FILE_SLASH, StringUtils.EMPTY)); + List updatedList = VcsRepository.getInstance().getVersions(new VcsQuery(path.replaceFirst(VCS_FILE_SLASH, StringUtils.EMPTY))); SwingUtilities.invokeLater(() -> FileVersionTable.getInstance().updateModel(1, updatedList)); } else { - operator.saveVersion(getCurrentUsername(), fileName, StringUtils.EMPTY, latestFileVersion + 1, replace); + VcsRepository.getInstance().saveVersion(new VcsBean(new VcsEntity(getCurrentUsername(), StringUtils.EMPTY, fileName, null, null, latestFileVersion + 1), replace).setUseVersion(true)); } if (GcConfig.getInstance().isGcEnable()) { - operator.gc(); + VcsRepository.getInstance().gc(); } } @@ -252,21 +252,20 @@ public class VcsHelper implements JTemplateActionListener { moveVcs.execute(new Runnable() { @Override public void run() { - VcsOperator operator = WorkContext.getCurrent().get(VcsOperator.class); String oldPath = oldName.replaceFirst(VCS_FILE_SLASH, StringUtils.EMPTY); - List oldVcsEntities = operator.getVersions(oldPath); + List oldVcsEntities = VcsRepository.getInstance().getVersions(new VcsQuery(oldPath)); String replaceName = newName.replaceFirst(VCS_FILE_SLASH, StringUtils.EMPTY); for (VcsEntity oldVcsEntity : oldVcsEntities) { if (!VcsHelper.getInstance().isLegacyMode()) { - operator.renameVersion(oldVcsEntity, replaceName); + VcsRepository.getInstance().renameVersion(new VcsBean(oldVcsEntity, replaceName)); } else { - operator.saveVersion(oldVcsEntity.getUsername(), replaceName, oldVcsEntity.getCommitMsg(), oldVcsEntity.getVersion()); - operator.deleteVersion(oldPath, oldVcsEntity.getVersion()); + VcsRepository.getInstance().saveVersion(new VcsBean(new VcsEntity(oldVcsEntity.getUsername(), oldVcsEntity.getCommitMsg(), replaceName, null, null, oldVcsEntity.getVersion())).setUseVersion(true)); + VcsRepository.getInstance().deleteVersion(new VcsBean(new VcsEntity(null, null, oldPath, null, null, oldVcsEntity.getVersion()))); } } FineLoggerFactory.getLogger().debug("moveVcs success. from {} to {}", oldName, replaceName); if (GcConfig.getInstance().isGcEnable() && VcsHelper.getInstance().isLegacyMode()) { - operator.gc(); + VcsRepository.getInstance().gc(); } } }); @@ -314,7 +313,7 @@ public class VcsHelper implements JTemplateActionListener { public void fireAutoSaveVcs(final JTemplate jt) { String fileName = getEditingFilename(); VcsOperator operator = WorkContext.getCurrent().get(VcsOperator.class); - VcsEntity entity = operator.getFileVersionByIndex(fileName, 0); + VcsEntity entity = VcsRepository.getInstance().getVersion(new VcsQuery(fileName, 0, null, null)); boolean replace = needDeleteVersion(entity); int latestFileVersion = 0; if (entity != null) { @@ -327,22 +326,22 @@ public class VcsHelper implements JTemplateActionListener { private void doSave(JTemplate jt, String fileName, int latestFileVersion, boolean replace, VcsOperator operator) { if (jt.getEditingFILE() instanceof VcsCacheFileNodeFile) { - operator.saveVersionFromCache(getCurrentUsername(), fileName, StringUtils.EMPTY, latestFileVersion + 1, replace); + VcsRepository.getInstance().saveVersionFromCache(new VcsBean(new VcsEntity(getCurrentUsername(), StringUtils.EMPTY, fileName, null, null, latestFileVersion + 1), replace)); String path = DesignerFrameFileDealerPane.getInstance().getSelectedOperation().getFilePath(); - List updatedList = WorkContext.getCurrent().get(VcsOperator.class).getVersions(path.replaceFirst(VCS_FILE_SLASH, StringUtils.EMPTY)); + List updatedList = VcsRepository.getInstance().getVersions(new VcsQuery(path.replaceFirst(VCS_FILE_SLASH, StringUtils.EMPTY))); SwingUtilities.invokeLater(() -> FileVersionTable.getInstance().updateModel(1, updatedList)); } else { autoSave(jt, getCurrentUsername(), fileName, latestFileVersion + 1, replace, operator); } if (GcConfig.getInstance().isGcEnable()) { - operator.gc(); + VcsRepository.getInstance().gc(); } } private void autoSave(JTemplate jt, String currentUsername, String fileName, int nowVersion, boolean replace, VcsOperator operator) { try { if (JTemplate.isValid(jt) && !jt.isALLSaved()) { - operator.autoSave(currentUsername, fileName, StringUtils.EMPTY, nowVersion, jt.exportData(), replace); + VcsRepository.getInstance().autoSave(new VcsBean(new VcsEntity(currentUsername, StringUtils.EMPTY, fileName, null, null, nowVersion), replace, jt.exportData())); } } catch (Exception e) { FineLoggerFactory.getLogger().error(e.getMessage()); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/EditFileVersionDialog.java b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/EditFileVersionDialog.java index 2224bb1aec..64568feac4 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/EditFileVersionDialog.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/EditFileVersionDialog.java @@ -1,5 +1,11 @@ package com.fr.design.mainframe.vcs.ui; +import com.fine.swing.ui.layout.Column; +import com.fine.theme.utils.FineComponentsFactory; +import com.fine.theme.utils.FineLayoutBuilder; +import com.fine.theme.utils.FineUIScale; +import com.formdev.flatlaf.util.ScaledEmptyBorder; +import com.fr.design.border.FineBorderFactory; import com.fr.design.dialog.UIDialog; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.icontainer.UIScrollPane; @@ -10,17 +16,14 @@ import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.DesignerFrameFileDealerPane; import com.fr.design.utils.gui.GUICoreUtils; -import com.fr.log.FineLoggerFactory; import com.fr.report.entity.VcsEntity; import com.fr.stable.StringUtils; -import com.fr.workspace.WorkContext; -import com.fr.workspace.server.vcs.VcsOperator; - -import javax.swing.JPanel; -import java.awt.BorderLayout; -import java.awt.Component; -import java.awt.FlowLayout; -import java.awt.Frame; +import com.fr.workspace.server.entity.vcs.VcsBean; +import com.fr.workspace.server.entity.vcs.VcsQuery; +import com.fr.workspace.server.repository.vcs.VcsRepository; + +import javax.swing.*; +import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -47,7 +50,7 @@ public class EditFileVersionDialog extends UIDialog { initComponents(); setModal(true); setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Vcs_Save_Version")); - setSize(300, 220); + setSize(FineUIScale.scale(new Dimension(300, 220))); setResizable(false); GUICoreUtils.centerWindow(this); @@ -55,33 +58,38 @@ public class EditFileVersionDialog extends UIDialog { private void initComponents() { + Column centerColumn = new Column(); + centerColumn.setSpacing(10); + add(centerColumn, BorderLayout.CENTER); + JPanel fontPane = new JPanel(new BorderLayout()); - UILabel fontLabel = new UILabel(" " + Toolkit.i18nText("Fine-Design_Vcs_Version_Message") + ":"); + + UILabel fontLabel = new UILabel(Toolkit.i18nText("Fine-Design_Vcs_Version_Message")); fontLabel.setToolTipText(Toolkit.i18nText("Fine-Design_Vcs_Version_Message")); fontPane.add(fontLabel, BorderLayout.NORTH); msgTestArea.setBorder(null); - UIScrollPane scrollPane = new UIScrollPane(msgTestArea); - - UILabel versionTip = new UILabel(" " + Toolkit.i18nText("Fine-Design_Vcs_Version_Number") + ":"); + JPanel scrollPane = FineLayoutBuilder.asBorderLayoutWrapped(new UIScrollPane(msgTestArea)); + scrollPane.setBorder(FineBorderFactory.createWrappedRoundBorder()); + UILabel versionTip = new UILabel(Toolkit.i18nText("Fine-Design_Vcs_Version_Number")); versionTip.setToolTipText(Toolkit.i18nText("Fine-Design_Vcs_Version_Number")); Component[][] components = new Component[][]{ new Component[]{versionTip, versionLabel}, new Component[]{fontPane, scrollPane} }; double[] rowSizes = new double[]{25, 100}; - double[] columnSizes = new double[]{70, 200}; + double[] columnSizes = new double[]{70, 180}; - add(TableLayoutHelper.createTableLayoutPane(components, rowSizes, columnSizes), BorderLayout.CENTER); - - JPanel buttonPane = new JPanel(new FlowLayout(FlowLayout.RIGHT)); - add(buttonPane, BorderLayout.SOUTH); + JPanel pane = TableLayoutHelper.createTableLayoutPane(components, rowSizes, columnSizes); UIButton ok = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_OK")); UIButton cancel = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Design_Action_Cancel")); + JPanel buttonPane = FineComponentsFactory.createConfirmCancelButtonPane(ok, cancel); + + centerColumn.add(pane); + centerColumn.add(buttonPane); + centerColumn.setBorder(new ScaledEmptyBorder(10, 10, 10, 10)); - buttonPane.add(ok); - buttonPane.add(cancel); ok.addActionListener(new ActionListener() { @Override @@ -108,11 +116,12 @@ public class EditFileVersionDialog extends UIDialog { */ public void doOK() { entity.setCommitMsg(msgTestArea.getText()); - WorkContext.getCurrent().get(VcsOperator.class).updateVersion(entity); + VcsRepository.getInstance().updateVersion(new VcsBean(entity)); setVisible(false); String path = DesignerFrameFileDealerPane.getInstance().getSelectedOperation().getFilePath(); FileVersionTable table = FileVersionTable.getInstance(); - table.updateModel(table.getSelectedRow(), WorkContext.getCurrent().get(VcsOperator.class).getVersions(path.replaceFirst("/", StringUtils.EMPTY))); + + table.updateModel(table.getSelectedRow(), VcsRepository.getInstance().getVersions(new VcsQuery(path.replaceFirst("/", StringUtils.EMPTY)))); } public UITextArea getMsgTestArea() { diff --git a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionCellEditor.java b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionCellEditor.java index 8cff3ffbb1..7d161ead0d 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionCellEditor.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionCellEditor.java @@ -13,6 +13,7 @@ import com.fr.report.entity.VcsEntity; import com.fr.stable.AssistUtils; import com.fr.stable.StringUtils; import com.fr.workspace.WorkContext; +import com.fr.workspace.server.repository.vcs.VcsRepository; import com.fr.workspace.server.vcs.VcsOperator; import javax.swing.AbstractCellEditor; @@ -43,10 +44,10 @@ public class FileVersionCellEditor extends AbstractCellEditor implements TableCe return editor; } else if (row == 0) { String path = DesignerFrameFileDealerPane.getInstance().getSelectedOperation().getFilePath(); - fileOfVersion = vcsOperator.getFileOfCurrent(path.replaceFirst("/", "")); + fileOfVersion = VcsRepository.getInstance().getFileOfCurrent(path.replaceFirst("/", "")); } else { renderAndEditor.update((VcsEntity) value); - fileOfVersion = vcsOperator.getFileOfFileVersion(((VcsEntity) value).getFilename(), ((VcsEntity) value).getVersion()); + fileOfVersion = VcsRepository.getInstance().getFileOfFileVersion(((VcsEntity) value).getFilename(), ((VcsEntity) value).getVersion(), StringUtils.EMPTY); } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionDialog.java b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionDialog.java index f023b6b92f..57b9d27d5f 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionDialog.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionDialog.java @@ -1,6 +1,5 @@ package com.fr.design.mainframe.vcs.ui; -import com.fr.analysis.cloud.DateUtils; import com.fr.design.dialog.UIDialog; import com.fr.design.editor.editor.DateEditor; import com.fr.design.gui.date.UIDatePicker; @@ -11,18 +10,11 @@ import com.fr.design.i18n.Toolkit; import com.fr.design.mainframe.vcs.common.VcsHelper; import com.fr.report.entity.VcsEntity; import com.fr.stable.StringUtils; -import com.fr.workspace.WorkContext; -import com.fr.workspace.server.vcs.VcsOperator; +import com.fr.workspace.server.entity.vcs.VcsQuery; +import com.fr.workspace.server.repository.vcs.VcsRepository; -import javax.swing.AbstractAction; -import javax.swing.BorderFactory; -import javax.swing.Box; -import javax.swing.JPanel; -import java.awt.BorderLayout; -import java.awt.Dimension; -import java.awt.FlowLayout; -import java.awt.Frame; -import java.awt.Window; +import javax.swing.*; +import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Calendar; @@ -70,7 +62,7 @@ public class FileVersionDialog extends UIDialog { Date editorDate = dateEditor.getValue(); Date start = editorDate == null ? new Date(0) : editorDate; Date end = editorDate == null ? getLastHour() : new Date(start.getTime() + DELAY); - List vcsEntities = WorkContext.getCurrent().get(VcsOperator.class).getFilterVersions(fileName, start, end, textField.getText()); + List vcsEntities = VcsRepository.getInstance().getVersions(new VcsQuery(fileName, start, end, textField.getText())); FileVersionTable.getInstance().updateModel(1, vcsEntities); } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionRowPanel.java b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionRowPanel.java index 2bd441c19e..b6dce1fd8f 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionRowPanel.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionRowPanel.java @@ -10,19 +10,16 @@ import com.fr.design.mainframe.vcs.common.VcsHelper; import com.fr.log.FineLoggerFactory; import com.fr.report.entity.VcsEntity; import com.fr.stable.StringUtils; -import com.fr.workspace.WorkContext; -import com.fr.workspace.server.vcs.VcsOperator; +import com.fr.workspace.server.entity.vcs.VcsBean; +import com.fr.workspace.server.entity.vcs.VcsQuery; +import com.fr.workspace.server.repository.vcs.VcsRepository; -import javax.swing.Box; -import javax.swing.JOptionPane; -import javax.swing.JPanel; -import javax.swing.SwingConstants; +import javax.swing.*; import javax.swing.text.BadLocationException; import javax.swing.text.Style; import javax.swing.text.StyleConstants; import javax.swing.text.StyledDocument; -import java.awt.BorderLayout; -import java.awt.Color; +import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.text.SimpleDateFormat; @@ -65,7 +62,7 @@ public class FileVersionRowPanel extends JPanel { if (FineJOptionPane.showConfirmDialog(null, Toolkit.i18nText("Fine-Design_Vcs_Version_Revert_Confirm"), Toolkit.i18nText("Fine-Design_Vcs_Version_Revert_Title"), JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) { vcsEntity.setUsername(VcsHelper.getInstance().getCurrentUsername()); - WorkContext.getCurrent().get(VcsOperator.class).rollbackTo(vcsEntity); + VcsRepository.getInstance().rollbackTo(new VcsBean(vcsEntity)); FileVersionsPanel.getInstance().exitVcs(vcsEntity.getFilename()); } } @@ -79,14 +76,15 @@ public class FileVersionRowPanel extends JPanel { if (FineJOptionPane.showConfirmDialog(null, Toolkit.i18nText("Fine-Design_Vcs_Delete-Confirm"), Toolkit.i18nText("Fine-Design_Vcs_Remove"), JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) { try { - WorkContext.getCurrent().get(VcsOperator.class).deleteVersion(vcsEntity.getFilename(), vcsEntity.getVersion()); + VcsRepository.getInstance().deleteVersion(new VcsBean(new VcsEntity(null, null, vcsEntity.getFilename(), null, null, vcsEntity.getVersion()))); } catch (Exception e) { FineLoggerFactory.getLogger().error(e.getMessage()); } FileVersionTable table = (FileVersionTable) (FileVersionRowPanel.this.getParent()); String path = DesignerFrameFileDealerPane.getInstance().getSelectedOperation().getFilePath(); try { - table.updateModel(table.getSelectedRow() - 1, WorkContext.getCurrent().get(VcsOperator.class).getVersions(path.replaceFirst("/", ""))); + table.updateModel(table.getSelectedRow() - 1, + VcsRepository.getInstance().getVersions(new VcsQuery(path.replaceFirst("/", "")))); } catch (Exception e) { FineLoggerFactory.getLogger().error(e.getMessage()); } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionsPanel.java b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionsPanel.java index 58393a3067..3207c1fbc2 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionsPanel.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/FileVersionsPanel.java @@ -20,14 +20,11 @@ import com.fr.file.FileNodeFILE; import com.fr.file.filetree.FileNode; import com.fr.stable.StableUtils; import com.fr.stable.project.ProjectConstants; -import com.fr.workspace.WorkContext; -import com.fr.workspace.server.vcs.VcsOperator; - -import javax.swing.BorderFactory; -import javax.swing.Box; -import javax.swing.SwingConstants; -import java.awt.BorderLayout; -import java.awt.Dimension; +import com.fr.workspace.server.entity.vcs.VcsQuery; +import com.fr.workspace.server.repository.vcs.VcsRepository; + +import javax.swing.*; +import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -134,7 +131,8 @@ public class FileVersionsPanel extends BasicPane { } titleLabel.setText(filename); String path = DesignerFrameFileDealerPane.getInstance().getSelectedOperation().getFilePath(); - FileVersionTable.getInstance().updateModel(1, WorkContext.getCurrent().get(VcsOperator.class).getVersions(path.replaceFirst("/", ""))); + + FileVersionTable.getInstance().updateModel(1, VcsRepository.getInstance().getVersions(new VcsQuery(path.replaceFirst("/", "")))); } public void showFileVersionsPane() { diff --git a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/RecyclePane.java b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/RecyclePane.java index 20d7843034..d89838e362 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/RecyclePane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/RecyclePane.java @@ -2,29 +2,26 @@ package com.fr.design.mainframe.vcs.ui; import com.fine.theme.icon.LazyIcon; import com.fine.theme.light.ui.FineRoundBorder; +import com.fine.theme.utils.FineUIScale; import com.formdev.flatlaf.ui.FlatUIUtils; import com.formdev.flatlaf.util.ScaledEmptyBorder; -import com.fr.base.svg.IconUtils; import com.fr.design.dialog.BasicDialog; import com.fr.design.dialog.FineJOptionPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.i18n.Toolkit; import com.fr.design.mainframe.DesignerContext; -import com.fr.design.mainframe.vcs.VcsOperatorWorker; import com.fr.design.mainframe.vcs.TableEntity; import com.fr.design.mainframe.vcs.TableValueOperator; +import com.fr.design.mainframe.vcs.VcsOperatorWorker; import com.fr.design.mainframe.vcs.VcsProcessFailedWrapper; import com.fr.design.mainframe.vcs.VcsTableEntity; import com.fr.design.mainframe.vcs.VcsTableOperatorListener; import com.fr.report.entity.VcsEntity; import com.fr.stable.StringUtils; -import com.fr.workspace.WorkContext; -import com.fr.workspace.server.vcs.VcsOperator; +import com.fr.workspace.server.repository.vcs.VcsRepository; -import javax.swing.Icon; -import javax.swing.JOptionPane; -import javax.swing.JPanel; +import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -101,7 +98,7 @@ public class RecyclePane extends AbstractSupportSelectTablePane @Override protected List getTableList() { - List entityList = WorkContext.getCurrent().get(VcsOperator.class).getRecycleEntities(); + List entityList = VcsRepository.getInstance().getRecycleEntities(); List tableEntities = new ArrayList<>(); for (VcsEntity entity : entityList) { tableEntities.add(new VcsTableEntity(entity)); @@ -121,11 +118,11 @@ public class RecyclePane extends AbstractSupportSelectTablePane if (isNeedSearch()) { searchTextField = new UITextField(); searchTextField.setPlaceholder(Toolkit.i18nText("Fine-Design_Vcs_Start_Search")); - searchTextField.setColumns(COLUMNS_COUNT); + searchTextField.setPreferredSize(new Dimension(FineUIScale.scale(150), super.getPreferredSize().height)); UILabel searchLabel = new UILabel(ICON_SEARCH); searchLabel.setBorder(new ScaledEmptyBorder(0, 4, 0, 4)); searchTextField.setBorder(null); - leftPane = row(cell(searchLabel), cell(searchTextField).weight(1)).with(it -> { + leftPane = row(cell(searchLabel), cell(searchTextField)).with(it -> { it.setBorder(new FineRoundBorder()); it.setOpaque(true); it.setBackground(FlatUIUtils.getUIColor("background.normal", Color.WHITE)); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/RecycleSettingPane.java b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/RecycleSettingPane.java index 65549bc1a9..84903f848b 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/RecycleSettingPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/RecycleSettingPane.java @@ -10,7 +10,6 @@ import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ispinner.UISpinner; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; -import com.fr.design.layout.VerticalFlowLayout; import com.fr.design.mainframe.vcs.VcsRecycleSettingHelper; import com.fr.workspace.server.vcs.VcsConfig; @@ -63,7 +62,7 @@ public class RecycleSettingPane extends BasicPane { FineTabbedPane tabbedPane = FineTabbedPane.builder() .addTab(Toolkit.i18nText("Fine-Design_Vcs_Recycle_Content"), recycleScrollPane) .addTab(Toolkit.i18nText("Fine-Design_Basic_Carton_General_Settings"), settingScrollPane) - .withHeadRatio(0.3f).build(); + .withAdaptiveFit().build(); this.add(tabbedPane, BorderLayout.CENTER); } diff --git a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsCenterPane.java b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsCenterPane.java index b95b35b7de..d9d67e4dff 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsCenterPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsCenterPane.java @@ -9,7 +9,6 @@ import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.vcs.VcsOperatorWorker; - import com.fr.design.mainframe.vcs.VcsTableEntity; import com.fr.design.mainframe.vcs.VcsTableOperatorListener; import com.fr.design.mainframe.vcs.common.VcsCloseTemplateHelper; @@ -17,15 +16,9 @@ import com.fr.file.FileNodeFILE; import com.fr.file.filetree.FileNode; import com.fr.report.entity.VcsEntity; import com.fr.stable.StringUtils; -import com.fr.workspace.WorkContext; -import com.fr.workspace.server.vcs.VcsOperator; +import com.fr.workspace.server.repository.vcs.VcsRepository; -import javax.swing.Icon; -import javax.swing.JComponent; -import javax.swing.JOptionPane; -import javax.swing.JTable; -import javax.swing.SwingWorker; -import javax.swing.UIManager; +import javax.swing.*; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.util.ArrayList; @@ -211,7 +204,7 @@ public class VcsCenterPane extends VcsNewPane { @Override protected List getTableList() { - List entities = WorkContext.getCurrent().get(VcsOperator.class).getEveryVersion(); + List entities = VcsRepository.getInstance().getEveryVersion(); List tableEntities = new ArrayList<>(); for (VcsEntity entity : entities) { tableEntities.add(new VcsTableEntity(entity)); diff --git a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsNewPane.java b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsNewPane.java index f0615bfa49..5a413cf954 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsNewPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/vcs/ui/VcsNewPane.java @@ -1,7 +1,6 @@ package com.fr.design.mainframe.vcs.ui; import com.fine.theme.icon.LazyIcon; -import com.fr.base.svg.IconUtils; import com.fr.design.dialog.FineJOptionPane; import com.fr.design.file.HistoryTemplateListCache; import com.fr.design.file.MultiTemplateTabPane; @@ -18,8 +17,6 @@ import com.fr.design.mainframe.vcs.common.VcsCacheFileNodeFile; import com.fr.design.mainframe.vcs.common.VcsHelper; import com.fr.file.FileNodeFILE; import com.fr.file.filetree.FileNode; -import com.fr.file.filetree.FileNodes; -import com.fr.io.utils.ResourceIOUtils; import com.fr.report.InconsistentLockException; import com.fr.report.entity.VcsEntity; import com.fr.stable.StableUtils; @@ -27,16 +24,13 @@ import com.fr.stable.StringUtils; import com.fr.stable.project.ProjectConstants; import com.fr.workspace.WorkContext; import com.fr.workspace.resource.WorkResource; +import com.fr.workspace.server.entity.vcs.VcsBean; +import com.fr.workspace.server.entity.vcs.VcsQuery; +import com.fr.workspace.server.repository.vcs.VcsRepository; import com.fr.workspace.server.vcs.VcsFileUtils; -import com.fr.workspace.server.vcs.VcsOperator; import com.fr.workspace.server.vcs.v2.VcsTaskResult; -import javax.swing.Icon; -import javax.swing.JComponent; -import javax.swing.JOptionPane; -import javax.swing.JTable; -import javax.swing.SwingWorker; -import javax.swing.UIManager; +import javax.swing.*; import java.awt.*; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; @@ -196,7 +190,7 @@ public class VcsNewPane extends RecyclePane { //step1.设置还原的用户名 entity.setUsername(VcsHelper.getInstance().getCurrentUsername()); //step2.rollback到指定版本 - WorkContext.getCurrent().get(VcsOperator.class).rollbackTo(entity); + VcsRepository.getInstance().rollbackTo(new VcsBean(entity)); //最里面的文件系统的write会吞异常,这边就一直默认成功吧,日志里会体现失败的情况 return new VcsTaskResult(true); } @@ -294,8 +288,7 @@ public class VcsNewPane extends RecyclePane { @Override protected String doInBackground() throws Exception { //step1.将指定版本的历史文件读取出来,加上前缀放到cache中 - VcsOperator vcsOperator = WorkContext.getCurrent().get(VcsOperator.class); - String fileOfVersion = vcsOperator.getFileOfFileVersion( + String fileOfVersion = VcsRepository.getInstance().getFileOfFileVersion( entity.getFilename(), entity.getVersion(), Toolkit.i18nText("Fine-Design_Vcs_Prefix", entity.getVersion())); @@ -320,7 +313,7 @@ public class VcsNewPane extends RecyclePane { @Override protected List getTableList() { - List entityList = WorkContext.getCurrent().get(VcsOperator.class).getVersions(VcsFileUtils.dealWithFilePath(filePath)); + List entityList = VcsRepository.getInstance().getVersions(new VcsQuery(VcsFileUtils.dealWithFilePath(filePath))); List tableEntities = new ArrayList<>(); for (VcsEntity entity : entityList) { tableEntities.add(new VcsTableEntity(entity)); diff --git a/designer-base/src/main/java/com/fr/design/metric/AbstractDesignerMetric.java b/designer-base/src/main/java/com/fr/design/metric/AbstractDesignerMetric.java new file mode 100644 index 0000000000..97c9cfac48 --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/metric/AbstractDesignerMetric.java @@ -0,0 +1,39 @@ +package com.fr.design.metric; + +import com.fanruan.carina.Carina; +import com.fanruan.config.bbs.FineBBSConfigProvider; +import com.fr.config.MarketConfig; +import com.fr.design.DesignerEnvManager; +import com.fr.general.GeneralUtils; +import com.fr.json.JSONObject; +import org.jetbrains.annotations.NotNull; + +/** + * 设计器埋点抽象 + * + * @author Bruce.Deng + * @since 11.0 + * Created on 2024/9/10 + */ +public abstract class AbstractDesignerMetric { + + public static final String TIME = "time"; + + public static final String DESIGNER_ID = "designerId"; + + public static final String DESIGNER_VERSION = "designerVersion"; + + public static final String USERID = "userId"; + + public static final String APPID = "appId"; + + public static final String DEFAULT_MONITOR_URL = "https://cloud.fanruan.com/api/monitor/"; + + protected void addDefaultMetric(@NotNull JSONObject info) { + info.put(TIME, System.currentTimeMillis()); + info.put(DESIGNER_ID, DesignerEnvManager.getEnvManager().getUUID()); + info.put(DESIGNER_VERSION, GeneralUtils.getVersion()); + info.put(USERID, Carina.config(FineBBSConfigProvider.class).getBbsUid()); + info.put(APPID, MarketConfig.getInstance().getCloudOperationMaintenanceId()); + } +} diff --git a/designer-base/src/main/java/com/fr/design/os/impl/PMDialogAction.java b/designer-base/src/main/java/com/fr/design/os/impl/PMDialogAction.java index d4daa8f8bd..bedb7bc964 100644 --- a/designer-base/src/main/java/com/fr/design/os/impl/PMDialogAction.java +++ b/designer-base/src/main/java/com/fr/design/os/impl/PMDialogAction.java @@ -1,41 +1,31 @@ package com.fr.design.os.impl; -import com.fr.config.ServerPreferenceConfig; -import com.fr.design.DesignerEnvManager; -import com.fr.design.extra.WebViewDlgHelper; -import com.fr.design.jdk.JdkVersion; import com.fr.design.upm.UpmFinder; import com.fr.design.utils.DesignUtils; -import com.fr.stable.StableUtils; -import com.fr.stable.os.Arch; +import com.fr.log.FineLoggerFactory; import com.fr.stable.os.OperatingSystem; import com.fr.stable.os.support.OSBasedAction; /** * 插件管理窗口 + * * @author pengda * @date 2019/10/9 */ public class PMDialogAction implements OSBasedAction { private static String PLUGIN_MANAGER_ROUTE = "#management/plugin"; + @Override public void execute(Object... objects) { - if(Arch.getArch() == Arch.ARM || OperatingSystem.isLinux() || SupportOSImpl.MACOS_WEB_PLUGIN_MANAGEMENT.support()){ - DesignUtils.visitEnvServerByParameters( PLUGIN_MANAGER_ROUTE,null,null); - return; - } - if (checkUPMSupport()) { + if (OperatingSystem.isLinux()) { + DesignUtils.visitEnvServerByParameters(PLUGIN_MANAGER_ROUTE, null, null); + return; + } + try { UpmFinder.showUPMDialog(); - } else { - WebViewDlgHelper.createPluginDialog(); + } catch (Throwable e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + DesignUtils.visitEnvServerByParameters(PLUGIN_MANAGER_ROUTE, null, null); } } - - private boolean checkUPMSupport() { - return ServerPreferenceConfig.getInstance().isUseOptimizedUPM() - || SupportOSImpl.MACOS_NEW_PLUGIN_MANAGEMENT.support() - || DesignerEnvManager.getEnvManager().isUseOptimizedUPM4Adapter() - //默认开启 - || DesignerEnvManager.getEnvManager().isUseNewPluginFirst(); - } } diff --git a/designer-base/src/main/java/com/fr/design/os/impl/SupportOSImpl.java b/designer-base/src/main/java/com/fr/design/os/impl/SupportOSImpl.java index d8eda915b7..663f464749 100644 --- a/designer-base/src/main/java/com/fr/design/os/impl/SupportOSImpl.java +++ b/designer-base/src/main/java/com/fr/design/os/impl/SupportOSImpl.java @@ -2,7 +2,6 @@ package com.fr.design.os.impl; import com.fr.base.FRContext; import com.fr.design.config.DesignerProperties; -import com.fr.design.jdk.JdkVersion; import com.fr.general.CloudCenter; import com.fr.general.GeneralContext; import com.fr.json.JSON; @@ -31,30 +30,33 @@ public enum SupportOSImpl implements SupportOS { * 屏蔽登录入口 */ BBS_USER_LOGIN_PANE { - public boolean support(){ - return Arch.getArch() != Arch.ARM && DesignerProperties.getInstance().isSupportLoginEntry(); + @Override + public boolean support() { + return DesignerProperties.getInstance().isSupportLoginEntry(); } }, /** * Linux系统屏蔽透明度 */ - OPACITY{ - public boolean support(){ + OPACITY { + @Override + public boolean support() { return !OperatingSystem.isLinux(); } }, /** * Linux系统屏蔽FineUI选项 */ - FINEUI{ - public boolean support(){ + FINEUI { + @Override + public boolean support() { return !OperatingSystem.isLinux(); } }, /** * 自动更新推送 */ - AUTOPUSHUPDATE{ + AUTOPUSHUPDATE { @Override public boolean support() { boolean isLocalEnv = WorkContext.getCurrent().isLocal(); @@ -75,7 +77,7 @@ public enum SupportOSImpl implements SupportOS { /** * BBS窗口 */ - BBSDIALOG{ + BBSDIALOG { @Override public boolean support() { return FRContext.isChineseEnv() && !OperatingSystem.isMacos() && Arch.getArch() != Arch.ARM; @@ -106,7 +108,7 @@ public enum SupportOSImpl implements SupportOS { } }, - + VM_OPTIONS_ADAPTER { @Override public boolean support() { @@ -117,7 +119,6 @@ public enum SupportOSImpl implements SupportOS { /** * 原生文件选择器弹窗 * https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8019464 mac下原生弹窗国际化设置无效,jdk11中有修复 - * */ NATIVE_CHOOSER { @Override @@ -133,23 +134,7 @@ public enum SupportOSImpl implements SupportOS { } }, - MACOS_NEW_PLUGIN_MANAGEMENT { - @Override - public boolean support() { - return JdkVersion.GE_9.support() && OperatingSystem.isMacos() && getMacOsVersion() < BIG_SUR_VERSION_NUMBER; - } - }, - - - MACOS_WEB_PLUGIN_MANAGEMENT { - @Override - public boolean support() { - return JdkVersion.GE_9.support() && OperatingSystem.isMacos() && getMacOsVersion() >= BIG_SUR_VERSION_NUMBER; - } - }, - OLD_STYLE_CHOOSER { - @Override public boolean support() { boolean javafxExist = true; @@ -196,23 +181,9 @@ public enum SupportOSImpl implements SupportOS { DESIGNER_LOGIN { @Override public boolean support() { - if (OperatingSystem.isLinux()) { - return false; - } - return !OperatingSystem.isMacos() || getMacOsVersion() < BIG_SUR_VERSION_NUMBER; - } - }; - - private static final int BIG_SUR_VERSION_NUMBER = 16; - - protected int getMacOsVersion() { - String version = System.getProperty("os.version"); - String[] versionSlice = version.split("\\."); - try { - return Integer.parseInt(versionSlice[1]); - } catch (Exception ignored) { - return 0; + return !OperatingSystem.isLinux(); } } + } diff --git a/designer-base/src/main/java/com/fr/design/parameter/ParameterInputPane.java b/designer-base/src/main/java/com/fr/design/parameter/ParameterInputPane.java index 7c8f675b1e..6c34eb9618 100644 --- a/designer-base/src/main/java/com/fr/design/parameter/ParameterInputPane.java +++ b/designer-base/src/main/java/com/fr/design/parameter/ParameterInputPane.java @@ -3,6 +3,7 @@ */ package com.fr.design.parameter; +import com.fine.theme.utils.FineUIUtils; import com.fr.base.BaseFormula; import com.fr.base.StoreProcedureParameter; import com.fr.base.Utils; @@ -75,8 +76,8 @@ public class ParameterInputPane extends BasicPane { //Content Pane. JPanel contentPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); - this.add(new JScrollPane(contentPane), BorderLayout.CENTER); - contentPane.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameters") + ":")); + this.add(FineUIUtils.wrapComponentWithTitle(new JScrollPane( + contentPane), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameters")), BorderLayout.CENTER); flowTableLayoutHelper = new FlowTableLayoutHelper(); diff --git a/designer-base/src/main/java/com/fr/design/parameter/ParameterPane.java b/designer-base/src/main/java/com/fr/design/parameter/ParameterPane.java index 7d1f65a789..37d601f568 100644 --- a/designer-base/src/main/java/com/fr/design/parameter/ParameterPane.java +++ b/designer-base/src/main/java/com/fr/design/parameter/ParameterPane.java @@ -45,14 +45,16 @@ public class ParameterPane extends BasicBeanPane { valueEditor = ValueEditorPaneFactory.createBasicValueEditorPane(); // richer:要排列显示的控件 JPanel centerPane = column(LayoutConstants.VERTICAL_GAP, - row(20, - cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Name"))).weight(0.1), - cell(nameTextField).weight(0.8), - flex(0.1)), - row(20, - cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Default_Value"))).weight(0.1), - cell(valueEditor).weight(0.8), - flex(0.1)) + row( + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Name"))).weight(0.2), + cell(nameTextField).weight(0.7), + flex(0.1) + ), + row( + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Default_Value"))).weight(0.2), + cell(valueEditor).weight(0.7), + flex(0.1) + ) ).getComponent(); centerPane.setBorder(new ScaledEmptyBorder(0, 20, 0, 0)); this.add(centerPane, BorderLayout.CENTER); diff --git a/designer-base/src/main/java/com/fr/design/present/dict/DatabaseDictPane.java b/designer-base/src/main/java/com/fr/design/present/dict/DatabaseDictPane.java index 5c157a7cd9..aa126574ea 100644 --- a/designer-base/src/main/java/com/fr/design/present/dict/DatabaseDictPane.java +++ b/designer-base/src/main/java/com/fr/design/present/dict/DatabaseDictPane.java @@ -6,6 +6,7 @@ import com.fr.base.TableData; import com.fr.data.core.DataCoreUtils; import com.fr.data.core.db.DBUtils; import com.fr.data.core.db.dialect.Dialect; +import com.fr.data.impl.Connection; import com.fr.data.impl.DatabaseDictionary; import com.fr.data.impl.NameDatabaseConnection; import com.fr.design.beans.FurtherBasicBeanPane; @@ -14,6 +15,7 @@ import com.fr.design.data.DesignTableDataManager; import com.fr.design.data.datapane.ChoosePane; import com.fr.design.data.datapane.DataBaseItems; import com.fr.design.data.datapane.VerticalChoosePane; +import com.fr.design.data.datapane.preview.ConnectionInfoBeanHelper; import com.fr.design.data.datapane.preview.PreviewLabel.Previewable; import com.fr.design.editor.DoubleDeckValueEditorPane; import com.fr.design.editor.editor.ColumnIndexEditor; @@ -25,6 +27,7 @@ import com.fr.design.event.UIObserverListener; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.UILabel; import com.fr.stable.StringUtils; +import com.fr.workspace.server.repository.connection.ConnectionRepository; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; @@ -176,8 +179,9 @@ public class DatabaseDictPane extends FurtherBasicBeanPane i if (StringUtils.isBlank(para.getDatabaseName())) { dbDict.setDatabaseConnection(null); } else { - database = DBUtils.checkDBConnection(para.getDatabaseName()); - if (database != null) { + Connection connection = ConnectionInfoBeanHelper.createConnection(ConnectionRepository.getInstance().getByName(para.getDatabaseName())); + if (connection != null) { + database = new NameDatabaseConnection(para.getDatabaseName()); dbDict.setDatabaseConnection(database); } } diff --git a/designer-base/src/main/java/com/fr/design/remote/action/RemoteDesignAuthManagerAction.java b/designer-base/src/main/java/com/fr/design/remote/action/RemoteDesignAuthManagerAction.java index 5b00029226..397308f037 100644 --- a/designer-base/src/main/java/com/fr/design/remote/action/RemoteDesignAuthManagerAction.java +++ b/designer-base/src/main/java/com/fr/design/remote/action/RemoteDesignAuthManagerAction.java @@ -12,7 +12,7 @@ import com.fr.report.DesignAuthority; import com.fr.report.constant.RoleType; import com.fr.stable.ArrayUtils; import com.fr.workspace.WorkContext; -import com.fr.workspace.server.authority.AuthorityOperator; +import com.fr.workspace.server.repository.authority.RemoteAuthorityRepository; import java.awt.event.ActionEvent; import java.util.ArrayList; @@ -41,7 +41,7 @@ public class RemoteDesignAuthManagerAction extends UpdateAction { if (!WorkContext.getCurrent().isLocal()) { try { // 远程设计获取全部设计成员的权限列表 - DesignAuthority[] authorities = WorkContext.getCurrent().get(AuthorityOperator.class).getAuthorities(); + DesignAuthority[] authorities = RemoteAuthorityRepository.getInstance().getAllAuthorities(); List userAuthorities = new ArrayList(); List customAuthorities = new ArrayList(); if (authorities != null) { @@ -75,7 +75,7 @@ public class RemoteDesignAuthManagerAction extends UpdateAction { if (!WorkContext.getCurrent().isLocal()) { boolean success = false; try { - success = WorkContext.getCurrent().get(AuthorityOperator.class).updateAuthorities(authorities); + success = RemoteAuthorityRepository.getInstance().updateAuthorities(authorities); } catch (Exception e) { FineLoggerFactory.getLogger().error(e.getMessage(), e); } diff --git a/designer-base/src/main/java/com/fr/design/remote/button/IconButton.java b/designer-base/src/main/java/com/fr/design/remote/button/IconButton.java index d2d04b8d4c..013a3d1e7d 100644 --- a/designer-base/src/main/java/com/fr/design/remote/button/IconButton.java +++ b/designer-base/src/main/java/com/fr/design/remote/button/IconButton.java @@ -1,5 +1,6 @@ package com.fr.design.remote.button; +import com.fine.theme.icon.LazyIcon; import com.fr.base.BaseUtils; import com.fr.design.utils.gui.GUICoreUtils; import com.fr.stable.StringUtils; @@ -26,7 +27,7 @@ public final class IconButton extends JButton { } public IconButton() { - this(BaseUtils.readIcon("com/fr/design/remote/images/icon_tab_close_normal.png")); + this(new LazyIcon("close")); } @Override diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/AbstractListControlPane.java b/designer-base/src/main/java/com/fr/design/remote/ui/AbstractListControlPane.java index bca0422eab..985394a6e4 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/AbstractListControlPane.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/AbstractListControlPane.java @@ -1,8 +1,12 @@ package com.fr.design.remote.ui; +import com.fine.theme.icon.LazyIcon; +import com.formdev.flatlaf.ui.FlatUIUtils; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.BaseUtils; import com.fr.design.actions.UpdateAction; import com.fr.design.beans.BasicBeanPane; +import com.fr.design.border.FineBorderFactory; import com.fr.design.dialog.BasicDialog; import com.fr.design.dialog.BasicPane; import com.fr.design.dialog.DialogActionAdapter; @@ -35,8 +39,7 @@ import javax.swing.ListSelectionModel; import javax.swing.SwingUtilities; import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; -import java.awt.BorderLayout; -import java.awt.CardLayout; +import java.awt.*; import java.awt.event.ActionEvent; import java.util.ArrayList; import java.util.List; @@ -100,7 +103,6 @@ public abstract class AbstractListControlPane extends BasicPane { // 左右分割布局 JSplitPane mainSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, true, leftPane, cardPane); - mainSplitPane.setBorder(BorderFactory.createLineBorder(GUICoreUtils.getTitleLineBorderColor())); mainSplitPane.setOneTouchExpandable(true); add(mainSplitPane, BorderLayout.CENTER); mainSplitPane.setDividerLocation(shortCuts.length * SHORT_WIDTH); @@ -120,6 +122,12 @@ public abstract class AbstractListControlPane extends BasicPane { toolbarDef.addShortCut(sj.getShortCut()); } toolBar = ToolBarDef.createJToolBar(); + toolBar.setBackground(FlatUIUtils.getUIColor("background.normal", Color.WHITE)); + toolBar.setBorder(BorderFactory.createCompoundBorder( + FineBorderFactory.createUnderlineBorder(FlatUIUtils.getUIColor("defaultBorderColor", Color.GRAY)), + new ScaledEmptyBorder(3, 0, 3, 0) + )); + toolBar.setBorderPainted(true); toolbarDef.updateToolBar(toolBar); leftPane.add(toolBar, BorderLayout.NORTH); } @@ -128,7 +136,9 @@ public abstract class AbstractListControlPane extends BasicPane { private void initLeftList(JPanel leftPane) { authorityList = createList(); authorityList.setName(LIST_NAME); + authorityList.setBackground(FlatUIUtils.getUIColor("background.normal", Color.WHITE)); leftPane.add(new UIScrollPane(authorityList), BorderLayout.CENTER); + leftPane.setBorder(FineBorderFactory.createWrappedRoundBorder()); authorityList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); @@ -503,7 +513,7 @@ public abstract class AbstractListControlPane extends BasicPane { AddItemUpdateAction() { this.setName(Toolkit.i18nText("Fine-Design_Basic_Action_Choose")); this.setMnemonic('A'); - this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/buttonicon/add.png")); + this.setSmallIcon(new LazyIcon("add_popup")); } @Override @@ -572,8 +582,7 @@ public abstract class AbstractListControlPane extends BasicPane { RemoveItemAction() { this.setName(Toolkit.i18nText("Fine-Design_Basic_Action_Remove")); this.setMnemonic('R'); - this.setSmallIcon(BaseUtils - .readIcon(IconPathConstants.TD_REMOVE_ICON_PATH)); + this.setSmallIcon(new LazyIcon("remove")); } @Override diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/AbstractManagerPane.java b/designer-base/src/main/java/com/fr/design/remote/ui/AbstractManagerPane.java index c92a7a8513..0259cd5797 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/AbstractManagerPane.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/AbstractManagerPane.java @@ -1,5 +1,11 @@ package com.fr.design.remote.ui; +import com.fine.theme.light.ui.FineRoundBorder; +import com.fine.theme.utils.FineUIScale; +import com.fine.theme.utils.FineUIStyle; +import com.fine.theme.utils.FineUIUtils; +import com.formdev.flatlaf.ui.FlatUIUtils; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.BaseUtils; import com.fr.design.constants.LayoutConstants; import com.fr.design.dialog.BasicPane; @@ -46,6 +52,9 @@ import java.util.Arrays; import java.util.Collection; import java.util.List; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.row; + /** * 选择设计角色、用户面板的基类 @@ -197,7 +206,7 @@ public abstract class AbstractManagerPane extends BasicPane { public AbstractManagerPane() { - this.setBorder(BorderFactory.createEmptyBorder(0, 4, 0, 4)); + this.setBorder(new ScaledEmptyBorder(10, 10, 10, 10)); this.setLayout(new BorderLayout()); this.add( TableLayoutHelper.createCommonTableLayoutPane( @@ -235,22 +244,19 @@ public abstract class AbstractManagerPane extends BasicPane { } protected abstract JPanel leftPanel(); + protected abstract String leftPanelTitle(); private JPanel createLeftPanel() { JPanel content = leftPanel(); // 搜索 - JPanel searchPanel = new JPanel(new FlowLayout(FlowLayout.LEFT, 0, 5)); - searchPanel.setBorder(BorderFactory.createEmptyBorder(0, 5, 0, 5)); - keyField.setPreferredSize(new Dimension(270, 20)); + JPanel searchPanel = new JPanel(new BorderLayout()); keyField.requestFocus(); keyField.addKeyListener(keyFieldKeyListener); keyField.getDocument().addDocumentListener(documentListener); - keyButton.setIcon(BaseUtils.readIcon("com/fr/design/images/buttonicon/user_search_normal.png")); - keyButton.setToolTipText(Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Search")); + keyButton.setText(Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Search")); keyButton.addActionListener(keyButtonActionListener); - searchPanel.add(keyField); - searchPanel.add(keyButton); + searchPanel.add(row(10, cell(keyField).weight(0.45), cell(keyButton).weight(0.1)).getComponent()); // 内容列表 addingListModel = new DefaultListModel<>(); @@ -283,7 +289,10 @@ public abstract class AbstractManagerPane extends BasicPane { content.add(searchPanel, BorderLayout.NORTH); content.add(listPane, BorderLayout.CENTER); - return content; + + JPanel pane = new JPanel(new BorderLayout()); + pane.add(FineUIUtils.wrapComponentWithTitle(content, leftPanelTitle())); + return pane; } protected abstract AddingMemberListCellRender getAddingMemberListCellRender(); @@ -291,6 +300,7 @@ public abstract class AbstractManagerPane extends BasicPane { protected abstract AddedMemberListCellRender getAddedMemberListCellRender(); protected abstract JPanel rightPanel(); + protected abstract String rightPanelTitle(); private JPanel createRightPanel() { JPanel content = rightPanel(); @@ -301,8 +311,8 @@ public abstract class AbstractManagerPane extends BasicPane { Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Selected_Member_Count", String.valueOf(addedMembers.size())) ); - countLabel.setBorder(BorderFactory.createEmptyBorder(7, 12, 8, 0)); - countLabel.setForeground(new Color(0x8F8F92)); + FineUIStyle.setStyle(countLabel, FineUIStyle.LABEL_TIP); + countLabel.setPreferredSize(new Dimension((int) countLabel.getPreferredSize().getWidth(), FineUIScale.scale(20))); addedListModel = new DefaultListModel<>(); addedList = new AddedMemberList(addedListModel); @@ -316,7 +326,9 @@ public abstract class AbstractManagerPane extends BasicPane { content.add(countLabel, BorderLayout.NORTH); content.add(listPane, BorderLayout.CENTER); - return content; + JPanel pane = new JPanel(new BorderLayout()); + pane.add(FineUIUtils.wrapComponentWithTitle(content, rightPanelTitle())); + return pane; } diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityEditorPane.java b/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityEditorPane.java index da5817b853..3ac9cdc9d4 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityEditorPane.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityEditorPane.java @@ -1,5 +1,7 @@ package com.fr.design.remote.ui; +import com.fine.theme.utils.FineUIUtils; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.beans.BasicBeanPane; import com.fr.design.border.UITitledBorder; import com.fr.design.gui.icontainer.UIScrollPane; @@ -30,20 +32,13 @@ public class AuthorityEditorPane extends BasicBeanPane { // 模板设计权限配置 public AuthorityEditorPane() { this.setLayout(FRGUIPaneFactory.createBorderLayout()); - this.setBorder( - BorderFactory.createCompoundBorder( - new EmptyBorder(6, 0, 6, 6), - UITitledBorder.createBorderWithTitle( - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Template_Authority_Config") - ) - ) - ); IOFileNodeFilter filter = new IOFileNodeFilter(new String[]{".cptx", ".cpt", ".class", ".frm", ".form"}); tree.setDigIn(true); tree.setFileNodeFilter(filter); UIScrollPane scrollPane = new UIScrollPane(tree); scrollPane.setBorder(BorderFactory.createEmptyBorder()); - this.add(scrollPane, BorderLayout.CENTER); + this.add(FineUIUtils.wrapComponentWithTitle(scrollPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Template_Authority_Config")), BorderLayout.CENTER); + this.setBorder(new ScaledEmptyBorder(0, 15, 0, 0)); tree.refreshEnv(); } diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityListCustomRolePane.java b/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityListCustomRolePane.java index 3ae6a097b3..fbb3259f7a 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityListCustomRolePane.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityListCustomRolePane.java @@ -1,5 +1,6 @@ package com.fr.design.remote.ui; +import com.fine.theme.icon.LazyIcon; import com.fr.base.BaseUtils; import com.fr.design.i18n.Toolkit; import com.fr.design.remote.RemoteDesignAuthorityCreator; @@ -15,7 +16,7 @@ public class AuthorityListCustomRolePane extends AbstractListControlPane { new RemoteDesignAuthorityCreator( // 远程设计用户 Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Custom"), - BaseUtils.readIcon("com/fr/design/remote/images/icon_Member_normal@1x.png"), + new LazyIcon("member"), DesignAuthority.class, AuthorityEditorPane.class) }; diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityListUserPane.java b/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityListUserPane.java index ccc85049a5..5b0abd8e2c 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityListUserPane.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityListUserPane.java @@ -1,5 +1,6 @@ package com.fr.design.remote.ui; +import com.fine.theme.icon.LazyIcon; import com.fr.base.BaseUtils; import com.fr.design.i18n.Toolkit; import com.fr.design.remote.RemoteDesignAuthorityCreator; @@ -15,7 +16,7 @@ public class AuthorityListUserPane extends AbstractListControlPane { new RemoteDesignAuthorityCreator( // 远程设计用户 Toolkit.i18nText("Fine-Design_Basic_Remote_Design_User"), - BaseUtils.readIcon("com/fr/design/remote/images/icon_Member_normal@1x.png"), + new LazyIcon("member"), DesignAuthority.class, AuthorityEditorPane.class) }; diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityManagerPane.java b/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityManagerPane.java index 2e68cd27a9..648f816372 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityManagerPane.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityManagerPane.java @@ -1,6 +1,7 @@ package com.fr.design.remote.ui; import com.fr.design.dialog.BasicPane; +import com.fr.design.gui.frpane.FineTabbedPane; import com.fr.design.gui.frpane.UITabbedPane; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; @@ -18,12 +19,12 @@ public class AuthorityManagerPane extends BasicPane { this.setLayout(FRGUIPaneFactory.createBorderLayout()); //Tabbed Pane - UITabbedPane tabbedPane = new UITabbedPane(); + FineTabbedPane tabbedPane = FineTabbedPane.builder() + .addTab(Toolkit.i18nText("Fine-Design_Basic_User"), userList) + .addTab(Toolkit.i18nText("Fine-Design_Basic_Role"), roleList) + .withHeadRatio(0.2f).build(); this.add(tabbedPane, BorderLayout.CENTER); - tabbedPane.addTab(Toolkit.i18nText("Fine-Design_Basic_User"), userList); - tabbedPane.addTab(Toolkit.i18nText("Fine-Design_Basic_Role"), roleList); - } @Override diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/CustomRoleManagerPane.java b/designer-base/src/main/java/com/fr/design/remote/ui/CustomRoleManagerPane.java index eeedd6eca6..a035153e5a 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/CustomRoleManagerPane.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/CustomRoleManagerPane.java @@ -1,19 +1,15 @@ package com.fr.design.remote.ui; -import com.fr.design.border.UITitledBorder; import com.fr.design.i18n.Toolkit; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.remote.ui.list.AddedMemberListCellRender; import com.fr.design.remote.ui.list.AddingMemberListCellRender; import com.fr.design.remote.ui.list.cell.AddedCustomRoleListCellRender; import com.fr.design.remote.ui.list.cell.AddingCustomRoleListCellRender; -import com.fr.workspace.WorkContext; import com.fr.workspace.server.authority.RemoteDesignMember; -import com.fr.workspace.server.authority.decision.DecisionOperator; +import com.fr.workspace.server.repository.authority.RemoteAuthorityRepository; -import javax.swing.BorderFactory; -import javax.swing.JPanel; -import javax.swing.border.EmptyBorder; -import java.awt.BorderLayout; +import javax.swing.*; import java.util.Collection; @@ -30,37 +26,26 @@ public class CustomRoleManagerPane extends AbstractManagerPane { @Override protected JPanel rightPanel(){ - JPanel content = new JPanel(new BorderLayout()); - - content.setBorder( - BorderFactory.createCompoundBorder( - new EmptyBorder(6, 0, 0, 0), - UITitledBorder.createBorderWithTitle( - // 已选择的设计角色 - Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Selected_Custom"), - 4 - ) - ) - ); + JPanel content = new JPanel(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); return content; } @Override - protected JPanel leftPanel(){ - JPanel content = new JPanel(new BorderLayout()); + protected String rightPanelTitle() { + return Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Selected_Custom"); + } - content.setBorder( - BorderFactory.createCompoundBorder( - new EmptyBorder(6, 0, 0, 0), - UITitledBorder.createBorderWithTitle( - // 决策系统角色 - Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Decision_Custom"), - 4) - ) - ); + @Override + protected JPanel leftPanel(){ + JPanel content = new JPanel(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); return content; } + @Override + protected String leftPanelTitle() { + return Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Decision_Custom"); + } + @Override protected AddingMemberListCellRender getAddingMemberListCellRender() { return new AddingCustomRoleListCellRender(); @@ -73,11 +58,11 @@ public class CustomRoleManagerPane extends AbstractManagerPane { @Override protected Collection getMembers(String userName, String keyWord){ - return WorkContext.getCurrent().get(DecisionOperator.class).getCustoms(userName, keyWord); + return RemoteAuthorityRepository.getInstance().getCustoms(userName, keyWord, 1, 50); } @Override protected Collection getMembers(String userName, String keyWord, int pageNum, int count){ - return WorkContext.getCurrent().get(DecisionOperator.class).getCustoms(userName, keyWord, pageNum, count); + return RemoteAuthorityRepository.getInstance().getCustoms(userName, keyWord, pageNum, count); } } diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/UserManagerPane.java b/designer-base/src/main/java/com/fr/design/remote/ui/UserManagerPane.java index 900f98031b..963ddddd18 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/UserManagerPane.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/UserManagerPane.java @@ -1,19 +1,15 @@ package com.fr.design.remote.ui; -import com.fr.design.border.UITitledBorder; import com.fr.design.i18n.Toolkit; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.remote.ui.list.AddedMemberListCellRender; import com.fr.design.remote.ui.list.AddingMemberListCellRender; import com.fr.design.remote.ui.list.cell.AddedUserListCellRender; import com.fr.design.remote.ui.list.cell.AddingUserListCellRender; -import com.fr.workspace.WorkContext; import com.fr.workspace.server.authority.RemoteDesignMember; -import com.fr.workspace.server.authority.decision.DecisionOperator; +import com.fr.workspace.server.repository.authority.RemoteAuthorityRepository; -import javax.swing.BorderFactory; -import javax.swing.JPanel; -import javax.swing.border.EmptyBorder; -import java.awt.BorderLayout; +import javax.swing.*; import java.util.Collection; @@ -30,37 +26,26 @@ public class UserManagerPane extends AbstractManagerPane { @Override protected JPanel rightPanel(){ - JPanel content = new JPanel(new BorderLayout()); - - content.setBorder( - BorderFactory.createCompoundBorder( - new EmptyBorder(6, 0, 0, 0), - UITitledBorder.createBorderWithTitle( - // 已选择的设计用户 - Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Selected_User"), - 4 - ) - ) - ); + JPanel content = new JPanel(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); return content; } @Override - protected JPanel leftPanel(){ - JPanel content = new JPanel(new BorderLayout()); + protected String rightPanelTitle() { + return Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Selected_User"); + } - content.setBorder( - BorderFactory.createCompoundBorder( - new EmptyBorder(6, 0, 0, 0), - UITitledBorder.createBorderWithTitle( - // 决策系统用户 - Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Decision_User"), - 4) - ) - ); + @Override + protected JPanel leftPanel(){ + JPanel content = new JPanel(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); return content; } + @Override + protected String leftPanelTitle() { + return Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Decision_User"); + } + @Override protected AddingMemberListCellRender getAddingMemberListCellRender() { return new AddingUserListCellRender(); @@ -73,11 +58,11 @@ public class UserManagerPane extends AbstractManagerPane { @Override protected Collection getMembers(String userName, String keyWord){ - return WorkContext.getCurrent().get(DecisionOperator.class).getMembers(userName, keyWord); + return RemoteAuthorityRepository.getInstance().getMembers(userName, keyWord, 1, 50); } @Override protected Collection getMembers(String userName, String keyWord, int pageNum, int count){ - return WorkContext.getCurrent().get(DecisionOperator.class).getMembers(userName, keyWord, pageNum, count); + return RemoteAuthorityRepository.getInstance().getMembers(userName, keyWord, pageNum, count); } } \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/debug/RemoteDesignNetWorkAction.java b/designer-base/src/main/java/com/fr/design/remote/ui/debug/RemoteDesignNetWorkAction.java new file mode 100644 index 0000000000..e0cfa2524e --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/remote/ui/debug/RemoteDesignNetWorkAction.java @@ -0,0 +1,61 @@ +package com.fr.design.remote.ui.debug; + +import com.fr.design.actions.UpdateAction; +import com.fr.design.dialog.FineJOptionPane; +import com.fr.design.mainframe.DesignerContext; +import com.fr.design.mainframe.DesignerFrame; +import com.fr.design.utils.gui.GUICoreUtils; +import com.fr.workspace.WorkContext; + +import javax.swing.JDialog; +import java.awt.Dimension; +import java.awt.event.ActionEvent; +import java.awt.event.WindowAdapter; +import java.awt.event.WindowEvent; + +import static com.fine.theme.utils.FineUIScale.createScaleDimension; +import static com.fine.theme.utils.FineUIScale.unscale; + +/** + * 远程设计网络调试 + * + * @author vito + * @since 11.0 + * Created on 2024/9/24 + */ +public class RemoteDesignNetWorkAction extends UpdateAction { + public static final String TITLE = "Remote Design NetWork"; + + public RemoteDesignNetWorkAction() { + setName(TITLE); + } + + @Override + public void actionPerformed(ActionEvent e) { + if (WorkContext.getCurrent().isLocal()) { + FineJOptionPane.showMessageDialog(DesignerContext.getDesignerFrame(), + "Remote Design NetWork can't show on local environment."); + return; + } + JDialog jDialog = new JDialog(DesignerContext.getDesignerFrame(), TITLE); + jDialog.setSize(calculatePaneDimension()); + RemoteDesignNetWorkTablePane netWorkPane = new RemoteDesignNetWorkTablePane(); + jDialog.add(netWorkPane); + jDialog.addWindowListener(new WindowAdapter() { + @Override + public void windowClosing(WindowEvent e) { + netWorkPane.clear(); + super.windowClosing(e); + } + }); + GUICoreUtils.centerWindow(jDialog); + jDialog.setVisible(true); + } + + private static Dimension calculatePaneDimension() { + DesignerFrame parent = DesignerContext.getDesignerFrame(); + return createScaleDimension((int) (unscale(parent.getWidth()) * 0.8), + (int) (unscale(parent.getHeight()) * 0.6)); + } +} + diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/debug/RemoteDesignNetWorkTablePane.java b/designer-base/src/main/java/com/fr/design/remote/ui/debug/RemoteDesignNetWorkTablePane.java new file mode 100644 index 0000000000..21cb2ab049 --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/remote/ui/debug/RemoteDesignNetWorkTablePane.java @@ -0,0 +1,155 @@ +package com.fr.design.remote.ui.debug; + +import com.fanruan.workplace.http.debug.RequestInfo; +import com.fine.theme.icon.LazyIcon; +import com.formdev.flatlaf.util.ScaledEmptyBorder; +import com.fr.design.gui.ibutton.UIButton; +import com.fr.event.Event; +import com.fr.event.EventDispatcher; +import com.fr.event.Listener; +import com.fr.workspace.WorkContext; + +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTable; +import javax.swing.JToolBar; +import javax.swing.border.EmptyBorder; +import javax.swing.table.DefaultTableModel; +import javax.swing.table.TableCellRenderer; +import javax.swing.table.TableColumn; +import java.awt.BorderLayout; +import java.awt.Component; +import java.text.DecimalFormat; +import java.text.SimpleDateFormat; +import java.util.Date; + +import static com.fanruan.workplace.http.debug.RemoteDesignDebugEvent.REMOTE_HTTP_REQUEST; + +/** + * 远程设计网络调试面板 + * + * @author vito + * @since 11.0 + * Created on 2024/9/24 + */ +public class RemoteDesignNetWorkTablePane extends JPanel { + private static final int K = 1024; + private static final int TWO = 2; + private JTable uiTable; + private DefaultTableModel model; + + private final Listener remoteDesignDebugListener = new Listener() { + @Override + public void on(Event event, RequestInfo requestInfo) { + model.addRow(new Object[]{ + requestInfo.getStatus(), + dateFormat(requestInfo.getDate()), + requestInfo.getPath().substring(WorkContext.getCurrent().getPath().length() - 1), + requestInfo.getConsume() + "ms", + simpleSize(requestInfo.getRequestSize()), + simpleSize(requestInfo.getResponseSize()), + requestInfo.getSendBody(), + requestInfo.getReturnBody(), + }); + adjustColumnWidths(uiTable); + } + }; + + public RemoteDesignNetWorkTablePane() { + setLayout(new BorderLayout()); + setBorder(new ScaledEmptyBorder(10, 10, 10, 10)); + initComponent(); + addListener(); + } + + private void initComponent() { + initTable(); + initToolBar(); + } + + private void initTable() { + model = new DefaultTableModel(); + model.addColumn("status"); + model.addColumn("time"); + model.addColumn("path"); + model.addColumn("cost"); + model.addColumn("request size"); + model.addColumn("response size"); + model.addColumn("request"); + model.addColumn("response"); + uiTable = new JTable(model); + add(new JScrollPane(uiTable), BorderLayout.CENTER); + } + + private void initToolBar() { + JToolBar jToolBar = new JToolBar(); + jToolBar.setBorder(new EmptyBorder(5, 0, 10, 0)); + UIButton run = new UIButton(new LazyIcon("run")); + UIButton forbid = new UIButton(new LazyIcon("forbid")); + UIButton refresh = new UIButton(new LazyIcon("remove")); + run.setEnabled(false); + run.setToolTipText("Start Record"); + run.addActionListener(e -> { + addListener(); + run.setEnabled(false); + forbid.setEnabled(true); + }); + forbid.setToolTipText("Stop Record"); + forbid.addActionListener(e -> { + EventDispatcher.stopListen(remoteDesignDebugListener); + run.setEnabled(true); + forbid.setEnabled(false); + }); + refresh.setToolTipText("Clear Records"); + refresh.addActionListener(e -> model.setRowCount(0)); + jToolBar.add(run); + jToolBar.add(forbid); + jToolBar.add(refresh); + add(jToolBar, BorderLayout.NORTH); + } + + /** + * 清理监听 + */ + public void clear() { + EventDispatcher.stopListen(remoteDesignDebugListener); + } + + + private void addListener() { + EventDispatcher.listen(REMOTE_HTTP_REQUEST, remoteDesignDebugListener); + } + + private static void adjustColumnWidths(JTable table) { + for (int column = 0; column < table.getColumnCount() - TWO; column++) { + TableColumn tableColumn = table.getColumnModel().getColumn(column); + int preferredWidth = 20; + int maxWidth = tableColumn.getMaxWidth(); + tableColumn.setMinWidth(0); + // 从最后一行来调整大小 + int row = table.getRowCount() - 1; + TableCellRenderer cellRenderer = table.getCellRenderer(row, column); + Component component = table.prepareRenderer(cellRenderer, row, column); + int width = component.getPreferredSize().width + table.getIntercellSpacing().width; + preferredWidth = Math.max(preferredWidth, Math.min(width, maxWidth)); + tableColumn.setPreferredWidth(preferredWidth); + } + } + + private static String dateFormat(Date date) { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + return dateFormat.format(date); + } + + private static String simpleSize(long bytes) { + if (bytes < 0) { + return bytes + ""; + } else if (bytes < K) { + return bytes + " B"; + } else { + DecimalFormat df = new DecimalFormat("#.00"); + return df.format((float) bytes / K) + " K"; + } + } + +} diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/list/AddedMemberListCellRender.java b/designer-base/src/main/java/com/fr/design/remote/ui/list/AddedMemberListCellRender.java index 74dba29fad..87b1e5c5f6 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/list/AddedMemberListCellRender.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/list/AddedMemberListCellRender.java @@ -1,5 +1,8 @@ package com.fr.design.remote.ui.list; +import com.fine.swing.ui.layout.Layouts; +import com.fine.theme.utils.FineUIScale; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.gui.ilable.UILabel; import com.fr.design.remote.button.IconButton; import com.fr.workspace.server.authority.RemoteDesignMember; @@ -9,9 +12,9 @@ import javax.swing.Icon; import javax.swing.JList; import javax.swing.JPanel; import javax.swing.ListCellRenderer; +import java.awt.BorderLayout; import java.awt.Component; import java.awt.Dimension; -import java.awt.FlowLayout; public abstract class AddedMemberListCellRender extends JPanel implements ListCellRenderer { @@ -19,16 +22,14 @@ public abstract class AddedMemberListCellRender extends JPanel implements ListCe private UILabel label; public AddedMemberListCellRender() { - this.setBorder(BorderFactory.createEmptyBorder()); - this.setLayout(new FlowLayout(FlowLayout.LEFT)); + this.setBorder(new ScaledEmptyBorder(0, 4, 0, 0)); + this.setLayout(new BorderLayout()); label = new UILabel(); - label.setPreferredSize(new Dimension(264, 20)); - this.setPreferredSize(new Dimension(this.getPreferredSize().width, 25)); label.setIcon(getMemberIcon()); - this.add(label); - this.add(new IconButton()); + this.add(Layouts.row(Layouts.cell(label), Layouts.flex(), Layouts.cell(new IconButton())) + .with(it -> it.setPreferredSize(new Dimension((int) it.getPreferredSize().getWidth(), FineUIScale.scale( 20)))).getComponent()); } @Override diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/list/AddingMemberListCellRender.java b/designer-base/src/main/java/com/fr/design/remote/ui/list/AddingMemberListCellRender.java index d25702780e..b688bdccae 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/list/AddingMemberListCellRender.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/list/AddingMemberListCellRender.java @@ -1,7 +1,11 @@ package com.fr.design.remote.ui.list; +import com.fine.swing.ui.layout.Layouts; +import com.fine.theme.utils.FineUIScale; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.ilable.UILabel; +import com.fr.design.remote.button.IconButton; import com.fr.workspace.server.authority.RemoteDesignMember; import javax.swing.BorderFactory; @@ -10,9 +14,7 @@ import javax.swing.JList; import javax.swing.JPanel; import javax.swing.ListCellRenderer; import javax.swing.SwingConstants; -import java.awt.Component; -import java.awt.Dimension; -import java.awt.FlowLayout; +import java.awt.*; public abstract class AddingMemberListCellRender extends JPanel implements ListCellRenderer { @@ -21,20 +23,21 @@ public abstract class AddingMemberListCellRender extends JPanel implements ListC public AddingMemberListCellRender() { - this.setBorder(BorderFactory.createEmptyBorder()); - this.setLayout(new FlowLayout(FlowLayout.LEFT)); + this.setBorder(new ScaledEmptyBorder(0, 4, 0, 0)); + this.setLayout(new BorderLayout()); label = new UILabel(); - label.setPreferredSize(new Dimension(260, 20)); - this.setPreferredSize(new Dimension(this.getPreferredSize().width, 25)); label.setIcon(getMemberIcon()); check = new UICheckBox(); check.setSelected(false); check.setEnabled(true); - this.add(label); - this.add(check); + label = new UILabel(); + label.setIcon(getMemberIcon()); + + this.add(Layouts.row(Layouts.cell(label), Layouts.flex(), Layouts.cell(check)) + .with(it -> it.setPreferredSize(new Dimension((int) it.getPreferredSize().getWidth(), FineUIScale.scale( 20)))).getComponent()); } diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/list/AuthorityListCellRenderer.java b/designer-base/src/main/java/com/fr/design/remote/ui/list/AuthorityListCellRenderer.java index 506c86664e..9aca2e383a 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/list/AuthorityListCellRenderer.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/list/AuthorityListCellRenderer.java @@ -1,5 +1,7 @@ package com.fr.design.remote.ui.list; +import com.formdev.flatlaf.ui.FlatUIUtils; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.report.DesignAuthority; import sun.swing.DefaultLookup; @@ -9,8 +11,7 @@ import javax.swing.JList; import javax.swing.ListCellRenderer; import javax.swing.border.Border; import javax.swing.border.EmptyBorder; -import java.awt.Color; -import java.awt.Component; +import java.awt.*; public abstract class AuthorityListCellRenderer extends JLabel implements ListCellRenderer { diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/list/MemberList.java b/designer-base/src/main/java/com/fr/design/remote/ui/list/MemberList.java index 10e99f0e32..e79c3f1492 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/list/MemberList.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/list/MemberList.java @@ -14,12 +14,13 @@ import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.util.Vector; +import static com.fine.theme.utils.FineUIScale.scale; + public abstract class MemberList extends JList { - static final int TRIGGER_AREA_X = 270; - static final int TRIGGER_AREA_Y_EACH = 25; + static final int TRIGGER_AREA_Y_EACH = scale(20); - static final int TRIGGER_AREA_WIDTH = 25; - static final int TRIGGER_AREA_HEIGHT = 25; + static final int TRIGGER_AREA_WIDTH = scale(20); + static final int TRIGGER_AREA_HEIGHT = scale(20); public MemberList(DefaultListModel dataModel) { @@ -91,7 +92,7 @@ public abstract class MemberList extends JList { int rX = point.x; int rY = point.y; int index = this.getSelectedIndex(); - int x = TRIGGER_AREA_X; + int x = this.getWidth() - TRIGGER_AREA_WIDTH; int y = TRIGGER_AREA_Y_EACH * index; return x <= rX && rX <= x + TRIGGER_AREA_WIDTH && y <= rY && rY <= y + TRIGGER_AREA_HEIGHT; } diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddedCustomRoleListCellRender.java b/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddedCustomRoleListCellRender.java index 9680f63368..2ea79f51b2 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddedCustomRoleListCellRender.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddedCustomRoleListCellRender.java @@ -1,5 +1,6 @@ package com.fr.design.remote.ui.list.cell; +import com.fine.theme.icon.LazyIcon; import com.fr.base.BaseUtils; import com.fr.design.remote.constants.MemberIcon; import com.fr.design.remote.ui.list.AddedMemberListCellRender; @@ -15,7 +16,7 @@ import javax.swing.Icon; public class AddedCustomRoleListCellRender extends AddedMemberListCellRender { @Override protected Icon getMemberIcon() { - return BaseUtils.readIcon(MemberIcon.CUSTOM_ROLE_ICON); + return new LazyIcon("role"); } @Override diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddedUserListCellRender.java b/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddedUserListCellRender.java index 2a78e2a034..b2d1001956 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddedUserListCellRender.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddedUserListCellRender.java @@ -1,5 +1,6 @@ package com.fr.design.remote.ui.list.cell; +import com.fine.theme.icon.LazyIcon; import com.fr.base.BaseUtils; import com.fr.design.remote.constants.MemberIcon; import com.fr.design.remote.ui.list.AddedMemberListCellRender; @@ -15,7 +16,7 @@ import javax.swing.Icon; public class AddedUserListCellRender extends AddedMemberListCellRender { @Override protected Icon getMemberIcon() { - return BaseUtils.readIcon(MemberIcon.USER_ICON); + return new LazyIcon("member"); } @Override diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddingCustomRoleListCellRender.java b/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddingCustomRoleListCellRender.java index fa51f201ee..05d3caf5fd 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddingCustomRoleListCellRender.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddingCustomRoleListCellRender.java @@ -1,5 +1,6 @@ package com.fr.design.remote.ui.list.cell; +import com.fine.theme.icon.LazyIcon; import com.fr.base.BaseUtils; import com.fr.design.remote.constants.MemberIcon; import com.fr.design.remote.ui.list.AddingMemberListCellRender; @@ -15,7 +16,7 @@ import javax.swing.Icon; public class AddingCustomRoleListCellRender extends AddingMemberListCellRender { @Override protected Icon getMemberIcon() { - return BaseUtils.readIcon(MemberIcon.CUSTOM_ROLE_ICON); + return new LazyIcon("role"); } @Override diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddingUserListCellRender.java b/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddingUserListCellRender.java index 1df731afc0..a04635cc51 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddingUserListCellRender.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AddingUserListCellRender.java @@ -1,5 +1,6 @@ package com.fr.design.remote.ui.list.cell; +import com.fine.theme.icon.LazyIcon; import com.fr.base.BaseUtils; import com.fr.design.remote.constants.MemberIcon; import com.fr.design.remote.ui.list.AddingMemberListCellRender; @@ -15,7 +16,7 @@ import javax.swing.Icon; public class AddingUserListCellRender extends AddingMemberListCellRender { @Override protected Icon getMemberIcon() { - return BaseUtils.readIcon(MemberIcon.USER_ICON); + return new LazyIcon("member"); } @Override diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AuthorityCustomRoleListCellRender.java b/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AuthorityCustomRoleListCellRender.java index ece2a8a2cf..8355f731bd 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AuthorityCustomRoleListCellRender.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AuthorityCustomRoleListCellRender.java @@ -1,5 +1,6 @@ package com.fr.design.remote.ui.list.cell; +import com.fine.theme.icon.LazyIcon; import com.fr.base.BaseUtils; import com.fr.design.remote.constants.MemberIcon; import com.fr.design.remote.ui.list.AuthorityListCellRenderer; @@ -15,7 +16,7 @@ import javax.swing.Icon; public class AuthorityCustomRoleListCellRender extends AuthorityListCellRenderer { @Override protected Icon getMemberIcon() { - return BaseUtils.readIcon(MemberIcon.CUSTOM_ROLE_ICON); + return new LazyIcon("role"); } @Override diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AuthorityUserListCellRender.java b/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AuthorityUserListCellRender.java index 9b04a44413..66f34b6118 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AuthorityUserListCellRender.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/list/cell/AuthorityUserListCellRender.java @@ -1,5 +1,6 @@ package com.fr.design.remote.ui.list.cell; +import com.fine.theme.icon.LazyIcon; import com.fr.base.BaseUtils; import com.fr.design.remote.constants.MemberIcon; import com.fr.design.remote.ui.list.AuthorityListCellRenderer; @@ -15,7 +16,7 @@ import javax.swing.Icon; public class AuthorityUserListCellRender extends AuthorityListCellRenderer { @Override protected Icon getMemberIcon() { - return BaseUtils.readIcon(MemberIcon.USER_ICON); + return new LazyIcon("member"); } @Override diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/tree/FileAuthorityTree.java b/designer-base/src/main/java/com/fr/design/remote/ui/tree/FileAuthorityTree.java index feb3895169..26f754fe45 100644 --- a/designer-base/src/main/java/com/fr/design/remote/ui/tree/FileAuthorityTree.java +++ b/designer-base/src/main/java/com/fr/design/remote/ui/tree/FileAuthorityTree.java @@ -32,6 +32,9 @@ public class FileAuthorityTree extends TemplateFileTree { for (int i = 0, len = treeNode.getChildCount(); i < len; i++) { ExpandMutableTreeNode childTreeNode = (ExpandMutableTreeNode) treeNode.getChildAt(i); for (String path : paths) { + if (path == null) { + continue; + } TreePath tPath = getSelectingPath(childTreeNode, StringUtils.EMPTY, path, model); if (tPath != null) { res.add(tPath); diff --git a/designer-base/src/main/java/com/fr/design/report/WatermarkPane.java b/designer-base/src/main/java/com/fr/design/report/WatermarkPane.java index 9e77340884..868e52bd00 100644 --- a/designer-base/src/main/java/com/fr/design/report/WatermarkPane.java +++ b/designer-base/src/main/java/com/fr/design/report/WatermarkPane.java @@ -16,6 +16,7 @@ import com.fr.design.gui.ispinner.UnsignedIntUISpinner; import com.fr.design.gui.style.FRFontPane; import com.fr.design.i18n.Toolkit; import com.fr.design.style.color.NewColorSelectPane; +import com.fr.design.utils.gui.UIComponentUtils; import javax.swing.SwingUtilities; import javax.swing.UIManager; @@ -159,9 +160,9 @@ public class WatermarkPane extends BasicPane { //水印间距提示居中布局 JPanel watermarkGapTipsPane = row(LayoutConstants.HGAP_LARGE, flex(0.15), - cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Direction_Horizontal"))).weight(0.2), + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Direction_Horizontal"))).with(it -> it.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Direction_Horizontal"))).weight(0.2), flex(0.3), - cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Direction_Vertical"))).weight(0.2), + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Direction_Vertical"))).with(it -> it.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Direction_Vertical"))).weight(0.2), flex(0.15) ).getComponent(); //水印间距排列 @@ -186,7 +187,7 @@ public class WatermarkPane extends BasicPane { } private JPanel getTopAlignLabelPane(String labelText) { - return column(LayoutConstants.VERTICAL_GAP, cell(new UILabel(labelText))). + return column(LayoutConstants.VERTICAL_GAP, cell(new UILabel(labelText)).with(UIComponentUtils::setLineWrap)). with(it -> it.setBorder(new ScaledEmptyBorder(2,0,0,0))).getComponent(); } diff --git a/designer-base/src/main/java/com/fr/design/report/fit/BaseFitAttrPane.java b/designer-base/src/main/java/com/fr/design/report/fit/BaseFitAttrPane.java index d68113bed2..f74dd10e75 100644 --- a/designer-base/src/main/java/com/fr/design/report/fit/BaseFitAttrPane.java +++ b/designer-base/src/main/java/com/fr/design/report/fit/BaseFitAttrPane.java @@ -82,8 +82,6 @@ public abstract class BaseFitAttrPane extends BasicBeanPane { protected void initComponents() { //添加以下设置 initItemChoose(); - //服务器配置-PC端自适应属性面板中需要添加提示 - initPrompt(); this.setLayout(new BorderLayout()); this.add(contentJPanel); } @@ -112,8 +110,6 @@ public abstract class BaseFitAttrPane extends BasicBeanPane { } - protected void initPrompt() { - } protected void refresh() { validate(); diff --git a/designer-base/src/main/java/com/fr/design/roleAuthority/ReportAndFSManagePane.java b/designer-base/src/main/java/com/fr/design/roleAuthority/ReportAndFSManagePane.java index 7a57667532..dd3c86c720 100644 --- a/designer-base/src/main/java/com/fr/design/roleAuthority/ReportAndFSManagePane.java +++ b/designer-base/src/main/java/com/fr/design/roleAuthority/ReportAndFSManagePane.java @@ -106,7 +106,7 @@ public class ReportAndFSManagePane extends DockingView implements Prepare4DataSo jPanel.add(column( 4, row(cell(buttonGroup), flex()), - cell(scrollPane) + cell(scrollPane).weight(1) ).getComponent()); this.add(jPanel, BorderLayout.CENTER); jPanel.setBorder(new ScaledEmptyBorder(0, 4, 4, 4)); diff --git a/designer-base/src/main/java/com/fr/design/roleAuthority/RoleDataWrapper.java b/designer-base/src/main/java/com/fr/design/roleAuthority/RoleDataWrapper.java index 1cc7dd0247..b447fec1a3 100644 --- a/designer-base/src/main/java/com/fr/design/roleAuthority/RoleDataWrapper.java +++ b/designer-base/src/main/java/com/fr/design/roleAuthority/RoleDataWrapper.java @@ -1 +1 @@ -package com.fr.design.roleAuthority; import com.fr.base.FRContext; import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode; import com.fr.design.gui.itree.refreshabletree.loader.ChildrenNodesLoader; import com.fr.log.FineLoggerFactory; import java.util.ArrayList; import java.util.Collections; import java.util.List; /** * 将权限细粒度的角色数据包装一下,区分报表平台管理角色和数据决策系统角色 *

* Author : daisy * Date: 13-8-30 * Time: 下午3:42 */ public class RoleDataWrapper implements ChildrenNodesLoader { private List rolelist = new ArrayList(); private String roleTypename = null; public RoleDataWrapper(String roleName) { roleTypename = roleName; } /** * 在此计算并获得与管理类型相对应的 */ private void calculateRoleList() { try { Collections.addAll(rolelist, FRContext.getOrganizationOperator().getRoleGroup()); } catch (Exception e) { FineLoggerFactory.getLogger().error(e.getMessage(), e); } } //加载所有的角色列表 public ExpandMutableTreeNode[] load() { calculateRoleList(); return this.load(this.rolelist); } //从workbook中读取的角色列表 public ExpandMutableTreeNode[] load(List rolelist) { this.rolelist = rolelist; ExpandMutableTreeNode[] res = new ExpandMutableTreeNode[rolelist.size()]; for (int i = 0; i < res.length; i++) { res[i] = new ExpandMutableTreeNode(rolelist.get(i)); } return res; } public String getRoleTypename(){ return roleTypename; } } \ No newline at end of file +package com.fr.design.roleAuthority; import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode; import com.fr.design.gui.itree.refreshabletree.loader.ChildrenNodesLoader; import com.fr.log.FineLoggerFactory; import com.fr.workspace.server.repository.authority.RemoteAuthorityRepository; import java.util.ArrayList; import java.util.Collections; import java.util.List; /** * 将权限细粒度的角色数据包装一下,区分报表平台管理角色和数据决策系统角色 *

* Author : daisy * Date: 13-8-30 * Time: 下午3:42 */ public class RoleDataWrapper implements ChildrenNodesLoader { private List rolelist = new ArrayList(); private String roleTypename = null; public RoleDataWrapper(String roleName) { roleTypename = roleName; } /** * 在此计算并获得与管理类型相对应的 */ private void calculateRoleList() { try { Collections.addAll(rolelist, RemoteAuthorityRepository.getInstance().getRoleGroup()); } catch (Exception e) { FineLoggerFactory.getLogger().error(e.getMessage(), e); } } //加载所有的角色列表 public ExpandMutableTreeNode[] load() { calculateRoleList(); return this.load(this.rolelist); } //从workbook中读取的角色列表 public ExpandMutableTreeNode[] load(List rolelist) { this.rolelist = rolelist; ExpandMutableTreeNode[] res = new ExpandMutableTreeNode[rolelist.size()]; for (int i = 0; i < res.length; i++) { res[i] = new ExpandMutableTreeNode(rolelist.get(i)); } return res; } public String getRoleTypename(){ return roleTypename; } } \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/roleAuthority/RoleTree.java b/designer-base/src/main/java/com/fr/design/roleAuthority/RoleTree.java index 743dc4a754..92aeebe9ab 100644 --- a/designer-base/src/main/java/com/fr/design/roleAuthority/RoleTree.java +++ b/designer-base/src/main/java/com/fr/design/roleAuthority/RoleTree.java @@ -33,6 +33,8 @@ import java.util.ArrayList; import java.util.Enumeration; import java.util.List; +import static com.fine.theme.utils.FineUIScale.scale; + /** * Author : daisy * Time: 下午3:32 @@ -48,7 +50,7 @@ public class RoleTree extends UserObjectRefreshJTree { this.setCellRenderer(roleTreeRenderer); this.setEnabled(true); this.setEditable(true); - this.setRowHeight(20); + this.setRowHeight(scale(20)); this.setDigIn(true); Handler handler = createHandlerForRoleTree(); this.replaceMouseListener(this, handler, 0); diff --git a/designer-base/src/main/java/com/fr/design/style/AlphaPane.java b/designer-base/src/main/java/com/fr/design/style/AlphaPane.java index 4560f84dfd..329fef1b64 100644 --- a/designer-base/src/main/java/com/fr/design/style/AlphaPane.java +++ b/designer-base/src/main/java/com/fr/design/style/AlphaPane.java @@ -1,9 +1,7 @@ package com.fr.design.style; import java.awt.BorderLayout; -import java.awt.Dimension; -import javax.swing.BorderFactory; import javax.swing.JFormattedTextField; import javax.swing.JPanel; import javax.swing.JSlider; @@ -14,6 +12,7 @@ import javax.swing.event.ChangeListener; import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.base.Utils; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.islider.UISlider; @@ -46,18 +45,11 @@ public class AlphaPane extends JPanel { this.setLayout(FRGUIPaneFactory.createBorderLayout()); // 透明选项 - JPanel alphaPane = FRGUIPaneFactory.createLeftFlowZeroGapBorderPane(); - alphaPane.setBorder(BorderFactory.createEmptyBorder()); - this.add(alphaPane, BorderLayout.CENTER); - - alphaPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Alpha") + ":")); - - alphaPane.add(alphaSlider = new UISlider(UISlider.HORIZONTAL, 0, ALPHA_FLOAT, START_VALUE)); - alphaSlider.setPreferredSize(new Dimension(80, 20)); - + alphaSlider = new UISlider(UISlider.HORIZONTAL, 0, ALPHA_FLOAT, START_VALUE); valueSpinner = new UIBasicSpinner(new SpinnerListModel(values)); - alphaPane.add(valueSpinner); - + JPanel alphaPane = FineLayoutBuilder.createHorizontalLayout(10, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Alpha")), + alphaSlider, valueSpinner); + JFormattedTextField field = GUICoreUtils.getSpinnerTextField(valueSpinner); field.setText(checkFormat(START_VALUE)); if (field != null) { @@ -65,9 +57,8 @@ public class AlphaPane extends JPanel { field.setHorizontalAlignment(UITextField.LEFT); field.getDocument().addDocumentListener(textListener); } - - valueSpinner.setPreferredSize(new Dimension(60, 18)); alphaSlider.addChangeListener(changeListener); + this.add(alphaPane, BorderLayout.CENTER); } DocumentListener textListener = new DocumentListener() { diff --git a/designer-base/src/main/java/com/fr/design/style/FRFontPane.java b/designer-base/src/main/java/com/fr/design/style/FRFontPane.java index 091cedaeeb..db136c6e61 100644 --- a/designer-base/src/main/java/com/fr/design/style/FRFontPane.java +++ b/designer-base/src/main/java/com/fr/design/style/FRFontPane.java @@ -61,20 +61,20 @@ public class FRFontPane extends BasicPane { private UICheckBox isSubscriptCheckBox; private FRFontPreviewArea preview; - + private EventListenerList eventChangeList = new EventListenerList(); - + public static Integer[] Font_Sizes = {new Integer(6), new Integer(8), new Integer(9), new Integer(10), new Integer(11), new Integer(12), new Integer(14), new Integer(16), new Integer(18), new Integer(20), new Integer(22), new Integer(24), new Integer(26), new Integer(28), new Integer(36), new Integer(48), new Integer(72)}; - + public FRFontPane() { this.initComponents(); } - + protected void initComponents() { this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4)); @@ -82,18 +82,18 @@ public class FRFontPane extends BasicPane { // 名字 fontNameComboBox = new UIComboBox(DesignUtils.getAvailableFontFamilyNames4Report()); this.fontNameComboBox.addActionListener(actionListener); - + // 字形和大小 fontSizeStylePane = new FontSizeStylePane(); - + // 下划线 和 颜色 this.underlineCombo = new LineComboBox(CoreConstants.UNDERLINE_STYLE_ARRAY); this.underlineCombo.addActionListener(actionListener); foregroundColorPane = new ColorSelectBox(140); foregroundColorPane.addSelectChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent e) { - fireStateChanged(); - } + fireStateChanged(); + } }); initCheckbox(); @@ -166,11 +166,11 @@ public class FRFontPane extends BasicPane { column(5, cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview"))), cell(preview).weight(1)).weight(1) ).getComponent()); } - + public void addChangeListener(ChangeListener changeListener) { eventChangeList.add(ChangeListener.class, changeListener); } - + /** */ public void fireStateChanged() { @@ -186,19 +186,19 @@ public class FRFontPane extends BasicPane { } } } - + ActionListener actionListener = new ActionListener() { public void actionPerformed(ActionEvent e) { - fireStateChanged(); - } + fireStateChanged(); + } }; - + ChangeListener changeListener = new ChangeListener() { public void stateChanged(ChangeEvent e) { - fireStateChanged(); - } + fireStateChanged(); + } }; - + @Override protected String title4PopupWindow() { return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Sytle_FRFont"); @@ -217,6 +217,16 @@ public class FRFontPane extends BasicPane { updatePreviewLabel(); } }; + ItemListener updatePreviewItemListener = new ItemListener() { + public void itemStateChanged(ItemEvent e) { + updatePreviewLabel(); + } + }; + + this.fontNameComboBox.addItemListener(updatePreviewItemListener); + this.fontSizeStylePane.fontComboBox.addItemListener(updatePreviewItemListener); + this.fontSizeStylePane.fontSizeComboBox.addItemListener(updatePreviewItemListener); + this.isStrikethroughCheckBox.addActionListener(updatePreviewActionListener); this.isShadowCheckBox.addActionListener(updatePreviewActionListener); this.isSuperscriptCheckBox.addActionListener(updatePreviewActionListener); diff --git a/designer-base/src/main/java/com/fr/design/style/background/BackgroundPane.java b/designer-base/src/main/java/com/fr/design/style/background/BackgroundPane.java index 7099ed7652..786c472c08 100644 --- a/designer-base/src/main/java/com/fr/design/style/background/BackgroundPane.java +++ b/designer-base/src/main/java/com/fr/design/style/background/BackgroundPane.java @@ -24,7 +24,6 @@ import com.fr.general.Background; import com.fr.log.FineLoggerFactory; import static com.fine.swing.ui.layout.Layouts.cell; -import static com.fine.swing.ui.layout.Layouts.column; public class BackgroundPane extends BasicPane { @@ -47,7 +46,7 @@ public class BackgroundPane extends BasicPane { protected void initComponents() { this.setLayout(FRGUIPaneFactory.createBorderLayout()); initTabPane(); - tabbedPane = tabbedPaneBuilder.withHeadRatio(0.65f).build(); + tabbedPane = tabbedPaneBuilder.withAdaptiveFit().build(); add(cell(tabbedPane).weight(1).getComponent()); } diff --git a/designer-base/src/main/java/com/fr/design/style/background/gradient/GradientBar.java b/designer-base/src/main/java/com/fr/design/style/background/gradient/GradientBar.java index 7954387448..bd243f2c35 100644 --- a/designer-base/src/main/java/com/fr/design/style/background/gradient/GradientBar.java +++ b/designer-base/src/main/java/com/fr/design/style/background/gradient/GradientBar.java @@ -9,6 +9,7 @@ import com.fr.design.style.color.ColorCell; import com.fr.design.style.color.ColorSelectable; import com.fr.design.style.color.NewColorSelectPane; import com.fr.stable.AssistUtils; +import com.fr.stable.os.OperatingSystem; import javax.swing.JPanel; import javax.swing.event.ChangeEvent; @@ -84,6 +85,7 @@ public class GradientBar extends AbstractComponentPopBox implements UIObserver, p1.setStartPosition(0); p2.setStartPosition(1); addMouseClickListener(); + addMouseDragListener(); iniListener(); } @@ -129,6 +131,14 @@ public class GradientBar extends AbstractComponentPopBox implements UIObserver, }); } + protected void addMouseDragListener() { + this.addMouseMotionListener(new MouseAdapter() { + public void mouseDragged(MouseEvent e) { + dragAction(e); + } + }); + } + protected void clickButton(int select) { setIndex(select); showPopupMenu(); @@ -305,4 +315,36 @@ public class GradientBar extends AbstractComponentPopBox implements UIObserver, public void setDraggable(boolean draggable) { this.draggable = draggable; } + + private void dragAction(MouseEvent e) { + int oldIndex = index; + int size = list.size(); + for (int i = 0; i < size; i++) { + if (list.get(i).contains(e.getX(), e.getY())) { + index = i; + break; + } + } + updateX(oldIndex, index, e); + + GradientBar.this.repaint(); + if (index == 1) { + endLabel.setText(Double.toString(p2.getX())); + } else { + startLabel.setText(Double.toString(p1.getX())); + } + } + + private void updateX(int oldIndex, int newIndex, MouseEvent e) { + if (OperatingSystem.isLinux() && AssistUtils.equals(oldIndex, newIndex)) { + if (Math.abs(p1.getX() - e.getX()) > Math.abs(p2.getX() - e.getX())) { + index = 1; + } else { + index = 0; + } + } + if (e.getX() <= max && e.getX() >= min && e.getY() < MAX_VERTICAL) { + list.get(index).setX(e.getX()); + } + } } \ No newline at end of file diff --git a/designer-base/src/main/java/com/fr/design/style/background/impl/PatternBackgroundPane.java b/designer-base/src/main/java/com/fr/design/style/background/impl/PatternBackgroundPane.java index 0671c49aa5..63f7132f7a 100644 --- a/designer-base/src/main/java/com/fr/design/style/background/impl/PatternBackgroundPane.java +++ b/designer-base/src/main/java/com/fr/design/style/background/impl/PatternBackgroundPane.java @@ -79,14 +79,12 @@ public class PatternBackgroundPane extends BPane { contentPane.add(FineUIUtils.wrapComponentWithTitle(column( 10, row( - 60, - cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Foreground") + ":")).weight(0.1), + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Foreground") + ":")).weight(0.2), cell(foregroundColorPane).weight(0.45), flex() ), row( - 60, - cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background") + ":")).weight(0.1), + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background") + ":")).weight(0.2), cell(backgroundColorPane).weight(0.45), flex() ) diff --git a/designer-base/src/main/java/com/fr/design/style/color/ColorAdjustPane.java b/designer-base/src/main/java/com/fr/design/style/color/ColorAdjustPane.java index 4036a078ed..7e832c0f56 100644 --- a/designer-base/src/main/java/com/fr/design/style/color/ColorAdjustPane.java +++ b/designer-base/src/main/java/com/fr/design/style/color/ColorAdjustPane.java @@ -14,7 +14,6 @@ import javax.swing.JComponent; import javax.swing.JPanel; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; -import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.Graphics; @@ -27,6 +26,8 @@ import java.awt.image.BufferedImage; import java.util.ArrayList; import java.util.List; +import static com.fine.theme.utils.FineUIScale.scale; + /** * 配色方案选择组合色之后,可以调整颜色的组件 * @@ -38,7 +39,11 @@ public class ColorAdjustPane extends JPanel implements UIObserver { public static final Color[] DEFAULT_COLORS = ChartConstants.NEW_FEATURES; - private static final int COUNT_OF_ROW = 12; + private int defaultMaxCountOfRow = 8; + + private int maxCountOfRow = defaultMaxCountOfRow; + + public static final int WIDTH = scale(20); private static final int MAX_BUTTON = 40; @@ -53,6 +58,12 @@ public class ColorAdjustPane extends JPanel implements UIObserver { this(DEFAULT_COLORS); } + public ColorAdjustPane(int maxCountOfRow) { + this(DEFAULT_COLORS); + this.defaultMaxCountOfRow = maxCountOfRow; + this.maxCountOfRow = maxCountOfRow; + } + public ColorAdjustPane(Color[] colors) { iniListener(); createColorButton(colors); @@ -80,33 +91,64 @@ public class ColorAdjustPane extends JPanel implements UIObserver { this.repaint(); } + /** + * 如果颜色块长度超过当前区域,则重绘 contentPane + */ + public void repaint() { + adjustCountOfRowAndRepaint(); + super.repaint(); + } + + private void adjustCountOfRowAndRepaint() { + int size = super.getSize().width; + if (size == 0) { + return; + } + int preferSize = (colorButtons.size() + 1) * WIDTH; + int oldMaxCountOfRow = maxCountOfRow; + if (preferSize > size) { + maxCountOfRow = size / WIDTH; + } else { + maxCountOfRow = Math.max(defaultMaxCountOfRow, size / WIDTH); + } + + if (oldMaxCountOfRow != maxCountOfRow) { + this.removeAll(); + createContentPane(); + } + } + private void createContentPane() { VerticalFlowLayout layout = new VerticalFlowLayout(0, 0, 0); layout.setAlignLeft(true); this.setLayout(layout); - for (int i = 0, size = colorButtons.size(); i < size; i += COUNT_OF_ROW) { - JPanel panel = FRGUIPaneFactory.createBoxFlowInnerContainer_S_Pane(2, 2); - int count = i + COUNT_OF_ROW > colorButtons.size() ? colorButtons.size() : i + COUNT_OF_ROW; + for (int i = 0, size = colorButtons.size(); i < size; i += maxCountOfRow) { + JPanel panel = FRGUIPaneFactory.createBoxFlowInnerContainer_S_Pane(scale(2), scale(2)); + int count = Math.min(i + maxCountOfRow, colorButtons.size()); for (int j = i; j < count; j++) { colorButtons.get(j).setLastButton(false); panel.add(colorButtons.get(j)); } - if (i + COUNT_OF_ROW > colorButtons.size()) { - panel.add(new AddColorButton()); - this.add(panel); - } else if (i + COUNT_OF_ROW == colorButtons.size() && colorButtons.size() != MAX_BUTTON) { - this.add(panel); - this.add(new AddColorButton()); - } else { - this.add(panel); - } + addPanel(panel, i); } if (colorButtons.size() == 1) { colorButtons.get(0).setLastButton(true); } } + private void addPanel(JPanel panel, int index) { + if (index + maxCountOfRow > colorButtons.size() && colorButtons.size() != MAX_BUTTON) { + panel.add(new AddColorButton()); + this.add(panel); + } else if (index + maxCountOfRow == colorButtons.size() && colorButtons.size() != MAX_BUTTON) { + this.add(panel); + this.add(new AddColorButton()); + } else { + this.add(panel); + } + } + private void createColorButton(Color[] colors) { colorButtons.clear(); int size = Math.min(colors.length, MAX_BUTTON); diff --git a/designer-base/src/main/java/com/fr/design/style/color/ColorButton.java b/designer-base/src/main/java/com/fr/design/style/color/ColorButton.java index 5ad794c79c..03f8d28376 100644 --- a/designer-base/src/main/java/com/fr/design/style/color/ColorButton.java +++ b/designer-base/src/main/java/com/fr/design/style/color/ColorButton.java @@ -1,5 +1,6 @@ package com.fr.design.style.color; +import com.fine.theme.utils.FineUIScale; import com.fr.base.BaseUtils; import com.fr.design.DesignerEnvManager; import com.fr.design.mainframe.DesignerContext; @@ -25,7 +26,7 @@ public class ColorButton extends JComponent implements ColorSelectable { private static final double DEL_WIDTH = 7; - public static final int WIDTH = 18; + public static final int WIDTH = FineUIScale.scale(18); private BufferedImage closeIcon = BaseUtils.readImageWithCache("com/fr/design/images/toolbarbtn/chartChangeClose.png"); diff --git a/designer-base/src/main/java/com/fr/design/style/color/ColorChooserPreview.java b/designer-base/src/main/java/com/fr/design/style/color/ColorChooserPreview.java index 100feb2d35..349aa041a3 100644 --- a/designer-base/src/main/java/com/fr/design/style/color/ColorChooserPreview.java +++ b/designer-base/src/main/java/com/fr/design/style/color/ColorChooserPreview.java @@ -30,7 +30,7 @@ public class ColorChooserPreview extends JPanel { private String sampleText; - private static final int SWATH_WIDTH = 50; + private static final int SWATH_WIDTH = FineUIScale.scale(50); private Color oldColor = null; diff --git a/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDetailPane.java b/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDetailPane.java index 0f6631073d..cf63669c0a 100644 --- a/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDetailPane.java +++ b/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDetailPane.java @@ -78,7 +78,6 @@ public class ColorSelectDetailPane extends BasicPane { // 颜色选择器面板 selectedPanel = new JColorChooser(this.color); - selectedPanel.setPreferredSize(new Dimension(selectedPanel.getWidth(), FineUIScale.scale(SELECT_PANEL_HEIGHT))); selectedPanel.setPreviewPanel(new JPanel()); swatchChooserPanel = new SwatchChooserPanel(); @@ -130,12 +129,11 @@ public class ColorSelectDetailPane extends BasicPane { column( 2, cell(new UILabel(i18nText("Fine-Design_Basic_Preview"))), - cell(previewPanel).with(it -> { + cell(previewPanel).weight(1).with(it -> { it.setBorder(new FineRoundBorder()); - it.setPreferredSize(new Dimension(this.getPreferredSize().width, FineUIScale.scale(120))); it.setBackground(FlatUIUtils.getUIColor("background.normal", Color.WHITE)); }) - )).with(it -> it.setBorder(new ScaledEmptyBorder(0, 10, 0, 10))) + ).weight(1)).weight(1).with(it -> it.setBorder(new ScaledEmptyBorder(0, 10, 0, 10))) ).getComponent(); } diff --git a/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java b/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java index 149ce1a17e..6e87e6a12c 100644 --- a/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java +++ b/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java @@ -16,6 +16,10 @@ import java.awt.Frame; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.column; +import static com.fine.theme.utils.FineUIScale.scale; + /** * 颜色选择器更多颜色对话框 @@ -84,8 +88,7 @@ public class ColorSelectDialog extends MiddleChartDialog{ private void initComponent() { this.setLayout(new BorderLayout()); - this.add(pane,BorderLayout.NORTH); - this.setBasicDialogSize(545,500); + this.setBasicDialogSize(545,500); this.setResizable(false); this.applyClosingAction(); @@ -93,8 +96,6 @@ public class ColorSelectDialog extends MiddleChartDialog{ JPanel buttonPane = new JPanel(); buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT)); - this.add(buttonPane, BorderLayout.SOUTH); - ok = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Button_OK")); cancel = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Button_Cancel")); @@ -119,6 +120,7 @@ public class ColorSelectDialog extends MiddleChartDialog{ } }); + this.add(column(10, cell(pane).weight(1), cell(buttonPane)).getComponent()); this.setTitle(pane.title4PopupWindow()); GUICoreUtils.setWindowCenter(getOwner(), this); } diff --git a/designer-base/src/main/java/com/fr/design/style/color/CustomChooserPanel.java b/designer-base/src/main/java/com/fr/design/style/color/CustomChooserPanel.java index 48f5e5f2bf..26ca6bb61f 100644 --- a/designer-base/src/main/java/com/fr/design/style/color/CustomChooserPanel.java +++ b/designer-base/src/main/java/com/fr/design/style/color/CustomChooserPanel.java @@ -38,6 +38,7 @@ import static com.fine.swing.ui.layout.Layouts.column; import static com.fine.swing.ui.layout.Layouts.fix; import static com.fine.swing.ui.layout.Layouts.flex; import static com.fine.swing.ui.layout.Layouts.row; +import static com.fine.theme.utils.FineUIScale.scale; /** @@ -124,17 +125,17 @@ class CustomChooserPanel extends AbstractColorChooserPanel implements ColorSelec /** * The default width of the gradient image. */ - private static final int IMG_WIDTH = 180; + private static final int IMG_WIDTH = scale(180); /** * The default height of the gradient image. */ - private static final int IMG_HEIGHT = 180; + private static final int IMG_HEIGHT = scale(180); /** * The default width of the track gradient. */ - private static final int TRACK_WIDTH = 12; + private static final int TRACK_WIDTH = scale(12); /** * The UILabel for Red. @@ -597,8 +598,8 @@ class CustomChooserPanel extends AbstractColorChooserPanel implements ColorSelec */ protected void buildChooser() { setLayout(new BorderLayout(10, 0)); - setPreferredSize(new Dimension((int) this.getPreferredSize().getWidth(), FineUIScale.scale(180))); - add(buildRightPanel(), BorderLayout.CENTER); + setPreferredSize(new Dimension((int) this.getPreferredSize().getWidth(), scale(180))); + Container rightPane = buildRightPanel(); JPanel container = new JPanel(); container.setLayout(new FlowLayout(FlowLayout.LEFT, 10, 0)); @@ -623,11 +624,11 @@ class CustomChooserPanel extends AbstractColorChooserPanel implements ColorSelec container.add(gradientPanel); container.add(layeredPane); - layeredPane.setPreferredSize(FineUIScale.scale(new Dimension(12, 180))); - slider.setSize(FineUIScale.scale(new Dimension(12, 180))); - trackPanel.setSize(FineUIScale.scale(new Dimension(12, 180))); + layeredPane.setPreferredSize(scale(new Dimension(12, 180))); + slider.setSize(scale(new Dimension(12, 180))); + trackPanel.setSize(scale(new Dimension(12, 180))); - add(container, BorderLayout.WEST); + add(row(cell(container).weight(1), cell(rightPane).weight(1)).getComponent()); slider.addChangeListener(new SliderChangeListener()); updateTextFields(); @@ -638,7 +639,7 @@ class CustomChooserPanel extends AbstractColorChooserPanel implements ColorSelec private JPanel createGradientPanel() { return new JPanel() { public Dimension getPreferredSize() { - return FineUIScale.scale(new Dimension(IMG_WIDTH, IMG_HEIGHT)); + return scale(new Dimension(IMG_WIDTH, IMG_HEIGHT)); } public void paint(Graphics g) { @@ -657,7 +658,7 @@ class CustomChooserPanel extends AbstractColorChooserPanel implements ColorSelec private JPanel createTrackPanel() { return new JPanel() { public Dimension getPreferredSize() { - return FineUIScale.scale(new Dimension(TRACK_WIDTH, IMG_HEIGHT)); + return scale(new Dimension(TRACK_WIDTH, IMG_HEIGHT)); } public void paint(Graphics g) { diff --git a/designer-base/src/main/java/com/fr/design/style/color/SwatchChooserPanel.java b/designer-base/src/main/java/com/fr/design/style/color/SwatchChooserPanel.java index 74f4b409a6..5fb4143da8 100644 --- a/designer-base/src/main/java/com/fr/design/style/color/SwatchChooserPanel.java +++ b/designer-base/src/main/java/com/fr/design/style/color/SwatchChooserPanel.java @@ -19,6 +19,7 @@ import javax.swing.JColorChooser; import javax.swing.JPanel; import javax.swing.colorchooser.AbstractColorChooserPanel; +import static com.fine.theme.utils.FineUIScale.scale; public class SwatchChooserPanel extends AbstractColorChooserPanel{ @@ -35,13 +36,13 @@ public class SwatchChooserPanel extends AbstractColorChooserPanel{ abstract static class SwatchPanel extends JPanel { /** The width of each block. */ - protected int cellWidth = 16; + protected int cellWidth = scale(16); /** The height of each block. */ - protected int cellHeight = 16; + protected int cellHeight = scale(16); /** The gap between blocks. */ - protected int gap = 1; + protected int gap = scale(1); /** The number of rows in the swatch panel. */ protected int numRows; @@ -70,8 +71,8 @@ public class SwatchChooserPanel extends AbstractColorChooserPanel{ int width = numCols * cellWidth + (numCols - 1) * gap; Insets insets = getInsets(); - return FineUIScale.scale(new Dimension(width + insets.left + insets.right, - height + insets.top + insets.bottom)); + return new Dimension(width + insets.left + insets.right, + height + insets.top + insets.bottom); } /** @@ -511,8 +512,8 @@ public class SwatchChooserPanel extends AbstractColorChooserPanel{ Insets insets = parent.getInsets(); - return FineUIScale.scale(new Dimension(insets.left + insets.right + xmax, - insets.top + insets.bottom + ymax)); + return new Dimension(insets.left + insets.right + xmax, + insets.top + insets.bottom + ymax); } diff --git a/designer-base/src/main/java/com/fr/design/ui/Assistant.java b/designer-base/src/main/java/com/fr/design/ui/Assistant.java deleted file mode 100644 index 7bbc17a80d..0000000000 --- a/designer-base/src/main/java/com/fr/design/ui/Assistant.java +++ /dev/null @@ -1,91 +0,0 @@ -package com.fr.design.ui; - -import com.fr.stable.StringUtils; -import com.teamdev.jxbrowser.chromium.Browser; -import com.teamdev.jxbrowser.chromium.BrowserContext; -import com.teamdev.jxbrowser.chromium.BrowserPreferences; -import com.teamdev.jxbrowser.chromium.ProtocolService; -import com.teamdev.jxbrowser.chromium.URLResponse; - -import java.io.DataInputStream; -import java.io.File; -import java.io.IOException; -import java.io.InputStream; -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.Collections; -import java.util.List; - -/** - * @author richie - * @version 10.0 - * Created by richie on 2019-03-07 - */ -public class Assistant { - - public static void addChromiumSwitches(String... switches) { - - List list = BrowserPreferences.getChromiumSwitches(); - Collections.addAll(list, switches); - - BrowserPreferences.setChromiumSwitches((list.toArray(new String[0]))); - } - - public static URLResponse inputStream2Response(InputStream inputStream, String filePath) throws Exception { - URLResponse response = new URLResponse(); - DataInputStream stream = new DataInputStream(inputStream); - byte[] data = new byte[stream.available()]; - stream.readFully(data); - response.setData(data); - String mimeType = getMimeType(filePath); - response.getHeaders().setHeader("Content-Type", mimeType); - return response; - } - - - private static String getMimeType(String path) { - if (StringUtils.isBlank(path)) { - return "text/html"; - } - if (path.endsWith(".html")) { - return "text/html"; - } - if (path.endsWith(".css")) { - return "text/css"; - } - if (path.endsWith(".js")) { - return "text/javascript"; - } - if (path.endsWith(".svg")) { - return "image/svg+xml"; - } - // upm 文件夹中的图片如果返回 Content-type 为 image/png 时会显示异常 - if (path.endsWith(".png") && !path.contains("/upm")) { - return "image/png"; - } - if (path.endsWith(".woff")) { - return "font/woff"; - } - if (path.endsWith(".ttf")) { - return "truetype"; - } - if (path.endsWith(".eot")) { - return "embedded-opentype"; - } - - Path file = new File(path).toPath(); - try { - return Files.probeContentType(file); - } catch (IOException e) { - return "text/html"; - } - } - - public static void setEmbProtocolHandler(Browser browser, EmbProtocolHandler handler) { - BrowserContext browserContext = browser.getContext(); - ProtocolService protocolService = browserContext.getProtocolService(); - // 支持读取jar包中文件的自定义协议————emb:/com/fr/design/images/bbs.png - protocolService.setProtocolHandler("emb", handler); - protocolService.setProtocolHandler("file", handler); - } -} diff --git a/designer-base/src/main/java/com/fr/design/ui/EmbProtocolHandler.java b/designer-base/src/main/java/com/fr/design/ui/EmbProtocolHandler.java deleted file mode 100644 index b6bed69ca1..0000000000 --- a/designer-base/src/main/java/com/fr/design/ui/EmbProtocolHandler.java +++ /dev/null @@ -1,135 +0,0 @@ -package com.fr.design.ui; - -import com.fr.base.TemplateUtils; -import com.fr.general.IOUtils; -import com.fr.log.FineLoggerFactory; -import com.fr.stable.EncodeConstants; -import com.fr.stable.StringUtils; -import com.fr.third.org.apache.commons.codec.net.URLCodec; -import com.fr.third.org.apache.commons.io.FileUtils; -import com.fr.third.org.apache.commons.io.FilenameUtils; -import com.fr.web.struct.AssembleComponent; -import com.fr.web.struct.AtomBuilder; -import com.fr.web.struct.PathGroup; -import com.fr.web.struct.category.ScriptPath; -import com.fr.web.struct.category.StylePath; -import com.teamdev.jxbrowser.chromium.ProtocolHandler; -import com.teamdev.jxbrowser.chromium.URLRequest; -import com.teamdev.jxbrowser.chromium.URLResponse; - -import java.io.ByteArrayInputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.StringReader; -import java.net.URI; -import java.nio.charset.StandardCharsets; -import java.util.Map; - -/** - * @author richie - * @version 10.0 - * Created by richie on 2019-03-07 - */ -public class EmbProtocolHandler implements ProtocolHandler { - - private AssembleComponent component; - private Map map; - - public EmbProtocolHandler() { - - } - - public EmbProtocolHandler(AssembleComponent component) { - this.component = component; - } - - public EmbProtocolHandler(AssembleComponent component, Map map) { - this.component = component; - this.map = map; - } - - public EmbProtocolHandler(Map map) { - this.map = map; - } - - @Override - public URLResponse onRequest(URLRequest req) { - InputStream inputStream = null; - try { - String path = req.getURL(); - if (path.startsWith("file:")) { - String url = new URLCodec().decode(path); - String filePath = TemplateUtils.renderParameter4Tpl(url, map); - File file = new File(URI.create(filePath).getPath()); - inputStream = IOUtils.readResource(file.getAbsolutePath()); - String text = IOUtils.inputStream2String(inputStream, EncodeConstants.ENCODING_UTF_8); - text = TemplateUtils.renderParameter4Tpl(text, map); - return Assistant.inputStream2Response(new ByteArrayInputStream(text.getBytes(StandardCharsets.UTF_8)), path); - } else if (path.startsWith("emb:dynamic")) { - URLResponse response = new URLResponse(); - response.setData(htmlText(map).getBytes()); - response.getHeaders().setHeader("Content-Type", "text/html"); - return response; - } else { - int index = path.indexOf("="); - if (index > 0) { - path = path.substring(index + 1); - } else { - path = path.substring(4); - } - inputStream = IOUtils.readResource(path); - if (path.endsWith(".html")) { - String text = IOUtils.inputStream2String(inputStream, EncodeConstants.ENCODING_UTF_8); - text = TemplateUtils.renderParameter4Tpl(text, map); - return Assistant.inputStream2Response(new ByteArrayInputStream(text.getBytes(StandardCharsets.UTF_8)), path); - } - return Assistant.inputStream2Response(inputStream, path); - } - } catch (Exception e) { - FineLoggerFactory.getLogger().info(e.getMessage()); - } finally { - if (inputStream != null) { - try { - inputStream.close(); - } catch (IOException e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - } - } - return null; - } - - private String htmlText(Map map) { - PathGroup pathGroup = AtomBuilder.create().buildAssembleFilePath(ModernRequestClient.KEY, component); - StylePath[] stylePaths = pathGroup.toStylePathGroup(); - StringBuilder styleText = new StringBuilder(); - for (StylePath path : stylePaths) { - if (StringUtils.isNotBlank(path.toFilePath())) { - styleText.append(""); - } - } - String result = ModernUIConstants.HTML_TPL.replaceAll("##style##", styleText.toString()); - ScriptPath[] scriptPaths = pathGroup.toScriptPathGroup(); - StringBuilder scriptText = new StringBuilder(); - for (ScriptPath path : scriptPaths) { - if (StringUtils.isNotBlank(path.toFilePath())) { - scriptText.append(""); - } - } - result = result.replaceAll("##script##", scriptText.toString()); - if (map != null) { - for (Map.Entry entry : map.entrySet()) { - String key = entry.getKey(); - String value = entry.getValue(); - result = result.replaceAll("\\$\\{" + key + "}", value); - } - } - return result; - } -} diff --git a/designer-base/src/main/java/com/fr/design/ui/ModernUIPane.java b/designer-base/src/main/java/com/fr/design/ui/ModernUIPane.java deleted file mode 100644 index f3aceb8476..0000000000 --- a/designer-base/src/main/java/com/fr/design/ui/ModernUIPane.java +++ /dev/null @@ -1,364 +0,0 @@ -package com.fr.design.ui; - -import com.fr.design.DesignerEnvManager; -import com.fr.design.dialog.BasicPane; -import com.fr.design.gui.ibutton.UIButton; -import com.fr.design.gui.itoolbar.UIToolbar; -import com.fr.design.i18n.Toolkit; -import com.fr.design.ui.compatible.BuilderDiff; -import com.fr.design.utils.gui.GUICoreUtils; -import com.fr.web.struct.AssembleComponent; -import com.teamdev.jxbrowser.browser.callback.InjectJsCallback; -import com.teamdev.jxbrowser.chromium.Browser; -import com.teamdev.jxbrowser.chromium.BrowserType; -import com.teamdev.jxbrowser.chromium.JSValue; -import com.teamdev.jxbrowser.chromium.events.LoadListener; -import com.teamdev.jxbrowser.chromium.events.ScriptContextAdapter; -import com.teamdev.jxbrowser.chromium.events.ScriptContextEvent; -import com.teamdev.jxbrowser.chromium.events.ScriptContextListener; -import com.teamdev.jxbrowser.chromium.swing.BrowserView; -import com.teamdev.jxbrowser.event.Observer; - -import javax.swing.JDialog; -import javax.swing.SwingUtilities; -import javax.swing.WindowConstants; -import java.awt.BorderLayout; -import java.awt.Dimension; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.io.File; -import java.util.Map; - -/** - * @author richie - * @version 10.0 - * Created by richie on 2019-03-04 - * 用于加载html5的Swing容器,可以在设计选项设置中打开调试窗口,示例可查看:com.fr.design.ui.ModernUIPaneTest - * @see {@link com.fr.design.jxbrowser.JxUIPane} - * @deprecated 主要用于jxbrowser6,将在下个版本删除 - */ -@Deprecated -public class ModernUIPane extends BasicPane { - - private Browser browser; - private String namespace = "Pool"; - private String variable = "data"; - private String expression = "update()"; - - private ModernUIPane(BrowserType browserType) { - initialize(browserType); - } - - protected ModernUIPane() { - - } - - private void initialize(BrowserType browserType) { - if (browser == null) { - setLayout(new BorderLayout()); - Assistant.addChromiumSwitches("--disable-google-traffic"); - if (DesignerEnvManager.getEnvManager().isOpenDebug()) { - UIToolbar toolbar = new UIToolbar(); - add(toolbar, BorderLayout.NORTH); - UIButton openDebugButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Open_Debug_Window")); - toolbar.add(openDebugButton); - UIButton reloadButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Reload")); - toolbar.add(reloadButton); - UIButton closeButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Close_Window")); - toolbar.add(closeButton); - - openDebugButton.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - showDebuggerDialog(); - } - }); - - reloadButton.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - browser.reloadIgnoringCache(); - } - }); - - closeButton.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - SwingUtilities.getWindowAncestor(ModernUIPane.this).setVisible(false); - } - }); - Assistant.addChromiumSwitches("--remote-debugging-port=9222"); - initializeBrowser(browserType); - add(new BrowserView(browser), BorderLayout.CENTER); - } else { - initializeBrowser(browserType); - add(new BrowserView(browser), BorderLayout.CENTER); - } - } - } - - private void showDebuggerDialog() { - JDialog dialog = new JDialog(SwingUtilities.getWindowAncestor(this)); - Browser debugger = new Browser(); - BrowserView debuggerView = new BrowserView(debugger); - dialog.add(debuggerView, BorderLayout.CENTER); - dialog.setSize(new Dimension(800, 400)); - GUICoreUtils.centerWindow(dialog); - dialog.setVisible(true); - dialog.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); - debugger.loadURL(browser.getRemoteDebuggingURL()); - } - - private void initializeBrowser(BrowserType browserType) { - browser = new Browser(browserType); - // 初始化的时候,就把命名空间对象初始化好,确保window.a.b.c("a.b.c"为命名空间)对象都是初始化过的 - browser.addScriptContextListener(new ScriptContextAdapter() { - @Override - public void onScriptContextCreated(ScriptContextEvent event) { - event.getBrowser().executeJavaScript(String.format(ModernUIConstants.SCRIPT_INIT_NAME_SPACE, namespace)); - } - }); - } - - /** - * 转向一个新的地址,相当于重新加载 - * - * @param url 新的地址 - */ - public void redirect(String url) { - browser.loadURL(url); - } - - /** - * 转向一个新的地址,相当于重新加载 - * - * @param url 新的地址 - * @param map 初始化参数 - */ - public void redirect(String url, Map map) { - Assistant.setEmbProtocolHandler(browser, new EmbProtocolHandler(map)); - browser.loadURL(url); - } - - @Override - protected String title4PopupWindow() { - return "Modern"; - } - - - public void populate(final T t) { - browser.addScriptContextListener(new ScriptContextAdapter() { - @Override - public void onScriptContextCreated(ScriptContextEvent event) { - JSValue ns = event.getBrowser().executeJavaScriptAndReturnValue("window." + namespace); - ns.asObject().setProperty(variable, t); - } - }); - } - - public T update() { - JSValue jsValue = browser.executeJavaScriptAndReturnValue("window." + namespace + "." + expression); - if (jsValue.isObject()) { - return (T) jsValue.asJavaObject(); - } - return null; - } - - public void disposeBrowser() { - - if (browser != null) { - browser.dispose(); - browser = null; - } - - } - - public void clearCache() { - if (browser != null) { - browser.getCacheStorage().clearCache(); - File file = new File(browser.getContext().getCacheDir()); - if (file.exists()) { - file.delete(); - } - } - } - - public void executeJavaScript(String javaScript) { - if (browser != null) { - browser.executeJavaScript(javaScript); - } - } - - public JSValue executeJavaScriptAndReturnValue(String javaScript) { - if (browser != null) { - return browser.executeJavaScriptAndReturnValue(javaScript); - } - return null; - } - - - /** - * ModernUIPane 建造者 - * - * @param - */ - public static class Builder implements BuilderDiff { - - private ModernUIPane pane; - - public Builder() { - this(BrowserType.HEAVYWEIGHT); - } - - public Builder(BrowserType browserType) { - this.pane = new ModernUIPane<>(browserType); - } - - public Builder(ModernUIPane pane) { - this.pane = pane; - } - - public Builder prepare(ScriptContextListener contextListener) { - pane.browser.addScriptContextListener(contextListener); - return this; - } - - public Builder prepare(LoadListener loadListener) { - pane.browser.addLoadListener(loadListener); - return this; - } - - /** - * 加载jar包中的资源 - * - * @param path 资源路径 - */ - public Builder withEMB(final String path) { - Assistant.setEmbProtocolHandler(pane.browser, new EmbProtocolHandler()); - pane.browser.loadURL("emb:" + path); - return this; - } - - /** - * 加载jar包中的资源 - * - * @param path 资源路径 - */ - public Builder withEMB(final String path, Map map) { - Assistant.setEmbProtocolHandler(pane.browser, new EmbProtocolHandler(map)); - pane.browser.loadURL("emb:" + path); - return this; - } - - /** - * 加载url指向的资源 - * - * @param url 文件的地址 - */ - public Builder withURL(final String url) { - Assistant.setEmbProtocolHandler(pane.browser, new EmbProtocolHandler()); - pane.browser.loadURL(url); - return this; - } - - /** - * 加载url指向的资源 - * - * @param url 文件的地址 - */ - public Builder withURL(final String url, Map map) { - Assistant.setEmbProtocolHandler(pane.browser, new EmbProtocolHandler(map)); - pane.browser.loadURL(url); - return this; - } - - /** - * 加载Atom组件 - * - * @param component Atom组件 - */ - public Builder withComponent(AssembleComponent component) { - Assistant.setEmbProtocolHandler(pane.browser, new EmbProtocolHandler(component)); - pane.browser.loadURL("emb:dynamic"); - return this; - } - - /** - * 加载Atom组件 - * - * @param component Atom组件 - */ - public Builder withComponent(AssembleComponent component, Map map) { - Assistant.setEmbProtocolHandler(pane.browser, new EmbProtocolHandler(component, map)); - pane.browser.loadURL("emb:dynamic"); - return this; - } - - /** - * 加载html文本内容 - * - * @param html 要加载html文本内容 - */ - public Builder withHTML(String html) { - Assistant.setEmbProtocolHandler(pane.browser, new EmbProtocolHandler()); - pane.browser.loadHTML(html); - return this; - } - - /** - * 设置该前端页面做数据交换所使用的对象 - * - * @param namespace 对象名 - */ - public Builder namespace(String namespace) { - pane.namespace = namespace; - return this; - } - - /** - * java端往js端传数据时使用的变量名字 - * - * @param name 变量的名字 - */ - public Builder variable(String name) { - pane.variable = name; - return this; - } - - /** - * js端往java端传数据时执行的函数表达式 - * - * @param expression 函数表达式 - */ - public Builder expression(String expression) { - pane.expression = expression; - return this; - } - - @Override - public Builder prepareForV6(ScriptContextListener contextListener) { - return prepare(contextListener); - } - - @Override - public Builder prepareForV6(LoadListener loadListener) { - return prepare(loadListener); - } - - @Override - public Builder prepareForV7(InjectJsCallback callback) { - // do nothing - return this; - } - - @Override - public Builder prepareForV7(Class event, Observer listener) { - // do nothing - return this; - } - - public ModernUIPane build() { - return pane; - } - } -} diff --git a/designer-base/src/main/java/com/fr/design/ui/compatible/BuilderDiff.java b/designer-base/src/main/java/com/fr/design/ui/compatible/BuilderDiff.java deleted file mode 100644 index 99daa4555a..0000000000 --- a/designer-base/src/main/java/com/fr/design/ui/compatible/BuilderDiff.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.fr.design.ui.compatible; - -import com.fr.design.jxbrowser.JxUIPane; -import com.fr.design.ui.ModernUIPane; -import com.teamdev.jxbrowser.browser.callback.InjectJsCallback; -import com.teamdev.jxbrowser.chromium.events.LoadListener; -import com.teamdev.jxbrowser.chromium.events.ScriptContextListener; -import com.teamdev.jxbrowser.event.Observer; - -/** - * 封装jxbrwoser v6/v7的构建方式的差异 - * - * @author hades - * @see {@link JxUIPane} - * @since 10.0 - * Created on 2021/6/13 - * @deprecated 6在下个版本弃用 - */ -@Deprecated -public interface BuilderDiff { - - /** - * v6准备工作 - * - * @param contextListener 上下文监听器 - * @return 构造器 - */ - ModernUIPane.Builder prepareForV6(ScriptContextListener contextListener); - - /** - * v6准备工作 - * - * @param loadListener 加载监听器 - * @return 构造器 - */ - ModernUIPane.Builder prepareForV6(LoadListener loadListener); - - /** - * v7准备工作 - * - * @param callback 注入js回调器 - * @return 构造器 - */ - ModernUIPane.Builder prepareForV7(InjectJsCallback callback); - - /** - * v7准备工作 - * - * @param event 事件 - * @param listener 监听器 - * @return 构造器 - */ - ModernUIPane.Builder prepareForV7(Class event, Observer listener); - -} diff --git a/designer-base/src/main/java/com/fr/design/ui/compatible/ModernUIPaneFactory.java b/designer-base/src/main/java/com/fr/design/ui/compatible/ModernUIPaneFactory.java deleted file mode 100644 index 31774e90c9..0000000000 --- a/designer-base/src/main/java/com/fr/design/ui/compatible/ModernUIPaneFactory.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.fr.design.ui.compatible; - -import com.fr.design.jxbrowser.JxUIPane; -import com.fr.design.ui.ModernUIPane; - -/** - * 根据版本选择构造器 - * - * @author hades - * @see {@link JxUIPane} - * @since 10.0 - * Created on 2021/6/13 - * @deprecated 6在下个版本弃用 - */ -public class ModernUIPaneFactory { - - /** - * 获取一个 JxBrowser pane 的构造器 - * - * @param 参数 - * @return 构造器 - */ - public static ModernUIPane.Builder modernUIPaneBuilder() { - if (isV7()) { - return new JxUIPane.Builder<>(); - } else { - return new ModernUIPane.Builder<>(); - } - } - - /** - * 判断 JxBrowser 版本是否在7或之上 - * - * @return 是否7或之上 - */ - public static boolean isV7() { - boolean jxBrowserV7 = true; - try { - Class.forName("com.teamdev.jxbrowser.net.Scheme"); - } catch (ClassNotFoundException e) { - jxBrowserV7 = false; - } - return jxBrowserV7; - } -} diff --git a/designer-base/src/main/java/com/fr/design/update/ui/dialog/UpdateMainDialog.java b/designer-base/src/main/java/com/fr/design/update/ui/dialog/UpdateMainDialog.java index 282b09d7fa..5886a53234 100644 --- a/designer-base/src/main/java/com/fr/design/update/ui/dialog/UpdateMainDialog.java +++ b/designer-base/src/main/java/com/fr/design/update/ui/dialog/UpdateMainDialog.java @@ -1,7 +1,6 @@ package com.fr.design.update.ui.dialog; import com.fanruan.product.ProductConstants; -import com.fine.theme.utils.FineUIScale; import com.fr.decision.update.data.UpdateConstants; import com.fr.decision.update.info.UpdateCallBack; import com.fr.decision.update.info.UpdateProgressCallBack; @@ -14,7 +13,6 @@ import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.ilable.ActionLabel; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextfield.UITextField; -import com.fr.design.i18n.DesignSizeI18nManager; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; @@ -62,6 +60,7 @@ import java.util.*; import java.util.List; import java.util.concurrent.ExecutionException; +import static com.fine.theme.utils.FineUIScale.scale; import static java.nio.charset.StandardCharsets.*; import static javax.swing.JOptionPane.QUESTION_MESSAGE; @@ -72,11 +71,10 @@ public class UpdateMainDialog extends UIDialog { public static final Dimension DEFAULT = new Dimension(660, 620); private static final Dimension PROGRESSBAR = new Dimension(120, 15); - private static final Dimension UPDATE_BUTTON = new Dimension(80, 24); private static final int UPDATE_PANE_ROW_SIZE = 30; private static final int UPDATE_CONTENT_PANE_ROW_SIZE = 10; private static final int UPDATE_CONTENT_PANE_COLUMN_SIZE = 10; - private static final int UPDATE_CONTENT_PANE_LABEL_COLUMN_SIZE = 100; + private static final int UPDATE_CONTENT_PANE_LABEL_COLUMN_SIZE = 120; private static final int SEARCH_PANE_ROW_SIZE = 50; private static final int SEARCH_PANE_TEXT_COLUMN = 130; private static final int SEARCH_PANE_COLUMN_GAP = 3; @@ -159,7 +157,7 @@ public class UpdateMainDialog extends UIDialog { progressBar.setForeground(UpdateConstants.BAR_COLOR); progressBar.setVisible(false); progressBar.setStringPainted(true); - progressBar.setPreferredSize(PROGRESSBAR); + progressBar.setPreferredSize(scale(PROGRESSBAR)); progressBarPane.add(GUICoreUtils.createBorderLayoutPane( progressBar, BorderLayout.CENTER @@ -298,7 +296,6 @@ public class UpdateMainDialog extends UIDialog { loadingLabel = new LoadingLabel(); loadingLabel.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Updater_Checking_Jar_Update")); updateButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Updater_Update")); - updateButton.setPreferredSize(FineUIScale.scale(UPDATE_BUTTON)); updateButton.setEnabled(false); double[] rowSize = {TableLayout.PREFERRED}; @@ -692,7 +689,7 @@ public class UpdateMainDialog extends UIDialog { * 显示窗口 */ public void showDialog() { - setSize(DEFAULT); + setSize(scale(DEFAULT)); setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Updater_UpdateAndUpgrade")); GUICoreUtils.centerWindow(this); setVisible(true); diff --git a/designer-base/src/main/java/com/fr/design/upm/UpmBridge.java b/designer-base/src/main/java/com/fr/design/upm/UpmBridge.java deleted file mode 100644 index 980ac2c8a8..0000000000 --- a/designer-base/src/main/java/com/fr/design/upm/UpmBridge.java +++ /dev/null @@ -1,515 +0,0 @@ -package com.fr.design.upm; - -import com.fr.config.ServerPreferenceConfig; -import com.fr.decision.webservice.v10.plugin.helper.category.impl.UpmResourceLoader; -import com.fr.design.DesignerEnvManager; -import com.fr.design.bridge.exec.JSBridge; -import com.fr.design.bridge.exec.JSCallback; -import com.fr.design.extra.PluginOperateUtils; -import com.fr.design.extra.PluginUtils; -import com.fr.design.extra.exe.GetInstalledPluginsExecutor; -import com.fr.design.extra.exe.GetPluginCategoriesExecutor; -import com.fr.design.extra.exe.GetPluginFromStoreExecutor; -import com.fr.design.extra.exe.GetPluginPrefixExecutor; -import com.fr.design.extra.exe.PluginLoginExecutor; -import com.fr.design.extra.exe.ReadUpdateOnlineExecutor; -import com.fr.design.extra.exe.SearchOnlineExecutor; -import com.fr.design.gui.ifilechooser.FileChooserArgs; -import com.fr.design.gui.ifilechooser.FileChooserFactory; -import com.fr.design.gui.ifilechooser.FileChooserProvider; -import com.fr.design.gui.ifilechooser.FileSelectionMode; -import com.fr.design.i18n.Toolkit; -import com.fr.design.locale.impl.BbsRegisterMark; -import com.fr.design.locale.impl.BbsResetMark; -import com.fr.design.locale.impl.BbsSpaceMark; -import com.fr.design.login.utils.DesignerLoginUtils; -import com.fr.design.ui.util.UIUtil; -import com.fr.design.upm.event.DownloadEvent; -import com.fr.design.upm.exec.UpmBrowserExecutor; -import com.fr.design.upm.task.UpmTaskWorker; -import com.fr.design.utils.BrowseUtils; -import com.fr.event.EventDispatcher; -import com.fr.general.GeneralUtils; -import com.fr.general.locale.LocaleCenter; -import com.fr.general.locale.LocaleMark; -import com.fr.json.JSONObject; -import com.fr.log.FineLoggerFactory; -import com.fr.plugin.context.PluginMarker; -import com.fr.stable.ArrayUtils; -import com.fr.stable.StringUtils; -import com.teamdev.jxbrowser.chromium.Browser; -import com.teamdev.jxbrowser.chromium.JSArray; -import com.teamdev.jxbrowser.chromium.JSFunction; -import com.teamdev.jxbrowser.chromium.JSObject; - -import javax.swing.JFileChooser; -import javax.swing.SwingUtilities; -import javax.swing.SwingWorker; -import javax.swing.filechooser.FileNameExtensionFilter; -import java.awt.Desktop; -import java.io.File; -import java.net.URI; -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.Callable; -import java.util.concurrent.FutureTask; -import java.util.concurrent.RunnableFuture; - -/** - * @author richie - * @version 10.0 - * Created by richie on 2019-04-12 - * 桥接Java和JavaScript的类 - * @deprecated 用于jxbrowser6,下版本删除 - */ -@Deprecated -public class UpmBridge { - - public static UpmBridge getBridge(Browser browser) { - return new UpmBridge(browser); - } - - private JSObject window; - - private UpmBridge(Browser browser) { - this.window = browser.executeJavaScriptAndReturnValue("window").asObject(); - } - - protected UpmBridge() { - - } - - /** - * 更新插件管理中心资源文件,这个方法仅仅是为了语义上的作用(更新) - * - * @param callback 安装完成后的回调函数 - */ - @JSBridge - public void update(final JSFunction callback) { - callback.invoke(window, "start", Toolkit.i18nText("Fine-Design_Basic_Update_Plugin_Manager_Download_Start")); - try { - UpmResourceLoader.INSTANCE.download(); - UpmResourceLoader.INSTANCE.install(); - callback.invoke(window, "success", Toolkit.i18nText("Fine-Design_Basic_Update_Plugin_Manager_Download_Success")); - EventDispatcher.fire(DownloadEvent.UPDATE, "success"); - } catch (Exception e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - callback.invoke(window, "error", Toolkit.i18nText("Fine-Design_Basic_Update_Plugin_Manager_Download_Error")); - } - } - - /** - * 下载并安装插件管理中心的资源文件 - * - * @param callback 安装完成后的回调函数 - */ - @JSBridge - public void startDownload(final JSFunction callback) { - callback.invoke(window, "start", Toolkit.i18nText("Fine-Design_Basic_Update_Plugin_Manager_Download_Start")); - new SwingWorker() { - @Override - protected Void doInBackground() throws Exception { - UpmResourceLoader.INSTANCE.download(); - UpmResourceLoader.INSTANCE.install(); - return null; - } - - @Override - protected void done() { - try { - get(); - callback.invoke(window, "success", Toolkit.i18nText("Fine-Design_Basic_Update_Plugin_Manager_Download_Success")); - EventDispatcher.fire(DownloadEvent.SUCCESS, "success"); - } catch (Exception e) { - callback.invoke(window, "error", Toolkit.i18nText("Fine-Design_Basic_Update_Plugin_Manager_Download_Error")); - FineLoggerFactory.getLogger().error(e.getMessage(), e); - EventDispatcher.fire(DownloadEvent.ERROR, "error"); - } - } - }.execute(); - } - - /** - * 获取upm的版本信息 - * - * @return 版本信息 - */ - @JSBridge - public String getVersion() { - return ServerPreferenceConfig.getInstance().getOptimizedUPMVersion(); - } - - @JSBridge - public String i18nText(String key) { - return Toolkit.i18nText(key); - } - - @JSBridge - public void closeWindow() { - UIUtil.invokeLaterIfNeeded(UpmFinder::closeWindow); - } - - - @JSBridge - public boolean isDesigner() { - return true; - } - - @JSBridge - public void getPackInfo(final JSFunction callback) { - callback.invoke(window, StringUtils.EMPTY); - } - - @JSBridge - public void getPluginPrefix(final JSFunction callback) { - UpmTaskWorker task = new UpmTaskWorker<>(new JSCallback(UpmBrowserExecutor.create(window, callback)), new GetPluginPrefixExecutor()); - task.execute(); - } - - /** - * 在线获取插件分类 - * - * @param callback 回调函数 - */ - @JSBridge - public void getPluginCategories(final JSFunction callback) { - UpmTaskWorker task = new UpmTaskWorker<>(new JSCallback(UpmBrowserExecutor.create(window, callback)), new GetPluginCategoriesExecutor()); - task.execute(); - } - - /** - * 根据条件获取在线插件 - * - * @param info 插件信息 - * @param callback 回调函数 - */ - @JSBridge - public void getPluginFromStoreNew(String info, final JSFunction callback) { - UpmTaskWorker task = new UpmTaskWorker<>(new JSCallback(UpmBrowserExecutor.create(window, callback)), new GetPluginFromStoreExecutor(new JSONObject(info))); - task.execute(); - } - - /** - * 已安装插件检查更新 - */ - @JSBridge - public void readUpdateOnline(final JSFunction callback) { - UpmTaskWorker task = new UpmTaskWorker<>(new JSCallback(UpmBrowserExecutor.create(window, callback)), new ReadUpdateOnlineExecutor()); - task.execute(); - } - - /** - * 获取已经安装的插件的数组 - */ - @JSBridge - public void getInstalledPlugins(final JSFunction callback) { - UpmTaskWorker task = new UpmTaskWorker<>(new JSCallback(UpmBrowserExecutor.create(window, callback)), new GetInstalledPluginsExecutor()); - task.execute(); - } - - /** - * 从插件服务器上更新选中的插件 - * - * @param pluginIDs 插件集合 - */ - @JSBridge - public void updatePluginOnline(Object pluginIDs, final JSFunction callback) { - JSCallback jsCallback = new JSCallback(UpmBrowserExecutor.create(window, callback)); - List pluginMarkerList = new ArrayList<>(); - if (pluginIDs instanceof String) { - pluginMarkerList.add(PluginUtils.createPluginMarker(pluginIDs.toString())); - } else if (pluginIDs instanceof JSArray) { - JSArray pluginInfos = (JSArray) pluginIDs; - for (int i = 0, len = pluginInfos.length(); i < len; i++) { - String value = pluginInfos.get(i).asString().getValue(); - pluginMarkerList.add(PluginUtils.createPluginMarker(value)); - } - } - PluginOperateUtils.updatePluginOnline(pluginMarkerList, jsCallback); - } - - /** - * 搜索在线插件 - * - * @param keyword 关键字 - */ - @JSBridge - public void searchPlugin(String keyword, final JSFunction callback) { - UpmTaskWorker worker = new UpmTaskWorker<>(new JSCallback(UpmBrowserExecutor.create(window, callback)), new SearchOnlineExecutor(keyword)); - worker.execute(); - } - - /** - * 从磁盘上选择插件安装包进行安装 - * - * @param filePath 插件包的路径 - */ - @JSBridge - public void installPluginFromDisk(final String filePath, final JSFunction callback) { - JSCallback jsCallback = new JSCallback(UpmBrowserExecutor.create(window, callback)); - File file = new File(filePath); - PluginOperateUtils.installPluginFromDisk(file, jsCallback); - } - - /** - * 卸载当前选中的插件 - * - * @param pluginInfo 插件信息 - */ - @JSBridge - public void uninstallPlugin(final String pluginInfo, final boolean isForce, final JSFunction callback) { - JSCallback jsCallback = new JSCallback(UpmBrowserExecutor.create(window, callback)); - PluginOperateUtils.uninstallPlugin(pluginInfo, isForce, jsCallback); - } - - /** - * 从插件服务器上安装插件 - * - * @param pluginInfo 插件的ID - * @param callback 回调函数 - */ - @JSBridge - public void installPluginOnline(final String pluginInfo, final JSFunction callback) { - JSCallback jsCallback = new JSCallback(UpmBrowserExecutor.create(window, callback)); - PluginMarker pluginMarker = PluginUtils.createPluginMarker(pluginInfo); - PluginOperateUtils.installPluginOnline(pluginMarker, jsCallback); - } - - /** - * 从磁盘上选择插件安装包进行插件升级 - * - * @param filePath 插件包的路径 - */ - public void updatePluginFromDisk(String filePath, final JSFunction callback) { - JSCallback jsCallback = new JSCallback(UpmBrowserExecutor.create(window, callback)); - File file = new File(filePath); - PluginOperateUtils.updatePluginFromDisk(file, jsCallback); - } - - /** - * 修改选中的插件的活跃状态 - * - * @param pluginID 插件ID - */ - @JSBridge - public void setPluginActive(String pluginID, final JSFunction callback) { - JSCallback jsCallback = new JSCallback(UpmBrowserExecutor.create(window, callback)); - PluginOperateUtils.setPluginActive(pluginID, jsCallback); - } - - /** - * 批量修改选中的插件的活跃状态 - * - * @param pluginIDs 要处理的插件ID - * @param callback 回调函数 - */ - @JSBridge - public void setAllPluginActive(JSArray pluginIDs, final JSFunction callback) { - JSCallback jsCallback = new JSCallback(UpmBrowserExecutor.create(window, callback)); - List list = new ArrayList<>(); - int len = pluginIDs.length(); - for (int i = 0; i < len; i++) { - list.add(pluginIDs.get(i).asString().getValue()); - } - PluginOperateUtils.setPluginActive(list, jsCallback); - } - - /** - * 选择文件对话框 - * - * @return 选择的文件的路径 - */ - @JSBridge - public String showFileChooser() { - return showFileChooserWithFilter(StringUtils.EMPTY, StringUtils.EMPTY); - } - - /** - * 选择文件对话框 - * - * @param des 过滤文件描述 - * @param filter 文件的后缀 - * @return 选择的文件的路径 - * 这里换用JFileChooser会卡死,不知道为什么 - */ - @JSBridge - public String showFileChooserWithFilter(final String des, final String filter) { - RunnableFuture future = new FutureTask<>(new Callable() { - @Override - public String call() { - FileChooserProvider fileChooserProvider = FileChooserFactory.createFileChooser( - FileChooserArgs.newBuilder(). - setFileSelectionMode(FileSelectionMode.FILE). - setFilter(des, filter).build()); - int result = fileChooserProvider.showDialog(UpmFinder.getDialog()); - if (result == JFileChooser.APPROVE_OPTION) { - return fileChooserProvider.getSelectedFile().getAbsolutePath(); - } - return null; - } - }); - SwingUtilities.invokeLater(future); - try { - return future.get(); - } catch (Exception e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - return null; - } - - /** - * 选择文件对话框 - * - * @param des 过滤文件描述 - * @param args 文件的后缀 - * @return 选择的文件的路径 - */ - @JSBridge - public String showFileChooserWithFilters(final String des, final Object args) { - RunnableFuture future = new FutureTask<>(new Callable() { - @Override - public String call() { - JFileChooser fileChooser = new JFileChooser(); - List filterList = new ArrayList<>(); - if (args instanceof String) { - filterList.add(GeneralUtils.objectToString(args)); - } else if (args instanceof JSArray) { - JSArray array = (JSArray) args; - for (int i = 0, len = array.length(); i < len; i++) { - filterList.add(array.get(i).getStringValue()); - } - } - String[] filters = filterList.toArray(new String[0]); - if (ArrayUtils.isNotEmpty(filters)) { - FileNameExtensionFilter filter = new FileNameExtensionFilter(des, UpmUtils.findMatchedExtension(filters)); - fileChooser.setFileFilter(filter); - } - int result = fileChooser.showOpenDialog(UpmFinder.getDialog()); - if (result == JFileChooser.APPROVE_OPTION) { - return fileChooser.getSelectedFile().getAbsolutePath(); - } - return null; - } - }); - SwingUtilities.invokeLater(future); - try { - return future.get(); - } catch (Exception e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - return null; - } - - ////////登录相关/////// - - /** - * 获取系统登录的用户名 - */ - @JSBridge - public String getLoginInfo(final JSFunction callback) { - registerLoginInfo(callback); - return DesignerEnvManager.getEnvManager().getDesignerLoginUsername(); - } - - /** - * 系统登录注册 - * - * @param callback 回调函数 - */ - @JSBridge - public void registerLoginInfo(final JSFunction callback) { - JSCallback jsCallback = new JSCallback(UpmBrowserExecutor.create(window, callback)); - String username = DesignerEnvManager.getEnvManager().getDesignerLoginUsername(); - if (StringUtils.isEmpty(username)) { - jsCallback.execute(StringUtils.EMPTY); - } else { - jsCallback.execute(username); - } - } - - - /** - * 设计器端的用户登录 - * - * @param username 用户名 - * @param password 密码 - * @param callback 回调函数 - */ - @JSBridge - public void defaultLogin(String username, String password, final JSFunction callback) { - UpmTaskWorker worker = new UpmTaskWorker<>(new JSCallback(UpmBrowserExecutor.create(window, callback)), new PluginLoginExecutor(username, password)); - worker.execute(); - } - - /** - * 清除用户信息 - */ - @JSBridge - public void clearUserInfo() { - - } - - /** - * 打开论坛消息界面 - */ - @JSBridge - public void getPriviteMessage() { - try { - LocaleMark spaceMark = LocaleCenter.getMark(BbsSpaceMark.class); - String ssoUrl = DesignerLoginUtils.generateDesignerSSOUrl(spaceMark.getValue()); - BrowseUtils.browser(ssoUrl); - } catch (Exception exp) { - FineLoggerFactory.getLogger().info(exp.getMessage()); - } - } - - /** - * 忘记密码 - */ - @JSBridge - public void forgetHref() { - try { - LocaleMark resetMark = LocaleCenter.getMark(BbsResetMark.class); - Desktop.getDesktop().browse(new URI(resetMark.getValue())); - } catch (Exception e) { - FineLoggerFactory.getLogger().info(e.getMessage()); - } - } - - /** - * 立即注册 - */ - @JSBridge - public void registerHref() { - try { - LocaleMark registerMark = LocaleCenter.getMark(BbsRegisterMark.class); - Desktop.getDesktop().browse(new URI(registerMark.getValue())); - } catch (Exception e) { - FineLoggerFactory.getLogger().info(e.getMessage()); - } - } - - /** - * 使用系统浏览器打开网页 - * - * @param url 要打开的网页 - */ - @JSBridge - public void openShopUrlAtWebBrowser(String url) { - if (Desktop.isDesktopSupported()) { - try { - //创建一个URI实例,注意不是URL - URI uri = URI.create(url); - //获取当前系统桌面扩展 - Desktop desktop = Desktop.getDesktop(); - //判断系统桌面是否支持要执行的功能 - if (desktop.isSupported(Desktop.Action.BROWSE)) { - //获取系统默认浏览器打开链接 - desktop.browse(uri); - } - } catch (Exception e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } - } - } -} diff --git a/designer-base/src/main/java/com/fr/design/upm/UpmBridgeV7.java b/designer-base/src/main/java/com/fr/design/upm/UpmBridgeV7.java index f35ed11ac0..fe753fe3b5 100644 --- a/designer-base/src/main/java/com/fr/design/upm/UpmBridgeV7.java +++ b/designer-base/src/main/java/com/fr/design/upm/UpmBridgeV7.java @@ -1,5 +1,6 @@ package com.fr.design.upm; +import com.fr.config.ServerPreferenceConfig; import com.fr.decision.webservice.v10.plugin.helper.category.impl.UpmResourceLoader; import com.fr.design.DesignerEnvManager; import com.fr.design.bridge.exec.JSBridge; @@ -13,13 +14,25 @@ import com.fr.design.extra.exe.GetPluginPrefixExecutor; import com.fr.design.extra.exe.PluginLoginExecutor; import com.fr.design.extra.exe.ReadUpdateOnlineExecutor; import com.fr.design.extra.exe.SearchOnlineExecutor; +import com.fr.design.gui.ifilechooser.FileChooserArgs; +import com.fr.design.gui.ifilechooser.FileChooserFactory; +import com.fr.design.gui.ifilechooser.FileChooserProvider; +import com.fr.design.gui.ifilechooser.FileSelectionMode; import com.fr.design.i18n.Toolkit; +import com.fr.design.locale.impl.BbsRegisterMark; +import com.fr.design.locale.impl.BbsResetMark; +import com.fr.design.locale.impl.BbsSpaceMark; +import com.fr.design.login.utils.DesignerLoginUtils; +import com.fr.design.ui.util.UIUtil; import com.fr.design.upm.event.CertificateEvent; import com.fr.design.upm.event.DownloadEvent; import com.fr.design.upm.exec.NewUpmBrowserExecutor; import com.fr.design.upm.task.UpmTaskWorker; +import com.fr.design.utils.BrowseUtils; import com.fr.event.EventDispatcher; import com.fr.general.GeneralUtils; +import com.fr.general.locale.LocaleCenter; +import com.fr.general.locale.LocaleMark; import com.fr.json.JSONObject; import com.fr.log.FineLoggerFactory; import com.fr.plugin.context.PluginMarker; @@ -29,24 +42,29 @@ import com.teamdev.jxbrowser.js.JsAccessible; import com.teamdev.jxbrowser.js.JsFunction; import com.teamdev.jxbrowser.js.JsObject; import com.teamdev.jxbrowser.js.internal.JsArrayImpl; + import javax.swing.JFileChooser; import javax.swing.SwingUtilities; import javax.swing.SwingWorker; import javax.swing.filechooser.FileNameExtensionFilter; +import java.awt.Desktop; import java.io.File; +import java.net.URI; import java.util.ArrayList; import java.util.List; +import java.util.concurrent.Callable; import java.util.concurrent.FutureTask; import java.util.concurrent.RunnableFuture; /** - * @author richie - * @version 10.0 - * Created by richie on 2019-04-12 * 桥接Java和JavaScript的类 + * + * @author richie + * @since 10.0 + * Created on 2019-04-12 */ @JsAccessible -public class UpmBridgeV7 extends UpmBridge { +public class UpmBridgeV7 { public static UpmBridgeV7 getBridge(JsObject jsObject) { return new UpmBridgeV7(jsObject); @@ -117,30 +135,40 @@ public class UpmBridgeV7 extends UpmBridge { */ @JSBridge @JsAccessible - @Override public String getVersion() { - return super.getVersion(); + return ServerPreferenceConfig.getInstance().getOptimizedUPMVersion(); } + /** + * 国际化 + * + * @param key 国际化key + * @return 国际化文本 + */ @JSBridge @JsAccessible - @Override public String i18nText(String key) { - return super.i18nText(key); + return Toolkit.i18nText(key); } + /** + * 关闭窗口 + */ @JSBridge @JsAccessible - @Override public void closeWindow() { - super.closeWindow(); + UIUtil.invokeLaterIfNeeded(UpmFinder::closeWindow); } + /** + * 是否设计器 + * + * @return 是否设计器 + */ @JSBridge @JsAccessible - @Override public boolean isDesigner() { - return super.isDesigner(); + return true; } @JSBridge @@ -326,9 +354,8 @@ public class UpmBridgeV7 extends UpmBridge { */ @JSBridge @JsAccessible - @Override public String showFileChooser() { - return super.showFileChooser(); + return showFileChooserWithFilter(StringUtils.EMPTY, StringUtils.EMPTY); } /** @@ -341,9 +368,28 @@ public class UpmBridgeV7 extends UpmBridge { */ @JSBridge @JsAccessible - @Override public String showFileChooserWithFilter(final String des, final String filter) { - return super.showFileChooserWithFilter(des, filter); + RunnableFuture future = new FutureTask<>(new Callable() { + @Override + public String call() { + FileChooserProvider fileChooserProvider = FileChooserFactory.createFileChooser( + FileChooserArgs.newBuilder(). + setFileSelectionMode(FileSelectionMode.FILE). + setFilter(des, filter).build()); + int result = fileChooserProvider.showDialog(UpmFinder.getDialog()); + if (result == JFileChooser.APPROVE_OPTION) { + return fileChooserProvider.getSelectedFile().getAbsolutePath(); + } + return null; + } + }); + SwingUtilities.invokeLater(future); + try { + return future.get(); + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + } + return null; } /** @@ -469,9 +515,7 @@ public class UpmBridgeV7 extends UpmBridge { */ @JsAccessible @JSBridge - @Override public void clearUserInfo() { - super.clearUserInfo(); } /** @@ -479,9 +523,14 @@ public class UpmBridgeV7 extends UpmBridge { */ @JSBridge @JsAccessible - @Override public void getPriviteMessage() { - super.getPriviteMessage(); + try { + LocaleMark spaceMark = LocaleCenter.getMark(BbsSpaceMark.class); + String ssoUrl = DesignerLoginUtils.generateDesignerSSOUrl(spaceMark.getValue()); + BrowseUtils.browser(ssoUrl); + } catch (Exception exp) { + FineLoggerFactory.getLogger().info(exp.getMessage()); + } } /** @@ -489,9 +538,13 @@ public class UpmBridgeV7 extends UpmBridge { */ @JSBridge @JsAccessible - @Override public void forgetHref() { - super.forgetHref(); + try { + LocaleMark resetMark = LocaleCenter.getMark(BbsResetMark.class); + Desktop.getDesktop().browse(new URI(resetMark.getValue())); + } catch (Exception e) { + FineLoggerFactory.getLogger().info(e.getMessage()); + } } /** @@ -499,9 +552,13 @@ public class UpmBridgeV7 extends UpmBridge { */ @JSBridge @JsAccessible - @Override public void registerHref() { - super.registerHref(); + try { + LocaleMark registerMark = LocaleCenter.getMark(BbsRegisterMark.class); + Desktop.getDesktop().browse(new URI(registerMark.getValue())); + } catch (Exception e) { + FineLoggerFactory.getLogger().info(e.getMessage()); + } } /** @@ -511,8 +568,21 @@ public class UpmBridgeV7 extends UpmBridge { */ @JSBridge @JsAccessible - @Override public void openShopUrlAtWebBrowser(String url) { - super.openShopUrlAtWebBrowser(url); + if (Desktop.isDesktopSupported()) { + try { + //创建一个URI实例,注意不是URL + URI uri = URI.create(url); + //获取当前系统桌面扩展 + Desktop desktop = Desktop.getDesktop(); + //判断系统桌面是否支持要执行的功能 + if (desktop.isSupported(Desktop.Action.BROWSE)) { + //获取系统默认浏览器打开链接 + desktop.browse(uri); + } + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + } + } } } diff --git a/designer-base/src/main/java/com/fr/design/upm/exec/UpmBrowserExecutor.java b/designer-base/src/main/java/com/fr/design/upm/exec/UpmBrowserExecutor.java deleted file mode 100644 index 572f7b5f23..0000000000 --- a/designer-base/src/main/java/com/fr/design/upm/exec/UpmBrowserExecutor.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.fr.design.upm.exec; - -import com.fr.design.bridge.exec.JSExecutor; -import com.teamdev.jxbrowser.chromium.JSFunction; -import com.teamdev.jxbrowser.chromium.JSObject; - -/** - * @author richie - * @version 10.0 - * Created by richie on 2019-04-18 - */ -public class UpmBrowserExecutor implements JSExecutor { - - public static UpmBrowserExecutor create(JSObject window, JSFunction callback) { - return new UpmBrowserExecutor(window, callback); - } - - private JSObject window; - private JSFunction callback; - - private UpmBrowserExecutor(JSObject window, JSFunction callback) { - this.window = window; - this.callback = callback; - } - - @Override - public void executor(String newValue) { - callback.invoke(window, newValue); - } -} diff --git a/designer-base/src/main/java/com/fr/design/utils/ColorUtils.java b/designer-base/src/main/java/com/fr/design/utils/ColorUtils.java index dcb9738177..b0c3f3197f 100644 --- a/designer-base/src/main/java/com/fr/design/utils/ColorUtils.java +++ b/designer-base/src/main/java/com/fr/design/utils/ColorUtils.java @@ -7,6 +7,8 @@ import javax.swing.JScrollPane; import java.awt.Color; import java.awt.Component; import java.awt.Container; +import java.awt.event.ContainerAdapter; +import java.awt.event.ContainerEvent; import java.util.Arrays; /** @@ -53,6 +55,13 @@ public class ColorUtils { if (components != null) { Arrays.stream(components).forEach((e) -> syncBackgroundIfAbsent(e, replaceColor, defaultColor)); } + container.addContainerListener(new ContainerAdapter() { + @Override + public void componentAdded(ContainerEvent e) { + Component addedComponent = e.getChild(); + syncBackgroundIfAbsent(addedComponent, replaceColor, defaultColor); + } + }); } } diff --git a/designer-base/src/main/java/com/fr/design/utils/DesignerPort.java b/designer-base/src/main/java/com/fr/design/utils/DesignerPort.java index b57c54fbcd..cebbcf655b 100644 --- a/designer-base/src/main/java/com/fr/design/utils/DesignerPort.java +++ b/designer-base/src/main/java/com/fr/design/utils/DesignerPort.java @@ -1,5 +1,7 @@ package com.fr.design.utils; +import com.fine.theme.icon.LazyIcon; +import com.fine.theme.utils.FineUIScale; import com.fr.common.report.ReportState; import com.fr.design.DesignerEnvManager; import com.fr.design.RestartHelper; @@ -13,7 +15,6 @@ import com.fr.design.port.DesignerPortContext; import com.fr.design.utils.gui.GUICoreUtils; import com.fr.exit.DesignerExiter; import com.fr.general.ComparatorUtils; -import com.fr.general.IOUtils; import com.fr.process.engine.core.CarryMessageEvent; import com.fr.process.engine.core.FineProcessContext; import com.fr.stable.StringUtils; @@ -29,11 +30,12 @@ import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; import java.awt.BorderLayout; import java.awt.Color; -import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import static com.fine.theme.utils.FineUIScale.scale; + /** * 为的就是能替换 DesignPort.class 实现多开,因此避免编译器常量编译展开优化 */ @@ -128,7 +130,7 @@ public class DesignerPort implements XMLReadable, XMLWriter { this.setLayout(new BorderLayout()); this.setModal(true); this.portFiled = new UITextField(); - this.portFiled.setPreferredSize(new Dimension(180, 20)); + this.portFiled.setPreferredSize(FineUIScale.createScaleDimension(180, 20)); this.portFiled.getDocument().addDocumentListener(new DocumentListener() { @Override public void insertUpdate(DocumentEvent e) { @@ -147,7 +149,7 @@ public class DesignerPort implements XMLReadable, XMLWriter { }); JPanel iconPanel = new JPanel(); UILabel iconLabel = new UILabel(); - iconLabel.setIcon(IOUtils.readIcon("com/fr/design/images/edit/edit_typing.png")); + iconLabel.setIcon(new LazyIcon("edit")); iconPanel.add(iconLabel); iconPanel.add(iconLabel); JPanel textPane = FRGUIPaneFactory.createVerticalFlowLayout_Pane(true, FlowLayout.LEADING, 0, 10); @@ -194,7 +196,7 @@ public class DesignerPort implements XMLReadable, XMLWriter { this.add(northPane, BorderLayout.NORTH); this.add(centerPane, BorderLayout.CENTER); this.add(southPane, BorderLayout.SOUTH); - this.setSize(300, 150); + this.setSize(scale(300), scale(150)); this.setTitle(Toolkit.i18nText("Fine-Design_Modify_Designer_Port")); this.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); this.setResizable(false); diff --git a/designer-base/src/main/java/com/fr/design/utils/TemplateUtils.java b/designer-base/src/main/java/com/fr/design/utils/TemplateUtils.java index ff0afe1e9a..af86bb9045 100644 --- a/designer-base/src/main/java/com/fr/design/utils/TemplateUtils.java +++ b/designer-base/src/main/java/com/fr/design/utils/TemplateUtils.java @@ -1,5 +1,7 @@ package com.fr.design.utils; +import com.fanruan.product.ProductConstants; +import com.fanruan.repository.TemplateRepository; import com.fr.base.extension.FileExtension; import com.fr.design.file.HistoryTemplateListCache; import com.fr.design.file.TemplateTreePane; @@ -15,13 +17,11 @@ import com.fr.file.filter.ChooseFileFilter; import com.fr.log.FineLoggerFactory; import com.fr.stable.ArrayUtils; import com.fr.stable.CoreConstants; -import com.fanruan.product.ProductConstants; import com.fr.stable.StringUtils; import com.fr.workspace.WorkContext; -import com.fr.workspace.server.lock.TplOperator; import org.jetbrains.annotations.Nullable; -import javax.swing.SwingWorker; +import javax.swing.*; import java.io.OutputStream; import java.util.ArrayList; import java.util.List; @@ -141,7 +141,7 @@ public class TemplateUtils { OutputStream out = null; try { // 加锁 - boolean saveAsLock = WorkContext.getCurrent().get(TplOperator.class).saveAs(file.getPath()); + boolean saveAsLock = TemplateRepository.getInstance().saveAs(file.getPath()); if (!saveAsLock) { // 加锁失败时,直接返回 throw new RuntimeException("[RemoteDesign] back up template file failed"); @@ -155,7 +155,7 @@ public class TemplateUtils { } } finally { // 解锁 - WorkContext.getCurrent().get(TplOperator.class).closeAndFreeFile(file.getPath()); + TemplateRepository.getInstance().close(file.getPath()); } } return true; @@ -182,12 +182,12 @@ public class TemplateUtils { //判断一下要保存的副本文件是否已打开 int index = HistoryTemplateListCache.getInstance().contains(file); if (index != -1) { - WorkContext.getCurrent().get(TplOperator.class).closeAndFreeFile(file.getPath()); + TemplateRepository.getInstance().close(file.getPath()); needCloseTemplate.add(HistoryTemplateListCache.getInstance().getHistoryList().get(index)); } if (JTemplate.isValid(template)) { //给要关闭的模板解锁 - WorkContext.getCurrent().get(TplOperator.class).closeAndFreeFile(template.getPath()); + TemplateRepository.getInstance().close(template.getPath()); needCloseTemplate.add(template); } return needCloseTemplate; diff --git a/designer-base/src/main/java/com/fr/design/utils/gui/GUICoreUtils.java b/designer-base/src/main/java/com/fr/design/utils/gui/GUICoreUtils.java index ba1c377965..c8bbf74699 100644 --- a/designer-base/src/main/java/com/fr/design/utils/gui/GUICoreUtils.java +++ b/designer-base/src/main/java/com/fr/design/utils/gui/GUICoreUtils.java @@ -93,6 +93,7 @@ import java.util.List; import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.column; +import static com.fine.swing.ui.layout.Layouts.row; // Noninstantiable utility class public final class GUICoreUtils { @@ -996,7 +997,10 @@ public final class GUICoreUtils { dynamicPane.setVisible(e.getStateChange() == visibleState); } }); - return column(LayoutConstants.VERTICAL_GAP, cell(checkBox), cell(dynamicPane)).getComponent(); + return column(LayoutConstants.VERTICAL_GAP, + row(cell(checkBox)), + cell(dynamicPane) + ).getComponent(); } /** diff --git a/designer-base/src/main/java/com/fr/design/versioncheck/VersionCheckUtils.java b/designer-base/src/main/java/com/fr/design/versioncheck/VersionCheckUtils.java index 0d10600b64..06017ce175 100644 --- a/designer-base/src/main/java/com/fr/design/versioncheck/VersionCheckUtils.java +++ b/designer-base/src/main/java/com/fr/design/versioncheck/VersionCheckUtils.java @@ -1,5 +1,6 @@ package com.fr.design.versioncheck; +import com.fine.theme.utils.FineUIScale; import com.fr.base.FRContext; import com.fr.design.DesignerEnvManager; import com.fr.design.dialog.NotificationDialog; @@ -27,8 +28,6 @@ import com.fr.plugin.manage.control.PluginTaskCallback; import com.fr.plugin.manage.control.PluginTaskResult; import com.fr.plugin.manage.control.ProgressCallback; import com.fr.report.ReportHelper; -import com.fr.rpc.ExceptionHandler; -import com.fr.rpc.RPCInvokerExceptionInfo; import com.fr.rpc.Result; import com.fr.stable.StringUtils; import com.fr.workspace.WorkContext; @@ -38,7 +37,7 @@ import com.fr.workspace.engine.base.FineObjectPool; import com.fr.workspace.engine.channel.http.FunctionalHttpRequest; import com.fr.workspace.engine.exception.WorkspaceConnectionException; import com.fr.workspace.engine.rpc.WorkspaceProxyPool; -import com.fr.workspace.server.check.VersionInfoOperator; + import java.lang.reflect.Method; import java.text.ParsePosition; import java.text.SimpleDateFormat; @@ -52,7 +51,6 @@ import java.util.Map; import java.util.Set; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; -import javax.swing.SwingWorker; /** * @author pengda @@ -146,7 +144,7 @@ public class VersionCheckUtils { CheckServiceDialog checkServiceDialog = new CheckServiceDialog(DesignerContext.getDesignerFrame(), GeneralUtils.readFullBuildNO(), getRemoteBranch(envName), getNoExistServiceDescription(envName)); checkServiceDialog.setVisible(true); } - },DesignSizeI18nManager.getInstance().i18nDimension("com.fr.design.version.check.dialog")); + }, FineUIScale.scale(DesignSizeI18nManager.getInstance().i18nDimension("com.fr.design.version.check.dialog"))); notificationDialog.setVisible(true); } @@ -284,16 +282,14 @@ public class VersionCheckUtils { public static JSONArray checkLocalAndRemotePlugin() { JSONArray differentPlugins = new JSONArray(); - JSONArray remotePlugins = FRContext.getCommonOperator().getPluginStatus(); + List remotePlugins = FRContext.getCommonOperator().getPluginStatus(); Map localPluginsMap = new HashMap<>(); List localPlugins = PluginManager.getContexts(); for (PluginContext pluginContext : localPlugins) { localPluginsMap.put(pluginContext.getID(), pluginContext); } - JSONObject remotePlugin; Map pluginsNameMap = ReportHelper.getPluginNameMap(); - for (int i = 0; i < remotePlugins.size(); i++) { - remotePlugin = remotePlugins.getJSONObject(i); + for (JSONObject remotePlugin : remotePlugins) { if (isPluginNeedIgnore(remotePlugin)) { continue; } diff --git a/designer-base/src/main/java/com/fr/design/web/CustomIconPane.java b/designer-base/src/main/java/com/fr/design/web/CustomIconPane.java index 5725a2a889..27962c4082 100644 --- a/designer-base/src/main/java/com/fr/design/web/CustomIconPane.java +++ b/designer-base/src/main/java/com/fr/design/web/CustomIconPane.java @@ -1,11 +1,12 @@ package com.fr.design.web; -import com.fine.theme.light.ui.FineRoundBorder; import com.fine.theme.utils.FineUIScale; import com.fr.base.BaseUtils; import com.fr.base.GraphHelper; import com.fr.base.Icon; import com.fr.base.IconManager; +import com.fr.design.border.FineBorderFactory; +import com.fr.design.constants.LayoutConstants; import com.fr.design.dialog.BasicPane; import com.fr.design.dialog.DialogActionAdapter; import com.fr.design.dialog.FineJOptionPane; @@ -90,7 +91,7 @@ public class CustomIconPane extends BasicPane { UILabel iconLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Icon")); JPanel centerPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); JPanel noNamePane = FRGUIPaneFactory.createBorderLayout_S_Pane(); - noNamePane.setBorder(new FineRoundBorder()); + noNamePane.setBorder(FineBorderFactory.createWrappedRoundBorder()); noNamePane.setBackground(Color.WHITE); iconPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); @@ -154,7 +155,6 @@ public class CustomIconPane extends BasicPane { private void initAddButton(JPanel buttonPane) { UIButton addButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Add")); - addButton.setPreferredSize(new Dimension(80, 25)); addButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { final EditIconDialog add = new EditIconDialog(); @@ -182,7 +182,7 @@ public class CustomIconPane extends BasicPane { private void initRemoveButton(JPanel buttonPane) { removeButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove")); - removeButton.setPreferredSize(new Dimension(80, 25)); + removeButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove")); removeButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (iconManager.isSystemIcon(selectedIconName)) { @@ -211,7 +211,6 @@ public class CustomIconPane extends BasicPane { private void initEditButton(JPanel buttonPane) { editButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Edit")); - editButton.setPreferredSize(new Dimension(80, 25)); editButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (iconManager.isSystemIcon(selectedIconName)) { @@ -421,7 +420,8 @@ public class CustomIconPane extends BasicPane { this.setLayout(FRGUIPaneFactory.createBorderLayout()); UIButton browseButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Custom_Icon_SelectIcon")); browseButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Click_this_button")); - nameTextField = new UITextField(20); + nameTextField = new UITextField(); + nameTextField.setPreferredSize(FineUIScale.createScaleDimension(172, 24)); browseButton.addActionListener(e -> onBrowseButtonClicked(SwingUtilities.getWindowAncestor(EditIconDialog.this))); @@ -445,18 +445,16 @@ public class CustomIconPane extends BasicPane { }); showImageLabel = new UILabel(); - showImageLabel.setPreferredSize(FineUIScale.scale(new Dimension(50, 50))); + showImageLabel.setPreferredSize(FineUIScale.createScaleDimension(50, 50)); - JPanel centerPane = column(10, - row( - cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Name") + ":")).weight(1.2), - cell(nameTextField).weight(3) + JPanel centerPane = column(LayoutConstants.VERTICAL_GAP, + row(40, + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Name") + ":")), + cell(nameTextField) ), - row( - cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Icon") + ":")).weight(1.2), - row( - cell(showImageLabel), column(fix(13), cell(browseButton), fix(13)).weight(1) - ).weight(3) + row(40, + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Icon") + ":")), + row(cell(showImageLabel), column(fix(13), cell(browseButton), fix(13)).weight(1)).weight(1) ) ).getComponent(); this.add(centerPane, BorderLayout.WEST); diff --git a/designer-base/src/main/java/com/fr/design/widget/component/NumberEditorValidatePane.java b/designer-base/src/main/java/com/fr/design/widget/component/NumberEditorValidatePane.java index 38cc90db87..d4770a20ea 100644 --- a/designer-base/src/main/java/com/fr/design/widget/component/NumberEditorValidatePane.java +++ b/designer-base/src/main/java/com/fr/design/widget/component/NumberEditorValidatePane.java @@ -87,9 +87,9 @@ public class NumberEditorValidatePane extends JPanel { ).getComponent(); this.add(column(LayoutConstants.VERTICAL_GAP, - cell(allowDecimalsCheckBox), + row(cell(allowDecimalsCheckBox)), cell(limitNumberPane), - cell(allowNegativeCheckBox), + row(cell(allowNegativeCheckBox)), row(10, cell(setMaxValueCheckBox).weight(1.8), cell(maxValueSpinner).weight(3) ), diff --git a/designer-base/src/main/java/com/fr/design/write/submit/CustomJobPane.java b/designer-base/src/main/java/com/fr/design/write/submit/CustomJobPane.java index 9c1a65b723..ba56aa792a 100644 --- a/designer-base/src/main/java/com/fr/design/write/submit/CustomJobPane.java +++ b/designer-base/src/main/java/com/fr/design/write/submit/CustomJobPane.java @@ -2,7 +2,7 @@ package com.fr.design.write.submit; import com.fine.theme.utils.FineUIScale; import com.fine.theme.utils.FineUIUtils; -import com.fr.base.GraphHelper; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.data.AbstractClassJob; import com.fr.design.data.tabledata.tabledatapane.ClassNameSelectPane; import com.fr.design.beans.BasicBeanPane; @@ -17,7 +17,7 @@ import com.fr.design.dialog.DialogActionAdapter; import com.fr.stable.ListMap; import com.fr.stable.StringUtils; -import com.fr.design.utils.gui.GUICoreUtils; +import com.fr.design.i18n.Toolkit; import javax.swing.*; import java.awt.*; @@ -27,7 +27,6 @@ import java.awt.event.ActionListener; import static com.fine.swing.ui.layout.Layouts.column; import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.row; -import static com.fine.swing.ui.layout.Layouts.flex; /** * Author : Shockway @@ -43,19 +42,13 @@ public abstract class CustomJobPane extends BasicBeanPane { this.setLayout(FRGUIPaneFactory.createBorderLayout()); JPanel reportletNamePane = FRGUIPaneFactory.createBoxFlowInnerContainer_S_Pane(); classNameTextField = new UITextField(); - classNameTextField.setPreferredSize(FineUIScale.scale(new Dimension(0, 24))); - UIButton browserButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select")); - browserButton.setPreferredSize(new Dimension( - GraphHelper.getWidth(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select")) + 40, - FineUIScale.scale(24))); + UIButton browserButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Select")); - UIButton editButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Edit")); - editButton.setPreferredSize(new Dimension( - GraphHelper.getWidth(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select")) + 40, - FineUIScale.scale(24))); + UIButton editButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Edit")); UITextArea area = new UITextArea(2, 1); + area.setText(Toolkit.i18nText("Fine-Design_Basic_Extend_Class", "com.fr.data.AbstractSubmitTask")); browserButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { @@ -66,7 +59,7 @@ public abstract class CustomJobPane extends BasicBeanPane { new DialogActionAdapter() { public void doOk() { classNameTextField.setText(bPane.getClassPath()); - area.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Extend_Class", "com.fr.data.AbstractSubmitTask")); + area.setText(Toolkit.i18nText("Fine-Design_Basic_Extend_Class", "com.fr.data.AbstractSubmitTask")); checkAddButtonEnable(); } }).setVisible(true); @@ -80,7 +73,7 @@ public abstract class CustomJobPane extends BasicBeanPane { new DialogActionAdapter() { public void doOk() { classNameTextField.setText(javaEditorPane.getClassText()); - area.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Extend_Class", "com.fr.data.AbstractSubmitTask")); + area.setText(Toolkit.i18nText("Fine-Design_Basic_Extend_Class", "com.fr.data.AbstractSubmitTask")); checkAddButtonEnable(); } }); @@ -95,21 +88,21 @@ public abstract class CustomJobPane extends BasicBeanPane { }); reportletNamePane.setLayout(new BorderLayout()); - reportletNamePane.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0)); + reportletNamePane.setBorder(new ScaledEmptyBorder(10, 0, 0, 0)); reportletNamePane.add(row(4, - cell(classNameTextField).weight(1.0), + cell(classNameTextField).weight(1), cell(browserButton), cell(editButton) ).getComponent(), BorderLayout.CENTER); objectProperiesPane = new ObjectProperiesPane(); JPanel dsPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); - dsPane.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0)); + dsPane.setBorder(new ScaledEmptyBorder(10, 0, 0, 0)); dsPane.add(area); this.add(column(20, - cell(FineUIUtils.wrapComponentWithTitle(reportletNamePane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Class_Name"))), - cell(FineUIUtils.wrapComponentWithTitle(objectProperiesPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Property"))).weight(1.0), - cell(FineUIUtils.wrapComponentWithTitle(dsPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Custom_Job_Description"))) + cell(FineUIUtils.wrapComponentWithTitle(reportletNamePane, Toolkit.i18nText("Fine-Design_Basic_Class_Name"))), + cell(FineUIUtils.wrapComponentWithTitle(objectProperiesPane, Toolkit.i18nText("Fine-Design_Basic_Property"))).weight(1.0), + cell(FineUIUtils.wrapComponentWithTitle(dsPane, Toolkit.i18nText("Fine-Design_Basic_Custom_Job_Description"))) ).getComponent()); checkAddButtonEnable(); } diff --git a/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationInWdigetEventNoCellPane.java b/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationInWdigetEventNoCellPane.java new file mode 100644 index 0000000000..84ec689c9f --- /dev/null +++ b/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationInWdigetEventNoCellPane.java @@ -0,0 +1,42 @@ +package com.fr.design.write.submit; + +import com.fine.theme.utils.FineUIScale; +import com.fr.design.editor.editor.Editor; + +import java.awt.BorderLayout; +import java.awt.Dimension; + +import static com.fine.theme.utils.FineUIScale.scale; + +/** + * 控件面板添加的控件绑定的提交入库事件面板 + * + * @author Renekton + * @since 11.0 + * Created on 2024/09/13 + */ +public class DBManipulationInWdigetEventNoCellPane extends DBManipulationPane { + + public DBManipulationInWdigetEventNoCellPane() { + super(); + } + + public DBManipulationInWdigetEventNoCellPane(Editor[] vTypes) { + super(vTypes); + } + + protected Dimension createEditTablePreferredSize() { + return scale(new Dimension(280, 150)); + } + + protected Dimension getPreferredScrollableViewportSize() { + return scale(new Dimension(280, 120)); + } + protected Dimension createControlBtnPanePreferredSize(){ + return FineUIScale.scale(new Dimension(110, 20)); + } + + protected String setControlBtnPanePosition(){ + return BorderLayout.EAST; + } +} diff --git a/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationPane.java b/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationPane.java index 1aa1422f15..eebd4811dc 100644 --- a/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationPane.java +++ b/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationPane.java @@ -3,6 +3,7 @@ package com.fr.design.write.submit; import com.fine.swing.ui.layout.Layouts; import com.fine.theme.icon.LazyIcon; import com.fine.swing.ui.layout.Spacer; +import com.fine.theme.light.ui.FineRoundBorder; import com.fine.theme.light.ui.FineTableHeaderUI; import com.fine.theme.utils.FineClientProperties; import com.fine.theme.utils.FineUIScale; @@ -103,6 +104,7 @@ import static com.fine.swing.ui.layout.Layouts.row; import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.column; import static com.fine.swing.ui.layout.Layouts.row; +import static com.fine.theme.utils.FineUIScale.scale; //august:这个东西应该分成两类,一类是有单元格的情况,一类是没有单元格的情况 public class DBManipulationPane extends BasicBeanPane { @@ -165,16 +167,16 @@ public class DBManipulationPane extends BasicBeanPane { cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Write_Choose_Submit_Type"))), cell(dmlConfigComboBox)).getComponent()); chooseTable = new ChoosePaneSupportFormula(); - chooseTable.setTableNameComboBoxPopSize(FineUIScale.scale(160), FineUIScale.scale(320)); + chooseTable.setTableNameComboBoxPopSize(scale(160), scale(320)); // peter:编辑的TablePane - JPanel editTablePane = new JPanel(new BorderLayout(FineUIScale.scale(10), 0)); + JPanel editTablePane = new JPanel(new BorderLayout(scale(10), 0)); Dimension editTableDimension = createEditTablePreferredSize(); editTablePane.setBounds(0, 0, editTableDimension.width, editTableDimension.height); keyColumnValuesTable = new KeyColumnNameValueTable(); editTablePane.add(new UIVerticalScrollPane(keyColumnValuesTable), BorderLayout.CENTER); keyColumnValuesTable.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); - keyColumnValuesTable.setPreferredScrollableViewportSize(FineUIScale.scale(new Dimension(280, 150))); + keyColumnValuesTable.setPreferredScrollableViewportSize(getPreferredScrollableViewportSize()); keyColumnValuesTable.setShowHorizontalLines(true); northPane.add(column(10, @@ -190,7 +192,7 @@ public class DBManipulationPane extends BasicBeanPane { cell(bottomPane)) .getComponent(), BorderLayout.CENTER); - this.add(new UIScrollPane(contentPane)); + this.add(contentPane); initJTableColumn(); @@ -199,6 +201,10 @@ public class DBManipulationPane extends BasicBeanPane { addListeners(); } + protected Dimension getPreferredScrollableViewportSize() { + return scale(new Dimension(280, 150)); + } + public void setSubMitName(String subMitName) { this.subMitName = subMitName; } @@ -216,7 +222,7 @@ public class DBManipulationPane extends BasicBeanPane { List buttonGroup = Arrays.stream(actions).map(action -> cell(new UIButton(action))).collect(Collectors.toList()); checkBoxUpdatePane = new JPanel(new BorderLayout(0, 0)); - checkBoxUpdatePane.setPreferredSize(new Dimension(120, 20)); + checkBoxUpdatePane.setPreferredSize(scale(new Dimension(120, 20))); UpdateCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_RWA_NotChange_Unmodified")); UIButton helpButton = new UIButton(HEIP_ICON); @@ -271,15 +277,20 @@ public class DBManipulationPane extends BasicBeanPane { JPanel conditionPane = this.createConditionPane(); JPanel btPane = new JPanel(FRGUIPaneFactory.createBorderLayout()); - btPane.add(column(5, + addBottomComponent(btPane, conditionPane, eventPane); + return btPane; + } + + protected void addBottomComponent(JPanel bottomPane, JPanel conditionPane, JPanel eventPane) { + bottomPane.add(column(4, cell(FineUIUtils.wrapComponentWithTitle(conditionPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Submit_Condition"))), row(cell(eventPane), cell(new UILabel())) ).getComponent()); - return btPane; } private UIButton addEventButton() { UIButton addSubmitEventButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Submit_Event")); + addSubmitEventButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Submit_Event")); addSubmitEventButton.addActionListener(new ActionListener() { @Override @@ -309,7 +320,7 @@ public class DBManipulationPane extends BasicBeanPane { conditionsTree = new JTree(new DefaultTreeModel(new ExpandMutableTreeNode())); conditionsTree.setRootVisible(false); conditionsTree.setShowsRootHandles(true); - conditionsTree.setBackground(UIConstants.NORMAL_BACKGROUND); + conditionsTree.setBackground(FineUIUtils.getUIColor("background.normal", "background.normal")); conditionsTree.setForeground(UIConstants.NORMAL_BACKGROUND); DefaultTreeCellRenderer cr = (DefaultTreeCellRenderer) conditionsTree.getCellRenderer(); cr.setForeground(UIConstants.NORMAL_BACKGROUND); @@ -318,6 +329,7 @@ public class DBManipulationPane extends BasicBeanPane { jp.setVisible(setJpVisible()); String submitCondition = Toolkit.i18nText("Fine-Design_Basic_Set_Submit_Condition"); UIButton addSubmitConditionButton = new UIButton(submitCondition); + addSubmitConditionButton.setPreferredSize(createControlBtnPanePreferredSize()); addSubmitConditionButton.setToolTipText(submitCondition); addSubmitConditionButton.addActionListener(new ActionListener() { @Override @@ -371,11 +383,11 @@ public class DBManipulationPane extends BasicBeanPane { } protected Dimension createEditTablePreferredSize() { - return FineUIScale.scale(new Dimension(280, 180)); + return scale(new Dimension(280, 180)); } protected Dimension createConditionPanePreferredSize() { - return FineUIScale.scale(new Dimension(454, 60)); + return scale(new Dimension(454, 60)); } protected boolean setJpVisible() { @@ -383,12 +395,12 @@ public class DBManipulationPane extends BasicBeanPane { } protected Dimension createJpPreferredSize() { - return FineUIScale.scale(new Dimension(280, 60)); + return scale(new Dimension(280, 60)); } protected Dimension createControlBtnPanePreferredSize() { - return FineUIScale.scale(new Dimension(110, 20)); + return scale(new Dimension(110, 20)); } protected String setControlBtnPanePosition() { @@ -501,7 +513,9 @@ public class DBManipulationPane extends BasicBeanPane { return super.value2Text(value); } }; - bPane.add(new JScrollPane(list), BorderLayout.CENTER); + JScrollPane scrollPane = new JScrollPane(list); + scrollPane.setBorder(new FineRoundBorder()); + bPane.add(scrollPane, BorderLayout.CENTER); BasicDialog dlg = bPane.showSmallWindow(SwingUtilities.getWindowAncestor(DBManipulationPane.this), new DialogActionAdapter() { @Override @@ -740,7 +754,7 @@ public class DBManipulationPane extends BasicBeanPane { return super.stopCellEditing(); } }); - ((DefaultCellEditor) column1.getCellEditor()).setClickCountToStart(2); + ((DefaultCellEditor) column1.getCellEditor()).setClickCountToStart(1); //设置Column 2的Editor column2.setCellEditor(new ColumnValueEditor()); @@ -881,7 +895,7 @@ public class DBManipulationPane extends BasicBeanPane { vPane = new ValueEditorPane(types); this.setLayout(new FlowLayout(FlowLayout.CENTER, 0, 45)); this.add(vPane); - vPane.setPreferredSize(new Dimension(220, 25)); + vPane.setPreferredSize(scale(new Dimension(220, 25))); } @Override @@ -949,12 +963,12 @@ public class DBManipulationPane extends BasicBeanPane { } /* - * 双击以编辑 + * 单击以编辑 */ @Override public boolean isCellEditable(EventObject anEvent) { if (anEvent instanceof MouseEvent) { - return ((MouseEvent) anEvent).getClickCount() >= 2; + return ((MouseEvent) anEvent).getClickCount() >= 1; } return true; } diff --git a/designer-base/src/main/java/com/fr/file/FILEChooserPane.java b/designer-base/src/main/java/com/fr/file/FILEChooserPane.java index 79b8033c42..06620ba719 100644 --- a/designer-base/src/main/java/com/fr/file/FILEChooserPane.java +++ b/designer-base/src/main/java/com/fr/file/FILEChooserPane.java @@ -8,7 +8,6 @@ import com.fine.theme.utils.FineUIStyle; import com.formdev.flatlaf.ui.FlatUIUtils; import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.BaseUtils; -import com.fr.base.FRContext; import com.fr.base.extension.FileExtension; import com.fr.design.DesignerEnvManager; import com.fr.design.ExtraDesignClassManager; @@ -23,7 +22,6 @@ import com.fr.design.file.HistoryTemplateListPane; import com.fr.design.file.NodeAuthProcessor; import com.fr.design.fun.ReportSupportedFileUIProvider; import com.fr.design.gui.ibutton.UIButton; -import com.fr.design.gui.ibutton.UIButtonUI; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextfield.DefaultCompletionFilter; @@ -56,7 +54,7 @@ import com.fr.stable.project.ProjectConstants; import com.fr.workspace.WorkContext; import com.fr.workspace.Workspace; import com.fr.workspace.WorkspaceEvent; -import com.fr.workspace.server.repository.template.TemplateRepository; +import com.fanruan.repository.TemplateRepository; import javax.swing.AbstractAction; import javax.swing.AbstractListModel; @@ -173,6 +171,7 @@ public class FILEChooserPane extends BasicPane { protected boolean showEnv; protected boolean showLoc; protected boolean showWebReport = false; + protected boolean showMkdir = true; private UIDialog dialog; @@ -241,6 +240,34 @@ public class FILEChooserPane extends BasicPane { return INSTANCE; } + public static FILEChooserPane getFileDataChoosePane(FILEFilter filter) { + FILEChooserPane chooserPane = new FILEChooserPane(); + chooserPane.showEnv = true; + chooserPane.showLoc = false; + chooserPane.showWebReport = false; + chooserPane.showMkdir = false; + // 替换掉 PlaceListModel + chooserPane.setFileDataPlaceListModel(FileDataFILE.parseType(filter)); + chooserPane.removeAllFilter(); + chooserPane.addChooseFILEFilter(filter, 0); + return chooserPane; + } + + /** + * 获取CA证书的文件选择面板 + */ + public static FILEChooserPane getFileCAChoosePane(FILEFilter filter) { + FILEChooserPane chooserPane = new FILEChooserPane(); + chooserPane.showEnv = true; + chooserPane.showLoc = false; + chooserPane.showWebReport = false; + // 替换掉 PlaceListModel + chooserPane.setFileCAPlaceListModel(); + chooserPane.removeAllFilter(); + chooserPane.addChooseFILEFilter(filter, 0); + return chooserPane; + } + /** * @param showEnv @@ -312,6 +339,7 @@ public class FILEChooserPane extends BasicPane { mkdirButton = initMkdirButton(); locationPane.add(mkdirButton, BorderLayout.EAST); + mkdirButton.setEnabled(showMkdir); JPanel centerLeftPanel = FRGUIPaneFactory.createBorderLayout_S_Pane(); // Richie:placesList includes C,D,E,F and DeskTop etc. @@ -1066,7 +1094,29 @@ public class FILEChooserPane extends BasicPane { String lastDirectoryPath = DesignerEnvManager.getEnvManager().getDialogCurrentDirectory(); String prefix = DesignerEnvManager.getEnvManager().getCurrentDirectoryPrefix(); FILE lastDirectory = FILEFactory.createFolder(prefix + lastDirectoryPath); + dealCurrentDirectory(model, lastDirectory) ; + } + + + + private void setPlaceListModel4DataFile(AbstractPlaceListModel model) { + if (placesList == null) { + return; + } + placesList.setModel(model); + String lastDirectoryPath = FILEFactory.ENV_PREFIX; + String prefix = ProjectConstants.REPORTLETS_NAME; + FILE lastDirectory; + if (model instanceof FileDataPlaceListModel) { + FileDataFILE file = new FileDataFILE(new FileNode(), false, StringUtils.EMPTY, ((FileDataPlaceListModel) model).getType()); + lastDirectory = FILEFactory.createFolder(file, prefix + lastDirectoryPath); + } else { + lastDirectory = FILEFactory.createFolder(prefix + lastDirectoryPath); + } + dealCurrentDirectory(model, lastDirectory); + } + private void dealCurrentDirectory(AbstractPlaceListModel model, FILE lastDirectory) { model.setCD(lastDirectory); if (currentDirectory != null) { @@ -1083,6 +1133,7 @@ public class FILEChooserPane extends BasicPane { } } + private void setPlaceListModel() { if (placesList == null) { return; @@ -1110,6 +1161,20 @@ public class FILEChooserPane extends BasicPane { setPlaceListModel(new MultiLocalEnvPlaceListModel()); } + protected void setFileDataPlaceListModel(String type) { + if (placesList == null) { + return; + } + setPlaceListModel4DataFile(new FileDataPlaceListModel(type)); + } + + protected void setFileCAPlaceListModel() { + if (placesList == null) { + return; + } + setPlaceListModel(new FileCAPlaceListModel()); + } + /* * 选中文件 */ @@ -1166,7 +1231,7 @@ public class FILEChooserPane extends BasicPane { currentDirectory = dir; this.locationBtnPane.populate(currentDirectory); - this.mkdirButton.setEnabled(currentDirectory != null); + this.mkdirButton.setEnabled(currentDirectory != null && showMkdir); refreshSubFileListModel(); } @@ -1342,6 +1407,72 @@ public class FILEChooserPane extends BasicPane { } + private class FileDataPlaceListModel extends AbstractPlaceListModel { + private FileDataFILE envFILE; + private String type; + + FileDataPlaceListModel(String type) { + envFILE = new FileDataFILE(new FileNode(StableUtils.pathJoin(ProjectConstants.ASSETS_NAME, FileDataFILE.FILE_DATASET_NAME), true), false, StableUtils.pathJoin(ProjectConstants.ASSETS_NAME, FileDataFILE.FILE_DATASET_NAME)) { + @Override + public String getName() { + return getEnvProjectName(); + } + }; + envFILE.setType(type); + FileDataPlaceListModel.this.setType(type); + } + + @Override + public FILE getElementAt(int index) { + return envFILE; + } + + @Override + public int getSize() { + return 1 + filesOfSystem.size(); + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + @Override + protected void setCD(FILE lastDirectory) { + super.setCD(lastDirectory); + if (lastDirectory instanceof FileDataFILE) { + ((FileDataFILE)lastDirectory).setType(type); + } + } + } + + private class FileCAPlaceListModel extends AbstractPlaceListModel { + private FileCAFILE envFILE; + FileCAPlaceListModel() { + envFILE = new FileCAFILE(new FileNode(StableUtils.pathJoin(ProjectConstants.RESOURCES_NAME, ProjectConstants.CERTIFICATES_DIRECTORY), true), false, StableUtils.pathJoin(ProjectConstants.RESOURCES_NAME, ProjectConstants.CERTIFICATES_DIRECTORY)) { + @Override + public String getName() { + return getEnvProjectName(); + } + }; + } + + @Override + public FILE getElementAt(int index) { + return envFILE; + } + + @Override + public int getSize() { + return 1 + filesOfSystem.size(); + } + + } + + private class MultiLocalEnvPlaceListModel extends AbstractPlaceListModel { private static final long serialVersionUID = 6300018896958532154L; @@ -1553,7 +1684,7 @@ public class FILEChooserPane extends BasicPane { this.buttonList.add(createBlankButton((new SetDirectoryAction(btn_text + '/', // alex:dir.prefix不和btn_path一起参与pathJoin,因为btn_path是否以/打头在unix,linux // OS中意义很不一样 - FILEFactory.createFolder(dir.prefix() + StableUtils.pathJoin(btn_path, "/")), !needTopPath)))); + FILEFactory.createFolder(dir, dir.prefix() + StableUtils.pathJoin(btn_path, "/")), !needTopPath)))); } maxPathIndex = calculateMaxPathIndex(); @@ -1743,7 +1874,6 @@ public class FILEChooserPane extends BasicPane { private UIButton initMkdirButton() { UIButton folderButton = new UIButton(); folderButton.setIcon(new LazyIcon("new_folder")); - folderButton.setUI(new UIButtonUI()); folderButton.setToolTipText(Toolkit.i18nText("Fine-Design_Basic_Utils_New_Folder")); folderButton.addActionListener(new ActionListener() { @Override diff --git a/designer-base/src/main/java/com/fr/file/FILEFactory.java b/designer-base/src/main/java/com/fr/file/FILEFactory.java index d558483784..3e7113f35a 100644 --- a/designer-base/src/main/java/com/fr/file/FILEFactory.java +++ b/designer-base/src/main/java/com/fr/file/FILEFactory.java @@ -8,6 +8,8 @@ public class FILEFactory { public static final String MEM_PREFIX = "mem://"; public static final String FILE_PREFIX = "file://"; public static final String ENV_PREFIX = "env://"; + public static final String FILE_DATA_PREFIX = "filedata://"; + public static final String FILE_CA_PREFIX = "ca://"; public static final String WEBREPORT_PREFIX = "webreport://"; public static final String SEPARATOR = "/"; @@ -35,12 +37,24 @@ public class FILEFactory { FileNodeFILE.webRootPath); } else if (path.startsWith(FILE_PREFIX)) { return new FileFILE(new java.io.File(path.substring(FILE_PREFIX.length()))); + } else if (path.startsWith(FILE_DATA_PREFIX)) { + return new FileDataFILE(new FileNode(path.substring(FILE_DATA_PREFIX.length()), false), false, path.substring(FILE_DATA_PREFIX.length())); + } else if (path.startsWith(FILE_CA_PREFIX)) { + return new FileCAFILE(new FileNode(path.substring(FILE_CA_PREFIX.length()), false), false, path.substring(FILE_CA_PREFIX.length())); } else { return new FileNodeFILE(new FileNode(path, WorkContext.getWorkResource().isDirectory(path))); } } public static FILE createFolder(String path) { + return createFolder(null, path); + } + + + /** + * 传递依据的基础文件并创建文件夹 + */ + public static FILE createFolder(FILE origin, String path) { if (path == null) { return null; } else if (path.startsWith(MEM_PREFIX)) { @@ -53,7 +67,16 @@ public class FILEFactory { FileNodeFILE.webRootPath); } else if (path.startsWith(FILE_PREFIX)) { return new FileFILE(new java.io.File(path.substring(FILE_PREFIX.length()))); - } else { + } else if (path.startsWith(FILE_DATA_PREFIX)) { + FileDataFILE file = new FileDataFILE(new FileNode(path.substring(FILE_DATA_PREFIX.length()), true), false, path.substring(FILE_DATA_PREFIX.length())); + if (origin instanceof FileDataFILE) { + file.setType(((FileDataFILE) origin).getType()); + } + return file; + } else if (path.startsWith(FILE_CA_PREFIX)) { + return new FileCAFILE(new FileNode(path.substring(FILE_CA_PREFIX.length()), true), false, path.substring(FILE_CA_PREFIX.length())); + } + else { return new FileNodeFILE(new FileNode(path, WorkContext.getWorkResource().isDirectory(path))); } } diff --git a/designer-base/src/main/java/com/fr/file/FileCAFILE.java b/designer-base/src/main/java/com/fr/file/FileCAFILE.java new file mode 100644 index 0000000000..2ecf3c39b0 --- /dev/null +++ b/designer-base/src/main/java/com/fr/file/FileCAFILE.java @@ -0,0 +1,167 @@ +package com.fr.file; + +import com.fr.decision.webservice.bean.entry.FileNodeBean; +import com.fr.file.filetree.FileNode; +import com.fr.general.ComparatorUtils; +import com.fr.log.FineLoggerFactory; +import com.fr.stable.CoreConstants; +import com.fr.stable.StableUtils; +import com.fr.stable.StringUtils; +import com.fr.stable.project.ProjectConstants; +import com.fr.workspace.server.repository.tabledata.TableDataRepository; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * CA证书文件相关 + * + * @author Destiny.Lin + * @since 11.0 + * Created on 2024/9/8 + */ +public class FileCAFILE extends FileNodeFILE{ + public static final String ROOT = ProjectConstants.CERTIFICATES_DIRECTORY; + private List children = new ArrayList<>(); + private boolean builded = false; + private String id = StringUtils.EMPTY; + + public FileCAFILE(FileNode node) { + super(node); + } + + public FileCAFILE(FileNode node, boolean builded, String id) { + super(node); + this.builded = builded; + this.id = id; + } + + /** + * 添加子 + */ + private void addChild(FileCAFILE file) { + children.add(file); + } + + public List getChildren() { + return children; + } + + public void setChildren(List children) { + this.children = children; + } + + public boolean isBuilded() { + return builded; + } + + public void setBuilded(boolean builded) { + this.builded = builded; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + @Override + public FILE[] listFiles() { + + if (ComparatorUtils.equals(node, null)) { + node = new FileNode(CoreConstants.SEPARATOR, true); + } + if (!node.isDirectory()) { + return new FILE[]{this}; + } + try { + FileCAFILE root = null; + if (!this.builded) { + root = buildTree(); + FileCAFILE dataFILE = root.getFileCAFILE(this.id); + this.setChildren(dataFILE.getChildren()); + this.builded = true; + } + return this.getChildren().toArray(new FILE[0]); + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + return new FILE[0]; + } + } + + private List getBeans() { + try { + return TableDataRepository.getInstance().getCertificatesFile(StringUtils.EMPTY); + } catch (Exception e) { + throw new RuntimeException(e); + } + } + + /** + * 递归获取指定id的文件 + */ + public FileCAFILE getFileCAFILE(String id) { + if (StringUtils.equals(this.id, id) || StringUtils.equals(StableUtils.pathJoin(this.id, StringUtils.EMPTY), id)) { + return this; + } + for (FileCAFILE file : getChildren()) { + return file.getFileCAFILE(id); + } + return null; + } + + private FileCAFILE buildTree() { + List beans = getBeans(); + Map tree = new HashMap<>(); + FileCAFILE root = null; + // id , 父 + for (FileNodeBean bean : beans) { + FileNode fileNode = new FileNode(); + fileNode.setEnvPath(bean.getPath()); + fileNode.setDirectory(bean.getIsParent()); + tree.putIfAbsent(bean.getId(), new FileCAFILE(fileNode, true, bean.getId())); + if (StringUtils.isEmpty(bean.getpId())) { + root = tree.get(bean.getId()); + } else { + tree.putIfAbsent(bean.getpId(), createParent(bean.getpId(), beans)); + FileCAFILE file = tree.get(bean.getpId()); + if (file != null) { + file.addChild(tree.get(bean.getId())); + } + } + } + for (Map.Entry entry : tree.entrySet()) { + if (entry.getKey().endsWith(ROOT)) { + root = entry.getValue(); + root.setId(StableUtils.pathJoin(ProjectConstants.RESOURCES_NAME, ProjectConstants.CERTIFICATES_DIRECTORY)); + break; + } + } + return root; + } + + private FileCAFILE createParent(String s, List beans) { + for (FileNodeBean bean : beans) { + if (StringUtils.equals(bean.getId(), s)) { + FileNode fileNode = new FileNode(); + fileNode.setEnvPath(bean.getPath()); + fileNode.setDirectory(bean.getIsParent()); + return new FileCAFILE(fileNode, true, bean.getId()); + } + } + FileNode fileNode = new FileNode(); + fileNode.setEnvPath(s); + fileNode.setDirectory(true); + return new FileCAFILE(fileNode, true, ROOT); + } + + @Override + public String prefix() { + return FILEFactory.FILE_CA_PREFIX; + } + +} diff --git a/designer-base/src/main/java/com/fr/file/FileDataFILE.java b/designer-base/src/main/java/com/fr/file/FileDataFILE.java new file mode 100644 index 0000000000..11fba58b6a --- /dev/null +++ b/designer-base/src/main/java/com/fr/file/FileDataFILE.java @@ -0,0 +1,176 @@ +package com.fr.file; + +import com.fr.decision.webservice.bean.entry.FileNodeBean; +import com.fr.file.filetree.FileNode; +import com.fr.file.filter.FILEFilter; +import com.fr.general.ComparatorUtils; +import com.fr.log.FineLoggerFactory; +import com.fr.stable.CoreConstants; +import com.fr.stable.StableUtils; +import com.fr.stable.StringUtils; +import com.fr.workspace.server.repository.tabledata.TableDataRepository; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * FileDataFILE + * + * @author Destiny.Lin + * @since 11.0 + * Created on 2024/8/20 + */ +public class FileDataFILE extends FileNodeFILE{ + public static final String FILE_DATASET_NAME = "file_dataset"; + public static final String TXT = "txt"; + public static final String XML = "xml"; + public static final String EXCEL = "excel"; + private List children = new ArrayList<>(); + private boolean builded = false; + private String id = StringUtils.EMPTY; + private String type = "txt"; + + public FileDataFILE(FileNode node) { + super(node); + } + + public FileDataFILE(FileNode node, boolean builded, String id) { + super(node); + this.builded = builded; + this.id = id; + } + + public FileDataFILE(FileNode node, boolean builded, String id, String type) { + super(node); + this.builded = builded; + this.id = id; + this.type = type; + } + + private void addChild(FileDataFILE file) { + children.add(file); + } + + public List getChildren() { + return children; + } + + public void setChildren(List children) { + this.children = children; + } + + public boolean isBuilded() { + return builded; + } + + public void setBuilded(boolean builded) { + this.builded = builded; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + @Override + public FILE[] listFiles() { + + if (ComparatorUtils.equals(node, null)) { + node = new FileNode(CoreConstants.SEPARATOR, true); + } + if (!node.isDirectory()) { + return new FILE[]{this}; + } + try { + FileDataFILE root = null; + if (!this.builded) { + root = buildTree(); + FileDataFILE dataFILE = root.getFileDataFILE(this.id); + this.setChildren(dataFILE.getChildren()); + this.setType(dataFILE.getType()); + this.builded = true; + } + return this.getChildren().toArray(new FILE[0]); + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + return new FILE[0]; + } + } + + @Override + public String prefix() { + return FILEFactory.FILE_DATA_PREFIX; + } + + public FileDataFILE getFileDataFILE(String id) { + if (StringUtils.equals(this.id, id) || StringUtils.equals(StableUtils.pathJoin(this.id, StringUtils.EMPTY), id)) { + return this; + } + for (FileDataFILE file : getChildren()) { + return file.getFileDataFILE(id); + } + return null; + } + + private FileDataFILE buildTree() { + List beans = TableDataRepository.getInstance().getFileList(type); + Map tree = new HashMap<>(); + FileDataFILE root = null; + // id , 父 + for (FileNodeBean bean : beans) { + FileNode fileNode = new FileNode(); + fileNode.setEnvPath(bean.getPath()); + fileNode.setDirectory(bean.getIsParent()); + tree.putIfAbsent(bean.getId(), new FileDataFILE(fileNode, true, bean.getId(), type)); + if (StringUtils.isEmpty(bean.getpId())) { + root = tree.get(bean.getId()); + } else { + tree.putIfAbsent(bean.getpId(), createParent(bean.getpId(), beans)); + FileDataFILE file = tree.get(bean.getpId()); + if (file != null) { + file.addChild(tree.get(bean.getId())); + } + } + } + return root; + } + + private FileDataFILE createParent(String s, List beans) { + for (FileNodeBean bean : beans) { + if (StringUtils.equals(bean.getId(), s)) { + FileNode fileNode = new FileNode(); + fileNode.setEnvPath(bean.getPath()); + fileNode.setDirectory(bean.getIsParent()); + return new FileDataFILE(fileNode, true, bean.getId(), type); + } + } + return null; + } + + + /** + * 获取类型 + */ + public static String parseType(FILEFilter filter) { + if (filter.getDescription().contains("xls")) { + return EXCEL; + } else if (filter.getDescription().contains("xml")) { + return XML; + } else { + return TXT; + } + } +} diff --git a/designer-base/src/main/java/com/fr/file/FileNodeFILE.java b/designer-base/src/main/java/com/fr/file/FileNodeFILE.java index 8d3a7068b7..168a3c315a 100644 --- a/designer-base/src/main/java/com/fr/file/FileNodeFILE.java +++ b/designer-base/src/main/java/com/fr/file/FileNodeFILE.java @@ -23,9 +23,9 @@ import com.fr.workspace.WorkContext; import com.fr.workspace.Workspace; import com.fr.workspace.WorkspaceEvent; import com.fr.workspace.server.entity.WorkResourceTempRenameStream; -import com.fr.workspace.server.entity.template.TemplateListBean; +import com.fanruan.entity.template.TemplateListBean; import com.fr.workspace.server.repository.system.WorkspaceSystemInfo; -import com.fr.workspace.server.repository.template.TemplateRepository; +import com.fanruan.repository.TemplateRepository; import javax.swing.*; import java.io.InputStream; @@ -49,10 +49,10 @@ public class FileNodeFILE implements FILE { } - private FileNode node; + protected FileNode node; //记录下FILE对应的运行环境,每次创建都设置下当前的运行环境 - private String envPath; + protected String envPath; /** * 是否有全部权限 diff --git a/designer-base/src/main/java/com/fr/nx/app/designer/transform/ui/TransformFileTree.java b/designer-base/src/main/java/com/fr/nx/app/designer/transform/ui/TransformFileTree.java index cbfcd253fc..f73a6d4870 100644 --- a/designer-base/src/main/java/com/fr/nx/app/designer/transform/ui/TransformFileTree.java +++ b/designer-base/src/main/java/com/fr/nx/app/designer/transform/ui/TransformFileTree.java @@ -1,6 +1,7 @@ package com.fr.nx.app.designer.transform.ui; -import com.fr.base.FRContext; +import com.fanruan.entity.template.TemplateListBean; +import com.fanruan.repository.TemplateRepository; import com.fr.base.extension.FileExtension; import com.fr.design.gui.itree.checkboxtree.CheckBoxTree; import com.fr.design.gui.itree.checkboxtree.CheckBoxTreeCellRenderer; @@ -10,13 +11,12 @@ import com.fr.design.remote.ui.tree.FileAuthorityTree; import com.fr.file.filetree.FileNode; import com.fr.general.ComparatorUtils; import com.fr.nx.app.designer.transform.BatchTransformUtil; +import com.fr.stable.StringUtils; import javax.swing.tree.DefaultTreeModel; import javax.swing.tree.TreeCellRenderer; import javax.swing.tree.TreePath; -import java.awt.AlphaComposite; -import java.awt.Graphics; -import java.awt.Graphics2D; +import java.awt.*; import java.awt.event.MouseEvent; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; @@ -166,10 +166,8 @@ public class TransformFileTree extends FileAuthorityTree { for (String temp : this.filter.getSupportedTypes()) { supportTypes.add(FileExtension.parse(temp)); } - FileNode[] fileNodes = FRContext.getFileNodes().list( - path, - supportTypes.toArray(new FileExtension[supportTypes.size()]) - ); + TemplateListBean bean = new TemplateListBean(path, StringUtils.EMPTY, supportTypes.toArray(new FileExtension[supportTypes.size()]), false, true, false); + FileNode[] fileNodes = TemplateRepository.getInstance().list(bean); return BatchTransformUtil.filterTransformedFile(fileNodes, transformedList); } diff --git a/designer-base/src/main/java/com/fr/startup/ui/StartupPageConstants.java b/designer-base/src/main/java/com/fr/startup/ui/StartupPageConstants.java index 2dab229850..20d5f85ca6 100644 --- a/designer-base/src/main/java/com/fr/startup/ui/StartupPageConstants.java +++ b/designer-base/src/main/java/com/fr/startup/ui/StartupPageConstants.java @@ -1,29 +1,17 @@ package com.fr.startup.ui; -import java.awt.Color; - /** * created by Harrison on 2022/07/07 **/ public class StartupPageConstants { /** - * 圆弧长度 + * 圆角直径 */ - public static final int ARC_DIAMETER = 10; + public static final int ARC_DIAMETER = 16; /** * 内容宽度 */ public static final int CONTENT_WIDTH = 850; - - /** - * 边框的颜色 - */ - public static final Color BORDER_COLOR = Color.WHITE; - - /** - * 透明的颜色 - */ - public static final Color TRANSPARENT_COLOR = new Color(0, 0, 0, 0); } diff --git a/designer-base/src/main/java/com/fr/startup/ui/StartupPageWindow.java b/designer-base/src/main/java/com/fr/startup/ui/StartupPageWindow.java index 45c955b12b..3100c064ae 100644 --- a/designer-base/src/main/java/com/fr/startup/ui/StartupPageWindow.java +++ b/designer-base/src/main/java/com/fr/startup/ui/StartupPageWindow.java @@ -292,7 +292,8 @@ public class StartupPageWindow extends JFrame { Graphics2D g2d = (Graphics2D) g; g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); g2d.setColor(color); - g2d.fillRoundRect(0, 0, getWidth(), getHeight(), 2 * StartupPageConstants.ARC_DIAMETER, 2 * StartupPageConstants.ARC_DIAMETER); + g2d.fillRoundRect(0, 0, getWidth(), getHeight(), + StartupPageConstants.ARC_DIAMETER, StartupPageConstants.ARC_DIAMETER); } }; recentOpenPanel.setLayout(new BorderLayout()); diff --git a/designer-base/src/main/java/com/fr/startup/ui/StartupPageWorkspacePanel.java b/designer-base/src/main/java/com/fr/startup/ui/StartupPageWorkspacePanel.java index 2767f8945b..d91fc544ac 100644 --- a/designer-base/src/main/java/com/fr/startup/ui/StartupPageWorkspacePanel.java +++ b/designer-base/src/main/java/com/fr/startup/ui/StartupPageWorkspacePanel.java @@ -7,7 +7,6 @@ import com.fine.theme.utils.FineUIStyle; import com.fine.theme.utils.FineUIUtils; import com.formdev.flatlaf.ui.FlatUIUtils; import com.formdev.flatlaf.util.ScaledEmptyBorder; -import com.fr.design.components.tooltip.ModernToolTip; import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextfield.FRGraphics2D; @@ -22,10 +21,8 @@ import javax.swing.Icon; import javax.swing.JComponent; import javax.swing.JPanel; import javax.swing.JScrollBar; -import javax.swing.JToolTip; import javax.swing.JViewport; import javax.swing.ScrollPaneConstants; -import java.awt.BasicStroke; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; @@ -57,9 +54,9 @@ public class StartupPageWorkspacePanel extends JPanel { private static final Color PATH_COLOR = new Color(51, 51, 52, (int) Math.round(255 * 0.5)); /* 长度 */ - + private static final int SCROLL_BAR_WIDTH = 20; - + private static final int CONTENT_WIDTH = scale(StartupPageConstants.CONTENT_WIDTH + SCROLL_BAR_WIDTH); private static final int BORDER_THIN = 2; @@ -140,6 +137,7 @@ public class StartupPageWorkspacePanel extends JPanel { this.contentPanel.setOpaque(false); this.add(contentPanel, BorderLayout.NORTH); } + private JComponent generateUnLimitContentPanel(List> partitions) { JComponent panel = generateUnLimitContentPanel0(partitions); @@ -228,7 +226,7 @@ public class StartupPageWorkspacePanel extends JPanel { g.fillRoundRect(0, 0, preferredSize.width, preferredSize.height, 5, 5); } } - }; + }; showAllPanel.setLayout(new BorderLayout()); UILabel fontLabel = new UILabel(Toolkit.i18nText("Fine-Design_Startup_Page_Expand_All")); @@ -287,10 +285,6 @@ public class StartupPageWorkspacePanel extends JPanel { AtomicReference borderColorRef = new AtomicReference<>(null); JPanel selectWorkspacePanel = new JPanel() { - @Override - public JToolTip createToolTip() { - return new ModernToolTip(); - } @Override protected void paintComponent(Graphics g) { @@ -316,16 +310,15 @@ public class StartupPageWorkspacePanel extends JPanel { if (borderColor != null) { g2d.setColor(borderColor); - g2d.setStroke(new BasicStroke(BORDER_THIN)); - FlatUIUtils.setRenderingHints(g2d); - Path2D path2D = FineUIUtils.createLeftRoundRectangle(0, 0, - getWidth() - BORDER_THIN, getHeight() - BORDER_THIN, ARC_DIAMETER); - g2d.draw(path2D); + FineUIUtils.paintPartRoundButtonBorder(g2d, 0, 0, + this.getWidth(), this.getHeight(), + BORDER_THIN, ARC_DIAMETER, + FineUIUtils.LEFT, true); } } }; selectWorkspacePanel.setLayout(new BorderLayout()); - selectWorkspacePanel.setToolTipText(Toolkit.i18nText("Fine-Design_Startup_Page_Double_Click_Enter_Workspace")); + selectWorkspacePanel.setToolTipText(workspaceInfo.getPath()); selectWorkspacePanel.setBorder(new ScaledEmptyBorder(10, 10, 10, 10)); { @@ -348,7 +341,7 @@ public class StartupPageWorkspacePanel extends JPanel { FineUIUtils.setFontSize(nameLabel, NAME_LABEL_SIZE); nameLabel.setPreferredSize(PATH_DIMENSION); Color nameForeground = nameLabel.getForeground(); - simpleDescPanel.add(nameLabel,BorderLayout.NORTH); + simpleDescPanel.add(nameLabel, BorderLayout.NORTH); UILabel pathLabel = new UILabel(workspaceInfo.getPath()); pathLabel.setPreferredSize(PATH_DIMENSION); @@ -369,7 +362,7 @@ public class StartupPageWorkspacePanel extends JPanel { Color hoverColor = FlatUIUtils.getUIColor("brand.normal", HOVER_COLOR); borderColorRef.set(hoverColor); nameLabel.setForeground(hoverColor); - pathLabel.setForeground(hoverColor ); + pathLabel.setForeground(hoverColor); repaintAll(); } @@ -394,12 +387,7 @@ public class StartupPageWorkspacePanel extends JPanel { }; - UILabel arrowLabel = new UILabel(new LazyIcon("more_arrow", 20)) { - @Override - public JToolTip createToolTip() { - return new ModernToolTip(); - } - }; + UILabel arrowLabel = new UILabel(new LazyIcon("more_arrow", 20)); arrowLabel.setToolTipText(Toolkit.i18nText("Fine-Design_Startup_Page_Enter_Workspace")); arrowLabel.addMouseListener(new MouseAdapter() { @Override @@ -425,7 +413,7 @@ public class StartupPageWorkspacePanel extends JPanel { } selectWorkspacePanel.setPreferredSize(SELECT_WORKSPACE_DIMENSION); - workspaceItemDesc.add(selectWorkspacePanel, BorderLayout.WEST); + workspaceItemDesc.add(selectWorkspacePanel, BorderLayout.CENTER); } private void layoutSelectAndCreatePanel(StartupWorkspaceBean workspaceInfo, JPanel workspaceItemDesc) { @@ -433,10 +421,6 @@ public class StartupPageWorkspacePanel extends JPanel { // 选择并新建 AtomicReference borderColorRef = new AtomicReference<>(null); JPanel selectAndCreatePanel = new JPanel() { - @Override - public JToolTip createToolTip() { - return new ModernToolTip(); - } @Override protected void paintComponent(Graphics g) { @@ -451,11 +435,11 @@ public class StartupPageWorkspacePanel extends JPanel { Color borderColor = borderColorRef.get(); if (borderColor != null) { g2d.setColor(borderColor); - g2d.setStroke(new BasicStroke(BORDER_THIN)); - FlatUIUtils.setRenderingHints(g2d); - Path2D path2D = FineUIUtils.createRightRoundRectangle(0, 0, - getWidth() - BORDER_THIN, getHeight() - BORDER_THIN, ARC_DIAMETER); - g2d.draw(path2D); + FineUIUtils.paintPartRoundButtonBorder(g2d, 0, 0, + this.getWidth(), this.getHeight(), + BORDER_THIN, ARC_DIAMETER, + FineUIUtils.RIGHT, true + ); } } @@ -481,6 +465,7 @@ public class StartupPageWorkspacePanel extends JPanel { label.setIcon(new LazyIcon("add", 20)); repaintAll(); } + @Override public void mousePressed(MouseEvent e) { pageModel.setSelectWorkspaceInfo(workspaceInfo); diff --git a/designer-base/src/main/java/com/fr/widgettheme/designer/WidgetThemeDisplayConfigPane.java b/designer-base/src/main/java/com/fr/widgettheme/designer/WidgetThemeDisplayConfigPane.java index ad96c00a9f..532eb8f532 100644 --- a/designer-base/src/main/java/com/fr/widgettheme/designer/WidgetThemeDisplayConfigPane.java +++ b/designer-base/src/main/java/com/fr/widgettheme/designer/WidgetThemeDisplayConfigPane.java @@ -1,16 +1,24 @@ package com.fr.widgettheme.designer; +import com.fine.theme.utils.FineUIStyle; +import com.fine.theme.utils.FineUIUtils; import com.fr.design.dialog.BasicPane; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.FRGUIPaneFactory; -import com.fr.design.layout.VerticalFlowLayout; + import com.fr.widgettheme.control.attr.WidgetDisplayEnhanceMarkAttr; import javax.swing.JPanel; +import javax.swing.JTextArea; +import java.awt.BorderLayout; import java.awt.Color; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.column; +import static com.fine.swing.ui.layout.Layouts.row; + /** * 控件主题显示增强配置窗口 * @@ -27,20 +35,16 @@ public class WidgetThemeDisplayConfigPane extends BasicPane { } private void initComponents() { - VerticalFlowLayout layout = new VerticalFlowLayout(); - layout.setAlignLeft(true); - this.setLayout(layout); + this.setLayout(new BorderLayout()); JPanel northPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); - this.add(northPane); widgetEnhance = new UICheckBox(Toolkit.i18nText("Fine-Design_Widget_Enable_Display_Enhance")); widgetEnhance.setSelected(true); - northPane.add(widgetEnhance); + northPane.add(row(cell(widgetEnhance)).getComponent()); JPanel southPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); - this.add(southPane); - UILabel label = new UILabel(Toolkit.i18nText("Fine-Design_Widget_Display_Enhance_Tip")); - label.setForeground(Color.GRAY); - southPane.add(label); + JTextArea tipText = FineUIUtils.createAutoWrapTipLabel(Toolkit.i18nText("Fine-Design_Widget_Display_Enhance_Tip")); + southPane.add(tipText); + this.add(column(10, cell(northPane), cell(southPane)).getComponent()); } @Override diff --git a/designer-base/src/main/java/com/fr/widgettheme/theme/edit/widget/WidgetStyleEditPane.java b/designer-base/src/main/java/com/fr/widgettheme/theme/edit/widget/WidgetStyleEditPane.java index bf6ad6c4fd..b5d3f0f5c4 100644 --- a/designer-base/src/main/java/com/fr/widgettheme/theme/edit/widget/WidgetStyleEditPane.java +++ b/designer-base/src/main/java/com/fr/widgettheme/theme/edit/widget/WidgetStyleEditPane.java @@ -5,6 +5,7 @@ import com.fr.base.theme.TemplateTheme; import com.fr.design.beans.BasicBeanPane; import com.fr.design.designer.IntervalConstants; import com.fr.design.gui.frpane.FontSizeComboPane; +import com.fr.design.gui.frpane.UINumberDragPaneWithPercent; import com.fr.design.gui.frpane.UIPercentDragPane; import com.fr.design.gui.ibutton.UIColorButton; import com.fr.design.gui.ibutton.UIToggleButton; @@ -67,7 +68,7 @@ public class WidgetStyleEditPane extends BasicBeanPane< * 控件背景和透明度配置面板 */ protected NewColorSelectBox widgetBgColorSelectBox; - protected UIPercentDragPane widgetBgAlphaDragPane; + protected UINumberDragPaneWithPercent widgetBgAlphaDragPane; /** * 图标颜色 */ @@ -130,7 +131,7 @@ public class WidgetStyleEditPane extends BasicBeanPane< colorSelectBox = new NewColorSelectBox(WidgetThemeDisplayConstants.THEME_WIDGET_COMPONENT_WIDTH, true); colorSelectBox.setSelectObject(WidgetThemeDisplayConstants.DEFAULT_THEME_COLOR); widgetBgColorSelectBox = new NewColorSelectBox(WidgetThemeDisplayConstants.THEME_WIDGET_COMPONENT_WIDTH, true); - widgetBgAlphaDragPane = new UIPercentDragPane(); + widgetBgAlphaDragPane = new UINumberDragPaneWithPercent(0, 100, 1); initLineBox(); borderRadiusSpinner = new UISpinner(0, Integer.MAX_VALUE, 1); iconColorSelectBox = new NewColorSelectBox(WidgetThemeDisplayConstants.THEME_WIDGET_COMPONENT_WIDTH, true); diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_area.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_area.svg new file mode 100644 index 0000000000..8e7a17493a --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_area.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_bubble.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_bubble.svg new file mode 100644 index 0000000000..81eb99dad8 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_bubble.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_column.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_column.svg new file mode 100644 index 0000000000..ddf2ef872e --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_column.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_cuvette.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_cuvette.svg new file mode 100644 index 0000000000..4d68f0943c --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_cuvette.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_different_pie.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_different_pie.svg new file mode 100644 index 0000000000..99f947b8ba --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_different_pie.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_line.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_line.svg new file mode 100644 index 0000000000..9f4013ec9d --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_line.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_pie.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_pie.svg new file mode 100644 index 0000000000..620f4db03e --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_pie.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_pointer_180.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_pointer_180.svg new file mode 100644 index 0000000000..32f8af8ede --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_pointer_180.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_pointer_360.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_pointer_360.svg new file mode 100644 index 0000000000..1f680fd7a1 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_pointer_360.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_radar.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_radar.svg new file mode 100644 index 0000000000..d1141904ca --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_radar.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_ring.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_ring.svg new file mode 100644 index 0000000000..783652eeea --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_ring.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_same_pie.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_same_pie.svg new file mode 100644 index 0000000000..5f18014891 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_same_pie.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_scatter.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_scatter.svg new file mode 100644 index 0000000000..54b295eafe --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_scatter.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_slot.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_slot.svg new file mode 100644 index 0000000000..542a90fa65 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_slot.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_stack_radar.svg b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_stack_radar.svg new file mode 100644 index 0000000000..c278096d54 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/chart/icon_stack_radar.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/close/closeTag.svg b/designer-base/src/main/resources/com/fine/theme/icon/close/closeTag.svg new file mode 100644 index 0000000000..fa060d003f --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/close/closeTag.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/close/platform_close_disable.svg b/designer-base/src/main/resources/com/fine/theme/icon/close/platform_close_disable.svg new file mode 100644 index 0000000000..cb917bb243 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/close/platform_close_disable.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/dataset/connection_locked.svg b/designer-base/src/main/resources/com/fine/theme/icon/dataset/connection_locked.svg new file mode 100644 index 0000000000..a24a789d62 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/dataset/connection_locked.svg @@ -0,0 +1,4 @@ + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/dataset/connection_locked_disable.svg b/designer-base/src/main/resources/com/fine/theme/icon/dataset/connection_locked_disable.svg new file mode 100644 index 0000000000..3b8bfc5a6f --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/dataset/connection_locked_disable.svg @@ -0,0 +1,4 @@ + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/debug.svg b/designer-base/src/main/resources/com/fine/theme/icon/debug.svg new file mode 100644 index 0000000000..3e7608a5be --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/debug.svg @@ -0,0 +1,3 @@ + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/debug_disable.svg b/designer-base/src/main/resources/com/fine/theme/icon/debug_disable.svg new file mode 100644 index 0000000000..442f87ac0c --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/debug_disable.svg @@ -0,0 +1,3 @@ + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/editor/type_cursor.svg b/designer-base/src/main/resources/com/fine/theme/icon/editor/type_cursor.svg new file mode 100644 index 0000000000..63e0d1fc98 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/editor/type_cursor.svg @@ -0,0 +1,3 @@ + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/filetree/folder_half_authority.svg b/designer-base/src/main/resources/com/fine/theme/icon/filetree/folder_half_authority.svg new file mode 100644 index 0000000000..438cd6c89b --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/filetree/folder_half_authority.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/filetree/folder_half_authority_open.svg b/designer-base/src/main/resources/com/fine/theme/icon/filetree/folder_half_authority_open.svg new file mode 100644 index 0000000000..c919f1a181 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/filetree/folder_half_authority_open.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/font/autoForeground.svg b/designer-base/src/main/resources/com/fine/theme/icon/font/autoForeground.svg new file mode 100644 index 0000000000..11837397ff --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/font/autoForeground.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/font/autoForeground_disable.svg b/designer-base/src/main/resources/com/fine/theme/icon/font/autoForeground_disable.svg new file mode 100644 index 0000000000..46c1bfedc0 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/font/autoForeground_disable.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/font/background_disable.svg b/designer-base/src/main/resources/com/fine/theme/icon/font/background_disable.svg new file mode 100644 index 0000000000..3dff853cb9 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/font/background_disable.svg @@ -0,0 +1,4 @@ + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/font/foreground_disable.svg b/designer-base/src/main/resources/com/fine/theme/icon/font/foreground_disable.svg new file mode 100644 index 0000000000..dcf70fdc59 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/font/foreground_disable.svg @@ -0,0 +1,4 @@ + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/left_arrow.svg b/designer-base/src/main/resources/com/fine/theme/icon/left_arrow.svg new file mode 100644 index 0000000000..ee9347f2e6 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/left_arrow.svg @@ -0,0 +1,3 @@ + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/right_arrow.svg b/designer-base/src/main/resources/com/fine/theme/icon/right_arrow.svg new file mode 100644 index 0000000000..64b0c896d9 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/right_arrow.svg @@ -0,0 +1,3 @@ + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/theme_edit.svg b/designer-base/src/main/resources/com/fine/theme/icon/theme_edit.svg new file mode 100644 index 0000000000..e0d5ef158d --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/theme_edit.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/tip/jump_to_references.svg b/designer-base/src/main/resources/com/fine/theme/icon/tip/jump_to_references.svg new file mode 100644 index 0000000000..192bdfff9a --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/tip/jump_to_references.svg @@ -0,0 +1,3 @@ + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/tip/waiting.svg b/designer-base/src/main/resources/com/fine/theme/icon/tip/waiting.svg new file mode 100644 index 0000000000..d28bde3384 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/tip/waiting.svg @@ -0,0 +1,4 @@ + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/toolbar/member.svg b/designer-base/src/main/resources/com/fine/theme/icon/toolbar/member.svg new file mode 100644 index 0000000000..2c068c2277 --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/toolbar/member.svg @@ -0,0 +1,3 @@ + + + diff --git a/designer-base/src/main/resources/com/fine/theme/icon/toolbar/role.svg b/designer-base/src/main/resources/com/fine/theme/icon/toolbar/role.svg new file mode 100644 index 0000000000..fcf3ecb12f --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/toolbar/role.svg @@ -0,0 +1,3 @@ + + + diff --git a/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json b/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json index d73d090802..3d09c571bf 100644 --- a/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json +++ b/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json @@ -21,6 +21,7 @@ "add": "add.svg", "add_hover": "add_hover.svg", "detail": "detail.svg", + "debug": "debug.svg", "dataLink": "dataLink.svg", "jumpHelp": "jumpHelp.svg", "switch": "switch.svg", @@ -28,6 +29,8 @@ "drag_right": "drag_right.svg", "down_arrow": "down_arrow.svg", "up_arrow": "up_arrow.svg", + "left_arrow": "left_arrow.svg", + "right_arrow": "right_arrow.svg", "select": "select.svg", "recycle": "recycle.svg", "time": "time.svg", @@ -42,6 +45,7 @@ "database_warning": "dataset/database_warning.svg", "preview": "dataset/preview.svg", "connection": "dataset/connection.svg", + "connection_locked": "dataset/connection_locked.svg", "class_table_data": "dataset/class_table_data.svg", "data_table": "dataset/data_table.svg", "multi": "dataset/multi.svg", @@ -169,6 +173,7 @@ "underline": "font/underline.svg", "foreground": "font/foreground.svg", "background": "font/background.svg", + "autoForeground": "font/autoForeground.svg", "h_left": "cellstyle/h_left.svg", "h_center": "cellstyle/h_center.svg", "h_right": "cellstyle/h_right.svg", @@ -287,6 +292,8 @@ "templateStore": "toolbar/templateStore.svg", "bug": "toolbar/bug.svg", "need": "toolbar/need.svg", + "member": "toolbar/member.svg", + "role": "toolbar/role.svg", "workOrderCenter": "toolbar/workOrderCenter.svg", "actCenter": "toolbar/actCenter.svg", "sign": "toolbar/sign.svg", @@ -321,7 +328,9 @@ "nosort": "sort/nosort.svg", "close": "close/close.svg", "close_round": "close/close_round.svg", + "closeTag": "close/closeTag.svg", "platform_close": "close/platform_close.svg", + "platform_close_disabled": "close/platform_close_disable.svg", "add_parenthesis": "font/add_parenthesis.svg", "remove_parenthesis": "font/remove_parenthesis.svg", "shadow": "font/shadow.svg", @@ -379,6 +388,7 @@ "type_double_popup": "editor/type_double_popup.svg", "type_boolean": "editor/type_boolean.svg", "type_boolean_popup": "editor/type_boolean_popup.svg", + "type_cursor": "editor/type_cursor.svg", "date_popup": "editor/date_popup.svg", "param_popup": "editor/param_popup.svg", "cellelement_popup": "editor/cellelement_popup.svg", @@ -417,6 +427,21 @@ "chart_rectangleTree": "chart/chart_rectangleTree.svg", "chart_wordCloud": "chart/chart_wordCloud.svg", "chart_frame": "chart/chart_frame.svg", + "icon_area": "chart/icon_area.svg", + "icon_bubble": "chart/icon_bubble.svg", + "icon_cuvette": "chart/icon_cuvette.svg", + "icon_different_pie": "chart/icon_different_pie.svg", + "icon_line": "chart/icon_line.svg", + "icon_pie": "chart/icon_pie.svg", + "icon_pointer_180": "chart/icon_pointer_180.svg", + "icon_pointer_360": "chart/icon_pointer_360.svg", + "icon_radar": "chart/icon_radar.svg", + "icon_ring": "chart/icon_ring.svg", + "icon_same_pie": "chart/icon_same_pie.svg", + "icon_scatter": "chart/icon_scatter.svg", + "icon_slot": "chart/icon_slot.svg", + "icon_stack_radar": "chart/icon_stack_radar.svg", + "icon_column": "chart/icon_column.svg", "out": "border/out.svg", "in": "border/in.svg", "bottom": "border/bottom.svg", @@ -434,15 +459,20 @@ "top": "border/top.svg", "all":"border/all.svg", "error":"tip/error.svg", + "waiting":"tip/waiting.svg", "information":"tip/information.svg", "new_information":"tip/new_information.svg", + "jump_to_references":"tip/jump_to_references.svg", "success":"tip/success.svg", "warning":"tip/warning.svg", "layout_top": "layout/layout_top.svg", "layout_bottom": "layout/layout_bottom.svg", "layout_left": "layout/layout_left.svg", "layout_right": "layout/layout_right.svg", - "layout_top_right": "layout/layout_top_right.svg" + "layout_top_right": "layout/layout_top_right.svg", + "theme_edit": "theme_edit.svg", + "folder_half_authority" : "filetree/folder_half_authority.svg", + "folder_half_authority_open" : "filetree/folder_half_authority_open.svg" } } diff --git a/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLaf.properties b/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLaf.properties index 9ac0952b65..456d77ac89 100644 --- a/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLaf.properties +++ b/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLaf.properties @@ -5,8 +5,11 @@ CheckBoxUI=com.fine.theme.light.ui.FineCheckBoxUI CheckBoxMenuItemUI=com.formdev.flatlaf.ui.FlatCheckBoxMenuItemUI ColorChooserUI=com.formdev.flatlaf.ui.FlatColorChooserUI ComboBoxUI=com.fine.theme.light.ui.FineComboBoxUI +ComboCheckBoxUI=com.fine.theme.light.ui.FineComboCheckBoxUI DesktopIconUI=com.formdev.flatlaf.ui.FlatDesktopIconUI DesktopPaneUI=com.formdev.flatlaf.ui.FlatDesktopPaneUI +CalendarPaneUI=com.fine.theme.light.ui.FineCalendarPaneUI +DayLabelUI=com.fine.theme.light.ui.FineDayLabelUI EditorPaneUI=com.formdev.flatlaf.ui.FlatEditorPaneUI FileChooserUI=com.formdev.flatlaf.ui.FlatFileChooserUI FormattedTextFieldUI=com.formdev.flatlaf.ui.FlatFormattedTextFieldUI @@ -27,6 +30,7 @@ RadioButtonUI=com.formdev.flatlaf.ui.FlatRadioButtonUI RadioButtonMenuItemUI=com.formdev.flatlaf.ui.FlatRadioButtonMenuItemUI RootPaneUI=com.formdev.flatlaf.ui.FlatRootPaneUI ScrollBarUI=com.formdev.flatlaf.ui.FlatScrollBarUI +BasicVerticalScrollBarUI=com.fr.design.gui.iscrollbar.UIScrollBarUI ScrollPaneUI=com.formdev.flatlaf.ui.FlatScrollPaneUI SeparatorUI=com.formdev.flatlaf.ui.FlatSeparatorUI SliderUI=com.fine.theme.light.ui.FineSliderUI diff --git a/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLightLaf.properties b/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLightLaf.properties index f31bda6cf5..34e9f8e3c5 100644 --- a/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLightLaf.properties +++ b/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLightLaf.properties @@ -33,14 +33,17 @@ # font weights # Windows [win]defaultFont = "Microsoft YaHei", "Microsoft JhengHei", MingLiU, Arial +[win]titleFont = 14, "Microsoft YaHei", "Microsoft JhengHei", MingLiU, Arial [win]light.font = "Microsoft YaHei", "Microsoft JhengHei", MingLiU, "Arial [win]semibold.font = "Microsoft YaHei", "Microsoft JhengHei", MingLiU, Arial # macOS [mac]defaultFont = 12 "PingFang SC", "Apple LiGothic", "Apple LiSun", Arial +[mac]titleFont = 14 "PingFang SC", "Apple LiGothic", "Apple LiSun", Arial [mac]light.font = "PingFang SC", "Apple LiGothic", "Apple LiSun", Arial [mac]semibold.font = "PingFang SC", "Apple LiGothic", "Apple LiSun", Arial # Linux [linux]defaultFont = 12 "Noto SansCJK", SimHei, Arial, Ubuntu +[linux]titleFont = 14 "Noto SansCJK", SimHei, Arial, Ubuntu [linux]light.font = "Noto SansCJK", SimHei, Arial, Ubuntu [linux]semibold.font = "Noto SansCJK", SimHei, Arial, Ubuntu @@ -144,6 +147,7 @@ tooltip.normal=#3F506A tooltip.disabled=#A3ADBD hover.deep=#e2fbe6 fill.deep=#F6F9FE +track.normal=#DADEE7 #---- Button ---- @@ -227,7 +231,7 @@ CombinationButton.arc = $Button.arc #---- CheckBox ---- -CheckBox.arc = 4 +CheckBox.arc = $Component.arc CheckBox.margin = 2,0,2,0 CheckBox.iconTextGap = 4 CheckBox.rollover = true @@ -305,7 +309,7 @@ ComboBox.maximumRowCount = 15 ComboBox.buttonStyle = auto ComboBox.background = #FFF ComboBox.buttonBackground = $ComboBox.background -ComboBox.buttonEditableBackground = darken($ComboBox.background,2%) +ComboBox.buttonEditableBackground = $ComboBox.background ComboBox.buttonSeparatorColor = $ComboBox.background ComboBox.buttonDisabledSeparatorColor = $Component.disabledBorderColor ComboBox.buttonArrowColor = @buttonArrowColor @@ -319,6 +323,11 @@ ComboBox.selectionArc = 0 ComboBox.borderCornerRadius = 3 ComboBox.comboHeight = 24 ComboBox.selectBox.button.height = 22 +ComboBox.renderInset = 0,6,0,6 + +#---- ComboCheckBox ---- +ComboCheckBox.background = $fill.normal +ComboCheckBox.border = com.fine.theme.light.ui.FineRoundBorder #---- Component ---- @@ -326,7 +335,7 @@ Component.focusWidth = 0 Component.innerFocusWidth = 0.5 Component.innerOutlineWidth = 1 Component.borderWidth = 1 -Component.arc = 5 +Component.arc = 6 Component.minimumWidth = 64 # allowed values: chevron or triangle Component.arrowType = chevron @@ -406,6 +415,14 @@ Label.strongHintColor = #FF0000 Label.warningColor = #F1393C Label.secondaryColor = #0A1C38A8 +# ---- Calendar ---- +Calendar.background = $fill.normal +Calendar.day.selectedBackground = #2576EF +Calendar.day.hoverBackground = #E6E9EF +Calendar.day.pressedBackground = #DADEE7 +Calendar.dayOtherMonth.foreground = fade(@foreground, 29%) +Calendar.day.arc = 6 + #---- HelpButton ---- HelpButton.questionMarkColor = @accentCheckmarkColor @@ -446,6 +463,7 @@ List.showCellFocusIndicator = false List.cellRender.background = #FFF List.cellRender.button.width = 28 List.cellRender.button.height = 24 +List.cellRender.height = 24 List.wrapper.text.fontColor = #0a1c3877 #---- Menu ---- @@ -575,7 +593,7 @@ PopupMenu.background=$background.normal PopupMenu.scrollArrowColor = @buttonArrowColor PopupMenu.borderColor=$border.divider PopupMenu.hoverScrollArrowBackground = darken(@background,5%) -PopupMenu.arc=10 +PopupMenu.arc=8 #---- PopupMenuSeparator ---- PopupMenuSeparator.height=5 @@ -714,7 +732,7 @@ Slider.trackWidth = 2 Slider.thumbSize = 12,12 Slider.focusWidth=0 Slider.trackValueColor=$brand.normal -Slider.trackColor=$border.divider +Slider.trackColor=$track.normal Slider.thumbColor=$fill.normal Slider.thumbBorderColor=$border.divider Slider.tickColor = @disabledForeground @@ -882,7 +900,7 @@ TemplateTabPane.borderColor = $border.divider TemplateTabPane.closeHoverBackground = $hover.deep TemplateTabPane.tabInsets = 4,6,4,6 TemplateTabPane.borderWidth = 1 -TemplateTabPane.tabArc = 5 +TemplateTabPane.tabArc = 8 TemplateTabPane.separatorHeight = 14 TemplateTabPane.icon.hoverBackground = #B8BFCB @@ -943,6 +961,7 @@ TextArea.selectionBackground=$color.brand4 TextArea.selectionForeground=$text.white TextArea.inactiveForeground=fade(@foreground, 29%) TextArea.disabledBackground=$fill.disabled +TextArea.currentLineHighlightColor=#fffae8 #---- TextComponent ---- @@ -1122,7 +1141,7 @@ Tree.selectionInactiveBackground = @selectionBackground Tree.selectionInactiveForeground = @selectionForeground Tree.textBackground = $Tree.background Tree.textForeground = $Tree.foreground -Tree.selectionBorderColor = @cellFocusColor +Tree.selectionBorderColor = #00000000 Tree.dropCellBackground = @dropCellBackground Tree.dropCellForeground = @dropCellForeground Tree.dropLineColor = @dropLineColor @@ -1181,7 +1200,8 @@ South.SheetSelectedColor = #FFF #---- North ---- North.userinfoLabel.borderMargins=2, 16, 2, 16 -North.userinfoLabel.width=80 +North.userinfoLabel.maxWidth=176 +North.userinfoLabel.minWidth=80 North.userinfoLabel.height=24 North.border = $defaultBorderColor North.messageLabel.foreground=$text.placeholder @@ -1199,7 +1219,7 @@ Center.GridColumnRowEditedColor=#e9ecf1 Center.GridCornerFill=fade(#0A1C38, 47%) Center.SpaceColor = #FFF Center.border = 0, 10, 10, 10 -Center.arc=10 +Center.arc=8 #---- CellOtherSetPane ---- CellOtherSetPane.height=$Component.defaultHeight @@ -1261,6 +1281,15 @@ chart.selectedBorderColor = #2576EF borderWidth : 0; \ disabledBackground : fade($Button.background,0%); +[style]Button.plainArrowButton=\ + background : fade($Button.background,0%); \ + margin: 4,4,4,4; \ + borderWidth : 0; \ + disabledBackground : fade($Button.background,0%); \ + hoverBackground : null; \ + selectedBackground : null; \ + pressedBackground : null + [style]CombinationButton.primary = \ background : @BrandColor; \ arc : 3 @@ -1313,6 +1342,11 @@ chart.selectedBorderColor = #2576EF [style]TextField.transparentTextField=\ background: fade(@background, 0%); \ border: null; + +[style]TextField.offsetLeftText=\ + background: fade(@background, 0%); \ + border: 0,6,0,0; + [style]PopupMenu.dropdownPopupMenu=\ background: fade(@background, 0%); \ borderInsets: 0,0,0,0; @@ -1335,6 +1369,9 @@ chart.selectedBorderColor = #2576EF [style]Label.boldLabel = \ font: bold $defaultFont +[style]Label.tipWindowTitleLabel = \ + font: bold $titleFont + [style]Label.tipLabel = \ foreground: $Label.tipColor @@ -1391,9 +1428,24 @@ chart.selectedBorderColor = #2576EF background: $fill.normal [style]Button.originalButton = \ - border: 4,4,4,4; \ - background: null; + borderColor: null; \ + background: null; \ + hoverBorderColor: null; + +[style]Button.grayButton = \ + foreground: fade(@foreground, 29%); \ + borderColor: null; \ + background: $fill.normal; \ + hoverBorderColor: null; + [style]Label.detailLabel = \ foreground: fade(@foreground, 90%); \ - background: $fill.normal; \ No newline at end of file + background: $fill.normal; + +[style]Label.widgetEventLabel = \ + foreground: $List.wrapper.text.fontColor; \ + background: $fill.normal; + +[style]Label.hyperLinkLabel = \ + foreground: $brand.normal; diff --git a/designer-base/src/main/resources/com/fr/design/data/tabledata/datacenter/web/data-choose.main.css b/designer-base/src/main/resources/com/fr/design/data/tabledata/datacenter/web/data-choose.main.css index a2d2e76f32..b3e8ecc216 100644 --- a/designer-base/src/main/resources/com/fr/design/data/tabledata/datacenter/web/data-choose.main.css +++ b/designer-base/src/main/resources/com/fr/design/data/tabledata/datacenter/web/data-choose.main.css @@ -1 +1 @@ -@font-face{font-family:dataIntegrationFont;src:url(../assets/fonts/iconfont.eot);src:url(../assets/fonts/iconfont.eot#iefix) format("embedded-opentype"),url(../assets/fonts/iconfont.woff) format("woff"),url(../assets/fonts/iconfont.ttf) format("truetype"),url(../assets/fonts/iconfont.svg#svgFontName) format("svg")}.b-font{font-family:dataIntegrationFont,fineui;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.menu-data-center-font .b-font:before,.menu-data-center-font.disabled .b-font:before{content:"\e676";color:inherit}.spider-indicator-font .b-font:before,.spider-indicator-font.disabled .b-font:before{content:"\eabf";color:#3392db}.direct-indicator-font .b-font:before,.direct-indicator-font.disabled .b-font:before{content:"\eadd";color:#3392db}.spider-dimension-font .b-font:before,.spider-dimension-font.disabled .b-font:before{content:"\eabc";color:#537bc6}.direct-dimension-font .b-font:before,.direct-dimension-font.disabled .b-font:before{content:"\eade";color:#537bc6}.spider-business-model-font .b-font:before,.spider-business-model-font.disabled .b-font:before{content:"\eac0";color:#5545ba}.direct-business-model-font .b-font:before,.direct-business-model-font.disabled .b-font:before{content:"\eada";color:#5545ba}.rename-font .b-font:before,.rename-font.disabled .b-font:before{content:"\e6cc";color:inherit}.custom-add-group-font .b-font:before,.custom-add-group-font.disabled .b-font:before{content:"\e614";color:#3685f2}.gray-close-font .b-font:before,.gray-close-font.disabled .b-font:before{content:"\e6d0";color:#647185}.delete-font .b-font:before,.delete-font.disabled .b-font:before{content:"\e6c4";color:inherit}.dimension-combo-summary-font .b-font:before,.dimension-combo-summary-font.disabled .b-font:before{content:"\e60a";color:inherit}.custom-copy-group-font .b-font:before,.custom-copy-group-font.disabled .b-font:before{content:"\e6bd";color:inherit}.tree-expander-expand-font .b-font:before,.tree-expander-expand-font.disabled .b-font:before{content:"\e905";color:inherit}.tree-expander-collapse-font .b-font:before,.tree-expander-collapse-font.disabled .b-font:before{content:"\e906";color:inherit}.pack-move-font-blue .b-font:before,.pack-move-font-blue.disabled .b-font:before{content:"\e73f";color:inherit}.common-pull-down-font .b-font:before,.common-pull-down-font.disabled .b-font:before{content:"\e6d7";color:inherit}.string-field-font .b-font:before,.string-field-font.disabled .b-font:before{content:"\e99b";color:#3685f2}.number-field-font .b-font:before,.number-field-font.disabled .b-font:before{content:"\e998";color:#13bfa8}.date-field-font .b-font:before,.date-field-font.disabled .b-font:before{content:"\e996";color:#f0ac3c}.capsule-combo-down .b-font:before,.capsule-combo-down.disabled .b-font:before{content:"\e6d7";color:inherit}.fdi-data-group-table-field{-webkit-user-select:none;-moz-user-select:none;user-select:none}.fdi-data-group-table-field .select-fields-label{font-size:12px}.group-select-fields-item-button.active.string-field-font,.group-select-fields-item-button:active.string-field-font{background-color:#afc6e8}.group-select-fields-item-button.active.number-field-font,.group-select-fields-item-button:active.number-field-font{background-color:#afdfda}.group-select-fields-item-button.active.date-field-font,.group-select-fields-item-button:active.date-field-font{background-color:rgba(250,170,57,.4)}.group-select-fields-item-button:hover:not(.active).string-field-font{background-color:rgba(175,198,232,.14901960784313725)}.group-select-fields-item-button:hover:not(.active).number-field-font{background-color:rgba(175,223,218,.14901960784313725)}.group-select-fields-item-button:hover:not(.active).date-field-font{background-color:rgba(250,170,57,.050980392156862744)}.fdi-helper{background-color:rgba(54,133,242,.4);font-size:13px;opacity:.7;border-radius:2px}.fdi-helper.dragging-modify{background:none}.fdi-helper.dragging-modify .helper-warning{border:1px solid #e65251;border-radius:2px}.bi-field-drag-helper{font-size:13px}.bi-field-drag-helper.string-field-helper{box-shadow:1px 1px 2px 0 rgba(0,0,0,.10196078431372549);background-color:rgba(175,198,232,.2)}.bi-field-drag-helper.number-field-helper{box-shadow:1px 1px 2px 0 rgba(0,0,0,.10196078431372549);background-color:rgba(175,223,218,.2)}.bi-field-drag-helper.date-field-helper{box-shadow:1px 1px 2px 0 rgba(0,0,0,.10196078431372549);background-color:rgba(250,170,57,.2)}.fdi-string-region{max-height:50%}.fdi-string-region .bi-region-comment,.fdi-string-region .bi-region-nav .bi-region-north-title{font-size:12px}.fdi-string-region .region-content-analysis{min-height:34px;max-height:90%}.bi-string-dimension-container{background-color:#afc6e8;min-width:50px}.bi-data-dimension-container{background-color:rgba(250,170,57,.4);min-width:50px}.bi-number-dimension-container{background-color:#afdfda;min-width:50px}.fdi-data-group-dimension .tip-name{color:rgba(61,77,102,.6);min-width:30px;max-width:80px}.fdi-data-group-dimension .tip-name.marked-red{color:#e65251}.fdi-data-group-dimension .dimension-down-list-combo:not(.bi-combo-popup){visibility:hidden}.fdi-data-group-dimension:hover .dimension-down-list-combo{visibility:visible}.target-capsule-background{background-color:#afdfda}.dimension-capsule-background{background-color:#afc6e8}.target-capsule-helper,.target-capsule-helper.bi-helper{background-color:rgba(175,223,218,.5);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#80afdfda,endColorstr=#80afdfda);border:1px solid #afdfda;box-shadow:1px 1px 2px 0 rgba(0,0,0,.10196078431372549)}.dimension-capsule-helper,.dimension-capsule-helper.bi-helper{background-color:rgba(175,198,232,.5);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#80afc6e8,endColorstr=#80afc6e8);border:1px solid rgba(69,99,161,.4);box-shadow:1px 1px 2px 0 rgba(0,0,0,.10196078431372549)}.bi-capsule-border{border-top-left-radius:6px;border-bottom-right-radius:6px}.field-helper-warning{border:1px solid #e65251;border-top-left-radius:6px;border-bottom-right-radius:6px}.bi-capsule-replace-border{box-sizing:border-box;border:1px solid rgba(35,46,64,.4)}.fdi-component-custom-group-number-auto .group-count-success{color:#13cd66}.fdi-component-custom-group-number-auto .group-count-failure{color:#e65251}.fdi-component-custom-group-number-item .gray-close-font:not(.bi-combo-popup){visibility:hidden}.fdi-component-custom-group-number-item:hover .gray-close-font{visibility:visible}.fdi-component-custom-group-number-item .error-tip{background:#ffecec;color:#e65251}.bi-theme-dark .bi-component-custom-group-number-item .error-tip{background:#3a2940}.fdi-components-rename-editor .shelter-editor-text{min-width:30px;max-width:125px}.fdi-component-custom-group-string-group-item .left-text-max-width{max-width:470px}.fdi-component-custom-group-string-group-item .left-text-proportion-width{max-width:274px}.fdi-component-custom-group-string-group-item .right-text-proportion-width{max-width:196px}.bi-component-custom-group-string-group-expander .delete-combo:not(.bi-combo-popup){visibility:hidden}.bi-component-custom-group-string-group-expander:hover .delete-combo{visibility:visible}.bi-component-custom-group-string-group-expander .readonly .delete-combo{visibility:hidden}.bi-component-custom-group-string-group-expander.bi-expander-popup{background-color:#f8f9fc}.bi-component-custom-group-string-group-expander .string-group-expander-node:active,.bi-component-custom-group-string-group-expander .string-group-expander-node:hover{background-color:#e5efff}.bi-custom-group-string .custom-group-editor{border-radius:2px}.bi-custom-group-string .custom-searcher{z-index:1} \ No newline at end of file +@font-face{font-family:dataIntegrationFont;src:url(../assets/fonts/iconfont.eot);src:url(../assets/fonts/iconfont.eot#iefix) format("embedded-opentype"),url(../assets/fonts/iconfont.woff) format("woff"),url(../assets/fonts/iconfont.ttf) format("truetype"),url(../assets/fonts/iconfont.svg#svgFontName) format("svg")}.b-font{font-family:dataIntegrationFont,fineui;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.menu-data-center-font .b-font:before,.menu-data-center-font.disabled .b-font:before{content:"\e676";color:inherit}.spider-indicator-font .b-font:before,.spider-indicator-font.disabled .b-font:before{content:"\eabf";color:#3392db}.direct-indicator-font .b-font:before,.direct-indicator-font.disabled .b-font:before{content:"\eadd";color:#3392db}.spider-dimension-font .b-font:before,.spider-dimension-font.disabled .b-font:before{content:"\eabc";color:#537bc6}.direct-dimension-font .b-font:before,.direct-dimension-font.disabled .b-font:before{content:"\eade";color:#537bc6}.spider-business-model-font .b-font:before,.spider-business-model-font.disabled .b-font:before{content:"\eac0";color:#5545ba}.direct-business-model-font .b-font:before,.direct-business-model-font.disabled .b-font:before{content:"\eada";color:#5545ba}.rename-font .b-font:before,.rename-font.disabled .b-font:before{content:"\e6cc";color:inherit}.custom-add-group-font .b-font:before,.custom-add-group-font.disabled .b-font:before{content:"\e614";color:#3685f2}.gray-close-font .b-font:before,.gray-close-font.disabled .b-font:before{content:"\e6d0";color:#647185}.delete-font .b-font:before,.delete-font.disabled .b-font:before{content:"\e6c4";color:inherit}.dimension-combo-summary-font .b-font:before,.dimension-combo-summary-font.disabled .b-font:before{content:"\e60a";color:inherit}.custom-copy-group-font .b-font:before,.custom-copy-group-font.disabled .b-font:before{content:"\e6bd";color:inherit}.tree-expander-expand-font .b-font:before,.tree-expander-expand-font.disabled .b-font:before{content:"\e905";color:inherit}.tree-expander-collapse-font .b-font:before,.tree-expander-collapse-font.disabled .b-font:before{content:"\e906";color:inherit}.pack-move-font-blue .b-font:before,.pack-move-font-blue.disabled .b-font:before{content:"\e73f";color:inherit}.common-pull-down-font .b-font:before,.common-pull-down-font.disabled .b-font:before{content:"\e6d7";color:inherit}.string-field-font .b-font:before,.string-field-font.disabled .b-font:before{content:"\e99b";color:#3685f2}.number-field-font .b-font:before,.number-field-font.disabled .b-font:before{content:"\e998";color:#13bfa8}.date-field-font .b-font:before,.date-field-font.disabled .b-font:before{content:"\e996";color:#f0ac3c}.capsule-combo-down .b-font:before,.capsule-combo-down.disabled .b-font:before{content:"\e6d7";color:inherit}.change-data-font .b-font:before,.change-data-font.disabled .b-font:before{content:"\e703";color:inherit}.fdi-data-group-table-field{-webkit-user-select:none;-moz-user-select:none;user-select:none}.fdi-data-group-table-field .select-fields-label{font-size:12px}.group-select-fields-item-button.active.string-field-font,.group-select-fields-item-button:active.string-field-font{background-color:#afc6e8}.group-select-fields-item-button.active.number-field-font,.group-select-fields-item-button:active.number-field-font{background-color:#afdfda}.group-select-fields-item-button.active.date-field-font,.group-select-fields-item-button:active.date-field-font{background-color:rgba(250,170,57,.4)}.group-select-fields-item-button:hover:not(.active).string-field-font{background-color:rgba(175,198,232,.14901960784313725)}.group-select-fields-item-button:hover:not(.active).number-field-font{background-color:rgba(175,223,218,.14901960784313725)}.group-select-fields-item-button:hover:not(.active).date-field-font{background-color:rgba(250,170,57,.050980392156862744)}.fdi-helper{background-color:rgba(54,133,242,.4);font-size:13px;opacity:.7;border-radius:2px}.fdi-helper.dragging-modify{background:none}.fdi-helper.dragging-modify .helper-warning{border:1px solid #e65251;border-radius:2px}.bi-field-drag-helper{font-size:13px}.bi-field-drag-helper.string-field-helper{box-shadow:1px 1px 2px 0 rgba(0,0,0,.10196078431372549);background-color:rgba(175,198,232,.2)}.bi-field-drag-helper.number-field-helper{box-shadow:1px 1px 2px 0 rgba(0,0,0,.10196078431372549);background-color:rgba(175,223,218,.2)}.bi-field-drag-helper.date-field-helper{box-shadow:1px 1px 2px 0 rgba(0,0,0,.10196078431372549);background-color:rgba(250,170,57,.2)}.fdi-string-region{max-height:50%}.fdi-string-region .bi-region-comment,.fdi-string-region .bi-region-nav .bi-region-north-title{font-size:12px}.fdi-string-region .region-content-analysis{min-height:34px;max-height:90%}.bi-string-dimension-container{background-color:#afc6e8;min-width:50px}.bi-data-dimension-container{background-color:rgba(250,170,57,.4);min-width:50px}.bi-number-dimension-container{background-color:#afdfda;min-width:50px}.fdi-data-group-dimension .tip-name{color:rgba(61,77,102,.6);min-width:30px;max-width:80px}.fdi-data-group-dimension .tip-name.marked-red{color:#e65251}.fdi-data-group-dimension .dimension-down-list-combo:not(.bi-combo-popup){visibility:hidden}.fdi-data-group-dimension:hover .dimension-down-list-combo{visibility:visible}.target-capsule-background{background-color:#afdfda}.dimension-capsule-background{background-color:#afc6e8}.target-capsule-helper,.target-capsule-helper.bi-helper{background-color:rgba(175,223,218,.5);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#80afdfda,endColorstr=#80afdfda);border:1px solid #afdfda;box-shadow:1px 1px 2px 0 rgba(0,0,0,.10196078431372549)}.dimension-capsule-helper,.dimension-capsule-helper.bi-helper{background-color:rgba(175,198,232,.5);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#80afc6e8,endColorstr=#80afc6e8);border:1px solid rgba(69,99,161,.4);box-shadow:1px 1px 2px 0 rgba(0,0,0,.10196078431372549)}.bi-capsule-border{border-top-left-radius:6px;border-bottom-right-radius:6px}.field-helper-warning{border:1px solid #e65251;border-top-left-radius:6px;border-bottom-right-radius:6px}.bi-capsule-replace-border{box-sizing:border-box;border:1px solid rgba(35,46,64,.4)}.fdi-component-custom-group-number-auto .group-count-success{color:#13cd66}.fdi-component-custom-group-number-auto .group-count-failure{color:#e65251}.fdi-component-custom-group-number-item .gray-close-font:not(.bi-combo-popup){visibility:hidden}.fdi-component-custom-group-number-item:hover .gray-close-font{visibility:visible}.fdi-component-custom-group-number-item .error-tip{background:#ffecec;color:#e65251}.bi-theme-dark .bi-component-custom-group-number-item .error-tip{background:#3a2940}.fdi-components-rename-editor .shelter-editor-text{min-width:30px;max-width:125px}.fdi-component-custom-group-string-group-item .left-text-max-width{max-width:470px}.fdi-component-custom-group-string-group-item .left-text-proportion-width{max-width:274px}.fdi-component-custom-group-string-group-item .right-text-proportion-width{max-width:196px}.bi-component-custom-group-string-group-expander .delete-combo:not(.bi-combo-popup){visibility:hidden}.bi-component-custom-group-string-group-expander:hover .delete-combo{visibility:visible}.bi-component-custom-group-string-group-expander .readonly .delete-combo{visibility:hidden}.bi-component-custom-group-string-group-expander.bi-expander-popup{background-color:#f8f9fc}.bi-component-custom-group-string-group-expander .string-group-expander-node:active,.bi-component-custom-group-string-group-expander .string-group-expander-node:hover{background-color:#e5efff}.bi-custom-group-string .custom-group-editor{border-radius:2px}.bi-custom-group-string .custom-searcher{z-index:1} \ No newline at end of file diff --git a/designer-base/src/main/resources/com/fr/design/data/tabledata/datacenter/web/data-choose.main.js b/designer-base/src/main/resources/com/fr/design/data/tabledata/datacenter/web/data-choose.main.js index 811a1a3d67..02027992e6 100644 --- a/designer-base/src/main/resources/com/fr/design/data/tabledata/datacenter/web/data-choose.main.js +++ b/designer-base/src/main/resources/com/fr/design/data/tabledata/datacenter/web/data-choose.main.js @@ -1,5 +1,5 @@ -(function(mv){typeof define=="function"&&define.amd?define(mv):mv()})(function(){"use strict";var mv=document.createElement("style");mv.textContent=`:root{--fd-color-brand-1:#e6f8f5;--fd-color-brand-2:#b3eae0;--fd-color-brand-3:#99e3d6;--fd-color-brand-4:#80dccc;--fd-color-brand-5:#4dcdb8;--fd-color-brand-6:#00B899;--fd-color-brand-7:#00937a;--fd-color-brand-8:#006e5c;--fd-color-brand-9:#004a3d;--fd-color-brand-10:#00372e;--fd-color-error-1:#fdeeee;--fd-color-error-2:#f9cbcb;--fd-color-error-3:#f7b9b9;--fd-color-error-4:#f5a8a8;--fd-color-error-5:#f18585;--fd-color-error-6:#EB5050;--fd-color-error-7:#bc4040;--fd-color-error-8:#8d3030;--fd-color-error-9:#5e2020;--fd-color-error-10:#471818;--fd-color-warning-1:#fef6e6;--fd-color-warning-2:#fbe5b3;--fd-color-warning-3:#f9dc99;--fd-color-warning-4:#f8d480;--fd-color-warning-5:#f5c24d;--fd-color-warning-6:#F0A800;--fd-color-warning-7:#c08600;--fd-color-warning-8:#906500;--fd-color-warning-9:#604300;--fd-color-warning-10:#483200;--fd-color-success-1:#edf9f1;--fd-color-success-2:#c8edd4;--fd-color-success-3:#b5e7c5;--fd-color-success-4:#a3e1b7;--fd-color-success-5:#7ed49a;--fd-color-success-6:#46C26F;--fd-color-success-7:#389b59;--fd-color-success-8:#2a7443;--fd-color-success-9:#1c4e2c;--fd-color-success-10:#153a21;--fd-color-info-1:#eaf2fd;--fd-color-info-2:#c1d8f9;--fd-color-info-3:#accbf7;--fd-color-info-4:#97bef5;--fd-color-info-5:#6da4f1;--fd-color-info-6:#2F7DEB;--fd-color-info-7:#2664bc;--fd-color-info-8:#1c4b8d;--fd-color-info-9:#13325e;--fd-color-info-10:#0e2647;--fd-color-grey-1:#FFFFFF;--fd-color-grey-2:#F5F6F8;--fd-color-grey-3:#F0F1F4;--fd-color-grey-4:#EDEFF3;--fd-color-grey-5:#E6E8ED;--fd-color-grey-6:#EBECEE;--fd-color-grey-7:#E1E3E5;--fd-color-grey-8:#D7D9DC;--fd-color-grey-9:#B5B8BE;--fd-color-grey-10:#838892;--fd-color-grey-11:#525967;--fd-color-grey-12:#141E31;--fd-color-grey-13:#000000;--fd-color-transparent-1:#000000;--fd-color-transparent-2:rgba(0, 10, 31, .92);--fd-color-transparent-3:rgba(1, 11, 31, .68);--fd-color-transparent-4:rgba(2, 12, 33, .49);--fd-color-transparent-5:rgba(0, 10, 31, .29);--fd-color-transparent-6:rgba(5, 18, 36, .16);--fd-color-transparent-7:rgba(5, 22, 38, .12);--fd-color-transparent-8:rgba(5, 17, 42, .08);--fd-color-transparent-9:rgba(5, 25, 75, .1);--fd-color-transparent-10:rgba(30, 55, 105, .08);--fd-color-transparent-11:rgba(5, 22, 72, .06);--fd-color-transparent-12:rgba(5, 30, 80, .04);--fd-color-transparent-13:transparent;--fd-border-radius-xs:2px;--fd-border-radius-sm:3px;--fd-border-radius:4px;--fd-border-radius-lg:6px;--fd-border-radius-xl:8px;--fd-gap-xs:2px;--fd-gap-sm:4px;--fd-gap:8px;--fd-gap-lg:10px;--fd-gap-xl:12px;--fd-gap-2xl:16px;--fd-gap-3xl:20px;--fd-gap-4xl:24px;--fd-gap-5xl:24px;--fd-padding-layout-3xs:2px;--fd-padding-layout-2xs:4px;--fd-padding-layout-xs:8px;--fd-padding-layout-sm:12px;--fd-padding-layout:16px;--fd-padding-layout-lg:20px;--fd-padding-layout-xl:24px;--fd-padding-layout-2xl:32px;--fd-padding-layout-3xl:48px;--fd-padding-zero:0;--fd-padding-2xs:2px;--fd-padding-xs:4px;--fd-padding-sm:6px;--fd-padding:8px;--fd-padding-lg:12px;--fd-padding-xl:16px;--fd-padding-2xl:20px;--fd-padding-3xl:24px;--fd-padding-4xl:32px;--fd-control-height-xs:16px;--fd-control-height-sm:24px;--fd-control-height:32px;--fd-control-height-lg:40px;--fd-font-size-sm:12px;--fd-font-size:14px;--fd-font-size-lg:16px;--fd-font-size-xl:18px;--fd-font-size-2xl:20px;--fd-font-size-heading-1:38px;--fd-font-size-heading-2:30px;--fd-font-size-heading-3:24px;--fd-font-size-heading-4:20px;--fd-font-size-heading-5:16px;--fd-control-item-font-weight-active:400;--fd-icon-size-2sm:12px;--fd-icon-size-sm:14px;--fd-icon-size:16px;--fd-icon-size-lg:18px;--fd-line-height-sm:20px;--fd-line-height:22px;--fd-line-height-lg:24px;--fd-line-height-xl:26px;--fd-line-height-2xl:28px;--fd-line-height-heading-1:46px;--fd-line-height-heading-2:38px;--fd-line-height-heading-3:32px;--fd-line-height-heading-4:28px;--fd-line-height-heading-5:24px;--fd-line-width:1px;--fd-line-width-bold:2px;--fd-line-width-focus:4px;--fd-control-outline-width:2px;--fd-color-primary:var(--fd-color-brand-6);--fd-color-primary-active:var(--fd-color-brand-7);--fd-color-primary-hover:var(--fd-color-brand-5);--fd-color-primary-bg:var(--fd-color-brand-1);--fd-color-primary-bg-active:var(--fd-color-brand-3);--fd-color-primary-bg-hover:var(--fd-color-brand-2);--fd-color-primary-border:var(--fd-color-brand-3);--fd-color-primary-border-hover:var(--fd-color-brand-4);--fd-color-primary-text:var(--fd-color-brand-6);--fd-color-primary-text-active:var(--fd-color-brand-7);--fd-color-primary-text-hover:var(--fd-color-brand-5);--fd-color-link:var(--fd-color-brand-6);--fd-color-link-active:var(--fd-color-brand-7);--fd-color-link-hover:var(--fd-color-brand-4);--fd-color-control-outline:rgba(0, 184, 153, .1);--fd-color-info:var(--fd-color-info-6);--fd-color-info-active:var(--fd-color-info-7);--fd-color-info-hover:var(--fd-color-info-4);--fd-color-info-bg:var(--fd-color-info-1);--fd-color-info-bg-hover:var(--fd-color-info-2);--fd-color-info-border:var(--fd-color-info-3);--fd-color-info-border-hover:var(--fd-color-info-4);--fd-color-info-text:var(--fd-color-info-6);--fd-color-info-text-active:var(--fd-color-info-7);--fd-color-info-text-hover:var(--fd-color-info-5);--fd-color-success:var(--fd-color-success-6);--fd-color-success-active:var(--fd-color-success-7);--fd-color-success-hover:var(--fd-color-success-4);--fd-color-success-bg:var(--fd-color-success-1);--fd-color-success-bg-hover:var(--fd-color-success-2);--fd-color-success-border:var(--fd-color-success-3);--fd-color-success-border-hover:var(--fd-color-success-4);--fd-color-success-text:var(--fd-color-success-6);--fd-color-success-text-active:var(--fd-color-success-7);--fd-color-success-text-hover:var(--fd-color-success-5);--fd-color-warning:var(--fd-color-warning-6);--fd-color-warning-active:var(--fd-color-warning-7);--fd-color-warning-hover:var(--fd-color-warning-4);--fd-color-warning-bg:var(--fd-color-warning-1);--fd-color-warning-bg-hover:var(--fd-color-warning-2);--fd-color-warning-border:var(--fd-color-warning-3);--fd-color-warning-border-hover:var(--fd-color-warning-4);--fd-color-warning-text:var(--fd-color-warning-6);--fd-color-warning-text-active:var(--fd-color-warning-7);--fd-color-warning-text-hover:var(--fd-color-warning-5);--fd-color-warning-outline:rgba(240, 168, 0, .1);--fd-color-error:var(--fd-color-error-6);--fd-color-error-active:var(--fd-color-error-7);--fd-color-error-hover:var(--fd-color-error-5);--fd-color-error-bg:var(--fd-color-error-1);--fd-color-error-bg-hover:var(--fd-color-error-2);--fd-color-error-bg-active:var(--fd-color-error-3);--fd-color-error-border:var(--fd-color-error-3);--fd-color-error-border-hover:var(--fd-color-error-4);--fd-color-error-text:var(--fd-color-error-6);--fd-color-error-text-active:var(--fd-color-error-7);--fd-color-error-text-hover:var(--fd-color-error-5);--fd-color-error-outline:rgba(235, 80, 80, .06);--fd-color-white:#FFFFFF;--fd-color-black:#000000;--fd-color-transparent:var(--fd-color-transparent-13);--fd-color-text:var(--fd-color-transparent-2);--fd-color-text-secondary:var(--fd-color-transparent-3);--fd-color-text-tertiary:var(--fd-color-transparent-4);--fd-color-text-quaternary:var(--fd-color-transparent-5);--fd-color-text-placeholder:var(--fd-color-text-quaternary);--fd-color-text-description:var(--fd-color-text-tertiary);--fd-color-text-disabled:var(--fd-color-text-quaternary);--fd-color-text-data-disabled:var(--fd-color-text-disabled);--fd-color-text-heading:var(--fd-color-text);--fd-color-text-light-solid:#FFFFFF;--fd-color-text-label:var(--fd-color-text-secondary);--fd-color-text-active:var(--fd-color-fill);--fd-color-fill:var(--fd-color-transparent-7);--fd-color-fill-secondary:var(--fd-color-transparent-9);--fd-color-fill-tertiary:var(--fd-color-transparent-11);--fd-color-fill-quaternary:var(--fd-color-transparent-12);--fd-color-bg-container:var(--fd-color-white);--fd-color-bg-container-disabled:var(--fd-color-fill-quaternary);--fd-color-bg-elevater:#FFFFFF;--fd-color-bg-spotilight:var(--fd-color-transparent-3);--fd-color-bg-mask:var(--fd-color-transparent-5);--fd-control-item-bg-hover:var(--fd-color-fill-tertiary);--fd-control-item-bg-active:var(--fd-color-primary-bg);--fd-control-item-bg-active-hover:var(--fd-color-primary-bg-hover);--fd-control-item-bg-active-disabled:var(--fd-color-fill);--fd-color-bg-text-hover:var(--fd-color-fill-secondary);--fd-color-bg-text-active:var(--fd-color-fill);--fd-color-fill-alter:var(--fd-color-fill-quaternary);--fd-color-fill-content:var(--fd-color-fill-secondary);--fd-color-icon:var(--fd-color-text-tertiary);--fd-color-icon-hover:var(--fd-color-text-secondary);--fd-color-icon-active:var(--fd-color-text);--fd-color-icon-normal:var(--fd-color-text-secondary);--fd-color-border:var(--fd-color-grey-5);--fd-color-border-secondary:var(--fd-color-grey-4);--fd-color-split:var(--fd-color-border-secondary);--fd-box-shadow:0 0 0 0 #000000,0 6px 30px 5px rgba(0, 0, 0, .05),0 16px 24px 2px rgba(0, 0, 0, .04),0 0 0 0 rgb(0, 0, 0);--fd-box-shadow-secondary:0 0 0 0 #000000,0 3px 14px 2px rgba(0, 0, 0, .05),0 6px 10px 1px rgba(0, 0, 0, .06),0 0 0 0 rgb(0, 0, 0);--fd-box-shadow-tertiary:0 0 0 0 #000000,0 2px 10px 0 rgba(0, 0, 0, .04),0 6px 10px 0 rgba(0, 0, 0, .06),0 0 0 0 rgb(0, 0, 0)}.fdi-list .x-list{border:none;border-radius:0}.fdi-global-adaptor .x-form>.x-form-item .form-item-label{font-weight:600}.fdi-global-adaptor .fdi-icon-extensible-input-popover .x-popover-wrapper{box-shadow:none}.fdi-global-adaptor .x-msg-toast-container{z-index:2000000!important}.fdi-global-adaptor .fdi-graph-node-collapse.x-collapse .x-collapse-item .x-collapse-header{padding-left:6px}.fdi-global-adaptor .fdi-graph-node-collapse.x-collapse .x-collapse-item .x-collapse-header .x-collapse-expand-icon{margin-right:2px}.fdi-global-adaptor .disable .fdi-icon{color:#091e4078!important}.fdi-global-adaptor .fdi-draggable-table.x-table tr.fdi-draggable-table-row td:first-child{height:0px;padding-top:0;padding-bottom:0}.fdi-global-adaptor .fdi-draggable-table.x-table tr.fdi-draggable-table-row td:first-child .fixed-width-cell-content{height:100%}.fdi-global-adaptor .fdi-component-list-item.selected td{background:transparent!important}.fdi-global-adaptor .fdi-multi-select-tag-box.x-select{width:100%}.fdi-global-adaptor .fdi-multi-select-tag-box.x-select .x-select-selector{padding-left:0;padding-right:26px}.fdi-global-adaptor .fdi-multi-select-tag-box.x-select .x-select-selector .x-select-selection-overflow{display:flex;overflow:auto;padding:2px;max-height:78px;gap:4px}.fdi-global-adaptor .x-skeleton-paragraph{padding:0}.fdi-global-adaptor.fdi-select-dropdown .x-search-input .search-prefix{margin-left:8px;margin-right:0}.fdi-global-adaptor.fdi-select-dropdown .x-search-input .input-wrapper .input-content input{padding-left:4px}.pane-expand-collapse-btn.collapse{visibility:visible}.fdi-tab{display:flex;height:100%;width:100%;flex-direction:column;width:0px;flex:1 1 0%}.fdi-tab.x-tab.horizontal-tab .tab-header{padding-left:4px;padding-right:4px}.fdi-tab.x-tab.size-large>.tab-header .tab-header-wrapper .tab-header-item{margin-left:4px;margin-right:4px}.fdi-tab.x-tab .tab-header .tab-header-wrapper .tab-header-item{font-weight:600;color:#091e40a8}.fdi-editable-tree-node{display:flex;width:100%;align-items:center;justify-content:space-between}.fdi-editable-tree-node-title{flex:1;width:0;font-size:12px;line-height:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fdi-check-card{width:166px;height:158px;border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(230 233 239 / var(--tw-border-opacity));display:flex;cursor:pointer;flex-direction:column;border-radius:6px;padding:8px}.fdi-check-card:hover{--tw-shadow: 0px 4px 12px 0px rgba(9, 30, 64, .08);--tw-shadow-colored: 0px 4px 12px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.fdi-check-card-selected{border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(135 176 247 / var(--tw-border-opacity))}.fdi-check-card-selected:hover{--tw-border-opacity: 1;border-color:rgb(135 176 247 / var(--tw-border-opacity))}.fdi-check-card-head{display:flex;width:100%;align-items:center;gap:8px}.fdi-check-card-head-title{font-size:12px;line-height:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#091e40e6}.fdi-check-card-without-title{width:166px;height:158px;border-width:1px;border-style:solid;border-color:transparent;position:relative;display:flex;cursor:pointer;flex-direction:column;border-radius:8px;padding:12px}.fdi-check-card-without-title:hover{border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(230 233 239 / var(--tw-border-opacity));--tw-shadow: 0px 4px 12px 0px rgba(9, 30, 64, .08);--tw-shadow-colored: 0px 4px 12px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.fdi-check-card-without-title-selected{border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(135 176 247 / var(--tw-border-opacity))}.fdi-check-card-without-title-selected:hover{--tw-border-opacity: 1;border-color:rgb(135 176 247 / var(--tw-border-opacity))}.fdi-check-card-without-title-checkbox{position:absolute;top:12px;left:12px}.fdi-check-card-view{display:flex;height:100%;width:100%;flex-direction:column;overflow:auto;padding-bottom:12px}.fdi-check-card-view-head{display:flex;width:100%;align-items:center;gap:8px;padding:8px 20px}.fdi-check-card-view-deal-bar{display:flex;width:100%;align-items:center;justify-content:space-between;gap:8px;border-radius:6px;--tw-bg-opacity: 1;background-color:rgb(229 239 255 / var(--tw-bg-opacity));padding:8px 8px 8px 12px}.fdi-check-card-view-content{display:flex;flex-wrap:wrap;gap:16px;overflow:auto;padding-left:20px;padding-right:20px;padding-bottom:12px}.fdi-check-card-view-card:hover .fdi-check-card-group-card-button{visibility:visible}.fdi-check-card-view-card-container{display:flex;height:100%;width:100%;flex-direction:column;margin-top:16px;align-items:center}.fdi-check-card-view-card-img{height:70px;display:flex;width:100%;align-items:center;justify-content:center}.fdi-check-card-view-card-title{font-size:12px;line-height:20px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;word-break:break-all;text-align:center;color:#091e40e6}.fdi-indicator-card{position:relative}.fdi-indicator-card-background{border-radius:6px}.fdi-indicator-card-container{padding:14px 24px;position:absolute;top:0;display:flex;height:100%;width:100%;align-items:center;justify-content:space-between;gap:8px}.fdi-indicator-card-label{font-size:12px;line-height:20px}.fdi-indicator-card-label>span{font-weight:400}.fdi-exhibit-list-item{font-size:14px;line-height:22px;display:flex;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 12px}.fdi-exhibit-list-item-icon{margin:8px}.fdi-exhibit-list-item-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fdi-directory-tree-select .x-list-tree .tree-node .node-content-wrapper .node-content .node-title{width:0}.fdi-data-detail-pane{width:280px;padding-top:39px;position:relative;height:100%}.fdi-data-detail-pane-container{border-width:0px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity));display:flex;height:100%;width:100%;flex-direction:column;gap:16px;border-left-width:1px;border-top-width:1px}.fdi-import-list{width:280px;border-width:0px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity));border-right-width:1px;display:flex;height:100%;flex-direction:column;justify-content:space-between;padding:20px}.fdi-import-list-container{gap:4px;height:0px;flex:1 1 0%;display:flex;flex-direction:column;overflow:auto}.fdi-import-list-item{height:28px;min-height:28px;cursor:pointer;border-radius:.25rem}.fdi-import-list-item:hover{--tw-bg-opacity: 1;background-color:rgb(238 241 246 / var(--tw-bg-opacity))}.fdi-import-list-item:active{--tw-bg-opacity: 1;background-color:rgb(230 233 239 / var(--tw-bg-opacity))}.fdi-import-list-item.selected{--tw-bg-opacity: 1;background-color:rgb(229 239 255 / var(--tw-bg-opacity))}.fdi-import-list-item{display:flex;width:100%;align-items:center;justify-content:space-between;padding-left:8px;padding-right:8px}.fdi-import-list-item:hover .fdi-import-list-action-button{display:flex}.fdi-import-list-item.error{--tw-text-opacity: 1;color:rgb(230 82 81 / var(--tw-text-opacity))}.fdi-import-list-action-button{display:none;align-items:center}.x-ui-hidden{display:none!important}@keyframes x-fade-down{0%{opacity:0;transform:translate3d(0,-15%,0)}to{opacity:1;transform:translateZ(0)}}@keyframes x-fade-down-large{0%{opacity:0;transform:translate3d(0,-100%,0)}to{opacity:1;transform:translateZ(0)}}@keyframes x-fade-in-left{0%{opacity:0;transform:translate3d(-40%,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes x-fade-in-right{0%{opacity:0;transform:translate3d(40%,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes x-rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes x-slide-down{0%{opacity:0;transform:scaleY(.8)}to{opacity:1;transform:scaleY(1)}}@keyframes x-zoom-in{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes x-zoom-in-big{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes x-zoom-by-size{0%{margin:0;opacity:0;padding:0;transform:scale(.5);width:0}to{opacity:1;transform:scale(1)}}@keyframes x-move-left{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-left-small{0%{opacity:0;transform:translate(-3px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-left-small-light{0%{opacity:0;transform:translate(-3px)}to{opacity:.7;transform:translate(0)}}@keyframes x-move-right{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-right-small{0%{opacity:0;transform:translate(3px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-right-small-light{0%{opacity:0;transform:translate(3px)}to{opacity:.7;transform:translate(0)}}@keyframes x-move-bottom{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-bottom-small{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-bottom-small-light{0%{opacity:0;transform:translateY(3px)}to{opacity:.7;transform:translate(0)}}@keyframes x-move-top{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-top-small{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-top-small-light{0%{opacity:0;transform:translateY(-3px)}to{opacity:.7;transform:translate(0)}}@keyframes x-spin-icon-load{0%{stroke-dasharray:105;stroke-dashoffset:105}to{stroke-dasharray:105;stroke-dashoffset:315}}@keyframes x-spin-skeleton-load{0%{background-position:100% 0}to{background-position:0 0}}.x-button-css-var{--fd-button-margin-between:10px;--fd-button-height-text-lg:28px;--fd-button-height-text:24px;--fd-button-height-text-sm:20px;--fd-button-padding-text-xl:6px;--fd-button-padding-text:4px;--fd-button-text-hover-background:var(--fd-color-primary-bg);--fd-button-text-active-background:var(--fd-color-primary-bg);--fd-button-text-danger-hover-background:var(--fd-color-error-bg);--fd-button-text-danger-active-background:var(--fd-color-error-bg)}.x-check-css-var{--fd-check-default-padding:4px 0}.x-collapse-css-var{--fd-collapse-panel-padding:var(--fd-padding-xl);--fd-collapse-panel-padding-sm:var(--fd-padding-lg);--fd-collapse-panel-padding-lg:var(--fd-padding-3xl) var(--fd-padding-xl);--fd-collapse-panel-padding-no-border:var(--fd-padding-xs) var(--fd-padding-xl) var(--fd-padding-xl) 40px;--fd-collapse-panel-padding-no-border-sm:var(--fd-padding-xs) var(--fd-padding-lg) var(--fd-padding-lg) 36px;--fd-collapse-panel-padding-no-border-lg:var(--fd-padding-xs) var(--fd-padding-3xl) var(--fd-padding-3xl) 48px}.x-input-css-var{--fd-input-active-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline);--fd-input-error-active-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-error-outline);--fd-input-waring-active-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-warning-outline)}.x-input-number-css-var{--fd-input-number-active-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline)}.x-navigation-css-var{--fd-navigation-collapsed-width:calc(var(--fd-control-height-lg)*2)}.x-radio-css-var,.x-radio-group-css-var{--fd-radio-default-padding:4px 0}.x-tooltip-css-var{--fd-tooltip-padding-layout-xs:var(--fd-padding-layout-xs);--fd-tooltip-padding-layout-2xs:var(--fd-padding-layout-2xs)}.x-spin-css-var{--fd-spin-height:30px;--fd-spin-height-sm:16px;--fd-spin-height-lg:46px}.x-button{background:var(--fd-color-bg-container);border:1px solid;border-radius:var(--fd-border-radius);cursor:pointer;display:inline-block;font-family:-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:var(--fd-font-size);font-weight:400;outline:none;overflow:hidden;position:relative;text-align:center;text-overflow:ellipsis;transition:box-shadow .3s ease,background .3s ease,border-color .3s ease,color .3s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.x-button+.x-button{margin-left:var(--fd-button-margin-between)}.x-button .x-button-icon-wrapper{align-items:center;display:inline-flex;margin-right:var(--fd-gap-sm)}.x-button .x-button-icon-wrapper .x-button-icon{line-height:1}.x-button .x-button-icon-wrapper .x-button-icon>*{vertical-align:bottom}.x-button .x-button-icon-wrapper:only-child{margin-right:0}.x-button.size-small{font-size:var(--fd-font-size-sm);height:var(--fd-control-height-sm);line-height:calc(var(--fd-control-height-sm) - 2px);padding:0 var(--fd-padding)}.x-button.size-small .x-button-icon{font-size:var(--fd-icon-size)}.x-button.size-middle,.x-button.size-normal{height:var(--fd-control-height);line-height:calc(var(--fd-control-height) - 2px);padding:0 var(--fd-padding-xl)}.x-button.size-middle .x-button-icon,.x-button.size-normal .x-button-icon{font-size:var(--fd-icon-size)}.x-button.size-large{font-size:var(--fd-font-size-lg);height:var(--fd-control-height-lg);line-height:calc(var(--fd-control-height-lg) - 2px);padding:0 var(--fd-padding-xl)}.x-button.size-large .x-button-icon{font-size:var(--fd-icon-size-lg)}.x-button.shape-round{border-radius:9999px}.x-button.shape-round.size-small{padding:0 var(--fd-padding-lg)}.x-button.shape-round.size-middle,.x-button.shape-round.size-normal{padding:0 var(--fd-padding-xl)}.x-button.shape-round.size-large{padding:0 var(--fd-padding-2xl)}.x-button.compact-middle,.x-button.compact-normal{height:var(--fd-button-height-text);line-height:calc(var(--fd-button-height-text) - 2px);padding:0 var(--fd-button-padding-text-xl)}.x-button.compact-small{height:var(--fd-button-height-text-sm);line-height:calc(var(--fd-button-height-text-sm) - 2px);padding:0 var(--fd-button-padding-text)}.x-button.compact-large{height:var(--fd-button-height-text-lg);line-height:calc(var(--fd-button-height-text-lg) - 2px);padding:0 var(--fd-button-padding-text-xl)}.x-button.is-only-icon{padding:var(--fd-padding-zero)!important;width:var(--fd-control-height)}.x-button.is-only-icon.size-small{width:var(--fd-control-height-sm)}.x-button.is-only-icon.size-large{width:var(--fd-control-height-lg)}.x-button.block{width:100%}.x-button.loading{cursor:default;opacity:.4}.x-button.disable{cursor:not-allowed}.x-button:focus-visible{outline:4px solid var(--fd-color-primary-border);outline-offset:1px;transition:outline-offset 0s,outline 0s}.x-button:active{transition:unset}.x-button.style-primary{background:var(--fd-color-primary);border-color:var(--fd-color-primary);color:var(--fd-color-text-light-solid)}.x-button.style-primary:hover{background:var(--fd-color-primary-hover);border-color:var(--fd-color-primary-hover);color:var(--fd-color-text-light-solid)}.x-button.style-primary.is-active,.x-button.style-primary:active{background:var(--fd-color-primary-text-active);border-color:var(--fd-color-primary-text-active);color:var(--fd-color-text-light-solid)}.x-button.style-primary.danger{background:var(--fd-color-error);border-color:var(--fd-color-error);color:var(--fd-color-text-light-solid)}.x-button.style-primary.danger:hover{background:var(--fd-color-error-hover);border-color:var(--fd-color-error-hover);color:var(--fd-color-text-light-solid)}.x-button.style-primary.danger.is-active,.x-button.style-primary.danger:active{background:var(--fd-color-error-active);border-color:var(--fd-color-error-active);color:var(--fd-color-text-light-solid)}.x-button.style-primary.loading{background:var(--fd-color-primary)!important;border-color:var(--fd-color-primary)!important;color:var(--fd-color-text-light-solid)!important}.x-button.style-primary.loading .loader-icon:before{border-color:var(--fd-color-text-light-solid)!important}.x-button.style-primary.loading .loader-icon:after{border-top-color:var(--fd-color-text-light-solid)!important}.x-button.style-primary.loading.danger:not(.disable){background:var(--fd-color-error)!important;border-color:var(--fd-color-error)!important;color:var(--fd-color-text-light-solid)!important}.x-button.style-primary.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-text-light-solid)!important}.x-button.style-primary.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-text-light-solid)!important}.x-button.style-primary.disable{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-primary.disable .loader-icon:before{border-color:var(--fd-color-text-disabled)!important}.x-button.style-primary.disable .loader-icon:after{border-top-color:var(--fd-color-text-disabled)!important}.x-button.style-secondary{background:var(--fd-color-primary-bg);border-color:var(--fd-color-primary-bg);color:var(--fd-color-primary)}.x-button.style-secondary:hover{background:var(--fd-color-primary-bg-hover);border-color:var(--fd-color-primary-bg-hover);color:var(--fd-color-primary)}.x-button.style-secondary.is-active,.x-button.style-secondary:active{background:var(--fd-color-primary-bg-active);border-color:var(--fd-color-primary-bg-active);color:var(--fd-color-primary)}.x-button.style-secondary.danger{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-bg);color:var(--fd-color-error)}.x-button.style-secondary.danger:hover{background:var(--fd-color-error-bg-hover);border-color:var(--fd-color-error-bg-hover);color:var(--fd-color-error)}.x-button.style-secondary.danger.is-active,.x-button.style-secondary.danger:active{background:var(--fd-color-error-bg-active);border-color:var(--fd-color-error-bg-active);color:var(--fd-color-error)}.x-button.style-secondary.loading{background:var(--fd-color-primary-bg)!important;border-color:var(--fd-color-primary-bg)!important;color:var(--fd-color-primary)!important}.x-button.style-secondary.loading .loader-icon:before{border-color:var(--fd-color-primary)!important}.x-button.style-secondary.loading .loader-icon:after{border-top-color:var(--fd-color-primary)!important}.x-button.style-secondary.loading.danger:not(.disable){background:var(--fd-color-error-bg)!important;border-color:var(--fd-color-error-bg)!important;color:var(--fd-color-error)!important}.x-button.style-secondary.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-error)!important}.x-button.style-secondary.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-error)!important}.x-button.style-secondary.disable{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-secondary.disable .loader-icon:before{border-color:var(--fd-color-text-disabled)!important}.x-button.style-secondary.disable .loader-icon:after{border-top-color:var(--fd-color-text-disabled)!important}.x-button.style-normal{background:var(--fd-color-bg-container);border-color:var(--fd-color-primary);color:var(--fd-color-primary)}.x-button.style-normal:hover{background:var(--fd-color-primary-bg);border-color:var(--fd-color-primary-hover);color:var(--fd-color-primary-hover)}.x-button.style-normal.is-active,.x-button.style-normal:active{background:var(--fd-color-primary-bg);border-color:var(--fd-color-primary-active);color:var(--fd-color-primary-active)}.x-button.style-normal.danger{background:var(--fd-color-bg-container);border-color:var(--fd-color-error);color:var(--fd-color-error)}.x-button.style-normal.danger:hover{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-border-hover);color:var(--fd-color-error-hover)}.x-button.style-normal.danger.is-active,.x-button.style-normal.danger:active{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-active);color:var(--fd-color-error-active)}.x-button.style-normal.loading{background:var(--fd-color-bg-container)!important;color:var(--fd-color-primary)!important}.x-button.style-normal.loading,.x-button.style-normal.loading .loader-icon:before{border-color:var(--fd-color-primary)!important}.x-button.style-normal.loading .loader-icon:after{border-top-color:var(--fd-color-primary)!important}.x-button.style-normal.loading.danger:not(.disable){background:var(--fd-color-bg-container)!important;border-color:var(--fd-color-error)!important;color:var(--fd-color-error)!important}.x-button.style-normal.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-error)!important}.x-button.style-normal.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-error)!important}.x-button.style-normal.disable{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-normal.disable .loader-icon:before{border-color:var(--fd-color-text-disabled)!important}.x-button.style-normal.disable .loader-icon:after{border-top-color:var(--fd-color-text-disabled)!important}.x-button.style-negative{background:var(--fd-color-bg-container);border-color:var(--fd-color-border);color:var(--fd-color-text)}.x-button.style-negative:not(:hover,:active,.is-active,.danger,.loading,.disable) .x-button-icon{color:var(--fd-color-icon-normal);transition:color .3s ease}.x-button.style-negative:hover{background:var(--fd-color-bg-container);border-color:var(--fd-color-primary-hover);color:var(--fd-color-primary-hover)}.x-button.style-negative.is-active,.x-button.style-negative:active{background:var(--fd-color-bg-container);border-color:var(--fd-color-primary-active);color:var(--fd-color-primary-active)}.x-button.style-negative.danger{background:var(--fd-color-bg-container);border-color:var(--fd-color-error);color:var(--fd-color-error)}.x-button.style-negative.danger:hover{background:var(--fd-color-bg-container);border-color:var(--fd-color-error-border-hover);color:var(--fd-color-error-hover)}.x-button.style-negative.danger.is-active,.x-button.style-negative.danger:active{background:var(--fd-color-bg-container);border-color:var(--fd-color-error-active);color:var(--fd-color-error-active)}.x-button.style-negative.loading{background:var(--fd-color-bg-container)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text)!important}.x-button.style-negative.loading .loader-icon:before{border-color:var(--fd-color-text)!important}.x-button.style-negative.loading .loader-icon:after{border-top-color:var(--fd-color-text)!important}.x-button.style-negative.loading.danger:not(.disable){background:var(--fd-color-bg-container)!important;border-color:var(--fd-color-error)!important;color:var(--fd-color-error)!important}.x-button.style-negative.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-error)!important}.x-button.style-negative.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-error)!important}.x-button.style-negative.disable{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-negative.disable .loader-icon:before{border-color:var(--fd-color-text-disabled)!important}.x-button.style-negative.disable .loader-icon:after{border-top-color:var(--fd-color-text-disabled)!important}.x-button.style-link{color:var(--fd-color-link);outline:none;padding:0 var(--fd-padding-zero)!important;text-decoration:underline}.x-button.style-link,.x-button.style-link:hover{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent)}.x-button.style-link:hover{color:var(--fd-color-link-hover)}.x-button.style-link.is-active,.x-button.style-link:active{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent);color:var(--fd-color-link-active)}.x-button.style-link.danger{color:var(--fd-color-error)}.x-button.style-link.danger,.x-button.style-link.danger:hover{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent)}.x-button.style-link.danger:hover{color:var(--fd-color-error-hover)}.x-button.style-link.danger.is-active,.x-button.style-link.danger:active{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent);color:var(--fd-color-error-active)}.x-button.style-link.loading{background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-link)!important}.x-button.style-link.loading .loader-icon:before{border-color:var(--fd-color-link)!important}.x-button.style-link.loading .loader-icon:after{border-top-color:var(--fd-color-link)!important}.x-button.style-link.loading.danger:not(.disable){background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-error)!important}.x-button.style-link.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-error)!important}.x-button.style-link.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-error)!important}.x-button.style-link.disable{background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-link.disable .loader-icon:before{border-color:var(--fd-color-text-disabled)!important}.x-button.style-link.disable .loader-icon:after{border-top-color:var(--fd-color-text-disabled)!important}.x-button.style-text{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent);color:var(--fd-color-primary)}.x-button.style-text:hover{background:var(--fd-button-text-hover-background);border-color:var(--fd-color-transparent);color:var(--fd-color-primary-hover)}.x-button.style-text.is-active,.x-button.style-text:active{background:var(--fd-button-text-active-background);border-color:var(--fd-color-transparent);color:var(--fd-color-primary-active)}.x-button.style-text.danger{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent);color:var(--fd-color-error)}.x-button.style-text.danger:hover{background:var(--fd-button-text-danger-hover-background);border-color:var(--fd-color-transparent);color:var(--fd-color-error-hover)}.x-button.style-text.danger.is-active,.x-button.style-text.danger:active{background:var(--fd-button-text-danger-active-background);border-color:var(--fd-color-transparent);color:var(--fd-color-error-active)}.x-button.style-text.loading{background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-primary)!important}.x-button.style-text.loading .loader-icon:before{border-color:var(--fd-color-primary)!important}.x-button.style-text.loading .loader-icon:after{border-top-color:var(--fd-color-primary)!important}.x-button.style-text.loading.danger:not(.disable){background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-error)!important}.x-button.style-text.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-error)!important}.x-button.style-text.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-error)!important}.x-button.style-text.disable{background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-text.disable .loader-icon:before{border-color:var(--fd-color-text-disabled)!important}.x-button.style-text.disable .loader-icon:after{border-top-color:var(--fd-color-text-disabled)!important}.x-button.style-text-normal{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent);color:var(--fd-color-text)}.x-button.style-text-normal:not(:hover,:active,.is-active,.danger,.loading,.disable) .x-button-icon{color:var(--fd-color-icon-normal);transition:color .3s ease}.x-button.style-text-normal:hover{background:var(--fd-color-bg-text-hover);border-color:var(--fd-color-transparent);color:var(--fd-color-text)}.x-button.style-text-normal.is-active,.x-button.style-text-normal:active{background:var(--fd-color-bg-text-active);border-color:var(--fd-color-transparent);color:var(--fd-color-text)}.x-button.style-text-normal.danger{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent);color:var(--fd-color-error)}.x-button.style-text-normal.danger:hover{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-bg);color:var(--fd-color-error-hover)}.x-button.style-text-normal.danger.is-active,.x-button.style-text-normal.danger:active{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-bg);color:var(--fd-color-error-active)}.x-button.style-text-normal.loading{background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-text)!important}.x-button.style-text-normal.loading .loader-icon:before{border-color:var(--fd-color-text)!important}.x-button.style-text-normal.loading .loader-icon:after{border-top-color:var(--fd-color-text)!important}.x-button.style-text-normal.loading.danger:not(.disable){background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-error)!important}.x-button.style-text-normal.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-error)!important}.x-button.style-text-normal.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-error)!important}.x-button.style-text-normal.disable{background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-text-normal.disable .loader-icon:before{border-color:var(--fd-color-text)!important}.x-button.style-text-normal.disable .loader-icon:after{border-top-color:var(--fd-color-text)!important}.x-button .loader-icon{background:transparent;display:inline-block;height:1em;position:relative;width:1em}.x-button .loader-icon:before{opacity:.2}.x-button .loader-icon:after,.x-button .loader-icon:before{border:2px solid transparent;border-radius:50%;content:"";inset:0;position:absolute}.x-button .loader-icon:after{animation:x-rotate 1s cubic-bezier(.43,.1,.54,.85) infinite}.x-button-group{display:inline-block}.x-button-group .x-button{margin:0!important;vertical-align:middle}.x-button-group .x-button.is-active,.x-button-group .x-button:active,.x-button-group .x-button:focus,.x-button-group .x-button:hover{z-index:2}.x-button-group .x-button.disable{z-index:auto}.x-button-group .x-button:not(:first-child).style-primary{border-left:1px solid var(--fd-color-text-light-solid)}.x-button-group .x-button:not(:first-child).style-secondary{border-left:1px solid var(--fd-color-primary-border)}.x-button-group .x-button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px!important}.x-button-group .x-button:not(:last-child).style-primary{border-right:1px solid var(--fd-color-text-light-solid)}.x-button-group .x-button:not(:last-child).style-secondary{border-right:1px solid var(--fd-color-primary-border)}.x-button-group .x-button+.x-button{border-bottom-left-radius:0;border-top-left-radius:0}.x-input{height:var(--fd-control-height);line-height:calc(var(--fd-control-height) - 2px);width:150px}.x-input .input-inner{font-size:var(--fd-font-size);line-height:var(--fd-line-height);padding:0 var(--fd-padding)}.x-input.large{height:var(--fd-control-height-lg);line-height:calc(var(--fd-control-height-lg) - 2px)}.x-input.large .input-inner{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg);padding:0 var(--fd-padding)}.x-input.small{height:var(--fd-control-height-sm);line-height:calc(var(--fd-control-height-sm) - 2px)}.x-input.small .input-inner{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);padding:0 var(--fd-padding-xs)}.x-input.has-after-addon,.x-input.has-before-addon{align-items:center;display:flex}.x-input.has-after-addon .x-after-addon>.x-svgicon,.x-input.has-after-addon .x-before-addon>.x-svgicon,.x-input.has-before-addon .x-after-addon>.x-svgicon,.x-input.has-before-addon .x-before-addon>.x-svgicon{border:1px solid var(--fd-color-border);border-bottom-left-radius:var(--fd-border-radius);border-top-left-radius:var(--fd-border-radius);color:var(--fd-color-icon-normal);height:var(--fd-control-height);padding:0 var(--fd-padding)}.x-input.has-after-addon .x-before-addon,.x-input.has-before-addon .x-before-addon{flex:none}.x-input.has-after-addon .x-before-addon>:first-child,.x-input.has-after-addon .x-before-addon>:first-child .x-combo-dropdown-label,.x-input.has-before-addon .x-before-addon>:first-child,.x-input.has-before-addon .x-before-addon>:first-child .x-combo-dropdown-label{border-bottom-right-radius:0;border-right:none;border-top-right-radius:0}.x-input.has-after-addon .x-inner-wrapper,.x-input.has-before-addon .x-inner-wrapper{flex:auto}.x-input.has-after-addon .x-after-addon,.x-input.has-before-addon .x-after-addon{flex:none}.x-input.has-after-addon .x-after-addon>:last-child,.x-input.has-after-addon .x-after-addon>:last-child .x-combo-dropdown-label,.x-input.has-before-addon .x-after-addon>:last-child,.x-input.has-before-addon .x-after-addon>:last-child .x-combo-dropdown-label{border-bottom-left-radius:0;border-left:none;border-top-left-radius:0}.x-input.has-before-addon .x-inner-wrapper{border-bottom-left-radius:0;border-top-left-radius:0}.x-input.has-after-addon .x-inner-wrapper{border-bottom-right-radius:0;border-top-right-radius:0}.x-input.allow-clear .x-inner-wrapper{align-items:center;display:flex}.x-input.allow-clear.has-suffix .x-inner-wrapper .input-inner{padding-right:60px}.x-textarea{height:80px;width:252px}.x-textarea.textarea-rows{height:auto}.x-textarea .textarea-inner{font-size:var(--fd-font-size);line-height:var(--fd-line-height);overflow:auto}.x-resize-textarea,.x-textarea .x-inner-wrapper .input-inner,.x-textarea .x-inner-wrapper .textarea-inner{padding:var(--fd-padding-xs) var(--fd-padding);vertical-align:top}.x-resize-textarea{background-color:var(--fd-color-bg-container);border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);color:var(--fd-color-text);font-family:-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:var(--fd-font-size);font-variant-numeric:tabular-nums;line-height:var(--fd-line-height);outline:none;resize:none;transition:border-color .2s;width:252px}.x-resize-textarea *,.x-resize-textarea :after,.x-resize-textarea :before{box-sizing:border-box}.x-resize-textarea::-moz-placeholder{color:var(--fd-color-text-placeholder)!important}.x-resize-textarea:-ms-input-placeholder{color:var(--fd-color-text-placeholder)!important}.x-resize-textarea::placeholder{color:var(--fd-color-text-placeholder)!important}.x-resize-textarea:hover{border-color:var(--fd-color-primary-hover)}.x-resize-textarea.block{width:100%}.x-resize-textarea.textarea-disable{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border)}.x-resize-textarea.textarea-disable .textarea-inner{color:var(--fd-color-text)}.x-resize-textarea.textarea-disable:hover{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border)}.x-resize-textarea.textarea-disable:hover .textarea-inner{color:var(--fd-color-text)}.x-resize-textarea.textarea-focus{border-color:var(--fd-color-primary)!important;box-shadow:var(--fd-input-active-shadow)}.x-resize-textarea.textarea-error,.x-resize-textarea.textarea-invalid{border-color:var(--fd-color-error)}.x-resize-textarea.textarea-normal{border-color:var(--fd-color-border)}.x-resize-textarea.textarea-warning{border-color:var(--fd-color-warning)}.x-resize-textarea.textarea-readonly{border-color:var(--fd-color-border)}.x-input *,.x-input :after,.x-input :before,.x-textarea *,.x-textarea :after,.x-textarea :before{box-sizing:border-box}.x-input input,.x-input textarea,.x-textarea input,.x-textarea textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variant-numeric:tabular-nums;margin:0;outline:none}.x-input input::-moz-placeholder,.x-input textarea::-moz-placeholder,.x-textarea input::-moz-placeholder,.x-textarea textarea::-moz-placeholder{opacity:1}.x-input input:-ms-input-placeholder,.x-input textarea:-ms-input-placeholder,.x-textarea input:-ms-input-placeholder,.x-textarea textarea:-ms-input-placeholder{opacity:1}.x-input input::placeholder,.x-input textarea::placeholder,.x-textarea input::placeholder,.x-textarea textarea::placeholder{opacity:1}.x-input input::-ms-clear,.x-input input::-ms-reveal,.x-textarea input::-ms-clear,.x-textarea input::-ms-reveal{display:none}.x-input input[type=number],.x-textarea input[type=number]{-moz-appearance:textfield}.x-input input[type=number]::-webkit-inner-spin-button,.x-input input[type=number]::-webkit-outer-spin-button,.x-textarea input[type=number]::-webkit-inner-spin-button,.x-textarea input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}.x-input.block,.x-textarea.block{width:100%}.x-input .x-inner-wrapper,.x-textarea .x-inner-wrapper{background-color:var(--fd-color-bg-container);border-radius:var(--fd-border-radius);height:100%;overflow:hidden;position:relative}.x-input .x-inner-wrapper:not(.wrapper-borderless),.x-textarea .x-inner-wrapper:not(.wrapper-borderless){border:1px solid var(--fd-color-border);transition:border-color .2s}.x-input .x-inner-wrapper:not(.wrapper-borderless):hover,.x-textarea .x-inner-wrapper:not(.wrapper-borderless):hover{border-color:var(--fd-color-primary-hover)}.x-input .x-inner-wrapper .clear-icon,.x-textarea .x-inner-wrapper .clear-icon{color:var(--fd-color-icon);font-size:16px;position:absolute;right:10px}.x-input .x-inner-wrapper .clear-icon:not(:last-child),.x-textarea .x-inner-wrapper .clear-icon:not(:last-child){right:40px}.x-input .x-inner-wrapper .clear-icon:hover,.x-textarea .x-inner-wrapper .clear-icon:hover{color:var(--fd-color-icon-hover);cursor:pointer}.x-input .x-inner-wrapper .x-prefix,.x-input .x-inner-wrapper .x-suffix,.x-textarea .x-inner-wrapper .x-prefix,.x-textarea .x-inner-wrapper .x-suffix{color:var(--fd-color-icon-normal);position:absolute;top:50%;transform:translateY(-50%)}.x-input .x-inner-wrapper .x-prefix>i,.x-input .x-inner-wrapper .x-suffix>i,.x-textarea .x-inner-wrapper .x-prefix>i,.x-textarea .x-inner-wrapper .x-suffix>i{font-size:var(--fd-font-size-lg)}.x-input .x-inner-wrapper .x-prefix,.x-textarea .x-inner-wrapper .x-prefix{left:10px}.x-input .x-inner-wrapper .x-suffix,.x-textarea .x-inner-wrapper .x-suffix{right:10px}.x-input .x-inner-wrapper .input-inner,.x-input .x-inner-wrapper .textarea-inner,.x-textarea .x-inner-wrapper .input-inner,.x-textarea .x-inner-wrapper .textarea-inner{background:transparent;border:none;color:var(--fd-color-text);height:100%;width:100%}.x-input .x-inner-wrapper .input-inner::-moz-placeholder,.x-input .x-inner-wrapper .textarea-inner::-moz-placeholder,.x-textarea .x-inner-wrapper .input-inner::-moz-placeholder,.x-textarea .x-inner-wrapper .textarea-inner::-moz-placeholder{color:var(--fd-color-text-placeholder)!important}.x-input .x-inner-wrapper .input-inner:-ms-input-placeholder,.x-input .x-inner-wrapper .textarea-inner:-ms-input-placeholder,.x-textarea .x-inner-wrapper .input-inner:-ms-input-placeholder,.x-textarea .x-inner-wrapper .textarea-inner:-ms-input-placeholder{color:var(--fd-color-text-placeholder)!important}.x-input .x-inner-wrapper .input-inner::placeholder,.x-input .x-inner-wrapper .textarea-inner::placeholder,.x-textarea .x-inner-wrapper .input-inner::placeholder,.x-textarea .x-inner-wrapper .textarea-inner::placeholder{color:var(--fd-color-text-placeholder)!important}.x-input .x-inner-wrapper .input-inner,.x-textarea .x-inner-wrapper .input-inner{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-input .x-inner-wrapper .input-inner:not(:first-child),.x-textarea .x-inner-wrapper .input-inner:not(:first-child){padding-left:30px}.x-input .x-inner-wrapper .input-inner:not(:last-child),.x-textarea .x-inner-wrapper .input-inner:not(:last-child){padding-right:30px}.x-input .x-inner-wrapper .textarea-inner,.x-textarea .x-inner-wrapper .textarea-inner{padding:var(--fd-padding-xs) var(--fd-padding);resize:none}.x-input.input-disable .x-inner-wrapper,.x-input.textarea-disable .x-inner-wrapper,.x-textarea.input-disable .x-inner-wrapper,.x-textarea.textarea-disable .x-inner-wrapper{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border)}.x-input.input-disable .x-inner-wrapper .input-inner,.x-input.input-disable .x-inner-wrapper .textarea-inner,.x-input.textarea-disable .x-inner-wrapper .input-inner,.x-input.textarea-disable .x-inner-wrapper .textarea-inner,.x-textarea.input-disable .x-inner-wrapper .input-inner,.x-textarea.input-disable .x-inner-wrapper .textarea-inner,.x-textarea.textarea-disable .x-inner-wrapper .input-inner,.x-textarea.textarea-disable .x-inner-wrapper .textarea-inner{color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-input.input-disable .x-inner-wrapper:hover,.x-input.textarea-disable .x-inner-wrapper:hover,.x-textarea.input-disable .x-inner-wrapper:hover,.x-textarea.textarea-disable .x-inner-wrapper:hover{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border)!important}.x-input.input-disable .x-inner-wrapper:hover .input-inner,.x-input.input-disable .x-inner-wrapper:hover .textarea-inner,.x-input.textarea-disable .x-inner-wrapper:hover .input-inner,.x-input.textarea-disable .x-inner-wrapper:hover .textarea-inner,.x-textarea.input-disable .x-inner-wrapper:hover .input-inner,.x-textarea.input-disable .x-inner-wrapper:hover .textarea-inner,.x-textarea.textarea-disable .x-inner-wrapper:hover .input-inner,.x-textarea.textarea-disable .x-inner-wrapper:hover .textarea-inner{color:var(--fd-color-text-data-disabled)}.x-input.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.textarea-focus .x-inner-wrapper:not(.wrapper-borderless){border-color:var(--fd-color-primary)!important;box-shadow:var(--fd-input-active-shadow)}.x-input.input-focus .input-inner,.x-textarea.input-focus .input-inner{text-overflow:clip}.x-input.input-readonly .x-inner-wrapper,.x-input.textarea-readonly .x-inner-wrapper,.x-textarea.input-readonly .x-inner-wrapper,.x-textarea.textarea-readonly .x-inner-wrapper{border-color:var(--fd-color-border)}.x-input.input-error .x-inner-wrapper,.x-input.input-error.input-focus .x-inner-wrapper,.x-input.textarea-error .x-inner-wrapper,.x-textarea.input-error .x-inner-wrapper,.x-textarea.input-error.input-focus .x-inner-wrapper,.x-textarea.textarea-error .x-inner-wrapper{border-color:var(--fd-color-error)!important}.x-input.input-error .x-inner-wrapper:hover,.x-input.input-error.input-focus .x-inner-wrapper:hover,.x-input.textarea-error .x-inner-wrapper:hover,.x-textarea.input-error .x-inner-wrapper:hover,.x-textarea.input-error.input-focus .x-inner-wrapper:hover,.x-textarea.textarea-error .x-inner-wrapper:hover{border-color:var(--fd-color-error-hover)!important}.x-input.input-error.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.input-error.input-focus.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.input-error.input-focus.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.input-error.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.textarea-error.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.textarea-error.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-error.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-error.input-focus.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-error.input-focus.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-error.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.textarea-error.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.textarea-error.textarea-focus .x-inner-wrapper:not(.wrapper-borderless){box-shadow:var(--fd-input-error-active-shadow)}.x-input.input-invalid .x-inner-wrapper,.x-input.textarea-invalid .x-inner-wrapper,.x-textarea.input-invalid .x-inner-wrapper,.x-textarea.textarea-invalid .x-inner-wrapper{border-color:var(--fd-color-error)}.x-input.input-warning .x-inner-wrapper,.x-input.textarea-warning .x-inner-wrapper,.x-textarea.input-warning .x-inner-wrapper,.x-textarea.textarea-warning .x-inner-wrapper{border-color:var(--fd-color-warning)!important}.x-input.input-warning .x-inner-wrapper:hover,.x-input.textarea-warning .x-inner-wrapper:hover,.x-textarea.input-warning .x-inner-wrapper:hover,.x-textarea.textarea-warning .x-inner-wrapper:hover{border-color:var(--fd-color-warning-hover)!important}.x-input.input-warning.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.input-warning.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.textarea-warning.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.textarea-warning.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-warning.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-warning.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.textarea-warning.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.textarea-warning.textarea-focus .x-inner-wrapper:not(.wrapper-borderless){box-shadow:var(--fd-input-waring-active-shadow)}.x-inputpassword-icon{color:var(--fd-color-icon);cursor:pointer}.x-inputpassword-icon:hover{color:var(--fd-color-icon-hover)}.x-input-number{border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);color:var(--fd-color-text);height:var(--fd-control-height);line-height:normal;overflow:hidden;position:relative;transition:border .2s ease;width:130px}.x-input-number *,.x-input-number :after,.x-input-number :before{box-sizing:border-box}.x-input-number input,.x-input-number textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variant-numeric:tabular-nums;margin:0;outline:none}.x-input-number input::-moz-placeholder,.x-input-number textarea::-moz-placeholder{opacity:1}.x-input-number input:-ms-input-placeholder,.x-input-number textarea:-ms-input-placeholder{opacity:1}.x-input-number input::placeholder,.x-input-number textarea::placeholder{opacity:1}.x-input-number input::-ms-clear,.x-input-number input::-ms-reveal{display:none}.x-input-number input[type=number]{-moz-appearance:textfield}.x-input-number input[type=number]::-webkit-inner-spin-button,.x-input-number input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}.x-input-number .prefix,.x-input-number .suffix{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;height:100%;justify-content:center;overflow:hidden;position:absolute;width:var(--fd-control-height)}.x-input-number .prefix .control-btn,.x-input-number .suffix .control-btn{color:var(--fd-color-text);height:100%;text-align:center;width:100%}.x-input-number .prefix .control-btn .btn,.x-input-number .suffix .control-btn .btn{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:var(--fd-color-fill-quaternary);background-color:var(--fd-color-bg-container);color:var(--fd-color-text);cursor:pointer;display:flex;height:100%;justify-content:center;transition:all .2s ease}.x-input-number .prefix .control-btn .btn:hover,.x-input-number .suffix .control-btn .btn:hover{background-color:var(--fd-color-bg-text-hover)}.x-input-number .prefix .control-btn .btn:active,.x-input-number .suffix .control-btn .btn:active{background:var(--fd-color-bg-text-hover);transition:unset}.x-input-number .prefix .control-btn .btn.btn-disabled,.x-input-number .suffix .control-btn .btn.btn-disabled{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important;cursor:not-allowed}.x-input-number .prefix .control-btn.add .btn,.x-input-number .suffix .control-btn.add .btn{border-left:1px solid var(--fd-color-border)}.x-input-number .prefix .control-btn.minus .btn,.x-input-number .suffix .control-btn.minus .btn{border-right:1px solid var(--fd-color-border)}.x-input-number .prefix{bottom:0;left:0;top:0}.x-input-number .suffix{bottom:0;right:0;top:0}.x-input-number .inner-input{border:none;border-radius:var(--fd-border-radius);color:var(--fd-color-text);height:100%;outline:none;padding:0 calc(var(--fd-padding) + var(--fd-control-height));text-align:center;width:100%}.x-input-number:not(.disabled):not(.input-readonly).hover{border-color:var(--fd-color-primary-hover)}.x-input-number:not(.disabled):not(.input-readonly).focus{border-color:var(--fd-color-primary-hover);box-shadow:var(--fd-input-number-active-shadow)}.x-input-number.input-readonly .inner-input{cursor:default}.x-input-number.disabled .inner-input{background:var(--fd-color-bg-container-disabled);color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-input-number.control-in-right:not(.disabled):not(.input-readonly):hover .suffix .control-group{background:var(--fd-color-bg-container);display:flex}.x-input-number.control-in-right .inner-input{padding:0 var(--fd-padding);text-align:left}.x-input-number.control-in-right .inner-input:not(:first-child){padding-left:var(--fd-control-height)}.x-input-number.control-in-right .suffix .control-group{-ms-flex-pack:distribute;color:var(--fd-color-text);display:none;flex-direction:column;height:100%;justify-content:space-around;padding:var(--fd-padding-2xs);padding-left:0;width:100%}.x-input-number.control-in-right .suffix .control-group .btn{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-flex:1;align-items:center;background:var(--fd-color-fill-quaternary);border-radius:var(--fd-border-radius-xs);color:var(--fd-color-text);cursor:pointer;display:flex;flex:1 0 auto;height:30%;justify-content:center;transition:all .2s ease;width:100%}.x-input-number.control-in-right .suffix .control-group .btn:hover{background-color:var(--fd-color-bg-text-hover)}.x-input-number.control-in-right .suffix .control-group .btn:active{background:var(--fd-color-bg-text-hover);transition:unset}.x-input-number.control-in-right .suffix .control-group .btn.btn-disabled{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important;cursor:not-allowed}.x-input-number.control-in-right .suffix .control-group .btn:hover{height:60%}.x-input-number.control-in-right .suffix .control-group .btn:first-child{margin-bottom:var(--fd-line-width)}.x-input-number.size-large{height:var(--fd-control-height-lg);width:166px}.x-input-number.size-large .inner-input{font-size:var(--fd-font-size-lg);padding:0 calc(var(--fd-padding) + var(--fd-control-height-lg))}.x-input-number.size-large .prefix,.x-input-number.size-large .suffix{width:var(--fd-control-height-lg)}.x-input-number.size-large.control-in-right .inner-input{padding:0 var(--fd-padding)}.x-input-number.size-large.control-in-right .inner-input:not(:first-child){padding-left:var(--fd-control-height-lg)}.x-input-number.size-small{height:var(--fd-control-height-sm);width:110px}.x-input-number.size-small .inner-input{font-size:var(--fd-font-size-sm);padding:0 calc(var(--fd-padding-xs) + var(--fd-control-height-sm))}.x-input-number.size-small .prefix,.x-input-number.size-small .suffix{width:var(--fd-control-height-sm)}.x-input-number.size-small .prefix .control-btn .btn>i,.x-input-number.size-small .suffix .control-btn .btn>i{font-size:var(--fd-font-size-sm)}.x-input-number.size-small.control-in-right .inner-input{padding:0 var(--fd-padding-xs)}.x-input-number.size-small.control-in-right .inner-input:not(:first-child){padding-left:var(--fd-control-height-sm)}.x-input-number.no-control-btn .inner-input{padding:0 var(--fd-padding);text-align:left}.x-input-number.no-control-btn .inner-input:not(:first-child){padding-left:var(--fd-control-height)}.x-input-number.no-control-btn .inner-input:not(:last-child){padding-right:var(--fd-control-height)}.x-input-number.input-state-error,.x-input-number.input-state-error:not(.disabled):not(.input-readonly).hover{border-color:var(--fd-color-error)}.x-input-number.input-state-warning,.x-input-number.input-state-warning:not(.disabled):not(.input-readonly).hover{border-color:var(--fd-color-warning)}.x-input-number.input-state-success,.x-input-number.input-state-success:not(.disabled):not(.input-readonly).hover{border-color:var(--fd-color-success)}.x-badge{display:inline-block;position:relative}.x-badge *,.x-badge :after,.x-badge :before{box-sizing:border-box}.x-badge.is-only-badge{font-size:0;line-height:var(--fd-line-height-sm)}.x-badge.is-only-badge .badge-count{bottom:0;left:0;position:relative;transform:none;vertical-align:middle}.x-badge .badge-count{background-color:var(--fd-color-error);border-radius:9999px;bottom:100%;box-shadow:0 0 0 1px var(--fd-color-white);color:var(--fd-color-text-light-solid);display:inline-block;font-size:var(--fd-font-size-sm);height:var(--fd-line-height-sm);left:100%;line-height:var(--fd-line-height-sm);max-width:100px;min-width:20px;position:absolute;text-align:center;transform:translate(calc(0px - var(--fd-line-height-sm)/2),calc(var(--fd-line-height-sm)/2));white-space:nowrap}.x-badge .badge-count.badge-multiple-words{padding:0 var(--fd-padding)}.x-badge .badge-count:not(.x-badge .badge-count-dot){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-badge .badge-count-dot{height:6px;min-width:auto;padding:0;transform:translate(-3px,3px);width:6px}.x-badge .badge-count-zero{background-color:var(--fd-color-bg-container);box-shadow:0 0 0 1px var(--fd-color-border);color:var(--fd-color-text-disabled)}.x-drawer{background:var(--fd-color-bg-container);box-shadow:0 0 5px #91919180;color:var(--fd-color-text);overflow:hidden;position:fixed;z-index:1002}.x-drawer *,.x-drawer :after,.x-drawer :before{box-sizing:border-box}.x-drawer .x-drawer-header{border-bottom:1px solid var(--fd-color-border);font-size:var(--fd-font-size-xl);line-height:var(--fd-line-height-xl);overflow:hidden;padding:var(--fd-padding-layout) var(--fd-padding-layout-lg);position:relative;text-align:center;text-overflow:ellipsis;white-space:nowrap}.x-drawer .x-drawer-header .drawer-close-btn{position:absolute;top:50%;transform:translateY(-50%)}.x-drawer .drawer-header-text{font-weight:700}.x-drawer.x-drawer-with-title{display:flex;flex-direction:column}.x-drawer.x-drawer-with-title .x-drawer-body{flex:1;overflow:hidden;position:relative}.x-drawer.x-drawer-with-title .x-drawer-body.content-padding{padding:var(--fd-padding-layout-lg)}.x-drawer.x-drawer-with-title .x-drawer-footer{-ms-flex-negative:0;border-top:var(--fd-line-width) solid var(--fd-color-border);flex-shrink:0;padding:var(--fd-padding-layout-sm) var(--fd-padding-layout-lg)}.x-drawer .drawer-close-btn{border-radius:var(--fd-border-radius);color:var(--fd-color-text);cursor:pointer;display:block;font-size:var(--fd-icon-size);height:var(--fd-line-height-xl);position:absolute;right:var(--fd-padding-layout-lg);text-align:center;top:var(--fd-padding-layout);transition:color .2s ease;width:var(--fd-line-height-xl)}.x-drawer .drawer-close-btn .close-btn{line-height:var(--fd-line-height-xl)}.x-drawer .drawer-close-btn:hover{background:var(--fd-color-bg-text-hover);color:var(--fd-color-text)}.x-drawer.from-bottom{bottom:0;left:0;right:0}.x-drawer.from-bottom.bottom-appear,.x-drawer.from-bottom.bottom-enter{transform:translate3d(0,100%,0)}.x-drawer.from-bottom.bottom-appear-active,.x-drawer.from-bottom.bottom-enter-active{transform:translateZ(0);transition:all .2s ease-in-out}.x-drawer.from-bottom.bottom-exit{transform:translateZ(0)}.x-drawer.from-bottom.bottom-exit-active{transform:translate3d(0,100%,0);transition:all .2s ease-in-out}.x-drawer.from-bottom.bottom-exit-done{display:none}.x-drawer.from-top{left:0;right:0;top:0}.x-drawer.from-top.top-appear,.x-drawer.from-top.top-enter{transform:translate3d(0,-100%,0)}.x-drawer.from-top.top-appear-active,.x-drawer.from-top.top-enter-active{transform:translateZ(0);transition:all .2s ease-in-out}.x-drawer.from-top.top-exit{transform:translateZ(0)}.x-drawer.from-top.top-exit-active{transform:translate3d(0,-100%,0);transition:all .2s ease-in-out}.x-drawer.from-top.top-exit-done{display:none}.x-drawer.from-left{bottom:0;left:0;top:0}.x-drawer.from-left.left-appear,.x-drawer.from-left.left-enter{transform:translate3d(-100%,0,0)}.x-drawer.from-left.left-appear-active,.x-drawer.from-left.left-enter-active{transform:translateZ(0);transition:all .2s ease-in-out}.x-drawer.from-left.left-exit{transform:translateZ(0)}.x-drawer.from-left.left-exit-active{transform:translate3d(-100%,0,0);transition:all .2s ease-in-out}.x-drawer.from-left.left-exit-done{display:none}.x-drawer.from-right{bottom:0;right:0;top:0}.x-drawer.from-right.right-appear,.x-drawer.from-right.right-enter{transform:translate3d(100%,0,0)}.x-drawer.from-right.right-appear-active,.x-drawer.from-right.right-enter-active{transform:translateZ(0);transition:all .2s ease-in-out}.x-drawer.from-right.right-exit{transform:translateZ(0)}.x-drawer.from-right.right-exit-active{transform:translate3d(100%,0,0);transition:all .2s ease-in-out}.x-drawer.from-right.right-exit-done{display:none}.x-drawer .x-mask,.x-drawer .x-window-mask{position:absolute}.x-drawer .x-drawer{position:absolute;z-index:1002!important}.x-drawer-wrapper.not-body-container .x-drawer,.x-drawer-wrapper.not-body-container .x-mask,.x-drawer-wrapper.not-body-container .x-window-mask{position:absolute}.x-check{color:var(--fd-color-text);display:flex;line-height:normal}.x-check *,.x-check :after,.x-check :before{box-sizing:border-box}.x-check .check-label{align-items:flex-start;cursor:pointer;display:flex;position:relative}.x-check .check-label.has-default-padding{padding:var(--fd-check-default-padding)}.x-check .check-label.size-middle,.x-check .check-label.size-normal{font-size:var(--fd-font-size)}.x-check .check-label.size-middle .check-icon,.x-check .check-label.size-middle .check-origin,.x-check .check-label.size-normal .check-icon,.x-check .check-label.size-normal .check-origin{height:16px;margin:calc((var(--fd-line-height) - 16px)/2) 0;width:16px}.x-check .check-label.size-middle .check-icon .yes-icon,.x-check .check-label.size-middle .check-origin .yes-icon,.x-check .check-label.size-normal .check-icon .yes-icon,.x-check .check-label.size-normal .check-origin .yes-icon{left:4px;top:10px}.x-check .check-label .check-icon{-webkit-box-flex:0;background:var(--fd-color-bg-container);border:1px solid var(--fd-color-border);border-radius:2px;display:inline-block;flex:0 0 auto;position:relative;transition:all .2s ease;vertical-align:middle}.x-check .check-label .check-icon .yes-icon{position:absolute;transform:rotate(-45deg)}.x-check .check-label .check-icon .yes-icon:after,.x-check .check-label .check-icon .yes-icon:before{background:var(--fd-color-text-light-solid);content:"";display:block;position:absolute;transition:all .2s ease}.x-check .check-label .check-icon .yes-icon:before{border-radius:1px 1px 0 0;bottom:0;height:0;width:2px}.x-check .check-label .check-icon .yes-icon:after{border-radius:0 1px 1px 2px;height:2px;width:0}.x-check .check-label .check-origin{cursor:inherit;opacity:0;position:absolute}.x-check .check-label .check-text{word-wrap:break-word;line-height:var(--fd-line-height);max-width:100%;padding-left:var(--fd-gap);vertical-align:middle;word-break:break-word}.x-check .check-label.is-only-icon{align-items:center;height:16px}.x-check:not(.auto-wrap) .x-check-wrapper{min-width:0}.x-check:not(.auto-wrap) .x-check-wrapper .check-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-check.check-checked:not(.indeterminate) .check-label.size-middle .check-icon .yes-icon:before,.x-check.check-checked:not(.indeterminate) .check-label.size-normal .check-icon .yes-icon:before{height:4px}.x-check.check-checked:not(.indeterminate) .check-label.size-middle .check-icon .yes-icon:after,.x-check.check-checked:not(.indeterminate) .check-label.size-normal .check-icon .yes-icon:after{width:10px}.x-check.check-checked:not(.indeterminate) .check-label .check-icon{background:var(--fd-color-primary);border-color:var(--fd-color-primary)}.x-check.check-checked:not(.indeterminate):hover .check-icon{background-color:var(--fd-color-primary-hover)}.x-check .x-check-wrapper:focus{box-shadow:0 0 0 1px var(--fd-color-primary);outline:none}.x-check .x-check-wrapper:active{box-shadow:none}.x-check .x-check-wrapper:hover .check-icon{border-color:var(--fd-color-primary)}.x-check.check-disable .x-check-wrapper:focus{box-shadow:none}.x-check.check-disable .check-label{cursor:not-allowed}.x-check.check-disable .check-label .check-icon{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important}.x-check.check-disable .check-label .check-icon .indeterminate-icon,.x-check.check-disable .check-label .check-icon .yes-icon,.x-check.check-disable .check-label .check-icon:hover{border-color:var(--fd-color-border)!important}.x-check.check-disable .check-label .check-icon .indeterminate-icon:after,.x-check.check-disable .check-label .check-icon .indeterminate-icon:before,.x-check.check-disable .check-label .check-icon .yes-icon:after,.x-check.check-disable .check-label .check-icon .yes-icon:before{background:var(--fd-color-text-disabled)!important}.x-check.check-disable .check-label .check-text{color:var(--fd-color-text-data-disabled)!important}.x-check.check-disable.check-checked .check-label .check-icon .yes-icon:after,.x-check.check-disable.check-checked .check-label .check-icon .yes-icon:before{background:var(--fd-color-text-disabled)!important}.x-check.indeterminate .check-icon{border-color:var(--fd-color-primary)}.x-check.indeterminate .check-icon .indeterminate-icon:before{background-color:var(--fd-color-primary);content:"";display:block;height:8px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:all .2s ease;width:8px}.x-switch{background:var(--fd-color-primary);border-radius:11px;cursor:pointer;display:inline-block;font-size:var(--fd-font-size-sm);height:22px;line-height:22px;position:relative;transition:background .1s ease-out;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-switch *,.x-switch :after,.x-switch :before{box-sizing:border-box}.x-switch.loading{opacity:.4}.x-switch:not(.state-open){background:var(--fd-color-text-quaternary)!important}.x-switch:not(.state-open) .switch-loading-status{border-top-color:var(--fd-color-text-quaternary)!important}.x-switch .inner-label{color:var(--fd-color-text-light-solid);display:inline-block;height:22px;min-width:44px;padding:0 8px 0 22px;text-align:right;vertical-align:top}.x-switch .inner-label .trigger-sign-box{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:var(--fd-color-white);border-radius:50%;display:block;display:flex;filter:drop-shadow(0 2px 4px rgba(0,35,11,.2));height:18px;justify-content:center;left:2px;position:absolute;top:2px;transition-duration:.2s;transition-property:left,transform,margin;width:18px}.x-switch .inner-label .trigger-sign-box .switch-loading-status{animation:x-rotate .8s cubic-bezier(.43,.1,.54,.85) infinite;border:2px solid;border-radius:50%;border-top:2px solid var(--fd-color-primary);height:14px;margin:0 auto;transform-origin:center;width:14px}.x-switch.state-open .inner-label{padding:0 22px 0 8px;text-align:left}.x-switch.state-open .inner-label .trigger-sign-box{left:100%;margin-left:-2px;right:2px;transform:translate(-100%)}.x-switch.disabled{cursor:not-allowed;opacity:.4}.x-switch.size-small{height:16px;line-height:16px}.x-switch.size-small .inner-label{height:16px;min-width:28px;padding:0 6px 0 14px}.x-switch.size-small .inner-label .trigger-sign-box{height:12px;width:12px}.x-switch.size-small .inner-label .trigger-sign-box .switch-loading-status{height:10px;width:10px}.x-switch.size-small.state-open .inner-label{padding:0 14px 0 8px}.x-check-group{display:inline-block;max-width:100%}.x-check-group .x-check-all{color:var(--fd-color-primary)}.x-check-group.check-group-horizontal{display:flex;flex-wrap:wrap}.x-check-group.check-group-horizontal.no-default-padding{row-gap:var(--fd-gap)}.x-check-group.check-group-horizontal.no-default-padding .x-check .check-label{padding:0}.x-check-group.check-group-horizontal .x-check{display:inline-block;margin-right:var(--fd-gap-4xl);max-width:100%}.x-check-group.check-group-horizontal .x-check:last-child{margin-right:0}.x-check-group.check-group-vertical.no-default-padding .x-check:first-child .check-label{padding-top:0}.x-check-group.check-group-vertical.no-default-padding .x-check:last-child .check-label{padding-bottom:0}.x-combo,.x-combocheck{height:var(--fd-control-height);width:200px}.x-combo *,.x-combo :after,.x-combo :before,.x-combocheck *,.x-combocheck :after,.x-combocheck :before{box-sizing:border-box}.x-combo:not(.disabled) .x-combo-dropdown-label,.x-combocheck:not(.disabled) .x-combo-dropdown-label{border-color:var(--fd-color-border)}.x-combo:not(.disabled).active,.x-combo:not(.disabled):focus,.x-combocheck:not(.disabled).active,.x-combocheck:not(.disabled):focus{outline:none}.x-combo:not(.disabled).active .x-combo-dropdown-label,.x-combo:not(.disabled):focus .x-combo-dropdown-label,.x-combocheck:not(.disabled).active .x-combo-dropdown-label,.x-combocheck:not(.disabled):focus .x-combo-dropdown-label{border-color:var(--fd-color-primary-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline);outline:0}.x-combo:not(.disabled):hover .x-combo-dropdown-label,.x-combocheck:not(.disabled):hover .x-combo-dropdown-label{border-color:var(--fd-color-primary-hover)}.x-combo.status-error:not(.disabled) .x-combo-dropdown-label,.x-combocheck.status-error:not(.disabled) .x-combo-dropdown-label{border-color:var(--fd-color-error)}.x-combo.status-error:not(.disabled).active,.x-combo.status-error:not(.disabled):focus,.x-combocheck.status-error:not(.disabled).active,.x-combocheck.status-error:not(.disabled):focus{outline:none}.x-combo.status-error:not(.disabled).active .x-combo-dropdown-label,.x-combo.status-error:not(.disabled):focus .x-combo-dropdown-label,.x-combocheck.status-error:not(.disabled).active .x-combo-dropdown-label,.x-combocheck.status-error:not(.disabled):focus .x-combo-dropdown-label{border-color:var(--fd-color-error-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-error-outline);outline:0}.x-combo.status-error:not(.disabled):hover .x-combo-dropdown-label,.x-combocheck.status-error:not(.disabled):hover .x-combo-dropdown-label{border-color:var(--fd-color-error-hover)}.x-combo.status-success:not(.disabled) .x-combo-dropdown-label,.x-combocheck.status-success:not(.disabled) .x-combo-dropdown-label{border-color:var(--fd-color-success)}.x-combo.status-success:not(.disabled).active,.x-combo.status-success:not(.disabled):focus,.x-combocheck.status-success:not(.disabled).active,.x-combocheck.status-success:not(.disabled):focus{outline:none}.x-combo.status-success:not(.disabled).active .x-combo-dropdown-label,.x-combo.status-success:not(.disabled):focus .x-combo-dropdown-label,.x-combocheck.status-success:not(.disabled).active .x-combo-dropdown-label,.x-combocheck.status-success:not(.disabled):focus .x-combo-dropdown-label{border-color:var(--fd-color-success-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline);outline:0}.x-combo.status-success:not(.disabled):hover .x-combo-dropdown-label,.x-combocheck.status-success:not(.disabled):hover .x-combo-dropdown-label{border-color:var(--fd-color-success-hover)}.x-combo.status-warning:not(.disabled) .x-combo-dropdown-label,.x-combocheck.status-warning:not(.disabled) .x-combo-dropdown-label{border-color:var(--fd-color-warning)}.x-combo.status-warning:not(.disabled).active,.x-combo.status-warning:not(.disabled):focus,.x-combocheck.status-warning:not(.disabled).active,.x-combocheck.status-warning:not(.disabled):focus{outline:none}.x-combo.status-warning:not(.disabled).active .x-combo-dropdown-label,.x-combo.status-warning:not(.disabled):focus .x-combo-dropdown-label,.x-combocheck.status-warning:not(.disabled).active .x-combo-dropdown-label,.x-combocheck.status-warning:not(.disabled):focus .x-combo-dropdown-label{border-color:var(--fd-color-warning-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-warning-outline);outline:0}.x-combo.status-warning:not(.disabled):hover .x-combo-dropdown-label,.x-combocheck.status-warning:not(.disabled):hover .x-combo-dropdown-label{border-color:var(--fd-color-warning-hover)}.x-combo.no-border .x-combo-dropdown-label,.x-combocheck.no-border .x-combo-dropdown-label{border-color:transparent}.x-combo.no-border.active,.x-combo.no-border:focus,.x-combocheck.no-border.active,.x-combocheck.no-border:focus{outline:none}.x-combo.no-border.active .x-combo-dropdown-label,.x-combo.no-border:focus .x-combo-dropdown-label,.x-combocheck.no-border.active .x-combo-dropdown-label,.x-combocheck.no-border:focus .x-combo-dropdown-label{border-color:transparent;box-shadow:none;outline:0}.x-combo.no-border:hover .x-combo-dropdown-label,.x-combocheck.no-border:hover .x-combo-dropdown-label{border-color:transparent}.x-combo .x-combo-dropdown-custom-label,.x-combocheck .x-combo-dropdown-custom-label{height:100%;width:100%}.x-combo .x-combo-dropdown-label,.x-combocheck .x-combo-dropdown-label{font-size:var(--fd-font-size);line-height:var(--fd-line-height);padding:0 var(--fd-padding)}.x-combo .x-combo-dropdown-label .dropdown-icon,.x-combocheck .x-combo-dropdown-label .dropdown-icon{font-size:var(--fd-icon-size);line-height:var(--fd-icon-size)}.x-combo.size-small,.x-combocheck.size-small{height:var(--fd-control-height-sm)}.x-combo.size-small .x-combo-dropdown-label,.x-combocheck.size-small .x-combo-dropdown-label{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-lg);padding:0 var(--fd-padding-xs)}.x-combo.size-small .x-combo-dropdown-label .dropdown-icon,.x-combocheck.size-small .x-combo-dropdown-label .dropdown-icon{font-size:var(--fd-icon-size);line-height:var(--fd-icon-size)}.x-combo.size-large,.x-combocheck.size-large{height:var(--fd-control-height-lg)}.x-combo.size-large .x-combo-dropdown-label,.x-combocheck.size-large .x-combo-dropdown-label{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-sm);padding:0 var(--fd-padding)}.x-combo.size-large .x-combo-dropdown-label .dropdown-icon,.x-combocheck.size-large .x-combo-dropdown-label .dropdown-icon{font-size:var(--fd-icon-size);line-height:var(--fd-icon-size)}.x-combo-dropdown-list .dropdown-extra{text-align:center}.x-combo-dropdown-list .dropdown-groups .group-label{color:var(--fd-color-text-secondary);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);padding:var(--fd-padding-xs) var(--fd-padding) 0 var(--fd-padding)}.x-combo-dropdown-list .dropdown-groups .group-items .x-combo-dropdown-item{padding-left:var(--fd-padding-xl)}.x-combo-dropdown-list .x-combo-dropdown-item{align-items:center;border-radius:var(--fd-border-radius-sm);display:flex;height:var(--fd-control-height);padding:0 var(--fd-padding);transition:all .2s}.x-combo-dropdown-list .x-combo-dropdown-item-icon{flex:none;font-size:var(--fd-icon-size);font-weight:400;margin-right:var(--fd-gap-sm)}.x-combo-dropdown-list .x-combo-dropdown-item-content{flex:auto;font-size:var(--fd-font-size);line-height:var(--fd-line-height);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-combo-dropdown-list .x-combo-dropdown-item-check{flex:none;margin-right:var(--fd-gap)}.x-combo-dropdown-list .x-combo-dropdown-item .x-search-key,.x-combo-dropdown-list .x-combo-dropdown-item.check-all-item{color:var(--fd-color-primary-text)}.x-combo-dropdown-list .x-combo-dropdown-item:not(.disabled){cursor:pointer}.x-combo-dropdown-list .x-combo-dropdown-item:not(.disabled).selected.is-multi.is-focus,.x-combo-dropdown-list .x-combo-dropdown-item:not(.disabled).selected.is-multi:hover,.x-combo-dropdown-list .x-combo-dropdown-item:not(.disabled):not(.selected).is-focus,.x-combo-dropdown-list .x-combo-dropdown-item:not(.disabled):not(.selected):hover{background:var(--fd-color-fill-quaternary)}.x-combo-dropdown-list .x-combo-dropdown-item.selected{background:var(--fd-control-item-bg-active);font-weight:var(--fd-control-item-font-weight-active)}.x-combo-dropdown-list .x-combo-dropdown-item.selected.disabled{background:var(--fd-control-item-bg-active-disabled);font-weight:400}.x-combo-dropdown-list .x-combo-dropdown-item.disabled{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-combo-dropdown-list .x-combo-dropdown-item.is-multi.selected{background:inherit;font-weight:400}.x-combo-dropdown-list .x-combo-dropdown-item.is-multi.selected.disabled{background:inherit}.x-combo-dropdown-list .x-combo-dropdown-item.is-multi.disabled .x-check{color:var(--fd-color-text-disabled)}.x-combo-dropdown-wrapper{background:var(--fd-color-bg-container);border-radius:var(--fd-border-radius-lg);box-shadow:0 6px 10px 1px #0000000f,0 3px 14px 2px #0000000d;font-size:var(--fd-font-size);line-height:var(--fd-line-height);overflow:hidden;position:relative}.x-combo-dropdown-wrapper .dropdown-search-input{border-bottom:1px solid var(--fd-color-split)}.x-combo-dropdown-wrapper .inner-wrapper{max-height:250px;overflow-y:auto;padding:var(--fd-padding-layout-2xs)}.x-combo-dropdown-wrapper .dropdown-loading .loading-wrapper{min-width:240px}.x-combo-dropdown-wrapper .dropdown-empty{color:var(--fd-color-text-description);line-height:var(--fd-control-height);text-align:center}.x-combo-dropdown-wrapper .dropdown-extra .loading-wrapper{width:100%}.x-combo-dropdown-wrapper .search-loading{color:var(--fd-color-text-description);font-size:var(--fd-font-size);line-height:var(--fd-control-height);padding:var(--fd-padding-layout-2xs);text-align:center}.x-combo-dropdown-wrapper .loading-wrapper{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;color:var(--fd-color-text-description);display:flex;height:var(--fd-control-height);justify-content:center}.x-combo-dropdown-wrapper .loading-wrapper .x-spin{padding-right:var(--fd-gap-sm);position:relative}.x-combo-dropdown-bottom-appear,.x-combo-dropdown-bottom-enter{animation:x-slide-down .2s cubic-bezier(.23,1,.32,1);animation-fill-mode:forwards;transform-origin:top}.x-combo-dropdown-bottom-exit{animation:x-slide-down .2s cubic-bezier(.75,.05,.85,.06) reverse;animation-fill-mode:forwards;transform-origin:top}.x-combo-dropdown-top-appear,.x-combo-dropdown-top-enter{animation:x-slide-down .2s cubic-bezier(.23,1,.32,1);animation-fill-mode:forwards;transform-origin:bottom}.x-combo-dropdown-top-exit{animation:x-slide-down .2s cubic-bezier(.75,.05,.85,.06) reverse;animation-fill-mode:forwards;transform-origin:bottom}.x-combo-dropdown-label{align-items:center;border:var(--fd-line-width) solid var(--fd-color-border);border-radius:var(--fd-border-radius);color:var(--fd-color-text);cursor:pointer;display:flex;height:100%;overflow:hidden;position:relative;transition:border .2s ease;width:100%}.x-combo-dropdown-label .value-wrapper{flex:1 1 auto;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-combo-dropdown-label .value-wrapper .value-content{margin-right:var(--fd-gap-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-combo-dropdown-label .value-wrapper .value-content .dropdown-label-placeholder{color:var(--fd-color-text-placeholder);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-combo-dropdown-label .dropdown-icon{-webkit-box-flex:0;color:var(--fd-color-icon-normal);flex:0 0 auto;font-size:var(--fd-icon-size);font-style:normal;text-align:center;transform:rotate(0);transition:transform .2s ease}.x-combo-dropdown-label .dropdown-icon.reverse{transform:rotate(180deg)}.x-combo-dropdown-label .dropdown-icon.close-icon{color:var(--fd-color-icon);display:none}.x-combo-dropdown-label .dropdown-icon.close-icon:hover{color:var(--fd-color-icon-hover)}.x-combo-dropdown-label.show-clear:not(.disabled):hover .arrow-icon{display:none}.x-combo-dropdown-label.show-clear:not(.disabled):hover .close-icon{display:block}.x-combo-dropdown-label.disabled{background-color:var(--fd-color-bg-container-disabled);color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-combo-dropdown-label.disabled .dropdown-icon{color:var(--fd-color-text-disabled)}.x-datepicker{background-color:var(--fd-color-bg-container);border:none;border-radius:var(--fd-border-radius-lg);box-shadow:0 9px 27px 8px #1f2d3d0a,0 6px 18px 2px #1f2d3d0f,0 3px 6px -4px #1f2d3d1a;font-size:var(--fd-font-size);line-height:0;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.x-datepicker *,.x-datepicker :after,.x-datepicker :before{box-sizing:border-box}.x-datepicker .picker-content{display:inline-block;width:280px}.x-datepicker .picker-content .date-month,.x-datepicker .picker-content .date-year{height:230px;white-space:normal}.x-datepicker .picker-content.multi-pane .date-month,.x-datepicker .picker-content.multi-pane .date-year{height:270px}.x-datepicker .picker-content.multi-pane .date-month .item-cell .cell-btn,.x-datepicker .picker-content.multi-pane .date-year .item-cell .cell-btn{height:var(--fd-control-height);line-height:var(--fd-control-height)}.x-datepicker .picker-content~.date-time-picker{border-left:1px solid var(--fd-color-border)}.x-datepicker .picker-content .time-label{border-top:1px solid var(--fd-color-split);color:var(--fd-color-text);font-size:var(--fd-font-size);height:32px;line-height:32px;text-align:center;width:100%}.x-datepicker .date-head{-webkit-box-align:center;-ms-flex-align:center;-ms-flex-pack:distribute;align-items:center;display:flex;height:40px;justify-content:space-around;position:relative;text-align:center}.x-datepicker .date-head:after{border-top:1px solid var(--fd-color-split);bottom:0;content:"";left:0;position:absolute;right:0}.x-datepicker .date-head .head-btn{cursor:pointer;line-height:40px;padding:0 5px}.x-datepicker .date-head .head-btn:hover,.x-datepicker .date-head .head-btn:hover>i{color:var(--fd-color-primary)}.x-datepicker .date-head .head-btn.default{cursor:default}.x-datepicker .date-head .head-btn.default:hover{color:var(--fd-color-text)}.x-datepicker .date-head .head-btn.disabled{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-datepicker .date-head .head-btn.disabled>i{color:var(--fd-color-text-disabled)}.x-datepicker .date-head .head-btn.btn-prevy{left:10px;position:absolute;top:0}.x-datepicker .date-head .head-btn.btn-prevm{left:34px;position:absolute;top:0}.x-datepicker .date-head .head-btn.btn-nexty{position:absolute;right:10px;top:0}.x-datepicker .date-head .head-btn.btn-nextm{position:absolute;right:34px;top:0}.x-datepicker .date-head .head-btn.btn-month,.x-datepicker .date-head .head-btn.btn-year{display:inline-block}.x-datepicker .date-body{color:var(--fd-color-text);padding:var(--fd-padding-layout-sm)}.x-datepicker .date-body table{border-collapse:collapse;width:100%}.x-datepicker .date-body table thead th{font-weight:400;height:var(--fd-control-height-sm)}.x-datepicker .date-body table tbody td{cursor:pointer;text-align:center}.x-datepicker .date-body table tbody td .td-text{border:1px solid transparent;border-radius:var(--fd-border-radius-sm);height:var(--fd-control-height-sm);line-height:calc(var(--fd-control-height-sm) - 2px);margin:8px auto 0;text-align:center;transition:all .2s;width:var(--fd-control-height-sm)}.x-datepicker .date-body table tbody td.nav:hover .td-text{background:var(--fd-control-item-bg-hover)}.x-datepicker .date-body table tbody td.today .td-text{border-color:var(--fd-color-primary)}.x-datepicker .date-body table tbody td.today.disabled .td-text,.x-datepicker .date-body table tbody td.today.oday .td-text{border-color:var(--fd-color-border);color:var(--fd-color-text-disabled)}.x-datepicker .date-body table tbody td.today.disabled:hover .td-text,.x-datepicker .date-body table tbody td.today.oday:hover .td-text{background-color:var(--fd-color-primary-bg)}.x-datepicker .date-body table tbody td.oday{color:var(--fd-color-text-disabled)}.x-datepicker .date-body table tbody td.oday:hover .td-text{background-color:var(--fd-control-item-bg-hover)}.x-datepicker .date-body table tbody td.disabled{cursor:not-allowed;position:relative}.x-datepicker .date-body table tbody td.disabled:before{background:var(--fd-color-bg-container-disabled);bottom:0;content:"";height:var(--fd-control-height-sm);left:0;position:absolute;right:0}.x-datepicker .date-body table tbody td.disabled .td-text,.x-datepicker .date-body table tbody td.disabled:hover .td-text{background-color:transparent;color:var(--fd-color-text-disabled)}.x-datepicker .date-body table tbody td.disabled.selected .td-text{background-color:var(--fd-control-item-bg-active-disabled);color:var(--fd-color-text-disabled)!important}.x-datepicker .date-body table tbody td.disabled.selected:hover .td-text{background-color:var(--fd-control-item-bg-active-disabled);color:var(--fd-color-text-disabled)}.x-datepicker .date-body table tbody td.selected .td-text{background-color:var(--fd-color-primary);color:var(--fd-color-text-light-solid)!important}.x-datepicker .date-body table tbody td.selected:hover .td-text{background-color:var(--fd-color-primary);color:var(--fd-color-text-light-solid)}.x-datepicker .date-time-picker{display:inline-block;height:296px;max-width:280px;vertical-align:top}.x-datepicker .date-time-picker.show-time-label{height:328px}.x-datepicker .date-time-picker.multi-pane{display:none}.x-datepicker .date-time-picker .time-body{display:flex;height:100%}.x-datepicker .date-time-picker .time-body .col{display:flex;flex-direction:column;position:relative;text-align:center}.x-datepicker .date-time-picker .time-body .col:not(:last-child){border-right:1px solid var(--fd-color-border)}.x-datepicker .date-time-picker .time-body .col .label{flex:none;height:var(--fd-control-height-sm);line-height:var(--fd-control-height-sm);margin-top:4px}.x-datepicker .date-time-picker .time-body .col .col-list{flex:1 1 auto;overflow-y:hidden;padding:0 3px}.x-datepicker .date-time-picker .time-body .col .col-list::-webkit-scrollbar{width:0}.x-datepicker .date-time-picker .time-body .col .col-list::-webkit-scrollbar-thumb{background:hsla(220,6%,54%,.5)}.x-datepicker .date-time-picker .time-body .col .col-list::-webkit-scrollbar-track{display:none}.x-datepicker .date-time-picker .time-body .col .col-list:hover{overflow-y:auto}.x-datepicker .date-time-picker .time-body .col .col-list:after{content:"";display:block;height:calc(100% - var(--fd-gap-sm) - var(--fd-control-height-sm))}.x-datepicker .date-time-picker .time-body .col .col-list .col-item{border-radius:var(--fd-border-radius-sm);cursor:pointer;height:var(--fd-control-height-sm);line-height:var(--fd-control-height-sm);margin-top:var(--fd-gap-sm);width:48px}.x-datepicker .date-time-picker .time-body .col .col-list .col-item:hover{background:var(--fd-control-item-bg-hover)}.x-datepicker .date-time-picker .time-body .col .col-list .col-item.select{background:var(--fd-color-primary-bg)}.x-datepicker .date-month,.x-datepicker .date-year{-ms-flex-line-pack:justify;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-content:space-between;align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;padding:var(--fd-padding-layout) var(--fd-padding-layout-sm)}.x-datepicker .date-month .item-cell,.x-datepicker .date-year .item-cell{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;color:var(--fd-color-text);display:inline-flex;height:25%;justify-content:center;padding:0 var(--fd-padding-lg);position:relative;width:33.33%}.x-datepicker .date-month .item-cell.disabled,.x-datepicker .date-year .item-cell.disabled{cursor:not-allowed}.x-datepicker .date-month .item-cell.disabled:before,.x-datepicker .date-year .item-cell.disabled:before{background:var(--fd-color-bg-container-disabled);content:"";height:var(--fd-control-height);left:0;position:absolute;right:0}.x-datepicker .date-month .item-cell .cell-btn,.x-datepicker .date-year .item-cell .cell-btn{border-radius:var(--fd-border-radius-sm);cursor:pointer;height:var(--fd-control-height);line-height:var(--fd-control-height);text-align:center;width:100%}.x-datepicker .date-month .item-cell .cell-btn:hover,.x-datepicker .date-year .item-cell .cell-btn:hover{background:var(--fd-control-item-bg-hover)}.x-datepicker .date-month .item-cell .cell-btn.last-year,.x-datepicker .date-month .item-cell .cell-btn.next-year,.x-datepicker .date-year .item-cell .cell-btn.last-year,.x-datepicker .date-year .item-cell .cell-btn.next-year{color:var(--fd-color-text-disabled)}.x-datepicker .date-month .item-cell .cell-btn.select,.x-datepicker .date-year .item-cell .cell-btn.select{background:var(--fd-color-primary);color:var(--fd-color-text-light-solid)}.x-datepicker .date-month .item-cell .cell-btn.select.disabled,.x-datepicker .date-year .item-cell .cell-btn.select.disabled{background:var(--fd-control-item-bg-active-disabled)}.x-datepicker .date-month .item-cell .cell-btn.disabled,.x-datepicker .date-month .item-cell .cell-btn.disabled:hover,.x-datepicker .date-year .item-cell .cell-btn.disabled,.x-datepicker .date-year .item-cell .cell-btn.disabled:hover{background:none;color:var(--fd-color-text-disabled)}.x-datepicker .date-foot{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;border-top:1px solid var(--fd-color-split);display:flex;height:40px;justify-content:space-between;padding:0 10px;position:relative}.x-datepicker .date-foot.multi-pane{display:none}.x-date-input{height:100%;width:100%}.x-date-input.read-only .x-inner-wrapper input{cursor:pointer}.x-date-input .x-inner-wrapper{border:none!important;border-radius:0}.x-datetime{color:var(--fd-color-text);cursor:pointer;position:relative;width:280px}.x-datetime *,.x-datetime :after,.x-datetime :before{box-sizing:border-box}.x-datetime .datetime-label{border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);cursor:pointer;height:var(--fd-control-height);line-height:calc(var(--fd-control-height) - 2px);overflow:hidden;padding-right:calc(var(--fd-padding) + var(--fd-gap-sm) + var(--fd-font-size-lg));transition:border-color .2s ease;width:100%}.x-datetime .datetime-label.no-border{border-color:transparent!important;box-shadow:none!important}.x-datetime .datetime-label.status-error{border-color:var(--fd-color-error)!important}.x-datetime .datetime-label.status-success{border-color:var(--fd-color-success)!important}.x-datetime .datetime-label.status-warning{border-color:var(--fd-color-warning)!important}.x-datetime .datetime-label input{padding-right:0!important}.x-datetime .datetime-label:focus{border-color:var(--fd-color-primary);outline:none}.x-datetime .datetime-label:focus .datetime-icon{color:var(--fd-color-primary)}.x-datetime .clear-icon,.x-datetime .datetime-icon{color:var(--fd-color-icon-normal);font-size:var(--fd-font-size-lg);font-style:normal;line-height:var(--fd-control-height);padding:0 var(--fd-padding) 0 var(--fd-gap-sm);position:absolute;right:0;text-align:center;top:0;transition:color .2s ease}.x-datetime .clear-icon{color:var(--fd-color-icon);display:none}.x-datetime .clear-icon:hover{color:var(--fd-color-icon-hover)}.x-datetime.select .datetime-label,.x-datetime:hover .datetime-label{border-color:var(--fd-color-primary)}.x-datetime.select .x-inner-wrapper,.x-datetime:hover .x-inner-wrapper{box-shadow:none!important}.x-datetime.select .datetime-label{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline)}.x-datetime.select .datetime-label.status-error{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-error-outline)}.x-datetime.select .datetime-label.status-warning{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-warning-outline)}.x-datetime.disable{cursor:not-allowed}.x-datetime.disable .datetime-label{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border);cursor:not-allowed}.x-datetime.disable .datetime-label .x-inner-wrapper{background-color:transparent}.x-datetime.disable .datetime-label:hover{border-color:var(--fd-color-border)}.x-datetime.disable .datetime-icon{color:var(--fd-color-text-disabled)}.x-datetime.has-clear.value:not(.disable):hover .clear-icon{display:block}.x-datetime.has-clear.value:not(.disable):hover .datetime-icon{display:none}.x-datetime-content{cursor:auto;display:inline-block;width:auto}.x-datetime-bottom-appear,.x-datetime-bottom-enter{animation:x-slide-down .2s ease;animation-fill-mode:forwards;transform-origin:top}.x-datetime-bottom-exit{animation:x-slide-down .2s ease-in reverse;animation-fill-mode:forwards;transform-origin:top}.x-datetime-top-appear,.x-datetime-top-enter{animation:x-slide-down .2s ease;animation-fill-mode:forwards;transform-origin:bottom}.x-datetime-top-exit{animation:x-slide-down .2s reverse;animation-fill-mode:forwards;transform-origin:bottom}.x-date-range{align-items:center;border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);color:var(--fd-color-text);cursor:pointer;display:inline-flex;height:var(--fd-control-height);padding:var(--fd-padding-xs) var(--fd-padding);padding-right:30px;position:relative;width:360px}.x-date-range,.x-date-range *,.x-date-range :after,.x-date-range :before{box-sizing:border-box}.x-date-range ol,.x-date-range ul{margin:0;padding:0}.x-date-range li{list-style-type:none}.x-date-range.focused{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline)}.x-date-range.focused .active-bar{opacity:1}.x-date-range.focused.status-error{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-error-outline)}.x-date-range.focused.status-warning{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-warning-outline)}.x-date-range.status-error{border-color:var(--fd-color-error)!important}.x-date-range.status-success{border-color:var(--fd-color-success)!important}.x-date-range.status-warning{border-color:var(--fd-color-warning)!important}.x-date-range .active-bar{background:var(--fd-color-primary);bottom:0;height:2px;margin-left:var(--fd-padding);opacity:0;pointer-events:none}.x-date-range .range-input{align-items:center;color:var(--fd-color-text);display:inline-flex;width:100%}.x-date-range .range-input.range-input-placeholder>input{color:var(--fd-color-text-placeholder)}.x-date-range .range-input>input{-webkit-box-flex:1;background:0 0;background-image:none;border:0;border-radius:var(--fd-border-radius);display:inline-block;flex:auto;font-size:var(--fd-font-size);height:auto;line-height:var(--fd-line-height);min-width:0;padding:0;position:relative;text-overflow:ellipsis;transition:all .3s;width:100%}.x-date-range .range-input>input:focus{outline:none}.x-date-range .range-separator{align-items:center;padding:0 8px}.x-date-range .range-separator>span{color:var(--fd-color-text-placeholder);display:inline-block;font-size:var(--fd-font-size-lg)}.x-date-range .datetime-label{align-items:center;border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);cursor:pointer;display:flex;height:var(--fd-control-height);line-height:calc(var(--fd-control-height) - 2px);padding-left:var(--fd-padding);padding-right:calc(var(--fd-control-height) - 2px);transition:border-color .2s ease;width:100%}.x-date-range .datetime-label .datetime-end-label,.x-date-range .datetime-label .datetime-start-label{flex:auto}.x-date-range .datetime-label .label-split{flex:none;margin:0 5px;width:14px}.x-date-range .datetime-label .placeholder{color:var(--fd-color-text-placeholder);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-date-range .clear-icon,.x-date-range .datetime-icon{color:var(--fd-color-icon-normal);font-size:var(--fd-font-size-lg);font-style:normal;line-height:calc(var(--fd-control-height) - 2px);position:absolute;right:0;text-align:center;top:0;transition:color .2s ease;width:calc(var(--fd-control-height) - 2px)}.x-date-range .clear-icon{background-color:var(--fd-color-bg-container);border-radius:var(--fd-border-radius);color:var(--fd-color-icon);opacity:0}.x-date-range .clear-icon:hover{color:var(--fd-color-icon-hover)}.x-date-range.select .clear-icon,.x-date-range:hover .clear-icon{opacity:1}.x-date-range.select .datetime-label,.x-date-range:hover .datetime-label{border-color:var(--fd-color-primary)}.x-date-range.focused,.x-date-range:hover{border:1px solid;border-color:var(--fd-color-primary)}.x-date-range.disabled{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border);cursor:not-allowed}.x-date-range.disabled input{color:var(--fd-color-text-data-disabled);cursor:not-allowed!important}.x-date-range.disabled.focused,.x-date-range.disabled:hover{border-color:var(--fd-color-border)}.x-date-range.disabled .datetime-icon{color:var(--fd-color-text-disabled)}.x-date-range-picker{background:var(--fd-color-bg-container);border-radius:var(--fd-border-radius);box-shadow:0 9px 27px 8px #1f2d3d0a,0 6px 18px 2px #1f2d3d0f,0 3px 6px -4px #1f2d3d1a;color:var(--fd-color-text);display:inline-block;text-align:center}.x-date-range-picker .picker-panel{background:var(--fd-color-bg-container);border-radius:3px;display:inline-flex;flex-direction:column;outline:none;text-align:center}.x-date-range-picker .picker-date-panel,.x-date-range-picker .picker-month-panel,.x-date-range-picker .picker-time-panel,.x-date-range-picker .picker-year-panel{display:flex;flex-direction:column;width:280px}.x-date-range-picker .picker-panel-header{border-bottom:1px solid var(--fd-color-border);display:flex;padding:0 10px}.x-date-range-picker .picker-panel-header>*{flex:none}.x-date-range-picker .picker-panel-header .x-button{background:transparent;border:0;color:var(--fd-color-text);cursor:pointer;font-size:var(--fd-font-size);height:40px;line-height:40px;padding:0;transition:color .3s;width:auto}.x-date-range-picker .picker-panel-header .x-button:hover{color:var(--fd-color-primary)}.x-date-range-picker .picker-panel-header .picker-panel-header-view{-webkit-box-flex:1;color:var(--fd-color-text);flex:auto;font-weight:500;line-height:40px}.x-date-range-picker .picker-panel-header .picker-panel-header-view .x-button{color:inherit;font-weight:inherit}.x-date-range-picker .picker-panel-header .picker-panel-header-view .x-button:not(:first-child){margin-left:10px}.x-date-range-picker .picker-panel-header .picker-panel-header-view .x-button:hover{color:var(--fd-color-primary)}.x-date-range-picker .picker-panel-footer{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;border-top:1px solid var(--fd-color-border);display:flex;height:40px;justify-content:space-between;padding:0 15px}.x-date-range-picker .picker-panel-footer.single-btn{justify-content:center}.x-date-range-picker .panel-content{border-collapse:collapse;table-layout:fixed;width:100%}.x-date-range-picker .panel-content td,.x-date-range-picker .panel-content th{font-weight:400;min-width:var(--fd-control-height-sm);position:relative}.x-date-range-picker .panel-content th{height:var(--fd-control-height-sm);line-height:var(--fd-control-height-sm)}.x-date-range-picker .picker-panel>:not(.picker-date-panel) .in-range.range-hover-end:before,.x-date-range-picker .picker-panel>:not(.picker-date-panel) .in-range.range-hover-start:before{background:var(--fd-color-primary-bg-hover)}.x-date-range-picker .date-picker-cell{color:var(--fd-color-text-disabled);cursor:pointer;padding:4px 0}.x-date-range-picker .date-picker-cell.in-view{color:var(--fd-color-text)}.x-date-range-picker .date-picker-cell.disabled{color:var(--fd-color-text-disabled);cursor:not-allowed;pointer-events:none}.x-date-range-picker .date-picker-cell:before{content:"";height:var(--fd-control-height);left:0;position:absolute;right:0;z-index:1}.x-date-range-picker .date-picker-cell .date-picker-cell-inner{border-radius:var(--fd-border-radius);display:inline-block;height:var(--fd-control-height);line-height:var(--fd-control-height);min-width:var(--fd-control-height);position:relative;z-index:2}.x-date-range-picker .date-picker-cell:hover:not(.selected):not(.range-start):not(.range-end):not(.range-hover-start):not(.range-hover-end):not(.in-range) .date-picker-cell-inner{background:var(--fd-control-item-bg-hover)}.x-date-range-picker .date-picker-cell.today .date-picker-cell-inner:before{border:1px solid;border-color:var(--fd-color-primary);border-radius:var(--fd-border-radius);content:"";inset:0;position:absolute;z-index:1}.x-date-range-picker .date-picker-cell.in-range{position:relative}.x-date-range-picker .date-picker-cell.in-range:before{background:var(--fd-color-primary-bg)}.x-date-range-picker .date-picker-cell.range-end .date-picker-cell-inner,.x-date-range-picker .date-picker-cell.range-start .date-picker-cell-inner,.x-date-range-picker .date-picker-cell.selected .date-picker-cell-inner{background:var(--fd-color-primary);color:var(--fd-color-text-light-solid)}.x-date-range-picker .date-picker-cell.range-end:not(.range-end-single):before,.x-date-range-picker .date-picker-cell.range-start:not(.range-start-single):before{background:var(--fd-color-primary-bg)}.x-date-range-picker .date-picker-cell.range-start:before{left:50%}.x-date-range-picker .date-picker-cell.range-end:before{right:50%}.x-date-range-picker .date-picker-cell.range-hover-end.range-end-single:after,.x-date-range-picker .date-picker-cell.range-hover-end.range-start.range-end.range-start-near-hover:after,.x-date-range-picker .date-picker-cell.range-hover-end:not(.in-range):not(.range-start):not(.range-end):after,.x-date-range-picker .date-picker-cell.range-hover-start.range-start-single:after,.x-date-range-picker .date-picker-cell.range-hover-start.range-start.range-end.range-end-near-hover:after,.x-date-range-picker .date-picker-cell.range-hover-start:not(.in-range):not(.range-start):not(.range-end):after,.x-date-range-picker .date-picker-cell.range-hover:not(.in-range):after{border-bottom:1px dashed var(--fd-color-primary);border-top:1px dashed var(--fd-color-primary);content:"";height:var(--fd-control-height);position:absolute;top:50%;transform:translateY(-50%);z-index:0}.x-date-range-picker .date-picker-cell.range-hover-end:after,.x-date-range-picker .date-picker-cell.range-hover-start:after,.x-date-range-picker .date-picker-cell.range-hover:after{left:2px;right:0}.x-date-range-picker .date-picker-cell.in-range.range-hover:before,.x-date-range-picker .date-picker-cell.range-end.range-hover:before,.x-date-range-picker .date-picker-cell.range-end:not(.range-end-single).range-hover-end:before,.x-date-range-picker .date-picker-cell.range-start.range-hover:before,.x-date-range-picker .date-picker-cell.range-start:not(.range-start-single).range-hover-start:before{background:var(--fd-color-primary-bg-hover)}.x-date-range-picker .date-picker-cell.range-start:not(.range-start-single):not(.range-end) .date-picker-cell-inner{border-radius:var(--fd-border-radius) 0 0 var(--fd-border-radius)}.x-date-range-picker .date-picker-cell.range-end:not(.range-end-single):not(.range-start) .date-picker-cell-inner{border-radius:0 var(--fd-border-radius) var(--fd-border-radius) 0}.x-date-range-picker .date-picker-cell.range-hover.range-start:after{right:50%}.x-date-range-picker .date-picker-cell.range-hover.range-end:after{left:50%}.x-date-range-picker .date-picker-cell.range-hover-start:after{border-bottom-left-radius:var(--fd-border-radius);border-left:1px dashed;border-left-color:var(--fd-color-primary);border-top-left-radius:var(--fd-border-radius);left:6px}.x-date-range-picker .date-picker-cell.range-hover-end:after{border-bottom-right-radius:var(--fd-border-radius);border-right:1px dashed;border-right-color:var(--fd-color-primary);border-top-right-radius:var(--fd-border-radius);right:6px}.x-date-range-picker .picker-date-panel .panel-body{padding:var(--fd-padding-layout-sm)}.x-date-range-picker .picker-date-panel .panel-content{width:252px}.x-date-range-picker .picker-date-panel .panel-content th{width:36px}.x-date-range-picker .picker-date-panel .panel-content td,.x-date-range-picker .picker-date-panel .panel-content th{height:var(--fd-control-height-sm)}.x-date-range-picker .picker-date-panel .in-range.range-hover-end .date-picker-cell-inner:after,.x-date-range-picker .picker-date-panel .in-range.range-hover-start .date-picker-cell-inner:after{background:var(--fd-color-primary-bg-hover);bottom:0;content:"";position:absolute;top:0;z-index:-1}.x-date-range-picker .picker-date-panel .in-range.range-hover-start .date-picker-cell-inner:after{left:0;right:-6px}.x-date-range-picker .picker-date-panel .in-range.range-hover-end .date-picker-cell-inner:after{left:-6px;right:0}.x-date-range-picker .picker-date-panel .time-label{border-top:1px solid var(--fd-color-border);color:var(--fd-color-text);cursor:pointer;font-size:var(--fd-font-size);height:var(--fd-control-height);line-height:var(--fd-control-height);width:100%}.x-date-range-picker .picker-date-panel .time-label .right-outlined-icon{margin-left:5px}.x-date-range-picker .picker-month-panel .panel-content,.x-date-range-picker .picker-year-panel .panel-content{height:268px}.x-date-range-picker .picker-month-panel .panel-body,.x-date-range-picker .picker-year-panel .panel-body{padding:0 12px}.x-date-range-picker .picker-month-panel .date-picker-cell .date-picker-cell-inner,.x-date-range-picker .picker-month-panel .date-picker-cell:before,.x-date-range-picker .picker-year-panel .date-picker-cell .date-picker-cell-inner,.x-date-range-picker .picker-year-panel .date-picker-cell:before{height:var(--fd-control-height);line-height:var(--fd-control-height)}.x-date-range-picker .picker-month-panel .date-picker-cell .date-picker-cell-inner,.x-date-range-picker .picker-year-panel .date-picker-cell .date-picker-cell-inner{width:86px}.x-date-range-picker .picker-month-panel .cell-range-hover-start:after,.x-date-range-picker .picker-year-panel .cell-range-hover-start:after{border-left:1px dashed;border-left-color:var(--fd-color-primary);border-radius:var(--fd-border-radius) 0 0 var(--fd-border-radius);left:-.33333333px}.x-date-range-picker .picker-month-panel .cell-range-hover-end:after,.x-date-range-picker .picker-year-panel .cell-range-hover-end:after{border-radius:0 var(--fd-border-radius) var(--fd-border-radius) 0;border-right:1px dashed var(--fd-color-primary);right:-.33333333px}.x-date-range-picker .datetime-panel .date-picker-cell .date-picker-cell-inner,.x-date-range-picker .datetime-panel .date-picker-cell:before,.x-date-range-picker .picker-date-panel .date-picker-cell .date-picker-cell-inner,.x-date-range-picker .picker-date-panel .date-picker-cell:before{height:var(--fd-control-height-sm);line-height:var(--fd-control-height-sm);min-width:var(--fd-control-height-sm)}.x-date-range-picker .datetime-panel .date-picker-cell.range-hover-end.range-end-single:after,.x-date-range-picker .datetime-panel .date-picker-cell.range-hover-end.range-start.range-end.range-start-near-hover:after,.x-date-range-picker .datetime-panel .date-picker-cell.range-hover-end:not(.in-range):not(.range-start):not(.range-end):after,.x-date-range-picker .datetime-panel .date-picker-cell.range-hover-start.range-start-single:after,.x-date-range-picker .datetime-panel .date-picker-cell.range-hover-start.range-start.range-end.range-end-near-hover:after,.x-date-range-picker .datetime-panel .date-picker-cell.range-hover-start:not(.in-range):not(.range-start):not(.range-end):after,.x-date-range-picker .datetime-panel .date-picker-cell.range-hover:not(.in-range):after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover-end.range-end-single:after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover-end.range-start.range-end.range-start-near-hover:after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover-end:not(.in-range):not(.range-start):not(.range-end):after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover-start.range-start-single:after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover-start.range-start.range-end.range-end-near-hover:after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover-start:not(.in-range):not(.range-start):not(.range-end):after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover:not(.in-range):after{height:var(--fd-control-height-sm)}.x-date-range-picker .datetime-panel{display:flex}.x-date-range-picker .datetime-panel .time-panel,.x-date-range-picker .time-panel{border-left:1px solid var(--fd-color-border)}.x-date-range-picker .time-panel{min-width:auto;width:auto}.x-date-range-picker .time-panel .picker-panel-header{display:block}.x-date-range-picker .time-panel .picker-panel-header .picker-panel-header-view{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;align-items:center;display:flex;justify-content:space-evenly}.x-date-range-picker .time-panel .picker-panel-header .picker-panel-header-view .x-input{display:inline-block;margin:0 2px;vertical-align:middle;width:40px}.x-date-range-picker .time-panel .picker-panel-header .picker-panel-header-view .x-input input{font-weight:500}.x-date-range-picker .time-panel .time-panel-body{-webkit-box-flex:1;display:flex;flex:auto;height:274px}.x-date-range-picker .time-panel .time-panel-body.show-time-label{height:306px}.x-date-range-picker .time-panel .time-panel-body .time-column{-webkit-box-flex:1;display:flex;flex:1 0 auto;flex-direction:column;list-style:none;overflow-y:hidden;width:56px}.x-date-range-picker .time-panel .time-panel-body .time-column:not(:first-child){border-left:1px solid var(--fd-color-border)}.x-date-range-picker .time-panel .time-panel-body .time-column .label{-webkit-box-flex:0;color:var(--fd-color-text);flex:none;font-size:var(--fd-font-size);font-weight:400;height:24px;line-height:24px;margin-top:4px}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll{flex:1;overflow-y:hidden;padding:0 4px}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll:after{content:"";display:block;height:calc(100% - 26px)}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll::-webkit-scrollbar{width:0}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll:hover{overflow-y:auto}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll .time-column-cell{border-radius:var(--fd-border-radius-sm);cursor:pointer;height:var(--fd-control-height-sm);line-height:var(--fd-control-height-sm);margin-top:var(--fd-gap-sm);overflow:hidden}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll .time-column-cell:hover .inner{background:var(--fd-control-item-bg-hover)}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll .time-column-cell.selected .inner{background:var(--fd-color-primary-bg)}.x-date-range-trigger-content{cursor:auto;display:inline-block;width:auto}.x-date-range-trigger-bottom-appear,.x-date-range-trigger-bottom-enter{animation:x-slide-down .2s ease;animation-fill-mode:forwards;transform-origin:top}.x-date-range-trigger-bottom-exit{animation:x-slide-down .2s ease-in reverse;animation-fill-mode:forwards;transform-origin:top}.x-date-range-trigger-top-appear,.x-date-range-trigger-top-enter{animation:x-slide-down .2s ease;animation-fill-mode:forwards;transform-origin:bottom}.x-date-range-trigger-top-exit{animation:x-slide-down .2s reverse;animation-fill-mode:forwards;transform-origin:bottom}.x-dialog-modeless{display:none;height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:2500}.x-dialog-modeless .content-wrapper{pointer-events:auto}.x-dialog{inset:0;position:absolute}.x-dialog *,.x-dialog :after,.x-dialog :before{box-sizing:border-box}.x-dialog .content-wrapper{background:var(--fd-color-bg-elevater);border-radius:var(--fd-border-radius-xl);box-shadow:0 9px 28px 8px #0000000d,0 3px 6px -4px #0000001f,0 6px 16px #00000014;display:flex;flex-direction:column;height:500px;margin:auto;position:relative;width:500px;z-index:2500}.x-dialog.theme-classic .dialog-header{background:var(--fd-color-fill-quaternary);border-bottom-color:transparent}.x-dialog.theme-classic .dialog-content{padding-bottom:0!important}.x-dialog.fade-down.dialog-content-appear,.x-dialog.fade-down.dialog-content-enter{animation:x-fade-down .3s ease-out;pointer-events:none}.x-dialog.fade-down.dialog-content-exit{animation:x-fade-down .2s ease-in reverse;pointer-events:none}.x-dialog.fade-down.dialog-content-exit-done{display:none}.x-dialog.zoom-in.dialog-content-appear,.x-dialog.zoom-in.dialog-content-enter{animation:x-zoom-in-big .2s ease;pointer-events:none}.x-dialog.zoom-in.dialog-content-exit{animation:x-zoom-in-big .1s ease-in reverse;pointer-events:none}.x-dialog.zoom-in.dialog-content-exit-done{display:none}.x-dialog .dialog-header{-webkit-box-flex:0;-webkit-box-pack:justify;-ms-flex-pack:justify;border-bottom:1px solid var(--fd-color-border);display:flex;flex:0 0 auto;justify-content:space-between;max-height:80px;padding:var(--fd-padding-layout) var(--fd-padding-layout-lg);position:relative}.x-dialog .dialog-header .dialog-title{-webkit-box-flex:1;align-items:flex-end;display:flex;flex:1 1 auto;overflow:hidden}.x-dialog .dialog-header .dialog-title.align-center{justify-content:center}.x-dialog .dialog-header .dialog-title.draggable{cursor:move}.x-dialog .dialog-header .dialog-title .main-title{-webkit-box-flex:0;color:var(--fd-color-text);flex:0 0 auto;font-size:var(--fd-font-size-xl);font-weight:700;line-height:var(--fd-line-height-xl);margin-right:var(--fd-gap-xl)}.x-dialog .dialog-header .dialog-title .sub-title{color:var(--fd-color-text-description);font-size:var(--fd-font-size);line-height:var(--fd-line-height);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-dialog .dialog-header-buttons{-webkit-box-flex:0;align-items:center;display:flex;flex:0 0 auto;font-size:var(--fd-font-size)}.x-dialog .dialog-header-buttons .close-btn{color:var(--fd-color-text)}.x-dialog .dialog-header-buttons.no-header{position:absolute;right:var(--fd-padding-layout-lg);top:var(--fd-padding-layout)}.x-dialog .dialog-content{flex:1 1 auto;height:100%;overflow:auto}.x-dialog .dialog-content.has-separator{padding-bottom:var(--fd-padding-layout-lg)}.x-dialog .has-padding{padding-left:var(--fd-padding-layout-lg);padding-right:var(--fd-padding-layout-lg);padding-top:var(--fd-padding-layout-lg)}.x-dialog .dialog-footer{-webkit-box-flex:0;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;display:flex;flex:0 0 auto;justify-content:space-between;max-height:80px;padding:var(--fd-padding-layout-sm) var(--fd-padding-layout-lg)}.x-dialog .dialog-footer.has-separator{border-top:1px solid var(--fd-color-border)}.x-dialog .dialog-footer .footer-right .footer-btn{margin-left:var(--fd-gap-xl)}.x-window-mask{inset:0;overflow:auto;position:fixed;z-index:1002}.x-window-mask *,.x-window-mask :after,.x-window-mask :before{box-sizing:border-box}.x-window-mask .x-mask{background-color:var(--fd-color-bg-mask);inset:0;pointer-events:none;position:fixed;z-index:-1}.x-window-mask.mask-appear,.x-window-mask.mask-enter{opacity:0}.x-window-mask.mask-appear-active,.x-window-mask.mask-enter-active{opacity:1;transition:opacity .2s ease}.x-window-mask.mask-mask-exit{opacity:1}.x-window-mask.mask-exit-active{opacity:0;transition:opacity .1s ease-in}.x-window-mask.mask-exit-done{display:none}.x-form{color:var(--fd-color-text)}.x-form *,.x-form :after,.x-form :before{box-sizing:border-box}.x-form .x-form-item{display:flex;line-height:32px;margin-bottom:30px}.x-form .x-form-item.is-hidden{display:none}.x-form .x-form-item .form-item-label{flex:none;padding-right:12px;text-align:right}.x-form .x-form-item .form-item-label .required-tip{color:var(--fd-color-error);font-weight:700}.x-form .x-form-item .form-item-content{flex:auto;position:relative}.x-form .x-form-item .form-item-content .form-item-error{color:var(--fd-color-error);font-size:var(--fd-font-size-sm);left:0;line-height:1;padding-top:4px;position:absolute;top:100%}.x-form .x-form-item .form-item-content .form-item-extra{color:var(--fd-color-text-description);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-form-vertical .x-form-item{flex-direction:column;margin-bottom:15px}.x-form-vertical .x-form-item .form-item-label{text-align:left}.x-form-vertical .x-form-item .form-item-content .form-item-error{position:static}.x-form-inline{display:flex;flex-wrap:wrap}.x-form-inline .x-form-item{margin-bottom:20px;margin-right:40px}.x-form-inline .x-form-item .form-item-content .form-item-error{position:static}.x-prompt{background:var(--fd-color-bg-elevater);border-radius:var(--fd-border-radius-lg);box-shadow:0 9px 28px 8px #0000000d,0 3px 6px -4px #0000001f,0 6px 16px #00000014;margin:7% auto 0;min-height:152px;padding:var(--fd-padding-layout-xl);width:400px}.x-prompt *,.x-prompt :after,.x-prompt :before{box-sizing:border-box}.x-prompt.prompt-appear,.x-prompt.prompt-enter{animation:x-fade-down .2s ease;pointer-events:none}.x-prompt.prompt-exit{animation:x-fade-down .1s ease reverse;pointer-events:none}.x-prompt .title{color:var(--fd-color-text);font-size:var(--fd-font-size-lg);font-weight:600;line-height:var(--fd-line-height-lg);margin-bottom:var(--fd-gap)}.x-prompt .prompt-input{height:var(--fd-control-height);margin-bottom:var(--fd-gap-xl);width:100%}.x-prompt .prompt-footer:after,.x-prompt .prompt-footer:before{content:" ";display:table;line-height:0}.x-prompt .prompt-footer:after{clear:both}.x-prompt .prompt-footer .footer-btn{float:right;margin-left:var(--fd-gap-xl)}.x-prompt .prompt-footer .footer-btn:last-child{margin-left:0}.x-pop-confirm{display:block;max-width:300px;min-width:200px;position:absolute}.x-pop-confirm *,.x-pop-confirm :after,.x-pop-confirm :before{box-sizing:border-box}.x-pop-confirm-hidden{display:none}.x-pop-confirm-popup{background:var(--fd-color-bg-elevater);border-radius:var(--fd-border-radius-lg);box-shadow:0 9px 28px 8px #0000000d,0 3px 6px -4px #0000001f,0 6px 16px #00000014;color:var(--fd-color-text);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);padding:var(--fd-padding-layout-sm)}.x-pop-confirm-popup *,.x-pop-confirm-popup :after,.x-pop-confirm-popup :before{box-sizing:border-box}.x-pop-confirm-popup .pop-confirm-footer{margin-top:var(--fd-gap)}.x-pop-confirm-popup .pop-confirm-footer:after,.x-pop-confirm-popup .pop-confirm-footer:before{content:" ";display:table;line-height:0}.x-pop-confirm-popup .pop-confirm-footer:after{clear:both}.x-pop-confirm-popup .pop-confirm-footer .footer-btn{float:right;margin-left:var(--fd-gap)}.x-pop-confirm-popup .pop-confirm-footer .footer-btn:last-child{margin-left:0}.x-pop-confirm .pop-confirm-arrow{display:block;height:12px;overflow:hidden;pointer-events:none;position:absolute;width:12px;z-index:1}.x-pop-confirm .pop-confirm-arrow.no-arrow{display:none!important}.x-pop-confirm .pop-confirm-arrow:before{background:#fff;bottom:0;clip-path:polygon(1.65685425px 100%,50% 1.65685425px,10.34314575px 100%,1.65685425px 100%);clip-path:path("M 0 6 A 4 4 0 0 0 2.82842712474619 4.82842712474619 L 4.585786437626905 3.0710678118654755 A 2 2 0 0 1 7.414213562373095 3.0710678118654755 L 9.17157287525381 4.82842712474619 A 4 4 0 0 0 12 6 Z");content:"";height:6px;inset-inline-start:0;position:absolute;width:12px}.x-pop-confirm .pop-confirm-arrow:after{background:transparent;border-radius:0 0 2px;bottom:0;box-shadow:2px 2px 5px #0000000d;content:"";height:6.14213562px;inset-inline:0;margin:auto;position:absolute;transform:translateY(50%) rotate(-135deg);width:6.14213562px;z-index:0}.x-pop-confirm.placement-top .pop-confirm-arrow,.x-pop-confirm.placement-top-left .pop-confirm-arrow,.x-pop-confirm.placement-top-right .pop-confirm-arrow{bottom:0;transform:translateY(100%) rotate(180deg)}.x-pop-confirm.placement-top .pop-confirm-arrow{left:50%;transform:translate(-50%) translateY(100%) rotate(180deg)}.x-pop-confirm.placement-top-left .pop-confirm-arrow{left:8px}.x-pop-confirm.placement-top-right .pop-confirm-arrow{right:8px}.x-pop-confirm.placement-bottom .pop-confirm-arrow,.x-pop-confirm.placement-bottom-left .pop-confirm-arrow,.x-pop-confirm.placement-bottom-right .pop-confirm-arrow{top:0;transform:translateY(-100%)}.x-pop-confirm.placement-bottom .pop-confirm-arrow{left:50%;transform:translate(-50%) translateY(-100%)}.x-pop-confirm.placement-bottom-left .pop-confirm-arrow{left:8px}.x-pop-confirm.placement-bottom-right .pop-confirm-arrow{right:8px}.x-pop-confirm.placement-left .pop-confirm-arrow,.x-pop-confirm.placement-left-bottom .pop-confirm-arrow,.x-pop-confirm.placement-left-top .pop-confirm-arrow{right:0;transform:translate(100%) rotate(90deg)}.x-pop-confirm.placement-left .pop-confirm-arrow{top:50%;transform:translateY(-50%) translate(100%) rotate(90deg)}.x-pop-confirm.placement-left-top .pop-confirm-arrow{top:8px}.x-pop-confirm.placement-left-bottom .pop-confirm-arrow{bottom:8px}.x-pop-confirm.placement-right .pop-confirm-arrow,.x-pop-confirm.placement-right-bottom .pop-confirm-arrow,.x-pop-confirm.placement-right-top .pop-confirm-arrow{left:0;transform:translate(-100%) rotate(-90deg)}.x-pop-confirm.placement-right .pop-confirm-arrow{top:50%;transform:translateY(-50%) translate(-100%) rotate(-90deg)}.x-pop-confirm.placement-right-top .pop-confirm-arrow{top:8px}.x-pop-confirm.placement-right-bottom .pop-confirm-arrow{bottom:8px}.x-pop-confirm-top-appear,.x-pop-confirm-top-enter{animation:x-move-bottom .2s ease;animation-fill-mode:forwards}.x-pop-confirm-top-exit{animation:x-move-bottom .1s ease-in reverse;animation-fill-mode:forwards}.x-pop-confirm-right-appear,.x-pop-confirm-right-enter{animation:x-move-left .2s ease;animation-fill-mode:forwards}.x-pop-confirm-right-exit{animation:x-move-left .1s ease-in reverse;animation-fill-mode:forwards}.x-pop-confirm-bottom-appear,.x-pop-confirm-bottom-enter{animation:x-move-top .2s ease;animation-fill-mode:forwards}.x-pop-confirm-bottom-exit{animation:x-move-top .1s ease-in reverse;animation-fill-mode:forwards}.x-pop-confirm-left-appear,.x-pop-confirm-left-enter{animation:x-move-right .2s ease;animation-fill-mode:forwards}.x-pop-confirm-left-exit{animation:x-move-right .1s ease-in reverse;animation-fill-mode:forwards}.x-file-preview{background:rgba(0,0,0,.7);color:#e6e6e6;inset:0;position:fixed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1002}.x-file-preview *,.x-file-preview :after,.x-file-preview :before{box-sizing:border-box}.x-file-preview img{border:0;outline:none}.x-file-preview.file-preview-enter{opacity:0}.x-file-preview.file-preview-enter-active{opacity:1;transition:opacity .2s ease-in-out}.x-file-preview.file-preview-exit-active{opacity:0;transition:opacity .2s ease-in-out}.x-file-preview .preview-header{background:rgba(0,0,0,.6);color:#fff;height:50px;line-height:50px;position:relative}.x-file-preview .preview-header .file-counter{color:#b5b8be;display:inline-block;padding-left:20px}.x-file-preview .preview-header .file-name{display:inline-block;inset:0 200px 0 60px;overflow:hidden;position:absolute;text-overflow:ellipsis;white-space:nowrap}.x-file-preview .preview-header .download-btn{color:inherit;display:block;font-size:15px;height:50px;outline:none;padding:0 20px;position:absolute;right:50px;text-decoration:none;top:0;transition:all .2s ease}.x-file-preview .preview-header .download-btn>i{font-size:20px}.x-file-preview .preview-header .download-btn:hover{background:#000}.x-file-preview .preview-header .close-btn{cursor:pointer;font-size:20px;height:50px;position:absolute;right:0;text-align:center;top:0;transition:all .2s ease;width:50px}.x-file-preview .preview-header .close-btn:hover{background:#000}.x-file-preview .preview-body{inset:50px 0 0;overflow:hidden;position:absolute}.x-file-preview .preview-body .preview-center{inset:0;margin:auto;max-height:100%;max-width:80%;position:absolute}.x-file-preview .preview-body .preview-image{background:#fff;cursor:pointer;transition:transform .2s linear}.x-file-preview .preview-body .preview-image.invisible{visibility:hidden}.x-file-preview .preview-body .preview-iframe{height:100%;width:100%}.x-file-preview .preview-body .preview-video{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center}.x-file-preview .preview-body .preview-video video{max-height:100%;max-width:100%}.x-file-preview .preview-body .preview-audio,.x-file-preview .preview-body .preview-other{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center}.x-file-preview .preview-body .arrow-wrapper{bottom:0;cursor:pointer;position:absolute;text-align:center;top:0;width:100px;z-index:2}.x-file-preview .preview-body .arrow-wrapper:hover .arrow-left,.x-file-preview .preview-body .arrow-wrapper:hover .arrow-right{background:var(--fd-color-brand-6,#00b899)}.x-file-preview .preview-body .arrow-wrapper.left{left:0}.x-file-preview .preview-body .arrow-wrapper.right{right:0}.x-file-preview .preview-body .arrow-wrapper .arrow-left,.x-file-preview .preview-body .arrow-wrapper .arrow-right{background-color:#00000080;border-radius:50%;color:#fff;display:block;font-size:30px;height:70px;inset:0;line-height:70px;margin:auto;position:absolute;text-align:center;transition:all .2s ease;width:70px}.x-file-preview .preview-body .x-spin{background:transparent;left:100px;right:100px;z-index:2}.x-file-preview .preview-body .preview-control{bottom:40px;color:#fff;line-height:normal;position:absolute;text-align:center;width:100%}.x-file-preview .preview-body .preview-control .control-content{background:rgba(0,0,0,.6);border-radius:6px;display:inline-block;height:50px;line-height:50px;overflow:hidden}.x-file-preview .preview-body .preview-control .control-content .scale-val,.x-file-preview .preview-body .preview-control .control-content>i{display:inline-block;text-align:center;vertical-align:top;width:50px}.x-file-preview .preview-body .preview-control .control-content>i{cursor:pointer;font-size:24px;transition:all .2s ease}.x-file-preview .preview-body .preview-control .control-content>i:hover{background:#000}.x-file-preview .preview-body .preview-control .control-content>i.rotate.anti{transform:rotateY(180deg)}.x-label{color:var(--fd-color-brand-6,#00b899)}.x-label *,.x-label :after,.x-label :before{box-sizing:border-box}.x-list{border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);color:var(--fd-color-text);line-height:var(--fd-line-height);overflow:auto;position:relative}.x-list *,.x-list :after,.x-list :before{box-sizing:border-box}.x-list ol,.x-list ul{margin:0;padding:0}.x-list li{list-style-type:none}.x-list.size-large .list-item{padding:var(--fd-padding-xl) var(--fd-padding-3xl)}.x-list.size-small .list-item{padding:var(--fd-padding) var(--fd-padding-xl)}.x-list .list-item{line-height:inherit;overflow:hidden;padding:var(--fd-padding-lg) var(--fd-padding-3xl);text-overflow:ellipsis;white-space:nowrap}.x-spin{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center;inset:0;position:absolute}.x-spin *,.x-spin :after,.x-spin :before{box-sizing:border-box}@keyframes x-spin-scale{0%{transform:scale(0)}50%{transform:scale(1)}to{transform:scale(0)}}@keyframes x-spin-roll{to{transform:rotate(405deg)}}.x-spin .spin-content{text-align:center}.x-spin .spin-content .spin-indicator.rotate{animation:x-rotate .8s cubic-bezier(.43,.1,.54,.85) infinite;border:2px solid;border-color:var(--fd-color-primary-bg);border-radius:50%;border-top-color:var(--fd-color-primary);height:var(--fd-spin-height);margin:0 auto;transform-origin:center;width:var(--fd-spin-height)}.x-spin .spin-content .spin-indicator.scale .point{animation:x-spin-scale 1.2s ease-in-out infinite;background:var(--fd-color-primary);border-radius:50%;display:inline-block;height:10px;margin-right:var(--fd-gap);transform:scale(0);width:10px}.x-spin .spin-content .spin-indicator.scale .point.two{animation-delay:.1s}.x-spin .spin-content .spin-indicator.scale .point.three{animation-delay:.3s}.x-spin .spin-content .spin-indicator.scale .point.four{animation-delay:.5s}.x-spin .spin-content .spin-indicator.roll{animation:x-spin-roll 1.2s linear infinite;display:inline-block;height:20px;position:relative;transform:rotate(45deg);width:20px}.x-spin .spin-content .spin-indicator.roll .point{background-color:var(--fd-color-primary);border-radius:100%;display:block;height:9px;position:absolute;transform:scale(.75);transform-origin:50% 50%;width:9px}.x-spin .spin-content .spin-indicator.roll .point.one{left:0;opacity:.649;top:0}.x-spin .spin-content .spin-indicator.roll .point.two{animation-delay:.1s;opacity:.579;right:0;top:0}.x-spin .spin-content .spin-indicator.roll .point.three{animation-delay:.3s;bottom:0;left:0;opacity:.556}.x-spin .spin-content .spin-indicator.roll .point.four{animation-delay:.5s;bottom:0;opacity:.954;right:0}.x-spin .spin-content .spin-description{color:var(--fd-color-primary);font-size:var(--fd-font-size);line-height:var(--fd-line-height);margin-top:var(--fd-gap)}.x-spin.mask-light{background-color:#ffffffb3}.x-spin.mask-dark{background-color:#00000080}.x-spin.mask-dark .spin-content .spin-indicator.rotate{border-color:#fff hsla(0,0%,100%,.3) hsla(0,0%,100%,.3)}.x-spin.mask-dark .spin-content .spin-indicator.roll .point,.x-spin.mask-dark .spin-content .spin-indicator.scale .point{background-color:#fff}.x-spin.mask-dark .spin-content .spin-description{color:#fff}.x-spin.size-small .spin-content .spin-indicator.rotate{height:var(--fd-spin-height-sm);width:var(--fd-spin-height-sm)}.x-spin.size-small .spin-content .spin-indicator.roll .point,.x-spin.size-small .spin-content .spin-indicator.scale .point{height:6px;width:6px}.x-spin.size-small .spin-content .spin-indicator.roll{height:14px;width:14px}.x-spin.size-small .spin-content .spin-description{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);margin-top:var(--fd-gap-sm)}.x-spin.size-large .spin-content .spin-indicator.rotate{height:var(--fd-spin-height-lg);width:var(--fd-spin-height-lg)}.x-spin.size-large .spin-content .spin-indicator.roll .point,.x-spin.size-large .spin-content .spin-indicator.scale .point{height:14px;width:14px}.x-spin.size-large .spin-content .spin-indicator.roll{height:32px;width:32px}.x-spin.size-large .spin-content .spin-description{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg);margin-top:var(--fd-gap-xl)}.x-spin.is-full-screen{position:fixed;z-index:1002}.x-spin-nested-loading{position:relative}.x-spin-nested-loading>div>.x-spin{display:block;height:100%;inset-inline-start:0;max-height:400px;position:absolute;top:0;width:100%;z-index:4}.x-spin-nested-loading>div>.x-spin .spin-content>.spin-indicator{inset-inline-start:50%;margin:-10px;position:absolute;top:50%}.x-spin-nested-loading .x-spin-container{position:relative;transition:opacity .3s}.x-spin-nested-loading .x-spin-container:after{background:var(--fd-color-bg-container);content:"";height:100%;inset:0;opacity:0;pointer-events:none;position:absolute;transition:all .3s;width:100%;z-index:10}.x-spin-nested-loading .x-spin-blur{clear:both;opacity:.5;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-spin-nested-loading .x-spin-blur:after{opacity:.4;pointer-events:auto}.x-skeleton{display:flex;position:relative;width:100%}.x-skeleton *,.x-skeleton :after,.x-skeleton :before{box-sizing:border-box}.x-skeleton .x-skeleton-header{flex:none;height:100%;margin-right:20px;vertical-align:top}.x-skeleton.has-title .x-skeleton-content .x-skeleton-paragraph{margin-top:16px}.x-skeleton .x-skeleton-content{flex:1 1 auto;height:100%;vertical-align:top}.x-skeleton .x-skeleton-content .x-skeleton-paragraph,.x-skeleton .x-skeleton-content .x-skeleton-title{margin-top:8px}.x-skeleton-element{background:#f0f1f4;display:inline-block}.x-skeleton-element.active{animation:x-skeleton-animation 1.4s ease infinite;background-image:linear-gradient(90deg,#f0f1f4 25%,#e1e3e5 37%,#f0f1f4 63%);background-size:400% 100%}.x-skeleton-element.x-skeleton-button,.x-skeleton-element.x-skeleton-input,.x-skeleton-element.x-skeleton-node{height:32px}.x-skeleton-element.x-skeleton-node{border-radius:3px;width:64px}.x-skeleton-element.x-skeleton-node.shape-round{border-radius:32px}.x-skeleton-element.x-skeleton-node.shape-circle{border-radius:50%}.x-skeleton-element.x-skeleton-title{border-radius:3px;height:16px;width:45%}.x-skeleton-element.x-skeleton-button{border-radius:3px;width:64px}.x-skeleton-element.x-skeleton-button.block{width:100%!important}.x-skeleton-element.x-skeleton-button.shape-round{border-radius:32px}.x-skeleton-element.x-skeleton-button.size-sm{height:24px;width:48px}.x-skeleton-element.x-skeleton-button.size-sm.shape-round{border-radius:24px}.x-skeleton-element.x-skeleton-button.size-lg{height:36px;line-height:36px;min-width:80px;width:80px}.x-skeleton-element.x-skeleton-button.size-lg.shape-round{border-radius:36px}.x-skeleton-element.x-skeleton-input{border-radius:3px;width:160px}.x-skeleton-element.x-skeleton-input.block{width:100%!important}.x-skeleton-element.x-skeleton-input.size-sm{height:24px;width:120px}.x-skeleton-element.x-skeleton-input.size-lg{height:36px;width:200px}.x-skeleton-element.x-skeleton-avatar{border-radius:3px;height:32px;width:32px}.x-skeleton-element.x-skeleton-avatar.shape-circle{border-radius:50%}.x-skeleton-element.x-skeleton-avatar.size-sm{height:24px;width:24px}.x-skeleton-element.x-skeleton-avatar.size-lg{height:36px;width:36px}.x-skeleton-paragraph ol,.x-skeleton-paragraph ul{margin:0;padding:0}.x-skeleton-paragraph li{list-style-type:none}.x-skeleton-paragraph>li{background:#f0f1f4;border-radius:3px;height:16px;list-style:none;width:100%}.x-skeleton-paragraph>li+li{margin-top:20px}.x-skeleton-paragraph.active>li{animation:x-skeleton-animation 1.4s ease infinite;background-image:linear-gradient(90deg,#f0f1f4 25%,#e1e3e5 37%,#f0f1f4 63%);background-size:400% 100%}@keyframes x-skeleton-animation{0%{background-position:100% 0}to{background-position:0 0}}.x-alert{background:#fff;border-radius:var(--fd-border-radius-lg);box-shadow:0 9px 28px 8px #051e500a,0 3px 6px -4px #0516261f,0 6px 16px #05112a14;left:50%;line-height:normal;margin:-200px 0 0 -250px;overflow:hidden;padding:var(--fd-padding-layout-xl) var(--fd-padding-layout-xl);position:absolute;top:50%;width:480px}.x-alert *,.x-alert :after,.x-alert :before{box-sizing:border-box}.x-alert.alert-appear,.x-alert.alert-enter{animation:x-zoom-in-big .2s ease;pointer-events:none}.x-alert.alert-exit{animation:x-zoom-in-big .1s ease-in reverse;pointer-events:none}.x-alert>i{display:inline-block;font-size:var(--fd-line-height-lg);line-height:var(--fd-line-height-lg);vertical-align:top}.x-alert>i.x-svgicon>svg{vertical-align:baseline}.x-alert>i.info,.x-alert>i.query{color:var(--fd-color-info)}.x-alert>i.success{color:var(--fd-color-success)}.x-alert>i.error{color:var(--fd-color-error)}.x-alert>i.warning{color:var(--fd-color-warning)}.x-alert>i.question{color:var(--fd-color-info)}.x-alert .alert-body{display:inline-block;margin-bottom:var(--fd-gap-xl);margin-left:var(--fd-gap-xl);width:396px}.x-alert .alert-body .title{font-size:var(--fd-font-size-lg);font-weight:600;line-height:var(--fd-line-height-lg);margin:0 0 var(--fd-gap) 0}.x-alert .alert-body .message,.x-alert .alert-body .title{word-wrap:break-word;color:var(--fd-color-text);word-break:break-word}.x-alert .alert-body .message{font-size:var(--fd-font-size);line-height:var(--fd-line-height)}.x-alert .alert-body .content{margin-top:var(--fd-gap)}.x-alert .alert-body .question{margin-top:var(--fd-gap);width:100%}.x-alert .alert-footer .footer-btn{float:right;margin-left:var(--fd-gap)}.x-alert .alert-footer .footer-btn:last-child{margin-left:0}.x-alert .alert-footer .footer-right{margin-left:var(--fd-gap)}.x-alert .alert-footer .footer-left,.x-pagination{font-size:var(--fd-font-size);line-height:var(--fd-line-height)}.x-pagination{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;color:var(--fd-color-text);display:flex;justify-content:space-between}.x-pagination *,.x-pagination :after,.x-pagination :before{box-sizing:border-box}.x-pagination .pagination-left .count,.x-pagination .pagination-left .size-combo{display:inline-block;font-size:var(--fd-font-size-sm);vertical-align:middle}.x-pagination .pagination-left .size-combo{width:112px}.x-pagination .pagination-left .size-combo.default>.x-select-selector{border:none;box-shadow:none!important}.x-pagination .pagination-left .size-combo>.x-select-selector{background-color:unset}.x-pagination .pagination-left .count{margin-left:var(--fd-gap)}.x-pagination .pagination-right{align-items:center;display:flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-pagination .pagination-right .page-input-wrapper{display:inline-block;height:var(--fd-control-height);min-width:var(--fd-control-height);overflow:hidden;position:relative;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.x-pagination .pagination-right .page-input-wrapper .page-input{height:auto;inset:0;position:absolute;width:auto}.x-pagination .pagination-right .page-input-wrapper .page-input>input{background-color:unset;font-size:var(--fd-font-size);text-align:center}.x-pagination .pagination-right .page-input-wrapper .fake-placeholder{max-width:150px;padding:0 13px;visibility:hidden}.x-pagination .pagination-right .page-turn-first,.x-pagination .pagination-right .page-turn-last,.x-pagination .pagination-right .page-turn-next,.x-pagination .pagination-right .page-turn-pre{border-radius:var(--fd-border-radius);cursor:pointer;display:inline-block;font-size:14px;height:var(--fd-control-height);margin-left:0;padding:0;text-align:center;transition:all .2s ease;width:var(--fd-control-height)}.x-pagination .pagination-right .page-turn-first>i,.x-pagination .pagination-right .page-turn-last>i,.x-pagination .pagination-right .page-turn-next>i,.x-pagination .pagination-right .page-turn-pre>i{line-height:var(--fd-control-height)}.x-pagination .pagination-right .page-turn-first:not(.page-btn-disabled):hover,.x-pagination .pagination-right .page-turn-last:not(.page-btn-disabled):hover,.x-pagination .pagination-right .page-turn-next:not(.page-btn-disabled):hover,.x-pagination .pagination-right .page-turn-pre:not(.page-btn-disabled):hover{color:var(--fd-color-primary-hover)}.x-pagination .pagination-right .page-turn-first:not(.page-btn-disabled):active,.x-pagination .pagination-right .page-turn-last:not(.page-btn-disabled):active,.x-pagination .pagination-right .page-turn-next:not(.page-btn-disabled):active,.x-pagination .pagination-right .page-turn-pre:not(.page-btn-disabled):active{color:var(--fd-color-primary-active);transition:unset}.x-pagination .pagination-right .page-turn-first.page-btn-disabled,.x-pagination .pagination-right .page-turn-last.page-btn-disabled,.x-pagination .pagination-right .page-turn-next.page-btn-disabled,.x-pagination .pagination-right .page-turn-pre.page-btn-disabled{color:var(--fd-color-text-disabled);cursor:default}.x-pagination .pagination-right .bordered{border:none}.x-pagination .pagination-right .bordered.page-turn-first,.x-pagination .pagination-right .bordered.page-turn-last,.x-pagination .pagination-right .bordered.page-turn-next,.x-pagination .pagination-right .bordered.page-turn-pre{border:1px solid var(--fd-color-border);border-left-width:0}.x-pagination .pagination-right .bordered.page-turn-first:first-child,.x-pagination .pagination-right .bordered.page-turn-last:first-child,.x-pagination .pagination-right .bordered.page-turn-next:first-child,.x-pagination .pagination-right .bordered.page-turn-pre:first-child{border-left-width:1px}.x-pagination .pagination-right .bordered.page-turn-first>i,.x-pagination .pagination-right .bordered.page-turn-last>i,.x-pagination .pagination-right .bordered.page-turn-next>i,.x-pagination .pagination-right .bordered.page-turn-pre>i{line-height:calc(var(--fd-control-height) - 2px)}.x-pagination .pagination-right .bordered.page-btn-disabled{background-color:var(--fd-color-bg-container-disabled)}.x-pagination .pagination-right .jumpable .bordered.page-turn-first,.x-pagination .pagination-right .jumpable .bordered.page-turn-next{border-end-end-radius:0;border-start-end-radius:0}.x-pagination .pagination-right .jumpable .bordered.page-turn-last,.x-pagination .pagination-right .jumpable .bordered.page-turn-pre{border-end-start-radius:0;border-start-start-radius:0}.x-pagination .pagination-right .page-jump,.x-pagination .pagination-right .page-turn{-webkit-box-flex:0;align-items:center;display:flex;flex:none}.x-pagination .pagination-right .page-jump,.x-pagination .pagination-right .page-jump>.total-page{margin:0 var(--fd-gap-sm)}.x-pagination.small{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-pagination.small .size-combo{width:96px}.x-pagination.small .pagination-right .page-input-wrapper{height:var(--fd-control-height-sm);min-width:var(--fd-control-height-sm)}.x-pagination.small .page-turn-first,.x-pagination.small .page-turn-last,.x-pagination.small .page-turn-next,.x-pagination.small .page-turn-pre{height:var(--fd-control-height-sm);width:var(--fd-control-height-sm)}.x-pagination.small .page-turn-first>i,.x-pagination.small .page-turn-last>i,.x-pagination.small .page-turn-next>i,.x-pagination.small .page-turn-pre>i{line-height:var(--fd-control-height-sm)}.x-pagination.small .bordered.page-turn-first>i,.x-pagination.small .bordered.page-turn-last>i,.x-pagination.small .bordered.page-turn-next>i,.x-pagination.small .bordered.page-turn-pre>i{line-height:calc(var(--fd-control-height-sm) - 2px)}.x-radio{align-items:flex-start;color:var(--fd-color-text);display:flex;line-height:var(--fd-line-height)}.x-radio *,.x-radio :after,.x-radio :before{box-sizing:border-box}.x-radio.is-only-icon{align-items:center}.x-radio.has-default-padding{padding:var(--fd-radio-default-padding)}.x-radio:not(.auto-wrap) .x-radio-wrapper{min-width:0}.x-radio:not(.auto-wrap) .x-radio-wrapper .radio-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-radio .radio-check-icon{-webkit-box-flex:0;background:var(--fd-color-bg-container);border:1px solid var(--fd-color-border);display:inline-block;flex:0 0 auto;height:16px;margin:calc((var(--fd-line-height) - 16px)/2) 0;position:relative;vertical-align:middle;width:16px}.x-radio .radio-check-icon,.x-radio .radio-check-icon:before{border-radius:50%;transition:all .2s ease}.x-radio .radio-check-icon:before{background:var(--fd-color-primary);content:"";display:block;height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:0}.x-radio .radio-text{word-wrap:break-word;line-height:var(--fd-line-height);max-width:100%;padding-left:var(--fd-gap);vertical-align:middle;word-break:break-word}.x-radio .x-radio-wrapper{cursor:pointer;display:flex}.x-radio .x-radio-wrapper:focus{box-shadow:0 0 0 1px var(--fd-color-primary);outline:none}.x-radio .x-radio-wrapper:active{box-shadow:none}.x-radio .x-radio-wrapper:hover .radio-check-icon{border-color:var(--fd-color-primary)}.x-radio.radio-checked .radio-check-icon{background:var(--fd-color-bg-container);border-color:var(--fd-color-primary)}.x-radio.radio-checked .radio-check-icon:before{height:8px;width:8px}.x-radio.radio-disable,.x-radio.radio-disable .x-radio-wrapper{cursor:not-allowed}.x-radio.radio-disable .radio-check-icon{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important}.x-radio.radio-disable .radio-check-icon:before{background:transparent}.x-radio.radio-disable.radio-checked .radio-check-icon{background:var(--fd-color-bg-container-disabled)!important}.x-radio.radio-disable.radio-checked .radio-check-icon:before{background:var(--fd-color-text-disabled)!important}.x-radio.radio-disable .radio-text{color:var(--fd-color-text-data-disabled)!important}.x-radio-group{display:inline-block;max-width:100%}.x-radio-group.radio-group-horizontal{display:flex;flex-wrap:wrap}.x-radio-group.radio-group-horizontal.no-default-padding{row-gap:var(--fd-gap)}.x-radio-group.radio-group-horizontal.no-default-padding .x-radio{padding:0}.x-radio-group.radio-group-horizontal .x-radio{display:inline-flex;margin-right:var(--fd-gap-4xl);max-width:100%}.x-radio-group.radio-group-horizontal .x-radio:last-child{margin-right:0}.x-radio-group.radio-group-vertical.no-default-padding .x-radio:first-child{padding-top:0}.x-radio-group.radio-group-vertical.no-default-padding .x-radio:last-child{padding-bottom:0}.x-radio-group.radio-group-vertical.block{display:block}.x-radio-group.radio-group-vertical.block .x-radio-wrapper,.x-radio-group.radio-group-vertical.block .x-radio-wrapper .radio-text{flex:1}.x-radio-group.radio-group-option-button{border-radius:var(--fd-border-radius);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-radio-group.radio-group-option-button.radio-group-button-outline .x-radio.radio-checked:not(.radio-disable)+.x-radio{border-left-width:0}.x-radio-group.radio-group-option-button.radio-group-button-outline .x-radio.radio-checked:not(.radio-disable){border-right-width:1px}.x-radio-group.radio-group-option-button.block,.x-radio-group.radio-group-option-button.grid-mode{display:flex}.x-radio-group.radio-group-option-button.grid-mode{flex-direction:column}.x-radio-group.radio-group-option-button.grid-mode .radio-grid-row{display:flex}.x-radio-group.radio-group-option-button.grid-mode .radio-grid-row:first-child .x-radio{border-end-end-radius:0;border-end-start-radius:0}.x-radio-group.radio-group-option-button.grid-mode .radio-grid-row:last-child .x-radio{border-start-end-radius:0;border-start-start-radius:0}.x-radio-group.radio-group-option-button.block .x-radio{flex:1;min-width:0}.x-radio-group.radio-group-option-button.block .x-radio .x-radio-wrapper{justify-content:center}.x-radio-group.radio-group-option-button.block .x-radio .x-radio-wrapper .radio-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-radio-group.radio-group-option-button .x-radio{background-color:var(--fd-color-bg-container);border:1px solid var(--fd-color-border);border-right-width:0;color:var(--fd-color-text);cursor:pointer;display:inline-block;font-size:var(--fd-font-size);height:var(--fd-control-height);line-height:calc(var(--fd-control-height) - 2px);padding:0;position:relative;transition:color .2s,background .2s,box-shadow .2s}.x-radio-group.radio-group-option-button .x-radio .x-radio-wrapper{padding:0 var(--fd-padding-xl)}.x-radio-group.radio-group-option-button .x-radio .x-radio-wrapper .radio-text{line-height:inherit;padding-left:0}.x-radio-group.radio-group-option-button .x-radio .radio-check-icon{display:none}.x-radio-group.radio-group-option-button .x-radio:hover{color:var(--fd-color-primary)}.x-radio-group.radio-group-option-button .x-radio.radio-checked:not(.radio-disable){background:var(--fd-color-bg-container);border-color:var(--fd-color-primary);color:var(--fd-color-primary)}.x-radio-group.radio-group-option-button .x-radio.radio-checked:not(.radio-disable):first-child{border-color:var(--fd-color-primary)}.x-radio-group.radio-group-option-button .x-radio.radio-checked:not(.radio-disable):hover{border-color:var(--fd-color-primary-hover);color:var(--fd-color-primary-hover)}.x-radio-group.radio-group-option-button .x-radio.radio-checked:not(.radio-disable):active{border-color:var(--fd-color-primary-active);color:var(--fd-color-primary-active)}.x-radio-group.radio-group-option-button .x-radio:first-child{border-end-start-radius:var(--fd-border-radius);border-start-start-radius:var(--fd-border-radius)}.x-radio-group.radio-group-option-button .x-radio:last-child{border-end-end-radius:var(--fd-border-radius);border-right:1px solid var(--fd-color-border);border-start-end-radius:var(--fd-border-radius)}.x-radio-group.radio-group-option-button .x-radio:first-child:last-child{border-radius:var(--fd-border-radius)}.x-radio-group.radio-group-option-button.radio-group-button-solid .radio-checked:not(.radio-disable){background-color:var(--fd-color-primary);border-color:var(--fd-color-border);color:var(--fd-color-text-light-solid)}.x-radio-group.radio-group-option-button.radio-group-button-solid .radio-checked:not(.radio-disable):hover{background:var(--fd-color-primary-hover);border-color:var(--fd-color-primary-hover);color:var(--fd-color-text-light-solid)}.x-radio-group.radio-group-option-button.radio-group-button-solid .radio-checked:not(.radio-disable):active{background:var(--fd-color-primary-active);border-color:var(--fd-color-primary-active);color:var(--fd-color-text-light-solid)}.x-radio-group.radio-group-option-button.radio-group-disable{background-color:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important;cursor:not-allowed}.x-radio-group.radio-group-option-button.radio-group-disable .radio-checked{background-color:var(--fd-control-item-bg-active-disabled)!important}.x-radio-group.radio-group-option-button.radio-group-disable .x-radio .radio-text{color:var(--fd-color-text-disabled)!important}.x-radio-group.radio-group-option-button.large .x-radio{font-size:var(--fd-font-size-lg);height:var(--fd-control-height-lg);line-height:calc(var(--fd-control-height-lg) - 2px)}.x-radio-group.radio-group-option-button.large .x-radio:first-child{border-end-start-radius:var(--fd-border-radius);border-start-start-radius:var(--fd-border-radius)}.x-radio-group.radio-group-option-button.large .x-radio:last-child{border-end-end-radius:var(--fd-border-radius);border-start-end-radius:var(--fd-border-radius)}.x-radio-group.small .x-radio{font-size:var(--fd-font-size-sm);height:var(--fd-control-height-sm);line-height:calc(var(--fd-control-height-sm) - 2px)}.x-radio-group.small .x-radio .x-radio-wrapper{padding:0 var(--fd-padding)}.x-radio-group.small .x-radio:first-child{border-end-start-radius:var(--fd-border-radius);border-start-start-radius:var(--fd-border-radius)}.x-radio-group.small .x-radio:last-child{border-end-end-radius:var(--fd-border-radius);border-start-end-radius:var(--fd-border-radius)}.x-segment{color:#141e31;display:flex;line-height:30px;width:100%}.x-segment *,.x-segment :after,.x-segment :before{box-sizing:border-box}.x-segment .x-segment-item{-webkit-box-flex:0;background:#fff;border:1px solid #d7d9dc;border-right:none;cursor:pointer;flex:none;overflow:hidden;padding:0 15px;text-align:center;text-overflow:ellipsis;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.x-segment .x-segment-item:hover{color:var(--fd-color-brand-6,#00b899)}.x-segment .x-segment-item:first-child{border-bottom-left-radius:3px;border-top-left-radius:3px}.x-segment .x-segment-item:last-child{border-bottom-right-radius:3px;border-right:1px solid #d7d9dc;border-top-right-radius:3px}.x-segment .x-segment-item.item-selected{border-color:var(--fd-color-brand-6,#00b899);color:var(--fd-color-brand-6,#00b899)!important}.x-segment .x-segment-item.item-selected+.x-segment-item{border-left-color:var(--fd-color-brand-6,#00b899)}.x-segment .x-segment-item.item-disabled{background:#f0f1f4!important;color:#b5b8be!important;cursor:not-allowed}.x-segment .x-segment-item.item-disabled.item-selected{background:#fff!important;border-color:var(--fd-color-brand-3,#99e3d6);color:var(--fd-color-brand-3,#99e3d6)!important}.x-segment .x-segment-item.item-disabled.item-selected+.x-segment-item{border-left-color:var(--fd-color-brand-3,#99e3d6)}.x-segment.size-large{font-size:16px;line-height:38px}.x-segment.size-small{font-size:12px;line-height:22px}.x-cascader{color:var(--fd-color-text);cursor:pointer;display:inline-block;line-height:normal;width:240px}.x-cascader *,.x-cascader :after,.x-cascader :before{box-sizing:border-box}.x-cascader ol,.x-cascader ul{margin:0;padding:0}.x-cascader li{list-style-type:none}.x-cascader .label-wrapper:focus{outline:none}.x-cascader .label-wrapper:focus .trigger-wrapper:not(.disabled){border-color:var(--fd-color-primary)}.x-cascader .trigger-wrapper{border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);height:var(--fd-control-height);overflow:hidden;position:relative;transition:border .2s ease-in-out;width:100%}.x-cascader .trigger-wrapper.no-border{border-color:transparent!important;box-shadow:none!important}.x-cascader .trigger-wrapper.active,.x-cascader .trigger-wrapper:hover{border-color:var(--fd-color-primary)}.x-cascader .trigger-wrapper.active{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline)}.x-cascader .trigger-wrapper.disabled{color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-cascader .trigger-wrapper.disabled,.x-cascader .trigger-wrapper.disabled:hover{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border)}.x-cascader .trigger-wrapper.disabled .trigger-icon{color:var(--fd-color-text-disabled)}.x-cascader .trigger-wrapper.can-remove:not(.disabled):hover .trigger-icon.arrow{display:none}.x-cascader .trigger-wrapper.can-remove:not(.disabled):hover .trigger-icon.remove{display:inline-block}.x-cascader .trigger-wrapper .value{display:inline-block;height:100%;line-height:calc(var(--fd-control-height) - 2px);overflow:hidden;padding:0 var(--fd-control-height) 0 8px;text-overflow:ellipsis;white-space:nowrap;width:100%}.x-cascader .trigger-wrapper .value .placeholder{color:var(--fd-color-text-placeholder)}.x-cascader .trigger-wrapper .trigger-icon{color:var(--fd-color-icon-normal);display:inline-block;height:100%;position:absolute;right:0;top:0;width:var(--fd-control-height)}.x-cascader .trigger-wrapper .trigger-icon>i{font-size:var(--fd-icon-size);left:50%;line-height:calc(var(--fd-control-height) - 2px);position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%) rotate(0);transform-origin:center;transition:all .2s ease;width:var(--fd-control-height)}.x-cascader .trigger-wrapper .trigger-icon>i.close-btn{color:var(--fd-color-icon);transition:unset}.x-cascader .trigger-wrapper .trigger-icon>i.close-btn:hover{color:var(--fd-color-icon-hover)}.x-cascader .trigger-wrapper .trigger-icon.reverse>i{transform:translate(-50%,-50%) rotate(180deg)}.x-cascader .trigger-wrapper .trigger-icon.remove{display:none}.x-cascader-content{background:var(--fd-color-bg-container);border-radius:var(--fd-border-radius);color:var(--fd-color-text);display:inline-block;overflow:hidden;vertical-align:top;white-space:nowrap}.x-cascader-content .menu-items{border-right:1px solid var(--fd-color-split);display:inline-block;height:200px;overflow-x:hidden;overflow-y:auto;padding:var(--fd-padding-layout-2xs);vertical-align:top}.x-cascader-content .menu-items:last-child{border-right:none}.x-cascader-content .menu-items .cascader-item{border-radius:var(--fd-border-radius);cursor:pointer;line-height:var(--fd-control-height);max-width:240px;min-width:110px;overflow:hidden;padding:0 var(--fd-padding);position:relative;text-overflow:ellipsis;white-space:nowrap}.x-cascader-content .menu-items .cascader-item:hover{background:#f0f1f4}.x-cascader-content .menu-items .cascader-item.select{background:var(--fd-control-item-bg-active)}.x-cascader-content .menu-items .cascader-item.disabled{background:var(--fd-color-bg-container);color:var(--fd-color-text-disabled);cursor:default}.x-cascader-content .menu-items .cascader-item.disabled .expand-icon{color:var(--fd-color-text-disabled)}.x-cascader-content .menu-items .cascader-item.disabled:hover{background:var(--fd-color-bg-container);color:var(--fd-color-text-disabled)}.x-cascader-content .menu-items .cascader-item.has-expand-icon{padding-right:calc(var(--fd-icon-size) + var(--fd-padding))}.x-cascader-content .menu-items .cascader-item .expand-icon{color:var(--fd-color-icon-normal);font-size:var(--fd-icon-size);position:absolute;right:var(--fd-padding);top:0}.x-cascader-trigger-content{display:inline-block;z-index:1}.x-cascader-trigger-content .cascader-wrapper{border-radius:var(--fd-border-radius-lg);box-shadow:0 2px 8px #0000001a}.x-cascader-trigger-content .cascader-wrapper .search-wrapper{border-bottom:1px solid var(--fd-color-split);left:0;position:absolute;right:0;top:0}.x-cascader-trigger-content .cascader-wrapper .content-wrapper.has-search{padding-top:var(--fd-control-height)}.x-cascader-trigger-content .cascader-wrapper .content-wrapper .searching-tip{background:var(--fd-color-bg-container);color:var(--fd-color-text-placeholder);line-height:40px;text-align:center;width:240px}.x-cascader-trigger-bottom-appear,.x-cascader-trigger-bottom-enter{animation:x-slide-down .2s ease;animation-fill-mode:forwards;transform-origin:top}.x-cascader-trigger-bottom-exit{animation:x-slide-down .2s ease-in reverse;animation-fill-mode:forwards;transform-origin:top}.x-cascader-trigger-top-appear,.x-cascader-trigger-top-enter{animation:x-slide-down .2s ease;animation-fill-mode:forwards;transform-origin:bottom}.x-cascader-trigger-top-exit{animation:x-slide-down .2s ease-in reverse;animation-fill-mode:forwards;transform-origin:bottom}.x-cascader-search-list{background:var(--fd-color-bg-container);border-radius:var(--fd-border-radius);color:var(--fd-color-text);display:inline-block;max-height:200px;min-width:240px;overflow:auto;padding:var(--fd-padding) 0;vertical-align:top;white-space:nowrap}.x-cascader-search-list .empty-tip{color:var(--fd-color-text-description);line-height:40px;text-align:center;width:240px}.x-cascader-search-list .result-list .result-item{cursor:pointer;line-height:var(--fd-control-height);overflow:hidden;padding:0 var(--fd-padding);text-overflow:ellipsis;transition:background .2s ease;white-space:nowrap}.x-cascader-search-list .result-list .result-item .search-key{color:var(--fd-color-primary)}.x-cascader-search-list .result-list .result-item.is-focus{background:#f0f1f4}.x-step{display:flex;line-height:normal}.x-step *,.x-step :after,.x-step :before{box-sizing:border-box}.x-step .step{-webkit-box-flex:0;display:inline-block;flex:0 1 auto;position:relative}.x-step .step:last-child .step-line{display:none}.x-step .step.is-finish .step-container.is-icon .step-icon{color:var(--fd-color-primary)}.x-step .step.is-finish .step-container.is-text .step-icon{background-color:var(--fd-color-primary);color:var(--fd-color-text-light-solid)}.x-step .step.is-finish .step-container .step-line-inner{color:var(--fd-color-primary)}.x-step .step.is-finish .step-container:hover.is-text .step-icon{background-color:var(--fd-color-primary-hover)}.x-step .step.is-finish .step-container:hover .step-description,.x-step .step.is-finish .step-container:hover .step-title,.x-step .step.is-finish .step-container:hover.is-icon .step-icon{color:var(--fd-color-primary-hover)}.x-step .step.is-wait .step-container.is-icon .step-icon{color:var(--fd-color-icon-normal)}.x-step .step.is-wait .step-container.is-text .step-icon{background-color:var(--fd-color-fill-content);color:var(--fd-color-text-label)}.x-step .step.is-wait .step-container .step-line-inner{border-width:0;color:transparent}.x-step .step.is-wait .step-container:hover .step-icon{color:var(--fd-color-primary-hover)}.x-step .step.is-wait .step-container:hover.is-text .step-icon{border:1px solid var(--fd-color-primary-hover)}.x-step .step.is-wait .step-container:hover .step-description,.x-step .step.is-wait .step-container:hover .step-title{color:var(--fd-color-primary-hover)}.x-step .step.is-wait .step-main .step-description,.x-step .step.is-wait .step-main .step-title{color:var(--fd-color-text-description)}.x-step .step.is-process .step-container.is-icon .step-icon{color:var(--fd-color-primary)}.x-step .step.is-process .step-container.is-text .step-icon{background-color:var(--fd-color-primary);color:var(--fd-color-text-light-solid)}.x-step .step.is-process .step-container .step-line-inner{color:transparent}.x-step .step.is-process .step-container:hover.is-text .step-icon{background-color:var(--fd-color-primary-hover)}.x-step .step.is-process .step-container:hover .step-description,.x-step .step.is-process .step-container:hover .step-title,.x-step .step.is-process .step-container:hover.is-icon .step-icon{color:var(--fd-color-primary-hover)}.x-step .step.is-error .step-container.is-icon .step-icon{color:var(--fd-color-error)}.x-step .step.is-error .step-container.is-text .step-icon{background-color:var(--fd-color-error);color:var(--fd-color-text-light-solid)}.x-step .step.is-error .step-container .step-line-inner{border-width:0;color:var(--fd-color-primary)}.x-step .step.is-error .step-main .step-description,.x-step .step.is-error .step-main .step-title{color:var(--fd-color-error)}.x-step .step-container{font-size:var(--fd-font-size);line-height:var(--fd-line-height-lg);vertical-align:top;width:100%}.x-step .step-container.is-text .step-icon{border-radius:50%;border-style:solid;border-width:0}.x-step .step-container.is-icon{font-size:var(--fd-font-size)}.x-step .step-container.is-icon .step-icon{font-size:var(--fd-control-height);line-height:var(--fd-line-height-lg)}.x-step .step-main{color:var(--fd-color-text);font-size:var(--fd-font-size-lg)}.x-step .step-main .step-description{color:var(--fd-color-text);font-size:var(--fd-font-size-sm);margin-top:var(--fd-gap-sm)}.x-step .step-line{background-color:var(--fd-color-split);display:inline-block;position:absolute}.x-step .step-line .step-line-inner{border-style:solid;border-width:1px;display:block;width:100%}.x-step .step-icon{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:inline-flex;height:var(--fd-control-height);justify-content:center;position:relative;width:var(--fd-control-height)}.x-step .step-icon .step-icon-inner{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle}.x-step.is-vertical{flex-direction:column}.x-step.is-vertical .step{display:block}.x-step.is-vertical .step .step-line{bottom:0;left:calc(var(--fd-control-height)/2 - 1px);margin:var(--fd-gap) 0;top:var(--fd-control-height)}.x-step.is-vertical .step .step-main{display:inline-block;margin-left:var(--fd-gap)}.x-step.is-vertical .step .step-main .step-title{line-height:var(--fd-control-height)}.x-step.is-vertical .step:last-child{flex-basis:0!important}.x-step.is-vertical .step.is-finish .step-line-inner{height:100%}.x-step.is-vertical .step-container{display:flex}.x-step.is-vertical .step-container .step-main{flex:0 1 auto}.x-step.is-horizontal:not(.horizontal-label) .step .step-line{height:2px;left:var(--fd-control-height);margin:0 var(--fd-gap);right:0;top:calc(var(--fd-control-height)/2 - 1px)}.x-step.is-horizontal:not(.horizontal-label) .step .step-main{margin-top:var(--fd-gap-xl)}.x-step.is-horizontal:not(.horizontal-label) .step .step-main .step-description{line-height:var(--fd-line-height-sm);padding-right:30px}.x-step.is-horizontal:not(.horizontal-label) .step:last-child .step-main{padding-right:0}.x-step.auto-size .step{flex:1 1 0}.x-step.auto-size .step:last-child{flex:0 0 auto}.x-step.align-center:not(.horizontal-label) .step .step-line{left:50%;margin:0 var(--fd-padding-layout-xl);right:-50%}.x-step.align-center:not(.horizontal-label) .step .step-main{text-align:center}.x-step.align-center:not(.horizontal-label) .step .step-main .step-description{padding:0 var(--fd-padding-layout)}.x-step.align-center:not(.horizontal-label) .step:last-child{flex:0 1 auto}.x-step.align-center:not(.horizontal-label) .step-container{text-align:center}.x-step.horizontal-label .step:not(:first-child){padding-left:var(--fd-padding-layout)}.x-step.horizontal-label .step-container{line-height:32px;overflow:hidden;text-align:left;white-space:nowrap}.x-step.horizontal-label .step-container .step-icon{display:inline-block;line-height:32px;margin-right:var(--fd-gap);text-align:center}.x-step.horizontal-label .step-container .step-main{display:inline-block;margin-top:0;text-align:left;vertical-align:top}.x-step.horizontal-label .step-container .step-main .step-title{display:inline-block;padding-right:var(--fd-gap-2xl);position:relative}.x-step.horizontal-label .step-container .step-main .step-title .step-line{background-color:var(--fd-color-split);height:1px;left:0;margin-left:100%;position:absolute;top:16px;width:9999px}.x-step.horizontal-label .step-container .step-main .step-title .step-line.only-line{margin-left:50%}.x-step.horizontal-label .step-container .step-main .step-title:after{content:"";display:inline-block}.x-step.horizontal-label .step-container .step-main .step-title.last-title{padding-right:0}.x-step.horizontal-label .step-container .step-main .step-description{line-height:var(--fd-line-height-sm);margin-top:var(--fd-gap);max-width:140px;padding:0;white-space:normal}.x-step.horizontal-label .is-finish .step-container .step-main .step-title .step-line{background-color:var(--fd-color-primary)}.x-step.small .step-container{line-height:var(--fd-line-height)}.x-step.small .step-container,.x-step.small .step-container.is-icon{font-size:var(--fd-font-size-sm)}.x-step.small .step-container.is-icon .step-icon{font-size:24px;height:24px;line-height:var(--fd-line-height);width:24px}.x-step.small .step-main{font-size:var(--fd-font-size)}.x-step.small .step-icon{height:24px;width:24px}.x-step.small.is-horizontal:not(.horizontal-label) .step .step-line{height:2px;left:24px;top:11px}.x-step.small.align-center:not(.horizontal-label) .step .step-line{left:50%;margin:0 var(--fd-padding-layout-lg);right:-50%}.x-step.small.horizontal-label .step-container,.x-step.small.horizontal-label .step-container .step-icon{line-height:24px}.x-step.small.horizontal-label .step-container .step-main .step-title .step-line{top:12px}.x-step.small.horizontal-label .step-container .step-main .step-description{max-width:140px}.x-table{color:#141e31;font-size:13px;line-height:normal}.x-table *,.x-table :after,.x-table :before{box-sizing:border-box}.x-table.striped table tbody tr:nth-child(2n){background:#f5f6f8}.x-table.striped table tbody tr:hover{background:#f0f1f4}.x-table table{border-collapse:separate;border-spacing:0;width:100%}.x-table table thead{border-color:inherit;display:table-header-group}.x-table table thead th{background-color:#f5f6f8;border-bottom:1px solid #ebecee;border-top:1px solid #ebecee;padding:12px 10px;text-align:left;white-space:nowrap}.x-table table tbody{border-color:inherit;display:table-row-group}.x-table table tbody tr:hover{background:#f0f1f4}.x-table table tbody td{border-bottom:1px solid #ebecee;padding:12px 10px}.x-table.size-small td,.x-table.size-small th{padding:8px 10px}.x-table.size-large td,.x-table.size-large th{padding:16px 12px}.x-table.bordered{border-radius:3px;overflow:auto}.x-table.bordered td,.x-table.bordered th{border-right:1px solid #ebecee}.x-table.bordered td:first-child,.x-table.bordered th:first-child{border-left:1px solid #ebecee}.x-table.simple td,.x-table.simple th{border:none}.x-table td .fixed-width-cell-content,.x-table th .fixed-width-cell-content{overflow:hidden}.x-table td.patch-cell,.x-table th.patch-cell{border-left:none;border-right:none;min-width:0;padding:0;width:0}.x-table .x-table-check{margin:0}.x-table .x-table-check .check-label{-webkit-box-pack:center;-ms-flex-pack:center;display:flex;justify-content:center}.x-pagination-table .x-table-pagination{display:flex;flex-wrap:wrap;margin:var(--fd-gap) 0;row-gap:var(--fd-padding-xs)}.x-pagination-table .x-table-pagination>*{flex:none}.x-pagination-table .x-table-pagination-left{justify-content:flex-start}.x-pagination-table .x-table-pagination-center{justify-content:center}.x-pagination-table .x-table-pagination-right{justify-content:flex-end}.x-tab{color:var(--fd-color-text)}.x-tab *,.x-tab :after,.x-tab :before{box-sizing:border-box}.x-tab ol,.x-tab ul{margin:0;padding:0}.x-tab li{list-style-type:none}.x-tab .tab-header{display:flex;font-size:var(--fd-font-size);overflow:hidden;position:relative}.x-tab .tab-header .tab-header-box{flex:1 1 auto;height:100%;overflow:hidden}.x-tab .tab-header .tab-header-wrapper{height:100%;transition:transform .2s ease;white-space:nowrap}.x-tab .tab-header .tab-header-wrapper .tab-header-item{color:var(--fd-color-text);cursor:pointer;font-size:var(--fd-font-size);line-height:var(--fd-line-height);overflow:hidden;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-tab .tab-header .tab-header-wrapper .tab-header-item i{font-size:var(--fd-font-size-lg);margin-right:var(--fd-gap-sm)}.x-tab .tab-header .tab-header-wrapper .tab-header-item .tab-header-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-tab .tab-header .tab-header-wrapper .tab-header-item .tab-header-content .tab-content-inner{align-items:center;display:flex}.x-tab .tab-header .tab-header-wrapper .tab-header-item .tab-header-content .tab-content-inner .inner-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-tab .tab-header .tab-header-wrapper .tab-header-item.disabled{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-tab .tab-header .tab-header-wrapper .tab-header-item.tab-header-active,.x-tab .tab-header .tab-header-wrapper .tab-header-item:not(.disabled):hover{color:var(--fd-color-primary)}.x-tab.theme-default .tab-header-wrapper .tab-header-item:before{background:var(--fd-color-primary);content:"";display:block;position:absolute;transform:scaleY(0)}.x-tab.theme-default .tab-header-wrapper .tab-header-item.tab-header-active:before{transform:scaleY(1)}.x-tab.horizontal-tab .tab-header{border-bottom:1px solid var(--fd-color-border)}.x-tab.horizontal-tab .tab-header .tab-extra-content{align-items:center;bottom:0;display:flex;position:absolute;right:0;top:0}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow{background:var(--fd-color-bg-container);color:var(--fd-color-text);cursor:pointer;font-size:var(--fd-font-size-lg);width:30px}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow,.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow .arrow-icon{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow .arrow-icon{height:24px;width:24px}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow.prev{left:0}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow.next{right:0}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow:not(.disabled):hover .arrow-icon{background:var(--fd-color-bg-text-hover);border-radius:var(--fd-border-radius)}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow.disabled{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-tab.horizontal-tab .tab-header .tab-header-wrapper .tab-header-item{align-items:center;display:inline-flex;height:100%;max-width:300px;padding:var(--fd-padding-lg) 12px;transition:color .2s}.x-tab.horizontal-tab.theme-default .tab-header-wrapper .tab-header-item:before{bottom:0;height:2px;left:12px;opacity:0;right:12px;transform-origin:bottom;transition:all .3s ease-in}.x-tab.horizontal-tab.theme-default .tab-header-wrapper .tab-header-item.tab-header-active:before{opacity:1;transition:all .3s ease-out}.x-tab.horizontal-tab.theme-modern>.tab-header .tab-header-wrapper{padding:var(--fd-padding-layout-2xs) 0}.x-tab.horizontal-tab.theme-modern>.tab-header .tab-header-wrapper .tab-header-item{background:var(--fd-color-bg-container);border:1px solid var(--fd-color-border);border-radius:64px;height:var(--fd-control-height);margin:0 calc(var(--fd-gap-xl)/2);padding:0 var(--fd-padding-xl);transition:all .2s ease}.x-tab.horizontal-tab.theme-modern>.tab-header .tab-header-wrapper .tab-header-item:before{display:none}.x-tab.horizontal-tab.theme-modern>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled):hover{border-color:var(--fd-color-primary)}.x-tab.horizontal-tab.theme-modern>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active{background:var(--fd-color-primary);border-color:var(--fd-color-primary);color:#fff}.x-tab.horizontal-tab.theme-classic>.tab-header{border-bottom:none}.x-tab.horizontal-tab.theme-classic>.tab-header:before{background:var(--fd-color-border-secondary);bottom:0;content:"";display:block;height:1px;left:0;position:absolute;right:0}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-header-wrapper{align-items:flex-end;display:flex;padding-top:var(--fd-padding-layout-2xs)}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-header-wrapper .tab-header-item{-webkit-box-flex:0;background:var(--fd-color-fill-alter);border:1px solid var(--fd-color-border-secondary);border-radius:var(--fd-border-radius-lg) var(--fd-border-radius-lg) 0 0;flex:none;margin:0 var(--fd-gap-xs);padding:var(--fd-padding) var(--fd-padding-xl);transition:all .2s ease}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-header-wrapper .tab-header-item:before{display:none}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled):hover{color:var(--fd-color-primary)}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active{background:var(--fd-color-bg-container);border-bottom:1px solid #fff;color:var(--fd-color-primary)}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-arrow.prev{box-shadow:5px 0 9px #fff}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-arrow.next{box-shadow:-5px 0 9px #fff}.x-tab.horizontal-tab.theme-segment>.tab-header{background:var(--fd-color-fill-alter);border-bottom:none;border-radius:var(--fd-border-radius);box-shadow:none;height:var(--fd-control-height)}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper{display:flex;padding:var(--fd-padding-layout-3xs)}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .segment-animate-dot{background:var(--fd-color-bg-container);border-radius:var(--fd-border-radius-sm);bottom:var(--fd-padding-layout-3xs);box-shadow:0 6px 18px #1f2d3d0f,0 3px 9px #1f2d3d1a;content:"";left:0;margin-left:var(--fd-padding-layout-3xs);position:absolute;top:var(--fd-padding-layout-3xs);transition:left .24s ease-in;z-index:-1}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .tab-header-item{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-flex:1;align-items:center;background:transparent;border-radius:var(--fd-padding-lg);display:flex;flex:auto;justify-content:center;max-width:none;padding:0 var(--fd-padding-lg);width:100%}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .tab-header-item:before{display:none}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled):hover{color:var(--fd-color-primary)}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active{background:inherit}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .tab-header-item:not(.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .tab-header-item:first-child){margin-left:4px}.x-tab.horizontal-tab.theme-cube>.tab-header{border-bottom:none}.x-tab.horizontal-tab.theme-cube>.tab-header:before{background:var(--fd-color-border-secondary);bottom:0;content:"";display:block;height:1px;left:0;position:absolute;right:0}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper{align-items:flex-end;display:flex}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item{flex:none;padding:var(--fd-padding-xs) var(--fd-padding-xl)}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item .tab-header-content{padding:var(--fd-padding-2xs) var(--fd-padding-xl)}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item:after{background:var(--fd-color-split);bottom:0;content:"";height:18px;left:0;margin:auto;position:absolute;top:0;width:1px}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled,.tab-header-active):hover{color:var(--fd-color-primary)}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled,.tab-header-active):hover:before{background-color:var(--fd-control-item-bg-hover);border-radius:var(--fd-border-radius-sm);bottom:var(--fd-padding-2xs);content:"";left:var(--fd-padding-2xs);position:absolute;right:var(--fd-padding-2xs);top:var(--fd-padding-2xs)}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item:first-child:after,.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled,.tab-header-active):hover+.tab-header-item:after,.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled,.tab-header-active):hover:after{content:none}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active{background-color:var(--fd-color-bg-container);background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTI0IDM0Yy02IDAtOC03LjkzMy0xMC0xN1MxMCAwIDAgMHYzNGgyNHoiLz48cGF0aCBzdHJva2U9IiNFREVGRjMiIGQ9Ik0wIC41QzEwIC41IDEyIDguMiAxNCAxN3M0IDE2LjUgMTAgMTYuNSIvPjwvc3ZnPg==),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMzRjNiAwIDgtNy45MzMgMTAtMTdTMTQgMCAyNCAwdjM0SDB6Ii8+PHBhdGggc3Ryb2tlPSIjRURFRkYzIiBkPSJNMjQgLjVDMTQgLjUgMTIgOC4yIDEwIDE3UzYgMzMuNSAwIDMzLjUiLz48L3N2Zz4=),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MiIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMGg0MnYzNEgwVjB6Ii8+PHBhdGggZmlsbD0iI0VERUZGMyIgZD0iTTAgMWg0MnYtMkgwdjJ6IiBtYXNrPSJ1cmwoI3ByZWZpeF9fcGF0aC0xLWluc2lkZS0xXzQzXzY4MykiLz48L3N2Zz4=);background-position:100% 100%,0 100%,top;background-repeat:no-repeat;background-size:28px 100%,28px 100%,calc(100% - 54px) 100%}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active+.tab-header-item:after,.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active:after{content:none}.x-tab.horizontal-tab.theme-cube>.tab-header:not(.has-arrow) .tab-header-wrapper .tab-header-item:first-child{padding-left:0}.x-tab.horizontal-tab.theme-cube>.tab-header:not(.has-arrow) .tab-header-wrapper .tab-header-item:last-child{padding-right:0}.x-tab.horizontal-tab.theme-cube>.tab-header:not(.has-arrow) .tab-header-wrapper .tab-header-item.tab-header-active:first-child{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTI0IDM0Yy02IDAtOC03LjkzMy0xMC0xN1MxMCAwIDAgMHYzNGgyNHoiLz48cGF0aCBzdHJva2U9IiNFREVGRjMiIGQ9Ik0wIC41QzEwIC41IDEyIDguMiAxNCAxN3M0IDE2LjUgMTAgMTYuNSIvPjwvc3ZnPg==),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMzRDMCAxNS42OTIgMCAwIDEyIDB2MzRIMHoiLz48cGF0aCBzdHJva2U9IiNFREVGRjMiIGQ9Ik0xMiAuNUMuNS41LjUgMTQuMjk0LjUgMzQiLz48L3N2Zz4=),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MiIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMGg0MnYzNEgwVjB6Ii8+PHBhdGggZmlsbD0iI0VERUZGMyIgZD0iTTAgMWg0MnYtMkgwdjJ6IiBtYXNrPSJ1cmwoI3ByZWZpeF9fcGF0aC0xLWluc2lkZS0xXzQzXzY4MykiLz48L3N2Zz4=);background-position:100% 100%,0 100%,11px top;background-size:28px 100%,12px 100%,calc(100% - 38px) 100%}.x-tab.horizontal-tab.theme-cube>.tab-header:not(.has-arrow) .tab-header-wrapper .tab-header-item.tab-header-active:last-child{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTEyIDM0QzEyIDE1LjY5MiAxMiAwIDAgMHYzNGgxMnoiLz48cGF0aCBzdHJva2U9IiNFREVGRjMiIGQ9Ik0wIC41QzExLjUuNSAxMS41IDE0LjI5NCAxMS41IDM0Ii8+PC9zdmc+),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMzRjNiAwIDgtNy45MzMgMTAtMTdTMTQgMCAyNCAwdjM0SDB6Ii8+PHBhdGggc3Ryb2tlPSIjRURFRkYzIiBkPSJNMjQgLjVDMTQgLjUgMTIgOC4yIDEwIDE3UzYgMzMuNSAwIDMzLjUiLz48L3N2Zz4=),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MiIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMGg0MnYzNEgwVjB6Ii8+PHBhdGggZmlsbD0iI0VERUZGMyIgZD0iTTAgMWg0MnYtMkgwdjJ6IiBtYXNrPSJ1cmwoI3ByZWZpeF9fcGF0aC0xLWluc2lkZS0xXzQzXzY4MykiLz48L3N2Zz4=);background-position:100% 100%,0 100%,26px top;background-size:12px 100%,28px 100%,calc(100% - 38px) 100%}.x-tab.horizontal-tab.is-stretch>.tab-header .tab-header-wrapper{display:flex}.x-tab.horizontal-tab.is-stretch>.tab-header .tab-header-wrapper .tab-header-item{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-flex:1;align-items:center;display:flex;flex:auto;justify-content:center;max-width:none;width:100%}.x-tab.horizontal-tab.is-stretch>.tab-header .tab-header-wrapper .tab-header-item:before{left:0;right:0}.x-tab.vertical-tab{display:flex;position:relative}.x-tab.vertical-tab>.tab-header{-webkit-box-flex:0;border-bottom:none;box-shadow:1px 0 3px #0000001a;flex:none;height:auto!important;width:250px}.x-tab.vertical-tab>.tab-header .tab-header-wrapper{position:static}.x-tab.vertical-tab>.tab-header .tab-header-wrapper .tab-header-item{background:transparent;display:block;height:var(--fd-control-height-lg);line-height:var(--fd-control-height-lg);max-width:none;padding:0 var(--fd-padding-xl);transition:background .1s ease-out}.x-tab.vertical-tab>.tab-header .tab-header-wrapper .tab-header-item:before{bottom:auto;height:100%!important;left:0;top:0;transform:scaleY(0);transform-origin:center;transition-duration:.1s;width:2px}.x-tab.vertical-tab>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active{background-color:var(--fd-color-primary-bg)}.x-tab.vertical-tab>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active:before{transform:scaleY(1);transition-duration:.1s}.x-tab.vertical-tab .x-tab-content{flex:auto}.x-tab.size-large>.tab-header .tab-header-wrapper .tab-header-item{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg);padding:var(--fd-padding-xl) 12px}.x-tab.size-large>.tab-header .tab-header-wrapper .tab-header-item .tab-header-content i{font-size:var(--fd-font-size-xl)}.x-tab.size-large>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active{color:var(--fd-color-primary)}.x-tab.size-large.theme-modern>.tab-header .tab-header-wrapper .tab-header-item{height:var(--fd-control-height-lg);margin:0 var(--fd-gap)}.x-tab.size-large.theme-segment>.tab-header{border-radius:var(--fd-border-radius-lg);height:var(--fd-control-height-lg)}.x-tab.size-large.theme-segment>.tab-header .tab-header-wrapper .segment-animate-dot{border-radius:var(--fd-border-radius)}.x-tab.size-large.theme-cube>.tab-header .tab-header-wrapper .tab-header-item .tab-header-content{padding:var(--fd-padding-xs) var(--fd-padding-xl)}.x-tab.size-large.vertical-tab>.tab-header .tab-header-item{line-height:var(--fd-control-height-lg);padding:0 var(--fd-padding-2xl)}.x-tab.size-small>.tab-header .tab-header-wrapper .tab-header-item{padding:var(--fd-padding) 12px}.x-tab.size-small.theme-modern>.tab-header .tab-header-wrapper .tab-header-item{font-size:var(--fd-font-size-sm);height:var(--fd-control-height-sm);line-height:var(--fd-line-height-sm);margin:0 var(--fd-gap-sm)}.x-tab.size-small.theme-modern>.tab-header .tab-header-wrapper .tab-header-item i{font-size:var(--fd-font-size)}.x-tab.size-small.theme-cube>.tab-header .tab-header-wrapper .tab-header-item{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);padding:var(--fd-padding-2xs) var(--fd-padding-xl)}.x-tab.size-small.theme-cube>.tab-header .tab-header-wrapper .tab-header-item i{font-size:var(--fd-font-size)}.x-tab.size-small.theme-classic>.tab-header .tab-header-wrapper .tab-header-item{padding:var(--fd-padding-xs) var(--fd-padding-xl)}.x-tab.size-small.theme-segment>.tab-header{border-radius:var(--fd-border-radius-sm);height:var(--fd-control-height-sm)}.x-tab.size-small.theme-segment>.tab-header .tab-header-wrapper .tab-header-item{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-tab.size-small.vertical-tab>.tab-header .tab-header-wrapper .tab-header-item{line-height:var(--fd-control-height-lg);padding:0 var(--fd-padding-lg)}.x-popover-wrapper.tab-hide-popover-wrapper{background:var(--fd-color-bg-container);border-radius:var(--fd-border-radius-lg);color:var(--fd-color-text);font-size:var(--fd-font-size);line-height:var(--fd-line-height);max-height:240px;max-width:320px;min-width:120px;overflow-y:auto;padding:var(--fd-padding-layout-2xs)}.x-popover-wrapper.tab-hide-popover-wrapper .tab-hide-popover-list{display:flex;flex-direction:column}.x-popover-wrapper.tab-hide-popover-wrapper .tab-hide-popover-list .tab-hide-popover-item{border-radius:var(--fd-border-radius-sm);cursor:pointer;overflow:hidden;padding:var(--fd-padding-xs) var(--fd-padding-lg);text-overflow:ellipsis;transition:all .2s;white-space:nowrap}.x-popover-wrapper.tab-hide-popover-wrapper .tab-hide-popover-list .tab-hide-popover-item:not(.disabled){cursor:pointer}.x-popover-wrapper.tab-hide-popover-wrapper .tab-hide-popover-list .tab-hide-popover-item:not(.disabled):hover{background:var(--fd-control-item-bg-hover)}.x-popover-wrapper.tab-hide-popover-wrapper .tab-hide-popover-list .tab-hide-popover-item.disabled{background:var(--fd-color-bg-container);color:var(--fd-color-text-disabled)!important;cursor:not-allowed}.x-menu,.x-popover-wrapper.tab-hide-popover-wrapper .tab-hide-popover-list .tab-hide-popover-item.disabled:hover{background:var(--fd-color-bg-container)}.x-menu{border-radius:var(--fd-border-radius-lg);color:var(--fd-color-text);font-size:var(--fd-font-size);line-height:var(--fd-line-height);padding:var(--fd-padding-layout-2xs)}.x-menu *,.x-menu :after,.x-menu :before{box-sizing:border-box}.x-menu ol,.x-menu ul{margin:0;padding:0}.x-menu li{list-style-type:none}.x-menu .x-divider{margin:var(--fd-gap) var(--fd-padding)!important;width:calc(100% - var(--fd-padding)*2)!important}.x-menu .x-menu-item{align-items:center;border-radius:var(--fd-border-radius-lg);cursor:pointer;display:flex;height:var(--fd-control-height);padding:0 var(--fd-padding);transition:all .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-menu .x-menu-item:not(.disabled):hover{background:var(--fd-color-bg-text-hover)}.x-menu .x-menu-item:not(.disabled):active{background:var(--fd-color-bg-text-active)}.x-menu .x-menu-item.custom-content{height:auto;min-height:var(--fd-control-height)}.x-menu .x-menu-item.custom-content:hover{background:inherit;cursor:default}.x-menu .x-menu-item .item-icon{-webkit-box-flex:0;color:var(--fd-color-icon-normal);display:inline-block;flex:none;font-size:var(--fd-icon-size);margin-right:var(--fd-gap-sm)}.x-menu .x-menu-item .item-label{flex:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-menu .x-menu-item .check-icon{color:var(--fd-color-primary)}.x-menu .x-menu-item .expand-icon{color:var(--fd-color-icon-normal)}.x-menu .x-menu-item .check-icon,.x-menu .x-menu-item .expand-icon{flex:none;font-size:var(--fd-icon-size);padding-left:var(--fd-gap-sm)}.x-menu .x-menu-item.disabled{cursor:not-allowed}.x-menu .x-menu-item.disabled .check-icon,.x-menu .x-menu-item.disabled .expand-icon,.x-menu .x-menu-item.disabled .item-icon,.x-menu .x-menu-item.disabled .item-label{color:var(--fd-color-text-disabled)}.x-sub-menu .x-menu{box-shadow:none}.x-breadcrumb,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper{color:var(--fd-color-text-description);display:flex;font-size:var(--fd-font-size);line-height:var(--fd-line-height);list-style:none}.x-breadcrumb ol,.x-breadcrumb ul,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper ol,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper ul{margin:0;padding:0}.x-breadcrumb li,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper li{list-style-type:none}.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper.overflow-auto,.x-breadcrumb.overflow-auto{opacity:0;overflow-x:auto}.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper.disabled .breadcrumb-item-label,.x-breadcrumb.disabled .breadcrumb-item-label{color:var(--fd-color-text-disabled);cursor:default}.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper.disabled .breadcrumb-item-label:hover,.x-breadcrumb.disabled .breadcrumb-item-label:hover{background-color:transparent;color:var(--fd-color-text-disabled)}.x-breadcrumb .breadcrumb-item-label,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-label{border-radius:var(--fd-border-radius-sm);cursor:pointer;display:inline-block;height:var(--fd-line-height);overflow:hidden;padding:0 var(--fd-padding-xs);text-overflow:ellipsis;transition:color .2s;white-space:nowrap}.x-breadcrumb .breadcrumb-item-label:hover,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-label:hover{background-color:var(--fd-color-bg-text-hover);color:var(--fd-color-text)}.x-breadcrumb .breadcrumb-item-link,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-link{color:var(--fd-color-text-description);outline:none;text-decoration:none}.x-breadcrumb .breadcrumb-item-link:hover,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-link:hover{color:var(--fd-color-text)}.x-breadcrumb .breadcrumb-item-inner,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-inner{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-breadcrumb .breadcrumb-item-inner span+span,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-inner span+span{margin-left:var(--fd-gap-sm)}.x-breadcrumb .separator,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .separator{color:var(--fd-color-text-description);margin-left:var(--fd-gap-xs)}.x-breadcrumb .more,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .more{display:flex}.x-breadcrumb .breadcrumb-item-wrapper,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-wrapper{color:var(--fd-color-text-description);display:flex}.x-breadcrumb .breadcrumb-item-wrapper.mark:last-child,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-wrapper.mark:last-child{color:var(--fd-color-text)}.x-breadcrumb .breadcrumb-item-wrapper.collapse,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-wrapper.collapse{color:var(--fd-color-text-description)}.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper{flex-wrap:wrap}.x-tag{align-items:flex-start;background:var(--fd-color-fill-quaternary);border:1px solid var(--fd-color-transparent);border-radius:12px;color:var(--fd-color-text);cursor:pointer;display:inline-flex;font-size:var(--fd-font-size);line-height:var(--fd-line-height);max-width:100%;overflow:hidden;padding:0 var(--fd-padding-sm);transform-origin:left;white-space:nowrap}.x-tag *,.x-tag :after,.x-tag :before{box-sizing:border-box}.x-tag.is-rounded-rec{border-radius:var(--fd-border-radius)}.x-tag.has-border{border-color:var(--fd-color-border)}.x-tag .text-wrapper{display:inline-block;max-width:100%}.x-tag.single-line{align-items:center}.x-tag.single-line .text-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-tag.multi-line .text-wrapper{word-wrap:break-word;white-space:normal;word-break:break-word}.x-tag .tag-prefix{font-size:var(--fd-icon-size);margin-right:var(--fd-gap-sm)}.x-tag .tag-close{color:var(--fd-color-icon-normal);font-size:var(--fd-icon-size-2sm);margin-left:var(--fd-gap-sm)}.x-tag .tag-close:hover{color:var(--fd-color-icon-hover)}.x-tag .tag-close:active{color:var(--fd-color-icon-active)}.x-tag.x-tag-appear,.x-tag.x-tag-enter{animation:x-zoom-in-big .2s ease;animation-fill-mode:forwards}.x-tag.x-tag-exit{animation:x-zoom-by-size .2s ease-in reverse;animation-fill-mode:forwards}.x-tag.small{border-radius:10px;font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);padding:0 var(--fd-padding-xs)}.x-tag.small .tag-prefix{font-size:var(--fd-icon-size-sm)}.x-tag.small .tag-close{font-size:var(--fd-icon-size-2sm)}.x-tag.small.is-rounded-rec{border-radius:var(--fd-border-radius)}.x-tag.large{border-radius:15px;font-size:var(--fd-font-size);line-height:var(--fd-line-height);padding:var(--fd-padding-layout-2xs) var(--fd-padding)}.x-tag.large .tag-close,.x-tag.large .tag-prefix{font-size:var(--fd-icon-size)}.x-tag.large.is-rounded-rec{border-radius:var(--fd-border-radius)}.x-tag.success{background:var(--fd-color-success-bg);border-color:var(--fd-color-success-bg);color:var(--fd-color-success)}.x-tag.success.has-border{border-color:var(--fd-color-success-border)}.x-tag.success .tag-close{color:var(--fd-color-success)}.x-tag.success .tag-close:hover{color:var(--fd-color-success-hover)}.x-tag.success .tag-close:active{color:var(--fd-color-success-active)}.x-tag.warning{background:var(--fd-color-warning-bg);border-color:var(--fd-color-warning-bg);color:var(--fd-color-warning)}.x-tag.warning.has-border{border-color:var(--fd-color-warning-border)}.x-tag.warning .tag-close{color:var(--fd-color-warning)}.x-tag.warning .tag-close:hover{color:var(--fd-color-warning-hover)}.x-tag.warning .tag-close:active{color:var(--fd-color-warning-active)}.x-tag.error{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-bg);color:var(--fd-color-error)}.x-tag.error.has-border{border-color:var(--fd-color-error-border)}.x-tag.error .tag-close{color:var(--fd-color-error)}.x-tag.error .tag-close:hover{color:var(--fd-color-error-hover)}.x-tag.error .tag-close:active{color:var(--fd-color-error-active)}.x-tag.info{background:var(--fd-color-info-bg);border-color:var(--fd-color-info-bg);color:var(--fd-color-info)}.x-tag.info.has-border{border-color:var(--fd-color-info-border)}.x-tag.info .tag-close{color:var(--fd-color-info)}.x-tag.info .tag-close:hover{color:var(--fd-color-info-hover)}.x-tag.info .tag-close:active{color:var(--fd-color-info-active)}.x-tooltip{display:block;position:absolute}.x-tooltip *,.x-tooltip :after,.x-tooltip :before{box-sizing:border-box}.x-tooltip-hidden{display:none}.x-tooltip-popper{word-wrap:break-word;background:var(--fd-color-bg-elevater);border-radius:var(--fd-border-radius);box-shadow:0 9px 28px 8px #0000000d,0 3px 6px -4px #0000001f,0 6px 16px #00000014;color:var(--fd-color-text);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);max-width:400px;padding:var(--fd-tooltip-padding-layout-2xs) var(--fd-tooltip-padding-layout-xs);word-break:break-word}.x-tooltip-popper a[href]{color:var(--fd-color-link);text-decoration:underline}.x-tooltip-popper .tooltip-content{transform:translateZ(0)}.x-tooltip-popper.dark{color:var(--fd-color-text-light-solid)}.x-tooltip-popper.dark,.x-tooltip-popper.dark .tooltip-arrow:before{background:var(--fd-color-bg-spotilight)}.x-tooltip-popper.color .tooltip-arrow:before{background:var(--fd-tooltip-color-arrow)}.x-tooltip-popper.no-padding{padding:0}.x-tooltip .tooltip-arrow{display:block;height:12px;overflow:hidden;pointer-events:none;position:absolute;width:12px;z-index:1}.x-tooltip .tooltip-arrow.no-arrow{display:none!important}.x-tooltip .tooltip-arrow:before{background:var(--fd-color-bg-elevater);bottom:0;clip-path:polygon(1.65685425px 100%,50% 1.65685425px,10.34314575px 100%,1.65685425px 100%);clip-path:path("M 0 6 A 4 4 0 0 0 2.82842712474619 4.82842712474619 L 4.585786437626905 3.0710678118654755 A 2 2 0 0 1 7.414213562373095 3.0710678118654755 L 9.17157287525381 4.82842712474619 A 4 4 0 0 0 12 6 Z");content:"";height:6px;inset-inline-start:0;position:absolute;width:12px}.x-tooltip .tooltip-arrow:after{background:transparent;border-radius:0 0 2px;bottom:0;box-shadow:2px 2px 5px #0000000d;content:"";height:6.14213562px;inset-inline:0;margin:auto;position:absolute;transform:translateY(50%) rotate(-135deg);width:6.14213562px;z-index:0}.x-tooltip.placement-top .tooltip-arrow,.x-tooltip.placement-top-left .tooltip-arrow,.x-tooltip.placement-top-right .tooltip-arrow{bottom:0;transform:translateY(100%) rotate(180deg)}.x-tooltip.placement-top .tooltip-arrow{left:50%;transform:translate(-50%) translateY(100%) rotate(180deg)}.x-tooltip.placement-top-left .tooltip-arrow{left:8px}.x-tooltip.placement-top-right .tooltip-arrow{right:8px}.x-tooltip.placement-bottom .tooltip-arrow,.x-tooltip.placement-bottom-left .tooltip-arrow,.x-tooltip.placement-bottom-right .tooltip-arrow{top:0;transform:translateY(-100%)}.x-tooltip.placement-bottom .tooltip-arrow{left:50%;transform:translate(-50%) translateY(-100%)}.x-tooltip.placement-bottom-left .tooltip-arrow{left:8px}.x-tooltip.placement-bottom-right .tooltip-arrow{right:8px}.x-tooltip.placement-left .tooltip-arrow,.x-tooltip.placement-left-bottom .tooltip-arrow,.x-tooltip.placement-left-top .tooltip-arrow{right:0;transform:translate(100%) rotate(90deg)}.x-tooltip.placement-left .tooltip-arrow{top:50%;transform:translateY(-50%) translate(100%) rotate(90deg)}.x-tooltip.placement-left-top .tooltip-arrow{top:8px}.x-tooltip.placement-left-bottom .tooltip-arrow{bottom:8px}.x-tooltip.placement-right .tooltip-arrow,.x-tooltip.placement-right-bottom .tooltip-arrow,.x-tooltip.placement-right-top .tooltip-arrow{left:0;transform:translate(-100%) rotate(-90deg)}.x-tooltip.placement-right .tooltip-arrow{top:50%;transform:translateY(-50%) translate(-100%) rotate(-90deg)}.x-tooltip.placement-right-top .tooltip-arrow{top:8px}.x-tooltip.placement-right-bottom .tooltip-arrow{bottom:8px}.x-tooltip-top-appear,.x-tooltip-top-enter{animation:x-move-bottom-small .2s ease;animation-fill-mode:forwards}.x-tooltip-top-exit{animation:x-move-bottom-small .1s ease-in reverse;animation-fill-mode:forwards}.x-tooltip-right-appear,.x-tooltip-right-enter{animation:x-move-left-small .2s ease;animation-fill-mode:forwards}.x-tooltip-right-exit{animation:x-move-left-small .1s ease-in reverse;animation-fill-mode:forwards}.x-tooltip-bottom-appear,.x-tooltip-bottom-enter{animation:x-move-top-small .2s ease;animation-fill-mode:forwards}.x-tooltip-bottom-exit{animation:x-move-top-small .1s ease-in reverse;animation-fill-mode:forwards}.x-tooltip-left-appear,.x-tooltip-left-enter{animation:x-move-right-small .2s ease;animation-fill-mode:forwards}.x-tooltip-left-exit{animation:x-move-right-small .1s ease-in reverse;animation-fill-mode:forwards}.x-popover{display:block;position:absolute}.x-popover *,.x-popover :after,.x-popover :before{box-sizing:border-box}.x-popover-wrapper{background:var(--fd-color-bg-elevater);border-radius:var(--fd-border-radius-lg);box-shadow:0 9px 28px 8px #0000000d,0 3px 6px -4px #0000001f,0 6px 16px #00000014;color:var(--fd-color-text);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);padding:var(--fd-padding-layout)}.x-popover-wrapper .popover-content{transform:translateZ(0)}.x-popover-wrapper.color .popover-arrow:before{background:var(--fd-tooltip-color-arrow)}.x-popover-wrapper.no-padding{padding:0}.x-popover .popover-arrow{display:block;height:12px;overflow:hidden;pointer-events:none;position:absolute;width:12px;z-index:1}.x-popover .popover-arrow.no-arrow{display:none!important}.x-popover .popover-arrow:before{background:#fff;bottom:0;clip-path:polygon(1.65685425px 100%,50% 1.65685425px,10.34314575px 100%,1.65685425px 100%);clip-path:path("M 0 6 A 4 4 0 0 0 2.82842712474619 4.82842712474619 L 4.585786437626905 3.0710678118654755 A 2 2 0 0 1 7.414213562373095 3.0710678118654755 L 9.17157287525381 4.82842712474619 A 4 4 0 0 0 12 6 Z");content:"";height:6px;inset-inline-start:0;position:absolute;width:12px}.x-popover .popover-arrow:after{background:transparent;border-radius:0 0 2px;bottom:0;box-shadow:2px 2px 5px #0000000d;content:"";height:6.14213562px;inset-inline:0;margin:auto;position:absolute;transform:translateY(50%) rotate(-135deg);width:6.14213562px;z-index:0}.x-popover.placement-top .popover-arrow,.x-popover.placement-top-left .popover-arrow,.x-popover.placement-top-right .popover-arrow{bottom:0;transform:translateY(100%) rotate(180deg)}.x-popover.placement-top .popover-arrow{left:50%;transform:translate(-50%) translateY(100%) rotate(180deg)}.x-popover.placement-top-left .popover-arrow{left:8px}.x-popover.placement-top-right .popover-arrow{right:8px}.x-popover.placement-bottom .popover-arrow,.x-popover.placement-bottom-left .popover-arrow,.x-popover.placement-bottom-right .popover-arrow{top:0;transform:translateY(-100%)}.x-popover.placement-bottom .popover-arrow{left:50%;transform:translate(-50%) translateY(-100%)}.x-popover.placement-bottom-left .popover-arrow{left:8px}.x-popover.placement-bottom-right .popover-arrow{right:8px}.x-popover.placement-left .popover-arrow,.x-popover.placement-left-bottom .popover-arrow,.x-popover.placement-left-top .popover-arrow{right:0;transform:translate(100%) rotate(90deg)}.x-popover.placement-left .popover-arrow{top:50%;transform:translateY(-50%) translate(100%) rotate(90deg)}.x-popover.placement-left-top .popover-arrow{top:8px}.x-popover.placement-left-bottom .popover-arrow{bottom:8px}.x-popover.placement-right .popover-arrow,.x-popover.placement-right-bottom .popover-arrow,.x-popover.placement-right-top .popover-arrow{left:0;transform:translate(-100%) rotate(-90deg)}.x-popover.placement-right .popover-arrow{top:50%;transform:translateY(-50%) translate(-100%) rotate(-90deg)}.x-popover.placement-right-top .popover-arrow{top:8px}.x-popover.placement-right-bottom .popover-arrow{bottom:8px}.x-popover-top-appear,.x-popover-top-enter{animation:x-move-bottom-small .2s ease;animation-fill-mode:forwards}.x-popover-top-exit{animation:x-move-bottom-small .1s ease-in reverse;animation-fill-mode:forwards}.x-popover-right-appear,.x-popover-right-enter{animation:x-move-left-small .2s ease;animation-fill-mode:forwards}.x-popover-right-exit{animation:x-move-left-small .1s ease-in reverse;animation-fill-mode:forwards}.x-popover-bottom-appear,.x-popover-bottom-enter{animation:x-move-top-small .2s ease;animation-fill-mode:forwards}.x-popover-bottom-exit{animation:x-move-top-small .1s ease-in reverse;animation-fill-mode:forwards}.x-popover-left-appear,.x-popover-left-enter{animation:x-move-right-small .2s ease;animation-fill-mode:forwards}.x-popover-left-exit{animation:x-move-right-small .1s ease-in reverse;animation-fill-mode:forwards}.x-popup{z-index:1002}.x-popup.x-popup-hidden{display:none}.x-divider *,.x-divider :after,.x-divider :before{box-sizing:border-box}.x-divider-horizontal{border:solid var(--fd-color-split);border-width:1px 0 0;margin:24px 0;width:100%}.x-divider-vertical{border:solid var(--fd-color-split);border-width:0 0 0 1px;display:inline-block;height:.9em;margin:0 15px;vertical-align:middle}.x-divider-dashed{border-style:dashed}.x-upload{display:inline-block}.x-upload *,.x-upload :after,.x-upload :before{box-sizing:border-box}.x-upload .upload-form,.x-upload .upload-input{display:none}.x-instruction{border-radius:var(--fd-border-radius-lg);color:var(--fd-color-text);display:flex;font-size:var(--fd-font-size);line-height:var(--fd-line-height);padding:var(--fd-padding-layout-xs) var(--fd-padding-layout-sm);position:relative}.x-instruction *,.x-instruction :after,.x-instruction :before{box-sizing:border-box}.x-instruction .x-instruction-content{flex:1;min-width:0}.x-instruction .x-instruction-icon{font-size:var(--fd-icon-size);margin-right:var(--fd-gap)}.x-instruction .x-instruction-description{display:none}.x-instruction .x-instruction-close-icon{align-self:flex-start;background-color:transparent;color:var(--fd-color-icon);cursor:pointer;font-size:var(--fd-icon-size);margin-left:var(--fd-gap);overflow:hidden;padding:0}.x-instruction .x-instruction-close-icon:hover{color:var(--fd-color-icon-hover)}.x-instruction.x-instruction-success{background-color:var(--fd-color-success-bg)}.x-instruction.x-instruction-success.x-instruction-border{border:1px solid var(--fd-color-success-border)}.x-instruction.x-instruction-success .x-instruction-icon{color:var(--fd-color-success)}.x-instruction.x-instruction-warning{background-color:var(--fd-color-warning-bg)}.x-instruction.x-instruction-warning.x-instruction-border{border:1px solid var(--fd-color-warning-border)}.x-instruction.x-instruction-warning .x-instruction-icon{color:var(--fd-color-warning)}.x-instruction.x-instruction-info{background-color:var(--fd-color-info-bg)}.x-instruction.x-instruction-info.x-instruction-border{border:1px solid var(--fd-color-info-border)}.x-instruction.x-instruction-info .x-instruction-icon{color:var(--fd-color-info)}.x-instruction.x-instruction-error{background-color:var(--fd-color-error-bg)}.x-instruction.x-instruction-error.x-instruction-border{border:1px solid var(--fd-color-error-border)}.x-instruction.x-instruction-error .x-instruction-icon{color:var(--fd-color-error)}.x-instruction.x-instruction-with-description{align-items:flex-start}.x-instruction.x-instruction-with-description .x-instruction-message{color:var(--fd-color-text);display:block;font-weight:600;margin-bottom:calc(var(--fd-gap)/2)}.x-instruction.x-instruction-with-description .x-instruction-description{display:block;line-height:var(--fd-line-height)}.x-instruction.x-instruction-banner{border:none;border-radius:0;margin-bottom:0}.x-instruction.x-instruction-exit{opacity:1}.x-instruction.x-instruction-exit-active{opacity:0;overflow:hidden;padding-bottom:0;padding-top:0;transition:all .3s}.x-result{text-align:center}.x-result *,.x-result :after,.x-result :before{box-sizing:border-box}.x-result img{border:0;outline:none}.x-result .result-img{margin-bottom:var(--fd-gap-2xl)}.x-result .result-img>img{height:175px;vertical-align:middle}.x-result .result-icon{font-size:72px;line-height:0}.x-result .result-icon.success{color:var(--fd-color-success)}.x-result .result-icon.error{color:var(--fd-color-error)}.x-result .result-icon.warning{color:var(--fd-color-warning)}.x-result .result-icon.info{color:var(--fd-color-info)}.x-result .result-title{color:var(--fd-color-text-heading);font-size:var(--fd-font-size-xl);font-weight:600;line-height:var(--fd-line-height-xl);margin:0 auto var(--fd-gap);max-width:600px}.x-result .result-description{color:var(--fd-color-text-description);font-size:var(--fd-font-size);line-height:var(--fd-line-height);margin:0 auto;max-width:340px}.x-result .result-extra{margin-top:var(--fd-gap-2xl)}.x-result a{color:var(--fd-color-primary);cursor:pointer;text-decoration:underline}.x-result.size-middle .result-title{font-size:var(--fd-font-size-lg)}.x-result.size-middle .result-icon{font-size:64px;line-height:64px}.x-result.size-middle .result-img>img{height:80px}.x-result.size-middle .result-extra{margin-top:var(--fd-gap-2xl)}.x-result.size-small .result-img{margin-bottom:var(--fd-gap-2xl)}.x-result.size-small .result-img>img{height:60px}.x-result.size-small .result-icon{font-size:48px}.x-result.size-small .result-extra{margin-top:var(--fd-gap-2xl)}.x-result.size-small .result-title{font-size:var(--fd-font-size);margin:0 auto var(--fd-gap-2xl)}.x-result.size-small .result-description{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);max-width:200px}@keyframes x-toast-fade-out{0%{max-height:100px;opacity:1}to{margin-bottom:0;max-height:0;opacity:0}}.x-msg-toast-container{color:var(--fd-color-text);line-height:normal;pointer-events:none;position:fixed;text-align:center;top:20px;width:100%;z-index:1005}.x-msg-toast{margin-bottom:10px}.x-msg-toast .x-msg-toast-content{word-wrap:break-word;background:var(--fd-color-bg-elevater);border:var(--fd-line-width) solid var(--fd-color-bg-elevater);border-radius:var(--fd-border-radius);box-shadow:0 9px 28px 8px #0000000d,0 3px 6px -4px #0000001f,0 6px 16px #00000014;display:inline-flex;max-width:600px;min-width:100px;overflow:hidden;padding:var(--fd-padding-layout-xs) var(--fd-padding-layout-sm);position:relative;text-align:initial;word-break:break-word}.x-msg-toast .x-msg-toast-content .x-msg-toast-text{font-size:var(--fd-font-size);line-height:var(--fd-line-height)}.x-msg-toast .x-msg-toast-content .x-msg-toast-icon{align-items:center;display:flex;height:var(--fd-line-height);margin-right:var(--fd-gap)}.x-msg-toast .x-msg-toast-content .x-msg-toast-icon i{font-size:var(--fd-icon-size);line-height:var(--fd-icon-size)}.x-msg-toast .x-msg-toast-content.success .x-msg-toast-icon{color:var(--fd-color-success)}.x-msg-toast .x-msg-toast-content.warning .x-msg-toast-icon{color:var(--fd-color-warning)}.x-msg-toast .x-msg-toast-content.error .x-msg-toast-icon{color:var(--fd-color-error)}.x-msg-toast .x-msg-toast-content.info .x-msg-toast-icon{color:var(--fd-color-info);transform:rotate(180deg)}.x-msg-toast .x-msg-toast-content.loading .x-msg-toast-icon i{animation:x-rotate .8s cubic-bezier(.43,.1,.54,.85) infinite;border:2px solid var(--fd-color-success-3);border-radius:100%;border-top-color:var(--fd-color-success-6);display:inline-block;height:var(--fd-icon-size);transform-origin:center center;width:var(--fd-icon-size)}.x-msg-toast .x-msg-toast-content.colorful.success{background:var(--fd-color-success-bg);border-color:var(--fd-color-success-border)}.x-msg-toast .x-msg-toast-content.colorful.warning{background:var(--fd-color-warning-bg);border-color:var(--fd-color-warning-border)}.x-msg-toast .x-msg-toast-content.colorful.error{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-border)}.x-msg-toast .x-msg-toast-content.colorful.info{background:var(--fd-color-info-bg);border-color:var(--fd-color-info-border)}.x-msg-toast .x-msg-toast-content.colorful.loading{background:var(--fd-color-bg-elevater);border-color:var(--fd-color-border)}.x-msg-toast.x-msg-toast-appear{animation:x-fade-down-large .2s ease;animation-fill-mode:forwards}.x-msg-toast.x-msg-toast-exit{animation:x-toast-fade-out .1s ease-out;animation-fill-mode:forwards}.x-msg-notification-container{line-height:normal;pointer-events:none;position:fixed;z-index:1004}.x-msg-notification-container.top-right{right:20px;top:65px}.x-msg-notification-container.top-right .x-msg-notification-appear,.x-msg-notification-container.top-right .x-msg-notification-exit{animation:x-fade-in-right .3s ease;animation-fill-mode:forwards}.x-msg-notification-container.top-right .x-msg-notification-exit{animation-direction:reverse}.x-msg-notification-container.top-left{left:20px;top:65px}.x-msg-notification-container.top-left .x-msg-notification-appear,.x-msg-notification-container.top-left .x-msg-notification-exit{animation:x-fade-in-left .3s ease;animation-fill-mode:forwards}.x-msg-notification-container.top-left .x-msg-notification-exit{animation-direction:reverse}.x-msg-notification-container.bottom-left{bottom:40px;left:20px}.x-msg-notification-container.bottom-left .x-msg-notification-appear,.x-msg-notification-container.bottom-left .x-msg-notification-exit{animation:x-fade-in-left .3s ease;animation-fill-mode:forwards}.x-msg-notification-container.bottom-left .x-msg-notification-exit{animation-direction:reverse}.x-msg-notification-container.bottom-right{bottom:40px;right:20px}.x-msg-notification-container.bottom-right .x-msg-notification-appear,.x-msg-notification-container.bottom-right .x-msg-notification-exit{animation:x-fade-in-right .3s ease;animation-fill-mode:forwards}.x-msg-notification-container.bottom-right .x-msg-notification-exit{animation-direction:reverse}.x-msg-notification{background:#fff;border-radius:var(--fd-border-radius-lg);box-shadow:0 9px 28px 8px #0000000d,0 3px 6px -4px #0000001f,0 6px 16px #00000014;margin-bottom:10px;overflow:hidden;padding:var(--fd-padding-layout-lg);pointer-events:all;position:relative;width:400px}.x-msg-notification .close-btn{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border-radius:var(--fd-border-radius);color:var(--fd-color-text);cursor:pointer;display:flex;font-size:var(--fd-font-size);height:var(--fd-line-height-lg);justify-content:center;position:absolute;right:0;top:0;transition:color .2s ease;width:var(--fd-line-height-lg)}.x-msg-notification .close-btn:hover{background-color:var(--fd-color-bg-text-hover)}.x-msg-notification .x-msg-notification-main .notification-icon.success{color:var(--fd-color-success)}.x-msg-notification .x-msg-notification-main .notification-icon.error{color:var(--fd-color-error)}.x-msg-notification .x-msg-notification-main .notification-icon.warning{color:var(--fd-color-warning)}.x-msg-notification .x-msg-notification-main .notification-icon.info{color:var(--fd-color-info)}.x-msg-notification .x-msg-notification-main .x-msg-notification-title{word-wrap:break-word;color:var(--fd-color-text);font-size:var(--fd-font-size-lg);font-weight:600;margin-bottom:var(--fd-gap);margin-right:var(--fd-line-height-lg);word-break:break-word}.x-msg-notification .x-msg-notification-main .x-msg-notification-content{color:var(--fd-color-text);font-size:var(--fd-font-size);line-height:var(--fd-line-height)}.x-msg-notification .x-msg-notification-main .x-msg-notification-footer{margin-top:var(--fd-gap-xl)}.x-msg-notification .x-msg-notification-main .x-msg-notification-footer:after,.x-msg-notification .x-msg-notification-main .x-msg-notification-footer:before{content:" ";display:table;line-height:0}.x-msg-notification .x-msg-notification-main .x-msg-notification-footer:after{clear:both}.x-msg-notification .x-msg-notification-main .x-msg-notification-footer .footer-btn{float:right}.x-msg-notification .x-msg-notification-wrapper{position:relative}.x-msg-notification.has-icon .x-msg-notification-main{padding-left:calc(var(--fd-line-height-lg) + var(--fd-gap-xl))}.x-msg-notification.has-icon .x-msg-notification-main>i{font-size:var(--fd-line-height-lg);left:0;line-height:var(--fd-line-height-lg);position:absolute;top:0}.x-msg-notification.only-title .x-msg-notification-wrapper .x-msg-notification-main .x-msg-notification-title{margin-bottom:0}.x-avatar{background:var(--fd-color-primary);border:1px solid transparent;border-radius:50%;color:var(--fd-color-text-light-solid);display:inline-block;overflow:hidden;text-align:center;vertical-align:middle}.x-avatar,.x-avatar *,.x-avatar :after,.x-avatar :before{box-sizing:border-box}.x-avatar img{border:0;outline:none}.x-avatar>img{height:100%;width:100%}.x-avatar.color-0{background:#f0a800}.x-avatar.color-1{background:#2f7deb}.x-avatar.color-2{background:#00aed1}.x-avatar.color-3{background:#46c26f}.x-avatar.color-4{background:#eb5050}.x-avatar.color-5{background:#7e47eb}.x-avatar.is-image-type{background:#fff;font-size:0}.x-avatar.square{border-radius:var(--fd-border-radius)}.x-avatar.square.small{border-radius:var(--fd-border-radius-sm)}.x-avatar.square.large{border-radius:var(--fd-border-radius-lg)}.x-avatar-group{display:inline-flex}.x-avatar-group .x-avatar{border-color:var(--fd-color-white)}.x-avatar-group>:not(:first-child){margin-left:-8px}.x-avatar-group>:not(:first-child).small{margin-left:-4px}.x-avatar-group>:not(:first-child).large{margin-left:-16px}.x-progress *,.x-progress :after,.x-progress :before{box-sizing:border-box}.x-progress.type-line{align-items:center;display:flex;height:10px}.x-progress.type-line .progress-wrapper{-webkit-box-flex:1;background:var(--fd-color-fill-secondary);border-radius:5px;flex:auto;height:100%;overflow:hidden;position:relative}.x-progress.type-line .progress-wrapper .value-bar{background:var(--fd-color-primary);bottom:0;left:0;position:absolute;top:0;transition:width .2s ease}.x-progress.type-line .progress-wrapper .value-bar.round-linecap{border-bottom-right-radius:inherit;border-top-right-radius:inherit}.x-progress.type-line .value-info{flex:none;font-size:var(--fd-font-size);line-height:var(--fd-line-height);margin-left:var(--fd-gap)}.x-progress.type-line.size-large{height:20px}.x-progress.type-line.size-large .progress-wrapper{border-radius:10px}.x-progress.type-line.size-large .value-info{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg)}.x-progress.type-line.size-small{height:5px}.x-progress.type-line.size-small .progress-wrapper{border-radius:2.5px}.x-progress.type-line.size-small .value-info{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-progress.type-circle{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center;position:relative}.x-progress.type-circle .progress-wrapper{height:100%;width:100%}.x-progress.type-circle .progress-wrapper circle.unfilled{stroke:var(--fd-color-fill-secondary)}.x-progress.type-circle .progress-wrapper circle.value-bar{stroke:var(--fd-color-primary);transform:rotate(-90deg);transform-origin:center;transition:stroke-dasharray .2s ease}.x-progress.type-circle .value-info{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg);position:absolute}.x-progress.type-circle.size-large .value-info{font-size:var(--fd-font-size-2xl);line-height:var(--fd-line-height-2xl)}.x-progress.type-circle.size-extra-small .value-info,.x-progress.type-circle.size-small .value-info{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-progress.status-success .progress-wrapper .value-bar{background-color:var(--fd-color-success)}.x-progress.status-info .progress-wrapper .value-bar{background-color:var(--fd-color-info)}.x-progress.status-error .progress-wrapper .value-bar{background-color:var(--fd-color-error)}.x-search-input{align-items:center;background:var(--fd-color-bg-container);display:flex}.x-search-input *,.x-search-input :after,.x-search-input :before{box-sizing:border-box}.x-search-input .input-wrapper{flex:auto;height:var(--fd-control-height);position:relative}.x-search-input .input-wrapper .input-content{inset:0;position:absolute}.x-search-input .input-wrapper .input-content.show-search-icon input{padding-left:calc(var(--fd-icon-size) + var(--fd-gap)*2)}.x-search-input .input-wrapper .input-content .input-prefix{left:0}.x-search-input .input-wrapper .input-content .input-prefix,.x-search-input .input-wrapper .input-content .input-suffix{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;bottom:0;color:var(--fd-color-icon-normal);display:flex;font-size:var(--fd-icon-size);justify-content:center;position:absolute;top:0;width:calc(var(--fd-icon-size) + var(--fd-gap)*2)}.x-search-input .input-wrapper .input-content .input-suffix{cursor:pointer;right:0}.x-search-input .input-wrapper .input-content .input-suffix:hover{color:var(--fd-color-icon-hover)}.x-search-input .input-wrapper .input-content input{border:none;font-size:var(--fd-font-size);height:100%;outline:none;overflow:hidden;padding:0 var(--fd-gap);text-overflow:ellipsis;white-space:nowrap;width:100%}.x-search-input .input-wrapper .input-content input::-moz-placeholder{color:var(--fd-color-text-placeholder)}.x-search-input .input-wrapper .input-content input:-ms-input-placeholder{color:var(--fd-color-text-placeholder)}.x-search-input .input-wrapper .input-content input::placeholder{color:var(--fd-color-text-placeholder)}.x-search-input .input-wrapper .input-content input:focus{outline:none}.x-search-input .input-wrapper .input-content input:focus::-moz-placeholder{color:var(--fd-color-text-placeholder)}.x-search-input .input-wrapper .input-content input:focus:-ms-input-placeholder{color:var(--fd-color-text-placeholder)}.x-search-input .input-wrapper .input-content input:focus::placeholder{color:var(--fd-color-text-placeholder)}.x-search-input .search-prefix,.x-search-input .search-suffix{-webkit-box-flex:0;color:var(--fd-color-brand-6,#00b899);flex:none}.x-search-input .search-prefix{margin-right:5px}.x-search-input .search-suffix{margin-left:5px}.x-search-input.has-clear .input-wrapper input{padding-right:calc(var(--fd-icon-size) + var(--fd-gap)*2)}.x-data-table{height:100%;overflow:auto;position:relative}.x-data-table,.x-data-table *,.x-data-table :after,.x-data-table :before{box-sizing:border-box}.x-data-table.resizing{cursor:ew-resize;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-data-table.striped tbody tr:nth-child(2n) td{background:#f5f6f8}.x-data-table.striped tbody tr.hover td,.x-data-table.striped tbody tr:hover td{background:#f0f1f4}.x-data-table .x-table-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.x-data-table .x-table-container>.x-table-content>table>thead>tr>th,.x-data-table .x-table-container>.x-table-header>table>thead>tr>th{position:relative}.x-data-table table{border-collapse:separate;border-spacing:0;border-top:1px solid #e1e3e5;width:100%}.x-data-table table.empty{height:0;visibility:hidden}.x-data-table table.empty tbody tr.calculate-row{height:1px!important}.x-data-table.size-small td,.x-data-table.size-small th{font-size:13px;line-height:18px;min-height:32px;padding:7px 10px}.x-data-table.size-small td .measure-cell,.x-data-table.size-small th .measure-cell{font-size:13px;line-height:18px;min-height:32px;min-height:0;padding:0 12px}.x-data-table.size-small td .cell-wrapper,.x-data-table.size-small th .cell-wrapper{font-size:13px;line-height:18px;min-height:32px;padding:7px 10px}.x-data-table.size-small td.has-content,.x-data-table.size-small td.measure-cell-td,.x-data-table.size-small th.has-content{padding:0}.x-data-table.size-small .patch-cell{border-left:0;border-right:0;height:0;min-width:0;padding:0}.x-data-table.size-small .patch-cell .measure-cell{padding:0!important}.x-data-table.size-large td,.x-data-table.size-large th{font-size:13px;line-height:22px;min-height:54px;padding:16px 12px}.x-data-table.size-large td .measure-cell,.x-data-table.size-large th .measure-cell{font-size:13px;line-height:18px;min-height:32px;min-height:0;padding:0 10px}.x-data-table.size-large td .cell-wrapper,.x-data-table.size-large th .cell-wrapper{font-size:13px;line-height:22px;min-height:54px;padding:16px 12px}.x-data-table.size-large td.has-content,.x-data-table.size-large td.measure-cell-td,.x-data-table.size-large th.has-content{padding:0}.x-data-table.size-large .patch-cell{border-left:0;border-right:0;height:0;min-width:0;padding:0}.x-data-table.size-large .patch-cell .measure-cell{padding:0!important}.x-data-table td,.x-data-table th{border-bottom:1px solid #e1e3e5;box-sizing:border-box;font-size:13px;line-height:22px;min-height:46px;min-width:30px;padding:12px 10px}.x-data-table.has-border{border-radius:3px}.x-data-table.has-border .x-table-body,.x-data-table.has-border .x-table-content,.x-data-table.has-border .x-table-header{border-left:1px solid #e1e3e5;border-radius:3px;border-right:1px solid #e1e3e5}.x-data-table.has-border .x-table-body,.x-data-table.has-border .x-table-content{border-bottom:1px solid #e1e3e5}.x-data-table.has-border .x-table-body{border-top-left-radius:0;border-top-right-radius:0}.x-data-table.has-border .x-table-header{border-bottom-left-radius:0;border-bottom-right-radius:0}.x-data-table.has-border td,.x-data-table.has-border th{border-bottom:1px solid #e1e3e5;border-right:1px solid #e1e3e5}.x-data-table.has-border .patch-cell{border-left:0;border-right:0;height:0;min-width:0;padding:0}.x-data-table.has-border .patch-cell .measure-cell{padding:0!important}.x-data-table td.has-content,.x-data-table th.has-content{padding:0}.x-data-table th,.x-data-table th .cell-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-data-table td{word-wrap:break-word;white-space:nowrap}.x-data-table td .cell-wrapper{word-wrap:break-word;white-space:normal}.x-data-table td .cell-wrapper.adjust-width{white-space:nowrap}.x-data-table .measure-cell{font-size:14px;font-weight:400;padding:0 12px}.x-data-table .cell-wrapper{box-sizing:border-box;font-size:13px;line-height:22px;min-height:46px;min-width:30px;padding:12px 10px}.x-data-table .measure-cell-td{border:0;height:0;padding:0}.x-data-table .measure-cell-td .sort-icon{display:none}.x-data-table .patch-cell{border-left:0;border-right:0;height:0;min-width:0;padding:0}.x-data-table .patch-cell .measure-cell{padding:0!important}.x-data-table thead th{background:#f0f1f4;border-color:#d7d9dc;color:#141e31;font-size:13px;font-weight:400;text-align:left}.x-data-table .x-table-header{flex:none;overflow:hidden}.x-data-table tbody>tr td{background:#fff;color:#141e31}.x-data-table tbody>tr.hover td{background:#f0f1f4}.x-data-table tbody>tr.measure-row{opacity:0}.x-data-table .x-table-content{overflow:auto}.x-data-table .x-table-body{flex:1 1 auto;overflow:auto}.x-data-table .x-table-body table{border-top:0}.x-data-table .sort-icon{align-items:center;bottom:0;display:flex;font-size:12px;font-weight:400;position:absolute;right:5px;top:0}.x-data-table.ping-left .fix-left.last-fix-left:after{box-shadow:inset 10px 0 8px -8px #00000026}.x-data-table .x-table-cell.fix-left{z-index:1}.x-data-table .x-table-cell.fix-left.last-fix-left{overflow:visible}.x-data-table .x-table-cell.fix-left.last-fix-left:after{bottom:-1px;content:"";position:absolute;right:-1px;top:0;transform:translate(100%);width:25px}.x-data-table .x-table-cell .resize-spanner{bottom:0;cursor:ew-resize;opacity:0;position:absolute;right:0;width:5px}.x-data-table .column-resize-line,.x-data-table .x-table-cell .resize-spanner{top:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-data-table .column-resize-line{background:var(--fd-color-brand-6,#00b899);display:none;height:100%;left:0;position:fixed;width:1px;z-index:1}.x-data-table .column-resize-line.active{display:block}.x-list-tree{display:inline-block;height:100%;min-width:100%;overflow:auto;vertical-align:middle}.x-list-tree *,.x-list-tree :after,.x-list-tree :before{box-sizing:border-box}.x-list-tree.content-ellipsis{display:block}.x-list-tree.content-ellipsis .tree-node .node-content-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:0}.x-list-tree .customize-dragging-node{display:none;left:-500px;pointer-events:none;position:fixed;top:-500px}.x-list-tree .customize-dragging-node.show{display:block}.x-list-tree.is-virtual-list{display:block;width:100%}.x-list-tree.is-virtual-list .x-virtual-list .virtual-list-inner{display:inline-block;min-width:100%;width:auto!important}.x-list-tree .tree-node{align-items:center;border-radius:var(--fd-border-radius);cursor:pointer;display:flex;height:var(--fd-control-height);line-height:var(--fd-line-height);padding:0 var(--fd-padding);transition:background-color .1s ease-in-out}.x-list-tree .tree-node .node-checkbox{flex:0 0 16px}.x-list-tree .tree-node .node-checkbox.left,.x-list-tree .tree-node .node-checkbox.middle{margin-right:var(--fd-gap-sm)}.x-list-tree .tree-node .node-checkbox.right{margin-left:var(--fd-gap-sm)}.x-list-tree .tree-node .node-content-wrapper{flex:1 1 auto;height:100%;line-height:var(--fd-line-height);margin-left:var(--fd-gap-sm);margin-right:var(--fd-gap-sm);position:relative}.x-list-tree .tree-node .node-content-wrapper,.x-list-tree .tree-node .node-content-wrapper .node-content{align-items:center;display:inline-flex}.x-list-tree .tree-node .node-content-wrapper .node-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.x-list-tree .tree-node .node-content-wrapper .node-content .node-title{-webkit-box-flex:1;color:var(--fd-color-text);flex:1 1 auto;font-size:var(--fd-font-size);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-list-tree .tree-node .node-content-wrapper .node-content .node-icon{color:var(--fd-color-icon);display:inline-flex;font-size:var(--fd-font-size-lg);margin-right:var(--fd-gap-sm)}.x-list-tree .tree-node .node-content-wrapper .node-content .node-icon .node-icon-group{color:var(--fd-color-primary)}.x-list-tree .tree-node .node-content-wrapper .node-drop-indicator{background:var(--fd-color-primary);bottom:0;display:none;height:2px;left:0;position:absolute;right:0}.x-list-tree .tree-node .node-switcher{-webkit-box-flex:0;border-radius:var(--fd-border-radius);color:var(--fd-color-icon);display:inline-block;flex:0 0 20px;font-size:var(--fd-font-size-lg);height:var(--fd-line-height);line-height:var(--fd-line-height);margin:5px var(--fd-gap-sm);position:relative;text-align:center;transition:background-color .3s;width:20px}.x-list-tree .tree-node .node-switcher:hover{background-color:var(--fd-color-bg-container)}.x-list-tree .tree-node .node-switcher.node-switcher-noop:hover{background-color:transparent}.x-list-tree .tree-node .node-indent{display:inline-block}.x-list-tree .tree-node:hover{background-color:var(--fd-color-bg-text-hover)}.x-list-tree .tree-node:active{background-color:var(--fd-color-bg-text-active)}.x-list-tree .tree-node.node-selected{background-color:var(--fd-control-item-bg-active)}.x-list-tree .tree-node.node-selected .node-content-wrapper .node-icon{color:var(--fd-color-icon)}.x-list-tree .tree-node.node-selected .node-content-wrapper .node-icon .node-icon-group{color:var(--fd-color-primary)}.x-list-tree .tree-node.disabled{background-color:transparent;cursor:default}.x-list-tree .tree-node.disabled .node-content-wrapper .node-icon,.x-list-tree .tree-node.disabled .node-content-wrapper .node-title{color:var(--fd-color-text-disabled)}.x-list-tree .tree-node.draggable{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-list-tree .tree-node.drop-container{background-color:var(--fd-color-bg-text-hover)}.x-list-tree.is-dragging .tree-node .node-checkbox,.x-list-tree.is-dragging .tree-node .node-content-wrapper,.x-list-tree.is-dragging .tree-node .node-indent,.x-list-tree.is-dragging .tree-node .node-switcher{pointer-events:none}.x-list-tree.is-dragging .tree-node.node-selected,.x-list-tree.is-dragging .tree-node:hover{background-color:transparent}.x-list-tree .tree-node-motion-appear,.x-list-tree .tree-node-motion-enter,.x-list-tree .tree-node-motion-exit{overflow:hidden;transition:opacity .1s ease-in-out,height .1s ease-in-out}.x-space{display:inline-flex}.x-space *,.x-space :after,.x-space :before{box-sizing:border-box}.x-space.vertical{flex-direction:column}.x-space.align-center{align-items:center}.x-space.align-start{align-items:flex-start}.x-space.align-end{align-items:flex-end}.x-space.align-baseline{align-items:baseline}.x-space .x-space-item:empty{display:none}.x-grid-row{display:flex;flex-flow:row wrap}.x-grid-row *,.x-grid-row :after,.x-grid-row :before{box-sizing:border-box}.x-grid-row:after,.x-grid-row:before{display:flex}.x-grid-row.no-wrap{flex-wrap:nowrap}.x-grid-row.row-start{justify-content:flex-start}.x-grid-row.row-center{justify-content:center}.x-grid-row.row-end{justify-content:flex-end}.x-grid-row.row-space-between{justify-content:space-between}.x-grid-row.row-space-around{justify-content:space-around}.x-grid-row.row-space-evenly{justify-content:space-evenly}.x-grid-row.row-top{align-items:flex-start}.x-grid-row.row-middle{align-items:center}.x-grid-row.row-bottom{align-items:flex-end}.x-grid-row .x-grid-col{max-width:100%;min-height:1px;position:relative}.x-grid-row .col-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-push-24{left:100%}.x-grid-row .col-pull-24{right:100%}.x-grid-row .col-offset-24{margin-left:100%}.x-grid-row .col-order-24{order:24}.x-grid-row .col-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-push-23{left:95.83333333%}.x-grid-row .col-pull-23{right:95.83333333%}.x-grid-row .col-offset-23{margin-left:95.83333333%}.x-grid-row .col-order-23{order:23}.x-grid-row .col-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-push-22{left:91.66666667%}.x-grid-row .col-pull-22{right:91.66666667%}.x-grid-row .col-offset-22{margin-left:91.66666667%}.x-grid-row .col-order-22{order:22}.x-grid-row .col-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-push-21{left:87.5%}.x-grid-row .col-pull-21{right:87.5%}.x-grid-row .col-offset-21{margin-left:87.5%}.x-grid-row .col-order-21{order:21}.x-grid-row .col-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-push-20{left:83.33333333%}.x-grid-row .col-pull-20{right:83.33333333%}.x-grid-row .col-offset-20{margin-left:83.33333333%}.x-grid-row .col-order-20{order:20}.x-grid-row .col-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-push-19{left:79.16666667%}.x-grid-row .col-pull-19{right:79.16666667%}.x-grid-row .col-offset-19{margin-left:79.16666667%}.x-grid-row .col-order-19{order:19}.x-grid-row .col-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-push-18{left:75%}.x-grid-row .col-pull-18{right:75%}.x-grid-row .col-offset-18{margin-left:75%}.x-grid-row .col-order-18{order:18}.x-grid-row .col-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-push-17{left:70.83333333%}.x-grid-row .col-pull-17{right:70.83333333%}.x-grid-row .col-offset-17{margin-left:70.83333333%}.x-grid-row .col-order-17{order:17}.x-grid-row .col-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-push-16{left:66.66666667%}.x-grid-row .col-pull-16{right:66.66666667%}.x-grid-row .col-offset-16{margin-left:66.66666667%}.x-grid-row .col-order-16{order:16}.x-grid-row .col-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-push-15{left:62.5%}.x-grid-row .col-pull-15{right:62.5%}.x-grid-row .col-offset-15{margin-left:62.5%}.x-grid-row .col-order-15{order:15}.x-grid-row .col-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-push-14{left:58.33333333%}.x-grid-row .col-pull-14{right:58.33333333%}.x-grid-row .col-offset-14{margin-left:58.33333333%}.x-grid-row .col-order-14{order:14}.x-grid-row .col-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-push-13{left:54.16666667%}.x-grid-row .col-pull-13{right:54.16666667%}.x-grid-row .col-offset-13{margin-left:54.16666667%}.x-grid-row .col-order-13{order:13}.x-grid-row .col-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-push-12{left:50%}.x-grid-row .col-pull-12{right:50%}.x-grid-row .col-offset-12{margin-left:50%}.x-grid-row .col-order-12{order:12}.x-grid-row .col-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-push-11{left:45.83333333%}.x-grid-row .col-pull-11{right:45.83333333%}.x-grid-row .col-offset-11{margin-left:45.83333333%}.x-grid-row .col-order-11{order:11}.x-grid-row .col-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-push-10{left:41.66666667%}.x-grid-row .col-pull-10{right:41.66666667%}.x-grid-row .col-offset-10{margin-left:41.66666667%}.x-grid-row .col-order-10{order:10}.x-grid-row .col-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-push-9{left:37.5%}.x-grid-row .col-pull-9{right:37.5%}.x-grid-row .col-offset-9{margin-left:37.5%}.x-grid-row .col-order-9{order:9}.x-grid-row .col-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-push-8{left:33.33333333%}.x-grid-row .col-pull-8{right:33.33333333%}.x-grid-row .col-offset-8{margin-left:33.33333333%}.x-grid-row .col-order-8{order:8}.x-grid-row .col-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-push-7{left:29.16666667%}.x-grid-row .col-pull-7{right:29.16666667%}.x-grid-row .col-offset-7{margin-left:29.16666667%}.x-grid-row .col-order-7{order:7}.x-grid-row .col-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-push-6{left:25%}.x-grid-row .col-pull-6{right:25%}.x-grid-row .col-offset-6{margin-left:25%}.x-grid-row .col-order-6{order:6}.x-grid-row .col-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-push-5{left:20.83333333%}.x-grid-row .col-pull-5{right:20.83333333%}.x-grid-row .col-offset-5{margin-left:20.83333333%}.x-grid-row .col-order-5{order:5}.x-grid-row .col-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-push-4{left:16.66666667%}.x-grid-row .col-pull-4{right:16.66666667%}.x-grid-row .col-offset-4{margin-left:16.66666667%}.x-grid-row .col-order-4{order:4}.x-grid-row .col-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-push-3{left:12.5%}.x-grid-row .col-pull-3{right:12.5%}.x-grid-row .col-offset-3{margin-left:12.5%}.x-grid-row .col-order-3{order:3}.x-grid-row .col-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-push-2{left:8.33333333%}.x-grid-row .col-pull-2{right:8.33333333%}.x-grid-row .col-offset-2{margin-left:8.33333333%}.x-grid-row .col-order-2{order:2}.x-grid-row .col-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-push-1{left:4.16666667%}.x-grid-row .col-pull-1{right:4.16666667%}.x-grid-row .col-offset-1{margin-left:4.16666667%}.x-grid-row .col-order-1{order:1}.x-grid-row .col-0{display:none}.x-grid-row .col-offset-0{margin-left:0}.x-grid-row .col-order-0{order:0}.x-grid-row .col-xs-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-xs-push-24{left:100%}.x-grid-row .col-xs-pull-24{right:100%}.x-grid-row .col-xs-offset-24{margin-left:100%}.x-grid-row .col-xs-order-24{order:24}.x-grid-row .col-xs-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-xs-push-23{left:95.83333333%}.x-grid-row .col-xs-pull-23{right:95.83333333%}.x-grid-row .col-xs-offset-23{margin-left:95.83333333%}.x-grid-row .col-xs-order-23{order:23}.x-grid-row .col-xs-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-xs-push-22{left:91.66666667%}.x-grid-row .col-xs-pull-22{right:91.66666667%}.x-grid-row .col-xs-offset-22{margin-left:91.66666667%}.x-grid-row .col-xs-order-22{order:22}.x-grid-row .col-xs-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-xs-push-21{left:87.5%}.x-grid-row .col-xs-pull-21{right:87.5%}.x-grid-row .col-xs-offset-21{margin-left:87.5%}.x-grid-row .col-xs-order-21{order:21}.x-grid-row .col-xs-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-xs-push-20{left:83.33333333%}.x-grid-row .col-xs-pull-20{right:83.33333333%}.x-grid-row .col-xs-offset-20{margin-left:83.33333333%}.x-grid-row .col-xs-order-20{order:20}.x-grid-row .col-xs-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-xs-push-19{left:79.16666667%}.x-grid-row .col-xs-pull-19{right:79.16666667%}.x-grid-row .col-xs-offset-19{margin-left:79.16666667%}.x-grid-row .col-xs-order-19{order:19}.x-grid-row .col-xs-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-xs-push-18{left:75%}.x-grid-row .col-xs-pull-18{right:75%}.x-grid-row .col-xs-offset-18{margin-left:75%}.x-grid-row .col-xs-order-18{order:18}.x-grid-row .col-xs-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-xs-push-17{left:70.83333333%}.x-grid-row .col-xs-pull-17{right:70.83333333%}.x-grid-row .col-xs-offset-17{margin-left:70.83333333%}.x-grid-row .col-xs-order-17{order:17}.x-grid-row .col-xs-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-xs-push-16{left:66.66666667%}.x-grid-row .col-xs-pull-16{right:66.66666667%}.x-grid-row .col-xs-offset-16{margin-left:66.66666667%}.x-grid-row .col-xs-order-16{order:16}.x-grid-row .col-xs-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-xs-push-15{left:62.5%}.x-grid-row .col-xs-pull-15{right:62.5%}.x-grid-row .col-xs-offset-15{margin-left:62.5%}.x-grid-row .col-xs-order-15{order:15}.x-grid-row .col-xs-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-xs-push-14{left:58.33333333%}.x-grid-row .col-xs-pull-14{right:58.33333333%}.x-grid-row .col-xs-offset-14{margin-left:58.33333333%}.x-grid-row .col-xs-order-14{order:14}.x-grid-row .col-xs-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-xs-push-13{left:54.16666667%}.x-grid-row .col-xs-pull-13{right:54.16666667%}.x-grid-row .col-xs-offset-13{margin-left:54.16666667%}.x-grid-row .col-xs-order-13{order:13}.x-grid-row .col-xs-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-xs-push-12{left:50%}.x-grid-row .col-xs-pull-12{right:50%}.x-grid-row .col-xs-offset-12{margin-left:50%}.x-grid-row .col-xs-order-12{order:12}.x-grid-row .col-xs-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-xs-push-11{left:45.83333333%}.x-grid-row .col-xs-pull-11{right:45.83333333%}.x-grid-row .col-xs-offset-11{margin-left:45.83333333%}.x-grid-row .col-xs-order-11{order:11}.x-grid-row .col-xs-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-xs-push-10{left:41.66666667%}.x-grid-row .col-xs-pull-10{right:41.66666667%}.x-grid-row .col-xs-offset-10{margin-left:41.66666667%}.x-grid-row .col-xs-order-10{order:10}.x-grid-row .col-xs-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-xs-push-9{left:37.5%}.x-grid-row .col-xs-pull-9{right:37.5%}.x-grid-row .col-xs-offset-9{margin-left:37.5%}.x-grid-row .col-xs-order-9{order:9}.x-grid-row .col-xs-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-xs-push-8{left:33.33333333%}.x-grid-row .col-xs-pull-8{right:33.33333333%}.x-grid-row .col-xs-offset-8{margin-left:33.33333333%}.x-grid-row .col-xs-order-8{order:8}.x-grid-row .col-xs-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-xs-push-7{left:29.16666667%}.x-grid-row .col-xs-pull-7{right:29.16666667%}.x-grid-row .col-xs-offset-7{margin-left:29.16666667%}.x-grid-row .col-xs-order-7{order:7}.x-grid-row .col-xs-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-xs-push-6{left:25%}.x-grid-row .col-xs-pull-6{right:25%}.x-grid-row .col-xs-offset-6{margin-left:25%}.x-grid-row .col-xs-order-6{order:6}.x-grid-row .col-xs-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-xs-push-5{left:20.83333333%}.x-grid-row .col-xs-pull-5{right:20.83333333%}.x-grid-row .col-xs-offset-5{margin-left:20.83333333%}.x-grid-row .col-xs-order-5{order:5}.x-grid-row .col-xs-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-xs-push-4{left:16.66666667%}.x-grid-row .col-xs-pull-4{right:16.66666667%}.x-grid-row .col-xs-offset-4{margin-left:16.66666667%}.x-grid-row .col-xs-order-4{order:4}.x-grid-row .col-xs-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-xs-push-3{left:12.5%}.x-grid-row .col-xs-pull-3{right:12.5%}.x-grid-row .col-xs-offset-3{margin-left:12.5%}.x-grid-row .col-xs-order-3{order:3}.x-grid-row .col-xs-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-xs-push-2{left:8.33333333%}.x-grid-row .col-xs-pull-2{right:8.33333333%}.x-grid-row .col-xs-offset-2{margin-left:8.33333333%}.x-grid-row .col-xs-order-2{order:2}.x-grid-row .col-xs-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-xs-push-1{left:4.16666667%}.x-grid-row .col-xs-pull-1{right:4.16666667%}.x-grid-row .col-xs-offset-1{margin-left:4.16666667%}.x-grid-row .col-xs-order-1{order:1}.x-grid-row .col-xs-0{display:none}.x-grid-row .col-push-0{left:auto}.x-grid-row .col-pull-0{right:auto}.x-grid-row .col-xs-push-0{left:auto}.x-grid-row .col-xs-pull-0{right:auto}.x-grid-row .col-xs-offset-0{margin-left:0}.x-grid-row .col-xs-order-0{order:0}@media (min-width:576px){.x-grid-row .col-sm-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-sm-push-24{left:100%}.x-grid-row .col-sm-pull-24{right:100%}.x-grid-row .col-sm-offset-24{margin-left:100%}.x-grid-row .col-sm-order-24{order:24}.x-grid-row .col-sm-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-sm-push-23{left:95.83333333%}.x-grid-row .col-sm-pull-23{right:95.83333333%}.x-grid-row .col-sm-offset-23{margin-left:95.83333333%}.x-grid-row .col-sm-order-23{order:23}.x-grid-row .col-sm-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-sm-push-22{left:91.66666667%}.x-grid-row .col-sm-pull-22{right:91.66666667%}.x-grid-row .col-sm-offset-22{margin-left:91.66666667%}.x-grid-row .col-sm-order-22{order:22}.x-grid-row .col-sm-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-sm-push-21{left:87.5%}.x-grid-row .col-sm-pull-21{right:87.5%}.x-grid-row .col-sm-offset-21{margin-left:87.5%}.x-grid-row .col-sm-order-21{order:21}.x-grid-row .col-sm-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-sm-push-20{left:83.33333333%}.x-grid-row .col-sm-pull-20{right:83.33333333%}.x-grid-row .col-sm-offset-20{margin-left:83.33333333%}.x-grid-row .col-sm-order-20{order:20}.x-grid-row .col-sm-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-sm-push-19{left:79.16666667%}.x-grid-row .col-sm-pull-19{right:79.16666667%}.x-grid-row .col-sm-offset-19{margin-left:79.16666667%}.x-grid-row .col-sm-order-19{order:19}.x-grid-row .col-sm-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-sm-push-18{left:75%}.x-grid-row .col-sm-pull-18{right:75%}.x-grid-row .col-sm-offset-18{margin-left:75%}.x-grid-row .col-sm-order-18{order:18}.x-grid-row .col-sm-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-sm-push-17{left:70.83333333%}.x-grid-row .col-sm-pull-17{right:70.83333333%}.x-grid-row .col-sm-offset-17{margin-left:70.83333333%}.x-grid-row .col-sm-order-17{order:17}.x-grid-row .col-sm-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-sm-push-16{left:66.66666667%}.x-grid-row .col-sm-pull-16{right:66.66666667%}.x-grid-row .col-sm-offset-16{margin-left:66.66666667%}.x-grid-row .col-sm-order-16{order:16}.x-grid-row .col-sm-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-sm-push-15{left:62.5%}.x-grid-row .col-sm-pull-15{right:62.5%}.x-grid-row .col-sm-offset-15{margin-left:62.5%}.x-grid-row .col-sm-order-15{order:15}.x-grid-row .col-sm-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-sm-push-14{left:58.33333333%}.x-grid-row .col-sm-pull-14{right:58.33333333%}.x-grid-row .col-sm-offset-14{margin-left:58.33333333%}.x-grid-row .col-sm-order-14{order:14}.x-grid-row .col-sm-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-sm-push-13{left:54.16666667%}.x-grid-row .col-sm-pull-13{right:54.16666667%}.x-grid-row .col-sm-offset-13{margin-left:54.16666667%}.x-grid-row .col-sm-order-13{order:13}.x-grid-row .col-sm-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-sm-push-12{left:50%}.x-grid-row .col-sm-pull-12{right:50%}.x-grid-row .col-sm-offset-12{margin-left:50%}.x-grid-row .col-sm-order-12{order:12}.x-grid-row .col-sm-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-sm-push-11{left:45.83333333%}.x-grid-row .col-sm-pull-11{right:45.83333333%}.x-grid-row .col-sm-offset-11{margin-left:45.83333333%}.x-grid-row .col-sm-order-11{order:11}.x-grid-row .col-sm-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-sm-push-10{left:41.66666667%}.x-grid-row .col-sm-pull-10{right:41.66666667%}.x-grid-row .col-sm-offset-10{margin-left:41.66666667%}.x-grid-row .col-sm-order-10{order:10}.x-grid-row .col-sm-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-sm-push-9{left:37.5%}.x-grid-row .col-sm-pull-9{right:37.5%}.x-grid-row .col-sm-offset-9{margin-left:37.5%}.x-grid-row .col-sm-order-9{order:9}.x-grid-row .col-sm-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-sm-push-8{left:33.33333333%}.x-grid-row .col-sm-pull-8{right:33.33333333%}.x-grid-row .col-sm-offset-8{margin-left:33.33333333%}.x-grid-row .col-sm-order-8{order:8}.x-grid-row .col-sm-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-sm-push-7{left:29.16666667%}.x-grid-row .col-sm-pull-7{right:29.16666667%}.x-grid-row .col-sm-offset-7{margin-left:29.16666667%}.x-grid-row .col-sm-order-7{order:7}.x-grid-row .col-sm-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-sm-push-6{left:25%}.x-grid-row .col-sm-pull-6{right:25%}.x-grid-row .col-sm-offset-6{margin-left:25%}.x-grid-row .col-sm-order-6{order:6}.x-grid-row .col-sm-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-sm-push-5{left:20.83333333%}.x-grid-row .col-sm-pull-5{right:20.83333333%}.x-grid-row .col-sm-offset-5{margin-left:20.83333333%}.x-grid-row .col-sm-order-5{order:5}.x-grid-row .col-sm-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-sm-push-4{left:16.66666667%}.x-grid-row .col-sm-pull-4{right:16.66666667%}.x-grid-row .col-sm-offset-4{margin-left:16.66666667%}.x-grid-row .col-sm-order-4{order:4}.x-grid-row .col-sm-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-sm-push-3{left:12.5%}.x-grid-row .col-sm-pull-3{right:12.5%}.x-grid-row .col-sm-offset-3{margin-left:12.5%}.x-grid-row .col-sm-order-3{order:3}.x-grid-row .col-sm-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-sm-push-2{left:8.33333333%}.x-grid-row .col-sm-pull-2{right:8.33333333%}.x-grid-row .col-sm-offset-2{margin-left:8.33333333%}.x-grid-row .col-sm-order-2{order:2}.x-grid-row .col-sm-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-sm-push-1{left:4.16666667%}.x-grid-row .col-sm-pull-1{right:4.16666667%}.x-grid-row .col-sm-offset-1{margin-left:4.16666667%}.x-grid-row .col-sm-order-1{order:1}.x-grid-row .col-sm-0{display:none}.x-grid-row .col-push-0{left:auto}.x-grid-row .col-pull-0{right:auto}.x-grid-row .col-sm-push-0{left:auto}.x-grid-row .col-sm-pull-0{right:auto}.x-grid-row .col-sm-offset-0{margin-left:0}.x-grid-row .col-sm-order-0{order:0}}@media (min-width:768px){.x-grid-row .col-md-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-md-push-24{left:100%}.x-grid-row .col-md-pull-24{right:100%}.x-grid-row .col-md-offset-24{margin-left:100%}.x-grid-row .col-md-order-24{order:24}.x-grid-row .col-md-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-md-push-23{left:95.83333333%}.x-grid-row .col-md-pull-23{right:95.83333333%}.x-grid-row .col-md-offset-23{margin-left:95.83333333%}.x-grid-row .col-md-order-23{order:23}.x-grid-row .col-md-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-md-push-22{left:91.66666667%}.x-grid-row .col-md-pull-22{right:91.66666667%}.x-grid-row .col-md-offset-22{margin-left:91.66666667%}.x-grid-row .col-md-order-22{order:22}.x-grid-row .col-md-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-md-push-21{left:87.5%}.x-grid-row .col-md-pull-21{right:87.5%}.x-grid-row .col-md-offset-21{margin-left:87.5%}.x-grid-row .col-md-order-21{order:21}.x-grid-row .col-md-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-md-push-20{left:83.33333333%}.x-grid-row .col-md-pull-20{right:83.33333333%}.x-grid-row .col-md-offset-20{margin-left:83.33333333%}.x-grid-row .col-md-order-20{order:20}.x-grid-row .col-md-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-md-push-19{left:79.16666667%}.x-grid-row .col-md-pull-19{right:79.16666667%}.x-grid-row .col-md-offset-19{margin-left:79.16666667%}.x-grid-row .col-md-order-19{order:19}.x-grid-row .col-md-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-md-push-18{left:75%}.x-grid-row .col-md-pull-18{right:75%}.x-grid-row .col-md-offset-18{margin-left:75%}.x-grid-row .col-md-order-18{order:18}.x-grid-row .col-md-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-md-push-17{left:70.83333333%}.x-grid-row .col-md-pull-17{right:70.83333333%}.x-grid-row .col-md-offset-17{margin-left:70.83333333%}.x-grid-row .col-md-order-17{order:17}.x-grid-row .col-md-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-md-push-16{left:66.66666667%}.x-grid-row .col-md-pull-16{right:66.66666667%}.x-grid-row .col-md-offset-16{margin-left:66.66666667%}.x-grid-row .col-md-order-16{order:16}.x-grid-row .col-md-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-md-push-15{left:62.5%}.x-grid-row .col-md-pull-15{right:62.5%}.x-grid-row .col-md-offset-15{margin-left:62.5%}.x-grid-row .col-md-order-15{order:15}.x-grid-row .col-md-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-md-push-14{left:58.33333333%}.x-grid-row .col-md-pull-14{right:58.33333333%}.x-grid-row .col-md-offset-14{margin-left:58.33333333%}.x-grid-row .col-md-order-14{order:14}.x-grid-row .col-md-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-md-push-13{left:54.16666667%}.x-grid-row .col-md-pull-13{right:54.16666667%}.x-grid-row .col-md-offset-13{margin-left:54.16666667%}.x-grid-row .col-md-order-13{order:13}.x-grid-row .col-md-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-md-push-12{left:50%}.x-grid-row .col-md-pull-12{right:50%}.x-grid-row .col-md-offset-12{margin-left:50%}.x-grid-row .col-md-order-12{order:12}.x-grid-row .col-md-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-md-push-11{left:45.83333333%}.x-grid-row .col-md-pull-11{right:45.83333333%}.x-grid-row .col-md-offset-11{margin-left:45.83333333%}.x-grid-row .col-md-order-11{order:11}.x-grid-row .col-md-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-md-push-10{left:41.66666667%}.x-grid-row .col-md-pull-10{right:41.66666667%}.x-grid-row .col-md-offset-10{margin-left:41.66666667%}.x-grid-row .col-md-order-10{order:10}.x-grid-row .col-md-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-md-push-9{left:37.5%}.x-grid-row .col-md-pull-9{right:37.5%}.x-grid-row .col-md-offset-9{margin-left:37.5%}.x-grid-row .col-md-order-9{order:9}.x-grid-row .col-md-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-md-push-8{left:33.33333333%}.x-grid-row .col-md-pull-8{right:33.33333333%}.x-grid-row .col-md-offset-8{margin-left:33.33333333%}.x-grid-row .col-md-order-8{order:8}.x-grid-row .col-md-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-md-push-7{left:29.16666667%}.x-grid-row .col-md-pull-7{right:29.16666667%}.x-grid-row .col-md-offset-7{margin-left:29.16666667%}.x-grid-row .col-md-order-7{order:7}.x-grid-row .col-md-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-md-push-6{left:25%}.x-grid-row .col-md-pull-6{right:25%}.x-grid-row .col-md-offset-6{margin-left:25%}.x-grid-row .col-md-order-6{order:6}.x-grid-row .col-md-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-md-push-5{left:20.83333333%}.x-grid-row .col-md-pull-5{right:20.83333333%}.x-grid-row .col-md-offset-5{margin-left:20.83333333%}.x-grid-row .col-md-order-5{order:5}.x-grid-row .col-md-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-md-push-4{left:16.66666667%}.x-grid-row .col-md-pull-4{right:16.66666667%}.x-grid-row .col-md-offset-4{margin-left:16.66666667%}.x-grid-row .col-md-order-4{order:4}.x-grid-row .col-md-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-md-push-3{left:12.5%}.x-grid-row .col-md-pull-3{right:12.5%}.x-grid-row .col-md-offset-3{margin-left:12.5%}.x-grid-row .col-md-order-3{order:3}.x-grid-row .col-md-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-md-push-2{left:8.33333333%}.x-grid-row .col-md-pull-2{right:8.33333333%}.x-grid-row .col-md-offset-2{margin-left:8.33333333%}.x-grid-row .col-md-order-2{order:2}.x-grid-row .col-md-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-md-push-1{left:4.16666667%}.x-grid-row .col-md-pull-1{right:4.16666667%}.x-grid-row .col-md-offset-1{margin-left:4.16666667%}.x-grid-row .col-md-order-1{order:1}.x-grid-row .col-md-0{display:none}.x-grid-row .col-push-0{left:auto}.x-grid-row .col-pull-0{right:auto}.x-grid-row .col-md-push-0{left:auto}.x-grid-row .col-md-pull-0{right:auto}.x-grid-row .col-md-offset-0{margin-left:0}.x-grid-row .col-md-order-0{order:0}}@media (min-width:992px){.x-grid-row .col-lg-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-lg-push-24{left:100%}.x-grid-row .col-lg-pull-24{right:100%}.x-grid-row .col-lg-offset-24{margin-left:100%}.x-grid-row .col-lg-order-24{order:24}.x-grid-row .col-lg-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-lg-push-23{left:95.83333333%}.x-grid-row .col-lg-pull-23{right:95.83333333%}.x-grid-row .col-lg-offset-23{margin-left:95.83333333%}.x-grid-row .col-lg-order-23{order:23}.x-grid-row .col-lg-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-lg-push-22{left:91.66666667%}.x-grid-row .col-lg-pull-22{right:91.66666667%}.x-grid-row .col-lg-offset-22{margin-left:91.66666667%}.x-grid-row .col-lg-order-22{order:22}.x-grid-row .col-lg-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-lg-push-21{left:87.5%}.x-grid-row .col-lg-pull-21{right:87.5%}.x-grid-row .col-lg-offset-21{margin-left:87.5%}.x-grid-row .col-lg-order-21{order:21}.x-grid-row .col-lg-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-lg-push-20{left:83.33333333%}.x-grid-row .col-lg-pull-20{right:83.33333333%}.x-grid-row .col-lg-offset-20{margin-left:83.33333333%}.x-grid-row .col-lg-order-20{order:20}.x-grid-row .col-lg-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-lg-push-19{left:79.16666667%}.x-grid-row .col-lg-pull-19{right:79.16666667%}.x-grid-row .col-lg-offset-19{margin-left:79.16666667%}.x-grid-row .col-lg-order-19{order:19}.x-grid-row .col-lg-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-lg-push-18{left:75%}.x-grid-row .col-lg-pull-18{right:75%}.x-grid-row .col-lg-offset-18{margin-left:75%}.x-grid-row .col-lg-order-18{order:18}.x-grid-row .col-lg-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-lg-push-17{left:70.83333333%}.x-grid-row .col-lg-pull-17{right:70.83333333%}.x-grid-row .col-lg-offset-17{margin-left:70.83333333%}.x-grid-row .col-lg-order-17{order:17}.x-grid-row .col-lg-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-lg-push-16{left:66.66666667%}.x-grid-row .col-lg-pull-16{right:66.66666667%}.x-grid-row .col-lg-offset-16{margin-left:66.66666667%}.x-grid-row .col-lg-order-16{order:16}.x-grid-row .col-lg-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-lg-push-15{left:62.5%}.x-grid-row .col-lg-pull-15{right:62.5%}.x-grid-row .col-lg-offset-15{margin-left:62.5%}.x-grid-row .col-lg-order-15{order:15}.x-grid-row .col-lg-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-lg-push-14{left:58.33333333%}.x-grid-row .col-lg-pull-14{right:58.33333333%}.x-grid-row .col-lg-offset-14{margin-left:58.33333333%}.x-grid-row .col-lg-order-14{order:14}.x-grid-row .col-lg-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-lg-push-13{left:54.16666667%}.x-grid-row .col-lg-pull-13{right:54.16666667%}.x-grid-row .col-lg-offset-13{margin-left:54.16666667%}.x-grid-row .col-lg-order-13{order:13}.x-grid-row .col-lg-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-lg-push-12{left:50%}.x-grid-row .col-lg-pull-12{right:50%}.x-grid-row .col-lg-offset-12{margin-left:50%}.x-grid-row .col-lg-order-12{order:12}.x-grid-row .col-lg-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-lg-push-11{left:45.83333333%}.x-grid-row .col-lg-pull-11{right:45.83333333%}.x-grid-row .col-lg-offset-11{margin-left:45.83333333%}.x-grid-row .col-lg-order-11{order:11}.x-grid-row .col-lg-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-lg-push-10{left:41.66666667%}.x-grid-row .col-lg-pull-10{right:41.66666667%}.x-grid-row .col-lg-offset-10{margin-left:41.66666667%}.x-grid-row .col-lg-order-10{order:10}.x-grid-row .col-lg-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-lg-push-9{left:37.5%}.x-grid-row .col-lg-pull-9{right:37.5%}.x-grid-row .col-lg-offset-9{margin-left:37.5%}.x-grid-row .col-lg-order-9{order:9}.x-grid-row .col-lg-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-lg-push-8{left:33.33333333%}.x-grid-row .col-lg-pull-8{right:33.33333333%}.x-grid-row .col-lg-offset-8{margin-left:33.33333333%}.x-grid-row .col-lg-order-8{order:8}.x-grid-row .col-lg-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-lg-push-7{left:29.16666667%}.x-grid-row .col-lg-pull-7{right:29.16666667%}.x-grid-row .col-lg-offset-7{margin-left:29.16666667%}.x-grid-row .col-lg-order-7{order:7}.x-grid-row .col-lg-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-lg-push-6{left:25%}.x-grid-row .col-lg-pull-6{right:25%}.x-grid-row .col-lg-offset-6{margin-left:25%}.x-grid-row .col-lg-order-6{order:6}.x-grid-row .col-lg-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-lg-push-5{left:20.83333333%}.x-grid-row .col-lg-pull-5{right:20.83333333%}.x-grid-row .col-lg-offset-5{margin-left:20.83333333%}.x-grid-row .col-lg-order-5{order:5}.x-grid-row .col-lg-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-lg-push-4{left:16.66666667%}.x-grid-row .col-lg-pull-4{right:16.66666667%}.x-grid-row .col-lg-offset-4{margin-left:16.66666667%}.x-grid-row .col-lg-order-4{order:4}.x-grid-row .col-lg-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-lg-push-3{left:12.5%}.x-grid-row .col-lg-pull-3{right:12.5%}.x-grid-row .col-lg-offset-3{margin-left:12.5%}.x-grid-row .col-lg-order-3{order:3}.x-grid-row .col-lg-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-lg-push-2{left:8.33333333%}.x-grid-row .col-lg-pull-2{right:8.33333333%}.x-grid-row .col-lg-offset-2{margin-left:8.33333333%}.x-grid-row .col-lg-order-2{order:2}.x-grid-row .col-lg-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-lg-push-1{left:4.16666667%}.x-grid-row .col-lg-pull-1{right:4.16666667%}.x-grid-row .col-lg-offset-1{margin-left:4.16666667%}.x-grid-row .col-lg-order-1{order:1}.x-grid-row .col-lg-0{display:none}.x-grid-row .col-push-0{left:auto}.x-grid-row .col-pull-0{right:auto}.x-grid-row .col-lg-push-0{left:auto}.x-grid-row .col-lg-pull-0{right:auto}.x-grid-row .col-lg-offset-0{margin-left:0}.x-grid-row .col-lg-order-0{order:0}}@media (min-width:1200px){.x-grid-row .col-xl-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-xl-push-24{left:100%}.x-grid-row .col-xl-pull-24{right:100%}.x-grid-row .col-xl-offset-24{margin-left:100%}.x-grid-row .col-xl-order-24{order:24}.x-grid-row .col-xl-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-xl-push-23{left:95.83333333%}.x-grid-row .col-xl-pull-23{right:95.83333333%}.x-grid-row .col-xl-offset-23{margin-left:95.83333333%}.x-grid-row .col-xl-order-23{order:23}.x-grid-row .col-xl-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-xl-push-22{left:91.66666667%}.x-grid-row .col-xl-pull-22{right:91.66666667%}.x-grid-row .col-xl-offset-22{margin-left:91.66666667%}.x-grid-row .col-xl-order-22{order:22}.x-grid-row .col-xl-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-xl-push-21{left:87.5%}.x-grid-row .col-xl-pull-21{right:87.5%}.x-grid-row .col-xl-offset-21{margin-left:87.5%}.x-grid-row .col-xl-order-21{order:21}.x-grid-row .col-xl-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-xl-push-20{left:83.33333333%}.x-grid-row .col-xl-pull-20{right:83.33333333%}.x-grid-row .col-xl-offset-20{margin-left:83.33333333%}.x-grid-row .col-xl-order-20{order:20}.x-grid-row .col-xl-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-xl-push-19{left:79.16666667%}.x-grid-row .col-xl-pull-19{right:79.16666667%}.x-grid-row .col-xl-offset-19{margin-left:79.16666667%}.x-grid-row .col-xl-order-19{order:19}.x-grid-row .col-xl-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-xl-push-18{left:75%}.x-grid-row .col-xl-pull-18{right:75%}.x-grid-row .col-xl-offset-18{margin-left:75%}.x-grid-row .col-xl-order-18{order:18}.x-grid-row .col-xl-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-xl-push-17{left:70.83333333%}.x-grid-row .col-xl-pull-17{right:70.83333333%}.x-grid-row .col-xl-offset-17{margin-left:70.83333333%}.x-grid-row .col-xl-order-17{order:17}.x-grid-row .col-xl-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-xl-push-16{left:66.66666667%}.x-grid-row .col-xl-pull-16{right:66.66666667%}.x-grid-row .col-xl-offset-16{margin-left:66.66666667%}.x-grid-row .col-xl-order-16{order:16}.x-grid-row .col-xl-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-xl-push-15{left:62.5%}.x-grid-row .col-xl-pull-15{right:62.5%}.x-grid-row .col-xl-offset-15{margin-left:62.5%}.x-grid-row .col-xl-order-15{order:15}.x-grid-row .col-xl-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-xl-push-14{left:58.33333333%}.x-grid-row .col-xl-pull-14{right:58.33333333%}.x-grid-row .col-xl-offset-14{margin-left:58.33333333%}.x-grid-row .col-xl-order-14{order:14}.x-grid-row .col-xl-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-xl-push-13{left:54.16666667%}.x-grid-row .col-xl-pull-13{right:54.16666667%}.x-grid-row .col-xl-offset-13{margin-left:54.16666667%}.x-grid-row .col-xl-order-13{order:13}.x-grid-row .col-xl-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-xl-push-12{left:50%}.x-grid-row .col-xl-pull-12{right:50%}.x-grid-row .col-xl-offset-12{margin-left:50%}.x-grid-row .col-xl-order-12{order:12}.x-grid-row .col-xl-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-xl-push-11{left:45.83333333%}.x-grid-row .col-xl-pull-11{right:45.83333333%}.x-grid-row .col-xl-offset-11{margin-left:45.83333333%}.x-grid-row .col-xl-order-11{order:11}.x-grid-row .col-xl-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-xl-push-10{left:41.66666667%}.x-grid-row .col-xl-pull-10{right:41.66666667%}.x-grid-row .col-xl-offset-10{margin-left:41.66666667%}.x-grid-row .col-xl-order-10{order:10}.x-grid-row .col-xl-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-xl-push-9{left:37.5%}.x-grid-row .col-xl-pull-9{right:37.5%}.x-grid-row .col-xl-offset-9{margin-left:37.5%}.x-grid-row .col-xl-order-9{order:9}.x-grid-row .col-xl-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-xl-push-8{left:33.33333333%}.x-grid-row .col-xl-pull-8{right:33.33333333%}.x-grid-row .col-xl-offset-8{margin-left:33.33333333%}.x-grid-row .col-xl-order-8{order:8}.x-grid-row .col-xl-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-xl-push-7{left:29.16666667%}.x-grid-row .col-xl-pull-7{right:29.16666667%}.x-grid-row .col-xl-offset-7{margin-left:29.16666667%}.x-grid-row .col-xl-order-7{order:7}.x-grid-row .col-xl-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-xl-push-6{left:25%}.x-grid-row .col-xl-pull-6{right:25%}.x-grid-row .col-xl-offset-6{margin-left:25%}.x-grid-row .col-xl-order-6{order:6}.x-grid-row .col-xl-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-xl-push-5{left:20.83333333%}.x-grid-row .col-xl-pull-5{right:20.83333333%}.x-grid-row .col-xl-offset-5{margin-left:20.83333333%}.x-grid-row .col-xl-order-5{order:5}.x-grid-row .col-xl-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-xl-push-4{left:16.66666667%}.x-grid-row .col-xl-pull-4{right:16.66666667%}.x-grid-row .col-xl-offset-4{margin-left:16.66666667%}.x-grid-row .col-xl-order-4{order:4}.x-grid-row .col-xl-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-xl-push-3{left:12.5%}.x-grid-row .col-xl-pull-3{right:12.5%}.x-grid-row .col-xl-offset-3{margin-left:12.5%}.x-grid-row .col-xl-order-3{order:3}.x-grid-row .col-xl-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-xl-push-2{left:8.33333333%}.x-grid-row .col-xl-pull-2{right:8.33333333%}.x-grid-row .col-xl-offset-2{margin-left:8.33333333%}.x-grid-row .col-xl-order-2{order:2}.x-grid-row .col-xl-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-xl-push-1{left:4.16666667%}.x-grid-row .col-xl-pull-1{right:4.16666667%}.x-grid-row .col-xl-offset-1{margin-left:4.16666667%}.x-grid-row .col-xl-order-1{order:1}.x-grid-row .col-xl-0{display:none}.x-grid-row .col-push-0{left:auto}.x-grid-row .col-pull-0{right:auto}.x-grid-row .col-xl-push-0{left:auto}.x-grid-row .col-xl-pull-0{right:auto}.x-grid-row .col-xl-offset-0{margin-left:0}.x-grid-row .col-xl-order-0{order:0}}@media (min-width:1600px){.x-grid-row .col-xxl-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-xxl-push-24{left:100%}.x-grid-row .col-xxl-pull-24{right:100%}.x-grid-row .col-xxl-offset-24{margin-left:100%}.x-grid-row .col-xxl-order-24{order:24}.x-grid-row .col-xxl-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-xxl-push-23{left:95.83333333%}.x-grid-row .col-xxl-pull-23{right:95.83333333%}.x-grid-row .col-xxl-offset-23{margin-left:95.83333333%}.x-grid-row .col-xxl-order-23{order:23}.x-grid-row .col-xxl-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-xxl-push-22{left:91.66666667%}.x-grid-row .col-xxl-pull-22{right:91.66666667%}.x-grid-row .col-xxl-offset-22{margin-left:91.66666667%}.x-grid-row .col-xxl-order-22{order:22}.x-grid-row .col-xxl-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-xxl-push-21{left:87.5%}.x-grid-row .col-xxl-pull-21{right:87.5%}.x-grid-row .col-xxl-offset-21{margin-left:87.5%}.x-grid-row .col-xxl-order-21{order:21}.x-grid-row .col-xxl-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-xxl-push-20{left:83.33333333%}.x-grid-row .col-xxl-pull-20{right:83.33333333%}.x-grid-row .col-xxl-offset-20{margin-left:83.33333333%}.x-grid-row .col-xxl-order-20{order:20}.x-grid-row .col-xxl-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-xxl-push-19{left:79.16666667%}.x-grid-row .col-xxl-pull-19{right:79.16666667%}.x-grid-row .col-xxl-offset-19{margin-left:79.16666667%}.x-grid-row .col-xxl-order-19{order:19}.x-grid-row .col-xxl-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-xxl-push-18{left:75%}.x-grid-row .col-xxl-pull-18{right:75%}.x-grid-row .col-xxl-offset-18{margin-left:75%}.x-grid-row .col-xxl-order-18{order:18}.x-grid-row .col-xxl-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-xxl-push-17{left:70.83333333%}.x-grid-row .col-xxl-pull-17{right:70.83333333%}.x-grid-row .col-xxl-offset-17{margin-left:70.83333333%}.x-grid-row .col-xxl-order-17{order:17}.x-grid-row .col-xxl-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-xxl-push-16{left:66.66666667%}.x-grid-row .col-xxl-pull-16{right:66.66666667%}.x-grid-row .col-xxl-offset-16{margin-left:66.66666667%}.x-grid-row .col-xxl-order-16{order:16}.x-grid-row .col-xxl-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-xxl-push-15{left:62.5%}.x-grid-row .col-xxl-pull-15{right:62.5%}.x-grid-row .col-xxl-offset-15{margin-left:62.5%}.x-grid-row .col-xxl-order-15{order:15}.x-grid-row .col-xxl-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-xxl-push-14{left:58.33333333%}.x-grid-row .col-xxl-pull-14{right:58.33333333%}.x-grid-row .col-xxl-offset-14{margin-left:58.33333333%}.x-grid-row .col-xxl-order-14{order:14}.x-grid-row .col-xxl-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-xxl-push-13{left:54.16666667%}.x-grid-row .col-xxl-pull-13{right:54.16666667%}.x-grid-row .col-xxl-offset-13{margin-left:54.16666667%}.x-grid-row .col-xxl-order-13{order:13}.x-grid-row .col-xxl-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-xxl-push-12{left:50%}.x-grid-row .col-xxl-pull-12{right:50%}.x-grid-row .col-xxl-offset-12{margin-left:50%}.x-grid-row .col-xxl-order-12{order:12}.x-grid-row .col-xxl-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-xxl-push-11{left:45.83333333%}.x-grid-row .col-xxl-pull-11{right:45.83333333%}.x-grid-row .col-xxl-offset-11{margin-left:45.83333333%}.x-grid-row .col-xxl-order-11{order:11}.x-grid-row .col-xxl-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-xxl-push-10{left:41.66666667%}.x-grid-row .col-xxl-pull-10{right:41.66666667%}.x-grid-row .col-xxl-offset-10{margin-left:41.66666667%}.x-grid-row .col-xxl-order-10{order:10}.x-grid-row .col-xxl-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-xxl-push-9{left:37.5%}.x-grid-row .col-xxl-pull-9{right:37.5%}.x-grid-row .col-xxl-offset-9{margin-left:37.5%}.x-grid-row .col-xxl-order-9{order:9}.x-grid-row .col-xxl-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-xxl-push-8{left:33.33333333%}.x-grid-row .col-xxl-pull-8{right:33.33333333%}.x-grid-row .col-xxl-offset-8{margin-left:33.33333333%}.x-grid-row .col-xxl-order-8{order:8}.x-grid-row .col-xxl-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-xxl-push-7{left:29.16666667%}.x-grid-row .col-xxl-pull-7{right:29.16666667%}.x-grid-row .col-xxl-offset-7{margin-left:29.16666667%}.x-grid-row .col-xxl-order-7{order:7}.x-grid-row .col-xxl-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-xxl-push-6{left:25%}.x-grid-row .col-xxl-pull-6{right:25%}.x-grid-row .col-xxl-offset-6{margin-left:25%}.x-grid-row .col-xxl-order-6{order:6}.x-grid-row .col-xxl-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-xxl-push-5{left:20.83333333%}.x-grid-row .col-xxl-pull-5{right:20.83333333%}.x-grid-row .col-xxl-offset-5{margin-left:20.83333333%}.x-grid-row .col-xxl-order-5{order:5}.x-grid-row .col-xxl-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-xxl-push-4{left:16.66666667%}.x-grid-row .col-xxl-pull-4{right:16.66666667%}.x-grid-row .col-xxl-offset-4{margin-left:16.66666667%}.x-grid-row .col-xxl-order-4{order:4}.x-grid-row .col-xxl-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-xxl-push-3{left:12.5%}.x-grid-row .col-xxl-pull-3{right:12.5%}.x-grid-row .col-xxl-offset-3{margin-left:12.5%}.x-grid-row .col-xxl-order-3{order:3}.x-grid-row .col-xxl-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-xxl-push-2{left:8.33333333%}.x-grid-row .col-xxl-pull-2{right:8.33333333%}.x-grid-row .col-xxl-offset-2{margin-left:8.33333333%}.x-grid-row .col-xxl-order-2{order:2}.x-grid-row .col-xxl-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-xxl-push-1{left:4.16666667%}.x-grid-row .col-xxl-pull-1{right:4.16666667%}.x-grid-row .col-xxl-offset-1{margin-left:4.16666667%}.x-grid-row .col-xxl-order-1{order:1}.x-grid-row .col-xxl-0{display:none}.x-grid-row .col-push-0{left:auto}.x-grid-row .col-pull-0{right:auto}.x-grid-row .col-xxl-push-0{left:auto}.x-grid-row .col-xxl-pull-0{right:auto}.x-grid-row .col-xxl-offset-0{margin-left:0}.x-grid-row .col-xxl-order-0{order:0}}.x-back-top{bottom:76px;cursor:pointer;position:fixed;right:21px;z-index:10}.x-back-top *,.x-back-top :after,.x-back-top :before{box-sizing:border-box}.x-back-top:empty{display:none}.x-back-top-content{border-radius:50%;color:#b5b8be;overflow:hidden;text-align:center;transition:all .3s}.x-back-top-content:hover{color:var(--fd-color-brand-6,#00b899);transition:all .3s}.x-back-top-icon{font-size:40px;line-height:40px;position:relative}.x-back-top-icon:after{background:#fff;border-radius:50%;content:"";height:28px;left:4px;position:absolute;top:4px;width:28px;z-index:-1}.x-color-picker{background-color:var(--fd-color-bg-container);border-radius:var(--fd-border-radius-lg);box-shadow:var(--fd-box-shadow-secondary);display:inline-block;padding:var(--fd-padding-layout-sm);position:relative}.x-color-picker *,.x-color-picker :after,.x-color-picker :before{box-sizing:border-box}.x-color-picker.without-opacity .main-wrapper .main-right{justify-content:center}.x-color-picker.without-opacity .footer-wrapper .rgb-input{flex:auto;width:48px}.x-color-picker .header-wrapper,.x-color-picker .main-wrapper{margin-bottom:var(--fd-gap-xl)}.x-color-picker .main-wrapper{display:flex}.x-color-picker .main-wrapper .main-left{border:1px solid var(--fd-color-fill-secondary);border-radius:var(--fd-border-radius);height:var(--fd-line-height-2xl);overflow:hidden;position:relative;width:var(--fd-line-height-2xl)}.x-color-picker .main-wrapper .main-left .color-value-bg{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==) 0;inset:0;position:absolute}.x-color-picker .main-wrapper .main-left .color-value{inset:0;position:absolute}.x-color-picker .main-wrapper .main-right{-webkit-box-align:stretch;-ms-flex-align:stretch;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:stretch;display:flex;flex-direction:column;justify-content:space-between;margin-left:var(--fd-gap-xl)}.x-color-picker .footer-wrapper{align-items:center;display:inline-flex;gap:var(--fd-gap-sm)}.x-color-picker .footer-wrapper .region-wrapper{flex:1 0 auto}.x-color-picker .footer-wrapper .region-wrapper .region-title{color:var(--fd-color-text-description);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-color-picker .footer-wrapper .region-divider{margin:var(--fd-line-height-sm) calc(var(--fd-gap)/2) 0 calc(var(--fd-gap)/2)}.x-color-picker .footer-wrapper .alpha-input,.x-color-picker .footer-wrapper .rgb-input{flex:none}.x-color-picker .footer-wrapper .rgb-input{width:32px}.x-color-picker .footer-wrapper .hex-input{flex:auto;width:64px}.x-color-picker .footer-wrapper .hex-input .x-inner-wrapper .x-prefix{left:8px;width:10px}.x-color-picker .footer-wrapper .alpha-input{width:46px}.x-color-picker .footer-wrapper .alpha-input .x-inner-wrapper .x-suffix{font-size:var(--fd-font-size-sm);right:4px;width:10px}.x-color-picker .footer-wrapper .alpha-input .x-inner-wrapper .input-inner{padding-left:4px;padding-right:14px}.x-color-picker .extra-divider{margin:var(--fd-gap) 0 0 0}.x-color-picker .extra-wrapper{margin-top:var(--fd-gap)}.x-color-picker .extra-wrapper .x-collapse.small .x-collapse-header,.x-color-picker .extra-wrapper .x-collapse.small .x-panel-content .x-panel-box{padding:0}.x-color-picker .extra-wrapper .x-collapse.small .no-message{color:var(--fd-color-text-placeholder);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-color-picker .extra-wrapper .color-region{display:flex;flex-wrap:wrap;gap:6px;padding:var(--fd-padding) 0}.x-color-picker .extra-wrapper .color-region>.color-square{border:1px solid var(--fd-color-fill-secondary);border-radius:4px;height:18px;position:relative;width:18px}.x-color-picker .extra-wrapper .color-region>.color-square .color-value-bg{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==) 0;inset:0;position:absolute}.x-color-picker .extra-wrapper .color-region>.color-square .color-value{inset:0;position:absolute}.x-color-picker .x-hue-slider{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red);border-radius:var(--fd-border-radius);height:8px;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-color-picker .x-hue-slider .x-hue-slider-cursor{background:var(--fd-color-primary);border:2px solid var(--fd-color-white);border-radius:50%;box-shadow:0 1px 4px #00000040;height:12px;position:absolute;top:50%;transform:translateY(-50%);width:12px}.x-color-picker .x-opacity-slider{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==) 0;border-radius:var(--fd-border-radius);height:8px;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-color-picker .x-opacity-slider .x-opacity-slider-value{border-radius:var(--fd-border-radius);inset:0;position:absolute}.x-color-picker .x-opacity-slider .x-opacity-slider-value .x-opacity-slider-cursor{background:var(--fd-color-primary);border:2px solid var(--fd-color-white);border-radius:50%;box-shadow:0 1px 4px #00000040;height:12px;position:absolute;top:50%;transform:translateY(-50%);width:12px}.x-color-picker .x-sv-panel{border-radius:4px;height:110px;overflow:hidden;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-color-picker .x-sv-panel .x-sv-panel-white{background:linear-gradient(90deg,#fff,hsla(0,0%,100%,0));inset:0;position:absolute}.x-color-picker .x-sv-panel .x-sv-panel-black{background:linear-gradient(0deg,#000,transparent);inset:0;position:absolute}.x-color-picker .x-sv-panel .x-sv-panel-cursor{position:absolute}.x-color-picker .x-sv-panel .x-sv-panel-cursor div{border:2px solid var(--fd-color-white);border-radius:50%;box-shadow:0 1px 4px #00000040;height:18px;transform:translate(-50%,-50%);width:18px}.x-virtual-table{height:100%;overflow-x:hidden;overflow-y:auto;position:relative}.x-virtual-table *,.x-virtual-table :after,.x-virtual-table :before{box-sizing:border-box}.x-virtual-table.resizing{cursor:ew-resize;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-virtual-table.resizing .table-body,.x-virtual-table.resizing .table-header{pointer-events:none}.x-virtual-table.large .virtual-table-wrapper td,.x-virtual-table.large .virtual-table-wrapper th{height:46px}.x-virtual-table.striped .virtual-table-wrapper .table-body .table-row.odd td{background:#f5f6f8}.x-virtual-table.has-cell-border td,.x-virtual-table.has-cell-border th{border-left:none;border-right:1px solid #e1e3e5}.x-virtual-table.has-out-border{border:1px solid #e1e3e5;border-radius:3px}.x-virtual-table.no-wrap .virtual-table-wrapper .table-body .table-row td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-virtual-table .virtual-table-wrapper{min-height:100%;position:relative}.x-virtual-table .virtual-table-wrapper table{border-collapse:separate;border-spacing:0;display:table;margin:0;padding:0;table-layout:fixed;width:100%}.x-virtual-table .virtual-table-wrapper table td,.x-virtual-table .virtual-table-wrapper table th{border-bottom:1px solid #e1e3e5;border-left:none;border-top:none;font-size:13px;height:34px;padding:3px 10px;text-align:left}.x-virtual-table .virtual-table-wrapper table td.fixed-left,.x-virtual-table .virtual-table-wrapper table th.fixed-left{z-index:5}.x-virtual-table .virtual-table-wrapper table td{line-height:20px}.x-virtual-table .virtual-table-wrapper table th{background:#f0f1f4;color:#141e31;font-weight:400;overflow:visible;position:relative}.x-virtual-table .virtual-table-wrapper table th .header-cell-content{-webkit-line-clamp:3;-webkit-box-orient:vertical;word-wrap:break-word;display:-webkit-inline-box;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;word-break:break-word}.x-virtual-table .virtual-table-wrapper table th .resize-spanner{bottom:0;cursor:ew-resize;opacity:0;position:absolute;right:-2px;top:0;transition:background-color .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:4px;z-index:1}.x-virtual-table .virtual-table-wrapper .no-scrollbar::-webkit-scrollbar{display:none}.x-virtual-table .virtual-table-wrapper .table-header{overflow:hidden}.x-virtual-table .virtual-table-wrapper .table-header.fixed{position:sticky;top:0;z-index:6}.x-virtual-table .virtual-table-wrapper .table-header th{word-wrap:break-word;white-space:normal;word-break:break-word}.x-virtual-table .virtual-table-wrapper .table-header th .sort-icon{align-items:center;bottom:0;display:flex;font-size:12px;font-weight:400;position:absolute;right:5px;top:0}.x-virtual-table .virtual-table-wrapper .table-body{overflow-x:auto;overflow-y:hidden}.x-virtual-table .virtual-table-wrapper .table-body>table{min-height:1px}.x-virtual-table .virtual-table-wrapper .table-body::-webkit-scrollbar,.x-virtual-table .virtual-table-wrapper .table-body::-webkit-scrollbar-thumb{background:transparent}.x-virtual-table .virtual-table-wrapper .table-body .table-row{min-height:48px}.x-virtual-table .virtual-table-wrapper .table-body .table-row .table-cell{word-wrap:break-word;background:#fff;white-space:normal;word-break:break-word}.x-virtual-table .virtual-table-wrapper .table-body .table-row.hover td.table-cell,.x-virtual-table .virtual-table-wrapper .table-body .table-row:hover td.table-cell{background:#f0f1f4}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask{bottom:0;overflow:hidden;pointer-events:none;position:absolute;top:0;z-index:7}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .fixed-shadow{height:100%}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .left,.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .right{box-shadow:none}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .left.show-shadow,.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .right.show-shadow{box-shadow:0 0 6px 2px #00000026}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .left{margin-right:20px}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .left.show-shadow{border-right:1px solid #e1e3e5}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .right{margin-left:20px}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .right.show-shadow{border-left:1px solid #e1e3e5}.x-virtual-table .horizontal-scroll-container{bottom:0;display:none;overflow:auto;position:sticky;z-index:7}.x-virtual-table .horizontal-scroll-container.not-support-sticky{left:0;position:absolute;right:0}.x-virtual-table .horizontal-scroll-container.show{display:block}.x-virtual-table .horizontal-scroll-container .scroll-item{height:1px}.x-virtual-table .column-resize-line{border-color:var(--fd-color-brand-6,#00b899);display:none;height:100%;left:0;position:absolute;top:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:1px;z-index:7}.x-virtual-table .column-resize-line.active{cursor:ew-resize;display:block}.x-svgicon{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;text-rendering:optimizeLegibility;text-transform:none}.x-svgicon>svg{vertical-align:-.125em}.x-svgicon.spin{animation:x-rotate 1s linear infinite;transform-origin:center}.x-collapse{background-color:var(--fd-color-fill-alter);border:1px solid var(--fd-color-border);border-bottom:0;border-radius:var(--fd-border-radius-lg);display:flex;flex-direction:column}.x-collapse *,.x-collapse :after,.x-collapse :before{box-sizing:border-box}.x-collapse>.x-collapse-item{border-bottom:1px solid var(--fd-color-border);font-size:var(--fd-font-size)}.x-collapse>.x-collapse-item:last-child,.x-collapse>.x-collapse-item:last-child>.x-collapse-header,.x-collapse>.x-collapse-item:last-child>.x-panel-content{border-radius:0 0 var(--fd-border-radius-lg) var(--fd-border-radius-lg)}.x-collapse>.x-collapse-item>.x-collapse-header{color:var(--fd-color-text);cursor:pointer;display:flex;flex-wrap:nowrap;line-height:var(--fd-line-height);padding:var(--fd-padding-lg) var(--fd-padding-xl);transition:all .3s}.x-collapse>.x-collapse-item>.x-collapse-header:focus{outline:none}.x-collapse>.x-collapse-item>.x-collapse-header>.x-collapse-header-text{flex:auto}.x-collapse>.x-collapse-item>.x-collapse-header>.x-collapse-header-text:not(.auto-wrap){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-collapse>.x-collapse-item>.x-collapse-header .x-collapse-expand-icon{align-items:center;color:var(--fd-color-icon-normal);display:flex;font-size:var(--fd-icon-size);margin-right:var(--fd-gap-xl)}.x-collapse>.x-collapse-item>.x-collapse-header .x-collapse-arrow svg{transition:transform .3s}.x-collapse>.x-collapse-item>.x-collapse-header .x-collapse-arrow.expand svg{transform:rotate(90deg)}.x-collapse>.x-collapse-item .x-collapse-header-collapsible-only{cursor:default}.x-collapse>.x-collapse-item .x-collapse-header-collapsible-only .x-collapse-header-text{-webkit-box-flex:0;cursor:pointer;flex:0 1 auto}.x-collapse>.x-collapse-item .x-collapse-icon-collapsible-only{cursor:default}.x-collapse>.x-collapse-item .x-collapse-icon-collapsible-only .x-collapse-expand-icon{cursor:pointer}.x-collapse>.x-collapse-item>.x-panel-content{background-color:var(--fd-color-white);border-top:1px solid var(--fd-color-border);color:var(--fd-color-text)}.x-collapse>.x-collapse-item>.x-panel-content .x-panel-box{padding:var(--fd-collapse-panel-padding)}.x-collapse>.x-collapse-item>.x-panel-content-enter{opacity:0}.x-collapse>.x-collapse-item>.x-panel-content-enter-active{opacity:1;transition:all .2s}.x-collapse>.x-collapse-item>.x-panel-content-exit{opacity:1}.x-collapse>.x-collapse-item>.x-panel-content-exit-active{opacity:0;overflow:hidden;transition:all .2s}.x-collapse>.x-collapse-item>.x-panel-content-exit-done{display:none}.x-collapse .x-collapse-item-flex{-webkit-box-flex:1;display:flex;flex:1;flex-direction:column}.x-collapse .x-collapse-item-flex .x-panel-content{flex:1}.x-collapse .x-collapse-item-flex .x-panel-content .x-panel-box{height:100%}.x-collapse.small>.x-collapse-item>.x-collapse-header{padding:var(--fd-padding) var(--fd-padding-lg)}.x-collapse.small>.x-collapse-item>.x-panel-content>.x-panel-box{line-height:var(--fd-line-height);padding:var(--fd-collapse-panel-padding-sm)}.x-collapse.large>.x-collapse-item{font-size:var(--fd-font-size-lg)}.x-collapse.large>.x-collapse-item>.x-collapse-header{line-height:var(--fd-line-height-lg);padding:var(--fd-padding-xl) var(--fd-padding-3xl)}.x-collapse.large>.x-collapse-item>.x-panel-content>.x-panel-box{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg);padding:var(--fd-collapse-panel-padding-lg)}.x-collapse .x-collapse-item-disabled>.x-collapse-header,.x-collapse .x-collapse-item-disabled>.x-collapse-header>.arrow{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-collapse.x-collapse-icon-position-end>.x-collapse-item>.x-collapse-header .x-collapse-expand-icon{-webkit-box-ordinal-group:2;-ms-flex-order:1;margin-left:var(--fd-gap);margin-right:0;order:1}.x-collapse-borderless{background-color:var(--fd-color-fill-alter);border:0}.x-collapse-borderless .x-collapse-item{border-bottom:1px solid #d7d9dc}.x-collapse-borderless .x-collapse-item:last-child,.x-collapse-borderless>.x-collapse-item:last-child .x-collapse-header{border-radius:0}.x-collapse-borderless .x-collapse-item:last-child{border-bottom:0}.x-collapse-borderless>.x-collapse-item>.x-panel-content{background-color:transparent;border-top:0}.x-collapse-borderless>.x-collapse-item>.x-panel-content .x-panel-box{padding:var(--fd-collapse-panel-padding-no-border)}.x-collapse-borderless.large>.x-collapse-item>.x-panel-content .x-panel-box{padding:var(--fd-collapse-panel-padding-no-border-lg)}.x-collapse-borderless.small>.x-collapse-item>.x-panel-content .x-panel-box{padding:var(--fd-collapse-panel-padding-no-border-sm)}.x-collapse-ghost{background-color:transparent;border:0}.x-collapse-ghost .x-collapse-item{border-bottom:0}.x-collapse-ghost .x-collapse-item>.x-panel-content{background-color:transparent;border:0}.x-slider{cursor:pointer;position:relative}.x-slider *,.x-slider :after,.x-slider :before{box-sizing:border-box}.x-slider .x-slider-rail{background-color:var(--fd-color-fill-tertiary)}.x-slider .x-slider-rail,.x-slider .x-slider-track{border-radius:2px;position:absolute;transition:background-color .2s}.x-slider .x-slider-track{background-color:var(--fd-color-primary-border)}.x-slider:hover .x-slider-rail{background-color:var(--fd-color-fill-secondary)}.x-slider:hover .x-slider-track{background-color:var(--fd-color-primary-border-hover)}.x-slider:hover .x-slider-step .x-slider-dot{border-color:var(--fd-color-border)}.x-slider:hover .x-slider-handle:after{box-shadow:0 0 0 2px var(--fd-color-primary-border-hover)}.x-slider:hover .x-slider-dot-active{border-color:var(--fd-color-primary-border)}.x-slider .x-slider-handle{height:10px;position:absolute;width:10px}.x-slider .x-slider-handle.handle-bg:after{background:var(--fd-slider-handle-fg);box-shadow:0 0 0 2px var(--fd-slider-handle-bg)}.x-slider .x-slider-handle.handle-bg:active:after,.x-slider .x-slider-handle.handle-bg:focus:after,.x-slider .x-slider-handle.handle-bg:hover:after{box-shadow:0 0 0 4px var(--fd-slider-handle-bg)}.x-slider .x-slider-handle .x-slider-dragging{z-index:1}.x-slider .x-slider-handle:after{background-color:#fff;border-radius:50%;box-shadow:0 0 0 2px var(--fd-color-primary-border);content:" ";cursor:pointer;height:10px;position:absolute;transition:width .2s,height .2s,box-shadow .2s;width:10px}.x-slider .x-slider-handle:active,.x-slider .x-slider-handle:focus,.x-slider .x-slider-handle:hover{outline:none}.x-slider .x-slider-handle:active:after,.x-slider .x-slider-handle:focus:after,.x-slider .x-slider-handle:hover:after{box-shadow:0 0 0 4px var(--fd-color-primary);height:12px;width:12px}.x-slider .x-slider-mark{font-size:var(--fd-font-size);line-height:var(--fd-line-height);position:absolute}.x-slider .x-slider-mark .x-slider-mark-text{color:var(--fd-color-text);cursor:pointer;display:inline-block;position:absolute;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-slider .x-slider-mark .x-slider-mark-text.x-slider-mark-text-active{color:var(--fd-color-text)}.x-slider .x-slider-step{background:transparent;pointer-events:none;position:absolute}.x-slider .x-slider-step .x-slider-dot{background-color:#fff;border:2px solid var(--fd-color-border-secondary);border-radius:50%;cursor:pointer;height:8px;pointer-events:auto;position:absolute;transition:border-color .3s;width:8px}.x-slider .x-slider-step .x-slider-dot:hover{border-color:var(--fd-color-border)}.x-slider .x-slider-step .x-slider-dot.x-slider-dot-active{border-color:var(--fd-color-primary-border)}.x-slider .x-slider-step .x-slider-dot.x-slider-dot-active:hover{border-color:var(--fd-color-primary)}.x-slider.x-slider-disabled{cursor:not-allowed}.x-slider.x-slider-disabled .x-slider-rail{background-color:var(--fd-color-fill-tertiary)!important}.x-slider.x-slider-disabled .x-slider-track{background-color:var(--fd-color-bg-container-disabled)!important}.x-slider.x-slider-disabled .x-slider-dot{background-color:#fff;border-color:var(--fd-color-border-secondary)!important;box-shadow:none;cursor:not-allowed}.x-slider.x-slider-disabled .x-slider-handle:after{background-color:#fff;box-shadow:0 0 0 2px var(--fd-color-text-disabled);cursor:not-allowed;height:10px;width:10px}.x-slider.x-slider-disabled .x-slider-dot,.x-slider.x-slider-disabled .x-slider-mark-text{color:var(--fd-color-text-disabled)!important;cursor:not-allowed!important}.x-slider.x-slider-horizontal{height:12px;margin:var(--fd-padding);padding-bottom:4px;padding-top:4px}.x-slider.x-slider-horizontal .x-slider-rail{height:4px;width:100%}.x-slider.x-slider-horizontal .x-slider-track{height:4px}.x-slider.x-slider-horizontal .x-slider-handle{top:1px}.x-slider.x-slider-horizontal .x-slider-mark{top:12px;width:100%}.x-slider.x-slider-horizontal .x-slider-step{height:4px;top:4px;width:100%}.x-slider.x-slider-horizontal .x-slider-dot{position:absolute;top:-2px}.x-slider.x-slider-horizontal.x-slider-with-marks{margin-bottom:30px}.x-slider.x-slider-vertical{height:100%;margin:var(--fd-padding) var(--fd-padding-xs);padding-left:4px;padding-right:4px;width:12px}.x-slider.x-slider-vertical .x-slider-rail{height:100%;width:4px}.x-slider.x-slider-vertical .x-slider-track{width:4px}.x-slider.x-slider-vertical .x-slider-handle{left:1px}.x-slider.x-slider-vertical .x-slider-mark{height:100%;margin-left:17px}.x-slider.x-slider-vertical .x-slider-step{height:100%;left:4px;width:4px}.x-slider.x-slider-vertical .x-slider-step .x-slider-dot{left:-2px;position:absolute}.x-image{display:inline-block;position:relative}.x-image *,.x-image :after,.x-image :before{box-sizing:border-box}.x-image img{border:0;outline:none}.x-image .x-image-img{height:auto;vertical-align:middle;width:100%}.x-image .x-image-mask{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:var(--fd-color-bg-mask);color:var(--fd-color-text-light-solid);cursor:pointer;display:flex;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity .3s}.x-image .x-image-mask .x-image-mask-info{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg);overflow:hidden;padding:0 var(--fd-padding-xl);text-overflow:ellipsis;white-space:nowrap}.x-image .x-image-mask .x-image-mask-info .x-svgicon{margin-right:var(--fd-gap-sm)}.x-image .x-image-mask:hover{opacity:1}.x-image .x-image-placeholder{inset:0;position:absolute}.x-dropdown{background:var(--fd-color-bg-elevater);border-radius:var(--fd-border-radius-lg);box-shadow:0 9px 28px 8px #0000000d,0 3px 6px -4px #0000001f,0 6px 16px #00000014;display:block;position:absolute}.x-dropdown *,.x-dropdown :after,.x-dropdown :before{box-sizing:border-box}.x-dropdown .dropdown-arrow{display:block;height:12px;overflow:hidden;pointer-events:none;position:absolute;width:12px;z-index:1}.x-dropdown .dropdown-arrow.no-arrow{display:none!important}.x-dropdown .dropdown-arrow:before{background:#fff;bottom:0;clip-path:polygon(1.65685425px 100%,50% 1.65685425px,10.34314575px 100%,1.65685425px 100%);clip-path:path("M 0 6 A 4 4 0 0 0 2.82842712474619 4.82842712474619 L 4.585786437626905 3.0710678118654755 A 2 2 0 0 1 7.414213562373095 3.0710678118654755 L 9.17157287525381 4.82842712474619 A 4 4 0 0 0 12 6 Z");content:"";height:6px;inset-inline-start:0;position:absolute;width:12px}.x-dropdown .dropdown-arrow:after{background:transparent;border-radius:0 0 2px;bottom:0;box-shadow:2px 2px 5px #0000000d;content:"";height:6.14213562px;inset-inline:0;margin:auto;position:absolute;transform:translateY(50%) rotate(-135deg);width:6.14213562px;z-index:0}.x-dropdown.placement-top .dropdown-arrow,.x-dropdown.placement-top-left .dropdown-arrow,.x-dropdown.placement-top-right .dropdown-arrow{bottom:0;transform:translateY(100%) rotate(180deg)}.x-dropdown.placement-top .dropdown-arrow{left:50%;transform:translate(-50%) translateY(100%) rotate(180deg)}.x-dropdown.placement-top-left .dropdown-arrow{left:8px}.x-dropdown.placement-top-right .dropdown-arrow{right:8px}.x-dropdown.placement-bottom .dropdown-arrow,.x-dropdown.placement-bottom-left .dropdown-arrow,.x-dropdown.placement-bottom-right .dropdown-arrow{top:0;transform:translateY(-100%)}.x-dropdown.placement-bottom .dropdown-arrow{left:50%;transform:translate(-50%) translateY(-100%)}.x-dropdown.placement-bottom-left .dropdown-arrow{left:8px}.x-dropdown.placement-bottom-right .dropdown-arrow{right:8px}.x-dropdown.placement-left .dropdown-arrow,.x-dropdown.placement-left-bottom .dropdown-arrow,.x-dropdown.placement-left-top .dropdown-arrow{right:0;transform:translate(100%) rotate(90deg)}.x-dropdown.placement-left .dropdown-arrow{top:50%;transform:translateY(-50%) translate(100%) rotate(90deg)}.x-dropdown.placement-left-top .dropdown-arrow{top:8px}.x-dropdown.placement-left-bottom .dropdown-arrow{bottom:8px}.x-dropdown.placement-right .dropdown-arrow,.x-dropdown.placement-right-bottom .dropdown-arrow,.x-dropdown.placement-right-top .dropdown-arrow{left:0;transform:translate(-100%) rotate(-90deg)}.x-dropdown.placement-right .dropdown-arrow{top:50%;transform:translateY(-50%) translate(-100%) rotate(-90deg)}.x-dropdown.placement-right-top .dropdown-arrow{top:8px}.x-dropdown.placement-right-bottom .dropdown-arrow{bottom:8px}.x-dropdown-top-appear,.x-dropdown-top-enter{animation:x-move-bottom-small .2s ease;animation-fill-mode:forwards}.x-dropdown-top-exit{animation:x-move-bottom-small .1s ease-in reverse;animation-fill-mode:forwards}.x-dropdown-bottom-appear,.x-dropdown-bottom-enter{animation:x-move-top-small .2s ease;animation-fill-mode:forwards}.x-dropdown-bottom-exit{animation:x-move-top-small .1s ease-in reverse;animation-fill-mode:forwards}.x-autocomplete *,.x-autocomplete :after,.x-autocomplete :before{box-sizing:border-box}.x-autocomplete.borderless .x-inner-wrapper{border:none}.x-autocomplete-popover .x-autocomplete-list{max-height:256px;overflow-y:auto}.x-autocomplete-popover .x-autocomplete-item{border-radius:var(--fd-border-radius-sm);box-sizing:border-box;color:var(--fd-color-text);cursor:pointer;display:block;font-size:var(--fd-font-size);line-height:var(--fd-line-height);min-height:var(--fd-control-height);overflow:hidden;padding:var(--fd-padding-xs) var(--fd-padding);position:relative;text-overflow:ellipsis;white-space:nowrap}.x-autocomplete-popover .x-autocomplete-item.active:not(.disabled){background-color:var(--fd-control-item-bg-active)}.x-autocomplete-popover .x-autocomplete-item.disabled{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-autocomplete-popover .x-autocomplete-loading{min-height:var(--fd-control-height)}.x-autocomplete-popover .x-popover-wrapper{padding:var(--fd-padding-layout-2xs)}.x-typography{color:var(--fd-color-text);word-break:break-word}.x-typography.x-typography-secondary{color:var(--fd-color-text-secondary)}.x-typography.x-typography-success{color:var(--fd-color-success)}.x-typography.x-typography-warning{color:var(--fd-color-warning)}.x-typography.x-typography-danger{color:var(--fd-color-error)}a:active.x-typography.x-typography-danger,a:focus.x-typography.x-typography-danger{color:var(--fd-color-error-text-active)}a:hover.x-typography.x-typography-danger{color:var(--fd-color-error-text-hover)}.x-typography.x-typography-disabled{color:var(--fd-color-text-disabled);cursor:not-allowed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-typography p,div.x-typography{margin-bottom:1em}.x-typography div.x-typography-h1,.x-typography div.x-typography-h1>textarea,.x-typography h1,h1.x-typography{color:var(--fd-color-text);font-size:var(--fd-font-size-heading-1);font-weight:600;line-height:var(--fd-line-height-heading-1);margin-bottom:.5em}.x-typography div.x-typography-h2,.x-typography div.x-typography-h2>textarea,.x-typography h2,h2.x-typography{color:var(--fd-color-text);font-size:var(--fd-font-size-heading-2);font-weight:600;line-height:var(--fd-line-height-heading-2);margin-bottom:.5em}.x-typography div.x-typography-h3,.x-typography div.x-typography-h3>textarea,.x-typography h3,h3.x-typography{color:var(--fd-color-text);font-size:var(--fd-font-size-heading-3);font-weight:600;line-height:var(--fd-line-height-heading-3);margin-bottom:.5em}.x-typography div.x-typography-h4,.x-typography div.x-typography-h4>textarea,.x-typography h4,h4.x-typography{color:var(--fd-color-text);font-size:var(--fd-font-size-heading-4);font-weight:600;line-height:var(--fd-line-height-heading-4);margin-bottom:.5em}.x-typography div.x-typography-h5,.x-typography div.x-typography-h5>textarea,.x-typography h5,h5.x-typography{color:var(--fd-color-text);font-size:var(--fd-font-size-heading-5);font-weight:600;line-height:var(--fd-line-height-heading-5);margin-bottom:.5em}.x-typography div+h1,.x-typography div+h2,.x-typography div+h3,.x-typography div+h4,.x-typography div+h5,.x-typography h1+h1,.x-typography h1+h2,.x-typography h1+h3,.x-typography h1+h4,.x-typography h1+h5,.x-typography h2+h1,.x-typography h2+h2,.x-typography h2+h3,.x-typography h2+h4,.x-typography h2+h5,.x-typography h3+h1,.x-typography h3+h2,.x-typography h3+h3,.x-typography h3+h4,.x-typography h3+h5,.x-typography h4+h1,.x-typography h4+h2,.x-typography h4+h3,.x-typography h4+h4,.x-typography h4+h5,.x-typography h5+h1,.x-typography h5+h2,.x-typography h5+h3,.x-typography h5+h4,.x-typography h5+h5,.x-typography li+h1,.x-typography li+h2,.x-typography li+h3,.x-typography li+h4,.x-typography li+h5,.x-typography p+h1,.x-typography p+h2,.x-typography p+h3,.x-typography p+h4,.x-typography p+h5,.x-typography ul+h1,.x-typography ul+h2,.x-typography ul+h3,.x-typography ul+h4,.x-typography ul+h5,.x-typography+h1.x-typography,.x-typography+h2.x-typography,.x-typography+h3.x-typography,.x-typography+h4.x-typography,.x-typography+h5.x-typography{margin-top:1.2em}.x-typography a,a.x-typography{color:var(--fd-color-primary);cursor:pointer;outline:none;text-decoration:none;transition:.3s}.x-typography a:focus,.x-typography a:hover,a.x-typography:focus,a.x-typography:hover{color:var(--fd-color-primary-hover);outline:none}.x-typography a:active,a.x-typography:active{color:var(--fd-color-primary-active)}.x-typography a:active,.x-typography a:hover,a.x-typography:active,a.x-typography:hover{text-decoration:none}.x-typography a.x-typography-disabled,.x-typography a[disabled],a.x-typography.x-typography-disabled,a.x-typography[disabled]{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-typography a.x-typography-disabled:active,.x-typography a.x-typography-disabled:hover,.x-typography a[disabled]:active,.x-typography a[disabled]:hover,a.x-typography.x-typography-disabled:active,a.x-typography.x-typography-disabled:hover,a.x-typography[disabled]:active,a.x-typography[disabled]:hover{color:var(--fd-color-text-disabled)}.x-typography a.x-typography-disabled:active,.x-typography a[disabled]:active,a.x-typography.x-typography-disabled:active,a.x-typography[disabled]:active{pointer-events:none}.x-typography .x-typography-copy,.x-typography .x-typography-edit,.x-typography .x-typography-expand{color:var(--fd-color-primary);cursor:pointer;margin-left:4px;outline:none;text-decoration:none;transition:.3s}.x-typography .x-typography-copy:focus,.x-typography .x-typography-copy:hover,.x-typography .x-typography-edit:focus,.x-typography .x-typography-edit:hover,.x-typography .x-typography-expand:focus,.x-typography .x-typography-expand:hover{color:var(--fd-color-primary-hover);outline:none}.x-typography .x-typography-copy:active,.x-typography .x-typography-edit:active,.x-typography .x-typography-expand:active{color:var(--fd-color-primary-active)}.x-typography .x-typography-copy,.x-typography .x-typography-edit{background:transparent;border:0;display:inline-block;padding:0}.x-typography .x-typography-copy.disabled,.x-typography .x-typography-edit.disabled{pointer-events:none}.x-typography.x-typography-edit-content{position:relative}div.x-typography.x-typography-edit-content{margin-bottom:calc(1em - 5px);margin-left:-12px;margin-top:-5px}.x-typography.x-typography-edit-content .x-typography-edit-content-confirm{color:var(--fd-color-text-description);font-size:var(--fd-font-size);font-style:normal;font-weight:400;pointer-events:none;position:absolute;right:10px;top:6px}.x-typography.x-typography-edit-content textarea{height:1em;margin:0!important}.x-typography .x-typography-copy-success,.x-typography .x-typography-copy-success:focus,.x-typography .x-typography-copy-success:hover{color:var(--fd-color-success)}a.x-typography.x-typography-ellipsis,span.x-typography.x-typography-ellipsis{display:inline-block;max-width:100%}.x-typography.x-typography-single-line{white-space:nowrap}.x-typography.x-typography-ellipsis-single-line{overflow:hidden;text-overflow:ellipsis}a.x-typography.x-typography-ellipsis-single-line,span.x-typography.x-typography-ellipsis-single-line{vertical-align:bottom}.x-typography .x-typography-ellipsis-multiple-line{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.x-select{color:var(--fd-color-text);cursor:pointer;display:inline-block;font-size:var(--fd-font-size);margin:0;padding:0;position:relative;width:200px}.x-select *,.x-select :after,.x-select :before{box-sizing:border-box}.x-select-borderless .x-select-selector{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.x-select.x-select-open .x-select-arrow .x-select-suffix{transform:rotate(180deg)}.x-select .x-select-selector{background:var(--fd-color-bg-container);border:1px solid var(--fd-color-border);position:relative;transition:all .2s cubic-bezier(.43,.1,.54,.85)}.x-select-disabled.x-select .x-select-selector{color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-select-disabled.x-select .x-select-selector,.x-select-multiple.x-select-disabled.x-select .x-select-selector{background:var(--fd-color-bg-container-disabled)}.x-select .x-select-custom-selector{height:100%}.x-select .x-select-selection-item{flex:1;font-weight:400;overflow:hidden;position:relative;text-overflow:ellipsis;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.x-select .x-select-selection-item>.x-typography{display:inline}.x-select .x-select-selection-placeholder{-webkit-box-flex:1;color:var(--fd-color-text-placeholder);flex:1;overflow:hidden;pointer-events:none;text-overflow:ellipsis;white-space:nowrap}.x-select .x-select-arrow{align-items:center;color:var(--fd-color-icon-normal);display:flex;line-height:1;pointer-events:none;position:absolute;text-align:center;text-transform:none;top:50%;transform:translateY(-50%)}.x-select .x-select-arrow .x-select-suffix{transform:rotate(0);transition:transform .2s ease}.x-select .x-select-arrow .x-svgicon{transition:transform .3s}.x-select .x-select-arrow .x-svgicon:not(.x-select-suffix){pointer-events:auto}.x-select-disabled.x-select .x-select-arrow{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-select .x-select-arrow>:not(:last-child){margin-inline-end:8px}.x-select .x-select-clear{background:var(--fd-color-bg-container);color:var(--fd-color-icon);cursor:pointer;display:inline-block;font-style:normal;line-height:1;opacity:0;position:absolute;text-align:center;text-rendering:auto;text-transform:none;top:50%;transform:translateY(-50%);transition:color .2s ease,opacity .3s ease;z-index:1}.x-select .x-select-clear:before{display:none}.x-select .x-select-clear:hover{color:var(--fd-color-icon-hover)}.x-select:not(.x-select-disabled):hover .x-select-clear{opacity:1}.x-select .x-select-arrow,.x-select .x-select-clear,.x-select .x-select-loading{font-size:var(--fd-icon-size);height:var(--fd-icon-size);right:var(--fd-padding);width:var(--fd-icon-size)}.x-select.x-select-sm .x-select-arrow,.x-select.x-select-sm .x-select-clear,.x-select.x-select-sm .x-select-loading{font-size:var(--fd-icon-size);height:var(--fd-icon-size);right:var(--fd-padding-xs);width:var(--fd-icon-size)}.x-select.x-select-lg .x-select-arrow,.x-select.x-select-lg .x-select-clear,.x-select.x-select-lg .x-select-loading{font-size:var(--fd-icon-size);height:var(--fd-icon-size);right:var(--fd-padding);width:var(--fd-icon-size)}.x-select:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-border)}.x-select-focused.x-select:not(.x-select-disabled) .x-select-selector,.x-select-open.x-select:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-primary-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline);outline:0}.x-select:not(.x-select-disabled):hover .x-select-selector{border-color:var(--fd-color-primary-hover)}.x-select.x-select-status-success:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-success)}.x-select-focused.x-select.x-select-status-success:not(.x-select-disabled) .x-select-selector,.x-select-open.x-select.x-select-status-success:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-success-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline);outline:0}.x-select.x-select-status-success:not(.x-select-disabled):hover .x-select-selector{border-color:var(--fd-color-success-hover)}.x-select.x-select-status-error:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-error)}.x-select-focused.x-select.x-select-status-error:not(.x-select-disabled) .x-select-selector,.x-select-open.x-select.x-select-status-error:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-error-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-error-outline);outline:0}.x-select.x-select-status-error:not(.x-select-disabled):hover .x-select-selector{border-color:var(--fd-color-error-hover)}.x-select.x-select-status-warning:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-warning)}.x-select-focused.x-select.x-select-status-warning:not(.x-select-disabled) .x-select-selector,.x-select-open.x-select.x-select-status-warning:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-warning-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-warning-outline);outline:0}.x-select.x-select-status-warning:not(.x-select-disabled):hover .x-select-selector{border-color:var(--fd-color-warning-hover)}.x-select-multiple,.x-select-single{font-size:var(--fd-font-size);height:var(--fd-control-height)}.x-select-multiple .x-select-selector,.x-select-single .x-select-selector{border-radius:var(--fd-border-radius);display:flex;height:100%;padding:0 var(--fd-padding);width:100%}.x-select-multiple .x-select-selector:after,.x-select-single .x-select-selector:after{line-height:calc(var(--fd-control-height) - 2px)}.x-select-multiple .x-select-selector .x-select-selection-item,.x-select-multiple .x-select-selector .x-select-selection-placeholder,.x-select-single .x-select-selector .x-select-selection-item,.x-select-single .x-select-selector .x-select-selection-placeholder{align-self:center;line-height:calc(var(--fd-control-height) - 2px);padding:0;transition:all .3s,visibility 0s}.x-select-multiple .x-select-selector .x-select-selection-placeholder,.x-select-single .x-select-selector .x-select-selection-placeholder{pointer-events:none;transition:none}.x-select-multiple .x-select-selector .x-select-selection-item-error,.x-select-single .x-select-selector .x-select-selection-item-error{color:var(--fd-color-error-text)}.x-select-multiple .x-select-selector .x-select-selection-item:empty:after,.x-select-multiple .x-select-selector .x-select-selection-placeholder:empty:after,.x-select-multiple .x-select-selector:after,.x-select-single .x-select-selector .x-select-selection-item:empty:after,.x-select-single .x-select-selector .x-select-selection-placeholder:empty:after,.x-select-single .x-select-selector:after{content:"\\a0";display:inline-block;visibility:hidden;width:0}.x-select-multiple.x-select-clear .x-select-selector,.x-select-multiple.x-select-clear .x-select-selector .x-select-selection-placeholder,.x-select-multiple.x-select-show-arrow .x-select-selector,.x-select-multiple.x-select-show-arrow .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-clear .x-select-selector,.x-select-single.x-select-clear .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-show-arrow .x-select-selector,.x-select-single.x-select-show-arrow .x-select-selector .x-select-selection-placeholder{padding-right:calc(var(--fd-padding) + var(--fd-gap-sm) + var(--fd-icon-size))}.x-select-multiple.x-select-sm,.x-select-single.x-select-sm{font-size:var(--fd-font-size-sm);height:var(--fd-control-height-sm)}.x-select-multiple.x-select-sm .x-select-selector,.x-select-single.x-select-sm .x-select-selector{border-radius:var(--fd-border-radius);display:flex;height:100%;padding:0 var(--fd-padding-xs);width:100%}.x-select-multiple.x-select-sm .x-select-selector:after,.x-select-single.x-select-sm .x-select-selector:after{line-height:calc(var(--fd-control-height-sm) - 2px)}.x-select-multiple.x-select-sm .x-select-selector .x-select-selection-item,.x-select-multiple.x-select-sm .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-sm .x-select-selector .x-select-selection-item,.x-select-single.x-select-sm .x-select-selector .x-select-selection-placeholder{align-self:center;line-height:calc(var(--fd-control-height-sm) - 2px);padding:0;transition:all .3s,visibility 0s}.x-select-multiple.x-select-sm .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-sm .x-select-selector .x-select-selection-placeholder{pointer-events:none;transition:none}.x-select-multiple.x-select-sm .x-select-selector .x-select-selection-item-error,.x-select-single.x-select-sm .x-select-selector .x-select-selection-item-error{color:var(--fd-color-error-text)}.x-select-multiple.x-select-sm .x-select-selector .x-select-selection-item:empty:after,.x-select-multiple.x-select-sm .x-select-selector .x-select-selection-placeholder:empty:after,.x-select-multiple.x-select-sm .x-select-selector:after,.x-select-single.x-select-sm .x-select-selector .x-select-selection-item:empty:after,.x-select-single.x-select-sm .x-select-selector .x-select-selection-placeholder:empty:after,.x-select-single.x-select-sm .x-select-selector:after{content:"\\a0";display:inline-block;visibility:hidden;width:0}.x-select-multiple.x-select-sm.x-select-clear .x-select-selector,.x-select-multiple.x-select-sm.x-select-clear .x-select-selector .x-select-selection-placeholder,.x-select-multiple.x-select-sm.x-select-show-arrow .x-select-selector,.x-select-multiple.x-select-sm.x-select-show-arrow .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-sm.x-select-clear .x-select-selector,.x-select-single.x-select-sm.x-select-clear .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-sm.x-select-show-arrow .x-select-selector,.x-select-single.x-select-sm.x-select-show-arrow .x-select-selector .x-select-selection-placeholder{padding-right:calc(var(--fd-padding-xs) + var(--fd-gap-sm) + var(--fd-icon-size))}.x-select-multiple.x-select-lg,.x-select-single.x-select-lg{font-size:var(--fd-font-size-lg);height:var(--fd-control-height-lg)}.x-select-multiple.x-select-lg .x-select-selector,.x-select-single.x-select-lg .x-select-selector{border-radius:var(--fd-border-radius);display:flex;height:100%;padding:0 var(--fd-padding);width:100%}.x-select-multiple.x-select-lg .x-select-selector:after,.x-select-single.x-select-lg .x-select-selector:after{line-height:calc(var(--fd-control-height-lg) - 2px)}.x-select-multiple.x-select-lg .x-select-selector .x-select-selection-item,.x-select-multiple.x-select-lg .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-lg .x-select-selector .x-select-selection-item,.x-select-single.x-select-lg .x-select-selector .x-select-selection-placeholder{align-self:center;line-height:calc(var(--fd-control-height-lg) - 2px);padding:0;transition:all .3s,visibility 0s}.x-select-multiple.x-select-lg .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-lg .x-select-selector .x-select-selection-placeholder{pointer-events:none;transition:none}.x-select-multiple.x-select-lg .x-select-selector .x-select-selection-item-error,.x-select-single.x-select-lg .x-select-selector .x-select-selection-item-error{color:var(--fd-color-error-text)}.x-select-multiple.x-select-lg .x-select-selector .x-select-selection-item:empty:after,.x-select-multiple.x-select-lg .x-select-selector .x-select-selection-placeholder:empty:after,.x-select-multiple.x-select-lg .x-select-selector:after,.x-select-single.x-select-lg .x-select-selector .x-select-selection-item:empty:after,.x-select-single.x-select-lg .x-select-selector .x-select-selection-placeholder:empty:after,.x-select-single.x-select-lg .x-select-selector:after{content:"\\a0";display:inline-block;visibility:hidden;width:0}.x-select-multiple.x-select-lg.x-select-clear .x-select-selector,.x-select-multiple.x-select-lg.x-select-clear .x-select-selector .x-select-selection-placeholder,.x-select-multiple.x-select-lg.x-select-show-arrow .x-select-selector,.x-select-multiple.x-select-lg.x-select-show-arrow .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-lg.x-select-clear .x-select-selector,.x-select-single.x-select-lg.x-select-clear .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-lg.x-select-show-arrow .x-select-selector,.x-select-single.x-select-lg.x-select-show-arrow .x-select-selector .x-select-selection-placeholder{padding-right:calc(var(--fd-padding) + var(--fd-gap-sm) + var(--fd-icon-size))}.x-select-tags{font-size:var(--fd-font-size)}.x-select-tags .x-select-selection-overflow{-webkit-box-flex:1;display:flex;flex:auto;flex-wrap:wrap;max-width:100%;position:relative}.x-select-tags .x-select-selection-overflow-item{-webkit-box-flex:0;align-self:center;display:inline-flex;flex:none;max-width:100%}.x-select-tags .x-select-selector{align-items:center;border-radius:var(--fd-border-radius);display:flex;flex-wrap:wrap;height:100%;padding:0 var(--fd-padding) 0 var(--fd-padding-xs)}.x-select-disabled.x-select-tags .x-select-selector{background:var(--fd-color-bg-container-disabled);cursor:not-allowed}.x-select-tags .x-select-selector:after{content:'"\\\\a0"';display:inline-block;line-height:calc(var(--fd-control-height) - 2px - var(--fd-padding-xs)*2);margin:var(--fd-padding-xs) 0;visibility:hidden;width:0}.x-select-tags.x-select-allow-clear .x-select-selector,.x-select-tags.x-select-allow-clear .x-select-selector .x-select-selection-placeholder,.x-select-tags.x-select-show-arrow .x-select-selector,.x-select-tags.x-select-show-arrow .x-select-selector .x-select-selection-placeholder{padding-right:calc(var(--fd-padding) + var(--fd-gap-sm) + var(--fd-icon-size))}.x-select-tags .x-select-selection-item{-ms-flex-item-align:center;-webkit-margin-end:var(--fd-gap-sm);align-self:center;background:var(--fd-color-fill-tertiary);border:1px solid transparent;border-radius:var(--fd-border-radius-xs);cursor:default;display:flex;float:none;height:calc(var(--fd-control-height) - 2px - var(--fd-padding-xs)*2);line-height:calc(var(--fd-control-height) - 4px - var(--fd-padding-xs)*2);margin-bottom:var(--fd-padding-xs);margin-top:var(--fd-padding-xs);margin-inline-end:var(--fd-gap-sm);max-width:100%;padding:0 var(--fd-padding-sm);transition:font-size .3s,line-height .3s,height .3s}.x-select-tags .x-select-selection-item-error{background:var(--fd-color-error-bg-hover);color:var(--fd-color-error-text)}.x-select-tags .x-select-selection-item-disabled{background:var(--fd-color-fill-tertiary);color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-select-tags .x-select-selection-item-content{-webkit-margin-end:4px;display:inline-block;margin-inline-end:4px;overflow:hidden;text-overflow:ellipsis;white-space:pre}.x-select-tags .x-select-selection-item-remove{align-items:center;color:var(--fd-color-icon);cursor:pointer;display:inline-block;font-size:10px;font-weight:700;line-height:inherit}.x-select-tags .x-select-selection-item-remove>.x-svgicon{vertical-align:.2em}.x-select-tags .x-select-selection-item-remove:hover{color:var(--fd-color-icon-hover)}.x-select-tags .x-select-selection-overflow-item+.x-select-selection-overflow-item .x-select-selection-search{margin-inline-start:0}.x-select-tags .x-select-selection-placeholder{left:0;padding:0 var(--fd-padding) 0 var(--fd-padding-xs);position:absolute;right:0;top:50%;transform:translateY(-50%);transition:all .3s}.x-select-tags.x-select-sm{font-size:var(--fd-font-size-sm)}.x-select-tags.x-select-sm .x-select-selection-overflow{-webkit-box-flex:1;display:flex;flex:auto;flex-wrap:wrap;max-width:100%;position:relative}.x-select-tags.x-select-sm .x-select-selection-overflow-item{-webkit-box-flex:0;align-self:center;display:inline-flex;flex:none;max-width:100%}.x-select-tags.x-select-sm .x-select-selector{align-items:center;border-radius:var(--fd-border-radius);display:flex;flex-wrap:wrap;height:100%;padding:0 var(--fd-padding-xs) 0 var(--fd-padding-2xs)}.x-select-disabled.x-select-tags.x-select-sm .x-select-selector{background:var(--fd-color-bg-container-disabled);cursor:not-allowed}.x-select-tags.x-select-sm .x-select-selector:after{content:'"\\\\a0"';display:inline-block;line-height:calc(var(--fd-control-height-sm) - 2px - var(--fd-padding-2xs)*2);margin:var(--fd-padding-2xs) 0;visibility:hidden;width:0}.x-select-tags.x-select-sm.x-select-allow-clear .x-select-selector,.x-select-tags.x-select-sm.x-select-allow-clear .x-select-selector .x-select-selection-placeholder,.x-select-tags.x-select-sm.x-select-show-arrow .x-select-selector,.x-select-tags.x-select-sm.x-select-show-arrow .x-select-selector .x-select-selection-placeholder{padding-right:calc(var(--fd-padding-xs) + var(--fd-gap-sm) + var(--fd-icon-size))}.x-select-tags.x-select-sm .x-select-selection-item{-ms-flex-item-align:center;-webkit-margin-end:var(--fd-gap-sm);align-self:center;background:var(--fd-color-fill-tertiary);border:1px solid transparent;border-radius:var(--fd-border-radius-xs);cursor:default;display:flex;float:none;height:calc(var(--fd-control-height-sm) - 2px - var(--fd-padding-2xs)*2);line-height:calc(var(--fd-control-height-sm) - 4px - var(--fd-padding-2xs)*2);margin-bottom:var(--fd-padding-2xs);margin-top:var(--fd-padding-2xs);margin-inline-end:var(--fd-gap-sm);max-width:100%;padding:0 var(--fd-padding-sm);transition:font-size .3s,line-height .3s,height .3s}.x-select-tags.x-select-sm .x-select-selection-item-error{background:var(--fd-color-error-bg-hover);color:var(--fd-color-error-text)}.x-select-tags.x-select-sm .x-select-selection-item-disabled{background:var(--fd-color-fill-tertiary);color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-select-tags.x-select-sm .x-select-selection-item-content{-webkit-margin-end:4px;display:inline-block;margin-inline-end:4px;overflow:hidden;text-overflow:ellipsis;white-space:pre}.x-select-tags.x-select-sm .x-select-selection-item-remove{align-items:center;color:var(--fd-color-icon);cursor:pointer;display:inline-block;font-size:10px;font-weight:700;line-height:inherit}.x-select-tags.x-select-sm .x-select-selection-item-remove>.x-svgicon{vertical-align:.2em}.x-select-tags.x-select-sm .x-select-selection-item-remove:hover{color:var(--fd-color-icon-hover)}.x-select-tags.x-select-sm .x-select-selection-overflow-item+.x-select-selection-overflow-item .x-select-selection-search{margin-inline-start:0}.x-select-tags.x-select-sm .x-select-selection-placeholder{left:0;padding:0 var(--fd-padding-xs) 0 var(--fd-padding-2xs);position:absolute;right:0;top:50%;transform:translateY(-50%);transition:all .3s}.x-select-tags.x-select-lg{font-size:var(--fd-font-size-lg)}.x-select-tags.x-select-lg .x-select-selection-overflow{-webkit-box-flex:1;display:flex;flex:auto;flex-wrap:wrap;max-width:100%;position:relative}.x-select-tags.x-select-lg .x-select-selection-overflow-item{-webkit-box-flex:0;align-self:center;display:inline-flex;flex:none;max-width:100%}.x-select-tags.x-select-lg .x-select-selector{align-items:center;border-radius:var(--fd-border-radius);display:flex;flex-wrap:wrap;height:100%;padding:0 var(--fd-padding) 0 var(--fd-padding-xs)}.x-select-disabled.x-select-tags.x-select-lg .x-select-selector{background:var(--fd-color-bg-container-disabled);cursor:not-allowed}.x-select-tags.x-select-lg .x-select-selector:after{content:'"\\\\a0"';display:inline-block;line-height:calc(var(--fd-control-height-lg) - 2px - var(--fd-padding-xs)*2);margin:var(--fd-padding-xs) 0;visibility:hidden;width:0}.x-select-tags.x-select-lg.x-select-allow-clear .x-select-selector,.x-select-tags.x-select-lg.x-select-allow-clear .x-select-selector .x-select-selection-placeholder,.x-select-tags.x-select-lg.x-select-show-arrow .x-select-selector,.x-select-tags.x-select-lg.x-select-show-arrow .x-select-selector .x-select-selection-placeholder{padding-right:calc(var(--fd-padding) + var(--fd-gap-sm) + var(--fd-icon-size))}.x-select-tags.x-select-lg .x-select-selection-item{-ms-flex-item-align:center;-webkit-margin-end:var(--fd-gap-sm);align-self:center;background:var(--fd-color-fill-tertiary);border:1px solid transparent;border-radius:var(--fd-border-radius-xs);cursor:default;display:flex;float:none;height:calc(var(--fd-control-height-lg) - 2px - var(--fd-padding-xs)*2);line-height:calc(var(--fd-control-height-lg) - 4px - var(--fd-padding-xs)*2);margin-bottom:var(--fd-padding-xs);margin-top:var(--fd-padding-xs);margin-inline-end:var(--fd-gap-sm);max-width:100%;padding:0 var(--fd-padding-sm);transition:font-size .3s,line-height .3s,height .3s}.x-select-tags.x-select-lg .x-select-selection-item-error{background:var(--fd-color-error-bg-hover);color:var(--fd-color-error-text)}.x-select-tags.x-select-lg .x-select-selection-item-disabled{background:var(--fd-color-fill-tertiary);color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-select-tags.x-select-lg .x-select-selection-item-content{-webkit-margin-end:4px;display:inline-block;margin-inline-end:4px;overflow:hidden;text-overflow:ellipsis;white-space:pre}.x-select-tags.x-select-lg .x-select-selection-item-remove{align-items:center;color:var(--fd-color-icon);cursor:pointer;display:inline-block;font-size:10px;font-weight:700;line-height:inherit}.x-select-tags.x-select-lg .x-select-selection-item-remove>.x-svgicon{vertical-align:.2em}.x-select-tags.x-select-lg .x-select-selection-item-remove:hover{color:var(--fd-color-icon-hover)}.x-select-tags.x-select-lg .x-select-selection-overflow-item+.x-select-selection-overflow-item .x-select-selection-search{margin-inline-start:0}.x-select-tags.x-select-lg .x-select-selection-placeholder{left:0;padding:0 var(--fd-padding) 0 var(--fd-padding-xs);position:absolute;right:0;top:50%;transform:translateY(-50%);transition:all .3s}.x-select-dropdown{background:var(--fd-color-bg-elevater);border-radius:var(--fd-border-radius-lg);box-shadow:0 9px 28px 8px #0000000d,0 3px 6px -4px #0000001f,0 6px 16px #00000014;box-sizing:border-box;color:var(--fd-color-text);display:block;font-size:var(--fd-font-size);font-variant:normal;line-height:var(--fd-line-height);margin:0;overflow:hidden;padding:0;position:absolute;top:-9999px}.x-select-dropdown .x-select-list{padding:var(--fd-padding-layout-2xs)}.x-select-dropdown .x-select-item{align-items:center;border-radius:var(--fd-border-radius-sm);box-sizing:border-box;color:var(--fd-color-text);cursor:pointer;display:flex;font-size:var(--fd-font-size);font-weight:400;height:var(--fd-control-height);line-height:var(--fd-line-height);padding:0 var(--fd-padding);position:relative;transition:background .3s ease}.x-select-dropdown .x-select-item-group{color:var(--fd-color-text-description);cursor:default;font-size:var(--fd-font-size-sm);height:auto;line-height:var(--fd-line-height-sm);padding:var(--fd-padding-xs) var(--fd-padding) 0 var(--fd-padding)}.x-select-dropdown .x-select-item-option-icon{flex:none;font-size:var(--fd-icon-size);font-weight:400;margin-right:var(--fd-gap-sm)}.x-select-dropdown .x-select-item-option-content{flex:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-select-dropdown .x-select-item-option-check{margin-right:var(--fd-gap)}.x-select-dropdown .x-select-item-option-active:not(.x-select-item-option-disabled){background-color:var(--fd-color-fill-quaternary)}.x-select-dropdown .x-select-item-option-selected:not(.x-select-item-option-disabled):not(.x-select-item-option-disabled):not(.x-select-item-option-error).x-select-item-option-single{background-color:var(--fd-control-item-bg-active);color:var(--fd-color-text);font-weight:var(--fd-control-item-font-weight-active)}.x-select-dropdown .x-select-item-option-check-all,.x-select-dropdown .x-select-item-option-selected:not(.x-select-item-option-disabled):not(.x-select-item-option-disabled):not(.x-select-item-option-error).x-select-item-option-multiple{color:var(--fd-color-primary-text)}.x-select-dropdown .x-select-item-option-error{color:var(--fd-color-error-text)}.x-select-dropdown .x-select-item-option-disabled{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-select-dropdown .x-select-item-option-grouped{padding-left:var(--fd-padding-xl)}.x-select-dropdown .x-select-empty{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;color:var(--fd-color-text-description);display:flex;height:var(--fd-control-height);justify-content:center}.x-select-dropdown .x-select-dropdown-search-input{border-bottom:1px solid var(--fd-color-split);border-radius:var(--fd-border-radius-lg) var(--fd-border-radius-lg) 0 0}.x-select-dropdown .x-select-dropdown-search-input input{background:var(--fd-color-bg-elevater)}.x-select-loading .spin-content{height:100%;width:100%}.x-select-loading .spin-content .spin-indicator{border-color:transparent!important;border-top-color:var(--fd-color-icon)!important;height:100%!important;width:100%!important}.x-tree-select{width:200px}.x-tree-select-dropdown .x-select-tree-list{max-height:256px;overflow-y:auto;padding:var(--fd-padding-layout-2xs)}.x-navigation{font-size:var(--fd-font-size);line-height:0;list-style:none;margin-bottom:0;outline:none;padding:0;transition:width .3s ease-out 0s}.x-navigation *,.x-navigation :after,.x-navigation :before{box-sizing:border-box}.x-navigation li{list-style-type:none}.x-navigation ol,.x-navigation ul{list-style:none;margin:0;padding:0}.x-navigation .x-navigation-overflow{display:flex}.x-navigation .x-navigation-overflow .x-navigation-item{flex:none}.x-navigation .x-navigation-item,.x-navigation .x-navigation-submenu,.x-navigation .x-navigation-submenu-title{border-radius:var(--fd-border-radius)}.x-navigation .x-navigation-submenu-inline.x-navigation-submenu-open+.x-navigation-item,.x-navigation .x-navigation-submenu-inline.x-navigation-submenu-open+.x-navigation-submenu .x-navigation-submenu-title{margin-block-start:calc(var(--fd-gap)/2)}.x-navigation .x-navigation-item-group-title{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);margin-inline:var(--fd-padding-layout-xs);margin-top:var(--fd-gap-sm);overflow:hidden;padding:var(--fd-padding-xs) var(--fd-padding-xs) 0 var(--fd-padding-xs);text-overflow:ellipsis;transition:all .3s;white-space:nowrap}.x-navigation .x-navigation-submenu,.x-navigation .x-navigation-submenu-inline{transition:border-color .3s ease-out,background .3s ease-out,padding .3s ease-out}.x-navigation .x-navigation-submenu .x-navigation-sub{cursor:auto}.x-navigation .x-navigation-title-content{transition:color .3s}.x-navigation .x-navigation-title-content>.x-typography-ellipsis-single-line{display:inline;vertical-align:unset}.x-navigation .x-navigation-item a:before{background-color:transparent;content:"";inset:0;position:absolute}.x-navigation .x-navigation-item-divider{line-height:0;margin:var(--fd-gap-sm) var(--fd-padding-layout-xs) 0 var(--fd-padding-layout-xs);overflow:hidden;padding-block:var(--fd-padding-layout-xs);padding-inline:var(--fd-padding-xs)}.x-navigation .x-navigation-item-divider .x-navigation-item-divider-line{border-color:var(--fd-color-split);border-style:solid;border-width:1px 0 0}.x-navigation .x-navigation-item-divider .x-navigation-item-divider-dashed{border-style:dashed}.x-navigation .x-navigation-item,.x-navigation .x-navigation-submenu-title{cursor:pointer;display:block;margin-inline:var(--fd-padding-layout-xs);padding:var(--fd-padding) var(--fd-padding-xl) var(--fd-padding) var(--fd-padding-lg);position:relative;transition:border-color .3s,background .3s,padding .3s ease-out;white-space:nowrap}.x-navigation .x-navigation-item .x-navigation-item-icon,.x-navigation .x-navigation-submenu-title .x-navigation-item-icon{color:var(--fd-color-icon-normal)}.x-navigation .x-navigation-item .x-navigation-item-icon,.x-navigation .x-navigation-item .x-svgicon,.x-navigation .x-navigation-submenu-title .x-navigation-item-icon,.x-navigation .x-navigation-submenu-title .x-svgicon{font-size:var(--fd-icon-size);min-width:var(--fd-icon-size);transition:font-size .3s ease-out,margin .3s ease-out,color .3s}.x-navigation .x-navigation-item .x-navigation-item-icon+span,.x-navigation .x-navigation-item .x-svgicon+span,.x-navigation .x-navigation-submenu-title .x-navigation-item-icon+span,.x-navigation .x-navigation-submenu-title .x-svgicon+span{margin-left:var(--fd-gap);opacity:1;transition:padding .3s ease-out,margin .3s,color .3s}.x-navigation .x-navigation-item.x-navigation-item-only-child>.x-navigation-item-icon,.x-navigation .x-navigation-item.x-navigation-item-only-child>.x-svgicon,.x-navigation .x-navigation-submenu-title.x-navigation-item-only-child>.x-navigation-item-icon,.x-navigation .x-navigation-submenu-title.x-navigation-item-only-child>.x-svgicon{margin-right:0}.x-navigation .x-navigation-item,.x-navigation .x-navigation-submenu-title{margin-block-start:var(--fd-gap-sm)}.x-navigation .x-navigation-item{display:flex}.x-navigation .x-navigation-item-disabled,.x-navigation .x-navigation-submenu-disabled{background:none!important;cursor:not-allowed}.x-navigation .x-navigation-item-disabled:after,.x-navigation .x-navigation-submenu-disabled:after{border-color:transparent!important}.x-navigation .x-navigation-item-disabled a,.x-navigation .x-navigation-submenu-disabled a{color:inherit!important}.x-navigation .x-navigation-item-disabled>.x-navigation-submenu-title,.x-navigation .x-navigation-submenu-disabled>.x-navigation-submenu-title{color:inherit!important;cursor:not-allowed}.x-navigation .x-navigation-item-group .x-navigation-item-group-list{margin:0;padding:0}.x-navigation .x-navigation-item-group .x-navigation-item-group-list .x-navigation-item,.x-navigation .x-navigation-item-group .x-navigation-item-group-list .x-navigation-submenu-title{padding-inline:var(--fd-padding) var(--fd-padding-xl)}.x-navigation .x-navigation-submenu .x-navigation-submenu-popup{border-radius:var(--fd-border-radius-lg);box-shadow:none;position:absolute;transform-origin:0 0;z-index:1050}.x-navigation .x-navigation-submenu .x-navigation-submenu-popup.x-navigation-submenu{background:transparent}.x-navigation .x-navigation-submenu .x-navigation-submenu-popup:before{content:"";height:100%;inset:-7px 0 0;opacity:0;position:absolute;width:100%;z-index:-1}.x-navigation .x-navigation-submenu .x-navigation-submenu-placement-rightTop:before{inset-inline-start:-7px;top:0}.x-navigation .x-navigation-submenu .placement-bottomRight,.x-navigation .x-navigation-submenu .placement-left-top{transform-origin:100% 0}.x-navigation .x-navigation-submenu .placement-left-bottom,.x-navigation .x-navigation-submenu .placement-top-right{transform-origin:100% 100%}.x-navigation .x-navigation-submenu .placement-right-bottom,.x-navigation .x-navigation-submenu .placement-top-left{transform-origin:0 100%}.x-navigation .x-navigation-submenu .placement-bottom-left,.x-navigation .x-navigation-submenu .placement-right-top{transform-origin:0 0}.x-navigation .x-navigation-submenu .placement-left-bottom,.x-navigation .x-navigation-submenu .placement-left-top{padding-inline-end:var(--fd-padding-xs)}.x-navigation .x-navigation-submenu .placement-right-bottom,.x-navigation .x-navigation-submenu .placement-right-top{padding-inline-start:var(--fd-padding-xs)}.x-navigation .x-navigation-submenu .placement-topLeft,.x-navigation .x-navigation-submenu .placement-topRight{padding-bottom:var(--fd-padding-xs)}.x-navigation .x-navigation-submenu .placement-bottomLeft,.x-navigation .x-navigation-submenu .placement-bottomRight{padding-top:var(--fd-padding-xs)}.x-navigation .x-navigation-submenu>.x-navigation{border-radius:var(--fd-border-radius-lg)}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title{cursor:pointer;display:block;margin-inline:var(--fd-padding-layout-xs);padding:var(--fd-padding) var(--fd-padding-xl) var(--fd-padding) var(--fd-padding-lg);position:relative;transition:border-color .3s,background .3s,padding .3s ease-out;white-space:nowrap}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item .x-navigation-item-icon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title .x-navigation-item-icon{color:var(--fd-color-icon-normal)}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item .x-navigation-item-icon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item .x-svgicon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title .x-navigation-item-icon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title .x-svgicon{font-size:var(--fd-icon-size);min-width:var(--fd-icon-size);transition:font-size .3s ease-out,margin .3s ease-out,color .3s}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item .x-navigation-item-icon+span,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item .x-svgicon+span,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title .x-navigation-item-icon+span,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title .x-svgicon+span{margin-left:var(--fd-gap);opacity:1;transition:padding .3s ease-out,margin .3s,color .3s}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item.x-navigation-item-only-child>.x-navigation-item-icon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item.x-navigation-item-only-child>.x-svgicon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title.x-navigation-item-only-child>.x-navigation-item-icon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title.x-navigation-item-only-child>.x-svgicon{margin-right:0}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title{margin-block-start:var(--fd-gap-sm)}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item{display:flex}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item-disabled,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-disabled{background:none!important;cursor:not-allowed}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item-disabled:after,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-disabled:after{border-color:transparent!important}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item-disabled a,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-disabled a{color:inherit!important}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item-disabled>.x-navigation-submenu-title,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-disabled>.x-navigation-submenu-title{color:inherit!important;cursor:not-allowed}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu .x-navigation-submenu-expand-icon{color:currentColor;inset-inline-end:var(--fd-padding-xl);position:absolute;top:50%;transform:translateY(-50%);transition:transform .3s ease-out,opacity .3s;width:10px}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:after,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:before{background-color:var(--fd-color-icon-normal);border-radius:var(--fd-border-radius);content:"";height:1.5px;position:absolute;transition:transform .3s ease-out,background .3s ease-out,top .3s ease-out,color .3s ease-out;width:6px}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:before{transform:rotate(45deg) translateY(-2.5px)}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:after{transform:rotate(-45deg) translateY(2.5px)}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu>.x-navigation-submenu-title{border-radius:var(--fd-border-radius-lg)}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title:after{transition:transform .3s ease-out}.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow,.x-navigation .x-navigation-submenu .x-navigation-submenu-expand-icon{color:currentColor;inset-inline-end:var(--fd-padding-xl);position:absolute;top:50%;transform:translateY(-50%);transition:transform .3s ease-out,opacity .3s;width:10px}.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:after,.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:before{background-color:var(--fd-color-icon-normal);border-radius:var(--fd-border-radius);content:"";height:1.5px;position:absolute;transition:transform .3s ease-out,background .3s ease-out,top .3s ease-out,color .3s ease-out;width:6px}.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:before{transform:rotate(45deg) translateY(-2.5px)}.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:after,.x-navigation .x-navigation-submenu-inline-collapsed .x-navigation-submenu-arrow:before,.x-navigation .x-navigation-submenu-inline.x-navigation-submenu>.x-navigation-submenu-title>.x-navigation-submenu-arrow:before{transform:rotate(-45deg) translateY(2.5px)}.x-navigation .x-navigation-submenu-inline-collapsed .x-navigation-submenu-arrow:after,.x-navigation .x-navigation-submenu-inline.x-navigation-submenu>.x-navigation-submenu-title>.x-navigation-submenu-arrow:after{transform:rotate(45deg) translateY(2.5px)}.x-navigation .x-navigation-submenu-open.x-navigation-submenu-inline>.x-navigation-submenu-title>.x-navigation-submenu-arrow{transform:translateY(-3px)}.x-navigation .x-navigation-submenu-open.x-navigation-submenu-inline>.x-navigation-submenu-title>.x-navigation-submenu-arrow:after{transform:rotate(-45deg) translate(-2.5px)}.x-navigation .x-navigation-submenu-open.x-navigation-submenu-inline>.x-navigation-submenu-title>.x-navigation-submenu-arrow:before{transform:rotate(45deg) translate(2.5px)}.x-navigation .x-navigation-submenu-list-enter{opacity:0}.x-navigation .x-navigation-submenu-list-enter-active{opacity:1;transition:all .3s ease-out}.x-navigation .x-navigation-submenu-list-exit{opacity:1}.x-navigation .x-navigation-submenu-list-exit-active{opacity:0;transition:all .3s ease-out}.x-navigation .x-navigation-submenu-list-exit-done{display:none}.x-navigation-inline.x-navigation-root,.x-navigation-vertical.x-navigation-root{box-shadow:none;padding-bottom:var(--fd-padding-layout-xs);padding-top:var(--fd-padding-xs)}.x-navigation-inline .x-navigation-item,.x-navigation-vertical .x-navigation-item{overflow:hidden;position:relative}.x-navigation-inline .x-navigation-item,.x-navigation-inline .x-navigation-submenu-title,.x-navigation-vertical .x-navigation-item,.x-navigation-vertical .x-navigation-submenu-title{height:calc(var(--fd-padding)*2 + var(--fd-line-height));line-height:var(--fd-line-height);overflow:hidden;text-overflow:ellipsis}.x-navigation-inline>.x-navigation-item,.x-navigation-inline>.x-navigation-submenu>.x-navigation-submenu-title,.x-navigation-vertical>.x-navigation-item,.x-navigation-vertical>.x-navigation-submenu>.x-navigation-submenu-title{height:calc(var(--fd-padding)*2 + var(--fd-line-height));line-height:var(--fd-line-height)}.x-navigation-submenu-popup .x-navigation-vertical{border-radius:var(--fd-border-radius-lg);box-shadow:0 9px 28px 8px #0000000d,0 3px 6px -4px #0000001f,0 6px 16px #00000014}.x-navigation-submenu-popup .x-navigation-vertical .x-navigation-item{overflow:hidden;position:relative}.x-navigation-submenu-popup .x-navigation-vertical .x-navigation-item,.x-navigation-submenu-popup .x-navigation-vertical .x-navigation-submenu-title{height:calc(var(--fd-padding)*2 + var(--fd-line-height));line-height:var(--fd-line-height);overflow:hidden;text-overflow:ellipsis}.x-navigation-submenu-popup .x-navigation-vertical>.x-navigation-item,.x-navigation-submenu-popup .x-navigation-vertical>.x-navigation-submenu>.x-navigation-submenu-title{height:calc(var(--fd-padding)*2 + var(--fd-line-height));line-height:var(--fd-line-height)}.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub{border-right:0;overflow:hidden;padding:var(--fd-padding-xs)}.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub:not([class*=-active]){overflow-x:hidden;overflow-y:auto}.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-item,.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-submenu-title{margin:0;margin-bottom:var(--fd-gap-sm);padding-inline:var(--fd-padding-xl)}.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-item:last-child,.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-submenu-title:last-child{margin-bottom:0}.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-submenu-title .x-navigation-title-content{padding-right:var(--fd-padding-xl)}.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-item-group-title{margin-inline:var(--fd-padding-layout-xs);padding:var(--fd-padding-2xs) var(--fd-padding) 0 var(--fd-padding)}.x-navigation-inline{width:100%}.x-navigation-inline.x-navigation-root .x-navigation-item,.x-navigation-inline.x-navigation-root .x-navigation-submenu-title{align-items:center;display:flex;transition:border-color .3s,background .3s,padding .3s ease-out}.x-navigation-inline.x-navigation-root .x-navigation-item>.x-navigation-title-content,.x-navigation-inline.x-navigation-root .x-navigation-submenu-title>.x-navigation-title-content{flex:auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.x-navigation-inline.x-navigation-root .x-navigation-item>*,.x-navigation-inline.x-navigation-root .x-navigation-submenu-title>*{flex:none}.x-navigation-inline .x-navigation-sub.x-navigation-inline{border:0;border-radius:0;box-shadow:none}.x-navigation-inline .x-navigation-item,.x-navigation-inline .x-navigation-sub.x-navigation-inline>.x-navigation-submenu>.x-navigation-submenu-title{height:calc(var(--fd-padding)*2 + var(--fd-line-height));line-height:var(--fd-line-height);list-style-position:inside;list-style-type:disc}.x-navigation-inline-collapsed{width:var(--fd-navigation-collapsed-width)}.x-navigation-inline-collapsed.x-navigation-root .x-navigation-item>.x-navigation-inline-collapsed-noicon,.x-navigation-inline-collapsed.x-navigation-root .x-navigation-submenu .x-navigation-submenu-title>.x-navigation-inline-collapsed-noicon{font-size:var(--fd-icon-size);text-align:center}.x-navigation-inline-collapsed>.x-navigation-item,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-item,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-submenu>.x-navigation-submenu-title,.x-navigation-inline-collapsed>.x-navigation-submenu>.x-navigation-submenu-title{inset-inline-start:0;padding-inline:calc(var(--fd-navigation-collapsed-width)/2 - var(--fd-icon-size)/2 - var(--fd-gap));text-overflow:clip}.x-navigation-inline-collapsed>.x-navigation-item .x-navigation-submenu-arrow,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-item .x-navigation-submenu-arrow,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-submenu>.x-navigation-submenu-title .x-navigation-submenu-arrow,.x-navigation-inline-collapsed>.x-navigation-submenu>.x-navigation-submenu-title .x-navigation-submenu-arrow{inset-inline-end:0}.x-navigation-inline-collapsed>.x-navigation-item .x-navigation-item-icon,.x-navigation-inline-collapsed>.x-navigation-item .x-svgicon,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-item .x-navigation-item-icon,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-item .x-svgicon,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-submenu>.x-navigation-submenu-title .x-navigation-item-icon,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-submenu>.x-navigation-submenu-title .x-svgicon,.x-navigation-inline-collapsed>.x-navigation-submenu>.x-navigation-submenu-title .x-navigation-item-icon,.x-navigation-inline-collapsed>.x-navigation-submenu>.x-navigation-submenu-title .x-svgicon{font-size:var(--fd-icon-size);line-height:var(--fd-line-height);margin:0}.x-navigation-inline-collapsed>.x-navigation-item .x-navigation-item-icon+span,.x-navigation-inline-collapsed>.x-navigation-item .x-svgicon+span,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-item .x-navigation-item-icon+span,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-item .x-svgicon+span,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-submenu>.x-navigation-submenu-title .x-navigation-item-icon+span,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-submenu>.x-navigation-submenu-title .x-svgicon+span,.x-navigation-inline-collapsed>.x-navigation-submenu>.x-navigation-submenu-title .x-navigation-item-icon+span,.x-navigation-inline-collapsed>.x-navigation-submenu>.x-navigation-submenu-title .x-svgicon+span{display:inline-block;opacity:0}.x-navigation-inline-collapsed .x-navigation-item-icon,.x-navigation-inline-collapsed .x-svgicon{display:inline-block}.x-navigation-inline-collapsed .x-navigation-tooltip{pointer-events:none}.x-navigation-inline-collapsed .x-navigation-tooltip .x-navigation-item-icon,.x-navigation-inline-collapsed .x-navigation-tooltip .x-svgicon{display:none}.x-navigation-inline-collapsed .x-navigation-tooltip a,.x-navigation-inline-collapsed .x-navigation-tooltip a:hover{color:var(--fd-color-text-light-solid)}.x-navigation-inline-collapsed .x-navigation-item-group-title{overflow:hidden;padding-inline:var(--fd-padding-xs);text-overflow:ellipsis;white-space:nowrap}.x-navigation-inline-collapsed .x-navigation-item-group-title-collapse{margin:var(--fd-gap-sm) var(--fd-padding-layout-xs) 0 var(--fd-padding-layout-xs);padding-block:var(--fd-padding-layout-xs);padding-inline:var(--fd-padding-xs)}.x-navigation-inline-collapsed .x-navigation-item-group-title-collapse .x-navigation-item-divider-line{border-color:var(--fd-color-split);border-style:solid;border-width:1px 0 0}.x-navigation-light,.x-navigation-light>.x-navigation{background:var(--fd-color-bg-container);color:var(--fd-color-text)}.x-navigation-light .x-navigation-item-group-title,.x-navigation-light>.x-navigation .x-navigation-item-group-title{color:var(--fd-color-text-description)}.x-navigation-light .x-navigation-submenu-selected>.x-navigation-submenu-title,.x-navigation-light .x-navigation-submenu-selected>.x-navigation-submenu-title .x-navigation-item-icon,.x-navigation-light>.x-navigation .x-navigation-submenu-selected>.x-navigation-submenu-title,.x-navigation-light>.x-navigation .x-navigation-submenu-selected>.x-navigation-submenu-title .x-navigation-item-icon{color:var(--fd-color-primary)}.x-navigation-light .x-navigation-item-disabled,.x-navigation-light .x-navigation-submenu-disabled,.x-navigation-light>.x-navigation .x-navigation-item-disabled,.x-navigation-light>.x-navigation .x-navigation-submenu-disabled{color:var(--fd-color-text-disabled)!important}.x-navigation-light .x-navigation-item:not(.x-navigation-item-selected):not(.x-navigation-submenu-selected):hover,.x-navigation-light .x-navigation-item:not(.x-navigation-item-selected):not(.x-navigation-submenu-selected)>.x-navigation-submenu-title:hover,.x-navigation-light>.x-navigation .x-navigation-item:not(.x-navigation-item-selected):not(.x-navigation-submenu-selected):hover,.x-navigation-light>.x-navigation .x-navigation-item:not(.x-navigation-item-selected):not(.x-navigation-submenu-selected)>.x-navigation-submenu-title:hover{color:var(--fd-color-text)}.x-navigation-light .x-navigation-item:not(.x-navigation-item-selected):hover,.x-navigation-light>.x-navigation .x-navigation-item:not(.x-navigation-item-selected):hover{background-color:var(--fd-color-bg-text-hover)}.x-navigation-light .x-navigation-item:not(.x-navigation-item-selected):active,.x-navigation-light>.x-navigation .x-navigation-item:not(.x-navigation-item-selected):active{background-color:var(--fd-color-bg-text-active)}.x-navigation-light .x-navigation-submenu-title:hover,.x-navigation-light>.x-navigation .x-navigation-submenu-title:hover{background-color:var(--fd-color-bg-text-hover)}.x-navigation-light .x-navigation-submenu-title:active,.x-navigation-light>.x-navigation .x-navigation-submenu-title:active{background-color:var(--fd-color-bg-text-active)}.x-navigation-light .x-navigation-item-danger,.x-navigation-light .x-navigation-item-danger.x-navigation-item:hover:not(.x-navigation-item-selected):not(.x-navigation-submenu-selected),.x-navigation-light>.x-navigation .x-navigation-item-danger,.x-navigation-light>.x-navigation .x-navigation-item-danger.x-navigation-item:hover:not(.x-navigation-item-selected):not(.x-navigation-submenu-selected){color:var(--fd-color-error)}.x-navigation-light .x-navigation-item-danger.x-navigation-item:active,.x-navigation-light>.x-navigation .x-navigation-item-danger.x-navigation-item:active{background:var(--fd-color-error)}.x-navigation-light .x-navigation-item a,.x-navigation-light .x-navigation-item a:hover,.x-navigation-light>.x-navigation .x-navigation-item a,.x-navigation-light>.x-navigation .x-navigation-item a:hover{color:inherit}.x-navigation-light .x-navigation-item-selected,.x-navigation-light>.x-navigation .x-navigation-item-selected{background-color:var(--fd-control-item-bg-active);color:var(--fd-color-primary)}.x-navigation-light .x-navigation-item-selected.x-navigation-item-danger,.x-navigation-light>.x-navigation .x-navigation-item-selected.x-navigation-item-danger{background-color:var(--fd-color-error-bg);color:var(--fd-color-error)}.x-navigation-light .x-navigation-item-selected a,.x-navigation-light .x-navigation-item-selected a:hover,.x-navigation-light>.x-navigation .x-navigation-item-selected a,.x-navigation-light>.x-navigation .x-navigation-item-selected a:hover{color:inherit}.x-navigation-light.x-navigation-popup>.x-navigation,.x-navigation-light.x-navigation-submenu>.x-navigation,.x-navigation-light>.x-navigation.x-navigation-popup>.x-navigation,.x-navigation-light>.x-navigation.x-navigation-submenu>.x-navigation{background-color:var(--fd-color-bg-elevater)}.x-navigation-light.x-navigation-inline .x-navigation-item,.x-navigation-light>.x-navigation.x-navigation-inline .x-navigation-item{position:relative}.x-navigation-light.x-navigation-inline .x-navigation-item.x-navigation-item-danger:after,.x-navigation-light>.x-navigation.x-navigation-inline .x-navigation-item.x-navigation-item-danger:after{border-inline-end-color:var(--fd-color-error)}.x-navigation-light.x-navigation-inline .x-navigation-item-selected:after,.x-navigation-light.x-navigation-inline .x-navigation-selected:after,.x-navigation-light>.x-navigation.x-navigation-inline .x-navigation-item-selected:after,.x-navigation-light>.x-navigation.x-navigation-inline .x-navigation-selected:after{opacity:1;transform:scaleY(1);transition:transform .3s ease-out,opacity .3s ease-out}.x-carousel{overflow:hidden;position:relative}.x-carousel-content{height:100%;overflow:hidden;position:relative;width:100%}.x-carousel-content>.x-carousel-content-item{height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%}.x-carousel-content>.x-carousel-content-item-current{z-index:1}.x-carousel-content>.x-carousel-content-fade>*{opacity:0}.x-carousel-content>.x-carousel-content-fade .x-carousel-content-item-current{opacity:1}.x-carousel-content>.x-carousel-content-slide>:not(.x-carousel-content-item-current){visibility:hidden}.x-carousel-content>.x-carousel-content-slide .x-carousel-content-item-slide-out{animation:x-carousel-content-item-keyframe-slide-out;animation-fill-mode:forwards;display:block}.x-carousel-content>.x-carousel-content-slide .x-carousel-content-item-slide-in{animation:x-carousel-content-item-keyframe-slide-in;animation-fill-mode:forwards;display:block}.x-carousel-content>.x-carousel-content-reverse .x-carousel-content-item-slide-out{animation:x-carousel-content-item-keyframe-slide-out-reverse;animation-fill-mode:forwards}.x-carousel-content>.x-carousel-content-reverse .x-carousel-content-item-slide-in{animation:x-carousel-content-item-keyframe-slide-in-reverse;animation-fill-mode:forwards}.x-carousel-indicator{align-items:flex-end;z-index:2}.x-carousel-indicator,.x-carousel-indicator-left{display:flex}.x-carousel-indicator-left{flex-direction:column;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.x-carousel-indicator-left .x-carousel-indicator-item{height:16px;width:3px}.x-carousel-indicator-left .x-carousel-indicator-item .x-carousel-indicator-item-active{height:24px}.x-carousel-indicator-left .x-carousel-indicator-item:not(:last-child){margin-bottom:var(--fd-gap)}.x-carousel-indicator-bottom{bottom:12px;left:50%;position:absolute;transform:translate(-50%)}.x-carousel-indicator-bottom .x-carousel-indicator-item{height:3px;width:16px}.x-carousel-indicator-bottom .x-carousel-indicator-item.x-carousel-indicator-item-active{width:24px}.x-carousel-indicator-bottom .x-carousel-indicator-item:not(:last-child){margin-right:var(--fd-gap)}.x-carousel-indicator-top{left:50%;position:absolute;top:12px;transform:translate(-50%)}.x-carousel-indicator-top .x-carousel-indicator-item{height:3px;width:16px}.x-carousel-indicator-top .x-carousel-indicator-item.x-carousel-indicator-item-active{width:24px}.x-carousel-indicator-top .x-carousel-indicator-item:not(:last-child){margin-right:var(--fd-gap)}.x-carousel-indicator-right{display:flex;flex-direction:column;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.x-carousel-indicator-right .x-carousel-indicator-item{height:16px;width:3px}.x-carousel-indicator-right .x-carousel-indicator-item.x-carousel-indicator-item-active{height:24px}.x-carousel-indicator-right .x-carousel-indicator-item:not(:last-child){margin-bottom:var(--fd-gap)}.x-carousel-indicator-line .x-carousel-indicator-item{background-color:var(--fd-color-bg-container);border-radius:var(--fd-border-radius-xs);cursor:pointer;opacity:.3}.x-carousel-indicator-line .x-carousel-indicator-item.x-carousel-indicator-item-active,.x-carousel-indicator-line .x-carousel-indicator-item:active,.x-carousel-indicator-line .x-carousel-indicator-item:hover{opacity:1}@keyframes x-carousel-content-item-keyframe-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes x-carousel-content-item-keyframe-slide-out{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes x-carousel-content-item-keyframe-slide-in-reverse{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes x-carousel-content-item-keyframe-slide-out-reverse{0%{transform:translate(0)}to{transform:translate(100%)}}:root{--fd-color-brand-1:#e6f8f5;--fd-color-brand-2:#b3eae0;--fd-color-brand-3:#99e3d6;--fd-color-brand-4:#80dccc;--fd-color-brand-5:#4dcdb8;--fd-color-brand-6:#00b899;--fd-color-brand-7:#00937a;--fd-color-brand-8:#006e5c;--fd-color-brand-9:#004a3d;--fd-color-brand-10:#00372e;--fd-color-error-1:#fdeeee;--fd-color-error-2:#f9cbcb;--fd-color-error-3:#f7b9b9;--fd-color-error-4:#f5a8a8;--fd-color-error-5:#f18585;--fd-color-error-6:#eb5050;--fd-color-error-7:#bc4040;--fd-color-error-8:#8d3030;--fd-color-error-9:#5e2020;--fd-color-error-10:#471818;--fd-color-warning-1:#fef6e6;--fd-color-warning-2:#fbe5b3;--fd-color-warning-3:#f9dc99;--fd-color-warning-4:#f8d480;--fd-color-warning-5:#f5c24d;--fd-color-warning-6:#f0a800;--fd-color-warning-7:#c08600;--fd-color-warning-8:#906500;--fd-color-warning-9:#604300;--fd-color-warning-10:#483200;--fd-color-success-1:#edf9f1;--fd-color-success-2:#c8edd4;--fd-color-success-3:#b5e7c5;--fd-color-success-4:#a3e1b7;--fd-color-success-5:#7ed49a;--fd-color-success-6:#46c26f;--fd-color-success-7:#389b59;--fd-color-success-8:#2a7443;--fd-color-success-9:#1c4e2c;--fd-color-success-10:#153a21;--fd-color-info-1:#eaf2fd;--fd-color-info-2:#c1d8f9;--fd-color-info-3:#accbf7;--fd-color-info-4:#97bef5;--fd-color-info-5:#6da4f1;--fd-color-info-6:#2f7deb;--fd-color-info-7:#2664bc;--fd-color-info-8:#1c4b8d;--fd-color-info-9:#13325e;--fd-color-info-10:#0e2647;--fd-color-grey-1:#fff;--fd-color-grey-2:#f5f6f8;--fd-color-grey-3:#f0f1f4;--fd-color-grey-4:#edeff3;--fd-color-grey-5:#e6e8ed;--fd-color-grey-6:#ebecee;--fd-color-grey-7:#e1e3e5;--fd-color-grey-8:#d7d9dc;--fd-color-grey-9:#b5b8be;--fd-color-grey-10:#838892;--fd-color-grey-11:#525967;--fd-color-grey-12:#141e31;--fd-color-grey-13:#000;--fd-color-transparent-1:#000;--fd-color-transparent-2:rgba(0,10,31,.92);--fd-color-transparent-3:rgba(1,11,31,.68);--fd-color-transparent-4:rgba(2,12,33,.49);--fd-color-transparent-5:rgba(0,10,31,.29);--fd-color-transparent-6:rgba(5,18,36,.16);--fd-color-transparent-7:rgba(5,22,38,.12);--fd-color-transparent-8:rgba(5,17,42,.08);--fd-color-transparent-9:rgba(5,25,75,.1);--fd-color-transparent-10:rgba(30,55,105,.08);--fd-color-transparent-11:rgba(5,22,72,.06);--fd-color-transparent-12:rgba(5,30,80,.04);--fd-color-transparent-13:transparent;--fd-border-radius-xs:2px;--fd-border-radius-sm:3px;--fd-border-radius:4px;--fd-border-radius-lg:6px;--fd-border-radius-xl:8px;--fd-gap-xs:2px;--fd-gap-sm:4px;--fd-gap:8px;--fd-gap-lg:10px;--fd-gap-xl:12px;--fd-gap-2xl:16px;--fd-gap-3xl:20px;--fd-gap-4xl:24px;--fd-gap-5xl:24px;--fd-padding-layout-3xs:2px;--fd-padding-layout-2xs:4px;--fd-padding-layout-xs:8px;--fd-padding-layout-sm:12px;--fd-padding-layout:16px;--fd-padding-layout-lg:20px;--fd-padding-layout-xl:24px;--fd-padding-layout-2xl:32px;--fd-padding-layout-3xl:48px;--fd-padding-zero:0;--fd-padding-2xs:2px;--fd-padding-xs:4px;--fd-padding-sm:6px;--fd-padding:8px;--fd-padding-lg:12px;--fd-padding-xl:16px;--fd-padding-2xl:20px;--fd-padding-3xl:24px;--fd-padding-4xl:32px;--fd-control-height-xs:16px;--fd-control-height-sm:24px;--fd-control-height:32px;--fd-control-height-lg:40px;--fd-font-size-sm:12px;--fd-font-size:14px;--fd-font-size-lg:16px;--fd-font-size-xl:18px;--fd-font-size-2xl:20px;--fd-font-size-heading-1:38px;--fd-font-size-heading-2:30px;--fd-font-size-heading-3:24px;--fd-font-size-heading-4:20px;--fd-font-size-heading-5:16px;--fd-control-item-font-weight-active:400;--fd-icon-size-2sm:12px;--fd-icon-size-sm:14px;--fd-icon-size:16px;--fd-icon-size-lg:18px;--fd-line-height-sm:20px;--fd-line-height:22px;--fd-line-height-lg:24px;--fd-line-height-xl:26px;--fd-line-height-2xl:28px;--fd-line-height-heading-1:46px;--fd-line-height-heading-2:38px;--fd-line-height-heading-3:32px;--fd-line-height-heading-4:28px;--fd-line-height-heading-5:24px;--fd-line-width:1px;--fd-line-width-bold:2px;--fd-line-width-focus:4px;--fd-control-outline-width:2px;--fd-color-primary:var(--fd-color-brand-6);--fd-color-primary-active:var(--fd-color-brand-7);--fd-color-primary-hover:var(--fd-color-brand-5);--fd-color-primary-bg:var(--fd-color-brand-1);--fd-color-primary-bg-active:var(--fd-color-brand-3);--fd-color-primary-bg-hover:var(--fd-color-brand-2);--fd-color-primary-border:var(--fd-color-brand-3);--fd-color-primary-border-hover:var(--fd-color-brand-4);--fd-color-primary-text:var(--fd-color-brand-6);--fd-color-primary-text-active:var(--fd-color-brand-7);--fd-color-primary-text-hover:var(--fd-color-brand-5);--fd-color-link:var(--fd-color-brand-6);--fd-color-link-active:var(--fd-color-brand-7);--fd-color-link-hover:var(--fd-color-brand-4);--fd-color-control-outline:rgba(0,184,153,.1);--fd-color-info:var(--fd-color-info-6);--fd-color-info-active:var(--fd-color-info-7);--fd-color-info-hover:var(--fd-color-info-4);--fd-color-info-bg:var(--fd-color-info-1);--fd-color-info-bg-hover:var(--fd-color-info-2);--fd-color-info-border:var(--fd-color-info-3);--fd-color-info-border-hover:var(--fd-color-info-4);--fd-color-info-text:var(--fd-color-info-6);--fd-color-info-text-active:var(--fd-color-info-7);--fd-color-info-text-hover:var(--fd-color-info-5);--fd-color-success:var(--fd-color-success-6);--fd-color-success-active:var(--fd-color-success-7);--fd-color-success-hover:var(--fd-color-success-4);--fd-color-success-bg:var(--fd-color-success-1);--fd-color-success-bg-hover:var(--fd-color-success-2);--fd-color-success-border:var(--fd-color-success-3);--fd-color-success-border-hover:var(--fd-color-success-4);--fd-color-success-text:var(--fd-color-success-6);--fd-color-success-text-active:var(--fd-color-success-7);--fd-color-success-text-hover:var(--fd-color-success-5);--fd-color-warning:var(--fd-color-warning-6);--fd-color-warning-active:var(--fd-color-warning-7);--fd-color-warning-hover:var(--fd-color-warning-4);--fd-color-warning-bg:var(--fd-color-warning-1);--fd-color-warning-bg-hover:var(--fd-color-warning-2);--fd-color-warning-border:var(--fd-color-warning-3);--fd-color-warning-border-hover:var(--fd-color-warning-4);--fd-color-warning-text:var(--fd-color-warning-6);--fd-color-warning-text-active:var(--fd-color-warning-7);--fd-color-warning-text-hover:var(--fd-color-warning-5);--fd-color-warning-outline:rgba(240,168,0,.1);--fd-color-error:var(--fd-color-error-6);--fd-color-error-active:var(--fd-color-error-7);--fd-color-error-hover:var(--fd-color-error-5);--fd-color-error-bg:var(--fd-color-error-1);--fd-color-error-bg-hover:var(--fd-color-error-2);--fd-color-error-bg-active:var(--fd-color-error-3);--fd-color-error-border:var(--fd-color-error-3);--fd-color-error-border-hover:var(--fd-color-error-4);--fd-color-error-text:var(--fd-color-error-6);--fd-color-error-text-active:var(--fd-color-error-7);--fd-color-error-text-hover:var(--fd-color-error-5);--fd-color-error-outline:rgba(235,80,80,.06);--fd-color-white:#fff;--fd-color-black:#000;--fd-color-transparent:var(--fd-color-transparent-13);--fd-color-text:var(--fd-color-transparent-2);--fd-color-text-secondary:var(--fd-color-transparent-3);--fd-color-text-tertiary:var(--fd-color-transparent-4);--fd-color-text-quaternary:var(--fd-color-transparent-5);--fd-color-text-placeholder:var(--fd-color-text-quaternary);--fd-color-text-description:var(--fd-color-text-tertiary);--fd-color-text-disabled:var(--fd-color-text-quaternary);--fd-color-text-data-disabled:var(--fd-color-text-disabled);--fd-color-text-heading:var(--fd-color-text);--fd-color-text-light-solid:#fff;--fd-color-text-label:var(--fd-color-text-secondary);--fd-color-text-active:var(--fd-color-fill);--fd-color-fill:var(--fd-color-transparent-7);--fd-color-fill-secondary:var(--fd-color-transparent-9);--fd-color-fill-tertiary:var(--fd-color-transparent-11);--fd-color-fill-quaternary:var(--fd-color-transparent-12);--fd-color-bg-container:var(--fd-color-white);--fd-color-bg-container-disabled:var(--fd-color-fill-quaternary);--fd-color-bg-elevater:#fff;--fd-color-bg-spotilight:var(--fd-color-transparent-3);--fd-color-bg-mask:var(--fd-color-transparent-5);--fd-control-item-bg-hover:var(--fd-color-fill-tertiary);--fd-control-item-bg-active:var(--fd-color-primary-bg);--fd-control-item-bg-active-hover:var(--fd-color-primary-bg-hover);--fd-control-item-bg-active-disabled:var(--fd-color-fill);--fd-color-bg-text-hover:var(--fd-color-fill-secondary);--fd-color-bg-text-active:var(--fd-color-fill);--fd-color-fill-alter:var(--fd-color-fill-quaternary);--fd-color-fill-content:var(--fd-color-fill-secondary);--fd-color-icon:var(--fd-color-text-tertiary);--fd-color-icon-hover:var(--fd-color-text-secondary);--fd-color-icon-active:var(--fd-color-text);--fd-color-icon-normal:var(--fd-color-text-secondary);--fd-color-border:var(--fd-color-grey-5);--fd-color-border-secondary:var(--fd-color-grey-4);--fd-color-split:var(--fd-color-border-secondary);--fd-box-shadow:0 0 0 0 #000,0 6px 30px 5px rgba(0,0,0,.05),0 16px 24px 2px rgba(0,0,0,.04),0 0 0 0 #000;--fd-box-shadow-secondary:0 0 0 0 #000,0 3px 14px 2px rgba(0,0,0,.05),0 6px 10px 1px rgba(0,0,0,.06),0 0 0 0 #000;--fd-box-shadow-tertiary:0 0 0 0 #000,0 2px 10px 0 rgba(0,0,0,.04),0 6px 10px 0 rgba(0,0,0,.06),0 0 0 0 #000}*,:after,:before{box-sizing:content-box}.-translate-y-full,.group-\\[\\.v-wrapper\\]\\:rotate-90,.rotate-180,.rotate-90,.transform,.translate-x-1\\/2,.translate-x-\\[-50\\%\\],.translate-y-\\[-50\\%\\]{--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1}.shadow-lg{--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.solid-border{border-color:var(--fd-color-border);border-style:solid;border-width:1px}.solid-border-l{border-color:var(--fd-color-border);border-width:0;border-left-width:1px!important;border-style:solid}.solid-border-r{border-color:var(--fd-color-border);border-width:0;border-right-width:1px!important;border-style:solid}.solid-border-t{border-color:var(--fd-color-border);border-style:solid;border-width:0;border-top-width:1px!important}.solid-border-b{border-width:0;border-bottom-width:1px!important;border-color:var(--fd-color-border);border-style:solid}.text-ellipse{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collapse{visibility:collapse}.static{position:static}.absolute{position:absolute}.relative{position:relative}.bottom-0{bottom:0}.bottom-\\[-6px\\]{bottom:-6px}.bottom-layoutSm{bottom:var(--fd-padding-layout-sm)}.left-1\\/2{left:50%}.left-\\[12px\\]{left:12px}.right-0{right:0}.right-\\[-2px\\]{right:-2px}.right-layoutSm{right:var(--fd-padding-layout-sm)}.top-1\\/2{top:50%}.top-\\[12px\\]{top:12px}.z-\\[1\\]{z-index:1}.m-\\[4px_8px\\]{margin:4px 8px}.m-gap{margin:var(--fd-gap)}.mx-layoutSm{margin-left:var(--fd-padding-layout-sm);margin-right:var(--fd-padding-layout-sm)}.\\!ml-\\[0\\]{margin-left:0!important}.\\!ml-gap{margin-left:var(--fd-gap)!important}.-mt-\\[12px\\]{margin-top:-12px}.mb-\\[10px\\]{margin-bottom:10px}.mb-layoutXs{margin-bottom:var(--fd-padding-layout-xs)}.ml-auto{margin-left:auto}.mt-\\[10px\\]{margin-top:10px}.mt-gap{margin-top:var(--fd-gap)}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-\\[16px\\]{height:16px}.h-\\[18px\\]{height:18px}.h-\\[20px\\]{height:20px}.h-control{height:var(--fd-control-height)}.h-full{height:100%}.max-h-\\[164px\\]{max-height:164px}.min-h-\\[0\\]{min-height:0}.w-\\[16px\\]{width:16px}.w-\\[18px\\]{width:18px}.w-\\[200px\\]{width:200px}.w-\\[20px\\]{width:20px}.w-\\[24px\\]{width:24px}.w-\\[30px\\]{width:30px}.w-full{width:100%}.min-w-0{min-width:0}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.basis-\\[30px\\]{flex-basis:30px}.basis-\\[60px\\]{flex-basis:60px}.-translate-y-full{--tw-translate-y:-100%}.-translate-y-full,.translate-x-1\\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\\/2{--tw-translate-x:50%}.translate-x-\\[-50\\%\\]{--tw-translate-x:-50%}.translate-x-\\[-50\\%\\],.translate-y-\\[-50\\%\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\[-50\\%\\]{--tw-translate-y:-50%}.rotate-180{--tw-rotate:180deg}.rotate-180,.rotate-90{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate:90deg}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.rounded{border-radius:var(--fd-border-radius)}.rounded-\\[50\\%\\]{border-radius:50%}.rounded-lg{border-radius:var(--fd-border-radius-lg)}.rounded-xl{border-radius:var(--fd-border-radius-xl)}.rounded-ee-\\[0\\]{border-end-end-radius:0}.rounded-ee-xl{border-end-end-radius:var(--fd-border-radius-xl)}.rounded-es-\\[0\\]{border-end-start-radius:0}.rounded-es-lg{border-end-start-radius:var(--fd-border-radius-lg)}.rounded-se-\\[0\\]{border-start-end-radius:0}.rounded-se-xl{border-start-end-radius:var(--fd-border-radius-xl)}.rounded-ss-\\[0\\]{border-start-start-radius:0}.rounded-ss-lg{border-start-start-radius:var(--fd-border-radius-lg)}.border{border-width:1px}.\\!border-r-transparent{border-right-color:transparent!important}.bg-container{background-color:var(--fd-color-bg-container)}.bg-container-disabled{background-color:var(--fd-color-bg-container-disabled)}.bg-error{background-color:var(--fd-color-error)}.bg-fill-quaternary{background-color:var(--fd-color-fill-quaternary)}.bg-fill-secondary{background-color:var(--fd-color-fill-secondary)}.bg-text-active{background-color:var(--fd-color-bg-text-active)}.p-\\[4px_0\\]{padding:4px 0}.p-\\[4px_8px\\]{padding:4px 8px}.px-\\[4px\\]{padding-left:4px;padding-right:4px}.px-layoutSm{padding-left:var(--fd-padding-layout-sm);padding-right:var(--fd-padding-layout-sm)}.py-\\[4px\\]{padding-bottom:4px;padding-top:4px}.py-gap{padding-bottom:var(--fd-gap);padding-top:var(--fd-gap)}.pt-layoutXs{padding-top:var(--fd-padding-layout-xs)}.text-center{text-align:center}.align-\\[-0\\.14em\\]{vertical-align:-.14em}.\\!text{font-size:var(--fd-font-size)!important}.text{font-size:var(--fd-font-size)}.text-lg{font-size:var(--fd-font-size-lg)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.leading{line-height:var(--fd-line-height)}.leading-\\[14px\\]{line-height:14px}.text-disabled{color:var(--fd-color-text-disabled)}.text-error{color:var(--fd-color-error)}.text-icon{color:var(--fd-color-icon-normal)}.text-lightSolid{color:var(--fd-color-text-light-solid)}.text-search{color:var(--fd-color-warning)}.text-text{color:var(--fd-color-text)}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease-linear{transition-timing-function:linear}.x-search-input .input-wrapper{height:calc(var(--fd-control-height-sm) + 2px)}.x-search-input .input-wrapper .input-content{inset:1px;line-height:0}.\\[\\&\\>\\.leaf-node\\]\\:solid-border>.leaf-node{border-color:var(--fd-color-border);border-style:solid;border-width:1px}.after\\:hidden:after{content:var(--tw-content);display:none}.hover\\:bg-fill-secondary:hover{background-color:var(--fd-color-fill-secondary)}.hover\\:bg-text-hover:hover{background-color:var(--fd-color-bg-text-hover)}.hover\\:text-primary:hover{color:var(--fd-color-primary)}.active\\:bg-text-active:active{background-color:var(--fd-color-bg-text-active)}.group:hover .group-hover-\\[\\.h-wrapper\\]\\:text-primary{color:var(--fd-color-primary)}.group.h-wrapper .group-\\[\\.h-wrapper\\]\\:mt-\\[6px\\]{margin-top:6px}.group.v-wrapper .group-\\[\\.v-wrapper\\]\\:ml-\\[12px\\]{margin-left:12px}.group.h-wrapper .group-\\[\\.h-wrapper\\]\\:inline-block{display:inline-block}.group.h-wrapper .group-\\[\\.h-wrapper\\]\\:w-full{width:100%}.group.v-wrapper .group-\\[\\.v-wrapper\\]\\:rotate-90{--tw-rotate:90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group.h-wrapper .group-\\[\\.h-wrapper\\]\\:text-center{text-align:center}.\\[\\&\\>\\.fd-svgicon\\]\\:h-\\[16px\\]>.fd-svgicon{height:16px}.\\[\\&\\>\\.fd-svgicon\\]\\:text-\\[16px\\]>.fd-svgicon{font-size:16px}.\\[\\&\\>\\.item-icon\\]\\:\\!text-error>.item-icon{color:var(--fd-color-error)!important}.\\[\\&\\>\\.leaf-node\\]\\:flex-1>.leaf-node{flex:1 1 0%}.\\[\\&\\>\\.leaf-node\\]\\:rounded-lg>.leaf-node{border-radius:var(--fd-border-radius-lg)}.\\[\\&\\>\\.logic-wrapper\\]\\:m-\\[0\\]>.logic-wrapper{margin:0}.\\[\\&_\\.x-list-tree\\]\\:overflow-x-hidden .x-list-tree{overflow-x:hidden}:where(.fdi-global-adaptor *){border-width:0;border-style:solid}:where(.fdi-global-adaptor *) img{display:inline}.fdi-global-adaptor *{box-sizing:border-box}#fdi-data-choose{width:100%;height:100%}ul{margin:0}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.fdi-component-font-sm,.fdi-component-font-md{font-size:12px;line-height:20px}.fdi-component-font-lg{font-size:14px;line-height:22px}.fdi-component-font-xl{font-size:16px;line-height:24px}.fdi-component-font-xxl{font-size:18px;line-height:26px}.fdi-component-title-sm{font-size:12px;line-height:20px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;font-weight:600}.fdi-component-border-0{border-width:0px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity))}.fdi-component-border-1{border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity))}.fdi-component-border-r{border-width:0px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity));border-right-width:1px}.fdi-component-border-t{border-width:0px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity));border-top-width:1px}.fdi-component-border-b{border-width:0px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity));border-bottom-width:1px}.fdi-component-border-transparent{border-width:1px;border-style:solid;border-color:transparent}.fdi-component-border-normal{border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(230 233 239 / var(--tw-border-opacity))}.fdi-component-keyword-highlight{background-color:transparent;--tw-text-opacity: 1;color:rgb(240 172 60 / var(--tw-text-opacity))}.fdi-component-text-placeholder{color:#091e4078}.fdi-component-text-secondary{color:#091e40a8}.fdi-component-flex-col-layout{display:flex;height:100%;width:100%;flex-direction:column}.fdi-component-absolute-0-layout{position:absolute;inset:0}.fdi-component-center-layout{display:flex;align-items:center;justify-content:center}.fdi-component-flex-h-fill-layout{height:0px;flex:1 1 0%}.fdi-component-flex-w-fill-layout{width:0px;flex:1 1 0%}.fdi-component-grid-auto-fill-layout{display:grid;grid-template-columns:auto minmax(0,1fr)}.fdi-component-list-item{cursor:pointer;border-radius:.25rem}.fdi-component-list-item:hover{--tw-bg-opacity: 1;background-color:rgb(238 241 246 / var(--tw-bg-opacity))}.fdi-component-list-item:active{--tw-bg-opacity: 1;background-color:rgb(230 233 239 / var(--tw-bg-opacity))}.fdi-component-list-item.selected{--tw-bg-opacity: 1;background-color:rgb(229 239 255 / var(--tw-bg-opacity))}.fdi-component-active-tag{--tw-bg-opacity: 1;background-color:rgb(229 239 255 / var(--tw-bg-opacity));font-weight:600;--tw-text-opacity: 1;color:rgb(44 96 219 / var(--tw-text-opacity))}.fdi-component-primary-button{border:0;background:linear-gradient(299deg,#2562FF 34.69%,#4584FF 100%)!important}.fdi-pointer-events-none{pointer-events:none}.fdi-visible{visibility:visible}.fdi-invisible{visibility:hidden}.fdi-fixed{position:fixed}.fdi-absolute{position:absolute}.fdi-relative{position:relative}.fdi-inset-0{inset:0}.fdi-bottom-0{bottom:0}.fdi-left-0{left:0}.fdi-left-4{left:1rem}.fdi-left-\\[4px\\]{left:4px}.fdi-left-md{left:8px}.fdi-right-0{right:0}.fdi-right-4{right:1rem}.fdi-right-lg{right:12px}.fdi-right-xl{right:16px}.fdi-top-0{top:0}.fdi-top-1\\/2{top:50%}.fdi-top-\\[28px\\]{top:28px}.fdi-top-\\[32px\\]{top:32px}.fdi-top-\\[34px\\]{top:34px}.fdi-top-lg{top:12px}.fdi-top-sm{top:4px}.fdi-top-xl{top:16px}.fdi-z-0{z-index:0}.fdi-z-10{z-index:10}.fdi-m-0{margin:0}.fdi-m-6{margin:1.5rem}.fdi-m-\\[8px\\]{margin:8px}.fdi-mx-lg{margin-left:10px;margin-right:10px}.fdi-mx-md{margin-left:8px;margin-right:8px}.fdi-my-0{margin-top:0;margin-bottom:0}.fdi-mb-2{margin-bottom:.5rem}.fdi-mb-6{margin-bottom:1.5rem}.fdi-mb-\\[-16px\\]{margin-bottom:-16px}.fdi-mb-\\[20px\\]{margin-bottom:20px}.fdi-mb-\\[36px\\]{margin-bottom:36px}.fdi-mb-md{margin-bottom:8px}.fdi-mb-sm{margin-bottom:6px}.fdi-mb-xl{margin-bottom:12px}.fdi-mb-xxl{margin-bottom:16px}.fdi-ml-1{margin-left:.25rem}.fdi-ml-\\[4px\\]{margin-left:4px}.fdi-ml-lg{margin-left:10px}.fdi-ml-md{margin-left:8px}.fdi-ml-xl{margin-left:12px}.fdi-ml-xs{margin-left:2px}.fdi-mr-\\[4px\\]{margin-right:4px}.fdi-mr-\\[6px\\]{margin-right:6px}.fdi-mr-\\[9px\\]{margin-right:9px}.fdi-mr-md{margin-right:8px}.fdi-mr-sm{margin-right:6px}.fdi-mt-5{margin-top:1.25rem}.fdi-mt-md{margin-top:8px}.fdi-mt-sm{margin-top:6px}.fdi-mt-xl{margin-top:12px}.fdi-mt-xs{margin-top:2px}.fdi-mt-xxl{margin-top:16px}.fdi-box-border{box-sizing:border-box}.fdi-line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.fdi-line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.fdi-line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.fdi-block{display:block}.fdi-inline-block{display:inline-block}.fdi-flex{display:flex}.fdi-inline-flex{display:inline-flex}.fdi-hidden{display:none}.fdi-h-4{height:1rem}.fdi-h-6{height:1.5rem}.fdi-h-\\[120px\\]{height:120px}.fdi-h-\\[14px\\]{height:14px}.fdi-h-\\[20px\\]{height:20px}.fdi-h-\\[24px\\]{height:24px}.fdi-h-\\[28px\\]{height:28px}.fdi-h-\\[32px\\]{height:32px}.fdi-h-\\[36px\\]{height:36px}.fdi-h-\\[40px\\]{height:40px}.fdi-h-\\[420px\\]{height:420px}.fdi-h-auto{height:auto}.fdi-h-full{height:100%}.fdi-max-h-\\[232px\\]{max-height:232px}.fdi-max-h-\\[278px\\]{max-height:278px}.fdi-max-h-\\[300px\\]{max-height:300px}.fdi-max-h-\\[428px\\]{max-height:428px}.fdi-max-h-\\[450px\\]{max-height:450px}.fdi-min-h-\\[280px\\]{min-height:280px}.fdi-w-4{width:1rem}.fdi-w-\\[100px\\]{width:100px}.fdi-w-\\[116px\\]{width:116px}.fdi-w-\\[120px\\]{width:120px}.fdi-w-\\[160px\\]{width:160px}.fdi-w-\\[176px\\]{width:176px}.fdi-w-\\[200px\\]{width:200px}.fdi-w-\\[236px\\]{width:236px}.fdi-w-\\[240px\\]{width:240px}.fdi-w-\\[252px\\]{width:252px}.fdi-w-\\[36px\\]{width:36px}.fdi-w-\\[370px\\]{width:370px}.fdi-w-\\[3px\\]{width:3px}.fdi-w-\\[400px\\]{width:400px}.fdi-w-\\[408px\\]{width:408px}.fdi-w-\\[424px\\]{width:424px}.fdi-w-\\[68px\\]{width:68px}.fdi-w-\\[80px\\]{width:80px}.fdi-w-full{width:100%}.fdi-min-w-\\[40px\\]{min-width:40px}.fdi-max-w-\\[200px\\]{max-width:200px}.fdi-max-w-\\[238px\\]{max-width:238px}.fdi-max-w-full{max-width:100%}.fdi-flex-0{flex:0 0 auto}.fdi-flex-1{flex:1 1 0%}.fdi-flex-none{flex:none}.fdi-flex-shrink-0{flex-shrink:0}.fdi-shrink{flex-shrink:1}.fdi-shrink-0{flex-shrink:0}.fdi-grow{flex-grow:1}.fdi--translate-y-2\\/4{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.fdi-rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.fdi-cursor-default{cursor:default}.fdi-cursor-move{cursor:move}.fdi-cursor-pointer{cursor:pointer}.fdi-flex-col{flex-direction:column}.fdi-flex-wrap{flex-wrap:wrap}.fdi-items-center{align-items:center}.fdi-items-stretch{align-items:stretch}.\\!fdi-justify-start{justify-content:flex-start!important}.fdi-justify-start{justify-content:flex-start}.fdi-justify-end{justify-content:flex-end}.fdi-justify-center{justify-content:center}.fdi-justify-between{justify-content:space-between}.fdi-justify-stretch{justify-content:stretch}.\\!fdi-gap-1{gap:.25rem!important}.fdi-gap-5{gap:1.25rem}.fdi-gap-\\[2px\\]{gap:2px}.fdi-gap-\\[32px\\]{gap:32px}.fdi-gap-\\[4px\\]{gap:4px}.fdi-gap-\\[8px\\]{gap:8px}.fdi-gap-lg{gap:10px}.fdi-gap-md{gap:8px}.fdi-gap-sm{gap:6px}.fdi-gap-xl{gap:12px}.fdi-gap-xxl{gap:16px}.fdi-gap-x-\\[6px\\]{-moz-column-gap:6px;column-gap:6px}.fdi-self-start{align-self:flex-start}.fdi-self-center{align-self:center}.fdi-overflow-auto{overflow:auto}.fdi-overflow-hidden{overflow:hidden}.fdi-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fdi-whitespace-break-spaces{white-space:break-spaces}.fdi-break-all{word-break:break-all}.\\!fdi-rounded-xs{border-radius:2px!important}.fdi-rounded{border-radius:.25rem}.fdi-rounded-lg{border-radius:6px}.fdi-rounded-xl{border-radius:8px}.fdi-rounded-b-sm{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.fdi-rounded-bl-xl{border-bottom-left-radius:8px}.fdi-rounded-br-xl{border-bottom-right-radius:8px}.fdi-border{border-width:1px}.fdi-border-b{border-bottom-width:1px}.fdi-border-l{border-left-width:1px}.fdi-border-r{border-right-width:1px}.fdi-border-t-2{border-top-width:2px}.fdi-border-none{border-style:none}.fdi-border-brand-light-4{--tw-border-opacity: 1;border-color:rgb(135 176 247 / var(--tw-border-opacity))}.fdi-border-neutral-light-3{--tw-border-opacity: 1;border-color:rgb(230 233 239 / var(--tw-border-opacity))}.fdi-border-neutral-light-4{--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity))}.fdi-border-transparent{border-color:transparent}.fdi-border-t-brand-light-6{--tw-border-opacity: 1;border-top-color:rgb(44 96 219 / var(--tw-border-opacity))}.\\!fdi-bg-neutral-alpha-light-6{background-color:#091e404a!important}.\\!fdi-bg-transparent{background-color:transparent!important}.fdi-bg-brand-light-2{--tw-bg-opacity: 1;background-color:rgb(229 239 255 / var(--tw-bg-opacity))}.fdi-bg-brand-light-6{--tw-bg-opacity: 1;background-color:rgb(44 96 219 / var(--tw-bg-opacity))}.fdi-bg-netr-light-1{--tw-bg-opacity: 1;background-color:rgb(248 249 252 / var(--tw-bg-opacity))}.fdi-bg-neutral-light-0{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.fdi-bg-neutral-light-1{--tw-bg-opacity: 1;background-color:rgb(248 249 252 / var(--tw-bg-opacity))}.fdi-bg-neutral-light-2{--tw-bg-opacity: 1;background-color:rgb(238 241 246 / var(--tw-bg-opacity))}.fdi-bg-orange-light-1{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity))}.fdi-bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.fdi-bg-opacity-80{--tw-bg-opacity: .8}.fdi-p-0{padding:0}.fdi-p-1{padding:.25rem}.fdi-p-1\\.5{padding:.375rem}.fdi-p-4{padding:1rem}.fdi-p-5{padding:1.25rem}.fdi-p-\\[16px\\]{padding:16px}.fdi-p-\\[6px\\]{padding:6px}.fdi-p-lg,.fdi-p-sm{padding:8px}.fdi-p-xl{padding:12px}.fdi-p-xs{padding:4px}.fdi-p-xxl{padding:20px}.fdi-p-xxs{padding:2px}.\\!fdi-px-0{padding-left:0!important;padding-right:0!important}.\\!fdi-px-lg,.\\!fdi-px-md{padding-left:8px!important;padding-right:8px!important}.\\!fdi-py-\\[6px\\]{padding-top:6px!important;padding-bottom:6px!important}.fdi-px-\\[16px\\]{padding-left:16px;padding-right:16px}.fdi-px-lg,.fdi-px-sm{padding-left:8px;padding-right:8px}.fdi-px-xl{padding-left:12px;padding-right:12px}.fdi-px-xxl{padding-left:20px;padding-right:20px}.fdi-py-\\[3px\\]{padding-top:3px;padding-bottom:3px}.fdi-py-\\[6px\\]{padding-top:6px;padding-bottom:6px}.fdi-py-lg,.fdi-py-sm{padding-top:8px;padding-bottom:8px}.fdi-py-xl{padding-top:12px;padding-bottom:12px}.fdi-py-xs{padding-top:4px;padding-bottom:4px}.fdi-py-xxl{padding-top:20px;padding-bottom:20px}.\\!fdi-pl-0{padding-left:0!important}.\\!fdi-pl-sm{padding-left:8px!important}.\\!fdi-pr-sm{padding-right:8px!important}.fdi-pb-\\[16px\\]{padding-bottom:16px}.fdi-pb-lg,.fdi-pb-md,.fdi-pb-sm{padding-bottom:8px}.fdi-pb-xl{padding-bottom:12px}.fdi-pb-xs{padding-bottom:4px}.fdi-pb-xxl{padding-bottom:20px}.fdi-pl-4{padding-left:1rem}.fdi-pl-lg,.fdi-pl-sm{padding-left:8px}.fdi-pl-xl{padding-left:12px}.fdi-pl-xs{padding-left:4px}.fdi-pl-xxxl{padding-left:24px}.fdi-pr-lg{padding-right:8px}.fdi-pr-xs{padding-right:4px}.fdi-pr-xxl{padding-right:20px}.fdi-pr-xxxl{padding-right:24px}.fdi-pt-\\[16px\\]{padding-top:16px}.fdi-pt-lg{padding-top:8px}.fdi-pt-xl{padding-top:12px}.fdi-pt-xs{padding-top:4px}.fdi-pt-xxl{padding-top:20px}.fdi-pt-xxs{padding-top:2px}.fdi-text-left{text-align:left}.fdi-text-center{text-align:center}.fdi-text-\\[20px\\]{font-size:20px}.fdi-text-sm{font-size:12px}.fdi-text-xxl{font-size:18px}.fdi-text-xxxl{font-size:36px}.fdi-font-400{font-weight:400}.fdi-font-600{font-weight:600}.fdi-font-bold{font-weight:700}.fdi-font-normal{font-weight:400}.fdi-font-semibold{font-weight:600}.fdi-leading-4{line-height:1rem}.fdi-leading-5{line-height:1.25rem}.fdi-leading-\\[22px\\]{line-height:22px}.fdi-leading-\\[28px\\]{line-height:28px}.fdi-leading-normal{line-height:1.5}.fdi-leading-sm{line-height:20px}.fdi-leading-xxl{line-height:26px}.fdi-leading-xxxl{line-height:50px}.\\!fdi-text-neutral-light-12{--tw-text-opacity: 1 !important;color:rgb(9 30 64 / var(--tw-text-opacity))!important}.fdi-text-black-2{color:#091e40a8}.fdi-text-black-3{color:#091e4078}.fdi-text-brand-light-6{--tw-text-opacity: 1;color:rgb(44 96 219 / var(--tw-text-opacity))}.fdi-text-brand-light-7{--tw-text-opacity: 1;color:rgb(28 75 186 / var(--tw-text-opacity))}.fdi-text-coral-red-light-6{--tw-text-opacity: 1;color:rgb(230 82 81 / var(--tw-text-opacity))}.fdi-text-neutral-light-12{--tw-text-opacity: 1;color:rgb(9 30 64 / var(--tw-text-opacity))}.fdi-text-spring-green-light-6{--tw-text-opacity: 1;color:rgb(36 143 46 / var(--tw-text-opacity))}.fdi-underline-offset-2{text-underline-offset:2px}.fdi-shadow-light-small{--tw-shadow: 0px 4px 12px 0px rgba(9, 30, 64, .08);--tw-shadow-colored: 0px 4px 12px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.fdi-transition-\\[width\\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.fdi-transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.fdi-duration-200{transition-duration:.2s}.fdi-duration-300{transition-duration:.3s}.hover\\:fdi-component-border-1:hover{border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity))}.hover\\:fdi-bg-neutral-light-0:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.hover\\:fdi-bg-orange-light-2:hover{--tw-bg-opacity: 1;background-color:rgb(255 245 215 / var(--tw-bg-opacity))}.hover\\:fdi-text-brand-light-5:hover{--tw-text-opacity: 1;color:rgb(82 133 234 / var(--tw-text-opacity))}.active\\:fdi-text-brand-light-7:active{--tw-text-opacity: 1;color:rgb(28 75 186 / var(--tw-text-opacity))}.fdi-group:hover .group-hover\\:fdi-block{display:block}.fdi-filter-condition-pane-content .inner-pane .leaf-node{--tw-bg-opacity: 1;background-color:rgb(248 249 252 / var(--tw-bg-opacity));height:auto}.fdi-filter-condition-pane-content .inner-pane .leaf-node>button>.ant-btn-icon{font-size:16px}.fdi-filter-condition-pane-content .inner-pane .leaf-node>button>.ant-btn-icon svg{vertical-align:middle}.fdi-filter-condition-pane-content>.ant-space-align-center{margin-top:6px} -`,document.head.appendChild(mv);var On=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function qt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function oo(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var r=function n(){if(this instanceof n){var a=[null];a.push.apply(a,arguments);var o=Function.bind.apply(t,a);return new o}return t.apply(this,arguments)};r.prototype=t.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(e).forEach(function(n){var a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(r,n,a.get?a:{enumerable:!0,get:function(){return e[n]}})}),r}var xv={},See={get exports(){return xv},set exports(e){xv=e}},Zm={},m={},Eee={get exports(){return m},set exports(e){m=e}},dr={};/** +(function(Tv){typeof define=="function"&&define.amd?define(Tv):Tv()})(function(){"use strict";var Tv=document.createElement("style");Tv.textContent=`:root{--fd-color-red-1:#fdeeee;--fd-color-red-2:#f9cbcb;--fd-color-red-3:#f7b9b9;--fd-color-red-4:#f5a8a8;--fd-color-red-5:#f18585;--fd-color-red-6:#EB5050;--fd-color-red-7:#bc4040;--fd-color-red-8:#8d3030;--fd-color-red-9:#5e2020;--fd-color-red-10:#471818;--fd-color-yellow-1:#fef6e6;--fd-color-yellow-2:#fbe5b3;--fd-color-yellow-3:#f9dc99;--fd-color-yellow-4:#f8d480;--fd-color-yellow-5:#f5c24d;--fd-color-yellow-6:#F0A800;--fd-color-yellow-7:#c08600;--fd-color-yellow-8:#906500;--fd-color-yellow-9:#604300;--fd-color-yellow-10:#483200;--fd-color-green-1:#edf9f1;--fd-color-green-2:#c8edd4;--fd-color-green-3:#b5e7c5;--fd-color-green-4:#a3e1b7;--fd-color-green-5:#7ed49a;--fd-color-green-6:#46C26F;--fd-color-green-7:#389b59;--fd-color-green-8:#2a7443;--fd-color-green-9:#1c4e2c;--fd-color-green-10:#153a21;--fd-color-blue-1:#eaf2fd;--fd-color-blue-2:#c1d8f9;--fd-color-blue-3:#accbf7;--fd-color-blue-4:#97bef5;--fd-color-blue-5:#6da4f1;--fd-color-blue-6:#2F7DEB;--fd-color-blue-7:#2664bc;--fd-color-blue-8:#1c4b8d;--fd-color-blue-9:#13325e;--fd-color-blue-10:#0e2647;--fd-color-brand-1:#e6f8f5;--fd-color-brand-2:#b3eae0;--fd-color-brand-3:#99e3d6;--fd-color-brand-4:#80dccc;--fd-color-brand-5:#4dcdb8;--fd-color-brand-6:#00B899;--fd-color-brand-7:#00937a;--fd-color-brand-8:#006e5c;--fd-color-brand-9:#004a3d;--fd-color-brand-10:#00372e;--fd-color-error-1:var(--fd-color-red-1);--fd-color-error-2:var(--fd-color-red-2);--fd-color-error-3:var(--fd-color-red-3);--fd-color-error-4:var(--fd-color-red-4);--fd-color-error-5:var(--fd-color-red-5);--fd-color-error-6:var(--fd-color-red-6);--fd-color-error-7:var(--fd-color-red-7);--fd-color-error-8:var(--fd-color-red-8);--fd-color-error-9:var(--fd-color-red-9);--fd-color-error-10:var(--fd-color-red-10);--fd-color-warning-1:var(--fd-color-yellow-1);--fd-color-warning-2:var(--fd-color-yellow-2);--fd-color-warning-3:var(--fd-color-yellow-3);--fd-color-warning-4:var(--fd-color-yellow-4);--fd-color-warning-5:var(--fd-color-yellow-5);--fd-color-warning-6:var(--fd-color-yellow-6);--fd-color-warning-7:var(--fd-color-yellow-7);--fd-color-warning-8:var(--fd-color-yellow-8);--fd-color-warning-9:var(--fd-color-yellow-9);--fd-color-warning-10:var(--fd-color-yellow-10);--fd-color-success-1:var(--fd-color-green-1);--fd-color-success-2:var(--fd-color-green-2);--fd-color-success-3:var(--fd-color-green-3);--fd-color-success-4:var(--fd-color-green-4);--fd-color-success-5:var(--fd-color-green-5);--fd-color-success-6:var(--fd-color-green-6);--fd-color-success-7:var(--fd-color-green-7);--fd-color-success-8:var(--fd-color-green-8);--fd-color-success-9:var(--fd-color-green-9);--fd-color-success-10:var(--fd-color-green-10);--fd-color-info-1:var(--fd-color-blue-1);--fd-color-info-2:var(--fd-color-blue-2);--fd-color-info-3:var(--fd-color-blue-3);--fd-color-info-4:var(--fd-color-blue-4);--fd-color-info-5:var(--fd-color-blue-5);--fd-color-info-6:var(--fd-color-blue-6);--fd-color-info-7:var(--fd-color-blue-7);--fd-color-info-8:var(--fd-color-blue-8);--fd-color-info-9:var(--fd-color-blue-9);--fd-color-info-10:var(--fd-color-blue-10);--fd-color-grey-1:#FFFFFF;--fd-color-grey-2:#F5F6F8;--fd-color-grey-3:#F0F1F4;--fd-color-grey-4:#EDEFF3;--fd-color-grey-5:#E6E8ED;--fd-color-grey-6:#EBECEE;--fd-color-grey-7:#E1E3E5;--fd-color-grey-8:#D7D9DC;--fd-color-grey-9:#B5B8BE;--fd-color-grey-10:#838892;--fd-color-grey-11:#525967;--fd-color-grey-12:#141E31;--fd-color-grey-13:#000000;--fd-color-transparent-1:#000000;--fd-color-transparent-2:rgba(0, 10, 31, .92);--fd-color-transparent-3:rgba(1, 11, 31, .68);--fd-color-transparent-4:rgba(2, 12, 33, .49);--fd-color-transparent-5:rgba(0, 10, 31, .29);--fd-color-transparent-6:rgba(5, 18, 36, .16);--fd-color-transparent-7:rgba(5, 22, 38, .12);--fd-color-transparent-8:rgba(5, 17, 42, .08);--fd-color-transparent-9:rgba(5, 25, 75, .1);--fd-color-transparent-10:rgba(30, 55, 105, .08);--fd-color-transparent-11:rgba(5, 22, 72, .06);--fd-color-transparent-12:rgba(5, 30, 80, .04);--fd-color-transparent-13:transparent;--fd-border-radius-xs:2px;--fd-border-radius-sm:3px;--fd-border-radius:4px;--fd-border-radius-lg:6px;--fd-border-radius-xl:8px;--fd-gap-xs:2px;--fd-gap-sm:4px;--fd-gap:8px;--fd-gap-lg:10px;--fd-gap-xl:12px;--fd-gap-2xl:16px;--fd-gap-3xl:20px;--fd-gap-4xl:24px;--fd-gap-5xl:32px;--fd-padding-layout-3xs:2px;--fd-padding-layout-2xs:4px;--fd-padding-layout-xs:8px;--fd-padding-layout-sm:12px;--fd-padding-layout:16px;--fd-padding-layout-lg:20px;--fd-padding-layout-xl:24px;--fd-padding-layout-2xl:32px;--fd-padding-layout-3xl:48px;--fd-padding-zero:0;--fd-padding-2xs:2px;--fd-padding-xs:4px;--fd-padding-sm:6px;--fd-padding:8px;--fd-padding-lg:12px;--fd-padding-xl:16px;--fd-padding-2xl:20px;--fd-padding-3xl:24px;--fd-padding-4xl:32px;--fd-control-height-xs:16px;--fd-control-height-sm:24px;--fd-control-height:32px;--fd-control-height-lg:40px;--fd-font-size-sm:12px;--fd-font-size:14px;--fd-font-size-lg:16px;--fd-font-size-xl:18px;--fd-font-size-2xl:20px;--fd-font-size-heading-1:38px;--fd-font-size-heading-2:30px;--fd-font-size-heading-3:24px;--fd-font-size-heading-4:20px;--fd-font-size-heading-5:16px;--fd-control-item-font-weight-active:400;--fd-icon-size-2sm:12px;--fd-icon-size-sm:14px;--fd-icon-size:16px;--fd-icon-size-lg:18px;--fd-line-height-sm:20px;--fd-line-height:22px;--fd-line-height-lg:24px;--fd-line-height-xl:26px;--fd-line-height-2xl:28px;--fd-line-height-heading-1:46px;--fd-line-height-heading-2:38px;--fd-line-height-heading-3:32px;--fd-line-height-heading-4:28px;--fd-line-height-heading-5:24px;--fd-line-width:1px;--fd-line-width-bold:2px;--fd-line-width-focus:4px;--fd-control-outline-width:2px;--fd-color-primary:var(--fd-color-brand-6);--fd-color-primary-active:var(--fd-color-brand-7);--fd-color-primary-hover:var(--fd-color-brand-5);--fd-color-primary-bg:var(--fd-color-brand-1);--fd-color-primary-bg-active:var(--fd-color-brand-3);--fd-color-primary-bg-hover:var(--fd-color-brand-2);--fd-color-primary-border:var(--fd-color-brand-3);--fd-color-primary-border-hover:var(--fd-color-brand-4);--fd-color-primary-text:var(--fd-color-brand-6);--fd-color-primary-text-active:var(--fd-color-brand-7);--fd-color-primary-text-hover:var(--fd-color-brand-5);--fd-color-link:var(--fd-color-brand-6);--fd-color-link-active:var(--fd-color-brand-7);--fd-color-link-hover:var(--fd-color-brand-4);--fd-color-control-outline:rgba(0, 184, 153, .1);--fd-color-info:var(--fd-color-info-6);--fd-color-info-active:var(--fd-color-info-7);--fd-color-info-hover:var(--fd-color-info-4);--fd-color-info-bg:var(--fd-color-info-1);--fd-color-info-bg-hover:var(--fd-color-info-2);--fd-color-info-border:var(--fd-color-info-3);--fd-color-info-border-hover:var(--fd-color-info-4);--fd-color-info-text:var(--fd-color-info-6);--fd-color-info-text-active:var(--fd-color-info-7);--fd-color-info-text-hover:var(--fd-color-info-5);--fd-color-success:var(--fd-color-success-6);--fd-color-success-active:var(--fd-color-success-7);--fd-color-success-hover:var(--fd-color-success-4);--fd-color-success-bg:var(--fd-color-success-1);--fd-color-success-bg-hover:var(--fd-color-success-2);--fd-color-success-border:var(--fd-color-success-3);--fd-color-success-border-hover:var(--fd-color-success-4);--fd-color-success-text:var(--fd-color-success-6);--fd-color-success-text-active:var(--fd-color-success-7);--fd-color-success-text-hover:var(--fd-color-success-5);--fd-color-warning:var(--fd-color-warning-6);--fd-color-warning-active:var(--fd-color-warning-7);--fd-color-warning-hover:var(--fd-color-warning-4);--fd-color-warning-bg:var(--fd-color-warning-1);--fd-color-warning-bg-hover:var(--fd-color-warning-2);--fd-color-warning-border:var(--fd-color-warning-3);--fd-color-warning-border-hover:var(--fd-color-warning-4);--fd-color-warning-text:var(--fd-color-warning-6);--fd-color-warning-text-active:var(--fd-color-warning-7);--fd-color-warning-text-hover:var(--fd-color-warning-5);--fd-color-warning-outline:rgba(240, 168, 0, .1);--fd-color-error:var(--fd-color-error-6);--fd-color-error-active:var(--fd-color-error-7);--fd-color-error-hover:var(--fd-color-error-5);--fd-color-error-bg:var(--fd-color-error-1);--fd-color-error-bg-hover:var(--fd-color-error-2);--fd-color-error-bg-active:var(--fd-color-error-3);--fd-color-error-border:var(--fd-color-error-3);--fd-color-error-border-hover:var(--fd-color-error-4);--fd-color-error-text:var(--fd-color-error-6);--fd-color-error-text-active:var(--fd-color-error-7);--fd-color-error-text-hover:var(--fd-color-error-5);--fd-color-error-outline:rgba(235, 80, 80, .06);--fd-color-white:#FFFFFF;--fd-color-black:#000000;--fd-color-transparent:var(--fd-color-transparent-13);--fd-color-text:var(--fd-color-transparent-2);--fd-color-text-secondary:var(--fd-color-transparent-3);--fd-color-text-tertiary:var(--fd-color-transparent-4);--fd-color-text-quaternary:var(--fd-color-transparent-5);--fd-color-text-placeholder:var(--fd-color-text-quaternary);--fd-color-text-description:var(--fd-color-text-tertiary);--fd-color-text-disabled:var(--fd-color-text-quaternary);--fd-color-text-data-disabled:var(--fd-color-text-disabled);--fd-color-text-heading:var(--fd-color-text);--fd-color-text-light-solid:#FFFFFF;--fd-color-text-label:var(--fd-color-text-secondary);--fd-color-text-active:var(--fd-color-fill);--fd-color-fill:var(--fd-color-transparent-7);--fd-color-fill-secondary:var(--fd-color-transparent-9);--fd-color-fill-tertiary:var(--fd-color-transparent-11);--fd-color-fill-quaternary:var(--fd-color-transparent-12);--fd-color-bg-container:var(--fd-color-white);--fd-color-bg-container-disabled:var(--fd-color-fill-quaternary);--fd-color-bg-elevated:#FFFFFF;--fd-color-bg-spotlight:var(--fd-color-transparent-3);--fd-color-bg-mask:var(--fd-color-transparent-5);--fd-control-item-bg-hover:var(--fd-color-fill-tertiary);--fd-control-item-bg-active:var(--fd-color-primary-bg);--fd-control-item-bg-active-hover:var(--fd-color-primary-bg-hover);--fd-control-item-bg-active-disabled:var(--fd-color-fill-secondary);--fd-color-bg-text-hover:var(--fd-color-fill-quaternary);--fd-color-bg-text-active:var(--fd-color-fill-tertiary);--fd-color-fill-alter:var(--fd-color-fill-quaternary);--fd-color-fill-content:var(--fd-color-fill-secondary);--fd-color-icon:var(--fd-color-text-tertiary);--fd-color-icon-hover:var(--fd-color-text-secondary);--fd-color-icon-active:var(--fd-color-text);--fd-color-icon-normal:var(--fd-color-text-secondary);--fd-color-icon-disabled:var(--fd-color-transparent-7);--fd-color-border:var(--fd-color-grey-5);--fd-color-border-secondary:var(--fd-color-grey-4);--fd-color-split:var(--fd-color-border-secondary);--fd-box-shadow:0 0 2px 0 rgba(9, 30, 64, .02),0 4px 8px 0 rgba(9, 30, 64, .06),0 4px 24px 6px rgba(9, 30, 64, .04);--fd-box-shadow-secondary:0 0 4px 0 rgba(9, 30, 64, .05),0 6px 16px -1px rgba(9, 30, 64, .06),0 6px 32px 8px rgba(9, 30, 64, .04);--fd-box-shadow-tertiary:0 0 5px 0 rgba(9, 30, 64, .06),0 10px 24px -2px rgba(9, 30, 64, .1),0 10px 48px 12px rgba(9, 30, 64, .04)}.fdi-list .x-list{border:none;border-radius:0}.fdi-global-adaptor .x-form>.x-form-item .form-item-label{font-weight:600}.fdi-global-adaptor .fdi-icon-extensible-input-popover .x-popover-wrapper{box-shadow:none}.fdi-global-adaptor .x-msg-toast-container{z-index:2000000!important}.fdi-global-adaptor .fdi-graph-node-collapse.x-collapse .x-collapse-item .x-collapse-header{padding-left:6px}.fdi-global-adaptor .fdi-graph-node-collapse.x-collapse .x-collapse-item .x-collapse-header .x-collapse-expand-icon{margin-right:2px}.fdi-global-adaptor .disable .fdi-icon{color:#091e4078!important}.fdi-global-adaptor .fdi-draggable-table.x-table tr.fdi-draggable-table-row td:first-child{height:0px;padding-top:0;padding-bottom:0}.fdi-global-adaptor .fdi-draggable-table.x-table tr.fdi-draggable-table-row td:first-child .fixed-width-cell-content{height:100%}.fdi-global-adaptor .fdi-component-list-item.selected td{background:transparent!important}.fdi-global-adaptor .fdi-multi-select-tag-box.x-select{width:100%}.fdi-global-adaptor .fdi-multi-select-tag-box.x-select .x-select-selector{padding-left:0;padding-right:26px}.fdi-global-adaptor .fdi-multi-select-tag-box.x-select .x-select-selector .x-select-selection-overflow{display:flex;overflow:auto;padding:2px;max-height:78px;gap:4px}.fdi-global-adaptor .x-skeleton-paragraph{padding:0}.fdi-global-adaptor.fdi-select-dropdown .x-search-input .search-prefix{margin-left:8px;margin-right:0}.fdi-global-adaptor.fdi-select-dropdown .x-search-input .input-wrapper .input-content input{padding-left:4px}.pane-expand-collapse-btn.collapse{visibility:visible}.fdi-tab{display:flex;height:100%;width:100%;flex-direction:column;width:0px;flex:1 1 0%}.fdi-tab.x-tab.horizontal-tab .tab-header{padding-left:4px;padding-right:4px}.fdi-tab.x-tab.size-large>.tab-header .tab-header-wrapper .tab-header-item{margin-left:4px;margin-right:4px}.fdi-tab.x-tab .tab-header .tab-header-wrapper .tab-header-item{font-weight:600;color:#091e40a8}.fdi-editable-tree-node{display:flex;width:100%;align-items:center;justify-content:space-between}.fdi-editable-tree-node-title{flex:1;width:0;font-size:12px;line-height:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fdi-check-card{width:166px;height:158px;border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(230 233 239 / var(--tw-border-opacity));display:flex;cursor:pointer;flex-direction:column;border-radius:6px;padding:8px}.fdi-check-card:hover{--tw-shadow: 0px 4px 12px 0px rgba(9, 30, 64, .08);--tw-shadow-colored: 0px 4px 12px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.fdi-check-card-selected{border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(135 176 247 / var(--tw-border-opacity))}.fdi-check-card-selected:hover{--tw-border-opacity: 1;border-color:rgb(135 176 247 / var(--tw-border-opacity))}.fdi-check-card-head{display:flex;width:100%;align-items:center;gap:8px}.fdi-check-card-head-title{font-size:12px;line-height:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#091e40e6}.fdi-check-card-without-title{width:166px;height:158px;border-width:1px;border-style:solid;border-color:transparent;position:relative;display:flex;cursor:pointer;flex-direction:column;border-radius:8px;padding:12px}.fdi-check-card-without-title:hover{border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(230 233 239 / var(--tw-border-opacity));--tw-shadow: 0px 4px 12px 0px rgba(9, 30, 64, .08);--tw-shadow-colored: 0px 4px 12px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.fdi-check-card-without-title-selected{border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(135 176 247 / var(--tw-border-opacity))}.fdi-check-card-without-title-selected:hover{--tw-border-opacity: 1;border-color:rgb(135 176 247 / var(--tw-border-opacity))}.fdi-check-card-without-title-checkbox{position:absolute;top:12px;left:12px}.fdi-check-card-view{display:flex;height:100%;width:100%;flex-direction:column;overflow:auto;padding-bottom:12px}.fdi-check-card-view-head{display:flex;width:100%;align-items:center;gap:8px;padding:8px 20px}.fdi-check-card-view-deal-bar{display:flex;width:100%;align-items:center;justify-content:space-between;gap:8px;border-radius:6px;--tw-bg-opacity: 1;background-color:rgb(229 239 255 / var(--tw-bg-opacity));padding:8px 8px 8px 12px}.fdi-check-card-view-content{display:flex;flex-wrap:wrap;gap:16px;overflow:auto;padding-left:20px;padding-right:20px;padding-bottom:12px}.fdi-check-card-view-card:hover .fdi-check-card-group-card-button{visibility:visible}.fdi-check-card-view-card-container{display:flex;height:100%;width:100%;flex-direction:column;margin-top:16px;align-items:center}.fdi-check-card-view-card-img{height:70px;display:flex;width:100%;align-items:center;justify-content:center}.fdi-check-card-view-card-title{font-size:12px;line-height:20px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;word-break:break-all;text-align:center;color:#091e40e6}.fdi-indicator-card{position:relative}.fdi-indicator-card-background{border-radius:6px}.fdi-indicator-card-container{padding:14px 24px;position:absolute;top:0;display:flex;height:100%;width:100%;align-items:center;justify-content:space-between;gap:8px}.fdi-indicator-card-label{font-size:12px;line-height:20px}.fdi-indicator-card-label>span{font-weight:400}.fdi-exhibit-list-item{font-size:14px;line-height:22px;display:flex;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 12px}.fdi-exhibit-list-item-icon{margin:8px}.fdi-exhibit-list-item-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fdi-directory-tree-select .x-list-tree .tree-node .node-content-wrapper .node-content .node-title{width:0}.fdi-data-detail-pane{width:280px;padding-top:39px;position:relative;height:100%}.fdi-data-detail-pane-container{border-width:0px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity));display:flex;height:100%;width:100%;flex-direction:column;gap:16px;border-left-width:1px;border-top-width:1px}.fdi-import-list{width:280px;border-width:0px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity));border-right-width:1px;display:flex;height:100%;flex-direction:column;justify-content:space-between;padding:20px}.fdi-import-list-container{gap:4px;height:0px;flex:1 1 0%;display:flex;flex-direction:column;overflow:auto}.fdi-import-list-item{height:28px;min-height:28px;cursor:pointer;border-radius:.25rem}.fdi-import-list-item:hover{--tw-bg-opacity: 1;background-color:rgb(238 241 246 / var(--tw-bg-opacity))}.fdi-import-list-item:active{--tw-bg-opacity: 1;background-color:rgb(230 233 239 / var(--tw-bg-opacity))}.fdi-import-list-item.selected{--tw-bg-opacity: 1;background-color:rgb(229 239 255 / var(--tw-bg-opacity))}.fdi-import-list-item{display:flex;width:100%;align-items:center;justify-content:space-between;padding-left:8px;padding-right:8px}.fdi-import-list-item:hover .fdi-import-list-action-button{display:flex}.fdi-import-list-item.error{--tw-text-opacity: 1;color:rgb(230 82 81 / var(--tw-text-opacity))}.fdi-import-list-action-button{display:none;align-items:center}.x-ui-hidden{display:none!important}@keyframes x-fade-down{0%{opacity:0;transform:translate3d(0,-15%,0)}to{opacity:1;transform:translateZ(0)}}@keyframes x-fade-down-large{0%{opacity:0;transform:translate3d(0,-100%,0)}to{opacity:1;transform:translateZ(0)}}@keyframes x-fade-in-left{0%{opacity:0;transform:translate3d(-40%,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes x-fade-in-right{0%{opacity:0;transform:translate3d(40%,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes x-rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes x-slide-down{0%{opacity:0;transform:scaleY(.8)}to{opacity:1;transform:scaleY(1)}}@keyframes x-zoom-in{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes x-zoom-in-big{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes x-zoom-by-size{0%{margin:0;opacity:0;padding:0;transform:scale(.5);width:0}to{opacity:1;transform:scale(1)}}@keyframes x-move-left{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-left-small{0%{opacity:0;transform:translate(-3px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-left-small-light{0%{opacity:0;transform:translate(-3px)}to{opacity:.7;transform:translate(0)}}@keyframes x-move-right{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-right-small{0%{opacity:0;transform:translate(3px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-right-small-light{0%{opacity:0;transform:translate(3px)}to{opacity:.7;transform:translate(0)}}@keyframes x-move-bottom{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-bottom-small{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-bottom-small-light{0%{opacity:0;transform:translateY(3px)}to{opacity:.7;transform:translate(0)}}@keyframes x-move-top{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-top-small{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translate(0)}}@keyframes x-move-top-small-light{0%{opacity:0;transform:translateY(-3px)}to{opacity:.7;transform:translate(0)}}@keyframes x-spin-icon-load{0%{stroke-dasharray:105;stroke-dashoffset:105}to{stroke-dasharray:105;stroke-dashoffset:315}}@keyframes x-spin-skeleton-load{0%{background-position:100% 0}to{background-position:0 0}}.x-button-css-var{--fd-button-margin-between:10px;--fd-button-height-text-lg:28px;--fd-button-height-text:24px;--fd-button-height-text-sm:20px;--fd-button-padding-text-xl:6px;--fd-button-padding-text:4px;--fd-button-text-hover-background:var(--fd-color-primary-bg);--fd-button-text-active-background:var(--fd-color-primary-bg);--fd-button-text-danger-hover-background:var(--fd-color-error-bg);--fd-button-text-danger-active-background:var(--fd-color-error-bg)}.x-check-css-var{--fd-check-default-padding:4px 0}.x-collapse-css-var{--fd-collapse-panel-padding:var(--fd-padding-xl);--fd-collapse-panel-padding-sm:var(--fd-padding-lg);--fd-collapse-panel-padding-lg:var(--fd-padding-3xl) var(--fd-padding-xl);--fd-collapse-panel-padding-no-border:var(--fd-padding-xs) var(--fd-padding-xl) var(--fd-padding-xl) 40px;--fd-collapse-panel-padding-no-border-sm:var(--fd-padding-xs) var(--fd-padding-lg) var(--fd-padding-lg) 36px;--fd-collapse-panel-padding-no-border-lg:var(--fd-padding-xs) var(--fd-padding-3xl) var(--fd-padding-3xl) 48px}.x-input-css-var{--fd-input-active-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline);--fd-input-error-active-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-error-outline);--fd-input-waring-active-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-warning-outline)}.x-input-number-css-var{--fd-input-number-active-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline)}.x-navigation-css-var{--fd-navigation-collapsed-width:calc(var(--fd-control-height-lg)*2)}.x-radio-css-var,.x-radio-group-css-var{--fd-radio-default-padding:4px 0}.x-tooltip-css-var{--fd-tooltip-padding-layout-xs:var(--fd-padding-layout-xs);--fd-tooltip-padding-layout-2xs:var(--fd-padding-layout-2xs)}.x-spin-css-var{--fd-spin-height:30px;--fd-spin-height-sm:16px;--fd-spin-height-lg:46px}.x-button{background:var(--fd-color-bg-container);border:1px solid;border-radius:var(--fd-border-radius);cursor:pointer;display:inline-block;font-family:-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:var(--fd-font-size);font-weight:400;outline:none;overflow:hidden;position:relative;text-align:center;text-overflow:ellipsis;transition:box-shadow .3s ease,background .3s ease,border-color .3s ease,color .3s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.x-button+.x-button{margin-left:var(--fd-button-margin-between)}.x-button .x-button-icon-wrapper{align-items:center;display:inline-flex;margin-right:var(--fd-gap-sm)}.x-button .x-button-icon-wrapper .x-button-icon{line-height:1}.x-button .x-button-icon-wrapper .x-button-icon>*{vertical-align:bottom}.x-button .x-button-icon-wrapper:only-child{margin-right:0}.x-button.size-small{font-size:var(--fd-font-size-sm);height:var(--fd-control-height-sm);line-height:calc(var(--fd-control-height-sm) - 2px);padding:0 var(--fd-padding)}.x-button.size-small .x-button-icon{font-size:var(--fd-icon-size)}.x-button.size-middle,.x-button.size-normal{height:var(--fd-control-height);line-height:calc(var(--fd-control-height) - 2px);padding:0 var(--fd-padding-xl)}.x-button.size-middle .x-button-icon,.x-button.size-normal .x-button-icon{font-size:var(--fd-icon-size)}.x-button.size-large{font-size:var(--fd-font-size-lg);height:var(--fd-control-height-lg);line-height:calc(var(--fd-control-height-lg) - 2px);padding:0 var(--fd-padding-xl)}.x-button.size-large .x-button-icon{font-size:var(--fd-icon-size-lg)}.x-button.shape-round{border-radius:9999px}.x-button.shape-round.size-small{padding:0 var(--fd-padding-lg)}.x-button.shape-round.size-middle,.x-button.shape-round.size-normal{padding:0 var(--fd-padding-xl)}.x-button.shape-round.size-large{padding:0 var(--fd-padding-2xl)}.x-button.compact-middle,.x-button.compact-normal{height:var(--fd-button-height-text);line-height:calc(var(--fd-button-height-text) - 2px);padding:0 var(--fd-button-padding-text-xl)}.x-button.compact-small{height:var(--fd-button-height-text-sm);line-height:calc(var(--fd-button-height-text-sm) - 2px);padding:0 var(--fd-button-padding-text)}.x-button.compact-large{height:var(--fd-button-height-text-lg);line-height:calc(var(--fd-button-height-text-lg) - 2px);padding:0 var(--fd-button-padding-text-xl)}.x-button.is-only-icon{padding:var(--fd-padding-zero)!important;width:var(--fd-control-height)}.x-button.is-only-icon.size-small{width:var(--fd-control-height-sm)}.x-button.is-only-icon.size-large{width:var(--fd-control-height-lg)}.x-button.block{width:100%}.x-button.loading{cursor:default;opacity:.4}.x-button.disable{cursor:not-allowed}.x-button:focus-visible{outline:4px solid var(--fd-color-primary-border);outline-offset:1px;transition:outline-offset 0s,outline 0s}.x-button:active{transition:unset}.x-button.style-primary{background:var(--fd-color-primary);border-color:var(--fd-color-primary);color:var(--fd-color-text-light-solid)}.x-button.style-primary:hover{background:var(--fd-color-primary-hover);border-color:var(--fd-color-primary-hover);color:var(--fd-color-text-light-solid)}.x-button.style-primary.is-active,.x-button.style-primary:active{background:var(--fd-color-primary-text-active);border-color:var(--fd-color-primary-text-active);color:var(--fd-color-text-light-solid)}.x-button.style-primary.danger{background:var(--fd-color-error);border-color:var(--fd-color-error);color:var(--fd-color-text-light-solid)}.x-button.style-primary.danger:hover{background:var(--fd-color-error-hover);border-color:var(--fd-color-error-hover);color:var(--fd-color-text-light-solid)}.x-button.style-primary.danger.is-active,.x-button.style-primary.danger:active{background:var(--fd-color-error-active);border-color:var(--fd-color-error-active);color:var(--fd-color-text-light-solid)}.x-button.style-primary.loading{background:var(--fd-color-primary)!important;border-color:var(--fd-color-primary)!important;color:var(--fd-color-text-light-solid)!important}.x-button.style-primary.loading .loader-icon:before{border-color:var(--fd-color-text-light-solid)!important}.x-button.style-primary.loading .loader-icon:after{border-top-color:var(--fd-color-text-light-solid)!important}.x-button.style-primary.loading.danger:not(.disable){background:var(--fd-color-error)!important;border-color:var(--fd-color-error)!important;color:var(--fd-color-text-light-solid)!important}.x-button.style-primary.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-text-light-solid)!important}.x-button.style-primary.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-text-light-solid)!important}.x-button.style-primary.disable{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-primary.disable .loader-icon:before{border-color:var(--fd-color-text-disabled)!important}.x-button.style-primary.disable .loader-icon:after{border-top-color:var(--fd-color-text-disabled)!important}.x-button.style-primary.disable.has-icon .x-button-icon{color:var(--fd-color-icon-disabled)!important}.x-button.style-secondary{background:var(--fd-color-primary-bg);border-color:var(--fd-color-primary-bg);color:var(--fd-color-primary)}.x-button.style-secondary:hover{background:var(--fd-color-primary-bg-hover);border-color:var(--fd-color-primary-bg-hover);color:var(--fd-color-primary)}.x-button.style-secondary.is-active,.x-button.style-secondary:active{background:var(--fd-color-primary-bg-active);border-color:var(--fd-color-primary-bg-active);color:var(--fd-color-primary)}.x-button.style-secondary.danger{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-bg);color:var(--fd-color-error)}.x-button.style-secondary.danger:hover{background:var(--fd-color-error-bg-hover);border-color:var(--fd-color-error-bg-hover);color:var(--fd-color-error)}.x-button.style-secondary.danger.is-active,.x-button.style-secondary.danger:active{background:var(--fd-color-error-bg-active);border-color:var(--fd-color-error-bg-active);color:var(--fd-color-error)}.x-button.style-secondary.loading{background:var(--fd-color-primary-bg)!important;border-color:var(--fd-color-primary-bg)!important;color:var(--fd-color-primary)!important}.x-button.style-secondary.loading .loader-icon:before{border-color:var(--fd-color-primary)!important}.x-button.style-secondary.loading .loader-icon:after{border-top-color:var(--fd-color-primary)!important}.x-button.style-secondary.loading.danger:not(.disable){background:var(--fd-color-error-bg)!important;border-color:var(--fd-color-error-bg)!important;color:var(--fd-color-error)!important}.x-button.style-secondary.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-error)!important}.x-button.style-secondary.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-error)!important}.x-button.style-secondary.disable{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-secondary.disable .loader-icon:before{border-color:var(--fd-color-text-disabled)!important}.x-button.style-secondary.disable .loader-icon:after{border-top-color:var(--fd-color-text-disabled)!important}.x-button.style-secondary.disable.has-icon .x-button-icon{color:var(--fd-color-icon-disabled)!important}.x-button.style-normal{background:var(--fd-color-bg-container);border-color:var(--fd-color-primary);color:var(--fd-color-primary)}.x-button.style-normal:hover{background:var(--fd-color-primary-bg);border-color:var(--fd-color-primary-hover);color:var(--fd-color-primary-hover)}.x-button.style-normal.is-active,.x-button.style-normal:active{background:var(--fd-color-primary-bg);border-color:var(--fd-color-primary-active);color:var(--fd-color-primary-active)}.x-button.style-normal.danger{background:var(--fd-color-bg-container);border-color:var(--fd-color-error);color:var(--fd-color-error)}.x-button.style-normal.danger:hover{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-border-hover);color:var(--fd-color-error-hover)}.x-button.style-normal.danger.is-active,.x-button.style-normal.danger:active{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-active);color:var(--fd-color-error-active)}.x-button.style-normal.loading{background:var(--fd-color-bg-container)!important;color:var(--fd-color-primary)!important}.x-button.style-normal.loading,.x-button.style-normal.loading .loader-icon:before{border-color:var(--fd-color-primary)!important}.x-button.style-normal.loading .loader-icon:after{border-top-color:var(--fd-color-primary)!important}.x-button.style-normal.loading.danger:not(.disable){background:var(--fd-color-bg-container)!important;border-color:var(--fd-color-error)!important;color:var(--fd-color-error)!important}.x-button.style-normal.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-error)!important}.x-button.style-normal.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-error)!important}.x-button.style-normal.disable{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-normal.disable .loader-icon:before{border-color:var(--fd-color-text-disabled)!important}.x-button.style-normal.disable .loader-icon:after{border-top-color:var(--fd-color-text-disabled)!important}.x-button.style-normal.disable.has-icon .x-button-icon{color:var(--fd-color-icon-disabled)!important}.x-button.style-negative{background:var(--fd-color-bg-container);border-color:var(--fd-color-border);color:var(--fd-color-text)}.x-button.style-negative:not(:hover,:active,.is-active,.danger,.loading,.disable) .x-button-icon{color:var(--fd-color-icon-normal);transition:color .3s ease}.x-button.style-negative:hover{background:var(--fd-color-bg-container);border-color:var(--fd-color-primary-hover);color:var(--fd-color-primary-hover)}.x-button.style-negative.is-active,.x-button.style-negative:active{background:var(--fd-color-bg-container);border-color:var(--fd-color-primary-active);color:var(--fd-color-primary-active)}.x-button.style-negative.danger{background:var(--fd-color-bg-container);border-color:var(--fd-color-error);color:var(--fd-color-error)}.x-button.style-negative.danger:hover{background:var(--fd-color-bg-container);border-color:var(--fd-color-error-border-hover);color:var(--fd-color-error-hover)}.x-button.style-negative.danger.is-active,.x-button.style-negative.danger:active{background:var(--fd-color-bg-container);border-color:var(--fd-color-error-active);color:var(--fd-color-error-active)}.x-button.style-negative.loading{background:var(--fd-color-bg-container)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text)!important}.x-button.style-negative.loading .loader-icon:before{border-color:var(--fd-color-text)!important}.x-button.style-negative.loading .loader-icon:after{border-top-color:var(--fd-color-text)!important}.x-button.style-negative.loading.danger:not(.disable){background:var(--fd-color-bg-container)!important;border-color:var(--fd-color-error)!important;color:var(--fd-color-error)!important}.x-button.style-negative.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-error)!important}.x-button.style-negative.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-error)!important}.x-button.style-negative.disable{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-negative.disable .loader-icon:before{border-color:var(--fd-color-text-disabled)!important}.x-button.style-negative.disable .loader-icon:after{border-top-color:var(--fd-color-text-disabled)!important}.x-button.style-negative.disable.has-icon .x-button-icon{color:var(--fd-color-icon-disabled)!important}.x-button.style-link{color:var(--fd-color-link);outline:none;padding:0 var(--fd-padding-zero)!important;text-decoration:underline}.x-button.style-link,.x-button.style-link:hover{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent)}.x-button.style-link:hover{color:var(--fd-color-link-hover)}.x-button.style-link.is-active,.x-button.style-link:active{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent);color:var(--fd-color-link-active)}.x-button.style-link.danger{color:var(--fd-color-error)}.x-button.style-link.danger,.x-button.style-link.danger:hover{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent)}.x-button.style-link.danger:hover{color:var(--fd-color-error-hover)}.x-button.style-link.danger.is-active,.x-button.style-link.danger:active{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent);color:var(--fd-color-error-active)}.x-button.style-link.loading{background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-link)!important}.x-button.style-link.loading .loader-icon:before{border-color:var(--fd-color-link)!important}.x-button.style-link.loading .loader-icon:after{border-top-color:var(--fd-color-link)!important}.x-button.style-link.loading.danger:not(.disable){background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-error)!important}.x-button.style-link.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-error)!important}.x-button.style-link.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-error)!important}.x-button.style-link.disable{background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-link.disable .loader-icon:before{border-color:var(--fd-color-text-disabled)!important}.x-button.style-link.disable .loader-icon:after{border-top-color:var(--fd-color-text-disabled)!important}.x-button.style-link.disable.has-icon .x-button-icon{color:var(--fd-color-icon-disabled)!important}.x-button.style-text{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent);color:var(--fd-color-primary)}.x-button.style-text:hover{background:var(--fd-button-text-hover-background);border-color:var(--fd-color-transparent);color:var(--fd-color-primary-hover)}.x-button.style-text.is-active,.x-button.style-text:active{background:var(--fd-button-text-active-background);border-color:var(--fd-color-transparent);color:var(--fd-color-primary-active)}.x-button.style-text.danger{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent);color:var(--fd-color-error)}.x-button.style-text.danger:hover{background:var(--fd-button-text-danger-hover-background);border-color:var(--fd-color-transparent);color:var(--fd-color-error-hover)}.x-button.style-text.danger.is-active,.x-button.style-text.danger:active{background:var(--fd-button-text-danger-active-background);border-color:var(--fd-color-transparent);color:var(--fd-color-error-active)}.x-button.style-text.loading{background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-primary)!important}.x-button.style-text.loading .loader-icon:before{border-color:var(--fd-color-primary)!important}.x-button.style-text.loading .loader-icon:after{border-top-color:var(--fd-color-primary)!important}.x-button.style-text.loading.danger:not(.disable){background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-error)!important}.x-button.style-text.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-error)!important}.x-button.style-text.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-error)!important}.x-button.style-text.disable{background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-text.disable .loader-icon:before{border-color:var(--fd-color-text-disabled)!important}.x-button.style-text.disable .loader-icon:after{border-top-color:var(--fd-color-text-disabled)!important}.x-button.style-text.disable.has-icon .x-button-icon{color:var(--fd-color-icon-disabled)!important}.x-button.style-text-normal{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent);color:var(--fd-color-text)}.x-button.style-text-normal:not(:hover,:active,.is-active,.danger,.loading,.disable) .x-button-icon{color:var(--fd-color-icon-normal);transition:color .3s ease}.x-button.style-text-normal:hover{background:var(--fd-color-bg-text-hover);border-color:var(--fd-color-transparent);color:var(--fd-color-text)}.x-button.style-text-normal.is-active,.x-button.style-text-normal:active{background:var(--fd-color-bg-text-active);border-color:var(--fd-color-transparent);color:var(--fd-color-text)}.x-button.style-text-normal.danger{background:var(--fd-color-transparent);border-color:var(--fd-color-transparent);color:var(--fd-color-error)}.x-button.style-text-normal.danger:hover{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-bg);color:var(--fd-color-error-hover)}.x-button.style-text-normal.danger.is-active,.x-button.style-text-normal.danger:active{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-bg);color:var(--fd-color-error-active)}.x-button.style-text-normal.loading{background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-text)!important}.x-button.style-text-normal.loading .loader-icon:before{border-color:var(--fd-color-text)!important}.x-button.style-text-normal.loading .loader-icon:after{border-top-color:var(--fd-color-text)!important}.x-button.style-text-normal.loading.danger:not(.disable){background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-error)!important}.x-button.style-text-normal.loading.danger:not(.disable) .loader-icon:before{border-color:var(--fd-color-error)!important}.x-button.style-text-normal.loading.danger:not(.disable) .loader-icon:after{border-top-color:var(--fd-color-error)!important}.x-button.style-text-normal.disable{background:var(--fd-color-transparent)!important;border-color:var(--fd-color-transparent)!important;color:var(--fd-color-text-disabled)!important}.x-button.style-text-normal.disable .loader-icon:before{border-color:var(--fd-color-text)!important}.x-button.style-text-normal.disable .loader-icon:after{border-top-color:var(--fd-color-text)!important}.x-button.style-text-normal.disable.has-icon .x-button-icon{color:var(--fd-color-icon-disabled)!important}.x-button .loader-icon{background:transparent;display:inline-block;height:1em;position:relative;width:1em}.x-button .loader-icon:before{opacity:.2}.x-button .loader-icon:after,.x-button .loader-icon:before{border:2px solid transparent;border-radius:50%;content:"";inset:0;position:absolute}.x-button .loader-icon:after{animation:x-rotate 1s cubic-bezier(.43,.1,.54,.85) infinite}.x-button-group{display:inline-block}.x-button-group .x-button{margin:0!important;vertical-align:middle}.x-button-group .x-button.is-active,.x-button-group .x-button:active,.x-button-group .x-button:focus,.x-button-group .x-button:hover{z-index:2}.x-button-group .x-button.disable{z-index:auto}.x-button-group .x-button:not(:first-child).style-primary{border-left:1px solid var(--fd-color-text-light-solid)}.x-button-group .x-button:not(:first-child).style-secondary{border-left:1px solid var(--fd-color-primary-border)}.x-button-group .x-button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px!important}.x-button-group .x-button:not(:last-child).style-primary{border-right:1px solid var(--fd-color-text-light-solid)}.x-button-group .x-button:not(:last-child).style-secondary{border-right:1px solid var(--fd-color-primary-border)}.x-button-group .x-button+.x-button{border-bottom-left-radius:0;border-top-left-radius:0}.x-input{height:var(--fd-control-height);line-height:calc(var(--fd-control-height) - 2px);width:150px}.x-input .input-inner{font-size:var(--fd-font-size);line-height:var(--fd-line-height);padding:0 var(--fd-padding)}.x-input.large{height:var(--fd-control-height-lg);line-height:calc(var(--fd-control-height-lg) - 2px)}.x-input.large .input-inner{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg);padding:0 var(--fd-padding)}.x-input.small{height:var(--fd-control-height-sm);line-height:calc(var(--fd-control-height-sm) - 2px)}.x-input.small .input-inner{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);padding:0 var(--fd-padding-xs)}.x-input.has-after-addon,.x-input.has-before-addon{align-items:center;display:flex}.x-input.has-after-addon .x-after-addon>.x-svgicon,.x-input.has-after-addon .x-before-addon>.x-svgicon,.x-input.has-before-addon .x-after-addon>.x-svgicon,.x-input.has-before-addon .x-before-addon>.x-svgicon{border:1px solid var(--fd-color-border);border-bottom-left-radius:var(--fd-border-radius);border-top-left-radius:var(--fd-border-radius);color:var(--fd-color-icon-normal);height:var(--fd-control-height);padding:0 var(--fd-padding)}.x-input.has-after-addon .x-before-addon,.x-input.has-before-addon .x-before-addon{flex:none}.x-input.has-after-addon .x-before-addon>:first-child,.x-input.has-after-addon .x-before-addon>:first-child .x-combo-dropdown-label,.x-input.has-before-addon .x-before-addon>:first-child,.x-input.has-before-addon .x-before-addon>:first-child .x-combo-dropdown-label{border-bottom-right-radius:0;border-right:none;border-top-right-radius:0}.x-input.has-after-addon .x-inner-wrapper,.x-input.has-before-addon .x-inner-wrapper{flex:auto}.x-input.has-after-addon .x-after-addon,.x-input.has-before-addon .x-after-addon{flex:none}.x-input.has-after-addon .x-after-addon>:last-child,.x-input.has-after-addon .x-after-addon>:last-child .x-combo-dropdown-label,.x-input.has-before-addon .x-after-addon>:last-child,.x-input.has-before-addon .x-after-addon>:last-child .x-combo-dropdown-label{border-bottom-left-radius:0;border-left:none;border-top-left-radius:0}.x-input.has-before-addon .x-inner-wrapper{border-bottom-left-radius:0;border-top-left-radius:0}.x-input.has-after-addon .x-inner-wrapper{border-bottom-right-radius:0;border-top-right-radius:0}.x-input.allow-clear .x-inner-wrapper{align-items:center;display:flex}.x-input.allow-clear.has-suffix .x-inner-wrapper .input-inner{padding-right:60px}.x-textarea{height:80px;width:252px}.x-textarea.textarea-rows{height:auto}.x-textarea .textarea-inner{font-size:var(--fd-font-size);line-height:var(--fd-line-height);overflow:auto}.x-resize-textarea,.x-textarea .x-inner-wrapper .input-inner,.x-textarea .x-inner-wrapper .textarea-inner{padding:var(--fd-padding-xs) var(--fd-padding);vertical-align:top}.x-resize-textarea{background-color:var(--fd-color-bg-container);border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);color:var(--fd-color-text);font-family:-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:var(--fd-font-size);font-variant-numeric:tabular-nums;line-height:var(--fd-line-height);outline:none;resize:none;transition:border-color .2s;width:252px}.x-resize-textarea *,.x-resize-textarea :after,.x-resize-textarea :before{box-sizing:border-box}.x-resize-textarea::-moz-placeholder{color:var(--fd-color-text-placeholder)!important}.x-resize-textarea:-ms-input-placeholder{color:var(--fd-color-text-placeholder)!important}.x-resize-textarea::placeholder{color:var(--fd-color-text-placeholder)!important}.x-resize-textarea:hover{border-color:var(--fd-color-primary-hover)}.x-resize-textarea.block{width:100%}.x-resize-textarea.textarea-disable{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border)}.x-resize-textarea.textarea-disable .textarea-inner{color:var(--fd-color-text)}.x-resize-textarea.textarea-disable:hover{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border)}.x-resize-textarea.textarea-disable:hover .textarea-inner{color:var(--fd-color-text)}.x-resize-textarea.textarea-focus{border-color:var(--fd-color-primary)!important;box-shadow:var(--fd-input-active-shadow)}.x-resize-textarea.textarea-error,.x-resize-textarea.textarea-invalid{border-color:var(--fd-color-error)}.x-resize-textarea.textarea-normal{border-color:var(--fd-color-border)}.x-resize-textarea.textarea-warning{border-color:var(--fd-color-warning)}.x-resize-textarea.textarea-readonly{border-color:var(--fd-color-border)}.x-input *,.x-input :after,.x-input :before,.x-textarea *,.x-textarea :after,.x-textarea :before{box-sizing:border-box}.x-input input,.x-input textarea,.x-textarea input,.x-textarea textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variant-numeric:tabular-nums;margin:0;outline:none}.x-input input::-moz-placeholder,.x-input textarea::-moz-placeholder,.x-textarea input::-moz-placeholder,.x-textarea textarea::-moz-placeholder{opacity:1}.x-input input:-ms-input-placeholder,.x-input textarea:-ms-input-placeholder,.x-textarea input:-ms-input-placeholder,.x-textarea textarea:-ms-input-placeholder{opacity:1}.x-input input::placeholder,.x-input textarea::placeholder,.x-textarea input::placeholder,.x-textarea textarea::placeholder{opacity:1}.x-input input::-ms-clear,.x-input input::-ms-reveal,.x-textarea input::-ms-clear,.x-textarea input::-ms-reveal{display:none}.x-input input[type=number],.x-textarea input[type=number]{-moz-appearance:textfield}.x-input input[type=number]::-webkit-inner-spin-button,.x-input input[type=number]::-webkit-outer-spin-button,.x-textarea input[type=number]::-webkit-inner-spin-button,.x-textarea input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}.x-input.block,.x-textarea.block{width:100%}.x-input .x-inner-wrapper,.x-textarea .x-inner-wrapper{background-color:var(--fd-color-bg-container);border-radius:var(--fd-border-radius);height:100%;overflow:hidden;position:relative}.x-input .x-inner-wrapper:not(.wrapper-borderless),.x-textarea .x-inner-wrapper:not(.wrapper-borderless){border:1px solid var(--fd-color-border);transition:border-color .2s}.x-input .x-inner-wrapper:not(.wrapper-borderless):hover,.x-textarea .x-inner-wrapper:not(.wrapper-borderless):hover{border-color:var(--fd-color-primary-hover)}.x-input .x-inner-wrapper .clear-icon,.x-textarea .x-inner-wrapper .clear-icon{color:var(--fd-color-icon);font-size:16px;position:absolute;right:10px}.x-input .x-inner-wrapper .clear-icon:not(:last-child),.x-textarea .x-inner-wrapper .clear-icon:not(:last-child){right:40px}.x-input .x-inner-wrapper .clear-icon:hover,.x-textarea .x-inner-wrapper .clear-icon:hover{color:var(--fd-color-icon-hover);cursor:pointer}.x-input .x-inner-wrapper .x-prefix,.x-input .x-inner-wrapper .x-suffix,.x-textarea .x-inner-wrapper .x-prefix,.x-textarea .x-inner-wrapper .x-suffix{color:var(--fd-color-icon-normal);position:absolute;top:50%;transform:translateY(-50%)}.x-input .x-inner-wrapper .x-prefix>i,.x-input .x-inner-wrapper .x-suffix>i,.x-textarea .x-inner-wrapper .x-prefix>i,.x-textarea .x-inner-wrapper .x-suffix>i{font-size:var(--fd-font-size-lg)}.x-input .x-inner-wrapper .x-prefix,.x-textarea .x-inner-wrapper .x-prefix{left:10px}.x-input .x-inner-wrapper .x-suffix,.x-textarea .x-inner-wrapper .x-suffix{right:10px}.x-input .x-inner-wrapper .input-inner,.x-input .x-inner-wrapper .textarea-inner,.x-textarea .x-inner-wrapper .input-inner,.x-textarea .x-inner-wrapper .textarea-inner{background:transparent;border:none;color:var(--fd-color-text);height:100%;width:100%}.x-input .x-inner-wrapper .input-inner::-moz-placeholder,.x-input .x-inner-wrapper .textarea-inner::-moz-placeholder,.x-textarea .x-inner-wrapper .input-inner::-moz-placeholder,.x-textarea .x-inner-wrapper .textarea-inner::-moz-placeholder{color:var(--fd-color-text-placeholder)!important}.x-input .x-inner-wrapper .input-inner:-ms-input-placeholder,.x-input .x-inner-wrapper .textarea-inner:-ms-input-placeholder,.x-textarea .x-inner-wrapper .input-inner:-ms-input-placeholder,.x-textarea .x-inner-wrapper .textarea-inner:-ms-input-placeholder{color:var(--fd-color-text-placeholder)!important}.x-input .x-inner-wrapper .input-inner::placeholder,.x-input .x-inner-wrapper .textarea-inner::placeholder,.x-textarea .x-inner-wrapper .input-inner::placeholder,.x-textarea .x-inner-wrapper .textarea-inner::placeholder{color:var(--fd-color-text-placeholder)!important}.x-input .x-inner-wrapper .input-inner,.x-textarea .x-inner-wrapper .input-inner{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-input .x-inner-wrapper .input-inner:not(:first-child),.x-textarea .x-inner-wrapper .input-inner:not(:first-child){padding-left:30px}.x-input .x-inner-wrapper .input-inner:not(:last-child),.x-textarea .x-inner-wrapper .input-inner:not(:last-child){padding-right:30px}.x-input .x-inner-wrapper .textarea-inner,.x-textarea .x-inner-wrapper .textarea-inner{padding:var(--fd-padding-xs) var(--fd-padding);resize:none}.x-input.input-disable .x-inner-wrapper,.x-input.textarea-disable .x-inner-wrapper,.x-textarea.input-disable .x-inner-wrapper,.x-textarea.textarea-disable .x-inner-wrapper{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border)}.x-input.input-disable .x-inner-wrapper .input-inner,.x-input.input-disable .x-inner-wrapper .textarea-inner,.x-input.textarea-disable .x-inner-wrapper .input-inner,.x-input.textarea-disable .x-inner-wrapper .textarea-inner,.x-textarea.input-disable .x-inner-wrapper .input-inner,.x-textarea.input-disable .x-inner-wrapper .textarea-inner,.x-textarea.textarea-disable .x-inner-wrapper .input-inner,.x-textarea.textarea-disable .x-inner-wrapper .textarea-inner{color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-input.input-disable .x-inner-wrapper:hover,.x-input.textarea-disable .x-inner-wrapper:hover,.x-textarea.input-disable .x-inner-wrapper:hover,.x-textarea.textarea-disable .x-inner-wrapper:hover{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border)!important}.x-input.input-disable .x-inner-wrapper:hover .input-inner,.x-input.input-disable .x-inner-wrapper:hover .textarea-inner,.x-input.textarea-disable .x-inner-wrapper:hover .input-inner,.x-input.textarea-disable .x-inner-wrapper:hover .textarea-inner,.x-textarea.input-disable .x-inner-wrapper:hover .input-inner,.x-textarea.input-disable .x-inner-wrapper:hover .textarea-inner,.x-textarea.textarea-disable .x-inner-wrapper:hover .input-inner,.x-textarea.textarea-disable .x-inner-wrapper:hover .textarea-inner{color:var(--fd-color-text-data-disabled)}.x-input.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.textarea-focus .x-inner-wrapper:not(.wrapper-borderless){border-color:var(--fd-color-primary)!important;box-shadow:var(--fd-input-active-shadow)}.x-input.input-focus .input-inner,.x-textarea.input-focus .input-inner{text-overflow:clip}.x-input.input-readonly .x-inner-wrapper,.x-input.textarea-readonly .x-inner-wrapper,.x-textarea.input-readonly .x-inner-wrapper,.x-textarea.textarea-readonly .x-inner-wrapper{border-color:var(--fd-color-border)}.x-input.input-error .x-inner-wrapper,.x-input.input-error.input-focus .x-inner-wrapper,.x-input.textarea-error .x-inner-wrapper,.x-textarea.input-error .x-inner-wrapper,.x-textarea.input-error.input-focus .x-inner-wrapper,.x-textarea.textarea-error .x-inner-wrapper{border-color:var(--fd-color-error)!important}.x-input.input-error .x-inner-wrapper:hover,.x-input.input-error.input-focus .x-inner-wrapper:hover,.x-input.textarea-error .x-inner-wrapper:hover,.x-textarea.input-error .x-inner-wrapper:hover,.x-textarea.input-error.input-focus .x-inner-wrapper:hover,.x-textarea.textarea-error .x-inner-wrapper:hover{border-color:var(--fd-color-error-hover)!important}.x-input.input-error.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.input-error.input-focus.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.input-error.input-focus.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.input-error.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.textarea-error.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.textarea-error.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-error.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-error.input-focus.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-error.input-focus.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-error.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.textarea-error.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.textarea-error.textarea-focus .x-inner-wrapper:not(.wrapper-borderless){box-shadow:var(--fd-input-error-active-shadow)}.x-input.input-invalid .x-inner-wrapper,.x-input.textarea-invalid .x-inner-wrapper,.x-textarea.input-invalid .x-inner-wrapper,.x-textarea.textarea-invalid .x-inner-wrapper{border-color:var(--fd-color-error)}.x-input.input-warning .x-inner-wrapper,.x-input.textarea-warning .x-inner-wrapper,.x-textarea.input-warning .x-inner-wrapper,.x-textarea.textarea-warning .x-inner-wrapper{border-color:var(--fd-color-warning)!important}.x-input.input-warning .x-inner-wrapper:hover,.x-input.textarea-warning .x-inner-wrapper:hover,.x-textarea.input-warning .x-inner-wrapper:hover,.x-textarea.textarea-warning .x-inner-wrapper:hover{border-color:var(--fd-color-warning-hover)!important}.x-input.input-warning.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.input-warning.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.textarea-warning.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-input.textarea-warning.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-warning.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.input-warning.textarea-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.textarea-warning.input-focus .x-inner-wrapper:not(.wrapper-borderless),.x-textarea.textarea-warning.textarea-focus .x-inner-wrapper:not(.wrapper-borderless){box-shadow:var(--fd-input-waring-active-shadow)}.x-inputpassword-icon{color:var(--fd-color-icon);cursor:pointer}.x-inputpassword-icon:hover{color:var(--fd-color-icon-hover)}.x-input-number{border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);color:var(--fd-color-text);height:var(--fd-control-height);line-height:normal;overflow:hidden;position:relative;transition:border .2s ease;width:130px}.x-input-number *,.x-input-number :after,.x-input-number :before{box-sizing:border-box}.x-input-number input,.x-input-number textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variant-numeric:tabular-nums;margin:0;outline:none}.x-input-number input::-moz-placeholder,.x-input-number textarea::-moz-placeholder{opacity:1}.x-input-number input:-ms-input-placeholder,.x-input-number textarea:-ms-input-placeholder{opacity:1}.x-input-number input::placeholder,.x-input-number textarea::placeholder{opacity:1}.x-input-number input::-ms-clear,.x-input-number input::-ms-reveal{display:none}.x-input-number input[type=number]{-moz-appearance:textfield}.x-input-number input[type=number]::-webkit-inner-spin-button,.x-input-number input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}.x-input-number .prefix,.x-input-number .suffix{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;height:100%;justify-content:center;overflow:hidden;position:absolute;width:var(--fd-control-height)}.x-input-number .prefix .control-btn,.x-input-number .suffix .control-btn{color:var(--fd-color-text);height:100%;text-align:center;width:100%}.x-input-number .prefix .control-btn .btn,.x-input-number .suffix .control-btn .btn{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:var(--fd-color-fill-quaternary);background-color:var(--fd-color-bg-container);color:var(--fd-color-text);cursor:pointer;display:flex;height:100%;justify-content:center;transition:all .2s ease}.x-input-number .prefix .control-btn .btn:hover,.x-input-number .suffix .control-btn .btn:hover{background-color:var(--fd-color-bg-text-hover)}.x-input-number .prefix .control-btn .btn:active,.x-input-number .suffix .control-btn .btn:active{background:var(--fd-color-bg-text-hover);transition:unset}.x-input-number .prefix .control-btn .btn.btn-disabled,.x-input-number .suffix .control-btn .btn.btn-disabled{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important;cursor:not-allowed}.x-input-number .prefix .control-btn.add .btn,.x-input-number .suffix .control-btn.add .btn{border-left:1px solid var(--fd-color-border)}.x-input-number .prefix .control-btn.minus .btn,.x-input-number .suffix .control-btn.minus .btn{border-right:1px solid var(--fd-color-border)}.x-input-number .prefix{bottom:0;left:0;top:0}.x-input-number .suffix{bottom:0;right:0;top:0}.x-input-number .inner-input{border:none;border-radius:var(--fd-border-radius);color:var(--fd-color-text);height:100%;outline:none;padding:0 calc(var(--fd-padding) + var(--fd-control-height));text-align:center;width:100%}.x-input-number:not(.disabled):not(.input-readonly).hover{border-color:var(--fd-color-primary-hover)}.x-input-number:not(.disabled):not(.input-readonly).focus{border-color:var(--fd-color-primary-hover);box-shadow:var(--fd-input-number-active-shadow)}.x-input-number.input-readonly .inner-input{cursor:default}.x-input-number.disabled .inner-input{background:var(--fd-color-bg-container-disabled);color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-input-number.control-in-right:not(.disabled):not(.input-readonly):hover .suffix .control-group{background:var(--fd-color-bg-container);display:flex}.x-input-number.control-in-right .inner-input{padding:0 var(--fd-padding);text-align:left}.x-input-number.control-in-right .inner-input:not(:first-child){padding-left:var(--fd-control-height)}.x-input-number.control-in-right .suffix .control-group{-ms-flex-pack:distribute;color:var(--fd-color-text);display:none;flex-direction:column;height:100%;justify-content:space-around;padding:var(--fd-padding-2xs);padding-left:0;width:100%}.x-input-number.control-in-right .suffix .control-group .btn{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-flex:1;align-items:center;background:var(--fd-color-fill-quaternary);border-radius:var(--fd-border-radius-xs);color:var(--fd-color-text);cursor:pointer;display:flex;flex:1 0 auto;height:30%;justify-content:center;transition:all .2s ease;width:100%}.x-input-number.control-in-right .suffix .control-group .btn:hover{background-color:var(--fd-color-bg-text-hover)}.x-input-number.control-in-right .suffix .control-group .btn:active{background:var(--fd-color-bg-text-hover);transition:unset}.x-input-number.control-in-right .suffix .control-group .btn.btn-disabled{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important;cursor:not-allowed}.x-input-number.control-in-right .suffix .control-group .btn:hover{height:60%}.x-input-number.control-in-right .suffix .control-group .btn:first-child{margin-bottom:var(--fd-line-width)}.x-input-number.size-large{height:var(--fd-control-height-lg);width:166px}.x-input-number.size-large .inner-input{font-size:var(--fd-font-size-lg);padding:0 calc(var(--fd-padding) + var(--fd-control-height-lg))}.x-input-number.size-large .prefix,.x-input-number.size-large .suffix{width:var(--fd-control-height-lg)}.x-input-number.size-large.control-in-right .inner-input{padding:0 var(--fd-padding)}.x-input-number.size-large.control-in-right .inner-input:not(:first-child){padding-left:var(--fd-control-height-lg)}.x-input-number.size-small{height:var(--fd-control-height-sm);width:110px}.x-input-number.size-small .inner-input{font-size:var(--fd-font-size-sm);padding:0 calc(var(--fd-padding-xs) + var(--fd-control-height-sm))}.x-input-number.size-small .prefix,.x-input-number.size-small .suffix{width:var(--fd-control-height-sm)}.x-input-number.size-small .prefix .control-btn .btn>i,.x-input-number.size-small .suffix .control-btn .btn>i{font-size:var(--fd-font-size-sm)}.x-input-number.size-small.control-in-right .inner-input{padding:0 var(--fd-padding-xs)}.x-input-number.size-small.control-in-right .inner-input:not(:first-child){padding-left:var(--fd-control-height-sm)}.x-input-number.no-control-btn .inner-input{padding:0 var(--fd-padding);text-align:left}.x-input-number.no-control-btn .inner-input:not(:first-child){padding-left:var(--fd-control-height)}.x-input-number.no-control-btn .inner-input:not(:last-child){padding-right:var(--fd-control-height)}.x-input-number.input-state-error,.x-input-number.input-state-error:not(.disabled):not(.input-readonly).hover{border-color:var(--fd-color-error)}.x-input-number.input-state-warning,.x-input-number.input-state-warning:not(.disabled):not(.input-readonly).hover{border-color:var(--fd-color-warning)}.x-input-number.input-state-success,.x-input-number.input-state-success:not(.disabled):not(.input-readonly).hover{border-color:var(--fd-color-success)}.x-badge{display:inline-block;position:relative}.x-badge *,.x-badge :after,.x-badge :before{box-sizing:border-box}.x-badge.is-only-badge{font-size:0;line-height:var(--fd-line-height-sm)}.x-badge.is-only-badge .badge-count{bottom:0;left:0;position:relative;transform:none;vertical-align:middle}.x-badge.size-small .badge-count{height:calc(var(--fd-font-size-sm) + 2px);line-height:calc(var(--fd-font-size-sm) + 2px);min-width:calc(var(--fd-font-size-sm) + 2px)}.x-badge.size-small .badge-count.badge-multiple-words{padding:0 var(--fd-padding-xs)}.x-badge.size-small .badge-count-dot{height:6px;min-width:auto;width:6px}.x-badge .badge-count{background-color:var(--fd-color-error);border-radius:9999px;bottom:100%;box-shadow:0 0 0 1px var(--fd-color-white);color:var(--fd-color-text-light-solid);display:inline-block;font-size:var(--fd-font-size-sm);height:var(--fd-line-height-sm);left:100%;line-height:var(--fd-line-height-sm);max-width:100px;min-width:20px;position:absolute;text-align:center;transform:translate(calc(0px - var(--fd-line-height-sm)/2),calc(var(--fd-line-height-sm)/2));white-space:nowrap}.x-badge .badge-count.badge-multiple-words{padding:0 var(--fd-padding)}.x-badge .badge-count:not(.x-badge .badge-count-dot){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-badge .badge-count-dot{height:6px;min-width:auto;padding:0;transform:translate(-3px,3px);width:6px}.x-badge .badge-count-zero{background-color:var(--fd-color-bg-container);box-shadow:0 0 0 1px var(--fd-color-border);color:var(--fd-color-text-disabled)}.x-drawer{background:var(--fd-color-bg-container);box-shadow:var(--fd-box-shadow-tertiary);color:var(--fd-color-text);overflow:hidden;position:fixed;z-index:1002}.x-drawer *,.x-drawer :after,.x-drawer :before{box-sizing:border-box}.x-drawer .x-drawer-header{border-bottom:1px solid var(--fd-color-border);font-size:var(--fd-font-size-xl);line-height:var(--fd-line-height-xl);overflow:hidden;padding:var(--fd-padding-layout) var(--fd-padding-layout-lg);position:relative;text-align:center;text-overflow:ellipsis;white-space:nowrap}.x-drawer .x-drawer-header .drawer-close-btn{position:absolute;top:50%;transform:translateY(-50%)}.x-drawer .drawer-header-text{font-weight:700}.x-drawer.x-drawer-with-title{display:flex;flex-direction:column}.x-drawer.x-drawer-with-title .x-drawer-body{flex:1;overflow:hidden;position:relative}.x-drawer.x-drawer-with-title .x-drawer-body.content-padding{padding:var(--fd-padding-layout-lg)}.x-drawer.x-drawer-with-title .x-drawer-footer{-ms-flex-negative:0;border-top:var(--fd-line-width) solid var(--fd-color-border);flex-shrink:0;padding:var(--fd-padding-layout-sm) var(--fd-padding-layout-lg)}.x-drawer .drawer-close-btn{border-radius:var(--fd-border-radius);color:var(--fd-color-text);cursor:pointer;display:block;font-size:var(--fd-icon-size);height:var(--fd-line-height-xl);position:absolute;right:var(--fd-padding-layout-lg);text-align:center;top:var(--fd-padding-layout);transition:color .2s ease;width:var(--fd-line-height-xl)}.x-drawer .drawer-close-btn .close-btn{line-height:var(--fd-line-height-xl)}.x-drawer .drawer-close-btn:hover{background:var(--fd-color-bg-text-hover);color:var(--fd-color-text)}.x-drawer.from-bottom{bottom:0;left:0;right:0}.x-drawer.from-bottom.bottom-appear,.x-drawer.from-bottom.bottom-enter{transform:translate3d(0,100%,0)}.x-drawer.from-bottom.bottom-appear-active,.x-drawer.from-bottom.bottom-enter-active{transform:translateZ(0);transition:all .2s ease-in-out}.x-drawer.from-bottom.bottom-exit{transform:translateZ(0)}.x-drawer.from-bottom.bottom-exit-active{transform:translate3d(0,100%,0);transition:all .2s ease-in-out}.x-drawer.from-bottom.bottom-exit-done{display:none}.x-drawer.from-top{left:0;right:0;top:0}.x-drawer.from-top.top-appear,.x-drawer.from-top.top-enter{transform:translate3d(0,-100%,0)}.x-drawer.from-top.top-appear-active,.x-drawer.from-top.top-enter-active{transform:translateZ(0);transition:all .2s ease-in-out}.x-drawer.from-top.top-exit{transform:translateZ(0)}.x-drawer.from-top.top-exit-active{transform:translate3d(0,-100%,0);transition:all .2s ease-in-out}.x-drawer.from-top.top-exit-done{display:none}.x-drawer.from-left{bottom:0;left:0;top:0}.x-drawer.from-left.left-appear,.x-drawer.from-left.left-enter{transform:translate3d(-100%,0,0)}.x-drawer.from-left.left-appear-active,.x-drawer.from-left.left-enter-active{transform:translateZ(0);transition:all .2s ease-in-out}.x-drawer.from-left.left-exit{transform:translateZ(0)}.x-drawer.from-left.left-exit-active{transform:translate3d(-100%,0,0);transition:all .2s ease-in-out}.x-drawer.from-left.left-exit-done{display:none}.x-drawer.from-right{bottom:0;right:0;top:0}.x-drawer.from-right.right-appear,.x-drawer.from-right.right-enter{transform:translate3d(100%,0,0)}.x-drawer.from-right.right-appear-active,.x-drawer.from-right.right-enter-active{transform:translateZ(0);transition:all .2s ease-in-out}.x-drawer.from-right.right-exit{transform:translateZ(0)}.x-drawer.from-right.right-exit-active{transform:translate3d(100%,0,0);transition:all .2s ease-in-out}.x-drawer.from-right.right-exit-done{display:none}.x-drawer .x-mask,.x-drawer .x-window-mask{position:absolute}.x-drawer .x-drawer{position:absolute;z-index:1002!important}.x-drawer-wrapper.not-body-container .x-drawer,.x-drawer-wrapper.not-body-container .x-mask,.x-drawer-wrapper.not-body-container .x-window-mask{position:absolute}.x-check{color:var(--fd-color-text);display:flex;line-height:normal}.x-check *,.x-check :after,.x-check :before{box-sizing:border-box}.x-check .check-label{align-items:flex-start;cursor:pointer;display:flex;position:relative}.x-check .check-label.has-default-padding{padding:var(--fd-check-default-padding)}.x-check .check-label.size-middle,.x-check .check-label.size-normal{font-size:var(--fd-font-size)}.x-check .check-label.size-middle .check-icon,.x-check .check-label.size-middle .check-origin,.x-check .check-label.size-normal .check-icon,.x-check .check-label.size-normal .check-origin{height:16px;margin:calc((var(--fd-line-height) - 16px)/2) 0;width:16px}.x-check .check-label.size-middle .check-icon .yes-icon,.x-check .check-label.size-middle .check-origin .yes-icon,.x-check .check-label.size-normal .check-icon .yes-icon,.x-check .check-label.size-normal .check-origin .yes-icon{left:4px;top:10px}.x-check .check-label .check-icon{-webkit-box-flex:0;background:var(--fd-color-bg-container);border:1px solid var(--fd-color-border);border-radius:2px;display:inline-block;flex:0 0 auto;position:relative;transition:all .2s ease;vertical-align:middle}.x-check .check-label .check-icon .yes-icon{position:absolute;transform:rotate(-45deg)}.x-check .check-label .check-icon .yes-icon:after,.x-check .check-label .check-icon .yes-icon:before{background:var(--fd-color-text-light-solid);content:"";display:block;position:absolute;transition:all .2s ease}.x-check .check-label .check-icon .yes-icon:before{border-radius:1px 1px 0 0;bottom:0;height:0;width:2px}.x-check .check-label .check-icon .yes-icon:after{border-radius:0 1px 1px 2px;height:2px;width:0}.x-check .check-label .check-origin{cursor:inherit;opacity:0;position:absolute}.x-check .check-label .check-text{word-wrap:break-word;line-height:var(--fd-line-height);max-width:100%;padding-left:var(--fd-gap);vertical-align:middle;word-break:break-word}.x-check .check-label.is-only-icon{align-items:center;height:16px}.x-check:not(.auto-wrap) .x-check-wrapper{min-width:0}.x-check:not(.auto-wrap) .x-check-wrapper .check-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-check.check-checked:not(.indeterminate) .check-label.size-middle .check-icon .yes-icon:before,.x-check.check-checked:not(.indeterminate) .check-label.size-normal .check-icon .yes-icon:before{height:4px}.x-check.check-checked:not(.indeterminate) .check-label.size-middle .check-icon .yes-icon:after,.x-check.check-checked:not(.indeterminate) .check-label.size-normal .check-icon .yes-icon:after{width:10px}.x-check.check-checked:not(.indeterminate) .check-label .check-icon{background:var(--fd-color-primary);border-color:var(--fd-color-primary)}.x-check.check-checked:not(.indeterminate):hover .check-icon{background-color:var(--fd-color-primary-hover)}.x-check .x-check-wrapper:focus{box-shadow:0 0 0 1px var(--fd-color-primary);outline:none}.x-check .x-check-wrapper:active{box-shadow:none}.x-check .x-check-wrapper:hover .check-icon{border-color:var(--fd-color-primary)}.x-check.check-disable .x-check-wrapper:focus{box-shadow:none}.x-check.check-disable .check-label{cursor:not-allowed}.x-check.check-disable .check-label .check-icon{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important}.x-check.check-disable .check-label .check-icon .indeterminate-icon,.x-check.check-disable .check-label .check-icon .yes-icon,.x-check.check-disable .check-label .check-icon:hover{border-color:var(--fd-color-border)!important}.x-check.check-disable .check-label .check-icon .indeterminate-icon:after,.x-check.check-disable .check-label .check-icon .indeterminate-icon:before,.x-check.check-disable .check-label .check-icon .yes-icon:after,.x-check.check-disable .check-label .check-icon .yes-icon:before{background:var(--fd-color-icon-disabled)!important}.x-check.check-disable .check-label .check-text{color:var(--fd-color-text-data-disabled)!important}.x-check.check-disable.check-checked .check-label .check-icon .yes-icon:after,.x-check.check-disable.check-checked .check-label .check-icon .yes-icon:before{background:var(--fd-color-icon-disabled)!important}.x-check.indeterminate .check-icon{border-color:var(--fd-color-primary)}.x-check.indeterminate .check-icon .indeterminate-icon:before{background-color:var(--fd-color-primary);content:"";display:block;height:8px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:all .2s ease;width:8px}.x-switch{background:var(--fd-color-primary);border-radius:11px;cursor:pointer;display:inline-block;font-size:var(--fd-font-size-sm);height:22px;line-height:22px;position:relative;transition:background .1s ease-out;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-switch *,.x-switch :after,.x-switch :before{box-sizing:border-box}.x-switch.loading{opacity:.4}.x-switch:not(.state-open){background:var(--fd-color-text-quaternary)!important}.x-switch:not(.state-open) .switch-loading-status{border-top-color:var(--fd-color-text-quaternary)!important}.x-switch .inner-label{color:var(--fd-color-text-light-solid);display:inline-block;height:22px;min-width:44px;padding:0 8px 0 22px;text-align:right;vertical-align:top}.x-switch .inner-label .trigger-sign-box{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:var(--fd-color-white);border-radius:50%;display:block;display:flex;filter:drop-shadow(0 2px 4px rgba(0,35,11,.2));height:18px;justify-content:center;left:2px;position:absolute;top:2px;transition-duration:.2s;transition-property:left,transform,margin;width:18px}.x-switch .inner-label .trigger-sign-box .switch-loading-status{animation:x-rotate .8s cubic-bezier(.43,.1,.54,.85) infinite;border:2px solid;border-radius:50%;border-top:2px solid var(--fd-color-primary);height:14px;margin:0 auto;transform-origin:center;width:14px}.x-switch.state-open .inner-label{padding:0 22px 0 8px;text-align:left}.x-switch.state-open .inner-label .trigger-sign-box{left:100%;margin-left:-2px;right:2px;transform:translate(-100%)}.x-switch.disabled{cursor:not-allowed;opacity:.4}.x-switch.size-small{height:16px;line-height:16px}.x-switch.size-small .inner-label{height:16px;min-width:28px;padding:0 6px 0 14px}.x-switch.size-small .inner-label .trigger-sign-box{height:12px;width:12px}.x-switch.size-small .inner-label .trigger-sign-box .switch-loading-status{height:10px;width:10px}.x-switch.size-small.state-open .inner-label{padding:0 14px 0 8px}.x-check-group{display:inline-block;max-width:100%}.x-check-group .x-check-all{color:var(--fd-color-primary)}.x-check-group.check-group-horizontal{display:flex;flex-wrap:wrap}.x-check-group.check-group-horizontal.no-default-padding{row-gap:var(--fd-gap)}.x-check-group.check-group-horizontal.no-default-padding .x-check .check-label{padding:0}.x-check-group.check-group-horizontal .x-check{display:inline-block;margin-right:var(--fd-gap-4xl);max-width:100%}.x-check-group.check-group-horizontal .x-check:last-child{margin-right:0}.x-check-group.check-group-vertical.no-default-padding .x-check:first-child .check-label{padding-top:0}.x-check-group.check-group-vertical.no-default-padding .x-check:last-child .check-label{padding-bottom:0}.x-combo,.x-combocheck{height:var(--fd-control-height);width:200px}.x-combo *,.x-combo :after,.x-combo :before,.x-combocheck *,.x-combocheck :after,.x-combocheck :before{box-sizing:border-box}.x-combo:not(.disabled) .x-combo-dropdown-label,.x-combocheck:not(.disabled) .x-combo-dropdown-label{border-color:var(--fd-color-border)}.x-combo:not(.disabled).active,.x-combo:not(.disabled):focus,.x-combocheck:not(.disabled).active,.x-combocheck:not(.disabled):focus{outline:none}.x-combo:not(.disabled).active .x-combo-dropdown-label,.x-combo:not(.disabled):focus .x-combo-dropdown-label,.x-combocheck:not(.disabled).active .x-combo-dropdown-label,.x-combocheck:not(.disabled):focus .x-combo-dropdown-label{border-color:var(--fd-color-primary-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline);outline:0}.x-combo:not(.disabled):hover .x-combo-dropdown-label,.x-combocheck:not(.disabled):hover .x-combo-dropdown-label{border-color:var(--fd-color-primary-hover)}.x-combo.status-error:not(.disabled) .x-combo-dropdown-label,.x-combocheck.status-error:not(.disabled) .x-combo-dropdown-label{border-color:var(--fd-color-error)}.x-combo.status-error:not(.disabled).active,.x-combo.status-error:not(.disabled):focus,.x-combocheck.status-error:not(.disabled).active,.x-combocheck.status-error:not(.disabled):focus{outline:none}.x-combo.status-error:not(.disabled).active .x-combo-dropdown-label,.x-combo.status-error:not(.disabled):focus .x-combo-dropdown-label,.x-combocheck.status-error:not(.disabled).active .x-combo-dropdown-label,.x-combocheck.status-error:not(.disabled):focus .x-combo-dropdown-label{border-color:var(--fd-color-error-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-error-outline);outline:0}.x-combo.status-error:not(.disabled):hover .x-combo-dropdown-label,.x-combocheck.status-error:not(.disabled):hover .x-combo-dropdown-label{border-color:var(--fd-color-error-hover)}.x-combo.status-success:not(.disabled) .x-combo-dropdown-label,.x-combocheck.status-success:not(.disabled) .x-combo-dropdown-label{border-color:var(--fd-color-success)}.x-combo.status-success:not(.disabled).active,.x-combo.status-success:not(.disabled):focus,.x-combocheck.status-success:not(.disabled).active,.x-combocheck.status-success:not(.disabled):focus{outline:none}.x-combo.status-success:not(.disabled).active .x-combo-dropdown-label,.x-combo.status-success:not(.disabled):focus .x-combo-dropdown-label,.x-combocheck.status-success:not(.disabled).active .x-combo-dropdown-label,.x-combocheck.status-success:not(.disabled):focus .x-combo-dropdown-label{border-color:var(--fd-color-success-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline);outline:0}.x-combo.status-success:not(.disabled):hover .x-combo-dropdown-label,.x-combocheck.status-success:not(.disabled):hover .x-combo-dropdown-label{border-color:var(--fd-color-success-hover)}.x-combo.status-warning:not(.disabled) .x-combo-dropdown-label,.x-combocheck.status-warning:not(.disabled) .x-combo-dropdown-label{border-color:var(--fd-color-warning)}.x-combo.status-warning:not(.disabled).active,.x-combo.status-warning:not(.disabled):focus,.x-combocheck.status-warning:not(.disabled).active,.x-combocheck.status-warning:not(.disabled):focus{outline:none}.x-combo.status-warning:not(.disabled).active .x-combo-dropdown-label,.x-combo.status-warning:not(.disabled):focus .x-combo-dropdown-label,.x-combocheck.status-warning:not(.disabled).active .x-combo-dropdown-label,.x-combocheck.status-warning:not(.disabled):focus .x-combo-dropdown-label{border-color:var(--fd-color-warning-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-warning-outline);outline:0}.x-combo.status-warning:not(.disabled):hover .x-combo-dropdown-label,.x-combocheck.status-warning:not(.disabled):hover .x-combo-dropdown-label{border-color:var(--fd-color-warning-hover)}.x-combo.no-border .x-combo-dropdown-label,.x-combocheck.no-border .x-combo-dropdown-label{border-color:transparent}.x-combo.no-border.active,.x-combo.no-border:focus,.x-combocheck.no-border.active,.x-combocheck.no-border:focus{outline:none}.x-combo.no-border.active .x-combo-dropdown-label,.x-combo.no-border:focus .x-combo-dropdown-label,.x-combocheck.no-border.active .x-combo-dropdown-label,.x-combocheck.no-border:focus .x-combo-dropdown-label{border-color:transparent;box-shadow:none;outline:0}.x-combo.no-border:hover .x-combo-dropdown-label,.x-combocheck.no-border:hover .x-combo-dropdown-label{border-color:transparent}.x-combo .x-combo-dropdown-custom-label,.x-combocheck .x-combo-dropdown-custom-label{height:100%;width:100%}.x-combo .x-combo-dropdown-label,.x-combocheck .x-combo-dropdown-label{font-size:var(--fd-font-size);line-height:var(--fd-line-height);padding:0 var(--fd-padding)}.x-combo .x-combo-dropdown-label .dropdown-icon,.x-combocheck .x-combo-dropdown-label .dropdown-icon{font-size:var(--fd-icon-size);line-height:var(--fd-icon-size)}.x-combo.size-small,.x-combocheck.size-small{height:var(--fd-control-height-sm)}.x-combo.size-small .x-combo-dropdown-label,.x-combocheck.size-small .x-combo-dropdown-label{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-lg);padding:0 var(--fd-padding-xs)}.x-combo.size-small .x-combo-dropdown-label .dropdown-icon,.x-combocheck.size-small .x-combo-dropdown-label .dropdown-icon{font-size:var(--fd-icon-size);line-height:var(--fd-icon-size)}.x-combo.size-large,.x-combocheck.size-large{height:var(--fd-control-height-lg)}.x-combo.size-large .x-combo-dropdown-label,.x-combocheck.size-large .x-combo-dropdown-label{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-sm);padding:0 var(--fd-padding)}.x-combo.size-large .x-combo-dropdown-label .dropdown-icon,.x-combocheck.size-large .x-combo-dropdown-label .dropdown-icon{font-size:var(--fd-icon-size);line-height:var(--fd-icon-size)}.x-combo-dropdown-list .dropdown-extra{text-align:center}.x-combo-dropdown-list .dropdown-groups .group-label{color:var(--fd-color-text-secondary);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);padding:var(--fd-padding-xs) var(--fd-padding) 0 var(--fd-padding)}.x-combo-dropdown-list .dropdown-groups .group-items .x-combo-dropdown-item{padding-left:var(--fd-padding-xl)}.x-combo-dropdown-list .x-combo-dropdown-item{align-items:center;border-radius:var(--fd-border-radius-sm);display:flex;height:var(--fd-control-height);padding:0 var(--fd-padding);transition:all .2s}.x-combo-dropdown-list .x-combo-dropdown-item-icon{flex:none;font-size:var(--fd-icon-size);font-weight:400;margin-right:var(--fd-gap-sm)}.x-combo-dropdown-list .x-combo-dropdown-item-content{flex:auto;font-size:var(--fd-font-size);line-height:var(--fd-line-height);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-combo-dropdown-list .x-combo-dropdown-item-check{flex:none;margin-right:var(--fd-gap)}.x-combo-dropdown-list .x-combo-dropdown-item .x-search-key,.x-combo-dropdown-list .x-combo-dropdown-item.check-all-item{color:var(--fd-color-primary-text)}.x-combo-dropdown-list .x-combo-dropdown-item:not(.disabled){cursor:pointer}.x-combo-dropdown-list .x-combo-dropdown-item:not(.disabled).selected.is-multi.is-focus,.x-combo-dropdown-list .x-combo-dropdown-item:not(.disabled).selected.is-multi:hover,.x-combo-dropdown-list .x-combo-dropdown-item:not(.disabled):not(.selected).is-focus,.x-combo-dropdown-list .x-combo-dropdown-item:not(.disabled):not(.selected):hover{background:var(--fd-color-fill-quaternary)}.x-combo-dropdown-list .x-combo-dropdown-item.selected{background:var(--fd-control-item-bg-active);font-weight:var(--fd-control-item-font-weight-active)}.x-combo-dropdown-list .x-combo-dropdown-item.selected.disabled{background:var(--fd-control-item-bg-active-disabled);font-weight:400}.x-combo-dropdown-list .x-combo-dropdown-item.disabled{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-combo-dropdown-list .x-combo-dropdown-item.is-multi.selected{background:inherit;font-weight:400}.x-combo-dropdown-list .x-combo-dropdown-item.is-multi.selected.disabled{background:inherit}.x-combo-dropdown-list .x-combo-dropdown-item.is-multi.disabled .x-check{color:var(--fd-color-text-disabled)}.x-combo-dropdown-wrapper{background:var(--fd-color-bg-container);border-radius:var(--fd-border-radius-lg);box-shadow:var(--fd-box-shadow-secondary);font-size:var(--fd-font-size);line-height:var(--fd-line-height);overflow:hidden;position:relative}.x-combo-dropdown-wrapper .dropdown-search-input{border-bottom:1px solid var(--fd-color-split)}.x-combo-dropdown-wrapper .inner-wrapper{max-height:250px;overflow-y:auto;padding:var(--fd-padding-layout-2xs)}.x-combo-dropdown-wrapper .dropdown-loading .loading-wrapper{min-width:240px}.x-combo-dropdown-wrapper .dropdown-empty{color:var(--fd-color-text-description);line-height:var(--fd-control-height);text-align:center}.x-combo-dropdown-wrapper .dropdown-extra .loading-wrapper{width:100%}.x-combo-dropdown-wrapper .search-loading{color:var(--fd-color-text-description);font-size:var(--fd-font-size);line-height:var(--fd-control-height);padding:var(--fd-padding-layout-2xs);text-align:center}.x-combo-dropdown-wrapper .loading-wrapper{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;color:var(--fd-color-text-description);display:flex;height:var(--fd-control-height);justify-content:center}.x-combo-dropdown-wrapper .loading-wrapper .x-spin{padding-right:var(--fd-gap-sm);position:relative}.x-combo-dropdown-bottom-appear,.x-combo-dropdown-bottom-enter{animation:x-slide-down .2s cubic-bezier(.23,1,.32,1);animation-fill-mode:forwards;transform-origin:top}.x-combo-dropdown-bottom-exit{animation:x-slide-down .2s cubic-bezier(.75,.05,.85,.06) reverse;animation-fill-mode:forwards;transform-origin:top}.x-combo-dropdown-top-appear,.x-combo-dropdown-top-enter{animation:x-slide-down .2s cubic-bezier(.23,1,.32,1);animation-fill-mode:forwards;transform-origin:bottom}.x-combo-dropdown-top-exit{animation:x-slide-down .2s cubic-bezier(.75,.05,.85,.06) reverse;animation-fill-mode:forwards;transform-origin:bottom}.x-combo-dropdown-label{align-items:center;border:var(--fd-line-width) solid var(--fd-color-border);border-radius:var(--fd-border-radius);color:var(--fd-color-text);cursor:pointer;display:flex;height:100%;overflow:hidden;position:relative;transition:border .2s ease;width:100%}.x-combo-dropdown-label .value-wrapper{flex:1 1 auto;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-combo-dropdown-label .value-wrapper .value-content{margin-right:var(--fd-gap-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-combo-dropdown-label .value-wrapper .value-content .dropdown-label-placeholder{color:var(--fd-color-text-placeholder);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-combo-dropdown-label .dropdown-icon{-webkit-box-flex:0;color:var(--fd-color-icon-normal);flex:0 0 auto;font-size:var(--fd-icon-size);font-style:normal;text-align:center;transform:rotate(0);transition:transform .2s ease}.x-combo-dropdown-label .dropdown-icon.reverse{transform:rotate(180deg)}.x-combo-dropdown-label .dropdown-icon.close-icon{color:var(--fd-color-icon);display:none}.x-combo-dropdown-label .dropdown-icon.close-icon:hover{color:var(--fd-color-icon-hover)}.x-combo-dropdown-label.show-clear:not(.disabled):hover .arrow-icon{display:none}.x-combo-dropdown-label.show-clear:not(.disabled):hover .close-icon{display:block}.x-combo-dropdown-label.disabled{background-color:var(--fd-color-bg-container-disabled);color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-combo-dropdown-label.disabled .dropdown-icon{color:var(--fd-color-text-disabled)}.x-datepicker{background-color:var(--fd-color-bg-container);border:none;border-radius:var(--fd-border-radius-lg);box-shadow:var(--fd-box-shadow-secondary);font-size:var(--fd-font-size);line-height:0;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.x-datepicker *,.x-datepicker :after,.x-datepicker :before{box-sizing:border-box}.x-datepicker .picker-content{display:inline-block;width:280px}.x-datepicker .picker-content .date-month,.x-datepicker .picker-content .date-year{height:230px;white-space:normal}.x-datepicker .picker-content.multi-pane .date-month,.x-datepicker .picker-content.multi-pane .date-year{height:270px}.x-datepicker .picker-content.multi-pane .date-month .item-cell .cell-btn,.x-datepicker .picker-content.multi-pane .date-year .item-cell .cell-btn{height:var(--fd-control-height);line-height:var(--fd-control-height)}.x-datepicker .picker-content~.date-time-picker{border-left:1px solid var(--fd-color-border)}.x-datepicker .picker-content .time-label{border-top:1px solid var(--fd-color-split);color:var(--fd-color-text);font-size:var(--fd-font-size);height:32px;line-height:32px;text-align:center;width:100%}.x-datepicker .date-head{-webkit-box-align:center;-ms-flex-align:center;-ms-flex-pack:distribute;align-items:center;display:flex;height:40px;justify-content:space-around;position:relative;text-align:center}.x-datepicker .date-head:after{border-top:1px solid var(--fd-color-split);bottom:0;content:"";left:0;position:absolute;right:0}.x-datepicker .date-head .head-btn{cursor:pointer;line-height:40px;padding:0 5px}.x-datepicker .date-head .head-btn:hover,.x-datepicker .date-head .head-btn:hover>i{color:var(--fd-color-primary)}.x-datepicker .date-head .head-btn.default{cursor:default}.x-datepicker .date-head .head-btn.default:hover{color:var(--fd-color-text)}.x-datepicker .date-head .head-btn.disabled{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-datepicker .date-head .head-btn.disabled>i{color:var(--fd-color-text-disabled)}.x-datepicker .date-head .head-btn.btn-prevy{left:10px;position:absolute;top:0}.x-datepicker .date-head .head-btn.btn-prevm{left:34px;position:absolute;top:0}.x-datepicker .date-head .head-btn.btn-nexty{position:absolute;right:10px;top:0}.x-datepicker .date-head .head-btn.btn-nextm{position:absolute;right:34px;top:0}.x-datepicker .date-head .head-btn.btn-month,.x-datepicker .date-head .head-btn.btn-year{display:inline-block}.x-datepicker .date-body{color:var(--fd-color-text);padding:var(--fd-padding-layout-sm)}.x-datepicker .date-body table{border-collapse:collapse;width:100%}.x-datepicker .date-body table thead th{font-weight:400;height:var(--fd-control-height-sm)}.x-datepicker .date-body table tbody td{cursor:pointer;text-align:center}.x-datepicker .date-body table tbody td .td-text{border:1px solid transparent;border-radius:var(--fd-border-radius-sm);height:var(--fd-control-height-sm);line-height:calc(var(--fd-control-height-sm) - 2px);margin:8px auto 0;text-align:center;transition:all .2s;width:var(--fd-control-height-sm)}.x-datepicker .date-body table tbody td.nav:hover .td-text{background:var(--fd-control-item-bg-hover)}.x-datepicker .date-body table tbody td.today .td-text{border-color:var(--fd-color-primary)}.x-datepicker .date-body table tbody td.today.disabled .td-text,.x-datepicker .date-body table tbody td.today.oday .td-text{border-color:var(--fd-color-border);color:var(--fd-color-text-disabled)}.x-datepicker .date-body table tbody td.today.disabled:hover .td-text,.x-datepicker .date-body table tbody td.today.oday:hover .td-text{background-color:var(--fd-color-primary-bg)}.x-datepicker .date-body table tbody td.oday{color:var(--fd-color-text-disabled)}.x-datepicker .date-body table tbody td.oday:hover .td-text{background-color:var(--fd-control-item-bg-hover)}.x-datepicker .date-body table tbody td.disabled{cursor:not-allowed;position:relative}.x-datepicker .date-body table tbody td.disabled:before{background:var(--fd-color-bg-container-disabled);bottom:0;content:"";height:var(--fd-control-height-sm);left:0;position:absolute;right:0}.x-datepicker .date-body table tbody td.disabled .td-text,.x-datepicker .date-body table tbody td.disabled:hover .td-text{background-color:transparent;color:var(--fd-color-text-disabled)}.x-datepicker .date-body table tbody td.disabled.selected .td-text{background-color:var(--fd-control-item-bg-active-disabled);color:var(--fd-color-text-disabled)!important}.x-datepicker .date-body table tbody td.disabled.selected:hover .td-text{background-color:var(--fd-control-item-bg-active-disabled);color:var(--fd-color-text-disabled)}.x-datepicker .date-body table tbody td.selected .td-text{background-color:var(--fd-color-primary);color:var(--fd-color-text-light-solid)!important}.x-datepicker .date-body table tbody td.selected:hover .td-text{background-color:var(--fd-color-primary);color:var(--fd-color-text-light-solid)}.x-datepicker .date-time-picker{display:inline-block;height:296px;max-width:280px;vertical-align:top}.x-datepicker .date-time-picker.show-time-label{height:328px}.x-datepicker .date-time-picker.multi-pane{display:none}.x-datepicker .date-time-picker .time-body{display:flex;height:100%}.x-datepicker .date-time-picker .time-body .col{display:flex;flex-direction:column;position:relative;text-align:center}.x-datepicker .date-time-picker .time-body .col:not(:last-child){border-right:1px solid var(--fd-color-border)}.x-datepicker .date-time-picker .time-body .col .label{flex:none;height:var(--fd-control-height-sm);line-height:var(--fd-control-height-sm);margin-top:4px}.x-datepicker .date-time-picker .time-body .col .col-list{flex:1 1 auto;overflow-y:hidden;padding:0 3px}.x-datepicker .date-time-picker .time-body .col .col-list::-webkit-scrollbar{width:0}.x-datepicker .date-time-picker .time-body .col .col-list::-webkit-scrollbar-thumb{background:hsla(220,6%,54%,.5)}.x-datepicker .date-time-picker .time-body .col .col-list::-webkit-scrollbar-track{display:none}.x-datepicker .date-time-picker .time-body .col .col-list:hover{overflow-y:auto}.x-datepicker .date-time-picker .time-body .col .col-list:after{content:"";display:block;height:calc(100% - var(--fd-gap-sm) - var(--fd-control-height-sm))}.x-datepicker .date-time-picker .time-body .col .col-list .col-item{border-radius:var(--fd-border-radius-sm);cursor:pointer;height:var(--fd-control-height-sm);line-height:var(--fd-control-height-sm);margin-top:var(--fd-gap-sm);width:48px}.x-datepicker .date-time-picker .time-body .col .col-list .col-item:hover{background:var(--fd-control-item-bg-hover)}.x-datepicker .date-time-picker .time-body .col .col-list .col-item.select{background:var(--fd-color-primary-bg)}.x-datepicker .date-month,.x-datepicker .date-year{-ms-flex-line-pack:justify;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-content:space-between;align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;padding:var(--fd-padding-layout) var(--fd-padding-layout-sm)}.x-datepicker .date-month .item-cell,.x-datepicker .date-year .item-cell{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;color:var(--fd-color-text);display:inline-flex;height:25%;justify-content:center;padding:0 var(--fd-padding-lg);position:relative;width:33.33%}.x-datepicker .date-month .item-cell.disabled,.x-datepicker .date-year .item-cell.disabled{cursor:not-allowed}.x-datepicker .date-month .item-cell.disabled:before,.x-datepicker .date-year .item-cell.disabled:before{background:var(--fd-color-bg-container-disabled);content:"";height:var(--fd-control-height);left:0;position:absolute;right:0}.x-datepicker .date-month .item-cell .cell-btn,.x-datepicker .date-year .item-cell .cell-btn{border-radius:var(--fd-border-radius-sm);cursor:pointer;height:var(--fd-control-height);line-height:var(--fd-control-height);text-align:center;width:100%}.x-datepicker .date-month .item-cell .cell-btn:hover,.x-datepicker .date-year .item-cell .cell-btn:hover{background:var(--fd-control-item-bg-hover)}.x-datepicker .date-month .item-cell .cell-btn.last-year,.x-datepicker .date-month .item-cell .cell-btn.next-year,.x-datepicker .date-year .item-cell .cell-btn.last-year,.x-datepicker .date-year .item-cell .cell-btn.next-year{color:var(--fd-color-text-disabled)}.x-datepicker .date-month .item-cell .cell-btn.select,.x-datepicker .date-year .item-cell .cell-btn.select{background:var(--fd-color-primary);color:var(--fd-color-text-light-solid)}.x-datepicker .date-month .item-cell .cell-btn.select.disabled,.x-datepicker .date-year .item-cell .cell-btn.select.disabled{background:var(--fd-control-item-bg-active-disabled)}.x-datepicker .date-month .item-cell .cell-btn.disabled,.x-datepicker .date-month .item-cell .cell-btn.disabled:hover,.x-datepicker .date-year .item-cell .cell-btn.disabled,.x-datepicker .date-year .item-cell .cell-btn.disabled:hover{background:none;color:var(--fd-color-text-disabled)}.x-datepicker .date-foot{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;border-top:1px solid var(--fd-color-split);display:flex;height:40px;justify-content:space-between;padding:0 10px;position:relative}.x-datepicker .date-foot.multi-pane{display:none}.x-date-input{height:100%;width:100%}.x-date-input.read-only .x-inner-wrapper input{cursor:pointer}.x-date-input .x-inner-wrapper{border:none!important;border-radius:0}.x-datetime{color:var(--fd-color-text);cursor:pointer;position:relative;width:280px}.x-datetime *,.x-datetime :after,.x-datetime :before{box-sizing:border-box}.x-datetime .datetime-label{border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);cursor:pointer;height:var(--fd-control-height);line-height:calc(var(--fd-control-height) - 2px);overflow:hidden;padding-right:calc(var(--fd-padding) + var(--fd-gap-sm) + var(--fd-font-size-lg));transition:border-color .2s ease;width:100%}.x-datetime .datetime-label.no-border{border-color:transparent!important;box-shadow:none!important}.x-datetime .datetime-label.status-error{border-color:var(--fd-color-error)!important}.x-datetime .datetime-label.status-success{border-color:var(--fd-color-success)!important}.x-datetime .datetime-label.status-warning{border-color:var(--fd-color-warning)!important}.x-datetime .datetime-label input{padding-right:0!important}.x-datetime .datetime-label:focus{border-color:var(--fd-color-primary);outline:none}.x-datetime .datetime-label:focus .datetime-icon{color:var(--fd-color-primary)}.x-datetime .clear-icon,.x-datetime .datetime-icon{color:var(--fd-color-icon-normal);font-size:var(--fd-font-size-lg);font-style:normal;line-height:var(--fd-control-height);padding:0 var(--fd-padding) 0 var(--fd-gap-sm);position:absolute;right:0;text-align:center;top:0;transition:color .2s ease}.x-datetime .clear-icon{color:var(--fd-color-icon);display:none}.x-datetime .clear-icon:hover{color:var(--fd-color-icon-hover)}.x-datetime.select .datetime-label,.x-datetime:hover .datetime-label{border-color:var(--fd-color-primary)}.x-datetime.select .x-inner-wrapper,.x-datetime:hover .x-inner-wrapper{box-shadow:none!important}.x-datetime.select .datetime-label{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline)}.x-datetime.select .datetime-label.status-error{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-error-outline)}.x-datetime.select .datetime-label.status-warning{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-warning-outline)}.x-datetime.disable{cursor:not-allowed}.x-datetime.disable .datetime-label{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border);cursor:not-allowed}.x-datetime.disable .datetime-label .x-inner-wrapper{background-color:transparent}.x-datetime.disable .datetime-label:hover{border-color:var(--fd-color-border)}.x-datetime.disable .datetime-icon{color:var(--fd-color-text-disabled)}.x-datetime.has-clear.value:not(.disable):hover .clear-icon{display:block}.x-datetime.has-clear.value:not(.disable):hover .datetime-icon{display:none}.x-datetime-content{cursor:auto;display:inline-block;width:auto}.x-datetime-bottom-appear,.x-datetime-bottom-enter{animation:x-slide-down .2s ease;animation-fill-mode:forwards;transform-origin:top}.x-datetime-bottom-exit{animation:x-slide-down .2s ease-in reverse;animation-fill-mode:forwards;transform-origin:top}.x-datetime-top-appear,.x-datetime-top-enter{animation:x-slide-down .2s ease;animation-fill-mode:forwards;transform-origin:bottom}.x-datetime-top-exit{animation:x-slide-down .2s reverse;animation-fill-mode:forwards;transform-origin:bottom}.x-date-range{align-items:center;border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);color:var(--fd-color-text);cursor:pointer;display:inline-flex;height:var(--fd-control-height);padding:var(--fd-padding-xs) var(--fd-padding);padding-right:30px;position:relative;width:360px}.x-date-range,.x-date-range *,.x-date-range :after,.x-date-range :before{box-sizing:border-box}.x-date-range ol,.x-date-range ul{margin:0;padding:0}.x-date-range li{list-style-type:none}.x-date-range.focused{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline)}.x-date-range.focused .active-bar{opacity:1}.x-date-range.focused.status-error{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-error-outline)}.x-date-range.focused.status-warning{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-warning-outline)}.x-date-range.status-error{border-color:var(--fd-color-error)!important}.x-date-range.status-success{border-color:var(--fd-color-success)!important}.x-date-range.status-warning{border-color:var(--fd-color-warning)!important}.x-date-range .active-bar{background:var(--fd-color-primary);bottom:0;height:2px;margin-left:var(--fd-padding);opacity:0;pointer-events:none}.x-date-range .range-input{align-items:center;color:var(--fd-color-text);display:inline-flex;width:100%}.x-date-range .range-input.range-input-placeholder>input{color:var(--fd-color-text-placeholder)}.x-date-range .range-input>input{-webkit-box-flex:1;background:0 0;background-image:none;border:0;border-radius:var(--fd-border-radius);display:inline-block;flex:auto;font-size:var(--fd-font-size);height:auto;line-height:var(--fd-line-height);min-width:0;padding:0;position:relative;text-overflow:ellipsis;transition:all .3s;width:100%}.x-date-range .range-input>input:focus{outline:none}.x-date-range .range-separator{align-items:center;padding:0 8px}.x-date-range .range-separator>span{color:var(--fd-color-text-placeholder);display:inline-block;font-size:var(--fd-font-size-lg)}.x-date-range .datetime-label{align-items:center;border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);cursor:pointer;display:flex;height:var(--fd-control-height);line-height:calc(var(--fd-control-height) - 2px);padding-left:var(--fd-padding);padding-right:calc(var(--fd-control-height) - 2px);transition:border-color .2s ease;width:100%}.x-date-range .datetime-label .datetime-end-label,.x-date-range .datetime-label .datetime-start-label{flex:auto}.x-date-range .datetime-label .label-split{flex:none;margin:0 5px;width:14px}.x-date-range .datetime-label .placeholder{color:var(--fd-color-text-placeholder);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-date-range .clear-icon,.x-date-range .datetime-icon{color:var(--fd-color-icon-normal);font-size:var(--fd-font-size-lg);font-style:normal;line-height:calc(var(--fd-control-height) - 2px);position:absolute;right:0;text-align:center;top:0;transition:color .2s ease;width:calc(var(--fd-control-height) - 2px)}.x-date-range .clear-icon{background-color:var(--fd-color-bg-container);border-radius:var(--fd-border-radius);color:var(--fd-color-icon);opacity:0}.x-date-range .clear-icon:hover{color:var(--fd-color-icon-hover)}.x-date-range.select .clear-icon,.x-date-range:hover .clear-icon{opacity:1}.x-date-range.select .datetime-label,.x-date-range:hover .datetime-label{border-color:var(--fd-color-primary)}.x-date-range.focused,.x-date-range:hover{border:1px solid;border-color:var(--fd-color-primary)}.x-date-range.disabled{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border);cursor:not-allowed}.x-date-range.disabled input{color:var(--fd-color-text-data-disabled);cursor:not-allowed!important}.x-date-range.disabled.focused,.x-date-range.disabled:hover{border-color:var(--fd-color-border)}.x-date-range.disabled .datetime-icon{color:var(--fd-color-text-disabled)}.x-date-range-picker{background:var(--fd-color-bg-container);border-radius:var(--fd-border-radius);box-shadow:var(--fd-box-shadow-secondary);color:var(--fd-color-text);display:inline-block;text-align:center}.x-date-range-picker .picker-panel{background:var(--fd-color-bg-container);border-radius:3px;display:inline-flex;flex-direction:column;outline:none;text-align:center}.x-date-range-picker .picker-date-panel,.x-date-range-picker .picker-month-panel,.x-date-range-picker .picker-time-panel,.x-date-range-picker .picker-year-panel{display:flex;flex-direction:column;width:280px}.x-date-range-picker .picker-panel-header{border-bottom:1px solid var(--fd-color-border);display:flex;padding:0 10px}.x-date-range-picker .picker-panel-header>*{flex:none}.x-date-range-picker .picker-panel-header .x-button{background:transparent;border:0;color:var(--fd-color-text);cursor:pointer;font-size:var(--fd-font-size);height:40px;line-height:40px;padding:0;transition:color .3s;width:auto}.x-date-range-picker .picker-panel-header .x-button:hover{color:var(--fd-color-primary)}.x-date-range-picker .picker-panel-header .picker-panel-header-view{-webkit-box-flex:1;color:var(--fd-color-text);flex:auto;font-weight:500;line-height:40px}.x-date-range-picker .picker-panel-header .picker-panel-header-view .x-button{color:inherit;font-weight:inherit}.x-date-range-picker .picker-panel-header .picker-panel-header-view .x-button:not(:first-child){margin-left:10px}.x-date-range-picker .picker-panel-header .picker-panel-header-view .x-button:hover{color:var(--fd-color-primary)}.x-date-range-picker .picker-panel-footer{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;border-top:1px solid var(--fd-color-border);display:flex;height:40px;justify-content:space-between;padding:0 15px}.x-date-range-picker .picker-panel-footer.single-btn{justify-content:center}.x-date-range-picker .panel-content{border-collapse:collapse;table-layout:fixed;width:100%}.x-date-range-picker .panel-content td,.x-date-range-picker .panel-content th{font-weight:400;min-width:var(--fd-control-height-sm);position:relative}.x-date-range-picker .panel-content th{height:var(--fd-control-height-sm);line-height:var(--fd-control-height-sm)}.x-date-range-picker .picker-panel>:not(.picker-date-panel) .in-range.range-hover-end:before,.x-date-range-picker .picker-panel>:not(.picker-date-panel) .in-range.range-hover-start:before{background:var(--fd-color-primary-bg-hover)}.x-date-range-picker .date-picker-cell{color:var(--fd-color-text-disabled);cursor:pointer;padding:4px 0}.x-date-range-picker .date-picker-cell.in-view{color:var(--fd-color-text)}.x-date-range-picker .date-picker-cell.disabled{color:var(--fd-color-text-disabled);cursor:not-allowed;pointer-events:none}.x-date-range-picker .date-picker-cell:before{content:"";height:var(--fd-control-height);left:0;position:absolute;right:0;z-index:1}.x-date-range-picker .date-picker-cell .date-picker-cell-inner{border-radius:var(--fd-border-radius);display:inline-block;height:var(--fd-control-height);line-height:var(--fd-control-height);min-width:var(--fd-control-height);position:relative;z-index:2}.x-date-range-picker .date-picker-cell:hover:not(.selected):not(.range-start):not(.range-end):not(.range-hover-start):not(.range-hover-end):not(.in-range) .date-picker-cell-inner{background:var(--fd-control-item-bg-hover)}.x-date-range-picker .date-picker-cell.today .date-picker-cell-inner:before{border:1px solid;border-color:var(--fd-color-primary);border-radius:var(--fd-border-radius);content:"";inset:0;position:absolute;z-index:1}.x-date-range-picker .date-picker-cell.in-range{position:relative}.x-date-range-picker .date-picker-cell.in-range:before{background:var(--fd-color-primary-bg)}.x-date-range-picker .date-picker-cell.range-end .date-picker-cell-inner,.x-date-range-picker .date-picker-cell.range-start .date-picker-cell-inner,.x-date-range-picker .date-picker-cell.selected .date-picker-cell-inner{background:var(--fd-color-primary);color:var(--fd-color-text-light-solid)}.x-date-range-picker .date-picker-cell.range-end:not(.range-end-single):before,.x-date-range-picker .date-picker-cell.range-start:not(.range-start-single):before{background:var(--fd-color-primary-bg)}.x-date-range-picker .date-picker-cell.range-start:before{left:50%}.x-date-range-picker .date-picker-cell.range-end:before{right:50%}.x-date-range-picker .date-picker-cell.range-hover-end.range-end-single:after,.x-date-range-picker .date-picker-cell.range-hover-end.range-start.range-end.range-start-near-hover:after,.x-date-range-picker .date-picker-cell.range-hover-end:not(.in-range):not(.range-start):not(.range-end):after,.x-date-range-picker .date-picker-cell.range-hover-start.range-start-single:after,.x-date-range-picker .date-picker-cell.range-hover-start.range-start.range-end.range-end-near-hover:after,.x-date-range-picker .date-picker-cell.range-hover-start:not(.in-range):not(.range-start):not(.range-end):after,.x-date-range-picker .date-picker-cell.range-hover:not(.in-range):after{border-bottom:1px dashed var(--fd-color-primary);border-top:1px dashed var(--fd-color-primary);content:"";height:var(--fd-control-height);position:absolute;top:50%;transform:translateY(-50%);z-index:0}.x-date-range-picker .date-picker-cell.range-hover-end:after,.x-date-range-picker .date-picker-cell.range-hover-start:after,.x-date-range-picker .date-picker-cell.range-hover:after{left:2px;right:0}.x-date-range-picker .date-picker-cell.in-range.range-hover:before,.x-date-range-picker .date-picker-cell.range-end.range-hover:before,.x-date-range-picker .date-picker-cell.range-end:not(.range-end-single).range-hover-end:before,.x-date-range-picker .date-picker-cell.range-start.range-hover:before,.x-date-range-picker .date-picker-cell.range-start:not(.range-start-single).range-hover-start:before{background:var(--fd-color-primary-bg-hover)}.x-date-range-picker .date-picker-cell.range-start:not(.range-start-single):not(.range-end) .date-picker-cell-inner{border-radius:var(--fd-border-radius) 0 0 var(--fd-border-radius)}.x-date-range-picker .date-picker-cell.range-end:not(.range-end-single):not(.range-start) .date-picker-cell-inner{border-radius:0 var(--fd-border-radius) var(--fd-border-radius) 0}.x-date-range-picker .date-picker-cell.range-hover.range-start:after{right:50%}.x-date-range-picker .date-picker-cell.range-hover.range-end:after{left:50%}.x-date-range-picker .date-picker-cell.range-hover-start:after{border-bottom-left-radius:var(--fd-border-radius);border-left:1px dashed;border-left-color:var(--fd-color-primary);border-top-left-radius:var(--fd-border-radius);left:6px}.x-date-range-picker .date-picker-cell.range-hover-end:after{border-bottom-right-radius:var(--fd-border-radius);border-right:1px dashed;border-right-color:var(--fd-color-primary);border-top-right-radius:var(--fd-border-radius);right:6px}.x-date-range-picker .picker-date-panel .panel-body{padding:var(--fd-padding-layout-sm)}.x-date-range-picker .picker-date-panel .panel-content{width:252px}.x-date-range-picker .picker-date-panel .panel-content th{width:36px}.x-date-range-picker .picker-date-panel .panel-content td,.x-date-range-picker .picker-date-panel .panel-content th{height:var(--fd-control-height-sm)}.x-date-range-picker .picker-date-panel .in-range.range-hover-end .date-picker-cell-inner:after,.x-date-range-picker .picker-date-panel .in-range.range-hover-start .date-picker-cell-inner:after{background:var(--fd-color-primary-bg-hover);bottom:0;content:"";position:absolute;top:0;z-index:-1}.x-date-range-picker .picker-date-panel .in-range.range-hover-start .date-picker-cell-inner:after{left:0;right:-6px}.x-date-range-picker .picker-date-panel .in-range.range-hover-end .date-picker-cell-inner:after{left:-6px;right:0}.x-date-range-picker .picker-date-panel .time-label{border-top:1px solid var(--fd-color-border);color:var(--fd-color-text);cursor:pointer;font-size:var(--fd-font-size);height:var(--fd-control-height);line-height:var(--fd-control-height);width:100%}.x-date-range-picker .picker-date-panel .time-label .right-outlined-icon{margin-left:5px}.x-date-range-picker .picker-month-panel .panel-content,.x-date-range-picker .picker-year-panel .panel-content{height:268px}.x-date-range-picker .picker-month-panel .panel-body,.x-date-range-picker .picker-year-panel .panel-body{padding:0 12px}.x-date-range-picker .picker-month-panel .date-picker-cell .date-picker-cell-inner,.x-date-range-picker .picker-month-panel .date-picker-cell:before,.x-date-range-picker .picker-year-panel .date-picker-cell .date-picker-cell-inner,.x-date-range-picker .picker-year-panel .date-picker-cell:before{height:var(--fd-control-height);line-height:var(--fd-control-height)}.x-date-range-picker .picker-month-panel .date-picker-cell .date-picker-cell-inner,.x-date-range-picker .picker-year-panel .date-picker-cell .date-picker-cell-inner{width:86px}.x-date-range-picker .picker-month-panel .cell-range-hover-start:after,.x-date-range-picker .picker-year-panel .cell-range-hover-start:after{border-left:1px dashed;border-left-color:var(--fd-color-primary);border-radius:var(--fd-border-radius) 0 0 var(--fd-border-radius);left:-.33333333px}.x-date-range-picker .picker-month-panel .cell-range-hover-end:after,.x-date-range-picker .picker-year-panel .cell-range-hover-end:after{border-radius:0 var(--fd-border-radius) var(--fd-border-radius) 0;border-right:1px dashed var(--fd-color-primary);right:-.33333333px}.x-date-range-picker .datetime-panel .date-picker-cell .date-picker-cell-inner,.x-date-range-picker .datetime-panel .date-picker-cell:before,.x-date-range-picker .picker-date-panel .date-picker-cell .date-picker-cell-inner,.x-date-range-picker .picker-date-panel .date-picker-cell:before{height:var(--fd-control-height-sm);line-height:var(--fd-control-height-sm);min-width:var(--fd-control-height-sm)}.x-date-range-picker .datetime-panel .date-picker-cell.range-hover-end.range-end-single:after,.x-date-range-picker .datetime-panel .date-picker-cell.range-hover-end.range-start.range-end.range-start-near-hover:after,.x-date-range-picker .datetime-panel .date-picker-cell.range-hover-end:not(.in-range):not(.range-start):not(.range-end):after,.x-date-range-picker .datetime-panel .date-picker-cell.range-hover-start.range-start-single:after,.x-date-range-picker .datetime-panel .date-picker-cell.range-hover-start.range-start.range-end.range-end-near-hover:after,.x-date-range-picker .datetime-panel .date-picker-cell.range-hover-start:not(.in-range):not(.range-start):not(.range-end):after,.x-date-range-picker .datetime-panel .date-picker-cell.range-hover:not(.in-range):after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover-end.range-end-single:after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover-end.range-start.range-end.range-start-near-hover:after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover-end:not(.in-range):not(.range-start):not(.range-end):after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover-start.range-start-single:after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover-start.range-start.range-end.range-end-near-hover:after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover-start:not(.in-range):not(.range-start):not(.range-end):after,.x-date-range-picker .picker-date-panel .date-picker-cell.range-hover:not(.in-range):after{height:var(--fd-control-height-sm)}.x-date-range-picker .datetime-panel{display:flex}.x-date-range-picker .datetime-panel .time-panel,.x-date-range-picker .time-panel{border-left:1px solid var(--fd-color-border)}.x-date-range-picker .time-panel{min-width:auto;width:auto}.x-date-range-picker .time-panel .picker-panel-header{display:block}.x-date-range-picker .time-panel .picker-panel-header .picker-panel-header-view{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;align-items:center;display:flex;justify-content:space-evenly}.x-date-range-picker .time-panel .picker-panel-header .picker-panel-header-view .x-input{display:inline-block;margin:0 2px;vertical-align:middle;width:40px}.x-date-range-picker .time-panel .picker-panel-header .picker-panel-header-view .x-input input{font-weight:500}.x-date-range-picker .time-panel .time-panel-body{-webkit-box-flex:1;display:flex;flex:auto;height:274px}.x-date-range-picker .time-panel .time-panel-body.show-time-label{height:306px}.x-date-range-picker .time-panel .time-panel-body .time-column{-webkit-box-flex:1;display:flex;flex:1 0 auto;flex-direction:column;list-style:none;overflow-y:hidden;width:56px}.x-date-range-picker .time-panel .time-panel-body .time-column:not(:first-child){border-left:1px solid var(--fd-color-border)}.x-date-range-picker .time-panel .time-panel-body .time-column .label{-webkit-box-flex:0;color:var(--fd-color-text);flex:none;font-size:var(--fd-font-size);font-weight:400;height:24px;line-height:24px;margin-top:4px}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll{flex:1;overflow-y:hidden;padding:0 4px}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll:after{content:"";display:block;height:calc(100% - 26px)}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll::-webkit-scrollbar{width:0}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll:hover{overflow-y:auto}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll .time-column-cell{border-radius:var(--fd-border-radius-sm);cursor:pointer;height:var(--fd-control-height-sm);line-height:var(--fd-control-height-sm);margin-top:var(--fd-gap-sm);overflow:hidden}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll .time-column-cell:hover .inner{background:var(--fd-control-item-bg-hover)}.x-date-range-picker .time-panel .time-panel-body .time-column .time-column-scroll .time-column-cell.selected .inner{background:var(--fd-color-primary-bg)}.x-date-range-trigger-content{cursor:auto;display:inline-block;width:auto}.x-date-range-trigger-bottom-appear,.x-date-range-trigger-bottom-enter{animation:x-slide-down .2s ease;animation-fill-mode:forwards;transform-origin:top}.x-date-range-trigger-bottom-exit{animation:x-slide-down .2s ease-in reverse;animation-fill-mode:forwards;transform-origin:top}.x-date-range-trigger-top-appear,.x-date-range-trigger-top-enter{animation:x-slide-down .2s ease;animation-fill-mode:forwards;transform-origin:bottom}.x-date-range-trigger-top-exit{animation:x-slide-down .2s reverse;animation-fill-mode:forwards;transform-origin:bottom}.x-dialog-modeless{display:none;height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:2500}.x-dialog-modeless .content-wrapper{pointer-events:auto}.x-dialog{inset:0;position:absolute}.x-dialog *,.x-dialog :after,.x-dialog :before{box-sizing:border-box}.x-dialog .content-wrapper{background:var(--fd-color-bg-elevated);border-radius:var(--fd-border-radius-xl);box-shadow:var(--fd-box-shadow-tertiary);display:flex;flex-direction:column;height:500px;margin:auto;position:relative;width:500px;z-index:2500}.x-dialog.theme-classic .dialog-header{background:var(--fd-color-fill-quaternary);border-bottom-color:transparent}.x-dialog.theme-classic .dialog-content{padding-bottom:0!important}.x-dialog.fade-down.dialog-content-appear,.x-dialog.fade-down.dialog-content-enter{animation:x-fade-down .3s ease-out;pointer-events:none}.x-dialog.fade-down.dialog-content-exit{animation:x-fade-down .2s ease-in reverse;pointer-events:none}.x-dialog.fade-down.dialog-content-exit-done{display:none}.x-dialog.zoom-in.dialog-content-appear,.x-dialog.zoom-in.dialog-content-enter{animation:x-zoom-in-big .2s ease;pointer-events:none}.x-dialog.zoom-in.dialog-content-exit{animation:x-zoom-in-big .1s ease-in reverse;pointer-events:none}.x-dialog.zoom-in.dialog-content-exit-done{display:none}.x-dialog .dialog-header{-webkit-box-flex:0;-webkit-box-pack:justify;-ms-flex-pack:justify;display:flex;flex:0 0 auto;justify-content:space-between;max-height:80px;padding:var(--fd-padding-layout) var(--fd-padding-layout-lg);position:relative}.x-dialog .dialog-header.has-separator{border-bottom:1px solid var(--fd-color-border)}.x-dialog .dialog-header .dialog-title{-webkit-box-flex:1;align-items:flex-end;display:flex;flex:1 1 auto;overflow:hidden}.x-dialog .dialog-header .dialog-title.align-center{justify-content:center}.x-dialog .dialog-header .dialog-title.draggable{cursor:move}.x-dialog .dialog-header .dialog-title .main-title{-webkit-box-flex:0;color:var(--fd-color-text);flex:0 0 auto;font-size:var(--fd-font-size-xl);font-weight:700;line-height:var(--fd-line-height-xl);margin-right:var(--fd-gap-xl)}.x-dialog .dialog-header .dialog-title .sub-title{color:var(--fd-color-text-description);font-size:var(--fd-font-size);line-height:var(--fd-line-height);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-dialog .dialog-header-buttons{-webkit-box-flex:0;align-items:center;display:flex;flex:0 0 auto;font-size:var(--fd-font-size)}.x-dialog .dialog-header-buttons .close-btn{color:var(--fd-color-text)}.x-dialog .dialog-header-buttons.no-header{position:absolute;right:var(--fd-padding-layout-lg);top:var(--fd-padding-layout)}.x-dialog .dialog-content{flex:1 1 auto;height:100%;overflow:auto}.x-dialog .dialog-content.has-padding{padding-left:var(--fd-padding-layout-lg);padding-right:var(--fd-padding-layout-lg)}.x-dialog .dialog-content.has-top-padding{padding-top:var(--fd-padding-layout-lg)}.x-dialog .dialog-content.has-bottom-padding{padding-bottom:var(--fd-padding-layout-lg)}.x-dialog .dialog-footer{-webkit-box-flex:0;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;display:flex;flex:0 0 auto;justify-content:space-between;max-height:80px;padding:var(--fd-padding-layout-sm) var(--fd-padding-layout-lg)}.x-dialog .dialog-footer.has-separator{border-top:1px solid var(--fd-color-border)}.x-dialog .dialog-footer .footer-right .footer-btn{margin-left:var(--fd-gap-xl)}.x-window-mask{inset:0;overflow:auto;position:fixed;z-index:1002}.x-window-mask *,.x-window-mask :after,.x-window-mask :before{box-sizing:border-box}.x-window-mask .x-mask{background-color:var(--fd-color-bg-mask);inset:0;pointer-events:none;position:fixed;z-index:-1}.x-window-mask.mask-appear,.x-window-mask.mask-enter{opacity:0}.x-window-mask.mask-appear-active,.x-window-mask.mask-enter-active{opacity:1;transition:opacity .2s ease}.x-window-mask.mask-mask-exit{opacity:1}.x-window-mask.mask-exit-active{opacity:0;transition:opacity .1s ease-in}.x-window-mask.mask-exit-done{display:none}.x-form{color:var(--fd-color-text)}.x-form *,.x-form :after,.x-form :before{box-sizing:border-box}.x-form .x-form-item{display:flex;line-height:32px;margin-bottom:30px}.x-form .x-form-item.is-hidden{display:none}.x-form .x-form-item .form-item-label{flex:none;padding-right:12px;text-align:right}.x-form .x-form-item .form-item-label .required-tip{color:var(--fd-color-error);font-weight:700}.x-form .x-form-item .form-item-content{flex:auto;position:relative}.x-form .x-form-item .form-item-content .form-item-error{color:var(--fd-color-error);font-size:var(--fd-font-size-sm);left:0;line-height:1;padding-top:4px;position:absolute;top:100%}.x-form .x-form-item .form-item-content .form-item-extra{color:var(--fd-color-text-description);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-form-vertical .x-form-item{flex-direction:column;margin-bottom:15px}.x-form-vertical .x-form-item .form-item-label{text-align:left}.x-form-vertical .x-form-item .form-item-content .form-item-error{position:static}.x-form-inline{display:flex;flex-wrap:wrap}.x-form-inline .x-form-item{margin-bottom:20px;margin-right:40px}.x-form-inline .x-form-item .form-item-content .form-item-error{position:static}.x-prompt{background:var(--fd-color-bg-elevated);border-radius:var(--fd-border-radius-lg);box-shadow:var(--fd-box-shadow-tertiary);margin:7% auto 0;min-height:152px;padding:var(--fd-padding-layout-xl);width:400px}.x-prompt *,.x-prompt :after,.x-prompt :before{box-sizing:border-box}.x-prompt.prompt-appear,.x-prompt.prompt-enter{animation:x-fade-down .2s ease;pointer-events:none}.x-prompt.prompt-exit{animation:x-fade-down .1s ease reverse;pointer-events:none}.x-prompt .title{color:var(--fd-color-text);font-size:var(--fd-font-size-lg);font-weight:600;line-height:var(--fd-line-height-lg);margin-bottom:var(--fd-gap)}.x-prompt .prompt-input{height:var(--fd-control-height);margin-bottom:var(--fd-gap-xl);width:100%}.x-prompt .prompt-footer:after,.x-prompt .prompt-footer:before{content:" ";display:table;line-height:0}.x-prompt .prompt-footer:after{clear:both}.x-prompt .prompt-footer .footer-btn{float:right;margin-left:var(--fd-gap-xl)}.x-prompt .prompt-footer .footer-btn:last-child{margin-left:0}.x-pop-confirm{display:block;max-width:300px;min-width:200px;position:absolute}.x-pop-confirm *,.x-pop-confirm :after,.x-pop-confirm :before{box-sizing:border-box}.x-pop-confirm-hidden{display:none}.x-pop-confirm-popup{background:var(--fd-color-bg-elevated);border-radius:var(--fd-border-radius-lg);box-shadow:var(--fd-box-shadow-secondary);color:var(--fd-color-text);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);padding:var(--fd-padding-layout-sm)}.x-pop-confirm-popup *,.x-pop-confirm-popup :after,.x-pop-confirm-popup :before{box-sizing:border-box}.x-pop-confirm-popup .pop-confirm-footer{margin-top:var(--fd-gap)}.x-pop-confirm-popup .pop-confirm-footer:after,.x-pop-confirm-popup .pop-confirm-footer:before{content:" ";display:table;line-height:0}.x-pop-confirm-popup .pop-confirm-footer:after{clear:both}.x-pop-confirm-popup .pop-confirm-footer .footer-btn{float:right;margin-left:var(--fd-gap)}.x-pop-confirm-popup .pop-confirm-footer .footer-btn:last-child{margin-left:0}.x-pop-confirm .pop-confirm-arrow{display:block;height:12px;overflow:hidden;pointer-events:none;position:absolute;width:12px;z-index:1}.x-pop-confirm .pop-confirm-arrow.no-arrow{display:none!important}.x-pop-confirm .pop-confirm-arrow:before{background:#fff;bottom:0;clip-path:polygon(1.65685425px 100%,50% 1.65685425px,10.34314575px 100%,1.65685425px 100%);clip-path:path("M 0 6 A 4 4 0 0 0 2.82842712474619 4.82842712474619 L 4.585786437626905 3.0710678118654755 A 2 2 0 0 1 7.414213562373095 3.0710678118654755 L 9.17157287525381 4.82842712474619 A 4 4 0 0 0 12 6 Z");content:"";height:6px;inset-inline-start:0;position:absolute;width:12px}.x-pop-confirm .pop-confirm-arrow:after{background:transparent;border-radius:0 0 2px;bottom:0;box-shadow:2px 2px 5px #0000000d;content:"";height:6.14213562px;inset-inline:0;margin:auto;position:absolute;transform:translateY(50%) rotate(-135deg);width:6.14213562px;z-index:0}.x-pop-confirm.placement-top .pop-confirm-arrow,.x-pop-confirm.placement-top-left .pop-confirm-arrow,.x-pop-confirm.placement-top-right .pop-confirm-arrow{bottom:0;transform:translateY(100%) rotate(180deg)}.x-pop-confirm.placement-top .pop-confirm-arrow{left:50%;transform:translate(-50%) translateY(100%) rotate(180deg)}.x-pop-confirm.placement-top-left .pop-confirm-arrow{left:8px}.x-pop-confirm.placement-top-right .pop-confirm-arrow{right:8px}.x-pop-confirm.placement-bottom .pop-confirm-arrow,.x-pop-confirm.placement-bottom-left .pop-confirm-arrow,.x-pop-confirm.placement-bottom-right .pop-confirm-arrow{top:0;transform:translateY(-100%)}.x-pop-confirm.placement-bottom .pop-confirm-arrow{left:50%;transform:translate(-50%) translateY(-100%)}.x-pop-confirm.placement-bottom-left .pop-confirm-arrow{left:8px}.x-pop-confirm.placement-bottom-right .pop-confirm-arrow{right:8px}.x-pop-confirm.placement-left .pop-confirm-arrow,.x-pop-confirm.placement-left-bottom .pop-confirm-arrow,.x-pop-confirm.placement-left-top .pop-confirm-arrow{right:0;transform:translate(100%) rotate(90deg)}.x-pop-confirm.placement-left .pop-confirm-arrow{top:50%;transform:translateY(-50%) translate(100%) rotate(90deg)}.x-pop-confirm.placement-left-top .pop-confirm-arrow{top:8px}.x-pop-confirm.placement-left-bottom .pop-confirm-arrow{bottom:8px}.x-pop-confirm.placement-right .pop-confirm-arrow,.x-pop-confirm.placement-right-bottom .pop-confirm-arrow,.x-pop-confirm.placement-right-top .pop-confirm-arrow{left:0;transform:translate(-100%) rotate(-90deg)}.x-pop-confirm.placement-right .pop-confirm-arrow{top:50%;transform:translateY(-50%) translate(-100%) rotate(-90deg)}.x-pop-confirm.placement-right-top .pop-confirm-arrow{top:8px}.x-pop-confirm.placement-right-bottom .pop-confirm-arrow{bottom:8px}.x-pop-confirm-top-appear,.x-pop-confirm-top-enter{animation:x-move-bottom .2s ease;animation-fill-mode:forwards}.x-pop-confirm-top-exit{animation:x-move-bottom .1s ease-in reverse;animation-fill-mode:forwards}.x-pop-confirm-right-appear,.x-pop-confirm-right-enter{animation:x-move-left .2s ease;animation-fill-mode:forwards}.x-pop-confirm-right-exit{animation:x-move-left .1s ease-in reverse;animation-fill-mode:forwards}.x-pop-confirm-bottom-appear,.x-pop-confirm-bottom-enter{animation:x-move-top .2s ease;animation-fill-mode:forwards}.x-pop-confirm-bottom-exit{animation:x-move-top .1s ease-in reverse;animation-fill-mode:forwards}.x-pop-confirm-left-appear,.x-pop-confirm-left-enter{animation:x-move-right .2s ease;animation-fill-mode:forwards}.x-pop-confirm-left-exit{animation:x-move-right .1s ease-in reverse;animation-fill-mode:forwards}.x-file-preview{background:rgba(0,0,0,.7);color:#e6e6e6;inset:0;position:fixed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1002}.x-file-preview *,.x-file-preview :after,.x-file-preview :before{box-sizing:border-box}.x-file-preview img{border:0;outline:none}.x-file-preview.file-preview-enter{opacity:0}.x-file-preview.file-preview-enter-active{opacity:1;transition:opacity .2s ease-in-out}.x-file-preview.file-preview-exit-active{opacity:0;transition:opacity .2s ease-in-out}.x-file-preview .preview-header{background:rgba(0,0,0,.6);color:#fff;height:50px;line-height:50px;position:relative}.x-file-preview .preview-header .file-counter{color:#b5b8be;display:inline-block;padding-left:20px}.x-file-preview .preview-header .file-name{display:inline-block;inset:0 200px 0 60px;overflow:hidden;position:absolute;text-overflow:ellipsis;white-space:nowrap}.x-file-preview .preview-header .download-btn{color:inherit;display:block;font-size:15px;height:50px;outline:none;padding:0 20px;position:absolute;right:50px;text-decoration:none;top:0;transition:all .2s ease}.x-file-preview .preview-header .download-btn>i{font-size:20px}.x-file-preview .preview-header .download-btn:hover{background:#000}.x-file-preview .preview-header .close-btn{cursor:pointer;font-size:20px;height:50px;position:absolute;right:0;text-align:center;top:0;transition:all .2s ease;width:50px}.x-file-preview .preview-header .close-btn:hover{background:#000}.x-file-preview .preview-body{inset:50px 0 0;overflow:hidden;position:absolute}.x-file-preview .preview-body .preview-center{inset:0;margin:auto;max-height:100%;max-width:80%;position:absolute}.x-file-preview .preview-body .preview-image{background:#fff;cursor:pointer;transition:transform .2s linear}.x-file-preview .preview-body .preview-image.invisible{visibility:hidden}.x-file-preview .preview-body .preview-iframe{height:100%;width:100%}.x-file-preview .preview-body .preview-video{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center}.x-file-preview .preview-body .preview-video video{max-height:100%;max-width:100%}.x-file-preview .preview-body .preview-audio,.x-file-preview .preview-body .preview-other{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center}.x-file-preview .preview-body .arrow-wrapper{bottom:0;cursor:pointer;position:absolute;text-align:center;top:0;width:100px;z-index:2}.x-file-preview .preview-body .arrow-wrapper:hover .arrow-left,.x-file-preview .preview-body .arrow-wrapper:hover .arrow-right{background:var(--fd-color-brand-6,#00b899)}.x-file-preview .preview-body .arrow-wrapper.left{left:0}.x-file-preview .preview-body .arrow-wrapper.right{right:0}.x-file-preview .preview-body .arrow-wrapper .arrow-left,.x-file-preview .preview-body .arrow-wrapper .arrow-right{background-color:#00000080;border-radius:50%;color:#fff;display:block;font-size:30px;height:70px;inset:0;line-height:70px;margin:auto;position:absolute;text-align:center;transition:all .2s ease;width:70px}.x-file-preview .preview-body .x-spin{background:transparent;left:100px;right:100px;z-index:2}.x-file-preview .preview-body .preview-control{bottom:40px;color:#fff;line-height:normal;position:absolute;text-align:center;width:100%}.x-file-preview .preview-body .preview-control .control-content{background:rgba(0,0,0,.6);border-radius:6px;display:inline-block;height:50px;line-height:50px;overflow:hidden}.x-file-preview .preview-body .preview-control .control-content .scale-val,.x-file-preview .preview-body .preview-control .control-content>i{display:inline-block;text-align:center;vertical-align:top;width:50px}.x-file-preview .preview-body .preview-control .control-content>i{cursor:pointer;font-size:24px;transition:all .2s ease}.x-file-preview .preview-body .preview-control .control-content>i:hover{background:#000}.x-file-preview .preview-body .preview-control .control-content>i.rotate.anti{transform:rotateY(180deg)}.x-label{color:var(--fd-color-brand-6,#00b899)}.x-label *,.x-label :after,.x-label :before{box-sizing:border-box}.x-list{border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);color:var(--fd-color-text);line-height:var(--fd-line-height);overflow:auto;position:relative}.x-list *,.x-list :after,.x-list :before{box-sizing:border-box}.x-list ol,.x-list ul{margin:0;padding:0}.x-list li{list-style-type:none}.x-list.size-large .list-item{padding:var(--fd-padding-xl) var(--fd-padding-3xl)}.x-list.size-small .list-item{padding:var(--fd-padding) var(--fd-padding-xl)}.x-list .list-item{line-height:inherit;overflow:hidden;padding:var(--fd-padding-lg) var(--fd-padding-3xl);text-overflow:ellipsis;white-space:nowrap}.x-spin{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center;inset:0;position:absolute}.x-spin *,.x-spin :after,.x-spin :before{box-sizing:border-box}@keyframes x-spin-scale{0%{transform:scale(0)}50%{transform:scale(1)}to{transform:scale(0)}}@keyframes x-spin-roll{to{transform:rotate(405deg)}}.x-spin .spin-content{text-align:center}.x-spin .spin-content .spin-indicator.rotate{animation:x-rotate .8s cubic-bezier(.43,.1,.54,.85) infinite;border:2px solid;border-color:var(--fd-color-primary-bg);border-radius:50%;border-top-color:var(--fd-color-primary);height:var(--fd-spin-height);margin:0 auto;transform-origin:center;width:var(--fd-spin-height)}.x-spin .spin-content .spin-indicator.scale .point{animation:x-spin-scale 1.2s ease-in-out infinite;background:var(--fd-color-primary);border-radius:50%;display:inline-block;height:10px;margin-right:var(--fd-gap);transform:scale(0);width:10px}.x-spin .spin-content .spin-indicator.scale .point.two{animation-delay:.1s}.x-spin .spin-content .spin-indicator.scale .point.three{animation-delay:.3s}.x-spin .spin-content .spin-indicator.scale .point.four{animation-delay:.5s}.x-spin .spin-content .spin-indicator.roll{animation:x-spin-roll 1.2s linear infinite;display:inline-block;height:20px;position:relative;transform:rotate(45deg);width:20px}.x-spin .spin-content .spin-indicator.roll .point{background-color:var(--fd-color-primary);border-radius:100%;display:block;height:9px;position:absolute;transform:scale(.75);transform-origin:50% 50%;width:9px}.x-spin .spin-content .spin-indicator.roll .point.one{left:0;opacity:.649;top:0}.x-spin .spin-content .spin-indicator.roll .point.two{animation-delay:.1s;opacity:.579;right:0;top:0}.x-spin .spin-content .spin-indicator.roll .point.three{animation-delay:.3s;bottom:0;left:0;opacity:.556}.x-spin .spin-content .spin-indicator.roll .point.four{animation-delay:.5s;bottom:0;opacity:.954;right:0}.x-spin .spin-content .spin-description{color:var(--fd-color-primary);font-size:var(--fd-font-size);line-height:var(--fd-line-height);margin-top:var(--fd-gap)}.x-spin.mask-light{background-color:#ffffffb3}.x-spin.mask-dark{background-color:#00000080}.x-spin.mask-dark .spin-content .spin-indicator.rotate{border-color:#fff hsla(0,0%,100%,.3) hsla(0,0%,100%,.3)}.x-spin.mask-dark .spin-content .spin-indicator.roll .point,.x-spin.mask-dark .spin-content .spin-indicator.scale .point{background-color:#fff}.x-spin.mask-dark .spin-content .spin-description{color:#fff}.x-spin.size-small .spin-content .spin-indicator.rotate{height:var(--fd-spin-height-sm);width:var(--fd-spin-height-sm)}.x-spin.size-small .spin-content .spin-indicator.roll .point,.x-spin.size-small .spin-content .spin-indicator.scale .point{height:6px;width:6px}.x-spin.size-small .spin-content .spin-indicator.roll{height:14px;width:14px}.x-spin.size-small .spin-content .spin-description{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);margin-top:var(--fd-gap-sm)}.x-spin.size-large .spin-content .spin-indicator.rotate{height:var(--fd-spin-height-lg);width:var(--fd-spin-height-lg)}.x-spin.size-large .spin-content .spin-indicator.roll .point,.x-spin.size-large .spin-content .spin-indicator.scale .point{height:14px;width:14px}.x-spin.size-large .spin-content .spin-indicator.roll{height:32px;width:32px}.x-spin.size-large .spin-content .spin-description{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg);margin-top:var(--fd-gap-xl)}.x-spin.is-full-screen{position:fixed;z-index:1002}.x-spin-nested-loading{position:relative}.x-spin-nested-loading>div>.x-spin{display:block;height:100%;inset-inline-start:0;max-height:400px;position:absolute;top:0;width:100%;z-index:4}.x-spin-nested-loading>div>.x-spin .spin-content>.spin-indicator{inset-inline-start:50%;margin:-10px;position:absolute;top:50%}.x-spin-nested-loading .x-spin-container{position:relative;transition:opacity .3s}.x-spin-nested-loading .x-spin-container:after{background:var(--fd-color-bg-container);content:"";height:100%;inset:0;opacity:0;pointer-events:none;position:absolute;transition:all .3s;width:100%;z-index:10}.x-spin-nested-loading .x-spin-blur{clear:both;opacity:.5;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-spin-nested-loading .x-spin-blur:after{opacity:.4;pointer-events:auto}.x-skeleton{display:flex;position:relative;width:100%}.x-skeleton *,.x-skeleton :after,.x-skeleton :before{box-sizing:border-box}.x-skeleton .x-skeleton-header{flex:none;height:100%;margin-right:20px;vertical-align:top}.x-skeleton.has-title .x-skeleton-content .x-skeleton-paragraph{margin-top:16px}.x-skeleton .x-skeleton-content{flex:1 1 auto;height:100%;vertical-align:top}.x-skeleton .x-skeleton-content .x-skeleton-paragraph,.x-skeleton .x-skeleton-content .x-skeleton-title{margin-top:8px}.x-skeleton-element{background:#f0f1f4;display:inline-block}.x-skeleton-element.active{animation:x-skeleton-animation 1.4s ease infinite;background-image:linear-gradient(90deg,#f0f1f4 25%,#e1e3e5 37%,#f0f1f4 63%);background-size:400% 100%}.x-skeleton-element.x-skeleton-button,.x-skeleton-element.x-skeleton-input,.x-skeleton-element.x-skeleton-node{height:32px}.x-skeleton-element.x-skeleton-node{border-radius:3px;width:64px}.x-skeleton-element.x-skeleton-node.shape-round{border-radius:32px}.x-skeleton-element.x-skeleton-node.shape-circle{border-radius:50%}.x-skeleton-element.x-skeleton-title{border-radius:3px;height:16px;width:45%}.x-skeleton-element.x-skeleton-button{border-radius:3px;width:64px}.x-skeleton-element.x-skeleton-button.block{width:100%!important}.x-skeleton-element.x-skeleton-button.shape-round{border-radius:32px}.x-skeleton-element.x-skeleton-button.size-sm{height:24px;width:48px}.x-skeleton-element.x-skeleton-button.size-sm.shape-round{border-radius:24px}.x-skeleton-element.x-skeleton-button.size-lg{height:36px;line-height:36px;min-width:80px;width:80px}.x-skeleton-element.x-skeleton-button.size-lg.shape-round{border-radius:36px}.x-skeleton-element.x-skeleton-input{border-radius:3px;width:160px}.x-skeleton-element.x-skeleton-input.block{width:100%!important}.x-skeleton-element.x-skeleton-input.size-sm{height:24px;width:120px}.x-skeleton-element.x-skeleton-input.size-lg{height:36px;width:200px}.x-skeleton-element.x-skeleton-avatar{border-radius:3px;height:32px;width:32px}.x-skeleton-element.x-skeleton-avatar.shape-circle{border-radius:50%}.x-skeleton-element.x-skeleton-avatar.size-sm{height:24px;width:24px}.x-skeleton-element.x-skeleton-avatar.size-lg{height:36px;width:36px}.x-skeleton-paragraph ol,.x-skeleton-paragraph ul{margin:0;padding:0}.x-skeleton-paragraph li{list-style-type:none}.x-skeleton-paragraph>li{background:#f0f1f4;border-radius:3px;height:16px;list-style:none;width:100%}.x-skeleton-paragraph>li+li{margin-top:20px}.x-skeleton-paragraph.active>li{animation:x-skeleton-animation 1.4s ease infinite;background-image:linear-gradient(90deg,#f0f1f4 25%,#e1e3e5 37%,#f0f1f4 63%);background-size:400% 100%}@keyframes x-skeleton-animation{0%{background-position:100% 0}to{background-position:0 0}}.x-alert{background:#fff;border-radius:var(--fd-border-radius-lg);box-shadow:var(--fd-box-shadow-tertiary);left:50%;line-height:normal;margin:-200px 0 0 -250px;overflow:hidden;padding:var(--fd-padding-layout-xl) var(--fd-padding-layout-xl);position:absolute;top:50%;width:480px}.x-alert *,.x-alert :after,.x-alert :before{box-sizing:border-box}.x-alert.alert-appear,.x-alert.alert-enter{animation:x-zoom-in-big .2s ease;pointer-events:none}.x-alert.alert-exit{animation:x-zoom-in-big .1s ease-in reverse;pointer-events:none}.x-alert>i{display:inline-block;font-size:var(--fd-line-height-lg);line-height:var(--fd-line-height-lg);vertical-align:top}.x-alert>i.x-svgicon>svg{vertical-align:baseline}.x-alert>i.info,.x-alert>i.query{color:var(--fd-color-info)}.x-alert>i.success{color:var(--fd-color-success)}.x-alert>i.error{color:var(--fd-color-error)}.x-alert>i.warning{color:var(--fd-color-warning)}.x-alert>i.question{color:var(--fd-color-info)}.x-alert .alert-body{display:inline-block;margin-bottom:var(--fd-gap-xl);margin-left:var(--fd-gap-xl);width:396px}.x-alert .alert-body .title{font-size:var(--fd-font-size-lg);font-weight:600;line-height:var(--fd-line-height-lg);margin:0 0 var(--fd-gap) 0}.x-alert .alert-body .message,.x-alert .alert-body .title{word-wrap:break-word;color:var(--fd-color-text);word-break:break-word}.x-alert .alert-body .message{font-size:var(--fd-font-size);line-height:var(--fd-line-height)}.x-alert .alert-body .content{margin-top:var(--fd-gap)}.x-alert .alert-body .question{margin-top:var(--fd-gap);width:100%}.x-alert .alert-footer .footer-btn{float:right;margin-left:var(--fd-gap)}.x-alert .alert-footer .footer-btn:last-child{margin-left:0}.x-alert .alert-footer .footer-right{margin-left:var(--fd-gap)}.x-alert .alert-footer .footer-left,.x-pagination{font-size:var(--fd-font-size);line-height:var(--fd-line-height)}.x-pagination{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;color:var(--fd-color-text);display:flex;justify-content:space-between}.x-pagination *,.x-pagination :after,.x-pagination :before{box-sizing:border-box}.x-pagination .pagination-left .count,.x-pagination .pagination-left .size-combo{display:inline-block;font-size:var(--fd-font-size-sm);vertical-align:middle}.x-pagination .pagination-left .size-combo{width:112px}.x-pagination .pagination-left .size-combo.default>.x-select-selector{border:none;box-shadow:none!important}.x-pagination .pagination-left .size-combo>.x-select-selector{background-color:unset}.x-pagination .pagination-left .count{margin-left:var(--fd-gap)}.x-pagination .pagination-right{align-items:center;display:flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-pagination .pagination-right .page-input-wrapper{display:inline-block;height:var(--fd-control-height);min-width:var(--fd-control-height);overflow:hidden;position:relative;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.x-pagination .pagination-right .page-input-wrapper .page-input{height:auto;inset:0;position:absolute;width:auto}.x-pagination .pagination-right .page-input-wrapper .page-input>input{background-color:unset;font-size:var(--fd-font-size);text-align:center}.x-pagination .pagination-right .page-input-wrapper .fake-placeholder{max-width:150px;padding:0 13px;visibility:hidden}.x-pagination .pagination-right .page-turn-first,.x-pagination .pagination-right .page-turn-last,.x-pagination .pagination-right .page-turn-next,.x-pagination .pagination-right .page-turn-pre{border-radius:var(--fd-border-radius);cursor:pointer;display:inline-block;font-size:14px;height:var(--fd-control-height);margin-left:0;padding:0;text-align:center;transition:all .2s ease;width:var(--fd-control-height)}.x-pagination .pagination-right .page-turn-first>i,.x-pagination .pagination-right .page-turn-last>i,.x-pagination .pagination-right .page-turn-next>i,.x-pagination .pagination-right .page-turn-pre>i{line-height:var(--fd-control-height)}.x-pagination .pagination-right .page-turn-first:not(.page-btn-disabled):hover,.x-pagination .pagination-right .page-turn-last:not(.page-btn-disabled):hover,.x-pagination .pagination-right .page-turn-next:not(.page-btn-disabled):hover,.x-pagination .pagination-right .page-turn-pre:not(.page-btn-disabled):hover{color:var(--fd-color-primary-hover)}.x-pagination .pagination-right .page-turn-first:not(.page-btn-disabled):active,.x-pagination .pagination-right .page-turn-last:not(.page-btn-disabled):active,.x-pagination .pagination-right .page-turn-next:not(.page-btn-disabled):active,.x-pagination .pagination-right .page-turn-pre:not(.page-btn-disabled):active{color:var(--fd-color-primary-active);transition:unset}.x-pagination .pagination-right .page-turn-first.page-btn-disabled,.x-pagination .pagination-right .page-turn-last.page-btn-disabled,.x-pagination .pagination-right .page-turn-next.page-btn-disabled,.x-pagination .pagination-right .page-turn-pre.page-btn-disabled{color:var(--fd-color-text-disabled);cursor:default}.x-pagination .pagination-right .bordered{border:none}.x-pagination .pagination-right .bordered.page-turn-first,.x-pagination .pagination-right .bordered.page-turn-last,.x-pagination .pagination-right .bordered.page-turn-next,.x-pagination .pagination-right .bordered.page-turn-pre{border:1px solid var(--fd-color-border);border-left-width:0}.x-pagination .pagination-right .bordered.page-turn-first:first-child,.x-pagination .pagination-right .bordered.page-turn-last:first-child,.x-pagination .pagination-right .bordered.page-turn-next:first-child,.x-pagination .pagination-right .bordered.page-turn-pre:first-child{border-left-width:1px}.x-pagination .pagination-right .bordered.page-turn-first>i,.x-pagination .pagination-right .bordered.page-turn-last>i,.x-pagination .pagination-right .bordered.page-turn-next>i,.x-pagination .pagination-right .bordered.page-turn-pre>i{line-height:calc(var(--fd-control-height) - 2px)}.x-pagination .pagination-right .bordered.page-btn-disabled{background-color:var(--fd-color-bg-container-disabled)}.x-pagination .pagination-right .jumpable .bordered.page-turn-first,.x-pagination .pagination-right .jumpable .bordered.page-turn-next{border-end-end-radius:0;border-start-end-radius:0}.x-pagination .pagination-right .jumpable .bordered.page-turn-last,.x-pagination .pagination-right .jumpable .bordered.page-turn-pre{border-end-start-radius:0;border-start-start-radius:0}.x-pagination .pagination-right .page-jump,.x-pagination .pagination-right .page-turn{-webkit-box-flex:0;align-items:center;display:flex;flex:none}.x-pagination .pagination-right .page-jump,.x-pagination .pagination-right .page-jump>.total-page{margin:0 var(--fd-gap-sm)}.x-pagination.small{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-pagination.small .size-combo{width:96px}.x-pagination.small .pagination-right .page-input-wrapper{height:var(--fd-control-height-sm);min-width:var(--fd-control-height-sm)}.x-pagination.small .page-turn-first,.x-pagination.small .page-turn-last,.x-pagination.small .page-turn-next,.x-pagination.small .page-turn-pre{height:var(--fd-control-height-sm);width:var(--fd-control-height-sm)}.x-pagination.small .page-turn-first>i,.x-pagination.small .page-turn-last>i,.x-pagination.small .page-turn-next>i,.x-pagination.small .page-turn-pre>i{line-height:var(--fd-control-height-sm)}.x-pagination.small .bordered.page-turn-first>i,.x-pagination.small .bordered.page-turn-last>i,.x-pagination.small .bordered.page-turn-next>i,.x-pagination.small .bordered.page-turn-pre>i{line-height:calc(var(--fd-control-height-sm) - 2px)}.x-radio{align-items:flex-start;color:var(--fd-color-text);display:flex;line-height:var(--fd-line-height)}.x-radio *,.x-radio :after,.x-radio :before{box-sizing:border-box}.x-radio.is-only-icon{align-items:center}.x-radio.has-default-padding{padding:var(--fd-radio-default-padding)}.x-radio:not(.auto-wrap) .x-radio-wrapper{min-width:0}.x-radio:not(.auto-wrap) .x-radio-wrapper .radio-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-radio .radio-check-icon{-webkit-box-flex:0;background:var(--fd-color-bg-container);border:1px solid var(--fd-color-border);display:inline-block;flex:0 0 auto;height:16px;margin:calc((var(--fd-line-height) - 16px)/2) 0;position:relative;vertical-align:middle;width:16px}.x-radio .radio-check-icon,.x-radio .radio-check-icon:before{border-radius:50%;transition:all .2s ease}.x-radio .radio-check-icon:before{background:var(--fd-color-primary);content:"";display:block;height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:0}.x-radio .radio-text{word-wrap:break-word;line-height:var(--fd-line-height);max-width:100%;padding-left:var(--fd-gap);vertical-align:middle;word-break:break-word}.x-radio .x-radio-wrapper{cursor:pointer;display:flex}.x-radio .x-radio-wrapper:focus{box-shadow:0 0 0 1px var(--fd-color-primary);outline:none}.x-radio .x-radio-wrapper:active{box-shadow:none}.x-radio .x-radio-wrapper:hover .radio-check-icon{border-color:var(--fd-color-primary)}.x-radio.radio-checked .radio-check-icon{background:var(--fd-color-bg-container);border-color:var(--fd-color-primary)}.x-radio.radio-checked .radio-check-icon:before{height:8px;width:8px}.x-radio.radio-disable,.x-radio.radio-disable .x-radio-wrapper{cursor:not-allowed}.x-radio.radio-disable .radio-check-icon{background:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important}.x-radio.radio-disable .radio-check-icon:before{background:transparent}.x-radio.radio-disable.radio-checked .radio-check-icon{background:var(--fd-color-bg-container-disabled)!important}.x-radio.radio-disable.radio-checked .radio-check-icon:before{background:var(--fd-color-icon-disabled)!important}.x-radio.radio-disable .radio-text{color:var(--fd-color-text-data-disabled)!important}.x-radio-group{display:inline-block;max-width:100%}.x-radio-group.radio-group-horizontal{display:flex;flex-wrap:wrap}.x-radio-group.radio-group-horizontal.no-default-padding{row-gap:var(--fd-gap)}.x-radio-group.radio-group-horizontal.no-default-padding .x-radio{padding:0}.x-radio-group.radio-group-horizontal .x-radio{display:inline-flex;margin-right:var(--fd-gap-4xl);max-width:100%}.x-radio-group.radio-group-horizontal .x-radio:last-child{margin-right:0}.x-radio-group.radio-group-vertical.no-default-padding .x-radio:first-child{padding-top:0}.x-radio-group.radio-group-vertical.no-default-padding .x-radio:last-child{padding-bottom:0}.x-radio-group.radio-group-vertical.block{display:block}.x-radio-group.radio-group-vertical.block .x-radio-wrapper,.x-radio-group.radio-group-vertical.block .x-radio-wrapper .radio-text{flex:1}.x-radio-group.radio-group-option-button{border-radius:var(--fd-border-radius);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-radio-group.radio-group-option-button.radio-group-button-outline .x-radio.radio-checked:not(.radio-disable)+.x-radio{border-left-width:0}.x-radio-group.radio-group-option-button.radio-group-button-outline .x-radio.radio-checked:not(.radio-disable){border-right-width:1px}.x-radio-group.radio-group-option-button.block,.x-radio-group.radio-group-option-button.grid-mode{display:flex}.x-radio-group.radio-group-option-button.grid-mode{flex-direction:column}.x-radio-group.radio-group-option-button.grid-mode .radio-grid-row{display:flex}.x-radio-group.radio-group-option-button.grid-mode .radio-grid-row:first-child .x-radio{border-end-end-radius:0;border-end-start-radius:0}.x-radio-group.radio-group-option-button.grid-mode .radio-grid-row:last-child .x-radio{border-start-end-radius:0;border-start-start-radius:0}.x-radio-group.radio-group-option-button.block .x-radio{flex:1;min-width:0}.x-radio-group.radio-group-option-button.block .x-radio .x-radio-wrapper{justify-content:center}.x-radio-group.radio-group-option-button.block .x-radio .x-radio-wrapper .radio-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-radio-group.radio-group-option-button .x-radio{background-color:var(--fd-color-bg-container);border:1px solid var(--fd-color-border);border-right-width:0;color:var(--fd-color-text);cursor:pointer;display:inline-block;font-size:var(--fd-font-size);height:var(--fd-control-height);line-height:calc(var(--fd-control-height) - 2px);padding:0;position:relative;transition:color .2s,background .2s,box-shadow .2s}.x-radio-group.radio-group-option-button .x-radio .x-radio-wrapper{padding:0 var(--fd-padding-xl)}.x-radio-group.radio-group-option-button .x-radio .x-radio-wrapper .radio-text{line-height:inherit;padding-left:0}.x-radio-group.radio-group-option-button .x-radio .radio-check-icon{display:none}.x-radio-group.radio-group-option-button .x-radio:hover{color:var(--fd-color-primary)}.x-radio-group.radio-group-option-button .x-radio.radio-checked:not(.radio-disable){background:var(--fd-color-bg-container);border-color:var(--fd-color-primary);color:var(--fd-color-primary)}.x-radio-group.radio-group-option-button .x-radio.radio-checked:not(.radio-disable):first-child{border-color:var(--fd-color-primary)}.x-radio-group.radio-group-option-button .x-radio.radio-checked:not(.radio-disable):hover{border-color:var(--fd-color-primary-hover);color:var(--fd-color-primary-hover)}.x-radio-group.radio-group-option-button .x-radio.radio-checked:not(.radio-disable):active{border-color:var(--fd-color-primary-active);color:var(--fd-color-primary-active)}.x-radio-group.radio-group-option-button .x-radio:first-child{border-end-start-radius:var(--fd-border-radius);border-start-start-radius:var(--fd-border-radius)}.x-radio-group.radio-group-option-button .x-radio:last-child{border-end-end-radius:var(--fd-border-radius);border-right:1px solid var(--fd-color-border);border-start-end-radius:var(--fd-border-radius)}.x-radio-group.radio-group-option-button .x-radio:first-child:last-child{border-radius:var(--fd-border-radius)}.x-radio-group.radio-group-option-button.radio-group-button-solid .radio-checked:not(.radio-disable){background-color:var(--fd-color-primary);border-color:var(--fd-color-border);color:var(--fd-color-text-light-solid)}.x-radio-group.radio-group-option-button.radio-group-button-solid .radio-checked:not(.radio-disable):hover{background:var(--fd-color-primary-hover);border-color:var(--fd-color-primary-hover);color:var(--fd-color-text-light-solid)}.x-radio-group.radio-group-option-button.radio-group-button-solid .radio-checked:not(.radio-disable):active{background:var(--fd-color-primary-active);border-color:var(--fd-color-primary-active);color:var(--fd-color-text-light-solid)}.x-radio-group.radio-group-option-button.radio-group-disable{background-color:var(--fd-color-bg-container-disabled)!important;border-color:var(--fd-color-border)!important;color:var(--fd-color-text-disabled)!important;cursor:not-allowed}.x-radio-group.radio-group-option-button.radio-group-disable .radio-checked{background-color:var(--fd-control-item-bg-active-disabled)!important}.x-radio-group.radio-group-option-button.radio-group-disable .x-radio .radio-text{color:var(--fd-color-text-disabled)!important}.x-radio-group.radio-group-option-button.large .x-radio{font-size:var(--fd-font-size-lg);height:var(--fd-control-height-lg);line-height:calc(var(--fd-control-height-lg) - 2px)}.x-radio-group.radio-group-option-button.large .x-radio:first-child{border-end-start-radius:var(--fd-border-radius);border-start-start-radius:var(--fd-border-radius)}.x-radio-group.radio-group-option-button.large .x-radio:last-child{border-end-end-radius:var(--fd-border-radius);border-start-end-radius:var(--fd-border-radius)}.x-radio-group.small .x-radio{font-size:var(--fd-font-size-sm);height:var(--fd-control-height-sm);line-height:calc(var(--fd-control-height-sm) - 2px)}.x-radio-group.small .x-radio .x-radio-wrapper{padding:0 var(--fd-padding)}.x-radio-group.small .x-radio:first-child{border-end-start-radius:var(--fd-border-radius);border-start-start-radius:var(--fd-border-radius)}.x-radio-group.small .x-radio:last-child{border-end-end-radius:var(--fd-border-radius);border-start-end-radius:var(--fd-border-radius)}.x-segment{color:#141e31;display:flex;line-height:30px;width:100%}.x-segment *,.x-segment :after,.x-segment :before{box-sizing:border-box}.x-segment .x-segment-item{-webkit-box-flex:0;background:#fff;border:1px solid #d7d9dc;border-right:none;cursor:pointer;flex:none;overflow:hidden;padding:0 15px;text-align:center;text-overflow:ellipsis;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.x-segment .x-segment-item:hover{color:var(--fd-color-brand-6,#00b899)}.x-segment .x-segment-item:first-child{border-bottom-left-radius:3px;border-top-left-radius:3px}.x-segment .x-segment-item:last-child{border-bottom-right-radius:3px;border-right:1px solid #d7d9dc;border-top-right-radius:3px}.x-segment .x-segment-item.item-selected{border-color:var(--fd-color-brand-6,#00b899);color:var(--fd-color-brand-6,#00b899)!important}.x-segment .x-segment-item.item-selected+.x-segment-item{border-left-color:var(--fd-color-brand-6,#00b899)}.x-segment .x-segment-item.item-disabled{background:#f0f1f4!important;color:#b5b8be!important;cursor:not-allowed}.x-segment .x-segment-item.item-disabled.item-selected{background:#fff!important;border-color:var(--fd-color-brand-3,#99e3d6);color:var(--fd-color-brand-3,#99e3d6)!important}.x-segment .x-segment-item.item-disabled.item-selected+.x-segment-item{border-left-color:var(--fd-color-brand-3,#99e3d6)}.x-segment.size-large{font-size:16px;line-height:38px}.x-segment.size-small{font-size:12px;line-height:22px}.x-cascader{color:var(--fd-color-text);cursor:pointer;display:inline-block;line-height:normal;width:240px}.x-cascader *,.x-cascader :after,.x-cascader :before{box-sizing:border-box}.x-cascader ol,.x-cascader ul{margin:0;padding:0}.x-cascader li{list-style-type:none}.x-cascader .label-wrapper:focus{outline:none}.x-cascader .label-wrapper:focus .trigger-wrapper:not(.disabled){border-color:var(--fd-color-primary)}.x-cascader .trigger-wrapper{border:1px solid var(--fd-color-border);border-radius:var(--fd-border-radius);height:var(--fd-control-height);overflow:hidden;position:relative;transition:border .2s ease-in-out;width:100%}.x-cascader .trigger-wrapper.no-border{border-color:transparent!important;box-shadow:none!important}.x-cascader .trigger-wrapper.active,.x-cascader .trigger-wrapper:hover{border-color:var(--fd-color-primary)}.x-cascader .trigger-wrapper.active{box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline)}.x-cascader .trigger-wrapper.disabled{color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-cascader .trigger-wrapper.disabled,.x-cascader .trigger-wrapper.disabled:hover{background:var(--fd-color-bg-container-disabled);border-color:var(--fd-color-border)}.x-cascader .trigger-wrapper.disabled .trigger-icon{color:var(--fd-color-text-disabled)}.x-cascader .trigger-wrapper.can-remove:not(.disabled):hover .trigger-icon.arrow{display:none}.x-cascader .trigger-wrapper.can-remove:not(.disabled):hover .trigger-icon.remove{display:inline-block}.x-cascader .trigger-wrapper .value{display:inline-block;height:100%;line-height:calc(var(--fd-control-height) - 2px);overflow:hidden;padding:0 var(--fd-control-height) 0 8px;text-overflow:ellipsis;white-space:nowrap;width:100%}.x-cascader .trigger-wrapper .value .placeholder{color:var(--fd-color-text-placeholder)}.x-cascader .trigger-wrapper .trigger-icon{color:var(--fd-color-icon-normal);display:inline-block;height:100%;position:absolute;right:0;top:0;width:var(--fd-control-height)}.x-cascader .trigger-wrapper .trigger-icon>i{font-size:var(--fd-icon-size);left:50%;line-height:calc(var(--fd-control-height) - 2px);position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%) rotate(0);transform-origin:center;transition:all .2s ease;width:var(--fd-control-height)}.x-cascader .trigger-wrapper .trigger-icon>i.close-btn{color:var(--fd-color-icon);transition:unset}.x-cascader .trigger-wrapper .trigger-icon>i.close-btn:hover{color:var(--fd-color-icon-hover)}.x-cascader .trigger-wrapper .trigger-icon.reverse>i{transform:translate(-50%,-50%) rotate(180deg)}.x-cascader .trigger-wrapper .trigger-icon.remove{display:none}.x-cascader-content{background:var(--fd-color-bg-container);border-radius:var(--fd-border-radius);color:var(--fd-color-text);display:inline-block;overflow:hidden;vertical-align:top;white-space:nowrap}.x-cascader-content .menu-items{border-right:1px solid var(--fd-color-split);display:inline-block;height:200px;overflow-x:hidden;overflow-y:auto;padding:var(--fd-padding-layout-2xs);vertical-align:top}.x-cascader-content .menu-items:last-child{border-right:none}.x-cascader-content .menu-items .cascader-item{border-radius:var(--fd-border-radius);cursor:pointer;line-height:var(--fd-control-height);max-width:240px;min-width:110px;overflow:hidden;padding:0 var(--fd-padding);position:relative;text-overflow:ellipsis;white-space:nowrap}.x-cascader-content .menu-items .cascader-item:hover{background:#f0f1f4}.x-cascader-content .menu-items .cascader-item.select{background:var(--fd-control-item-bg-active)}.x-cascader-content .menu-items .cascader-item.disabled{background:var(--fd-color-bg-container);color:var(--fd-color-text-disabled);cursor:default}.x-cascader-content .menu-items .cascader-item.disabled .expand-icon{color:var(--fd-color-text-disabled)}.x-cascader-content .menu-items .cascader-item.disabled:hover{background:var(--fd-color-bg-container);color:var(--fd-color-text-disabled)}.x-cascader-content .menu-items .cascader-item.has-expand-icon{padding-right:calc(var(--fd-icon-size) + var(--fd-padding))}.x-cascader-content .menu-items .cascader-item .expand-icon{color:var(--fd-color-icon-normal);font-size:var(--fd-icon-size);position:absolute;right:var(--fd-padding);top:0}.x-cascader-trigger-content{display:inline-block;z-index:1}.x-cascader-trigger-content .cascader-wrapper{border-radius:var(--fd-border-radius-lg);box-shadow:var(--fd-box-shadow-secondary)}.x-cascader-trigger-content .cascader-wrapper .search-wrapper{border-bottom:1px solid var(--fd-color-split);left:0;position:absolute;right:0;top:0}.x-cascader-trigger-content .cascader-wrapper .content-wrapper.has-search{padding-top:var(--fd-control-height)}.x-cascader-trigger-content .cascader-wrapper .content-wrapper .searching-tip{background:var(--fd-color-bg-container);color:var(--fd-color-text-placeholder);line-height:40px;text-align:center;width:240px}.x-cascader-trigger-bottom-appear,.x-cascader-trigger-bottom-enter{animation:x-slide-down .2s ease;animation-fill-mode:forwards;transform-origin:top}.x-cascader-trigger-bottom-exit{animation:x-slide-down .2s ease-in reverse;animation-fill-mode:forwards;transform-origin:top}.x-cascader-trigger-top-appear,.x-cascader-trigger-top-enter{animation:x-slide-down .2s ease;animation-fill-mode:forwards;transform-origin:bottom}.x-cascader-trigger-top-exit{animation:x-slide-down .2s ease-in reverse;animation-fill-mode:forwards;transform-origin:bottom}.x-cascader-search-list{background:var(--fd-color-bg-container);border-radius:var(--fd-border-radius);color:var(--fd-color-text);display:inline-block;max-height:200px;min-width:240px;overflow:auto;padding:var(--fd-padding) 0;vertical-align:top;white-space:nowrap}.x-cascader-search-list .empty-tip{color:var(--fd-color-text-description);line-height:40px;text-align:center;width:240px}.x-cascader-search-list .result-list .result-item{cursor:pointer;line-height:var(--fd-control-height);overflow:hidden;padding:0 var(--fd-padding);text-overflow:ellipsis;transition:background .2s ease;white-space:nowrap}.x-cascader-search-list .result-list .result-item .search-key{color:var(--fd-color-primary)}.x-cascader-search-list .result-list .result-item.is-focus{background:#f0f1f4}.x-step{display:flex;line-height:normal}.x-step *,.x-step :after,.x-step :before{box-sizing:border-box}.x-step .step{-webkit-box-flex:0;display:inline-block;flex:0 1 auto;position:relative}.x-step .step:last-child .step-line{display:none}.x-step .step.is-finish .step-container.is-icon .step-icon{color:var(--fd-color-primary)}.x-step .step.is-finish .step-container.is-text .step-icon{background-color:var(--fd-color-primary);color:var(--fd-color-text-light-solid)}.x-step .step.is-finish .step-container .step-line-inner{color:var(--fd-color-primary)}.x-step .step.is-finish .step-container:hover.is-text .step-icon{background-color:var(--fd-color-primary-hover)}.x-step .step.is-finish .step-container:hover .step-description,.x-step .step.is-finish .step-container:hover .step-title,.x-step .step.is-finish .step-container:hover.is-icon .step-icon{color:var(--fd-color-primary-hover)}.x-step .step.is-wait .step-container.is-icon .step-icon{color:var(--fd-color-icon-normal)}.x-step .step.is-wait .step-container.is-text .step-icon{background-color:var(--fd-color-fill-content);color:var(--fd-color-text-label)}.x-step .step.is-wait .step-container .step-line-inner{border-width:0;color:transparent}.x-step .step.is-wait .step-container:hover .step-icon{color:var(--fd-color-primary-hover)}.x-step .step.is-wait .step-container:hover.is-text .step-icon{border:1px solid var(--fd-color-primary-hover)}.x-step .step.is-wait .step-container:hover .step-description,.x-step .step.is-wait .step-container:hover .step-title{color:var(--fd-color-primary-hover)}.x-step .step.is-wait .step-main .step-description,.x-step .step.is-wait .step-main .step-title{color:var(--fd-color-text-description)}.x-step .step.is-process .step-container.is-icon .step-icon{color:var(--fd-color-primary)}.x-step .step.is-process .step-container.is-text .step-icon{background-color:var(--fd-color-primary);color:var(--fd-color-text-light-solid)}.x-step .step.is-process .step-container .step-line-inner{color:transparent}.x-step .step.is-process .step-container:hover.is-text .step-icon{background-color:var(--fd-color-primary-hover)}.x-step .step.is-process .step-container:hover .step-description,.x-step .step.is-process .step-container:hover .step-title,.x-step .step.is-process .step-container:hover.is-icon .step-icon{color:var(--fd-color-primary-hover)}.x-step .step.is-error .step-container.is-icon .step-icon{color:var(--fd-color-error)}.x-step .step.is-error .step-container.is-text .step-icon{background-color:var(--fd-color-error);color:var(--fd-color-text-light-solid)}.x-step .step.is-error .step-container .step-line-inner{border-width:0;color:var(--fd-color-primary)}.x-step .step.is-error .step-main .step-description,.x-step .step.is-error .step-main .step-title{color:var(--fd-color-error)}.x-step .step-container{font-size:var(--fd-font-size);line-height:var(--fd-line-height-lg);vertical-align:top;width:100%}.x-step .step-container.is-text .step-icon{border-radius:50%;border-style:solid;border-width:0}.x-step .step-container.is-icon{font-size:var(--fd-font-size)}.x-step .step-container.is-icon .step-icon{font-size:var(--fd-control-height);line-height:var(--fd-line-height-lg)}.x-step .step-main{color:var(--fd-color-text);font-size:var(--fd-font-size-lg)}.x-step .step-main .step-description{color:var(--fd-color-text);font-size:var(--fd-font-size-sm);margin-top:var(--fd-gap-sm)}.x-step .step-line{background-color:var(--fd-color-split);display:inline-block;position:absolute}.x-step .step-line .step-line-inner{border-style:solid;border-width:1px;display:block;width:100%}.x-step .step-icon{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:inline-flex;height:var(--fd-control-height);justify-content:center;position:relative;width:var(--fd-control-height)}.x-step .step-icon .step-icon-inner{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle}.x-step.is-vertical{flex-direction:column}.x-step.is-vertical .step{display:block}.x-step.is-vertical .step .step-line{bottom:0;left:calc(var(--fd-control-height)/2 - 1px);margin:var(--fd-gap) 0;top:var(--fd-control-height)}.x-step.is-vertical .step .step-main{display:inline-block;margin-left:var(--fd-gap)}.x-step.is-vertical .step .step-main .step-title{line-height:var(--fd-control-height)}.x-step.is-vertical .step:last-child{flex-basis:0!important}.x-step.is-vertical .step.is-finish .step-line-inner{height:100%}.x-step.is-vertical .step-container{display:flex}.x-step.is-vertical .step-container .step-main{flex:0 1 auto}.x-step.is-horizontal:not(.horizontal-label) .step .step-line{height:2px;left:var(--fd-control-height);margin:0 var(--fd-gap);right:0;top:calc(var(--fd-control-height)/2 - 1px)}.x-step.is-horizontal:not(.horizontal-label) .step .step-main{margin-top:var(--fd-gap-xl)}.x-step.is-horizontal:not(.horizontal-label) .step .step-main .step-description{line-height:var(--fd-line-height-sm);padding-right:30px}.x-step.is-horizontal:not(.horizontal-label) .step:last-child .step-main{padding-right:0}.x-step.auto-size .step{flex:1 1 0}.x-step.auto-size .step:last-child{flex:0 0 auto}.x-step.align-center:not(.horizontal-label) .step .step-line{left:50%;margin:0 var(--fd-padding-layout-xl);right:-50%}.x-step.align-center:not(.horizontal-label) .step .step-main{text-align:center}.x-step.align-center:not(.horizontal-label) .step .step-main .step-description{padding:0 var(--fd-padding-layout)}.x-step.align-center:not(.horizontal-label) .step:last-child{flex:0 1 auto}.x-step.align-center:not(.horizontal-label) .step-container{text-align:center}.x-step.horizontal-label .step:not(:first-child){padding-left:var(--fd-padding-layout)}.x-step.horizontal-label .step-container{line-height:32px;overflow:hidden;text-align:left;white-space:nowrap}.x-step.horizontal-label .step-container .step-icon{display:inline-block;line-height:32px;margin-right:var(--fd-gap);text-align:center}.x-step.horizontal-label .step-container .step-main{display:inline-block;margin-top:0;text-align:left;vertical-align:top}.x-step.horizontal-label .step-container .step-main .step-title{display:inline-block;padding-right:var(--fd-gap-2xl);position:relative}.x-step.horizontal-label .step-container .step-main .step-title .step-line{background-color:var(--fd-color-split);height:1px;left:0;margin-left:100%;position:absolute;top:16px;width:9999px}.x-step.horizontal-label .step-container .step-main .step-title .step-line.only-line{margin-left:50%}.x-step.horizontal-label .step-container .step-main .step-title:after{content:"";display:inline-block}.x-step.horizontal-label .step-container .step-main .step-title.last-title{padding-right:0}.x-step.horizontal-label .step-container .step-main .step-description{line-height:var(--fd-line-height-sm);margin-top:var(--fd-gap);max-width:140px;padding:0;white-space:normal}.x-step.horizontal-label .is-finish .step-container .step-main .step-title .step-line{background-color:var(--fd-color-primary)}.x-step.small .step-container{line-height:var(--fd-line-height)}.x-step.small .step-container,.x-step.small .step-container.is-icon{font-size:var(--fd-font-size-sm)}.x-step.small .step-container.is-icon .step-icon{font-size:24px;height:24px;line-height:var(--fd-line-height);width:24px}.x-step.small .step-main{font-size:var(--fd-font-size)}.x-step.small .step-icon{height:24px;width:24px}.x-step.small.is-horizontal:not(.horizontal-label) .step .step-line{height:2px;left:24px;top:11px}.x-step.small.align-center:not(.horizontal-label) .step .step-line{left:50%;margin:0 var(--fd-padding-layout-lg);right:-50%}.x-step.small.horizontal-label .step-container,.x-step.small.horizontal-label .step-container .step-icon{line-height:24px}.x-step.small.horizontal-label .step-container .step-main .step-title .step-line{top:12px}.x-step.small.horizontal-label .step-container .step-main .step-description{max-width:140px}.x-table{color:#141e31;font-size:13px;line-height:normal}.x-table *,.x-table :after,.x-table :before{box-sizing:border-box}.x-table.striped table tbody tr:nth-child(2n){background:#f5f6f8}.x-table.striped table tbody tr:hover{background:#f0f1f4}.x-table table{border-collapse:separate;border-spacing:0;width:100%}.x-table table thead{border-color:inherit;display:table-header-group}.x-table table thead th{background-color:#f5f6f8;border-bottom:1px solid #ebecee;border-top:1px solid #ebecee;padding:12px 10px;text-align:left;white-space:nowrap}.x-table table tbody{border-color:inherit;display:table-row-group}.x-table table tbody tr:hover{background:#f0f1f4}.x-table table tbody td{border-bottom:1px solid #ebecee;padding:12px 10px}.x-table.size-small td,.x-table.size-small th{padding:8px 10px}.x-table.size-large td,.x-table.size-large th{padding:16px 12px}.x-table.bordered{border-radius:3px;overflow:auto}.x-table.bordered td,.x-table.bordered th{border-right:1px solid #ebecee}.x-table.bordered td:first-child,.x-table.bordered th:first-child{border-left:1px solid #ebecee}.x-table.simple td,.x-table.simple th{border:none}.x-table td .fixed-width-cell-content,.x-table th .fixed-width-cell-content{overflow:hidden}.x-table td.patch-cell,.x-table th.patch-cell{border-left:none;border-right:none;min-width:0;padding:0;width:0}.x-table .x-table-check{margin:0}.x-table .x-table-check .check-label{-webkit-box-pack:center;-ms-flex-pack:center;display:flex;justify-content:center}.x-pagination-table .x-table-pagination{display:flex;flex-wrap:wrap;margin:var(--fd-gap) 0;row-gap:var(--fd-padding-xs)}.x-pagination-table .x-table-pagination>*{flex:none}.x-pagination-table .x-table-pagination-left{justify-content:flex-start}.x-pagination-table .x-table-pagination-center{justify-content:center}.x-pagination-table .x-table-pagination-right{justify-content:flex-end}.x-tab{color:var(--fd-color-text)}.x-tab *,.x-tab :after,.x-tab :before{box-sizing:border-box}.x-tab ol,.x-tab ul{margin:0;padding:0}.x-tab li{list-style-type:none}.x-tab .tab-header{display:flex;font-size:var(--fd-font-size);overflow:hidden;position:relative}.x-tab .tab-header .tab-header-box{flex:1 1 auto;height:100%;overflow:hidden}.x-tab .tab-header .tab-header-wrapper{height:100%;transition:transform .2s ease;white-space:nowrap}.x-tab .tab-header .tab-header-wrapper .tab-header-item{color:var(--fd-color-text);cursor:pointer;font-size:var(--fd-font-size);line-height:var(--fd-line-height);overflow:hidden;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-tab .tab-header .tab-header-wrapper .tab-header-item i{font-size:var(--fd-font-size-lg);margin-right:var(--fd-gap-sm)}.x-tab .tab-header .tab-header-wrapper .tab-header-item .tab-header-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-tab .tab-header .tab-header-wrapper .tab-header-item .tab-header-content .tab-content-inner{align-items:center;display:flex}.x-tab .tab-header .tab-header-wrapper .tab-header-item .tab-header-content .tab-content-inner .inner-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-tab .tab-header .tab-header-wrapper .tab-header-item.disabled{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-tab .tab-header .tab-header-wrapper .tab-header-item.tab-header-active,.x-tab .tab-header .tab-header-wrapper .tab-header-item:not(.disabled):hover{color:var(--fd-color-primary)}.x-tab.theme-default .tab-header-wrapper .tab-header-item:before{background:var(--fd-color-primary);content:"";display:block;position:absolute;transform:scaleY(0)}.x-tab.theme-default .tab-header-wrapper .tab-header-item.tab-header-active:before{transform:scaleY(1)}.x-tab.horizontal-tab .tab-header{border-bottom:1px solid var(--fd-color-border)}.x-tab.horizontal-tab .tab-header .tab-extra-content{-webkit-box-flex:0;align-items:center;display:flex;flex:none;margin-left:var(--fd-gap-2xl)}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow{background:var(--fd-color-bg-container);color:var(--fd-color-text);cursor:pointer;font-size:var(--fd-font-size-lg);width:30px}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow,.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow .arrow-icon{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow .arrow-icon{height:24px;width:24px}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow.prev{left:0}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow.next{right:0}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow:not(.disabled):hover .arrow-icon{background:var(--fd-color-bg-text-hover);border-radius:var(--fd-border-radius)}.x-tab.horizontal-tab .tab-header.has-arrow .tab-arrow.disabled{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-tab.horizontal-tab .tab-header .tab-header-wrapper .tab-header-item{align-items:center;display:inline-flex;height:100%;max-width:300px;padding:var(--fd-padding-lg) 12px;transition:color .2s}.x-tab.horizontal-tab.theme-default .tab-header-wrapper .tab-header-item:before{bottom:0;height:2px;left:12px;opacity:0;right:12px;transform-origin:bottom;transition:all .3s ease-in}.x-tab.horizontal-tab.theme-default .tab-header-wrapper .tab-header-item.tab-header-active:before{opacity:1;transition:all .3s ease-out}.x-tab.horizontal-tab.theme-modern>.tab-header .tab-header-wrapper{padding:var(--fd-padding-layout-2xs) 0}.x-tab.horizontal-tab.theme-modern>.tab-header .tab-header-wrapper .tab-header-item{background:var(--fd-color-bg-container);border:1px solid var(--fd-color-border);border-radius:64px;height:var(--fd-control-height);margin:0 calc(var(--fd-gap-xl)/2);padding:0 var(--fd-padding-xl);transition:all .2s ease}.x-tab.horizontal-tab.theme-modern>.tab-header .tab-header-wrapper .tab-header-item:before{display:none}.x-tab.horizontal-tab.theme-modern>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled):hover{border-color:var(--fd-color-primary)}.x-tab.horizontal-tab.theme-modern>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active{background:var(--fd-color-primary);border-color:var(--fd-color-primary);color:#fff}.x-tab.horizontal-tab.theme-classic>.tab-header{border-bottom:none}.x-tab.horizontal-tab.theme-classic>.tab-header:before{background:var(--fd-color-border-secondary);bottom:0;content:"";display:block;height:1px;left:0;position:absolute;right:0}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-header-wrapper{align-items:flex-end;display:flex;padding-top:var(--fd-padding-layout-2xs)}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-header-wrapper .tab-header-item{-webkit-box-flex:0;background:var(--fd-color-fill-alter);border:1px solid var(--fd-color-border-secondary);border-radius:var(--fd-border-radius-lg) var(--fd-border-radius-lg) 0 0;flex:none;margin:0 var(--fd-gap-xs);padding:var(--fd-padding) var(--fd-padding-xl);transition:all .2s ease}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-header-wrapper .tab-header-item:before{display:none}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled):hover{color:var(--fd-color-primary)}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active{background:var(--fd-color-bg-container);border-bottom:1px solid #fff;color:var(--fd-color-primary)}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-arrow.prev{box-shadow:5px 0 9px #fff}.x-tab.horizontal-tab.theme-classic>.tab-header .tab-arrow.next{box-shadow:-5px 0 9px #fff}.x-tab.horizontal-tab.theme-segment>.tab-header{background:var(--fd-color-fill-alter);border-bottom:none;border-radius:var(--fd-border-radius);box-shadow:none;height:var(--fd-control-height)}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper{display:flex;padding:var(--fd-padding-layout-3xs)}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .segment-animate-dot{background:var(--fd-color-bg-container);border-radius:var(--fd-border-radius-sm);bottom:var(--fd-padding-layout-3xs);box-shadow:0 6px 18px #1f2d3d0f,0 3px 9px #1f2d3d1a;content:"";left:0;margin-left:var(--fd-padding-layout-3xs);position:absolute;top:var(--fd-padding-layout-3xs);transition:left .24s ease-in;z-index:-1}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .tab-header-item{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-flex:1;align-items:center;background:transparent;border-radius:var(--fd-padding-lg);display:flex;flex:auto;justify-content:center;max-width:none;padding:0 var(--fd-padding-lg);width:100%}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .tab-header-item:before{display:none}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled):hover{color:var(--fd-color-primary)}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active{background:inherit}.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .tab-header-item:not(.x-tab.horizontal-tab.theme-segment>.tab-header .tab-header-wrapper .tab-header-item:first-child){margin-left:4px}.x-tab.horizontal-tab.theme-cube>.tab-header{border-bottom:none}.x-tab.horizontal-tab.theme-cube>.tab-header:before{background:var(--fd-color-border-secondary);bottom:0;content:"";display:block;height:1px;left:0;position:absolute;right:0}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper{align-items:flex-end;display:flex}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item{flex:none;padding:var(--fd-padding-xs) var(--fd-padding-xl)}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item .tab-header-content{padding:var(--fd-padding-2xs) var(--fd-padding-xl)}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item:after{background:var(--fd-color-split);bottom:0;content:"";height:18px;left:0;margin:auto;position:absolute;top:0;width:1px}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled,.tab-header-active):hover{color:var(--fd-color-primary)}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled,.tab-header-active):hover:before{background-color:var(--fd-control-item-bg-hover);border-radius:var(--fd-border-radius-sm);bottom:var(--fd-padding-2xs);content:"";left:var(--fd-padding-2xs);position:absolute;right:var(--fd-padding-2xs);top:var(--fd-padding-2xs)}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item:first-child:after,.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled,.tab-header-active):hover+.tab-header-item:after,.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item:not(.disabled,.tab-header-active):hover:after{content:none}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active{background-color:var(--fd-color-bg-container);background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTI0IDM0Yy02IDAtOC03LjkzMy0xMC0xN1MxMCAwIDAgMHYzNGgyNHoiLz48cGF0aCBzdHJva2U9IiNFREVGRjMiIGQ9Ik0wIC41QzEwIC41IDEyIDguMiAxNCAxN3M0IDE2LjUgMTAgMTYuNSIvPjwvc3ZnPg==),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMzRjNiAwIDgtNy45MzMgMTAtMTdTMTQgMCAyNCAwdjM0SDB6Ii8+PHBhdGggc3Ryb2tlPSIjRURFRkYzIiBkPSJNMjQgLjVDMTQgLjUgMTIgOC4yIDEwIDE3UzYgMzMuNSAwIDMzLjUiLz48L3N2Zz4=),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MiIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMGg0MnYzNEgwVjB6Ii8+PHBhdGggZmlsbD0iI0VERUZGMyIgZD0iTTAgMWg0MnYtMkgwdjJ6IiBtYXNrPSJ1cmwoI3ByZWZpeF9fcGF0aC0xLWluc2lkZS0xXzQzXzY4MykiLz48L3N2Zz4=);background-position:100% 100%,0 100%,top;background-repeat:no-repeat;background-size:28px 100%,28px 100%,calc(100% - 54px) 100%}.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active+.tab-header-item:after,.x-tab.horizontal-tab.theme-cube>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active:after{content:none}.x-tab.horizontal-tab.theme-cube>.tab-header:not(.has-arrow) .tab-header-wrapper .tab-header-item:first-child{padding-left:0}.x-tab.horizontal-tab.theme-cube>.tab-header:not(.has-arrow) .tab-header-wrapper .tab-header-item:last-child{padding-right:0}.x-tab.horizontal-tab.theme-cube>.tab-header:not(.has-arrow) .tab-header-wrapper .tab-header-item.tab-header-active:first-child{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTI0IDM0Yy02IDAtOC03LjkzMy0xMC0xN1MxMCAwIDAgMHYzNGgyNHoiLz48cGF0aCBzdHJva2U9IiNFREVGRjMiIGQ9Ik0wIC41QzEwIC41IDEyIDguMiAxNCAxN3M0IDE2LjUgMTAgMTYuNSIvPjwvc3ZnPg==),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMzRDMCAxNS42OTIgMCAwIDEyIDB2MzRIMHoiLz48cGF0aCBzdHJva2U9IiNFREVGRjMiIGQ9Ik0xMiAuNUMuNS41LjUgMTQuMjk0LjUgMzQiLz48L3N2Zz4=),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MiIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMGg0MnYzNEgwVjB6Ii8+PHBhdGggZmlsbD0iI0VERUZGMyIgZD0iTTAgMWg0MnYtMkgwdjJ6IiBtYXNrPSJ1cmwoI3ByZWZpeF9fcGF0aC0xLWluc2lkZS0xXzQzXzY4MykiLz48L3N2Zz4=);background-position:100% 100%,0 100%,11px top;background-size:28px 100%,12px 100%,calc(100% - 38px) 100%}.x-tab.horizontal-tab.theme-cube>.tab-header:not(.has-arrow) .tab-header-wrapper .tab-header-item.tab-header-active:last-child{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTEyIDM0QzEyIDE1LjY5MiAxMiAwIDAgMHYzNGgxMnoiLz48cGF0aCBzdHJva2U9IiNFREVGRjMiIGQ9Ik0wIC41QzExLjUuNSAxMS41IDE0LjI5NCAxMS41IDM0Ii8+PC9zdmc+),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMzRjNiAwIDgtNy45MzMgMTAtMTdTMTQgMCAyNCAwdjM0SDB6Ii8+PHBhdGggc3Ryb2tlPSIjRURFRkYzIiBkPSJNMjQgLjVDMTQgLjUgMTIgOC4yIDEwIDE3UzYgMzMuNSAwIDMzLjUiLz48L3N2Zz4=),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MiIgaGVpZ2h0PSIzNCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMGg0MnYzNEgwVjB6Ii8+PHBhdGggZmlsbD0iI0VERUZGMyIgZD0iTTAgMWg0MnYtMkgwdjJ6IiBtYXNrPSJ1cmwoI3ByZWZpeF9fcGF0aC0xLWluc2lkZS0xXzQzXzY4MykiLz48L3N2Zz4=);background-position:100% 100%,0 100%,26px top;background-size:12px 100%,28px 100%,calc(100% - 38px) 100%}.x-tab.horizontal-tab.is-stretch>.tab-header .tab-header-wrapper{display:flex}.x-tab.horizontal-tab.is-stretch>.tab-header .tab-header-wrapper .tab-header-item{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-flex:1;align-items:center;display:flex;flex:auto;justify-content:center;max-width:none;width:100%}.x-tab.horizontal-tab.is-stretch>.tab-header .tab-header-wrapper .tab-header-item:before{left:0;right:0}.x-tab.vertical-tab{display:flex;position:relative}.x-tab.vertical-tab>.tab-header{-webkit-box-flex:0;border-bottom:none;box-shadow:1px 0 3px #0000001a;flex:none;height:auto!important;width:250px}.x-tab.vertical-tab>.tab-header .tab-header-wrapper{position:static}.x-tab.vertical-tab>.tab-header .tab-header-wrapper .tab-header-item{background:transparent;display:block;height:var(--fd-control-height-lg);line-height:var(--fd-control-height-lg);max-width:none;padding:0 var(--fd-padding-xl);transition:background .1s ease-out}.x-tab.vertical-tab>.tab-header .tab-header-wrapper .tab-header-item:before{bottom:auto;height:100%!important;left:0;top:0;transform:scaleY(0);transform-origin:center;transition-duration:.1s;width:2px}.x-tab.vertical-tab>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active{background-color:var(--fd-color-primary-bg)}.x-tab.vertical-tab>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active:before{transform:scaleY(1);transition-duration:.1s}.x-tab.vertical-tab .x-tab-content{flex:auto}.x-tab.size-large>.tab-header .tab-header-wrapper .tab-header-item{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg);padding:var(--fd-padding-xl) 12px}.x-tab.size-large>.tab-header .tab-header-wrapper .tab-header-item .tab-header-content i{font-size:var(--fd-font-size-xl)}.x-tab.size-large>.tab-header .tab-header-wrapper .tab-header-item.tab-header-active{color:var(--fd-color-primary)}.x-tab.size-large.theme-modern>.tab-header .tab-header-wrapper .tab-header-item{height:var(--fd-control-height-lg);margin:0 var(--fd-gap)}.x-tab.size-large.theme-segment>.tab-header{border-radius:var(--fd-border-radius-lg);height:var(--fd-control-height-lg)}.x-tab.size-large.theme-segment>.tab-header .tab-header-wrapper .segment-animate-dot{border-radius:var(--fd-border-radius)}.x-tab.size-large.theme-cube>.tab-header .tab-header-wrapper .tab-header-item .tab-header-content{padding:var(--fd-padding-xs) var(--fd-padding-xl)}.x-tab.size-large.vertical-tab>.tab-header .tab-header-item{line-height:var(--fd-control-height-lg);padding:0 var(--fd-padding-2xl)}.x-tab.size-small>.tab-header .tab-header-wrapper .tab-header-item{padding:var(--fd-padding) 12px}.x-tab.size-small.theme-modern>.tab-header .tab-header-wrapper .tab-header-item{font-size:var(--fd-font-size-sm);height:var(--fd-control-height-sm);line-height:var(--fd-line-height-sm);margin:0 var(--fd-gap-sm)}.x-tab.size-small.theme-modern>.tab-header .tab-header-wrapper .tab-header-item i{font-size:var(--fd-font-size)}.x-tab.size-small.theme-cube>.tab-header .tab-header-wrapper .tab-header-item{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);padding:var(--fd-padding-2xs) var(--fd-padding-xl)}.x-tab.size-small.theme-cube>.tab-header .tab-header-wrapper .tab-header-item i{font-size:var(--fd-font-size)}.x-tab.size-small.theme-classic>.tab-header .tab-header-wrapper .tab-header-item{padding:var(--fd-padding-xs) var(--fd-padding-xl)}.x-tab.size-small.theme-segment>.tab-header{border-radius:var(--fd-border-radius-sm);height:var(--fd-control-height-sm)}.x-tab.size-small.theme-segment>.tab-header .tab-header-wrapper .tab-header-item{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-tab.size-small.vertical-tab>.tab-header .tab-header-wrapper .tab-header-item{line-height:var(--fd-control-height-lg);padding:0 var(--fd-padding-lg)}.x-popover-wrapper.tab-hide-popover-wrapper{background:var(--fd-color-bg-container);border-radius:var(--fd-border-radius-lg);color:var(--fd-color-text);font-size:var(--fd-font-size);line-height:var(--fd-line-height);max-height:240px;max-width:320px;min-width:120px;overflow-y:auto;padding:var(--fd-padding-layout-2xs)}.x-popover-wrapper.tab-hide-popover-wrapper .tab-hide-popover-list{display:flex;flex-direction:column}.x-popover-wrapper.tab-hide-popover-wrapper .tab-hide-popover-list .tab-hide-popover-item{border-radius:var(--fd-border-radius-sm);cursor:pointer;overflow:hidden;padding:var(--fd-padding-xs) var(--fd-padding-lg);text-overflow:ellipsis;transition:all .2s;white-space:nowrap}.x-popover-wrapper.tab-hide-popover-wrapper .tab-hide-popover-list .tab-hide-popover-item:not(.disabled){cursor:pointer}.x-popover-wrapper.tab-hide-popover-wrapper .tab-hide-popover-list .tab-hide-popover-item:not(.disabled):hover{background:var(--fd-control-item-bg-hover)}.x-popover-wrapper.tab-hide-popover-wrapper .tab-hide-popover-list .tab-hide-popover-item.disabled{background:var(--fd-color-bg-container);color:var(--fd-color-text-disabled)!important;cursor:not-allowed}.x-menu,.x-popover-wrapper.tab-hide-popover-wrapper .tab-hide-popover-list .tab-hide-popover-item.disabled:hover{background:var(--fd-color-bg-container)}.x-menu{border-radius:var(--fd-border-radius-lg);color:var(--fd-color-text);font-size:var(--fd-font-size);line-height:var(--fd-line-height);padding:var(--fd-padding-layout-2xs)}.x-menu *,.x-menu :after,.x-menu :before{box-sizing:border-box}.x-menu ol,.x-menu ul{margin:0;padding:0}.x-menu li{list-style-type:none}.x-menu .x-divider{margin:var(--fd-gap) var(--fd-padding)!important;width:calc(100% - var(--fd-padding)*2)!important}.x-menu .x-menu-item{align-items:center;border-radius:var(--fd-border-radius-sm);cursor:pointer;display:flex;height:var(--fd-control-height);padding:0 var(--fd-padding);transition:all .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-menu .x-menu-item:not(.disabled):hover{background:var(--fd-color-bg-text-hover)}.x-menu .x-menu-item:not(.disabled):active{background:var(--fd-color-bg-text-active)}.x-menu .x-menu-item.custom-content{height:auto;min-height:var(--fd-control-height)}.x-menu .x-menu-item.custom-content:hover{background:inherit;cursor:default}.x-menu .x-menu-item .item-icon{-webkit-box-flex:0;color:var(--fd-color-icon-normal);display:inline-block;flex:none;font-size:var(--fd-icon-size);margin-right:var(--fd-gap-sm)}.x-menu .x-menu-item .item-label{flex:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-menu .x-menu-item .check-icon{color:var(--fd-color-primary)}.x-menu .x-menu-item .expand-icon{color:var(--fd-color-icon-normal)}.x-menu .x-menu-item .check-icon,.x-menu .x-menu-item .expand-icon{flex:none;font-size:var(--fd-icon-size);padding-left:var(--fd-gap-sm)}.x-menu .x-menu-item.disabled{cursor:not-allowed}.x-menu .x-menu-item.disabled .check-icon,.x-menu .x-menu-item.disabled .expand-icon,.x-menu .x-menu-item.disabled .item-icon,.x-menu .x-menu-item.disabled .item-label{color:var(--fd-color-text-disabled)}.x-sub-menu .x-menu{box-shadow:none}.x-breadcrumb,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper{color:var(--fd-color-text-description);display:flex;font-size:var(--fd-font-size);line-height:var(--fd-line-height);list-style:none}.x-breadcrumb ol,.x-breadcrumb ul,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper ol,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper ul{margin:0;padding:0}.x-breadcrumb li,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper li{list-style-type:none}.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper.overflow-auto,.x-breadcrumb.overflow-auto{overflow:hidden;overflow-x:auto;scrollbar-width:none}.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper.overflow-auto::-webkit-scrollbar,.x-breadcrumb.overflow-auto::-webkit-scrollbar{display:none}.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper.disabled .breadcrumb-item-label,.x-breadcrumb.disabled .breadcrumb-item-label{color:var(--fd-color-text-disabled);cursor:default}.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper.disabled .breadcrumb-item-label:hover,.x-breadcrumb.disabled .breadcrumb-item-label:hover{background-color:transparent;color:var(--fd-color-text-disabled)}.x-breadcrumb .breadcrumb-item-label,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-label{border-radius:var(--fd-border-radius-sm);cursor:pointer;display:inline-block;height:var(--fd-line-height);overflow:hidden;padding:0 var(--fd-padding-xs);text-overflow:ellipsis;transition:color .2s;white-space:nowrap}.x-breadcrumb .breadcrumb-item-label:hover,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-label:hover{background-color:var(--fd-color-bg-text-hover);color:var(--fd-color-text)}.x-breadcrumb .breadcrumb-item-link,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-link{color:var(--fd-color-text-description);outline:none;text-decoration:none}.x-breadcrumb .breadcrumb-item-link:hover,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-link:hover{color:var(--fd-color-text)}.x-breadcrumb .breadcrumb-item-inner,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-inner{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-breadcrumb .breadcrumb-item-inner span+span,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-inner span+span{margin-left:var(--fd-gap-sm)}.x-breadcrumb .separator,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .separator{color:var(--fd-color-text-description);margin-left:var(--fd-gap-xs)}.x-breadcrumb .more,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .more{display:flex}.x-breadcrumb .breadcrumb-item-wrapper,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-wrapper{color:var(--fd-color-text-description);display:flex}.x-breadcrumb .breadcrumb-item-wrapper.mark:last-child,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-wrapper.mark:last-child{color:var(--fd-color-text)}.x-breadcrumb .breadcrumb-item-wrapper.collapse,.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper .breadcrumb-item-wrapper.collapse{color:var(--fd-color-text-description)}.x-breadcrumb-collapse-popover .breadcrumb-collapse-wrapper{flex-wrap:wrap}.x-tag{align-items:flex-start;background:var(--fd-color-fill-quaternary);border:1px solid var(--fd-color-transparent);border-radius:12px;color:var(--fd-color-text);cursor:pointer;display:inline-flex;font-size:var(--fd-font-size);line-height:var(--fd-line-height);max-width:100%;overflow:hidden;padding:0 var(--fd-padding-sm);transform-origin:left;white-space:nowrap}.x-tag *,.x-tag :after,.x-tag :before{box-sizing:border-box}.x-tag.is-rounded-rec{border-radius:var(--fd-border-radius)}.x-tag.has-border{border-color:var(--fd-color-border)}.x-tag .text-wrapper{display:inline-block;max-width:100%}.x-tag.single-line{align-items:center}.x-tag.single-line .text-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-tag.multi-line .text-wrapper{word-wrap:break-word;white-space:normal;word-break:break-word}.x-tag .tag-prefix{font-size:var(--fd-icon-size);margin-right:var(--fd-gap-sm)}.x-tag .tag-close{color:var(--fd-color-icon-normal);font-size:var(--fd-icon-size-2sm);margin-left:var(--fd-gap-sm)}.x-tag .tag-close:hover{color:var(--fd-color-icon-hover)}.x-tag .tag-close:active{color:var(--fd-color-icon-active)}.x-tag.x-tag-appear,.x-tag.x-tag-enter{animation:x-zoom-in-big .2s ease;animation-fill-mode:forwards}.x-tag.x-tag-exit{animation:x-zoom-by-size .2s ease-in reverse;animation-fill-mode:forwards}.x-tag.small{border-radius:10px;font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);padding:0 var(--fd-padding-xs)}.x-tag.small .tag-prefix{font-size:var(--fd-icon-size-sm)}.x-tag.small .tag-close{font-size:var(--fd-icon-size-2sm)}.x-tag.small.is-rounded-rec{border-radius:var(--fd-border-radius)}.x-tag.large{border-radius:15px;font-size:var(--fd-font-size);line-height:var(--fd-line-height);padding:var(--fd-padding-layout-2xs) var(--fd-padding)}.x-tag.large .tag-close,.x-tag.large .tag-prefix{font-size:var(--fd-icon-size)}.x-tag.large.is-rounded-rec{border-radius:var(--fd-border-radius)}.x-tag.success{background:var(--fd-color-success-bg);border-color:var(--fd-color-success-bg);color:var(--fd-color-success)}.x-tag.success.has-border{border-color:var(--fd-color-success-border)}.x-tag.success .tag-close{color:var(--fd-color-success)}.x-tag.success .tag-close:hover{color:var(--fd-color-success-hover)}.x-tag.success .tag-close:active{color:var(--fd-color-success-active)}.x-tag.warning{background:var(--fd-color-warning-bg);border-color:var(--fd-color-warning-bg);color:var(--fd-color-warning)}.x-tag.warning.has-border{border-color:var(--fd-color-warning-border)}.x-tag.warning .tag-close{color:var(--fd-color-warning)}.x-tag.warning .tag-close:hover{color:var(--fd-color-warning-hover)}.x-tag.warning .tag-close:active{color:var(--fd-color-warning-active)}.x-tag.error{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-bg);color:var(--fd-color-error)}.x-tag.error.has-border{border-color:var(--fd-color-error-border)}.x-tag.error .tag-close{color:var(--fd-color-error)}.x-tag.error .tag-close:hover{color:var(--fd-color-error-hover)}.x-tag.error .tag-close:active{color:var(--fd-color-error-active)}.x-tag.info{background:var(--fd-color-info-bg);border-color:var(--fd-color-info-bg);color:var(--fd-color-info)}.x-tag.info.has-border{border-color:var(--fd-color-info-border)}.x-tag.info .tag-close{color:var(--fd-color-info)}.x-tag.info .tag-close:hover{color:var(--fd-color-info-hover)}.x-tag.info .tag-close:active{color:var(--fd-color-info-active)}.x-tooltip{display:block;position:absolute}.x-tooltip *,.x-tooltip :after,.x-tooltip :before{box-sizing:border-box}.x-tooltip-hidden{display:none}.x-tooltip-popper{word-wrap:break-word;background:var(--fd-color-bg-elevated);border-radius:var(--fd-border-radius);box-shadow:var(--fd-box-shadow-secondary);color:var(--fd-color-text);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);max-width:400px;padding:var(--fd-tooltip-padding-layout-2xs) var(--fd-tooltip-padding-layout-xs);word-break:break-word}.x-tooltip-popper a[href]{color:var(--fd-color-link);text-decoration:underline}.x-tooltip-popper .tooltip-content{transform:translateZ(0)}.x-tooltip-popper.dark{color:var(--fd-color-text-light-solid)}.x-tooltip-popper.dark,.x-tooltip-popper.dark .tooltip-arrow:before{background:var(--fd-color-bg-spotlight)}.x-tooltip-popper.color .tooltip-arrow:before{background:var(--fd-tooltip-color-arrow)}.x-tooltip-popper.no-padding{padding:0}.x-tooltip .tooltip-arrow{display:block;height:12px;overflow:hidden;pointer-events:none;position:absolute;width:12px;z-index:1}.x-tooltip .tooltip-arrow.no-arrow{display:none!important}.x-tooltip .tooltip-arrow:before{background:var(--fd-color-bg-elevated);bottom:0;clip-path:polygon(1.65685425px 100%,50% 1.65685425px,10.34314575px 100%,1.65685425px 100%);clip-path:path("M 0 6 A 4 4 0 0 0 2.82842712474619 4.82842712474619 L 4.585786437626905 3.0710678118654755 A 2 2 0 0 1 7.414213562373095 3.0710678118654755 L 9.17157287525381 4.82842712474619 A 4 4 0 0 0 12 6 Z");content:"";height:6px;inset-inline-start:0;position:absolute;width:12px}.x-tooltip .tooltip-arrow:after{background:transparent;border-radius:0 0 2px;bottom:0;box-shadow:2px 2px 5px #0000000d;content:"";height:6.14213562px;inset-inline:0;margin:auto;position:absolute;transform:translateY(50%) rotate(-135deg);width:6.14213562px;z-index:0}.x-tooltip.placement-top .tooltip-arrow,.x-tooltip.placement-top-left .tooltip-arrow,.x-tooltip.placement-top-right .tooltip-arrow{bottom:0;transform:translateY(100%) rotate(180deg)}.x-tooltip.placement-top .tooltip-arrow{left:50%;transform:translate(-50%) translateY(100%) rotate(180deg)}.x-tooltip.placement-top-left .tooltip-arrow{left:8px}.x-tooltip.placement-top-right .tooltip-arrow{right:8px}.x-tooltip.placement-bottom .tooltip-arrow,.x-tooltip.placement-bottom-left .tooltip-arrow,.x-tooltip.placement-bottom-right .tooltip-arrow{top:0;transform:translateY(-100%)}.x-tooltip.placement-bottom .tooltip-arrow{left:50%;transform:translate(-50%) translateY(-100%)}.x-tooltip.placement-bottom-left .tooltip-arrow{left:8px}.x-tooltip.placement-bottom-right .tooltip-arrow{right:8px}.x-tooltip.placement-left .tooltip-arrow,.x-tooltip.placement-left-bottom .tooltip-arrow,.x-tooltip.placement-left-top .tooltip-arrow{right:0;transform:translate(100%) rotate(90deg)}.x-tooltip.placement-left .tooltip-arrow{top:50%;transform:translateY(-50%) translate(100%) rotate(90deg)}.x-tooltip.placement-left-top .tooltip-arrow{top:8px}.x-tooltip.placement-left-bottom .tooltip-arrow{bottom:8px}.x-tooltip.placement-right .tooltip-arrow,.x-tooltip.placement-right-bottom .tooltip-arrow,.x-tooltip.placement-right-top .tooltip-arrow{left:0;transform:translate(-100%) rotate(-90deg)}.x-tooltip.placement-right .tooltip-arrow{top:50%;transform:translateY(-50%) translate(-100%) rotate(-90deg)}.x-tooltip.placement-right-top .tooltip-arrow{top:8px}.x-tooltip.placement-right-bottom .tooltip-arrow{bottom:8px}.x-tooltip-top-appear,.x-tooltip-top-enter{animation:x-move-bottom-small .2s ease;animation-fill-mode:forwards}.x-tooltip-top-exit{animation:x-move-bottom-small .1s ease-in reverse;animation-fill-mode:forwards}.x-tooltip-right-appear,.x-tooltip-right-enter{animation:x-move-left-small .2s ease;animation-fill-mode:forwards}.x-tooltip-right-exit{animation:x-move-left-small .1s ease-in reverse;animation-fill-mode:forwards}.x-tooltip-bottom-appear,.x-tooltip-bottom-enter{animation:x-move-top-small .2s ease;animation-fill-mode:forwards}.x-tooltip-bottom-exit{animation:x-move-top-small .1s ease-in reverse;animation-fill-mode:forwards}.x-tooltip-left-appear,.x-tooltip-left-enter{animation:x-move-right-small .2s ease;animation-fill-mode:forwards}.x-tooltip-left-exit{animation:x-move-right-small .1s ease-in reverse;animation-fill-mode:forwards}.x-popover{display:block;position:absolute}.x-popover *,.x-popover :after,.x-popover :before{box-sizing:border-box}.x-popover-wrapper{background:var(--fd-color-bg-elevated);border-radius:var(--fd-border-radius-lg);box-shadow:var(--fd-box-shadow-secondary);color:var(--fd-color-text);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);padding:var(--fd-padding-layout)}.x-popover-wrapper .popover-content{transform:translateZ(0)}.x-popover-wrapper.color .popover-arrow:before{background:var(--fd-tooltip-color-arrow)}.x-popover-wrapper.no-padding{padding:0}.x-popover .popover-arrow{display:block;height:12px;overflow:hidden;pointer-events:none;position:absolute;width:12px;z-index:1}.x-popover .popover-arrow.no-arrow{display:none!important}.x-popover .popover-arrow:before{background:#fff;bottom:0;clip-path:polygon(1.65685425px 100%,50% 1.65685425px,10.34314575px 100%,1.65685425px 100%);clip-path:path("M 0 6 A 4 4 0 0 0 2.82842712474619 4.82842712474619 L 4.585786437626905 3.0710678118654755 A 2 2 0 0 1 7.414213562373095 3.0710678118654755 L 9.17157287525381 4.82842712474619 A 4 4 0 0 0 12 6 Z");content:"";height:6px;inset-inline-start:0;position:absolute;width:12px}.x-popover .popover-arrow:after{background:transparent;border-radius:0 0 2px;bottom:0;box-shadow:2px 2px 5px #0000000d;content:"";height:6.14213562px;inset-inline:0;margin:auto;position:absolute;transform:translateY(50%) rotate(-135deg);width:6.14213562px;z-index:0}.x-popover.placement-top .popover-arrow,.x-popover.placement-top-left .popover-arrow,.x-popover.placement-top-right .popover-arrow{bottom:0;transform:translateY(100%) rotate(180deg)}.x-popover.placement-top .popover-arrow{left:50%;transform:translate(-50%) translateY(100%) rotate(180deg)}.x-popover.placement-top-left .popover-arrow{left:8px}.x-popover.placement-top-right .popover-arrow{right:8px}.x-popover.placement-bottom .popover-arrow,.x-popover.placement-bottom-left .popover-arrow,.x-popover.placement-bottom-right .popover-arrow{top:0;transform:translateY(-100%)}.x-popover.placement-bottom .popover-arrow{left:50%;transform:translate(-50%) translateY(-100%)}.x-popover.placement-bottom-left .popover-arrow{left:8px}.x-popover.placement-bottom-right .popover-arrow{right:8px}.x-popover.placement-left .popover-arrow,.x-popover.placement-left-bottom .popover-arrow,.x-popover.placement-left-top .popover-arrow{right:0;transform:translate(100%) rotate(90deg)}.x-popover.placement-left .popover-arrow{top:50%;transform:translateY(-50%) translate(100%) rotate(90deg)}.x-popover.placement-left-top .popover-arrow{top:8px}.x-popover.placement-left-bottom .popover-arrow{bottom:8px}.x-popover.placement-right .popover-arrow,.x-popover.placement-right-bottom .popover-arrow,.x-popover.placement-right-top .popover-arrow{left:0;transform:translate(-100%) rotate(-90deg)}.x-popover.placement-right .popover-arrow{top:50%;transform:translateY(-50%) translate(-100%) rotate(-90deg)}.x-popover.placement-right-top .popover-arrow{top:8px}.x-popover.placement-right-bottom .popover-arrow{bottom:8px}.x-popover-top-appear,.x-popover-top-enter{animation:x-move-bottom-small .2s ease;animation-fill-mode:forwards}.x-popover-top-exit{animation:x-move-bottom-small .1s ease-in reverse;animation-fill-mode:forwards}.x-popover-right-appear,.x-popover-right-enter{animation:x-move-left-small .2s ease;animation-fill-mode:forwards}.x-popover-right-exit{animation:x-move-left-small .1s ease-in reverse;animation-fill-mode:forwards}.x-popover-bottom-appear,.x-popover-bottom-enter{animation:x-move-top-small .2s ease;animation-fill-mode:forwards}.x-popover-bottom-exit{animation:x-move-top-small .1s ease-in reverse;animation-fill-mode:forwards}.x-popover-left-appear,.x-popover-left-enter{animation:x-move-right-small .2s ease;animation-fill-mode:forwards}.x-popover-left-exit{animation:x-move-right-small .1s ease-in reverse;animation-fill-mode:forwards}.x-popup{z-index:1002}.x-popup.x-popup-hidden{display:none}.x-divider *,.x-divider :after,.x-divider :before{box-sizing:border-box}.x-divider-horizontal{border:solid var(--fd-color-split);border-width:1px 0 0;margin:24px 0;width:100%}.x-divider-vertical{border:solid var(--fd-color-split);border-width:0 0 0 1px;display:inline-block;height:.9em;margin:0 15px;vertical-align:middle}.x-divider-dashed{border-style:dashed}.x-upload{display:inline-block}.x-upload *,.x-upload :after,.x-upload :before{box-sizing:border-box}.x-upload .upload-form,.x-upload .upload-input{display:none}.x-instruction{border-radius:var(--fd-border-radius-lg);color:var(--fd-color-text);display:flex;font-size:var(--fd-font-size);line-height:var(--fd-line-height);padding:var(--fd-padding-layout-xs) var(--fd-padding-layout-sm);position:relative}.x-instruction *,.x-instruction :after,.x-instruction :before{box-sizing:border-box}.x-instruction .x-instruction-content{flex:1;min-width:0}.x-instruction .x-instruction-icon{font-size:var(--fd-icon-size);margin-right:var(--fd-gap)}.x-instruction .x-instruction-description{display:none}.x-instruction .x-instruction-close-icon{align-self:flex-start;background-color:transparent;color:var(--fd-color-icon);cursor:pointer;font-size:var(--fd-icon-size);margin-left:var(--fd-gap);overflow:hidden;padding:0}.x-instruction .x-instruction-close-icon:hover{color:var(--fd-color-icon-hover)}.x-instruction.x-instruction-success{background-color:var(--fd-color-success-bg)}.x-instruction.x-instruction-success.x-instruction-border{border:1px solid var(--fd-color-success-border)}.x-instruction.x-instruction-success .x-instruction-icon{color:var(--fd-color-success)}.x-instruction.x-instruction-warning{background-color:var(--fd-color-warning-bg)}.x-instruction.x-instruction-warning.x-instruction-border{border:1px solid var(--fd-color-warning-border)}.x-instruction.x-instruction-warning .x-instruction-icon{color:var(--fd-color-warning)}.x-instruction.x-instruction-info{background-color:var(--fd-color-info-bg)}.x-instruction.x-instruction-info.x-instruction-border{border:1px solid var(--fd-color-info-border)}.x-instruction.x-instruction-info .x-instruction-icon{color:var(--fd-color-info)}.x-instruction.x-instruction-error{background-color:var(--fd-color-error-bg)}.x-instruction.x-instruction-error.x-instruction-border{border:1px solid var(--fd-color-error-border)}.x-instruction.x-instruction-error .x-instruction-icon{color:var(--fd-color-error)}.x-instruction.x-instruction-with-description{align-items:flex-start}.x-instruction.x-instruction-with-description .x-instruction-message{color:var(--fd-color-text);display:block;font-weight:600;margin-bottom:calc(var(--fd-gap)/2)}.x-instruction.x-instruction-with-description .x-instruction-description{display:block;line-height:var(--fd-line-height)}.x-instruction.x-instruction-banner{border:none;border-radius:0;margin-bottom:0}.x-instruction.x-instruction-exit{opacity:1}.x-instruction.x-instruction-exit-active{opacity:0;overflow:hidden;padding-bottom:0;padding-top:0;transition:all .3s}.x-result{text-align:center}.x-result *,.x-result :after,.x-result :before{box-sizing:border-box}.x-result img{border:0;outline:none}.x-result .result-img{margin-bottom:var(--fd-gap-2xl)}.x-result .result-img>img{height:175px;vertical-align:middle}.x-result .result-icon{font-size:72px;line-height:0}.x-result .result-icon.success{color:var(--fd-color-success)}.x-result .result-icon.error{color:var(--fd-color-error)}.x-result .result-icon.warning{color:var(--fd-color-warning)}.x-result .result-icon.info{color:var(--fd-color-info)}.x-result .result-title{color:var(--fd-color-text-heading);font-size:var(--fd-font-size-xl);font-weight:600;line-height:var(--fd-line-height-xl);margin:0 auto var(--fd-gap);max-width:600px}.x-result .result-description{color:var(--fd-color-text-description);font-size:var(--fd-font-size);line-height:var(--fd-line-height);margin:0 auto;max-width:340px}.x-result .result-extra{margin-top:var(--fd-gap-2xl)}.x-result a{color:var(--fd-color-primary);cursor:pointer;text-decoration:underline}.x-result.size-middle .result-title{font-size:var(--fd-font-size-lg)}.x-result.size-middle .result-icon{font-size:64px;line-height:64px}.x-result.size-middle .result-img>img{height:80px}.x-result.size-middle .result-extra{margin-top:var(--fd-gap-2xl)}.x-result.size-small .result-img{margin-bottom:var(--fd-gap-2xl)}.x-result.size-small .result-img>img{height:60px}.x-result.size-small .result-icon{font-size:48px}.x-result.size-small .result-extra{margin-top:var(--fd-gap-2xl)}.x-result.size-small .result-title{font-size:var(--fd-font-size);margin:0 auto var(--fd-gap-2xl)}.x-result.size-small .result-description{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);max-width:200px}@keyframes x-toast-fade-out{0%{max-height:100px;opacity:1}to{margin-bottom:0;max-height:0;opacity:0}}.x-msg-toast-container{color:var(--fd-color-text);left:0;line-height:normal;pointer-events:none;position:fixed;right:0;text-align:center;top:20px;z-index:1005}.x-msg-toast{margin-bottom:10px}.x-msg-toast .x-msg-toast-content{word-wrap:break-word;background:var(--fd-color-bg-elevated);border:var(--fd-line-width) solid var(--fd-color-bg-elevated);border-radius:var(--fd-border-radius);box-shadow:var(--fd-box-shadow-tertiary);display:inline-flex;max-width:600px;min-width:100px;overflow:hidden;padding:var(--fd-padding-layout-xs) var(--fd-padding-layout-sm);position:relative;text-align:initial;word-break:break-word}.x-msg-toast .x-msg-toast-content .x-msg-toast-text{font-size:var(--fd-font-size);line-height:var(--fd-line-height)}.x-msg-toast .x-msg-toast-content .x-msg-toast-icon{align-items:center;display:flex;height:var(--fd-line-height);margin-right:var(--fd-gap)}.x-msg-toast .x-msg-toast-content .x-msg-toast-icon i{font-size:var(--fd-icon-size);line-height:var(--fd-icon-size)}.x-msg-toast .x-msg-toast-content.success .x-msg-toast-icon{color:var(--fd-color-success)}.x-msg-toast .x-msg-toast-content.warning .x-msg-toast-icon{color:var(--fd-color-warning)}.x-msg-toast .x-msg-toast-content.error .x-msg-toast-icon{color:var(--fd-color-error)}.x-msg-toast .x-msg-toast-content.info .x-msg-toast-icon{color:var(--fd-color-info);transform:rotate(180deg)}.x-msg-toast .x-msg-toast-content.loading .x-msg-toast-icon i{animation:x-rotate .8s cubic-bezier(.43,.1,.54,.85) infinite;border:2px solid var(--fd-color-success-3);border-radius:100%;border-top-color:var(--fd-color-success-6);display:inline-block;height:var(--fd-icon-size);transform-origin:center center;width:var(--fd-icon-size)}.x-msg-toast .x-msg-toast-content.colorful.success{background:var(--fd-color-success-bg);border-color:var(--fd-color-success-border)}.x-msg-toast .x-msg-toast-content.colorful.warning{background:var(--fd-color-warning-bg);border-color:var(--fd-color-warning-border)}.x-msg-toast .x-msg-toast-content.colorful.error{background:var(--fd-color-error-bg);border-color:var(--fd-color-error-border)}.x-msg-toast .x-msg-toast-content.colorful.info{background:var(--fd-color-info-bg);border-color:var(--fd-color-info-border)}.x-msg-toast .x-msg-toast-content.colorful.loading{background:var(--fd-color-bg-elevated);border-color:var(--fd-color-border)}.x-msg-toast.x-msg-toast-appear{animation:x-fade-down-large .2s ease;animation-fill-mode:forwards}.x-msg-toast.x-msg-toast-exit{animation:x-toast-fade-out .1s ease-out;animation-fill-mode:forwards}.x-msg-notification-container{line-height:normal;pointer-events:none;position:fixed;z-index:1004}.x-msg-notification-container.top-right{right:20px;top:65px}.x-msg-notification-container.top-right .x-msg-notification-appear,.x-msg-notification-container.top-right .x-msg-notification-exit{animation:x-fade-in-right .3s ease;animation-fill-mode:forwards}.x-msg-notification-container.top-right .x-msg-notification-exit{animation-direction:reverse}.x-msg-notification-container.top-left{left:20px;top:65px}.x-msg-notification-container.top-left .x-msg-notification-appear,.x-msg-notification-container.top-left .x-msg-notification-exit{animation:x-fade-in-left .3s ease;animation-fill-mode:forwards}.x-msg-notification-container.top-left .x-msg-notification-exit{animation-direction:reverse}.x-msg-notification-container.bottom-left{bottom:40px;left:20px}.x-msg-notification-container.bottom-left .x-msg-notification-appear,.x-msg-notification-container.bottom-left .x-msg-notification-exit{animation:x-fade-in-left .3s ease;animation-fill-mode:forwards}.x-msg-notification-container.bottom-left .x-msg-notification-exit{animation-direction:reverse}.x-msg-notification-container.bottom-right{bottom:40px;right:20px}.x-msg-notification-container.bottom-right .x-msg-notification-appear,.x-msg-notification-container.bottom-right .x-msg-notification-exit{animation:x-fade-in-right .3s ease;animation-fill-mode:forwards}.x-msg-notification-container.bottom-right .x-msg-notification-exit{animation-direction:reverse}.x-msg-notification{background:#fff;border-radius:var(--fd-border-radius-lg);box-shadow:var(--fd-box-shadow-tertiary);margin-bottom:10px;overflow:hidden;padding:var(--fd-padding-layout-lg);pointer-events:all;position:relative;width:400px}.x-msg-notification .close-btn{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border-radius:var(--fd-border-radius);color:var(--fd-color-text);cursor:pointer;display:flex;font-size:var(--fd-font-size);height:var(--fd-line-height-lg);justify-content:center;position:absolute;right:0;top:0;transition:color .2s ease;width:var(--fd-line-height-lg)}.x-msg-notification .close-btn:hover{background-color:var(--fd-color-bg-text-hover)}.x-msg-notification .x-msg-notification-main .notification-icon.success{color:var(--fd-color-success)}.x-msg-notification .x-msg-notification-main .notification-icon.error{color:var(--fd-color-error)}.x-msg-notification .x-msg-notification-main .notification-icon.warning{color:var(--fd-color-warning)}.x-msg-notification .x-msg-notification-main .notification-icon.info{color:var(--fd-color-info)}.x-msg-notification .x-msg-notification-main .x-msg-notification-title{word-wrap:break-word;color:var(--fd-color-text);font-size:var(--fd-font-size-lg);font-weight:600;margin-bottom:var(--fd-gap);margin-right:var(--fd-line-height-lg);word-break:break-word}.x-msg-notification .x-msg-notification-main .x-msg-notification-content{color:var(--fd-color-text);font-size:var(--fd-font-size);line-height:var(--fd-line-height)}.x-msg-notification .x-msg-notification-main .x-msg-notification-footer{margin-top:var(--fd-gap-xl)}.x-msg-notification .x-msg-notification-main .x-msg-notification-footer:after,.x-msg-notification .x-msg-notification-main .x-msg-notification-footer:before{content:" ";display:table;line-height:0}.x-msg-notification .x-msg-notification-main .x-msg-notification-footer:after{clear:both}.x-msg-notification .x-msg-notification-main .x-msg-notification-footer .footer-btn{float:right}.x-msg-notification .x-msg-notification-wrapper{position:relative}.x-msg-notification.has-icon .x-msg-notification-main{padding-left:calc(var(--fd-line-height-lg) + var(--fd-gap-xl))}.x-msg-notification.has-icon .x-msg-notification-main>i{font-size:var(--fd-line-height-lg);left:0;line-height:var(--fd-line-height-lg);position:absolute;top:0}.x-msg-notification.only-title .x-msg-notification-wrapper .x-msg-notification-main .x-msg-notification-title{margin-bottom:0}.x-avatar{background:var(--fd-color-primary);border:1px solid transparent;border-radius:50%;color:var(--fd-color-text-light-solid);display:inline-block;overflow:hidden;text-align:center;vertical-align:middle}.x-avatar,.x-avatar *,.x-avatar :after,.x-avatar :before{box-sizing:border-box}.x-avatar img{border:0;outline:none}.x-avatar>img{height:100%;width:100%}.x-avatar.color-0{background:#f0a800}.x-avatar.color-1{background:#2f7deb}.x-avatar.color-2{background:#00aed1}.x-avatar.color-3{background:#46c26f}.x-avatar.color-4{background:#eb5050}.x-avatar.color-5{background:#7e47eb}.x-avatar.is-image-type{background:#fff;font-size:0}.x-avatar.square{border-radius:var(--fd-border-radius)}.x-avatar.square.small{border-radius:var(--fd-border-radius-sm)}.x-avatar.square.large{border-radius:var(--fd-border-radius-lg)}.x-avatar-group{display:inline-flex}.x-avatar-group .x-avatar{border-color:var(--fd-color-white)}.x-avatar-group>:not(:first-child){margin-left:-8px}.x-avatar-group>:not(:first-child).small{margin-left:-4px}.x-avatar-group>:not(:first-child).large{margin-left:-16px}.x-progress *,.x-progress :after,.x-progress :before{box-sizing:border-box}.x-progress.type-line{align-items:center;display:flex;height:10px}.x-progress.type-line .progress-wrapper{-webkit-box-flex:1;background:var(--fd-color-fill-secondary);border-radius:5px;flex:auto;height:100%;overflow:hidden;position:relative}.x-progress.type-line .progress-wrapper .value-bar{background:var(--fd-color-primary);bottom:0;left:0;position:absolute;top:0;transition:width .2s ease}.x-progress.type-line .progress-wrapper .value-bar.round-linecap{border-bottom-right-radius:inherit;border-top-right-radius:inherit}.x-progress.type-line .value-info{flex:none;font-size:var(--fd-font-size);line-height:var(--fd-line-height);margin-left:var(--fd-gap)}.x-progress.type-line.size-large{height:20px}.x-progress.type-line.size-large .progress-wrapper{border-radius:10px}.x-progress.type-line.size-large .value-info{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg)}.x-progress.type-line.size-small{height:5px}.x-progress.type-line.size-small .progress-wrapper{border-radius:2.5px}.x-progress.type-line.size-small .value-info{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-progress.type-circle{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:flex;justify-content:center;position:relative}.x-progress.type-circle .progress-wrapper{height:100%;width:100%}.x-progress.type-circle .progress-wrapper circle.unfilled{stroke:var(--fd-color-fill-secondary)}.x-progress.type-circle .progress-wrapper circle.value-bar{stroke:var(--fd-color-primary);transform:rotate(-90deg);transform-origin:center;transition:stroke-dasharray .2s ease}.x-progress.type-circle .value-info{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg);position:absolute}.x-progress.type-circle.size-large .value-info{font-size:var(--fd-font-size-2xl);line-height:var(--fd-line-height-2xl)}.x-progress.type-circle.size-extra-small .value-info,.x-progress.type-circle.size-small .value-info{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-progress.status-success .progress-wrapper .value-bar{background-color:var(--fd-color-success)}.x-progress.status-info .progress-wrapper .value-bar{background-color:var(--fd-color-info)}.x-progress.status-error .progress-wrapper .value-bar{background-color:var(--fd-color-error)}.x-search-input{align-items:center;background:var(--fd-color-bg-container);display:flex}.x-search-input *,.x-search-input :after,.x-search-input :before{box-sizing:border-box}.x-search-input .input-wrapper{flex:auto;height:var(--fd-control-height);position:relative}.x-search-input .input-wrapper .input-content{inset:0;position:absolute}.x-search-input .input-wrapper .input-content.show-search-icon input{padding-left:calc(var(--fd-icon-size) + var(--fd-gap)*2)}.x-search-input .input-wrapper .input-content .input-prefix{left:0}.x-search-input .input-wrapper .input-content .input-prefix,.x-search-input .input-wrapper .input-content .input-suffix{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;bottom:0;color:var(--fd-color-icon-normal);display:flex;font-size:var(--fd-icon-size);justify-content:center;position:absolute;top:0;width:calc(var(--fd-icon-size) + var(--fd-gap)*2)}.x-search-input .input-wrapper .input-content .input-suffix{cursor:pointer;right:0}.x-search-input .input-wrapper .input-content .input-suffix:hover{color:var(--fd-color-icon-hover)}.x-search-input .input-wrapper .input-content input{border:none;font-size:var(--fd-font-size);height:100%;outline:none;overflow:hidden;padding:0 var(--fd-gap);text-overflow:ellipsis;white-space:nowrap;width:100%}.x-search-input .input-wrapper .input-content input::-moz-placeholder{color:var(--fd-color-text-placeholder)}.x-search-input .input-wrapper .input-content input:-ms-input-placeholder{color:var(--fd-color-text-placeholder)}.x-search-input .input-wrapper .input-content input::placeholder{color:var(--fd-color-text-placeholder)}.x-search-input .input-wrapper .input-content input:focus{outline:none}.x-search-input .input-wrapper .input-content input:focus::-moz-placeholder{color:var(--fd-color-text-placeholder)}.x-search-input .input-wrapper .input-content input:focus:-ms-input-placeholder{color:var(--fd-color-text-placeholder)}.x-search-input .input-wrapper .input-content input:focus::placeholder{color:var(--fd-color-text-placeholder)}.x-search-input .search-prefix,.x-search-input .search-suffix{-webkit-box-flex:0;color:var(--fd-color-brand-6,#00b899);flex:none}.x-search-input .search-prefix{margin-right:5px}.x-search-input .search-suffix{margin-left:5px}.x-search-input.has-clear .input-wrapper input{padding-right:calc(var(--fd-icon-size) + var(--fd-gap)*2)}.x-data-table{height:100%;overflow:auto;position:relative}.x-data-table,.x-data-table *,.x-data-table :after,.x-data-table :before{box-sizing:border-box}.x-data-table.resizing{cursor:ew-resize;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-data-table.striped tbody tr:nth-child(2n) td{background:#f5f6f8}.x-data-table.striped tbody tr.hover td,.x-data-table.striped tbody tr:hover td{background:#f0f1f4}.x-data-table .x-table-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.x-data-table .x-table-container>.x-table-content>table>thead>tr>th,.x-data-table .x-table-container>.x-table-header>table>thead>tr>th{position:relative}.x-data-table table{border-collapse:separate;border-spacing:0;border-top:1px solid #e1e3e5;width:100%}.x-data-table table.empty{height:0;visibility:hidden}.x-data-table table.empty tbody tr.calculate-row{height:1px!important}.x-data-table.size-small td,.x-data-table.size-small th{font-size:13px;line-height:18px;min-height:32px;padding:7px 10px}.x-data-table.size-small td .measure-cell,.x-data-table.size-small th .measure-cell{font-size:13px;line-height:18px;min-height:32px;min-height:0;padding:0 12px}.x-data-table.size-small td .cell-wrapper,.x-data-table.size-small th .cell-wrapper{font-size:13px;line-height:18px;min-height:32px;padding:7px 10px}.x-data-table.size-small td.has-content,.x-data-table.size-small td.measure-cell-td,.x-data-table.size-small th.has-content{padding:0}.x-data-table.size-small .patch-cell{border-left:0;border-right:0;height:0;min-width:0;padding:0}.x-data-table.size-small .patch-cell .measure-cell{padding:0!important}.x-data-table.size-large td,.x-data-table.size-large th{font-size:13px;line-height:22px;min-height:54px;padding:16px 12px}.x-data-table.size-large td .measure-cell,.x-data-table.size-large th .measure-cell{font-size:13px;line-height:18px;min-height:32px;min-height:0;padding:0 10px}.x-data-table.size-large td .cell-wrapper,.x-data-table.size-large th .cell-wrapper{font-size:13px;line-height:22px;min-height:54px;padding:16px 12px}.x-data-table.size-large td.has-content,.x-data-table.size-large td.measure-cell-td,.x-data-table.size-large th.has-content{padding:0}.x-data-table.size-large .patch-cell{border-left:0;border-right:0;height:0;min-width:0;padding:0}.x-data-table.size-large .patch-cell .measure-cell{padding:0!important}.x-data-table td,.x-data-table th{border-bottom:1px solid #e1e3e5;box-sizing:border-box;font-size:13px;line-height:22px;min-height:46px;min-width:30px;padding:12px 10px}.x-data-table.has-border{border-radius:3px}.x-data-table.has-border .x-table-body,.x-data-table.has-border .x-table-content,.x-data-table.has-border .x-table-header{border-left:1px solid #e1e3e5;border-radius:3px;border-right:1px solid #e1e3e5}.x-data-table.has-border .x-table-body,.x-data-table.has-border .x-table-content{border-bottom:1px solid #e1e3e5}.x-data-table.has-border .x-table-body{border-top-left-radius:0;border-top-right-radius:0}.x-data-table.has-border .x-table-header{border-bottom-left-radius:0;border-bottom-right-radius:0}.x-data-table.has-border td,.x-data-table.has-border th{border-bottom:1px solid #e1e3e5;border-right:1px solid #e1e3e5}.x-data-table.has-border .patch-cell{border-left:0;border-right:0;height:0;min-width:0;padding:0}.x-data-table.has-border .patch-cell .measure-cell{padding:0!important}.x-data-table td.has-content,.x-data-table th.has-content{padding:0}.x-data-table th,.x-data-table th .cell-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-data-table td{word-wrap:break-word;white-space:nowrap}.x-data-table td .cell-wrapper{word-wrap:break-word;white-space:normal}.x-data-table td .cell-wrapper.adjust-width{white-space:nowrap}.x-data-table .measure-cell{font-size:14px;font-weight:400;padding:0 12px}.x-data-table .cell-wrapper{box-sizing:border-box;font-size:13px;line-height:22px;min-height:46px;min-width:30px;padding:12px 10px}.x-data-table .measure-cell-td{border:0;height:0;padding:0}.x-data-table .measure-cell-td .sort-icon{display:none}.x-data-table .patch-cell{border-left:0;border-right:0;height:0;min-width:0;padding:0}.x-data-table .patch-cell .measure-cell{padding:0!important}.x-data-table thead th{background:#f0f1f4;border-color:#d7d9dc;color:#141e31;font-size:13px;font-weight:400;text-align:left}.x-data-table .x-table-header{flex:none;overflow:hidden}.x-data-table tbody>tr td{background:#fff;color:#141e31}.x-data-table tbody>tr.hover td{background:#f0f1f4}.x-data-table tbody>tr.measure-row{opacity:0}.x-data-table .x-table-content{overflow:auto}.x-data-table .x-table-body{flex:1 1 auto;overflow:auto}.x-data-table .x-table-body table{border-top:0}.x-data-table .sort-icon{align-items:center;bottom:0;display:flex;font-size:12px;font-weight:400;position:absolute;right:5px;top:0}.x-data-table.ping-left .fix-left.last-fix-left:after{box-shadow:inset 10px 0 8px -8px #00000026}.x-data-table .x-table-cell.fix-left{z-index:1}.x-data-table .x-table-cell.fix-left.last-fix-left{overflow:visible}.x-data-table .x-table-cell.fix-left.last-fix-left:after{bottom:-1px;content:"";position:absolute;right:-1px;top:0;transform:translate(100%);width:25px}.x-data-table .x-table-cell .resize-spanner{bottom:0;cursor:ew-resize;opacity:0;position:absolute;right:0;width:5px}.x-data-table .column-resize-line,.x-data-table .x-table-cell .resize-spanner{top:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-data-table .column-resize-line{background:var(--fd-color-brand-6,#00b899);display:none;height:100%;left:0;position:fixed;width:1px;z-index:1}.x-data-table .column-resize-line.active{display:block}.x-list-tree{display:inline-block;height:100%;min-width:100%;overflow:auto;vertical-align:middle}.x-list-tree *,.x-list-tree :after,.x-list-tree :before{box-sizing:border-box}.x-list-tree.content-ellipsis{display:block}.x-list-tree.content-ellipsis .tree-node .node-content-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:0}.x-list-tree .customize-dragging-node{display:none;left:-500px;pointer-events:none;position:fixed;top:-500px}.x-list-tree .customize-dragging-node.show{display:block}.x-list-tree.is-virtual-list{display:block;width:100%}.x-list-tree.is-virtual-list .x-virtual-list .virtual-list-inner{display:inline-block;min-width:100%;width:auto!important}.x-list-tree .tree-node{align-items:center;border-radius:var(--fd-border-radius);cursor:pointer;display:flex;height:var(--fd-control-height);line-height:var(--fd-line-height);padding:0 var(--fd-padding-xs) 0 var(--fd-padding);transition:background-color .1s ease-in-out}.x-list-tree .tree-node .node-checkbox{flex:0 0 var(--fd-icon-size)}.x-list-tree .tree-node .node-checkbox.left,.x-list-tree .tree-node .node-checkbox.middle{margin-right:var(--fd-gap-sm)}.x-list-tree .tree-node .node-checkbox.right{padding:var(--fd-gap-sm)}.x-list-tree .tree-node .node-content-wrapper{flex:1 1 auto;height:100%;line-height:var(--fd-line-height);position:relative}.x-list-tree .tree-node .node-content-wrapper,.x-list-tree .tree-node .node-content-wrapper .node-content{align-items:center;display:inline-flex}.x-list-tree .tree-node .node-content-wrapper .node-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.x-list-tree .tree-node .node-content-wrapper .node-content .node-title{-webkit-box-flex:1;color:var(--fd-color-text);flex:1 1 auto;font-size:var(--fd-font-size);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-list-tree .tree-node .node-content-wrapper .node-content .node-icon{color:var(--fd-color-icon);display:inline-flex;font-size:var(--fd-icon-size);margin-right:var(--fd-gap-sm)}.x-list-tree .tree-node .node-content-wrapper .node-content .node-icon .node-icon-group{color:var(--fd-color-primary)}.x-list-tree .tree-node .node-content-wrapper .node-drop-indicator{background:var(--fd-color-primary);bottom:0;display:none;height:2px;left:0;position:absolute;right:0}.x-list-tree .tree-node .node-switcher{-webkit-box-flex:0;border-radius:var(--fd-border-radius-xs);color:var(--fd-color-icon);display:inline-block;flex:0 0 var(--fd-icon-size);font-size:var(--fd-icon-size);height:var(--fd-icon-size);line-height:var(--fd-icon-size);margin-right:var(--fd-gap-sm);position:relative;text-align:center;transition:background-color .3s;width:var(--fd-icon-size)}.x-list-tree .tree-node .node-switcher:hover{background-color:var(--fd-color-bg-container)}.x-list-tree .tree-node .node-switcher.node-switcher-noop:hover{background-color:transparent}.x-list-tree .tree-node .node-indent{display:inline-block}.x-list-tree .tree-node:hover{background-color:var(--fd-color-bg-text-hover)}.x-list-tree .tree-node.node-selected{background-color:var(--fd-control-item-bg-active)}.x-list-tree .tree-node.node-selected .node-content-wrapper .node-icon{color:var(--fd-color-icon)}.x-list-tree .tree-node.node-selected .node-content-wrapper .node-icon .node-icon-group{color:var(--fd-color-primary)}.x-list-tree .tree-node.disabled{background-color:transparent;cursor:default}.x-list-tree .tree-node.disabled .node-content-wrapper .node-icon,.x-list-tree .tree-node.disabled .node-content-wrapper .node-title{color:var(--fd-color-text-disabled)}.x-list-tree .tree-node.draggable{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-list-tree .tree-node.drop-container{background-color:var(--fd-color-bg-text-hover)}.x-list-tree.is-dragging .tree-node .node-checkbox,.x-list-tree.is-dragging .tree-node .node-content-wrapper,.x-list-tree.is-dragging .tree-node .node-indent,.x-list-tree.is-dragging .tree-node .node-switcher{pointer-events:none}.x-list-tree.is-dragging .tree-node.node-selected,.x-list-tree.is-dragging .tree-node:hover{background-color:transparent}.x-list-tree .tree-node-motion-appear,.x-list-tree .tree-node-motion-enter,.x-list-tree .tree-node-motion-exit{overflow:hidden;transition:opacity .1s ease-in-out,height .1s ease-in-out}.x-space{display:inline-flex}.x-space *,.x-space :after,.x-space :before{box-sizing:border-box}.x-space.vertical{flex-direction:column}.x-space.align-center{align-items:center}.x-space.align-start{align-items:flex-start}.x-space.align-end{align-items:flex-end}.x-space.align-baseline{align-items:baseline}.x-space .x-space-item:empty{display:none}.x-grid-row{display:flex;flex-flow:row wrap}.x-grid-row *,.x-grid-row :after,.x-grid-row :before{box-sizing:border-box}.x-grid-row:after,.x-grid-row:before{display:flex}.x-grid-row.no-wrap{flex-wrap:nowrap}.x-grid-row.row-start{justify-content:flex-start}.x-grid-row.row-center{justify-content:center}.x-grid-row.row-end{justify-content:flex-end}.x-grid-row.row-space-between{justify-content:space-between}.x-grid-row.row-space-around{justify-content:space-around}.x-grid-row.row-space-evenly{justify-content:space-evenly}.x-grid-row.row-top{align-items:flex-start}.x-grid-row.row-middle{align-items:center}.x-grid-row.row-bottom{align-items:flex-end}.x-grid-row .x-grid-col{max-width:100%;min-height:1px;position:relative}.x-grid-row .col-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-push-24{left:100%}.x-grid-row .col-pull-24{right:100%}.x-grid-row .col-offset-24{margin-left:100%}.x-grid-row .col-order-24{order:24}.x-grid-row .col-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-push-23{left:95.83333333%}.x-grid-row .col-pull-23{right:95.83333333%}.x-grid-row .col-offset-23{margin-left:95.83333333%}.x-grid-row .col-order-23{order:23}.x-grid-row .col-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-push-22{left:91.66666667%}.x-grid-row .col-pull-22{right:91.66666667%}.x-grid-row .col-offset-22{margin-left:91.66666667%}.x-grid-row .col-order-22{order:22}.x-grid-row .col-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-push-21{left:87.5%}.x-grid-row .col-pull-21{right:87.5%}.x-grid-row .col-offset-21{margin-left:87.5%}.x-grid-row .col-order-21{order:21}.x-grid-row .col-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-push-20{left:83.33333333%}.x-grid-row .col-pull-20{right:83.33333333%}.x-grid-row .col-offset-20{margin-left:83.33333333%}.x-grid-row .col-order-20{order:20}.x-grid-row .col-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-push-19{left:79.16666667%}.x-grid-row .col-pull-19{right:79.16666667%}.x-grid-row .col-offset-19{margin-left:79.16666667%}.x-grid-row .col-order-19{order:19}.x-grid-row .col-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-push-18{left:75%}.x-grid-row .col-pull-18{right:75%}.x-grid-row .col-offset-18{margin-left:75%}.x-grid-row .col-order-18{order:18}.x-grid-row .col-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-push-17{left:70.83333333%}.x-grid-row .col-pull-17{right:70.83333333%}.x-grid-row .col-offset-17{margin-left:70.83333333%}.x-grid-row .col-order-17{order:17}.x-grid-row .col-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-push-16{left:66.66666667%}.x-grid-row .col-pull-16{right:66.66666667%}.x-grid-row .col-offset-16{margin-left:66.66666667%}.x-grid-row .col-order-16{order:16}.x-grid-row .col-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-push-15{left:62.5%}.x-grid-row .col-pull-15{right:62.5%}.x-grid-row .col-offset-15{margin-left:62.5%}.x-grid-row .col-order-15{order:15}.x-grid-row .col-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-push-14{left:58.33333333%}.x-grid-row .col-pull-14{right:58.33333333%}.x-grid-row .col-offset-14{margin-left:58.33333333%}.x-grid-row .col-order-14{order:14}.x-grid-row .col-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-push-13{left:54.16666667%}.x-grid-row .col-pull-13{right:54.16666667%}.x-grid-row .col-offset-13{margin-left:54.16666667%}.x-grid-row .col-order-13{order:13}.x-grid-row .col-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-push-12{left:50%}.x-grid-row .col-pull-12{right:50%}.x-grid-row .col-offset-12{margin-left:50%}.x-grid-row .col-order-12{order:12}.x-grid-row .col-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-push-11{left:45.83333333%}.x-grid-row .col-pull-11{right:45.83333333%}.x-grid-row .col-offset-11{margin-left:45.83333333%}.x-grid-row .col-order-11{order:11}.x-grid-row .col-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-push-10{left:41.66666667%}.x-grid-row .col-pull-10{right:41.66666667%}.x-grid-row .col-offset-10{margin-left:41.66666667%}.x-grid-row .col-order-10{order:10}.x-grid-row .col-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-push-9{left:37.5%}.x-grid-row .col-pull-9{right:37.5%}.x-grid-row .col-offset-9{margin-left:37.5%}.x-grid-row .col-order-9{order:9}.x-grid-row .col-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-push-8{left:33.33333333%}.x-grid-row .col-pull-8{right:33.33333333%}.x-grid-row .col-offset-8{margin-left:33.33333333%}.x-grid-row .col-order-8{order:8}.x-grid-row .col-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-push-7{left:29.16666667%}.x-grid-row .col-pull-7{right:29.16666667%}.x-grid-row .col-offset-7{margin-left:29.16666667%}.x-grid-row .col-order-7{order:7}.x-grid-row .col-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-push-6{left:25%}.x-grid-row .col-pull-6{right:25%}.x-grid-row .col-offset-6{margin-left:25%}.x-grid-row .col-order-6{order:6}.x-grid-row .col-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-push-5{left:20.83333333%}.x-grid-row .col-pull-5{right:20.83333333%}.x-grid-row .col-offset-5{margin-left:20.83333333%}.x-grid-row .col-order-5{order:5}.x-grid-row .col-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-push-4{left:16.66666667%}.x-grid-row .col-pull-4{right:16.66666667%}.x-grid-row .col-offset-4{margin-left:16.66666667%}.x-grid-row .col-order-4{order:4}.x-grid-row .col-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-push-3{left:12.5%}.x-grid-row .col-pull-3{right:12.5%}.x-grid-row .col-offset-3{margin-left:12.5%}.x-grid-row .col-order-3{order:3}.x-grid-row .col-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-push-2{left:8.33333333%}.x-grid-row .col-pull-2{right:8.33333333%}.x-grid-row .col-offset-2{margin-left:8.33333333%}.x-grid-row .col-order-2{order:2}.x-grid-row .col-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-push-1{left:4.16666667%}.x-grid-row .col-pull-1{right:4.16666667%}.x-grid-row .col-offset-1{margin-left:4.16666667%}.x-grid-row .col-order-1{order:1}.x-grid-row .col-0{display:none}.x-grid-row .col-offset-0{margin-left:0}.x-grid-row .col-order-0{order:0}.x-grid-row .col-xs-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-xs-push-24{left:100%}.x-grid-row .col-xs-pull-24{right:100%}.x-grid-row .col-xs-offset-24{margin-left:100%}.x-grid-row .col-xs-order-24{order:24}.x-grid-row .col-xs-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-xs-push-23{left:95.83333333%}.x-grid-row .col-xs-pull-23{right:95.83333333%}.x-grid-row .col-xs-offset-23{margin-left:95.83333333%}.x-grid-row .col-xs-order-23{order:23}.x-grid-row .col-xs-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-xs-push-22{left:91.66666667%}.x-grid-row .col-xs-pull-22{right:91.66666667%}.x-grid-row .col-xs-offset-22{margin-left:91.66666667%}.x-grid-row .col-xs-order-22{order:22}.x-grid-row .col-xs-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-xs-push-21{left:87.5%}.x-grid-row .col-xs-pull-21{right:87.5%}.x-grid-row .col-xs-offset-21{margin-left:87.5%}.x-grid-row .col-xs-order-21{order:21}.x-grid-row .col-xs-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-xs-push-20{left:83.33333333%}.x-grid-row .col-xs-pull-20{right:83.33333333%}.x-grid-row .col-xs-offset-20{margin-left:83.33333333%}.x-grid-row .col-xs-order-20{order:20}.x-grid-row .col-xs-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-xs-push-19{left:79.16666667%}.x-grid-row .col-xs-pull-19{right:79.16666667%}.x-grid-row .col-xs-offset-19{margin-left:79.16666667%}.x-grid-row .col-xs-order-19{order:19}.x-grid-row .col-xs-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-xs-push-18{left:75%}.x-grid-row .col-xs-pull-18{right:75%}.x-grid-row .col-xs-offset-18{margin-left:75%}.x-grid-row .col-xs-order-18{order:18}.x-grid-row .col-xs-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-xs-push-17{left:70.83333333%}.x-grid-row .col-xs-pull-17{right:70.83333333%}.x-grid-row .col-xs-offset-17{margin-left:70.83333333%}.x-grid-row .col-xs-order-17{order:17}.x-grid-row .col-xs-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-xs-push-16{left:66.66666667%}.x-grid-row .col-xs-pull-16{right:66.66666667%}.x-grid-row .col-xs-offset-16{margin-left:66.66666667%}.x-grid-row .col-xs-order-16{order:16}.x-grid-row .col-xs-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-xs-push-15{left:62.5%}.x-grid-row .col-xs-pull-15{right:62.5%}.x-grid-row .col-xs-offset-15{margin-left:62.5%}.x-grid-row .col-xs-order-15{order:15}.x-grid-row .col-xs-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-xs-push-14{left:58.33333333%}.x-grid-row .col-xs-pull-14{right:58.33333333%}.x-grid-row .col-xs-offset-14{margin-left:58.33333333%}.x-grid-row .col-xs-order-14{order:14}.x-grid-row .col-xs-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-xs-push-13{left:54.16666667%}.x-grid-row .col-xs-pull-13{right:54.16666667%}.x-grid-row .col-xs-offset-13{margin-left:54.16666667%}.x-grid-row .col-xs-order-13{order:13}.x-grid-row .col-xs-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-xs-push-12{left:50%}.x-grid-row .col-xs-pull-12{right:50%}.x-grid-row .col-xs-offset-12{margin-left:50%}.x-grid-row .col-xs-order-12{order:12}.x-grid-row .col-xs-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-xs-push-11{left:45.83333333%}.x-grid-row .col-xs-pull-11{right:45.83333333%}.x-grid-row .col-xs-offset-11{margin-left:45.83333333%}.x-grid-row .col-xs-order-11{order:11}.x-grid-row .col-xs-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-xs-push-10{left:41.66666667%}.x-grid-row .col-xs-pull-10{right:41.66666667%}.x-grid-row .col-xs-offset-10{margin-left:41.66666667%}.x-grid-row .col-xs-order-10{order:10}.x-grid-row .col-xs-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-xs-push-9{left:37.5%}.x-grid-row .col-xs-pull-9{right:37.5%}.x-grid-row .col-xs-offset-9{margin-left:37.5%}.x-grid-row .col-xs-order-9{order:9}.x-grid-row .col-xs-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-xs-push-8{left:33.33333333%}.x-grid-row .col-xs-pull-8{right:33.33333333%}.x-grid-row .col-xs-offset-8{margin-left:33.33333333%}.x-grid-row .col-xs-order-8{order:8}.x-grid-row .col-xs-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-xs-push-7{left:29.16666667%}.x-grid-row .col-xs-pull-7{right:29.16666667%}.x-grid-row .col-xs-offset-7{margin-left:29.16666667%}.x-grid-row .col-xs-order-7{order:7}.x-grid-row .col-xs-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-xs-push-6{left:25%}.x-grid-row .col-xs-pull-6{right:25%}.x-grid-row .col-xs-offset-6{margin-left:25%}.x-grid-row .col-xs-order-6{order:6}.x-grid-row .col-xs-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-xs-push-5{left:20.83333333%}.x-grid-row .col-xs-pull-5{right:20.83333333%}.x-grid-row .col-xs-offset-5{margin-left:20.83333333%}.x-grid-row .col-xs-order-5{order:5}.x-grid-row .col-xs-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-xs-push-4{left:16.66666667%}.x-grid-row .col-xs-pull-4{right:16.66666667%}.x-grid-row .col-xs-offset-4{margin-left:16.66666667%}.x-grid-row .col-xs-order-4{order:4}.x-grid-row .col-xs-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-xs-push-3{left:12.5%}.x-grid-row .col-xs-pull-3{right:12.5%}.x-grid-row .col-xs-offset-3{margin-left:12.5%}.x-grid-row .col-xs-order-3{order:3}.x-grid-row .col-xs-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-xs-push-2{left:8.33333333%}.x-grid-row .col-xs-pull-2{right:8.33333333%}.x-grid-row .col-xs-offset-2{margin-left:8.33333333%}.x-grid-row .col-xs-order-2{order:2}.x-grid-row .col-xs-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-xs-push-1{left:4.16666667%}.x-grid-row .col-xs-pull-1{right:4.16666667%}.x-grid-row .col-xs-offset-1{margin-left:4.16666667%}.x-grid-row .col-xs-order-1{order:1}.x-grid-row .col-xs-0{display:none}.x-grid-row .col-push-0{left:auto}.x-grid-row .col-pull-0{right:auto}.x-grid-row .col-xs-push-0{left:auto}.x-grid-row .col-xs-pull-0{right:auto}.x-grid-row .col-xs-offset-0{margin-left:0}.x-grid-row .col-xs-order-0{order:0}@media (min-width:576px){.x-grid-row .col-sm-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-sm-push-24{left:100%}.x-grid-row .col-sm-pull-24{right:100%}.x-grid-row .col-sm-offset-24{margin-left:100%}.x-grid-row .col-sm-order-24{order:24}.x-grid-row .col-sm-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-sm-push-23{left:95.83333333%}.x-grid-row .col-sm-pull-23{right:95.83333333%}.x-grid-row .col-sm-offset-23{margin-left:95.83333333%}.x-grid-row .col-sm-order-23{order:23}.x-grid-row .col-sm-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-sm-push-22{left:91.66666667%}.x-grid-row .col-sm-pull-22{right:91.66666667%}.x-grid-row .col-sm-offset-22{margin-left:91.66666667%}.x-grid-row .col-sm-order-22{order:22}.x-grid-row .col-sm-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-sm-push-21{left:87.5%}.x-grid-row .col-sm-pull-21{right:87.5%}.x-grid-row .col-sm-offset-21{margin-left:87.5%}.x-grid-row .col-sm-order-21{order:21}.x-grid-row .col-sm-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-sm-push-20{left:83.33333333%}.x-grid-row .col-sm-pull-20{right:83.33333333%}.x-grid-row .col-sm-offset-20{margin-left:83.33333333%}.x-grid-row .col-sm-order-20{order:20}.x-grid-row .col-sm-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-sm-push-19{left:79.16666667%}.x-grid-row .col-sm-pull-19{right:79.16666667%}.x-grid-row .col-sm-offset-19{margin-left:79.16666667%}.x-grid-row .col-sm-order-19{order:19}.x-grid-row .col-sm-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-sm-push-18{left:75%}.x-grid-row .col-sm-pull-18{right:75%}.x-grid-row .col-sm-offset-18{margin-left:75%}.x-grid-row .col-sm-order-18{order:18}.x-grid-row .col-sm-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-sm-push-17{left:70.83333333%}.x-grid-row .col-sm-pull-17{right:70.83333333%}.x-grid-row .col-sm-offset-17{margin-left:70.83333333%}.x-grid-row .col-sm-order-17{order:17}.x-grid-row .col-sm-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-sm-push-16{left:66.66666667%}.x-grid-row .col-sm-pull-16{right:66.66666667%}.x-grid-row .col-sm-offset-16{margin-left:66.66666667%}.x-grid-row .col-sm-order-16{order:16}.x-grid-row .col-sm-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-sm-push-15{left:62.5%}.x-grid-row .col-sm-pull-15{right:62.5%}.x-grid-row .col-sm-offset-15{margin-left:62.5%}.x-grid-row .col-sm-order-15{order:15}.x-grid-row .col-sm-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-sm-push-14{left:58.33333333%}.x-grid-row .col-sm-pull-14{right:58.33333333%}.x-grid-row .col-sm-offset-14{margin-left:58.33333333%}.x-grid-row .col-sm-order-14{order:14}.x-grid-row .col-sm-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-sm-push-13{left:54.16666667%}.x-grid-row .col-sm-pull-13{right:54.16666667%}.x-grid-row .col-sm-offset-13{margin-left:54.16666667%}.x-grid-row .col-sm-order-13{order:13}.x-grid-row .col-sm-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-sm-push-12{left:50%}.x-grid-row .col-sm-pull-12{right:50%}.x-grid-row .col-sm-offset-12{margin-left:50%}.x-grid-row .col-sm-order-12{order:12}.x-grid-row .col-sm-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-sm-push-11{left:45.83333333%}.x-grid-row .col-sm-pull-11{right:45.83333333%}.x-grid-row .col-sm-offset-11{margin-left:45.83333333%}.x-grid-row .col-sm-order-11{order:11}.x-grid-row .col-sm-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-sm-push-10{left:41.66666667%}.x-grid-row .col-sm-pull-10{right:41.66666667%}.x-grid-row .col-sm-offset-10{margin-left:41.66666667%}.x-grid-row .col-sm-order-10{order:10}.x-grid-row .col-sm-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-sm-push-9{left:37.5%}.x-grid-row .col-sm-pull-9{right:37.5%}.x-grid-row .col-sm-offset-9{margin-left:37.5%}.x-grid-row .col-sm-order-9{order:9}.x-grid-row .col-sm-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-sm-push-8{left:33.33333333%}.x-grid-row .col-sm-pull-8{right:33.33333333%}.x-grid-row .col-sm-offset-8{margin-left:33.33333333%}.x-grid-row .col-sm-order-8{order:8}.x-grid-row .col-sm-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-sm-push-7{left:29.16666667%}.x-grid-row .col-sm-pull-7{right:29.16666667%}.x-grid-row .col-sm-offset-7{margin-left:29.16666667%}.x-grid-row .col-sm-order-7{order:7}.x-grid-row .col-sm-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-sm-push-6{left:25%}.x-grid-row .col-sm-pull-6{right:25%}.x-grid-row .col-sm-offset-6{margin-left:25%}.x-grid-row .col-sm-order-6{order:6}.x-grid-row .col-sm-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-sm-push-5{left:20.83333333%}.x-grid-row .col-sm-pull-5{right:20.83333333%}.x-grid-row .col-sm-offset-5{margin-left:20.83333333%}.x-grid-row .col-sm-order-5{order:5}.x-grid-row .col-sm-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-sm-push-4{left:16.66666667%}.x-grid-row .col-sm-pull-4{right:16.66666667%}.x-grid-row .col-sm-offset-4{margin-left:16.66666667%}.x-grid-row .col-sm-order-4{order:4}.x-grid-row .col-sm-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-sm-push-3{left:12.5%}.x-grid-row .col-sm-pull-3{right:12.5%}.x-grid-row .col-sm-offset-3{margin-left:12.5%}.x-grid-row .col-sm-order-3{order:3}.x-grid-row .col-sm-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-sm-push-2{left:8.33333333%}.x-grid-row .col-sm-pull-2{right:8.33333333%}.x-grid-row .col-sm-offset-2{margin-left:8.33333333%}.x-grid-row .col-sm-order-2{order:2}.x-grid-row .col-sm-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-sm-push-1{left:4.16666667%}.x-grid-row .col-sm-pull-1{right:4.16666667%}.x-grid-row .col-sm-offset-1{margin-left:4.16666667%}.x-grid-row .col-sm-order-1{order:1}.x-grid-row .col-sm-0{display:none}.x-grid-row .col-push-0{left:auto}.x-grid-row .col-pull-0{right:auto}.x-grid-row .col-sm-push-0{left:auto}.x-grid-row .col-sm-pull-0{right:auto}.x-grid-row .col-sm-offset-0{margin-left:0}.x-grid-row .col-sm-order-0{order:0}}@media (min-width:768px){.x-grid-row .col-md-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-md-push-24{left:100%}.x-grid-row .col-md-pull-24{right:100%}.x-grid-row .col-md-offset-24{margin-left:100%}.x-grid-row .col-md-order-24{order:24}.x-grid-row .col-md-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-md-push-23{left:95.83333333%}.x-grid-row .col-md-pull-23{right:95.83333333%}.x-grid-row .col-md-offset-23{margin-left:95.83333333%}.x-grid-row .col-md-order-23{order:23}.x-grid-row .col-md-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-md-push-22{left:91.66666667%}.x-grid-row .col-md-pull-22{right:91.66666667%}.x-grid-row .col-md-offset-22{margin-left:91.66666667%}.x-grid-row .col-md-order-22{order:22}.x-grid-row .col-md-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-md-push-21{left:87.5%}.x-grid-row .col-md-pull-21{right:87.5%}.x-grid-row .col-md-offset-21{margin-left:87.5%}.x-grid-row .col-md-order-21{order:21}.x-grid-row .col-md-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-md-push-20{left:83.33333333%}.x-grid-row .col-md-pull-20{right:83.33333333%}.x-grid-row .col-md-offset-20{margin-left:83.33333333%}.x-grid-row .col-md-order-20{order:20}.x-grid-row .col-md-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-md-push-19{left:79.16666667%}.x-grid-row .col-md-pull-19{right:79.16666667%}.x-grid-row .col-md-offset-19{margin-left:79.16666667%}.x-grid-row .col-md-order-19{order:19}.x-grid-row .col-md-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-md-push-18{left:75%}.x-grid-row .col-md-pull-18{right:75%}.x-grid-row .col-md-offset-18{margin-left:75%}.x-grid-row .col-md-order-18{order:18}.x-grid-row .col-md-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-md-push-17{left:70.83333333%}.x-grid-row .col-md-pull-17{right:70.83333333%}.x-grid-row .col-md-offset-17{margin-left:70.83333333%}.x-grid-row .col-md-order-17{order:17}.x-grid-row .col-md-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-md-push-16{left:66.66666667%}.x-grid-row .col-md-pull-16{right:66.66666667%}.x-grid-row .col-md-offset-16{margin-left:66.66666667%}.x-grid-row .col-md-order-16{order:16}.x-grid-row .col-md-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-md-push-15{left:62.5%}.x-grid-row .col-md-pull-15{right:62.5%}.x-grid-row .col-md-offset-15{margin-left:62.5%}.x-grid-row .col-md-order-15{order:15}.x-grid-row .col-md-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-md-push-14{left:58.33333333%}.x-grid-row .col-md-pull-14{right:58.33333333%}.x-grid-row .col-md-offset-14{margin-left:58.33333333%}.x-grid-row .col-md-order-14{order:14}.x-grid-row .col-md-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-md-push-13{left:54.16666667%}.x-grid-row .col-md-pull-13{right:54.16666667%}.x-grid-row .col-md-offset-13{margin-left:54.16666667%}.x-grid-row .col-md-order-13{order:13}.x-grid-row .col-md-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-md-push-12{left:50%}.x-grid-row .col-md-pull-12{right:50%}.x-grid-row .col-md-offset-12{margin-left:50%}.x-grid-row .col-md-order-12{order:12}.x-grid-row .col-md-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-md-push-11{left:45.83333333%}.x-grid-row .col-md-pull-11{right:45.83333333%}.x-grid-row .col-md-offset-11{margin-left:45.83333333%}.x-grid-row .col-md-order-11{order:11}.x-grid-row .col-md-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-md-push-10{left:41.66666667%}.x-grid-row .col-md-pull-10{right:41.66666667%}.x-grid-row .col-md-offset-10{margin-left:41.66666667%}.x-grid-row .col-md-order-10{order:10}.x-grid-row .col-md-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-md-push-9{left:37.5%}.x-grid-row .col-md-pull-9{right:37.5%}.x-grid-row .col-md-offset-9{margin-left:37.5%}.x-grid-row .col-md-order-9{order:9}.x-grid-row .col-md-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-md-push-8{left:33.33333333%}.x-grid-row .col-md-pull-8{right:33.33333333%}.x-grid-row .col-md-offset-8{margin-left:33.33333333%}.x-grid-row .col-md-order-8{order:8}.x-grid-row .col-md-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-md-push-7{left:29.16666667%}.x-grid-row .col-md-pull-7{right:29.16666667%}.x-grid-row .col-md-offset-7{margin-left:29.16666667%}.x-grid-row .col-md-order-7{order:7}.x-grid-row .col-md-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-md-push-6{left:25%}.x-grid-row .col-md-pull-6{right:25%}.x-grid-row .col-md-offset-6{margin-left:25%}.x-grid-row .col-md-order-6{order:6}.x-grid-row .col-md-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-md-push-5{left:20.83333333%}.x-grid-row .col-md-pull-5{right:20.83333333%}.x-grid-row .col-md-offset-5{margin-left:20.83333333%}.x-grid-row .col-md-order-5{order:5}.x-grid-row .col-md-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-md-push-4{left:16.66666667%}.x-grid-row .col-md-pull-4{right:16.66666667%}.x-grid-row .col-md-offset-4{margin-left:16.66666667%}.x-grid-row .col-md-order-4{order:4}.x-grid-row .col-md-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-md-push-3{left:12.5%}.x-grid-row .col-md-pull-3{right:12.5%}.x-grid-row .col-md-offset-3{margin-left:12.5%}.x-grid-row .col-md-order-3{order:3}.x-grid-row .col-md-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-md-push-2{left:8.33333333%}.x-grid-row .col-md-pull-2{right:8.33333333%}.x-grid-row .col-md-offset-2{margin-left:8.33333333%}.x-grid-row .col-md-order-2{order:2}.x-grid-row .col-md-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-md-push-1{left:4.16666667%}.x-grid-row .col-md-pull-1{right:4.16666667%}.x-grid-row .col-md-offset-1{margin-left:4.16666667%}.x-grid-row .col-md-order-1{order:1}.x-grid-row .col-md-0{display:none}.x-grid-row .col-push-0{left:auto}.x-grid-row .col-pull-0{right:auto}.x-grid-row .col-md-push-0{left:auto}.x-grid-row .col-md-pull-0{right:auto}.x-grid-row .col-md-offset-0{margin-left:0}.x-grid-row .col-md-order-0{order:0}}@media (min-width:992px){.x-grid-row .col-lg-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-lg-push-24{left:100%}.x-grid-row .col-lg-pull-24{right:100%}.x-grid-row .col-lg-offset-24{margin-left:100%}.x-grid-row .col-lg-order-24{order:24}.x-grid-row .col-lg-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-lg-push-23{left:95.83333333%}.x-grid-row .col-lg-pull-23{right:95.83333333%}.x-grid-row .col-lg-offset-23{margin-left:95.83333333%}.x-grid-row .col-lg-order-23{order:23}.x-grid-row .col-lg-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-lg-push-22{left:91.66666667%}.x-grid-row .col-lg-pull-22{right:91.66666667%}.x-grid-row .col-lg-offset-22{margin-left:91.66666667%}.x-grid-row .col-lg-order-22{order:22}.x-grid-row .col-lg-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-lg-push-21{left:87.5%}.x-grid-row .col-lg-pull-21{right:87.5%}.x-grid-row .col-lg-offset-21{margin-left:87.5%}.x-grid-row .col-lg-order-21{order:21}.x-grid-row .col-lg-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-lg-push-20{left:83.33333333%}.x-grid-row .col-lg-pull-20{right:83.33333333%}.x-grid-row .col-lg-offset-20{margin-left:83.33333333%}.x-grid-row .col-lg-order-20{order:20}.x-grid-row .col-lg-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-lg-push-19{left:79.16666667%}.x-grid-row .col-lg-pull-19{right:79.16666667%}.x-grid-row .col-lg-offset-19{margin-left:79.16666667%}.x-grid-row .col-lg-order-19{order:19}.x-grid-row .col-lg-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-lg-push-18{left:75%}.x-grid-row .col-lg-pull-18{right:75%}.x-grid-row .col-lg-offset-18{margin-left:75%}.x-grid-row .col-lg-order-18{order:18}.x-grid-row .col-lg-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-lg-push-17{left:70.83333333%}.x-grid-row .col-lg-pull-17{right:70.83333333%}.x-grid-row .col-lg-offset-17{margin-left:70.83333333%}.x-grid-row .col-lg-order-17{order:17}.x-grid-row .col-lg-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-lg-push-16{left:66.66666667%}.x-grid-row .col-lg-pull-16{right:66.66666667%}.x-grid-row .col-lg-offset-16{margin-left:66.66666667%}.x-grid-row .col-lg-order-16{order:16}.x-grid-row .col-lg-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-lg-push-15{left:62.5%}.x-grid-row .col-lg-pull-15{right:62.5%}.x-grid-row .col-lg-offset-15{margin-left:62.5%}.x-grid-row .col-lg-order-15{order:15}.x-grid-row .col-lg-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-lg-push-14{left:58.33333333%}.x-grid-row .col-lg-pull-14{right:58.33333333%}.x-grid-row .col-lg-offset-14{margin-left:58.33333333%}.x-grid-row .col-lg-order-14{order:14}.x-grid-row .col-lg-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-lg-push-13{left:54.16666667%}.x-grid-row .col-lg-pull-13{right:54.16666667%}.x-grid-row .col-lg-offset-13{margin-left:54.16666667%}.x-grid-row .col-lg-order-13{order:13}.x-grid-row .col-lg-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-lg-push-12{left:50%}.x-grid-row .col-lg-pull-12{right:50%}.x-grid-row .col-lg-offset-12{margin-left:50%}.x-grid-row .col-lg-order-12{order:12}.x-grid-row .col-lg-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-lg-push-11{left:45.83333333%}.x-grid-row .col-lg-pull-11{right:45.83333333%}.x-grid-row .col-lg-offset-11{margin-left:45.83333333%}.x-grid-row .col-lg-order-11{order:11}.x-grid-row .col-lg-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-lg-push-10{left:41.66666667%}.x-grid-row .col-lg-pull-10{right:41.66666667%}.x-grid-row .col-lg-offset-10{margin-left:41.66666667%}.x-grid-row .col-lg-order-10{order:10}.x-grid-row .col-lg-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-lg-push-9{left:37.5%}.x-grid-row .col-lg-pull-9{right:37.5%}.x-grid-row .col-lg-offset-9{margin-left:37.5%}.x-grid-row .col-lg-order-9{order:9}.x-grid-row .col-lg-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-lg-push-8{left:33.33333333%}.x-grid-row .col-lg-pull-8{right:33.33333333%}.x-grid-row .col-lg-offset-8{margin-left:33.33333333%}.x-grid-row .col-lg-order-8{order:8}.x-grid-row .col-lg-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-lg-push-7{left:29.16666667%}.x-grid-row .col-lg-pull-7{right:29.16666667%}.x-grid-row .col-lg-offset-7{margin-left:29.16666667%}.x-grid-row .col-lg-order-7{order:7}.x-grid-row .col-lg-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-lg-push-6{left:25%}.x-grid-row .col-lg-pull-6{right:25%}.x-grid-row .col-lg-offset-6{margin-left:25%}.x-grid-row .col-lg-order-6{order:6}.x-grid-row .col-lg-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-lg-push-5{left:20.83333333%}.x-grid-row .col-lg-pull-5{right:20.83333333%}.x-grid-row .col-lg-offset-5{margin-left:20.83333333%}.x-grid-row .col-lg-order-5{order:5}.x-grid-row .col-lg-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-lg-push-4{left:16.66666667%}.x-grid-row .col-lg-pull-4{right:16.66666667%}.x-grid-row .col-lg-offset-4{margin-left:16.66666667%}.x-grid-row .col-lg-order-4{order:4}.x-grid-row .col-lg-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-lg-push-3{left:12.5%}.x-grid-row .col-lg-pull-3{right:12.5%}.x-grid-row .col-lg-offset-3{margin-left:12.5%}.x-grid-row .col-lg-order-3{order:3}.x-grid-row .col-lg-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-lg-push-2{left:8.33333333%}.x-grid-row .col-lg-pull-2{right:8.33333333%}.x-grid-row .col-lg-offset-2{margin-left:8.33333333%}.x-grid-row .col-lg-order-2{order:2}.x-grid-row .col-lg-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-lg-push-1{left:4.16666667%}.x-grid-row .col-lg-pull-1{right:4.16666667%}.x-grid-row .col-lg-offset-1{margin-left:4.16666667%}.x-grid-row .col-lg-order-1{order:1}.x-grid-row .col-lg-0{display:none}.x-grid-row .col-push-0{left:auto}.x-grid-row .col-pull-0{right:auto}.x-grid-row .col-lg-push-0{left:auto}.x-grid-row .col-lg-pull-0{right:auto}.x-grid-row .col-lg-offset-0{margin-left:0}.x-grid-row .col-lg-order-0{order:0}}@media (min-width:1200px){.x-grid-row .col-xl-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-xl-push-24{left:100%}.x-grid-row .col-xl-pull-24{right:100%}.x-grid-row .col-xl-offset-24{margin-left:100%}.x-grid-row .col-xl-order-24{order:24}.x-grid-row .col-xl-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-xl-push-23{left:95.83333333%}.x-grid-row .col-xl-pull-23{right:95.83333333%}.x-grid-row .col-xl-offset-23{margin-left:95.83333333%}.x-grid-row .col-xl-order-23{order:23}.x-grid-row .col-xl-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-xl-push-22{left:91.66666667%}.x-grid-row .col-xl-pull-22{right:91.66666667%}.x-grid-row .col-xl-offset-22{margin-left:91.66666667%}.x-grid-row .col-xl-order-22{order:22}.x-grid-row .col-xl-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-xl-push-21{left:87.5%}.x-grid-row .col-xl-pull-21{right:87.5%}.x-grid-row .col-xl-offset-21{margin-left:87.5%}.x-grid-row .col-xl-order-21{order:21}.x-grid-row .col-xl-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-xl-push-20{left:83.33333333%}.x-grid-row .col-xl-pull-20{right:83.33333333%}.x-grid-row .col-xl-offset-20{margin-left:83.33333333%}.x-grid-row .col-xl-order-20{order:20}.x-grid-row .col-xl-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-xl-push-19{left:79.16666667%}.x-grid-row .col-xl-pull-19{right:79.16666667%}.x-grid-row .col-xl-offset-19{margin-left:79.16666667%}.x-grid-row .col-xl-order-19{order:19}.x-grid-row .col-xl-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-xl-push-18{left:75%}.x-grid-row .col-xl-pull-18{right:75%}.x-grid-row .col-xl-offset-18{margin-left:75%}.x-grid-row .col-xl-order-18{order:18}.x-grid-row .col-xl-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-xl-push-17{left:70.83333333%}.x-grid-row .col-xl-pull-17{right:70.83333333%}.x-grid-row .col-xl-offset-17{margin-left:70.83333333%}.x-grid-row .col-xl-order-17{order:17}.x-grid-row .col-xl-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-xl-push-16{left:66.66666667%}.x-grid-row .col-xl-pull-16{right:66.66666667%}.x-grid-row .col-xl-offset-16{margin-left:66.66666667%}.x-grid-row .col-xl-order-16{order:16}.x-grid-row .col-xl-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-xl-push-15{left:62.5%}.x-grid-row .col-xl-pull-15{right:62.5%}.x-grid-row .col-xl-offset-15{margin-left:62.5%}.x-grid-row .col-xl-order-15{order:15}.x-grid-row .col-xl-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-xl-push-14{left:58.33333333%}.x-grid-row .col-xl-pull-14{right:58.33333333%}.x-grid-row .col-xl-offset-14{margin-left:58.33333333%}.x-grid-row .col-xl-order-14{order:14}.x-grid-row .col-xl-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-xl-push-13{left:54.16666667%}.x-grid-row .col-xl-pull-13{right:54.16666667%}.x-grid-row .col-xl-offset-13{margin-left:54.16666667%}.x-grid-row .col-xl-order-13{order:13}.x-grid-row .col-xl-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-xl-push-12{left:50%}.x-grid-row .col-xl-pull-12{right:50%}.x-grid-row .col-xl-offset-12{margin-left:50%}.x-grid-row .col-xl-order-12{order:12}.x-grid-row .col-xl-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-xl-push-11{left:45.83333333%}.x-grid-row .col-xl-pull-11{right:45.83333333%}.x-grid-row .col-xl-offset-11{margin-left:45.83333333%}.x-grid-row .col-xl-order-11{order:11}.x-grid-row .col-xl-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-xl-push-10{left:41.66666667%}.x-grid-row .col-xl-pull-10{right:41.66666667%}.x-grid-row .col-xl-offset-10{margin-left:41.66666667%}.x-grid-row .col-xl-order-10{order:10}.x-grid-row .col-xl-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-xl-push-9{left:37.5%}.x-grid-row .col-xl-pull-9{right:37.5%}.x-grid-row .col-xl-offset-9{margin-left:37.5%}.x-grid-row .col-xl-order-9{order:9}.x-grid-row .col-xl-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-xl-push-8{left:33.33333333%}.x-grid-row .col-xl-pull-8{right:33.33333333%}.x-grid-row .col-xl-offset-8{margin-left:33.33333333%}.x-grid-row .col-xl-order-8{order:8}.x-grid-row .col-xl-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-xl-push-7{left:29.16666667%}.x-grid-row .col-xl-pull-7{right:29.16666667%}.x-grid-row .col-xl-offset-7{margin-left:29.16666667%}.x-grid-row .col-xl-order-7{order:7}.x-grid-row .col-xl-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-xl-push-6{left:25%}.x-grid-row .col-xl-pull-6{right:25%}.x-grid-row .col-xl-offset-6{margin-left:25%}.x-grid-row .col-xl-order-6{order:6}.x-grid-row .col-xl-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-xl-push-5{left:20.83333333%}.x-grid-row .col-xl-pull-5{right:20.83333333%}.x-grid-row .col-xl-offset-5{margin-left:20.83333333%}.x-grid-row .col-xl-order-5{order:5}.x-grid-row .col-xl-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-xl-push-4{left:16.66666667%}.x-grid-row .col-xl-pull-4{right:16.66666667%}.x-grid-row .col-xl-offset-4{margin-left:16.66666667%}.x-grid-row .col-xl-order-4{order:4}.x-grid-row .col-xl-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-xl-push-3{left:12.5%}.x-grid-row .col-xl-pull-3{right:12.5%}.x-grid-row .col-xl-offset-3{margin-left:12.5%}.x-grid-row .col-xl-order-3{order:3}.x-grid-row .col-xl-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-xl-push-2{left:8.33333333%}.x-grid-row .col-xl-pull-2{right:8.33333333%}.x-grid-row .col-xl-offset-2{margin-left:8.33333333%}.x-grid-row .col-xl-order-2{order:2}.x-grid-row .col-xl-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-xl-push-1{left:4.16666667%}.x-grid-row .col-xl-pull-1{right:4.16666667%}.x-grid-row .col-xl-offset-1{margin-left:4.16666667%}.x-grid-row .col-xl-order-1{order:1}.x-grid-row .col-xl-0{display:none}.x-grid-row .col-push-0{left:auto}.x-grid-row .col-pull-0{right:auto}.x-grid-row .col-xl-push-0{left:auto}.x-grid-row .col-xl-pull-0{right:auto}.x-grid-row .col-xl-offset-0{margin-left:0}.x-grid-row .col-xl-order-0{order:0}}@media (min-width:1600px){.x-grid-row .col-xxl-24{-webkit-box-flex:0;display:block;flex:0 0 100%;max-width:100%}.x-grid-row .col-xxl-push-24{left:100%}.x-grid-row .col-xxl-pull-24{right:100%}.x-grid-row .col-xxl-offset-24{margin-left:100%}.x-grid-row .col-xxl-order-24{order:24}.x-grid-row .col-xxl-23{-webkit-box-flex:0;display:block;flex:0 0 95.83333333%;max-width:95.83333333%}.x-grid-row .col-xxl-push-23{left:95.83333333%}.x-grid-row .col-xxl-pull-23{right:95.83333333%}.x-grid-row .col-xxl-offset-23{margin-left:95.83333333%}.x-grid-row .col-xxl-order-23{order:23}.x-grid-row .col-xxl-22{-webkit-box-flex:0;display:block;flex:0 0 91.66666667%;max-width:91.66666667%}.x-grid-row .col-xxl-push-22{left:91.66666667%}.x-grid-row .col-xxl-pull-22{right:91.66666667%}.x-grid-row .col-xxl-offset-22{margin-left:91.66666667%}.x-grid-row .col-xxl-order-22{order:22}.x-grid-row .col-xxl-21{-webkit-box-flex:0;display:block;flex:0 0 87.5%;max-width:87.5%}.x-grid-row .col-xxl-push-21{left:87.5%}.x-grid-row .col-xxl-pull-21{right:87.5%}.x-grid-row .col-xxl-offset-21{margin-left:87.5%}.x-grid-row .col-xxl-order-21{order:21}.x-grid-row .col-xxl-20{-webkit-box-flex:0;display:block;flex:0 0 83.33333333%;max-width:83.33333333%}.x-grid-row .col-xxl-push-20{left:83.33333333%}.x-grid-row .col-xxl-pull-20{right:83.33333333%}.x-grid-row .col-xxl-offset-20{margin-left:83.33333333%}.x-grid-row .col-xxl-order-20{order:20}.x-grid-row .col-xxl-19{-webkit-box-flex:0;display:block;flex:0 0 79.16666667%;max-width:79.16666667%}.x-grid-row .col-xxl-push-19{left:79.16666667%}.x-grid-row .col-xxl-pull-19{right:79.16666667%}.x-grid-row .col-xxl-offset-19{margin-left:79.16666667%}.x-grid-row .col-xxl-order-19{order:19}.x-grid-row .col-xxl-18{-webkit-box-flex:0;display:block;flex:0 0 75%;max-width:75%}.x-grid-row .col-xxl-push-18{left:75%}.x-grid-row .col-xxl-pull-18{right:75%}.x-grid-row .col-xxl-offset-18{margin-left:75%}.x-grid-row .col-xxl-order-18{order:18}.x-grid-row .col-xxl-17{-webkit-box-flex:0;display:block;flex:0 0 70.83333333%;max-width:70.83333333%}.x-grid-row .col-xxl-push-17{left:70.83333333%}.x-grid-row .col-xxl-pull-17{right:70.83333333%}.x-grid-row .col-xxl-offset-17{margin-left:70.83333333%}.x-grid-row .col-xxl-order-17{order:17}.x-grid-row .col-xxl-16{-webkit-box-flex:0;display:block;flex:0 0 66.66666667%;max-width:66.66666667%}.x-grid-row .col-xxl-push-16{left:66.66666667%}.x-grid-row .col-xxl-pull-16{right:66.66666667%}.x-grid-row .col-xxl-offset-16{margin-left:66.66666667%}.x-grid-row .col-xxl-order-16{order:16}.x-grid-row .col-xxl-15{-webkit-box-flex:0;display:block;flex:0 0 62.5%;max-width:62.5%}.x-grid-row .col-xxl-push-15{left:62.5%}.x-grid-row .col-xxl-pull-15{right:62.5%}.x-grid-row .col-xxl-offset-15{margin-left:62.5%}.x-grid-row .col-xxl-order-15{order:15}.x-grid-row .col-xxl-14{-webkit-box-flex:0;display:block;flex:0 0 58.33333333%;max-width:58.33333333%}.x-grid-row .col-xxl-push-14{left:58.33333333%}.x-grid-row .col-xxl-pull-14{right:58.33333333%}.x-grid-row .col-xxl-offset-14{margin-left:58.33333333%}.x-grid-row .col-xxl-order-14{order:14}.x-grid-row .col-xxl-13{-webkit-box-flex:0;display:block;flex:0 0 54.16666667%;max-width:54.16666667%}.x-grid-row .col-xxl-push-13{left:54.16666667%}.x-grid-row .col-xxl-pull-13{right:54.16666667%}.x-grid-row .col-xxl-offset-13{margin-left:54.16666667%}.x-grid-row .col-xxl-order-13{order:13}.x-grid-row .col-xxl-12{-webkit-box-flex:0;display:block;flex:0 0 50%;max-width:50%}.x-grid-row .col-xxl-push-12{left:50%}.x-grid-row .col-xxl-pull-12{right:50%}.x-grid-row .col-xxl-offset-12{margin-left:50%}.x-grid-row .col-xxl-order-12{order:12}.x-grid-row .col-xxl-11{-webkit-box-flex:0;display:block;flex:0 0 45.83333333%;max-width:45.83333333%}.x-grid-row .col-xxl-push-11{left:45.83333333%}.x-grid-row .col-xxl-pull-11{right:45.83333333%}.x-grid-row .col-xxl-offset-11{margin-left:45.83333333%}.x-grid-row .col-xxl-order-11{order:11}.x-grid-row .col-xxl-10{-webkit-box-flex:0;display:block;flex:0 0 41.66666667%;max-width:41.66666667%}.x-grid-row .col-xxl-push-10{left:41.66666667%}.x-grid-row .col-xxl-pull-10{right:41.66666667%}.x-grid-row .col-xxl-offset-10{margin-left:41.66666667%}.x-grid-row .col-xxl-order-10{order:10}.x-grid-row .col-xxl-9{-webkit-box-flex:0;display:block;flex:0 0 37.5%;max-width:37.5%}.x-grid-row .col-xxl-push-9{left:37.5%}.x-grid-row .col-xxl-pull-9{right:37.5%}.x-grid-row .col-xxl-offset-9{margin-left:37.5%}.x-grid-row .col-xxl-order-9{order:9}.x-grid-row .col-xxl-8{-webkit-box-flex:0;display:block;flex:0 0 33.33333333%;max-width:33.33333333%}.x-grid-row .col-xxl-push-8{left:33.33333333%}.x-grid-row .col-xxl-pull-8{right:33.33333333%}.x-grid-row .col-xxl-offset-8{margin-left:33.33333333%}.x-grid-row .col-xxl-order-8{order:8}.x-grid-row .col-xxl-7{-webkit-box-flex:0;display:block;flex:0 0 29.16666667%;max-width:29.16666667%}.x-grid-row .col-xxl-push-7{left:29.16666667%}.x-grid-row .col-xxl-pull-7{right:29.16666667%}.x-grid-row .col-xxl-offset-7{margin-left:29.16666667%}.x-grid-row .col-xxl-order-7{order:7}.x-grid-row .col-xxl-6{-webkit-box-flex:0;display:block;flex:0 0 25%;max-width:25%}.x-grid-row .col-xxl-push-6{left:25%}.x-grid-row .col-xxl-pull-6{right:25%}.x-grid-row .col-xxl-offset-6{margin-left:25%}.x-grid-row .col-xxl-order-6{order:6}.x-grid-row .col-xxl-5{-webkit-box-flex:0;display:block;flex:0 0 20.83333333%;max-width:20.83333333%}.x-grid-row .col-xxl-push-5{left:20.83333333%}.x-grid-row .col-xxl-pull-5{right:20.83333333%}.x-grid-row .col-xxl-offset-5{margin-left:20.83333333%}.x-grid-row .col-xxl-order-5{order:5}.x-grid-row .col-xxl-4{-webkit-box-flex:0;display:block;flex:0 0 16.66666667%;max-width:16.66666667%}.x-grid-row .col-xxl-push-4{left:16.66666667%}.x-grid-row .col-xxl-pull-4{right:16.66666667%}.x-grid-row .col-xxl-offset-4{margin-left:16.66666667%}.x-grid-row .col-xxl-order-4{order:4}.x-grid-row .col-xxl-3{-webkit-box-flex:0;display:block;flex:0 0 12.5%;max-width:12.5%}.x-grid-row .col-xxl-push-3{left:12.5%}.x-grid-row .col-xxl-pull-3{right:12.5%}.x-grid-row .col-xxl-offset-3{margin-left:12.5%}.x-grid-row .col-xxl-order-3{order:3}.x-grid-row .col-xxl-2{-webkit-box-flex:0;display:block;flex:0 0 8.33333333%;max-width:8.33333333%}.x-grid-row .col-xxl-push-2{left:8.33333333%}.x-grid-row .col-xxl-pull-2{right:8.33333333%}.x-grid-row .col-xxl-offset-2{margin-left:8.33333333%}.x-grid-row .col-xxl-order-2{order:2}.x-grid-row .col-xxl-1{-webkit-box-flex:0;display:block;flex:0 0 4.16666667%;max-width:4.16666667%}.x-grid-row .col-xxl-push-1{left:4.16666667%}.x-grid-row .col-xxl-pull-1{right:4.16666667%}.x-grid-row .col-xxl-offset-1{margin-left:4.16666667%}.x-grid-row .col-xxl-order-1{order:1}.x-grid-row .col-xxl-0{display:none}.x-grid-row .col-push-0{left:auto}.x-grid-row .col-pull-0{right:auto}.x-grid-row .col-xxl-push-0{left:auto}.x-grid-row .col-xxl-pull-0{right:auto}.x-grid-row .col-xxl-offset-0{margin-left:0}.x-grid-row .col-xxl-order-0{order:0}}.x-back-top{bottom:76px;cursor:pointer;position:fixed;right:21px;z-index:10}.x-back-top *,.x-back-top :after,.x-back-top :before{box-sizing:border-box}.x-back-top:empty{display:none}.x-back-top-content{border-radius:50%;color:#b5b8be;overflow:hidden;text-align:center;transition:all .3s}.x-back-top-content:hover{color:var(--fd-color-brand-6,#00b899);transition:all .3s}.x-back-top-icon{font-size:40px;line-height:40px;position:relative}.x-back-top-icon:after{background:#fff;border-radius:50%;content:"";height:28px;left:4px;position:absolute;top:4px;width:28px;z-index:-1}.x-color-picker{background-color:var(--fd-color-bg-container);border-radius:var(--fd-border-radius-lg);box-shadow:var(--fd-box-shadow-secondary);display:inline-block;padding:var(--fd-padding-layout-sm);position:relative}.x-color-picker *,.x-color-picker :after,.x-color-picker :before{box-sizing:border-box}.x-color-picker.without-opacity .main-wrapper .main-right{justify-content:center}.x-color-picker.without-opacity .footer-wrapper .rgb-input{flex:auto;width:48px}.x-color-picker .header-wrapper,.x-color-picker .main-wrapper{margin-bottom:var(--fd-gap-xl)}.x-color-picker .main-wrapper{display:flex}.x-color-picker .main-wrapper .main-left{border:1px solid var(--fd-color-fill-secondary);border-radius:var(--fd-border-radius);height:var(--fd-line-height-2xl);overflow:hidden;position:relative;width:var(--fd-line-height-2xl)}.x-color-picker .main-wrapper .main-left .color-value-bg{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==) 0;inset:0;position:absolute}.x-color-picker .main-wrapper .main-left .color-value{inset:0;position:absolute}.x-color-picker .main-wrapper .main-right{-webkit-box-align:stretch;-ms-flex-align:stretch;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:stretch;display:flex;flex-direction:column;justify-content:space-between;margin-left:var(--fd-gap-xl)}.x-color-picker .footer-wrapper{align-items:center;display:inline-flex;gap:var(--fd-gap-sm)}.x-color-picker .footer-wrapper .region-wrapper{flex:1 0 auto}.x-color-picker .footer-wrapper .region-wrapper .region-title{color:var(--fd-color-text-description);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-color-picker .footer-wrapper .region-divider{margin:var(--fd-line-height-sm) calc(var(--fd-gap)/2) 0 calc(var(--fd-gap)/2)}.x-color-picker .footer-wrapper .alpha-input,.x-color-picker .footer-wrapper .rgb-input{flex:none}.x-color-picker .footer-wrapper .rgb-input{width:32px}.x-color-picker .footer-wrapper .hex-input{flex:auto;width:64px}.x-color-picker .footer-wrapper .hex-input .x-inner-wrapper .x-prefix{left:8px;width:10px}.x-color-picker .footer-wrapper .alpha-input{width:46px}.x-color-picker .footer-wrapper .alpha-input .x-inner-wrapper .x-suffix{font-size:var(--fd-font-size-sm);right:4px;width:10px}.x-color-picker .footer-wrapper .alpha-input .x-inner-wrapper .input-inner{padding-left:4px;padding-right:14px}.x-color-picker .extra-divider{margin:var(--fd-gap) 0 0 0}.x-color-picker .extra-wrapper{margin-top:var(--fd-gap)}.x-color-picker .extra-wrapper .x-collapse.small .x-collapse-header,.x-color-picker .extra-wrapper .x-collapse.small .x-panel-content .x-panel-box{padding:0}.x-color-picker .extra-wrapper .x-collapse.small .no-message{color:var(--fd-color-text-placeholder);font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm)}.x-color-picker .extra-wrapper .color-region{display:flex;flex-wrap:wrap;gap:6px;padding:var(--fd-padding) 0}.x-color-picker .extra-wrapper .color-region>.color-square{border:1px solid var(--fd-color-fill-secondary);border-radius:4px;height:18px;position:relative;width:18px}.x-color-picker .extra-wrapper .color-region>.color-square .color-value-bg{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==) 0;inset:0;position:absolute}.x-color-picker .extra-wrapper .color-region>.color-square .color-value{inset:0;position:absolute}.x-color-picker .x-hue-slider{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red);border-radius:var(--fd-border-radius);height:8px;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-color-picker .x-hue-slider .x-hue-slider-cursor{background:var(--fd-color-primary);border:2px solid var(--fd-color-white);border-radius:50%;box-shadow:0 1px 4px #00000040;height:12px;position:absolute;top:50%;transform:translateY(-50%);width:12px}.x-color-picker .x-opacity-slider{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==) 0;border-radius:var(--fd-border-radius);height:8px;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-color-picker .x-opacity-slider .x-opacity-slider-value{border-radius:var(--fd-border-radius);inset:0;position:absolute}.x-color-picker .x-opacity-slider .x-opacity-slider-value .x-opacity-slider-cursor{background:var(--fd-color-primary);border:2px solid var(--fd-color-white);border-radius:50%;box-shadow:0 1px 4px #00000040;height:12px;position:absolute;top:50%;transform:translateY(-50%);width:12px}.x-color-picker .x-sv-panel{border-radius:4px;height:110px;overflow:hidden;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-color-picker .x-sv-panel .x-sv-panel-white{background:linear-gradient(90deg,#fff,hsla(0,0%,100%,0));inset:0;position:absolute}.x-color-picker .x-sv-panel .x-sv-panel-black{background:linear-gradient(0deg,#000,transparent);inset:0;position:absolute}.x-color-picker .x-sv-panel .x-sv-panel-cursor{position:absolute}.x-color-picker .x-sv-panel .x-sv-panel-cursor div{border:2px solid var(--fd-color-white);border-radius:50%;box-shadow:0 1px 4px #00000040;height:18px;transform:translate(-50%,-50%);width:18px}.x-virtual-table{height:100%;overflow-x:hidden;overflow-y:auto;position:relative}.x-virtual-table *,.x-virtual-table :after,.x-virtual-table :before{box-sizing:border-box}.x-virtual-table.resizing{cursor:ew-resize;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-virtual-table.resizing .table-body,.x-virtual-table.resizing .table-header{pointer-events:none}.x-virtual-table.large .virtual-table-wrapper td,.x-virtual-table.large .virtual-table-wrapper th{height:46px}.x-virtual-table.striped .virtual-table-wrapper .table-body .table-row.odd td{background:#f5f6f8}.x-virtual-table.has-cell-border td,.x-virtual-table.has-cell-border th{border-left:none;border-right:1px solid #e1e3e5}.x-virtual-table.has-out-border{border:1px solid #e1e3e5;border-radius:3px}.x-virtual-table.no-wrap .virtual-table-wrapper .table-body .table-row td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-virtual-table .virtual-table-wrapper{min-height:100%;position:relative}.x-virtual-table .virtual-table-wrapper table{border-collapse:separate;border-spacing:0;display:table;margin:0;padding:0;table-layout:fixed;width:100%}.x-virtual-table .virtual-table-wrapper table td,.x-virtual-table .virtual-table-wrapper table th{border-bottom:1px solid #e1e3e5;border-left:none;border-top:none;font-size:13px;height:34px;padding:3px 10px;text-align:left}.x-virtual-table .virtual-table-wrapper table td.fixed-left,.x-virtual-table .virtual-table-wrapper table th.fixed-left{z-index:5}.x-virtual-table .virtual-table-wrapper table td{line-height:20px}.x-virtual-table .virtual-table-wrapper table th{background:#f0f1f4;color:#141e31;font-weight:400;overflow:visible;position:relative}.x-virtual-table .virtual-table-wrapper table th .header-cell-content{-webkit-line-clamp:3;-webkit-box-orient:vertical;word-wrap:break-word;display:-webkit-inline-box;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;word-break:break-word}.x-virtual-table .virtual-table-wrapper table th .resize-spanner{bottom:0;cursor:ew-resize;opacity:0;position:absolute;right:-2px;top:0;transition:background-color .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:4px;z-index:1}.x-virtual-table .virtual-table-wrapper .no-scrollbar::-webkit-scrollbar{display:none}.x-virtual-table .virtual-table-wrapper .table-header{overflow:hidden}.x-virtual-table .virtual-table-wrapper .table-header.fixed{position:sticky;top:0;z-index:6}.x-virtual-table .virtual-table-wrapper .table-header th{word-wrap:break-word;white-space:normal;word-break:break-word}.x-virtual-table .virtual-table-wrapper .table-header th .sort-icon{align-items:center;bottom:0;display:flex;font-size:12px;font-weight:400;position:absolute;right:5px;top:0}.x-virtual-table .virtual-table-wrapper .table-body{overflow-x:auto;overflow-y:hidden}.x-virtual-table .virtual-table-wrapper .table-body>table{min-height:1px}.x-virtual-table .virtual-table-wrapper .table-body::-webkit-scrollbar,.x-virtual-table .virtual-table-wrapper .table-body::-webkit-scrollbar-thumb{background:transparent}.x-virtual-table .virtual-table-wrapper .table-body .table-row{min-height:48px}.x-virtual-table .virtual-table-wrapper .table-body .table-row .table-cell{word-wrap:break-word;background:#fff;white-space:normal;word-break:break-word}.x-virtual-table .virtual-table-wrapper .table-body .table-row.hover td.table-cell,.x-virtual-table .virtual-table-wrapper .table-body .table-row:hover td.table-cell{background:#f0f1f4}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask{bottom:0;overflow:hidden;pointer-events:none;position:absolute;top:0;z-index:7}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .fixed-shadow{height:100%}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .left,.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .right{box-shadow:none}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .left.show-shadow,.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .right.show-shadow{box-shadow:0 0 6px 2px #00000026}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .left{margin-right:20px}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .left.show-shadow{border-right:1px solid #e1e3e5}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .right{margin-left:20px}.x-virtual-table .virtual-table-wrapper .fixed-shadow-mask .right.show-shadow{border-left:1px solid #e1e3e5}.x-virtual-table .horizontal-scroll-container{bottom:0;display:none;overflow:auto;position:sticky;z-index:7}.x-virtual-table .horizontal-scroll-container.not-support-sticky{left:0;position:absolute;right:0}.x-virtual-table .horizontal-scroll-container.show{display:block}.x-virtual-table .horizontal-scroll-container .scroll-item{height:1px}.x-virtual-table .column-resize-line{border-color:var(--fd-color-brand-6,#00b899);display:none;height:100%;left:0;position:absolute;top:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:1px;z-index:7}.x-virtual-table .column-resize-line.active{cursor:ew-resize;display:block}.x-svgicon{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;text-rendering:optimizeLegibility;text-transform:none}.x-svgicon>svg{vertical-align:-.125em}.x-svgicon.spin{animation:x-rotate 1s linear infinite;transform-origin:center}.x-collapse{background-color:var(--fd-color-fill-alter);border:1px solid var(--fd-color-border);border-bottom:0;border-radius:var(--fd-border-radius-lg);display:flex;flex-direction:column}.x-collapse *,.x-collapse :after,.x-collapse :before{box-sizing:border-box}.x-collapse>.x-collapse-item{border-bottom:1px solid var(--fd-color-border);font-size:var(--fd-font-size)}.x-collapse>.x-collapse-item:last-child,.x-collapse>.x-collapse-item:last-child>.x-collapse-header,.x-collapse>.x-collapse-item:last-child>.x-panel-content{border-radius:0 0 var(--fd-border-radius-lg) var(--fd-border-radius-lg)}.x-collapse>.x-collapse-item>.x-collapse-header{align-items:center;color:var(--fd-color-text);cursor:pointer;display:flex;flex-wrap:nowrap;line-height:var(--fd-line-height);padding:var(--fd-padding-lg) var(--fd-padding-xl);transition:all .3s}.x-collapse>.x-collapse-item>.x-collapse-header:focus{outline:none}.x-collapse>.x-collapse-item>.x-collapse-header>.x-collapse-header-text{flex:auto}.x-collapse>.x-collapse-item>.x-collapse-header>.x-collapse-header-text:not(.auto-wrap){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-collapse>.x-collapse-item>.x-collapse-header .x-collapse-expand-icon{align-items:center;color:var(--fd-color-icon-normal);display:flex;font-size:var(--fd-icon-size);margin-right:var(--fd-gap-xl)}.x-collapse>.x-collapse-item>.x-collapse-header .x-collapse-arrow svg{transition:transform .3s}.x-collapse>.x-collapse-item>.x-collapse-header .x-collapse-arrow.expand svg{transform:rotate(90deg)}.x-collapse>.x-collapse-item>.x-collapse-header .x-collapse-extra{align-items:center;display:flex}.x-collapse>.x-collapse-item .x-collapse-header-collapsible-only{cursor:default}.x-collapse>.x-collapse-item .x-collapse-header-collapsible-only .x-collapse-header-text{-webkit-box-flex:0;cursor:pointer;flex:0 1 auto}.x-collapse>.x-collapse-item .x-collapse-icon-collapsible-only{cursor:default}.x-collapse>.x-collapse-item .x-collapse-icon-collapsible-only .x-collapse-expand-icon{cursor:pointer}.x-collapse>.x-collapse-item>.x-panel-content{background-color:var(--fd-color-white);border-top:1px solid var(--fd-color-border);color:var(--fd-color-text)}.x-collapse>.x-collapse-item>.x-panel-content .x-panel-box{padding:var(--fd-collapse-panel-padding)}.x-collapse>.x-collapse-item>.x-panel-content-enter{height:0;opacity:0;overflow:hidden}.x-collapse>.x-collapse-item>.x-panel-content-enter-active{opacity:1;overflow:hidden;transition:all .2s}.x-collapse>.x-collapse-item>.x-panel-content-exit{opacity:1}.x-collapse>.x-collapse-item>.x-panel-content-exit-active{opacity:0;overflow:hidden;transition:all .2s}.x-collapse>.x-collapse-item>.x-panel-content-exit-done{display:none}.x-collapse .x-collapse-item-flex{-webkit-box-flex:1;display:flex;flex:1;flex-direction:column}.x-collapse .x-collapse-item-flex .x-panel-content{flex:1}.x-collapse .x-collapse-item-flex .x-panel-content .x-panel-box{height:100%}.x-collapse.small>.x-collapse-item>.x-collapse-header{padding:var(--fd-padding) var(--fd-padding-lg)}.x-collapse.small>.x-collapse-item>.x-panel-content>.x-panel-box{line-height:var(--fd-line-height);padding:var(--fd-collapse-panel-padding-sm)}.x-collapse.large>.x-collapse-item{font-size:var(--fd-font-size-lg)}.x-collapse.large>.x-collapse-item>.x-collapse-header{line-height:var(--fd-line-height-lg);padding:var(--fd-padding-xl) var(--fd-padding-3xl)}.x-collapse.large>.x-collapse-item>.x-panel-content>.x-panel-box{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg);padding:var(--fd-collapse-panel-padding-lg)}.x-collapse .x-collapse-item-disabled>.x-collapse-header,.x-collapse .x-collapse-item-disabled>.x-collapse-header>.arrow{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-collapse.x-collapse-icon-position-end>.x-collapse-item>.x-collapse-header .x-collapse-expand-icon{-webkit-box-ordinal-group:2;-ms-flex-order:1;margin-left:var(--fd-gap);margin-right:0;order:1}.x-collapse-borderless{background-color:var(--fd-color-fill-alter);border:0}.x-collapse-borderless .x-collapse-item{border-bottom:1px solid #d7d9dc}.x-collapse-borderless .x-collapse-item:last-child,.x-collapse-borderless>.x-collapse-item:last-child .x-collapse-header{border-radius:0}.x-collapse-borderless .x-collapse-item:last-child{border-bottom:0}.x-collapse-borderless>.x-collapse-item>.x-panel-content{background-color:transparent;border-top:0}.x-collapse-borderless>.x-collapse-item>.x-panel-content .x-panel-box{padding:var(--fd-collapse-panel-padding-no-border)}.x-collapse-borderless.large>.x-collapse-item>.x-panel-content .x-panel-box{padding:var(--fd-collapse-panel-padding-no-border-lg)}.x-collapse-borderless.small>.x-collapse-item>.x-panel-content .x-panel-box{padding:var(--fd-collapse-panel-padding-no-border-sm)}.x-collapse-ghost{background-color:transparent;border:0}.x-collapse-ghost .x-collapse-item{border-bottom:0}.x-collapse-ghost .x-collapse-item>.x-panel-content{background-color:transparent;border:0}.x-slider{cursor:pointer;position:relative}.x-slider *,.x-slider :after,.x-slider :before{box-sizing:border-box}.x-slider .x-slider-rail{background-color:var(--fd-color-fill-tertiary)}.x-slider .x-slider-rail,.x-slider .x-slider-track{border-radius:2px;position:absolute;transition:background-color .2s}.x-slider .x-slider-track{background-color:var(--fd-color-primary-border)}.x-slider:hover .x-slider-rail{background-color:var(--fd-color-fill-secondary)}.x-slider:hover .x-slider-track{background-color:var(--fd-color-primary-border-hover)}.x-slider:hover .x-slider-step .x-slider-dot{border-color:var(--fd-color-border)}.x-slider:hover .x-slider-handle:after{box-shadow:0 0 0 2px var(--fd-color-primary-border-hover)}.x-slider:hover .x-slider-dot-active{border-color:var(--fd-color-primary-border)}.x-slider .x-slider-handle{height:10px;position:absolute;width:10px}.x-slider .x-slider-handle.handle-bg:after{background:var(--fd-slider-handle-fg);box-shadow:0 0 0 2px var(--fd-slider-handle-bg)}.x-slider .x-slider-handle.handle-bg:active:after,.x-slider .x-slider-handle.handle-bg:focus:after,.x-slider .x-slider-handle.handle-bg:hover:after{box-shadow:0 0 0 4px var(--fd-slider-handle-bg)}.x-slider .x-slider-handle .x-slider-dragging{z-index:1}.x-slider .x-slider-handle:after{background-color:#fff;border-radius:50%;box-shadow:0 0 0 2px var(--fd-color-primary-border);content:" ";cursor:pointer;height:10px;position:absolute;transition:width .2s,height .2s,box-shadow .2s;width:10px}.x-slider .x-slider-handle:active,.x-slider .x-slider-handle:focus,.x-slider .x-slider-handle:hover{outline:none}.x-slider .x-slider-handle:active:after,.x-slider .x-slider-handle:focus:after,.x-slider .x-slider-handle:hover:after{box-shadow:0 0 0 4px var(--fd-color-primary);height:12px;width:12px}.x-slider .x-slider-mark{font-size:var(--fd-font-size);line-height:var(--fd-line-height);position:absolute}.x-slider .x-slider-mark .x-slider-mark-text{color:var(--fd-color-text);cursor:pointer;display:inline-block;position:absolute;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-slider .x-slider-mark .x-slider-mark-text.x-slider-mark-text-active{color:var(--fd-color-text)}.x-slider .x-slider-step{background:transparent;pointer-events:none;position:absolute}.x-slider .x-slider-step .x-slider-dot{background-color:#fff;border:2px solid var(--fd-color-border-secondary);border-radius:50%;cursor:pointer;height:8px;pointer-events:auto;position:absolute;transition:border-color .3s;width:8px}.x-slider .x-slider-step .x-slider-dot:hover{border-color:var(--fd-color-border)}.x-slider .x-slider-step .x-slider-dot.x-slider-dot-active{border-color:var(--fd-color-primary-border)}.x-slider .x-slider-step .x-slider-dot.x-slider-dot-active:hover{border-color:var(--fd-color-primary)}.x-slider.x-slider-disabled{cursor:not-allowed}.x-slider.x-slider-disabled .x-slider-rail{background-color:var(--fd-color-fill-tertiary)!important}.x-slider.x-slider-disabled .x-slider-track{background-color:var(--fd-color-bg-container-disabled)!important}.x-slider.x-slider-disabled .x-slider-dot{background-color:#fff;border-color:var(--fd-color-border-secondary)!important;box-shadow:none;cursor:not-allowed}.x-slider.x-slider-disabled .x-slider-handle:after{background-color:#fff;box-shadow:0 0 0 2px var(--fd-color-text-disabled);cursor:not-allowed;height:10px;width:10px}.x-slider.x-slider-disabled .x-slider-dot,.x-slider.x-slider-disabled .x-slider-mark-text{color:var(--fd-color-text-disabled)!important;cursor:not-allowed!important}.x-slider.x-slider-horizontal{height:12px;margin:var(--fd-padding);padding-bottom:4px;padding-top:4px}.x-slider.x-slider-horizontal .x-slider-rail{height:4px;width:100%}.x-slider.x-slider-horizontal .x-slider-track{height:4px}.x-slider.x-slider-horizontal .x-slider-handle{top:1px}.x-slider.x-slider-horizontal .x-slider-mark{top:12px;width:100%}.x-slider.x-slider-horizontal .x-slider-step{height:4px;top:4px;width:100%}.x-slider.x-slider-horizontal .x-slider-dot{position:absolute;top:-2px}.x-slider.x-slider-horizontal.x-slider-with-marks{margin-bottom:30px}.x-slider.x-slider-vertical{height:100%;margin:var(--fd-padding) var(--fd-padding-xs);padding-left:4px;padding-right:4px;width:12px}.x-slider.x-slider-vertical .x-slider-rail{height:100%;width:4px}.x-slider.x-slider-vertical .x-slider-track{width:4px}.x-slider.x-slider-vertical .x-slider-handle{left:1px}.x-slider.x-slider-vertical .x-slider-mark{height:100%;margin-left:17px}.x-slider.x-slider-vertical .x-slider-step{height:100%;left:4px;width:4px}.x-slider.x-slider-vertical .x-slider-step .x-slider-dot{left:-2px;position:absolute}.x-image{display:inline-block;position:relative}.x-image *,.x-image :after,.x-image :before{box-sizing:border-box}.x-image img{border:0;outline:none}.x-image .x-image-img{height:auto;vertical-align:middle;width:100%}.x-image .x-image-mask{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:var(--fd-color-bg-mask);color:var(--fd-color-text-light-solid);cursor:pointer;display:flex;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity .3s}.x-image .x-image-mask .x-image-mask-info{font-size:var(--fd-font-size-lg);line-height:var(--fd-line-height-lg);overflow:hidden;padding:0 var(--fd-padding-xl);text-overflow:ellipsis;white-space:nowrap}.x-image .x-image-mask .x-image-mask-info .x-svgicon{margin-right:var(--fd-gap-sm)}.x-image .x-image-mask:hover{opacity:1}.x-image .x-image-placeholder{inset:0;position:absolute}.x-dropdown{background:var(--fd-color-bg-elevated);border-radius:var(--fd-border-radius-lg);box-shadow:var(--fd-box-shadow-secondary);display:block;position:absolute}.x-dropdown *,.x-dropdown :after,.x-dropdown :before{box-sizing:border-box}.x-dropdown .dropdown-arrow{display:block;height:12px;overflow:hidden;pointer-events:none;position:absolute;width:12px;z-index:1}.x-dropdown .dropdown-arrow.no-arrow{display:none!important}.x-dropdown .dropdown-arrow:before{background:#fff;bottom:0;clip-path:polygon(1.65685425px 100%,50% 1.65685425px,10.34314575px 100%,1.65685425px 100%);clip-path:path("M 0 6 A 4 4 0 0 0 2.82842712474619 4.82842712474619 L 4.585786437626905 3.0710678118654755 A 2 2 0 0 1 7.414213562373095 3.0710678118654755 L 9.17157287525381 4.82842712474619 A 4 4 0 0 0 12 6 Z");content:"";height:6px;inset-inline-start:0;position:absolute;width:12px}.x-dropdown .dropdown-arrow:after{background:transparent;border-radius:0 0 2px;bottom:0;box-shadow:2px 2px 5px #0000000d;content:"";height:6.14213562px;inset-inline:0;margin:auto;position:absolute;transform:translateY(50%) rotate(-135deg);width:6.14213562px;z-index:0}.x-dropdown.placement-top .dropdown-arrow,.x-dropdown.placement-top-left .dropdown-arrow,.x-dropdown.placement-top-right .dropdown-arrow{bottom:0;transform:translateY(100%) rotate(180deg)}.x-dropdown.placement-top .dropdown-arrow{left:50%;transform:translate(-50%) translateY(100%) rotate(180deg)}.x-dropdown.placement-top-left .dropdown-arrow{left:8px}.x-dropdown.placement-top-right .dropdown-arrow{right:8px}.x-dropdown.placement-bottom .dropdown-arrow,.x-dropdown.placement-bottom-left .dropdown-arrow,.x-dropdown.placement-bottom-right .dropdown-arrow{top:0;transform:translateY(-100%)}.x-dropdown.placement-bottom .dropdown-arrow{left:50%;transform:translate(-50%) translateY(-100%)}.x-dropdown.placement-bottom-left .dropdown-arrow{left:8px}.x-dropdown.placement-bottom-right .dropdown-arrow{right:8px}.x-dropdown.placement-left .dropdown-arrow,.x-dropdown.placement-left-bottom .dropdown-arrow,.x-dropdown.placement-left-top .dropdown-arrow{right:0;transform:translate(100%) rotate(90deg)}.x-dropdown.placement-left .dropdown-arrow{top:50%;transform:translateY(-50%) translate(100%) rotate(90deg)}.x-dropdown.placement-left-top .dropdown-arrow{top:8px}.x-dropdown.placement-left-bottom .dropdown-arrow{bottom:8px}.x-dropdown.placement-right .dropdown-arrow,.x-dropdown.placement-right-bottom .dropdown-arrow,.x-dropdown.placement-right-top .dropdown-arrow{left:0;transform:translate(-100%) rotate(-90deg)}.x-dropdown.placement-right .dropdown-arrow{top:50%;transform:translateY(-50%) translate(-100%) rotate(-90deg)}.x-dropdown.placement-right-top .dropdown-arrow{top:8px}.x-dropdown.placement-right-bottom .dropdown-arrow{bottom:8px}.x-dropdown-top-appear,.x-dropdown-top-enter{animation:x-move-bottom-small .2s ease;animation-fill-mode:forwards}.x-dropdown-top-exit{animation:x-move-bottom-small .1s ease-in reverse;animation-fill-mode:forwards}.x-dropdown-bottom-appear,.x-dropdown-bottom-enter{animation:x-move-top-small .2s ease;animation-fill-mode:forwards}.x-dropdown-bottom-exit{animation:x-move-top-small .1s ease-in reverse;animation-fill-mode:forwards}.x-autocomplete *,.x-autocomplete :after,.x-autocomplete :before{box-sizing:border-box}.x-autocomplete.borderless .x-inner-wrapper{border:none}.x-autocomplete-popover .x-autocomplete-list{max-height:256px;overflow-y:auto}.x-autocomplete-popover .x-autocomplete-item{border-radius:var(--fd-border-radius-sm);box-sizing:border-box;color:var(--fd-color-text);cursor:pointer;display:block;font-size:var(--fd-font-size);line-height:var(--fd-line-height);min-height:var(--fd-control-height);overflow:hidden;padding:var(--fd-padding-xs) var(--fd-padding);position:relative;text-overflow:ellipsis;white-space:nowrap}.x-autocomplete-popover .x-autocomplete-item.active:not(.disabled){background-color:var(--fd-control-item-bg-active)}.x-autocomplete-popover .x-autocomplete-item.disabled{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-autocomplete-popover .x-autocomplete-loading{min-height:var(--fd-control-height)}.x-autocomplete-popover .x-popover-wrapper{padding:var(--fd-padding-layout-2xs)}.x-typography{color:var(--fd-color-text);word-break:break-word}.x-typography.x-typography-secondary{color:var(--fd-color-text-secondary)}.x-typography.x-typography-success{color:var(--fd-color-success)}.x-typography.x-typography-warning{color:var(--fd-color-warning)}.x-typography.x-typography-danger{color:var(--fd-color-error)}a:active.x-typography.x-typography-danger,a:focus.x-typography.x-typography-danger{color:var(--fd-color-error-text-active)}a:hover.x-typography.x-typography-danger{color:var(--fd-color-error-text-hover)}.x-typography.x-typography-disabled{color:var(--fd-color-text-disabled);cursor:not-allowed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.x-typography p,div.x-typography{margin-bottom:1em}.x-typography div.x-typography-h1,.x-typography div.x-typography-h1>textarea,.x-typography h1,h1.x-typography{color:var(--fd-color-text);font-size:var(--fd-font-size-heading-1);font-weight:600;line-height:var(--fd-line-height-heading-1);margin-bottom:.5em}.x-typography div.x-typography-h2,.x-typography div.x-typography-h2>textarea,.x-typography h2,h2.x-typography{color:var(--fd-color-text);font-size:var(--fd-font-size-heading-2);font-weight:600;line-height:var(--fd-line-height-heading-2);margin-bottom:.5em}.x-typography div.x-typography-h3,.x-typography div.x-typography-h3>textarea,.x-typography h3,h3.x-typography{color:var(--fd-color-text);font-size:var(--fd-font-size-heading-3);font-weight:600;line-height:var(--fd-line-height-heading-3);margin-bottom:.5em}.x-typography div.x-typography-h4,.x-typography div.x-typography-h4>textarea,.x-typography h4,h4.x-typography{color:var(--fd-color-text);font-size:var(--fd-font-size-heading-4);font-weight:600;line-height:var(--fd-line-height-heading-4);margin-bottom:.5em}.x-typography div.x-typography-h5,.x-typography div.x-typography-h5>textarea,.x-typography h5,h5.x-typography{color:var(--fd-color-text);font-size:var(--fd-font-size-heading-5);font-weight:600;line-height:var(--fd-line-height-heading-5);margin-bottom:.5em}.x-typography div+h1,.x-typography div+h2,.x-typography div+h3,.x-typography div+h4,.x-typography div+h5,.x-typography h1+h1,.x-typography h1+h2,.x-typography h1+h3,.x-typography h1+h4,.x-typography h1+h5,.x-typography h2+h1,.x-typography h2+h2,.x-typography h2+h3,.x-typography h2+h4,.x-typography h2+h5,.x-typography h3+h1,.x-typography h3+h2,.x-typography h3+h3,.x-typography h3+h4,.x-typography h3+h5,.x-typography h4+h1,.x-typography h4+h2,.x-typography h4+h3,.x-typography h4+h4,.x-typography h4+h5,.x-typography h5+h1,.x-typography h5+h2,.x-typography h5+h3,.x-typography h5+h4,.x-typography h5+h5,.x-typography li+h1,.x-typography li+h2,.x-typography li+h3,.x-typography li+h4,.x-typography li+h5,.x-typography p+h1,.x-typography p+h2,.x-typography p+h3,.x-typography p+h4,.x-typography p+h5,.x-typography ul+h1,.x-typography ul+h2,.x-typography ul+h3,.x-typography ul+h4,.x-typography ul+h5,.x-typography+h1.x-typography,.x-typography+h2.x-typography,.x-typography+h3.x-typography,.x-typography+h4.x-typography,.x-typography+h5.x-typography{margin-top:1.2em}.x-typography a,a.x-typography{color:var(--fd-color-primary);cursor:pointer;outline:none;text-decoration:none;transition:.3s}.x-typography a:focus,.x-typography a:hover,a.x-typography:focus,a.x-typography:hover{color:var(--fd-color-primary-hover);outline:none}.x-typography a:active,a.x-typography:active{color:var(--fd-color-primary-active)}.x-typography a:active,.x-typography a:hover,a.x-typography:active,a.x-typography:hover{text-decoration:none}.x-typography a.x-typography-disabled,.x-typography a[disabled],a.x-typography.x-typography-disabled,a.x-typography[disabled]{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-typography a.x-typography-disabled:active,.x-typography a.x-typography-disabled:hover,.x-typography a[disabled]:active,.x-typography a[disabled]:hover,a.x-typography.x-typography-disabled:active,a.x-typography.x-typography-disabled:hover,a.x-typography[disabled]:active,a.x-typography[disabled]:hover{color:var(--fd-color-text-disabled)}.x-typography a.x-typography-disabled:active,.x-typography a[disabled]:active,a.x-typography.x-typography-disabled:active,a.x-typography[disabled]:active{pointer-events:none}.x-typography .x-typography-copy,.x-typography .x-typography-edit,.x-typography .x-typography-expand{color:var(--fd-color-primary);cursor:pointer;margin-left:4px;outline:none;text-decoration:none;transition:.3s}.x-typography .x-typography-copy:focus,.x-typography .x-typography-copy:hover,.x-typography .x-typography-edit:focus,.x-typography .x-typography-edit:hover,.x-typography .x-typography-expand:focus,.x-typography .x-typography-expand:hover{color:var(--fd-color-primary-hover);outline:none}.x-typography .x-typography-copy:active,.x-typography .x-typography-edit:active,.x-typography .x-typography-expand:active{color:var(--fd-color-primary-active)}.x-typography .x-typography-copy,.x-typography .x-typography-edit{background:transparent;border:0;display:inline-block;padding:0}.x-typography .x-typography-copy.disabled,.x-typography .x-typography-edit.disabled{pointer-events:none}.x-typography.x-typography-edit-content{position:relative}div.x-typography.x-typography-edit-content{margin-bottom:calc(1em - 5px);margin-left:-12px;margin-top:-5px}.x-typography.x-typography-edit-content .x-typography-edit-content-confirm{color:var(--fd-color-text-description);font-size:var(--fd-font-size);font-style:normal;font-weight:400;pointer-events:none;position:absolute;right:10px;top:6px}.x-typography.x-typography-edit-content textarea{height:1em;margin:0!important}.x-typography .x-typography-copy-success,.x-typography .x-typography-copy-success:focus,.x-typography .x-typography-copy-success:hover{color:var(--fd-color-success)}a.x-typography.x-typography-ellipsis,span.x-typography.x-typography-ellipsis{display:inline-block;max-width:100%}.x-typography.x-typography-single-line{white-space:nowrap}.x-typography.x-typography-ellipsis-single-line{overflow:hidden;text-overflow:ellipsis}a.x-typography.x-typography-ellipsis-single-line,span.x-typography.x-typography-ellipsis-single-line{vertical-align:bottom}.x-typography .x-typography-ellipsis-multiple-line{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.x-select{color:var(--fd-color-text);cursor:pointer;display:inline-block;font-size:var(--fd-font-size);margin:0;padding:0;position:relative;width:200px}.x-select *,.x-select :after,.x-select :before{box-sizing:border-box}.x-select-borderless .x-select-selector{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important}.x-select.x-select-open .x-select-arrow .x-select-suffix{transform:rotate(180deg)}.x-select .x-select-selector{background:var(--fd-color-bg-container);border:1px solid var(--fd-color-border);position:relative;transition:all .2s cubic-bezier(.43,.1,.54,.85)}.x-select-disabled.x-select .x-select-selector{color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-select-disabled.x-select .x-select-selector,.x-select-multiple.x-select-disabled.x-select .x-select-selector{background:var(--fd-color-bg-container-disabled)}.x-select .x-select-custom-selector{height:100%}.x-select .x-select-selection-item{flex:1;font-weight:400;overflow:hidden;position:relative;text-overflow:ellipsis;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.x-select .x-select-selection-item>.x-typography{display:inline}.x-select .x-select-selection-placeholder{-webkit-box-flex:1;color:var(--fd-color-text-placeholder);flex:1;overflow:hidden;pointer-events:none;text-overflow:ellipsis;white-space:nowrap}.x-select .x-select-arrow{align-items:center;color:var(--fd-color-icon-normal);display:flex;line-height:1;pointer-events:none;position:absolute;text-align:center;text-transform:none;top:50%;transform:translateY(-50%)}.x-select .x-select-arrow .x-select-suffix{transform:rotate(0);transition:transform .2s ease}.x-select .x-select-arrow .x-svgicon{transition:transform .3s}.x-select .x-select-arrow .x-svgicon:not(.x-select-suffix){pointer-events:auto}.x-select-disabled.x-select .x-select-arrow{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-select .x-select-arrow>:not(:last-child){margin-inline-end:8px}.x-select .x-select-clear{background:var(--fd-color-bg-container);color:var(--fd-color-icon);cursor:pointer;display:inline-block;font-style:normal;line-height:1;opacity:0;position:absolute;text-align:center;text-rendering:auto;text-transform:none;top:50%;transform:translateY(-50%);transition:color .2s ease,opacity .3s ease;z-index:1}.x-select .x-select-clear:before{display:none}.x-select .x-select-clear:hover{color:var(--fd-color-icon-hover)}.x-select:not(.x-select-disabled):hover .x-select-clear{opacity:1}.x-select .x-select-arrow,.x-select .x-select-clear,.x-select .x-select-loading{font-size:var(--fd-icon-size);height:var(--fd-icon-size);right:var(--fd-padding);width:var(--fd-icon-size)}.x-select.x-select-sm .x-select-arrow,.x-select.x-select-sm .x-select-clear,.x-select.x-select-sm .x-select-loading{font-size:var(--fd-icon-size);height:var(--fd-icon-size);right:var(--fd-padding-xs);width:var(--fd-icon-size)}.x-select.x-select-lg .x-select-arrow,.x-select.x-select-lg .x-select-clear,.x-select.x-select-lg .x-select-loading{font-size:var(--fd-icon-size);height:var(--fd-icon-size);right:var(--fd-padding);width:var(--fd-icon-size)}.x-select:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-border)}.x-select-focused.x-select:not(.x-select-disabled) .x-select-selector,.x-select-open.x-select:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-primary-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline);outline:0}.x-select:not(.x-select-disabled):hover .x-select-selector{border-color:var(--fd-color-primary-hover)}.x-select.x-select-status-success:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-success)}.x-select-focused.x-select.x-select-status-success:not(.x-select-disabled) .x-select-selector,.x-select-open.x-select.x-select-status-success:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-success-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-control-outline);outline:0}.x-select.x-select-status-success:not(.x-select-disabled):hover .x-select-selector{border-color:var(--fd-color-success-hover)}.x-select.x-select-status-error:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-error)}.x-select-focused.x-select.x-select-status-error:not(.x-select-disabled) .x-select-selector,.x-select-open.x-select.x-select-status-error:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-error-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-error-outline);outline:0}.x-select.x-select-status-error:not(.x-select-disabled):hover .x-select-selector{border-color:var(--fd-color-error-hover)}.x-select.x-select-status-warning:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-warning)}.x-select-focused.x-select.x-select-status-warning:not(.x-select-disabled) .x-select-selector,.x-select-open.x-select.x-select-status-warning:not(.x-select-disabled) .x-select-selector{border-color:var(--fd-color-warning-hover);box-shadow:0 0 0 var(--fd-control-outline-width) var(--fd-color-warning-outline);outline:0}.x-select.x-select-status-warning:not(.x-select-disabled):hover .x-select-selector{border-color:var(--fd-color-warning-hover)}.x-select-multiple,.x-select-single{font-size:var(--fd-font-size);height:var(--fd-control-height)}.x-select-multiple .x-select-selector,.x-select-single .x-select-selector{border-radius:var(--fd-border-radius);display:flex;height:100%;padding:0 var(--fd-padding);width:100%}.x-select-multiple .x-select-selector:after,.x-select-single .x-select-selector:after{line-height:calc(var(--fd-control-height) - 2px)}.x-select-multiple .x-select-selector .x-select-selection-item,.x-select-multiple .x-select-selector .x-select-selection-placeholder,.x-select-single .x-select-selector .x-select-selection-item,.x-select-single .x-select-selector .x-select-selection-placeholder{align-self:center;line-height:calc(var(--fd-control-height) - 2px);padding:0;transition:all .3s,visibility 0s}.x-select-multiple .x-select-selector .x-select-selection-placeholder,.x-select-single .x-select-selector .x-select-selection-placeholder{pointer-events:none;transition:none}.x-select-multiple .x-select-selector .x-select-selection-item-error,.x-select-single .x-select-selector .x-select-selection-item-error{color:var(--fd-color-error-text)}.x-select-multiple .x-select-selector .x-select-selection-item:empty:after,.x-select-multiple .x-select-selector .x-select-selection-placeholder:empty:after,.x-select-multiple .x-select-selector:after,.x-select-single .x-select-selector .x-select-selection-item:empty:after,.x-select-single .x-select-selector .x-select-selection-placeholder:empty:after,.x-select-single .x-select-selector:after{content:"\\a0";display:inline-block;visibility:hidden;width:0}.x-select-multiple.x-select-clear .x-select-selector,.x-select-multiple.x-select-show-arrow .x-select-selector,.x-select-single.x-select-clear .x-select-selector,.x-select-single.x-select-show-arrow .x-select-selector{padding-right:calc(var(--fd-padding) + var(--fd-gap-sm) + var(--fd-icon-size))}.x-select-multiple.x-select-sm,.x-select-single.x-select-sm{font-size:var(--fd-font-size-sm);height:var(--fd-control-height-sm)}.x-select-multiple.x-select-sm .x-select-selector,.x-select-single.x-select-sm .x-select-selector{border-radius:var(--fd-border-radius);display:flex;height:100%;padding:0 var(--fd-padding-xs);width:100%}.x-select-multiple.x-select-sm .x-select-selector:after,.x-select-single.x-select-sm .x-select-selector:after{line-height:calc(var(--fd-control-height-sm) - 2px)}.x-select-multiple.x-select-sm .x-select-selector .x-select-selection-item,.x-select-multiple.x-select-sm .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-sm .x-select-selector .x-select-selection-item,.x-select-single.x-select-sm .x-select-selector .x-select-selection-placeholder{align-self:center;line-height:calc(var(--fd-control-height-sm) - 2px);padding:0;transition:all .3s,visibility 0s}.x-select-multiple.x-select-sm .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-sm .x-select-selector .x-select-selection-placeholder{pointer-events:none;transition:none}.x-select-multiple.x-select-sm .x-select-selector .x-select-selection-item-error,.x-select-single.x-select-sm .x-select-selector .x-select-selection-item-error{color:var(--fd-color-error-text)}.x-select-multiple.x-select-sm .x-select-selector .x-select-selection-item:empty:after,.x-select-multiple.x-select-sm .x-select-selector .x-select-selection-placeholder:empty:after,.x-select-multiple.x-select-sm .x-select-selector:after,.x-select-single.x-select-sm .x-select-selector .x-select-selection-item:empty:after,.x-select-single.x-select-sm .x-select-selector .x-select-selection-placeholder:empty:after,.x-select-single.x-select-sm .x-select-selector:after{content:"\\a0";display:inline-block;visibility:hidden;width:0}.x-select-multiple.x-select-sm.x-select-clear .x-select-selector,.x-select-multiple.x-select-sm.x-select-show-arrow .x-select-selector,.x-select-single.x-select-sm.x-select-clear .x-select-selector,.x-select-single.x-select-sm.x-select-show-arrow .x-select-selector{padding-right:calc(var(--fd-padding-xs) + var(--fd-gap-sm) + var(--fd-icon-size))}.x-select-multiple.x-select-lg,.x-select-single.x-select-lg{font-size:var(--fd-font-size-lg);height:var(--fd-control-height-lg)}.x-select-multiple.x-select-lg .x-select-selector,.x-select-single.x-select-lg .x-select-selector{border-radius:var(--fd-border-radius);display:flex;height:100%;padding:0 var(--fd-padding);width:100%}.x-select-multiple.x-select-lg .x-select-selector:after,.x-select-single.x-select-lg .x-select-selector:after{line-height:calc(var(--fd-control-height-lg) - 2px)}.x-select-multiple.x-select-lg .x-select-selector .x-select-selection-item,.x-select-multiple.x-select-lg .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-lg .x-select-selector .x-select-selection-item,.x-select-single.x-select-lg .x-select-selector .x-select-selection-placeholder{align-self:center;line-height:calc(var(--fd-control-height-lg) - 2px);padding:0;transition:all .3s,visibility 0s}.x-select-multiple.x-select-lg .x-select-selector .x-select-selection-placeholder,.x-select-single.x-select-lg .x-select-selector .x-select-selection-placeholder{pointer-events:none;transition:none}.x-select-multiple.x-select-lg .x-select-selector .x-select-selection-item-error,.x-select-single.x-select-lg .x-select-selector .x-select-selection-item-error{color:var(--fd-color-error-text)}.x-select-multiple.x-select-lg .x-select-selector .x-select-selection-item:empty:after,.x-select-multiple.x-select-lg .x-select-selector .x-select-selection-placeholder:empty:after,.x-select-multiple.x-select-lg .x-select-selector:after,.x-select-single.x-select-lg .x-select-selector .x-select-selection-item:empty:after,.x-select-single.x-select-lg .x-select-selector .x-select-selection-placeholder:empty:after,.x-select-single.x-select-lg .x-select-selector:after{content:"\\a0";display:inline-block;visibility:hidden;width:0}.x-select-multiple.x-select-lg.x-select-clear .x-select-selector,.x-select-multiple.x-select-lg.x-select-show-arrow .x-select-selector,.x-select-single.x-select-lg.x-select-clear .x-select-selector,.x-select-single.x-select-lg.x-select-show-arrow .x-select-selector{padding-right:calc(var(--fd-padding) + var(--fd-gap-sm) + var(--fd-icon-size))}.x-select-tags{font-size:var(--fd-font-size)}.x-select-tags .x-select-selection-overflow{-webkit-box-flex:1;display:flex;flex:auto;flex-wrap:wrap;max-width:100%;position:relative}.x-select-tags .x-select-selection-overflow-item{-webkit-box-flex:0;align-self:center;display:inline-flex;flex:none;max-width:100%}.x-select-tags .x-select-selector{align-items:center;border-radius:var(--fd-border-radius);display:flex;flex-wrap:wrap;height:100%;padding:0 var(--fd-padding) 0 var(--fd-padding-xs)}.x-select-disabled.x-select-tags .x-select-selector{background:var(--fd-color-bg-container-disabled);cursor:not-allowed}.x-select-tags .x-select-selector:after{content:'"\\\\a0"';display:inline-block;line-height:calc(var(--fd-control-height) - 2px - var(--fd-padding-xs)*2);margin:var(--fd-padding-xs) 0;visibility:hidden;width:0}.x-select-tags.x-select-allow-clear .x-select-selector,.x-select-tags.x-select-allow-clear .x-select-selector .x-select-selection-placeholder,.x-select-tags.x-select-show-arrow .x-select-selector,.x-select-tags.x-select-show-arrow .x-select-selector .x-select-selection-placeholder{padding-right:calc(var(--fd-padding) + var(--fd-gap-sm) + var(--fd-icon-size))}.x-select-tags .x-select-selection-item{-ms-flex-item-align:center;-webkit-margin-end:var(--fd-gap-sm);align-self:center;background:var(--fd-color-fill-tertiary);border:1px solid transparent;border-radius:var(--fd-border-radius-xs);cursor:default;display:flex;float:none;height:calc(var(--fd-control-height) - 2px - var(--fd-padding-xs)*2);line-height:calc(var(--fd-control-height) - 4px - var(--fd-padding-xs)*2);margin-bottom:var(--fd-padding-xs);margin-top:var(--fd-padding-xs);margin-inline-end:var(--fd-gap-sm);max-width:100%;padding:0 var(--fd-padding-sm);transition:font-size .3s,line-height .3s,height .3s}.x-select-tags .x-select-selection-item-error{background:var(--fd-color-error-bg-hover);color:var(--fd-color-error-text)}.x-select-tags .x-select-selection-item-disabled{background:var(--fd-color-fill-tertiary);color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-select-tags .x-select-selection-item-content{-webkit-margin-end:4px;display:inline-block;margin-inline-end:4px;overflow:hidden;text-overflow:ellipsis;white-space:pre}.x-select-tags .x-select-selection-item-remove{align-items:center;color:var(--fd-color-icon);cursor:pointer;display:inline-block;font-size:10px;font-weight:700;line-height:inherit}.x-select-tags .x-select-selection-item-remove>.x-svgicon{vertical-align:.2em}.x-select-tags .x-select-selection-item-remove:hover{color:var(--fd-color-icon-hover)}.x-select-tags .x-select-selection-overflow-item+.x-select-selection-overflow-item .x-select-selection-search{margin-inline-start:0}.x-select-tags .x-select-selection-placeholder{left:0;padding:0 var(--fd-padding) 0 var(--fd-padding-xs);position:absolute;right:0;top:50%;transform:translateY(-50%);transition:all .3s}.x-select-tags.x-select-sm{font-size:var(--fd-font-size-sm)}.x-select-tags.x-select-sm .x-select-selection-overflow{-webkit-box-flex:1;display:flex;flex:auto;flex-wrap:wrap;max-width:100%;position:relative}.x-select-tags.x-select-sm .x-select-selection-overflow-item{-webkit-box-flex:0;align-self:center;display:inline-flex;flex:none;max-width:100%}.x-select-tags.x-select-sm .x-select-selector{align-items:center;border-radius:var(--fd-border-radius);display:flex;flex-wrap:wrap;height:100%;padding:0 var(--fd-padding-xs) 0 var(--fd-padding-2xs)}.x-select-disabled.x-select-tags.x-select-sm .x-select-selector{background:var(--fd-color-bg-container-disabled);cursor:not-allowed}.x-select-tags.x-select-sm .x-select-selector:after{content:'"\\\\a0"';display:inline-block;line-height:calc(var(--fd-control-height-sm) - 2px - var(--fd-padding-2xs)*2);margin:var(--fd-padding-2xs) 0;visibility:hidden;width:0}.x-select-tags.x-select-sm.x-select-allow-clear .x-select-selector,.x-select-tags.x-select-sm.x-select-allow-clear .x-select-selector .x-select-selection-placeholder,.x-select-tags.x-select-sm.x-select-show-arrow .x-select-selector,.x-select-tags.x-select-sm.x-select-show-arrow .x-select-selector .x-select-selection-placeholder{padding-right:calc(var(--fd-padding-xs) + var(--fd-gap-sm) + var(--fd-icon-size))}.x-select-tags.x-select-sm .x-select-selection-item{-ms-flex-item-align:center;-webkit-margin-end:var(--fd-gap-sm);align-self:center;background:var(--fd-color-fill-tertiary);border:1px solid transparent;border-radius:var(--fd-border-radius-xs);cursor:default;display:flex;float:none;height:calc(var(--fd-control-height-sm) - 2px - var(--fd-padding-2xs)*2);line-height:calc(var(--fd-control-height-sm) - 4px - var(--fd-padding-2xs)*2);margin-bottom:var(--fd-padding-2xs);margin-top:var(--fd-padding-2xs);margin-inline-end:var(--fd-gap-sm);max-width:100%;padding:0 var(--fd-padding-sm);transition:font-size .3s,line-height .3s,height .3s}.x-select-tags.x-select-sm .x-select-selection-item-error{background:var(--fd-color-error-bg-hover);color:var(--fd-color-error-text)}.x-select-tags.x-select-sm .x-select-selection-item-disabled{background:var(--fd-color-fill-tertiary);color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-select-tags.x-select-sm .x-select-selection-item-content{-webkit-margin-end:4px;display:inline-block;margin-inline-end:4px;overflow:hidden;text-overflow:ellipsis;white-space:pre}.x-select-tags.x-select-sm .x-select-selection-item-remove{align-items:center;color:var(--fd-color-icon);cursor:pointer;display:inline-block;font-size:10px;font-weight:700;line-height:inherit}.x-select-tags.x-select-sm .x-select-selection-item-remove>.x-svgicon{vertical-align:.2em}.x-select-tags.x-select-sm .x-select-selection-item-remove:hover{color:var(--fd-color-icon-hover)}.x-select-tags.x-select-sm .x-select-selection-overflow-item+.x-select-selection-overflow-item .x-select-selection-search{margin-inline-start:0}.x-select-tags.x-select-sm .x-select-selection-placeholder{left:0;padding:0 var(--fd-padding-xs) 0 var(--fd-padding-2xs);position:absolute;right:0;top:50%;transform:translateY(-50%);transition:all .3s}.x-select-tags.x-select-lg{font-size:var(--fd-font-size-lg)}.x-select-tags.x-select-lg .x-select-selection-overflow{-webkit-box-flex:1;display:flex;flex:auto;flex-wrap:wrap;max-width:100%;position:relative}.x-select-tags.x-select-lg .x-select-selection-overflow-item{-webkit-box-flex:0;align-self:center;display:inline-flex;flex:none;max-width:100%}.x-select-tags.x-select-lg .x-select-selector{align-items:center;border-radius:var(--fd-border-radius);display:flex;flex-wrap:wrap;height:100%;padding:0 var(--fd-padding) 0 var(--fd-padding-xs)}.x-select-disabled.x-select-tags.x-select-lg .x-select-selector{background:var(--fd-color-bg-container-disabled);cursor:not-allowed}.x-select-tags.x-select-lg .x-select-selector:after{content:'"\\\\a0"';display:inline-block;line-height:calc(var(--fd-control-height-lg) - 2px - var(--fd-padding-xs)*2);margin:var(--fd-padding-xs) 0;visibility:hidden;width:0}.x-select-tags.x-select-lg.x-select-allow-clear .x-select-selector,.x-select-tags.x-select-lg.x-select-allow-clear .x-select-selector .x-select-selection-placeholder,.x-select-tags.x-select-lg.x-select-show-arrow .x-select-selector,.x-select-tags.x-select-lg.x-select-show-arrow .x-select-selector .x-select-selection-placeholder{padding-right:calc(var(--fd-padding) + var(--fd-gap-sm) + var(--fd-icon-size))}.x-select-tags.x-select-lg .x-select-selection-item{-ms-flex-item-align:center;-webkit-margin-end:var(--fd-gap-sm);align-self:center;background:var(--fd-color-fill-tertiary);border:1px solid transparent;border-radius:var(--fd-border-radius-xs);cursor:default;display:flex;float:none;height:calc(var(--fd-control-height-lg) - 2px - var(--fd-padding-xs)*2);line-height:calc(var(--fd-control-height-lg) - 4px - var(--fd-padding-xs)*2);margin-bottom:var(--fd-padding-xs);margin-top:var(--fd-padding-xs);margin-inline-end:var(--fd-gap-sm);max-width:100%;padding:0 var(--fd-padding-sm);transition:font-size .3s,line-height .3s,height .3s}.x-select-tags.x-select-lg .x-select-selection-item-error{background:var(--fd-color-error-bg-hover);color:var(--fd-color-error-text)}.x-select-tags.x-select-lg .x-select-selection-item-disabled{background:var(--fd-color-fill-tertiary);color:var(--fd-color-text-data-disabled);cursor:not-allowed}.x-select-tags.x-select-lg .x-select-selection-item-content{-webkit-margin-end:4px;display:inline-block;margin-inline-end:4px;overflow:hidden;text-overflow:ellipsis;white-space:pre}.x-select-tags.x-select-lg .x-select-selection-item-remove{align-items:center;color:var(--fd-color-icon);cursor:pointer;display:inline-block;font-size:10px;font-weight:700;line-height:inherit}.x-select-tags.x-select-lg .x-select-selection-item-remove>.x-svgicon{vertical-align:.2em}.x-select-tags.x-select-lg .x-select-selection-item-remove:hover{color:var(--fd-color-icon-hover)}.x-select-tags.x-select-lg .x-select-selection-overflow-item+.x-select-selection-overflow-item .x-select-selection-search{margin-inline-start:0}.x-select-tags.x-select-lg .x-select-selection-placeholder{left:0;padding:0 var(--fd-padding) 0 var(--fd-padding-xs);position:absolute;right:0;top:50%;transform:translateY(-50%);transition:all .3s}.x-select-dropdown{background:var(--fd-color-bg-elevated);border-radius:var(--fd-border-radius-lg);box-shadow:var(--fd-box-shadow-secondary);box-sizing:border-box;color:var(--fd-color-text);display:block;font-size:var(--fd-font-size);font-variant:normal;line-height:var(--fd-line-height);margin:0;overflow:hidden;padding:0;position:absolute;top:-9999px}.x-select-dropdown .x-select-list{padding:var(--fd-padding-layout-2xs)}.x-select-dropdown .x-select-item{align-items:center;border-radius:var(--fd-border-radius-sm);box-sizing:border-box;color:var(--fd-color-text);cursor:pointer;display:flex;font-size:var(--fd-font-size);font-weight:400;height:var(--fd-control-height);line-height:var(--fd-line-height);padding:0 var(--fd-padding);position:relative;transition:background .3s ease}.x-select-dropdown .x-select-item-group{color:var(--fd-color-text-description);cursor:default;font-size:var(--fd-font-size-sm);height:auto;line-height:var(--fd-line-height-sm);padding:var(--fd-padding-xs) var(--fd-padding) 0 var(--fd-padding)}.x-select-dropdown .x-select-item-option-icon{flex:none;font-size:var(--fd-icon-size);font-weight:400;margin-right:var(--fd-gap-sm)}.x-select-dropdown .x-select-item-option-content{flex:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-select-dropdown .x-select-item-option-check{margin-right:var(--fd-gap)}.x-select-dropdown .x-select-item-option-active:not(.x-select-item-option-disabled){background-color:var(--fd-color-fill-quaternary)}.x-select-dropdown .x-select-item-option-selected:not(.x-select-item-option-disabled):not(.x-select-item-option-disabled):not(.x-select-item-option-error).x-select-item-option-single{background-color:var(--fd-control-item-bg-active);color:var(--fd-color-text);font-weight:var(--fd-control-item-font-weight-active)}.x-select-dropdown .x-select-item-option-check-all,.x-select-dropdown .x-select-item-option-selected:not(.x-select-item-option-disabled):not(.x-select-item-option-disabled):not(.x-select-item-option-error).x-select-item-option-multiple{color:var(--fd-color-primary-text)}.x-select-dropdown .x-select-item-option-error{color:var(--fd-color-error-text)}.x-select-dropdown .x-select-item-option-disabled{color:var(--fd-color-text-disabled);cursor:not-allowed}.x-select-dropdown .x-select-item-option-grouped{padding-left:var(--fd-padding-xl)}.x-select-dropdown .x-select-empty{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;color:var(--fd-color-text-description);display:flex;height:var(--fd-control-height);justify-content:center}.x-select-dropdown .x-select-dropdown-search-input{border-bottom:1px solid var(--fd-color-split);border-radius:var(--fd-border-radius-lg) var(--fd-border-radius-lg) 0 0}.x-select-dropdown .x-select-dropdown-search-input input{background:var(--fd-color-bg-elevated)}.x-select-loading .spin-content{height:100%;width:100%}.x-select-loading .spin-content .spin-indicator{border-color:transparent!important;border-top-color:var(--fd-color-icon)!important;height:100%!important;width:100%!important}.x-tree-select{width:200px}.x-tree-select-dropdown .x-select-tree-list{max-height:256px;overflow-y:auto;padding:var(--fd-padding-layout-2xs)}.x-navigation{font-size:var(--fd-font-size);line-height:0;list-style:none;margin-bottom:0;outline:none;padding:0;transition:width .3s ease-out 0s}.x-navigation *,.x-navigation :after,.x-navigation :before{box-sizing:border-box}.x-navigation li{list-style-type:none}.x-navigation ol,.x-navigation ul{list-style:none;margin:0;padding:0}.x-navigation .x-navigation-overflow{display:flex}.x-navigation .x-navigation-overflow .x-navigation-item{flex:none}.x-navigation .x-navigation-item,.x-navigation .x-navigation-submenu,.x-navigation .x-navigation-submenu-title{border-radius:var(--fd-border-radius)}.x-navigation .x-navigation-submenu-inline.x-navigation-submenu-open+.x-navigation-item,.x-navigation .x-navigation-submenu-inline.x-navigation-submenu-open+.x-navigation-submenu .x-navigation-submenu-title{margin-block-start:calc(var(--fd-gap)/2)}.x-navigation .x-navigation-item-group-title{font-size:var(--fd-font-size-sm);line-height:var(--fd-line-height-sm);margin-inline:var(--fd-padding-layout-xs);margin-top:var(--fd-gap-sm);overflow:hidden;padding:var(--fd-padding-xs) var(--fd-padding-xs) 0 var(--fd-padding-xs);text-overflow:ellipsis;transition:all .3s;white-space:nowrap}.x-navigation .x-navigation-submenu,.x-navigation .x-navigation-submenu-inline{transition:border-color .3s ease-out,background .3s ease-out,padding .3s ease-out}.x-navigation .x-navigation-submenu .x-navigation-sub{cursor:auto}.x-navigation .x-navigation-title-content{transition:color .3s}.x-navigation .x-navigation-title-content>.x-typography-ellipsis-single-line{display:inline;vertical-align:unset}.x-navigation .x-navigation-item a:before{background-color:transparent;content:"";inset:0;position:absolute}.x-navigation .x-navigation-item-divider{line-height:0;margin:var(--fd-gap-sm) var(--fd-padding-layout-xs) 0 var(--fd-padding-layout-xs);overflow:hidden;padding-block:var(--fd-padding-layout-xs);padding-inline:var(--fd-padding-xs)}.x-navigation .x-navigation-item-divider .x-navigation-item-divider-line{border-color:var(--fd-color-split);border-style:solid;border-width:1px 0 0}.x-navigation .x-navigation-item-divider .x-navigation-item-divider-dashed{border-style:dashed}.x-navigation .x-navigation-item,.x-navigation .x-navigation-submenu-title{cursor:pointer;display:block;margin-inline:var(--fd-padding-layout-xs);padding:var(--fd-padding) var(--fd-padding-lg) var(--fd-padding) var(--fd-padding-lg);position:relative;transition:border-color .3s,background .3s,padding .3s ease-out;white-space:nowrap}.x-navigation .x-navigation-item .x-navigation-item-icon,.x-navigation .x-navigation-submenu-title .x-navigation-item-icon{color:var(--fd-color-icon-normal)}.x-navigation .x-navigation-item .x-navigation-item-icon,.x-navigation .x-navigation-item .x-svgicon,.x-navigation .x-navigation-submenu-title .x-navigation-item-icon,.x-navigation .x-navigation-submenu-title .x-svgicon{font-size:var(--fd-icon-size);min-width:var(--fd-icon-size);transition:font-size .3s ease-out,margin .3s ease-out,color .3s}.x-navigation .x-navigation-item .x-navigation-item-icon+span,.x-navigation .x-navigation-item .x-svgicon+span,.x-navigation .x-navigation-submenu-title .x-navigation-item-icon+span,.x-navigation .x-navigation-submenu-title .x-svgicon+span{margin-left:var(--fd-gap);opacity:1;transition:padding .3s ease-out,margin .3s,color .3s}.x-navigation .x-navigation-item.x-navigation-item-only-child>.x-navigation-item-icon,.x-navigation .x-navigation-item.x-navigation-item-only-child>.x-svgicon,.x-navigation .x-navigation-submenu-title.x-navigation-item-only-child>.x-navigation-item-icon,.x-navigation .x-navigation-submenu-title.x-navigation-item-only-child>.x-svgicon{margin-right:0}.x-navigation .x-navigation-item,.x-navigation .x-navigation-submenu-title{margin-block-start:var(--fd-gap-sm)}.x-navigation .x-navigation-item{display:flex}.x-navigation .x-navigation-item-disabled,.x-navigation .x-navigation-submenu-disabled{background:none!important;cursor:not-allowed}.x-navigation .x-navigation-item-disabled:after,.x-navigation .x-navigation-submenu-disabled:after{border-color:transparent!important}.x-navigation .x-navigation-item-disabled a,.x-navigation .x-navigation-submenu-disabled a{color:inherit!important}.x-navigation .x-navigation-item-disabled>.x-navigation-submenu-title,.x-navigation .x-navigation-submenu-disabled>.x-navigation-submenu-title{color:inherit!important;cursor:not-allowed}.x-navigation .x-navigation-item-group .x-navigation-item-group-list{margin:0;padding:0}.x-navigation .x-navigation-item-group .x-navigation-item-group-list .x-navigation-item,.x-navigation .x-navigation-item-group .x-navigation-item-group-list .x-navigation-submenu-title{padding-inline:var(--fd-padding) var(--fd-padding-lg)}.x-navigation .x-navigation-submenu .x-navigation-submenu-popup{border-radius:var(--fd-border-radius-lg);box-shadow:none;position:absolute;transform-origin:0 0;z-index:1050}.x-navigation .x-navigation-submenu .x-navigation-submenu-popup.x-navigation-submenu{background:transparent}.x-navigation .x-navigation-submenu .x-navigation-submenu-popup:before{content:"";height:100%;inset:-7px 0 0;opacity:0;position:absolute;width:100%;z-index:-1}.x-navigation .x-navigation-submenu .x-navigation-submenu-placement-rightTop:before{inset-inline-start:-7px;top:0}.x-navigation .x-navigation-submenu .placement-bottomRight,.x-navigation .x-navigation-submenu .placement-left-top{transform-origin:100% 0}.x-navigation .x-navigation-submenu .placement-left-bottom,.x-navigation .x-navigation-submenu .placement-top-right{transform-origin:100% 100%}.x-navigation .x-navigation-submenu .placement-right-bottom,.x-navigation .x-navigation-submenu .placement-top-left{transform-origin:0 100%}.x-navigation .x-navigation-submenu .placement-bottom-left,.x-navigation .x-navigation-submenu .placement-right-top{transform-origin:0 0}.x-navigation .x-navigation-submenu .placement-left-bottom,.x-navigation .x-navigation-submenu .placement-left-top{padding-inline-end:var(--fd-padding-xs)}.x-navigation .x-navigation-submenu .placement-right-bottom,.x-navigation .x-navigation-submenu .placement-right-top{padding-inline-start:var(--fd-padding-xs)}.x-navigation .x-navigation-submenu .placement-topLeft,.x-navigation .x-navigation-submenu .placement-topRight{padding-bottom:var(--fd-padding-xs)}.x-navigation .x-navigation-submenu .placement-bottomLeft,.x-navigation .x-navigation-submenu .placement-bottomRight{padding-top:var(--fd-padding-xs)}.x-navigation .x-navigation-submenu>.x-navigation{border-radius:var(--fd-border-radius-lg)}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title{cursor:pointer;display:block;margin-inline:var(--fd-padding-layout-xs);padding:var(--fd-padding) var(--fd-padding-lg) var(--fd-padding) var(--fd-padding-lg);position:relative;transition:border-color .3s,background .3s,padding .3s ease-out;white-space:nowrap}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item .x-navigation-item-icon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title .x-navigation-item-icon{color:var(--fd-color-icon-normal)}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item .x-navigation-item-icon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item .x-svgicon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title .x-navigation-item-icon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title .x-svgicon{font-size:var(--fd-icon-size);min-width:var(--fd-icon-size);transition:font-size .3s ease-out,margin .3s ease-out,color .3s}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item .x-navigation-item-icon+span,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item .x-svgicon+span,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title .x-navigation-item-icon+span,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title .x-svgicon+span{margin-left:var(--fd-gap);opacity:1;transition:padding .3s ease-out,margin .3s,color .3s}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item.x-navigation-item-only-child>.x-navigation-item-icon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item.x-navigation-item-only-child>.x-svgicon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title.x-navigation-item-only-child>.x-navigation-item-icon,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title.x-navigation-item-only-child>.x-svgicon{margin-right:0}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title{margin-block-start:var(--fd-gap-sm)}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item{display:flex}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item-disabled,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-disabled{background:none!important;cursor:not-allowed}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item-disabled:after,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-disabled:after{border-color:transparent!important}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item-disabled a,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-disabled a{color:inherit!important}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item-disabled>.x-navigation-submenu-title,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-disabled>.x-navigation-submenu-title{color:inherit!important;cursor:not-allowed}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu .x-navigation-submenu-expand-icon{color:currentColor;inset-inline-end:var(--fd-padding-lg);position:absolute;top:50%;transform:translateY(-50%);transition:transform .3s ease-out,opacity .3s;width:10px}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:after,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:before{background-color:var(--fd-color-icon-normal);border-radius:var(--fd-border-radius);content:"";height:1.5px;position:absolute;transition:transform .3s ease-out,background .3s ease-out,top .3s ease-out,color .3s ease-out;width:6px}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:before{transform:rotate(45deg) translateY(-2.5px)}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:after{transform:rotate(-45deg) translateY(2.5px)}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-item,.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu>.x-navigation-submenu-title{border-radius:var(--fd-border-radius-lg)}.x-navigation .x-navigation-submenu>.x-navigation .x-navigation-submenu-title:after{transition:transform .3s ease-out}.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow,.x-navigation .x-navigation-submenu .x-navigation-submenu-expand-icon{color:currentColor;inset-inline-end:var(--fd-padding-lg);position:absolute;top:50%;transform:translateY(-50%);transition:transform .3s ease-out,opacity .3s;width:10px}.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:after,.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:before{background-color:var(--fd-color-icon-normal);border-radius:var(--fd-border-radius);content:"";height:1.5px;position:absolute;transition:transform .3s ease-out,background .3s ease-out,top .3s ease-out,color .3s ease-out;width:6px}.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:before{transform:rotate(45deg) translateY(-2.5px)}.x-navigation .x-navigation-submenu .x-navigation-submenu-arrow:after,.x-navigation .x-navigation-submenu-inline-collapsed .x-navigation-submenu-arrow:before,.x-navigation .x-navigation-submenu-inline.x-navigation-submenu>.x-navigation-submenu-title>.x-navigation-submenu-arrow:before{transform:rotate(-45deg) translateY(2.5px)}.x-navigation .x-navigation-submenu-inline-collapsed .x-navigation-submenu-arrow:after,.x-navigation .x-navigation-submenu-inline.x-navigation-submenu>.x-navigation-submenu-title>.x-navigation-submenu-arrow:after{transform:rotate(45deg) translateY(2.5px)}.x-navigation .x-navigation-submenu-open.x-navigation-submenu-inline>.x-navigation-submenu-title>.x-navigation-submenu-arrow{transform:translateY(-3px)}.x-navigation .x-navigation-submenu-open.x-navigation-submenu-inline>.x-navigation-submenu-title>.x-navigation-submenu-arrow:after{transform:rotate(-45deg) translate(-2.5px)}.x-navigation .x-navigation-submenu-open.x-navigation-submenu-inline>.x-navigation-submenu-title>.x-navigation-submenu-arrow:before{transform:rotate(45deg) translate(2.5px)}.x-navigation .x-navigation-submenu-list-enter{opacity:0}.x-navigation .x-navigation-submenu-list-enter-active{opacity:1;transition:all .3s ease-out}.x-navigation .x-navigation-submenu-list-exit{opacity:1}.x-navigation .x-navigation-submenu-list-exit-active{opacity:0;transition:all .3s ease-out}.x-navigation .x-navigation-submenu-list-exit-done{display:none}.x-navigation-inline,.x-navigation-vertical{overflow:hidden}.x-navigation-inline.x-navigation-root,.x-navigation-vertical.x-navigation-root{box-shadow:none;padding-bottom:var(--fd-padding-layout-xs);padding-top:var(--fd-padding-xs)}.x-navigation-inline .x-navigation-item,.x-navigation-vertical .x-navigation-item{overflow:hidden;position:relative}.x-navigation-inline .x-navigation-item,.x-navigation-inline .x-navigation-submenu-title,.x-navigation-vertical .x-navigation-item,.x-navigation-vertical .x-navigation-submenu-title{height:var(--fd-control-height-lg);line-height:var(--fd-line-height);overflow:hidden;text-overflow:ellipsis}.x-navigation-inline>.x-navigation-item,.x-navigation-inline>.x-navigation-submenu>.x-navigation-submenu-title,.x-navigation-vertical>.x-navigation-item,.x-navigation-vertical>.x-navigation-submenu>.x-navigation-submenu-title{height:var(--fd-control-height-lg);line-height:var(--fd-line-height)}.x-navigation-submenu-popup{border-radius:var(--fd-border-radius-lg)}.x-navigation-submenu-popup .x-navigation-vertical{border-radius:var(--fd-border-radius-lg);box-shadow:0 9px 28px 8px #0000000d,0 3px 6px -4px #0000001f,0 6px 16px #00000014;overflow:hidden}.x-navigation-submenu-popup .x-navigation-vertical .x-navigation-item{overflow:hidden;position:relative}.x-navigation-submenu-popup .x-navigation-vertical .x-navigation-item,.x-navigation-submenu-popup .x-navigation-vertical .x-navigation-submenu-title{height:var(--fd-control-height-lg);line-height:var(--fd-line-height);overflow:hidden;text-overflow:ellipsis}.x-navigation-submenu-popup .x-navigation-vertical>.x-navigation-item,.x-navigation-submenu-popup .x-navigation-vertical>.x-navigation-submenu>.x-navigation-submenu-title{height:var(--fd-control-height-lg);line-height:var(--fd-line-height)}.x-navigation-submenu-popup-right-appear,.x-navigation-submenu-popup-right-enter{animation:x-move-left .2s ease;animation-fill-mode:forwards}.x-navigation-submenu-popup-right-exit{animation:x-move-left .1s ease-in reverse;animation-fill-mode:forwards}.x-navigation-submenu-popup-left-appear,.x-navigation-submenu-popup-left-enter{animation:x-move-right .2s ease;animation-fill-mode:forwards}.x-navigation-submenu-popup-left-exit{animation:x-move-right .1s ease-in reverse;animation-fill-mode:forwards}.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub{border-right:0;overflow:hidden;padding:var(--fd-padding-xs)}.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub:not([class*=-active]){overflow-x:hidden;overflow-y:auto}.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-item,.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-submenu-title{margin:0;padding-inline:var(--fd-padding-lg)}.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-item,.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-submenu,.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-submenu-title{margin-bottom:var(--fd-gap-sm)}.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-item:last-child,.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-submenu-title:last-child,.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-submenu:last-child{margin-bottom:0}.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-submenu-title .x-navigation-title-content{padding-right:var(--fd-padding-lg)}.x-navigation-submenu-popup .x-navigation-vertical.x-navigation-sub .x-navigation-item-group-title{margin-inline:var(--fd-padding-layout-xs);padding:var(--fd-padding-2xs) var(--fd-padding) 0 var(--fd-padding)}.x-navigation-inline{width:100%}.x-navigation-inline.x-navigation-root .x-navigation-item,.x-navigation-inline.x-navigation-root .x-navigation-submenu-title{align-items:center;display:flex;transition:border-color .3s,background .3s,padding .3s ease-out}.x-navigation-inline.x-navigation-root .x-navigation-item>.x-navigation-title-content,.x-navigation-inline.x-navigation-root .x-navigation-submenu-title>.x-navigation-title-content{flex:auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.x-navigation-inline.x-navigation-root .x-navigation-item>*,.x-navigation-inline.x-navigation-root .x-navigation-submenu-title>*{flex:none}.x-navigation-inline .x-navigation-sub.x-navigation-inline{border:0;border-radius:0;box-shadow:none}.x-navigation-inline .x-navigation-item,.x-navigation-inline .x-navigation-sub.x-navigation-inline>.x-navigation-submenu>.x-navigation-submenu-title{height:var(--fd-control-height-lg);line-height:var(--fd-line-height);list-style-position:inside;list-style-type:disc}.x-navigation-inline-collapsed{width:var(--fd-navigation-collapsed-width)}.x-navigation-inline-collapsed.x-navigation-root .x-navigation-item>.x-navigation-inline-collapsed-noicon,.x-navigation-inline-collapsed.x-navigation-root .x-navigation-submenu .x-navigation-submenu-title>.x-navigation-inline-collapsed-noicon{font-size:var(--fd-icon-size);text-align:center}.x-navigation-inline-collapsed>.x-navigation-item,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-item,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-submenu>.x-navigation-submenu-title,.x-navigation-inline-collapsed>.x-navigation-submenu>.x-navigation-submenu-title{inset-inline-start:0;padding-inline:calc(var(--fd-navigation-collapsed-width)/2 - var(--fd-icon-size)/2 - var(--fd-gap));text-overflow:clip}.x-navigation-inline-collapsed>.x-navigation-item .x-navigation-submenu-arrow,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-item .x-navigation-submenu-arrow,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-submenu>.x-navigation-submenu-title .x-navigation-submenu-arrow,.x-navigation-inline-collapsed>.x-navigation-submenu>.x-navigation-submenu-title .x-navigation-submenu-arrow{opacity:0}.x-navigation-inline-collapsed>.x-navigation-item .x-navigation-item-icon,.x-navigation-inline-collapsed>.x-navigation-item .x-svgicon,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-item .x-navigation-item-icon,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-item .x-svgicon,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-submenu>.x-navigation-submenu-title .x-navigation-item-icon,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-submenu>.x-navigation-submenu-title .x-svgicon,.x-navigation-inline-collapsed>.x-navigation-submenu>.x-navigation-submenu-title .x-navigation-item-icon,.x-navigation-inline-collapsed>.x-navigation-submenu>.x-navigation-submenu-title .x-svgicon{font-size:var(--fd-icon-size);line-height:var(--fd-line-height);margin:0}.x-navigation-inline-collapsed>.x-navigation-item .x-navigation-item-icon+span,.x-navigation-inline-collapsed>.x-navigation-item .x-svgicon+span,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-item .x-navigation-item-icon+span,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-item .x-svgicon+span,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-submenu>.x-navigation-submenu-title .x-navigation-item-icon+span,.x-navigation-inline-collapsed>.x-navigation-item-group>.x-navigation-item-group-list>.x-navigation-submenu>.x-navigation-submenu-title .x-svgicon+span,.x-navigation-inline-collapsed>.x-navigation-submenu>.x-navigation-submenu-title .x-navigation-item-icon+span,.x-navigation-inline-collapsed>.x-navigation-submenu>.x-navigation-submenu-title .x-svgicon+span{display:inline-block;opacity:0}.x-navigation-inline-collapsed .x-navigation-item-icon,.x-navigation-inline-collapsed .x-svgicon{display:inline-block}.x-navigation-inline-collapsed .x-navigation-tooltip{pointer-events:none}.x-navigation-inline-collapsed .x-navigation-tooltip .x-navigation-item-icon,.x-navigation-inline-collapsed .x-navigation-tooltip .x-svgicon{display:none}.x-navigation-inline-collapsed .x-navigation-tooltip a,.x-navigation-inline-collapsed .x-navigation-tooltip a:hover{color:var(--fd-color-text-light-solid)}.x-navigation-inline-collapsed .x-navigation-item-group-title{overflow:hidden;padding-inline:var(--fd-padding-xs);text-overflow:ellipsis;white-space:nowrap}.x-navigation-inline-collapsed .x-navigation-item-group-title-collapse{margin:var(--fd-gap-sm) var(--fd-padding-layout-xs) 0 var(--fd-padding-layout-xs);padding-block:var(--fd-padding-layout-xs);padding-inline:var(--fd-padding-xs)}.x-navigation-inline-collapsed .x-navigation-item-group-title-collapse .x-navigation-item-divider-line{border-color:var(--fd-color-split);border-style:solid;border-width:1px 0 0}.x-navigation-light,.x-navigation-light>.x-navigation{background:var(--fd-color-bg-container);color:var(--fd-color-text)}.x-navigation-light .x-navigation-item-group-title,.x-navigation-light>.x-navigation .x-navigation-item-group-title{color:var(--fd-color-text-description)}.x-navigation-light .x-navigation-submenu-selected>.x-navigation-submenu-title,.x-navigation-light .x-navigation-submenu-selected>.x-navigation-submenu-title .x-navigation-item-icon,.x-navigation-light>.x-navigation .x-navigation-submenu-selected>.x-navigation-submenu-title,.x-navigation-light>.x-navigation .x-navigation-submenu-selected>.x-navigation-submenu-title .x-navigation-item-icon{color:var(--fd-color-primary)}.x-navigation-light .x-navigation-item-disabled,.x-navigation-light .x-navigation-submenu-disabled,.x-navigation-light>.x-navigation .x-navigation-item-disabled,.x-navigation-light>.x-navigation .x-navigation-submenu-disabled{color:var(--fd-color-text-disabled)!important}.x-navigation-light .x-navigation-item:not(.x-navigation-item-selected):not(.x-navigation-submenu-selected):hover,.x-navigation-light .x-navigation-item:not(.x-navigation-item-selected):not(.x-navigation-submenu-selected)>.x-navigation-submenu-title:hover,.x-navigation-light>.x-navigation .x-navigation-item:not(.x-navigation-item-selected):not(.x-navigation-submenu-selected):hover,.x-navigation-light>.x-navigation .x-navigation-item:not(.x-navigation-item-selected):not(.x-navigation-submenu-selected)>.x-navigation-submenu-title:hover{color:var(--fd-color-text)}.x-navigation-light .x-navigation-item:not(.x-navigation-item-selected):hover,.x-navigation-light>.x-navigation .x-navigation-item:not(.x-navigation-item-selected):hover{background-color:var(--fd-color-bg-text-hover)}.x-navigation-light .x-navigation-item:not(.x-navigation-item-selected):active,.x-navigation-light>.x-navigation .x-navigation-item:not(.x-navigation-item-selected):active{background-color:var(--fd-color-bg-text-active)}.x-navigation-light .x-navigation-submenu-title:hover,.x-navigation-light>.x-navigation .x-navigation-submenu-title:hover{background-color:var(--fd-color-bg-text-hover)}.x-navigation-light .x-navigation-submenu-title:active,.x-navigation-light>.x-navigation .x-navigation-submenu-title:active{background-color:var(--fd-color-bg-text-active)}.x-navigation-light .x-navigation-item-danger,.x-navigation-light .x-navigation-item-danger.x-navigation-item:hover:not(.x-navigation-item-selected):not(.x-navigation-submenu-selected),.x-navigation-light>.x-navigation .x-navigation-item-danger,.x-navigation-light>.x-navigation .x-navigation-item-danger.x-navigation-item:hover:not(.x-navigation-item-selected):not(.x-navigation-submenu-selected){color:var(--fd-color-error)}.x-navigation-light .x-navigation-item-danger.x-navigation-item:active,.x-navigation-light>.x-navigation .x-navigation-item-danger.x-navigation-item:active{background:var(--fd-color-error)}.x-navigation-light .x-navigation-item a,.x-navigation-light .x-navigation-item a:hover,.x-navigation-light>.x-navigation .x-navigation-item a,.x-navigation-light>.x-navigation .x-navigation-item a:hover{color:inherit}.x-navigation-light .x-navigation-item-selected,.x-navigation-light>.x-navigation .x-navigation-item-selected{background-color:var(--fd-control-item-bg-active);color:var(--fd-color-primary)}.x-navigation-light .x-navigation-item-selected.x-navigation-item-danger,.x-navigation-light>.x-navigation .x-navigation-item-selected.x-navigation-item-danger{background-color:var(--fd-color-error-bg);color:var(--fd-color-error)}.x-navigation-light .x-navigation-item-selected a,.x-navigation-light .x-navigation-item-selected a:hover,.x-navigation-light>.x-navigation .x-navigation-item-selected a,.x-navigation-light>.x-navigation .x-navigation-item-selected a:hover{color:inherit}.x-navigation-light .x-navigation-item-selected .x-navigation-item-icon,.x-navigation-light>.x-navigation .x-navigation-item-selected .x-navigation-item-icon{color:var(--fd-color-primary)}.x-navigation-light.x-navigation-popup>.x-navigation,.x-navigation-light.x-navigation-submenu>.x-navigation,.x-navigation-light>.x-navigation.x-navigation-popup>.x-navigation,.x-navigation-light>.x-navigation.x-navigation-submenu>.x-navigation{background-color:var(--fd-color-bg-elevated)}.x-navigation-light.x-navigation-inline .x-navigation-item,.x-navigation-light>.x-navigation.x-navigation-inline .x-navigation-item{position:relative}.x-navigation-light.x-navigation-inline .x-navigation-item.x-navigation-item-danger:after,.x-navigation-light>.x-navigation.x-navigation-inline .x-navigation-item.x-navigation-item-danger:after{border-inline-end-color:var(--fd-color-error)}.x-navigation-light.x-navigation-inline .x-navigation-item-selected:after,.x-navigation-light.x-navigation-inline .x-navigation-selected:after,.x-navigation-light>.x-navigation.x-navigation-inline .x-navigation-item-selected:after,.x-navigation-light>.x-navigation.x-navigation-inline .x-navigation-selected:after{opacity:1;transform:scaleY(1);transition:transform .3s ease-out,opacity .3s ease-out}.x-carousel{overflow:hidden;position:relative}.x-carousel-content{height:100%;overflow:hidden;position:relative;width:100%}.x-carousel-content>.x-carousel-content-item{height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%}.x-carousel-content>.x-carousel-content-item-current{z-index:1}.x-carousel-content>.x-carousel-content-fade>*{opacity:0}.x-carousel-content>.x-carousel-content-fade .x-carousel-content-item-current{opacity:1}.x-carousel-content>.x-carousel-content-slide>:not(.x-carousel-content-item-current){visibility:hidden}.x-carousel-content>.x-carousel-content-slide .x-carousel-content-item-slide-out{animation:x-carousel-content-item-keyframe-slide-out;animation-fill-mode:forwards;display:block}.x-carousel-content>.x-carousel-content-slide .x-carousel-content-item-slide-in{animation:x-carousel-content-item-keyframe-slide-in;animation-fill-mode:forwards;display:block}.x-carousel-content>.x-carousel-content-reverse .x-carousel-content-item-slide-out{animation:x-carousel-content-item-keyframe-slide-out-reverse;animation-fill-mode:forwards}.x-carousel-content>.x-carousel-content-reverse .x-carousel-content-item-slide-in{animation:x-carousel-content-item-keyframe-slide-in-reverse;animation-fill-mode:forwards}.x-carousel-indicator{align-items:flex-end;z-index:2}.x-carousel-indicator,.x-carousel-indicator-left{display:flex}.x-carousel-indicator-left{flex-direction:column;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.x-carousel-indicator-left .x-carousel-indicator-item{height:16px;width:3px}.x-carousel-indicator-left .x-carousel-indicator-item .x-carousel-indicator-item-active{height:24px}.x-carousel-indicator-left .x-carousel-indicator-item:not(:last-child){margin-bottom:var(--fd-gap)}.x-carousel-indicator-bottom{bottom:12px;left:50%;position:absolute;transform:translate(-50%)}.x-carousel-indicator-bottom .x-carousel-indicator-item{height:3px;width:16px}.x-carousel-indicator-bottom .x-carousel-indicator-item.x-carousel-indicator-item-active{width:24px}.x-carousel-indicator-bottom .x-carousel-indicator-item:not(:last-child){margin-right:var(--fd-gap)}.x-carousel-indicator-top{left:50%;position:absolute;top:12px;transform:translate(-50%)}.x-carousel-indicator-top .x-carousel-indicator-item{height:3px;width:16px}.x-carousel-indicator-top .x-carousel-indicator-item.x-carousel-indicator-item-active{width:24px}.x-carousel-indicator-top .x-carousel-indicator-item:not(:last-child){margin-right:var(--fd-gap)}.x-carousel-indicator-right{display:flex;flex-direction:column;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.x-carousel-indicator-right .x-carousel-indicator-item{height:16px;width:3px}.x-carousel-indicator-right .x-carousel-indicator-item.x-carousel-indicator-item-active{height:24px}.x-carousel-indicator-right .x-carousel-indicator-item:not(:last-child){margin-bottom:var(--fd-gap)}.x-carousel-indicator-line .x-carousel-indicator-item{background-color:var(--fd-color-bg-container);border-radius:var(--fd-border-radius-xs);cursor:pointer;opacity:.3}.x-carousel-indicator-line .x-carousel-indicator-item.x-carousel-indicator-item-active,.x-carousel-indicator-line .x-carousel-indicator-item:active,.x-carousel-indicator-line .x-carousel-indicator-item:hover{opacity:1}@keyframes x-carousel-content-item-keyframe-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes x-carousel-content-item-keyframe-slide-out{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes x-carousel-content-item-keyframe-slide-in-reverse{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes x-carousel-content-item-keyframe-slide-out-reverse{0%{transform:translate(0)}to{transform:translate(100%)}}:root{--fd-color-red-1:#fdeeee;--fd-color-red-2:#f9cbcb;--fd-color-red-3:#f7b9b9;--fd-color-red-4:#f5a8a8;--fd-color-red-5:#f18585;--fd-color-red-6:#eb5050;--fd-color-red-7:#bc4040;--fd-color-red-8:#8d3030;--fd-color-red-9:#5e2020;--fd-color-red-10:#471818;--fd-color-yellow-1:#fef6e6;--fd-color-yellow-2:#fbe5b3;--fd-color-yellow-3:#f9dc99;--fd-color-yellow-4:#f8d480;--fd-color-yellow-5:#f5c24d;--fd-color-yellow-6:#f0a800;--fd-color-yellow-7:#c08600;--fd-color-yellow-8:#906500;--fd-color-yellow-9:#604300;--fd-color-yellow-10:#483200;--fd-color-green-1:#edf9f1;--fd-color-green-2:#c8edd4;--fd-color-green-3:#b5e7c5;--fd-color-green-4:#a3e1b7;--fd-color-green-5:#7ed49a;--fd-color-green-6:#46c26f;--fd-color-green-7:#389b59;--fd-color-green-8:#2a7443;--fd-color-green-9:#1c4e2c;--fd-color-green-10:#153a21;--fd-color-blue-1:#eaf2fd;--fd-color-blue-2:#c1d8f9;--fd-color-blue-3:#accbf7;--fd-color-blue-4:#97bef5;--fd-color-blue-5:#6da4f1;--fd-color-blue-6:#2f7deb;--fd-color-blue-7:#2664bc;--fd-color-blue-8:#1c4b8d;--fd-color-blue-9:#13325e;--fd-color-blue-10:#0e2647;--fd-color-brand-1:#e6f8f5;--fd-color-brand-2:#b3eae0;--fd-color-brand-3:#99e3d6;--fd-color-brand-4:#80dccc;--fd-color-brand-5:#4dcdb8;--fd-color-brand-6:#00b899;--fd-color-brand-7:#00937a;--fd-color-brand-8:#006e5c;--fd-color-brand-9:#004a3d;--fd-color-brand-10:#00372e;--fd-color-error-1:var(--fd-color-red-1);--fd-color-error-2:var(--fd-color-red-2);--fd-color-error-3:var(--fd-color-red-3);--fd-color-error-4:var(--fd-color-red-4);--fd-color-error-5:var(--fd-color-red-5);--fd-color-error-6:var(--fd-color-red-6);--fd-color-error-7:var(--fd-color-red-7);--fd-color-error-8:var(--fd-color-red-8);--fd-color-error-9:var(--fd-color-red-9);--fd-color-error-10:var(--fd-color-red-10);--fd-color-warning-1:var(--fd-color-yellow-1);--fd-color-warning-2:var(--fd-color-yellow-2);--fd-color-warning-3:var(--fd-color-yellow-3);--fd-color-warning-4:var(--fd-color-yellow-4);--fd-color-warning-5:var(--fd-color-yellow-5);--fd-color-warning-6:var(--fd-color-yellow-6);--fd-color-warning-7:var(--fd-color-yellow-7);--fd-color-warning-8:var(--fd-color-yellow-8);--fd-color-warning-9:var(--fd-color-yellow-9);--fd-color-warning-10:var(--fd-color-yellow-10);--fd-color-success-1:var(--fd-color-green-1);--fd-color-success-2:var(--fd-color-green-2);--fd-color-success-3:var(--fd-color-green-3);--fd-color-success-4:var(--fd-color-green-4);--fd-color-success-5:var(--fd-color-green-5);--fd-color-success-6:var(--fd-color-green-6);--fd-color-success-7:var(--fd-color-green-7);--fd-color-success-8:var(--fd-color-green-8);--fd-color-success-9:var(--fd-color-green-9);--fd-color-success-10:var(--fd-color-green-10);--fd-color-info-1:var(--fd-color-blue-1);--fd-color-info-2:var(--fd-color-blue-2);--fd-color-info-3:var(--fd-color-blue-3);--fd-color-info-4:var(--fd-color-blue-4);--fd-color-info-5:var(--fd-color-blue-5);--fd-color-info-6:var(--fd-color-blue-6);--fd-color-info-7:var(--fd-color-blue-7);--fd-color-info-8:var(--fd-color-blue-8);--fd-color-info-9:var(--fd-color-blue-9);--fd-color-info-10:var(--fd-color-blue-10);--fd-color-grey-1:#fff;--fd-color-grey-2:#f5f6f8;--fd-color-grey-3:#f0f1f4;--fd-color-grey-4:#edeff3;--fd-color-grey-5:#e6e8ed;--fd-color-grey-6:#ebecee;--fd-color-grey-7:#e1e3e5;--fd-color-grey-8:#d7d9dc;--fd-color-grey-9:#b5b8be;--fd-color-grey-10:#838892;--fd-color-grey-11:#525967;--fd-color-grey-12:#141e31;--fd-color-grey-13:#000;--fd-color-transparent-1:#000;--fd-color-transparent-2:rgba(0,10,31,.92);--fd-color-transparent-3:rgba(1,11,31,.68);--fd-color-transparent-4:rgba(2,12,33,.49);--fd-color-transparent-5:rgba(0,10,31,.29);--fd-color-transparent-6:rgba(5,18,36,.16);--fd-color-transparent-7:rgba(5,22,38,.12);--fd-color-transparent-8:rgba(5,17,42,.08);--fd-color-transparent-9:rgba(5,25,75,.1);--fd-color-transparent-10:rgba(30,55,105,.08);--fd-color-transparent-11:rgba(5,22,72,.06);--fd-color-transparent-12:rgba(5,30,80,.04);--fd-color-transparent-13:transparent;--fd-border-radius-xs:2px;--fd-border-radius-sm:3px;--fd-border-radius:4px;--fd-border-radius-lg:6px;--fd-border-radius-xl:8px;--fd-gap-xs:2px;--fd-gap-sm:4px;--fd-gap:8px;--fd-gap-lg:10px;--fd-gap-xl:12px;--fd-gap-2xl:16px;--fd-gap-3xl:20px;--fd-gap-4xl:24px;--fd-gap-5xl:32px;--fd-padding-layout-3xs:2px;--fd-padding-layout-2xs:4px;--fd-padding-layout-xs:8px;--fd-padding-layout-sm:12px;--fd-padding-layout:16px;--fd-padding-layout-lg:20px;--fd-padding-layout-xl:24px;--fd-padding-layout-2xl:32px;--fd-padding-layout-3xl:48px;--fd-padding-zero:0;--fd-padding-2xs:2px;--fd-padding-xs:4px;--fd-padding-sm:6px;--fd-padding:8px;--fd-padding-lg:12px;--fd-padding-xl:16px;--fd-padding-2xl:20px;--fd-padding-3xl:24px;--fd-padding-4xl:32px;--fd-control-height-xs:16px;--fd-control-height-sm:24px;--fd-control-height:32px;--fd-control-height-lg:40px;--fd-font-size-sm:12px;--fd-font-size:14px;--fd-font-size-lg:16px;--fd-font-size-xl:18px;--fd-font-size-2xl:20px;--fd-font-size-heading-1:38px;--fd-font-size-heading-2:30px;--fd-font-size-heading-3:24px;--fd-font-size-heading-4:20px;--fd-font-size-heading-5:16px;--fd-control-item-font-weight-active:400;--fd-icon-size-2sm:12px;--fd-icon-size-sm:14px;--fd-icon-size:16px;--fd-icon-size-lg:18px;--fd-line-height-sm:20px;--fd-line-height:22px;--fd-line-height-lg:24px;--fd-line-height-xl:26px;--fd-line-height-2xl:28px;--fd-line-height-heading-1:46px;--fd-line-height-heading-2:38px;--fd-line-height-heading-3:32px;--fd-line-height-heading-4:28px;--fd-line-height-heading-5:24px;--fd-line-width:1px;--fd-line-width-bold:2px;--fd-line-width-focus:4px;--fd-control-outline-width:2px;--fd-color-primary:var(--fd-color-brand-6);--fd-color-primary-active:var(--fd-color-brand-7);--fd-color-primary-hover:var(--fd-color-brand-5);--fd-color-primary-bg:var(--fd-color-brand-1);--fd-color-primary-bg-active:var(--fd-color-brand-3);--fd-color-primary-bg-hover:var(--fd-color-brand-2);--fd-color-primary-border:var(--fd-color-brand-3);--fd-color-primary-border-hover:var(--fd-color-brand-4);--fd-color-primary-text:var(--fd-color-brand-6);--fd-color-primary-text-active:var(--fd-color-brand-7);--fd-color-primary-text-hover:var(--fd-color-brand-5);--fd-color-link:var(--fd-color-brand-6);--fd-color-link-active:var(--fd-color-brand-7);--fd-color-link-hover:var(--fd-color-brand-4);--fd-color-control-outline:rgba(0,184,153,.1);--fd-color-info:var(--fd-color-info-6);--fd-color-info-active:var(--fd-color-info-7);--fd-color-info-hover:var(--fd-color-info-4);--fd-color-info-bg:var(--fd-color-info-1);--fd-color-info-bg-hover:var(--fd-color-info-2);--fd-color-info-border:var(--fd-color-info-3);--fd-color-info-border-hover:var(--fd-color-info-4);--fd-color-info-text:var(--fd-color-info-6);--fd-color-info-text-active:var(--fd-color-info-7);--fd-color-info-text-hover:var(--fd-color-info-5);--fd-color-success:var(--fd-color-success-6);--fd-color-success-active:var(--fd-color-success-7);--fd-color-success-hover:var(--fd-color-success-4);--fd-color-success-bg:var(--fd-color-success-1);--fd-color-success-bg-hover:var(--fd-color-success-2);--fd-color-success-border:var(--fd-color-success-3);--fd-color-success-border-hover:var(--fd-color-success-4);--fd-color-success-text:var(--fd-color-success-6);--fd-color-success-text-active:var(--fd-color-success-7);--fd-color-success-text-hover:var(--fd-color-success-5);--fd-color-warning:var(--fd-color-warning-6);--fd-color-warning-active:var(--fd-color-warning-7);--fd-color-warning-hover:var(--fd-color-warning-4);--fd-color-warning-bg:var(--fd-color-warning-1);--fd-color-warning-bg-hover:var(--fd-color-warning-2);--fd-color-warning-border:var(--fd-color-warning-3);--fd-color-warning-border-hover:var(--fd-color-warning-4);--fd-color-warning-text:var(--fd-color-warning-6);--fd-color-warning-text-active:var(--fd-color-warning-7);--fd-color-warning-text-hover:var(--fd-color-warning-5);--fd-color-warning-outline:rgba(240,168,0,.1);--fd-color-error:var(--fd-color-error-6);--fd-color-error-active:var(--fd-color-error-7);--fd-color-error-hover:var(--fd-color-error-5);--fd-color-error-bg:var(--fd-color-error-1);--fd-color-error-bg-hover:var(--fd-color-error-2);--fd-color-error-bg-active:var(--fd-color-error-3);--fd-color-error-border:var(--fd-color-error-3);--fd-color-error-border-hover:var(--fd-color-error-4);--fd-color-error-text:var(--fd-color-error-6);--fd-color-error-text-active:var(--fd-color-error-7);--fd-color-error-text-hover:var(--fd-color-error-5);--fd-color-error-outline:rgba(235,80,80,.06);--fd-color-white:#fff;--fd-color-black:#000;--fd-color-transparent:var(--fd-color-transparent-13);--fd-color-text:var(--fd-color-transparent-2);--fd-color-text-secondary:var(--fd-color-transparent-3);--fd-color-text-tertiary:var(--fd-color-transparent-4);--fd-color-text-quaternary:var(--fd-color-transparent-5);--fd-color-text-placeholder:var(--fd-color-text-quaternary);--fd-color-text-description:var(--fd-color-text-tertiary);--fd-color-text-disabled:var(--fd-color-text-quaternary);--fd-color-text-data-disabled:var(--fd-color-text-disabled);--fd-color-text-heading:var(--fd-color-text);--fd-color-text-light-solid:#fff;--fd-color-text-label:var(--fd-color-text-secondary);--fd-color-text-active:var(--fd-color-fill);--fd-color-fill:var(--fd-color-transparent-7);--fd-color-fill-secondary:var(--fd-color-transparent-9);--fd-color-fill-tertiary:var(--fd-color-transparent-11);--fd-color-fill-quaternary:var(--fd-color-transparent-12);--fd-color-bg-container:var(--fd-color-white);--fd-color-bg-container-disabled:var(--fd-color-fill-quaternary);--fd-color-bg-elevated:#fff;--fd-color-bg-spotlight:var(--fd-color-transparent-3);--fd-color-bg-mask:var(--fd-color-transparent-5);--fd-control-item-bg-hover:var(--fd-color-fill-tertiary);--fd-control-item-bg-active:var(--fd-color-primary-bg);--fd-control-item-bg-active-hover:var(--fd-color-primary-bg-hover);--fd-control-item-bg-active-disabled:var(--fd-color-fill-secondary);--fd-color-bg-text-hover:var(--fd-color-fill-quaternary);--fd-color-bg-text-active:var(--fd-color-fill-tertiary);--fd-color-fill-alter:var(--fd-color-fill-quaternary);--fd-color-fill-content:var(--fd-color-fill-secondary);--fd-color-icon:var(--fd-color-text-tertiary);--fd-color-icon-hover:var(--fd-color-text-secondary);--fd-color-icon-active:var(--fd-color-text);--fd-color-icon-normal:var(--fd-color-text-secondary);--fd-color-icon-disabled:var(--fd-color-transparent-7);--fd-color-border:var(--fd-color-grey-5);--fd-color-border-secondary:var(--fd-color-grey-4);--fd-color-split:var(--fd-color-border-secondary);--fd-box-shadow:0 0 2px 0 rgba(9,30,64,.02),0 4px 8px 0 rgba(9,30,64,.06),0 4px 24px 6px rgba(9,30,64,.04);--fd-box-shadow-secondary:0 0 4px 0 rgba(9,30,64,.05),0 6px 16px -1px rgba(9,30,64,.06),0 6px 32px 8px rgba(9,30,64,.04);--fd-box-shadow-tertiary:0 0 5px 0 rgba(9,30,64,.06),0 10px 24px -2px rgba(9,30,64,.1),0 10px 48px 12px rgba(9,30,64,.04)}*,:after,:before{box-sizing:content-box}:root{--fd-color-formula-field-func:var(--fd-color-blue-6);--fd-color-formula-field-text:var(--fd-color-text);--fd-color-formula-field-number:var(--fd-color-green-6);--fd-color-formula-field-operator:var(--fd-color-text-description)}.fbiz--translate-y-full,.fbiz-rotate-180{--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1}.fbiz-shadow-lg,.fbiz-shadow-s{--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.fbiz-solid-border{border-color:var(--fd-color-border);border-style:solid;border-width:1px}.fbiz-solid-border-l{border-color:var(--fd-color-border);border-width:0;border-left-width:1px!important;border-style:solid}.fbiz-solid-border-r{border-color:var(--fd-color-border);border-width:0;border-right-width:1px!important;border-style:solid}.fbiz-solid-border-t{border-color:var(--fd-color-border);border-style:solid;border-width:0;border-top-width:1px!important}.fbiz-solid-border-b{border-width:0;border-bottom-width:1px!important;border-color:var(--fd-color-border);border-style:solid}.fbiz-text-ellipse{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fbiz-absolute{position:absolute}.fbiz-relative{position:relative}.fbiz-inset-0{inset:0}.fbiz-left-\\[-50\\%\\]{left:-50%}.fbiz-right-\\[-8px\\]{right:-8px}.fbiz-top-1\\/2{top:50%}.fbiz-top-\\[23\\%\\]{top:23%}.fbiz-top-\\[50\\%\\]{top:50%}.fbiz-z-\\[10\\]{z-index:10}.fbiz-z-\\[1\\]{z-index:1}.fbiz-m-\\[4px_8px\\]{margin:4px 8px}.fbiz-my-0{margin-bottom:0;margin-top:0}.fbiz-my-gap{margin-bottom:var(--fd-gap);margin-top:var(--fd-gap)}.fbiz--mt-\\[12px\\]{margin-top:-12px}.fbiz-mb-layoutXs{margin-bottom:var(--fd-padding-layout-xs)}.fbiz-ml-auto{margin-left:auto}.fbiz-mr-layoutSm{margin-right:var(--fd-padding-layout-sm)}.fbiz-mt-\\[10px\\]{margin-top:10px}.fbiz-mt-gap{margin-top:var(--fd-gap)}.fbiz-box-border{box-sizing:border-box}.fbiz-box-content{box-sizing:content-box}.fbiz-inline-block{display:inline-block}.fbiz-flex{display:flex}.fbiz-inline-flex{display:inline-flex}.fbiz-hidden{display:none}.fbiz-h-\\[16px\\]{height:16px}.fbiz-h-\\[20px\\]{height:20px}.fbiz-h-control{height:var(--fd-control-height)}.fbiz-h-full{height:100%}.fbiz-max-h-\\[164px\\]{max-height:164px}.fbiz-min-h-\\[0\\]{min-height:0}.\\!fbiz-w-0{width:0!important}.fbiz-w-\\[16px\\]{width:16px}.fbiz-w-\\[20px\\]{width:20px}.fbiz-w-\\[24px\\]{width:24px}.fbiz-w-full{width:100%}.\\!fbiz-min-w-0{min-width:0!important}.fbiz-min-w-0{min-width:0}.fbiz-flex-1{flex:1 1 0%}.fbiz-flex-shrink-0{flex-shrink:0}.fbiz-basis-\\[16px\\]{flex-basis:16px}.fbiz--translate-y-full{--tw-translate-y:-100%}.fbiz--translate-y-full,.fbiz-rotate-180{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.fbiz-rotate-180{--tw-rotate:180deg}.fbiz-cursor-pointer{cursor:pointer}.fbiz-flex-col{flex-direction:column}.fbiz-items-center{align-items:center}.fbiz-items-stretch{align-items:stretch}.fbiz-justify-center{justify-content:center}.fbiz-gap-gap{gap:var(--fd-gap)}.fbiz-gap-gapSm{gap:var(--fd-gap-sm)}.fbiz-overflow-auto{overflow:auto}.fbiz-overflow-hidden{overflow:hidden}.fbiz-rounded{border-radius:var(--fd-border-radius)}.fbiz-rounded-\\[29px\\]{border-radius:29px}.fbiz-rounded-lg{border-radius:var(--fd-border-radius-lg)}.fbiz-rounded-sm{border-radius:var(--fd-border-radius-sm)}.fbiz-rounded-xl{border-radius:var(--fd-border-radius-xl)}.fbiz-rounded-ee-\\[8px\\]{border-end-end-radius:8px}.fbiz-rounded-ee-xl{border-end-end-radius:var(--fd-border-radius-xl)}.fbiz-rounded-es-lg{border-end-start-radius:var(--fd-border-radius-lg)}.fbiz-rounded-se-\\[8px\\]{border-start-end-radius:8px}.fbiz-rounded-se-xl{border-start-end-radius:var(--fd-border-radius-xl)}.fbiz-rounded-ss-lg{border-start-start-radius:var(--fd-border-radius-lg)}.fbiz-bg-container{background-color:var(--fd-color-bg-container)}.fbiz-bg-error{background-color:var(--fd-color-error)}.fbiz-bg-fill-quaternary{background-color:var(--fd-color-fill-quaternary)}.fbiz-bg-fill-secondary{background-color:var(--fd-color-fill-secondary)}.fbiz-bg-text-active{background-color:var(--fd-color-bg-text-active)}.fbiz-p-\\[4px_0\\]{padding:4px 0}.fbiz-p-\\[4px_8px\\]{padding:4px 8px}.fbiz-px-layoutSm{padding-left:var(--fd-padding-layout-sm);padding-right:var(--fd-padding-layout-sm)}.fbiz-px-layoutXs{padding-left:var(--fd-padding-layout-xs);padding-right:var(--fd-padding-layout-xs)}.fbiz-px-paddingLg{padding-left:var(--fd-padding-lg);padding-right:var(--fd-padding-lg)}.fbiz-px-paddingSm{padding-left:var(--fd-padding-sm);padding-right:var(--fd-padding-sm)}.fbiz-py-layoutSm{padding-bottom:var(--fd-padding-layout-sm);padding-top:var(--fd-padding-layout-sm)}.fbiz-py-layoutXs{padding-bottom:var(--fd-padding-layout-xs);padding-top:var(--fd-padding-layout-xs)}.fbiz-pb-\\[16px\\]{padding-bottom:16px}.fbiz-pb-paddingLg{padding-bottom:var(--fd-padding-lg)}.fbiz-pt-\\[16px\\]{padding-top:16px}.fbiz-pt-layoutXs{padding-top:var(--fd-padding-layout-xs)}.fbiz-text-center{text-align:center}.fbiz-align-\\[-0\\.14em\\]{vertical-align:-.14em}.fbiz-text{font-size:var(--fd-font-size)}.fbiz-text-\\[16px\\]{font-size:16px}.fbiz-text-lg{font-size:var(--fd-font-size-lg)}.fbiz-text-sm{font-size:var(--fd-font-size-sm)}.fbiz-font-bold{font-weight:700}.fbiz-leading{line-height:var(--fd-line-height)}.fbiz-leading-\\[14px\\]{line-height:14px}.fbiz-leading-sm{line-height:var(--fd-line-height-sm)}.fbiz-text-desc{color:var(--fd-color-text-description)}.fbiz-text-disabled{color:var(--fd-color-text-disabled)}.fbiz-text-error{color:var(--fd-color-error)}.fbiz-text-icon{color:var(--fd-color-icon-normal)}.fbiz-text-lightSolid{color:var(--fd-color-text-light-solid)}.fbiz-text-placeholder{color:var(--fd-color-text-placeholder)}.fbiz-text-search{color:var(--fd-color-warning)}.fbiz-text-text{color:var(--fd-color-text)}.fbiz-opacity-0{opacity:0}.fbiz-opacity-100{opacity:1}.fbiz-shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.fbiz-shadow-lg,.fbiz-shadow-s{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.fbiz-shadow-s{--tw-shadow:0px 0px 8px 0px rgba(9,30,64,.1);--tw-shadow-colored:0px 0px 8px 0px var(--tw-shadow-color)}.fbiz-transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.fbiz-duration-200{transition-duration:.2s}.fbiz-ease-linear{transition-timing-function:linear}.fbiz-search-input .input-wrapper{height:calc(var(--fd-control-height-sm) + 2px)}.fbiz-search-input .input-wrapper .input-content{inset:1px;line-height:0}.x-formula-pane .x-describe-pane .x-collapse-css-var{--fd-collapse-panel-padding-sm:0}.x-formula-pane .x-list-tree .tree-node{padding:0}.x-svgicon-ArrowlFilled svg path{fill-opacity:1}.before\\:fbiz-solid-split-l:before{border-color:var(--fd-color-split);border-width:0;border-left-width:1px!important;border-style:solid;content:var(--tw-content)}.\\[\\&\\>\\.leaf-node\\]\\:fbiz-solid-border>.leaf-node{border-color:var(--fd-color-border);border-style:solid;border-width:1px}.before\\:fbiz-absolute:before{content:var(--tw-content);position:absolute}.before\\:fbiz-bottom-0:before{bottom:0;content:var(--tw-content)}.before\\:fbiz-left-\\[5px\\]:before{content:var(--tw-content);left:5px}.before\\:fbiz-top-0:before{content:var(--tw-content);top:0}.before\\:fbiz-content-\\[\\"\\"\\]:before{--tw-content:"";content:var(--tw-content)}.after\\:fbiz-hidden:after{content:var(--tw-content);display:none}.hover\\:fbiz-border-primary:hover{border-color:var(--fd-color-primary)}.hover\\:fbiz-bg-fill-secondary:hover{background-color:var(--fd-color-fill-secondary)}.hover\\:fbiz-bg-text-hover:hover{background-color:var(--fd-color-bg-text-hover)}.hover\\:fbiz-text-primary:hover{color:var(--fd-color-primary)}.hover\\:before\\:fbiz-border-primary:hover:before{border-color:var(--fd-color-primary);content:var(--tw-content)}.active\\:fbiz-bg-text-active:active{background-color:var(--fd-color-bg-text-active)}.active\\:before\\:fbiz-border-primary:active:before{border-color:var(--fd-color-primary);content:var(--tw-content)}.\\[\\&\\>\\.item-icon\\]\\:\\!fbiz-text-error>.item-icon{color:var(--fd-color-error)!important}.\\[\\&\\>\\.leaf-node\\]\\:fbiz-flex-1>.leaf-node{flex:1 1 0%}.\\[\\&\\>\\.leaf-node\\]\\:fbiz-rounded-lg>.leaf-node{border-radius:var(--fd-border-radius-lg)}.\\[\\&\\>\\.logic-wrapper\\]\\:fbiz-m-\\[0\\]>.logic-wrapper{margin:0}.\\[\\&_\\.x-list-tree\\]\\:fbiz-overflow-x-hidden .x-list-tree{overflow-x:hidden}:where(.fdi-global-adaptor *){border-width:0;border-style:solid}:where(.fdi-global-adaptor *) img{display:inline}.fdi-global-adaptor *{box-sizing:border-box}#fdi-data-choose{width:100%;height:100%}ul{margin:0}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.fdi-component-font-sm,.fdi-component-font-md{font-size:12px;line-height:20px}.fdi-component-font-lg{font-size:14px;line-height:22px}.fdi-component-font-xl{font-size:16px;line-height:24px}.fdi-component-font-xxl{font-size:18px;line-height:26px}.fdi-component-title-sm{font-size:12px;line-height:20px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;font-weight:600}.fdi-component-title-lg{font-size:14px;line-height:22px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;font-weight:600}.fdi-component-border-0{border-width:0px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity))}.fdi-component-border-1{border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity))}.fdi-component-border-r{border-width:0px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity));border-right-width:1px}.fdi-component-border-t{border-width:0px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity));border-top-width:1px}.fdi-component-border-b{border-width:0px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity));border-bottom-width:1px}.fdi-component-border-transparent{border-width:1px;border-style:solid;border-color:transparent}.fdi-component-border-normal{border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(230 233 239 / var(--tw-border-opacity))}.fdi-component-keyword-highlight{background-color:transparent;--tw-text-opacity: 1;color:rgb(240 172 60 / var(--tw-text-opacity))}.fdi-component-text-placeholder{color:#091e4078}.fdi-component-text-secondary{color:#091e40a8}.fdi-component-flex-col-layout{display:flex;height:100%;width:100%;flex-direction:column}.fdi-component-absolute-0-layout{position:absolute;inset:0}.fdi-component-center-layout{display:flex;align-items:center;justify-content:center}.fdi-component-flex-h-fill-layout{height:0px;flex:1 1 0%}.fdi-component-flex-w-fill-layout{width:0px;flex:1 1 0%}.fdi-component-grid-auto-fill-layout{display:grid;grid-template-columns:auto minmax(0,1fr)}.fdi-component-list-item{cursor:pointer;border-radius:.25rem}.fdi-component-list-item:hover{--tw-bg-opacity: 1;background-color:rgb(238 241 246 / var(--tw-bg-opacity))}.fdi-component-list-item:active{--tw-bg-opacity: 1;background-color:rgb(230 233 239 / var(--tw-bg-opacity))}.fdi-component-list-item.selected{--tw-bg-opacity: 1;background-color:rgb(229 239 255 / var(--tw-bg-opacity))}.fdi-component-active-tag{--tw-bg-opacity: 1;background-color:rgb(229 239 255 / var(--tw-bg-opacity));font-weight:600;--tw-text-opacity: 1;color:rgb(44 96 219 / var(--tw-text-opacity))}.fdi-pointer-events-none{pointer-events:none}.fdi-visible{visibility:visible}.fdi-invisible{visibility:hidden}.fdi-fixed{position:fixed}.fdi-absolute{position:absolute}.fdi-relative{position:relative}.fdi-inset-0{inset:0}.fdi-bottom-0{bottom:0}.fdi-left-0{left:0}.fdi-left-4{left:1rem}.fdi-left-\\[4px\\]{left:4px}.fdi-left-md{left:8px}.fdi-right-0{right:0}.fdi-right-4{right:1rem}.fdi-right-lg{right:12px}.fdi-right-xl{right:16px}.fdi-top-0{top:0}.fdi-top-1\\/2{top:50%}.fdi-top-24{top:6rem}.fdi-top-\\[28px\\]{top:28px}.fdi-top-\\[32px\\]{top:32px}.fdi-top-\\[34px\\]{top:34px}.fdi-top-lg{top:12px}.fdi-top-sm{top:4px}.fdi-top-xl{top:16px}.fdi-z-0{z-index:0}.fdi-z-10{z-index:10}.fdi-m-0{margin:0}.fdi-m-6{margin:1.5rem}.fdi-m-\\[8px\\]{margin:8px}.fdi-mx-lg{margin-left:10px;margin-right:10px}.fdi-mx-md{margin-left:8px;margin-right:8px}.fdi-my-0{margin-top:0;margin-bottom:0}.fdi-mb-2{margin-bottom:.5rem}.fdi-mb-6{margin-bottom:1.5rem}.fdi-mb-\\[-16px\\]{margin-bottom:-16px}.fdi-mb-\\[20px\\]{margin-bottom:20px}.fdi-mb-\\[36px\\]{margin-bottom:36px}.fdi-mb-md{margin-bottom:8px}.fdi-mb-sm{margin-bottom:6px}.fdi-mb-xl{margin-bottom:12px}.fdi-mb-xxl{margin-bottom:16px}.fdi-ml-1{margin-left:.25rem}.fdi-ml-\\[4px\\]{margin-left:4px}.fdi-ml-lg{margin-left:10px}.fdi-ml-md{margin-left:8px}.fdi-ml-xl{margin-left:12px}.fdi-ml-xs{margin-left:2px}.fdi-mr-\\[4px\\]{margin-right:4px}.fdi-mr-\\[6px\\]{margin-right:6px}.fdi-mr-\\[9px\\]{margin-right:9px}.fdi-mr-md{margin-right:8px}.fdi-mr-sm{margin-right:6px}.fdi-mt-5{margin-top:1.25rem}.fdi-mt-md{margin-top:8px}.fdi-mt-sm{margin-top:6px}.fdi-mt-xl{margin-top:12px}.fdi-mt-xs{margin-top:2px}.fdi-mt-xxl{margin-top:16px}.fdi-box-border{box-sizing:border-box}.fdi-line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.fdi-line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.fdi-line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.fdi-block{display:block}.fdi-inline-block{display:inline-block}.fdi-flex{display:flex}.fdi-inline-flex{display:inline-flex}.fdi-hidden{display:none}.fdi-h-4{height:1rem}.fdi-h-6{height:1.5rem}.fdi-h-\\[120px\\]{height:120px}.fdi-h-\\[14px\\]{height:14px}.fdi-h-\\[20px\\]{height:20px}.fdi-h-\\[24px\\]{height:24px}.fdi-h-\\[28px\\]{height:28px}.fdi-h-\\[300px\\]{height:300px}.fdi-h-\\[32px\\]{height:32px}.fdi-h-\\[36px\\]{height:36px}.fdi-h-\\[40px\\]{height:40px}.fdi-h-\\[420px\\]{height:420px}.fdi-h-auto{height:auto}.fdi-h-full{height:100%}.fdi-max-h-\\[232px\\]{max-height:232px}.fdi-max-h-\\[278px\\]{max-height:278px}.fdi-max-h-\\[428px\\]{max-height:428px}.fdi-max-h-\\[450px\\]{max-height:450px}.fdi-min-h-\\[280px\\]{min-height:280px}.fdi-w-4{width:1rem}.fdi-w-\\[100px\\]{width:100px}.fdi-w-\\[116px\\]{width:116px}.fdi-w-\\[120px\\]{width:120px}.fdi-w-\\[160px\\]{width:160px}.fdi-w-\\[176px\\]{width:176px}.fdi-w-\\[200px\\]{width:200px}.fdi-w-\\[236px\\]{width:236px}.fdi-w-\\[240px\\]{width:240px}.fdi-w-\\[252px\\]{width:252px}.fdi-w-\\[36px\\]{width:36px}.fdi-w-\\[370px\\]{width:370px}.fdi-w-\\[3px\\]{width:3px}.fdi-w-\\[400px\\]{width:400px}.fdi-w-\\[408px\\]{width:408px}.fdi-w-\\[424px\\]{width:424px}.fdi-w-\\[68px\\]{width:68px}.fdi-w-\\[80px\\]{width:80px}.fdi-w-full{width:100%}.fdi-min-w-\\[40px\\]{min-width:40px}.fdi-max-w-\\[200px\\]{max-width:200px}.fdi-max-w-\\[238px\\]{max-width:238px}.fdi-max-w-full{max-width:100%}.fdi-flex-0{flex:0 0 auto}.fdi-flex-1{flex:1 1 0%}.fdi-flex-none{flex:none}.fdi-flex-shrink-0{flex-shrink:0}.fdi-shrink{flex-shrink:1}.fdi-shrink-0{flex-shrink:0}.fdi-grow{flex-grow:1}.fdi--translate-y-2\\/4{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.fdi-rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.fdi-cursor-default{cursor:default}.fdi-cursor-move{cursor:move}.fdi-cursor-pointer{cursor:pointer}.fdi-flex-col{flex-direction:column}.fdi-flex-wrap{flex-wrap:wrap}.fdi-items-start{align-items:flex-start}.fdi-items-center{align-items:center}.fdi-items-stretch{align-items:stretch}.\\!fdi-justify-start{justify-content:flex-start!important}.fdi-justify-start{justify-content:flex-start}.fdi-justify-end{justify-content:flex-end}.fdi-justify-center{justify-content:center}.fdi-justify-between{justify-content:space-between}.fdi-justify-stretch{justify-content:stretch}.\\!fdi-gap-1{gap:.25rem!important}.fdi-gap-5{gap:1.25rem}.fdi-gap-\\[2px\\]{gap:2px}.fdi-gap-\\[32px\\]{gap:32px}.fdi-gap-\\[4px\\]{gap:4px}.fdi-gap-\\[8px\\]{gap:8px}.fdi-gap-lg{gap:10px}.fdi-gap-md{gap:8px}.fdi-gap-sm{gap:6px}.fdi-gap-xl{gap:12px}.fdi-gap-xxl{gap:16px}.fdi-gap-x-\\[6px\\]{-moz-column-gap:6px;column-gap:6px}.fdi-self-start{align-self:flex-start}.fdi-self-center{align-self:center}.fdi-overflow-auto{overflow:auto}.fdi-overflow-hidden{overflow:hidden}.fdi-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fdi-whitespace-break-spaces{white-space:break-spaces}.fdi-break-all{word-break:break-all}.\\!fdi-rounded-xs{border-radius:2px!important}.fdi-rounded{border-radius:.25rem}.fdi-rounded-lg{border-radius:6px}.fdi-rounded-xl{border-radius:8px}.fdi-rounded-b-sm{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.fdi-rounded-bl-xl{border-bottom-left-radius:8px}.fdi-rounded-br-xl{border-bottom-right-radius:8px}.fdi-border{border-width:1px}.fdi-border-b{border-bottom-width:1px}.fdi-border-l{border-left-width:1px}.fdi-border-r{border-right-width:1px}.fdi-border-t-2{border-top-width:2px}.fdi-border-none{border-style:none}.fdi-border-brand-light-4{--tw-border-opacity: 1;border-color:rgb(135 176 247 / var(--tw-border-opacity))}.fdi-border-neutral-light-3{--tw-border-opacity: 1;border-color:rgb(230 233 239 / var(--tw-border-opacity))}.fdi-border-neutral-light-4{--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity))}.fdi-border-transparent{border-color:transparent}.fdi-border-t-brand-light-6{--tw-border-opacity: 1;border-top-color:rgb(44 96 219 / var(--tw-border-opacity))}.\\!fdi-bg-neutral-alpha-light-6{background-color:#091e404a!important}.\\!fdi-bg-transparent{background-color:transparent!important}.fdi-bg-brand-light-2{--tw-bg-opacity: 1;background-color:rgb(229 239 255 / var(--tw-bg-opacity))}.fdi-bg-brand-light-6{--tw-bg-opacity: 1;background-color:rgb(44 96 219 / var(--tw-bg-opacity))}.fdi-bg-netr-light-1{--tw-bg-opacity: 1;background-color:rgb(248 249 252 / var(--tw-bg-opacity))}.fdi-bg-neutral-light-0{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.fdi-bg-neutral-light-1{--tw-bg-opacity: 1;background-color:rgb(248 249 252 / var(--tw-bg-opacity))}.fdi-bg-neutral-light-2{--tw-bg-opacity: 1;background-color:rgb(238 241 246 / var(--tw-bg-opacity))}.fdi-bg-orange-light-1{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity))}.fdi-bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.fdi-bg-opacity-80{--tw-bg-opacity: .8 }.fdi-p-1{padding:.25rem}.fdi-p-1\\.5{padding:.375rem}.fdi-p-4{padding:1rem}.fdi-p-5{padding:1.25rem}.fdi-p-\\[16px\\]{padding:16px}.fdi-p-\\[6px\\]{padding:6px}.fdi-p-lg,.fdi-p-sm{padding:8px}.fdi-p-xl{padding:12px}.fdi-p-xs{padding:4px}.fdi-p-xxl{padding:20px}.fdi-p-xxs{padding:2px}.\\!fdi-px-0{padding-left:0!important;padding-right:0!important}.\\!fdi-px-lg,.\\!fdi-px-md{padding-left:8px!important;padding-right:8px!important}.\\!fdi-py-\\[6px\\]{padding-top:6px!important;padding-bottom:6px!important}.fdi-px-\\[16px\\]{padding-left:16px;padding-right:16px}.fdi-px-lg,.fdi-px-sm{padding-left:8px;padding-right:8px}.fdi-px-xl{padding-left:12px;padding-right:12px}.fdi-px-xxl{padding-left:20px;padding-right:20px}.fdi-py-\\[3px\\]{padding-top:3px;padding-bottom:3px}.fdi-py-\\[6px\\]{padding-top:6px;padding-bottom:6px}.fdi-py-lg,.fdi-py-sm{padding-top:8px;padding-bottom:8px}.fdi-py-xl{padding-top:12px;padding-bottom:12px}.fdi-py-xs{padding-top:4px;padding-bottom:4px}.fdi-py-xxl{padding-top:20px;padding-bottom:20px}.\\!fdi-pl-0{padding-left:0!important}.\\!fdi-pl-\\[11px\\]{padding-left:11px!important}.\\!fdi-pl-sm{padding-left:8px!important}.\\!fdi-pr-sm{padding-right:8px!important}.fdi-pb-\\[10px\\]{padding-bottom:10px}.fdi-pb-\\[16px\\]{padding-bottom:16px}.fdi-pb-lg,.fdi-pb-md,.fdi-pb-sm{padding-bottom:8px}.fdi-pb-xl{padding-bottom:12px}.fdi-pb-xxl{padding-bottom:20px}.fdi-pl-4{padding-left:1rem}.fdi-pl-lg,.fdi-pl-sm{padding-left:8px}.fdi-pl-xl{padding-left:12px}.fdi-pl-xs{padding-left:4px}.fdi-pl-xxxl{padding-left:24px}.fdi-pr-lg{padding-right:8px}.fdi-pr-xs{padding-right:4px}.fdi-pr-xxl{padding-right:20px}.fdi-pr-xxxl{padding-right:24px}.fdi-pt-\\[16px\\]{padding-top:16px}.fdi-pt-lg{padding-top:8px}.fdi-pt-xl{padding-top:12px}.fdi-pt-xs{padding-top:4px}.fdi-pt-xxl{padding-top:20px}.fdi-pt-xxs{padding-top:2px}.fdi-text-left{text-align:left}.fdi-text-center{text-align:center}.fdi-text-\\[20px\\]{font-size:20px}.fdi-text-sm{font-size:12px}.fdi-text-xxl{font-size:18px}.fdi-text-xxxl{font-size:36px}.fdi-font-400{font-weight:400}.fdi-font-600{font-weight:600}.fdi-font-bold{font-weight:700}.fdi-font-normal{font-weight:400}.fdi-font-semibold{font-weight:600}.fdi-leading-4{line-height:1rem}.fdi-leading-5{line-height:1.25rem}.fdi-leading-\\[22px\\]{line-height:22px}.fdi-leading-\\[28px\\]{line-height:28px}.fdi-leading-md{line-height:20px}.fdi-leading-normal{line-height:1.5}.fdi-leading-sm{line-height:20px}.fdi-leading-xxl{line-height:26px}.fdi-leading-xxxl{line-height:50px}.\\!fdi-text-neutral-light-12{--tw-text-opacity: 1 !important;color:rgb(9 30 64 / var(--tw-text-opacity))!important}.fdi-text-black-2{color:#091e40a8}.fdi-text-black-3{color:#091e4078}.fdi-text-brand-light-6{--tw-text-opacity: 1;color:rgb(44 96 219 / var(--tw-text-opacity))}.fdi-text-brand-light-7{--tw-text-opacity: 1;color:rgb(28 75 186 / var(--tw-text-opacity))}.fdi-text-coral-red-light-6{--tw-text-opacity: 1;color:rgb(230 82 81 / var(--tw-text-opacity))}.fdi-text-neutral-light-12{--tw-text-opacity: 1;color:rgb(9 30 64 / var(--tw-text-opacity))}.fdi-text-spring-green-light-6{--tw-text-opacity: 1;color:rgb(36 143 46 / var(--tw-text-opacity))}.fdi-underline-offset-2{text-underline-offset:2px}.fdi-shadow-light-small{--tw-shadow: 0px 4px 12px 0px rgba(9, 30, 64, .08);--tw-shadow-colored: 0px 4px 12px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.fdi-transition-\\[width\\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.fdi-transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.fdi-duration-200{transition-duration:.2s}.fdi-duration-300{transition-duration:.3s}.hover\\:fdi-component-border-1:hover{border-width:1px;border-style:solid;--tw-border-opacity: 1;border-color:rgb(218 222 231 / var(--tw-border-opacity))}.hover\\:fdi-bg-neutral-light-0:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.hover\\:fdi-bg-orange-light-2:hover{--tw-bg-opacity: 1;background-color:rgb(255 245 215 / var(--tw-bg-opacity))}.hover\\:fdi-text-brand-light-5:hover{--tw-text-opacity: 1;color:rgb(82 133 234 / var(--tw-text-opacity))}.active\\:fdi-text-brand-light-7:active{--tw-text-opacity: 1;color:rgb(28 75 186 / var(--tw-text-opacity))}.fdi-group:hover .group-hover\\:fdi-block{display:block}.fdi-filter-condition-pane-content .inner-pane .leaf-node{--tw-bg-opacity: 1;background-color:rgb(248 249 252 / var(--tw-bg-opacity));height:auto}.fdi-filter-condition-pane-content .inner-pane .leaf-node>button>.ant-btn-icon{font-size:16px}.fdi-filter-condition-pane-content .inner-pane .leaf-node>button>.ant-btn-icon svg{vertical-align:middle}.fdi-filter-condition-pane-content>.ant-space-align-center{margin-top:6px} +`,document.head.appendChild(Tv);var Bn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Vt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function ca(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var r=function n(){if(this instanceof n){var o=[null];o.push.apply(o,arguments);var a=Function.bind.apply(t,o);return new a}return t.apply(this,arguments)};r.prototype=t.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(e).forEach(function(n){var o=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(r,n,o.get?o:{enumerable:!0,get:function(){return e[n]}})}),r}var Rv={},zte={get exports(){return Rv},set exports(e){Rv=e}},Ox={},m={},Lte={get exports(){return m},set exports(e){m=e}},hr={};/** * @license React * react.production.min.js * @@ -7,7 +7,7 @@ * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var bv=Symbol.for("react.element"),Cee=Symbol.for("react.portal"),Tee=Symbol.for("react.fragment"),Ree=Symbol.for("react.strict_mode"),Oee=Symbol.for("react.profiler"),Aee=Symbol.for("react.provider"),kee=Symbol.for("react.context"),Pee=Symbol.for("react.forward_ref"),Nee=Symbol.for("react.suspense"),Mee=Symbol.for("react.memo"),Lee=Symbol.for("react.lazy"),e4=Symbol.iterator;function zee(e){return e===null||typeof e!="object"?null:(e=e4&&e[e4]||e["@@iterator"],typeof e=="function"?e:null)}var t4={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},r4=Object.assign,n4={};function Xd(e,t,r){this.props=e,this.context=t,this.refs=n4,this.updater=r||t4}Xd.prototype.isReactComponent={},Xd.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},Xd.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function a4(){}a4.prototype=Xd.prototype;function eI(e,t,r){this.props=e,this.context=t,this.refs=n4,this.updater=r||t4}var tI=eI.prototype=new a4;tI.constructor=eI,r4(tI,Xd.prototype),tI.isPureReactComponent=!0;var o4=Array.isArray,i4=Object.prototype.hasOwnProperty,rI={current:null},l4={key:!0,ref:!0,__self:!0,__source:!0};function s4(e,t,r){var n,a={},o=null,i=null;if(t!=null)for(n in t.ref!==void 0&&(i=t.ref),t.key!==void 0&&(o=""+t.key),t)i4.call(t,n)&&!l4.hasOwnProperty(n)&&(a[n]=t[n]);var l=arguments.length-2;if(l===1)a.children=r;else if(1e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&(r[a]=e[a]);return r}function tte(e,t){if(e==null)return{};var r=yv(e,t),n,a;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var oI={},rte={get exports(){return oI},set exports(e){oI=e}};/*! + */var tre=m,rre=Symbol.for("react.element"),nre=Symbol.for("react.fragment"),ore=Object.prototype.hasOwnProperty,are=tre.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,ire={key:!0,ref:!0,__self:!0,__source:!0};function tA(e,t,r){var n,o={},a=null,i=null;r!==void 0&&(a=""+r),t.key!==void 0&&(a=""+t.key),t.ref!==void 0&&(i=t.ref);for(n in t)ore.call(t,n)&&!ire.hasOwnProperty(n)&&(o[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)o[n]===void 0&&(o[n]=t[n]);return{$$typeof:rre,type:e,key:a,ref:i,props:o,_owner:are.current}}Ox.Fragment=nre,Ox.jsx=tA,Ox.jsxs=tA,function(e){e.exports=Ox}(zte);const ua=Rv.Fragment,se=Rv.jsx,$r=Rv.jsxs,lre=Object.freeze(Object.defineProperty({__proto__:null,Fragment:ua,jsx:se,jsxs:$r},Symbol.toStringTag,{value:"Module"}));function ff(){return ff=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&(r[o]=e[o]);return r}function fre(e,t){if(e==null)return{};var r=Av(e,t),n,o;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var LI={},pre={get exports(){return LI},set exports(e){LI=e}};/*! Copyright (c) 2018 Jed Watson. Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames -*/(function(e){(function(){var t={}.hasOwnProperty;function r(){for(var o="",i=0;i1&&arguments[1]!==void 0?arguments[1]:{},r=[];return $.Children.forEach(e,function(n){n==null&&!t.keepEmpty||(Array.isArray(n)?r=r.concat(fx(n)):du.isFragment(n)&&n.props?r=r.concat(fx(n.props.children,t)):r.push(n))}),r}function fu(e){"@babel/helpers - typeof";return fu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},fu(e)}function ite(e,t){if(fu(e)!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(fu(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function h4(e){var t=ite(e,"string");return fu(t)=="symbol"?t:t+""}function lte(e,t,r){return(t=h4(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function g4(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function px(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:{},r=[];return E.Children.forEach(e,function(n){n==null&&!t.keepEmpty||(Array.isArray(n)?r=r.concat(qx(n)):yu.isFragment(n)&&n.props?r=r.concat(qx(n.props.children,t)):r.push(n))}),r}function wu(e){"@babel/helpers - typeof";return wu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},wu(e)}function _re(e,t){if(wu(e)!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(wu(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function aA(e){var t=_re(e,"string");return wu(t)=="symbol"?t:t+""}function mre(e,t,r){return(t=aA(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function iA(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function Yx(e){for(var t=1;t>>1,q=L[ee];if(0>>1;eea(V,X))Ya(Z,V)?(L[ee]=Z,L[Y]=X,ee=Y):(L[ee]=V,L[W]=X,ee=W);else if(Ya(Z,X))L[ee]=Z,L[Y]=X,ee=Y;else break e}}return K}function a(L,K){var X=L.sortIndex-K.sortIndex;return X!==0?X:L.id-K.id}if(typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var i=Date,l=i.now();e.unstable_now=function(){return i.now()-l}}var s=[],c=[],d=1,f=null,v=3,h=!1,g=!1,_=!1,w=typeof setTimeout=="function"?setTimeout:null,b=typeof clearTimeout=="function"?clearTimeout:null,y=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function D(L){for(var K=r(c);K!==null;){if(K.callback===null)n(c);else if(K.startTime<=L)n(c),K.sortIndex=K.expirationTime,t(s,K);else break;K=r(c)}}function F(L){if(_=!1,D(L),!g)if(r(s)!==null)g=!0,T(S);else{var K=r(c);K!==null&&B(F,K.startTime-L)}}function S(L,K){g=!1,_&&(_=!1,b(R),R=-1),h=!0;var X=v;try{for(D(K),f=r(s);f!==null&&(!(f.expirationTime>K)||L&&!N());){var ee=f.callback;if(typeof ee=="function"){f.callback=null,v=f.priorityLevel;var q=ee(f.expirationTime<=K);K=e.unstable_now(),typeof q=="function"?f.callback=q:f===r(s)&&n(s),D(K)}else n(s);f=r(s)}if(f!==null)var G=!0;else{var W=r(c);W!==null&&B(F,W.startTime-K),G=!1}return G}finally{f=null,v=X,h=!1}}var I=!1,C=null,R=-1,P=5,O=-1;function N(){return!(e.unstable_now()-OL||125ee?(L.sortIndex=X,t(c,L),r(s)===null&&L===r(c)&&(_?(b(R),R=-1):_=!0,B(F,X-ee))):(L.sortIndex=q,t(s,L),g||h||(g=!0,T(S))),L},e.unstable_shouldYield=N,e.unstable_wrapCallback=function(L){var K=v;return function(){var X=v;v=K;try{return L.apply(this,arguments)}finally{v=X}}}})(_4),function(e){e.exports=_4}(cte);/** + */(function(e){function t(O,j){var K=O.length;O.push(j);e:for(;0>>1,Y=O[Q];if(0>>1;Qo(H,K))Vo(Z,H)?(O[Q]=Z,O[V]=K,Q=V):(O[Q]=H,O[G]=K,Q=G);else if(Vo(Z,K))O[Q]=Z,O[V]=K,Q=V;else break e}}return j}function o(O,j){var K=O.sortIndex-j.sortIndex;return K!==0?K:O.id-j.id}if(typeof performance=="object"&&typeof performance.now=="function"){var a=performance;e.unstable_now=function(){return a.now()}}else{var i=Date,l=i.now();e.unstable_now=function(){return i.now()-l}}var s=[],c=[],d=1,f=null,v=3,g=!1,h=!1,_=!1,b=typeof setTimeout=="function"?setTimeout:null,x=typeof clearTimeout=="function"?clearTimeout:null,w=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function D(O){for(var j=r(c);j!==null;){if(j.callback===null)n(c);else if(j.startTime<=O)n(c),j.sortIndex=j.expirationTime,t(s,j);else break;j=r(c)}}function I(O){if(_=!1,D(O),!h)if(r(s)!==null)h=!0,N($);else{var j=r(c);j!==null&&T(I,j.startTime-O)}}function $(O,j){h=!1,_&&(_=!1,x(R),R=-1),g=!0;var K=v;try{for(D(j),f=r(s);f!==null&&(!(f.expirationTime>j)||O&&!U());){var Q=f.callback;if(typeof Q=="function"){f.callback=null,v=f.priorityLevel;var Y=Q(f.expirationTime<=j);j=e.unstable_now(),typeof Y=="function"?f.callback=Y:f===r(s)&&n(s),D(j)}else n(s);f=r(s)}if(f!==null)var X=!0;else{var G=r(c);G!==null&&T(I,G.startTime-j),X=!1}return X}finally{f=null,v=K,g=!1}}var F=!1,C=null,R=-1,k=5,P=-1;function U(){return!(e.unstable_now()-PO||125Q?(O.sortIndex=K,t(c,O),r(s)===null&&O===r(c)&&(_?(x(R),R=-1):_=!0,T(I,K-Q))):(O.sortIndex=Y,t(s,O),h||g||(h=!0,N($))),O},e.unstable_shouldYield=U,e.unstable_wrapCallback=function(O){var j=v;return function(){var K=v;v=j;try{return O.apply(this,arguments)}finally{v=K}}}})(lA),function(e){e.exports=lA}(bre);/** * @license React * react-dom.production.min.js * @@ -44,46 +44,49 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var ute=m,So=sI;function We(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),cI=Object.prototype.hasOwnProperty,dte=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,x4={},b4={};function fte(e){return cI.call(b4,e)?!0:cI.call(x4,e)?!1:dte.test(e)?b4[e]=!0:(x4[e]=!0,!1)}function pte(e,t,r,n){if(r!==null&&r.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return n?!1:r!==null?!r.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function vte(e,t,r,n){if(t===null||typeof t>"u"||pte(e,t,r,n))return!0;if(n)return!1;if(r!==null)switch(r.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function Ya(e,t,r,n,a,o,i){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=n,this.attributeNamespace=a,this.mustUseProperty=r,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=i}var ga={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){ga[e]=new Ya(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];ga[t]=new Ya(t,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){ga[e]=new Ya(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){ga[e]=new Ya(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){ga[e]=new Ya(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){ga[e]=new Ya(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){ga[e]=new Ya(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){ga[e]=new Ya(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){ga[e]=new Ya(e,5,!1,e.toLowerCase(),null,!1,!1)});var uI=/[\-:]([a-z])/g;function dI(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(uI,dI);ga[t]=new Ya(t,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(uI,dI);ga[t]=new Ya(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(uI,dI);ga[t]=new Ya(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){ga[e]=new Ya(e,1,!1,e.toLowerCase(),null,!1,!1)}),ga.xlinkHref=new Ya("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){ga[e]=new Ya(e,1,!1,e.toLowerCase(),null,!0,!0)});function fI(e,t,r,n){var a=ga.hasOwnProperty(t)?ga[t]:null;(a!==null?a.type!==0:n||!(2l||a[i]!==o[l]){var s=` -`+a[i].replace(" at new "," at ");return e.displayName&&s.includes("")&&(s=s.replace("",e.displayName)),s}while(1<=i&&0<=l);break}}}finally{bI=!1,Error.prepareStackTrace=r}return(e=e?e.displayName||e.name:"")?Iv(e):""}function hte(e){switch(e.tag){case 5:return Iv(e.type);case 16:return Iv("Lazy");case 13:return Iv("Suspense");case 19:return Iv("SuspenseList");case 0:case 2:case 15:return e=yI(e.type,!1),e;case 11:return e=yI(e.type.render,!1),e;case 1:return e=yI(e.type,!0),e;default:return""}}function wI(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case ef:return"Fragment";case Jd:return"Portal";case vI:return"Profiler";case pI:return"StrictMode";case gI:return"Suspense";case _I:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case w4:return(e.displayName||"Context")+".Consumer";case y4:return(e._context.displayName||"Context")+".Provider";case hI:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case mI:return t=e.displayName||null,t!==null?t:wI(e.type)||"Memo";case Js:t=e._payload,e=e._init;try{return wI(e(t))}catch{}}return null}function gte(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return wI(t);case 8:return t===pI?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function ec(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function F4(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function _te(e){var t=F4(e)?"checked":"value",r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),n=""+e[t];if(!e.hasOwnProperty(t)&&typeof r<"u"&&typeof r.get=="function"&&typeof r.set=="function"){var a=r.get,o=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return a.call(this)},set:function(i){n=""+i,o.call(this,i)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(i){n=""+i},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function hx(e){e._valueTracker||(e._valueTracker=_te(e))}function $4(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var r=t.getValue(),n="";return e&&(n=F4(e)?e.checked?"true":"false":e.value),e=n,e!==r?(t.setValue(e),!0):!1}function gx(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function DI(e,t){var r=t.checked;return vn({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:r??e._wrapperState.initialChecked})}function S4(e,t){var r=t.defaultValue==null?"":t.defaultValue,n=t.checked!=null?t.checked:t.defaultChecked;r=ec(t.value!=null?t.value:r),e._wrapperState={initialChecked:n,initialValue:r,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function E4(e,t){t=t.checked,t!=null&&fI(e,"checked",t,!1)}function II(e,t){E4(e,t);var r=ec(t.value),n=t.type;if(r!=null)n==="number"?(r===0&&e.value===""||e.value!=r)&&(e.value=""+r):e.value!==""+r&&(e.value=""+r);else if(n==="submit"||n==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?FI(e,t.type,r):t.hasOwnProperty("defaultValue")&&FI(e,t.type,ec(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function C4(e,t,r){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var n=t.type;if(!(n!=="submit"&&n!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,r||t===e.value||(e.value=t),e.defaultValue=t}r=e.name,r!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,r!==""&&(e.name=r)}function FI(e,t,r){(t!=="number"||gx(e.ownerDocument)!==e)&&(r==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+r&&(e.defaultValue=""+r))}var Fv=Array.isArray;function tf(e,t,r,n){if(e=e.options,t){t={};for(var a=0;a"+t.valueOf().toString()+"",t=_x.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function $v(e,t){if(t){var r=e.firstChild;if(r&&r===e.lastChild&&r.nodeType===3){r.nodeValue=t;return}}e.textContent=t}var Sv={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},mte=["Webkit","ms","Moz","O"];Object.keys(Sv).forEach(function(e){mte.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Sv[t]=Sv[e]})});function P4(e,t,r){return t==null||typeof t=="boolean"||t===""?"":r||typeof t!="number"||t===0||Sv.hasOwnProperty(e)&&Sv[e]?(""+t).trim():t+"px"}function N4(e,t){e=e.style;for(var r in t)if(t.hasOwnProperty(r)){var n=r.indexOf("--")===0,a=P4(r,t[r],n);r==="float"&&(r="cssFloat"),n?e.setProperty(r,a):e[r]=a}}var xte=vn({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function EI(e,t){if(t){if(xte[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(We(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(We(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(We(61))}if(t.style!=null&&typeof t.style!="object")throw Error(We(62))}}function CI(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var TI=null;function RI(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var OI=null,rf=null,nf=null;function M4(e){if(e=Gv(e)){if(typeof OI!="function")throw Error(We(280));var t=e.stateNode;t&&(t=Bx(t),OI(e.stateNode,e.type,t))}}function L4(e){rf?nf?nf.push(e):nf=[e]:rf=e}function z4(){if(rf){var e=rf,t=nf;if(nf=rf=null,M4(e),t)for(e=0;e>>=0,e===0?32:31-(Tte(e)/Rte|0)|0}var wx=64,Dx=4194304;function Rv(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Ix(e,t){var r=e.pendingLanes;if(r===0)return 0;var n=0,a=e.suspendedLanes,o=e.pingedLanes,i=r&268435455;if(i!==0){var l=i&~a;l!==0?n=Rv(l):(o&=i,o!==0&&(n=Rv(o)))}else i=r&~a,i!==0?n=Rv(i):o!==0&&(n=Rv(o));if(n===0)return 0;if(t!==0&&t!==n&&!(t&a)&&(a=n&-n,o=t&-t,a>=o||a===16&&(o&4194240)!==0))return t;if(n&4&&(n|=r&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=n;0r;r++)t.push(e);return t}function Ov(e,t,r){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Ri(t),e[t]=r}function Pte(e,t){var r=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var n=e.eventTimes;for(e=e.expirationTimes;0=Bv),pA=String.fromCharCode(32),vA=!1;function hA(e,t){switch(e){case"keyup":return cre.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function gA(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var lf=!1;function dre(e,t){switch(e){case"compositionend":return gA(t);case"keypress":return t.which!==32?null:(vA=!0,pA);case"textInput":return e=t.data,e===pA&&vA?null:e;default:return null}}function fre(e,t){if(lf)return e==="compositionend"||!ZI&&hA(e,t)?(e=lA(),Cx=VI=oc=null,lf=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=DA(r)}}function FA(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?FA(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function $A(){for(var e=window,t=gx();t instanceof e.HTMLIFrameElement;){try{var r=typeof t.contentWindow.location.href=="string"}catch{r=!1}if(r)e=t.contentWindow;else break;t=gx(e.document)}return t}function eF(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function yre(e){var t=$A(),r=e.focusedElem,n=e.selectionRange;if(t!==r&&r&&r.ownerDocument&&FA(r.ownerDocument.documentElement,r)){if(n!==null&&eF(r)){if(t=n.start,e=n.end,e===void 0&&(e=t),"selectionStart"in r)r.selectionStart=t,r.selectionEnd=Math.min(e,r.value.length);else if(e=(t=r.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var a=r.textContent.length,o=Math.min(n.start,a);n=n.end===void 0?o:Math.min(n.end,a),!e.extend&&o>n&&(a=n,n=o,o=a),a=IA(r,o);var i=IA(r,n);a&&i&&(e.rangeCount!==1||e.anchorNode!==a.node||e.anchorOffset!==a.offset||e.focusNode!==i.node||e.focusOffset!==i.offset)&&(t=t.createRange(),t.setStart(a.node,a.offset),e.removeAllRanges(),o>n?(e.addRange(t),e.extend(i.node,i.offset)):(t.setEnd(i.node,i.offset),e.addRange(t)))}}for(t=[],e=r;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;r=document.documentMode,sf=null,tF=null,Wv=null,rF=!1;function SA(e,t,r){var n=r.window===r?r.document:r.nodeType===9?r:r.ownerDocument;rF||sf==null||sf!==gx(n)||(n=sf,"selectionStart"in n&&eF(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),Wv&&Hv(Wv,n)||(Wv=n,n=Mx(tF,"onSelect"),0pf||(e.current=vF[pf],vF[pf]=null,pf--)}function qr(e,t){pf++,vF[pf]=e.current,e.current=t}var cc={},Aa=sc(cc),lo=sc(!1),gu=cc;function vf(e,t){var r=e.type.contextTypes;if(!r)return cc;var n=e.stateNode;if(n&&n.__reactInternalMemoizedUnmaskedChildContext===t)return n.__reactInternalMemoizedMaskedChildContext;var a={},o;for(o in r)a[o]=t[o];return n&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=a),a}function so(e){return e=e.childContextTypes,e!=null}function jx(){nn(lo),nn(Aa)}function UA(e,t,r){if(Aa.current!==cc)throw Error(We(168));qr(Aa,t),qr(lo,r)}function HA(e,t,r){var n=e.stateNode;if(t=t.childContextTypes,typeof n.getChildContext!="function")return r;n=n.getChildContext();for(var a in n)if(!(a in t))throw Error(We(108,gte(e)||"Unknown",a));return vn({},r,n)}function Ux(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||cc,gu=Aa.current,qr(Aa,e),qr(lo,lo.current),!0}function WA(e,t,r){var n=e.stateNode;if(!n)throw Error(We(169));r?(e=HA(e,t,gu),n.__reactInternalMemoizedMergedChildContext=e,nn(lo),nn(Aa),qr(Aa,e)):nn(lo),qr(lo,r)}var ls=null,Hx=!1,hF=!1;function VA(e){ls===null?ls=[e]:ls.push(e)}function Are(e){Hx=!0,VA(e)}function uc(){if(!hF&&ls!==null){hF=!0;var e=0,t=Ar;try{var r=ls;for(Ar=1;e>=i,a-=i,ss=1<<32-Ri(t)+a|r<R?(P=C,C=null):P=C.sibling;var O=v(b,C,D[R],F);if(O===null){C===null&&(C=P);break}e&&C&&O.alternate===null&&t(b,C),y=o(O,y,R),I===null?S=O:I.sibling=O,I=O,C=P}if(R===D.length)return r(b,C),un&&mu(b,R),S;if(C===null){for(;RR?(P=C,C=null):P=C.sibling;var N=v(b,C,O.value,F);if(N===null){C===null&&(C=P);break}e&&C&&N.alternate===null&&t(b,C),y=o(N,y,R),I===null?S=N:I.sibling=N,I=N,C=P}if(O.done)return r(b,C),un&&mu(b,R),S;if(C===null){for(;!O.done;R++,O=D.next())O=f(b,O.value,F),O!==null&&(y=o(O,y,R),I===null?S=O:I.sibling=O,I=O);return un&&mu(b,R),S}for(C=n(b,C);!O.done;R++,O=D.next())O=h(C,b,R,O.value,F),O!==null&&(e&&O.alternate!==null&&C.delete(O.key===null?R:O.key),y=o(O,y,R),I===null?S=O:I.sibling=O,I=O);return e&&C.forEach(function(A){return t(b,A)}),un&&mu(b,R),S}function w(b,y,D,F){if(typeof D=="object"&&D!==null&&D.type===ef&&D.key===null&&(D=D.props.children),typeof D=="object"&&D!==null){switch(D.$$typeof){case vx:e:{for(var S=D.key,I=y;I!==null;){if(I.key===S){if(S=D.type,S===ef){if(I.tag===7){r(b,I.sibling),y=a(I,D.props.children),y.return=b,b=y;break e}}else if(I.elementType===S||typeof S=="object"&&S!==null&&S.$$typeof===Js&&ZA(S)===I.type){r(b,I.sibling),y=a(I,D.props),y.ref=Xv(b,I,D),y.return=b,b=y;break e}r(b,I);break}else t(b,I);I=I.sibling}D.type===ef?(y=$u(D.props.children,b.mode,F,D.key),y.return=b,b=y):(F=_b(D.type,D.key,D.props,null,b.mode,F),F.ref=Xv(b,y,D),F.return=b,b=F)}return i(b);case Jd:e:{for(I=D.key;y!==null;){if(y.key===I)if(y.tag===4&&y.stateNode.containerInfo===D.containerInfo&&y.stateNode.implementation===D.implementation){r(b,y.sibling),y=a(y,D.children||[]),y.return=b,b=y;break e}else{r(b,y);break}else t(b,y);y=y.sibling}y=f2(D,b.mode,F),y.return=b,b=y}return i(b);case Js:return I=D._init,w(b,y,I(D._payload),F)}if(Fv(D))return g(b,y,D,F);if(Dv(D))return _(b,y,D,F);qx(b,D)}return typeof D=="string"&&D!==""||typeof D=="number"?(D=""+D,y!==null&&y.tag===6?(r(b,y.sibling),y=a(y,D),y.return=b,b=y):(r(b,y),y=d2(D,b.mode,F),y.return=b,b=y),i(b)):r(b,y)}return w}var mf=QA(!0),JA=QA(!1),Yx=sc(null),Gx=null,xf=null,yF=null;function wF(){yF=xf=Gx=null}function DF(e){var t=Yx.current;nn(Yx),e._currentValue=t}function IF(e,t,r){for(;e!==null;){var n=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,n!==null&&(n.childLanes|=t)):n!==null&&(n.childLanes&t)!==t&&(n.childLanes|=t),e===r)break;e=e.return}}function bf(e,t){Gx=e,yF=xf=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(co=!0),e.firstContext=null)}function Qo(e){var t=e._currentValue;if(yF!==e)if(e={context:e,memoizedValue:t,next:null},xf===null){if(Gx===null)throw Error(We(308));xf=e,Gx.dependencies={lanes:0,firstContext:e}}else xf=xf.next=e;return t}var xu=null;function FF(e){xu===null?xu=[e]:xu.push(e)}function ek(e,t,r,n){var a=t.interleaved;return a===null?(r.next=r,FF(t)):(r.next=a.next,a.next=r),t.interleaved=r,us(e,n)}function us(e,t){e.lanes|=t;var r=e.alternate;for(r!==null&&(r.lanes|=t),r=e,e=e.return;e!==null;)e.childLanes|=t,r=e.alternate,r!==null&&(r.childLanes|=t),r=e,e=e.return;return r.tag===3?r.stateNode:null}var dc=!1;function $F(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function tk(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function ds(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function fc(e,t,r){var n=e.updateQueue;if(n===null)return null;if(n=n.shared,wr&2){var a=n.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),n.pending=t,us(e,r)}return a=n.interleaved,a===null?(t.next=t,FF(n)):(t.next=a.next,a.next=t),n.interleaved=t,us(e,r)}function Xx(e,t,r){if(t=t.updateQueue,t!==null&&(t=t.shared,(r&4194240)!==0)){var n=t.lanes;n&=e.pendingLanes,r|=n,t.lanes=r,zI(e,r)}}function rk(e,t){var r=e.updateQueue,n=e.alternate;if(n!==null&&(n=n.updateQueue,r===n)){var a=null,o=null;if(r=r.firstBaseUpdate,r!==null){do{var i={eventTime:r.eventTime,lane:r.lane,tag:r.tag,payload:r.payload,callback:r.callback,next:null};o===null?a=o=i:o=o.next=i,r=r.next}while(r!==null);o===null?a=o=t:o=o.next=t}else a=o=t;r={baseState:n.baseState,firstBaseUpdate:a,lastBaseUpdate:o,shared:n.shared,effects:n.effects},e.updateQueue=r;return}e=r.lastBaseUpdate,e===null?r.firstBaseUpdate=t:e.next=t,r.lastBaseUpdate=t}function Zx(e,t,r,n){var a=e.updateQueue;dc=!1;var o=a.firstBaseUpdate,i=a.lastBaseUpdate,l=a.shared.pending;if(l!==null){a.shared.pending=null;var s=l,c=s.next;s.next=null,i===null?o=c:i.next=c,i=s;var d=e.alternate;d!==null&&(d=d.updateQueue,l=d.lastBaseUpdate,l!==i&&(l===null?d.firstBaseUpdate=c:l.next=c,d.lastBaseUpdate=s))}if(o!==null){var f=a.baseState;i=0,d=c=s=null,l=o;do{var v=l.lane,h=l.eventTime;if((n&v)===v){d!==null&&(d=d.next={eventTime:h,lane:0,tag:l.tag,payload:l.payload,callback:l.callback,next:null});e:{var g=e,_=l;switch(v=t,h=r,_.tag){case 1:if(g=_.payload,typeof g=="function"){f=g.call(h,f,v);break e}f=g;break e;case 3:g.flags=g.flags&-65537|128;case 0:if(g=_.payload,v=typeof g=="function"?g.call(h,f,v):g,v==null)break e;f=vn({},f,v);break e;case 2:dc=!0}}l.callback!==null&&l.lane!==0&&(e.flags|=64,v=a.effects,v===null?a.effects=[l]:v.push(l))}else h={eventTime:h,lane:v,tag:l.tag,payload:l.payload,callback:l.callback,next:null},d===null?(c=d=h,s=f):d=d.next=h,i|=v;if(l=l.next,l===null){if(l=a.shared.pending,l===null)break;v=l,l=v.next,v.next=null,a.lastBaseUpdate=v,a.shared.pending=null}}while(1);if(d===null&&(s=f),a.baseState=s,a.firstBaseUpdate=c,a.lastBaseUpdate=d,t=a.shared.interleaved,t!==null){a=t;do i|=a.lane,a=a.next;while(a!==t)}else o===null&&(a.shared.lanes=0);wu|=i,e.lanes=i,e.memoizedState=f}}function nk(e,t,r){if(e=t.effects,t.effects=null,e!==null)for(t=0;tr?r:4,e(!0);var n=RF.transition;RF.transition={};try{e(!1),t()}finally{Ar=r,RF.transition=n}}function wk(){return Jo().memoizedState}function Mre(e,t,r){var n=gc(e);if(r={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null},Dk(e))Ik(t,r);else if(r=ek(e,t,r,n),r!==null){var a=Xa();Mi(r,e,n,a),Fk(r,t,n)}}function Lre(e,t,r){var n=gc(e),a={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null};if(Dk(e))Ik(t,a);else{var o=e.alternate;if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var i=t.lastRenderedState,l=o(i,r);if(a.hasEagerState=!0,a.eagerState=l,Oi(l,i)){var s=t.interleaved;s===null?(a.next=a,FF(t)):(a.next=s.next,s.next=a),t.interleaved=a;return}}catch{}finally{}r=ek(e,t,a,n),r!==null&&(a=Xa(),Mi(r,e,n,a),Fk(r,t,n))}}function Dk(e){var t=e.alternate;return e===gn||t!==null&&t===gn}function Ik(e,t){eh=eb=!0;var r=e.pending;r===null?t.next=t:(t.next=r.next,r.next=t),e.pending=t}function Fk(e,t,r){if(r&4194240){var n=t.lanes;n&=e.pendingLanes,r|=n,t.lanes=r,zI(e,r)}}var nb={readContext:Qo,useCallback:ka,useContext:ka,useEffect:ka,useImperativeHandle:ka,useInsertionEffect:ka,useLayoutEffect:ka,useMemo:ka,useReducer:ka,useRef:ka,useState:ka,useDebugValue:ka,useDeferredValue:ka,useTransition:ka,useMutableSource:ka,useSyncExternalStore:ka,useId:ka,unstable_isNewReconciler:!1},zre={readContext:Qo,useCallback:function(e,t){return bl().memoizedState=[e,t===void 0?null:t],e},useContext:Qo,useEffect:vk,useImperativeHandle:function(e,t,r){return r=r!=null?r.concat([e]):null,tb(4194308,4,_k.bind(null,t,e),r)},useLayoutEffect:function(e,t){return tb(4194308,4,e,t)},useInsertionEffect:function(e,t){return tb(4,2,e,t)},useMemo:function(e,t){var r=bl();return t=t===void 0?null:t,e=e(),r.memoizedState=[e,t],e},useReducer:function(e,t,r){var n=bl();return t=r!==void 0?r(t):t,n.memoizedState=n.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},n.queue=e,e=e.dispatch=Mre.bind(null,gn,e),[n.memoizedState,e]},useRef:function(e){var t=bl();return e={current:e},t.memoizedState=e},useState:fk,useDebugValue:LF,useDeferredValue:function(e){return bl().memoizedState=e},useTransition:function(){var e=fk(!1),t=e[0];return e=Nre.bind(null,e[1]),bl().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,r){var n=gn,a=bl();if(un){if(r===void 0)throw Error(We(407));r=r()}else{if(r=t(),la===null)throw Error(We(349));yu&30||lk(n,t,r)}a.memoizedState=r;var o={value:r,getSnapshot:t};return a.queue=o,vk(ck.bind(null,n,o,e),[e]),n.flags|=2048,nh(9,sk.bind(null,n,o,r,t),void 0,null),r},useId:function(){var e=bl(),t=la.identifierPrefix;if(un){var r=cs,n=ss;r=(n&~(1<<32-Ri(n)-1)).toString(32)+r,t=":"+t+"R"+r,r=th++,0<\/script>",e=e.removeChild(e.firstChild)):typeof n.is=="string"?e=i.createElement(r,{is:n.is}):(e=i.createElement(r),r==="select"&&(i=e,n.multiple?i.multiple=!0:n.size&&(i.size=n.size))):e=i.createElementNS(e,r),e[ml]=t,e[Yv]=n,Vk(e,t,!1,!1),t.stateNode=e;e:{switch(i=CI(r,n),r){case"dialog":rn("cancel",e),rn("close",e),a=n;break;case"iframe":case"object":case"embed":rn("load",e),a=n;break;case"video":case"audio":for(a=0;aFf&&(t.flags|=128,n=!0,ah(o,!1),t.lanes=4194304)}else{if(!n)if(e=Qx(i),e!==null){if(t.flags|=128,n=!0,r=e.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),ah(o,!0),o.tail===null&&o.tailMode==="hidden"&&!i.alternate&&!un)return Pa(t),null}else 2*An()-o.renderingStartTime>Ff&&r!==1073741824&&(t.flags|=128,n=!0,ah(o,!1),t.lanes=4194304);o.isBackwards?(i.sibling=t.child,t.child=i):(r=o.last,r!==null?r.sibling=i:t.child=i,o.last=i)}return o.tail!==null?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=An(),t.sibling=null,r=hn.current,qr(hn,n?r&1|2:r&1),t):(Pa(t),null);case 22:case 23:return s2(),n=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==n&&(t.flags|=8192),n&&t.mode&1?Ro&1073741824&&(Pa(t),t.subtreeFlags&6&&(t.flags|=8192)):Pa(t),null;case 24:return null;case 25:return null}throw Error(We(156,t.tag))}function qre(e,t){switch(_F(t),t.tag){case 1:return so(t.type)&&jx(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return yf(),nn(lo),nn(Aa),TF(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return EF(t),null;case 13:if(nn(hn),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(We(340));_f()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return nn(hn),null;case 4:return yf(),null;case 10:return DF(t.type._context),null;case 22:case 23:return s2(),null;case 24:return null;default:return null}}var lb=!1,Na=!1,Yre=typeof WeakSet=="function"?WeakSet:Set,vt=null;function Df(e,t){var r=e.ref;if(r!==null)if(typeof r=="function")try{r(null)}catch(n){$n(e,t,n)}else r.current=null}function XF(e,t,r){try{r()}catch(n){$n(e,t,n)}}var Yk=!1;function Gre(e,t){if(sF=Sx,e=$A(),eF(e)){if("selectionStart"in e)var r={start:e.selectionStart,end:e.selectionEnd};else e:{r=(r=e.ownerDocument)&&r.defaultView||window;var n=r.getSelection&&r.getSelection();if(n&&n.rangeCount!==0){r=n.anchorNode;var a=n.anchorOffset,o=n.focusNode;n=n.focusOffset;try{r.nodeType,o.nodeType}catch{r=null;break e}var i=0,l=-1,s=-1,c=0,d=0,f=e,v=null;t:for(;;){for(var h;f!==r||a!==0&&f.nodeType!==3||(l=i+a),f!==o||n!==0&&f.nodeType!==3||(s=i+n),f.nodeType===3&&(i+=f.nodeValue.length),(h=f.firstChild)!==null;)v=f,f=h;for(;;){if(f===e)break t;if(v===r&&++c===a&&(l=i),v===o&&++d===n&&(s=i),(h=f.nextSibling)!==null)break;f=v,v=f.parentNode}f=h}r=l===-1||s===-1?null:{start:l,end:s}}else r=null}r=r||{start:0,end:0}}else r=null;for(cF={focusedElem:e,selectionRange:r},Sx=!1,vt=t;vt!==null;)if(t=vt,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,vt=e;else for(;vt!==null;){t=vt;try{var g=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(g!==null){var _=g.memoizedProps,w=g.memoizedState,b=t.stateNode,y=b.getSnapshotBeforeUpdate(t.elementType===t.type?_:ki(t.type,_),w);b.__reactInternalSnapshotBeforeUpdate=y}break;case 3:var D=t.stateNode.containerInfo;D.nodeType===1?D.textContent="":D.nodeType===9&&D.documentElement&&D.removeChild(D.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(We(163))}}catch(F){$n(t,t.return,F)}if(e=t.sibling,e!==null){e.return=t.return,vt=e;break}vt=t.return}return g=Yk,Yk=!1,g}function oh(e,t,r){var n=t.updateQueue;if(n=n!==null?n.lastEffect:null,n!==null){var a=n=n.next;do{if((a.tag&e)===e){var o=a.destroy;a.destroy=void 0,o!==void 0&&XF(t,r,o)}a=a.next}while(a!==n)}}function sb(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var r=t=t.next;do{if((r.tag&e)===e){var n=r.create;r.destroy=n()}r=r.next}while(r!==t)}}function ZF(e){var t=e.ref;if(t!==null){var r=e.stateNode;switch(e.tag){case 5:e=r;break;default:e=r}typeof t=="function"?t(e):t.current=e}}function Gk(e){var t=e.alternate;t!==null&&(e.alternate=null,Gk(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[ml],delete t[Yv],delete t[pF],delete t[Rre],delete t[Ore])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Xk(e){return e.tag===5||e.tag===3||e.tag===4}function Zk(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Xk(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function QF(e,t,r){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?r.nodeType===8?r.parentNode.insertBefore(e,t):r.insertBefore(e,t):(r.nodeType===8?(t=r.parentNode,t.insertBefore(e,r)):(t=r,t.appendChild(e)),r=r._reactRootContainer,r!=null||t.onclick!==null||(t.onclick=zx));else if(n!==4&&(e=e.child,e!==null))for(QF(e,t,r),e=e.sibling;e!==null;)QF(e,t,r),e=e.sibling}function JF(e,t,r){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?r.insertBefore(e,t):r.appendChild(e);else if(n!==4&&(e=e.child,e!==null))for(JF(e,t,r),e=e.sibling;e!==null;)JF(e,t,r),e=e.sibling}var _a=null,Pi=!1;function pc(e,t,r){for(r=r.child;r!==null;)Qk(e,t,r),r=r.sibling}function Qk(e,t,r){if(_l&&typeof _l.onCommitFiberUnmount=="function")try{_l.onCommitFiberUnmount(yx,r)}catch{}switch(r.tag){case 5:Na||Df(r,t);case 6:var n=_a,a=Pi;_a=null,pc(e,t,r),_a=n,Pi=a,_a!==null&&(Pi?(e=_a,r=r.stateNode,e.nodeType===8?e.parentNode.removeChild(r):e.removeChild(r)):_a.removeChild(r.stateNode));break;case 18:_a!==null&&(Pi?(e=_a,r=r.stateNode,e.nodeType===8?fF(e.parentNode,r):e.nodeType===1&&fF(e,r),Mv(e)):fF(_a,r.stateNode));break;case 4:n=_a,a=Pi,_a=r.stateNode.containerInfo,Pi=!0,pc(e,t,r),_a=n,Pi=a;break;case 0:case 11:case 14:case 15:if(!Na&&(n=r.updateQueue,n!==null&&(n=n.lastEffect,n!==null))){a=n=n.next;do{var o=a,i=o.destroy;o=o.tag,i!==void 0&&(o&2||o&4)&&XF(r,t,i),a=a.next}while(a!==n)}pc(e,t,r);break;case 1:if(!Na&&(Df(r,t),n=r.stateNode,typeof n.componentWillUnmount=="function"))try{n.props=r.memoizedProps,n.state=r.memoizedState,n.componentWillUnmount()}catch(l){$n(r,t,l)}pc(e,t,r);break;case 21:pc(e,t,r);break;case 22:r.mode&1?(Na=(n=Na)||r.memoizedState!==null,pc(e,t,r),Na=n):pc(e,t,r);break;default:pc(e,t,r)}}function Jk(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var r=e.stateNode;r===null&&(r=e.stateNode=new Yre),t.forEach(function(n){var a=ane.bind(null,e,n);r.has(n)||(r.add(n),n.then(a,a))})}}function Ni(e,t){var r=t.deletions;if(r!==null)for(var n=0;na&&(a=i),n&=~o}if(n=a,n=An()-n,n=(120>n?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*Zre(n/1960))-n,10e?16:e,hc===null)var n=!1;else{if(e=hc,hc=null,pb=0,wr&6)throw Error(We(331));var a=wr;for(wr|=4,vt=e.current;vt!==null;){var o=vt,i=o.child;if(vt.flags&16){var l=o.deletions;if(l!==null){for(var s=0;sAn()-r2?Iu(e,0):t2|=r),fo(e,t)}function fP(e,t){t===0&&(e.mode&1?(t=Dx,Dx<<=1,!(Dx&130023424)&&(Dx=4194304)):t=1);var r=Xa();e=us(e,t),e!==null&&(Ov(e,t,r),fo(e,r))}function nne(e){var t=e.memoizedState,r=0;t!==null&&(r=t.retryLane),fP(e,r)}function ane(e,t){var r=0;switch(e.tag){case 13:var n=e.stateNode,a=e.memoizedState;a!==null&&(r=a.retryLane);break;case 19:n=e.stateNode;break;default:throw Error(We(314))}n!==null&&n.delete(t),fP(e,r)}var pP;pP=function(e,t,r){if(e!==null)if(e.memoizedProps!==t.pendingProps||lo.current)co=!0;else{if(!(e.lanes&r)&&!(t.flags&128))return co=!1,Vre(e,t,r);co=!!(e.flags&131072)}else co=!1,un&&t.flags&1048576&&KA(t,Vx,t.index);switch(t.lanes=0,t.tag){case 2:var n=t.type;ib(e,t),e=t.pendingProps;var a=vf(t,Aa.current);bf(t,r),a=AF(null,t,n,e,a,r);var o=kF();return t.flags|=1,typeof a=="object"&&a!==null&&typeof a.render=="function"&&a.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,so(n)?(o=!0,Ux(t)):o=!1,t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,$F(t),a.updater=ab,t.stateNode=a,a._reactInternals=t,BF(t,n,e,r),t=WF(null,t,n,!0,o,r)):(t.tag=0,un&&o&&gF(t),Ga(null,t,a,r),t=t.child),t;case 16:n=t.elementType;e:{switch(ib(e,t),e=t.pendingProps,a=n._init,n=a(n._payload),t.type=n,a=t.tag=ine(n),e=ki(n,e),a){case 0:t=HF(null,t,n,e,r);break e;case 1:t=zk(null,t,n,e,r);break e;case 11:t=kk(null,t,n,e,r);break e;case 14:t=Pk(null,t,n,ki(n.type,e),r);break e}throw Error(We(306,n,""))}return t;case 0:return n=t.type,a=t.pendingProps,a=t.elementType===n?a:ki(n,a),HF(e,t,n,a,r);case 1:return n=t.type,a=t.pendingProps,a=t.elementType===n?a:ki(n,a),zk(e,t,n,a,r);case 3:e:{if(Bk(t),e===null)throw Error(We(387));n=t.pendingProps,o=t.memoizedState,a=o.element,tk(e,t),Zx(t,n,null,r);var i=t.memoizedState;if(n=i.element,o.isDehydrated)if(o={element:n,isDehydrated:!1,cache:i.cache,pendingSuspenseBoundaries:i.pendingSuspenseBoundaries,transitions:i.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){a=wf(Error(We(423)),t),t=jk(e,t,n,r,a);break e}else if(n!==a){a=wf(Error(We(424)),t),t=jk(e,t,n,r,a);break e}else for(To=lc(t.stateNode.containerInfo.firstChild),Co=t,un=!0,Ai=null,r=JA(t,null,n,r),t.child=r;r;)r.flags=r.flags&-3|4096,r=r.sibling;else{if(_f(),n===a){t=fs(e,t,r);break e}Ga(e,t,n,r)}t=t.child}return t;case 5:return ak(t),e===null&&xF(t),n=t.type,a=t.pendingProps,o=e!==null?e.memoizedProps:null,i=a.children,uF(n,a)?i=null:o!==null&&uF(n,o)&&(t.flags|=32),Lk(e,t),Ga(e,t,i,r),t.child;case 6:return e===null&&xF(t),null;case 13:return Uk(e,t,r);case 4:return SF(t,t.stateNode.containerInfo),n=t.pendingProps,e===null?t.child=mf(t,null,n,r):Ga(e,t,n,r),t.child;case 11:return n=t.type,a=t.pendingProps,a=t.elementType===n?a:ki(n,a),kk(e,t,n,a,r);case 7:return Ga(e,t,t.pendingProps,r),t.child;case 8:return Ga(e,t,t.pendingProps.children,r),t.child;case 12:return Ga(e,t,t.pendingProps.children,r),t.child;case 10:e:{if(n=t.type._context,a=t.pendingProps,o=t.memoizedProps,i=a.value,qr(Yx,n._currentValue),n._currentValue=i,o!==null)if(Oi(o.value,i)){if(o.children===a.children&&!lo.current){t=fs(e,t,r);break e}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var l=o.dependencies;if(l!==null){i=o.child;for(var s=l.firstContext;s!==null;){if(s.context===n){if(o.tag===1){s=ds(-1,r&-r),s.tag=2;var c=o.updateQueue;if(c!==null){c=c.shared;var d=c.pending;d===null?s.next=s:(s.next=d.next,d.next=s),c.pending=s}}o.lanes|=r,s=o.alternate,s!==null&&(s.lanes|=r),IF(o.return,r,t),l.lanes|=r;break}s=s.next}}else if(o.tag===10)i=o.type===t.type?null:o.child;else if(o.tag===18){if(i=o.return,i===null)throw Error(We(341));i.lanes|=r,l=i.alternate,l!==null&&(l.lanes|=r),IF(i,r,t),i=o.sibling}else i=o.child;if(i!==null)i.return=o;else for(i=o;i!==null;){if(i===t){i=null;break}if(o=i.sibling,o!==null){o.return=i.return,i=o;break}i=i.return}o=i}Ga(e,t,a.children,r),t=t.child}return t;case 9:return a=t.type,n=t.pendingProps.children,bf(t,r),a=Qo(a),n=n(a),t.flags|=1,Ga(e,t,n,r),t.child;case 14:return n=t.type,a=ki(n,t.pendingProps),a=ki(n.type,a),Pk(e,t,n,a,r);case 15:return Nk(e,t,t.type,t.pendingProps,r);case 17:return n=t.type,a=t.pendingProps,a=t.elementType===n?a:ki(n,a),ib(e,t),t.tag=1,so(n)?(e=!0,Ux(t)):e=!1,bf(t,r),Sk(t,n,a),BF(t,n,a,r),WF(null,t,n,!0,e,r);case 19:return Wk(e,t,r);case 22:return Mk(e,t,r)}throw Error(We(156,t.tag))};function vP(e,t){return q4(e,t)}function one(e,t,r,n){this.tag=e,this.key=r,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function ti(e,t,r,n){return new one(e,t,r,n)}function u2(e){return e=e.prototype,!(!e||!e.isReactComponent)}function ine(e){if(typeof e=="function")return u2(e)?1:0;if(e!=null){if(e=e.$$typeof,e===hI)return 11;if(e===mI)return 14}return 2}function mc(e,t){var r=e.alternate;return r===null?(r=ti(e.tag,t,e.key,e.mode),r.elementType=e.elementType,r.type=e.type,r.stateNode=e.stateNode,r.alternate=e,e.alternate=r):(r.pendingProps=t,r.type=e.type,r.flags=0,r.subtreeFlags=0,r.deletions=null),r.flags=e.flags&14680064,r.childLanes=e.childLanes,r.lanes=e.lanes,r.child=e.child,r.memoizedProps=e.memoizedProps,r.memoizedState=e.memoizedState,r.updateQueue=e.updateQueue,t=e.dependencies,r.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},r.sibling=e.sibling,r.index=e.index,r.ref=e.ref,r}function _b(e,t,r,n,a,o){var i=2;if(n=e,typeof e=="function")u2(e)&&(i=1);else if(typeof e=="string")i=5;else e:switch(e){case ef:return $u(r.children,a,o,t);case pI:i=8,a|=8;break;case vI:return e=ti(12,r,t,a|2),e.elementType=vI,e.lanes=o,e;case gI:return e=ti(13,r,t,a),e.elementType=gI,e.lanes=o,e;case _I:return e=ti(19,r,t,a),e.elementType=_I,e.lanes=o,e;case D4:return mb(r,a,o,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case y4:i=10;break e;case w4:i=9;break e;case hI:i=11;break e;case mI:i=14;break e;case Js:i=16,n=null;break e}throw Error(We(130,e==null?e:typeof e,""))}return t=ti(i,r,t,a),t.elementType=e,t.type=n,t.lanes=o,t}function $u(e,t,r,n){return e=ti(7,e,n,t),e.lanes=r,e}function mb(e,t,r,n){return e=ti(22,e,n,t),e.elementType=D4,e.lanes=r,e.stateNode={isHidden:!1},e}function d2(e,t,r){return e=ti(6,e,null,t),e.lanes=r,e}function f2(e,t,r){return t=ti(4,e.children!==null?e.children:[],e.key,t),t.lanes=r,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function lne(e,t,r,n,a){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=LI(0),this.expirationTimes=LI(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=LI(0),this.identifierPrefix=n,this.onRecoverableError=a,this.mutableSourceEagerHydrationData=null}function p2(e,t,r,n,a,o,i,l,s){return e=new lne(e,t,r,l,s),t===1?(t=1,o===!0&&(t|=8)):t=0,o=ti(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:n,isDehydrated:r,cache:null,transitions:null,pendingSuspenseBoundaries:null},$F(o),e}function sne(e,t,r){var n=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(r){console.error(r)}}t(),e.exports=$o}(ste);const Sf=qt(Kr);function bP(e){return e instanceof HTMLElement||e instanceof SVGElement}function pne(e){return e&&uu(e)==="object"&&bP(e.nativeElement)?e.nativeElement:bP(e)?e:null}function Ef(e){var t=pne(e);if(t)return t;if(e instanceof $.Component){var r;return(r=Sf.findDOMNode)===null||r===void 0?void 0:r.call(Sf,e)}return null}function vne(e,t,r){var n=m.useRef({});return(!("value"in n.current)||r(n.current.condition,t))&&(n.current.value=e(),n.current.condition=t),n.current.value}var hne=function(t,r){typeof t=="function"?t(r):uu(t)==="object"&&t&&"current"in t&&(t.current=r)},yP=function(){for(var t=arguments.length,r=new Array(t),n=0;n=19;var _2=m.createContext(null);function _ne(e){var t=e.children,r=e.onBatchResize,n=m.useRef(0),a=m.useRef([]),o=m.useContext(_2),i=m.useCallback(function(l,s,c){n.current+=1;var d=n.current;a.current.push({size:l,element:s,data:c}),Promise.resolve().then(function(){d===n.current&&(r?.(a.current),a.current=[])}),o?.(l,s,c)},[r,o]);return m.createElement(_2.Provider,{value:i},t)}var IP=function(){if(typeof Map<"u")return Map;function e(t,r){var n=-1;return t.some(function(a,o){return a[0]===r?(n=o,!0):!1}),n}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(r){var n=e(this.__entries__,r),a=this.__entries__[n];return a&&a[1]},t.prototype.set=function(r,n){var a=e(this.__entries__,r);~a?this.__entries__[a][1]=n:this.__entries__.push([r,n])},t.prototype.delete=function(r){var n=this.__entries__,a=e(n,r);~a&&n.splice(a,1)},t.prototype.has=function(r){return!!~e(this.__entries__,r)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(r,n){n===void 0&&(n=null);for(var a=0,o=this.__entries__;a0},e.prototype.connect_=function(){!m2||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),Dne?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},e.prototype.disconnect_=function(){!m2||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},e.prototype.onTransitionEnd_=function(t){var r=t.propertyName,n=r===void 0?"":r,a=wne.some(function(o){return!!~n.indexOf(o)});a&&this.refresh()},e.getInstance=function(){return this.instance_||(this.instance_=new e),this.instance_},e.instance_=null,e}(),FP=function(e,t){for(var r=0,n=Object.keys(t);r"u"||!(Element instanceof Object))){if(!(t instanceof Cf(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var r=this.observations_;r.has(t)||(r.set(t,new One(t)),this.controller_.addObserver(this),this.controller_.refresh())}},e.prototype.unobserve=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element>"u"||!(Element instanceof Object))){if(!(t instanceof Cf(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var r=this.observations_;r.has(t)&&(r.delete(t),r.size||this.controller_.removeObserver(this))}},e.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},e.prototype.gatherActive=function(){var t=this;this.clearActive(),this.observations_.forEach(function(r){r.isActive()&&t.activeObservations_.push(r)})},e.prototype.broadcastActive=function(){if(this.hasActive()){var t=this.callbackCtx_,r=this.activeObservations_.map(function(n){return new Ane(n.target,n.broadcastRect())});this.callback_.call(t,r,t),this.clearActive()}},e.prototype.clearActive=function(){this.activeObservations_.splice(0)},e.prototype.hasActive=function(){return this.activeObservations_.length>0},e}(),EP=typeof WeakMap<"u"?new WeakMap:new IP,CP=function(){function e(t){if(!(this instanceof e))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var r=Ine.getInstance(),n=new kne(t,r,this);EP.set(this,n)}return e}();["observe","unobserve","disconnect"].forEach(function(e){CP.prototype[e]=function(){var t;return(t=EP.get(this))[e].apply(t,arguments)}});var TP=function(){return typeof Fb.ResizeObserver<"u"?Fb.ResizeObserver:CP}(),xc=new Map;function Pne(e){e.forEach(function(t){var r,n=t.target;(r=xc.get(n))===null||r===void 0||r.forEach(function(a){return a(n)})})}var RP=new TP(Pne);function Nne(e,t){xc.has(e)||(xc.set(e,new Set),RP.observe(e)),xc.get(e).add(t)}function Mne(e,t){xc.has(e)&&(xc.get(e).delete(t),xc.get(e).size||(RP.unobserve(e),xc.delete(e)))}function OP(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function AP(e,t){for(var r=0;r1&&arguments[1]!==void 0?arguments[1]:1;HP+=1;var n=HP;function a(o){if(o===0)WP(n),t();else{var i=jP(function(){a(o-1)});y2.set(n,i)}}return a(r),n};Li.cancel=function(e){var t=y2.get(e);return WP(e),UP(t)};var VP=(typeof navigator>"u"?"undefined":uu(navigator))==="object"&&/Firefox/i.test(navigator.userAgent);const KP=function(e,t,r,n){var a=m.useRef(!1),o=m.useRef(null);function i(){clearTimeout(o.current),a.current=!0,o.current=setTimeout(function(){a.current=!1},50)}var l=m.useRef({top:e,bottom:t,left:r,right:n});return l.current.top=e,l.current.bottom=t,l.current.left=r,l.current.right=n,function(s,c){var d=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,f=s?c<0&&l.current.left||c>0&&l.current.right:c<0&&l.current.top||c>0&&l.current.bottom;return d&&f?(clearTimeout(o.current),a.current=!1):(!f||a.current)&&i(),!a.current&&f}};function Xne(e,t,r,n,a,o,i){var l=m.useRef(0),s=m.useRef(null),c=m.useRef(null),d=m.useRef(!1),f=KP(t,r,n,a);function v(y,D){Li.cancel(s.current),l.current+=D,c.current=D,!f(!1,D)&&(VP||y.preventDefault(),s.current=Li(function(){var F=d.current?10:1;i(l.current*F),l.current=0}))}function h(y,D){i(D,!0),VP||y.preventDefault()}var g=m.useRef(null),_=m.useRef(null);function w(y){if(e){Li.cancel(_.current),_.current=Li(function(){g.current=null},2);var D=y.deltaX,F=y.deltaY,S=y.shiftKey,I=D,C=F;(g.current==="sx"||!g.current&&S&&F&&!D)&&(I=F,C=0,g.current="sx");var R=Math.abs(I),P=Math.abs(C);g.current===null&&(g.current=o&&R>P?"x":"y"),g.current==="y"?v(y,C):h(y,I)}}function b(y){e&&(d.current=y.detail===c.current)}return[w,b]}function Zne(e,t,r,n){var a=m.useMemo(function(){return[new Map,[]]},[e,r.id,n]),o=Oa(a,2),i=o[0],l=o[1],s=function(d){var f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:d,v=i.get(d),h=i.get(f);if(v===void 0||h===void 0)for(var g=e.length,_=l.length;_0&&arguments[0]!==void 0?arguments[0]:!1;d();var g=function(){l.current.forEach(function(w,b){if(w&&w.offsetParent){var y=Ef(w),D=y.offsetHeight;s.current.get(b)!==D&&s.current.set(b,y.offsetHeight)}}),i(function(w){return w+1})};h?g():c.current=Li(g)}function v(h,g){var _=e(h),w=l.current.get(_);g?(l.current.set(_,g),f()):l.current.delete(_),!w!=!g&&(g?t?.(h):r?.(h))}return m.useEffect(function(){return d},[]),[v,f,s.current,o]}var YP=14/15;function rae(e,t,r){var n=m.useRef(!1),a=m.useRef(0),o=m.useRef(0),i=m.useRef(null),l=m.useRef(null),s,c=function(h){if(n.current){var g=Math.ceil(h.touches[0].pageX),_=Math.ceil(h.touches[0].pageY),w=a.current-g,b=o.current-_,y=Math.abs(w)>Math.abs(b);y?a.current=g:o.current=_,r(y,y?w:b)&&h.preventDefault(),clearInterval(l.current),l.current=setInterval(function(){y?w*=YP:b*=YP;var D=Math.floor(y?w:b);(!r(y,D,!0)||Math.abs(D)<=.1)&&clearInterval(l.current)},16)}},d=function(){n.current=!1,s()},f=function(h){s(),h.touches.length===1&&!n.current&&(n.current=!0,a.current=Math.ceil(h.touches[0].pageX),o.current=Math.ceil(h.touches[0].pageY),i.current=h.target,i.current.addEventListener("touchmove",c,{passive:!1}),i.current.addEventListener("touchend",d,{passive:!0}))};s=function(){i.current&&(i.current.removeEventListener("touchmove",c),i.current.removeEventListener("touchend",d))},uh(function(){return e&&t.current.addEventListener("touchstart",f,{passive:!0}),function(){var v;(v=t.current)===null||v===void 0||v.removeEventListener("touchstart",f),s(),clearInterval(l.current)}},[e])}var nae=10;function aae(e,t,r,n,a,o,i,l){var s=m.useRef(),c=m.useState(null),d=Oa(c,2),f=d[0],v=d[1];return uh(function(){if(f&&f.times=0;k-=1){var M=a(t[k]),T=r.get(M);if(T===void 0){y=!0;break}if(z-=T,z<=0)break}switch(S){case"top":F=C-w;break;case"bottom":F=R-b+w;break;default:{var B=e.current.scrollTop,L=B+b;CL&&(D="bottom")}}F!==null&&i(F),F!==f.lastTop&&(y=!0)}y&&v(io(io({},f),{},{times:f.times+1,targetAlign:D,lastTop:F}))}},[f,e.current]),function(h){if(h==null){l();return}if(Li.cancel(s.current),typeof h=="number")i(h);else if(h&&uu(h)==="object"){var g,_=h.align;"index"in h?g=h.index:g=t.findIndex(function(y){return a(y)===h.key});var w=h.offset,b=w===void 0?0:w;v({times:0,index:g,offset:b,originAlign:_})}}}function GP(e,t){var r="touches"in e?e.touches[0]:e;return r[t?"pageX":"pageY"]}var XP=m.forwardRef(function(e,t){var r=e.prefixCls,n=e.rtl,a=e.scrollOffset,o=e.scrollRange,i=e.onStartMove,l=e.onStopMove,s=e.onScroll,c=e.horizontal,d=e.spinSize,f=e.containerSize,v=e.style,h=e.thumbStyle,g=m.useState(!1),_=Oa(g,2),w=_[0],b=_[1],y=m.useState(null),D=Oa(y,2),F=D[0],S=D[1],I=m.useState(null),C=Oa(I,2),R=C[0],P=C[1],O=!n,N=m.useRef(),A=m.useRef(),z=m.useState(!1),k=Oa(z,2),M=k[0],T=k[1],B=m.useRef(),L=function(){clearTimeout(B.current),T(!0),B.current=setTimeout(function(){T(!1)},3e3)},K=o-f||0,X=f-d||0,ee=m.useMemo(function(){if(a===0||K===0)return 0;var ae=a/K;return ae*X},[a,K,X]),q=function(re){re.stopPropagation(),re.preventDefault()},G=m.useRef({top:ee,dragging:w,pageY:F,startTop:R});G.current={top:ee,dragging:w,pageY:F,startTop:R};var W=function(re){b(!0),S(GP(re,c)),P(G.current.top),i(),re.stopPropagation(),re.preventDefault()};m.useEffect(function(){var ae=function(oe){oe.preventDefault()},re=N.current,ie=A.current;return re.addEventListener("touchstart",ae,{passive:!1}),ie.addEventListener("touchstart",W,{passive:!1}),function(){re.removeEventListener("touchstart",ae),ie.removeEventListener("touchstart",W)}},[]);var V=m.useRef();V.current=K;var Y=m.useRef();Y.current=X,m.useEffect(function(){if(w){var ae,re=function(oe){var fe=G.current,ge=fe.dragging,le=fe.pageY,_e=fe.startTop;Li.cancel(ae);var De=N.current.getBoundingClientRect(),Oe=f/(c?De.width:De.height);if(ge){var Be=(GP(oe,c)-le)*Oe,Pe=_e;!O&&c?Pe-=Be:Pe+=Be;var Ge=V.current,ke=Y.current,Ze=ke?Pe/ke:0,Ke=Math.ceil(Ze*Ge);Ke=Math.max(Ke,0),Ke=Math.min(Ke,Ge),ae=Li(function(){s(Ke,c)})}},ie=function(){b(!1),l()};return window.addEventListener("mousemove",re,{passive:!0}),window.addEventListener("touchmove",re,{passive:!0}),window.addEventListener("mouseup",ie,{passive:!0}),window.addEventListener("touchend",ie,{passive:!0}),function(){window.removeEventListener("mousemove",re),window.removeEventListener("touchmove",re),window.removeEventListener("mouseup",ie),window.removeEventListener("touchend",ie),Li.cancel(ae)}}},[w]),m.useEffect(function(){return L(),function(){clearTimeout(B.current)}},[a]),m.useImperativeHandle(t,function(){return{delayHidden:L}});var Z="".concat(r,"-scrollbar"),te={position:"absolute",visibility:M?null:"hidden"},J={position:"absolute",background:"rgba(0, 0, 0, 0.5)",borderRadius:99,cursor:"pointer",userSelect:"none"};return c?(te.height=8,te.left=0,te.right=0,te.bottom=0,J.height="100%",J.width=d,O?J.left=ee:J.right=ee):(te.width=8,te.top=0,te.bottom=0,O?te.right=0:te.left=0,J.width="100%",J.height=d,J.top=ee),m.createElement("div",{ref:N,className:ar(Z,qa(qa(qa({},"".concat(Z,"-horizontal"),c),"".concat(Z,"-vertical"),!c),"".concat(Z,"-visible"),M)),style:io(io({},te),v),onMouseDown:q,onMouseMove:L},m.createElement("div",{ref:A,className:ar("".concat(Z,"-thumb"),qa({},"".concat(Z,"-thumb-moving"),w)),style:io(io({},J),h),onMouseDown:W}))}),oae=20;function ZP(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=e/t*e;return isNaN(r)&&(r=0),r=Math.max(r,oae),Math.floor(r)}var iae=["prefixCls","className","height","itemHeight","fullHeight","style","data","children","itemKey","virtual","direction","scrollWidth","component","onScroll","onVirtualScroll","onVisibleChange","innerProps","extraRender","styles"],lae=[],sae={overflowY:"auto",overflowAnchor:"none"};function cae(e,t){var r=e.prefixCls,n=r===void 0?"rc-virtual-list":r,a=e.className,o=e.height,i=e.itemHeight,l=e.fullHeight,s=l===void 0?!0:l,c=e.style,d=e.data,f=e.children,v=e.itemKey,h=e.virtual,g=e.direction,_=e.scrollWidth,w=e.component,b=w===void 0?"div":w,y=e.onScroll,D=e.onVirtualScroll,F=e.onVisibleChange,S=e.innerProps,I=e.extraRender,C=e.styles,R=tte(e,iae),P=m.useCallback(function(Me){return typeof v=="function"?v(Me):Me?.[v]},[v]),O=tae(P,null,null),N=Oa(O,4),A=N[0],z=N[1],k=N[2],M=N[3],T=!!(h!==!1&&o&&i),B=m.useMemo(function(){return Object.values(k.maps).reduce(function(Me,Le){return Me+Le},0)},[k.id,k.maps]),L=T&&d&&(Math.max(i*d.length,B)>o||!!_),K=g==="rtl",X=ar(n,qa({},"".concat(n,"-rtl"),K),a),ee=d||lae,q=m.useRef(),G=m.useRef(),W=m.useRef(),V=m.useState(0),Y=Oa(V,2),Z=Y[0],te=Y[1],J=m.useState(0),ae=Oa(J,2),re=ae[0],ie=ae[1],ve=m.useState(!1),oe=Oa(ve,2),fe=oe[0],ge=oe[1],le=function(){ge(!0)},_e=function(){ge(!1)},De={getKey:P};function Oe(Me){te(function(Le){var St;typeof Me=="function"?St=Me(Le):St=Me;var fr=qe(St);return q.current.scrollTop=fr,fr})}var Be=m.useRef({start:0,end:ee.length}),Pe=m.useRef(),Ge=Gne(ee,P),ke=Oa(Ge,1),Ze=ke[0];Pe.current=Ze;var Ke=m.useMemo(function(){if(!T)return{scrollHeight:void 0,start:0,end:ee.length-1,offset:void 0};if(!L){var Me;return{scrollHeight:((Me=G.current)===null||Me===void 0?void 0:Me.offsetHeight)||0,start:0,end:ee.length-1,offset:void 0}}for(var Le=0,St,fr,Et,Kt=ee.length,Zt=0;Zt=Z&&St===void 0&&(St=Zt,fr=Le),Mr>Z+o&&Et===void 0&&(Et=Zt),Le=Mr}return St===void 0&&(St=0,fr=0,Et=Math.ceil(o/i)),Et===void 0&&(Et=ee.length-1),Et=Math.min(Et+1,ee.length-1),{scrollHeight:Le,start:St,end:Et,offset:fr}},[L,T,Z,ee,M,o]),ct=Ke.scrollHeight,Xe=Ke.start,ot=Ke.end,tt=Ke.offset;Be.current.start=Xe,Be.current.end=ot;var Dt=m.useState({width:0,height:o}),Bt=Oa(Dt,2),gt=Bt[0],Tt=Bt[1],ye=function(Le){Tt({width:Le.offsetWidth,height:Le.offsetHeight})},er=m.useRef(),ft=m.useRef(),nt=m.useMemo(function(){return ZP(gt.width,_)},[gt.width,_]),Ft=m.useMemo(function(){return ZP(gt.height,ct)},[gt.height,ct]),lt=ct-o,Ie=m.useRef(lt);Ie.current=lt;function qe(Me){var Le=Me;return Number.isNaN(Ie.current)||(Le=Math.min(Le,Ie.current)),Le=Math.max(Le,0),Le}var dt=Z<=0,mt=Z>=lt,Rt=re<=0,Gt=re>=_,Qe=KP(dt,mt,Rt,Gt),He=function(){return{x:K?-re:re,y:Z}},je=m.useRef(He()),ze=LP(function(Me){if(D){var Le=io(io({},He()),Me);(je.current.x!==Le.x||je.current.y!==Le.y)&&(D(Le),je.current=Le)}});function Ve(Me,Le){var St=Me;Le?(Kr.flushSync(function(){ie(St)}),ze()):Oe(St)}function Ae(Me){var Le=Me.currentTarget.scrollTop;Le!==Z&&Oe(Le),y?.(Me),ze()}var Fe=function(Le){var St=Le,fr=_?_-gt.width:0;return St=Math.max(St,0),St=Math.min(St,fr),St},st=LP(function(Me,Le){Le?(Kr.flushSync(function(){ie(function(St){var fr=St+(K?-Me:Me);return Fe(fr)})}),ze()):Oe(function(St){var fr=St+Me;return fr})}),$t=Xne(T,dt,mt,Rt,Gt,!!_,st),Je=Oa($t,2),ht=Je[0],Vt=Je[1];rae(T,q,function(Me,Le,St){return Qe(Me,Le,St)?!1:(ht({preventDefault:function(){},deltaX:Me?Le:0,deltaY:Me?0:Le}),!0)}),uh(function(){function Me(St){T&&St.preventDefault()}var Le=q.current;return Le.addEventListener("wheel",ht,{passive:!1}),Le.addEventListener("DOMMouseScroll",Vt,{passive:!0}),Le.addEventListener("MozMousePixelScroll",Me,{passive:!1}),function(){Le.removeEventListener("wheel",ht),Le.removeEventListener("DOMMouseScroll",Vt),Le.removeEventListener("MozMousePixelScroll",Me)}},[T]),uh(function(){if(_){var Me=Fe(re);ie(Me),ze({x:Me})}},[gt.width,_]);var Mt=function(){var Le,St;(Le=er.current)===null||Le===void 0||Le.delayHidden(),(St=ft.current)===null||St===void 0||St.delayHidden()},_r=aae(q,ee,k,i,P,function(){return z(!0)},Oe,Mt);m.useImperativeHandle(t,function(){return{nativeElement:W.current,getScrollInfo:He,scrollTo:function(Le){function St(fr){return fr&&uu(fr)==="object"&&("left"in fr||"top"in fr)}St(Le)?(Le.left!==void 0&&ie(Fe(Le.left)),_r(Le.top)):_r(Le)}}}),uh(function(){if(F){var Me=ee.slice(Xe,ot+1);F(Me,ee)}},[Xe,ot,ee]);var Ca=Zne(ee,P,k,i),Zn=I?.({start:Xe,end:ot,virtual:L,offsetX:re,offsetY:tt,rtl:K,getSize:Ca}),sn=qne(ee,Xe,ot,_,re,A,f,De),It=null;o&&(It=io(qa({},s?"height":"maxHeight",o),sae),T&&(It.overflowY="hidden",_&&(It.overflowX="hidden"),fe&&(It.pointerEvents="none")));var xt={};return K&&(xt.dir="rtl"),m.createElement("div",Zd({ref:W,style:io(io({},c),{},{position:"relative"}),className:X},xt,R),m.createElement(b2,{onResize:ye},m.createElement(b,{className:"".concat(n,"-holder"),style:It,ref:q,onScroll:Ae,onMouseEnter:Mt},m.createElement(BP,{prefixCls:n,height:ct,offsetX:re,offsetY:tt,scrollWidth:_,onInnerResize:z,ref:G,innerProps:S,rtl:K,extra:Zn},sn))),L&&ct>o&&m.createElement(XP,{ref:er,prefixCls:n,scrollOffset:Z,scrollRange:ct,rtl:K,onScroll:Ve,onStartMove:le,onStopMove:_e,spinSize:Ft,containerSize:gt.height,style:C?.verticalScrollBar,thumbStyle:C?.verticalScrollBarThumb}),L&&_>gt.width&&m.createElement(XP,{ref:ft,prefixCls:n,scrollOffset:re,scrollRange:_,rtl:K,onScroll:Ve,onStartMove:le,onStopMove:_e,spinSize:nt,containerSize:gt.width,horizontal:!0,style:C?.horizontalScrollBar,thumbStyle:C?.horizontalScrollBarThumb}))}var uae=m.forwardRef(cae);uae.displayName="List";const QP=(e=window)=>{try{return e.BI.Services.getService("dec.service.global"),e}catch{return e===e.parent?e:QP(e.parent)}};let w2;const JP=()=>(w2||(w2=QP()),w2);var Te={},dae={get exports(){return Te},set exports(e){Te=e}};/** + */var yre=m,Aa=HI;function Ge(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),WI=Object.prototype.hasOwnProperty,wre=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,cA={},uA={};function Dre(e){return WI.call(uA,e)?!0:WI.call(cA,e)?!1:wre.test(e)?uA[e]=!0:(cA[e]=!0,!1)}function Ire(e,t,r,n){if(r!==null&&r.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return n?!1:r!==null?!r.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function Fre(e,t,r,n){if(t===null||typeof t>"u"||Ire(e,t,r,n))return!0;if(n)return!1;if(r!==null)switch(r.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function ra(e,t,r,n,o,a,i){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=n,this.attributeNamespace=o,this.mustUseProperty=r,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=i}var Fo={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Fo[e]=new ra(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Fo[t]=new ra(t,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){Fo[e]=new ra(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Fo[e]=new ra(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){Fo[e]=new ra(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){Fo[e]=new ra(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){Fo[e]=new ra(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){Fo[e]=new ra(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){Fo[e]=new ra(e,5,!1,e.toLowerCase(),null,!1,!1)});var VI=/[\-:]([a-z])/g;function KI(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(VI,KI);Fo[t]=new ra(t,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(VI,KI);Fo[t]=new ra(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(VI,KI);Fo[t]=new ra(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){Fo[e]=new ra(e,1,!1,e.toLowerCase(),null,!1,!1)}),Fo.xlinkHref=new ra("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){Fo[e]=new ra(e,1,!1,e.toLowerCase(),null,!0,!0)});function qI(e,t,r,n){var o=Fo.hasOwnProperty(t)?Fo[t]:null;(o!==null?o.type!==0:n||!(2l||o[i]!==a[l]){var s=` +`+o[i].replace(" at new "," at ");return e.displayName&&s.includes("")&&(s=s.replace("",e.displayName)),s}while(1<=i&&0<=l);break}}}finally{tF=!1,Error.prepareStackTrace=r}return(e=e?e.displayName||e.name:"")?Nv(e):""}function $re(e){switch(e.tag){case 5:return Nv(e.type);case 16:return Nv("Lazy");case 13:return Nv("Suspense");case 19:return Nv("SuspenseList");case 0:case 2:case 15:return e=rF(e.type,!1),e;case 11:return e=rF(e.type.render,!1),e;case 1:return e=rF(e.type,!0),e;default:return""}}function nF(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case gf:return"Fragment";case vf:return"Portal";case GI:return"Profiler";case YI:return"StrictMode";case ZI:return"Suspense";case QI:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case fA:return(e.displayName||"Context")+".Consumer";case dA:return(e._context.displayName||"Context")+".Provider";case XI:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case JI:return t=e.displayName||null,t!==null?t:nF(e.type)||"Memo";case cc:t=e._payload,e=e._init;try{return nF(e(t))}catch{}}return null}function Ere(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return nF(t);case 8:return t===YI?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function uc(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function gA(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Sre(e){var t=gA(e)?"checked":"value",r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),n=""+e[t];if(!e.hasOwnProperty(t)&&typeof r<"u"&&typeof r.get=="function"&&typeof r.set=="function"){var o=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(i){n=""+i,a.call(this,i)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(i){n=""+i},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Xx(e){e._valueTracker||(e._valueTracker=Sre(e))}function hA(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var r=t.getValue(),n="";return e&&(n=gA(e)?e.checked?"true":"false":e.value),e=n,e!==r?(t.setValue(e),!0):!1}function Zx(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function oF(e,t){var r=t.checked;return yn({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:r??e._wrapperState.initialChecked})}function _A(e,t){var r=t.defaultValue==null?"":t.defaultValue,n=t.checked!=null?t.checked:t.defaultChecked;r=uc(t.value!=null?t.value:r),e._wrapperState={initialChecked:n,initialValue:r,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function mA(e,t){t=t.checked,t!=null&&qI(e,"checked",t,!1)}function aF(e,t){mA(e,t);var r=uc(t.value),n=t.type;if(r!=null)n==="number"?(r===0&&e.value===""||e.value!=r)&&(e.value=""+r):e.value!==""+r&&(e.value=""+r);else if(n==="submit"||n==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?iF(e,t.type,r):t.hasOwnProperty("defaultValue")&&iF(e,t.type,uc(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function xA(e,t,r){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var n=t.type;if(!(n!=="submit"&&n!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,r||t===e.value||(e.value=t),e.defaultValue=t}r=e.name,r!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,r!==""&&(e.name=r)}function iF(e,t,r){(t!=="number"||Zx(e.ownerDocument)!==e)&&(r==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+r&&(e.defaultValue=""+r))}var Mv=Array.isArray;function hf(e,t,r,n){if(e=e.options,t){t={};for(var o=0;o"+t.valueOf().toString()+"",t=Qx.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function zv(e,t){if(t){var r=e.firstChild;if(r&&r===e.lastChild&&r.nodeType===3){r.nodeValue=t;return}}e.textContent=t}var Lv={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Cre=["Webkit","ms","Moz","O"];Object.keys(Lv).forEach(function(e){Cre.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Lv[t]=Lv[e]})});function FA(e,t,r){return t==null||typeof t=="boolean"||t===""?"":r||typeof t!="number"||t===0||Lv.hasOwnProperty(e)&&Lv[e]?(""+t).trim():t+"px"}function $A(e,t){e=e.style;for(var r in t)if(t.hasOwnProperty(r)){var n=r.indexOf("--")===0,o=FA(r,t[r],n);r==="float"&&(r="cssFloat"),n?e.setProperty(r,o):e[r]=o}}var Tre=yn({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function cF(e,t){if(t){if(Tre[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(Ge(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(Ge(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(Ge(61))}if(t.style!=null&&typeof t.style!="object")throw Error(Ge(62))}}function uF(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var dF=null;function fF(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var pF=null,_f=null,mf=null;function EA(e){if(e=lg(e)){if(typeof pF!="function")throw Error(Ge(280));var t=e.stateNode;t&&(t=yb(t),pF(e.stateNode,e.type,t))}}function SA(e){_f?mf?mf.push(e):mf=[e]:_f=e}function CA(){if(_f){var e=_f,t=mf;if(mf=_f=null,EA(e),t)for(e=0;e>>=0,e===0?32:31-(jre(e)/Ure|0)|0}var nb=64,ob=4194304;function Hv(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ab(e,t){var r=e.pendingLanes;if(r===0)return 0;var n=0,o=e.suspendedLanes,a=e.pingedLanes,i=r&268435455;if(i!==0){var l=i&~o;l!==0?n=Hv(l):(a&=i,a!==0&&(n=Hv(a)))}else i=r&~o,i!==0?n=Hv(i):a!==0&&(n=Hv(a));if(n===0)return 0;if(t!==0&&t!==n&&!(t&o)&&(o=n&-n,a=t&-t,o>=a||o===16&&(a&4194240)!==0))return t;if(n&4&&(n|=r&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=n;0r;r++)t.push(e);return t}function Wv(e,t,r){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Ui(t),e[t]=r}function Kre(e,t){var r=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var n=e.eventTimes;for(e=e.expirationTimes;0=Qv),nk=String.fromCharCode(32),ok=!1;function ak(e,t){switch(e){case"keyup":return bne.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function ik(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var yf=!1;function wne(e,t){switch(e){case"compositionend":return ik(t);case"keypress":return t.which!==32?null:(ok=!0,nk);case"textInput":return e=t.data,e===nk&&ok?null:e;default:return null}}function Dne(e,t){if(yf)return e==="compositionend"||!RF&&ak(e,t)?(e=ZA(),ub=FF=gc=null,yf=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=pk(r)}}function gk(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?gk(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function hk(){for(var e=window,t=Zx();t instanceof e.HTMLIFrameElement;){try{var r=typeof t.contentWindow.location.href=="string"}catch{r=!1}if(r)e=t.contentWindow;else break;t=Zx(e.document)}return t}function kF(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function One(e){var t=hk(),r=e.focusedElem,n=e.selectionRange;if(t!==r&&r&&r.ownerDocument&&gk(r.ownerDocument.documentElement,r)){if(n!==null&&kF(r)){if(t=n.start,e=n.end,e===void 0&&(e=t),"selectionStart"in r)r.selectionStart=t,r.selectionEnd=Math.min(e,r.value.length);else if(e=(t=r.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var o=r.textContent.length,a=Math.min(n.start,o);n=n.end===void 0?a:Math.min(n.end,o),!e.extend&&a>n&&(o=n,n=a,a=o),o=vk(r,a);var i=vk(r,n);o&&i&&(e.rangeCount!==1||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==i.node||e.focusOffset!==i.offset)&&(t=t.createRange(),t.setStart(o.node,o.offset),e.removeAllRanges(),a>n?(e.addRange(t),e.extend(i.node,i.offset)):(t.setEnd(i.node,i.offset),e.addRange(t)))}}for(t=[],e=r;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;r=document.documentMode,wf=null,PF=null,rg=null,NF=!1;function _k(e,t,r){var n=r.window===r?r.document:r.nodeType===9?r:r.ownerDocument;NF||wf==null||wf!==Zx(n)||(n=wf,"selectionStart"in n&&kF(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),rg&&tg(rg,n)||(rg=n,n=mb(PF,"onSelect"),0Ef||(e.current=YF[Ef],YF[Ef]=null,Ef--)}function en(e,t){Ef++,YF[Ef]=e.current,e.current=t}var xc={},zo=mc(xc),fa=mc(!1),$u=xc;function Sf(e,t){var r=e.type.contextTypes;if(!r)return xc;var n=e.stateNode;if(n&&n.__reactInternalMemoizedUnmaskedChildContext===t)return n.__reactInternalMemoizedMaskedChildContext;var o={},a;for(a in r)o[a]=t[a];return n&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function pa(e){return e=e.childContextTypes,e!=null}function wb(){sn(fa),sn(zo)}function Ok(e,t,r){if(zo.current!==xc)throw Error(Ge(168));en(zo,t),en(fa,r)}function Ak(e,t,r){var n=e.stateNode;if(t=t.childContextTypes,typeof n.getChildContext!="function")return r;n=n.getChildContext();for(var o in n)if(!(o in t))throw Error(Ge(108,Ere(e)||"Unknown",o));return yn({},r,n)}function Db(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||xc,$u=zo.current,en(zo,e),en(fa,fa.current),!0}function kk(e,t,r){var n=e.stateNode;if(!n)throw Error(Ge(169));r?(e=Ak(e,t,$u),n.__reactInternalMemoizedMergedChildContext=e,sn(fa),sn(zo),en(zo,e)):sn(fa),en(fa,r)}var gs=null,Ib=!1,GF=!1;function Pk(e){gs===null?gs=[e]:gs.push(e)}function Wne(e){Ib=!0,Pk(e)}function bc(){if(!GF&&gs!==null){GF=!0;var e=0,t=zr;try{var r=gs;for(zr=1;e>=i,o-=i,hs=1<<32-Ui(t)+o|r<R?(k=C,C=null):k=C.sibling;var P=v(x,C,D[R],I);if(P===null){C===null&&(C=k);break}e&&C&&P.alternate===null&&t(x,C),w=a(P,w,R),F===null?$=P:F.sibling=P,F=P,C=k}if(R===D.length)return r(x,C),vn&&Su(x,R),$;if(C===null){for(;RR?(k=C,C=null):k=C.sibling;var U=v(x,C,P.value,I);if(U===null){C===null&&(C=k);break}e&&C&&U.alternate===null&&t(x,C),w=a(U,w,R),F===null?$=U:F.sibling=U,F=U,C=k}if(P.done)return r(x,C),vn&&Su(x,R),$;if(C===null){for(;!P.done;R++,P=D.next())P=f(x,P.value,I),P!==null&&(w=a(P,w,R),F===null?$=P:F.sibling=P,F=P);return vn&&Su(x,R),$}for(C=n(x,C);!P.done;R++,P=D.next())P=g(C,x,R,P.value,I),P!==null&&(e&&P.alternate!==null&&C.delete(P.key===null?R:P.key),w=a(P,w,R),F===null?$=P:F.sibling=P,F=P);return e&&C.forEach(function(B){return t(x,B)}),vn&&Su(x,R),$}function b(x,w,D,I){if(typeof D=="object"&&D!==null&&D.type===gf&&D.key===null&&(D=D.props.children),typeof D=="object"&&D!==null){switch(D.$$typeof){case Gx:e:{for(var $=D.key,F=w;F!==null;){if(F.key===$){if($=D.type,$===gf){if(F.tag===7){r(x,F.sibling),w=o(F,D.props.children),w.return=x,x=w;break e}}else if(F.elementType===$||typeof $=="object"&&$!==null&&$.$$typeof===cc&&jk($)===F.type){r(x,F.sibling),w=o(F,D.props),w.ref=sg(x,F,D),w.return=x,x=w;break e}r(x,F);break}else t(x,F);F=F.sibling}D.type===gf?(w=Nu(D.props.children,x.mode,I,D.key),w.return=x,x=w):(I=Qb(D.type,D.key,D.props,null,x.mode,I),I.ref=sg(x,w,D),I.return=x,x=I)}return i(x);case vf:e:{for(F=D.key;w!==null;){if(w.key===F)if(w.tag===4&&w.stateNode.containerInfo===D.containerInfo&&w.stateNode.implementation===D.implementation){r(x,w.sibling),w=o(w,D.children||[]),w.return=x,x=w;break e}else{r(x,w);break}else t(x,w);w=w.sibling}w=K2(D,x.mode,I),w.return=x,x=w}return i(x);case cc:return F=D._init,b(x,w,F(D._payload),I)}if(Mv(D))return h(x,w,D,I);if(Pv(D))return _(x,w,D,I);Sb(x,D)}return typeof D=="string"&&D!==""||typeof D=="number"?(D=""+D,w!==null&&w.tag===6?(r(x,w.sibling),w=o(w,D),w.return=x,x=w):(r(x,w),w=V2(D,x.mode,I),w.return=x,x=w),i(x)):r(x,w)}return b}var Of=Uk(!0),Hk=Uk(!1),Cb=mc(null),Tb=null,Af=null,t2=null;function r2(){t2=Af=Tb=null}function n2(e){var t=Cb.current;sn(Cb),e._currentValue=t}function o2(e,t,r){for(;e!==null;){var n=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,n!==null&&(n.childLanes|=t)):n!==null&&(n.childLanes&t)!==t&&(n.childLanes|=t),e===r)break;e=e.return}}function kf(e,t){Tb=e,t2=Af=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(va=!0),e.firstContext=null)}function ai(e){var t=e._currentValue;if(t2!==e)if(e={context:e,memoizedValue:t,next:null},Af===null){if(Tb===null)throw Error(Ge(308));Af=e,Tb.dependencies={lanes:0,firstContext:e}}else Af=Af.next=e;return t}var Cu=null;function a2(e){Cu===null?Cu=[e]:Cu.push(e)}function Wk(e,t,r,n){var o=t.interleaved;return o===null?(r.next=r,a2(t)):(r.next=o.next,o.next=r),t.interleaved=r,ms(e,n)}function ms(e,t){e.lanes|=t;var r=e.alternate;for(r!==null&&(r.lanes|=t),r=e,e=e.return;e!==null;)e.childLanes|=t,r=e.alternate,r!==null&&(r.childLanes|=t),r=e,e=e.return;return r.tag===3?r.stateNode:null}var yc=!1;function i2(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Vk(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function xs(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function wc(e,t,r){var n=e.updateQueue;if(n===null)return null;if(n=n.shared,Er&2){var o=n.pending;return o===null?t.next=t:(t.next=o.next,o.next=t),n.pending=t,ms(e,r)}return o=n.interleaved,o===null?(t.next=t,a2(n)):(t.next=o.next,o.next=t),n.interleaved=t,ms(e,r)}function Rb(e,t,r){if(t=t.updateQueue,t!==null&&(t=t.shared,(r&4194240)!==0)){var n=t.lanes;n&=e.pendingLanes,r|=n,t.lanes=r,bF(e,r)}}function Kk(e,t){var r=e.updateQueue,n=e.alternate;if(n!==null&&(n=n.updateQueue,r===n)){var o=null,a=null;if(r=r.firstBaseUpdate,r!==null){do{var i={eventTime:r.eventTime,lane:r.lane,tag:r.tag,payload:r.payload,callback:r.callback,next:null};a===null?o=a=i:a=a.next=i,r=r.next}while(r!==null);a===null?o=a=t:a=a.next=t}else o=a=t;r={baseState:n.baseState,firstBaseUpdate:o,lastBaseUpdate:a,shared:n.shared,effects:n.effects},e.updateQueue=r;return}e=r.lastBaseUpdate,e===null?r.firstBaseUpdate=t:e.next=t,r.lastBaseUpdate=t}function Ob(e,t,r,n){var o=e.updateQueue;yc=!1;var a=o.firstBaseUpdate,i=o.lastBaseUpdate,l=o.shared.pending;if(l!==null){o.shared.pending=null;var s=l,c=s.next;s.next=null,i===null?a=c:i.next=c,i=s;var d=e.alternate;d!==null&&(d=d.updateQueue,l=d.lastBaseUpdate,l!==i&&(l===null?d.firstBaseUpdate=c:l.next=c,d.lastBaseUpdate=s))}if(a!==null){var f=o.baseState;i=0,d=c=s=null,l=a;do{var v=l.lane,g=l.eventTime;if((n&v)===v){d!==null&&(d=d.next={eventTime:g,lane:0,tag:l.tag,payload:l.payload,callback:l.callback,next:null});e:{var h=e,_=l;switch(v=t,g=r,_.tag){case 1:if(h=_.payload,typeof h=="function"){f=h.call(g,f,v);break e}f=h;break e;case 3:h.flags=h.flags&-65537|128;case 0:if(h=_.payload,v=typeof h=="function"?h.call(g,f,v):h,v==null)break e;f=yn({},f,v);break e;case 2:yc=!0}}l.callback!==null&&l.lane!==0&&(e.flags|=64,v=o.effects,v===null?o.effects=[l]:v.push(l))}else g={eventTime:g,lane:v,tag:l.tag,payload:l.payload,callback:l.callback,next:null},d===null?(c=d=g,s=f):d=d.next=g,i|=v;if(l=l.next,l===null){if(l=o.shared.pending,l===null)break;v=l,l=v.next,v.next=null,o.lastBaseUpdate=v,o.shared.pending=null}}while(1);if(d===null&&(s=f),o.baseState=s,o.firstBaseUpdate=c,o.lastBaseUpdate=d,t=o.shared.interleaved,t!==null){o=t;do i|=o.lane,o=o.next;while(o!==t)}else a===null&&(o.shared.lanes=0);Ou|=i,e.lanes=i,e.memoizedState=f}}function qk(e,t,r){if(e=t.effects,t.effects=null,e!==null)for(t=0;tr?r:4,e(!0);var n=d2.transition;d2.transition={};try{e(!1),t()}finally{zr=r,d2.transition=n}}function fP(){return ii().memoizedState}function Yne(e,t,r){var n=$c(e);if(r={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null},pP(e))vP(t,r);else if(r=Wk(e,t,r,n),r!==null){var o=oa();Yi(r,e,n,o),gP(r,t,n)}}function Gne(e,t,r){var n=$c(e),o={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null};if(pP(e))vP(t,o);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var i=t.lastRenderedState,l=a(i,r);if(o.hasEagerState=!0,o.eagerState=l,Hi(l,i)){var s=t.interleaved;s===null?(o.next=o,a2(t)):(o.next=s.next,s.next=o),t.interleaved=o;return}}catch{}finally{}r=Wk(e,t,o,n),r!==null&&(o=oa(),Yi(r,e,n,o),gP(r,t,n))}}function pP(e){var t=e.alternate;return e===Dn||t!==null&&t===Dn}function vP(e,t){fg=Pb=!0;var r=e.pending;r===null?t.next=t:(t.next=r.next,r.next=t),e.pending=t}function gP(e,t,r){if(r&4194240){var n=t.lanes;n&=e.pendingLanes,r|=n,t.lanes=r,bF(e,r)}}var zb={readContext:ai,useCallback:Lo,useContext:Lo,useEffect:Lo,useImperativeHandle:Lo,useInsertionEffect:Lo,useLayoutEffect:Lo,useMemo:Lo,useReducer:Lo,useRef:Lo,useState:Lo,useDebugValue:Lo,useDeferredValue:Lo,useTransition:Lo,useMutableSource:Lo,useSyncExternalStore:Lo,useId:Lo,unstable_isNewReconciler:!1},Xne={readContext:ai,useCallback:function(e,t){return Cl().memoizedState=[e,t===void 0?null:t],e},useContext:ai,useEffect:oP,useImperativeHandle:function(e,t,r){return r=r!=null?r.concat([e]):null,Nb(4194308,4,lP.bind(null,t,e),r)},useLayoutEffect:function(e,t){return Nb(4194308,4,e,t)},useInsertionEffect:function(e,t){return Nb(4,2,e,t)},useMemo:function(e,t){var r=Cl();return t=t===void 0?null:t,e=e(),r.memoizedState=[e,t],e},useReducer:function(e,t,r){var n=Cl();return t=r!==void 0?r(t):t,n.memoizedState=n.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},n.queue=e,e=e.dispatch=Yne.bind(null,Dn,e),[n.memoizedState,e]},useRef:function(e){var t=Cl();return e={current:e},t.memoizedState=e},useState:rP,useDebugValue:m2,useDeferredValue:function(e){return Cl().memoizedState=e},useTransition:function(){var e=rP(!1),t=e[0];return e=qne.bind(null,e[1]),Cl().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,r){var n=Dn,o=Cl();if(vn){if(r===void 0)throw Error(Ge(407));r=r()}else{if(r=t(),ho===null)throw Error(Ge(349));Ru&30||Zk(n,t,r)}o.memoizedState=r;var a={value:r,getSnapshot:t};return o.queue=a,oP(Jk.bind(null,n,a,e),[e]),n.flags|=2048,gg(9,Qk.bind(null,n,a,r,t),void 0,null),r},useId:function(){var e=Cl(),t=ho.identifierPrefix;if(vn){var r=_s,n=hs;r=(n&~(1<<32-Ui(n)-1)).toString(32)+r,t=":"+t+"R"+r,r=pg++,0<\/script>",e=e.removeChild(e.firstChild)):typeof n.is=="string"?e=i.createElement(r,{is:n.is}):(e=i.createElement(r),r==="select"&&(i=e,n.multiple?i.multiple=!0:n.size&&(i.size=n.size))):e=i.createElementNS(e,r),e[El]=t,e[ig]=n,PP(e,t,!1,!1),t.stateNode=e;e:{switch(i=uF(r,n),r){case"dialog":ln("cancel",e),ln("close",e),o=n;break;case"iframe":case"object":case"embed":ln("load",e),o=n;break;case"video":case"audio":for(o=0;oLf&&(t.flags|=128,n=!0,hg(a,!1),t.lanes=4194304)}else{if(!n)if(e=Ab(i),e!==null){if(t.flags|=128,n=!0,r=e.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),hg(a,!0),a.tail===null&&a.tailMode==="hidden"&&!i.alternate&&!vn)return Bo(t),null}else 2*jn()-a.renderingStartTime>Lf&&r!==1073741824&&(t.flags|=128,n=!0,hg(a,!1),t.lanes=4194304);a.isBackwards?(i.sibling=t.child,t.child=i):(r=a.last,r!==null?r.sibling=i:t.child=i,a.last=i)}return a.tail!==null?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=jn(),t.sibling=null,r=wn.current,en(wn,n?r&1|2:r&1),t):(Bo(t),null);case 22:case 23:return U2(),n=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==n&&(t.flags|=8192),n&&t.mode&1?Ma&1073741824&&(Bo(t),t.subtreeFlags&6&&(t.flags|=8192)):Bo(t),null;case 24:return null;case 25:return null}throw Error(Ge(156,t.tag))}function ooe(e,t){switch(ZF(t),t.tag){case 1:return pa(t.type)&&wb(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Pf(),sn(fa),sn(zo),u2(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return s2(t),null;case 13:if(sn(wn),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(Ge(340));Rf()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return sn(wn),null;case 4:return Pf(),null;case 10:return n2(t.type._context),null;case 22:case 23:return U2(),null;case 24:return null;default:return null}}var Ub=!1,jo=!1,aoe=typeof WeakSet=="function"?WeakSet:Set,_t=null;function Mf(e,t){var r=e.ref;if(r!==null)if(typeof r=="function")try{r(null)}catch(n){Pn(e,t,n)}else r.current=null}function T2(e,t,r){try{r()}catch(n){Pn(e,t,n)}}var zP=!1;function ioe(e,t){if(UF=sb,e=hk(),kF(e)){if("selectionStart"in e)var r={start:e.selectionStart,end:e.selectionEnd};else e:{r=(r=e.ownerDocument)&&r.defaultView||window;var n=r.getSelection&&r.getSelection();if(n&&n.rangeCount!==0){r=n.anchorNode;var o=n.anchorOffset,a=n.focusNode;n=n.focusOffset;try{r.nodeType,a.nodeType}catch{r=null;break e}var i=0,l=-1,s=-1,c=0,d=0,f=e,v=null;t:for(;;){for(var g;f!==r||o!==0&&f.nodeType!==3||(l=i+o),f!==a||n!==0&&f.nodeType!==3||(s=i+n),f.nodeType===3&&(i+=f.nodeValue.length),(g=f.firstChild)!==null;)v=f,f=g;for(;;){if(f===e)break t;if(v===r&&++c===o&&(l=i),v===a&&++d===n&&(s=i),(g=f.nextSibling)!==null)break;f=v,v=f.parentNode}f=g}r=l===-1||s===-1?null:{start:l,end:s}}else r=null}r=r||{start:0,end:0}}else r=null;for(HF={focusedElem:e,selectionRange:r},sb=!1,_t=t;_t!==null;)if(t=_t,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,_t=e;else for(;_t!==null;){t=_t;try{var h=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(h!==null){var _=h.memoizedProps,b=h.memoizedState,x=t.stateNode,w=x.getSnapshotBeforeUpdate(t.elementType===t.type?_:Vi(t.type,_),b);x.__reactInternalSnapshotBeforeUpdate=w}break;case 3:var D=t.stateNode.containerInfo;D.nodeType===1?D.textContent="":D.nodeType===9&&D.documentElement&&D.removeChild(D.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(Ge(163))}}catch(I){Pn(t,t.return,I)}if(e=t.sibling,e!==null){e.return=t.return,_t=e;break}_t=t.return}return h=zP,zP=!1,h}function _g(e,t,r){var n=t.updateQueue;if(n=n!==null?n.lastEffect:null,n!==null){var o=n=n.next;do{if((o.tag&e)===e){var a=o.destroy;o.destroy=void 0,a!==void 0&&T2(t,r,a)}o=o.next}while(o!==n)}}function Hb(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var r=t=t.next;do{if((r.tag&e)===e){var n=r.create;r.destroy=n()}r=r.next}while(r!==t)}}function R2(e){var t=e.ref;if(t!==null){var r=e.stateNode;switch(e.tag){case 5:e=r;break;default:e=r}typeof t=="function"?t(e):t.current=e}}function LP(e){var t=e.alternate;t!==null&&(e.alternate=null,LP(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[El],delete t[ig],delete t[qF],delete t[Une],delete t[Hne])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function BP(e){return e.tag===5||e.tag===3||e.tag===4}function jP(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||BP(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function O2(e,t,r){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?r.nodeType===8?r.parentNode.insertBefore(e,t):r.insertBefore(e,t):(r.nodeType===8?(t=r.parentNode,t.insertBefore(e,r)):(t=r,t.appendChild(e)),r=r._reactRootContainer,r!=null||t.onclick!==null||(t.onclick=bb));else if(n!==4&&(e=e.child,e!==null))for(O2(e,t,r),e=e.sibling;e!==null;)O2(e,t,r),e=e.sibling}function A2(e,t,r){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?r.insertBefore(e,t):r.appendChild(e);else if(n!==4&&(e=e.child,e!==null))for(A2(e,t,r),e=e.sibling;e!==null;)A2(e,t,r),e=e.sibling}var $o=null,Ki=!1;function Dc(e,t,r){for(r=r.child;r!==null;)UP(e,t,r),r=r.sibling}function UP(e,t,r){if($l&&typeof $l.onCommitFiberUnmount=="function")try{$l.onCommitFiberUnmount(rb,r)}catch{}switch(r.tag){case 5:jo||Mf(r,t);case 6:var n=$o,o=Ki;$o=null,Dc(e,t,r),$o=n,Ki=o,$o!==null&&(Ki?(e=$o,r=r.stateNode,e.nodeType===8?e.parentNode.removeChild(r):e.removeChild(r)):$o.removeChild(r.stateNode));break;case 18:$o!==null&&(Ki?(e=$o,r=r.stateNode,e.nodeType===8?KF(e.parentNode,r):e.nodeType===1&&KF(e,r),Gv(e)):KF($o,r.stateNode));break;case 4:n=$o,o=Ki,$o=r.stateNode.containerInfo,Ki=!0,Dc(e,t,r),$o=n,Ki=o;break;case 0:case 11:case 14:case 15:if(!jo&&(n=r.updateQueue,n!==null&&(n=n.lastEffect,n!==null))){o=n=n.next;do{var a=o,i=a.destroy;a=a.tag,i!==void 0&&(a&2||a&4)&&T2(r,t,i),o=o.next}while(o!==n)}Dc(e,t,r);break;case 1:if(!jo&&(Mf(r,t),n=r.stateNode,typeof n.componentWillUnmount=="function"))try{n.props=r.memoizedProps,n.state=r.memoizedState,n.componentWillUnmount()}catch(l){Pn(r,t,l)}Dc(e,t,r);break;case 21:Dc(e,t,r);break;case 22:r.mode&1?(jo=(n=jo)||r.memoizedState!==null,Dc(e,t,r),jo=n):Dc(e,t,r);break;default:Dc(e,t,r)}}function HP(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var r=e.stateNode;r===null&&(r=e.stateNode=new aoe),t.forEach(function(n){var o=goe.bind(null,e,n);r.has(n)||(r.add(n),n.then(o,o))})}}function qi(e,t){var r=t.deletions;if(r!==null)for(var n=0;no&&(o=i),n&=~a}if(n=o,n=jn()-n,n=(120>n?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*soe(n/1960))-n,10e?16:e,Fc===null)var n=!1;else{if(e=Fc,Fc=null,Yb=0,Er&6)throw Error(Ge(331));var o=Er;for(Er|=4,_t=e.current;_t!==null;){var a=_t,i=a.child;if(_t.flags&16){var l=a.deletions;if(l!==null){for(var s=0;sjn()-N2?ku(e,0):P2|=r),ha(e,t)}function rN(e,t){t===0&&(e.mode&1?(t=ob,ob<<=1,!(ob&130023424)&&(ob=4194304)):t=1);var r=oa();e=ms(e,t),e!==null&&(Wv(e,t,r),ha(e,r))}function voe(e){var t=e.memoizedState,r=0;t!==null&&(r=t.retryLane),rN(e,r)}function goe(e,t){var r=0;switch(e.tag){case 13:var n=e.stateNode,o=e.memoizedState;o!==null&&(r=o.retryLane);break;case 19:n=e.stateNode;break;default:throw Error(Ge(314))}n!==null&&n.delete(t),rN(e,r)}var nN;nN=function(e,t,r){if(e!==null)if(e.memoizedProps!==t.pendingProps||fa.current)va=!0;else{if(!(e.lanes&r)&&!(t.flags&128))return va=!1,roe(e,t,r);va=!!(e.flags&131072)}else va=!1,vn&&t.flags&1048576&&Nk(t,$b,t.index);switch(t.lanes=0,t.tag){case 2:var n=t.type;jb(e,t),e=t.pendingProps;var o=Sf(t,zo.current);kf(t,r),o=p2(null,t,n,e,o,r);var a=v2();return t.flags|=1,typeof o=="object"&&o!==null&&typeof o.render=="function"&&o.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,pa(n)?(a=!0,Db(t)):a=!1,t.memoizedState=o.state!==null&&o.state!==void 0?o.state:null,i2(t),o.updater=Lb,t.stateNode=o,o._reactInternals=t,b2(t,n,e,r),t=I2(null,t,n,!0,a,r)):(t.tag=0,vn&&a&&XF(t),na(null,t,o,r),t=t.child),t;case 16:n=t.elementType;e:{switch(jb(e,t),e=t.pendingProps,o=n._init,n=o(n._payload),t.type=n,o=t.tag=_oe(n),e=Vi(n,e),o){case 0:t=D2(null,t,n,e,r);break e;case 1:t=CP(null,t,n,e,r);break e;case 11:t=IP(null,t,n,e,r);break e;case 14:t=FP(null,t,n,Vi(n.type,e),r);break e}throw Error(Ge(306,n,""))}return t;case 0:return n=t.type,o=t.pendingProps,o=t.elementType===n?o:Vi(n,o),D2(e,t,n,o,r);case 1:return n=t.type,o=t.pendingProps,o=t.elementType===n?o:Vi(n,o),CP(e,t,n,o,r);case 3:e:{if(TP(t),e===null)throw Error(Ge(387));n=t.pendingProps,a=t.memoizedState,o=a.element,Vk(e,t),Ob(t,n,null,r);var i=t.memoizedState;if(n=i.element,a.isDehydrated)if(a={element:n,isDehydrated:!1,cache:i.cache,pendingSuspenseBoundaries:i.pendingSuspenseBoundaries,transitions:i.transitions},t.updateQueue.baseState=a,t.memoizedState=a,t.flags&256){o=Nf(Error(Ge(423)),t),t=RP(e,t,n,r,o);break e}else if(n!==o){o=Nf(Error(Ge(424)),t),t=RP(e,t,n,r,o);break e}else for(Na=_c(t.stateNode.containerInfo.firstChild),Pa=t,vn=!0,Wi=null,r=Hk(t,null,n,r),t.child=r;r;)r.flags=r.flags&-3|4096,r=r.sibling;else{if(Rf(),n===o){t=bs(e,t,r);break e}na(e,t,n,r)}t=t.child}return t;case 5:return Yk(t),e===null&&JF(t),n=t.type,o=t.pendingProps,a=e!==null?e.memoizedProps:null,i=o.children,WF(n,o)?i=null:a!==null&&WF(n,a)&&(t.flags|=32),SP(e,t),na(e,t,i,r),t.child;case 6:return e===null&&JF(t),null;case 13:return OP(e,t,r);case 4:return l2(t,t.stateNode.containerInfo),n=t.pendingProps,e===null?t.child=Of(t,null,n,r):na(e,t,n,r),t.child;case 11:return n=t.type,o=t.pendingProps,o=t.elementType===n?o:Vi(n,o),IP(e,t,n,o,r);case 7:return na(e,t,t.pendingProps,r),t.child;case 8:return na(e,t,t.pendingProps.children,r),t.child;case 12:return na(e,t,t.pendingProps.children,r),t.child;case 10:e:{if(n=t.type._context,o=t.pendingProps,a=t.memoizedProps,i=o.value,en(Cb,n._currentValue),n._currentValue=i,a!==null)if(Hi(a.value,i)){if(a.children===o.children&&!fa.current){t=bs(e,t,r);break e}}else for(a=t.child,a!==null&&(a.return=t);a!==null;){var l=a.dependencies;if(l!==null){i=a.child;for(var s=l.firstContext;s!==null;){if(s.context===n){if(a.tag===1){s=xs(-1,r&-r),s.tag=2;var c=a.updateQueue;if(c!==null){c=c.shared;var d=c.pending;d===null?s.next=s:(s.next=d.next,d.next=s),c.pending=s}}a.lanes|=r,s=a.alternate,s!==null&&(s.lanes|=r),o2(a.return,r,t),l.lanes|=r;break}s=s.next}}else if(a.tag===10)i=a.type===t.type?null:a.child;else if(a.tag===18){if(i=a.return,i===null)throw Error(Ge(341));i.lanes|=r,l=i.alternate,l!==null&&(l.lanes|=r),o2(i,r,t),i=a.sibling}else i=a.child;if(i!==null)i.return=a;else for(i=a;i!==null;){if(i===t){i=null;break}if(a=i.sibling,a!==null){a.return=i.return,i=a;break}i=i.return}a=i}na(e,t,o.children,r),t=t.child}return t;case 9:return o=t.type,n=t.pendingProps.children,kf(t,r),o=ai(o),n=n(o),t.flags|=1,na(e,t,n,r),t.child;case 14:return n=t.type,o=Vi(n,t.pendingProps),o=Vi(n.type,o),FP(e,t,n,o,r);case 15:return $P(e,t,t.type,t.pendingProps,r);case 17:return n=t.type,o=t.pendingProps,o=t.elementType===n?o:Vi(n,o),jb(e,t),t.tag=1,pa(n)?(e=!0,Db(t)):e=!1,kf(t,r),_P(t,n,o),b2(t,n,o,r),I2(null,t,n,!0,e,r);case 19:return kP(e,t,r);case 22:return EP(e,t,r)}throw Error(Ge(156,t.tag))};function oN(e,t){return MA(e,t)}function hoe(e,t,r,n){this.tag=e,this.key=r,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function si(e,t,r,n){return new hoe(e,t,r,n)}function W2(e){return e=e.prototype,!(!e||!e.isReactComponent)}function _oe(e){if(typeof e=="function")return W2(e)?1:0;if(e!=null){if(e=e.$$typeof,e===XI)return 11;if(e===JI)return 14}return 2}function Sc(e,t){var r=e.alternate;return r===null?(r=si(e.tag,t,e.key,e.mode),r.elementType=e.elementType,r.type=e.type,r.stateNode=e.stateNode,r.alternate=e,e.alternate=r):(r.pendingProps=t,r.type=e.type,r.flags=0,r.subtreeFlags=0,r.deletions=null),r.flags=e.flags&14680064,r.childLanes=e.childLanes,r.lanes=e.lanes,r.child=e.child,r.memoizedProps=e.memoizedProps,r.memoizedState=e.memoizedState,r.updateQueue=e.updateQueue,t=e.dependencies,r.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},r.sibling=e.sibling,r.index=e.index,r.ref=e.ref,r}function Qb(e,t,r,n,o,a){var i=2;if(n=e,typeof e=="function")W2(e)&&(i=1);else if(typeof e=="string")i=5;else e:switch(e){case gf:return Nu(r.children,o,a,t);case YI:i=8,o|=8;break;case GI:return e=si(12,r,t,o|2),e.elementType=GI,e.lanes=a,e;case ZI:return e=si(13,r,t,o),e.elementType=ZI,e.lanes=a,e;case QI:return e=si(19,r,t,o),e.elementType=QI,e.lanes=a,e;case pA:return Jb(r,o,a,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case dA:i=10;break e;case fA:i=9;break e;case XI:i=11;break e;case JI:i=14;break e;case cc:i=16,n=null;break e}throw Error(Ge(130,e==null?e:typeof e,""))}return t=si(i,r,t,o),t.elementType=e,t.type=n,t.lanes=a,t}function Nu(e,t,r,n){return e=si(7,e,n,t),e.lanes=r,e}function Jb(e,t,r,n){return e=si(22,e,n,t),e.elementType=pA,e.lanes=r,e.stateNode={isHidden:!1},e}function V2(e,t,r){return e=si(6,e,null,t),e.lanes=r,e}function K2(e,t,r){return t=si(4,e.children!==null?e.children:[],e.key,t),t.lanes=r,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function moe(e,t,r,n,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=xF(0),this.expirationTimes=xF(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=xF(0),this.identifierPrefix=n,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function q2(e,t,r,n,o,a,i,l,s){return e=new moe(e,t,r,l,s),t===1?(t=1,a===!0&&(t|=8)):t=0,a=si(3,null,null,t),e.current=a,a.stateNode=e,a.memoizedState={element:n,isDehydrated:r,cache:null,transitions:null,pendingSuspenseBoundaries:null},i2(a),e}function xoe(e,t,r){var n=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(r){console.error(r)}}t(),e.exports=Oa}(xre);const Rl=Vt(Kr);function uN(e){return e instanceof HTMLElement||e instanceof SVGElement}function Ioe(e){return e&&bu(e)==="object"&&uN(e.nativeElement)?e.nativeElement:uN(e)?e:null}function jf(e){var t=Ioe(e);if(t)return t;if(e instanceof E.Component){var r;return(r=Rl.findDOMNode)===null||r===void 0?void 0:r.call(Rl,e)}return null}function Foe(e,t,r){var n=m.useRef({});return(!("value"in n.current)||r(n.current.condition,t))&&(n.current.value=e(),n.current.condition=t),n.current.value}var $oe=function(t,r){typeof t=="function"?t(r):bu(t)==="object"&&t&&"current"in t&&(t.current=r)},dN=function(){for(var t=arguments.length,r=new Array(t),n=0;n=19;var Z2=m.createContext(null);function Soe(e){var t=e.children,r=e.onBatchResize,n=m.useRef(0),o=m.useRef([]),a=m.useContext(Z2),i=m.useCallback(function(l,s,c){n.current+=1;var d=n.current;o.current.push({size:l,element:s,data:c}),Promise.resolve().then(function(){d===n.current&&(r?.(o.current),o.current=[])}),a?.(l,s,c)},[r,a]);return m.createElement(Z2.Provider,{value:i},t)}var vN=function(){if(typeof Map<"u")return Map;function e(t,r){var n=-1;return t.some(function(o,a){return o[0]===r?(n=a,!0):!1}),n}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(r){var n=e(this.__entries__,r),o=this.__entries__[n];return o&&o[1]},t.prototype.set=function(r,n){var o=e(this.__entries__,r);~o?this.__entries__[o][1]=n:this.__entries__.push([r,n])},t.prototype.delete=function(r){var n=this.__entries__,o=e(n,r);~o&&n.splice(o,1)},t.prototype.has=function(r){return!!~e(this.__entries__,r)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(r,n){n===void 0&&(n=null);for(var o=0,a=this.__entries__;o0},e.prototype.connect_=function(){!Q2||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),koe?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},e.prototype.disconnect_=function(){!Q2||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},e.prototype.onTransitionEnd_=function(t){var r=t.propertyName,n=r===void 0?"":r,o=Aoe.some(function(a){return!!~n.indexOf(a)});o&&this.refresh()},e.getInstance=function(){return this.instance_||(this.instance_=new e),this.instance_},e.instance_=null,e}(),gN=function(e,t){for(var r=0,n=Object.keys(t);r"u"||!(Element instanceof Object))){if(!(t instanceof Uf(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var r=this.observations_;r.has(t)||(r.set(t,new Hoe(t)),this.controller_.addObserver(this),this.controller_.refresh())}},e.prototype.unobserve=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element>"u"||!(Element instanceof Object))){if(!(t instanceof Uf(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var r=this.observations_;r.has(t)&&(r.delete(t),r.size||this.controller_.removeObserver(this))}},e.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},e.prototype.gatherActive=function(){var t=this;this.clearActive(),this.observations_.forEach(function(r){r.isActive()&&t.activeObservations_.push(r)})},e.prototype.broadcastActive=function(){if(this.hasActive()){var t=this.callbackCtx_,r=this.activeObservations_.map(function(n){return new Woe(n.target,n.broadcastRect())});this.callback_.call(t,r,t),this.clearActive()}},e.prototype.clearActive=function(){this.activeObservations_.splice(0)},e.prototype.hasActive=function(){return this.activeObservations_.length>0},e}(),mN=typeof WeakMap<"u"?new WeakMap:new vN,xN=function(){function e(t){if(!(this instanceof e))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var r=Poe.getInstance(),n=new Voe(t,r,this);mN.set(this,n)}return e}();["observe","unobserve","disconnect"].forEach(function(e){xN.prototype[e]=function(){var t;return(t=mN.get(this))[e].apply(t,arguments)}});var bN=function(){return typeof i0.ResizeObserver<"u"?i0.ResizeObserver:xN}(),Cc=new Map;function Koe(e){e.forEach(function(t){var r,n=t.target;(r=Cc.get(n))===null||r===void 0||r.forEach(function(o){return o(n)})})}var yN=new bN(Koe);function qoe(e,t){Cc.has(e)||(Cc.set(e,new Set),yN.observe(e)),Cc.get(e).add(t)}function Yoe(e,t){Cc.has(e)&&(Cc.get(e).delete(t),Cc.get(e).size||(yN.unobserve(e),Cc.delete(e)))}function wN(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function DN(e,t){for(var r=0;r1&&arguments[1]!==void 0?arguments[1]:1;AN+=1;var n=AN;function o(a){if(a===0)kN(n),t();else{var i=RN(function(){o(a-1)});t$.set(n,i)}}return o(r),n};Gi.cancel=function(e){var t=t$.get(e);return kN(e),ON(t)};var PN=(typeof navigator>"u"?"undefined":bu(navigator))==="object"&&/Firefox/i.test(navigator.userAgent);const NN=function(e,t,r,n){var o=m.useRef(!1),a=m.useRef(null);function i(){clearTimeout(a.current),o.current=!0,a.current=setTimeout(function(){o.current=!1},50)}var l=m.useRef({top:e,bottom:t,left:r,right:n});return l.current.top=e,l.current.bottom=t,l.current.left=r,l.current.right=n,function(s,c){var d=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,f=s?c<0&&l.current.left||c>0&&l.current.right:c<0&&l.current.top||c>0&&l.current.bottom;return d&&f?(clearTimeout(a.current),o.current=!1):(!f||o.current)&&i(),!o.current&&f}};function lae(e,t,r,n,o,a,i){var l=m.useRef(0),s=m.useRef(null),c=m.useRef(null),d=m.useRef(!1),f=NN(t,r,n,o);function v(w,D){Gi.cancel(s.current),l.current+=D,c.current=D,!f(!1,D)&&(PN||w.preventDefault(),s.current=Gi(function(){var I=d.current?10:1;i(l.current*I),l.current=0}))}function g(w,D){i(D,!0),PN||w.preventDefault()}var h=m.useRef(null),_=m.useRef(null);function b(w){if(e){Gi.cancel(_.current),_.current=Gi(function(){h.current=null},2);var D=w.deltaX,I=w.deltaY,$=w.shiftKey,F=D,C=I;(h.current==="sx"||!h.current&&$&&I&&!D)&&(F=I,C=0,h.current="sx");var R=Math.abs(F),k=Math.abs(C);h.current===null&&(h.current=a&&R>k?"x":"y"),h.current==="y"?v(w,C):g(w,F)}}function x(w){e&&(d.current=w.detail===c.current)}return[b,x]}function sae(e,t,r,n){var o=m.useMemo(function(){return[new Map,[]]},[e,r.id,n]),a=Mo(o,2),i=a[0],l=a[1],s=function(d){var f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:d,v=i.get(d),g=i.get(f);if(v===void 0||g===void 0)for(var h=e.length,_=l.length;_0&&arguments[0]!==void 0?arguments[0]:!1;d();var h=function(){l.current.forEach(function(b,x){if(b&&b.offsetParent){var w=jf(b),D=w.offsetHeight;s.current.get(x)!==D&&s.current.set(x,w.offsetHeight)}}),i(function(b){return b+1})};g?h():c.current=Gi(h)}function v(g,h){var _=e(g),b=l.current.get(_);h?(l.current.set(_,h),f()):l.current.delete(_),!b!=!h&&(h?t?.(g):r?.(g))}return m.useEffect(function(){return d},[]),[v,f,s.current,a]}var zN=14/15;function pae(e,t,r){var n=m.useRef(!1),o=m.useRef(0),a=m.useRef(0),i=m.useRef(null),l=m.useRef(null),s,c=function(g){if(n.current){var h=Math.ceil(g.touches[0].pageX),_=Math.ceil(g.touches[0].pageY),b=o.current-h,x=a.current-_,w=Math.abs(b)>Math.abs(x);w?o.current=h:a.current=_,r(w,w?b:x)&&g.preventDefault(),clearInterval(l.current),l.current=setInterval(function(){w?b*=zN:x*=zN;var D=Math.floor(w?b:x);(!r(w,D,!0)||Math.abs(D)<=.1)&&clearInterval(l.current)},16)}},d=function(){n.current=!1,s()},f=function(g){s(),g.touches.length===1&&!n.current&&(n.current=!0,o.current=Math.ceil(g.touches[0].pageX),a.current=Math.ceil(g.touches[0].pageY),i.current=g.target,i.current.addEventListener("touchmove",c,{passive:!1}),i.current.addEventListener("touchend",d,{passive:!0}))};s=function(){i.current&&(i.current.removeEventListener("touchmove",c),i.current.removeEventListener("touchend",d))},wg(function(){return e&&t.current.addEventListener("touchstart",f,{passive:!0}),function(){var v;(v=t.current)===null||v===void 0||v.removeEventListener("touchstart",f),s(),clearInterval(l.current)}},[e])}var vae=10;function gae(e,t,r,n,o,a,i,l){var s=m.useRef(),c=m.useState(null),d=Mo(c,2),f=d[0],v=d[1];return wg(function(){if(f&&f.times=0;A-=1){var M=o(t[A]),N=r.get(M);if(N===void 0){w=!0;break}if(z-=N,z<=0)break}switch($){case"top":I=C-b;break;case"bottom":I=R-x+b;break;default:{var T=e.current.scrollTop,O=T+x;CO&&(D="bottom")}}I!==null&&i(I),I!==f.lastTop&&(w=!0)}w&&v(da(da({},f),{},{times:f.times+1,targetAlign:D,lastTop:I}))}},[f,e.current]),function(g){if(g==null){l();return}if(Gi.cancel(s.current),typeof g=="number")i(g);else if(g&&bu(g)==="object"){var h,_=g.align;"index"in g?h=g.index:h=t.findIndex(function(w){return o(w)===g.key});var b=g.offset,x=b===void 0?0:b;v({times:0,index:h,offset:x,originAlign:_})}}}function LN(e,t){var r="touches"in e?e.touches[0]:e;return r[t?"pageX":"pageY"]}var BN=m.forwardRef(function(e,t){var r=e.prefixCls,n=e.rtl,o=e.scrollOffset,a=e.scrollRange,i=e.onStartMove,l=e.onStopMove,s=e.onScroll,c=e.horizontal,d=e.spinSize,f=e.containerSize,v=e.style,g=e.thumbStyle,h=m.useState(!1),_=Mo(h,2),b=_[0],x=_[1],w=m.useState(null),D=Mo(w,2),I=D[0],$=D[1],F=m.useState(null),C=Mo(F,2),R=C[0],k=C[1],P=!n,U=m.useRef(),B=m.useRef(),z=m.useState(!1),A=Mo(z,2),M=A[0],N=A[1],T=m.useRef(),O=function(){clearTimeout(T.current),N(!0),T.current=setTimeout(function(){N(!1)},3e3)},j=a-f||0,K=f-d||0,Q=m.useMemo(function(){if(o===0||j===0)return 0;var ne=o/j;return ne*K},[o,j,K]),Y=function(re){re.stopPropagation(),re.preventDefault()},X=m.useRef({top:Q,dragging:b,pageY:I,startTop:R});X.current={top:Q,dragging:b,pageY:I,startTop:R};var G=function(re){x(!0),$(LN(re,c)),k(X.current.top),i(),re.stopPropagation(),re.preventDefault()};m.useEffect(function(){var ne=function(oe){oe.preventDefault()},re=U.current,ie=B.current;return re.addEventListener("touchstart",ne,{passive:!1}),ie.addEventListener("touchstart",G,{passive:!1}),function(){re.removeEventListener("touchstart",ne),ie.removeEventListener("touchstart",G)}},[]);var H=m.useRef();H.current=j;var V=m.useRef();V.current=K,m.useEffect(function(){if(b){var ne,re=function(oe){var fe=X.current,ve=fe.dragging,he=fe.pageY,ge=fe.startTop;Gi.cancel(ne);var $e=U.current.getBoundingClientRect(),ue=f/(c?$e.width:$e.height);if(ve){var Me=(LN(oe,c)-he)*ue,Pe=ge;!P&&c?Pe-=Me:Pe+=Me;var Qe=H.current,it=V.current,Je=it?Pe/it:0,He=Math.ceil(Je*Qe);He=Math.max(He,0),He=Math.min(He,Qe),ne=Gi(function(){s(He,c)})}},ie=function(){x(!1),l()};return window.addEventListener("mousemove",re,{passive:!0}),window.addEventListener("touchmove",re,{passive:!0}),window.addEventListener("mouseup",ie,{passive:!0}),window.addEventListener("touchend",ie,{passive:!0}),function(){window.removeEventListener("mousemove",re),window.removeEventListener("touchmove",re),window.removeEventListener("mouseup",ie),window.removeEventListener("touchend",ie),Gi.cancel(ne)}}},[b]),m.useEffect(function(){return O(),function(){clearTimeout(T.current)}},[o]),m.useImperativeHandle(t,function(){return{delayHidden:O}});var Z="".concat(r,"-scrollbar"),te={position:"absolute",visibility:M?null:"hidden"},J={position:"absolute",background:"rgba(0, 0, 0, 0.5)",borderRadius:99,cursor:"pointer",userSelect:"none"};return c?(te.height=8,te.left=0,te.right=0,te.bottom=0,J.height="100%",J.width=d,P?J.left=Q:J.right=Q):(te.width=8,te.top=0,te.bottom=0,P?te.right=0:te.left=0,J.width="100%",J.height=d,J.top=Q),m.createElement("div",{ref:U,className:Gt(Z,ta(ta(ta({},"".concat(Z,"-horizontal"),c),"".concat(Z,"-vertical"),!c),"".concat(Z,"-visible"),M)),style:da(da({},te),v),onMouseDown:Y,onMouseMove:O},m.createElement("div",{ref:B,className:Gt("".concat(Z,"-thumb"),ta({},"".concat(Z,"-thumb-moving"),b)),style:da(da({},J),g),onMouseDown:G}))}),hae=20;function jN(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=e/t*e;return isNaN(r)&&(r=0),r=Math.max(r,hae),Math.floor(r)}var _ae=["prefixCls","className","height","itemHeight","fullHeight","style","data","children","itemKey","virtual","direction","scrollWidth","component","onScroll","onVirtualScroll","onVisibleChange","innerProps","extraRender","styles"],mae=[],xae={overflowY:"auto",overflowAnchor:"none"};function bae(e,t){var r=e.prefixCls,n=r===void 0?"rc-virtual-list":r,o=e.className,a=e.height,i=e.itemHeight,l=e.fullHeight,s=l===void 0?!0:l,c=e.style,d=e.data,f=e.children,v=e.itemKey,g=e.virtual,h=e.direction,_=e.scrollWidth,b=e.component,x=b===void 0?"div":b,w=e.onScroll,D=e.onVirtualScroll,I=e.onVisibleChange,$=e.innerProps,F=e.extraRender,C=e.styles,R=fre(e,_ae),k=m.useCallback(function(ye){return typeof v=="function"?v(ye):ye?.[v]},[v]),P=fae(k,null,null),U=Mo(P,4),B=U[0],z=U[1],A=U[2],M=U[3],N=!!(g!==!1&&a&&i),T=m.useMemo(function(){return Object.values(A.maps).reduce(function(ye,Ue){return ye+Ue},0)},[A.id,A.maps]),O=N&&d&&(Math.max(i*d.length,T)>a||!!_),j=h==="rtl",K=Gt(n,ta({},"".concat(n,"-rtl"),j),o),Q=d||mae,Y=m.useRef(),X=m.useRef(),G=m.useRef(),H=m.useState(0),V=Mo(H,2),Z=V[0],te=V[1],J=m.useState(0),ne=Mo(J,2),re=ne[0],ie=ne[1],ce=m.useState(!1),oe=Mo(ce,2),fe=oe[0],ve=oe[1],he=function(){ve(!0)},ge=function(){ve(!1)},$e={getKey:k};function ue(ye){te(function(Ue){var ut;typeof ye=="function"?ut=ye(Ue):ut=ye;var ir=et(ut);return Y.current.scrollTop=ir,ir})}var Me=m.useRef({start:0,end:Q.length}),Pe=m.useRef(),Qe=iae(Q,k),it=Mo(Qe,1),Je=it[0];Pe.current=Je;var He=m.useMemo(function(){if(!N)return{scrollHeight:void 0,start:0,end:Q.length-1,offset:void 0};if(!O){var ye;return{scrollHeight:((ye=X.current)===null||ye===void 0?void 0:ye.offsetHeight)||0,start:0,end:Q.length-1,offset:void 0}}for(var Ue=0,ut,ir,Rr,Qr=Q.length,gr=0;gr=Z&&ut===void 0&&(ut=gr,ir=Ue),Xt>Z+a&&Rr===void 0&&(Rr=gr),Ue=Xt}return ut===void 0&&(ut=0,ir=0,Rr=Math.ceil(a/i)),Rr===void 0&&(Rr=Q.length-1),Rr=Math.min(Rr+1,Q.length-1),{scrollHeight:Ue,start:ut,end:Rr,offset:ir}},[O,N,Z,Q,M,a]),Ce=He.scrollHeight,Le=He.start,ze=He.end,ft=He.offset;Me.current.start=Le,Me.current.end=ze;var pt=m.useState({width:0,height:a}),wt=Mo(pt,2),st=wt[0],xt=wt[1],we=function(Ue){xt({width:Ue.offsetWidth,height:Ue.offsetHeight})},Yt=m.useRef(),Ut=m.useRef(),Tt=m.useMemo(function(){return jN(st.width,_)},[st.width,_]),It=m.useMemo(function(){return jN(st.height,Ce)},[st.height,Ce]),at=Ce-a,vt=m.useRef(at);vt.current=at;function et(ye){var Ue=ye;return Number.isNaN(vt.current)||(Ue=Math.min(Ue,vt.current)),Ue=Math.max(Ue,0),Ue}var qe=Z<=0,Ve=Z>=at,Ke=re<=0,Rt=re>=_,xe=NN(qe,Ve,Ke,Rt),Te=function(){return{x:j?-re:re,y:Z}},We=m.useRef(Te()),Xe=SN(function(ye){if(D){var Ue=da(da({},Te()),ye);(We.current.x!==Ue.x||We.current.y!==Ue.y)&&(D(Ue),We.current=Ue)}});function ot(ye,Ue){var ut=ye;Ue?(Kr.flushSync(function(){ie(ut)}),Xe()):ue(ut)}function gt(ye){var Ue=ye.currentTarget.scrollTop;Ue!==Z&&ue(Ue),w?.(ye),Xe()}var Et=function(Ue){var ut=Ue,ir=_?_-st.width:0;return ut=Math.max(ut,0),ut=Math.min(ut,ir),ut},Qt=SN(function(ye,Ue){Ue?(Kr.flushSync(function(){ie(function(ut){var ir=ut+(j?-ye:ye);return Et(ir)})}),Xe()):ue(function(ut){var ir=ut+ye;return ir})}),Ft=lae(N,qe,Ve,Ke,Rt,!!_,Qt),ct=Mo(Ft,2),Bt=ct[0],Mt=ct[1];pae(N,Y,function(ye,Ue,ut){return xe(ye,Ue,ut)?!1:(Bt({preventDefault:function(){},deltaX:ye?Ue:0,deltaY:ye?0:Ue}),!0)}),wg(function(){function ye(ut){N&&ut.preventDefault()}var Ue=Y.current;return Ue.addEventListener("wheel",Bt,{passive:!1}),Ue.addEventListener("DOMMouseScroll",Mt,{passive:!0}),Ue.addEventListener("MozMousePixelScroll",ye,{passive:!1}),function(){Ue.removeEventListener("wheel",Bt),Ue.removeEventListener("DOMMouseScroll",Mt),Ue.removeEventListener("MozMousePixelScroll",ye)}},[N]),wg(function(){if(_){var ye=Et(re);ie(ye),Xe({x:ye})}},[st.width,_]);var St=function(){var Ue,ut;(Ue=Yt.current)===null||Ue===void 0||Ue.delayHidden(),(ut=Ut.current)===null||ut===void 0||ut.delayHidden()},zt=gae(Y,Q,A,i,k,function(){return z(!0)},ue,St);m.useImperativeHandle(t,function(){return{nativeElement:G.current,getScrollInfo:Te,scrollTo:function(Ue){function ut(ir){return ir&&bu(ir)==="object"&&("left"in ir||"top"in ir)}ut(Ue)?(Ue.left!==void 0&&ie(Et(Ue.left)),zt(Ue.top)):zt(Ue)}}}),wg(function(){if(I){var ye=Q.slice(Le,ze+1);I(ye,Q)}},[Le,ze,Q]);var Jt=sae(Q,k,A,i),vr=F?.({start:Le,end:ze,virtual:O,offsetX:re,offsetY:ft,rtl:j,getSize:Jt}),fn=oae(Q,Le,ze,_,re,B,f,$e),Ae=null;a&&(Ae=da(ta({},s?"height":"maxHeight",a),xae),N&&(Ae.overflowY="hidden",_&&(Ae.overflowX="hidden"),fe&&(Ae.pointerEvents="none")));var ke={};return j&&(ke.dir="rtl"),m.createElement("div",ff({ref:G,style:da(da({},c),{},{position:"relative"}),className:K},ke,R),m.createElement(e$,{onResize:we},m.createElement(x,{className:"".concat(n,"-holder"),style:Ae,ref:Y,onScroll:gt,onMouseEnter:St},m.createElement(TN,{prefixCls:n,height:Ce,offsetX:re,offsetY:ft,scrollWidth:_,onInnerResize:z,ref:X,innerProps:$,rtl:j,extra:vr},fn))),O&&Ce>a&&m.createElement(BN,{ref:Yt,prefixCls:n,scrollOffset:Z,scrollRange:Ce,rtl:j,onScroll:ot,onStartMove:he,onStopMove:ge,spinSize:It,containerSize:st.height,style:C?.verticalScrollBar,thumbStyle:C?.verticalScrollBarThumb}),O&&_>st.width&&m.createElement(BN,{ref:Ut,prefixCls:n,scrollOffset:re,scrollRange:_,rtl:j,onScroll:ot,onStartMove:he,onStopMove:ge,spinSize:Tt,containerSize:st.width,horizontal:!0,style:C?.horizontalScrollBar,thumbStyle:C?.horizontalScrollBarThumb}))}var yae=m.forwardRef(bae);yae.displayName="List";const UN=(e=window)=>{try{return e.BI.Services.getService("dec.service.global"),e}catch{return e===e.parent?e:UN(e.parent)}};let r$;const HN=()=>(r$||(r$=UN()),r$),WN=e=>{if(!e)return window.Dec?.fineServletURL;const{system:t={},permanentDomains:r={}}=window.Dec;return`${t.contextPath}/${r[e]}`},VN=()=>window.FP?.servlets?.bi??window.Dec.fineServletURL;var De={},wae={get exports(){return De},set exports(e){De=e}};/** * @license * Lodash * Copyright OpenJS Foundation and other contributors * Released under MIT license * Based on Underscore.js 1.8.3 * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */(function(e,t){(function(){var r,n="4.17.21",a=200,o="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",i="Expected a function",l="Invalid `variable` option passed into `_.template`",s="__lodash_hash_undefined__",c=500,d="__lodash_placeholder__",f=1,v=2,h=4,g=1,_=2,w=1,b=2,y=4,D=8,F=16,S=32,I=64,C=128,R=256,P=512,O=30,N="...",A=800,z=16,k=1,M=2,T=3,B=1/0,L=9007199254740991,K=17976931348623157e292,X=0/0,ee=4294967295,q=ee-1,G=ee>>>1,W=[["ary",C],["bind",w],["bindKey",b],["curry",D],["curryRight",F],["flip",P],["partial",S],["partialRight",I],["rearg",R]],V="[object Arguments]",Y="[object Array]",Z="[object AsyncFunction]",te="[object Boolean]",J="[object Date]",ae="[object DOMException]",re="[object Error]",ie="[object Function]",ve="[object GeneratorFunction]",oe="[object Map]",fe="[object Number]",ge="[object Null]",le="[object Object]",_e="[object Promise]",De="[object Proxy]",Oe="[object RegExp]",Be="[object Set]",Pe="[object String]",Ge="[object Symbol]",ke="[object Undefined]",Ze="[object WeakMap]",Ke="[object WeakSet]",ct="[object ArrayBuffer]",Xe="[object DataView]",ot="[object Float32Array]",tt="[object Float64Array]",Dt="[object Int8Array]",Bt="[object Int16Array]",gt="[object Int32Array]",Tt="[object Uint8Array]",ye="[object Uint8ClampedArray]",er="[object Uint16Array]",ft="[object Uint32Array]",nt=/\b__p \+= '';/g,Ft=/\b(__p \+=) '' \+/g,lt=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Ie=/&(?:amp|lt|gt|quot|#39);/g,qe=/[&<>"']/g,dt=RegExp(Ie.source),mt=RegExp(qe.source),Rt=/<%-([\s\S]+?)%>/g,Gt=/<%([\s\S]+?)%>/g,Qe=/<%=([\s\S]+?)%>/g,He=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,je=/^\w*$/,ze=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ve=/[\\^$.*+?()[\]{}|]/g,Ae=RegExp(Ve.source),Fe=/^\s+/,st=/\s/,$t=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Je=/\{\n\/\* \[wrapped with (.+)\] \*/,ht=/,? & /,Vt=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Mt=/[()=,{}\[\]\/\s]/,_r=/\\(\\)?/g,Ca=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Zn=/\w*$/,sn=/^[-+]0x[0-9a-f]+$/i,It=/^0b[01]+$/i,xt=/^\[object .+?Constructor\]$/,Me=/^0o[0-7]+$/i,Le=/^(?:0|[1-9]\d*)$/,St=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,fr=/($^)/,Et=/['\n\r\u2028\u2029\\]/g,Kt="\\ud800-\\udfff",Zt="\\u0300-\\u036f",Hr="\\ufe20-\\ufe2f",In="\\u20d0-\\u20ff",mr=Zt+Hr+In,Mr="\\u2700-\\u27bf",Ja="a-z\\xdf-\\xf6\\xf8-\\xff",eo="\\xac\\xb1\\xd7\\xf7",dl="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",es="\\u2000-\\u206f",Bd=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Hs="A-Z\\xc0-\\xd6\\xd8-\\xde",nv="\\ufe0e\\ufe0f",Pm=eo+dl+es+Bd,eu="['’]",qR="["+Kt+"]",pD="["+Pm+"]",av="["+mr+"]",yr="\\d+",jt="["+Mr+"]",bt="["+Ja+"]",Ot="[^"+Kt+Pm+yr+Mr+Ja+Hs+"]",nr="\\ud83c[\\udffb-\\udfff]",Wr="(?:"+av+"|"+nr+")",Qn="[^"+Kt+"]",va="(?:\\ud83c[\\udde6-\\uddff]){2}",to="[\\ud800-\\udbff][\\udc00-\\udfff]",Uo="["+Hs+"]",vD="\\u200d",vQ="(?:"+bt+"|"+Ot+")",$bt="(?:"+Uo+"|"+Ot+")",hQ="(?:"+eu+"(?:d|ll|m|re|s|t|ve))?",gQ="(?:"+eu+"(?:D|LL|M|RE|S|T|VE))?",_Q=Wr+"?",mQ="["+nv+"]?",Sbt="(?:"+vD+"(?:"+[Qn,va,to].join("|")+")"+mQ+_Q+")*",Ebt="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Cbt="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",xQ=mQ+_Q+Sbt,Tbt="(?:"+[jt,va,to].join("|")+")"+xQ,Rbt="(?:"+[Qn+av+"?",av,va,to,qR].join("|")+")",Obt=RegExp(eu,"g"),Abt=RegExp(av,"g"),YR=RegExp(nr+"(?="+nr+")|"+Rbt+xQ,"g"),kbt=RegExp([Uo+"?"+bt+"+"+hQ+"(?="+[pD,Uo,"$"].join("|")+")",$bt+"+"+gQ+"(?="+[pD,Uo+vQ,"$"].join("|")+")",Uo+"?"+vQ+"+"+hQ,Uo+"+"+gQ,Cbt,Ebt,yr,Tbt].join("|"),"g"),Pbt=RegExp("["+vD+Kt+mr+nv+"]"),Nbt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Mbt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Lbt=-1,cn={};cn[ot]=cn[tt]=cn[Dt]=cn[Bt]=cn[gt]=cn[Tt]=cn[ye]=cn[er]=cn[ft]=!0,cn[V]=cn[Y]=cn[ct]=cn[te]=cn[Xe]=cn[J]=cn[re]=cn[ie]=cn[oe]=cn[fe]=cn[le]=cn[Oe]=cn[Be]=cn[Pe]=cn[Ze]=!1;var en={};en[V]=en[Y]=en[ct]=en[Xe]=en[te]=en[J]=en[ot]=en[tt]=en[Dt]=en[Bt]=en[gt]=en[oe]=en[fe]=en[le]=en[Oe]=en[Be]=en[Pe]=en[Ge]=en[Tt]=en[ye]=en[er]=en[ft]=!0,en[re]=en[ie]=en[Ze]=!1;var zbt={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Bbt={"&":"&","<":"<",">":">",'"':""","'":"'"},jbt={"&":"&","<":"<",">":">",""":'"',"'":"'"},Ubt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Hbt=parseFloat,Wbt=parseInt,bQ=typeof On=="object"&&On&&On.Object===Object&&On,Vbt=typeof self=="object"&&self&&self.Object===Object&&self,Ta=bQ||Vbt||Function("return this")(),GR=t&&!t.nodeType&&t,jd=GR&&!0&&e&&!e.nodeType&&e,yQ=jd&&jd.exports===GR,XR=yQ&&bQ.process,Di=function(){try{var se=jd&&jd.require&&jd.require("util").types;return se||XR&&XR.binding&&XR.binding("util")}catch{}}(),wQ=Di&&Di.isArrayBuffer,DQ=Di&&Di.isDate,IQ=Di&&Di.isMap,FQ=Di&&Di.isRegExp,$Q=Di&&Di.isSet,SQ=Di&&Di.isTypedArray;function Ho(se,be,he){switch(he.length){case 0:return se.call(be);case 1:return se.call(be,he[0]);case 2:return se.call(be,he[0],he[1]);case 3:return se.call(be,he[0],he[1],he[2])}return se.apply(be,he)}function Kbt(se,be,he,pt){for(var Qt=-1,Er=se==null?0:se.length;++Qt-1}function ZR(se,be,he){for(var pt=-1,Qt=se==null?0:se.length;++pt-1;);return he}function PQ(se,be){for(var he=se.length;he--&&ov(be,se[he],0)>-1;);return he}function t0t(se,be){for(var he=se.length,pt=0;he--;)se[he]===be&&++pt;return pt}var r0t=tO(zbt),n0t=tO(Bbt);function a0t(se){return"\\"+Ubt[se]}function o0t(se,be){return se==null?r:se[be]}function iv(se){return Pbt.test(se)}function i0t(se){return Nbt.test(se)}function l0t(se){for(var be,he=[];!(be=se.next()).done;)he.push(be.value);return he}function oO(se){var be=-1,he=Array(se.size);return se.forEach(function(pt,Qt){he[++be]=[Qt,pt]}),he}function NQ(se,be){return function(he){return se(be(he))}}function nu(se,be){for(var he=-1,pt=se.length,Qt=0,Er=[];++he-1}function Y0t(u,p){var x=this.__data__,E=OD(x,u);return E<0?(++this.size,x.push([u,p])):x[E][1]=p,this}Ws.prototype.clear=W0t,Ws.prototype.delete=V0t,Ws.prototype.get=K0t,Ws.prototype.has=q0t,Ws.prototype.set=Y0t;function Vs(u){var p=-1,x=u==null?0:u.length;for(this.clear();++p=p?u:p)),u}function Si(u,p,x,E,j,H){var Q,ne=p&f,ce=p&v,$e=p&h;if(x&&(Q=j?x(u,E,j,H):x(u)),Q!==r)return Q;if(!Fn(u))return u;var Se=tr(u);if(Se){if(Q=Qyt(u),!ne)return wo(u,Q)}else{var Ne=Va(u),it=Ne==ie||Ne==ve;if(cu(u))return mJ(u,ne);if(Ne==le||Ne==V||it&&!j){if(Q=ce||it?{}:MJ(u),!ne)return ce?jyt(u,uyt(Q,u)):Byt(u,YQ(Q,u))}else{if(!en[Ne])return j?u:{};Q=Jyt(u,Ne,ne)}}H||(H=new pl);var wt=H.get(u);if(wt)return wt;H.set(u,Q),fee(u)?u.forEach(function(Ht){Q.add(Si(Ht,p,x,Ht,u,H))}):uee(u)&&u.forEach(function(Ht,pr){Q.set(pr,Si(Ht,p,x,pr,u,H))});var Ut=$e?ce?RO:TO:ce?Io:ha,cr=Se?r:Ut(u);return Ii(cr||u,function(Ht,pr){cr&&(pr=Ht,Ht=u[pr]),Um(Q,pr,Si(Ht,p,x,pr,u,H))}),Q}function dyt(u){var p=ha(u);return function(x){return GQ(x,u,p)}}function GQ(u,p,x){var E=x.length;if(u==null)return!E;for(u=Vr(u);E--;){var j=x[E],H=p[j],Q=u[j];if(Q===r&&!(j in u)||!H(Q))return!1}return!0}function XQ(u,p,x){if(typeof u!="function")throw new Fi(i);return Gm(function(){u.apply(r,x)},p)}function Hm(u,p,x,E){var j=-1,H=hD,Q=!0,ne=u.length,ce=[],$e=p.length;if(!ne)return ce;x&&(p=pn(p,Wo(x))),E?(H=ZR,Q=!1):p.length>=a&&(H=Nm,Q=!1,p=new Wd(p));e:for(;++jj?0:j+x),E=E===r||E>j?j:ir(E),E<0&&(E+=j),E=x>E?0:vee(E);x0&&x(ne)?p>1?Ra(ne,p-1,x,E,j):ru(j,ne):E||(j[j.length]=ne)}return j}var fO=IJ(),JQ=IJ(!0);function ts(u,p){return u&&fO(u,p,ha)}function pO(u,p){return u&&JQ(u,p,ha)}function kD(u,p){return tu(p,function(x){return Xs(u[x])})}function Kd(u,p){p=lu(p,u);for(var x=0,E=p.length;u!=null&&xp}function vyt(u,p){return u!=null&&Lr.call(u,p)}function hyt(u,p){return u!=null&&p in Vr(u)}function gyt(u,p,x){return u>=Wa(p,x)&&u=120&&Se.length>=120)?new Wd(Q&&Se):r}Se=u[0];var Ne=-1,it=ne[0];e:for(;++Ne-1;)ne!==u&&FD.call(ne,ce,1),FD.call(u,ce,1);return u}function uJ(u,p){for(var x=u?p.length:0,E=x-1;x--;){var j=p[x];if(x==E||j!==H){var H=j;Gs(j)?FD.call(u,j,1):DO(u,j)}}return u}function bO(u,p){return u+ED(WQ()*(p-u+1))}function Cyt(u,p,x,E){for(var j=-1,H=oa(SD((p-u)/(x||1)),0),Q=he(H);H--;)Q[E?H:++j]=u,u+=x;return Q}function yO(u,p){var x="";if(!u||p<1||p>L)return x;do p%2&&(x+=u),p=ED(p/2),p&&(u+=u);while(p);return x}function ur(u,p){return LO(BJ(u,p,Fo),u+"")}function Tyt(u){return qQ(_v(u))}function Ryt(u,p){var x=_v(u);return VD(x,Vd(p,0,x.length))}function Km(u,p,x,E){if(!Fn(u))return u;p=lu(p,u);for(var j=-1,H=p.length,Q=H-1,ne=u;ne!=null&&++jj?0:j+p),x=x>j?j:x,x<0&&(x+=j),j=p>x?0:x-p>>>0,p>>>=0;for(var H=he(j);++E>>1,Q=u[H];Q!==null&&!Ko(Q)&&(x?Q<=p:Q=a){var $e=p?null:Vyt(u);if($e)return _D($e);Q=!1,j=Nm,ce=new Wd}else ce=p?[]:ne;e:for(;++E=E?u:Ei(u,p,x)}var _J=w0t||function(u){return Ta.clearTimeout(u)};function mJ(u,p){if(p)return u.slice();var x=u.length,E=zQ?zQ(x):new u.constructor(x);return u.copy(E),E}function SO(u){var p=new u.constructor(u.byteLength);return new DD(p).set(new DD(u)),p}function Nyt(u,p){var x=p?SO(u.buffer):u.buffer;return new u.constructor(x,u.byteOffset,u.byteLength)}function Myt(u){var p=new u.constructor(u.source,Zn.exec(u));return p.lastIndex=u.lastIndex,p}function Lyt(u){return jm?Vr(jm.call(u)):{}}function xJ(u,p){var x=p?SO(u.buffer):u.buffer;return new u.constructor(x,u.byteOffset,u.length)}function bJ(u,p){if(u!==p){var x=u!==r,E=u===null,j=u===u,H=Ko(u),Q=p!==r,ne=p===null,ce=p===p,$e=Ko(p);if(!ne&&!$e&&!H&&u>p||H&&Q&&ce&&!ne&&!$e||E&&Q&&ce||!x&&ce||!j)return 1;if(!E&&!H&&!$e&&u=ne)return ce;var $e=x[E];return ce*($e=="desc"?-1:1)}}return u.index-p.index}function yJ(u,p,x,E){for(var j=-1,H=u.length,Q=x.length,ne=-1,ce=p.length,$e=oa(H-Q,0),Se=he(ce+$e),Ne=!E;++ne1?x[j-1]:r,Q=j>2?x[2]:r;for(H=u.length>3&&typeof H=="function"?(j--,H):r,Q&&no(x[0],x[1],Q)&&(H=j<3?r:H,j=1),p=Vr(p);++E-1?j[H?p[Q]:Q]:r}}function SJ(u){return Ys(function(p){var x=p.length,E=x,j=$i.prototype.thru;for(u&&p.reverse();E--;){var H=p[E];if(typeof H!="function")throw new Fi(i);if(j&&!Q&&HD(H)=="wrapper")var Q=new $i([],!0)}for(E=Q?E:x;++E1&&xr.reverse(),Se&&cene))return!1;var $e=H.get(u),Se=H.get(p);if($e&&Se)return $e==p&&Se==u;var Ne=-1,it=!0,wt=x&_?new Wd:r;for(H.set(u,p),H.set(p,u);++Ne1?"& ":"")+p[E],p=p.join(x>2?", ":" "),u.replace($t,`{ + */(function(e,t){(function(){var r,n="4.17.21",o=200,a="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",i="Expected a function",l="Invalid `variable` option passed into `_.template`",s="__lodash_hash_undefined__",c=500,d="__lodash_placeholder__",f=1,v=2,g=4,h=1,_=2,b=1,x=2,w=4,D=8,I=16,$=32,F=64,C=128,R=256,k=512,P=30,U="...",B=800,z=16,A=1,M=2,N=3,T=1/0,O=9007199254740991,j=17976931348623157e292,K=0/0,Q=4294967295,Y=Q-1,X=Q>>>1,G=[["ary",C],["bind",b],["bindKey",x],["curry",D],["curryRight",I],["flip",k],["partial",$],["partialRight",F],["rearg",R]],H="[object Arguments]",V="[object Array]",Z="[object AsyncFunction]",te="[object Boolean]",J="[object Date]",ne="[object DOMException]",re="[object Error]",ie="[object Function]",ce="[object GeneratorFunction]",oe="[object Map]",fe="[object Number]",ve="[object Null]",he="[object Object]",ge="[object Promise]",$e="[object Proxy]",ue="[object RegExp]",Me="[object Set]",Pe="[object String]",Qe="[object Symbol]",it="[object Undefined]",Je="[object WeakMap]",He="[object WeakSet]",Ce="[object ArrayBuffer]",Le="[object DataView]",ze="[object Float32Array]",ft="[object Float64Array]",pt="[object Int8Array]",wt="[object Int16Array]",st="[object Int32Array]",xt="[object Uint8Array]",we="[object Uint8ClampedArray]",Yt="[object Uint16Array]",Ut="[object Uint32Array]",Tt=/\b__p \+= '';/g,It=/\b(__p \+=) '' \+/g,at=/(__e\(.*?\)|\b__t\)) \+\n'';/g,vt=/&(?:amp|lt|gt|quot|#39);/g,et=/[&<>"']/g,qe=RegExp(vt.source),Ve=RegExp(et.source),Ke=/<%-([\s\S]+?)%>/g,Rt=/<%([\s\S]+?)%>/g,xe=/<%=([\s\S]+?)%>/g,Te=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,We=/^\w*$/,Xe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ot=/[\\^$.*+?()[\]{}|]/g,gt=RegExp(ot.source),Et=/^\s+/,Qt=/\s/,Ft=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ct=/\{\n\/\* \[wrapped with (.+)\] \*/,Bt=/,? & /,Mt=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,St=/[()=,{}\[\]\/\s]/,zt=/\\(\\)?/g,Jt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,vr=/\w*$/,fn=/^[-+]0x[0-9a-f]+$/i,Ae=/^0b[01]+$/i,ke=/^\[object .+?Constructor\]$/,ye=/^0o[0-7]+$/i,Ue=/^(?:0|[1-9]\d*)$/,ut=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ir=/($^)/,Rr=/['\n\r\u2028\u2029\\]/g,Qr="\\ud800-\\udfff",gr="\\u0300-\\u036f",sr="\\ufe20-\\ufe2f",er="\\u20d0-\\u20ff",Pr=gr+sr+er,Xt="\\u2700-\\u27bf",mr="a-z\\xdf-\\xf6\\xf8-\\xff",mn="\\xac\\xb1\\xd7\\xf7",Xo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",xn="\\u2000-\\u206f",Ya=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ai="A-Z\\xc0-\\xd6\\xd8-\\xde",su="\\ufe0e\\ufe0f",Js=mn+Xo+xn+Ya,Qd="['’]",WD="["+Qr+"]",Jd="["+Js+"]",ef="["+Pr+"]",px="\\d+",VD="["+Xt+"]",hv="["+mr+"]",KD="[^"+Qr+Js+px+Xt+mr+Ai+"]",vx="\\ud83c[\\udffb-\\udfff]",MR="(?:"+ef+"|"+vx+")",qD="[^"+Qr+"]",gx="(?:\\ud83c[\\udde6-\\uddff]){2}",hx="[\\ud800-\\udbff][\\udc00-\\udfff]",cu="["+Ai+"]",wr="\\u200d",Ot="(?:"+hv+"|"+KD+")",yt="(?:"+cu+"|"+KD+")",At="(?:"+Qd+"(?:d|ll|m|re|s|t|ve))?",cr="(?:"+Qd+"(?:D|LL|M|RE|S|T|VE))?",Gr=MR+"?",An="["+su+"]?",Zo="(?:"+wr+"(?:"+[qD,gx,hx].join("|")+")"+An+Gr+")*",Ga="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",uu="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",YD=An+Gr+Zo,$yt="(?:"+[VD,gx,hx].join("|")+")"+YD,Eyt="(?:"+[qD+ef+"?",ef,gx,hx,WD].join("|")+")",Syt=RegExp(Qd,"g"),Cyt=RegExp(ef,"g"),zR=RegExp(vx+"(?="+vx+")|"+Eyt+YD,"g"),Tyt=RegExp([cu+"?"+hv+"+"+At+"(?="+[Jd,cu,"$"].join("|")+")",yt+"+"+cr+"(?="+[Jd,cu+Ot,"$"].join("|")+")",cu+"?"+Ot+"+"+At,cu+"+"+cr,uu,Ga,px,$yt].join("|"),"g"),Ryt=RegExp("["+wr+Qr+Pr+su+"]"),Oyt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Ayt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],kyt=-1,pn={};pn[ze]=pn[ft]=pn[pt]=pn[wt]=pn[st]=pn[xt]=pn[we]=pn[Yt]=pn[Ut]=!0,pn[H]=pn[V]=pn[Ce]=pn[te]=pn[Le]=pn[J]=pn[re]=pn[ie]=pn[oe]=pn[fe]=pn[he]=pn[ue]=pn[Me]=pn[Pe]=pn[Je]=!1;var an={};an[H]=an[V]=an[Ce]=an[Le]=an[te]=an[J]=an[ze]=an[ft]=an[pt]=an[wt]=an[st]=an[oe]=an[fe]=an[he]=an[ue]=an[Me]=an[Pe]=an[Qe]=an[xt]=an[we]=an[Yt]=an[Ut]=!0,an[re]=an[ie]=an[Je]=!1;var Pyt={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Nyt={"&":"&","<":"<",">":">",'"':""","'":"'"},Myt={"&":"&","<":"<",">":">",""":'"',"'":"'"},zyt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Lyt=parseFloat,Byt=parseInt,RJ=typeof Bn=="object"&&Bn&&Bn.Object===Object&&Bn,jyt=typeof self=="object"&&self&&self.Object===Object&&self,Po=RJ||jyt||Function("return this")(),LR=t&&!t.nodeType&&t,tf=LR&&!0&&e&&!e.nodeType&&e,OJ=tf&&tf.exports===LR,BR=OJ&&RJ.process,ki=function(){try{var de=tf&&tf.require&&tf.require("util").types;return de||BR&&BR.binding&&BR.binding("util")}catch{}}(),AJ=ki&&ki.isArrayBuffer,kJ=ki&&ki.isDate,PJ=ki&&ki.isMap,NJ=ki&&ki.isRegExp,MJ=ki&&ki.isSet,zJ=ki&&ki.isTypedArray;function Xa(de,Fe,me){switch(me.length){case 0:return de.call(Fe);case 1:return de.call(Fe,me[0]);case 2:return de.call(Fe,me[0],me[1]);case 3:return de.call(Fe,me[0],me[1],me[2])}return de.apply(Fe,me)}function Uyt(de,Fe,me,ht){for(var tr=-1,kr=de==null?0:de.length;++tr-1}function jR(de,Fe,me){for(var ht=-1,tr=de==null?0:de.length;++ht-1;);return me}function KJ(de,Fe){for(var me=de.length;me--&&_v(Fe,de[me],0)>-1;);return me}function Zyt(de,Fe){for(var me=de.length,ht=0;me--;)de[me]===Fe&&++ht;return ht}var Qyt=VR(Pyt),Jyt=VR(Nyt);function e1t(de){return"\\"+zyt[de]}function t1t(de,Fe){return de==null?r:de[Fe]}function mv(de){return Ryt.test(de)}function r1t(de){return Oyt.test(de)}function n1t(de){for(var Fe,me=[];!(Fe=de.next()).done;)me.push(Fe.value);return me}function GR(de){var Fe=-1,me=Array(de.size);return de.forEach(function(ht,tr){me[++Fe]=[tr,ht]}),me}function qJ(de,Fe){return function(me){return de(Fe(me))}}function pu(de,Fe){for(var me=-1,ht=de.length,tr=0,kr=[];++me-1}function W1t(u,p){var y=this.__data__,S=fI(y,u);return S<0?(++this.size,y.push([u,p])):y[S][1]=p,this}ec.prototype.clear=B1t,ec.prototype.delete=j1t,ec.prototype.get=U1t,ec.prototype.has=H1t,ec.prototype.set=W1t;function tc(u){var p=-1,y=u==null?0:u.length;for(this.clear();++p=p?u:p)),u}function zi(u,p,y,S,L,q){var ee,le=p&f,pe=p&v,Re=p&g;if(y&&(ee=L?y(u,S,L,q):y(u)),ee!==r)return ee;if(!kn(u))return u;var Oe=nr(u);if(Oe){if(ee=Ywt(u),!le)return Sa(u,ee)}else{var Be=Jo(u),lt=Be==ie||Be==ce;if(xu(u))return Cee(u,le);if(Be==he||Be==H||lt&&!L){if(ee=pe||lt?{}:Yee(u),!le)return pe?Mwt(u,iwt(ee,u)):Nwt(u,aee(ee,u))}else{if(!an[Be])return L?u:{};ee=Gwt(u,Be,le)}}q||(q=new Dl);var Dt=q.get(u);if(Dt)return Dt;q.set(u,ee),Dte(u)?u.forEach(function(Wt){ee.add(zi(Wt,p,y,Wt,u,q))}):yte(u)&&u.forEach(function(Wt,xr){ee.set(xr,zi(Wt,p,y,xr,u,q))});var Ht=Re?pe?yO:bO:pe?Ta:Io,dr=Oe?r:Ht(u);return Pi(dr||u,function(Wt,xr){dr&&(xr=Wt,Wt=u[xr]),Dx(ee,xr,zi(Wt,p,y,xr,u,q))}),ee}function lwt(u){var p=Io(u);return function(y){return iee(y,u,p)}}function iee(u,p,y){var S=y.length;if(u==null)return!S;for(u=Jr(u);S--;){var L=y[S],q=p[L],ee=u[L];if(ee===r&&!(L in u)||!q(ee))return!1}return!0}function lee(u,p,y){if(typeof u!="function")throw new Ni(i);return Tx(function(){u.apply(r,y)},p)}function Ix(u,p,y,S){var L=-1,q=GD,ee=!0,le=u.length,pe=[],Re=p.length;if(!le)return pe;y&&(p=bn(p,Za(y))),S?(q=jR,ee=!1):p.length>=o&&(q=_x,ee=!1,p=new of(p));e:for(;++LL?0:L+y),S=S===r||S>L?L:ur(S),S<0&&(S+=L),S=y>S?0:Fte(S);y0&&y(le)?p>1?No(le,p-1,y,S,L):fu(L,le):S||(L[L.length]=le)}return L}var rO=Pee(),uee=Pee(!0);function cs(u,p){return u&&rO(u,p,Io)}function nO(u,p){return u&&uee(u,p,Io)}function vI(u,p){return du(p,function(y){return ic(u[y])})}function lf(u,p){p=_u(p,u);for(var y=0,S=p.length;u!=null&&yp}function uwt(u,p){return u!=null&&Vr.call(u,p)}function dwt(u,p){return u!=null&&p in Jr(u)}function fwt(u,p,y){return u>=Qo(p,y)&&u=120&&Oe.length>=120)?new of(ee&&Oe):r}Oe=u[0];var Be=-1,lt=le[0];e:for(;++Be-1;)le!==u&&aI.call(le,pe,1),aI.call(u,pe,1);return u}function yee(u,p){for(var y=u?p.length:0,S=y-1;y--;){var L=p[y];if(y==S||L!==q){var q=L;ac(L)?aI.call(u,L,1):pO(u,L)}}return u}function uO(u,p){return u+sI(tee()*(p-u+1))}function Fwt(u,p,y,S){for(var L=-1,q=vo(lI((p-u)/(y||1)),0),ee=me(q);q--;)ee[S?q:++L]=u,u+=y;return ee}function dO(u,p){var y="";if(!u||p<1||p>O)return y;do p%2&&(y+=u),p=sI(p/2),p&&(u+=u);while(p);return y}function pr(u,p){return SO(Zee(u,p,Ra),u+"")}function $wt(u){return oee(Cv(u))}function Ewt(u,p){var y=Cv(u);return FI(y,af(p,0,y.length))}function Ex(u,p,y,S){if(!kn(u))return u;p=_u(p,u);for(var L=-1,q=p.length,ee=q-1,le=u;le!=null&&++LL?0:L+p),y=y>L?L:y,y<0&&(y+=L),L=p>y?0:y-p>>>0,p>>>=0;for(var q=me(L);++S>>1,ee=u[q];ee!==null&&!Ja(ee)&&(y?ee<=p:ee=o){var Re=p?null:jwt(u);if(Re)return ZD(Re);ee=!1,L=_x,pe=new of}else pe=p?[]:le;e:for(;++S=S?u:Li(u,p,y)}var See=m1t||function(u){return Po.clearTimeout(u)};function Cee(u,p){if(p)return u.slice();var y=u.length,S=XJ?XJ(y):new u.constructor(y);return u.copy(S),S}function _O(u){var p=new u.constructor(u.byteLength);return new nI(p).set(new nI(u)),p}function Owt(u,p){var y=p?_O(u.buffer):u.buffer;return new u.constructor(y,u.byteOffset,u.byteLength)}function Awt(u){var p=new u.constructor(u.source,vr.exec(u));return p.lastIndex=u.lastIndex,p}function kwt(u){return wx?Jr(wx.call(u)):{}}function Tee(u,p){var y=p?_O(u.buffer):u.buffer;return new u.constructor(y,u.byteOffset,u.length)}function Ree(u,p){if(u!==p){var y=u!==r,S=u===null,L=u===u,q=Ja(u),ee=p!==r,le=p===null,pe=p===p,Re=Ja(p);if(!le&&!Re&&!q&&u>p||q&&ee&&pe&&!le&&!Re||S&&ee&&pe||!y&&pe||!L)return 1;if(!S&&!q&&!Re&&u=le)return pe;var Re=y[S];return pe*(Re=="desc"?-1:1)}}return u.index-p.index}function Oee(u,p,y,S){for(var L=-1,q=u.length,ee=y.length,le=-1,pe=p.length,Re=vo(q-ee,0),Oe=me(pe+Re),Be=!S;++le1?y[L-1]:r,ee=L>2?y[2]:r;for(q=u.length>3&&typeof q=="function"?(L--,q):r,ee&&la(y[0],y[1],ee)&&(q=L<3?r:q,L=1),p=Jr(p);++S-1?L[q?p[ee]:ee]:r}}function zee(u){return oc(function(p){var y=p.length,S=y,L=Mi.prototype.thru;for(u&&p.reverse();S--;){var q=p[S];if(typeof q!="function")throw new Ni(i);if(L&&!ee&&DI(q)=="wrapper")var ee=new Mi([],!0)}for(S=ee?S:y;++S1&&Dr.reverse(),Oe&&pele))return!1;var Re=q.get(u),Oe=q.get(p);if(Re&&Oe)return Re==p&&Oe==u;var Be=-1,lt=!0,Dt=y&_?new of:r;for(q.set(u,p),q.set(p,u);++Be1?"& ":"")+p[S],p=p.join(y>2?", ":" "),u.replace(Ft,`{ /* [wrapped with `+p+`] */ -`)}function t1t(u){return tr(u)||Gd(u)||!!(UQ&&u&&u[UQ])}function Gs(u,p){var x=typeof u;return p=p??L,!!p&&(x=="number"||x!="symbol"&&Le.test(u))&&u>-1&&u%1==0&&u0){if(++p>=A)return arguments[0]}else p=0;return u.apply(r,arguments)}}function VD(u,p){var x=-1,E=u.length,j=E-1;for(p=p===r?E:p;++x1?u[p-1]:r;return x=typeof x=="function"?(u.pop(),x):r,QJ(u,x)});function JJ(u){var p=U(u);return p.__chain__=!0,p}function fwt(u,p){return p(u),u}function KD(u,p){return p(u)}var pwt=Ys(function(u){var p=u.length,x=p?u[0]:0,E=this.__wrapped__,j=function(H){return dO(H,u)};return p>1||this.__actions__.length||!(E instanceof hr)||!Gs(x)?this.thru(j):(E=E.slice(x,+x+(p?1:0)),E.__actions__.push({func:KD,args:[j],thisArg:r}),new $i(E,this.__chain__).thru(function(H){return p&&!H.length&&H.push(r),H}))});function vwt(){return JJ(this)}function hwt(){return new $i(this.value(),this.__chain__)}function gwt(){this.__values__===r&&(this.__values__=pee(this.value()));var u=this.__index__>=this.__values__.length,p=u?r:this.__values__[this.__index__++];return{done:u,value:p}}function _wt(){return this}function mwt(u){for(var p,x=this;x instanceof RD;){var E=KJ(x);E.__index__=0,E.__values__=r,p?j.__wrapped__=E:p=E;var j=E;x=x.__wrapped__}return j.__wrapped__=u,p}function xwt(){var u=this.__wrapped__;if(u instanceof hr){var p=u;return this.__actions__.length&&(p=new hr(this)),p=p.reverse(),p.__actions__.push({func:KD,args:[zO],thisArg:r}),new $i(p,this.__chain__)}return this.thru(zO)}function bwt(){return hJ(this.__wrapped__,this.__actions__)}var ywt=LD(function(u,p,x){Lr.call(u,x)?++u[x]:Ks(u,x,1)});function wwt(u,p,x){var E=tr(u)?EQ:fyt;return x&&no(u,p,x)&&(p=r),E(u,zt(p,3))}function Dwt(u,p){var x=tr(u)?tu:QQ;return x(u,zt(p,3))}var Iwt=$J(qJ),Fwt=$J(YJ);function $wt(u,p){return Ra(qD(u,p),1)}function Swt(u,p){return Ra(qD(u,p),B)}function Ewt(u,p,x){return x=x===r?1:ir(x),Ra(qD(u,p),x)}function eee(u,p){var x=tr(u)?Ii:ou;return x(u,zt(p,3))}function tee(u,p){var x=tr(u)?qbt:ZQ;return x(u,zt(p,3))}var Cwt=LD(function(u,p,x){Lr.call(u,x)?u[x].push(p):Ks(u,x,[p])});function Twt(u,p,x,E){u=Do(u)?u:_v(u),x=x&&!E?ir(x):0;var j=u.length;return x<0&&(x=oa(j+x,0)),QD(u)?x<=j&&u.indexOf(p,x)>-1:!!j&&ov(u,p,x)>-1}var Rwt=ur(function(u,p,x){var E=-1,j=typeof p=="function",H=Do(u)?he(u.length):[];return ou(u,function(Q){H[++E]=j?Ho(p,Q,x):Wm(Q,p,x)}),H}),Owt=LD(function(u,p,x){Ks(u,x,p)});function qD(u,p){var x=tr(u)?pn:aJ;return x(u,zt(p,3))}function Awt(u,p,x,E){return u==null?[]:(tr(p)||(p=p==null?[]:[p]),x=E?r:x,tr(x)||(x=x==null?[]:[x]),sJ(u,p,x))}var kwt=LD(function(u,p,x){u[x?0:1].push(p)},function(){return[[],[]]});function Pwt(u,p,x){var E=tr(u)?QR:OQ,j=arguments.length<3;return E(u,zt(p,4),x,j,ou)}function Nwt(u,p,x){var E=tr(u)?Ybt:OQ,j=arguments.length<3;return E(u,zt(p,4),x,j,ZQ)}function Mwt(u,p){var x=tr(u)?tu:QQ;return x(u,XD(zt(p,3)))}function Lwt(u){var p=tr(u)?qQ:Tyt;return p(u)}function zwt(u,p,x){(x?no(u,p,x):p===r)?p=1:p=ir(p);var E=tr(u)?lyt:Ryt;return E(u,p)}function Bwt(u){var p=tr(u)?syt:Ayt;return p(u)}function jwt(u){if(u==null)return 0;if(Do(u))return QD(u)?lv(u):u.length;var p=Va(u);return p==oe||p==Be?u.size:_O(u).length}function Uwt(u,p,x){var E=tr(u)?JR:kyt;return x&&no(u,p,x)&&(p=r),E(u,zt(p,3))}var Hwt=ur(function(u,p){if(u==null)return[];var x=p.length;return x>1&&no(u,p[0],p[1])?p=[]:x>2&&no(p[0],p[1],p[2])&&(p=[p[0]]),sJ(u,Ra(p,1),[])}),YD=D0t||function(){return Ta.Date.now()};function Wwt(u,p){if(typeof p!="function")throw new Fi(i);return u=ir(u),function(){if(--u<1)return p.apply(this,arguments)}}function ree(u,p,x){return p=x?r:p,p=u&&p==null?u.length:p,qs(u,C,r,r,r,r,p)}function nee(u,p){var x;if(typeof p!="function")throw new Fi(i);return u=ir(u),function(){return--u>0&&(x=p.apply(this,arguments)),u<=1&&(p=r),x}}var jO=ur(function(u,p,x){var E=w;if(x.length){var j=nu(x,hv(jO));E|=S}return qs(u,E,p,x,j)}),aee=ur(function(u,p,x){var E=w|b;if(x.length){var j=nu(x,hv(aee));E|=S}return qs(p,E,u,x,j)});function oee(u,p,x){p=x?r:p;var E=qs(u,D,r,r,r,r,r,p);return E.placeholder=oee.placeholder,E}function iee(u,p,x){p=x?r:p;var E=qs(u,F,r,r,r,r,r,p);return E.placeholder=iee.placeholder,E}function lee(u,p,x){var E,j,H,Q,ne,ce,$e=0,Se=!1,Ne=!1,it=!0;if(typeof u!="function")throw new Fi(i);p=Ti(p)||0,Fn(x)&&(Se=!!x.leading,Ne="maxWait"in x,H=Ne?oa(Ti(x.maxWait)||0,p):H,it="trailing"in x?!!x.trailing:it);function wt(jn){var hl=E,Qs=j;return E=j=r,$e=jn,Q=u.apply(Qs,hl),Q}function Ut(jn){return $e=jn,ne=Gm(pr,p),Se?wt(jn):Q}function cr(jn){var hl=jn-ce,Qs=jn-$e,$ee=p-hl;return Ne?Wa($ee,H-Qs):$ee}function Ht(jn){var hl=jn-ce,Qs=jn-$e;return ce===r||hl>=p||hl<0||Ne&&Qs>=H}function pr(){var jn=YD();if(Ht(jn))return xr(jn);ne=Gm(pr,cr(jn))}function xr(jn){return ne=r,it&&E?wt(jn):(E=j=r,Q)}function qo(){ne!==r&&_J(ne),$e=0,E=ce=j=ne=r}function ao(){return ne===r?Q:xr(YD())}function Yo(){var jn=YD(),hl=Ht(jn);if(E=arguments,j=this,ce=jn,hl){if(ne===r)return Ut(ce);if(Ne)return _J(ne),ne=Gm(pr,p),wt(ce)}return ne===r&&(ne=Gm(pr,p)),Q}return Yo.cancel=qo,Yo.flush=ao,Yo}var Vwt=ur(function(u,p){return XQ(u,1,p)}),Kwt=ur(function(u,p,x){return XQ(u,Ti(p)||0,x)});function qwt(u){return qs(u,P)}function GD(u,p){if(typeof u!="function"||p!=null&&typeof p!="function")throw new Fi(i);var x=function(){var E=arguments,j=p?p.apply(this,E):E[0],H=x.cache;if(H.has(j))return H.get(j);var Q=u.apply(this,E);return x.cache=H.set(j,Q)||H,Q};return x.cache=new(GD.Cache||Vs),x}GD.Cache=Vs;function XD(u){if(typeof u!="function")throw new Fi(i);return function(){var p=arguments;switch(p.length){case 0:return!u.call(this);case 1:return!u.call(this,p[0]);case 2:return!u.call(this,p[0],p[1]);case 3:return!u.call(this,p[0],p[1],p[2])}return!u.apply(this,p)}}function Ywt(u){return nee(2,u)}var Gwt=Pyt(function(u,p){p=p.length==1&&tr(p[0])?pn(p[0],Wo(zt())):pn(Ra(p,1),Wo(zt()));var x=p.length;return ur(function(E){for(var j=-1,H=Wa(E.length,x);++j=p}),Gd=tJ(function(){return arguments}())?tJ:function(u){return Rn(u)&&Lr.call(u,"callee")&&!jQ.call(u,"callee")},tr=he.isArray,uDt=wQ?Wo(wQ):myt;function Do(u){return u!=null&&ZD(u.length)&&!Xs(u)}function Bn(u){return Rn(u)&&Do(u)}function dDt(u){return u===!0||u===!1||Rn(u)&&ro(u)==te}var cu=F0t||JO,fDt=DQ?Wo(DQ):xyt;function pDt(u){return Rn(u)&&u.nodeType===1&&!Xm(u)}function vDt(u){if(u==null)return!0;if(Do(u)&&(tr(u)||typeof u=="string"||typeof u.splice=="function"||cu(u)||gv(u)||Gd(u)))return!u.length;var p=Va(u);if(p==oe||p==Be)return!u.size;if(Ym(u))return!_O(u).length;for(var x in u)if(Lr.call(u,x))return!1;return!0}function hDt(u,p){return Vm(u,p)}function gDt(u,p,x){x=typeof x=="function"?x:r;var E=x?x(u,p):r;return E===r?Vm(u,p,r,x):!!E}function HO(u){if(!Rn(u))return!1;var p=ro(u);return p==re||p==ae||typeof u.message=="string"&&typeof u.name=="string"&&!Xm(u)}function _Dt(u){return typeof u=="number"&&HQ(u)}function Xs(u){if(!Fn(u))return!1;var p=ro(u);return p==ie||p==ve||p==Z||p==De}function cee(u){return typeof u=="number"&&u==ir(u)}function ZD(u){return typeof u=="number"&&u>-1&&u%1==0&&u<=L}function Fn(u){var p=typeof u;return u!=null&&(p=="object"||p=="function")}function Rn(u){return u!=null&&typeof u=="object"}var uee=IQ?Wo(IQ):yyt;function mDt(u,p){return u===p||gO(u,p,AO(p))}function xDt(u,p,x){return x=typeof x=="function"?x:r,gO(u,p,AO(p),x)}function bDt(u){return dee(u)&&u!=+u}function yDt(u){if(a1t(u))throw new Qt(o);return rJ(u)}function wDt(u){return u===null}function DDt(u){return u==null}function dee(u){return typeof u=="number"||Rn(u)&&ro(u)==fe}function Xm(u){if(!Rn(u)||ro(u)!=le)return!1;var p=ID(u);if(p===null)return!0;var x=Lr.call(p,"constructor")&&p.constructor;return typeof x=="function"&&x instanceof x&&bD.call(x)==x0t}var WO=FQ?Wo(FQ):wyt;function IDt(u){return cee(u)&&u>=-L&&u<=L}var fee=$Q?Wo($Q):Dyt;function QD(u){return typeof u=="string"||!tr(u)&&Rn(u)&&ro(u)==Pe}function Ko(u){return typeof u=="symbol"||Rn(u)&&ro(u)==Ge}var gv=SQ?Wo(SQ):Iyt;function FDt(u){return u===r}function $Dt(u){return Rn(u)&&Va(u)==Ze}function SDt(u){return Rn(u)&&ro(u)==Ke}var EDt=UD(mO),CDt=UD(function(u,p){return u<=p});function pee(u){if(!u)return[];if(Do(u))return QD(u)?fl(u):wo(u);if(Mm&&u[Mm])return l0t(u[Mm]());var p=Va(u),x=p==oe?oO:p==Be?_D:_v;return x(u)}function Zs(u){if(!u)return u===0?u:0;if(u=Ti(u),u===B||u===-B){var p=u<0?-1:1;return p*K}return u===u?u:0}function ir(u){var p=Zs(u),x=p%1;return p===p?x?p-x:p:0}function vee(u){return u?Vd(ir(u),0,ee):0}function Ti(u){if(typeof u=="number")return u;if(Ko(u))return X;if(Fn(u)){var p=typeof u.valueOf=="function"?u.valueOf():u;u=Fn(p)?p+"":p}if(typeof u!="string")return u===0?u:+u;u=AQ(u);var x=It.test(u);return x||Me.test(u)?Wbt(u.slice(2),x?2:8):sn.test(u)?X:+u}function hee(u){return rs(u,Io(u))}function TDt(u){return u?Vd(ir(u),-L,L):u===0?u:0}function Rr(u){return u==null?"":Vo(u)}var RDt=pv(function(u,p){if(Ym(p)||Do(p)){rs(p,ha(p),u);return}for(var x in p)Lr.call(p,x)&&Um(u,x,p[x])}),gee=pv(function(u,p){rs(p,Io(p),u)}),JD=pv(function(u,p,x,E){rs(p,Io(p),u,E)}),ODt=pv(function(u,p,x,E){rs(p,ha(p),u,E)}),ADt=Ys(dO);function kDt(u,p){var x=fv(u);return p==null?x:YQ(x,p)}var PDt=ur(function(u,p){u=Vr(u);var x=-1,E=p.length,j=E>2?p[2]:r;for(j&&no(p[0],p[1],j)&&(E=1);++x1),H}),rs(u,RO(u),x),E&&(x=Si(x,f|v|h,Kyt));for(var j=p.length;j--;)DO(x,p[j]);return x});function JDt(u,p){return mee(u,XD(zt(p)))}var eIt=Ys(function(u,p){return u==null?{}:Syt(u,p)});function mee(u,p){if(u==null)return{};var x=pn(RO(u),function(E){return[E]});return p=zt(p),cJ(u,x,function(E,j){return p(E,j[0])})}function tIt(u,p,x){p=lu(p,u);var E=-1,j=p.length;for(j||(j=1,u=r);++Ep){var E=u;u=p,p=E}if(x||u%1||p%1){var j=WQ();return Wa(u+j*(p-u+Hbt("1e-"+((j+"").length-1))),p)}return bO(u,p)}var fIt=vv(function(u,p,x){return p=p.toLowerCase(),u+(x?yee(p):p)});function yee(u){return qO(Rr(u).toLowerCase())}function wee(u){return u=Rr(u),u&&u.replace(St,r0t).replace(Abt,"")}function pIt(u,p,x){u=Rr(u),p=Vo(p);var E=u.length;x=x===r?E:Vd(ir(x),0,E);var j=x;return x-=p.length,x>=0&&u.slice(x,j)==p}function vIt(u){return u=Rr(u),u&&mt.test(u)?u.replace(qe,n0t):u}function hIt(u){return u=Rr(u),u&&Ae.test(u)?u.replace(Ve,"\\$&"):u}var gIt=vv(function(u,p,x){return u+(x?"-":"")+p.toLowerCase()}),_It=vv(function(u,p,x){return u+(x?" ":"")+p.toLowerCase()}),mIt=FJ("toLowerCase");function xIt(u,p,x){u=Rr(u),p=ir(p);var E=p?lv(u):0;if(!p||E>=p)return u;var j=(p-E)/2;return jD(ED(j),x)+u+jD(SD(j),x)}function bIt(u,p,x){u=Rr(u),p=ir(p);var E=p?lv(u):0;return p&&E>>0,x?(u=Rr(u),u&&(typeof p=="string"||p!=null&&!WO(p))&&(p=Vo(p),!p&&iv(u))?su(fl(u),0,x):u.split(p,x)):[]}var SIt=vv(function(u,p,x){return u+(x?" ":"")+qO(p)});function EIt(u,p,x){return u=Rr(u),x=x==null?0:Vd(ir(x),0,u.length),p=Vo(p),u.slice(x,x+p.length)==p}function CIt(u,p,x){var E=U.templateSettings;x&&no(u,p,x)&&(p=r),u=Rr(u),p=JD({},p,E,OJ);var j=JD({},p.imports,E.imports,OJ),H=ha(j),Q=aO(j,H),ne,ce,$e=0,Se=p.interpolate||fr,Ne="__p += '",it=iO((p.escape||fr).source+"|"+Se.source+"|"+(Se===Qe?Ca:fr).source+"|"+(p.evaluate||fr).source+"|$","g"),wt="//# sourceURL="+(Lr.call(p,"sourceURL")?(p.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Lbt+"]")+` -`;u.replace(it,function(Ht,pr,xr,qo,ao,Yo){return xr||(xr=qo),Ne+=u.slice($e,Yo).replace(Et,a0t),pr&&(ne=!0,Ne+=`' + -__e(`+pr+`) + -'`),ao&&(ce=!0,Ne+=`'; -`+ao+`; -__p += '`),xr&&(Ne+=`' + -((__t = (`+xr+`)) == null ? '' : __t) + -'`),$e=Yo+Ht.length,Ht}),Ne+=`'; -`;var Ut=Lr.call(p,"variable")&&p.variable;if(!Ut)Ne=`with (obj) { -`+Ne+` +`)}function Zwt(u){return nr(u)||uf(u)||!!(JJ&&u&&u[JJ])}function ac(u,p){var y=typeof u;return p=p??O,!!p&&(y=="number"||y!="symbol"&&Ue.test(u))&&u>-1&&u%1==0&&u0){if(++p>=B)return arguments[0]}else p=0;return u.apply(r,arguments)}}function FI(u,p){var y=-1,S=u.length,L=S-1;for(p=p===r?S:p;++y1?u[p-1]:r;return y=typeof y=="function"?(u.pop(),y):r,cte(u,y)});function ute(u){var p=W(u);return p.__chain__=!0,p}function sIt(u,p){return p(u),u}function $I(u,p){return p(u)}var cIt=oc(function(u){var p=u.length,y=p?u[0]:0,S=this.__wrapped__,L=function(q){return tO(q,u)};return p>1||this.__actions__.length||!(S instanceof br)||!ac(y)?this.thru(L):(S=S.slice(y,+y+(p?1:0)),S.__actions__.push({func:$I,args:[L],thisArg:r}),new Mi(S,this.__chain__).thru(function(q){return p&&!q.length&&q.push(r),q}))});function uIt(){return ute(this)}function dIt(){return new Mi(this.value(),this.__chain__)}function fIt(){this.__values__===r&&(this.__values__=Ite(this.value()));var u=this.__index__>=this.__values__.length,p=u?r:this.__values__[this.__index__++];return{done:u,value:p}}function pIt(){return this}function vIt(u){for(var p,y=this;y instanceof dI;){var S=nte(y);S.__index__=0,S.__values__=r,p?L.__wrapped__=S:p=S;var L=S;y=y.__wrapped__}return L.__wrapped__=u,p}function gIt(){var u=this.__wrapped__;if(u instanceof br){var p=u;return this.__actions__.length&&(p=new br(this)),p=p.reverse(),p.__actions__.push({func:$I,args:[CO],thisArg:r}),new Mi(p,this.__chain__)}return this.thru(CO)}function hIt(){return $ee(this.__wrapped__,this.__actions__)}var _It=mI(function(u,p,y){Vr.call(u,y)?++u[y]:rc(u,y,1)});function mIt(u,p,y){var S=nr(u)?LJ:swt;return y&&la(u,p,y)&&(p=r),S(u,jt(p,3))}function xIt(u,p){var y=nr(u)?du:cee;return y(u,jt(p,3))}var bIt=Mee(ote),yIt=Mee(ate);function wIt(u,p){return No(EI(u,p),1)}function DIt(u,p){return No(EI(u,p),T)}function IIt(u,p,y){return y=y===r?1:ur(y),No(EI(u,p),y)}function dte(u,p){var y=nr(u)?Pi:gu;return y(u,jt(p,3))}function fte(u,p){var y=nr(u)?Hyt:see;return y(u,jt(p,3))}var FIt=mI(function(u,p,y){Vr.call(u,y)?u[y].push(p):rc(u,y,[p])});function $It(u,p,y,S){u=Ca(u)?u:Cv(u),y=y&&!S?ur(y):0;var L=u.length;return y<0&&(y=vo(L+y,0)),OI(u)?y<=L&&u.indexOf(p,y)>-1:!!L&&_v(u,p,y)>-1}var EIt=pr(function(u,p,y){var S=-1,L=typeof p=="function",q=Ca(u)?me(u.length):[];return gu(u,function(ee){q[++S]=L?Xa(p,ee,y):Fx(ee,p,y)}),q}),SIt=mI(function(u,p,y){rc(u,y,p)});function EI(u,p){var y=nr(u)?bn:gee;return y(u,jt(p,3))}function CIt(u,p,y,S){return u==null?[]:(nr(p)||(p=p==null?[]:[p]),y=S?r:y,nr(y)||(y=y==null?[]:[y]),xee(u,p,y))}var TIt=mI(function(u,p,y){u[y?0:1].push(p)},function(){return[[],[]]});function RIt(u,p,y){var S=nr(u)?UR:HJ,L=arguments.length<3;return S(u,jt(p,4),y,L,gu)}function OIt(u,p,y){var S=nr(u)?Wyt:HJ,L=arguments.length<3;return S(u,jt(p,4),y,L,see)}function AIt(u,p){var y=nr(u)?du:cee;return y(u,TI(jt(p,3)))}function kIt(u){var p=nr(u)?oee:$wt;return p(u)}function PIt(u,p,y){(y?la(u,p,y):p===r)?p=1:p=ur(p);var S=nr(u)?nwt:Ewt;return S(u,p)}function NIt(u){var p=nr(u)?owt:Cwt;return p(u)}function MIt(u){if(u==null)return 0;if(Ca(u))return OI(u)?xv(u):u.length;var p=Jo(u);return p==oe||p==Me?u.size:lO(u).length}function zIt(u,p,y){var S=nr(u)?HR:Twt;return y&&la(u,p,y)&&(p=r),S(u,jt(p,3))}var LIt=pr(function(u,p){if(u==null)return[];var y=p.length;return y>1&&la(u,p[0],p[1])?p=[]:y>2&&la(p[0],p[1],p[2])&&(p=[p[0]]),xee(u,No(p,1),[])}),SI=x1t||function(){return Po.Date.now()};function BIt(u,p){if(typeof p!="function")throw new Ni(i);return u=ur(u),function(){if(--u<1)return p.apply(this,arguments)}}function pte(u,p,y){return p=y?r:p,p=u&&p==null?u.length:p,nc(u,C,r,r,r,r,p)}function vte(u,p){var y;if(typeof p!="function")throw new Ni(i);return u=ur(u),function(){return--u>0&&(y=p.apply(this,arguments)),u<=1&&(p=r),y}}var RO=pr(function(u,p,y){var S=b;if(y.length){var L=pu(y,Ev(RO));S|=$}return nc(u,S,p,y,L)}),gte=pr(function(u,p,y){var S=b|x;if(y.length){var L=pu(y,Ev(gte));S|=$}return nc(p,S,u,y,L)});function hte(u,p,y){p=y?r:p;var S=nc(u,D,r,r,r,r,r,p);return S.placeholder=hte.placeholder,S}function _te(u,p,y){p=y?r:p;var S=nc(u,I,r,r,r,r,r,p);return S.placeholder=_te.placeholder,S}function mte(u,p,y){var S,L,q,ee,le,pe,Re=0,Oe=!1,Be=!1,lt=!0;if(typeof u!="function")throw new Ni(i);p=ji(p)||0,kn(y)&&(Oe=!!y.leading,Be="maxWait"in y,q=Be?vo(ji(y.maxWait)||0,p):q,lt="trailing"in y?!!y.trailing:lt);function Dt(Yn){var Fl=S,sc=L;return S=L=r,Re=Yn,ee=u.apply(sc,Fl),ee}function Ht(Yn){return Re=Yn,le=Tx(xr,p),Oe?Dt(Yn):ee}function dr(Yn){var Fl=Yn-pe,sc=Yn-Re,Mte=p-Fl;return Be?Qo(Mte,q-sc):Mte}function Wt(Yn){var Fl=Yn-pe,sc=Yn-Re;return pe===r||Fl>=p||Fl<0||Be&&sc>=q}function xr(){var Yn=SI();if(Wt(Yn))return Dr(Yn);le=Tx(xr,dr(Yn))}function Dr(Yn){return le=r,lt&&S?Dt(Yn):(S=L=r,ee)}function ei(){le!==r&&See(le),Re=0,S=pe=L=le=r}function sa(){return le===r?ee:Dr(SI())}function ti(){var Yn=SI(),Fl=Wt(Yn);if(S=arguments,L=this,pe=Yn,Fl){if(le===r)return Ht(pe);if(Be)return See(le),le=Tx(xr,p),Dt(pe)}return le===r&&(le=Tx(xr,p)),ee}return ti.cancel=ei,ti.flush=sa,ti}var jIt=pr(function(u,p){return lee(u,1,p)}),UIt=pr(function(u,p,y){return lee(u,ji(p)||0,y)});function HIt(u){return nc(u,k)}function CI(u,p){if(typeof u!="function"||p!=null&&typeof p!="function")throw new Ni(i);var y=function(){var S=arguments,L=p?p.apply(this,S):S[0],q=y.cache;if(q.has(L))return q.get(L);var ee=u.apply(this,S);return y.cache=q.set(L,ee)||q,ee};return y.cache=new(CI.Cache||tc),y}CI.Cache=tc;function TI(u){if(typeof u!="function")throw new Ni(i);return function(){var p=arguments;switch(p.length){case 0:return!u.call(this);case 1:return!u.call(this,p[0]);case 2:return!u.call(this,p[0],p[1]);case 3:return!u.call(this,p[0],p[1],p[2])}return!u.apply(this,p)}}function WIt(u){return vte(2,u)}var VIt=Rwt(function(u,p){p=p.length==1&&nr(p[0])?bn(p[0],Za(jt())):bn(No(p,1),Za(jt()));var y=p.length;return pr(function(S){for(var L=-1,q=Qo(S.length,y);++L=p}),uf=fee(function(){return arguments}())?fee:function(u){return Ln(u)&&Vr.call(u,"callee")&&!QJ.call(u,"callee")},nr=me.isArray,iFt=AJ?Za(AJ):vwt;function Ca(u){return u!=null&&RI(u.length)&&!ic(u)}function qn(u){return Ln(u)&&Ca(u)}function lFt(u){return u===!0||u===!1||Ln(u)&&ia(u)==te}var xu=y1t||HO,sFt=kJ?Za(kJ):gwt;function cFt(u){return Ln(u)&&u.nodeType===1&&!Rx(u)}function uFt(u){if(u==null)return!0;if(Ca(u)&&(nr(u)||typeof u=="string"||typeof u.splice=="function"||xu(u)||Sv(u)||uf(u)))return!u.length;var p=Jo(u);if(p==oe||p==Me)return!u.size;if(Cx(u))return!lO(u).length;for(var y in u)if(Vr.call(u,y))return!1;return!0}function dFt(u,p){return $x(u,p)}function fFt(u,p,y){y=typeof y=="function"?y:r;var S=y?y(u,p):r;return S===r?$x(u,p,r,y):!!S}function AO(u){if(!Ln(u))return!1;var p=ia(u);return p==re||p==ne||typeof u.message=="string"&&typeof u.name=="string"&&!Rx(u)}function pFt(u){return typeof u=="number"&&eee(u)}function ic(u){if(!kn(u))return!1;var p=ia(u);return p==ie||p==ce||p==Z||p==$e}function bte(u){return typeof u=="number"&&u==ur(u)}function RI(u){return typeof u=="number"&&u>-1&&u%1==0&&u<=O}function kn(u){var p=typeof u;return u!=null&&(p=="object"||p=="function")}function Ln(u){return u!=null&&typeof u=="object"}var yte=PJ?Za(PJ):_wt;function vFt(u,p){return u===p||iO(u,p,DO(p))}function gFt(u,p,y){return y=typeof y=="function"?y:r,iO(u,p,DO(p),y)}function hFt(u){return wte(u)&&u!=+u}function _Ft(u){if(eDt(u))throw new tr(a);return pee(u)}function mFt(u){return u===null}function xFt(u){return u==null}function wte(u){return typeof u=="number"||Ln(u)&&ia(u)==fe}function Rx(u){if(!Ln(u)||ia(u)!=he)return!1;var p=oI(u);if(p===null)return!0;var y=Vr.call(p,"constructor")&&p.constructor;return typeof y=="function"&&y instanceof y&&eI.call(y)==g1t}var kO=NJ?Za(NJ):mwt;function bFt(u){return bte(u)&&u>=-O&&u<=O}var Dte=MJ?Za(MJ):xwt;function OI(u){return typeof u=="string"||!nr(u)&&Ln(u)&&ia(u)==Pe}function Ja(u){return typeof u=="symbol"||Ln(u)&&ia(u)==Qe}var Sv=zJ?Za(zJ):bwt;function yFt(u){return u===r}function wFt(u){return Ln(u)&&Jo(u)==Je}function DFt(u){return Ln(u)&&ia(u)==He}var IFt=wI(sO),FFt=wI(function(u,p){return u<=p});function Ite(u){if(!u)return[];if(Ca(u))return OI(u)?wl(u):Sa(u);if(mx&&u[mx])return n1t(u[mx]());var p=Jo(u),y=p==oe?GR:p==Me?ZD:Cv;return y(u)}function lc(u){if(!u)return u===0?u:0;if(u=ji(u),u===T||u===-T){var p=u<0?-1:1;return p*j}return u===u?u:0}function ur(u){var p=lc(u),y=p%1;return p===p?y?p-y:p:0}function Fte(u){return u?af(ur(u),0,Q):0}function ji(u){if(typeof u=="number")return u;if(Ja(u))return K;if(kn(u)){var p=typeof u.valueOf=="function"?u.valueOf():u;u=kn(p)?p+"":p}if(typeof u!="string")return u===0?u:+u;u=WJ(u);var y=Ae.test(u);return y||ye.test(u)?Byt(u.slice(2),y?2:8):fn.test(u)?K:+u}function $te(u){return us(u,Ta(u))}function $Ft(u){return u?af(ur(u),-O,O):u===0?u:0}function Nr(u){return u==null?"":Qa(u)}var EFt=Fv(function(u,p){if(Cx(p)||Ca(p)){us(p,Io(p),u);return}for(var y in p)Vr.call(p,y)&&Dx(u,y,p[y])}),Ete=Fv(function(u,p){us(p,Ta(p),u)}),AI=Fv(function(u,p,y,S){us(p,Ta(p),u,S)}),SFt=Fv(function(u,p,y,S){us(p,Io(p),u,S)}),CFt=oc(tO);function TFt(u,p){var y=Iv(u);return p==null?y:aee(y,p)}var RFt=pr(function(u,p){u=Jr(u);var y=-1,S=p.length,L=S>2?p[2]:r;for(L&&la(p[0],p[1],L)&&(S=1);++y1),q}),us(u,yO(u),y),S&&(y=zi(y,f|v|g,Uwt));for(var L=p.length;L--;)pO(y,p[L]);return y});function GFt(u,p){return Cte(u,TI(jt(p)))}var XFt=oc(function(u,p){return u==null?{}:Dwt(u,p)});function Cte(u,p){if(u==null)return{};var y=bn(yO(u),function(S){return[S]});return p=jt(p),bee(u,y,function(S,L){return p(S,L[0])})}function ZFt(u,p,y){p=_u(p,u);var S=-1,L=p.length;for(L||(L=1,u=r);++Sp){var S=u;u=p,p=S}if(y||u%1||p%1){var L=tee();return Qo(u+L*(p-u+Lyt("1e-"+((L+"").length-1))),p)}return uO(u,p)}var s2t=$v(function(u,p,y){return p=p.toLowerCase(),u+(y?Ote(p):p)});function Ote(u){return MO(Nr(u).toLowerCase())}function Ate(u){return u=Nr(u),u&&u.replace(ut,Qyt).replace(Cyt,"")}function c2t(u,p,y){u=Nr(u),p=Qa(p);var S=u.length;y=y===r?S:af(ur(y),0,S);var L=y;return y-=p.length,y>=0&&u.slice(y,L)==p}function u2t(u){return u=Nr(u),u&&Ve.test(u)?u.replace(et,Jyt):u}function d2t(u){return u=Nr(u),u&>.test(u)?u.replace(ot,"\\$&"):u}var f2t=$v(function(u,p,y){return u+(y?"-":"")+p.toLowerCase()}),p2t=$v(function(u,p,y){return u+(y?" ":"")+p.toLowerCase()}),v2t=Nee("toLowerCase");function g2t(u,p,y){u=Nr(u),p=ur(p);var S=p?xv(u):0;if(!p||S>=p)return u;var L=(p-S)/2;return yI(sI(L),y)+u+yI(lI(L),y)}function h2t(u,p,y){u=Nr(u),p=ur(p);var S=p?xv(u):0;return p&&S>>0,y?(u=Nr(u),u&&(typeof p=="string"||p!=null&&!kO(p))&&(p=Qa(p),!p&&mv(u))?mu(wl(u),0,y):u.split(p,y)):[]}var D2t=$v(function(u,p,y){return u+(y?" ":"")+MO(p)});function I2t(u,p,y){return u=Nr(u),y=y==null?0:af(ur(y),0,u.length),p=Qa(p),u.slice(y,y+p.length)==p}function F2t(u,p,y){var S=W.templateSettings;y&&la(u,p,y)&&(p=r),u=Nr(u),p=AI({},p,S,Hee);var L=AI({},p.imports,S.imports,Hee),q=Io(L),ee=YR(L,q),le,pe,Re=0,Oe=p.interpolate||ir,Be="__p += '",lt=XR((p.escape||ir).source+"|"+Oe.source+"|"+(Oe===xe?Jt:ir).source+"|"+(p.evaluate||ir).source+"|$","g"),Dt="//# sourceURL="+(Vr.call(p,"sourceURL")?(p.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++kyt+"]")+` +`;u.replace(lt,function(Wt,xr,Dr,ei,sa,ti){return Dr||(Dr=ei),Be+=u.slice(Re,ti).replace(Rr,e1t),xr&&(le=!0,Be+=`' + +__e(`+xr+`) + +'`),sa&&(pe=!0,Be+=`'; +`+sa+`; +__p += '`),Dr&&(Be+=`' + +((__t = (`+Dr+`)) == null ? '' : __t) + +'`),Re=ti+Wt.length,Wt}),Be+=`'; +`;var Ht=Vr.call(p,"variable")&&p.variable;if(!Ht)Be=`with (obj) { +`+Be+` } -`;else if(Mt.test(Ut))throw new Qt(l);Ne=(ce?Ne.replace(nt,""):Ne).replace(Ft,"$1").replace(lt,"$1;"),Ne="function("+(Ut||"obj")+`) { -`+(Ut?"":`obj || (obj = {}); -`)+"var __t, __p = ''"+(ne?", __e = _.escape":"")+(ce?`, __j = Array.prototype.join; +`;else if(St.test(Ht))throw new tr(l);Be=(pe?Be.replace(Tt,""):Be).replace(It,"$1").replace(at,"$1;"),Be="function("+(Ht||"obj")+`) { +`+(Ht?"":`obj || (obj = {}); +`)+"var __t, __p = ''"+(le?", __e = _.escape":"")+(pe?`, __j = Array.prototype.join; function print() { __p += __j.call(arguments, '') } `:`; -`)+Ne+`return __p -}`;var cr=Iee(function(){return Er(H,wt+"return "+Ne).apply(r,Q)});if(cr.source=Ne,HO(cr))throw cr;return cr}function TIt(u){return Rr(u).toLowerCase()}function RIt(u){return Rr(u).toUpperCase()}function OIt(u,p,x){if(u=Rr(u),u&&(x||p===r))return AQ(u);if(!u||!(p=Vo(p)))return u;var E=fl(u),j=fl(p),H=kQ(E,j),Q=PQ(E,j)+1;return su(E,H,Q).join("")}function AIt(u,p,x){if(u=Rr(u),u&&(x||p===r))return u.slice(0,MQ(u)+1);if(!u||!(p=Vo(p)))return u;var E=fl(u),j=PQ(E,fl(p))+1;return su(E,0,j).join("")}function kIt(u,p,x){if(u=Rr(u),u&&(x||p===r))return u.replace(Fe,"");if(!u||!(p=Vo(p)))return u;var E=fl(u),j=kQ(E,fl(p));return su(E,j).join("")}function PIt(u,p){var x=O,E=N;if(Fn(p)){var j="separator"in p?p.separator:j;x="length"in p?ir(p.length):x,E="omission"in p?Vo(p.omission):E}u=Rr(u);var H=u.length;if(iv(u)){var Q=fl(u);H=Q.length}if(x>=H)return u;var ne=x-lv(E);if(ne<1)return E;var ce=Q?su(Q,0,ne).join(""):u.slice(0,ne);if(j===r)return ce+E;if(Q&&(ne+=ce.length-ne),WO(j)){if(u.slice(ne).search(j)){var $e,Se=ce;for(j.global||(j=iO(j.source,Rr(Zn.exec(j))+"g")),j.lastIndex=0;$e=j.exec(Se);)var Ne=$e.index;ce=ce.slice(0,Ne===r?ne:Ne)}}else if(u.indexOf(Vo(j),ne)!=ne){var it=ce.lastIndexOf(j);it>-1&&(ce=ce.slice(0,it))}return ce+E}function NIt(u){return u=Rr(u),u&&dt.test(u)?u.replace(Ie,d0t):u}var MIt=vv(function(u,p,x){return u+(x?" ":"")+p.toUpperCase()}),qO=FJ("toUpperCase");function Dee(u,p,x){return u=Rr(u),p=x?r:p,p===r?i0t(u)?v0t(u):Zbt(u):u.match(p)||[]}var Iee=ur(function(u,p){try{return Ho(u,r,p)}catch(x){return HO(x)?x:new Qt(x)}}),LIt=Ys(function(u,p){return Ii(p,function(x){x=ns(x),Ks(u,x,jO(u[x],u))}),u});function zIt(u){var p=u==null?0:u.length,x=zt();return u=p?pn(u,function(E){if(typeof E[1]!="function")throw new Fi(i);return[x(E[0]),E[1]]}):[],ur(function(E){for(var j=-1;++jL)return[];var x=ee,E=Wa(u,ee);p=zt(p),u-=ee;for(var j=nO(E,p);++x0||p<0)?new hr(x):(u<0?x=x.takeRight(-u):u&&(x=x.drop(u)),p!==r&&(p=ir(p),x=p<0?x.dropRight(-p):x.take(p-u)),x)},hr.prototype.takeRightWhile=function(u){return this.reverse().takeWhile(u).reverse()},hr.prototype.toArray=function(){return this.take(ee)},ts(hr.prototype,function(u,p){var x=/^(?:filter|find|map|reject)|While$/.test(p),E=/^(?:head|last)$/.test(p),j=U[E?"take"+(p=="last"?"Right":""):p],H=E||/^find/.test(p);j&&(U.prototype[p]=function(){var Q=this.__wrapped__,ne=E?[1]:arguments,ce=Q instanceof hr,$e=ne[0],Se=ce||tr(Q),Ne=function(pr){var xr=j.apply(U,ru([pr],ne));return E&&it?xr[0]:xr};Se&&x&&typeof $e=="function"&&$e.length!=1&&(ce=Se=!1);var it=this.__chain__,wt=!!this.__actions__.length,Ut=H&&!it,cr=ce&&!wt;if(!H&&Se){Q=cr?Q:new hr(this);var Ht=u.apply(Q,ne);return Ht.__actions__.push({func:KD,args:[Ne],thisArg:r}),new $i(Ht,it)}return Ut&&cr?u.apply(this,ne):(Ht=this.thru(Ne),Ut?E?Ht.value()[0]:Ht.value():Ht)})}),Ii(["pop","push","shift","sort","splice","unshift"],function(u){var p=mD[u],x=/^(?:push|sort|unshift)$/.test(u)?"tap":"thru",E=/^(?:pop|shift)$/.test(u);U.prototype[u]=function(){var j=arguments;if(E&&!this.__chain__){var H=this.value();return p.apply(tr(H)?H:[],j)}return this[x](function(Q){return p.apply(tr(Q)?Q:[],j)})}}),ts(hr.prototype,function(u,p){var x=U[p];if(x){var E=x.name+"";Lr.call(dv,E)||(dv[E]=[]),dv[E].push({name:p,func:x})}}),dv[zD(r,b).name]=[{name:"wrapper",func:r}],hr.prototype.clone=N0t,hr.prototype.reverse=M0t,hr.prototype.value=L0t,U.prototype.at=pwt,U.prototype.chain=vwt,U.prototype.commit=hwt,U.prototype.next=gwt,U.prototype.plant=mwt,U.prototype.reverse=xwt,U.prototype.toJSON=U.prototype.valueOf=U.prototype.value=bwt,U.prototype.first=U.prototype.head,Mm&&(U.prototype[Mm]=_wt),U},sv=h0t();jd?((jd.exports=sv)._=sv,GR._=sv):Ta._=sv}).call(On)})(dae,Te);const fae={FDI_Please_Select:"Select",FDI_Please_Select_Field:"Select the field.",FDI_Relation_Field_Unmatched_Tip:"Field type mismatch.",FDI_Relation_Field_Miss_Tip:"Field missing.",FDI_I_Know:"OK",FDI_Business_Model:"Business Model",FDI_Global_Graph:"Global View",FDI_Relation_Disable_Tip:"After the association is disabled, all related resources will be affected. Disable it with caution.",FDI_Relation_Delete_Tip_Title:"Sure to delete the association?",FDI_Relation_Field_Delete_Tip:"Sure to perform deletion? Restoration is impossible after deletion.",FDI_Create_Base_Table_Engine_Setting_Tip:"Attribute Setting of New Base Table (Database Table/SQL Tables/Excel Table)",FDI_Add_Resource_Duplicate:"The name of the added resource is duplicate.",FDI_Model_Empty:"No model exists. Create a model first.",FDI_Add_Resource_Duplicate_Tip:"Sorry, you cannot add the resource. The name of the resource you are trying to add already exists. Rename the resource and try again. The related resource is:",FDI_Modify_Model:"Edit Name/Description",FDI_Dimension_Management:"Dimension Management",FDI_Permission_Filter_Tip:"After this function is enabled, data which you do not have the permission to use will be hidden.",FDI_Relation_Disable_Tip_Title:"Sure to disable the association?",FDI_Table_No_Auth_Tip:"You lack the data use permission and cannot view data details.",FDI_Table_No_Auth_Preview_Tip:"You lack the data use permission and cannot view data details. Apply for the permission first.",FDI_Data_No_Auth:"You do not have the management permission.",FDI_Create_Time:"Creation Time",FDI_Update_Task_Management:"Update Task Management",FDI_Data_Center:"Data Center",FDI_Data_Catalogue:"Data Directory",FDI_Add_Table:"Add Table",FDI_Analysis_Table:"Self-Service Dataset",FDI_DB_Table:"Database Table",FDI_Sql_Table:"SQL Dataset",FDI_Excel_Table:"Excel Dataset",FDI_ETL_Table:"ETL Dataset",FDI_Modify_SQL:"Modify SQL",FDI_Modify_Config:"Modify Config",FDI_Update_Excel:"Update Excel",FDI_Enter_Analysis:"Enter My Analysis",FDI_Enter_Model_Center:"Enter Model Center",FDI_Create_Analysis:"Create Analysis Subject",FDI_Add_To_Analysis:"Add to Analysis Subject",FDI_Lastly_Edit:"Last Edited",FDI_My_Analysis:"My Analysis",FDI_Coop_Group:"Collaborated With Me",FDI_Subject:"Analysis Subject",FDI_Add_To_Subject_Tip:"Which analysis subject do you want to add to?",FDI_Subject_Lock_Add_Error_Tip:"Failed to be added. The analysis subject is being edited.",FDI_Update_Progress:"Update Progress",FDI_Folder_Update:"Folder Update",FDI_Update_Status:"Update Status",FDI_Sort_By_Time:"Rank by Creation Time",FDI_Sort_By_Name:"Rank by Name",FDI_All:"All",FDI_Table:"Dataset",FDI_Load_More:"Load More",FDI_Permission_Filter:"Permission Filter",FDI_Table_No_Auth_Fields_Tip:"You lack permissions on some fields and cannot view these fields.",FDI_Apply_Use:"Apply for Use",FDI_Apply_Auth:"Apply for Permission","FDI_{R1}_Update_Setting":"{R1} Update Setting",FDI_Move_To:"Move to",FDI_Multi_Move:"Batch Move","FDI_Move_{R1}_To":"Move {R1} to",FDI_Move_Success:"Moved successfully.",FDI_Move_Fail:"Failed to be moved.",FDI_Move_Fail_Prefix:"Failed to be moved.",FDI_Part_Move_Fail:"Some data failed to be moved.",FDI_All_Move_Fail:"Failed to be moved. Check the data status.",FDI_Data_Is_Editing:"The data is being edited.",FDI_Data_Published:"The data has been published.",FDI_Data_Absent:"The data does not exist.",FDI_Data_Duplicate:"The data name is duplicate.",FDI_Comment:"Remarks",FDI_Add_Comment:"Add Remark",FDI_Data_Preview:"Data Preview",FDI_Usage:"Data Lineage",FDI_Update_Info:"Update Information",FDI_Type:"Type",FDI_Data_Status:"Data Status",FDI_Data_Description:"Data Description",FDI_Editor:"Editor",FDI_Creator:"Creator",FDI_Related_Table_Name:"Related Table Name",FDI_Position:"Location",FDI_Position_With_Colon:"Location:",FDI_Origin_Name:"Original Name",FDI_Source:"Source","FDI_Last_Update_Time_{R1}":"Last Updated: {R1}","FDI_Table_Last_Edit_Time_{R1}":"Last Edited: {R1}",FDI_Cache_Setting:"Cache Setting",FDI_Global_Update:"Global Update",FDI_Global_Update_Setting:"Global Update Setting",FDI_Create_Base_Table_Engine_Setting:"Attribute Setting of New Base Table","FDI_Show_{R1}_Rows_Total_{R2}":"{R1} Record(s) Displayed; {R2} Record(s) in Total",FDI_Total_Rows:"Total {R1} Record(s)",FDI_Table_Preview_Limit_Tip:"Show {R1} Rows of Data from All Data Calculation Result",FDI_Table_Preview_Limit_Setting_Tip:"Number of Rows of Data to Show",FDI_Engine_Spider:"Extracted Data",FDI_Engine_Direct:"Direct-Connected Data",FDI_Model_Center:"Model Center",FDI_Delete_Model:"Delete Model",FDI_Model_Management:"Model Management",FDI_Indicator_Management:"Indicator Management",FDI_Add_Folder:"Add Folder",FDI_Advance_Setting:"Advanced Setting",FDI_Relation_Analysis_Direction:"Analysis Direction",FDI_Relation_Enable:"Enable Association",FDI_Delete_Relation:"Delete Association",FDI_Two_Way:"Bidirectional",FDI_Add_Relation_Field:"Add Multiple Association Fields",FDI_Dimension_Count:"Dimension Quantity",FDI_Formula_Editor_Title:"Edit Calculation Formula",FDI_Edit_Indicator:"Edit Indicator",FDI_Add_Dimension:"Add Dimension",FDI_Edit_Dimension:"Edit Dimension","Data_Fusion-Business-Model-Root":"All Business Models",FDI_Apply_Publish:"Apply for Publication",FDI_Data_Name:"Data Name",FDI_Data_Type:"Data Type",FDI_Applicant:"Applicant",FDI_Authority_Type:"Permission Type",FDI_Apply_Time:"Application Time",FDI_Apply_Info:"Application Info",FDI_Authorize_Detail:"Authorization Details",FDI_Review_Opinion:"Review Opinion",FDI_Current_Review_Status:"Current Review Status",FDI_Field:"Field",FDI_Reject:"Reject",FDI_Rejected:"Rejected",FDI_Pass:"Pass",FDI_Passed:"Passed",FDI_Wait_For_Approve:"To Be Reviewed",FDI_View:"View",FDI_View_Data:"View Data",FDI_Reapply:"Reapply",FDI_Item_Count_Per_Page:"Record(s)/Page",FDI_Department:"Department",FDI_Role:"Role",FDI_Relation_Delete_Tip:"After the association is deleted, all related resources will be affected. Delete it with caution.",FDI_Model_Delete_Tip_Title:"Sure to delete the model?",FDI_Edge_Show_Relation:"Display Association Attribute",FDI_Field_Name:"Original Name",FDI_Field_Description:"Field Description",FDI_Not_Empty:"The value cannot be empty.",FDI_Not_Special_Str:"The first character cannot be a special one.",FDI_Not_To_Exceed:"Within",FDI_Business_Model_Name:"Business Model Name",FDI_Edit_Business_Model:"Edit Business Model",FDI_Last_Edit_Time:"Last Edit Time",FDI_Action:"Operation",FDI_Related_Dimension:"Related Dimension",FDI_Add_Failed:"Failed to be added.",FDI_Add_Resource:"Add Resource",FDI_Delete_Success:"Deleted successfully.",FDI_View_Detail:"View Details",FDI_Name:"Name",FDI_Description:"Description",FDI_Relation_Type:"Association",FDI_Table_Count:"Table Quantity",FDI_Indicator_Count:"Indicator Quantity","Data_Fusion-Index-Root":"All Indicators","Data_Fusion-Table-Root":"All Models","Data_Fusion-Dimension-Root":"All Dimensions",FDI_Data_Root:"All Data",FDI_Dimension_List:"Dimension List",FDI_Dimension_Name:"Dimension Name",FDI_Indicator:"Indicator",FDI_Field_Preview:"Field Preview",FDI_Resource_Type:"Resource Type",FDI_Apply_Reason:"Application Reason",FDI_I_Approved:"Reviewed by Me",FDI_Authority_Info:"Permission Info",FDI_Authorize_Info:"Authorization Info",FDI_Tag_Category:"Label Category","Data_Fusion-Table-Ungrouped":"Ungrouped Resource",FDI_Operation_Failed_Please_Refresh:"Operation failed. Re-log in and try again.",FDI_Resource_Add_Error:"Some of the selected resources failed to be added because their names are duplicate. Rename these resources and add them again.",FDI_Show_No_Auth_Fields:"Display Field Without Use Permission",FDI_Show_No_Related_Fields:"Display Unassociated Field",FDI_Tree_No_Hide_Tip:"Some dimensions and indicators can be hidden.",FDI_To_Apply_Use:"Apply for Use",FDI_No_Auth_Tip:"You cannot select dimensions or indicators because you do not have use permissions.",FDI_No_Related_Tip:"You cannot select dimensions or indicators because this field is not associated with the selected field.",FDI_Relation_Enable_Error:"The association cannot be enabled. Delete or disable the existing association of the current table first.",FDI_Add_Model:"Add Model",FDI_Unnamed_New_Model:"Unnamed New Model",FDI_Collapsed:"Collapse",FDI_Add_Relation:"Add Association",FDI_Edit_Relation:"Edit Association",FDI_Resource_Info:"Resource Info",FDI_Table_Has_Relation_Tip:"You have added one association for the current table and cannot add another again.",FDI_Table_Has_Imported_Tip:"The current table has been added and cannot be added again.",FDI_Table_Duplicate_Name_Tip:"The current table cannot be added because its name is the same as the name of an added table.",FDI_Resource_Empty_Please_Add:"No resource is available currently. Add resources first.",FDI_Please_Choose_Resource:"Select resources from the left.",FDI_Resource_List:"Resource List",FDI_Search_Resource:"Search Resource",FDI_Field_Type:"Field Type",FDI_Field_Transfer_Name:"Field Name",FDI_Field_Label:"Field Group",FDI_Not_Same_Name:"The name cannot be duplicate.",FDI_Operation_Failed:"Operation failed.",FDI_Rename:"Rename",FDI_Delete:"Delete",FDI_Edit:"Edit",FDI_Delete_Fail:"Failed to be deleted.",FDI_Delete_Fail_Prefix:"Deletion failed.",FDI_Part_Delete_Fail:"Some data failed to be deleted.",FDI_Chars:"Character(s)",FDI_Folder:"Folder",FDI_Delete_Confirm_Title:"Sure to delete the selected data or folder?",FDI_Catalog_Folder_Delete_Confirm_Title:"Delete Folder",FDI_Catalog_Table_Delete_Confirm_Title:"Delete Table",FDI_Catalog_Table_Delete_Confirm_Message:"After this dataset is deleted, associated self-service datasets/components/dashboards/analysis documents will also be affected. All configured row and column permissions and associations will be cleared and cannot be retrieved. Deleted resources can be retrieved from the creator's recycle bin. Sure to delete {R1}?",FDI_Business_Model_List:"Business Model List",FDI_Add_Business_Model:"Add Business Model",FDI_Business_Model_Count:"Business Model Quantity",FDI_Business_Model_Preview:"Business Model Preview",FDI_Select_Indicator:"Select Indicator",FDI_Select_Dimension:"Select Dimension",FDI_Last_Edit_User:"Last Editor",FDI_Table_Field_String:"Text",FDI_Table_Field_Number:"Value",FDI_Table_Field_Datetime:"Date",FDI_Indicator_List:"Indicator List",FDI_Add_Indicator:"Add Indicator",FDI_Search:"Search",FDI_Search_Plus:"Search Enhancement",FDI_Search_History_Empty:"No search record.",FDI_Tag:"Label",FDI_Data_Privilege:"Data Permission",FDI_Update_Time:"Update Time",FDI_Save:"Save",FDI_Search_Guide_Tip1:"🎉The search function has been completely upgraded.",FDI_Search_AI_Guide_Tip1:"🔥With AI support, you can search by daily expressions, which is smart and convenient.",FDI_Search_AI_Guide_Tip2:"🌰For example, indicators updated by Sam in Q1 2023.",FDI_Advanced_Search:"Advanced Search",FDI_Advanced_Search_Close_Tip:"After Advanced Search is disabled, AI Search is also disabled.",FDI_AI_Search:"AI Search",FDI_AI_Search_Tip:"After this function is enabled, you can search by daily expressions based on advanced search.",FDI_AI_Search_Open_Tip:"After AI Search is enabled, Advanced Search is also enabled.",FDI_AI_Path:"Host Address",FDI_Indicator_Info:"Indicator Info",FDI_Related_Indicator:"Related Indicator",FDI_Indicator_Total:"Total Number of Indicators",FDI_None:"None",FDI_Formula_Category_Function_Type_Math:"Value Function",FDI_Formula_Category_Function_Type_Datetime:"Date Function",FDI_Formula_Category_Function_Type_Text:"Text Function",FDI_Formula_Category_Function_Type_Logic:"Logic Function",FDI_Formula_Category_Function_Type_Agg:"Aggregation Function",FDI_Formula_Category_Function_Type_Table_Cal:"Quick Calculation Function",FDI_Formula_Category_Function_Type_Analysis:"Analysis Function",FDI_Function:"Function",FDI_Directory:"Directory",FDI_Indicator_Name:"Indicator Name",FDI_Calculate_Formula:"Calculation Formula",FDI_Click_Edit_Formula:"Click to Edit Formula",FDI_Dimension_Empty_Text:"Currently, no dimension is available. Create a dimension first.",FDI_Dimension_Total:"Total Number of Dimensions",FDI_Unnamed_New_Indicator:"Unnamed New Indicator",FDI_Select_All:"Select All",FDI_Dimension_Info:"Dimension Info",FDI_Unnamed_New_Dimension:"Unnamed New Dimension",FDI_Model_Not_Exist:"The model does not exist.",FDI_Indicator_Note_Exist:"The indicator does not exist.",FDI_Dimension_Not_Exist:"The dimension does not exist.",FDI_Business_Model_Not_Exit:"The business model does not exist.",FDI_Folder_Not_Exist:"The folder does not exist.",FDI_Table_Not_Exist:"The table does not exist.",FDI_Rename_Failed:"Failed to be renamed.",FDI_Exist_Duplicate_Name:"Operation failed. The name cannot be duplicate.",FDI_Folder_Levels_Over_limit:"The number of folder levels exceeds the limit.",FDI_Folder_Not_Move:"This folder cannot be moved.",FDI_Batch_Deal:"Batch Process",FDI_Cancel:"Cancel",FDI_Calculate_Empty:"The calculation result is empty.",FDI_Calculate_Error:"Calculation result error.",FDI_Data_Detail:"Data Details",FDI_Edit_Data_Detail:"Edit Data Details",FDI_Dimension:"Dimension",FDI_Tag_List:"Label List",FDI_Add_Tag:"Add Label",FDI_Tag_Empty_Text:"Currently, no label is available. Create a label first.",FDI_Tag_Total:"Total Number of Labels",FDI_Publish:"Publish",FDI_Publish_Apply:"Apply for Publication",FDI_Publish_Node:"Directory",FDI_Reviewer:"Reviewer",FDI_Apply_Remark:"Remarks",FDI_Please_Input:"Enter the value here.",FDI_Publish_Apply_Indicator_Name_Exist:"Indicators with duplicate names exist in the directory, causing publication failure.",FDI_Publish_Apply_Dimension_Name_Exist:"Dimensions with duplicate names exist in the directory, causing publication failure.",FDI_Publish_Apply_Business_Model_Name_Exist:"Business models with duplicate names exist in the directory, causing publication failure.",FDI_Cancel_Publish:"Unpublish",FDI_Confirm:"OK",FDI_Publish_Name:"Name",FDI_Apply_Opinion:"Application Opinion",FDI_Agree_Publish:"Agree to Publish",FDI_Reject_Apply:"Reject Application",FDI_Reject_Reason:"Rejection Reason",FDI_Dimension_Cancel_Publish_Confirm_Message:"After publication is canceled, all configured row and column permissions and associations will be cleared and cannot be retrieved. Related resources using the current dimension will be faulty.",FDI_Status:"Status",FDI_Published:"Published",FDI_Unpublish:"Unpublished",FDI_Checking:"Reviewing",FDI_Reviewers_Check_Failed:"The authorization permission on the current data of {R1} cannot be assigned.",FDI_Publish_Node_Not_Empty:"The directory cannot be empty.",FDI_Delete_Published_Resource_Warning:"Published resources in the selected item cannot be deleted.",FDI_Publish_Deal:"Publication Processing",FDI_Agree_Cancel_Publish:"Agree to Unpublish",FDI_Not_To_Exceed_Chars:"The length cannot exceed {R1} character(s).",FDI_Publish_Apply_Success:"Published successfully.",FDI_Publish_Apply_Success_Wait:"You have applied for publishing successfully. Wait for approval.",FDI_Publish_Cancel_Apply_Success:"Unpublished successfully.",FDI_Publish_Cancel_Apply_Success_Wait:"You have applied for unpublishing successfully. Wait for approval.",FDI_Publish_Apply_Fail:"Failed to apply for publishing.",FDI_Publish_Apply_Fail_Reviewer_Error:"Failed to apply for publishing. The reviewer permission is abnormal.",FDI_Publish_Apply_Fail_Status_Error:"Failed to apply for publishing. The current content has been published.",FDI_Publish_Cancel_Apply_Fail:"Failed to apply for unpublishing.",FDI_Publish_Cancel_Apply_Fail_Status_Error:"Failed to apply for unpublishing. The current content has been unpublished.",FDI_Related_Indicator_dimension:"Related Indicator/Dimension",FDI_View_All:"View All",FDI_Copy:"Copy",FDI_Import_Indicator:"Import Indicator",FDI_Import_Dimension:"Import Dimension",FDI_Batch_Import:"Batch Import",FDI_Import_Indicator_Empty_Text:"Currently, no indicator is available. Import an indicator first.",FDI_Import_Dimension_Empty_Text:"Currently, no dimension is available. Import a dimension first.",FDI_Authority_Apply_Review:"Permission Application Review",FDI_Authority_Apply:"Permission Application",FDI_Authority_Review:"Permission Review",FDI_Authorize_Target:"Authorization Object",FDI_Field_Authority:"Field Permission",FDI_View_Authority:"View Permission",FDI_Use_Authority:"Use Permission",FDI_I_Initiated:"Initiated by Me",FDI_Apply_Authority:"Requested Permission",FDI_Apply_Field:"Requested Field",FDI_Inherit_Field:"Inherited Field",FDI_Inherit_Table:"Inherited Dataset",FDI_Multipath_Setting:"Multipath Setting",FDI_Exit_Multipath_Setting:"Exit",FDI_Multipath_Setting_Changed_Warning:"Multipath information has been changed. You may need to update data.",FDI_Select_Path:"Select the path to be used.",FDI_Current_No_Multi_Path:"Currently, no multipath is available.",FDI_Review_Success:"Reviewed successfully.",FDI_View_Apply_Status:"View Application Status",FDI_Pass_Apply:"Pass Application",FDI_Apply_Success:"Applied successfully.",FDI_Upload_Fail_Tooltip:"Import failed due to file format mismatch.",FDI_Upload_Success_Tooltip:"Imported successfully. A total of {R1} resources are imported.",FDI_Save_Success:"Saved successfully.",FDI_Reviewer_Tooltip:"After the application is passed, the reviewer will obtain the authorization permission on the current data.",FDI_Publish_Checked_Error_Tooltip:"Failed to be published. Check the field.",FDI_Add_To:"Add to",FDI_Review_Failed:"Review failed.",FDI_Review_Failed_Apply_Not_Exist:"Review failed. The application does not exist.",FDI_Review_Failed_Already_Reviewed:"Review failed. The application has been reviewed.",FDI_Review_Failed_No_User_Authority:"Review failed. The user authorization permission is missing.",FDI_Review_Failed_Applicant_Not_Exist:"Review failed. The application does not exist or is disabled.",FDI_Review_Failed_Not_Current_Data_Reviewer:"Review failed. You are not the reviewer of the current data.",FDI_Apply_Failed:"Application failed.",FDI_Apply_Failed_Already_Apply:"Application failed. This permission has been applied for.",FDI_Apply_Failed_Empty_Reviewer:"Application failed. The reviewer is empty. Contact the administrator.",FDI_Apply_Failed_Resource_Not_Exist:"Application failed. The data does not exist.",FDI_No_Update_Time:"No update time.",FDI_No_View_Authority:"No view permission.",FDI_Data_Deleted:"The data has been deleted.",FDI_Field_Deleted:"The field has been deleted.",FDI_User_Deleted:"The user has been deleted.",FDI_Model_No_Use_Permission:"You do not have the permission to use the model center. Contact the administrator.",FDI_Relation_Analysis_Table_Disable:"Failed to configure the association. After Permission Inheritance is enabled, the association cannot be configured.",FDI_No_Edit_Authority:"No edit permission.",FDI_No_Authority:"No permission.","FDI_Source_Table_{R1}":"Source Table: {R1}",FDI_Clear:"Clear",FDI_Formula_Field_Invalid_Msg:"The {R1} field is not unique or does not exist.",FDI_Management:"Management",FDI_Tag_Management:"Label Management","Tag-Root":"All Labels",FDI_Tag_Name:"Label Name",FDI_Edit_Tag:"Edit Label",FDI_Unnamed_New_Tag:"Unnamed New Label",FDI_Tag_Description:"Label Description",FDI_Tag_Application:"Label Application",FDI_Extend_Field:"Extended Field",FDI_Add_Field:"Add Field",FDI_Unnamed_Field:"Unnamed Field",FDI_Please_Input_Field_Name:"Name the field here.",FDI_Type_Not_Support_Modify:"Currently, the type cannot be modified.",FDI_No_Extend_Field:"No extended field.",FDI_Delete_Tag_Confirm_Title:"Sure to delete this label?",FDI_Delete_Tag_Folder_Confirm_Title:"Sure to delete this folder?",FDI_Delete_Tag_Folder_Confirm_Message:"All labels in this folder will also be deleted, and data marked with these labels in the folder will be affected.",FDI_No_Data_Authority:"You do not have the permission on this data and cannot create a folder.",FDI_Model_Delete_Tip:"After the model is deleted, the model association cannot be retrieved, and related resources in the data directory will be faulty. Delete it with caution.",FDI_Jump_To_Other_Tip:"The current table is from another group. Sure to jump to the model association of another group?",FDI_Table_Inherit_Tip:"The current table for which Permission Inheritance has been enabled cannot be added.",FDI_All_Delete_Fail:"Deletion failed. Check the data status.",FDI_Delete_Confirm_Message:"After deletion, the data cannot be restored. All contents in the folder will be deleted together.",FDI_Catalog_Folder_Delete_Confirm_Message:"All resources in this folder will be deleted. Associated self-service datasets/components/dashboards/analysis documents will also be affected. All configured row and column permissions and associations will be cleared and cannot be retrieved. Deleted resources can be retrieved from the creator's recycle bin. Sure to delete {R1}?",FDI_Source_To_Target:"From Left Table to Right Table",FDI_Target_To_Source:"From Right Table to Left Table",FDI_Business_Model_Empty:"Currently, no business model is available. Add a business model first.",FDI_Business_Model_Description:"Business Model Description",FDI_Search_Correct_Tip:"{R1} has been displayed. Still search:",FDI_Search_Guide_Tip2:"👍 Currently, multi-keyword fuzzy search is supported, which allows you to search fields, labels, creators, and business descriptions at the same time.",FDI_Advanced_Search_Tip:"After this function is enabled, multi-keyword fuzzy search and enhanced search algorithms are supported.",FDI_Formula_Category_Function_Type_Common:"Common Function",FDI_Formula_Category_Function_Type_Other:"Other Functions",FDI_Indicator_Empty_Text:"Currently, no indicator is available. Create an indicator first.",FDI_Relation_Duplicate_Add:"Duplicate associations exist. Tables cannot be associated repeatedly.",FDI_Dimension_Formula_Invalid_Msg:"The result calculated by the dimension formula is invalid. The function cannot be an aggregation one.",FDI_Indicator_Formula_Invalid_Msg:"The result calculated by the indicator formula is invalid. The field cannot be of the date type or string type.",FDI_Reject_Reason_Placeholder:"The reason for rejecting the application is displayed in the user's publication message.",FDI_Cancel_Publish_Confirm_Title:"Sure to cancel publication?",FDI_Table_Cancel_Publish_Confirm_Message:"After this dataset is unpublished, all configured row and column permissions and associations will be cleared and cannot be retrieved.",FDI_Indicator_Cancel_Publish_Confirm_Message:"After publication is canceled, all configured row and column permissions and associations will be cleared and cannot be retrieved. Related resources using the current indicator will be faulty.",FDI_Business_Model_Cancel_Publish_Confirm_Message:"After publication is canceled, all configured row and column permissions and associations will be cleared and cannot be retrieved. Related resources using the current business model will be faulty.",FDI_Publish_Apply_Fail_Same_Type:"Failed to apply for publishing. The current content has been applied for publishing.",FDI_Publish_Cancel_Apply_Fail_Same_Type:"Failed to apply for unpublishing. The current content has been applied for unpublishing.",FDI_Publish_Cancel_Apply_Fail_Reviewer_Error:"Failed to apply for unpublishing. The reviewer permission is abnormal.",FDI_Authority_Inherit:"Permission Inheritance",FDI_Inherit_Field_Tip:"Permission Inheritance is enabled for the current data. Actually, field permissions are inherited.",FDI_No_Field_Select_Tip:"Select at least one field or click Reject.",FDI_Search_Result_Is_Empty:"The search result is empty.",FDI_Save_Import_Fail:"Failed to be saved. Check the import information.",FDI_Apply_Failed_Message:"Application failed. Check the application information.",FDI_Review_Failed_No_Data_Authority:"Review failed. The data authorization permission is missing.",FDI_Review_Failed_Resource_Not_Exist:"Review failed. The current data does not exist.",FDI_Apply_Failed_No_Reviewer:"Application failed. No reviewer is specified. Contact the administrator.",FDI_Pass_Failed_Deleted:"Failed to be passed. The object has been deleted. Deselect or reject the application.","FDI_No_Edit_Authority_{R1}":"No edit permission on {R1}.",FDI_Business_Model_Setting_Instruction:"Unrelated indicators and dimensions exist in the selected item. Clear them and select correct ones again.",FDI_Cannot_Add_Table_In_Root:"You cannot add tables to the root directory.",FDI_Please_Select_Field_Type:"Select the field type.",FDI_Delete_Tag_Confirm_Message:"Label deletion will affect data that has been marked with this label.",FDI_Tree_Hide_Tip:"Some dimensions and indicators have been hidden.",FDI_No_Auth_Or_Related_Tip:"Some fields are not available and are hidden due to lack of permissions or no association with the selected field."},pae={FDI_Please_Select_Field:"フィールドを選択してください",FDI_Relation_Field_Unmatched_Tip:"フィールドタイプがミスマッチ",FDI_Relation_Field_Miss_Tip:"フィールドが欠落",FDI_Add_Resource_Duplicate:"追加したリソースが重複した名前を持つ",FDI_Model_Center:"モデルセンター",FDI_Model_Empty:"現在モデルはありません。まずモデルを作成してください",FDI_Delete_Model:"モデルの削除",FDI_Modify_Model:"名前と説明を編集する",FDI_Indicator_Management:"指標管理",FDI_Model_Management:"モデル管理",FDI_Dimension_Management:"ディメンション管理",FDI_Global_Graph:"グローバルビュー",FDI_Relation_Enable_Error:"関係を有効にできません。まず、現在のテーブルの既存の関係を削除するか無効にしてください",FDI_Edit_Relation:"関係編集",FDI_Please_Choose_Resource:"左からリソースを選択してください",FDI_Add_Resource:"リソースの追加",FDI_Field_Type:"フィールドタイプ",FDI_Field_Name:"フィールド名",FDI_Field_Description:"フィールドの説明",FDI_Not_Empty:"空にすることはできません",FDI_Not_Special_Str:"最初の文字を特殊文字にすることはできない",FDI_Not_To_Exceed:"超過不可",FDI_Chars:"文字",FDI_Operation_Failed:"作業失敗",FDI_Rename:"リネーム",FDI_Delete:"削除",FDI_Edit:"編集",FDI_Folder:"ファイル",FDI_I_Know:"わかりました",FDI_Jump_To_Other_Tip:"現在のテーブルはグループ外のテーブルです。他のグループのモデル関係に移動しますか?",FDI_Business_Model:"ビジネスモデル",FDI_Add_Model:"モデルの追加",FDI_Add_Resource_Duplicate_Tip:"申し訳ありませんが、追加操作を完了できませんでした。 追加しようとしたリソース名はすでに存在します。リソース名を変更して、再度追加をお試しください。 関連のリソースは:",FDI_Relation_Disable_Tip_Title:"関係を解除しますか?",FDI_Unnamed_New_Model:"名づけない新しいモデル",FDI_Collapsed:"片付ける",FDI_Please_Select:"選択してください",FDI_Relation_Disable_Tip:"関係を解除すると、関連するすべてのリソースに影響が及びますので、解除は慎重に行ってください。",FDI_Relation_Delete_Tip_Title:"関係を解除しますか?",FDI_Add_Relation:"関係追加",FDI_Relation_Delete_Tip:"関係を解除すると、関連するすべてのリソースに影響が及びますので、解除は慎重に行ってください。",FDI_Relation_Field_Delete_Tip:"削除ますか? 削除後は復元できません",FDI_Model_Delete_Tip_Title:"モデルを削除しますか?",FDI_Edge_Show_Relation:"関係プロパティを表示する","Data_Fusion-Table-Ungrouped":"グループ化されていないリソース",FDI_Model_Delete_Tip:"モデルを削除した後、モデル関係を検索することはできず、データカタログのすべての関連リソースはエラーを報告します。 削除の際にはご注意ください。",FDI_Resource_Empty_Please_Add:"現在リソースはありません。まずリソースを追加してください",FDI_Resource_List:"リソースリスト",FDI_Search_Resource:"リソース検索",FDI_Resource_Add_Error:"選択した一部のリソースが重複して追加されませんでした。 リソース名を修正して再追加してください",FDI_Not_Same_Name:"同じ名前にすることはできません",FDI_Operation_Failed_Please_Refresh:"作業失敗。もう一度ログインしてやり直してください",FDI_Delete_Success:"正常に削除された",FDI_Delete_Confirm_Title:"選択したデータやフォルダを削除しますか?"},vae={FDI_Please_Select_Field:"필드를 선택해주십시오",FDI_Relation_Field_Miss_Tip:"필드 누락",FDI_Add_Resource_Duplicate:"중복된 리소스 추가",FDI_Model_Center:"모델 센터",FDI_Delete_Model:"모델 삭제",FDI_Indicator_Management:"지표 관리",FDI_Business_Model:"비즈니스 모델",FDI_Global_Graph:"전역 그래프",FDI_Model_Delete_Tip_Title:"모델을 삭제하시겠습니까?",FDI_Model_Delete_Tip:'FDI_Model_Delete_Tip"은 "모델을 삭제하면 모델 관계를 되돌릴 수 없으며 데이터 디렉토리의 관련 리소스가 오류가 발생합니다. 신중하게 삭제하십시오.',FDI_Resource_Add_Error:"선택한 일부 리소스가 중복되어 추가되지 않았습니다. 리소스 이름을 수정하고 다시 추가하세요",FDI_Add_Model:"모델 추가",FDI_Collapsed:"접기",FDI_Add_Relation:"관계 추가",FDI_Edit_Relation:"관계 편집",FDI_Edge_Show_Relation:"관계 속성 표시",FDI_Please_Choose_Resource:"왼쪽에서 리소스를 선택하세요",FDI_Resource_List:"리소스 목록",FDI_Add_Resource:"리소스 추가",FDI_Field_Type:"필드 유형",FDI_Field_Description:"필드 설명",FDI_Not_Empty:"비워둘수 없습니다",FDI_Not_To_Exceed:"초과할 수 없음",FDI_Chars:"문자",FDI_Operation_Failed:"작업 실패",FDI_Delete:"삭제",FDI_Edit:"편집",FDI_Folder:"폴더",FDI_Delete_Confirm_Title:"선택한 데이터나 폴더를 삭제하시겠습니까?",FDI_Add_Folder:"폴더 추가",FDI_Advance_Setting:"고급 설정",FDI_Delete_Success:"삭제 성공",FDI_Relation_Enable:"관계 활성화",FDI_Delete_Relation:"관계 삭제",FDI_Target_To_Source:"오른쪽 테이블에서 왼쪽 테이블로",FDI_Two_Way:"양방향",FDI_View_Detail:"세부 정보 보기",FDI_Description:"설명",FDI_Table_Count:"테이블 수",FDI_Business_Model_List:"비즈니스 모델 목록",FDI_Select_Indicator:"지표 선택",FDI_Select_Dimension:"차원 선택",FDI_Last_Edit_User:"최근 편집인",FDI_Table_Field_String:"텍스트",FDI_Table_Field_Datetime:"일자",FDI_Indicator_List:"지표 목록",FDI_Search:"검색",FDI_Indicator_Info:"지표 정보",FDI_Indicator_Total:"지표 총 수",FDI_None:"없음",FDI_Formula_Category_Function_Type_Math:"수치 함수",FDI_Formula_Category_Function_Type_Datetime:"날짜 함수",FDI_Formula_Category_Function_Type_Logic:"논리 함수",FDI_Formula_Category_Function_Type_Analysis:"분석 함수",FDI_Formula_Category_Function_Type_Other:"기타 함수",FDI_Function:"함수",FDI_Directory:"목록",FDI_Indicator_Name:"지표 이름",FDI_Calculate_Formula:"계산 공식",FDI_Click_Edit_Formula:"공식 편집을 누르세요",FDI_Formula_Editor_Title:"계산 공식 편집",FDI_Edit_Indicator:"지표 편집",FDI_Add_Dimension:"차원 추가",FDI_Dimension_List:"차원열 표",FDI_Dimension_Empty_Text:"현재 차원이 아직 없습니다. 우선 차원을 생성해주세요",FDI_Select_All:"전부 선택",FDI_Dimension_Name:"차원 이름",FDI_Unnamed_New_Indicator:"이름이 없는 새 지표",FDI_Model_Not_Exist:"모델이 존재하지 않습니다",FDI_Indicator_Note_Exist:"지표가 존재하지 않습니다",FDI_Dimension_Not_Exist:"차원이 존재하지 않습니다",FDI_Folder_Not_Exist:"폴더가 존재하지 않습니다",FDI_Table_Not_Exist:"테이블이 존재하지 않습니다",FDI_Rename_Failed:"이름 변경 실패",FDI_Add_Failed:"추가 실패",FDI_Relation_Duplicate_Add:"중복된 관계가 있습니다. 테이블 간에 중복된 관계를 설정할 수 없습니다",FDI_Folder_Not_Move:"이 폴더는 이동할 수 없습니다",FDI_Calculate_Empty:"계산이 비어있습니다",FDI_Field_Preview:"필드 미리보기",FDI_Resource_Type:"리소스 유형",FDI_Indicator:"지표",FDI_Please_Select:"선택해주십시오",FDI_Relation_Field_Delete_Tip:"삭제하시겠습니까? 삭제 후 복구하지 못합니다",FDI_Relation_Field_Unmatched_Tip:"필드 유형이 올바르지 않음",FDI_Add_Resource_Duplicate_Tip:"죄송합니다. 추가 작업을 완료할 수 없습니다. 시도하려는 리소스 이름이 이미 존재합니다. 리소스 이름을 변경한 다음 다시 시도하십시오. 관련 리소스는 다음과 같습니다:",FDI_Model_Empty:"일시적으로 모델이 없습니다. 먼저 모델을 생성하십시오",FDI_Modify_Model:"이름 및 설명 수정",FDI_I_Know:"알겠습니다",FDI_Model_Management:"모델 관리",FDI_Dimension_Management:"차원 관리",FDI_Relation_Disable_Tip_Title:"관계를 비활성화하시겠습니까?",FDI_Relation_Disable_Tip:"관계를 비활성화하면 관련 리소스에 영향을 줍니다. 신중하게 비활성화하십시오.",FDI_Relation_Delete_Tip_Title:"관계를 비활성화하시겠습니까?",FDI_Relation_Delete_Tip:'FDI_Relation_Delete_Tip"은 "관계를 비활성화하면 관련 리소스에 영향을 줍니다. 신중하게 비활성화하십시오.',FDI_Relation_Enable_Error:"관계를 활성화할 수 없습니다. 현재 테이블에 이미 있는 관계를 먼저 삭제하거나 비활성화하세요",FDI_Jump_To_Other_Tip:"현재 테이블은 그룹 외의 테이블입니다. 다른 그룹의 모델 관계로 이동하시겠습니까?",FDI_Unnamed_New_Model:"이름이 지정되지 않은 새 모델",FDI_Resource_Empty_Please_Add:"리소스가 비어 있습니다. 먼저 리소스를 추가하세요",FDI_Search_Resource:"리소스 검색",FDI_Field_Name:"필드 이름",FDI_Not_Special_Str:"첫 문자는 특수 문자일 수 없음",FDI_Not_Same_Name:"동일한 이름일 수 없음","Data_Fusion-Index-Root":"모든 지표",FDI_Operation_Failed_Please_Refresh:"작업 실패. 다시 로그인하여 다시 시도하세요",FDI_Rename:"이름 바꾸기","Data_Fusion-Table-Ungrouped":"분리되지 않은 리소스",FDI_Delete_Confirm_Message:"삭제 후에는 데이터를 복구할 수 없습니다. 폴더 내의 모든 항목이 함께 삭제됩니다.","Data_Fusion-Table-Root":"모든 모델",FDI_Relation_Type:"관계 유형","Data_Fusion-Dimension-Root":"모든 차원",FDI_Relation_Analysis_Direction:"관계 분석 방향","Data_Fusion-Business-Model-Root":"모든 업무 모델",FDI_Source_To_Target:"왼쪽 테이블에서 오른쪽 테이블로",FDI_Add_Relation_Field:"여러관련 필드 추가",FDI_Indicator_Empty_Text:"현재 지표가 없습니다. 지표를 새로이 추가해주세요",FDI_Name:"이름",FDI_Dimension_Total:"총 차원수",FDI_Indicator_Count:"지표 수",FDI_Dimension_Info:"차원 정보",FDI_Dimension_Count:"차원 수",FDI_Business_Model_Empty:"현재 비즈니스 모델이 없습니다. 먼저 비즈니스 모델을 추가하세요",FDI_Unnamed_New_Dimension:"이름 없는 차원",FDI_Add_Business_Model:"비즈니스 모델 추가",FDI_Business_Model_Count:"비즈니스 모델 수",FDI_Business_Model_Preview:"비즈니스 모델 미리보기",FDI_Indicator_Formula_Invalid_Msg:"지표 공식 계산 결과가 유효하지 않습니다. 날짜 형식이거나 문자열 형식이어서는 안 됩니다",FDI_Business_Model_Name:"비즈니스 모델 이름",FDI_Business_Model_Description:"비즈니스 모델 설명",FDI_Business_Model_Not_Exit:"비즈니스 모델이 존재하지 않습니다",FDI_Exist_Duplicate_Name:"중복된 이름이 존재합니다. 작업 실패",FDI_Edit_Business_Model:"비즈니스 모델 편집",FDI_Last_Edit_Time:"최근 편집 시간",FDI_Action:"작업",FDI_Table_Field_Number:"데이터값",FDI_Folder_Levels_Over_limit:"폴더의 수준이 제한을 초과합니다",FDI_Add_Indicator:"지표 추가",FDI_Batch_Deal:"일괄 처리",FDI_Related_Dimension:"관련 차원",FDI_Cancel:"취소",FDI_Formula_Category_Function_Type_Common:"일반 함수",FDI_Calculate_Error:"오류가 발생했습니다. 계산 결과에 오류가 발생했습니다…",FDI_Formula_Category_Function_Type_Text:"텍스트 함수",FDI_Formula_Category_Function_Type_Agg:"집계함수",FDI_Formula_Category_Function_Type_Table_Cal:"빠른 계산 함수",FDI_Dimension_Formula_Invalid_Msg:"차원 공식 계산 결과가 유효하지 않습니다. 집계 함수여서는 안 됩니다",FDI_Data_Detail:"데이터 상세",FDI_Dimension:"차원"},hae={FDI_Please_Select:"请选择",FDI_Please_Select_Field:"请选择字段",FDI_Relation_Field_Delete_Tip:"确认删除?删除后无法恢复",FDI_Relation_Field_Unmatched_Tip:"字段类型不匹配",FDI_Relation_Field_Miss_Tip:"字段丢失",FDI_Add_Resource_Duplicate:"添加资源有重名",FDI_Add_Resource_Duplicate_Tip:"抱歉,无法完成添加操作。您尝试添加的资源名称已存在,请修改资源名称再尝试添加。相关资源为:",FDI_Data_Center:"数据中心",FDI_Data_Catalogue:"数据目录",FDI_Add_Table:"添加表",FDI_Analysis_Table:"自助数据集",FDI_DB_Table:"数据库表",FDI_Sql_Table:"SQL数据集",FDI_Excel_Table:"Excel数据集",FDI_ETL_Table:"ETL数据集",FDI_Modify_SQL:"修改SQL",FDI_Modify_Config:"修改配置",FDI_Update_Excel:"更新Excel",FDI_Enter_Analysis:"进入我的分析",FDI_Enter_Model_Center:"进入模型中心",FDI_Create_Analysis:"创建分析主题",FDI_Add_To_Analysis:"添加到分析主题",FDI_Lastly_Edit:"最近编辑",FDI_My_Analysis:"我的分析",FDI_Coop_Group:"协作给我的",FDI_Subject:"分析主题",FDI_No_Tag:"无标签",FDI_Add_To_Subject_Tip:"要添加到哪个分析主题?",FDI_Subject_Lock_Add_Error_Tip:"添加失败,该分析主题正在被编辑",FDI_Tree_Hide_Tip:"已隐藏部分维度、指标",FDI_Tree_No_Hide_Tip:"隐藏部分维度、指标",FDI_Show_No_Auth_Fields:"显示无使用权限的字段",FDI_Show_No_Related_Fields:"显示无关联字段",FDI_View_Error:"查看失败",FDI_Table_No_Auth_Error_Tip:"没有该数据的查看权限",FDI_No_Auth_Or_Related_Tip:"由于缺少权限或与已选字段无关联,部分字段无法使用且已被隐藏。",FDI_No_Auth_Tip:"无法选择,无使用权限。",FDI_To_Apply_Use:"去申请使用",FDI_No_Related_Tip:"无法选择,该字段与已选字段无关联",FDI_Update_Progress:"更新进度",FDI_Folder_Update:"文件夹更新",FDI_Update_Status:"更新状态",FDI_Sort_By_Time:"按创建时间排序",FDI_Sort_By_Name:"按名称排序",FDI_All:"全部",FDI_Table:"数据集",FDI_Table_And_Model:"表/业务模型",FDI_Indicator_And_Dimension:"指标/维度",FDI_Next_Step:"下一步",FDI_Previous_Step:"上一步",FDI_Finish:"完成",FDI_More:"更多",FDI_Load_More:"加载更多",FDI_Permission_Filter:"权限过滤",FDI_Permission_Filter_Tip:"开启后将隐藏不具备使用权限的数据",FDI_Table_No_Auth_Tip:"缺少数据使用权限,无法查看数据明细",FDI_Table_No_Auth_Fields_Tip:"缺少部分字段权限,无法查看部分字段",FDI_Table_No_Auth_Preview_Tip:"缺少数据使用权限,无法查看数据明细,请先申请使用权限",FDI_Apply_Use:"申请使用",FDI_Apply_Auth:"申请权限","FDI_{R1}_Update_Setting":"{R1}更新设置",FDI_Move_To:"移动到",FDI_Multi_Move:"批量移动","FDI_Move_{R1}_To":"将{R1}移动到",FDI_Move_Success:"移动成功",FDI_Move_Fail:"移动失败",FDI_Move_Fail_Prefix:"移动失败,",FDI_Part_Move_Fail:"部分数据移动失败",FDI_All_Move_Fail:"移动失败,请检查数据状态",FDI_Data_Is_Editing:"该数据正在编辑",FDI_Data_Published:"该数据已发布",FDI_Data_Absent:"数据不存在",FDI_Data_Duplicate:"有数据重名",FDI_Data_No_Auth:"无管理权限",FDI_Comment:"备注",FDI_Add_Comment:"添加备注",FDI_Data_Preview:"数据预览",FDI_Usage:"血缘分析",FDI_Update_Info:"更新信息",FDI_Type:"类型",FDI_Data_Status:"数据状态",FDI_Data_Description:"数据描述",FDI_Editor:"编辑者",FDI_Creator:"创建者",FDI_Create_Time:"创建时间",FDI_Related_Table_Name:"相关表名",FDI_Position:"位置",FDI_Position_With_Colon:"位置:",FDI_Origin_Name:"原始名",FDI_Source:"来源","FDI_Last_Update_Time_{R1}":"最近更新:{R1}","FDI_Table_Last_Edit_Time_{R1}":"最近编辑:{R1}",FDI_Cache_Setting:"缓存设置",FDI_Update_Task_Management:"更新任务管理",FDI_Global_Update:"全局更新",FDI_Global_Update_Setting:"全局更新设置",FDI_Create_Base_Table_Engine_Setting:"新建基础表属性设置",FDI_Create_Base_Table_Engine_Setting_Tip:"新建基础表(数据库表、sql表、Excel表)的属性设置",FDI_Total_Rows:"共{R1}条","FDI_Show_{R1}_Rows_Total_{R2}":"显示{R1}条,共{R2}条",FDI_Table_Preview_Limit_Tip:"显示所有数据计算结果的{R1}行数据",FDI_Table_Preview_Limit_Setting_Tip:"显示行数设置",FDI_Engine_Spider:"抽取数据",FDI_Engine_Direct:"直连数据",FDI_Model_Center:"模型中心",FDI_Model_Empty:"暂时无模型, 请先创建模型",FDI_Delete_Model:"删除模型",FDI_Modify_Model:"编辑名称和描述",FDI_I_Know:"我知道了",FDI_Model_Management:"模型管理",FDI_Indicator_Management:"指标管理",FDI_Dimension_Management:"维度管理",FDI_Business_Model:"业务模型",FDI_Global_Graph:"全局视图",FDI_Relation_Disable_Tip_Title:"确认要停用关系吗?",FDI_Relation_Disable_Tip:"停用关系后,相关资源都将受到影响,请谨慎停用。",FDI_Relation_Delete_Tip_Title:"确认要删除关系吗?",FDI_Relation_Delete_Tip:"删除关系后,相关资源都将受到影响,请谨慎删除。","FDI_Model_Delete_Tip_Title_{R1}":"确认要删除“{R1}”吗?",FDI_Model_Delete_Tip:"删除模型后,模型关系无法找回,数据目录中的相关资源都将报错。如确定删除,请输入模型名称:",FDI_Relation_Enable_Error:"无法启用关系,请先删除或者停用当前表已有的关系",FDI_Resource_Add_Error:"选择的部分资源有重名无法添加成功,请修改资源名称再重新添加",FDI_Jump_To_Other_Tip:"当前表为分组外的表,确定跳转到其他分组的模型关系?",FDI_Add_Model:"添加模型",FDI_Unnamed_New_Model:"未命名新模型",FDI_Collapsed:"收起",FDI_Add_Relation:"添加关系",FDI_Edit_Relation:"编辑关系",FDI_Resource_Info:"资源信息",FDI_Table_Has_Relation_Tip:"当前表已添加过关系,不可重复添加",FDI_Table_Has_Imported_Tip:"当前表已添加,不可重复添加",FDI_Table_Inherit_Tip:"当前表开启了权限继承,不可添加",FDI_Table_Duplicate_Name_Tip:"当前表名称与已添加的表重名,不可添加",FDI_Edge_Show_Relation:"显示关系属性",FDI_Empty:"暂无数据",FDI_Resource_Empty_Please_Add:"暂时无资源, 请先添加资源",FDI_Please_Choose_Resource:"请从左侧选择资源",FDI_Resource_List:"资源列表",FDI_Add_Resource:"添加资源",FDI_Search_Resource:"搜索资源",FDI_Field_Type:"字段类型",FDI_Field_Transfer_Name:"字段名称",FDI_Field_Transfer_Name_Colon:"字段名称:",FDI_Field_Name:"原始名",FDI_Field_Description:"字段描述",FDI_Field_Label:"字段分组",FDI_Not_Empty:"不可为空",FDI_Not_Special_Str:"首个字符不可为特殊字符",FDI_Not_To_Exceed:"不可超过",FDI_Chars:"个字符",FDI_Not_Same_Name:"不可重名",FDI_Operation_Failed:"操作失败",FDI_Operation_Failed_Please_Refresh:"操作失败,请重新登陆后重试",FDI_Rename:"重命名",FDI_Delete:"删除",FDI_Edit:"编辑",FDI_Delete_Success:"删除成功",FDI_Delete_Fail:"删除失败",FDI_Delete_Fail_Prefix:"删除失败,",FDI_Part_Delete_Fail:"部分数据删除失败",FDI_All_Delete_Fail:"删除失败,请检查数据状态",FDI_Folder:"文件夹",FDI_Delete_Confirm_Title:"确定要删除所选数据或文件夹吗?",FDI_Delete_Confirm_Message:"删除后,数据无法恢复。文件夹内所有内容将被一起被删除。",FDI_Catalog_Folder_Delete_Confirm_Title:"删除文件夹",FDI_Catalog_Folder_Delete_Confirm_Message:"此文件夹内的所有资源都将被删除,相关联的自助数据集/组件/仪表板/分析文档也将受到影响,所有配置的行列权限和关联都将被清除无法找回,删除的资源可以从创建者的回收站中找回。确定删除“{R1}”?",FDI_Catalog_Table_Delete_Confirm_Title:"删除表",FDI_Catalog_Table_Delete_Confirm_Message:"此数据集删除后,相关联的自助数据集/组件/仪表板/分析文档也将受到影响,所有配置的行列权限和关联都将被清除无法找回,删除的资源可以从创建者的回收站中找回。确定删除“{R1}”?",FDI_Add_Folder:"添加文件夹",FDI_Advance_Setting:"高级设置",FDI_Relation_Type:"关联关系",FDI_Relation_Analysis_Direction:"分析方向",FDI_Relation_Enable:"关系启用",FDI_Delete_Relation:"删除关系",FDI_Source_To_Target:"从左侧表到右侧表",FDI_Target_To_Source:"从右侧表到左侧表",FDI_Two_Way:"双向",FDI_Add_Relation_Field:"添加多个关联字段",FDI_View_Detail:"查看详情",FDI_Name:"名称",FDI_Description:"描述",FDI_Table_Count:"表数量",FDI_Indicator_Count:"指标数量",FDI_Dimension_Count:"维度数量",FDI_Business_Model_Empty:"当前没有业务模型,请先添加业务模型",FDI_Business_Model_List:"业务模型列表",FDI_Add_Business_Model:"添加业务模型",FDI_Business_Model_Count:"业务模型数量",FDI_Business_Model_Preview:"业务模型预览",FDI_Business_Model_Name:"业务模型名称",FDI_Business_Model_Description:"业务模型描述",FDI_Edit_Business_Model:"编辑业务模型",FDI_Select_Indicator:"选择指标",FDI_Select_Dimension:"选择维度",FDI_Last_Edit_User:"最近编辑人",FDI_Last_Edit_Time:"最近编辑时间",FDI_Action:"操作",FDI_Table_Field_String:"文本",FDI_Table_Field_Number:"数值",FDI_Table_Field_Datetime:"日期",FDI_Indicator_List:"指标列表",FDI_Add_Indicator:"添加指标",FDI_Search:"搜索",FDI_Search_Plus:"搜索增强",FDI_Search_History_Empty:"暂无搜索记录",FDI_Search_History:"历史记录",FDI_Search_Correct_Tip:"已显示“{R1}“,仍然搜索:",FDI_Force_Search_Tip:"仍然搜索:",FDI_Tag:"标签",FDI_Data_Privilege:"数据权限",FDI_Update_Time:"更新时间",FDI_Save:"保存",FDI_No_More_Reminders:"不再提醒",FDI_Search_Include_Tip:"{R1}包含“{R2}”",FDI_Search_Is_Tip:"{R1}是“{R2}”",FDI_Pause:"、",FDI_Comma:",",FDI_Helpful:"👍有帮助",FDI_No_Helpful:"👎没帮助",FDI_AI_Search_Query_Understand:"当前搜索结果已由AI智能解析",FDI_AI_Search_Query_Understand_Content:"优先匹配{R1}的结果",FDI_AI_Search_Feedback_Tip:"这次AI搜索帮到您了吗?",FDI_AI_Search_Error_Title:"未找到相关结果",FDI_AI_Search_Error_Tip:`当前AI服务不可用,智能搜索功能受限。 -请尝试调整您的搜索内容或联系管理员寻求帮助。`,FDI_Search_Guide_Tip1:"🎉 搜索功能全新升级!",FDI_Search_Guide_Tip2:"👍 现支持多关键词模糊搜索,可同时检索字段、标签、创建者及业务描述!",FDI_Search_AI_Guide_Tip1:"🔥 更有AI加持, 用日常语言就能搜索,智能又便捷!",FDI_Search_AI_Guide_Tip2:"🌰 例如:小明在2023年一季度更新的指标",FDI_Advanced_Search:"高级搜索",FDI_Advanced_Search_Tip:"开启后,支持多关键词模糊搜索和增强版搜索算法。",FDI_Advanced_Search_Close_Tip:"关闭「高级搜索」将联动关闭「AI搜索」",FDI_AI_Search:"AI搜索",FDI_AI_Search_Tip:"开启后,在高级搜索基础上支持自然语言搜索",FDI_AI_Search_Open_Tip:"开启「AI搜索」将联动开启「高级搜索」",FDI_AI_Path:"主机地址",FDI_Link_Test:"连接测试",FDI_Link_Success:"连接成功",FDI_Link_Fail:"连接失败",FDI_Indicator_Info:"指标信息",FDI_Related_Dimension:"相关维度",FDI_Related_Indicator:"相关指标",FDI_Indicator_Total:"指标总数",FDI_None:"无",FDI_Formula_Category_Function_Type_Common:"常用函数",FDI_Formula_Category_Function_Type_Math:"数值函数",FDI_Formula_Category_Function_Type_Datetime:"日期函数",FDI_Formula_Category_Function_Type_Text:"文本函数",FDI_Formula_Category_Function_Type_Logic:"逻辑函数",FDI_Formula_Category_Function_Type_Agg:"聚合函数",FDI_Formula_Category_Function_Type_Table_Cal:"快速计算函数",FDI_Formula_Category_Function_Type_Analysis:"分析函数",FDI_Formula_Category_Function_Type_Other:"其他函数",FDI_Function:"函数",FDI_Directory:"目录",FDI_Indicator_Name:"指标名称",FDI_Calculate_Formula:"计算公式",FDI_Click_Edit_Formula:"点击编辑公式",FDI_Formula_Editor_Title:"编辑计算公式",FDI_Edit_Indicator:"编辑指标","Data_Fusion-Index-Root":"全部指标","Data_Fusion-Table-Ungrouped":"未分组资源","Data_Fusion-Table-Root":"全部模型","Data_Fusion-Dimension-Root":"全部维度",FDI_Data_Root:"全部数据",FDI_Add_Dimension:"添加维度",FDI_Edit_Dimension:"编辑维度",FDI_Dimension_List:"维度列表","Data_Fusion-Business-Model-Root":"全部业务模型",FDI_Indicator_Empty_Text:"当前没有指标,请先新建指标",FDI_Dimension_Empty_Text:"当前没有维度,请先新建维度",FDI_Dimension_Total:"维度总数",FDI_Unnamed_New_Indicator:"未命名新指标",FDI_Select_All:"全选",FDI_Dimension_Name:"维度名称",FDI_Dimension_Info:"维度信息",FDI_Unnamed_New_Dimension:"未命名新维度",FDI_Indicator_Formula_Invalid_Msg:"指标公式计算结果不合法,不可为日期类型或字符串类型",FDI_Model_Not_Exist:"模型不存在",FDI_Indicator_Note_Exist:"指标不存在",FDI_Dimension_Not_Exist:"维度不存在",FDI_Business_Model_Not_Exit:"业务模型不存在",FDI_Folder_Not_Exist:"文件夹不存在",FDI_Table_Not_Exist:"表不存在",FDI_Rename_Failed:"命名失败",FDI_Exist_Duplicate_Name:"操作失败,名称不可重名",FDI_Add_Failed:"添加失败",FDI_Relation_Duplicate_Add:"存在重复关联关系,表之间不可重复关联",FDI_Folder_Levels_Over_limit:"文件夹层数超出限制",FDI_Folder_Not_Move:"该文件夹不可移动",FDI_Batch_Deal:"批量处理",FDI_Cancel:"取消",FDI_Calculate_Empty:"计算为空",FDI_Calculate_Error:"出错了,计算结果报错啦……",FDI_Dimension_Formula_Invalid_Msg:"维度公式计算结果不合法,不可为聚合函数",FDI_Data_Detail:"数据详情",FDI_Edit_Data_Detail:"编辑数据详情",FDI_Field_Preview:"字段预览",FDI_Resource_Type:"资源类型",FDI_Indicator:"指标",FDI_Dimension:"维度",FDI_Tag_List:"标签列表",FDI_Add_Tag:"添加标签",FDI_Tag_Empty_Text:"当前没有标签,请先新建标签",FDI_Tag_Total:"标签总数",FDI_Publish:"发布",FDI_Publish_Apply:"发布申请",FDI_Publish_Node:"发布节点",FDI_Reviewer:"审批者",FDI_Apply_Remark:"申请备注",FDI_Please_Input:"请输入",FDI_Publish_Apply_Indicator_Name_Exist:"发布节点有重名指标,不可发布",FDI_Publish_Apply_Dimension_Name_Exist:"发布节点有重名维度,不可发布",FDI_Publish_Apply_Business_Model_Name_Exist:"发布节点有重名业务模型,不可发布",FDI_Cancel_Publish:"取消发布",FDI_Confirm:"确定",FDI_Publish_Name:"发布名称",FDI_Apply_Opinion:"申请意见",FDI_Agree_Publish:"同意发布",FDI_Reject_Apply:"驳回申请",FDI_Reject_Reason:"驳回理由",FDI_Reject_Reason_Placeholder:"填写驳回申请的理由显示在用户发布消息中",FDI_Apply_Publish:"申请发布",FDI_Cancel_Publish_Confirm_Title:"确定要取消发布吗?",FDI_Table_Cancel_Publish_Confirm_Message:"此数据集取消发布后,所有配置的行列权限和关联都将被清除无法找回。",FDI_Indicator_Cancel_Publish_Confirm_Message:"取消发布后,所有配置的行列权限和关联都将被清除无法找回,使用当前指标的相关资源都将报错。",FDI_Dimension_Cancel_Publish_Confirm_Message:"取消发布后,所有配置的行列权限和关联都将被清除无法找回,使用当前维度的相关资源都将报错。",FDI_Business_Model_Cancel_Publish_Confirm_Message:"取消发布后,所有配置的行列权限和关联都将被清除无法找回,使用当前业务模型的相关资源都将报错。",FDI_Status:"状态",FDI_Published:"已发布",FDI_Unpublish:"未发布",FDI_Checking:"审核中",FDI_Reviewers_Check_Failed:"无法授予{R1}当前数据的授权权限,请调整审批者或移除该审批者",FDI_Publish_Node_Not_Empty:"发布节点不能为空",FDI_Delete_Published_Resource_Warning:"无法删除所选项中「已发布」的资源",FDI_Publish_Deal:"发布处理",FDI_Agree_Cancel_Publish:"同意取消发布",FDI_Not_To_Exceed_Chars:"不可超过{R1}个字符",FDI_Publish_Apply_Success:"发布成功",FDI_Publish_Apply_Success_Wait:"申请发布成功,请等待批复",FDI_Publish_Cancel_Apply_Success:"取消发布成功",FDI_Publish_Cancel_Apply_Success_Wait:"申请取消发布成功,请等待批复",FDI_Publish_Apply_Fail:"申请发布失败",FDI_Publish_Apply_Fail_Same_Type:"申请发布失败,当前内容已申请发布",FDI_Publish_Apply_Fail_Reviewer_Error:"申请发布失败, 审批者权限异常",FDI_Publish_Apply_Fail_Status_Error:"申请发布失败,当前内容已发布",FDI_Publish_Cancel_Apply_Fail:"申请取消发布失败",FDI_Publish_Cancel_Apply_Fail_Same_Type:"申请取消发布失败,当前内容已申请取消发布",FDI_Publish_Cancel_Apply_Fail_Reviewer_Error:"申请取消发布失败, 审批者权限异常",FDI_Publish_Cancel_Apply_Fail_Status_Error:"申请取消发布失败,当前内容已取消发布",FDI_Related_Indicator_dimension:"相关指标维度",FDI_View_All:"查看全部",FDI_Copy:"拷贝",FDI_Import_Indicator:"导入指标",FDI_Import_Dimension:"导入维度",FDI_Batch_Import:"批量导入",FDI_Import_Indicator_Empty_Text:"当前没有指标,请先创建/导入指标",FDI_Import_Dimension_Empty_Text:"当前没有维度,请先创建/导入维度",FDI_Authority_Apply_Review:"权限申请审批",FDI_Authority_Apply:"权限申请",FDI_Apply_Authority:"申请权限",FDI_Authority_Review:"权限审批",FDI_Authorize_Target:"授权对象",FDI_Apply_Field:"申请字段",FDI_Apply_Reason:"申请理由",FDI_Field_Authority:"字段权限",FDI_View_Authority:"查看权限",FDI_Use_Authority:"使用权限",FDI_Inherit_Field:"继承字段",FDI_Inherit_Table:"继承数据集",FDI_I_Initiated:"我发起的",FDI_I_Approved:"我审批的",FDI_Data_Name:"数据名称",FDI_Data_Type:"数据类型",FDI_Applicant:"申请人",FDI_Authority_Type:"权限类型",FDI_Apply_Time:"申请时间",FDI_Apply_Info:"申请信息",FDI_Authority_Info:"权限信息",FDI_Authorize_Info:"授权信息",FDI_Authorize_Detail:"授权明细",FDI_Review_Opinion:"审批意见",FDI_Current_Review_Status:"当前审批状态",FDI_Field:"字段",FDI_Reject:"驳回",FDI_Rejected:"已驳回",FDI_Pass:"通过",FDI_Passed:"已通过",FDI_Wait_For_Approve:"待审批",FDI_View:"查看",FDI_View_Data:"查看数据",FDI_Reapply:"再次申请",FDI_Item_Count_Per_Page:"条/页",FDI_Department:"部门",FDI_Role:"角色",FDI_Authority_Inherit:"权限继承",FDI_Inherit_Field_Tip:"当前数据开启了继承权限,实际授予的是继承字段的字段权限",FDI_No_Field_Select_Tip:"请至少勾选1个字段,或点击「驳回」",FDI_Multipath_Setting:"多路径设置",FDI_Exit_Multipath_Setting:"退出多路径设置",FDI_Multipath_Setting_Changed_Warning:"多路径信息已变更,您可能需要更新数据",FDI_Select_Path:"选择要使用的路径",FDI_Current_No_Multi_Path:"当前无多路径",FDI_Review_Success:"审批成功",FDI_View_Apply_Status:"查看申请状态",FDI_Pass_Apply:"通过申请",FDI_Apply_Success:"申请成功",FDI_Search_Result_Is_Empty:"搜索结果为空",FDI_Upload_Fail_Tooltip:"导入失败,文件格式不符",FDI_Upload_Success_Tooltip:"导入成功,共导入{R1}个资源",FDI_Save_Import_Fail:"保存失败,请检查导入信息",FDI_Save_Success:"保存成功",FDI_Formula_Field_Invalid_Msg:"「{R1}」字段指定不明确或不存在",FDI_Reviewer_Tooltip:"通过申请后,审批者将获得对当前数据的授权权限",FDI_Publish_Checked_Error_Tooltip:"发布失败,请检查字段",FDI_Apply_Failed_Message:"申请失败,请检查申请信息",FDI_Add_To:"添加到",FDI_Review_Failed:"审批失败",FDI_Review_Failed_Apply_Not_Exist:"审批失败,申请不存在",FDI_Review_Failed_Already_Reviewed:"审批失败,该申请已审批",FDI_Review_Failed_No_Data_Authority:"审批失败,缺少数据授权权限",FDI_Review_Failed_No_User_Authority:"审批失败,缺少用户授权权限",FDI_Review_Failed_Applicant_Not_Exist:"审批失败,申请者不存在或未启用",FDI_Review_Failed_Not_Current_Data_Reviewer:"审批失败,非当前数据审批者",FDI_Review_Failed_Resource_Not_Exist:"审批失败,该数据不存在",FDI_Apply_Failed:"申请失败",FDI_Apply_Failed_Already_Apply:"申请失败,该权限已申请",FDI_Apply_Failed_Empty_Reviewer:"申请失败,审批者为空,请联系管理员",FDI_Apply_Failed_No_Reviewer:"申请失败,无可审批人员,请联系管理员",FDI_Apply_Failed_Resource_Not_Exist:"申请失败,该数据不存在",FDI_No_Update_Time:"暂无更新时间",FDI_No_View_Authority:"无查看权限",FDI_No_Use_Authority:"无使用权限",FDI_Data_Deleted:"该数据已删除",FDI_Field_Deleted:"该字段已删除",FDI_User_Deleted:"该用户已删除",FDI_Pass_Failed_Deleted:"通过失败,该对象已删除,请取消勾选或驳回申请",FDI_Model_No_Use_Permission:"无模型中心的使用权限,请联系管理员",FDI_Relation_Analysis_Table_Disable:"配置关系失败,开启权限继承不可配置关系",FDI_No_Edit_Authority:"无编辑权限","FDI_No_Edit_Authority_{R1}":"无{R1}的编辑权限",FDI_No_Authority:"无权限","FDI_Source_Table_{R1}":"来源表: {R1}",FDI_Clear:"清空",FDI_Business_Model_Setting_Instruction:"已选择项中存在不相关的指标和维度,请清空后重新选择",FDI_No_Data_Authority:"没有此数据权限,不支持新建",FDI_Cannot_Add_Table_In_Root:"不支持在根目录添加表",FDI_Management:"管理",FDI_Tag_Management:"标签管理","Tag-Root":"全部标签",FDI_Tag_Name:"标签名称",FDI_Edit_Tag:"编辑标签",FDI_Unnamed_New_Tag:"未命名新标签",FDI_Tag_Category:"标签分类",FDI_Tag_Description:"标签描述",FDI_Tag_Application:"标签应用",FDI_Extend_Field:"扩展字段",FDI_Add_Field:"添加字段",FDI_Unnamed_Field:"未命名字段",FDI_Please_Input_Field_Name:"请输入字段名称",FDI_Please_Select_Field_Type:"请选择字段类型",FDI_Type_Not_Support_Modify:"类型暂不支持修改",FDI_No_Extend_Field:"暂无扩展字段",FDI_Data_Filter:"数据过滤",FDI_Query:"查询",FDI_Up_Down_Stream:"上下游",FDI_Publish_Status:"发布状态",FDI_Permission_Status:"权限状态",FDI_Abnormal_Status:"异常状态",FDI_Show_Up_Stream:"仅展示上游血缘",FDI_Show_Down_Stream:"仅展示下游血缘",FDI_Normal:"正常",FDI_Has_View_Authority:"有查看权限",FDI_Publishing:"发布审核中",FDI_Unpublishing:"取消发布审核中",FDI_Up_Stream_Num:"上游血缘数",FDI_Down_Stream_Num:"下游影响数",FDI_Lineage_Level:"血缘层数",FDI_Close:"关闭",FDI_Up_Stream_Num_Detail:"上游血缘数详情",FDI_Down_Stream_Num_Detail:"下游影响数详情",FDI_Resource_Name:"资源名称",FDI_Spider:"抽取",FDI_Direct:"直连",FDI_Widget:"组件",FDI_Report:"仪表板",FDI_Doc:"分析文档",FDI_Deleted:"已删除",FDI_Unavailable:"不可用",FDI_Delete_Tag_Confirm_Title:"确定要删除该标签吗?",FDI_Delete_Tag_Confirm_Message:"删除标签会影响已使用该标签做标记的数据",FDI_Delete_Tag_Folder_Confirm_Title:"确定要删除该文件夹吗?",FDI_Delete_Tag_Folder_Confirm_Message:"该文件夹内的标签也会全部删除,且会影响已使用文件夹内标签做标记的数据",FDI_Batch_Create:"批量创建",FDI_Batch_Create_Indicator:"批量创建指标",FDI_Batch_Create_Dimension:"批量创建维度",FDI_Indicator_Create_Illegal:"指标创建不合法,不可为日期类型或字符串类型",FDI_Load_Failed:"加载失败",FDI_Reload:"重新加载",FDI_Cannot_Select_Child_Field:"该字段为当前字段的子字段,无法选择",FDI_Search_No_Data:"无匹配项",FDI_Folder_Name_Duplicate:"操作失败,存在重名文件夹",FDI_No_Lineage_Level:"暂无血缘层级",FDI_Data_Update_Please_Refresh:"数据已更新,请刷新",FDI_Refresh:"刷新",FDI_Jump_To_Origin_Table:"跳转到原表位置",FDI_Please_Input_Model_Name:"请输入模型名称",FDI_To_Apply:"去申请",FDI_BI_Business_Model:"指标维度集",FDI_Disable_Batch_Create_Tip:"批量创建的指标超过2000个,无法继续创建",STRING:"字符串",INT:"整型",DOUBLE:"双精度型",DATE:"日期",BOOLEAN:"布尔型",FORMULA:"公式",PARAMETER:"参数",SEARCH_RESULT_NONE:"暂无结果",ADD_FILTER_CONDITION_AND:"添加条件(且)",ADD_FILTER_CONDITION_OR:"添加条件(或)",EQUAL:"等于",NOT_EQUAL:"不等于",BEGINNING_IS:"开头是",BEGINNING_IS_NOT:"开头不是",END_IS:"结尾是",END_IS_NOT:"结尾不是",INCLUDE:"包含",NOT_INCLUDE:"不包含",INCLUDE_IN:"包含于",NOT_INCLUDE_IN:"不包含于",FILTER_CONDITION:"过滤条件",PLEASE_SELECT_DATA_COLUMN:"请选择数据列",DASHBOARD_NAME:"仪表板名称",BEFORE_DATE:"在某个日期之前",AFTER_DATE:"在某个日期之后",PARAMETER_NAME:"参数名",PARAMETER_VALUE:"值",MORE:"大于",LESS:"小于",MORE_EQUAL:"大于等于",LESS_EQUAL:"小于等于","BI-Basic_(Empty)":"(空)","BI-Basic_Calculate_To_Be_Analyzed_Area_Is_Missing_Date_Fields":"待分析区域缺少日期字段","BI-Basic_Calculate_Group_Is_Missing_Date_Fields":"分组框缺少日期字段","BI-Basic_Calculate_{R1}_is_Not_Supported_To_Calculate_{R2}":"{R1}的时间分组不支持计算{R2}","BI-Basic_Group_Space":"区间间隔","BI-Conf_Please_Input_Positive_Number":"请输入正数","BI-Design_Current_Group_Num_Out_Of_Limit":"当前分组超过{R1}万,不支持分组展示","BI-Conf_Save_After_Add_Group":"添加分组后才能保存","BI-Basic_Left_Number_Values":"未分组的值分到","BI-Basic_Others":"其它","BI-Basic_Group_Name_Not_Empty":"分组名不可为空","BI-Basic_Group_Name_Cannot_Same":"不可与其他分组重名","BI-Basic_Custom_Grouping_Dot":"自定义分组","BI-Conf_Save_After_Fix_Error":"请修改标红区域的错误","BI-Basic_Add_Group":"添加分组","BI-Basic_Not_Allow_Empty":"不可为空","BI-Basic_Range_Cannot_Be_Crossed":"数值范围重复,请重新输入","BI-Basic_Group":"分组","BI-Conf_Already_Divided_Field_To_Groups":"已将此字段分为{R1}组","BI-Design_Current_Group_Num_Suggest":"建议最多分{R1}组,否则数据加载时间变长,严重者可能引起宕机,请谨慎设置","BI-Basic_Auto":"自动","BI-Basic_Group_Methods":"分组方式","BI-Basic_Same_Value_A_Group":"相同值为一组","BI-Basic_Ensure_Group_By_Value":"切换为相同值为一组,自定义分组的信息将丢失","BI-Basic_Rename":"重命名","BI-Basic_Remove":"删除","BI-Conf_Move_To_Same_Value_Info_Missing":"区间分组信息将丢失。确定切换为相同值为一组?","BI-Basic_Grouping_Setting":"区间分组","BI-Basic_YMD_Date":"年月日","BI-Basic_Year_Week":"年周数","BI-Basic_Year_Month":"年月","BI-Basic_Year_Quarter":"年季度","BI-Basic_Multi_Date_Year":"年","BI-Basic_More_Group":"更多分组","BI-Conf_FieldType_Change_Summary_Missing":"{R1}的类型改变,汇总方式丢失","BI-Basic_Rapid_Calculation{R1}":"快速计算:{R1}","BI-Basic_Calculate_Depend_Date_Field{R1}":"依赖日期字段:{R1}","BI-Basic_Calculate_Depend_Date_Field_Missed":"依赖日期字段丢失","BI-Basic_Group_Type{R1}":"汇总方式:{R1}","BI-Basic_Field_Name_Cannot_Be_Null":"字段名不能为空","BI-Basic_Field_Name_Already_Exist":"字段不可重名","BI-Basic_Number_Custom_Group_Setting":"区间分组设置","BI-Basic_Min":"最小值","BI-Basic_Max":"最大值","BI-Basic_Cancel":"取消","BI-Basic_Search_Group":"搜索分组","BI-Basic_Copy_To_Group":"复制到","BI-Basic_Empty":"空","BI-Basic_Click_Cancel_Choose_Field":"点击取消该数据选择","BI-Basic_Confirm_Delete_Group":"确定解散{R1}?","BI-Basic_Sure":"确定","BI-Basic_Move_To_Group":"移动到","BI-Basic_Other":"其他","BI-Basic_Has_Selected_{R1}_Item":"已选择{R1}项","BI-Basic_New_Group":"分组","BI-Basic_None_Group":"未分组","BI-Basic_Move_To_Group_Failed":"字段名与分组名重名,移动失败","BI-Basic_Not_Select_Any":"未选中任何选项","BI-Basic_UnGroup_Data_Only_Can_Be_Moved":"未分组内的数据只能移动","BI-Basic_Select_All_Search_Results":"全选搜索结果","BI-Basic_Ungrouped_Value_To":"未分组的值分到","BI-Basic_Statistic":"汇总","BI-Conf_Drop_Fields_From_Left":"请拖入{R1}字段","BI-Basic_Search_Field":"搜索字段","BI-Conf_No_Match_Field":"无匹配字段","BI-Conf_Total":"共","BI-Basic_Quarter":"季度","BI-Basic_Month_Fen":"月份","BI-Basic_Month_Day":"月日","BI-Basic_Week_Count":"周数","BI-Basic_Week_XingQi":"星期","BI-Basic_Date_Day":"日","BI-Basic_Hour_Sin":"时","BI-Basic_Minute":"分","BI-Basic_Seconds":"秒","BI-Basic_YMDH":"年月日时","BI-Basic_YMDHM":"年月日时分","BI-Basic_Detail_Date":"年月日时分秒","BI-Basic_No_Repeat_Count":"去重计数","BI-Basic_Record_Count":"记录个数","BI-Basic_String_Summary_By_Connection":"字符串拼接",BI_Add_Group_Condition:"汇总条件","BI-Basic_Calculate_Sum":"求和","BI-Basic_Calculate_Avg":"平均","BI-Basic_Calculate_Median":"中位数","BI-Basic_Calculate_Max":"最大值","BI-Basic_Calculate_Min":"最小值","BI-Basic_Calculate_Standard_Deviation":"标准差","BI-Basic_Calculate_Variance":"方差","BI-Basic_None":"无","BI-Basic_Calculate_Same_Period_Rate":"同比","BI-Basic_Calculate_Same_Period":"同期","BI-Basic_Calculate_Same_Period_Growth_Value":"同比增长值","BI-Basic_Calculate_Same_Period_Growth_Rate":"同比增长率","BI-Basic_Calculate_Same_Ring_Rate":"环比","BI-Basic_Calculate_Same_Ring":"环期","BI-Basic_Calculate_Same_Ring_Growth_Value":"环比增长值","BI-Basic_Calculate_Same_Ring_Growth_Rate":"环比增长率","BI-Basic_Earliest_Time":"最早时间","BI-Basic_Latest_Time":"最晚时间","BI-BI_Add_Group_Condition":"汇总条件","BI-Basic_Multi_Date_Month":"月","BI-Basic_Multi_Date_Week":"周","BI-Basic_Search":"搜索"},gae={FDI_Please_Select_Field:"請選擇欄位",FDI_Relation_Field_Miss_Tip:"欄位丟失",FDI_Model_Center:"模型中心",FDI_Model_Empty:"暫時無模型, 請先建立模型",FDI_Modify_Model:"編輯名稱和描述",FDI_I_Know:"我知道了",FDI_Indicator_Management:"指標管理",FDI_Global_Graph:"全局檢視表",FDI_Relation_Delete_Tip_Title:"確認要刪除關係嗎?",FDI_Model_Delete_Tip_Title:"確認要刪除模型嗎?",FDI_Jump_To_Other_Tip:"當前表為分組外的表,確定跳轉到其他分組的模型關係?",FDI_Collapsed:"收起",FDI_Add_Relation:"新增關係",FDI_Edit_Relation:"編輯關係",FDI_Please_Choose_Resource:"請從左側選擇資源",FDI_Search_Resource:"搜尋資源",FDI_Not_Special_Str:"首個字元不可為特殊字元",FDI_Chars:"個字元",FDI_Not_Same_Name:"不可重名",FDI_Operation_Failed:"操作失敗",FDI_Rename:"重新命名",FDI_Delete:"刪除",FDI_Delete_Success:"刪除成功",FDI_Add_Folder:"新增資料夾",FDI_Advance_Setting:"進階設定",FDI_Relation_Type:"聯動關係",FDI_Relation_Analysis_Direction:"分析方向",FDI_Relation_Enable:"關係啟動",FDI_Delete_Relation:"刪除關係",FDI_Target_To_Source:"從右側表到左側表",FDI_Two_Way:"雙向",FDI_View_Detail:"查看詳情",FDI_Name:"名稱",FDI_Description:"描述",FDI_Table_Count:"表數量",FDI_Business_Model_List:"業務模型列表",FDI_Add_Business_Model:"新增業務模型",FDI_Business_Model_Count:"業務模型數量",FDI_Business_Model_Description:"業務模型描述",FDI_Edit_Business_Model:"編輯業務模型",FDI_Select_Indicator:"選擇指標",FDI_Select_Dimension:"選擇維度",FDI_Last_Edit_Time:"最近編輯時間",FDI_Action:"操作",FDI_Table_Field_Number:"數值",FDI_Table_Field_Datetime:"日期",FDI_Indicator_List:"指標列表",FDI_Search:"搜尋",FDI_Indicator_Info:"指標資訊",FDI_Indicator_Total:"指標總數",FDI_None:"無",FDI_Formula_Category_Function_Type_Text:"文字函式",FDI_Formula_Category_Function_Type_Table_Cal:"快速計算函式",FDI_Formula_Category_Function_Type_Other:"其他函式",FDI_Function:"函式",FDI_Formula_Editor_Title:"編輯計算公式","Data_Fusion-Table-Root":"全部模型",FDI_Add_Dimension:"新增維度",FDI_Dimension_Empty_Text:"當前沒有維度,請先建立維度",FDI_Dimension_Total:"維度總數",FDI_Select_All:"全選",FDI_Dimension_Info:"維度資訊",FDI_Indicator_Note_Exist:"指標不存在",FDI_Dimension_Not_Exist:"維度不存在",FDI_Folder_Levels_Over_limit:"資料夾層數超出限制",FDI_Folder_Not_Move:"該資料夾不可行動",FDI_Batch_Deal:"批量處理",FDI_Cancel:"取消",FDI_Resource_Type:"資源類型",FDI_Indicator:"指標",FDI_Dimension:"維度","Data_Fusion-Table-Ungrouped":"未分組資源",FDI_Please_Select:"請選擇",FDI_Relation_Field_Delete_Tip:"確認刪除?刪除後無法恢復",FDI_Relation_Field_Unmatched_Tip:"欄位類型不匹配",FDI_Add_Resource_Duplicate:"新增資源有重名",FDI_Add_Resource_Duplicate_Tip:"抱歉,無法完成新增操作。您嘗試新增的資源名稱已存在,請修改資源名稱再嘗試新增。相關資源為:",FDI_Delete_Model:"刪除模型",FDI_Model_Management:"模型管理",FDI_Dimension_Management:"維度管理",FDI_Business_Model:"業務模型",FDI_Relation_Disable_Tip_Title:"確認要停用關係嗎?",FDI_Relation_Disable_Tip:"停用關係後,相關資源都將受到影響,請謹慎停用。",FDI_Relation_Delete_Tip:"刪除關係後,相關資源都將受到影響,請謹慎刪除。",FDI_Model_Delete_Tip:"刪除模型後,模型關係無法找回,資料目錄中的相關資源都將報錯。請謹慎刪除。",FDI_Model_Not_Exist:"模型不存在",FDI_Relation_Enable_Error:"無法啟動關係,請先刪除或者停用當前表已有的關係",FDI_Resource_Add_Error:"選擇的部分資源有重名無法新增成功,請修改資源名稱再重新新增",FDI_Business_Model_Not_Exit:"業務模型不存在",FDI_Add_Model:"新增模型",FDI_Folder_Not_Exist:"資料夾不存在",FDI_Unnamed_New_Model:"未命名新模型",FDI_Table_Not_Exist:"表不存在",FDI_Rename_Failed:"命名失敗",FDI_Edge_Show_Relation:"顯示關係屬性",FDI_Exist_Duplicate_Name:"操作失敗,名稱不可重名",FDI_Resource_Empty_Please_Add:"暫時無資源, 請先新增資源",FDI_Resource_List:"資源列表",FDI_Add_Failed:"新增失敗",FDI_Add_Resource:"新增資源",FDI_Field_Type:"欄位類型",FDI_Field_Name:"原始名",FDI_Field_Description:"欄位描述",FDI_Not_Empty:"不可為空",FDI_Not_To_Exceed:"不可超過",FDI_Operation_Failed_Please_Refresh:"操作失敗,請重新登入後重試",FDI_Edit:"編輯",FDI_Folder:"資料夾",FDI_Delete_Confirm_Title:"確定要刪除所選資料或資料夾嗎?",FDI_Delete_Confirm_Message:"刪除後,資料無法恢復。資料夾內所有內容將被一起被刪除。",FDI_Source_To_Target:"從左側表到右側表",FDI_Add_Relation_Field:"新增多個聯動欄位",FDI_Indicator_Count:"指標數量",FDI_Dimension_Count:"維度數量",FDI_Business_Model_Empty:"當前沒有業務模型,請先新增業務模型",FDI_Business_Model_Preview:"業務模型預覽",FDI_Relation_Duplicate_Add:"存在重複聯動關係,表之間不可重複聯動",FDI_Business_Model_Name:"業務模型名稱",FDI_Last_Edit_User:"最近編輯人",FDI_Table_Field_String:"文字",FDI_Add_Indicator:"新增指標",FDI_Related_Dimension:"相關維度",FDI_Formula_Category_Function_Type_Common:"常用函式",FDI_Formula_Category_Function_Type_Math:"數值函式",FDI_Formula_Category_Function_Type_Datetime:"日期函式",FDI_Formula_Category_Function_Type_Logic:"邏輯函式",FDI_Formula_Category_Function_Type_Agg:"聚合函式",FDI_Formula_Category_Function_Type_Analysis:"分析函式",FDI_Directory:"目錄",FDI_Indicator_Name:"指標名稱",FDI_Calculate_Formula:"計算公式",FDI_Click_Edit_Formula:"點選編輯公式",FDI_Edit_Indicator:"編輯指標","Data_Fusion-Index-Root":"全部指標","Data_Fusion-Dimension-Root":"全部維度",FDI_Dimension_List:"維度列表","Data_Fusion-Business-Model-Root":"全部業務模型",FDI_Indicator_Empty_Text:"當前沒有指標,請先建立指標",FDI_Unnamed_New_Indicator:"未命名新指標",FDI_Dimension_Name:"維度名稱",FDI_Unnamed_New_Dimension:"未命名新維度",FDI_Indicator_Formula_Invalid_Msg:"指標公式計算結果不合法,不可為日期類型或字串類型",FDI_Calculate_Empty:"計算為空",FDI_Calculate_Error:"出錯了,計算結果報錯啦……",FDI_Dimension_Formula_Invalid_Msg:"維度公式計算結果不合法,不可為聚合函式",FDI_Data_Detail:"資料詳情",FDI_Field_Preview:"欄位預覽",FDI_Add_Table:"新增表",FDI_Analysis_Table:"自助資料集",FDI_DB_Table:"資料庫表",FDI_Sql_Table:"SQL資料集",FDI_Excel_Table:"Excel資料集",FDI_ETL_Table:"ETL資料集",FDI_Modify_SQL:"修改SQL",FDI_Modify_Config:"修改配置",FDI_Update_Excel:"更新Excel",FDI_Enter_Model_Center:"進入模型中心",FDI_Create_Analysis:"建立分析主題",FDI_Add_To_Analysis:"新增到分析主題",FDI_Lastly_Edit:"最近編輯",FDI_My_Analysis:"我的分析",FDI_Coop_Group:"協作給我的",FDI_Subject:"分析主題",FDI_Subject_Lock_Add_Error_Tip:"新增失敗,該分析主題正在被編輯",FDI_Update_Progress:"更新進度",FDI_Folder_Update:"資料夾更新",FDI_Update_Status:"更新狀態",FDI_Sort_By_Time:"按创建时间排序",FDI_Sort_By_Name:"按名稱排序",FDI_All:"全部",FDI_Table:"資料集",FDI_Permission_Filter:"權限過濾",FDI_Permission_Filter_Tip:"開啟後將隱藏不具備使用權限的資料",FDI_Table_No_Auth_Fields_Tip:"缺少部分欄位權限,無法查看部分欄位",FDI_Table_No_Auth_Preview_Tip:"缺少資料使用權限,無法查看資料明細,請先申請使用權限",FDI_Apply_Use:"申請使用",FDI_Apply_Auth:"申請權限","FDI_{R1}_Update_Setting":"{R1}更新設定",FDI_Move_To:"行動到",FDI_Multi_Move:"批量行動","FDI_Move_{R1}_To":"將{R1}行動到",FDI_Move_Success:"行動成功",FDI_Move_Fail_Prefix:"行動失敗,",FDI_Part_Move_Fail:"部分資料行動失敗",FDI_Data_Is_Editing:"該資料正在編輯",FDI_Data_Published:"該資料已發佈",FDI_Data_Absent:"資料不存在",FDI_Data_No_Auth:"無管理權限",FDI_Comment:"備註",FDI_Add_Comment:"新增備註",FDI_Data_Preview:"資料預覽",FDI_Usage:"血緣分析",FDI_Update_Info:"更新資訊",FDI_Type:"類型",FDI_Data_Status:"資料狀態",FDI_Data_Description:"資料描述",FDI_Editor:"編輯者",FDI_Create_Time:"建立時間",FDI_Related_Table_Name:"相關表名",FDI_Position:"位置",FDI_Position_With_Colon:"位置:",FDI_Origin_Name:"原始名",FDI_Source:"來源","FDI_Table_Last_Edit_Time_{R1}":"最近編輯:{R1}",FDI_Cache_Setting:"快取設定",FDI_Update_Task_Management:"更新任務管理",FDI_Global_Update:"全局更新",FDI_Global_Update_Setting:"全局更新設定",FDI_Create_Base_Table_Engine_Setting:"建立基礎表屬性設定",FDI_Total_Rows:"共{R1}條","FDI_Show_{R1}_Rows_Total_{R2}":"顯示{R1}條,共{R2}條",FDI_Table_Preview_Limit_Tip:"顯示所有資料計算結果的{R1}列資料",FDI_Table_Preview_Limit_Setting_Tip:"顯示列數設定",FDI_Engine_Spider:"抽取資料",FDI_Engine_Direct:"直連資料",FDI_Resource_Info:"資源資訊",FDI_Table_Has_Relation_Tip:"當前表已新增過關係,不可重複新增",FDI_Table_Has_Imported_Tip:"當前表已新增,不可重複新增",FDI_Table_Inherit_Tip:"當前表開啟了權限繼承,不可新增",FDI_Table_Duplicate_Name_Tip:"當前表名稱與已新增的表重名,不可新增",FDI_Field_Transfer_Name:"欄位名稱",FDI_Delete_Fail:"刪除失敗",FDI_Delete_Fail_Prefix:"刪除失敗,",FDI_Part_Delete_Fail:"部分資料刪除失敗",FDI_All_Delete_Fail:"刪除失敗,請檢查資料狀態",FDI_Catalog_Folder_Delete_Confirm_Title:"刪除資料夾",FDI_Catalog_Table_Delete_Confirm_Title:"刪除表",FDI_Catalog_Table_Delete_Confirm_Message:"此資料集刪除後,相聯動的自助資料集/組件/儀表板/分析文檔也將受到影響,所有配置的列欄權限和聯動都將被清除無法找回,刪除的資源可以從建立者的回收站中找回。確定刪除“{R1}”?",FDI_Search_Plus:"搜尋增強",FDI_Save:"儲存",FDI_Search_Guide_Tip1:"🎉 搜尋功能全新升級!",FDI_Search_Guide_Tip2:"👍 現支援多關鍵詞模糊搜尋,可同時檢索欄位、標籤、建立者及業務描述!",FDI_Search_AI_Guide_Tip1:"🔥 更有AI加持, 用日常語言就能搜尋,智慧又便捷!",FDI_Search_AI_Guide_Tip2:"🌰 例如:小明在2023年一季度更新的指標",FDI_Advanced_Search:"進階搜尋",FDI_Advanced_Search_Close_Tip:"關閉「進階搜尋」將聯動關閉「AI搜尋」",FDI_AI_Search:"AI搜尋",FDI_AI_Search_Tip:"開啟後,在進階搜尋基礎上支援自然語言搜尋",FDI_AI_Search_Open_Tip:"開啟「AI搜尋」將聯動開啟「進階搜尋」",FDI_AI_Path:"主機地址",FDI_Related_Indicator:"相關指標",FDI_Edit_Dimension:"編輯維度",FDI_Edit_Data_Detail:"編輯資料詳情",FDI_Tag_List:"標籤列表",FDI_Add_Tag:"新增標籤",FDI_Tag_Total:"標籤總數",FDI_Publish:"發佈",FDI_Publish_Apply:"發佈申請",FDI_Publish_Node:"發佈節點",FDI_Reviewer:"審批者",FDI_Apply_Remark:"申請備註",FDI_Publish_Apply_Indicator_Name_Exist:"發佈節點有重名指標,不可發佈",FDI_Publish_Apply_Dimension_Name_Exist:"發佈節點有重名維度,不可發佈",FDI_Publish_Apply_Business_Model_Name_Exist:"發佈節點有重名業務模型,不可發佈",FDI_Cancel_Publish:"取消發佈",FDI_Confirm:"確定",FDI_Publish_Name:"發佈名稱",FDI_Apply_Opinion:"申請意見",FDI_Agree_Publish:"同意發佈",FDI_Reject_Apply:"駁回申請",FDI_Reject_Reason:"駁回理由",FDI_Apply_Publish:"申請發佈",FDI_Cancel_Publish_Confirm_Title:"確定要取消發佈嗎?",FDI_Indicator_Cancel_Publish_Confirm_Message:"取消發佈後,所有配置的列欄權限和聯動都將被清除無法找回,使用當前指標的相關資源都將報錯。",FDI_Business_Model_Cancel_Publish_Confirm_Message:"取消發佈後,所有配置的列欄權限和聯動都將被清除無法找回,使用當前業務模型的相關資源都將報錯。",FDI_Status:"狀態",FDI_Published:"已發佈",FDI_Unpublish:"未發佈",FDI_Reviewers_Check_Failed:"無法授予{R1}當前資料的授權權限",FDI_Publish_Node_Not_Empty:"發佈節點不能為空",FDI_Publish_Deal:"發佈處理",FDI_Agree_Cancel_Publish:"同意取消發佈",FDI_Not_To_Exceed_Chars:"不可超過{R1}個字元",FDI_Publish_Apply_Success:"發佈成功",FDI_Publish_Apply_Success_Wait:"申請發佈成功,請等待批覆",FDI_Publish_Cancel_Apply_Success:"取消發佈成功",FDI_Publish_Apply_Fail:"申請發佈失敗",FDI_Publish_Apply_Fail_Same_Type:"申請發佈失敗,當前內容已申請發佈",FDI_Publish_Apply_Fail_Reviewer_Error:"申請發佈失敗, 審批者權限異常",FDI_Publish_Apply_Fail_Status_Error:"申請發佈失敗,當前內容已發佈",FDI_Publish_Cancel_Apply_Fail:"申請取消發佈失敗",FDI_Publish_Cancel_Apply_Fail_Reviewer_Error:"申請取消發佈失敗, 審批者權限異常",FDI_Publish_Cancel_Apply_Fail_Status_Error:"申請取消發佈失敗,當前內容已取消發佈",FDI_Related_Indicator_dimension:"相關指標維度",FDI_View_All:"查看全部",FDI_Copy:"copy",FDI_Import_Indicator:"匯入指標",FDI_Import_Dimension:"匯入維度",FDI_Batch_Import:"批量匯入",FDI_Import_Dimension_Empty_Text:"當前沒有維度,請先匯入維度",FDI_Authority_Apply_Review:"權限申請審批",FDI_Authority_Apply:"權限申請",FDI_Apply_Authority:"申請權限",FDI_Authority_Review:"權限審批",FDI_Authorize_Target:"授權物件",FDI_Apply_Field:"申請欄位",FDI_Apply_Reason:"申請理由",FDI_Field_Authority:"欄位權限",FDI_Use_Authority:"使用權限",FDI_Inherit_Field:"繼承欄位",FDI_Inherit_Table:"繼承資料集",FDI_I_Initiated:"我發起的",FDI_Data_Name:"資料名稱",FDI_Data_Type:"資料類型",FDI_Applicant:"申請人",FDI_Authority_Type:"權限類型",FDI_Apply_Time:"申請時間",FDI_Apply_Info:"申請資訊",FDI_Authority_Info:"權限資訊",FDI_Authorize_Info:"授權資訊",FDI_Authorize_Detail:"授權明細",FDI_Review_Opinion:"審批意見",FDI_Current_Review_Status:"當前審批狀態",FDI_Field:"欄位",FDI_Reject:"駁回",FDI_Rejected:"已駁回",FDI_Pass:"通過",FDI_Passed:"已通過",FDI_Wait_For_Approve:"待審批",FDI_View:"查看",FDI_View_Data:"查看資料",FDI_Reapply:"再次申請",FDI_Item_Count_Per_Page:"條/頁",FDI_Department:"部門",FDI_Role:"角色",FDI_Authority_Inherit:"權限繼承",FDI_No_Field_Select_Tip:"請至少勾選1個欄位,或點選「駁回」",FDI_Multipath_Setting:"多路徑設定",FDI_Exit_Multipath_Setting:"跳出多路徑設定",FDI_Multipath_Setting_Changed_Warning:"多路徑資訊已變更,您可能需要更新資料",FDI_Select_Path:"選擇要使用的路徑",FDI_Current_No_Multi_Path:"當前無多路徑",FDI_Review_Success:"審批成功",FDI_View_Apply_Status:"查看申請狀態",FDI_Pass_Apply:"通過申請",FDI_Apply_Success:"申請成功",FDI_Upload_Fail_Tooltip:"匯入失敗,檔案格式不符",FDI_Upload_Success_Tooltip:"匯入成功,共匯入{R1}個資源",FDI_Save_Import_Fail:"儲存失敗,請檢查匯入資訊",FDI_Save_Success:"儲存成功",FDI_Reviewer_Tooltip:"通過申請後,審批者將獲得對當前資料的授權權限",FDI_Publish_Checked_Error_Tooltip:"發佈失敗,請檢查欄位",FDI_Apply_Failed_Message:"申請失敗,請檢查申請資訊",FDI_Add_To:"新增到",FDI_Review_Failed:"審批失敗",FDI_Review_Failed_Already_Reviewed:"審批失敗,該申請已審批",FDI_Review_Failed_No_Data_Authority:"審批失敗,缺少資料授權權限",FDI_Review_Failed_No_User_Authority:"審批失敗,缺少使用者授權權限",FDI_Review_Failed_Applicant_Not_Exist:"審批失敗,申請者不存在或未啟動",FDI_Review_Failed_Resource_Not_Exist:"審批失敗,該資料不存在",FDI_Apply_Failed:"申請失敗",FDI_Apply_Failed_Already_Apply:"申請失敗,該權限已申請",FDI_Apply_Failed_Empty_Reviewer:"申請失敗,審批者為空,請聯絡管理者",FDI_Apply_Failed_No_Reviewer:"申請失敗,無可審批人員,請聯絡管理者",FDI_Apply_Failed_Resource_Not_Exist:"申請失敗,該資料不存在",FDI_No_Update_Time:"暫無更新時間",FDI_No_View_Authority:"無查看權限",FDI_Data_Deleted:"該資料已刪除",FDI_Field_Deleted:"該欄位已刪除",FDI_User_Deleted:"該使用者已刪除",FDI_Pass_Failed_Deleted:"通過失敗,該物件已刪除,請取消勾選或駁回申請",FDI_Model_No_Use_Permission:"無模型中心的使用權限,請聯絡管理者",FDI_Relation_Analysis_Table_Disable:"配置關係失敗,開啟權限繼承不可配置關係",FDI_No_Edit_Authority:"無編輯權限","FDI_No_Edit_Authority_{R1}":"無{R1}的編輯權限",FDI_No_Authority:"無權限","FDI_Source_Table_{R1}":"來源表: {R1}",FDI_Clear:"清空",FDI_Business_Model_Setting_Instruction:"已選擇項中存在不相關的指標和維度,請清空後重新選擇",FDI_No_Data_Authority:"沒有此資料權限,不支援建立",FDI_Cannot_Add_Table_In_Root:"不支援在根目錄新增表",FDI_Management:"管理",FDI_Tag_Name:"標籤名稱",FDI_Edit_Tag:"編輯標籤",FDI_Unnamed_New_Tag:"未命名新標籤",FDI_Tag_Category:"標籤分類",FDI_Tag_Description:"標籤描述",FDI_Tag_Application:"標籤應用",FDI_Data_Center:"資料中心",FDI_Enter_Analysis:"進入我的分析",FDI_Advanced_Search_Tip:"開啟後,支援多關鍵詞模糊搜尋和增強版搜尋算法。",FDI_Please_Input:"請輸入",FDI_Import_Indicator_Empty_Text:"當前沒有指標,請先匯入指標",FDI_Data_Catalogue:"資料目錄",FDI_Add_To_Subject_Tip:"要新增到哪個分析主題?",FDI_Data_Root:"全部資料",FDI_Reject_Reason_Placeholder:"填寫駁回申請的理由顯示在使用者發佈訊息中",FDI_I_Approved:"我審批的",FDI_Load_More:"載入更多",FDI_Tag_Empty_Text:"當前沒有標籤,請先建立標籤",FDI_Table_Cancel_Publish_Confirm_Message:"此資料集取消發佈後,所有配置的列欄權限和聯動都將被清除無法找回。",FDI_Inherit_Field_Tip:"當前資料開啟了繼承權限,實際授予的是繼承欄位的欄位權限",FDI_Table_No_Auth_Tip:"缺少資料使用權限,無法查看資料明細",FDI_Dimension_Cancel_Publish_Confirm_Message:"取消發佈後,所有配置的列欄權限和聯動都將被清除無法找回,使用當前維度的相關資源都將報錯。",FDI_Search_Result_Is_Empty:"搜尋結果為空",FDI_Checking:"審核中",FDI_Formula_Field_Invalid_Msg:"「{R1}」欄位指定不明確或不存在",FDI_Move_Fail:"行動失敗",FDI_Delete_Published_Resource_Warning:"無法刪除所選項中「已發佈」的資源",FDI_Review_Failed_Apply_Not_Exist:"審批失敗,申請不存在",FDI_All_Move_Fail:"行動失敗,請檢查資料狀態",FDI_Publish_Cancel_Apply_Success_Wait:"申請取消發佈成功,請等待批覆",FDI_Review_Failed_Not_Current_Data_Reviewer:"審批失敗,非當前資料審批者",FDI_Data_Duplicate:"有資料重名",FDI_Publish_Cancel_Apply_Fail_Same_Type:"申請取消發佈失敗,當前內容已申請取消發佈",FDI_Creator:"建立者","FDI_Last_Update_Time_{R1}":"最近更新:{R1}",FDI_Create_Base_Table_Engine_Setting_Tip:"建立基礎表(資料庫表、sql表、Excel表)的屬性設定",FDI_Field_Label:"欄位分組",FDI_Catalog_Folder_Delete_Confirm_Message:"此資料夾內的所有資源都將被刪除,相聯動的自助資料集/組件/儀表板/分析文檔也將受到影響,所有配置的列欄權限和聯動都將被清除無法找回,刪除的資源可以從建立者的回收站中找回。確定刪除“{R1}”?",FDI_Unnamed_Field:"未命名欄位",FDI_Type_Not_Support_Modify:"類型暫不支援修改",FDI_Tree_Hide_Tip:"已隱藏部分維度、指標",FDI_Show_No_Related_Fields:"顯示無聯動欄位",FDI_No_Auth_Or_Related_Tip:"由於缺少權限或與已選欄位無聯動,部分欄位無法使用且已被隱藏。",FDI_Search_History_Empty:"暫無搜尋記錄",FDI_View_Authority:"查看權限",FDI_Tag_Management:"標籤管理",FDI_Please_Input_Field_Name:"請輸入欄位名稱",FDI_Please_Select_Field_Type:"請選擇欄位類型",FDI_No_Extend_Field:"暫無擴展欄位",FDI_Tree_No_Hide_Tip:"隱藏部分維度、指標",FDI_Show_No_Auth_Fields:"顯示無使用權限的欄位",FDI_No_Auth_Tip:"無法選擇,無使用權限。",FDI_To_Apply_Use:"去申請使用",FDI_No_Related_Tip:"無法選擇,該欄位與已選欄位無聯動",FDI_Search_Correct_Tip:"已顯示“{R1}“,仍然搜尋:",FDI_Tag:"標籤",FDI_Data_Privilege:"資料權限",FDI_Update_Time:"更新時間","Tag-Root":"全部標籤",FDI_Extend_Field:"擴展欄位",FDI_Add_Field:"新增欄位",FDI_Delete_Tag_Confirm_Title:"確定要刪除該標籤嗎?",FDI_Delete_Tag_Confirm_Message:"刪除標籤會影響已使用該標籤做標記的資料",FDI_Delete_Tag_Folder_Confirm_Title:"確定要刪除該資料夾嗎?",FDI_Delete_Tag_Folder_Confirm_Message:"該資料夾內的標籤也會全部刪除,且會影響已使用資料夾內標籤做標記的資料"},_ae="Fine_Empty_String";let D2;function mae(e=""){D2=e}function xae(){return D2}function eN(){let e=Tb.en_US;return navigator&&(e=navigator.languages?.[0]||navigator.language),e}function bae(e){const t=arguments.length;if(t>1)for(let r=1;ro&&o.length===t.length))return r}return Iae.en_US}function Dae(e,t){for(const r in Cb){const n=Cb[r];let a={};if(Te.isFunction(n)?a=n(e):Te.isObject(n)&&(a=n[e]||n[Tb.en_US]),a[t])return a[t]}return""}const Cb={default:{zh_CN:hae,zh_TW:gae,en_US:fae,ja_JP:pae,ko_KR:vae}},Iae={zh_CN:"zh_CN",zh_TW:"zh_TW",en_US:"en_US",ja_JP:"ja_JP",ko_KR:"ko_KR"},Tb={auto:"",zh_CN:"zh-CN",zh_TW:"zh-TW",en_US:"en-US",ja_JP:"ja-JP",ko_KR:"ko-KR"},nN={zh_CN:"^(ZH-)(CN|HANS|CHS)+.*$",zh_TW:"^(ZH-)(TW|HANT|CHT|HK|MO|SG)+.*$",en_US:"^(EN).*$",ja_JP:"^(JA)+.*$",ko_KR:"^(KO)+.*$"},Fae=()=>{const e=JP();try{e.BI?.Services?.getService?.("dec.service.global")?.getLanguage&&mae(Tb[e.BI.Services.getService("dec.service.global").getLanguage()])}catch(t){console.log(t)}window.IntegrationI18n={getLocale:at}};function aN(e,t){var r=e.split(";");r.pop();for(var n=[],a=0;at=>{const r=Aae.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),zi=e=>(e=e.toLowerCase(),t=>Rb(t)===e),Ob=e=>t=>typeof t===e,{isArray:Tf}=Array,dh=Ob("undefined");function kae(e){return e!==null&&!dh(e)&&e.constructor!==null&&!dh(e.constructor)&&ri(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const uN=zi("ArrayBuffer");function Pae(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&uN(e.buffer),t}const Nae=Ob("string"),ri=Ob("function"),dN=Ob("number"),Ab=e=>e!==null&&typeof e=="object",Mae=e=>e===!0||e===!1,kb=e=>{if(Rb(e)!=="object")return!1;const t=I2(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Lae=zi("Date"),zae=zi("File"),Bae=zi("Blob"),jae=zi("FileList"),Uae=e=>Ab(e)&&ri(e.pipe),Hae=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||ri(e.append)&&((t=Rb(e))==="formdata"||t==="object"&&ri(e.toString)&&e.toString()==="[object FormData]"))},Wae=zi("URLSearchParams"),[Vae,Kae,qae,Yae]=["ReadableStream","Request","Response","Headers"].map(zi),Gae=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function fh(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,a;if(typeof e!="object"&&(e=[e]),Tf(e))for(n=0,a=e.length;n0;)if(a=r[n],t===a.toLowerCase())return a;return null}const pN=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),vN=e=>!dh(e)&&e!==pN;function F2(){const{caseless:e}=vN(this)&&this||{},t={},r=(n,a)=>{const o=e&&fN(t,a)||a;kb(t[o])&&kb(n)?t[o]=F2(t[o],n):kb(n)?t[o]=F2({},n):Tf(n)?t[o]=n.slice():t[o]=n};for(let n=0,a=arguments.length;n(fh(t,(a,o)=>{r&&ri(a)?e[o]=cN(a,r):e[o]=a},{allOwnKeys:n}),e),Zae=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Qae=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},Jae=(e,t,r,n)=>{let a,o,i;const l={};if(t=t||{},e==null)return t;do{for(a=Object.getOwnPropertyNames(e),o=a.length;o-- >0;)i=a[o],(!n||n(i,e,t))&&!l[i]&&(t[i]=e[i],l[i]=!0);e=r!==!1&&I2(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},eoe=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return n!==-1&&n===r},toe=e=>{if(!e)return null;if(Tf(e))return e;let t=e.length;if(!dN(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},roe=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&I2(Uint8Array)),noe=(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let a;for(;(a=n.next())&&!a.done;){const o=a.value;t.call(e,o[0],o[1])}},aoe=(e,t)=>{let r;const n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},ooe=zi("HTMLFormElement"),ioe=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,a){return n.toUpperCase()+a}),hN=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),loe=zi("RegExp"),gN=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};fh(r,(a,o)=>{let i;(i=t(a,o,e))!==!1&&(n[o]=i||a)}),Object.defineProperties(e,n)},soe=e=>{gN(e,(t,r)=>{if(ri(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;const n=e[r];if(ri(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},coe=(e,t)=>{const r={},n=a=>{a.forEach(o=>{r[o]=!0})};return Tf(e)?n(e):n(String(e).split(t)),r},uoe=()=>{},doe=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t,$2="abcdefghijklmnopqrstuvwxyz",_N="0123456789",mN={DIGIT:_N,ALPHA:$2,ALPHA_DIGIT:$2+$2.toUpperCase()+_N},foe=(e=16,t=mN.ALPHA_DIGIT)=>{let r="";const{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r};function poe(e){return!!(e&&ri(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const voe=e=>{const t=new Array(10),r=(n,a)=>{if(Ab(n)){if(t.indexOf(n)>=0)return;if(!("toJSON"in n)){t[a]=n;const o=Tf(n)?[]:{};return fh(n,(i,l)=>{const s=r(i,a+1);!dh(s)&&(o[l]=s)}),t[a]=void 0,o}}return n};return r(e,0)},hoe=zi("AsyncFunction"),xe={isArray:Tf,isArrayBuffer:uN,isBuffer:kae,isFormData:Hae,isArrayBufferView:Pae,isString:Nae,isNumber:dN,isBoolean:Mae,isObject:Ab,isPlainObject:kb,isReadableStream:Vae,isRequest:Kae,isResponse:qae,isHeaders:Yae,isUndefined:dh,isDate:Lae,isFile:zae,isBlob:Bae,isRegExp:loe,isFunction:ri,isStream:Uae,isURLSearchParams:Wae,isTypedArray:roe,isFileList:jae,forEach:fh,merge:F2,extend:Xae,trim:Gae,stripBOM:Zae,inherits:Qae,toFlatObject:Jae,kindOf:Rb,kindOfTest:zi,endsWith:eoe,toArray:toe,forEachEntry:noe,matchAll:aoe,isHTMLForm:ooe,hasOwnProperty:hN,hasOwnProp:hN,reduceDescriptors:gN,freezeMethods:soe,toObjectSet:coe,toCamelCase:ioe,noop:uoe,toFiniteNumber:doe,findKey:fN,global:pN,isContextDefined:vN,ALPHABET:mN,generateString:foe,isSpecCompliantForm:poe,toJSONObject:voe,isAsyncFn:hoe,isThenable:e=>e&&(Ab(e)||ri(e))&&ri(e.then)&&ri(e.catch)};function rr(e,t,r,n,a){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),a&&(this.response=a)}xe.inherits(rr,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:xe.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const xN=rr.prototype,bN={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{bN[e]={value:e}}),Object.defineProperties(rr,bN),Object.defineProperty(xN,"isAxiosError",{value:!0}),rr.from=(e,t,r,n,a,o)=>{const i=Object.create(xN);return xe.toFlatObject(e,i,function(s){return s!==Error.prototype},l=>l!=="isAxiosError"),rr.call(i,e.message,t,r,n,a),i.cause=e,i.name=e.name,o&&Object.assign(i,o),i};const goe=null;function S2(e){return xe.isPlainObject(e)||xe.isArray(e)}function yN(e){return xe.endsWith(e,"[]")?e.slice(0,-2):e}function wN(e,t,r){return e?e.concat(t).map(function(a,o){return a=yN(a),!r&&o?"["+a+"]":a}).join(r?".":""):t}function _oe(e){return xe.isArray(e)&&!e.some(S2)}const moe=xe.toFlatObject(xe,{},null,function(t){return/^is[A-Z]/.test(t)});function Pb(e,t,r){if(!xe.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,r=xe.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(_,w){return!xe.isUndefined(w[_])});const n=r.metaTokens,a=r.visitor||d,o=r.dots,i=r.indexes,s=(r.Blob||typeof Blob<"u"&&Blob)&&xe.isSpecCompliantForm(t);if(!xe.isFunction(a))throw new TypeError("visitor must be a function");function c(g){if(g===null)return"";if(xe.isDate(g))return g.toISOString();if(!s&&xe.isBlob(g))throw new rr("Blob is not supported. Use a Buffer instead.");return xe.isArrayBuffer(g)||xe.isTypedArray(g)?s&&typeof Blob=="function"?new Blob([g]):Buffer.from(g):g}function d(g,_,w){let b=g;if(g&&!w&&typeof g=="object"){if(xe.endsWith(_,"{}"))_=n?_:_.slice(0,-2),g=JSON.stringify(g);else if(xe.isArray(g)&&_oe(g)||(xe.isFileList(g)||xe.endsWith(_,"[]"))&&(b=xe.toArray(g)))return _=yN(_),b.forEach(function(D,F){!(xe.isUndefined(D)||D===null)&&t.append(i===!0?wN([_],F,o):i===null?_:_+"[]",c(D))}),!1}return S2(g)?!0:(t.append(wN(w,_,o),c(g)),!1)}const f=[],v=Object.assign(moe,{defaultVisitor:d,convertValue:c,isVisitable:S2});function h(g,_){if(!xe.isUndefined(g)){if(f.indexOf(g)!==-1)throw Error("Circular reference detected in "+_.join("."));f.push(g),xe.forEach(g,function(b,y){(!(xe.isUndefined(b)||b===null)&&a.call(t,b,xe.isString(y)?y.trim():y,_,v))===!0&&h(b,_?_.concat(y):[y])}),f.pop()}}if(!xe.isObject(e))throw new TypeError("data must be an object");return h(e),t}function DN(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function E2(e,t){this._pairs=[],e&&Pb(e,this,t)}const IN=E2.prototype;IN.append=function(t,r){this._pairs.push([t,r])},IN.toString=function(t){const r=t?function(n){return t.call(this,n,DN)}:DN;return this._pairs.map(function(a){return r(a[0])+"="+r(a[1])},"").join("&")};function xoe(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function FN(e,t,r){if(!t)return e;const n=r&&r.encode||xoe,a=r&&r.serialize;let o;if(a?o=a(t,r):o=xe.isURLSearchParams(t)?t.toString():new E2(t,r).toString(n),o){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class boe{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){xe.forEach(this.handlers,function(n){n!==null&&t(n)})}}const $N=boe,SN={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},yoe={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:E2,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},C2=typeof window<"u"&&typeof document<"u",woe=(e=>C2&&["ReactNative","NativeScript","NS"].indexOf(e)<0)(typeof navigator<"u"&&navigator.product),Doe=(()=>typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function")(),Ioe=C2&&window.location.href||"http://localhost",Bi={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:C2,hasStandardBrowserEnv:woe,hasStandardBrowserWebWorkerEnv:Doe,origin:Ioe},Symbol.toStringTag,{value:"Module"})),...yoe};function Foe(e,t){return Pb(e,new Bi.classes.URLSearchParams,Object.assign({visitor:function(r,n,a,o){return Bi.isNode&&xe.isBuffer(r)?(this.append(n,r.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function $oe(e){return xe.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Soe(e){const t={},r=Object.keys(e);let n;const a=r.length;let o;for(n=0;n=r.length;return i=!i&&xe.isArray(a)?a.length:i,s?(xe.hasOwnProp(a,i)?a[i]=[a[i],n]:a[i]=n,!l):((!a[i]||!xe.isObject(a[i]))&&(a[i]=[]),t(r,n,a[i],o)&&xe.isArray(a[i])&&(a[i]=Soe(a[i])),!l)}if(xe.isFormData(e)&&xe.isFunction(e.entries)){const r={};return xe.forEachEntry(e,(n,a)=>{t($oe(n),a,r,0)}),r}return null}function Eoe(e,t,r){if(xe.isString(e))try{return(t||JSON.parse)(e),xe.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}const T2={transitional:SN,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){const n=r.getContentType()||"",a=n.indexOf("application/json")>-1,o=xe.isObject(t);if(o&&xe.isHTMLForm(t)&&(t=new FormData(t)),xe.isFormData(t))return a?JSON.stringify(EN(t)):t;if(xe.isArrayBuffer(t)||xe.isBuffer(t)||xe.isStream(t)||xe.isFile(t)||xe.isBlob(t)||xe.isReadableStream(t))return t;if(xe.isArrayBufferView(t))return t.buffer;if(xe.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Foe(t,this.formSerializer).toString();if((l=xe.isFileList(t))||n.indexOf("multipart/form-data")>-1){const s=this.env&&this.env.FormData;return Pb(l?{"files[]":t}:t,s&&new s,this.formSerializer)}}return o||a?(r.setContentType("application/json",!1),Eoe(t)):t}],transformResponse:[function(t){const r=this.transitional||T2.transitional,n=r&&r.forcedJSONParsing,a=this.responseType==="json";if(xe.isResponse(t)||xe.isReadableStream(t))return t;if(t&&xe.isString(t)&&(n&&!this.responseType||a)){const i=!(r&&r.silentJSONParsing)&&a;try{return JSON.parse(t)}catch(l){if(i)throw l.name==="SyntaxError"?rr.from(l,rr.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Bi.classes.FormData,Blob:Bi.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};xe.forEach(["delete","get","head","post","put","patch"],e=>{T2.headers[e]={}});const R2=T2,Coe=xe.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Toe=e=>{const t={};let r,n,a;return e&&e.split(` -`).forEach(function(i){a=i.indexOf(":"),r=i.substring(0,a).trim().toLowerCase(),n=i.substring(a+1).trim(),!(!r||t[r]&&Coe[r])&&(r==="set-cookie"?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)}),t},CN=Symbol("internals");function ph(e){return e&&String(e).trim().toLowerCase()}function Nb(e){return e===!1||e==null?e:xe.isArray(e)?e.map(Nb):String(e)}function Roe(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}const Ooe=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function O2(e,t,r,n,a){if(xe.isFunction(n))return n.call(this,t,r);if(a&&(t=r),!!xe.isString(t)){if(xe.isString(n))return t.indexOf(n)!==-1;if(xe.isRegExp(n))return n.test(t)}}function Aoe(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function koe(e,t){const r=xe.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(a,o,i){return this[n].call(this,t,a,o,i)},configurable:!0})})}class Mb{constructor(t){t&&this.set(t)}set(t,r,n){const a=this;function o(l,s,c){const d=ph(s);if(!d)throw new Error("header name must be a non-empty string");const f=xe.findKey(a,d);(!f||a[f]===void 0||c===!0||c===void 0&&a[f]!==!1)&&(a[f||s]=Nb(l))}const i=(l,s)=>xe.forEach(l,(c,d)=>o(c,d,s));if(xe.isPlainObject(t)||t instanceof this.constructor)i(t,r);else if(xe.isString(t)&&(t=t.trim())&&!Ooe(t))i(Toe(t),r);else if(xe.isHeaders(t))for(const[l,s]of t.entries())o(s,l,n);else t!=null&&o(r,t,n);return this}get(t,r){if(t=ph(t),t){const n=xe.findKey(this,t);if(n){const a=this[n];if(!r)return a;if(r===!0)return Roe(a);if(xe.isFunction(r))return r.call(this,a,n);if(xe.isRegExp(r))return r.exec(a);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=ph(t),t){const n=xe.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||O2(this,this[n],n,r)))}return!1}delete(t,r){const n=this;let a=!1;function o(i){if(i=ph(i),i){const l=xe.findKey(n,i);l&&(!r||O2(n,n[l],l,r))&&(delete n[l],a=!0)}}return xe.isArray(t)?t.forEach(o):o(t),a}clear(t){const r=Object.keys(this);let n=r.length,a=!1;for(;n--;){const o=r[n];(!t||O2(this,this[o],o,t,!0))&&(delete this[o],a=!0)}return a}normalize(t){const r=this,n={};return xe.forEach(this,(a,o)=>{const i=xe.findKey(n,o);if(i){r[i]=Nb(a),delete r[o];return}const l=t?Aoe(o):String(o).trim();l!==o&&delete r[o],r[l]=Nb(a),n[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const r=Object.create(null);return xe.forEach(this,(n,a)=>{n!=null&&n!==!1&&(r[a]=t&&xe.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(` -`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){const n=new this(t);return r.forEach(a=>n.set(a)),n}static accessor(t){const n=(this[CN]=this[CN]={accessors:{}}).accessors,a=this.prototype;function o(i){const l=ph(i);n[l]||(koe(a,i),n[l]=!0)}return xe.isArray(t)?t.forEach(o):o(t),this}}Mb.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),xe.reduceDescriptors(Mb.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(n){this[r]=n}}}),xe.freezeMethods(Mb);const ji=Mb;function A2(e,t){const r=this||R2,n=t||r,a=ji.from(n.headers);let o=n.data;return xe.forEach(e,function(l){o=l.call(r,o,a.normalize(),t?t.status:void 0)}),a.normalize(),o}function TN(e){return!!(e&&e.__CANCEL__)}function Rf(e,t,r){rr.call(this,e??"canceled",rr.ERR_CANCELED,t,r),this.name="CanceledError"}xe.inherits(Rf,rr,{__CANCEL__:!0});function RN(e,t,r){const n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new rr("Request failed with status code "+r.status,[rr.ERR_BAD_REQUEST,rr.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function Poe(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Noe(e,t){e=e||10;const r=new Array(e),n=new Array(e);let a=0,o=0,i;return t=t!==void 0?t:1e3,function(s){const c=Date.now(),d=n[o];i||(i=c),r[a]=s,n[a]=c;let f=o,v=0;for(;f!==a;)v+=r[f++],f=f%e;if(a=(a+1)%e,a===o&&(o=(o+1)%e),c-in)return a&&(clearTimeout(a),a=null),r=l,e.apply(null,arguments);a||(a=setTimeout(()=>(a=null,r=Date.now(),e.apply(null,arguments)),n-(l-r)))}}const Lb=(e,t,r=3)=>{let n=0;const a=Noe(50,250);return Moe(o=>{const i=o.loaded,l=o.lengthComputable?o.total:void 0,s=i-n,c=a(s),d=i<=l;n=i;const f={loaded:i,total:l,progress:l?i/l:void 0,bytes:s,rate:c||void 0,estimated:c&&l&&d?(l-i)/c:void 0,event:o,lengthComputable:l!=null};f[t?"download":"upload"]=!0,e(f)},r)},Loe=Bi.hasStandardBrowserEnv?function(){const t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a");let n;function a(o){let i=o;return t&&(r.setAttribute("href",i),i=r.href),r.setAttribute("href",i),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=a(window.location.href),function(i){const l=xe.isString(i)?a(i):i;return l.protocol===n.protocol&&l.host===n.host}}():function(){return function(){return!0}}(),zoe=Bi.hasStandardBrowserEnv?{write(e,t,r,n,a,o){const i=[e+"="+encodeURIComponent(t)];xe.isNumber(r)&&i.push("expires="+new Date(r).toGMTString()),xe.isString(n)&&i.push("path="+n),xe.isString(a)&&i.push("domain="+a),o===!0&&i.push("secure"),document.cookie=i.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function Boe(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function joe(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function ON(e,t){return e&&!Boe(t)?joe(e,t):t}const AN=e=>e instanceof ji?{...e}:e;function Su(e,t){t=t||{};const r={};function n(c,d,f){return xe.isPlainObject(c)&&xe.isPlainObject(d)?xe.merge.call({caseless:f},c,d):xe.isPlainObject(d)?xe.merge({},d):xe.isArray(d)?d.slice():d}function a(c,d,f){if(xe.isUndefined(d)){if(!xe.isUndefined(c))return n(void 0,c,f)}else return n(c,d,f)}function o(c,d){if(!xe.isUndefined(d))return n(void 0,d)}function i(c,d){if(xe.isUndefined(d)){if(!xe.isUndefined(c))return n(void 0,c)}else return n(void 0,d)}function l(c,d,f){if(f in t)return n(c,d);if(f in e)return n(void 0,c)}const s={url:o,method:o,data:o,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:l,headers:(c,d)=>a(AN(c),AN(d),!0)};return xe.forEach(Object.keys(Object.assign({},e,t)),function(d){const f=s[d]||a,v=f(e[d],t[d],d);xe.isUndefined(v)&&f!==l||(r[d]=v)}),r}const kN=e=>{const t=Su({},e);let{data:r,withXSRFToken:n,xsrfHeaderName:a,xsrfCookieName:o,headers:i,auth:l}=t;t.headers=i=ji.from(i),t.url=FN(ON(t.baseURL,t.url),e.params,e.paramsSerializer),l&&i.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let s;if(xe.isFormData(r)){if(Bi.hasStandardBrowserEnv||Bi.hasStandardBrowserWebWorkerEnv)i.setContentType(void 0);else if((s=i.getContentType())!==!1){const[c,...d]=s?s.split(";").map(f=>f.trim()).filter(Boolean):[];i.setContentType([c||"multipart/form-data",...d].join("; "))}}if(Bi.hasStandardBrowserEnv&&(n&&xe.isFunction(n)&&(n=n(t)),n||n!==!1&&Loe(t.url))){const c=a&&o&&zoe.read(o);c&&i.set(a,c)}return t},Uoe=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(r,n){const a=kN(e);let o=a.data;const i=ji.from(a.headers).normalize();let{responseType:l}=a,s;function c(){a.cancelToken&&a.cancelToken.unsubscribe(s),a.signal&&a.signal.removeEventListener("abort",s)}let d=new XMLHttpRequest;d.open(a.method.toUpperCase(),a.url,!0),d.timeout=a.timeout;function f(){if(!d)return;const h=ji.from("getAllResponseHeaders"in d&&d.getAllResponseHeaders()),_={data:!l||l==="text"||l==="json"?d.responseText:d.response,status:d.status,statusText:d.statusText,headers:h,config:e,request:d};RN(function(b){r(b),c()},function(b){n(b),c()},_),d=null}"onloadend"in d?d.onloadend=f:d.onreadystatechange=function(){!d||d.readyState!==4||d.status===0&&!(d.responseURL&&d.responseURL.indexOf("file:")===0)||setTimeout(f)},d.onabort=function(){d&&(n(new rr("Request aborted",rr.ECONNABORTED,a,d)),d=null)},d.onerror=function(){n(new rr("Network Error",rr.ERR_NETWORK,a,d)),d=null},d.ontimeout=function(){let g=a.timeout?"timeout of "+a.timeout+"ms exceeded":"timeout exceeded";const _=a.transitional||SN;a.timeoutErrorMessage&&(g=a.timeoutErrorMessage),n(new rr(g,_.clarifyTimeoutError?rr.ETIMEDOUT:rr.ECONNABORTED,a,d)),d=null},o===void 0&&i.setContentType(null),"setRequestHeader"in d&&xe.forEach(i.toJSON(),function(g,_){d.setRequestHeader(_,g)}),xe.isUndefined(a.withCredentials)||(d.withCredentials=!!a.withCredentials),l&&l!=="json"&&(d.responseType=a.responseType),typeof a.onDownloadProgress=="function"&&d.addEventListener("progress",Lb(a.onDownloadProgress,!0)),typeof a.onUploadProgress=="function"&&d.upload&&d.upload.addEventListener("progress",Lb(a.onUploadProgress)),(a.cancelToken||a.signal)&&(s=h=>{d&&(n(!h||h.type?new Rf(null,e,d):h),d.abort(),d=null)},a.cancelToken&&a.cancelToken.subscribe(s),a.signal&&(a.signal.aborted?s():a.signal.addEventListener("abort",s)));const v=Poe(a.url);if(v&&Bi.protocols.indexOf(v)===-1){n(new rr("Unsupported protocol "+v+":",rr.ERR_BAD_REQUEST,e));return}d.send(o||null)})},Hoe=(e,t)=>{let r=new AbortController,n;const a=function(s){if(!n){n=!0,i();const c=s instanceof Error?s:this.reason;r.abort(c instanceof rr?c:new Rf(c instanceof Error?c.message:c))}};let o=t&&setTimeout(()=>{a(new rr(`timeout ${t} of ms exceeded`,rr.ETIMEDOUT))},t);const i=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach(s=>{s&&(s.removeEventListener?s.removeEventListener("abort",a):s.unsubscribe(a))}),e=null)};e.forEach(s=>s&&s.addEventListener&&s.addEventListener("abort",a));const{signal:l}=r;return l.unsubscribe=i,[l,()=>{o&&clearTimeout(o),o=null}]},Woe=function*(e,t){let r=e.byteLength;if(!t||r{const o=Voe(e,t,a);let i=0;return new ReadableStream({type:"bytes",async pull(l){const{done:s,value:c}=await o.next();if(s){l.close(),n();return}let d=c.byteLength;r&&r(i+=d),l.enqueue(new Uint8Array(c))},cancel(l){return n(l),o.return()}},{highWaterMark:2})},NN=(e,t)=>{const r=e!=null;return n=>setTimeout(()=>t({lengthComputable:r,total:e,loaded:n}))},zb=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",MN=zb&&typeof ReadableStream=="function",k2=zb&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),Koe=MN&&(()=>{let e=!1;const t=new Request(Bi.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t})(),LN=64*1024,P2=MN&&!!(()=>{try{return xe.isReadableStream(new Response("").body)}catch{}})(),Bb={stream:P2&&(e=>e.body)};zb&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!Bb[t]&&(Bb[t]=xe.isFunction(e[t])?r=>r[t]():(r,n)=>{throw new rr(`Response type '${t}' is not supported`,rr.ERR_NOT_SUPPORT,n)})})})(new Response);const qoe=async e=>{if(e==null)return 0;if(xe.isBlob(e))return e.size;if(xe.isSpecCompliantForm(e))return(await new Request(e).arrayBuffer()).byteLength;if(xe.isArrayBufferView(e))return e.byteLength;if(xe.isURLSearchParams(e)&&(e=e+""),xe.isString(e))return(await k2(e)).byteLength},Yoe=async(e,t)=>{const r=xe.toFiniteNumber(e.getContentLength());return r??qoe(t)},N2={http:goe,xhr:Uoe,fetch:zb&&(async e=>{let{url:t,method:r,data:n,signal:a,cancelToken:o,timeout:i,onDownloadProgress:l,onUploadProgress:s,responseType:c,headers:d,withCredentials:f="same-origin",fetchOptions:v}=kN(e);c=c?(c+"").toLowerCase():"text";let[h,g]=a||o||i?Hoe([a,o],i):[],_,w;const b=()=>{!_&&setTimeout(()=>{h&&h.unsubscribe()}),_=!0};let y;try{if(s&&Koe&&r!=="get"&&r!=="head"&&(y=await Yoe(d,n))!==0){let I=new Request(t,{method:"POST",body:n,duplex:"half"}),C;xe.isFormData(n)&&(C=I.headers.get("content-type"))&&d.setContentType(C),I.body&&(n=PN(I.body,LN,NN(y,Lb(s)),null,k2))}xe.isString(f)||(f=f?"cors":"omit"),w=new Request(t,{...v,signal:h,method:r.toUpperCase(),headers:d.normalize().toJSON(),body:n,duplex:"half",withCredentials:f});let D=await fetch(w);const F=P2&&(c==="stream"||c==="response");if(P2&&(l||F)){const I={};["status","statusText","headers"].forEach(R=>{I[R]=D[R]});const C=xe.toFiniteNumber(D.headers.get("content-length"));D=new Response(PN(D.body,LN,l&&NN(C,Lb(l,!0)),F&&b,k2),I)}c=c||"text";let S=await Bb[xe.findKey(Bb,c)||"text"](D,e);return!F&&b(),g&&g(),await new Promise((I,C)=>{RN(I,C,{data:S,headers:ji.from(D.headers),status:D.status,statusText:D.statusText,config:e,request:w})})}catch(D){throw b(),D&&D.name==="TypeError"&&/fetch/i.test(D.message)?Object.assign(new rr("Network Error",rr.ERR_NETWORK,e,w),{cause:D.cause||D}):rr.from(D,D&&D.code,e,w)}})};xe.forEach(N2,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const zN=e=>`- ${e}`,Goe=e=>xe.isFunction(e)||e===null||e===!1,BN={getAdapter:e=>{e=xe.isArray(e)?e:[e];const{length:t}=e;let r,n;const a={};for(let o=0;o`adapter ${l} `+(s===!1?"is not supported by the environment":"is not available in the build"));let i=t?o.length>1?`since : -`+o.map(zN).join(` -`):" "+zN(o[0]):"as no adapter specified";throw new rr("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return n},adapters:N2};function M2(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Rf(null,e)}function jN(e){return M2(e),e.headers=ji.from(e.headers),e.data=A2.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),BN.getAdapter(e.adapter||R2.adapter)(e).then(function(n){return M2(e),n.data=A2.call(e,e.transformResponse,n),n.headers=ji.from(n.headers),n},function(n){return TN(n)||(M2(e),n&&n.response&&(n.response.data=A2.call(e,e.transformResponse,n.response),n.response.headers=ji.from(n.response.headers))),Promise.reject(n)})}const UN="1.7.2",L2={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{L2[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});const HN={};L2.transitional=function(t,r,n){function a(o,i){return"[Axios v"+UN+"] Transitional option '"+o+"'"+i+(n?". "+n:"")}return(o,i,l)=>{if(t===!1)throw new rr(a(i," has been removed"+(r?" in "+r:"")),rr.ERR_DEPRECATED);return r&&!HN[i]&&(HN[i]=!0,console.warn(a(i," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(o,i,l):!0}};function Xoe(e,t,r){if(typeof e!="object")throw new rr("options must be an object",rr.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let a=n.length;for(;a-- >0;){const o=n[a],i=t[o];if(i){const l=e[o],s=l===void 0||i(l,o,e);if(s!==!0)throw new rr("option "+o+" must be "+s,rr.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new rr("Unknown option "+o,rr.ERR_BAD_OPTION)}}const z2={assertOptions:Xoe,validators:L2},bc=z2.validators;class jb{constructor(t){this.defaults=t,this.interceptors={request:new $N,response:new $N}}async request(t,r){try{return await this._request(t,r)}catch(n){if(n instanceof Error){let a;Error.captureStackTrace?Error.captureStackTrace(a={}):a=new Error;const o=a.stack?a.stack.replace(/^.+\n/,""):"";try{n.stack?o&&!String(n.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(n.stack+=` -`+o):n.stack=o}catch{}}throw n}}_request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=Su(this.defaults,r);const{transitional:n,paramsSerializer:a,headers:o}=r;n!==void 0&&z2.assertOptions(n,{silentJSONParsing:bc.transitional(bc.boolean),forcedJSONParsing:bc.transitional(bc.boolean),clarifyTimeoutError:bc.transitional(bc.boolean)},!1),a!=null&&(xe.isFunction(a)?r.paramsSerializer={serialize:a}:z2.assertOptions(a,{encode:bc.function,serialize:bc.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let i=o&&xe.merge(o.common,o[r.method]);o&&xe.forEach(["delete","get","head","post","put","patch","common"],g=>{delete o[g]}),r.headers=ji.concat(i,o);const l=[];let s=!0;this.interceptors.request.forEach(function(_){typeof _.runWhen=="function"&&_.runWhen(r)===!1||(s=s&&_.synchronous,l.unshift(_.fulfilled,_.rejected))});const c=[];this.interceptors.response.forEach(function(_){c.push(_.fulfilled,_.rejected)});let d,f=0,v;if(!s){const g=[jN.bind(this),void 0];for(g.unshift.apply(g,l),g.push.apply(g,c),v=g.length,d=Promise.resolve(r);f{if(!n._listeners)return;let o=n._listeners.length;for(;o-- >0;)n._listeners[o](a);n._listeners=null}),this.promise.then=a=>{let o;const i=new Promise(l=>{n.subscribe(l),o=l}).then(a);return i.cancel=function(){n.unsubscribe(o)},i},t(function(o,i,l){n.reason||(n.reason=new Rf(o,i,l),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}static source(){let t;return{token:new B2(function(a){t=a}),cancel:t}}}const Zoe=B2;function Qoe(e){return function(r){return e.apply(null,r)}}function Joe(e){return xe.isObject(e)&&e.isAxiosError===!0}const j2={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(j2).forEach(([e,t])=>{j2[t]=e});const eie=j2;function WN(e){const t=new Ub(e),r=cN(Ub.prototype.request,t);return xe.extend(r,Ub.prototype,t,{allOwnKeys:!0}),xe.extend(r,t,null,{allOwnKeys:!0}),r.create=function(a){return WN(Su(e,a))},r}const Hn=WN(R2);Hn.Axios=Ub,Hn.CanceledError=Rf,Hn.CancelToken=Zoe,Hn.isCancel=TN,Hn.VERSION=UN,Hn.toFormData=Pb,Hn.AxiosError=rr,Hn.Cancel=Hn.CanceledError,Hn.all=function(t){return Promise.all(t)},Hn.spread=Qoe,Hn.isAxiosError=Joe,Hn.mergeConfig=Su,Hn.AxiosHeaders=ji,Hn.formToJSON=e=>EN(xe.isHTMLForm(e)?new FormData(e):e),Hn.getAdapter=BN.getAdapter,Hn.HttpStatusCode=eie,Hn.default=Hn;const U2=Hn,tie=()=>U2.create({baseURL:"https://mock.apifox.cn/m1/2034117-0-default/",timeout:6e4,headers:{"X-Requested-With":"XMLHttpRequest"}}),rie=e=>{e.interceptors.response.use(t=>t.status===200?t:Promise.reject("error"),t=>Promise.reject(t))};(()=>{const e=tie();return rie(e),e})();const NKt="";var yc={},nie={get exports(){return yc},set exports(e){yc=e}},H2={},aie={get exports(){return H2},set exports(e){H2=e}},vh=function(e){return e&&e.Math===Math&&e},_n=vh(typeof globalThis=="object"&&globalThis)||vh(typeof window=="object"&&window)||vh(typeof self=="object"&&self)||vh(typeof On=="object"&&On)||vh(typeof On=="object"&&On)||function(){return this}()||Function("return this")(),vr=function(e){try{return!!e()}catch{return!0}},oie=vr,hh=!oie(function(){var e=function(){}.bind();return typeof e!="function"||e.hasOwnProperty("prototype")}),iie=hh,VN=Function.prototype,KN=VN.apply,qN=VN.call,Of=typeof Reflect=="object"&&Reflect.apply||(iie?qN.bind(KN):function(){return qN.apply(KN,arguments)}),YN=hh,GN=Function.prototype,W2=GN.call,lie=YN&&GN.bind.bind(W2,W2),Dr=YN?lie:function(e){return function(){return W2.apply(e,arguments)}},XN=Dr,sie=XN({}.toString),cie=XN("".slice),wl=function(e){return cie(sie(e),8,-1)},uie=wl,die=Dr,ZN=function(e){if(uie(e)==="Function")return die(e)},V2=typeof document=="object"&&document.all,mn=typeof V2>"u"&&V2!==void 0?function(e){return typeof e=="function"||e===V2}:function(e){return typeof e=="function"},gh={},fie=vr,sa=!fie(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7}),pie=hh,Hb=Function.prototype.call,kr=pie?Hb.bind(Hb):function(){return Hb.apply(Hb,arguments)},Wb={},QN={}.propertyIsEnumerable,JN=Object.getOwnPropertyDescriptor,vie=JN&&!QN.call({1:2},1);Wb.f=vie?function(t){var r=JN(this,t);return!!r&&r.enumerable}:QN;var Eu=function(e,t){return{enumerable:!(e&1),configurable:!(e&2),writable:!(e&4),value:t}},hie=Dr,gie=vr,_ie=wl,K2=Object,mie=hie("".split),q2=gie(function(){return!K2("z").propertyIsEnumerable(0)})?function(e){return _ie(e)==="String"?mie(e,""):K2(e)}:K2,wc=function(e){return e==null},xie=wc,bie=TypeError,vs=function(e){if(xie(e))throw new bie("Can't call method on "+e);return e},yie=q2,wie=vs,hs=function(e){return yie(wie(e))},Die=mn,dn=function(e){return typeof e=="object"?e!==null:Die(e)},xn={},Y2=xn,G2=_n,Iie=mn,e8=function(e){return Iie(e)?e:void 0},ta=function(e,t){return arguments.length<2?e8(Y2[e])||e8(G2[e]):Y2[e]&&Y2[e][t]||G2[e]&&G2[e][t]},Fie=Dr,Sn=Fie({}.isPrototypeOf),Cu=typeof navigator<"u"&&String(navigator.userAgent)||"",t8=_n,X2=Cu,r8=t8.process,n8=t8.Deno,a8=r8&&r8.versions||n8&&n8.version,o8=a8&&a8.v8,Ui,Vb;o8&&(Ui=o8.split("."),Vb=Ui[0]>0&&Ui[0]<4?1:+(Ui[0]+Ui[1])),!Vb&&X2&&(Ui=X2.match(/Edge\/(\d+)/),(!Ui||Ui[1]>=74)&&(Ui=X2.match(/Chrome\/(\d+)/),Ui&&(Vb=+Ui[1])));var _h=Vb,i8=_h,$ie=vr,Sie=_n,Eie=Sie.String,Af=!!Object.getOwnPropertySymbols&&!$ie(function(){var e=Symbol("symbol detection");return!Eie(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&i8&&i8<41}),Cie=Af,l8=Cie&&!Symbol.sham&&typeof Symbol.iterator=="symbol",Tie=ta,Rie=mn,Oie=Sn,Aie=l8,kie=Object,mh=Aie?function(e){return typeof e=="symbol"}:function(e){var t=Tie("Symbol");return Rie(t)&&Oie(t.prototype,kie(e))},Pie=String,gs=function(e){try{return Pie(e)}catch{return"Object"}},Nie=mn,Mie=gs,Lie=TypeError,Wn=function(e){if(Nie(e))return e;throw new Lie(Mie(e)+" is not a function")},zie=Wn,Bie=wc,Z2=function(e,t){var r=e[t];return Bie(r)?void 0:zie(r)},Q2=kr,J2=mn,e$=dn,jie=TypeError,Uie=function(e,t){var r,n;if(t==="string"&&J2(r=e.toString)&&!e$(n=Q2(r,e))||J2(r=e.valueOf)&&!e$(n=Q2(r,e))||t!=="string"&&J2(r=e.toString)&&!e$(n=Q2(r,e)))return n;throw new jie("Can't convert object to primitive value")},xh={},Hie={get exports(){return xh},set exports(e){xh=e}},s8=!0,c8=_n,Wie=Object.defineProperty,Vie=function(e,t){try{Wie(c8,e,{value:t,configurable:!0,writable:!0})}catch{c8[e]=t}return t},Kie=_n,qie=Vie,u8="__core-js_shared__",d8=Hie.exports=Kie[u8]||qie(u8,{});(d8.versions||(d8.versions=[])).push({version:"3.37.1",mode:"pure",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.37.1/LICENSE",source:"https://github.com/zloirock/core-js"});var f8=xh,kf=function(e,t){return f8[e]||(f8[e]=t||{})},Yie=vs,Gie=Object,Ma=function(e){return Gie(Yie(e))},Xie=Dr,Zie=Ma,Qie=Xie({}.hasOwnProperty),Vn=Object.hasOwn||function(t,r){return Qie(Zie(t),r)},Jie=Dr,ele=0,tle=Math.random(),rle=Jie(1 .toString),Kb=function(e){return"Symbol("+(e===void 0?"":e)+")_"+rle(++ele+tle,36)},nle=_n,ale=kf,p8=Vn,ole=Kb,ile=Af,lle=l8,Pf=nle.Symbol,t$=ale("wks"),sle=lle?Pf.for||Pf:Pf&&Pf.withoutSetter||ole,an=function(e){return p8(t$,e)||(t$[e]=ile&&p8(Pf,e)?Pf[e]:sle("Symbol."+e)),t$[e]},cle=kr,v8=dn,h8=mh,ule=Z2,dle=Uie,fle=an,ple=TypeError,vle=fle("toPrimitive"),g8=function(e,t){if(!v8(e)||h8(e))return e;var r=ule(e,vle),n;if(r){if(t===void 0&&(t="default"),n=cle(r,e,t),!v8(n)||h8(n))return n;throw new ple("Can't convert object to primitive value")}return t===void 0&&(t="number"),dle(e,t)},hle=g8,gle=mh,r$=function(e){var t=hle(e,"string");return gle(t)?t:t+""},_le=_n,_8=dn,n$=_le.document,mle=_8(n$)&&_8(n$.createElement),a$=function(e){return mle?n$.createElement(e):{}},xle=sa,ble=vr,yle=a$,m8=!xle&&!ble(function(){return Object.defineProperty(yle("div"),"a",{get:function(){return 7}}).a!==7}),wle=sa,Dle=kr,Ile=Wb,Fle=Eu,$le=hs,Sle=r$,Ele=Vn,Cle=m8,x8=Object.getOwnPropertyDescriptor;gh.f=wle?x8:function(t,r){if(t=$le(t),r=Sle(r),Cle)try{return x8(t,r)}catch{}if(Ele(t,r))return Fle(!Dle(Ile.f,t,r),t[r])};var Tle=vr,Rle=mn,Ole=/#|\.prototype\./,bh=function(e,t){var r=kle[Ale(e)];return r===Nle?!0:r===Ple?!1:Rle(t)?Tle(t):!!t},Ale=bh.normalize=function(e){return String(e).replace(Ole,".").toLowerCase()},kle=bh.data={},Ple=bh.NATIVE="N",Nle=bh.POLYFILL="P",b8=bh,y8=ZN,Mle=Wn,Lle=hh,zle=y8(y8.bind),kn=function(e,t){return Mle(e),t===void 0?e:Lle?zle(e,t):function(){return e.apply(t,arguments)}},po={},Ble=sa,jle=vr,w8=Ble&&jle(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42}),Ule=dn,Hle=String,Wle=TypeError,xa=function(e){if(Ule(e))return e;throw new Wle(Hle(e)+" is not an object")},Vle=sa,Kle=m8,qle=w8,qb=xa,D8=r$,Yle=TypeError,o$=Object.defineProperty,Gle=Object.getOwnPropertyDescriptor,i$="enumerable",l$="configurable",s$="writable";po.f=Vle?qle?function(t,r,n){if(qb(t),r=D8(r),qb(n),typeof t=="function"&&r==="prototype"&&"value"in n&&s$ in n&&!n[s$]){var a=Gle(t,r);a&&a[s$]&&(t[r]=n.value,n={configurable:l$ in n?n[l$]:a[l$],enumerable:i$ in n?n[i$]:a[i$],writable:!1})}return o$(t,r,n)}:o$:function(t,r,n){if(qb(t),r=D8(r),qb(n),Kle)try{return o$(t,r,n)}catch{}if("get"in n||"set"in n)throw new Yle("Accessors not supported");return"value"in n&&(t[r]=n.value),t};var Xle=sa,Zle=po,Qle=Eu,Dc=Xle?function(e,t,r){return Zle.f(e,t,Qle(1,r))}:function(e,t,r){return e[t]=r,e},yh=_n,Jle=Of,ese=ZN,tse=mn,rse=gh.f,nse=b8,Nf=xn,ase=kn,Mf=Dc,I8=Vn,ose=function(e){var t=function(r,n,a){if(this instanceof t){switch(arguments.length){case 0:return new e;case 1:return new e(r);case 2:return new e(r,n)}return new e(r,n,a)}return Jle(e,this,arguments)};return t.prototype=e.prototype,t},Re=function(e,t){var r=e.target,n=e.global,a=e.stat,o=e.proto,i=n?yh:a?yh[r]:yh[r]&&yh[r].prototype,l=n?Nf:Nf[r]||Mf(Nf,r,{})[r],s=l.prototype,c,d,f,v,h,g,_,w,b;for(v in t)c=nse(n?v:r+(a?".":"#")+v,e.forced),d=!c&&i&&I8(i,v),g=l[v],d&&(e.dontCallGetSet?(b=rse(i,v),_=b&&b.value):_=i[v]),h=d&&_?_:t[v],!(!c&&!o&&typeof g==typeof h)&&(e.bind&&d?w=ase(h,yh):e.wrap&&d?w=ose(h):o&&tse(h)?w=ese(h):w=h,(e.sham||h&&h.sham||g&&g.sham)&&Mf(w,"sham",!0),Mf(l,v,w),o&&(f=r+"Prototype",I8(Nf,f)||Mf(Nf,f,{}),Mf(Nf[f],v,h),e.real&&s&&(c||!s[v])&&Mf(s,v,h)))},ise=Dr,Tu=ise([].slice),F8=Dr,lse=Wn,sse=dn,cse=Vn,$8=Tu,use=hh,S8=Function,dse=F8([].concat),fse=F8([].join),c$={},pse=function(e,t,r){if(!cse(c$,t)){for(var n=[],a=0;a0?Mse:Nse)(r)},zse=Lse,Ou=function(e){var t=+e;return t!==t||t===0?0:zse(t)},Bse=Ou,jse=Math.max,Use=Math.min,Xb=function(e,t){var r=Bse(e);return r<0?jse(r+t,0):Use(r,t)},Hse=Ou,Wse=Math.min,N8=function(e){var t=Hse(e);return t>0?Wse(t,9007199254740991):0},Vse=N8,ni=function(e){return Vse(e.length)},Kse=hs,qse=Xb,Yse=ni,M8=function(e){return function(t,r,n){var a=Kse(t),o=Yse(a);if(o===0)return!e&&-1;var i=qse(n,o),l;if(e&&r!==r){for(;o>i;)if(l=a[i++],l!==l)return!0}else for(;o>i;i++)if((e||i in a)&&a[i]===r)return e||i||0;return!e&&-1}},L8={includes:M8(!0),indexOf:M8(!1)},Dh={},Gse=Dr,v$=Vn,Xse=hs,Zse=L8.indexOf,Qse=Dh,z8=Gse([].push),B8=function(e,t){var r=Xse(e),n=0,a=[],o;for(o in r)!v$(Qse,o)&&v$(r,o)&&z8(a,o);for(;t.length>n;)v$(r,o=t[n++])&&(~Zse(a,o)||z8(a,o));return a},h$=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Jse=B8,ece=h$,Zb=Object.keys||function(t){return Jse(t,ece)},tce=sa,rce=w8,nce=po,ace=xa,oce=hs,ice=Zb;p$.f=tce&&!rce?Object.defineProperties:function(t,r){ace(t);for(var n=oce(r),a=ice(r),o=a.length,i=0,l;o>i;)nce.f(t,l=a[i++],n[l]);return t};var lce=ta,j8=lce("document","documentElement"),sce=kf,cce=Kb,U8=sce("keys"),Qb=function(e){return U8[e]||(U8[e]=cce(e))},uce=xa,dce=p$,H8=h$,fce=Dh,pce=j8,vce=a$,hce=Qb,W8=">",V8="<",g$="prototype",_$="script",K8=hce("IE_PROTO"),m$=function(){},q8=function(e){return V8+_$+W8+e+V8+"/"+_$+W8},Y8=function(e){e.write(q8("")),e.close();var t=e.parentWindow.Object;return e=null,t},gce=function(){var e=vce("iframe"),t="java"+_$+":",r;return e.style.display="none",pce.appendChild(e),e.src=String(t),r=e.contentWindow.document,r.open(),r.write(q8("document.F=Object")),r.close(),r.F},Jb,e0=function(){try{Jb=new ActiveXObject("htmlfile")}catch{}e0=typeof document<"u"?document.domain&&Jb?Y8(Jb):gce():Y8(Jb);for(var e=H8.length;e--;)delete e0[g$][H8[e]];return e0()};fce[K8]=!0;var Au=Object.create||function(t,r){var n;return t!==null?(m$[g$]=uce(t),n=new m$,m$[g$]=null,n[K8]=t):n=e0(),r===void 0?n:dce.f(n,r)},_ce=Re,mce=ta,x$=Of,xce=E8,G8=P8,bce=xa,X8=dn,yce=Au,Z8=vr,b$=mce("Reflect","construct"),wce=Object.prototype,Dce=[].push,Q8=Z8(function(){function e(){}return!(b$(function(){},[],e)instanceof e)}),J8=!Z8(function(){b$(function(){})}),eM=Q8||J8;_ce({target:"Reflect",stat:!0,forced:eM,sham:eM},{construct:function(t,r){G8(t),bce(r);var n=arguments.length<3?t:G8(arguments[2]);if(J8&&!Q8)return b$(t,r,n);if(t===n){switch(r.length){case 0:return new t;case 1:return new t(r[0]);case 2:return new t(r[0],r[1]);case 3:return new t(r[0],r[1],r[2]);case 4:return new t(r[0],r[1],r[2],r[3])}var a=[null];return x$(Dce,a,r),new(x$(xce,t,a))}var o=n.prototype,i=yce(X8(o)?o:wce),l=x$(t,i,r);return X8(l)?l:i}});var Ice=xn,Fce=Ice.Reflect.construct,$ce=Fce,Sce=$ce,Ece=Sce,Cce=Ece,Tce=Cce,Rce=Tce;(function(e){e.exports=Rce})(aie),function(e){e.exports=H2}(nie);const Pt=qt(yc);var t0={},Oce={get exports(){return t0},set exports(e){t0=e}},Ih={};Ih.f=Object.getOwnPropertySymbols;var tM=sa,Ace=Dr,kce=kr,Pce=vr,y$=Zb,Nce=Ih,Mce=Wb,Lce=Ma,zce=q2,Lf=Object.assign,rM=Object.defineProperty,Bce=Ace([].concat),jce=!Lf||Pce(function(){if(tM&&Lf({b:1},Lf(rM({},"a",{enumerable:!0,get:function(){rM(this,"b",{value:3,enumerable:!1})}}),{b:2})).b!==1)return!0;var e={},t={},r=Symbol("assign detection"),n="abcdefghijklmnopqrst";return e[r]=7,n.split("").forEach(function(a){t[a]=a}),Lf({},e)[r]!==7||y$(Lf({},t)).join("")!==n})?function(t,r){for(var n=Lce(t),a=arguments.length,o=1,i=Nce.f,l=Mce.f;a>o;)for(var s=zce(arguments[o++]),c=i?Bce(y$(s),i(s)):y$(s),d=c.length,f=0,v;d>f;)v=c[f++],(!tM||kce(l,s,v))&&(n[v]=s[v]);return n}:Lf,Uce=Re,nM=jce;Uce({target:"Object",stat:!0,arity:2,forced:Object.assign!==nM},{assign:nM});var Hce=xn,Wce=Hce.Object.assign,Vce=Wce,Kce=Vce,qce=Kce,Yce=qce,Gce=Yce,Xce=Gce;(function(e){e.exports=Xce})(Oce);const aM=qt(t0);var w$={},Zce={get exports(){return w$},set exports(e){w$=e}},Qce=Re,oM=E8;Qce({target:"Function",proto:!0,forced:Function.bind!==oM},{bind:oM});var Jce=_n,eue=xn,ca=function(e,t){var r=eue[e+"Prototype"],n=r&&r[t];if(n)return n;var a=Jce[e],o=a&&a.prototype;return o&&o[t]},tue=ca,rue=tue("Function","bind"),nue=Sn,aue=rue,D$=Function.prototype,oue=function(e){var t=e.bind;return e===D$||nue(D$,e)&&t===D$.bind?aue:t},iue=oue,lue=iue,sue=lue,cue=sue,uue=cue,due=uue;(function(e){e.exports=due})(Zce);const I$=qt(w$);function we(){var e;return we=aM?I$(e=aM).call(e):function(t){for(var r=1;rCue)throw Eue("Maximum allowed index exceeded");return e},Tue=sa,Rue=po,Oue=Eu,o0=function(e,t,r){Tue?Rue.f(e,t,Oue(0,r)):e[t]=r},sM=Ic,Aue=Gb,kue=dn,Pue=an,Nue=Pue("species"),cM=Array,Mue=function(e){var t;return sM(e)&&(t=e.constructor,Aue(t)&&(t===cM||sM(t.prototype))?t=void 0:kue(t)&&(t=t[Nue],t===null&&(t=void 0))),t===void 0?cM:t},Lue=Mue,i0=function(e,t){return new(Lue(e))(t===0?0:t)},zue=vr,Bue=an,jue=_h,Uue=Bue("species"),Fh=function(e){return jue>=51||!zue(function(){var t=[],r=t.constructor={};return r[Uue]=function(){return{foo:1}},t[e](Boolean).foo!==1})},Hue=Re,Wue=vr,Vue=Ic,Kue=dn,que=Ma,Yue=ni,uM=a0,dM=o0,Gue=i0,Xue=Fh,Zue=an,Que=_h,fM=Zue("isConcatSpreadable"),Jue=Que>=51||!Wue(function(){var e=[];return e[fM]=!1,e.concat()[0]!==e}),ede=function(e){if(!Kue(e))return!1;var t=e[fM];return t!==void 0?!!t:Vue(e)},tde=!Jue||!Xue("concat");Hue({target:"Array",proto:!0,arity:1,forced:tde},{concat:function(t){var r=que(this),n=Gue(r,0),a=0,o,i,l,s,c;for(o=-1,l=arguments.length;ow;w++)if((l||w in h)&&(D=h[w],F=_(D,w,v),e))if(t)y[w]=F;else if(F)switch(e){case 3:return!0;case 5:return D;case 6:return w;case 2:wM(y,D)}else switch(e){case 4:return!1;case 7:wM(y,D)}return o?-1:n||a?a:y}},Ec={forEach:Sc(0),map:Sc(1),filter:Sc(2),some:Sc(3),every:Sc(4),find:Sc(5),findIndex:Sc(6),filterReject:Sc(7)},c0=Re,Ch=_n,R$=kr,Kde=Dr,Uf=sa,Hf=Af,qde=vr,ua=Vn,Yde=Sn,O$=xa,u0=hs,A$=r$,Gde=ai,k$=Eu,Wf=Au,DM=Zb,Xde=$h,IM=$$,Zde=Ih,FM=gh,$M=po,Qde=p$,SM=Wb,EM=Bf,Jde=S$,P$=kf,efe=Qb,CM=Dh,TM=Kb,tfe=an,rfe=Sh,nfe=bn,afe=gM,ofe=Fc,RM=$c,d0=Ec.forEach,vo=efe("hidden"),f0="Symbol",Th="prototype",ife=RM.set,OM=RM.getterFor(f0),Hi=Object[Th],ku=Ch.Symbol,Rh=ku&&ku[Th],lfe=Ch.RangeError,sfe=Ch.TypeError,N$=Ch.QObject,AM=FM.f,Pu=$M.f,kM=IM.f,cfe=SM.f,PM=Kde([].push),_s=P$("symbols"),Oh=P$("op-symbols"),ufe=P$("wks"),M$=!N$||!N$[Th]||!N$[Th].findChild,NM=function(e,t,r){var n=AM(Hi,t);n&&delete Hi[t],Pu(e,t,r),n&&e!==Hi&&Pu(Hi,t,n)},L$=Uf&&qde(function(){return Wf(Pu({},"a",{get:function(){return Pu(this,"a",{value:7}).a}})).a!==7})?NM:Pu,z$=function(e,t){var r=_s[e]=Wf(Rh);return ife(r,{type:f0,tag:e,description:t}),Uf||(r.description=t),r},p0=function(t,r,n){t===Hi&&p0(Oh,r,n),O$(t);var a=A$(r);return O$(n),ua(_s,a)?(n.enumerable?(ua(t,vo)&&t[vo][a]&&(t[vo][a]=!1),n=Wf(n,{enumerable:k$(0,!1)})):(ua(t,vo)||Pu(t,vo,k$(1,Wf(null))),t[vo][a]=!0),L$(t,a,n)):Pu(t,a,n)},B$=function(t,r){O$(t);var n=u0(r),a=DM(n).concat(BM(n));return d0(a,function(o){(!Uf||R$(MM,n,o))&&p0(t,o,n[o])}),t},dfe=function(t,r){return r===void 0?Wf(t):B$(Wf(t),r)},MM=function(t){var r=A$(t),n=R$(cfe,this,r);return this===Hi&&ua(_s,r)&&!ua(Oh,r)?!1:n||!ua(this,r)||!ua(_s,r)||ua(this,vo)&&this[vo][r]?n:!0},LM=function(t,r){var n=u0(t),a=A$(r);if(!(n===Hi&&ua(_s,a)&&!ua(Oh,a))){var o=AM(n,a);return o&&ua(_s,a)&&!(ua(n,vo)&&n[vo][a])&&(o.enumerable=!0),o}},zM=function(t){var r=kM(u0(t)),n=[];return d0(r,function(a){!ua(_s,a)&&!ua(CM,a)&&PM(n,a)}),n},BM=function(e){var t=e===Hi,r=kM(t?Oh:u0(e)),n=[];return d0(r,function(a){ua(_s,a)&&(!t||ua(Hi,a))&&PM(n,_s[a])}),n};Hf||(ku=function(){if(Yde(Rh,this))throw new sfe("Symbol is not a constructor");var t=!arguments.length||arguments[0]===void 0?void 0:Gde(arguments[0]),r=TM(t),n=function(a){var o=this===void 0?Ch:this;o===Hi&&R$(n,Oh,a),ua(o,vo)&&ua(o[vo],r)&&(o[vo][r]=!1);var i=k$(1,a);try{L$(o,r,i)}catch(l){if(!(l instanceof lfe))throw l;NM(o,r,i)}};return Uf&&M$&&L$(Hi,r,{configurable:!0,set:n}),z$(r,t)},Rh=ku[Th],EM(Rh,"toString",function(){return OM(this).tag}),EM(ku,"withoutSetter",function(e){return z$(TM(e),e)}),SM.f=MM,$M.f=p0,Qde.f=B$,FM.f=LM,Xde.f=IM.f=zM,Zde.f=BM,rfe.f=function(e){return z$(tfe(e),e)},Uf&&Jde(Rh,"description",{configurable:!0,get:function(){return OM(this).description}})),c0({global:!0,constructor:!0,wrap:!0,forced:!Hf,sham:!Hf},{Symbol:ku}),d0(DM(ufe),function(e){nfe(e)}),c0({target:f0,stat:!0,forced:!Hf},{useSetter:function(){M$=!0},useSimple:function(){M$=!1}}),c0({target:"Object",stat:!0,forced:!Hf,sham:!Uf},{create:dfe,defineProperty:p0,defineProperties:B$,getOwnPropertyDescriptor:LM}),c0({target:"Object",stat:!0,forced:!Hf},{getOwnPropertyNames:zM}),afe(),ofe(ku,f0),CM[vo]=!0;var ffe=Af,jM=ffe&&!!Symbol.for&&!!Symbol.keyFor,pfe=Re,vfe=ta,hfe=Vn,gfe=ai,UM=kf,_fe=jM,j$=UM("string-to-symbol-registry"),mfe=UM("symbol-to-string-registry");pfe({target:"Symbol",stat:!0,forced:!_fe},{for:function(e){var t=gfe(e);if(hfe(j$,t))return j$[t];var r=vfe("Symbol")(t);return j$[t]=r,mfe[r]=t,r}});var xfe=Re,bfe=Vn,yfe=mh,wfe=gs,Dfe=kf,Ife=jM,HM=Dfe("symbol-to-string-registry");xfe({target:"Symbol",stat:!0,forced:!Ife},{keyFor:function(t){if(!yfe(t))throw new TypeError(wfe(t)+" is not a symbol");if(bfe(HM,t))return HM[t]}});var Ffe=Dr,WM=Ic,$fe=mn,VM=wl,Sfe=ai,KM=Ffe([].push),Efe=function(e){if($fe(e))return e;if(WM(e)){for(var t=e.length,r=[],n=0;n=t.length)return e.target=void 0,m0(void 0,!0);switch(e.kind){case"keys":return m0(r,!1);case"values":return m0(t[r],!1)}return m0([r,t[r]],!1)},"values"),_5.Arguments=_5.Array;var cve={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},uve=cve,dve=_n,fve=Fc,b5=Nu;for(var Z$ in uve)fve(dve[Z$],Z$),b5[Z$]=b5.Array;var pve=upe,vve=pve,hve=an,gve=po.f,y5=hve("metadata"),w5=Function.prototype;w5[y5]===void 0&&gve(w5,y5,{value:null});var _ve=bn;_ve("asyncDispose");var mve=bn;mve("dispose");var xve=bn;xve("metadata");var bve=vve,yve=bve,wve=ta,Dve=Dr,Q$=wve("Symbol"),Ive=Q$.keyFor,Fve=Dve(Q$.prototype.valueOf),D5=Q$.isRegisteredSymbol||function(t){try{return Ive(Fve(t))!==void 0}catch{return!1}},$ve=Re,Sve=D5;$ve({target:"Symbol",stat:!0},{isRegisteredSymbol:Sve});for(var Eve=kf,I5=ta,Cve=Dr,Tve=mh,Rve=an,x0=I5("Symbol"),F5=x0.isWellKnownSymbol,$5=I5("Object","getOwnPropertyNames"),Ove=Cve(x0.prototype.valueOf),S5=Eve("wks"),J$=0,E5=$5(x0),Ave=E5.length;J$=o?e?"":void 0:(i=R5(n,a),i<55296||i>56319||a+1===o||(l=R5(n,a+1))<56320||l>57343?e?Qve(n,a):i:e?Jve(n,a,a+2):(i-55296<<10)+(l-56320)+65536)}},ehe={codeAt:O5(!1),charAt:O5(!0)},the=ehe.charAt,rhe=ai,A5=$c,nhe=G$,k5=X$,P5="String Iterator",ahe=A5.set,ohe=A5.getterFor(P5);nhe(String,"String",function(e){ahe(this,{type:P5,string:rhe(e),index:0})},function(){var t=ohe(this),r=t.string,n=t.index,a;return n>=r.length?k5(void 0,!0):(a=the(r,n),t.index+=a.length,k5(a,!1))});var ihe=Sh,lhe=ihe.f("iterator"),she=lhe,che=she,uhe=che,dhe=uhe,fhe=dhe,phe=fhe;(function(e){e.exports=phe})(Yve);const vhe=qt(b0);function Pn(e){"@babel/helpers - typeof";return Pn=typeof Vf=="function"&&typeof vhe=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Vf=="function"&&t.constructor===Vf&&t!==Vf.prototype?"symbol":typeof t},Pn(e)}const hhe=Object.freeze(Object.defineProperty({__proto__:null,default:Pn},Symbol.toStringTag,{value:"Module"}));var tS={},ghe={get exports(){return tS},set exports(e){tS=e}},_he=Sh,mhe=_he.f("toPrimitive"),xhe=mhe,bhe=xhe,yhe=bhe,whe=yhe,Dhe=whe,Ihe=Dhe;(function(e){e.exports=Ihe})(ghe);const Fhe=qt(tS);function $he(e,t){if(Pn(e)!=="object"||e===null)return e;var r=e[Fhe];if(r!==void 0){var n=r.call(e,t||"default");if(Pn(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function N5(e){var t=$he(e,"string");return Pn(t)==="symbol"?t:String(t)}function M5(e,t){for(var r=0;r"u"?"undefined":Pn(navigator))==="object"&&/Firefox/i.test(navigator.userAgent)};function _ge(){return/(mac\sos|macintosh)/i.test(navigator.appVersion)}var Wi={},mge={get exports(){return Wi},set exports(e){Wi=e}},oS={},xge={get exports(){return oS},set exports(e){oS=e}},bge=ca,yge=bge("Array","concat"),wge=Sn,Dge=yge,iS=Array.prototype,Ige=function(e){var t=e.concat;return e===iS||wge(iS,e)&&t===iS.concat?Dge:t},Fge=Ige,$ge=Fge,Sge=$ge,Ege=Sge,Cge=Ege,Tge=Cge;(function(e){e.exports=Tge})(xge),function(e){e.exports=oS}(mge);const _t=qt(Wi);var kh={},Rge={get exports(){return kh},set exports(e){kh=e}},Nr={};/** +`)+Be+`return __p +}`;var dr=Pte(function(){return kr(q,Dt+"return "+Be).apply(r,ee)});if(dr.source=Be,AO(dr))throw dr;return dr}function $2t(u){return Nr(u).toLowerCase()}function E2t(u){return Nr(u).toUpperCase()}function S2t(u,p,y){if(u=Nr(u),u&&(y||p===r))return WJ(u);if(!u||!(p=Qa(p)))return u;var S=wl(u),L=wl(p),q=VJ(S,L),ee=KJ(S,L)+1;return mu(S,q,ee).join("")}function C2t(u,p,y){if(u=Nr(u),u&&(y||p===r))return u.slice(0,YJ(u)+1);if(!u||!(p=Qa(p)))return u;var S=wl(u),L=KJ(S,wl(p))+1;return mu(S,0,L).join("")}function T2t(u,p,y){if(u=Nr(u),u&&(y||p===r))return u.replace(Et,"");if(!u||!(p=Qa(p)))return u;var S=wl(u),L=VJ(S,wl(p));return mu(S,L).join("")}function R2t(u,p){var y=P,S=U;if(kn(p)){var L="separator"in p?p.separator:L;y="length"in p?ur(p.length):y,S="omission"in p?Qa(p.omission):S}u=Nr(u);var q=u.length;if(mv(u)){var ee=wl(u);q=ee.length}if(y>=q)return u;var le=y-xv(S);if(le<1)return S;var pe=ee?mu(ee,0,le).join(""):u.slice(0,le);if(L===r)return pe+S;if(ee&&(le+=pe.length-le),kO(L)){if(u.slice(le).search(L)){var Re,Oe=pe;for(L.global||(L=XR(L.source,Nr(vr.exec(L))+"g")),L.lastIndex=0;Re=L.exec(Oe);)var Be=Re.index;pe=pe.slice(0,Be===r?le:Be)}}else if(u.indexOf(Qa(L),le)!=le){var lt=pe.lastIndexOf(L);lt>-1&&(pe=pe.slice(0,lt))}return pe+S}function O2t(u){return u=Nr(u),u&&qe.test(u)?u.replace(vt,l1t):u}var A2t=$v(function(u,p,y){return u+(y?" ":"")+p.toUpperCase()}),MO=Nee("toUpperCase");function kte(u,p,y){return u=Nr(u),p=y?r:p,p===r?r1t(u)?u1t(u):qyt(u):u.match(p)||[]}var Pte=pr(function(u,p){try{return Xa(u,r,p)}catch(y){return AO(y)?y:new tr(y)}}),k2t=oc(function(u,p){return Pi(p,function(y){y=ds(y),rc(u,y,RO(u[y],u))}),u});function P2t(u){var p=u==null?0:u.length,y=jt();return u=p?bn(u,function(S){if(typeof S[1]!="function")throw new Ni(i);return[y(S[0]),S[1]]}):[],pr(function(S){for(var L=-1;++LO)return[];var y=Q,S=Qo(u,Q);p=jt(p),u-=Q;for(var L=qR(S,p);++y0||p<0)?new br(y):(u<0?y=y.takeRight(-u):u&&(y=y.drop(u)),p!==r&&(p=ur(p),y=p<0?y.dropRight(-p):y.take(p-u)),y)},br.prototype.takeRightWhile=function(u){return this.reverse().takeWhile(u).reverse()},br.prototype.toArray=function(){return this.take(Q)},cs(br.prototype,function(u,p){var y=/^(?:filter|find|map|reject)|While$/.test(p),S=/^(?:head|last)$/.test(p),L=W[S?"take"+(p=="last"?"Right":""):p],q=S||/^find/.test(p);L&&(W.prototype[p]=function(){var ee=this.__wrapped__,le=S?[1]:arguments,pe=ee instanceof br,Re=le[0],Oe=pe||nr(ee),Be=function(xr){var Dr=L.apply(W,fu([xr],le));return S&<?Dr[0]:Dr};Oe&&y&&typeof Re=="function"&&Re.length!=1&&(pe=Oe=!1);var lt=this.__chain__,Dt=!!this.__actions__.length,Ht=q&&!lt,dr=pe&&!Dt;if(!q&&Oe){ee=dr?ee:new br(this);var Wt=u.apply(ee,le);return Wt.__actions__.push({func:$I,args:[Be],thisArg:r}),new Mi(Wt,lt)}return Ht&&dr?u.apply(this,le):(Wt=this.thru(Be),Ht?S?Wt.value()[0]:Wt.value():Wt)})}),Pi(["pop","push","shift","sort","splice","unshift"],function(u){var p=QD[u],y=/^(?:push|sort|unshift)$/.test(u)?"tap":"thru",S=/^(?:pop|shift)$/.test(u);W.prototype[u]=function(){var L=arguments;if(S&&!this.__chain__){var q=this.value();return p.apply(nr(q)?q:[],L)}return this[y](function(ee){return p.apply(nr(ee)?ee:[],L)})}}),cs(br.prototype,function(u,p){var y=W[p];if(y){var S=y.name+"";Vr.call(Dv,S)||(Dv[S]=[]),Dv[S].push({name:p,func:y})}}),Dv[xI(r,x).name]=[{name:"wrapper",func:r}],br.prototype.clone=O1t,br.prototype.reverse=A1t,br.prototype.value=k1t,W.prototype.at=cIt,W.prototype.chain=uIt,W.prototype.commit=dIt,W.prototype.next=fIt,W.prototype.plant=vIt,W.prototype.reverse=gIt,W.prototype.toJSON=W.prototype.valueOf=W.prototype.value=hIt,W.prototype.first=W.prototype.head,mx&&(W.prototype[mx]=pIt),W},bv=d1t();tf?((tf.exports=bv)._=bv,LR._=bv):Po._=bv}).call(Bn)})(wae,De);const Dae={FDI_Please_Select:"Select",FDI_Please_Select_Field:"Select the field.",FDI_Relation_Field_Unmatched_Tip:"Field type mismatch.",FDI_Relation_Field_Miss_Tip:"Field missing.",FDI_I_Know:"OK",FDI_Business_Model:"Business Model",FDI_Global_Graph:"Global View",FDI_Relation_Disable_Tip:"After the association is disabled, all related resources will be affected. Disable it with caution.",FDI_Relation_Delete_Tip_Title:"Sure to delete the association?",FDI_Relation_Field_Delete_Tip:"Sure to perform deletion? Restoration is impossible after deletion.",FDI_Create_Base_Table_Engine_Setting_Tip:"Attribute Setting of New Base Table (Database Table/SQL Tables/Excel Table)",FDI_Add_Resource_Duplicate:"The name of the added resource is duplicate.",FDI_Model_Empty:"No model exists. Create a model first.",FDI_Add_Resource_Duplicate_Tip:"Sorry, you cannot add the resource. The name of the resource you are trying to add already exists. Rename the resource and try again. The related resource is:",FDI_Modify_Model:"Edit Name/Description",FDI_Dimension_Management:"Dimension Management",FDI_Permission_Filter_Tip:"After this function is enabled, data which you do not have the permission to use will be hidden.",FDI_Relation_Disable_Tip_Title:"Sure to disable the association?",FDI_Table_No_Auth_Tip:"You lack the data use permission and cannot view data details.",FDI_Table_No_Auth_Preview_Tip:"You lack the data use permission and cannot view data details. Apply for the permission first.",FDI_Data_No_Auth:"You do not have the management permission.",FDI_Create_Time:"Creation Time",FDI_Update_Task_Management:"Update Task Management",FDI_Data_Center:"Data Center",FDI_Data_Catalogue:"Data Directory",FDI_Add_Table:"Add Table",FDI_Analysis_Table:"Self-Service Dataset",FDI_DB_Table:"Database Table",FDI_Sql_Table:"SQL Dataset",FDI_Excel_Table:"Excel Dataset",FDI_ETL_Table:"ETL Dataset",FDI_Modify_SQL:"Modify SQL",FDI_Modify_Config:"Modify Config",FDI_Update_Excel:"Update Excel",FDI_Enter_Analysis:"Enter My Analysis",FDI_Enter_Model_Center:"Enter Model Center",FDI_Create_Analysis:"Create Analysis Subject",FDI_Add_To_Analysis:"Add to Analysis Subject",FDI_Lastly_Edit:"Last Edited",FDI_My_Analysis:"My Analysis",FDI_Coop_Group:"Collaborated With Me",FDI_Subject:"Analysis Subject",FDI_Add_To_Subject_Tip:"Which analysis subject do you want to add to?",FDI_Subject_Lock_Add_Error_Tip:"Failed to be added. The analysis subject is being edited.",FDI_Update_Progress:"Update Progress",FDI_Folder_Update:"Folder Update",FDI_Update_Status:"Update Status",FDI_Sort_By_Time:"Rank by Creation Time",FDI_Sort_By_Name:"Rank by Name",FDI_All:"All",FDI_Table:"Dataset",FDI_Load_More:"Load More",FDI_Permission_Filter:"Permission Filter",FDI_Table_No_Auth_Fields_Tip:"You lack permissions on some fields and cannot view these fields.",FDI_Apply_Use:"Apply for Use",FDI_Apply_Auth:"Apply for Permission","FDI_{R1}_Update_Setting":"{R1} Update Setting",FDI_Move_To:"Move to",FDI_Multi_Move:"Batch Move","FDI_Move_{R1}_To":"Move {R1} to",FDI_Move_Success:"Moved successfully.",FDI_Move_Fail:"Failed to be moved.",FDI_Move_Fail_Prefix:"Failed to be moved.",FDI_Part_Move_Fail:"Some data failed to be moved.",FDI_All_Move_Fail:"Failed to be moved. Check the data status.",FDI_Data_Is_Editing:"The data is being edited.",FDI_Data_Published:"The data has been published.",FDI_Data_Absent:"The data does not exist.",FDI_Data_Duplicate:"The data name is duplicate.",FDI_Comment:"Remarks",FDI_Add_Comment:"Add Remark",FDI_Data_Preview:"Data Preview",FDI_Usage:"Data Lineage",FDI_Update_Info:"Update Information",FDI_Type:"Type",FDI_Data_Status:"Data Status",FDI_Data_Description:"Data Description",FDI_Editor:"Editor",FDI_Creator:"Creator",FDI_Related_Table_Name:"Related Table Name",FDI_Position:"Location",FDI_Position_With_Colon:"Location:",FDI_Origin_Name:"Original Name",FDI_Source:"Source","FDI_Last_Update_Time_{R1}":"Last Updated: {R1}","FDI_Table_Last_Edit_Time_{R1}":"Last Edited: {R1}",FDI_Cache_Setting:"Cache Setting",FDI_Global_Update:"Global Update",FDI_Global_Update_Setting:"Global Update Setting",FDI_Create_Base_Table_Engine_Setting:"Attribute Setting of New Base Table","FDI_Show_{R1}_Rows_Total_{R2}":"{R1} Record(s) Displayed; {R2} Record(s) in Total",FDI_Total_Rows:"Total {R1} Record(s)",FDI_Table_Preview_Limit_Tip:"Show {R1} Rows of Data from All Data Calculation Result",FDI_Table_Preview_Limit_Setting_Tip:"Number of Rows of Data to Show",FDI_Engine_Spider:"Extracted Data",FDI_Engine_Direct:"Direct-Connected Data",FDI_Model_Center:"Model Center",FDI_Delete_Model:"Delete Model",FDI_Model_Management:"Model Management",FDI_Indicator_Management:"Indicator Management",FDI_Add_Folder:"Add Folder",FDI_Advance_Setting:"Advanced Setting",FDI_Relation_Analysis_Direction:"Analysis Direction",FDI_Relation_Enable:"Enable Association",FDI_Delete_Relation:"Delete Association",FDI_Two_Way:"Bidirectional",FDI_Add_Relation_Field:"Add Multiple Association Fields",FDI_Dimension_Count:"Dimension Quantity",FDI_Formula_Editor_Title:"Edit Calculation Formula",FDI_Edit_Indicator:"Edit Indicator",FDI_Add_Dimension:"Add Dimension",FDI_Edit_Dimension:"Edit Dimension","Data_Fusion-Business-Model-Root":"All Business Models",FDI_Apply_Publish:"Apply for Publication",FDI_Data_Name:"Data Name",FDI_Data_Type:"Data Type",FDI_Applicant:"Applicant",FDI_Authority_Type:"Permission Type",FDI_Apply_Time:"Application Time",FDI_Apply_Info:"Application Info",FDI_Authorize_Detail:"Authorization Details",FDI_Review_Opinion:"Review Opinion",FDI_Current_Review_Status:"Current Review Status",FDI_Field:"Field",FDI_Reject:"Reject",FDI_Rejected:"Rejected",FDI_Pass:"Pass",FDI_Passed:"Passed",FDI_Wait_For_Approve:"To Be Reviewed",FDI_View:"View",FDI_View_Data:"View Data",FDI_Reapply:"Reapply",FDI_Item_Count_Per_Page:"Record(s)/Page",FDI_Department:"Department",FDI_Role:"Role",FDI_Relation_Delete_Tip:"After the association is deleted, all related resources will be affected. Delete it with caution.",FDI_Model_Delete_Tip_Title:"Sure to delete the model?",FDI_Edge_Show_Relation:"Display Association Attribute",FDI_Field_Name:"Original Name",FDI_Field_Description:"Field Description",FDI_Not_Empty:"The value cannot be empty.",FDI_Not_Special_Str:"The first character cannot be a special one.",FDI_Not_To_Exceed:"Within",FDI_Business_Model_Name:"Business Model Name",FDI_Edit_Business_Model:"Edit Business Model",FDI_Last_Edit_Time:"Last Edit Time",FDI_Action:"Operation",FDI_Related_Dimension:"Related Dimension",FDI_Add_Failed:"Failed to be added.",FDI_Add_Resource:"Add Resource",FDI_Delete_Success:"Deleted successfully.",FDI_View_Detail:"View Details",FDI_Name:"Name",FDI_Description:"Description",FDI_Relation_Type:"Association",FDI_Table_Count:"Table Quantity",FDI_Indicator_Count:"Indicator Quantity","Data_Fusion-Index-Root":"All Indicators","Data_Fusion-Table-Root":"All Models","Data_Fusion-Dimension-Root":"All Dimensions",FDI_Data_Root:"All Data",FDI_Dimension_List:"Dimension List",FDI_Dimension_Name:"Dimension Name",FDI_Indicator:"Indicator",FDI_Field_Preview:"Field Preview",FDI_Resource_Type:"Resource Type",FDI_Apply_Reason:"Application Reason",FDI_I_Approved:"Reviewed by Me",FDI_Authority_Info:"Permission Info",FDI_Authorize_Info:"Authorization Info",FDI_Tag_Category:"Label Category","Data_Fusion-Table-Ungrouped":"Ungrouped Resource",FDI_Operation_Failed_Please_Refresh:"Operation failed. Re-log in and try again.",FDI_Resource_Add_Error:"Some of the selected resources failed to be added because their names are duplicate. Rename these resources and add them again.",FDI_Show_No_Auth_Fields:"Display Field Without Use Permission",FDI_Show_No_Related_Fields:"Display Unassociated Field",FDI_Tree_No_Hide_Tip:"Some dimensions and indicators can be hidden.",FDI_To_Apply_Use:"Apply for Use",FDI_No_Auth_Tip:"You cannot select dimensions or indicators because you do not have use permissions.",FDI_No_Related_Tip:"You cannot select dimensions or indicators because this field is not associated with the selected field.",FDI_Relation_Enable_Error:"The association cannot be enabled. Delete or disable the existing association of the current table first.",FDI_Add_Model:"Add Model",FDI_Unnamed_New_Model:"Unnamed New Model",FDI_Collapsed:"Collapse",FDI_Add_Relation:"Add Association",FDI_Edit_Relation:"Edit Association",FDI_Resource_Info:"Resource Info",FDI_Table_Has_Relation_Tip:"You have added one association for the current table and cannot add another again.",FDI_Table_Has_Imported_Tip:"The current table has been added and cannot be added again.",FDI_Table_Duplicate_Name_Tip:"The current table cannot be added because its name is the same as the name of an added table.",FDI_Resource_Empty_Please_Add:"No resource is available currently. Add resources first.",FDI_Please_Choose_Resource:"Select resources from the left.",FDI_Resource_List:"Resource List",FDI_Search_Resource:"Search Resource",FDI_Field_Type:"Field Type",FDI_Field_Transfer_Name:"Field Name",FDI_Field_Label:"Field Group",FDI_Not_Same_Name:"The name cannot be duplicate.",FDI_Operation_Failed:"Operation failed.",FDI_Rename:"Rename",FDI_Delete:"Delete",FDI_Edit:"Edit",FDI_Delete_Fail:"Failed to be deleted.",FDI_Delete_Fail_Prefix:"Deletion failed.",FDI_Part_Delete_Fail:"Some data failed to be deleted.",FDI_Chars:"Character(s)",FDI_Folder:"Folder",FDI_Delete_Confirm_Title:"Sure to delete the selected data or folder?",FDI_Catalog_Folder_Delete_Confirm_Title:"Delete Folder",FDI_Catalog_Table_Delete_Confirm_Title:"Delete Table",FDI_Catalog_Table_Delete_Confirm_Message:"After this dataset is deleted, associated self-service datasets/components/dashboards/analysis documents will also be affected. All configured row and column permissions and associations will be cleared and cannot be retrieved. Deleted resources can be retrieved from the creator's recycle bin. Sure to delete {R1}?",FDI_Business_Model_List:"Business Model List",FDI_Add_Business_Model:"Add Business Model",FDI_Business_Model_Count:"Business Model Quantity",FDI_Business_Model_Preview:"Business Model Preview",FDI_Select_Indicator:"Select Indicator",FDI_Select_Dimension:"Select Dimension",FDI_Last_Edit_User:"Last Editor",FDI_Table_Field_String:"Text",FDI_Table_Field_Number:"Value",FDI_Table_Field_Datetime:"Date",FDI_Indicator_List:"Indicator List",FDI_Add_Indicator:"Add Indicator",FDI_Search:"Search",FDI_Search_Plus:"Search Enhancement",FDI_Search_History_Empty:"No search record.",FDI_Tag:"Label",FDI_Data_Privilege:"Data Permission",FDI_Update_Time:"Update Time",FDI_Save:"Save",FDI_Search_Guide_Tip1:"🎉The search function has been completely upgraded.",FDI_Search_AI_Guide_Tip1:"🔥With AI support, you can search by daily expressions, which is smart and convenient.",FDI_Search_AI_Guide_Tip2:"🌰For example, indicators updated by Sam in Q1 2023.",FDI_Advanced_Search:"Advanced Search",FDI_Advanced_Search_Close_Tip:"After Advanced Search is disabled, AI Search is also disabled.",FDI_AI_Search:"AI Search",FDI_AI_Search_Tip:"After this function is enabled, you can search by daily expressions based on advanced search.",FDI_AI_Search_Open_Tip:"After AI Search is enabled, Advanced Search is also enabled.",FDI_AI_Path:"Host Address",FDI_Indicator_Info:"Indicator Info",FDI_Related_Indicator:"Related Indicator",FDI_Indicator_Total:"Total Number of Indicators",FDI_None:"None",FDI_Formula_Category_Function_Type_Math:"Value Function",FDI_Formula_Category_Function_Type_Datetime:"Date Function",FDI_Formula_Category_Function_Type_Text:"Text Function",FDI_Formula_Category_Function_Type_Logic:"Logic Function",FDI_Formula_Category_Function_Type_Agg:"Aggregation Function",FDI_Formula_Category_Function_Type_Table_Cal:"Quick Calculation Function",FDI_Formula_Category_Function_Type_Analysis:"Analysis Function",FDI_Function:"Function",FDI_Directory:"Directory",FDI_Indicator_Name:"Indicator Name",FDI_Calculate_Formula:"Calculation Formula",FDI_Click_Edit_Formula:"Click to Edit Formula",FDI_Dimension_Empty_Text:"Currently, no dimension is available. Create a dimension first.",FDI_Dimension_Total:"Total Number of Dimensions",FDI_Unnamed_New_Indicator:"Unnamed New Indicator",FDI_Select_All:"Select All",FDI_Dimension_Info:"Dimension Info",FDI_Unnamed_New_Dimension:"Unnamed New Dimension",FDI_Model_Not_Exist:"The model does not exist.",FDI_Indicator_Note_Exist:"The indicator does not exist.",FDI_Dimension_Not_Exist:"The dimension does not exist.",FDI_Business_Model_Not_Exit:"The business model does not exist.",FDI_Folder_Not_Exist:"The folder does not exist.",FDI_Table_Not_Exist:"The table does not exist.",FDI_Rename_Failed:"Failed to be renamed.",FDI_Exist_Duplicate_Name:"Operation failed. The name cannot be duplicate.",FDI_Folder_Levels_Over_limit:"The number of folder levels exceeds the limit.",FDI_Folder_Not_Move:"This folder cannot be moved.",FDI_Batch_Deal:"Batch Process",FDI_Cancel:"Cancel",FDI_Calculate_Empty:"The calculation result is empty.",FDI_Calculate_Error:"Calculation result error.",FDI_Data_Detail:"Data Details",FDI_Edit_Data_Detail:"Edit Data Details",FDI_Dimension:"Dimension",FDI_Tag_List:"Label List",FDI_Add_Tag:"Add Label",FDI_Tag_Empty_Text:"Currently, no label is available. Create a label first.",FDI_Tag_Total:"Total Number of Labels",FDI_Publish:"Publish",FDI_Publish_Apply:"Apply for Publication",FDI_Publish_Node:"Directory",FDI_Reviewer:"Reviewer",FDI_Apply_Remark:"Remarks",FDI_Please_Input:"Enter the value here.",FDI_Publish_Apply_Indicator_Name_Exist:"Indicators with duplicate names exist in the directory, causing publication failure.",FDI_Publish_Apply_Dimension_Name_Exist:"Dimensions with duplicate names exist in the directory, causing publication failure.",FDI_Publish_Apply_Business_Model_Name_Exist:"Business models with duplicate names exist in the directory, causing publication failure.",FDI_Cancel_Publish:"Unpublish",FDI_Confirm:"OK",FDI_Publish_Name:"Name",FDI_Apply_Opinion:"Application Opinion",FDI_Agree_Publish:"Agree to Publish",FDI_Reject_Apply:"Reject Application",FDI_Reject_Reason:"Rejection Reason",FDI_Dimension_Cancel_Publish_Confirm_Message:"After publication is canceled, all configured row and column permissions and associations will be cleared and cannot be retrieved. Related resources using the current dimension will be faulty.",FDI_Status:"Status",FDI_Published:"Published",FDI_Unpublish:"Unpublished",FDI_Checking:"Reviewing",FDI_Reviewers_Check_Failed:"The authorization permission on the current data of {R1} cannot be assigned.",FDI_Publish_Node_Not_Empty:"The directory cannot be empty.",FDI_Delete_Published_Resource_Warning:"Published resources in the selected item cannot be deleted.",FDI_Publish_Deal:"Publication Processing",FDI_Agree_Cancel_Publish:"Agree to Unpublish",FDI_Not_To_Exceed_Chars:"The length cannot exceed {R1} character(s).",FDI_Publish_Apply_Success:"Published successfully.",FDI_Publish_Apply_Success_Wait:"You have applied for publishing successfully. Wait for approval.",FDI_Publish_Cancel_Apply_Success:"Unpublished successfully.",FDI_Publish_Cancel_Apply_Success_Wait:"You have applied for unpublishing successfully. Wait for approval.",FDI_Publish_Apply_Fail:"Failed to apply for publishing.",FDI_Publish_Apply_Fail_Reviewer_Error:"Failed to apply for publishing. The reviewer permission is abnormal.",FDI_Publish_Apply_Fail_Status_Error:"Failed to apply for publishing. The current content has been published.",FDI_Publish_Cancel_Apply_Fail:"Failed to apply for unpublishing.",FDI_Publish_Cancel_Apply_Fail_Status_Error:"Failed to apply for unpublishing. The current content has been unpublished.",FDI_Related_Indicator_dimension:"Related Indicator/Dimension",FDI_View_All:"View All",FDI_Copy:"Copy",FDI_Import_Indicator:"Import Indicator",FDI_Import_Dimension:"Import Dimension",FDI_Batch_Import:"Batch Import",FDI_Import_Indicator_Empty_Text:"Currently, no indicator is available. Import an indicator first.",FDI_Import_Dimension_Empty_Text:"Currently, no dimension is available. Import a dimension first.",FDI_Authority_Apply_Review:"Permission Application Review",FDI_Authority_Apply:"Permission Application",FDI_Authority_Review:"Permission Review",FDI_Authorize_Target:"Authorization Object",FDI_Field_Authority:"Field Permission",FDI_View_Authority:"View Permission",FDI_Use_Authority:"Use Permission",FDI_I_Initiated:"Initiated by Me",FDI_Apply_Authority:"Requested Permission",FDI_Apply_Field:"Requested Field",FDI_Inherit_Field:"Inherited Field",FDI_Inherit_Table:"Inherited Dataset",FDI_Multipath_Setting:"Multipath Setting",FDI_Exit_Multipath_Setting:"Exit",FDI_Multipath_Setting_Changed_Warning:"Multipath information has been changed. You may need to update data.",FDI_Select_Path:"Select the path to be used.",FDI_Current_No_Multi_Path:"Currently, no multipath is available.",FDI_Review_Success:"Reviewed successfully.",FDI_View_Apply_Status:"View Application Status",FDI_Pass_Apply:"Pass Application",FDI_Apply_Success:"Applied successfully.",FDI_Upload_Fail_Tooltip:"Import failed due to file format mismatch.",FDI_Upload_Success_Tooltip:"Imported successfully. A total of {R1} resources are imported.",FDI_Save_Success:"Saved successfully.",FDI_Reviewer_Tooltip:"After the application is passed, the reviewer will obtain the authorization permission on the current data.",FDI_Publish_Checked_Error_Tooltip:"Failed to be published. Check the field.",FDI_Add_To:"Add to",FDI_Review_Failed:"Review failed.",FDI_Review_Failed_Apply_Not_Exist:"Review failed. The application does not exist.",FDI_Review_Failed_Already_Reviewed:"Review failed. The application has been reviewed.",FDI_Review_Failed_No_User_Authority:"Review failed. The user authorization permission is missing.",FDI_Review_Failed_Applicant_Not_Exist:"Review failed. The application does not exist or is disabled.",FDI_Review_Failed_Not_Current_Data_Reviewer:"Review failed. You are not the reviewer of the current data.",FDI_Apply_Failed:"Application failed.",FDI_Apply_Failed_Already_Apply:"Application failed. This permission has been applied for.",FDI_Apply_Failed_Empty_Reviewer:"Application failed. The reviewer is empty. Contact the administrator.",FDI_Apply_Failed_Resource_Not_Exist:"Application failed. The data does not exist.",FDI_No_Update_Time:"No update time.",FDI_No_View_Authority:"No view permission.",FDI_Data_Deleted:"The data has been deleted.",FDI_Field_Deleted:"The field has been deleted.",FDI_User_Deleted:"The user has been deleted.",FDI_Model_No_Use_Permission:"You do not have the permission to use the model center. Contact the administrator.",FDI_Relation_Analysis_Table_Disable:"Failed to configure the association. After Permission Inheritance is enabled, the association cannot be configured.",FDI_No_Edit_Authority:"No edit permission.",FDI_No_Authority:"No permission.","FDI_Source_Table_{R1}":"Source Table: {R1}",FDI_Clear:"Clear",FDI_Formula_Field_Invalid_Msg:"The {R1} field is not unique or does not exist.",FDI_Management:"Management",FDI_Tag_Management:"Label Management","Tag-Root":"All Labels",FDI_Tag_Name:"Label Name",FDI_Edit_Tag:"Edit Label",FDI_Unnamed_New_Tag:"Unnamed New Label",FDI_Tag_Description:"Label Description",FDI_Tag_Application:"Label Application",FDI_Extend_Field:"Extended Field",FDI_Add_Field:"Add Field",FDI_Unnamed_Field:"Unnamed Field",FDI_Please_Input_Field_Name:"Name the field here.",FDI_Type_Not_Support_Modify:"Currently, the type cannot be modified.",FDI_No_Extend_Field:"No extended field.",FDI_Delete_Tag_Confirm_Title:"Sure to delete this label?",FDI_Delete_Tag_Folder_Confirm_Title:"Sure to delete this folder?",FDI_Delete_Tag_Folder_Confirm_Message:"All labels in this folder will also be deleted, and data marked with these labels in the folder will be affected.",FDI_No_Data_Authority:"You do not have the permission on this data and cannot create a folder.",FDI_Model_Delete_Tip:"After the model is deleted, the model association cannot be retrieved, and related resources in the data directory will be faulty. Delete it with caution.",FDI_Jump_To_Other_Tip:"The current table is from another group. Sure to jump to the model association of another group?",FDI_Table_Inherit_Tip:"The current table for which Permission Inheritance has been enabled cannot be added.",FDI_All_Delete_Fail:"Deletion failed. Check the data status.",FDI_Delete_Confirm_Message:"After deletion, the data cannot be restored. All contents in the folder will be deleted together.",FDI_Catalog_Folder_Delete_Confirm_Message:"All resources in this folder will be deleted. Associated self-service datasets/components/dashboards/analysis documents will also be affected. All configured row and column permissions and associations will be cleared and cannot be retrieved. Deleted resources can be retrieved from the creator's recycle bin. Sure to delete {R1}?",FDI_Source_To_Target:"From Left Table to Right Table",FDI_Target_To_Source:"From Right Table to Left Table",FDI_Business_Model_Empty:"Currently, no business model is available. Add a business model first.",FDI_Business_Model_Description:"Business Model Description",FDI_Search_Correct_Tip:"{R1} has been displayed. Still search:",FDI_Search_Guide_Tip2:"👍 Currently, multi-keyword fuzzy search is supported, which allows you to search fields, labels, creators, and business descriptions at the same time.",FDI_Advanced_Search_Tip:"After this function is enabled, multi-keyword fuzzy search and enhanced search algorithms are supported.",FDI_Formula_Category_Function_Type_Common:"Common Function",FDI_Formula_Category_Function_Type_Other:"Other Functions",FDI_Indicator_Empty_Text:"Currently, no indicator is available. Create an indicator first.",FDI_Relation_Duplicate_Add:"Duplicate associations exist. Tables cannot be associated repeatedly.",FDI_Dimension_Formula_Invalid_Msg:"The result calculated by the dimension formula is invalid. The function cannot be an aggregation one.",FDI_Indicator_Formula_Invalid_Msg:"The result calculated by the indicator formula is invalid. The field cannot be of the date type or string type.",FDI_Reject_Reason_Placeholder:"The reason for rejecting the application is displayed in the user's publication message.",FDI_Cancel_Publish_Confirm_Title:"Sure to cancel publication?",FDI_Table_Cancel_Publish_Confirm_Message:"After this dataset is unpublished, all configured row and column permissions and associations will be cleared and cannot be retrieved.",FDI_Indicator_Cancel_Publish_Confirm_Message:"After publication is canceled, all configured row and column permissions and associations will be cleared and cannot be retrieved. Related resources using the current indicator will be faulty.",FDI_Business_Model_Cancel_Publish_Confirm_Message:"After publication is canceled, all configured row and column permissions and associations will be cleared and cannot be retrieved. Related resources using the current business model will be faulty.",FDI_Publish_Apply_Fail_Same_Type:"Failed to apply for publishing. The current content has been applied for publishing.",FDI_Publish_Cancel_Apply_Fail_Same_Type:"Failed to apply for unpublishing. The current content has been applied for unpublishing.",FDI_Publish_Cancel_Apply_Fail_Reviewer_Error:"Failed to apply for unpublishing. The reviewer permission is abnormal.",FDI_Authority_Inherit:"Permission Inheritance",FDI_Inherit_Field_Tip:"Permission Inheritance is enabled for the current data. Actually, field permissions are inherited.",FDI_No_Field_Select_Tip:"Select at least one field or click Reject.",FDI_Search_Result_Is_Empty:"The search result is empty.",FDI_Save_Import_Fail:"Failed to be saved. Check the import information.",FDI_Apply_Failed_Message:"Application failed. Check the application information.",FDI_Review_Failed_No_Data_Authority:"Review failed. The data authorization permission is missing.",FDI_Review_Failed_Resource_Not_Exist:"Review failed. The current data does not exist.",FDI_Apply_Failed_No_Reviewer:"Application failed. No reviewer is specified. Contact the administrator.",FDI_Pass_Failed_Deleted:"Failed to be passed. The object has been deleted. Deselect or reject the application.","FDI_No_Edit_Authority_{R1}":"No edit permission on {R1}.",FDI_Business_Model_Setting_Instruction:"Unrelated indicators and dimensions exist in the selected item. Clear them and select correct ones again.",FDI_Cannot_Add_Table_In_Root:"You cannot add tables to the root directory.",FDI_Please_Select_Field_Type:"Select the field type.",FDI_Delete_Tag_Confirm_Message:"Label deletion will affect data that has been marked with this label.",FDI_Tree_Hide_Tip:"Some dimensions and indicators have been hidden.",FDI_No_Auth_Or_Related_Tip:"Some fields are not available and are hidden due to lack of permissions or no association with the selected field."},Iae={FDI_Please_Select_Field:"フィールドを選択してください",FDI_Relation_Field_Unmatched_Tip:"フィールドタイプがミスマッチ",FDI_Relation_Field_Miss_Tip:"フィールドが欠落",FDI_Add_Resource_Duplicate:"追加したリソースが重複した名前を持つ",FDI_Model_Center:"モデルセンター",FDI_Model_Empty:"現在モデルはありません。まずモデルを作成してください",FDI_Delete_Model:"モデルの削除",FDI_Modify_Model:"名前と説明を編集する",FDI_Indicator_Management:"指標管理",FDI_Model_Management:"モデル管理",FDI_Dimension_Management:"ディメンション管理",FDI_Global_Graph:"グローバルビュー",FDI_Relation_Enable_Error:"関係を有効にできません。まず、現在のテーブルの既存の関係を削除するか無効にしてください",FDI_Edit_Relation:"関係編集",FDI_Please_Choose_Resource:"左からリソースを選択してください",FDI_Add_Resource:"リソースの追加",FDI_Field_Type:"フィールドタイプ",FDI_Field_Name:"フィールド名",FDI_Field_Description:"フィールドの説明",FDI_Not_Empty:"空にすることはできません",FDI_Not_Special_Str:"最初の文字を特殊文字にすることはできない",FDI_Not_To_Exceed:"超過不可",FDI_Chars:"文字",FDI_Operation_Failed:"作業失敗",FDI_Rename:"リネーム",FDI_Delete:"削除",FDI_Edit:"編集",FDI_Folder:"ファイル",FDI_I_Know:"わかりました",FDI_Jump_To_Other_Tip:"現在のテーブルはグループ外のテーブルです。他のグループのモデル関係に移動しますか?",FDI_Business_Model:"ビジネスモデル",FDI_Add_Model:"モデルの追加",FDI_Add_Resource_Duplicate_Tip:"申し訳ありませんが、追加操作を完了できませんでした。 追加しようとしたリソース名はすでに存在します。リソース名を変更して、再度追加をお試しください。 関連のリソースは:",FDI_Relation_Disable_Tip_Title:"関係を解除しますか?",FDI_Unnamed_New_Model:"名づけない新しいモデル",FDI_Collapsed:"片付ける",FDI_Please_Select:"選択してください",FDI_Relation_Disable_Tip:"関係を解除すると、関連するすべてのリソースに影響が及びますので、解除は慎重に行ってください。",FDI_Relation_Delete_Tip_Title:"関係を解除しますか?",FDI_Add_Relation:"関係追加",FDI_Relation_Delete_Tip:"関係を解除すると、関連するすべてのリソースに影響が及びますので、解除は慎重に行ってください。",FDI_Relation_Field_Delete_Tip:"削除ますか? 削除後は復元できません",FDI_Model_Delete_Tip_Title:"モデルを削除しますか?",FDI_Edge_Show_Relation:"関係プロパティを表示する","Data_Fusion-Table-Ungrouped":"グループ化されていないリソース",FDI_Model_Delete_Tip:"モデルを削除した後、モデル関係を検索することはできず、データカタログのすべての関連リソースはエラーを報告します。 削除の際にはご注意ください。",FDI_Resource_Empty_Please_Add:"現在リソースはありません。まずリソースを追加してください",FDI_Resource_List:"リソースリスト",FDI_Search_Resource:"リソース検索",FDI_Resource_Add_Error:"選択した一部のリソースが重複して追加されませんでした。 リソース名を修正して再追加してください",FDI_Not_Same_Name:"同じ名前にすることはできません",FDI_Operation_Failed_Please_Refresh:"作業失敗。もう一度ログインしてやり直してください",FDI_Delete_Success:"正常に削除された",FDI_Delete_Confirm_Title:"選択したデータやフォルダを削除しますか?"},Fae={FDI_Please_Select_Field:"필드를 선택해주십시오",FDI_Relation_Field_Miss_Tip:"필드 누락",FDI_Add_Resource_Duplicate:"중복된 리소스 추가",FDI_Model_Center:"모델 센터",FDI_Delete_Model:"모델 삭제",FDI_Indicator_Management:"지표 관리",FDI_Business_Model:"비즈니스 모델",FDI_Global_Graph:"전역 그래프",FDI_Model_Delete_Tip_Title:"모델을 삭제하시겠습니까?",FDI_Model_Delete_Tip:'FDI_Model_Delete_Tip"은 "모델을 삭제하면 모델 관계를 되돌릴 수 없으며 데이터 디렉토리의 관련 리소스가 오류가 발생합니다. 신중하게 삭제하십시오.',FDI_Resource_Add_Error:"선택한 일부 리소스가 중복되어 추가되지 않았습니다. 리소스 이름을 수정하고 다시 추가하세요",FDI_Add_Model:"모델 추가",FDI_Collapsed:"접기",FDI_Add_Relation:"관계 추가",FDI_Edit_Relation:"관계 편집",FDI_Edge_Show_Relation:"관계 속성 표시",FDI_Please_Choose_Resource:"왼쪽에서 리소스를 선택하세요",FDI_Resource_List:"리소스 목록",FDI_Add_Resource:"리소스 추가",FDI_Field_Type:"필드 유형",FDI_Field_Description:"필드 설명",FDI_Not_Empty:"비워둘수 없습니다",FDI_Not_To_Exceed:"초과할 수 없음",FDI_Chars:"문자",FDI_Operation_Failed:"작업 실패",FDI_Delete:"삭제",FDI_Edit:"편집",FDI_Folder:"폴더",FDI_Delete_Confirm_Title:"선택한 데이터나 폴더를 삭제하시겠습니까?",FDI_Add_Folder:"폴더 추가",FDI_Advance_Setting:"고급 설정",FDI_Delete_Success:"삭제 성공",FDI_Relation_Enable:"관계 활성화",FDI_Delete_Relation:"관계 삭제",FDI_Target_To_Source:"오른쪽 테이블에서 왼쪽 테이블로",FDI_Two_Way:"양방향",FDI_View_Detail:"세부 정보 보기",FDI_Description:"설명",FDI_Table_Count:"테이블 수",FDI_Business_Model_List:"비즈니스 모델 목록",FDI_Select_Indicator:"지표 선택",FDI_Select_Dimension:"차원 선택",FDI_Last_Edit_User:"최근 편집인",FDI_Table_Field_String:"텍스트",FDI_Table_Field_Datetime:"일자",FDI_Indicator_List:"지표 목록",FDI_Search:"검색",FDI_Indicator_Info:"지표 정보",FDI_Indicator_Total:"지표 총 수",FDI_None:"없음",FDI_Formula_Category_Function_Type_Math:"수치 함수",FDI_Formula_Category_Function_Type_Datetime:"날짜 함수",FDI_Formula_Category_Function_Type_Logic:"논리 함수",FDI_Formula_Category_Function_Type_Analysis:"분석 함수",FDI_Formula_Category_Function_Type_Other:"기타 함수",FDI_Function:"함수",FDI_Directory:"목록",FDI_Indicator_Name:"지표 이름",FDI_Calculate_Formula:"계산 공식",FDI_Click_Edit_Formula:"공식 편집을 누르세요",FDI_Formula_Editor_Title:"계산 공식 편집",FDI_Edit_Indicator:"지표 편집",FDI_Add_Dimension:"차원 추가",FDI_Dimension_List:"차원열 표",FDI_Dimension_Empty_Text:"현재 차원이 아직 없습니다. 우선 차원을 생성해주세요",FDI_Select_All:"전부 선택",FDI_Dimension_Name:"차원 이름",FDI_Unnamed_New_Indicator:"이름이 없는 새 지표",FDI_Model_Not_Exist:"모델이 존재하지 않습니다",FDI_Indicator_Note_Exist:"지표가 존재하지 않습니다",FDI_Dimension_Not_Exist:"차원이 존재하지 않습니다",FDI_Folder_Not_Exist:"폴더가 존재하지 않습니다",FDI_Table_Not_Exist:"테이블이 존재하지 않습니다",FDI_Rename_Failed:"이름 변경 실패",FDI_Add_Failed:"추가 실패",FDI_Relation_Duplicate_Add:"중복된 관계가 있습니다. 테이블 간에 중복된 관계를 설정할 수 없습니다",FDI_Folder_Not_Move:"이 폴더는 이동할 수 없습니다",FDI_Calculate_Empty:"계산이 비어있습니다",FDI_Field_Preview:"필드 미리보기",FDI_Resource_Type:"리소스 유형",FDI_Indicator:"지표",FDI_Please_Select:"선택해주십시오",FDI_Relation_Field_Delete_Tip:"삭제하시겠습니까? 삭제 후 복구하지 못합니다",FDI_Relation_Field_Unmatched_Tip:"필드 유형이 올바르지 않음",FDI_Add_Resource_Duplicate_Tip:"죄송합니다. 추가 작업을 완료할 수 없습니다. 시도하려는 리소스 이름이 이미 존재합니다. 리소스 이름을 변경한 다음 다시 시도하십시오. 관련 리소스는 다음과 같습니다:",FDI_Model_Empty:"일시적으로 모델이 없습니다. 먼저 모델을 생성하십시오",FDI_Modify_Model:"이름 및 설명 수정",FDI_I_Know:"알겠습니다",FDI_Model_Management:"모델 관리",FDI_Dimension_Management:"차원 관리",FDI_Relation_Disable_Tip_Title:"관계를 비활성화하시겠습니까?",FDI_Relation_Disable_Tip:"관계를 비활성화하면 관련 리소스에 영향을 줍니다. 신중하게 비활성화하십시오.",FDI_Relation_Delete_Tip_Title:"관계를 비활성화하시겠습니까?",FDI_Relation_Delete_Tip:'FDI_Relation_Delete_Tip"은 "관계를 비활성화하면 관련 리소스에 영향을 줍니다. 신중하게 비활성화하십시오.',FDI_Relation_Enable_Error:"관계를 활성화할 수 없습니다. 현재 테이블에 이미 있는 관계를 먼저 삭제하거나 비활성화하세요",FDI_Jump_To_Other_Tip:"현재 테이블은 그룹 외의 테이블입니다. 다른 그룹의 모델 관계로 이동하시겠습니까?",FDI_Unnamed_New_Model:"이름이 지정되지 않은 새 모델",FDI_Resource_Empty_Please_Add:"리소스가 비어 있습니다. 먼저 리소스를 추가하세요",FDI_Search_Resource:"리소스 검색",FDI_Field_Name:"필드 이름",FDI_Not_Special_Str:"첫 문자는 특수 문자일 수 없음",FDI_Not_Same_Name:"동일한 이름일 수 없음","Data_Fusion-Index-Root":"모든 지표",FDI_Operation_Failed_Please_Refresh:"작업 실패. 다시 로그인하여 다시 시도하세요",FDI_Rename:"이름 바꾸기","Data_Fusion-Table-Ungrouped":"분리되지 않은 리소스",FDI_Delete_Confirm_Message:"삭제 후에는 데이터를 복구할 수 없습니다. 폴더 내의 모든 항목이 함께 삭제됩니다.","Data_Fusion-Table-Root":"모든 모델",FDI_Relation_Type:"관계 유형","Data_Fusion-Dimension-Root":"모든 차원",FDI_Relation_Analysis_Direction:"관계 분석 방향","Data_Fusion-Business-Model-Root":"모든 업무 모델",FDI_Source_To_Target:"왼쪽 테이블에서 오른쪽 테이블로",FDI_Add_Relation_Field:"여러관련 필드 추가",FDI_Indicator_Empty_Text:"현재 지표가 없습니다. 지표를 새로이 추가해주세요",FDI_Name:"이름",FDI_Dimension_Total:"총 차원수",FDI_Indicator_Count:"지표 수",FDI_Dimension_Info:"차원 정보",FDI_Dimension_Count:"차원 수",FDI_Business_Model_Empty:"현재 비즈니스 모델이 없습니다. 먼저 비즈니스 모델을 추가하세요",FDI_Unnamed_New_Dimension:"이름 없는 차원",FDI_Add_Business_Model:"비즈니스 모델 추가",FDI_Business_Model_Count:"비즈니스 모델 수",FDI_Business_Model_Preview:"비즈니스 모델 미리보기",FDI_Indicator_Formula_Invalid_Msg:"지표 공식 계산 결과가 유효하지 않습니다. 날짜 형식이거나 문자열 형식이어서는 안 됩니다",FDI_Business_Model_Name:"비즈니스 모델 이름",FDI_Business_Model_Description:"비즈니스 모델 설명",FDI_Business_Model_Not_Exit:"비즈니스 모델이 존재하지 않습니다",FDI_Exist_Duplicate_Name:"중복된 이름이 존재합니다. 작업 실패",FDI_Edit_Business_Model:"비즈니스 모델 편집",FDI_Last_Edit_Time:"최근 편집 시간",FDI_Action:"작업",FDI_Table_Field_Number:"데이터값",FDI_Folder_Levels_Over_limit:"폴더의 수준이 제한을 초과합니다",FDI_Add_Indicator:"지표 추가",FDI_Batch_Deal:"일괄 처리",FDI_Related_Dimension:"관련 차원",FDI_Cancel:"취소",FDI_Formula_Category_Function_Type_Common:"일반 함수",FDI_Calculate_Error:"오류가 발생했습니다. 계산 결과에 오류가 발생했습니다…",FDI_Formula_Category_Function_Type_Text:"텍스트 함수",FDI_Formula_Category_Function_Type_Agg:"집계함수",FDI_Formula_Category_Function_Type_Table_Cal:"빠른 계산 함수",FDI_Dimension_Formula_Invalid_Msg:"차원 공식 계산 결과가 유효하지 않습니다. 집계 함수여서는 안 됩니다",FDI_Data_Detail:"데이터 상세",FDI_Dimension:"차원"},$ae={FDI_Please_Select:"请选择",FDI_Please_Select_Field:"请选择字段",FDI_Relation_Field_Delete_Tip:"确认删除?删除后无法恢复",FDI_Relation_Field_Unmatched_Tip:"字段类型不匹配",FDI_Relation_Field_Miss_Tip:"字段丢失",FDI_Add_Resource_Duplicate:"添加资源有重名",FDI_Add_Resource_Duplicate_Tip:"抱歉,无法完成添加操作。您尝试添加的资源名称已存在,请修改资源名称再尝试添加。相关资源为:",FDI_Data_Center:"数据中心",FDI_Data_Catalogue:"数据目录",FDI_Add_Table:"添加表",FDI_Analysis_Table:"自助数据集",FDI_DB_Table:"数据库表",FDI_Sql_Table:"SQL数据集",FDI_Excel_Table:"Excel数据集",FDI_ETL_Table:"ETL数据集",FDI_Modify_SQL:"修改SQL",FDI_Modify_Config:"修改配置",FDI_Update_Excel:"更新Excel",FDI_Enter_Analysis:"进入我的分析",FDI_Enter_Model_Center:"进入模型中心",FDI_Create_Analysis:"创建分析主题",FDI_Add_To_Analysis:"添加到分析主题",FDI_Lastly_Edit:"最近编辑",FDI_My_Analysis:"我的分析",FDI_Coop_Group:"协作给我的",FDI_Subject:"分析主题",FDI_No_Tag:"无标签",FDI_Add_To_Subject_Tip:"要添加到哪个分析主题?",FDI_Subject_Lock_Add_Error_Tip:"添加失败,该分析主题正在被编辑",FDI_Tree_Hide_Tip:"已隐藏部分维度、指标",FDI_Tree_No_Hide_Tip:"隐藏部分维度、指标",FDI_Show_No_Auth_Fields:"显示无使用权限的字段",FDI_Show_No_Related_Fields:"显示无关联字段",FDI_View_Error:"查看失败",FDI_Table_No_Auth_Error_Tip:"没有该数据的查看权限",FDI_No_Auth_Or_Related_Tip:"由于缺少权限或与已选字段无关联,部分字段无法使用且已被隐藏。",FDI_No_Auth_Tip:"无法选择,无使用权限。",FDI_To_Apply_Use:"去申请使用",FDI_No_Related_Tip:"无法选择,该字段与已选字段无关联",FDI_Update_Progress:"更新进度",FDI_Folder_Update:"文件夹更新",FDI_Update_Status:"更新状态",FDI_Sort_By_Time:"按创建时间排序",FDI_Sort_By_Name:"按名称排序",FDI_All:"全部",FDI_Table:"数据集",FDI_Table_And_Model:"表/业务模型",FDI_Indicator_And_Dimension:"指标/维度",FDI_Next_Step:"下一步",FDI_Previous_Step:"上一步",FDI_Finish:"完成",FDI_More:"更多",FDI_Load_More:"加载更多",FDI_Permission_Filter:"权限过滤",FDI_Permission_Filter_Tip:"开启后将隐藏不具备使用权限的数据",FDI_Table_No_Auth_Tip:"缺少数据使用权限,无法查看数据明细",FDI_Table_No_Auth_Fields_Tip:"缺少部分字段权限,无法查看部分字段",FDI_Table_No_Auth_Preview_Tip:"缺少数据使用权限,无法查看数据明细,请先申请使用权限",FDI_Apply_Use:"申请使用",FDI_Apply_Auth:"申请权限","FDI_{R1}_Update_Setting":"{R1}更新设置",FDI_Move_To:"移动到",FDI_Multi_Move:"批量移动","FDI_Move_{R1}_To":"将{R1}移动到",FDI_Move_Success:"移动成功",FDI_Move_Fail:"移动失败",FDI_Move_Fail_Prefix:"移动失败,",FDI_Part_Move_Fail:"部分数据移动失败",FDI_All_Move_Fail:"移动失败,请检查数据状态",FDI_Data_Is_Editing:"该数据正在编辑",FDI_Data_Published:"该数据已发布",FDI_Data_Absent:"数据不存在",FDI_Data_Duplicate:"有数据重名",FDI_Data_No_Auth:"无管理权限",FDI_Comment:"备注",FDI_Add_Comment:"添加备注",FDI_Data_Preview:"数据预览",FDI_Usage:"血缘分析",FDI_Update_Info:"更新信息",FDI_Type:"类型",FDI_Data_Status:"数据状态",FDI_Data_Description:"数据描述",FDI_Editor:"编辑者",FDI_Creator:"创建者",FDI_Create_Time:"创建时间",FDI_Related_Table_Name:"相关表名",FDI_Position:"位置",FDI_Position_With_Colon:"位置:",FDI_Origin_Name:"原始名",FDI_Source:"来源","FDI_Last_Update_Time_{R1}":"最近更新:{R1}","FDI_Table_Last_Edit_Time_{R1}":"最近编辑:{R1}",FDI_Cache_Setting:"缓存设置",FDI_Update_Task_Management:"更新任务管理",FDI_Global_Update:"全局更新",FDI_Global_Update_Setting:"全局更新设置",FDI_Create_Base_Table_Engine_Setting:"新建基础表属性设置",FDI_Create_Base_Table_Engine_Setting_Tip:"新建基础表(数据库表、sql表、Excel表)的属性设置",FDI_Total_Rows:"共{R1}条","FDI_Show_{R1}_Rows_Total_{R2}":"显示{R1}条,共{R2}条",FDI_Table_Preview_Limit_Tip:"显示所有数据计算结果的{R1}行数据",FDI_Table_Preview_Limit_Setting_Tip:"显示行数设置",FDI_Engine_Spider:"抽取数据",FDI_Engine_Direct:"直连数据",FDI_Model_Center:"模型中心",FDI_Model_Empty:"暂时无模型, 请先创建模型",FDI_Delete_Model:"删除模型",FDI_Modify_Model:"编辑名称和描述",FDI_I_Know:"我知道了",FDI_Model_Management:"模型管理",FDI_Indicator_Management:"指标管理",FDI_Dimension_Management:"维度管理",FDI_Business_Model:"业务模型",FDI_Global_Graph:"全局视图",FDI_Relation_Disable_Tip_Title:"确认要停用关系吗?",FDI_Relation_Disable_Tip:"停用关系后,相关资源都将受到影响,请谨慎停用。",FDI_Relation_Delete_Tip_Title:"确认要删除关系吗?",FDI_Relation_Delete_Tip:"删除关系后,相关资源都将受到影响,请谨慎删除。","FDI_Model_Delete_Tip_Title_{R1}":"确认要删除“{R1}”吗?",FDI_Model_Delete_Tip:"删除模型后,模型关系无法找回,数据目录中的相关资源都将报错。如确定删除,请输入模型名称:",FDI_Relation_Enable_Error:"无法启用关系,请先删除或者停用当前表已有的关系",FDI_Resource_Add_Error:"选择的部分资源有重名无法添加成功,请修改资源名称再重新添加",FDI_Jump_To_Other_Tip:"当前表为分组外的表,确定跳转到其他分组的模型关系?",FDI_Add_Model:"添加模型",FDI_Unnamed_New_Model:"未命名新模型",FDI_Collapsed:"收起",FDI_Add_Relation:"添加关系",FDI_Edit_Relation:"编辑关系",FDI_Resource_Info:"资源信息",FDI_Table_Has_Relation_Tip:"当前表已添加过关系,不可重复添加",FDI_Table_Has_Imported_Tip:"当前表已添加,不可重复添加",FDI_Table_Inherit_Tip:"当前表开启了权限继承,不可添加",FDI_Table_Duplicate_Name_Tip:"当前表名称与已添加的表重名,不可添加",FDI_Edge_Show_Relation:"显示关系属性",FDI_Empty:"暂无数据",FDI_Resource_Empty_Please_Add:"暂时无资源, 请先添加资源",FDI_Please_Choose_Resource:"请从左侧选择资源",FDI_Resource_List:"资源列表",FDI_Add_Resource:"添加资源",FDI_Search_Resource:"搜索资源",FDI_Field_Type:"字段类型",FDI_Field_Transfer_Name:"字段名称",FDI_Field_Transfer_Name_Colon:"字段名称:",FDI_Field_Name:"原始名",FDI_Field_Description:"字段描述",FDI_Field_Label:"字段分组",FDI_Not_Empty:"不可为空",FDI_Not_Special_Str:"首个字符不可为特殊字符",FDI_Not_To_Exceed:"不可超过",FDI_Chars:"个字符",FDI_Not_Same_Name:"不可重名",FDI_Operation_Failed:"操作失败",FDI_Operation_Failed_Please_Refresh:"操作失败,请重新登陆后重试",FDI_Rename:"重命名",FDI_Delete:"删除",FDI_Edit:"编辑",FDI_Delete_Success:"删除成功",FDI_Delete_Fail:"删除失败",FDI_Delete_Fail_Prefix:"删除失败,",FDI_Part_Delete_Fail:"部分数据删除失败",FDI_All_Delete_Fail:"删除失败,请检查数据状态",FDI_Folder:"文件夹",FDI_Delete_Confirm_Title:"确定要删除所选数据或文件夹吗?",FDI_Delete_Confirm_Message:"删除后,数据无法恢复。文件夹内所有内容将被一起被删除。",FDI_Catalog_Folder_Delete_Confirm_Title:"删除文件夹",FDI_Catalog_Folder_Delete_Confirm_Message:"此文件夹内的所有资源都将被删除,相关联的自助数据集/组件/仪表板/分析文档也将受到影响,所有配置的行列权限和关联都将被清除无法找回。确定删除“{R1}”?",FDI_Catalog_Table_Delete_Confirm_Title:"删除表",FDI_Catalog_Table_Delete_Confirm_Message:"此数据集删除后,相关联的自助数据集/组件/仪表板/分析文档也将受到影响,所有配置的行列权限和关联都将被清除无法找回。确定删除“{R1}”?",FDI_Add_Folder:"添加文件夹",FDI_Advance_Setting:"高级设置",FDI_Relation_Type:"关联关系",FDI_Relation_Analysis_Direction:"分析方向",FDI_Relation_Enable:"关系启用",FDI_Delete_Relation:"删除关系",FDI_Source_To_Target:"从左侧表到右侧表",FDI_Target_To_Source:"从右侧表到左侧表",FDI_Two_Way:"双向",FDI_Add_Relation_Field:"添加多个关联字段",FDI_View_Detail:"查看详情",FDI_Name:"名称",FDI_Description:"描述",FDI_Table_Count:"表数量",FDI_Indicator_Count:"指标数量",FDI_Dimension_Count:"维度数量",FDI_Business_Model_Empty:"当前没有业务模型,请先添加业务模型",FDI_Business_Model_List:"业务模型列表",FDI_Add_Business_Model:"添加业务模型",FDI_Business_Model_Count:"业务模型数量",FDI_Business_Model_Preview:"业务模型预览",FDI_Business_Model_Name:"业务模型名称",FDI_Business_Model_Description:"业务模型描述",FDI_Edit_Business_Model:"编辑业务模型",FDI_Select_Indicator:"选择指标",FDI_Select_Dimension:"选择维度",FDI_Last_Edit_User:"最近编辑人",FDI_Last_Edit_Time:"最近编辑时间",FDI_Action:"操作",FDI_Table_Field_String:"文本",FDI_Table_Field_Number:"数值",FDI_Table_Field_Datetime:"日期",FDI_Indicator_List:"指标列表",FDI_Add_Indicator:"添加指标",FDI_Search:"搜索",FDI_Search_Plus:"搜索增强",FDI_Search_History_Empty:"暂无搜索记录",FDI_Search_History:"历史记录",FDI_Search_Correct_Tip:"已显示“{R1}“,仍然搜索:",FDI_Force_Search_Tip:"仍然搜索:",FDI_Tag:"标签",FDI_Data_Privilege:"数据权限",FDI_Update_Time:"更新时间",FDI_Save:"保存",FDI_No_More_Reminders:"不再提醒",FDI_Search_Include_Tip:"{R1}包含“{R2}”",FDI_Search_Is_Tip:"{R1}是“{R2}”",FDI_Omit_More:"等",FDI_Pause:"、",FDI_Comma:",",FDI_Helpful:"👍有帮助",FDI_No_Helpful:"👎没帮助",FDI_AI_Search_Query_Understand:"当前搜索结果已由AI智能解析",FDI_AI_Search_Query_Understand_Content:"优先匹配{R1}的结果",FDI_AI_Search_Feedback_Tip:"这次AI搜索帮到您了吗?",FDI_AI_Search_Error_Title:"当前服务器不可用",FDI_AI_Search_Error_Tip:"智能搜索功能受限,请尝试调整您的搜索内容或联系管理员寻求帮助",FDI_Search_Empty_Tip:"请尝试调整您的搜索内容或联系管理员寻求帮助",FDI_Data:"数据",FDI_Search_Result:"搜索结果 ",FDI_Search_Guide_Tip1:"🎉 搜索功能全新升级!",FDI_Search_Guide_Tip2:"👍 现支持多关键词模糊搜索,可同时检索字段、标签、创建者及业务描述!",FDI_Search_AI_Guide_Tip1:"🔥 更有AI加持, 用日常语言就能搜索,智能又便捷!",FDI_Search_AI_Guide_Tip2:"🌰 例如:小明在2023年一季度更新的指标",FDI_Advanced_Search:"高级搜索",FDI_Advanced_Search_Tip:"开启后,支持多关键词模糊搜索和增强版搜索算法。",FDI_Advanced_Search_Close_Tip:"关闭「高级搜索」将联动关闭「AI搜索」",FDI_AI_Search:"AI搜索",FDI_AI_Search_Tip:"开启后,在高级搜索基础上支持自然语言搜索",FDI_AI_Search_Open_Tip:"开启「AI搜索」将联动开启「高级搜索」",FDI_AI_Path:"主机地址",FDI_Link_Test:"连接测试",FDI_Link_Success:"连接成功",FDI_Link_Fail:"连接失败",FDI_Indicator_Info:"指标信息",FDI_Related_Dimension:"相关维度",FDI_Related_Indicator:"相关指标",FDI_Indicator_Total:"指标总数",FDI_None:"无",FDI_Formula_Category_Function_Type_Common:"常用函数",FDI_Formula_Category_Function_Type_Math:"数值函数",FDI_Formula_Category_Function_Type_Datetime:"日期函数",FDI_Formula_Category_Function_Type_Text:"文本函数",FDI_Formula_Category_Function_Type_Logic:"逻辑函数",FDI_Formula_Category_Function_Type_Agg:"聚合函数",FDI_Formula_Category_Function_Type_Table_Cal:"快速计算函数",FDI_Formula_Category_Function_Type_Analysis:"分析函数",FDI_Formula_Category_Function_Type_Other:"其他函数",FDI_Function:"函数",FDI_Directory:"目录",FDI_Indicator_Name:"指标名称",FDI_Calculate_Formula:"计算公式",FDI_Click_Edit_Formula:"点击编辑公式",FDI_Formula_Editor_Title:"编辑计算公式",FDI_Edit_Indicator:"编辑指标","Data_Fusion-Index-Root":"全部指标","Data_Fusion-Table-Ungrouped":"未分组资源","Data_Fusion-Table-Root":"全部模型","Data_Fusion-Dimension-Root":"全部维度",FDI_Data_Root:"全部数据",FDI_Add_Dimension:"添加维度",FDI_Edit_Dimension:"编辑维度",FDI_Dimension_List:"维度列表","Data_Fusion-Business-Model-Root":"全部业务模型",FDI_Indicator_Empty_Text:"当前没有指标,请先新建指标",FDI_Dimension_Empty_Text:"当前没有维度,请先新建维度",FDI_Dimension_Total:"维度总数",FDI_Unnamed_New_Indicator:"未命名新指标",FDI_Select_All:"全选",FDI_Dimension_Name:"维度名称",FDI_Dimension_Info:"维度信息",FDI_Unnamed_New_Dimension:"未命名新维度",FDI_Indicator_Formula_Invalid_Msg:"指标公式计算结果不合法,不可为日期类型或字符串类型",FDI_Model_Not_Exist:"模型不存在",FDI_Indicator_Note_Exist:"指标不存在",FDI_Dimension_Not_Exist:"维度不存在",FDI_Business_Model_Not_Exit:"业务模型不存在",FDI_Folder_Not_Exist:"文件夹不存在",FDI_Table_Not_Exist:"表不存在",FDI_Rename_Failed:"命名失败",FDI_Exist_Duplicate_Name:"操作失败,名称不可重名",FDI_Add_Failed:"添加失败",FDI_Relation_Duplicate_Add:"存在重复关联关系,表之间不可重复关联",FDI_Folder_Levels_Over_limit:"文件夹层数超出限制",FDI_Folder_Not_Move:"该文件夹不可移动",FDI_Batch_Deal:"批量处理",FDI_Cancel:"取消",FDI_Calculate_Empty:"计算为空",FDI_Calculate_Error:"出错了,计算结果报错啦……",FDI_Dimension_Formula_Invalid_Msg:"维度公式计算结果不合法,不可为聚合函数",FDI_Data_Detail:"数据详情",FDI_Edit_Data_Detail:"编辑数据详情",FDI_Field_Preview:"字段预览",FDI_Resource_Type:"资源类型",FDI_Indicator:"指标",FDI_Dimension:"维度",FDI_Tag_List:"标签列表",FDI_Add_Tag:"添加标签",FDI_Tag_Empty_Text:"当前没有标签,请先新建标签",FDI_Tag_Total:"标签总数",FDI_Publish:"发布",FDI_Publish_Apply:"发布申请",FDI_Publish_Node:"发布节点",FDI_Reviewer:"审批者",FDI_Apply_Remark:"申请备注",FDI_Please_Input:"请输入",FDI_Publish_Apply_Indicator_Name_Exist:"发布节点有重名指标,不可发布",FDI_Publish_Apply_Dimension_Name_Exist:"发布节点有重名维度,不可发布",FDI_Publish_Apply_Business_Model_Name_Exist:"发布节点有重名业务模型,不可发布",FDI_Cancel_Publish:"取消发布",FDI_Confirm:"确定",FDI_Publish_Name:"发布名称",FDI_Apply_Opinion:"申请意见",FDI_Agree_Publish:"同意发布",FDI_Reject_Apply:"驳回申请",FDI_Reject_Reason:"驳回理由",FDI_Reject_Reason_Placeholder:"填写驳回申请的理由显示在用户发布消息中",FDI_Apply_Publish:"申请发布",FDI_Cancel_Publish_Confirm_Title:"确定要取消发布吗?",FDI_Table_Cancel_Publish_Confirm_Message:"此数据集取消发布后,所有配置的行列权限和关联都将被清除无法找回。",FDI_Indicator_Cancel_Publish_Confirm_Message:"取消发布后,所有配置的行列权限和关联都将被清除无法找回,使用当前指标的相关资源都将报错。",FDI_Dimension_Cancel_Publish_Confirm_Message:"取消发布后,所有配置的行列权限和关联都将被清除无法找回,使用当前维度的相关资源都将报错。",FDI_Business_Model_Cancel_Publish_Confirm_Message:"取消发布后,所有配置的行列权限和关联都将被清除无法找回,使用当前业务模型的相关资源都将报错。",FDI_Status:"状态",FDI_Published:"已发布",FDI_Unpublish:"未发布",FDI_Checking:"审核中",FDI_Reviewers_Check_Failed:"无法授予{R1}当前数据的授权权限,请调整审批者或移除该审批者",FDI_Publish_Node_Not_Empty:"发布节点不能为空",FDI_Delete_Published_Resource_Warning:"无法删除所选项中「已发布」的资源",FDI_Publish_Deal:"发布处理",FDI_Agree_Cancel_Publish:"同意取消发布",FDI_Not_To_Exceed_Chars:"不可超过{R1}个字符",FDI_Publish_Apply_Success:"发布成功",FDI_Publish_Apply_Success_Wait:"申请发布成功,请等待批复",FDI_Publish_Cancel_Apply_Success:"取消发布成功",FDI_Publish_Cancel_Apply_Success_Wait:"申请取消发布成功,请等待批复",FDI_Publish_Apply_Fail:"申请发布失败",FDI_Publish_Apply_Fail_Same_Type:"申请发布失败,当前内容已申请发布",FDI_Publish_Apply_Fail_Reviewer_Error:"申请发布失败, 审批者权限异常",FDI_Publish_Apply_Fail_Status_Error:"申请发布失败,当前内容已发布",FDI_Publish_Cancel_Apply_Fail:"申请取消发布失败",FDI_Publish_Cancel_Apply_Fail_Same_Type:"申请取消发布失败,当前内容已申请取消发布",FDI_Publish_Cancel_Apply_Fail_Reviewer_Error:"申请取消发布失败, 审批者权限异常",FDI_Publish_Cancel_Apply_Fail_Status_Error:"申请取消发布失败,当前内容已取消发布",FDI_Related_Indicator_dimension:"相关指标维度",FDI_View_All:"查看全部",FDI_Copy:"拷贝",FDI_Import_Indicator:"导入指标",FDI_Import_Dimension:"导入维度",FDI_Batch_Import:"批量导入",FDI_Import_Indicator_Empty_Text:"当前没有指标,请先创建/导入指标",FDI_Import_Dimension_Empty_Text:"当前没有维度,请先创建/导入维度",FDI_Authority_Apply_Review:"权限申请审批",FDI_Authority_Apply:"权限申请",FDI_Apply_Authority:"申请权限",FDI_Authority_Review:"权限审批",FDI_Authorize_Target:"授权对象",FDI_Apply_Field:"申请字段",FDI_Apply_Reason:"申请理由",FDI_Field_Authority:"字段权限",FDI_View_Authority:"查看权限",FDI_Use_Authority:"使用权限",FDI_Inherit_Field:"继承字段",FDI_Inherit_Table:"继承数据集",FDI_I_Initiated:"我发起的",FDI_I_Approved:"我审批的",FDI_Data_Name:"数据名称",FDI_Data_Type:"数据类型",FDI_Applicant:"申请人",FDI_Authority_Type:"权限类型",FDI_Apply_Time:"申请时间",FDI_Apply_Info:"申请信息",FDI_Authority_Info:"权限信息",FDI_Authorize_Info:"授权信息",FDI_Authorize_Detail:"授权明细",FDI_Review_Opinion:"审批意见",FDI_Current_Review_Status:"当前审批状态",FDI_Field:"字段",FDI_Reject:"驳回",FDI_Rejected:"已驳回",FDI_Pass:"通过",FDI_Passed:"已通过",FDI_Wait_For_Approve:"待审批",FDI_View:"查看",FDI_View_Data:"查看数据",FDI_Reapply:"再次申请",FDI_Item_Count_Per_Page:"条/页",FDI_Department:"部门",FDI_Role:"角色",FDI_Authority_Inherit:"权限继承",FDI_Inherit_Field_Tip:"当前数据开启了继承权限,实际授予的是继承字段的字段权限",FDI_No_Field_Select_Tip:"请至少勾选1个字段,或点击「驳回」",FDI_Multipath_Setting:"多路径设置",FDI_Exit_Multipath_Setting:"退出多路径设置",FDI_Multipath_Setting_Changed_Warning:"多路径信息已变更,您可能需要更新数据",FDI_Select_Path:"选择要使用的路径",FDI_Current_No_Multi_Path:"当前无多路径",FDI_Review_Success:"审批成功",FDI_View_Apply_Status:"查看申请状态",FDI_Pass_Apply:"通过申请",FDI_Apply_Success:"申请成功",FDI_Search_Result_Is_Empty:"搜索结果为空",FDI_Upload_Fail_Tooltip:"导入失败,文件格式不符",FDI_Upload_File_Type_Error:"导入失败,文件格式不符,仅支持xls、xlsx 格式文件",FDI_Upload_Success_Tooltip:"导入成功,共导入{R1}个资源",FDI_Save_Import_Fail:"保存失败,请检查导入信息",FDI_Save_Success:"保存成功",FDI_Formula_Field_Invalid_Msg:"「{R1}」字段指定不明确或不存在",FDI_Reviewer_Tooltip:"通过申请后,审批者将获得对当前数据的授权权限",FDI_Publish_Checked_Error_Tooltip:"发布失败,请检查字段",FDI_Apply_Failed_Message:"申请失败,请检查申请信息",FDI_Add_To:"添加到",FDI_Review_Failed:"审批失败",FDI_Review_Failed_Apply_Not_Exist:"审批失败,申请不存在",FDI_Review_Failed_Already_Reviewed:"审批失败,该申请已审批",FDI_Review_Failed_No_Data_Authority:"审批失败,缺少数据授权权限",FDI_Review_Failed_No_User_Authority:"审批失败,缺少用户授权权限",FDI_Review_Failed_Applicant_Not_Exist:"审批失败,申请者不存在或未启用",FDI_Review_Failed_Not_Current_Data_Reviewer:"审批失败,非当前数据审批者",FDI_Review_Failed_Resource_Not_Exist:"审批失败,该数据不存在",FDI_Apply_Failed:"申请失败",FDI_Apply_Failed_Already_Apply:"申请失败,该权限已申请",FDI_Apply_Failed_Empty_Reviewer:"申请失败,审批者为空,请联系管理员",FDI_Apply_Failed_No_Reviewer:"申请失败,无可审批人员,请联系管理员",FDI_Apply_Failed_Resource_Not_Exist:"申请失败,该数据不存在",FDI_No_Update_Time:"暂无更新时间",FDI_No_View_Authority:"无查看权限",FDI_No_Use_Authority:"无使用权限",FDI_Data_Deleted:"该数据已删除",FDI_Field_Deleted:"该字段已删除",FDI_User_Deleted:"该用户已删除",FDI_Pass_Failed_Deleted:"通过失败,该对象已删除,请取消勾选或驳回申请",FDI_Model_No_Use_Permission:"无模型中心的使用权限,请联系管理员",FDI_Relation_Analysis_Table_Disable:"配置关系失败,开启权限继承不可配置关系",FDI_No_Edit_Authority:"无编辑权限","FDI_No_Edit_Authority_{R1}":"无{R1}的编辑权限",FDI_No_Authority:"无权限","FDI_Source_Table_{R1}":"来源表: {R1}",FDI_Clear:"清空",FDI_Business_Model_Setting_Instruction:"已选择项中存在不相关的指标和维度,请清空后重新选择",FDI_No_Data_Authority:"没有此数据权限,不支持新建",FDI_Cannot_Add_Table_In_Root:"不支持在根目录添加表",FDI_Management:"管理",FDI_Tag_Management:"标签管理","Tag-Root":"全部标签",FDI_Tag_Name:"标签名称",FDI_Edit_Tag:"编辑标签",FDI_Unnamed_New_Tag:"未命名新标签",FDI_Tag_Category:"标签分类",FDI_Tag_Description:"标签描述",FDI_Tag_Application:"标签应用",FDI_Extend_Field:"扩展字段",FDI_Add_Field:"添加字段",FDI_Unnamed_Field:"未命名字段",FDI_Please_Input_Field_Name:"请输入字段名称",FDI_Please_Select_Field_Type:"请选择字段类型",FDI_Type_Not_Support_Modify:"类型暂不支持修改",FDI_No_Extend_Field:"暂无扩展字段",FDI_Data_Filter:"数据过滤",FDI_Query:"查询",FDI_Up_Down_Stream:"上下游",FDI_Publish_Status:"发布状态",FDI_Permission_Status:"权限状态",FDI_Abnormal_Status:"异常状态",FDI_Show_Up_Stream:"仅展示上游血缘",FDI_Show_Down_Stream:"仅展示下游血缘",FDI_Normal:"正常",FDI_Has_View_Authority:"有查看权限",FDI_Publishing:"发布审核中",FDI_Unpublishing:"取消发布审核中",FDI_Up_Stream_Num:"上游血缘数",FDI_Down_Stream_Num:"下游影响数",FDI_Lineage_Level:"血缘层级",FDI_Close:"关闭",FDI_Up_Stream_Num_Detail:"上游血缘数详情",FDI_Down_Stream_Num_Detail:"下游影响数详情",FDI_Resource_Name:"资源名称",FDI_Spider:"抽取",FDI_Direct:"直连",FDI_Widget:"组件",FDI_Report:"仪表板",FDI_Doc:"分析文档",FDI_Deleted:"已删除",FDI_Unavailable:"不可用",FDI_Consanguinity_Over_Limit:"当前数据集超出血缘层级限制",FDI_Delete_Tag_Confirm_Title:"确定要删除该标签吗?",FDI_Delete_Tag_Confirm_Message:"删除标签会影响已使用该标签做标记的数据",FDI_Delete_Tag_Folder_Confirm_Title:"确定要删除该文件夹吗?",FDI_Delete_Tag_Folder_Confirm_Message:"该文件夹内的标签也会全部删除,且会影响已使用文件夹内标签做标记的数据",FDI_Batch_Create:"批量创建",FDI_Batch_Create_Indicator:"批量创建指标",FDI_Batch_Create_Dimension:"批量创建维度",FDI_Indicator_Create_Illegal:"指标创建不合法,不可为日期类型或字符串类型",FDI_Load_Failed:"加载失败",FDI_Reload:"重新加载",FDI_Cannot_Select_Child_Field:"该字段为当前字段的子字段,无法选择",FDI_Search_No_Data:"无匹配项",FDI_Folder_Name_Duplicate:"操作失败,存在重名文件夹",FDI_No_Lineage_Level:"暂无血缘层级",FDI_Data_Update_Please_Refresh:"数据已更新,请刷新",FDI_Refresh:"刷新",FDI_Jump_To_Origin_Table:"跳转到原表位置",FDI_Please_Input_Model_Name:"请输入模型名称",FDI_To_Apply:"去申请",FDI_BI_Business_Model:"指标维度集",FDI_Disable_Batch_Create_Tip:"批量创建的指标超过2000个,无法继续创建",FDI_Please_Set_Group_Config_Tip:"请先设置分组/汇总后再查看",FDI_Calculate_Result_Is_Empty:"计算结果为空",STRING:"字符串",INT:"整型",DOUBLE:"双精度型",DATE:"日期",BOOLEAN:"布尔型",FORMULA:"公式",PARAMETER:"参数",SEARCH_RESULT_NONE:"暂无结果",ADD_FILTER_CONDITION_AND:"添加条件(且)",ADD_FILTER_CONDITION_OR:"添加条件(或)",EQUAL:"等于",NOT_EQUAL:"不等于",BEGINNING_IS:"开头是",BEGINNING_IS_NOT:"开头不是",END_IS:"结尾是",END_IS_NOT:"结尾不是",INCLUDE:"包含",NOT_INCLUDE:"不包含",INCLUDE_IN:"包含于",NOT_INCLUDE_IN:"不包含于",FILTER_CONDITION:"过滤条件",PLEASE_SELECT_DATA_COLUMN:"请选择数据列",DASHBOARD_NAME:"仪表板名称",BEFORE_DATE:"在某个日期及之前",AFTER_DATE:"在某个日期及之后",PARAMETER_NAME:"参数名",PARAMETER_VALUE:"值",MORE:"大于",LESS:"小于",MORE_EQUAL:"大于等于",LESS_EQUAL:"小于等于","BI-Basic_(Empty)":"(空)","BI-Basic_Calculate_To_Be_Analyzed_Area_Is_Missing_Date_Fields":"待分析区域缺少日期字段","BI-Basic_Calculate_Group_Is_Missing_Date_Fields":"分组框缺少日期字段","BI-Basic_Calculate_{R1}_is_Not_Supported_To_Calculate_{R2}":"{R1}的时间分组不支持计算{R2}","BI-Basic_Group_Space":"区间间隔","BI-Conf_Please_Input_Positive_Number":"请输入正数","BI-Design_Current_Group_Num_Out_Of_Limit":"当前分组超过{R1}万,不支持分组展示","BI-Conf_Save_After_Add_Group":"添加分组后才能保存","BI-Basic_Left_Number_Values":"未分组的值分到","BI-Basic_Others":"其它","BI-Basic_Group_Name_Not_Empty":"分组名不可为空","BI-Basic_Group_Name_Cannot_Same":"不可与其他分组重名","BI-Basic_Custom_Grouping_Dot":"自定义分组","BI-Conf_Save_After_Fix_Error":"请修改标红区域的错误","BI-Basic_Add_Group":"添加分组","BI-Basic_Not_Allow_Empty":"不可为空","BI-Basic_Range_Cannot_Be_Crossed":"数值范围重复,请重新输入","BI-Basic_Group":"分组","BI-Conf_Already_Divided_Field_To_Groups":"已将此字段分为{R1}组","BI-Design_Current_Group_Num_Suggest":"建议最多分{R1}组,否则数据加载时间变长,严重者可能引起宕机,请谨慎设置","BI-Basic_Auto":"自动","BI-Basic_Group_Methods":"分组方式","BI-Basic_Same_Value_A_Group":"相同值为一组","BI-Basic_Ensure_Group_By_Value":"切换为相同值为一组,自定义分组的信息将丢失","BI-Basic_Rename":"重命名","BI-Basic_Remove":"删除","BI-Conf_Move_To_Same_Value_Info_Missing":"区间分组信息将丢失。确定切换为相同值为一组?","BI-Basic_Grouping_Setting":"区间分组","BI-Basic_YMD_Date":"年月日","BI-Basic_Year_Week":"年周数","BI-Basic_Year_Month":"年月","BI-Basic_Year_Quarter":"年季度","BI-Basic_Multi_Date_Year":"年","BI-Basic_More_Group":"更多分组","BI-Conf_FieldType_Change_Summary_Missing":"{R1}的类型改变,汇总方式丢失","BI-Basic_Rapid_Calculation{R1}":"快速计算:{R1}","BI-Basic_Calculate_Depend_Date_Field{R1}":"依赖日期字段:{R1}","BI-Basic_Calculate_Depend_Date_Field_Missed":"依赖日期字段丢失","BI-Basic_Group_Type{R1}":"汇总方式:{R1}","BI-Basic_Field_Name_Cannot_Be_Null":"字段名不能为空","BI-Basic_Field_Name_Already_Exist":"字段不可重名","BI-Basic_Number_Custom_Group_Setting":"区间分组设置","BI-Basic_Min":"最小值","BI-Basic_Max":"最大值","BI-Basic_Cancel":"取消","BI-Basic_Search_Group":"搜索分组","BI-Basic_Copy_To_Group":"复制到","BI-Basic_Empty":"空","BI-Basic_Click_Cancel_Choose_Field":"点击取消该数据选择","BI-Basic_Confirm_Delete_Group":"确定解散{R1}?","BI-Basic_Sure":"确定","BI-Basic_Move_To_Group":"移动到","BI-Basic_Other":"其他","BI-Basic_Has_Selected_{R1}_Item":"已选择{R1}项","BI-Basic_New_Group":"分组","BI-Basic_None_Group":"未分组","BI-Basic_Move_To_Group_Failed":"字段名与分组名重名,移动失败","BI-Basic_Not_Select_Any":"未选中任何选项","BI-Basic_UnGroup_Data_Only_Can_Be_Moved":"未分组内的数据只能移动","BI-Basic_Select_All_Search_Results":"全选搜索结果","BI-Basic_Ungrouped_Value_To":"未分组的值分到","BI-Basic_Statistic":"汇总","BI-Conf_Drop_Fields_From_Left":"请拖入{R1}字段","BI-Basic_Search_Field":"搜索字段","BI-Conf_No_Match_Field":"无匹配字段","BI-Conf_Total":"共","BI-Basic_Quarter":"季度","BI-Basic_Month_Fen":"月份","BI-Basic_Month_Day":"月日","BI-Basic_Week_Count":"周数","BI-Basic_Week_XingQi":"星期","BI-Basic_Date_Day":"日","BI-Basic_Hour_Sin":"时","BI-Basic_Minute":"分","BI-Basic_Seconds":"秒","BI-Basic_YMDH":"年月日时","BI-Basic_YMDHM":"年月日时分","BI-Basic_Detail_Date":"年月日时分秒","BI-Basic_No_Repeat_Count":"去重计数","BI-Basic_Record_Count":"记录个数","BI-Basic_String_Summary_By_Connection":"字符串拼接",BI_Add_Group_Condition:"汇总条件","BI-Basic_Calculate_Sum":"求和","BI-Basic_Calculate_Avg":"平均","BI-Basic_Calculate_Median":"中位数","BI-Basic_Calculate_Max":"最大值","BI-Basic_Calculate_Min":"最小值","BI-Basic_Calculate_Standard_Deviation":"标准差","BI-Basic_Calculate_Variance":"方差","BI-Basic_None":"无","BI-Basic_Calculate_Same_Period_Rate":"同比","BI-Basic_Calculate_Same_Period":"同期","BI-Basic_Calculate_Same_Period_Growth_Value":"同比增长值","BI-Basic_Calculate_Same_Period_Growth_Rate":"同比增长率","BI-Basic_Calculate_Same_Ring_Rate":"环比","BI-Basic_Calculate_Same_Ring":"环期","BI-Basic_Calculate_Same_Ring_Growth_Value":"环比增长值","BI-Basic_Calculate_Same_Ring_Growth_Rate":"环比增长率","BI-Basic_Earliest_Time":"最早时间","BI-Basic_Latest_Time":"最晚时间","BI-BI_Add_Group_Condition":"汇总条件","BI-Basic_Multi_Date_Month":"月","BI-Basic_Multi_Date_Week":"周","BI-Basic_Approximate_Distinct_Count":"近似去重计数","BI-Conf_Approximate_Distinct_Count_Tooltip":"注意:仅支持以下数据库:Oracle(12.1或以上)、Presto、ClickHouse、Vertica、Impala、SQL Server(2019或以上)、Redshift、MaxCompute、Hologres、TiDB(4.0.2或以上)、Doris、Dremio。数据库为Vertica时,不能同时使用(精确)去重计数和近似去重计数。","BI-Basic_Search":"搜索","BI-Basic_Value":"值","BI-Less_Than":"小于","BI-Less_And_Equal":"小于等于","BI-Numerical_Interval_Number_Value":"请保证前面的数值小于/等于后面的数值","BI-Basic_OK":"确定"},Eae={FDI_Please_Select_Field:"請選擇欄位",FDI_Relation_Field_Miss_Tip:"欄位丟失",FDI_Model_Center:"模型中心",FDI_Model_Empty:"暫時無模型, 請先建立模型",FDI_Modify_Model:"編輯名稱和描述",FDI_I_Know:"我知道了",FDI_Indicator_Management:"指標管理",FDI_Global_Graph:"全局檢視表",FDI_Relation_Delete_Tip_Title:"確認要刪除關係嗎?",FDI_Model_Delete_Tip_Title:"確認要刪除模型嗎?",FDI_Jump_To_Other_Tip:"當前表為分組外的表,確定跳轉到其他分組的模型關係?",FDI_Collapsed:"收起",FDI_Add_Relation:"新增關係",FDI_Edit_Relation:"編輯關係",FDI_Please_Choose_Resource:"請從左側選擇資源",FDI_Search_Resource:"搜尋資源",FDI_Not_Special_Str:"首個字元不可為特殊字元",FDI_Chars:"個字元",FDI_Not_Same_Name:"不可重名",FDI_Operation_Failed:"操作失敗",FDI_Rename:"重新命名",FDI_Delete:"刪除",FDI_Delete_Success:"刪除成功",FDI_Add_Folder:"新增資料夾",FDI_Advance_Setting:"進階設定",FDI_Relation_Type:"聯動關係",FDI_Relation_Analysis_Direction:"分析方向",FDI_Relation_Enable:"關係啟動",FDI_Delete_Relation:"刪除關係",FDI_Target_To_Source:"從右側表到左側表",FDI_Two_Way:"雙向",FDI_View_Detail:"查看詳情",FDI_Name:"名稱",FDI_Description:"描述",FDI_Table_Count:"表數量",FDI_Business_Model_List:"業務模型列表",FDI_Add_Business_Model:"新增業務模型",FDI_Business_Model_Count:"業務模型數量",FDI_Business_Model_Description:"業務模型描述",FDI_Edit_Business_Model:"編輯業務模型",FDI_Select_Indicator:"選擇指標",FDI_Select_Dimension:"選擇維度",FDI_Last_Edit_Time:"最近編輯時間",FDI_Action:"操作",FDI_Table_Field_Number:"數值",FDI_Table_Field_Datetime:"日期",FDI_Indicator_List:"指標列表",FDI_Search:"搜尋",FDI_Indicator_Info:"指標資訊",FDI_Indicator_Total:"指標總數",FDI_None:"無",FDI_Formula_Category_Function_Type_Text:"文字函式",FDI_Formula_Category_Function_Type_Table_Cal:"快速計算函式",FDI_Formula_Category_Function_Type_Other:"其他函式",FDI_Function:"函式",FDI_Formula_Editor_Title:"編輯計算公式","Data_Fusion-Table-Root":"全部模型",FDI_Add_Dimension:"新增維度",FDI_Dimension_Empty_Text:"當前沒有維度,請先建立維度",FDI_Dimension_Total:"維度總數",FDI_Select_All:"全選",FDI_Dimension_Info:"維度資訊",FDI_Indicator_Note_Exist:"指標不存在",FDI_Dimension_Not_Exist:"維度不存在",FDI_Folder_Levels_Over_limit:"資料夾層數超出限制",FDI_Folder_Not_Move:"該資料夾不可行動",FDI_Batch_Deal:"批量處理",FDI_Cancel:"取消",FDI_Resource_Type:"資源類型",FDI_Indicator:"指標",FDI_Dimension:"維度","Data_Fusion-Table-Ungrouped":"未分組資源",FDI_Please_Select:"請選擇",FDI_Relation_Field_Delete_Tip:"確認刪除?刪除後無法恢復",FDI_Relation_Field_Unmatched_Tip:"欄位類型不匹配",FDI_Add_Resource_Duplicate:"新增資源有重名",FDI_Add_Resource_Duplicate_Tip:"抱歉,無法完成新增操作。您嘗試新增的資源名稱已存在,請修改資源名稱再嘗試新增。相關資源為:",FDI_Delete_Model:"刪除模型",FDI_Model_Management:"模型管理",FDI_Dimension_Management:"維度管理",FDI_Business_Model:"業務模型",FDI_Relation_Disable_Tip_Title:"確認要停用關係嗎?",FDI_Relation_Disable_Tip:"停用關係後,相關資源都將受到影響,請謹慎停用。",FDI_Relation_Delete_Tip:"刪除關係後,相關資源都將受到影響,請謹慎刪除。",FDI_Model_Delete_Tip:"刪除模型後,模型關係無法找回,資料目錄中的相關資源都將報錯。請謹慎刪除。",FDI_Model_Not_Exist:"模型不存在",FDI_Relation_Enable_Error:"無法啟動關係,請先刪除或者停用當前表已有的關係",FDI_Resource_Add_Error:"選擇的部分資源有重名無法新增成功,請修改資源名稱再重新新增",FDI_Business_Model_Not_Exit:"業務模型不存在",FDI_Add_Model:"新增模型",FDI_Folder_Not_Exist:"資料夾不存在",FDI_Unnamed_New_Model:"未命名新模型",FDI_Table_Not_Exist:"表不存在",FDI_Rename_Failed:"命名失敗",FDI_Edge_Show_Relation:"顯示關係屬性",FDI_Exist_Duplicate_Name:"操作失敗,名稱不可重名",FDI_Resource_Empty_Please_Add:"暫時無資源, 請先新增資源",FDI_Resource_List:"資源列表",FDI_Add_Failed:"新增失敗",FDI_Add_Resource:"新增資源",FDI_Field_Type:"欄位類型",FDI_Field_Name:"原始名",FDI_Field_Description:"欄位描述",FDI_Not_Empty:"不可為空",FDI_Not_To_Exceed:"不可超過",FDI_Operation_Failed_Please_Refresh:"操作失敗,請重新登入後重試",FDI_Edit:"編輯",FDI_Folder:"資料夾",FDI_Delete_Confirm_Title:"確定要刪除所選資料或資料夾嗎?",FDI_Delete_Confirm_Message:"刪除後,資料無法恢復。資料夾內所有內容將被一起被刪除。",FDI_Source_To_Target:"從左側表到右側表",FDI_Add_Relation_Field:"新增多個聯動欄位",FDI_Indicator_Count:"指標數量",FDI_Dimension_Count:"維度數量",FDI_Business_Model_Empty:"當前沒有業務模型,請先新增業務模型",FDI_Business_Model_Preview:"業務模型預覽",FDI_Relation_Duplicate_Add:"存在重複聯動關係,表之間不可重複聯動",FDI_Business_Model_Name:"業務模型名稱",FDI_Last_Edit_User:"最近編輯人",FDI_Table_Field_String:"文字",FDI_Add_Indicator:"新增指標",FDI_Related_Dimension:"相關維度",FDI_Formula_Category_Function_Type_Common:"常用函式",FDI_Formula_Category_Function_Type_Math:"數值函式",FDI_Formula_Category_Function_Type_Datetime:"日期函式",FDI_Formula_Category_Function_Type_Logic:"邏輯函式",FDI_Formula_Category_Function_Type_Agg:"聚合函式",FDI_Formula_Category_Function_Type_Analysis:"分析函式",FDI_Directory:"目錄",FDI_Indicator_Name:"指標名稱",FDI_Calculate_Formula:"計算公式",FDI_Click_Edit_Formula:"點選編輯公式",FDI_Edit_Indicator:"編輯指標","Data_Fusion-Index-Root":"全部指標","Data_Fusion-Dimension-Root":"全部維度",FDI_Dimension_List:"維度列表","Data_Fusion-Business-Model-Root":"全部業務模型",FDI_Indicator_Empty_Text:"當前沒有指標,請先建立指標",FDI_Unnamed_New_Indicator:"未命名新指標",FDI_Dimension_Name:"維度名稱",FDI_Unnamed_New_Dimension:"未命名新維度",FDI_Indicator_Formula_Invalid_Msg:"指標公式計算結果不合法,不可為日期類型或字串類型",FDI_Calculate_Empty:"計算為空",FDI_Calculate_Error:"出錯了,計算結果報錯啦……",FDI_Dimension_Formula_Invalid_Msg:"維度公式計算結果不合法,不可為聚合函式",FDI_Data_Detail:"資料詳情",FDI_Field_Preview:"欄位預覽",FDI_Add_Table:"新增表",FDI_Analysis_Table:"自助資料集",FDI_DB_Table:"資料庫表",FDI_Sql_Table:"SQL資料集",FDI_Excel_Table:"Excel資料集",FDI_ETL_Table:"ETL資料集",FDI_Modify_SQL:"修改SQL",FDI_Modify_Config:"修改配置",FDI_Update_Excel:"更新Excel",FDI_Enter_Model_Center:"進入模型中心",FDI_Create_Analysis:"建立分析主題",FDI_Add_To_Analysis:"新增到分析主題",FDI_Lastly_Edit:"最近編輯",FDI_My_Analysis:"我的分析",FDI_Coop_Group:"協作給我的",FDI_Subject:"分析主題",FDI_Subject_Lock_Add_Error_Tip:"新增失敗,該分析主題正在被編輯",FDI_Update_Progress:"更新進度",FDI_Folder_Update:"資料夾更新",FDI_Update_Status:"更新狀態",FDI_Sort_By_Time:"按创建时间排序",FDI_Sort_By_Name:"按名稱排序",FDI_All:"全部",FDI_Table:"資料集",FDI_Permission_Filter:"權限過濾",FDI_Permission_Filter_Tip:"開啟後將隱藏不具備使用權限的資料",FDI_Table_No_Auth_Fields_Tip:"缺少部分欄位權限,無法查看部分欄位",FDI_Table_No_Auth_Preview_Tip:"缺少資料使用權限,無法查看資料明細,請先申請使用權限",FDI_Apply_Use:"申請使用",FDI_Apply_Auth:"申請權限","FDI_{R1}_Update_Setting":"{R1}更新設定",FDI_Move_To:"行動到",FDI_Multi_Move:"批量行動","FDI_Move_{R1}_To":"將{R1}行動到",FDI_Move_Success:"行動成功",FDI_Move_Fail_Prefix:"行動失敗,",FDI_Part_Move_Fail:"部分資料行動失敗",FDI_Data_Is_Editing:"該資料正在編輯",FDI_Data_Published:"該資料已發佈",FDI_Data_Absent:"資料不存在",FDI_Data_No_Auth:"無管理權限",FDI_Comment:"備註",FDI_Add_Comment:"新增備註",FDI_Data_Preview:"資料預覽",FDI_Usage:"血緣分析",FDI_Update_Info:"更新資訊",FDI_Type:"類型",FDI_Data_Status:"資料狀態",FDI_Data_Description:"資料描述",FDI_Editor:"編輯者",FDI_Create_Time:"建立時間",FDI_Related_Table_Name:"相關表名",FDI_Position:"位置",FDI_Position_With_Colon:"位置:",FDI_Origin_Name:"原始名",FDI_Source:"來源","FDI_Table_Last_Edit_Time_{R1}":"最近編輯:{R1}",FDI_Cache_Setting:"快取設定",FDI_Update_Task_Management:"更新任務管理",FDI_Global_Update:"全局更新",FDI_Global_Update_Setting:"全局更新設定",FDI_Create_Base_Table_Engine_Setting:"建立基礎表屬性設定",FDI_Total_Rows:"共{R1}條","FDI_Show_{R1}_Rows_Total_{R2}":"顯示{R1}條,共{R2}條",FDI_Table_Preview_Limit_Tip:"顯示所有資料計算結果的{R1}列資料",FDI_Table_Preview_Limit_Setting_Tip:"顯示列數設定",FDI_Engine_Spider:"抽取資料",FDI_Engine_Direct:"直連資料",FDI_Resource_Info:"資源資訊",FDI_Table_Has_Relation_Tip:"當前表已新增過關係,不可重複新增",FDI_Table_Has_Imported_Tip:"當前表已新增,不可重複新增",FDI_Table_Inherit_Tip:"當前表開啟了權限繼承,不可新增",FDI_Table_Duplicate_Name_Tip:"當前表名稱與已新增的表重名,不可新增",FDI_Field_Transfer_Name:"欄位名稱",FDI_Delete_Fail:"刪除失敗",FDI_Delete_Fail_Prefix:"刪除失敗,",FDI_Part_Delete_Fail:"部分資料刪除失敗",FDI_All_Delete_Fail:"刪除失敗,請檢查資料狀態",FDI_Catalog_Folder_Delete_Confirm_Title:"刪除資料夾",FDI_Catalog_Table_Delete_Confirm_Title:"刪除表",FDI_Catalog_Table_Delete_Confirm_Message:"此資料集刪除後,相聯動的自助資料集/組件/儀表板/分析文檔也將受到影響,所有配置的列欄權限和聯動都將被清除無法找回,刪除的資源可以從建立者的回收站中找回。確定刪除“{R1}”?",FDI_Search_Plus:"搜尋增強",FDI_Save:"儲存",FDI_Search_Guide_Tip1:"🎉 搜尋功能全新升級!",FDI_Search_Guide_Tip2:"👍 現支援多關鍵詞模糊搜尋,可同時檢索欄位、標籤、建立者及業務描述!",FDI_Search_AI_Guide_Tip1:"🔥 更有AI加持, 用日常語言就能搜尋,智慧又便捷!",FDI_Search_AI_Guide_Tip2:"🌰 例如:小明在2023年一季度更新的指標",FDI_Advanced_Search:"進階搜尋",FDI_Advanced_Search_Close_Tip:"關閉「進階搜尋」將聯動關閉「AI搜尋」",FDI_AI_Search:"AI搜尋",FDI_AI_Search_Tip:"開啟後,在進階搜尋基礎上支援自然語言搜尋",FDI_AI_Search_Open_Tip:"開啟「AI搜尋」將聯動開啟「進階搜尋」",FDI_AI_Path:"主機地址",FDI_Related_Indicator:"相關指標",FDI_Edit_Dimension:"編輯維度",FDI_Edit_Data_Detail:"編輯資料詳情",FDI_Tag_List:"標籤列表",FDI_Add_Tag:"新增標籤",FDI_Tag_Total:"標籤總數",FDI_Publish:"發佈",FDI_Publish_Apply:"發佈申請",FDI_Publish_Node:"發佈節點",FDI_Reviewer:"審批者",FDI_Apply_Remark:"申請備註",FDI_Publish_Apply_Indicator_Name_Exist:"發佈節點有重名指標,不可發佈",FDI_Publish_Apply_Dimension_Name_Exist:"發佈節點有重名維度,不可發佈",FDI_Publish_Apply_Business_Model_Name_Exist:"發佈節點有重名業務模型,不可發佈",FDI_Cancel_Publish:"取消發佈",FDI_Confirm:"確定",FDI_Publish_Name:"發佈名稱",FDI_Apply_Opinion:"申請意見",FDI_Agree_Publish:"同意發佈",FDI_Reject_Apply:"駁回申請",FDI_Reject_Reason:"駁回理由",FDI_Apply_Publish:"申請發佈",FDI_Cancel_Publish_Confirm_Title:"確定要取消發佈嗎?",FDI_Indicator_Cancel_Publish_Confirm_Message:"取消發佈後,所有配置的列欄權限和聯動都將被清除無法找回,使用當前指標的相關資源都將報錯。",FDI_Business_Model_Cancel_Publish_Confirm_Message:"取消發佈後,所有配置的列欄權限和聯動都將被清除無法找回,使用當前業務模型的相關資源都將報錯。",FDI_Status:"狀態",FDI_Published:"已發佈",FDI_Unpublish:"未發佈",FDI_Reviewers_Check_Failed:"無法授予{R1}當前資料的授權權限",FDI_Publish_Node_Not_Empty:"發佈節點不能為空",FDI_Publish_Deal:"發佈處理",FDI_Agree_Cancel_Publish:"同意取消發佈",FDI_Not_To_Exceed_Chars:"不可超過{R1}個字元",FDI_Publish_Apply_Success:"發佈成功",FDI_Publish_Apply_Success_Wait:"申請發佈成功,請等待批覆",FDI_Publish_Cancel_Apply_Success:"取消發佈成功",FDI_Publish_Apply_Fail:"申請發佈失敗",FDI_Publish_Apply_Fail_Same_Type:"申請發佈失敗,當前內容已申請發佈",FDI_Publish_Apply_Fail_Reviewer_Error:"申請發佈失敗, 審批者權限異常",FDI_Publish_Apply_Fail_Status_Error:"申請發佈失敗,當前內容已發佈",FDI_Publish_Cancel_Apply_Fail:"申請取消發佈失敗",FDI_Publish_Cancel_Apply_Fail_Reviewer_Error:"申請取消發佈失敗, 審批者權限異常",FDI_Publish_Cancel_Apply_Fail_Status_Error:"申請取消發佈失敗,當前內容已取消發佈",FDI_Related_Indicator_dimension:"相關指標維度",FDI_View_All:"查看全部",FDI_Copy:"copy",FDI_Import_Indicator:"匯入指標",FDI_Import_Dimension:"匯入維度",FDI_Batch_Import:"批量匯入",FDI_Import_Dimension_Empty_Text:"當前沒有維度,請先匯入維度",FDI_Authority_Apply_Review:"權限申請審批",FDI_Authority_Apply:"權限申請",FDI_Apply_Authority:"申請權限",FDI_Authority_Review:"權限審批",FDI_Authorize_Target:"授權物件",FDI_Apply_Field:"申請欄位",FDI_Apply_Reason:"申請理由",FDI_Field_Authority:"欄位權限",FDI_Use_Authority:"使用權限",FDI_Inherit_Field:"繼承欄位",FDI_Inherit_Table:"繼承資料集",FDI_I_Initiated:"我發起的",FDI_Data_Name:"資料名稱",FDI_Data_Type:"資料類型",FDI_Applicant:"申請人",FDI_Authority_Type:"權限類型",FDI_Apply_Time:"申請時間",FDI_Apply_Info:"申請資訊",FDI_Authority_Info:"權限資訊",FDI_Authorize_Info:"授權資訊",FDI_Authorize_Detail:"授權明細",FDI_Review_Opinion:"審批意見",FDI_Current_Review_Status:"當前審批狀態",FDI_Field:"欄位",FDI_Reject:"駁回",FDI_Rejected:"已駁回",FDI_Pass:"通過",FDI_Passed:"已通過",FDI_Wait_For_Approve:"待審批",FDI_View:"查看",FDI_View_Data:"查看資料",FDI_Reapply:"再次申請",FDI_Item_Count_Per_Page:"條/頁",FDI_Department:"部門",FDI_Role:"角色",FDI_Authority_Inherit:"權限繼承",FDI_No_Field_Select_Tip:"請至少勾選1個欄位,或點選「駁回」",FDI_Multipath_Setting:"多路徑設定",FDI_Exit_Multipath_Setting:"跳出多路徑設定",FDI_Multipath_Setting_Changed_Warning:"多路徑資訊已變更,您可能需要更新資料",FDI_Select_Path:"選擇要使用的路徑",FDI_Current_No_Multi_Path:"當前無多路徑",FDI_Review_Success:"審批成功",FDI_View_Apply_Status:"查看申請狀態",FDI_Pass_Apply:"通過申請",FDI_Apply_Success:"申請成功",FDI_Upload_Fail_Tooltip:"匯入失敗,檔案格式不符",FDI_Upload_Success_Tooltip:"匯入成功,共匯入{R1}個資源",FDI_Save_Import_Fail:"儲存失敗,請檢查匯入資訊",FDI_Save_Success:"儲存成功",FDI_Reviewer_Tooltip:"通過申請後,審批者將獲得對當前資料的授權權限",FDI_Publish_Checked_Error_Tooltip:"發佈失敗,請檢查欄位",FDI_Apply_Failed_Message:"申請失敗,請檢查申請資訊",FDI_Add_To:"新增到",FDI_Review_Failed:"審批失敗",FDI_Review_Failed_Already_Reviewed:"審批失敗,該申請已審批",FDI_Review_Failed_No_Data_Authority:"審批失敗,缺少資料授權權限",FDI_Review_Failed_No_User_Authority:"審批失敗,缺少使用者授權權限",FDI_Review_Failed_Applicant_Not_Exist:"審批失敗,申請者不存在或未啟動",FDI_Review_Failed_Resource_Not_Exist:"審批失敗,該資料不存在",FDI_Apply_Failed:"申請失敗",FDI_Apply_Failed_Already_Apply:"申請失敗,該權限已申請",FDI_Apply_Failed_Empty_Reviewer:"申請失敗,審批者為空,請聯絡管理者",FDI_Apply_Failed_No_Reviewer:"申請失敗,無可審批人員,請聯絡管理者",FDI_Apply_Failed_Resource_Not_Exist:"申請失敗,該資料不存在",FDI_No_Update_Time:"暫無更新時間",FDI_No_View_Authority:"無查看權限",FDI_Data_Deleted:"該資料已刪除",FDI_Field_Deleted:"該欄位已刪除",FDI_User_Deleted:"該使用者已刪除",FDI_Pass_Failed_Deleted:"通過失敗,該物件已刪除,請取消勾選或駁回申請",FDI_Model_No_Use_Permission:"無模型中心的使用權限,請聯絡管理者",FDI_Relation_Analysis_Table_Disable:"配置關係失敗,開啟權限繼承不可配置關係",FDI_No_Edit_Authority:"無編輯權限","FDI_No_Edit_Authority_{R1}":"無{R1}的編輯權限",FDI_No_Authority:"無權限","FDI_Source_Table_{R1}":"來源表: {R1}",FDI_Clear:"清空",FDI_Business_Model_Setting_Instruction:"已選擇項中存在不相關的指標和維度,請清空後重新選擇",FDI_No_Data_Authority:"沒有此資料權限,不支援建立",FDI_Cannot_Add_Table_In_Root:"不支援在根目錄新增表",FDI_Management:"管理",FDI_Tag_Name:"標籤名稱",FDI_Edit_Tag:"編輯標籤",FDI_Unnamed_New_Tag:"未命名新標籤",FDI_Tag_Category:"標籤分類",FDI_Tag_Description:"標籤描述",FDI_Tag_Application:"標籤應用",FDI_Data_Center:"資料中心",FDI_Enter_Analysis:"進入我的分析",FDI_Advanced_Search_Tip:"開啟後,支援多關鍵詞模糊搜尋和增強版搜尋算法。",FDI_Please_Input:"請輸入",FDI_Import_Indicator_Empty_Text:"當前沒有指標,請先匯入指標",FDI_Data_Catalogue:"資料目錄",FDI_Add_To_Subject_Tip:"要新增到哪個分析主題?",FDI_Data_Root:"全部資料",FDI_Reject_Reason_Placeholder:"填寫駁回申請的理由顯示在使用者發佈訊息中",FDI_I_Approved:"我審批的",FDI_Load_More:"載入更多",FDI_Tag_Empty_Text:"當前沒有標籤,請先建立標籤",FDI_Table_Cancel_Publish_Confirm_Message:"此資料集取消發佈後,所有配置的列欄權限和聯動都將被清除無法找回。",FDI_Inherit_Field_Tip:"當前資料開啟了繼承權限,實際授予的是繼承欄位的欄位權限",FDI_Table_No_Auth_Tip:"缺少資料使用權限,無法查看資料明細",FDI_Dimension_Cancel_Publish_Confirm_Message:"取消發佈後,所有配置的列欄權限和聯動都將被清除無法找回,使用當前維度的相關資源都將報錯。",FDI_Search_Result_Is_Empty:"搜尋結果為空",FDI_Checking:"審核中",FDI_Formula_Field_Invalid_Msg:"「{R1}」欄位指定不明確或不存在",FDI_Move_Fail:"行動失敗",FDI_Delete_Published_Resource_Warning:"無法刪除所選項中「已發佈」的資源",FDI_Review_Failed_Apply_Not_Exist:"審批失敗,申請不存在",FDI_All_Move_Fail:"行動失敗,請檢查資料狀態",FDI_Publish_Cancel_Apply_Success_Wait:"申請取消發佈成功,請等待批覆",FDI_Review_Failed_Not_Current_Data_Reviewer:"審批失敗,非當前資料審批者",FDI_Data_Duplicate:"有資料重名",FDI_Publish_Cancel_Apply_Fail_Same_Type:"申請取消發佈失敗,當前內容已申請取消發佈",FDI_Creator:"建立者","FDI_Last_Update_Time_{R1}":"最近更新:{R1}",FDI_Create_Base_Table_Engine_Setting_Tip:"建立基礎表(資料庫表、sql表、Excel表)的屬性設定",FDI_Field_Label:"欄位分組",FDI_Catalog_Folder_Delete_Confirm_Message:"此資料夾內的所有資源都將被刪除,相聯動的自助資料集/組件/儀表板/分析文檔也將受到影響,所有配置的列欄權限和聯動都將被清除無法找回,刪除的資源可以從建立者的回收站中找回。確定刪除“{R1}”?",FDI_Unnamed_Field:"未命名欄位",FDI_Type_Not_Support_Modify:"類型暫不支援修改",FDI_Tree_Hide_Tip:"已隱藏部分維度、指標",FDI_Show_No_Related_Fields:"顯示無聯動欄位",FDI_No_Auth_Or_Related_Tip:"由於缺少權限或與已選欄位無聯動,部分欄位無法使用且已被隱藏。",FDI_Search_History_Empty:"暫無搜尋記錄",FDI_View_Authority:"查看權限",FDI_Tag_Management:"標籤管理",FDI_Please_Input_Field_Name:"請輸入欄位名稱",FDI_Please_Select_Field_Type:"請選擇欄位類型",FDI_No_Extend_Field:"暫無擴展欄位",FDI_Tree_No_Hide_Tip:"隱藏部分維度、指標",FDI_Show_No_Auth_Fields:"顯示無使用權限的欄位",FDI_No_Auth_Tip:"無法選擇,無使用權限。",FDI_To_Apply_Use:"去申請使用",FDI_No_Related_Tip:"無法選擇,該欄位與已選欄位無聯動",FDI_Search_Correct_Tip:"已顯示“{R1}“,仍然搜尋:",FDI_Tag:"標籤",FDI_Data_Privilege:"資料權限",FDI_Update_Time:"更新時間","Tag-Root":"全部標籤",FDI_Extend_Field:"擴展欄位",FDI_Add_Field:"新增欄位",FDI_Delete_Tag_Confirm_Title:"確定要刪除該標籤嗎?",FDI_Delete_Tag_Confirm_Message:"刪除標籤會影響已使用該標籤做標記的資料",FDI_Delete_Tag_Folder_Confirm_Title:"確定要刪除該資料夾嗎?",FDI_Delete_Tag_Folder_Confirm_Message:"該資料夾內的標籤也會全部刪除,且會影響已使用資料夾內標籤做標記的資料"},Sae="Fine_Empty_String";let n$;function Cae(e=""){n$=e}function Tae(){return n$}function KN(){let e=d0.en_US;return navigator&&(e=navigator.languages?.[0]||navigator.language),e}function Rae(e){const t=arguments.length;if(t>1)for(let r=1;ra&&a.length===t.length))return r}return Pae.en_US}function kae(e,t){for(const r in u0){const n=u0[r];let o={};if(De.isFunction(n)?o=n(e):De.isObject(n)&&(o=n[e]||n[d0.en_US]),o[t])return o[t]}return""}const u0={default:{zh_CN:$ae,zh_TW:Eae,en_US:Dae,ja_JP:Iae,ko_KR:Fae}},Pae={zh_CN:"zh_CN",zh_TW:"zh_TW",en_US:"en_US",ja_JP:"ja_JP",ko_KR:"ko_KR"},d0={auto:"",zh_CN:"zh-CN",zh_TW:"zh-TW",en_US:"en-US",ja_JP:"ja-JP",ko_KR:"ko-KR"},GN={zh_CN:"^(ZH-)(CN|HANS|CHS)+.*$",zh_TW:"^(ZH-)(TW|HANT|CHT|HK|MO|SG)+.*$",en_US:"^(EN).*$",ja_JP:"^(JA)+.*$",ko_KR:"^(KO)+.*$"},Nae=()=>{const e=HN();try{e.BI?.Services?.getService?.("dec.service.global")?.getLanguage&&Cae(d0[e.BI.Services.getService("dec.service.global").getLanguage()])}catch(t){console.log(t)}window.IntegrationI18n={getLocale:rt}};function XN(e,t){var r=e.split(";");r.pop();for(var n=[],o=0;ot=>{const r=Wae.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),Xi=e=>(e=e.toLowerCase(),t=>f0(t)===e),p0=e=>t=>typeof t===e,{isArray:Hf}=Array,Dg=p0("undefined");function Vae(e){return e!==null&&!Dg(e)&&e.constructor!==null&&!Dg(e.constructor)&&ci(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const r8=Xi("ArrayBuffer");function Kae(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&r8(e.buffer),t}const qae=p0("string"),ci=p0("function"),n8=p0("number"),v0=e=>e!==null&&typeof e=="object",Yae=e=>e===!0||e===!1,g0=e=>{if(f0(e)!=="object")return!1;const t=o$(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Gae=Xi("Date"),Xae=Xi("File"),Zae=Xi("Blob"),Qae=Xi("FileList"),Jae=e=>v0(e)&&ci(e.pipe),eie=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||ci(e.append)&&((t=f0(e))==="formdata"||t==="object"&&ci(e.toString)&&e.toString()==="[object FormData]"))},tie=Xi("URLSearchParams"),[rie,nie,oie,aie]=["ReadableStream","Request","Response","Headers"].map(Xi),iie=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Ig(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,o;if(typeof e!="object"&&(e=[e]),Hf(e))for(n=0,o=e.length;n0;)if(o=r[n],t===o.toLowerCase())return o;return null}const a8=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),i8=e=>!Dg(e)&&e!==a8;function a$(){const{caseless:e}=i8(this)&&this||{},t={},r=(n,o)=>{const a=e&&o8(t,o)||o;g0(t[a])&&g0(n)?t[a]=a$(t[a],n):g0(n)?t[a]=a$({},n):Hf(n)?t[a]=n.slice():t[a]=n};for(let n=0,o=arguments.length;n(Ig(t,(o,a)=>{r&&ci(o)?e[a]=t8(o,r):e[a]=o},{allOwnKeys:n}),e),sie=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),cie=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},uie=(e,t,r,n)=>{let o,a,i;const l={};if(t=t||{},e==null)return t;do{for(o=Object.getOwnPropertyNames(e),a=o.length;a-- >0;)i=o[a],(!n||n(i,e,t))&&!l[i]&&(t[i]=e[i],l[i]=!0);e=r!==!1&&o$(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},die=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return n!==-1&&n===r},fie=e=>{if(!e)return null;if(Hf(e))return e;let t=e.length;if(!n8(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},pie=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&o$(Uint8Array)),vie=(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let o;for(;(o=n.next())&&!o.done;){const a=o.value;t.call(e,a[0],a[1])}},gie=(e,t)=>{let r;const n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},hie=Xi("HTMLFormElement"),_ie=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,o){return n.toUpperCase()+o}),l8=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),mie=Xi("RegExp"),s8=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};Ig(r,(o,a)=>{let i;(i=t(o,a,e))!==!1&&(n[a]=i||o)}),Object.defineProperties(e,n)},xie=e=>{s8(e,(t,r)=>{if(ci(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;const n=e[r];if(ci(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},bie=(e,t)=>{const r={},n=o=>{o.forEach(a=>{r[a]=!0})};return Hf(e)?n(e):n(String(e).split(t)),r},yie=()=>{},wie=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t,i$="abcdefghijklmnopqrstuvwxyz",c8="0123456789",u8={DIGIT:c8,ALPHA:i$,ALPHA_DIGIT:i$+i$.toUpperCase()+c8},Die=(e=16,t=u8.ALPHA_DIGIT)=>{let r="";const{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r};function Iie(e){return!!(e&&ci(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const Fie=e=>{const t=new Array(10),r=(n,o)=>{if(v0(n)){if(t.indexOf(n)>=0)return;if(!("toJSON"in n)){t[o]=n;const a=Hf(n)?[]:{};return Ig(n,(i,l)=>{const s=r(i,o+1);!Dg(s)&&(a[l]=s)}),t[o]=void 0,a}}return n};return r(e,0)},$ie=Xi("AsyncFunction"),Ie={isArray:Hf,isArrayBuffer:r8,isBuffer:Vae,isFormData:eie,isArrayBufferView:Kae,isString:qae,isNumber:n8,isBoolean:Yae,isObject:v0,isPlainObject:g0,isReadableStream:rie,isRequest:nie,isResponse:oie,isHeaders:aie,isUndefined:Dg,isDate:Gae,isFile:Xae,isBlob:Zae,isRegExp:mie,isFunction:ci,isStream:Jae,isURLSearchParams:tie,isTypedArray:pie,isFileList:Qae,forEach:Ig,merge:a$,extend:lie,trim:iie,stripBOM:sie,inherits:cie,toFlatObject:uie,kindOf:f0,kindOfTest:Xi,endsWith:die,toArray:fie,forEachEntry:vie,matchAll:gie,isHTMLForm:hie,hasOwnProperty:l8,hasOwnProp:l8,reduceDescriptors:s8,freezeMethods:xie,toObjectSet:bie,toCamelCase:_ie,noop:yie,toFiniteNumber:wie,findKey:o8,global:a8,isContextDefined:i8,ALPHABET:u8,generateString:Die,isSpecCompliantForm:Iie,toJSONObject:Fie,isAsyncFn:$ie,isThenable:e=>e&&(v0(e)||ci(e))&&ci(e.then)&&ci(e.catch)};function or(e,t,r,n,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),o&&(this.response=o)}Ie.inherits(or,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Ie.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const d8=or.prototype,f8={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{f8[e]={value:e}}),Object.defineProperties(or,f8),Object.defineProperty(d8,"isAxiosError",{value:!0}),or.from=(e,t,r,n,o,a)=>{const i=Object.create(d8);return Ie.toFlatObject(e,i,function(s){return s!==Error.prototype},l=>l!=="isAxiosError"),or.call(i,e.message,t,r,n,o),i.cause=e,i.name=e.name,a&&Object.assign(i,a),i};const Eie=null;function l$(e){return Ie.isPlainObject(e)||Ie.isArray(e)}function p8(e){return Ie.endsWith(e,"[]")?e.slice(0,-2):e}function v8(e,t,r){return e?e.concat(t).map(function(o,a){return o=p8(o),!r&&a?"["+o+"]":o}).join(r?".":""):t}function Sie(e){return Ie.isArray(e)&&!e.some(l$)}const Cie=Ie.toFlatObject(Ie,{},null,function(t){return/^is[A-Z]/.test(t)});function h0(e,t,r){if(!Ie.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,r=Ie.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(_,b){return!Ie.isUndefined(b[_])});const n=r.metaTokens,o=r.visitor||d,a=r.dots,i=r.indexes,s=(r.Blob||typeof Blob<"u"&&Blob)&&Ie.isSpecCompliantForm(t);if(!Ie.isFunction(o))throw new TypeError("visitor must be a function");function c(h){if(h===null)return"";if(Ie.isDate(h))return h.toISOString();if(!s&&Ie.isBlob(h))throw new or("Blob is not supported. Use a Buffer instead.");return Ie.isArrayBuffer(h)||Ie.isTypedArray(h)?s&&typeof Blob=="function"?new Blob([h]):Buffer.from(h):h}function d(h,_,b){let x=h;if(h&&!b&&typeof h=="object"){if(Ie.endsWith(_,"{}"))_=n?_:_.slice(0,-2),h=JSON.stringify(h);else if(Ie.isArray(h)&&Sie(h)||(Ie.isFileList(h)||Ie.endsWith(_,"[]"))&&(x=Ie.toArray(h)))return _=p8(_),x.forEach(function(D,I){!(Ie.isUndefined(D)||D===null)&&t.append(i===!0?v8([_],I,a):i===null?_:_+"[]",c(D))}),!1}return l$(h)?!0:(t.append(v8(b,_,a),c(h)),!1)}const f=[],v=Object.assign(Cie,{defaultVisitor:d,convertValue:c,isVisitable:l$});function g(h,_){if(!Ie.isUndefined(h)){if(f.indexOf(h)!==-1)throw Error("Circular reference detected in "+_.join("."));f.push(h),Ie.forEach(h,function(x,w){(!(Ie.isUndefined(x)||x===null)&&o.call(t,x,Ie.isString(w)?w.trim():w,_,v))===!0&&g(x,_?_.concat(w):[w])}),f.pop()}}if(!Ie.isObject(e))throw new TypeError("data must be an object");return g(e),t}function g8(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function s$(e,t){this._pairs=[],e&&h0(e,this,t)}const h8=s$.prototype;h8.append=function(t,r){this._pairs.push([t,r])},h8.toString=function(t){const r=t?function(n){return t.call(this,n,g8)}:g8;return this._pairs.map(function(o){return r(o[0])+"="+r(o[1])},"").join("&")};function Tie(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function _8(e,t,r){if(!t)return e;const n=r&&r.encode||Tie,o=r&&r.serialize;let a;if(o?a=o(t,r):a=Ie.isURLSearchParams(t)?t.toString():new s$(t,r).toString(n),a){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}class Rie{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){Ie.forEach(this.handlers,function(n){n!==null&&t(n)})}}const m8=Rie,x8={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Oie={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:s$,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},c$=typeof window<"u"&&typeof document<"u",Aie=(e=>c$&&["ReactNative","NativeScript","NS"].indexOf(e)<0)(typeof navigator<"u"&&navigator.product),kie=(()=>typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function")(),Pie=c$&&window.location.href||"http://localhost",Zi={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:c$,hasStandardBrowserEnv:Aie,hasStandardBrowserWebWorkerEnv:kie,origin:Pie},Symbol.toStringTag,{value:"Module"})),...Oie};function Nie(e,t){return h0(e,new Zi.classes.URLSearchParams,Object.assign({visitor:function(r,n,o,a){return Zi.isNode&&Ie.isBuffer(r)?(this.append(n,r.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)}},t))}function Mie(e){return Ie.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function zie(e){const t={},r=Object.keys(e);let n;const o=r.length;let a;for(n=0;n=r.length;return i=!i&&Ie.isArray(o)?o.length:i,s?(Ie.hasOwnProp(o,i)?o[i]=[o[i],n]:o[i]=n,!l):((!o[i]||!Ie.isObject(o[i]))&&(o[i]=[]),t(r,n,o[i],a)&&Ie.isArray(o[i])&&(o[i]=zie(o[i])),!l)}if(Ie.isFormData(e)&&Ie.isFunction(e.entries)){const r={};return Ie.forEachEntry(e,(n,o)=>{t(Mie(n),o,r,0)}),r}return null}function Lie(e,t,r){if(Ie.isString(e))try{return(t||JSON.parse)(e),Ie.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}const u$={transitional:x8,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){const n=r.getContentType()||"",o=n.indexOf("application/json")>-1,a=Ie.isObject(t);if(a&&Ie.isHTMLForm(t)&&(t=new FormData(t)),Ie.isFormData(t))return o?JSON.stringify(b8(t)):t;if(Ie.isArrayBuffer(t)||Ie.isBuffer(t)||Ie.isStream(t)||Ie.isFile(t)||Ie.isBlob(t)||Ie.isReadableStream(t))return t;if(Ie.isArrayBufferView(t))return t.buffer;if(Ie.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(a){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Nie(t,this.formSerializer).toString();if((l=Ie.isFileList(t))||n.indexOf("multipart/form-data")>-1){const s=this.env&&this.env.FormData;return h0(l?{"files[]":t}:t,s&&new s,this.formSerializer)}}return a||o?(r.setContentType("application/json",!1),Lie(t)):t}],transformResponse:[function(t){const r=this.transitional||u$.transitional,n=r&&r.forcedJSONParsing,o=this.responseType==="json";if(Ie.isResponse(t)||Ie.isReadableStream(t))return t;if(t&&Ie.isString(t)&&(n&&!this.responseType||o)){const i=!(r&&r.silentJSONParsing)&&o;try{return JSON.parse(t)}catch(l){if(i)throw l.name==="SyntaxError"?or.from(l,or.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Zi.classes.FormData,Blob:Zi.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Ie.forEach(["delete","get","head","post","put","patch"],e=>{u$.headers[e]={}});const d$=u$,Bie=Ie.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),jie=e=>{const t={};let r,n,o;return e&&e.split(` +`).forEach(function(i){o=i.indexOf(":"),r=i.substring(0,o).trim().toLowerCase(),n=i.substring(o+1).trim(),!(!r||t[r]&&Bie[r])&&(r==="set-cookie"?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)}),t},y8=Symbol("internals");function Fg(e){return e&&String(e).trim().toLowerCase()}function _0(e){return e===!1||e==null?e:Ie.isArray(e)?e.map(_0):String(e)}function Uie(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}const Hie=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function f$(e,t,r,n,o){if(Ie.isFunction(n))return n.call(this,t,r);if(o&&(t=r),!!Ie.isString(t)){if(Ie.isString(n))return t.indexOf(n)!==-1;if(Ie.isRegExp(n))return n.test(t)}}function Wie(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function Vie(e,t){const r=Ie.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(o,a,i){return this[n].call(this,t,o,a,i)},configurable:!0})})}class m0{constructor(t){t&&this.set(t)}set(t,r,n){const o=this;function a(l,s,c){const d=Fg(s);if(!d)throw new Error("header name must be a non-empty string");const f=Ie.findKey(o,d);(!f||o[f]===void 0||c===!0||c===void 0&&o[f]!==!1)&&(o[f||s]=_0(l))}const i=(l,s)=>Ie.forEach(l,(c,d)=>a(c,d,s));if(Ie.isPlainObject(t)||t instanceof this.constructor)i(t,r);else if(Ie.isString(t)&&(t=t.trim())&&!Hie(t))i(jie(t),r);else if(Ie.isHeaders(t))for(const[l,s]of t.entries())a(s,l,n);else t!=null&&a(r,t,n);return this}get(t,r){if(t=Fg(t),t){const n=Ie.findKey(this,t);if(n){const o=this[n];if(!r)return o;if(r===!0)return Uie(o);if(Ie.isFunction(r))return r.call(this,o,n);if(Ie.isRegExp(r))return r.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=Fg(t),t){const n=Ie.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||f$(this,this[n],n,r)))}return!1}delete(t,r){const n=this;let o=!1;function a(i){if(i=Fg(i),i){const l=Ie.findKey(n,i);l&&(!r||f$(n,n[l],l,r))&&(delete n[l],o=!0)}}return Ie.isArray(t)?t.forEach(a):a(t),o}clear(t){const r=Object.keys(this);let n=r.length,o=!1;for(;n--;){const a=r[n];(!t||f$(this,this[a],a,t,!0))&&(delete this[a],o=!0)}return o}normalize(t){const r=this,n={};return Ie.forEach(this,(o,a)=>{const i=Ie.findKey(n,a);if(i){r[i]=_0(o),delete r[a];return}const l=t?Wie(a):String(a).trim();l!==a&&delete r[a],r[l]=_0(o),n[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const r=Object.create(null);return Ie.forEach(this,(n,o)=>{n!=null&&n!==!1&&(r[o]=t&&Ie.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(` +`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){const n=new this(t);return r.forEach(o=>n.set(o)),n}static accessor(t){const n=(this[y8]=this[y8]={accessors:{}}).accessors,o=this.prototype;function a(i){const l=Fg(i);n[l]||(Vie(o,i),n[l]=!0)}return Ie.isArray(t)?t.forEach(a):a(t),this}}m0.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),Ie.reduceDescriptors(m0.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(n){this[r]=n}}}),Ie.freezeMethods(m0);const Qi=m0;function p$(e,t){const r=this||d$,n=t||r,o=Qi.from(n.headers);let a=n.data;return Ie.forEach(e,function(l){a=l.call(r,a,o.normalize(),t?t.status:void 0)}),o.normalize(),a}function w8(e){return!!(e&&e.__CANCEL__)}function Wf(e,t,r){or.call(this,e??"canceled",or.ERR_CANCELED,t,r),this.name="CanceledError"}Ie.inherits(Wf,or,{__CANCEL__:!0});function D8(e,t,r){const n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new or("Request failed with status code "+r.status,[or.ERR_BAD_REQUEST,or.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function Kie(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function qie(e,t){e=e||10;const r=new Array(e),n=new Array(e);let o=0,a=0,i;return t=t!==void 0?t:1e3,function(s){const c=Date.now(),d=n[a];i||(i=c),r[o]=s,n[o]=c;let f=a,v=0;for(;f!==o;)v+=r[f++],f=f%e;if(o=(o+1)%e,o===a&&(a=(a+1)%e),c-in)return o&&(clearTimeout(o),o=null),r=l,e.apply(null,arguments);o||(o=setTimeout(()=>(o=null,r=Date.now(),e.apply(null,arguments)),n-(l-r)))}}const x0=(e,t,r=3)=>{let n=0;const o=qie(50,250);return Yie(a=>{const i=a.loaded,l=a.lengthComputable?a.total:void 0,s=i-n,c=o(s),d=i<=l;n=i;const f={loaded:i,total:l,progress:l?i/l:void 0,bytes:s,rate:c||void 0,estimated:c&&l&&d?(l-i)/c:void 0,event:a,lengthComputable:l!=null};f[t?"download":"upload"]=!0,e(f)},r)},Gie=Zi.hasStandardBrowserEnv?function(){const t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a");let n;function o(a){let i=a;return t&&(r.setAttribute("href",i),i=r.href),r.setAttribute("href",i),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=o(window.location.href),function(i){const l=Ie.isString(i)?o(i):i;return l.protocol===n.protocol&&l.host===n.host}}():function(){return function(){return!0}}(),Xie=Zi.hasStandardBrowserEnv?{write(e,t,r,n,o,a){const i=[e+"="+encodeURIComponent(t)];Ie.isNumber(r)&&i.push("expires="+new Date(r).toGMTString()),Ie.isString(n)&&i.push("path="+n),Ie.isString(o)&&i.push("domain="+o),a===!0&&i.push("secure"),document.cookie=i.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function Zie(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Qie(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function I8(e,t){return e&&!Zie(t)?Qie(e,t):t}const F8=e=>e instanceof Qi?{...e}:e;function Mu(e,t){t=t||{};const r={};function n(c,d,f){return Ie.isPlainObject(c)&&Ie.isPlainObject(d)?Ie.merge.call({caseless:f},c,d):Ie.isPlainObject(d)?Ie.merge({},d):Ie.isArray(d)?d.slice():d}function o(c,d,f){if(Ie.isUndefined(d)){if(!Ie.isUndefined(c))return n(void 0,c,f)}else return n(c,d,f)}function a(c,d){if(!Ie.isUndefined(d))return n(void 0,d)}function i(c,d){if(Ie.isUndefined(d)){if(!Ie.isUndefined(c))return n(void 0,c)}else return n(void 0,d)}function l(c,d,f){if(f in t)return n(c,d);if(f in e)return n(void 0,c)}const s={url:a,method:a,data:a,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:l,headers:(c,d)=>o(F8(c),F8(d),!0)};return Ie.forEach(Object.keys(Object.assign({},e,t)),function(d){const f=s[d]||o,v=f(e[d],t[d],d);Ie.isUndefined(v)&&f!==l||(r[d]=v)}),r}const $8=e=>{const t=Mu({},e);let{data:r,withXSRFToken:n,xsrfHeaderName:o,xsrfCookieName:a,headers:i,auth:l}=t;t.headers=i=Qi.from(i),t.url=_8(I8(t.baseURL,t.url),e.params,e.paramsSerializer),l&&i.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let s;if(Ie.isFormData(r)){if(Zi.hasStandardBrowserEnv||Zi.hasStandardBrowserWebWorkerEnv)i.setContentType(void 0);else if((s=i.getContentType())!==!1){const[c,...d]=s?s.split(";").map(f=>f.trim()).filter(Boolean):[];i.setContentType([c||"multipart/form-data",...d].join("; "))}}if(Zi.hasStandardBrowserEnv&&(n&&Ie.isFunction(n)&&(n=n(t)),n||n!==!1&&Gie(t.url))){const c=o&&a&&Xie.read(a);c&&i.set(o,c)}return t},Jie=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(r,n){const o=$8(e);let a=o.data;const i=Qi.from(o.headers).normalize();let{responseType:l}=o,s;function c(){o.cancelToken&&o.cancelToken.unsubscribe(s),o.signal&&o.signal.removeEventListener("abort",s)}let d=new XMLHttpRequest;d.open(o.method.toUpperCase(),o.url,!0),d.timeout=o.timeout;function f(){if(!d)return;const g=Qi.from("getAllResponseHeaders"in d&&d.getAllResponseHeaders()),_={data:!l||l==="text"||l==="json"?d.responseText:d.response,status:d.status,statusText:d.statusText,headers:g,config:e,request:d};D8(function(x){r(x),c()},function(x){n(x),c()},_),d=null}"onloadend"in d?d.onloadend=f:d.onreadystatechange=function(){!d||d.readyState!==4||d.status===0&&!(d.responseURL&&d.responseURL.indexOf("file:")===0)||setTimeout(f)},d.onabort=function(){d&&(n(new or("Request aborted",or.ECONNABORTED,o,d)),d=null)},d.onerror=function(){n(new or("Network Error",or.ERR_NETWORK,o,d)),d=null},d.ontimeout=function(){let h=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded";const _=o.transitional||x8;o.timeoutErrorMessage&&(h=o.timeoutErrorMessage),n(new or(h,_.clarifyTimeoutError?or.ETIMEDOUT:or.ECONNABORTED,o,d)),d=null},a===void 0&&i.setContentType(null),"setRequestHeader"in d&&Ie.forEach(i.toJSON(),function(h,_){d.setRequestHeader(_,h)}),Ie.isUndefined(o.withCredentials)||(d.withCredentials=!!o.withCredentials),l&&l!=="json"&&(d.responseType=o.responseType),typeof o.onDownloadProgress=="function"&&d.addEventListener("progress",x0(o.onDownloadProgress,!0)),typeof o.onUploadProgress=="function"&&d.upload&&d.upload.addEventListener("progress",x0(o.onUploadProgress)),(o.cancelToken||o.signal)&&(s=g=>{d&&(n(!g||g.type?new Wf(null,e,d):g),d.abort(),d=null)},o.cancelToken&&o.cancelToken.subscribe(s),o.signal&&(o.signal.aborted?s():o.signal.addEventListener("abort",s)));const v=Kie(o.url);if(v&&Zi.protocols.indexOf(v)===-1){n(new or("Unsupported protocol "+v+":",or.ERR_BAD_REQUEST,e));return}d.send(a||null)})},ele=(e,t)=>{let r=new AbortController,n;const o=function(s){if(!n){n=!0,i();const c=s instanceof Error?s:this.reason;r.abort(c instanceof or?c:new Wf(c instanceof Error?c.message:c))}};let a=t&&setTimeout(()=>{o(new or(`timeout ${t} of ms exceeded`,or.ETIMEDOUT))},t);const i=()=>{e&&(a&&clearTimeout(a),a=null,e.forEach(s=>{s&&(s.removeEventListener?s.removeEventListener("abort",o):s.unsubscribe(o))}),e=null)};e.forEach(s=>s&&s.addEventListener&&s.addEventListener("abort",o));const{signal:l}=r;return l.unsubscribe=i,[l,()=>{a&&clearTimeout(a),a=null}]},tle=function*(e,t){let r=e.byteLength;if(!t||r{const a=rle(e,t,o);let i=0;return new ReadableStream({type:"bytes",async pull(l){const{done:s,value:c}=await a.next();if(s){l.close(),n();return}let d=c.byteLength;r&&r(i+=d),l.enqueue(new Uint8Array(c))},cancel(l){return n(l),a.return()}},{highWaterMark:2})},S8=(e,t)=>{const r=e!=null;return n=>setTimeout(()=>t({lengthComputable:r,total:e,loaded:n}))},b0=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",C8=b0&&typeof ReadableStream=="function",v$=b0&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),nle=C8&&(()=>{let e=!1;const t=new Request(Zi.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t})(),T8=64*1024,g$=C8&&!!(()=>{try{return Ie.isReadableStream(new Response("").body)}catch{}})(),y0={stream:g$&&(e=>e.body)};b0&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!y0[t]&&(y0[t]=Ie.isFunction(e[t])?r=>r[t]():(r,n)=>{throw new or(`Response type '${t}' is not supported`,or.ERR_NOT_SUPPORT,n)})})})(new Response);const ole=async e=>{if(e==null)return 0;if(Ie.isBlob(e))return e.size;if(Ie.isSpecCompliantForm(e))return(await new Request(e).arrayBuffer()).byteLength;if(Ie.isArrayBufferView(e))return e.byteLength;if(Ie.isURLSearchParams(e)&&(e=e+""),Ie.isString(e))return(await v$(e)).byteLength},ale=async(e,t)=>{const r=Ie.toFiniteNumber(e.getContentLength());return r??ole(t)},h$={http:Eie,xhr:Jie,fetch:b0&&(async e=>{let{url:t,method:r,data:n,signal:o,cancelToken:a,timeout:i,onDownloadProgress:l,onUploadProgress:s,responseType:c,headers:d,withCredentials:f="same-origin",fetchOptions:v}=$8(e);c=c?(c+"").toLowerCase():"text";let[g,h]=o||a||i?ele([o,a],i):[],_,b;const x=()=>{!_&&setTimeout(()=>{g&&g.unsubscribe()}),_=!0};let w;try{if(s&&nle&&r!=="get"&&r!=="head"&&(w=await ale(d,n))!==0){let F=new Request(t,{method:"POST",body:n,duplex:"half"}),C;Ie.isFormData(n)&&(C=F.headers.get("content-type"))&&d.setContentType(C),F.body&&(n=E8(F.body,T8,S8(w,x0(s)),null,v$))}Ie.isString(f)||(f=f?"cors":"omit"),b=new Request(t,{...v,signal:g,method:r.toUpperCase(),headers:d.normalize().toJSON(),body:n,duplex:"half",withCredentials:f});let D=await fetch(b);const I=g$&&(c==="stream"||c==="response");if(g$&&(l||I)){const F={};["status","statusText","headers"].forEach(R=>{F[R]=D[R]});const C=Ie.toFiniteNumber(D.headers.get("content-length"));D=new Response(E8(D.body,T8,l&&S8(C,x0(l,!0)),I&&x,v$),F)}c=c||"text";let $=await y0[Ie.findKey(y0,c)||"text"](D,e);return!I&&x(),h&&h(),await new Promise((F,C)=>{D8(F,C,{data:$,headers:Qi.from(D.headers),status:D.status,statusText:D.statusText,config:e,request:b})})}catch(D){throw x(),D&&D.name==="TypeError"&&/fetch/i.test(D.message)?Object.assign(new or("Network Error",or.ERR_NETWORK,e,b),{cause:D.cause||D}):or.from(D,D&&D.code,e,b)}})};Ie.forEach(h$,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const R8=e=>`- ${e}`,ile=e=>Ie.isFunction(e)||e===null||e===!1,O8={getAdapter:e=>{e=Ie.isArray(e)?e:[e];const{length:t}=e;let r,n;const o={};for(let a=0;a`adapter ${l} `+(s===!1?"is not supported by the environment":"is not available in the build"));let i=t?a.length>1?`since : +`+a.map(R8).join(` +`):" "+R8(a[0]):"as no adapter specified";throw new or("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return n},adapters:h$};function _$(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Wf(null,e)}function A8(e){return _$(e),e.headers=Qi.from(e.headers),e.data=p$.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),O8.getAdapter(e.adapter||d$.adapter)(e).then(function(n){return _$(e),n.data=p$.call(e,e.transformResponse,n),n.headers=Qi.from(n.headers),n},function(n){return w8(n)||(_$(e),n&&n.response&&(n.response.data=p$.call(e,e.transformResponse,n.response),n.response.headers=Qi.from(n.response.headers))),Promise.reject(n)})}const k8="1.7.2",m$={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{m$[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});const P8={};m$.transitional=function(t,r,n){function o(a,i){return"[Axios v"+k8+"] Transitional option '"+a+"'"+i+(n?". "+n:"")}return(a,i,l)=>{if(t===!1)throw new or(o(i," has been removed"+(r?" in "+r:"")),or.ERR_DEPRECATED);return r&&!P8[i]&&(P8[i]=!0,console.warn(o(i," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(a,i,l):!0}};function lle(e,t,r){if(typeof e!="object")throw new or("options must be an object",or.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let o=n.length;for(;o-- >0;){const a=n[o],i=t[a];if(i){const l=e[a],s=l===void 0||i(l,a,e);if(s!==!0)throw new or("option "+a+" must be "+s,or.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new or("Unknown option "+a,or.ERR_BAD_OPTION)}}const x$={assertOptions:lle,validators:m$},Tc=x$.validators;class w0{constructor(t){this.defaults=t,this.interceptors={request:new m8,response:new m8}}async request(t,r){try{return await this._request(t,r)}catch(n){if(n instanceof Error){let o;Error.captureStackTrace?Error.captureStackTrace(o={}):o=new Error;const a=o.stack?o.stack.replace(/^.+\n/,""):"";try{n.stack?a&&!String(n.stack).endsWith(a.replace(/^.+\n.+\n/,""))&&(n.stack+=` +`+a):n.stack=a}catch{}}throw n}}_request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=Mu(this.defaults,r);const{transitional:n,paramsSerializer:o,headers:a}=r;n!==void 0&&x$.assertOptions(n,{silentJSONParsing:Tc.transitional(Tc.boolean),forcedJSONParsing:Tc.transitional(Tc.boolean),clarifyTimeoutError:Tc.transitional(Tc.boolean)},!1),o!=null&&(Ie.isFunction(o)?r.paramsSerializer={serialize:o}:x$.assertOptions(o,{encode:Tc.function,serialize:Tc.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let i=a&&Ie.merge(a.common,a[r.method]);a&&Ie.forEach(["delete","get","head","post","put","patch","common"],h=>{delete a[h]}),r.headers=Qi.concat(i,a);const l=[];let s=!0;this.interceptors.request.forEach(function(_){typeof _.runWhen=="function"&&_.runWhen(r)===!1||(s=s&&_.synchronous,l.unshift(_.fulfilled,_.rejected))});const c=[];this.interceptors.response.forEach(function(_){c.push(_.fulfilled,_.rejected)});let d,f=0,v;if(!s){const h=[A8.bind(this),void 0];for(h.unshift.apply(h,l),h.push.apply(h,c),v=h.length,d=Promise.resolve(r);f{if(!n._listeners)return;let a=n._listeners.length;for(;a-- >0;)n._listeners[a](o);n._listeners=null}),this.promise.then=o=>{let a;const i=new Promise(l=>{n.subscribe(l),a=l}).then(o);return i.cancel=function(){n.unsubscribe(a)},i},t(function(a,i,l){n.reason||(n.reason=new Wf(a,i,l),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}static source(){let t;return{token:new b$(function(o){t=o}),cancel:t}}}const sle=b$;function cle(e){return function(r){return e.apply(null,r)}}function ule(e){return Ie.isObject(e)&&e.isAxiosError===!0}const y$={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(y$).forEach(([e,t])=>{y$[t]=e});const dle=y$;function N8(e){const t=new D0(e),r=t8(D0.prototype.request,t);return Ie.extend(r,D0.prototype,t,{allOwnKeys:!0}),Ie.extend(r,t,null,{allOwnKeys:!0}),r.create=function(o){return N8(Mu(e,o))},r}const Xn=N8(d$);Xn.Axios=D0,Xn.CanceledError=Wf,Xn.CancelToken=sle,Xn.isCancel=w8,Xn.VERSION=k8,Xn.toFormData=h0,Xn.AxiosError=or,Xn.Cancel=Xn.CanceledError,Xn.all=function(t){return Promise.all(t)},Xn.spread=cle,Xn.isAxiosError=ule,Xn.mergeConfig=Mu,Xn.AxiosHeaders=Qi,Xn.formToJSON=e=>b8(Ie.isHTMLForm(e)?new FormData(e):e),Xn.getAdapter=O8.getAdapter,Xn.HttpStatusCode=dle,Xn.default=Xn;const w$=Xn,fle=()=>w$.create({baseURL:"https://mock.apifox.cn/m1/2034117-0-default/",timeout:6e4,headers:{"X-Requested-With":"XMLHttpRequest"}}),ple=e=>{e.interceptors.response.use(t=>t.status===200?t:Promise.reject("error"),t=>Promise.reject(t))};(()=>{const e=fle();return ple(e),e})();const BYt="";var Rc={},vle={get exports(){return Rc},set exports(e){Rc=e}},D$={},gle={get exports(){return D$},set exports(e){D$=e}},$g=function(e){return e&&e.Math===Math&&e},In=$g(typeof globalThis=="object"&&globalThis)||$g(typeof window=="object"&&window)||$g(typeof self=="object"&&self)||$g(typeof Bn=="object"&&Bn)||$g(typeof Bn=="object"&&Bn)||function(){return this}()||Function("return this")(),_r=function(e){try{return!!e()}catch{return!0}},hle=_r,Eg=!hle(function(){var e=function(){}.bind();return typeof e!="function"||e.hasOwnProperty("prototype")}),_le=Eg,M8=Function.prototype,z8=M8.apply,L8=M8.call,Vf=typeof Reflect=="object"&&Reflect.apply||(_le?L8.bind(z8):function(){return L8.apply(z8,arguments)}),B8=Eg,j8=Function.prototype,I$=j8.call,mle=B8&&j8.bind.bind(I$,I$),Ir=B8?mle:function(e){return function(){return I$.apply(e,arguments)}},U8=Ir,xle=U8({}.toString),ble=U8("".slice),Ol=function(e){return ble(xle(e),8,-1)},yle=Ol,wle=Ir,H8=function(e){if(yle(e)==="Function")return wle(e)},F$=typeof document=="object"&&document.all,Fn=typeof F$>"u"&&F$!==void 0?function(e){return typeof e=="function"||e===F$}:function(e){return typeof e=="function"},Sg={},Dle=_r,io=!Dle(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7}),Ile=Eg,I0=Function.prototype.call,Lr=Ile?I0.bind(I0):function(){return I0.apply(I0,arguments)},Cg={},W8={}.propertyIsEnumerable,V8=Object.getOwnPropertyDescriptor,Fle=V8&&!W8.call({1:2},1);Cg.f=Fle?function(t){var r=V8(this,t);return!!r&&r.enumerable}:W8;var zu=function(e,t){return{enumerable:!(e&1),configurable:!(e&2),writable:!(e&4),value:t}},$le=Ir,Ele=_r,Sle=Ol,$$=Object,Cle=$le("".split),E$=Ele(function(){return!$$("z").propertyIsEnumerable(0)})?function(e){return Sle(e)==="String"?Cle(e,""):$$(e)}:$$,Oc=function(e){return e==null},Tle=Oc,Rle=TypeError,ws=function(e){if(Tle(e))throw new Rle("Can't call method on "+e);return e},Ole=E$,Ale=ws,Al=function(e){return Ole(Ale(e))},kle=Fn,gn=function(e){return typeof e=="object"?e!==null:kle(e)},hn={},S$=hn,C$=In,Ple=Fn,K8=function(e){return Ple(e)?e:void 0},lo=function(e,t){return arguments.length<2?K8(S$[e])||K8(C$[e]):S$[e]&&S$[e][t]||C$[e]&&C$[e][t]},Nle=Ir,Nn=Nle({}.isPrototypeOf),Lu=typeof navigator<"u"&&String(navigator.userAgent)||"",q8=In,T$=Lu,Y8=q8.process,G8=q8.Deno,X8=Y8&&Y8.versions||G8&&G8.version,Z8=X8&&X8.v8,Ji,F0;Z8&&(Ji=Z8.split("."),F0=Ji[0]>0&&Ji[0]<4?1:+(Ji[0]+Ji[1])),!F0&&T$&&(Ji=T$.match(/Edge\/(\d+)/),(!Ji||Ji[1]>=74)&&(Ji=T$.match(/Chrome\/(\d+)/),Ji&&(F0=+Ji[1])));var Tg=F0,Q8=Tg,Mle=_r,zle=In,Lle=zle.String,Kf=!!Object.getOwnPropertySymbols&&!Mle(function(){var e=Symbol("symbol detection");return!Lle(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&Q8&&Q8<41}),Ble=Kf,J8=Ble&&!Symbol.sham&&typeof Symbol.iterator=="symbol",jle=lo,Ule=Fn,Hle=Nn,Wle=J8,Vle=Object,Rg=Wle?function(e){return typeof e=="symbol"}:function(e){var t=jle("Symbol");return Ule(t)&&Hle(t.prototype,Vle(e))},Kle=String,Ds=function(e){try{return Kle(e)}catch{return"Object"}},qle=Fn,Yle=Ds,Gle=TypeError,Zn=function(e){if(qle(e))return e;throw new Gle(Yle(e)+" is not a function")},Xle=Zn,Zle=Oc,R$=function(e,t){var r=e[t];return Zle(r)?void 0:Xle(r)},O$=Lr,A$=Fn,k$=gn,Qle=TypeError,Jle=function(e,t){var r,n;if(t==="string"&&A$(r=e.toString)&&!k$(n=O$(r,e))||A$(r=e.valueOf)&&!k$(n=O$(r,e))||t!=="string"&&A$(r=e.toString)&&!k$(n=O$(r,e)))return n;throw new Qle("Can't convert object to primitive value")},Og={},ese={get exports(){return Og},set exports(e){Og=e}},eM=!0,tM=In,tse=Object.defineProperty,rse=function(e,t){try{tse(tM,e,{value:t,configurable:!0,writable:!0})}catch{tM[e]=t}return t},nse=In,ose=rse,rM="__core-js_shared__",nM=ese.exports=nse[rM]||ose(rM,{});(nM.versions||(nM.versions=[])).push({version:"3.37.1",mode:"pure",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.37.1/LICENSE",source:"https://github.com/zloirock/core-js"});var oM=Og,qf=function(e,t){return oM[e]||(oM[e]=t||{})},ase=ws,ise=Object,Uo=function(e){return ise(ase(e))},lse=Ir,sse=Uo,cse=lse({}.hasOwnProperty),Qn=Object.hasOwn||function(t,r){return cse(sse(t),r)},use=Ir,dse=0,fse=Math.random(),pse=use(1 .toString),$0=function(e){return"Symbol("+(e===void 0?"":e)+")_"+pse(++dse+fse,36)},vse=In,gse=qf,aM=Qn,hse=$0,_se=Kf,mse=J8,Yf=vse.Symbol,P$=gse("wks"),xse=mse?Yf.for||Yf:Yf&&Yf.withoutSetter||hse,cn=function(e){return aM(P$,e)||(P$[e]=_se&&aM(Yf,e)?Yf[e]:xse("Symbol."+e)),P$[e]},bse=Lr,iM=gn,lM=Rg,yse=R$,wse=Jle,Dse=cn,Ise=TypeError,Fse=Dse("toPrimitive"),sM=function(e,t){if(!iM(e)||lM(e))return e;var r=yse(e,Fse),n;if(r){if(t===void 0&&(t="default"),n=bse(r,e,t),!iM(n)||lM(n))return n;throw new Ise("Can't convert object to primitive value")}return t===void 0&&(t="number"),wse(e,t)},$se=sM,Ese=Rg,N$=function(e){var t=$se(e,"string");return Ese(t)?t:t+""},Sse=In,cM=gn,M$=Sse.document,Cse=cM(M$)&&cM(M$.createElement),z$=function(e){return Cse?M$.createElement(e):{}},Tse=io,Rse=_r,Ose=z$,uM=!Tse&&!Rse(function(){return Object.defineProperty(Ose("div"),"a",{get:function(){return 7}}).a!==7}),Ase=io,kse=Lr,Pse=Cg,Nse=zu,Mse=Al,zse=N$,Lse=Qn,Bse=uM,dM=Object.getOwnPropertyDescriptor;Sg.f=Ase?dM:function(t,r){if(t=Mse(t),r=zse(r),Bse)try{return dM(t,r)}catch{}if(Lse(t,r))return Nse(!kse(Pse.f,t,r),t[r])};var jse=_r,Use=Fn,Hse=/#|\.prototype\./,Ag=function(e,t){var r=Vse[Wse(e)];return r===qse?!0:r===Kse?!1:Use(t)?jse(t):!!t},Wse=Ag.normalize=function(e){return String(e).replace(Hse,".").toLowerCase()},Vse=Ag.data={},Kse=Ag.NATIVE="N",qse=Ag.POLYFILL="P",fM=Ag,pM=H8,Yse=Zn,Gse=Eg,Xse=pM(pM.bind),Un=function(e,t){return Yse(e),t===void 0?e:Gse?Xse(e,t):function(){return e.apply(t,arguments)}},_a={},Zse=io,Qse=_r,vM=Zse&&Qse(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42}),Jse=gn,ece=String,tce=TypeError,So=function(e){if(Jse(e))return e;throw new tce(ece(e)+" is not an object")},rce=io,nce=uM,oce=vM,E0=So,gM=N$,ace=TypeError,L$=Object.defineProperty,ice=Object.getOwnPropertyDescriptor,B$="enumerable",j$="configurable",U$="writable";_a.f=rce?oce?function(t,r,n){if(E0(t),r=gM(r),E0(n),typeof t=="function"&&r==="prototype"&&"value"in n&&U$ in n&&!n[U$]){var o=ice(t,r);o&&o[U$]&&(t[r]=n.value,n={configurable:j$ in n?n[j$]:o[j$],enumerable:B$ in n?n[B$]:o[B$],writable:!1})}return L$(t,r,n)}:L$:function(t,r,n){if(E0(t),r=gM(r),E0(n),nce)try{return L$(t,r,n)}catch{}if("get"in n||"set"in n)throw new ace("Accessors not supported");return"value"in n&&(t[r]=n.value),t};var lce=io,sce=_a,cce=zu,Ac=lce?function(e,t,r){return sce.f(e,t,cce(1,r))}:function(e,t,r){return e[t]=r,e},kg=In,uce=Vf,dce=H8,fce=Fn,pce=Sg.f,vce=fM,Gf=hn,gce=Un,Xf=Ac,hM=Qn,hce=function(e){var t=function(r,n,o){if(this instanceof t){switch(arguments.length){case 0:return new e;case 1:return new e(r);case 2:return new e(r,n)}return new e(r,n,o)}return uce(e,this,arguments)};return t.prototype=e.prototype,t},Ne=function(e,t){var r=e.target,n=e.global,o=e.stat,a=e.proto,i=n?kg:o?kg[r]:kg[r]&&kg[r].prototype,l=n?Gf:Gf[r]||Xf(Gf,r,{})[r],s=l.prototype,c,d,f,v,g,h,_,b,x;for(v in t)c=vce(n?v:r+(o?".":"#")+v,e.forced),d=!c&&i&&hM(i,v),h=l[v],d&&(e.dontCallGetSet?(x=pce(i,v),_=x&&x.value):_=i[v]),g=d&&_?_:t[v],!(!c&&!a&&typeof h==typeof g)&&(e.bind&&d?b=gce(g,kg):e.wrap&&d?b=hce(g):a&&fce(g)?b=dce(g):b=g,(e.sham||g&&g.sham||h&&h.sham)&&Xf(b,"sham",!0),Xf(l,v,b),a&&(f=r+"Prototype",hM(Gf,f)||Xf(Gf,f,{}),Xf(Gf[f],v,g),e.real&&s&&(c||!s[v])&&Xf(s,v,g)))},_ce=Ir,Bu=_ce([].slice),_M=Ir,mce=Zn,xce=gn,bce=Qn,mM=Bu,yce=Eg,xM=Function,wce=_M([].concat),Dce=_M([].join),H$={},Ice=function(e,t,r){if(!bce(H$,t)){for(var n=[],o=0;o0?Yce:qce)(r)},Xce=Gce,Uu=function(e){var t=+e;return t!==t||t===0?0:Xce(t)},Zce=Uu,Qce=Math.max,Jce=Math.min,T0=function(e,t){var r=Zce(e);return r<0?Qce(r+t,0):Jce(r,t)},eue=Uu,tue=Math.min,SM=function(e){var t=eue(e);return t>0?tue(t,9007199254740991):0},rue=SM,ui=function(e){return rue(e.length)},nue=Al,oue=T0,aue=ui,CM=function(e){return function(t,r,n){var o=nue(t),a=aue(o);if(a===0)return!e&&-1;var i=oue(n,a),l;if(e&&r!==r){for(;a>i;)if(l=o[i++],l!==l)return!0}else for(;a>i;i++)if((e||i in o)&&o[i]===r)return e||i||0;return!e&&-1}},TM={includes:CM(!0),indexOf:CM(!1)},Ng={},iue=Ir,Y$=Qn,lue=Al,sue=TM.indexOf,cue=Ng,RM=iue([].push),OM=function(e,t){var r=lue(e),n=0,o=[],a;for(a in r)!Y$(cue,a)&&Y$(r,a)&&RM(o,a);for(;t.length>n;)Y$(r,a=t[n++])&&(~sue(o,a)||RM(o,a));return o},G$=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],uue=OM,due=G$,Mg=Object.keys||function(t){return uue(t,due)},fue=io,pue=vM,vue=_a,gue=So,hue=Al,_ue=Mg;q$.f=fue&&!pue?Object.defineProperties:function(t,r){gue(t);for(var n=hue(r),o=_ue(r),a=o.length,i=0,l;a>i;)vue.f(t,l=o[i++],n[l]);return t};var mue=lo,AM=mue("document","documentElement"),xue=qf,bue=$0,kM=xue("keys"),R0=function(e){return kM[e]||(kM[e]=bue(e))},yue=So,wue=q$,PM=G$,Due=Ng,Iue=AM,Fue=z$,$ue=R0,NM=">",MM="<",X$="prototype",Z$="script",zM=$ue("IE_PROTO"),Q$=function(){},LM=function(e){return MM+Z$+NM+e+MM+"/"+Z$+NM},BM=function(e){e.write(LM("")),e.close();var t=e.parentWindow.Object;return e=null,t},Eue=function(){var e=Fue("iframe"),t="java"+Z$+":",r;return e.style.display="none",Iue.appendChild(e),e.src=String(t),r=e.contentWindow.document,r.open(),r.write(LM("document.F=Object")),r.close(),r.F},O0,A0=function(){try{O0=new ActiveXObject("htmlfile")}catch{}A0=typeof document<"u"?document.domain&&O0?BM(O0):Eue():BM(O0);for(var e=PM.length;e--;)delete A0[X$][PM[e]];return A0()};Due[zM]=!0;var Hu=Object.create||function(t,r){var n;return t!==null?(Q$[X$]=yue(t),n=new Q$,Q$[X$]=null,n[zM]=t):n=A0(),r===void 0?n:wue.f(n,r)},Sue=Ne,Cue=lo,J$=Vf,Tue=bM,jM=EM,Rue=So,UM=gn,Oue=Hu,HM=_r,eE=Cue("Reflect","construct"),Aue=Object.prototype,kue=[].push,WM=HM(function(){function e(){}return!(eE(function(){},[],e)instanceof e)}),VM=!HM(function(){eE(function(){})}),KM=WM||VM;Sue({target:"Reflect",stat:!0,forced:KM,sham:KM},{construct:function(t,r){jM(t),Rue(r);var n=arguments.length<3?t:jM(arguments[2]);if(VM&&!WM)return eE(t,r,n);if(t===n){switch(r.length){case 0:return new t;case 1:return new t(r[0]);case 2:return new t(r[0],r[1]);case 3:return new t(r[0],r[1],r[2]);case 4:return new t(r[0],r[1],r[2],r[3])}var o=[null];return J$(kue,o,r),new(J$(Tue,t,o))}var a=n.prototype,i=Oue(UM(a)?a:Aue),l=J$(t,i,r);return UM(l)?l:i}});var Pue=hn,Nue=Pue.Reflect.construct,Mue=Nue,zue=Mue,Lue=zue,Bue=Lue,jue=Bue,Uue=jue;(function(e){e.exports=Uue})(gle),function(e){e.exports=D$}(vle);const Lt=Vt(Rc);var k0={},Hue={get exports(){return k0},set exports(e){k0=e}},zg={};zg.f=Object.getOwnPropertySymbols;var qM=io,Wue=Ir,Vue=Lr,Kue=_r,tE=Mg,que=zg,Yue=Cg,Gue=Uo,Xue=E$,Zf=Object.assign,YM=Object.defineProperty,Zue=Wue([].concat),Que=!Zf||Kue(function(){if(qM&&Zf({b:1},Zf(YM({},"a",{enumerable:!0,get:function(){YM(this,"b",{value:3,enumerable:!1})}}),{b:2})).b!==1)return!0;var e={},t={},r=Symbol("assign detection"),n="abcdefghijklmnopqrst";return e[r]=7,n.split("").forEach(function(o){t[o]=o}),Zf({},e)[r]!==7||tE(Zf({},t)).join("")!==n})?function(t,r){for(var n=Gue(t),o=arguments.length,a=1,i=que.f,l=Yue.f;o>a;)for(var s=Xue(arguments[a++]),c=i?Zue(tE(s),i(s)):tE(s),d=c.length,f=0,v;d>f;)v=c[f++],(!qM||Vue(l,s,v))&&(n[v]=s[v]);return n}:Zf,Jue=Ne,GM=Que;Jue({target:"Object",stat:!0,arity:2,forced:Object.assign!==GM},{assign:GM});var ede=hn,tde=ede.Object.assign,rde=tde,nde=rde,ode=nde,ade=ode,ide=ade,lde=ide;(function(e){e.exports=lde})(Hue);const XM=Vt(k0);var rE={},sde={get exports(){return rE},set exports(e){rE=e}},cde=Ne,ZM=bM;cde({target:"Function",proto:!0,forced:Function.bind!==ZM},{bind:ZM});var ude=In,dde=hn,_o=function(e,t){var r=dde[e+"Prototype"],n=r&&r[t];if(n)return n;var o=ude[e],a=o&&o.prototype;return a&&a[t]},fde=_o,pde=fde("Function","bind"),vde=Nn,gde=pde,nE=Function.prototype,hde=function(e){var t=e.bind;return e===nE||vde(nE,e)&&t===nE.bind?gde:t},_de=hde,mde=_de,xde=mde,bde=xde,yde=bde,wde=yde;(function(e){e.exports=wde})(sde);const oE=Vt(rE);function Ee(){var e;return Ee=XM?oE(e=XM).call(e):function(t){for(var r=1;rBde)throw Lde("Maximum allowed index exceeded");return e},jde=io,Ude=_a,Hde=zu,z0=function(e,t,r){jde?Ude.f(e,t,Hde(0,r)):e[t]=r},e5=kc,Wde=C0,Vde=gn,Kde=cn,qde=Kde("species"),t5=Array,Yde=function(e){var t;return e5(e)&&(t=e.constructor,Wde(t)&&(t===t5||e5(t.prototype))?t=void 0:Vde(t)&&(t=t[qde],t===null&&(t=void 0))),t===void 0?t5:t},Gde=Yde,L0=function(e,t){return new(Gde(e))(t===0?0:t)},Xde=_r,Zde=cn,Qde=Tg,Jde=Zde("species"),Lg=function(e){return Qde>=51||!Xde(function(){var t=[],r=t.constructor={};return r[Jde]=function(){return{foo:1}},t[e](Boolean).foo!==1})},efe=Ne,tfe=_r,rfe=kc,nfe=gn,ofe=Uo,afe=ui,r5=M0,n5=z0,ife=L0,lfe=Lg,sfe=cn,cfe=Tg,o5=sfe("isConcatSpreadable"),ufe=cfe>=51||!tfe(function(){var e=[];return e[o5]=!1,e.concat()[0]!==e}),dfe=function(e){if(!nfe(e))return!1;var t=e[o5];return t!==void 0?!!t:rfe(e)},ffe=!ufe||!lfe("concat");efe({target:"Array",proto:!0,arity:1,forced:ffe},{concat:function(t){var r=ofe(this),n=ife(r,0),o=0,a,i,l,s,c;for(a=-1,l=arguments.length;ab;b++)if((l||b in g)&&(D=g[b],I=_(D,b,v),e))if(t)w[b]=I;else if(I)switch(e){case 3:return!0;case 5:return D;case 6:return b;case 2:v5(w,D)}else switch(e){case 4:return!1;case 7:v5(w,D)}return a?-1:n||o?o:w}},zc={forEach:Mc(0),map:Mc(1),filter:Mc(2),some:Mc(3),every:Mc(4),find:Mc(5),findIndex:Mc(6),filterReject:Mc(7)},U0=Ne,Hg=In,dE=Lr,npe=Ir,tp=io,rp=Kf,ope=_r,mo=Qn,ape=Nn,fE=So,H0=Al,pE=N$,ipe=di,vE=zu,np=Hu,g5=Mg,lpe=Bg,h5=iE,spe=zg,_5=Sg,m5=_a,cpe=q$,x5=Cg,b5=Jf,upe=lE,gE=qf,dpe=R0,y5=Ng,w5=$0,fpe=cn,ppe=jg,vpe=$n,gpe=s5,hpe=Pc,D5=Nc,W0=zc.forEach,ma=dpe("hidden"),V0="Symbol",Wg="prototype",_pe=D5.set,I5=D5.getterFor(V0),el=Object[Wg],Wu=Hg.Symbol,Vg=Wu&&Wu[Wg],mpe=Hg.RangeError,xpe=Hg.TypeError,hE=Hg.QObject,F5=_5.f,Vu=m5.f,$5=h5.f,bpe=x5.f,E5=npe([].push),Is=gE("symbols"),Kg=gE("op-symbols"),ype=gE("wks"),_E=!hE||!hE[Wg]||!hE[Wg].findChild,S5=function(e,t,r){var n=F5(el,t);n&&delete el[t],Vu(e,t,r),n&&e!==el&&Vu(el,t,n)},mE=tp&&ope(function(){return np(Vu({},"a",{get:function(){return Vu(this,"a",{value:7}).a}})).a!==7})?S5:Vu,xE=function(e,t){var r=Is[e]=np(Vg);return _pe(r,{type:V0,tag:e,description:t}),tp||(r.description=t),r},K0=function(t,r,n){t===el&&K0(Kg,r,n),fE(t);var o=pE(r);return fE(n),mo(Is,o)?(n.enumerable?(mo(t,ma)&&t[ma][o]&&(t[ma][o]=!1),n=np(n,{enumerable:vE(0,!1)})):(mo(t,ma)||Vu(t,ma,vE(1,np(null))),t[ma][o]=!0),mE(t,o,n)):Vu(t,o,n)},bE=function(t,r){fE(t);var n=H0(r),o=g5(n).concat(O5(n));return W0(o,function(a){(!tp||dE(C5,n,a))&&K0(t,a,n[a])}),t},wpe=function(t,r){return r===void 0?np(t):bE(np(t),r)},C5=function(t){var r=pE(t),n=dE(bpe,this,r);return this===el&&mo(Is,r)&&!mo(Kg,r)?!1:n||!mo(this,r)||!mo(Is,r)||mo(this,ma)&&this[ma][r]?n:!0},T5=function(t,r){var n=H0(t),o=pE(r);if(!(n===el&&mo(Is,o)&&!mo(Kg,o))){var a=F5(n,o);return a&&mo(Is,o)&&!(mo(n,ma)&&n[ma][o])&&(a.enumerable=!0),a}},R5=function(t){var r=$5(H0(t)),n=[];return W0(r,function(o){!mo(Is,o)&&!mo(y5,o)&&E5(n,o)}),n},O5=function(e){var t=e===el,r=$5(t?Kg:H0(e)),n=[];return W0(r,function(o){mo(Is,o)&&(!t||mo(el,o))&&E5(n,Is[o])}),n};rp||(Wu=function(){if(ape(Vg,this))throw new xpe("Symbol is not a constructor");var t=!arguments.length||arguments[0]===void 0?void 0:ipe(arguments[0]),r=w5(t),n=function(o){var a=this===void 0?Hg:this;a===el&&dE(n,Kg,o),mo(a,ma)&&mo(a[ma],r)&&(a[ma][r]=!1);var i=vE(1,o);try{mE(a,r,i)}catch(l){if(!(l instanceof mpe))throw l;S5(a,r,i)}};return tp&&_E&&mE(el,r,{configurable:!0,set:n}),xE(r,t)},Vg=Wu[Wg],b5(Vg,"toString",function(){return I5(this).tag}),b5(Wu,"withoutSetter",function(e){return xE(w5(e),e)}),x5.f=C5,m5.f=K0,cpe.f=bE,_5.f=T5,lpe.f=h5.f=R5,spe.f=O5,ppe.f=function(e){return xE(fpe(e),e)},tp&&upe(Vg,"description",{configurable:!0,get:function(){return I5(this).description}})),U0({global:!0,constructor:!0,wrap:!0,forced:!rp,sham:!rp},{Symbol:Wu}),W0(g5(ype),function(e){vpe(e)}),U0({target:V0,stat:!0,forced:!rp},{useSetter:function(){_E=!0},useSimple:function(){_E=!1}}),U0({target:"Object",stat:!0,forced:!rp,sham:!tp},{create:wpe,defineProperty:K0,defineProperties:bE,getOwnPropertyDescriptor:T5}),U0({target:"Object",stat:!0,forced:!rp},{getOwnPropertyNames:R5}),gpe(),hpe(Wu,V0),y5[ma]=!0;var Dpe=Kf,A5=Dpe&&!!Symbol.for&&!!Symbol.keyFor,Ipe=Ne,Fpe=lo,$pe=Qn,Epe=di,k5=qf,Spe=A5,yE=k5("string-to-symbol-registry"),Cpe=k5("symbol-to-string-registry");Ipe({target:"Symbol",stat:!0,forced:!Spe},{for:function(e){var t=Epe(e);if($pe(yE,t))return yE[t];var r=Fpe("Symbol")(t);return yE[t]=r,Cpe[r]=t,r}});var Tpe=Ne,Rpe=Qn,Ope=Rg,Ape=Ds,kpe=qf,Ppe=A5,P5=kpe("symbol-to-string-registry");Tpe({target:"Symbol",stat:!0,forced:!Ppe},{keyFor:function(t){if(!Ope(t))throw new TypeError(Ape(t)+" is not a symbol");if(Rpe(P5,t))return P5[t]}});var Npe=Ir,N5=kc,Mpe=Fn,M5=Ol,zpe=di,z5=Npe([].push),Lpe=function(e){if(Mpe(e))return e;if(N5(e)){for(var t=e.length,r=[],n=0;n=t.length)return e.target=void 0,X0(void 0,!0);switch(e.kind){case"keys":return X0(r,!1);case"values":return X0(t[r],!1)}return X0([r,t[r]],!1)},"values"),cz.Arguments=cz.Array;var bge={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},yge=bge,wge=In,Dge=Pc,fz=Ku;for(var RE in yge)Dge(wge[RE],RE),fz[RE]=fz.Array;var Ige=yve,Fge=Ige,$ge=cn,Ege=_a.f,pz=$ge("metadata"),vz=Function.prototype;vz[pz]===void 0&&Ege(vz,pz,{value:null});var Sge=$n;Sge("asyncDispose");var Cge=$n;Cge("dispose");var Tge=$n;Tge("metadata");var Rge=Fge,Oge=Rge,Age=lo,kge=Ir,OE=Age("Symbol"),Pge=OE.keyFor,Nge=kge(OE.prototype.valueOf),gz=OE.isRegisteredSymbol||function(t){try{return Pge(Nge(t))!==void 0}catch{return!1}},Mge=Ne,zge=gz;Mge({target:"Symbol",stat:!0},{isRegisteredSymbol:zge});for(var Lge=qf,hz=lo,Bge=Ir,jge=Rg,Uge=cn,Z0=hz("Symbol"),_z=Z0.isWellKnownSymbol,mz=hz("Object","getOwnPropertyNames"),Hge=Bge(Z0.prototype.valueOf),xz=Lge("wks"),AE=0,bz=mz(Z0),Wge=bz.length;AE=a?e?"":void 0:(i=Dz(n,o),i<55296||i>56319||o+1===a||(l=Dz(n,o+1))<56320||l>57343?e?che(n,o):i:e?uhe(n,o,o+2):(i-55296<<10)+(l-56320)+65536)}},dhe={codeAt:Iz(!1),charAt:Iz(!0)},fhe=dhe.charAt,phe=di,Fz=Nc,vhe=CE,$z=TE,Ez="String Iterator",ghe=Fz.set,hhe=Fz.getterFor(Ez);vhe(String,"String",function(e){ghe(this,{type:Ez,string:phe(e),index:0})},function(){var t=hhe(this),r=t.string,n=t.index,o;return n>=r.length?$z(void 0,!0):(o=fhe(r,n),t.index+=o.length,$z(o,!1))});var _he=jg,mhe=_he.f("iterator"),xhe=mhe,bhe=xhe,yhe=bhe,whe=yhe,Dhe=whe,Ihe=Dhe;(function(e){e.exports=Ihe})(ahe);const Fhe=Vt(Q0);function Mn(e){"@babel/helpers - typeof";return Mn=typeof op=="function"&&typeof Fhe=="symbol"?function(t){return typeof t}:function(t){return t&&typeof op=="function"&&t.constructor===op&&t!==op.prototype?"symbol":typeof t},Mn(e)}const $he=Object.freeze(Object.defineProperty({__proto__:null,default:Mn},Symbol.toStringTag,{value:"Module"}));var PE={},Ehe={get exports(){return PE},set exports(e){PE=e}},She=jg,Che=She.f("toPrimitive"),The=Che,Rhe=The,Ohe=Rhe,Ahe=Ohe,khe=Ahe,Phe=khe;(function(e){e.exports=Phe})(Ehe);const Nhe=Vt(PE);function Mhe(e,t){if(Mn(e)!=="object"||e===null)return e;var r=e[Nhe];if(r!==void 0){var n=r.call(e,t||"default");if(Mn(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Sz(e){var t=Mhe(e,"string");return Mn(t)==="symbol"?t:String(t)}function Cz(e,t){for(var r=0;r"u"?"undefined":Mn(navigator))==="object"&&/Firefox/i.test(navigator.userAgent)};function T_e(){return/(mac\sos|macintosh)/i.test(navigator.appVersion)}var nl={},R_e={get exports(){return nl},set exports(e){nl=e}},LE={},O_e={get exports(){return LE},set exports(e){LE=e}},A_e=_o,k_e=A_e("Array","concat"),P_e=Nn,N_e=k_e,BE=Array.prototype,M_e=function(e){var t=e.concat;return e===BE||P_e(BE,e)&&t===BE.concat?N_e:t},z_e=M_e,L_e=z_e,B_e=L_e,j_e=B_e,U_e=j_e,H_e=U_e;(function(e){e.exports=H_e})(O_e),function(e){e.exports=LE}(R_e);const mt=Vt(nl);var Gg={},W_e={get exports(){return Gg},set exports(e){Gg=e}},Hr={};/** * @license React * react-is.production.min.js * @@ -91,12 +94,12 @@ function print() { __p += __j.call(arguments, '') } * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var lS=Symbol.for("react.element"),sS=Symbol.for("react.portal"),I0=Symbol.for("react.fragment"),F0=Symbol.for("react.strict_mode"),$0=Symbol.for("react.profiler"),S0=Symbol.for("react.provider"),E0=Symbol.for("react.context"),Oge=Symbol.for("react.server_context"),C0=Symbol.for("react.forward_ref"),T0=Symbol.for("react.suspense"),R0=Symbol.for("react.suspense_list"),O0=Symbol.for("react.memo"),A0=Symbol.for("react.lazy"),Age=Symbol.for("react.offscreen"),j5;j5=Symbol.for("react.module.reference");function oi(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case lS:switch(e=e.type,e){case I0:case $0:case F0:case T0:case R0:return e;default:switch(e=e&&e.$$typeof,e){case Oge:case E0:case C0:case A0:case O0:case S0:return e;default:return t}}case sS:return t}}}Nr.ContextConsumer=E0,Nr.ContextProvider=S0,Nr.Element=lS,Nr.ForwardRef=C0,Nr.Fragment=I0,Nr.Lazy=A0,Nr.Memo=O0,Nr.Portal=sS,Nr.Profiler=$0,Nr.StrictMode=F0,Nr.Suspense=T0,Nr.SuspenseList=R0,Nr.isAsyncMode=function(){return!1},Nr.isConcurrentMode=function(){return!1},Nr.isContextConsumer=function(e){return oi(e)===E0},Nr.isContextProvider=function(e){return oi(e)===S0},Nr.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===lS},Nr.isForwardRef=function(e){return oi(e)===C0},Nr.isFragment=function(e){return oi(e)===I0},Nr.isLazy=function(e){return oi(e)===A0},Nr.isMemo=function(e){return oi(e)===O0},Nr.isPortal=function(e){return oi(e)===sS},Nr.isProfiler=function(e){return oi(e)===$0},Nr.isStrictMode=function(e){return oi(e)===F0},Nr.isSuspense=function(e){return oi(e)===T0},Nr.isSuspenseList=function(e){return oi(e)===R0},Nr.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===I0||e===$0||e===F0||e===T0||e===R0||e===Age||typeof e=="object"&&e!==null&&(e.$$typeof===A0||e.$$typeof===O0||e.$$typeof===S0||e.$$typeof===E0||e.$$typeof===C0||e.$$typeof===j5||e.getModuleId!==void 0)},Nr.typeOf=oi,function(e){e.exports=Nr}(Rge);var U5=function e(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=[];return $.Children.forEach(t,function(a){a==null&&!r.keepEmpty||(Array.isArray(a)?n=_t(n).call(n,e(a)):kh.isFragment(a)&&a.props?n=_t(n).call(n,e(a.props.children,r)):n.push(a))}),n},Ph={},kge={get exports(){return Ph},set exports(e){Ph=e}},k0={},Pge={get exports(){return k0},set exports(e){k0=e}},Nge=kr,H5=xa,Mge=Z2,P0=function(e,t,r){var n,a;H5(e);try{if(n=Mge(e,"return"),!n){if(t==="throw")throw r;return r}n=Nge(n,e)}catch(o){a=!0,n=o}if(t==="throw")throw r;if(a)throw n;return H5(n),r},Lge=xa,zge=P0,Bge=function(e,t,r,n){try{return n?t(Lge(r)[0],r[1]):t(r)}catch(a){zge(e,"throw",a)}},jge=an,Uge=Nu,Hge=jge("iterator"),Wge=Array.prototype,W5=function(e){return e!==void 0&&(Uge.Array===e||Wge[Hge]===e)},Vge=Ru,V5=Z2,Kge=wc,qge=Nu,Yge=an,Gge=Yge("iterator"),N0=function(e){if(!Kge(e))return V5(e,Gge)||V5(e,"@@iterator")||qge[Vge(e)]},Xge=kr,Zge=Wn,Qge=xa,Jge=gs,e_e=N0,t_e=TypeError,K5=function(e,t){var r=arguments.length<2?e_e(e):t;if(Zge(r))return Qge(Xge(r,e));throw new t_e(Jge(e)+" is not iterable")},r_e=kn,n_e=kr,a_e=Ma,o_e=Bge,i_e=W5,l_e=Gb,s_e=ni,q5=o0,c_e=K5,u_e=N0,Y5=Array,d_e=function(t){var r=a_e(t),n=l_e(this),a=arguments.length,o=a>1?arguments[1]:void 0,i=o!==void 0;i&&(o=r_e(o,a>2?arguments[2]:void 0));var l=u_e(r),s=0,c,d,f,v,h,g;if(l&&!(this===Y5&&i_e(l)))for(d=n?new this:[],v=c_e(r,l),h=v.next;!(f=n_e(h,v)).done;s++)g=i?o_e(v,o,[f.value,s],!0):f.value,q5(d,s,g);else for(c=s_e(r),d=n?new this(c):Y5(c);c>s;s++)g=i?o(r[s],s):r[s],q5(d,s,g);return d.length=s,d},f_e=an,G5=f_e("iterator"),X5=!1;try{var p_e=0,Z5={next:function(){return{done:!!p_e++}},return:function(){X5=!0}};Z5[G5]=function(){return this},Array.from(Z5,function(){throw 2})}catch{}var Q5=function(e,t){try{if(!t&&!X5)return!1}catch{return!1}var r=!1;try{var n={};n[G5]=function(){return{next:function(){return{done:r=!0}}}},e(n)}catch{}return r},v_e=Re,h_e=d_e,g_e=Q5,__e=!g_e(function(e){Array.from(e)});v_e({target:"Array",stat:!0,forced:__e},{from:h_e});var m_e=xn,x_e=m_e.Array.from,b_e=x_e,y_e=b_e,w_e=y_e,D_e=w_e,I_e=D_e,F_e=I_e;(function(e){e.exports=F_e})(Pge);const J5=qt(k0);(function(e){e.exports=k0})(kge);const Il=qt(Ph);var M0={},$_e={get exports(){return M0},set exports(e){M0=e}};(function(e){e.exports=zf})($_e);const Mu=qt(M0);var L0={},S_e={get exports(){return L0},set exports(e){L0=e}},z0={},E_e={get exports(){return z0},set exports(e){z0=e}},C_e=N0,T_e=C_e,R_e=T_e,O_e=R_e,A_e=O_e,k_e=A_e,P_e=k_e,N_e=P_e;(function(e){e.exports=N_e})(E_e);const eL=qt(z0);(function(e){e.exports=z0})(S_e);const Lu=qt(L0);var cS={},M_e={get exports(){return cS},set exports(e){cS=e}},L_e=Re,z_e=Ic;L_e({target:"Array",stat:!0},{isArray:z_e});var B_e=xn,j_e=B_e.Array.isArray,U_e=j_e,H_e=U_e,W_e=H_e,V_e=W_e,K_e=V_e,q_e=K_e;(function(e){e.exports=q_e})(M_e);const tL=qt(cS);function uS(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);rf;f++)if(h=b(e[f]),h&&uL(fL,h))return h;return new j0(!1)}c=mxe(e,d)}for(g=o?e.next:c.next;!(_=pxe(g,c)).done;){try{h=b(_.value)}catch(y){dL(c,"throw",y)}if(typeof h=="object"&&h&&uL(fL,h))return h}return new j0(!1)},yxe=ai,wxe=function(e,t){return e===void 0?arguments.length<2?"":t:yxe(e)},Dxe=Re,Ixe=Sn,Fxe=h0,U0=f5,$xe=Xme,pL=Au,vS=Dc,hS=Eu,Sxe=Jme,Exe=dxe,Cxe=ii,Txe=wxe,Rxe=an,Oxe=Rxe("toStringTag"),H0=Error,Axe=[].push,qf=function(t,r){var n=Ixe(gS,this),a;U0?a=U0(new H0,n?Fxe(this):gS):(a=n?this:pL(gS),vS(a,Oxe,"Error")),r!==void 0&&vS(a,"message",Txe(r)),Exe(a,qf,a.stack,1),arguments.length>2&&Sxe(a,arguments[2]);var o=[];return Cxe(t,Axe,{that:o}),vS(a,"errors",o),a};U0?U0(qf,H0):$xe(qf,H0,{name:!0});var gS=qf.prototype=pL(H0.prototype,{constructor:hS(1,qf),message:hS(1,""),name:hS(1,"AggregateError")});Dxe({global:!0,constructor:!0,arity:2},{AggregateError:qf});var kxe=_n,Pxe=wl,W0=Pxe(kxe.process)==="process",Nxe=ta,Mxe=S$,Lxe=an,zxe=sa,vL=Lxe("species"),hL=function(e){var t=Nxe(e);zxe&&t&&!t[vL]&&Mxe(t,vL,{configurable:!0,get:function(){return this}})},Bxe=Sn,jxe=TypeError,V0=function(e,t){if(Bxe(t,e))return e;throw new jxe("Incorrect invocation")},gL=xa,Uxe=P8,Hxe=wc,Wxe=an,Vxe=Wxe("species"),_L=function(e,t){var r=gL(e).constructor,n;return r===void 0||Hxe(n=gL(r)[Vxe])?t:Uxe(n)},Kxe=TypeError,qxe=function(e,t){if(e0){if(++t>=U1e)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var K1e=V1e,q1e=j1e,Y1e=K1e,G1e=Y1e(q1e),xz=G1e,X1e=np,Z1e=_z,Q1e=xz;function J1e(e,t){return Q1e(Z1e(e,t,X1e),e+"")}var Oc=J1e,ewe=9007199254740991;function twe(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=ewe}var VS=twe,rwe=br,nwe=VS;function awe(e){return e!=null&&nwe(e.length)&&!rwe(e)}var qi=awe,owe=9007199254740991,iwe=/^(?:0|[1-9]\d*)$/;function lwe(e,t){var r=typeof e;return t=t??owe,!!t&&(r=="number"||r!="symbol"&&iwe.test(e))&&e>-1&&e%1==0&&e1?r[a-1]:void 0,i=a>2?r[2]:void 0;for(o=e.length>3&&typeof o=="function"?(a--,o):void 0,i&&vwe(r[0],r[1],i)&&(o=a<3?void 0:o,a=1),t=Object(t);++n=t?e:t)),e}var Sz=VDe,KDe=/\s/;function qDe(e){for(var t=e.length;t--&&KDe.test(e.charAt(t)););return t}var YDe=qDe,GDe=YDe,XDe=/^\s+/;function ZDe(e){return e&&e.slice(0,GDe(e)+1).replace(XDe,"")}var Ez=ZDe,QDe=Ki,JDe=_o,eIe="[object Symbol]";function tIe(e){return typeof e=="symbol"||JDe(e)&&QDe(e)==eIe}var Gh=tIe,rIe=Ez,Cz=yn,nIe=Gh,Tz=0/0,aIe=/^[-+]0x[0-9a-f]+$/i,oIe=/^0b[01]+$/i,iIe=/^0o[0-7]+$/i,lIe=parseInt;function sIe(e){if(typeof e=="number")return e;if(nIe(e))return Tz;if(Cz(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Cz(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=rIe(e);var r=oIe.test(e);return r||iIe.test(e)?lIe(e.slice(2),r?2:8):aIe.test(e)?Tz:+e}var YS=sIe,cIe=Sz,GS=YS;function uIe(e,t,r){return r===void 0&&(r=t,t=void 0),r!==void 0&&(r=GS(r),r=r===r?r:0),t!==void 0&&(t=GS(t),t=t===t?t:0),cIe(GS(e),t,r)}var dIe=uIe;function fIe(){this.__data__=[],this.size=0}var pIe=fIe,vIe=Vh;function hIe(e,t){for(var r=e.length;r--;)if(vIe(e[r][0],t))return r;return-1}var ny=hIe,gIe=ny,_Ie=Array.prototype,mIe=_Ie.splice;function xIe(e){var t=this.__data__,r=gIe(t,e);if(r<0)return!1;var n=t.length-1;return r==n?t.pop():mIe.call(t,r,1),--this.size,!0}var bIe=xIe,yIe=ny;function wIe(e){var t=this.__data__,r=yIe(t,e);return r<0?void 0:t[r][1]}var DIe=wIe,IIe=ny;function FIe(e){return IIe(this.__data__,e)>-1}var $Ie=FIe,SIe=ny;function EIe(e,t){var r=this.__data__,n=SIe(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}var CIe=EIe,TIe=pIe,RIe=bIe,OIe=DIe,AIe=$Ie,kIe=CIe;function ap(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t0&&r(l)?t>1?f7(l,t-1,r,n,a):KEe(a,l):n||(a[a.length]=l)}return a}var dp=f7,YEe=cy,GEe=dp,XEe=sy,ZEe=or;function QEe(){var e=arguments.length;if(!e)return[];for(var t=Array(e-1),r=arguments[0],n=e;n--;)t[n-1]=arguments[n];return YEe(ZEe(r)?XEe(r):[r],GEe(t,1))}var Nc=QEe,JEe=Vi,e6e=function(){return JEe.Date.now()},t6e=e6e,r6e=yn,lE=t6e,p7=YS,n6e="Expected a function",a6e=Math.max,o6e=Math.min;function i6e(e,t,r){var n,a,o,i,l,s,c=0,d=!1,f=!1,v=!0;if(typeof e!="function")throw new TypeError(n6e);t=p7(t)||0,r6e(r)&&(d=!!r.leading,f="maxWait"in r,o=f?a6e(p7(r.maxWait)||0,t):o,v="trailing"in r?!!r.trailing:v);function h(I){var C=n,R=a;return n=a=void 0,c=I,i=e.apply(R,C),i}function g(I){return c=I,l=setTimeout(b,t),d?h(I):i}function _(I){var C=I-s,R=I-c,P=t-C;return f?o6e(P,o-R):P}function w(I){var C=I-s,R=I-c;return s===void 0||C>=t||C<0||f&&R>=o}function b(){var I=lE();if(w(I))return y(I);l=setTimeout(b,_(I))}function y(I){return l=void 0,v&&n?h(I):(n=a=void 0,i)}function D(){l!==void 0&&clearTimeout(l),c=0,n=s=a=l=void 0}function F(){return l===void 0?i:y(lE())}function S(){var I=lE(),C=w(I);if(n=arguments,a=this,s=I,C){if(l===void 0)return g(s);if(f)return clearTimeout(l),l=setTimeout(b,t),h(s)}return l===void 0&&(l=setTimeout(b,t)),i}return S.cancel=D,S.flush=F,S}var fp=i6e,l6e="__lodash_hash_undefined__";function s6e(e){return this.__data__.set(e,l6e),this}var c6e=s6e;function u6e(e){return this.__data__.has(e)}var d6e=u6e,f6e=ZS,p6e=c6e,v6e=d6e;function fy(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new f6e;++t-1}var sE=F6e;function $6e(e,t,r){for(var n=-1,a=e==null?0:e.length;++n=P6e&&(o=k6e,i=!1,t=new C6e(t));e:for(;++al))return!1;var c=o.get(e),d=o.get(t);if(c&&d)return c==t&&d==e;var f=-1,v=!0,h=r&G6e?new V6e:void 0;for(o.set(e,t),o.set(t,e);++fa?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++n-1?a[o?t[i]:i]:void 0}}var MRe=NRe,LRe=v7,zRe=Yi,BRe=Mc,jRe=Math.max;function URe(e,t,r){var n=e==null?0:e.length;if(!n)return-1;var a=r==null?0:BRe(r);return a<0&&(a=jRe(n+a,0)),LRe(e,zRe(t),a)}var V7=URe,HRe=MRe,WRe=V7,VRe=HRe(WRe),bE=VRe,my={},KRe={get exports(){return my},set exports(e){my=e}};function qRe(e){return e&&e.length?e[0]:void 0}var YRe=qRe;(function(e){e.exports=YRe})(KRe);const GRe=qt(my);var XRe=dp;function ZRe(e){var t=e==null?0:e.length;return t?XRe(e,1):[]}var yE=ZRe,QRe=Object.prototype,JRe=QRe.hasOwnProperty;function eOe(e,t){return e!=null&&JRe.call(e,t)}var tOe=eOe,rOe=tOe,nOe=L7;function aOe(e,t){return e!=null&&nOe(e,t,rOe)}var La=aOe,oOe=Ki,iOe=or,lOe=_o,sOe="[object String]";function cOe(e){return typeof e=="string"||!iOe(e)&&lOe(e)&&oOe(e)==sOe}var Za=cOe,uOe=Sl;function dOe(e,t){return uOe(t,function(r){return e[r]})}var fOe=dOe,pOe=fOe,vOe=Pc;function hOe(e){return e==null?[]:pOe(e,vOe(e))}var wE=hOe,gOe=pp,_Oe=qi,mOe=Za,xOe=Mc,bOe=wE,yOe=Math.max;function wOe(e,t,r,n){e=_Oe(e)?e:bOe(e),r=r&&!n?xOe(r):0;var a=e.length;return r<0&&(r=yOe(a+r,0)),mOe(e)?r<=a&&e.indexOf(t,r)>-1:!!a&&gOe(e,t,r)>-1}var fn=wOe,DOe=pp,IOe=Mc,FOe=Math.max;function $Oe(e,t,r){var n=e==null?0:e.length;if(!n)return-1;var a=r==null?0:IOe(r);return a<0&&(a=FOe(n+a,0)),DOe(e,t,a)}var DE=$Oe,SOe=py,EOe=sE,COe=cE,TOe=Sl,ROe=bs,K7=vy,OOe=Math.min;function AOe(e,t,r){for(var n=r?COe:EOe,a=e[0].length,o=e.length,i=o,l=Array(o),s=1/0,c=[];i--;){var d=e[i];i&&t&&(d=TOe(d,ROe(t))),s=OOe(d.length,s),l[i]=!r&&(t||a>=120&&d.length>=120)?new SOe(i&&d):void 0}d=e[0];var f=-1,v=l[0];e:for(;++f1),o}),fPe(e,hPe(e),r),n&&(r=cPe(r,gPe|_Pe|mPe,pPe));for(var a=t.length;a--;)uPe(r,t[a]);return r}),ws=xPe,bPe=9007199254740991,yPe=Math.floor;function wPe(e,t){var r="";if(!e||t<1||t>bPe)return r;do t%2&&(r+=e),t=yPe(t/2),t&&(e+=e);while(t);return r}var DPe=wPe,IPe=gy;function FPe(e,t,r){var n=e.length;return r=r===void 0?n:r,!t&&r>=n?e:IPe(e,t,r)}var SE=FPe,$Pe="\\ud800-\\udfff",SPe="\\u0300-\\u036f",EPe="\\ufe20-\\ufe2f",CPe="\\u20d0-\\u20ff",TPe=SPe+EPe+CPe,RPe="\\ufe0e\\ufe0f",OPe="\\u200d",APe=RegExp("["+OPe+$Pe+TPe+RPe+"]");function kPe(e){return APe.test(e)}var yy=kPe,PPe=B7,NPe=PPe("length"),MPe=NPe,PB="\\ud800-\\udfff",LPe="\\u0300-\\u036f",zPe="\\ufe20-\\ufe2f",BPe="\\u20d0-\\u20ff",jPe=LPe+zPe+BPe,UPe="\\ufe0e\\ufe0f",HPe="["+PB+"]",EE="["+jPe+"]",CE="\\ud83c[\\udffb-\\udfff]",WPe="(?:"+EE+"|"+CE+")",NB="[^"+PB+"]",MB="(?:\\ud83c[\\udde6-\\uddff]){2}",LB="[\\ud800-\\udbff][\\udc00-\\udfff]",VPe="\\u200d",zB=WPe+"?",BB="["+UPe+"]?",KPe="(?:"+VPe+"(?:"+[NB,MB,LB].join("|")+")"+BB+zB+")*",qPe=BB+zB+KPe,YPe="(?:"+[NB+EE+"?",EE,MB,LB,HPe].join("|")+")",jB=RegExp(CE+"(?="+CE+")|"+YPe+qPe,"g");function GPe(e){for(var t=jB.lastIndex=0;jB.test(e);)++t;return t}var XPe=GPe,ZPe=MPe,QPe=yy,JPe=XPe;function eNe(e){return QPe(e)?JPe(e):ZPe(e)}var TE=eNe;function tNe(e){return e.split("")}var rNe=tNe,UB="\\ud800-\\udfff",nNe="\\u0300-\\u036f",aNe="\\ufe20-\\ufe2f",oNe="\\u20d0-\\u20ff",iNe=nNe+aNe+oNe,lNe="\\ufe0e\\ufe0f",sNe="["+UB+"]",RE="["+iNe+"]",OE="\\ud83c[\\udffb-\\udfff]",cNe="(?:"+RE+"|"+OE+")",HB="[^"+UB+"]",WB="(?:\\ud83c[\\udde6-\\uddff]){2}",VB="[\\ud800-\\udbff][\\udc00-\\udfff]",uNe="\\u200d",KB=cNe+"?",qB="["+lNe+"]?",dNe="(?:"+uNe+"(?:"+[HB,WB,VB].join("|")+")"+qB+KB+")*",fNe=qB+KB+dNe,pNe="(?:"+[HB+RE+"?",RE,WB,VB,sNe].join("|")+")",vNe=RegExp(OE+"(?="+OE+")|"+pNe+fNe,"g");function hNe(e){return e.match(vNe)||[]}var gNe=hNe,_Ne=rNe,mNe=yy,xNe=gNe;function bNe(e){return mNe(e)?xNe(e):_Ne(e)}var AE=bNe,YB=DPe,yNe=Qh,wNe=SE,DNe=yy,INe=TE,FNe=AE,$Ne=Math.ceil;function SNe(e,t){t=t===void 0?" ":yNe(t);var r=t.length;if(r<2)return r?YB(t,e):t;var n=YB(t,$Ne(e/INe(t)));return DNe(t)?wNe(FNe(n),0,e).join(""):n.slice(0,e)}var ENe=SNe,CNe=ENe,TNe=TE,RNe=Mc,ONe=li;function ANe(e,t,r){e=ONe(e),t=RNe(t);var n=t?TNe(e):0;return t&&n-1;)l!==e&&ZB.call(l,s,1),ZB.call(e,s,1);return e}var i8e=o8e,l8e=i8e;function s8e(e,t){return e&&e.length&&t&&t.length?l8e(e,t):e}var c8e=s8e,u8e=Oc,d8e=c8e,f8e=u8e(d8e),QB=f8e,p8e=Math.ceil,v8e=Math.max;function h8e(e,t,r,n){for(var a=-1,o=v8e(p8e((t-e)/(r||1)),0),i=Array(o);o--;)i[n?o:++a]=e,e+=r;return i}var g8e=h8e,_8e=g8e,m8e=ju,kE=U7;function x8e(e){return function(t,r,n){return n&&typeof n!="number"&&m8e(t,r,n)&&(r=n=void 0),t=kE(t),r===void 0?(r=t,t=0):r=kE(r),n=n===void 0?tt||o&&i&&s&&!l&&!c||n&&i&&s||!r&&s||!a)return 1;if(!n&&!o&&!c&&e=l)return s;var c=r[n];return s*(c=="desc"?-1:1)}}return e.index-t.index}var gMe=hMe,ME=Sl,_Me=Jh,mMe=Yi,xMe=FB,bMe=dMe,yMe=bs,wMe=gMe,DMe=np,IMe=or;function FMe(e,t,r){t.length?t=ME(t,function(o){return IMe(o)?function(i){return _Me(i,o.length===1?o[0]:o)}:o}):t=[DMe];var n=-1;t=ME(t,yMe(mMe));var a=xMe(e,function(o,i,l){var s=ME(t,function(c){return c(o)});return{criteria:s,index:++n,value:o}});return bMe(a,function(o,i){return wMe(o,i,r)})}var $Me=FMe,SMe=dp,EMe=$Me,CMe=Oc,aj=ju,TMe=CMe(function(e,t){if(e==null)return[];var r=t.length;return r>1&&aj(e,t[0],t[1])?t=[]:r>2&&aj(t[0],t[1],t[2])&&(t=[t[0]]),EMe(e,SMe(t,1),[])}),RMe=TMe,OMe=Qh,AMe=SE,kMe=yy,PMe=ju,NMe=IE,MMe=AE,LMe=li,zMe=4294967295;function BMe(e,t,r){return r&&typeof r!="number"&&PMe(e,t,r)&&(t=r=void 0),r=r===void 0?zMe:r>>>0,r?(e=LMe(e),e&&(typeof t=="string"||t!=null&&!NMe(t))&&(t=OMe(t),!t&&kMe(e))?AMe(MMe(e),0,r):e.split(t,r)):[]}var Dy=BMe,jMe=Sz,UMe=Qh,HMe=Mc,WMe=li;function VMe(e,t,r){return e=WMe(e),r=r==null?0:jMe(HMe(r),0,e.length),t=UMe(t),e.slice(r,r+t.length)==t}var KMe=VMe;function qMe(e,t){for(var r,n=-1,a=e.length;++n-1;);return r}var a5e=n5e,o5e=pp;function i5e(e,t){for(var r=-1,n=e.length;++r-1;);return r}var l5e=i5e,s5e=Qh,c5e=Ez,u5e=SE,d5e=a5e,f5e=l5e,ij=AE,p5e=li;function v5e(e,t,r){if(e=p5e(e),e&&(r||t===void 0))return c5e(e);if(!e||!(t=s5e(t)))return e;var n=ij(e),a=ij(t),o=f5e(n,a),i=d5e(n,a)+1;return u5e(n,o,i).join("")}var lj=v5e;function h5e(){}var g5e=h5e,zE=jz,_5e=g5e,m5e=uE,x5e=1/0,b5e=zE&&1/m5e(new zE([,-0]))[1]==x5e?function(e){return new zE(e)}:_5e,y5e=b5e,w5e=py,D5e=sE,I5e=cE,F5e=vy,$5e=y5e,S5e=uE,E5e=200;function C5e(e,t,r){var n=-1,a=D5e,o=e.length,i=!0,l=[],s=l;if(r)i=!1,a=I5e;else if(o>=E5e){var c=t?null:$5e(e);if(c)return S5e(c);i=!1,a=F5e,s=new w5e}else s=t?[]:l;e:for(;++n=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return o=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!o&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function W5e(e,t){var r;if(e){if(typeof e=="string")return uj(e,t);var n=At(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Il(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return uj(e,t)}}function uj(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0)return!1;if(r.length===0)return!0;for(var n in r)if(La(r,n))return!1;return isNaN(r)}}]),e}(),V5e=function(t){return t instanceof da},K5e=function(){if(window&&window.getSelection){var t=window.getSelection();return t&&t.toString()}else if(document){var r=document;if(r.selection&&r.selection.createRange)return r.selection.createRange().text}return""},dj=function(t){return $.isValidElement(t)||Za(t)||zr(t)||xy(t)||ut(t)},q5e=function(t){return!!(ut(t)||or(t)&&!t.length||Za(t)&&!t)},Y5e=function(t,r){for(var n=r||"1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",a="",o=t;o>0;){var i=Math.floor(Math.random()*n.length);a+=n[i],o--}return a},ci=function(t){var r=t&&t.toString();return!or(t)&&r-parseFloat(r)+1>=0},G5e=function(t){return ut(t)?[]:or(t)?t:[t]},jE=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:["onClick","onMouseEnter","onMouseLeave","onFocus","onBlur"];return xp(t,r)},bp={},X5e={get exports(){return bp},set exports(e){bp=e}};(function(e,t){(function(r,n){e.exports=n()})(On,function(){var r=1e3,n=6e4,a=36e5,o="millisecond",i="second",l="minute",s="hour",c="day",d="week",f="month",v="quarter",h="year",g="date",_="Invalid Date",w=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,b=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,y={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(k){var M=["th","st","nd","rd"],T=k%100;return"["+k+(M[(T-20)%10]||M[T]||M[0])+"]"}},D=function(k,M,T){var B=String(k);return!B||B.length>=M?k:""+Array(M+1-B.length).join(T)+k},F={s:D,z:function(k){var M=-k.utcOffset(),T=Math.abs(M),B=Math.floor(T/60),L=T%60;return(M<=0?"+":"-")+D(B,2,"0")+":"+D(L,2,"0")},m:function k(M,T){if(M.date()1)return k(X[0])}else{var ee=M.name;I[ee]=M,L=ee}return!B&&L&&(S=L),L||!B&&S},O=function(k,M){if(R(k))return k.clone();var T=typeof M=="object"?M:{};return T.date=k,T.args=arguments,new A(T)},N=F;N.l=P,N.i=R,N.w=function(k,M){return O(k,{locale:M.$L,utc:M.$u,x:M.$x,$offset:M.$offset})};var A=function(){function k(T){this.$L=P(T.locale,null,!0),this.parse(T),this.$x=this.$x||T.x||{},this[C]=!0}var M=k.prototype;return M.parse=function(T){this.$d=function(B){var L=B.date,K=B.utc;if(L===null)return new Date(NaN);if(N.u(L))return new Date;if(L instanceof Date)return new Date(L);if(typeof L=="string"&&!/Z$/i.test(L)){var X=L.match(w);if(X){var ee=X[2]-1||0,q=(X[7]||"0").substring(0,3);return K?new Date(Date.UTC(X[1],ee,X[3]||1,X[4]||0,X[5]||0,X[6]||0,q)):new Date(X[1],ee,X[3]||1,X[4]||0,X[5]||0,X[6]||0,q)}}return new Date(L)}(T),this.init()},M.init=function(){var T=this.$d;this.$y=T.getFullYear(),this.$M=T.getMonth(),this.$D=T.getDate(),this.$W=T.getDay(),this.$H=T.getHours(),this.$m=T.getMinutes(),this.$s=T.getSeconds(),this.$ms=T.getMilliseconds()},M.$utils=function(){return N},M.isValid=function(){return this.$d.toString()!==_},M.isSame=function(T,B){var L=O(T);return this.startOf(B)<=L&&L<=this.endOf(B)},M.isAfter=function(T,B){return O(T)68?1900:2e3)},c=function(_){return function(w){this[_]=+w}},d=[/[+-]\d\d:?(\d\d)?|Z/,function(_){(this.zone||(this.zone={})).offset=function(w){if(!w||w==="Z")return 0;var b=w.match(/([+-]|\d\d)/g),y=60*b[1]+(+b[2]||0);return y===0?0:b[0]==="+"?-y:y}(_)}],f=function(_){var w=l[_];return w&&(w.indexOf?w:w.s.concat(w.f))},v=function(_,w){var b,y=l.meridiem;if(y){for(var D=1;D<=24;D+=1)if(_.indexOf(y(D,0,w))>-1){b=D>12;break}}else b=_===(w?"pm":"PM");return b},h={A:[i,function(_){this.afternoon=v(_,!1)}],a:[i,function(_){this.afternoon=v(_,!0)}],S:[/\d/,function(_){this.milliseconds=100*+_}],SS:[a,function(_){this.milliseconds=10*+_}],SSS:[/\d{3}/,function(_){this.milliseconds=+_}],s:[o,c("seconds")],ss:[o,c("seconds")],m:[o,c("minutes")],mm:[o,c("minutes")],H:[o,c("hours")],h:[o,c("hours")],HH:[o,c("hours")],hh:[o,c("hours")],D:[o,c("day")],DD:[a,c("day")],Do:[i,function(_){var w=l.ordinal,b=_.match(/\d+/);if(this.day=b[0],w)for(var y=1;y<=31;y+=1)w(y).replace(/\[|\]/g,"")===_&&(this.day=y)}],M:[o,c("month")],MM:[a,c("month")],MMM:[i,function(_){var w=f("months"),b=(f("monthsShort")||w.map(function(y){return y.slice(0,3)})).indexOf(_)+1;if(b<1)throw new Error;this.month=b%12||b}],MMMM:[i,function(_){var w=f("months").indexOf(_)+1;if(w<1)throw new Error;this.month=w%12||w}],Y:[/[+-]?\d+/,c("year")],YY:[a,function(_){this.year=s(_)}],YYYY:[/\d{4}/,c("year")],Z:d,ZZ:d};function g(_){var w,b;w=_,b=l&&l.formats;for(var y=(_=w.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(P,O,N){var A=N&&N.toUpperCase();return O||b[N]||r[N]||b[A].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(z,k,M){return k||M.slice(1)})})).match(n),D=y.length,F=0;F-1)return new Date((B==="X"?1e3:1)*T);var K=g(B)(T),X=K.year,ee=K.month,q=K.day,G=K.hours,W=K.minutes,V=K.seconds,Y=K.milliseconds,Z=K.zone,te=new Date,J=q||(X||ee?1:te.getDate()),ae=X||te.getFullYear(),re=0;X&&!ee||(re=ee>0?ee-1:te.getMonth());var ie=G||0,ve=W||0,oe=V||0,fe=Y||0;return Z?new Date(Date.UTC(ae,re,J,ie,ve,oe,fe+60*Z.offset*1e3)):L?new Date(Date.UTC(ae,re,J,ie,ve,oe,fe)):new Date(ae,re,J,ie,ve,oe,fe)}catch{return new Date("")}}(S,R,I),this.init(),A&&A!==!0&&(this.$L=this.locale(A).$L),N&&S!=this.format(R)&&(this.$d=new Date("")),l={}}else if(R instanceof Array)for(var z=R.length,k=1;k<=z;k+=1){C[1]=R[k-1];var M=b.apply(this,C);if(M.isValid()){this.$d=M.$d,this.$L=M.$L,this.init();break}k===z&&(this.$d=new Date(""))}else D.call(this,F)}}})})(nLe);const fj=Ey;var Cy={},aLe={get exports(){return Cy},set exports(e){Cy=e}};(function(e,t){(function(r,n){e.exports=n()})(On,function(){var r={year:0,month:1,day:2,hour:3,minute:4,second:5},n={};return function(a,o,i){var l,s=function(v,h,g){g===void 0&&(g={});var _=new Date(v),w=function(b,y){y===void 0&&(y={});var D=y.timeZoneName||"short",F=b+"|"+D,S=n[F];return S||(S=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:b,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:D}),n[F]=S),S}(h,g);return w.formatToParts(_)},c=function(v,h){for(var g=s(v,h),_=[],w=0;w=0&&(_[F]=parseInt(D,10))}var S=_[3],I=S===24?0:S,C=_[0]+"-"+_[1]+"-"+_[2]+" "+I+":"+_[4]+":"+_[5]+":000",R=+v;return(i.utc(C).valueOf()-(R-=R%1e3))/6e4},d=o.prototype;d.tz=function(v,h){v===void 0&&(v=l);var g=this.utcOffset(),_=this.toDate(),w=_.toLocaleString("en-US",{timeZone:v}),b=Math.round((_-new Date(w))/1e3/60),y=i(w,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(15*-Math.round(_.getTimezoneOffset()/15)-b,!0);if(h){var D=y.utcOffset();y=y.add(g-D,"minute")}return y.$x.$timezone=v,y},d.offsetName=function(v){var h=this.$x.$timezone||i.tz.guess(),g=s(this.valueOf(),h,{timeZoneName:v}).find(function(_){return _.type.toLowerCase()==="timezonename"});return g&&g.value};var f=d.startOf;d.startOf=function(v,h){if(!this.$x||!this.$x.$timezone)return f.call(this,v,h);var g=i(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return f.call(g,v,h).tz(this.$x.$timezone,!0)},i.tz=function(v,h,g){var _=g&&h,w=g||h||l,b=c(+i(),w);if(typeof v!="string")return i(v).tz(w);var y=function(I,C,R){var P=I-60*C*1e3,O=c(P,R);if(C===O)return[P,C];var N=c(P-=60*(O-C)*1e3,R);return O===N?[P,O]:[I-60*Math.min(O,N)*1e3,Math.max(O,N)]}(i.utc(v,_).valueOf(),b,w),D=y[0],F=y[1],S=i(D).utcOffset(F);return S.$x.$timezone=w,S},i.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},i.tz.setDefault=function(v){l=v}}})})(aLe);const oLe=Cy;var Ty={},iLe={get exports(){return Ty},set exports(e){Ty=e}};(function(e,t){(function(r,n){e.exports=n()})(On,function(){var r="minute",n=/[+-]\d\d(?::?\d\d)?/g,a=/([+-]|\d\d)/g;return function(o,i,l){var s=i.prototype;l.utc=function(_){var w={date:_,utc:!0,args:arguments};return new i(w)},s.utc=function(_){var w=l(this.toDate(),{locale:this.$L,utc:!0});return _?w.add(this.utcOffset(),r):w},s.local=function(){return l(this.toDate(),{locale:this.$L,utc:!1})};var c=s.parse;s.parse=function(_){_.utc&&(this.$u=!0),this.$utils().u(_.$offset)||(this.$offset=_.$offset),c.call(this,_)};var d=s.init;s.init=function(){if(this.$u){var _=this.$d;this.$y=_.getUTCFullYear(),this.$M=_.getUTCMonth(),this.$D=_.getUTCDate(),this.$W=_.getUTCDay(),this.$H=_.getUTCHours(),this.$m=_.getUTCMinutes(),this.$s=_.getUTCSeconds(),this.$ms=_.getUTCMilliseconds()}else d.call(this)};var f=s.utcOffset;s.utcOffset=function(_,w){var b=this.$utils().u;if(b(_))return this.$u?0:b(this.$offset)?f.call(this):this.$offset;if(typeof _=="string"&&(_=function(S){S===void 0&&(S="");var I=S.match(n);if(!I)return null;var C=(""+I[0]).match(a)||["-",0,0],R=C[0],P=60*+C[1]+ +C[2];return P===0?0:R==="+"?P:-P}(_),_===null))return this;var y=Math.abs(_)<=16?60*_:_,D=this;if(w)return D.$offset=y,D.$u=_===0,D;if(_!==0){var F=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(D=this.local().add(y+F,r)).$offset=y,D.$x.$localOffset=F}else D=this.utc();return D};var v=s.format;s.format=function(_){var w=_||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return v.call(this,w)},s.valueOf=function(){var _=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*_},s.isUTC=function(){return!!this.$u},s.toISOString=function(){return this.toDate().toISOString()},s.toString=function(){return this.toDate().toUTCString()};var h=s.toDate;s.toDate=function(_){return _==="s"&&this.$offset?l(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():h.call(this)};var g=s.diff;s.diff=function(_,w,b){if(_&&this.$u===_.$u)return g.call(this,_,w,b);var y=this.local(),D=l(_).local();return g.call(y,D,w,b)}}})})(iLe);const lLe=Ty;var pj="YYYY-MM-DD HH:mm:ss";Dn.locale(ue(ue({},rLe),{weekStart:1})),Dn.extend(fj),Dn.extend(Q5e),Dn.extend(eLe),Dn.extend(lLe),Dn.extend(oLe),Dn.extend(fj);var vj=function(t,r){if(r){var n=Dn.tz(t,r).format(pj);return Dn(n).toDate()}return t},UE=function(t){var r=vj(Dn().toDate(),t);return Dn(r)},sLe={getNow:function(t){return UE(t)},getFixedDate:function(t){return Dn(t,"YYYY-MM-DD")},getStart:function(t,r){return Dn(t).startOf(r)},getEnd:function(t,r){return Dn(t).endOf(r)},getEndDate:function(t){return t.endOf("month")},getWeekDay:function(t){return t.weekday()+t.localeData().firstDayOfWeek()},getYear:function(t){return t.year()},getMonth:function(t){return t.month()},getDate:function(t){return t.date()},getHour:function(t){return t.hour()},getMinute:function(t){return t.minute()},getSecond:function(t){return t.second()},addYear:function(t,r){return t.add(r,"year")},addMonth:function(t,r){return t.add(r,"month")},addDate:function(t,r){return t.add(r,"day")},setYear:function(t,r){return t.year(r)},setMonth:function(t,r){return t.month(r)},setDate:function(t,r){return t.date(r)},setHour:function(t,r,n,a){var o=t.hour(r);return ut(n)||(o=o.minute(n)),ut(a)||(o=o.second(a)),o},setMinute:function(t,r){return t.minute(r)},setSecond:function(t,r){return t.second(r)},setMillisecond:function(t,r){return t.millisecond(r)},isAfter:function(t,r){return t.isAfter(r)},isValidate:function(t){return t.isValid()},getWeekFirstDay:function(){return UE().localeData().firstDayOfWeek()},getWeekFirstDate:function(t){return t.weekday(0)},getShortWeekDays:function(){return UE().localeData().weekdaysMin()},format:function(t,r){return t.format(r)},parse:function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,a=Dn(t,r,n);return a.isValid()?a:null},toDate:function(t){return t.toDate()},toDayjs:function(t){return Dn(t)},getRealTimeZoneDayjs:function(t,r){if(r){var n=Dn(t).format(pj);return Dn.tz(n,r)}return Dn(t)},tz:function(t,r){return Dn.tz(t,r)},localDateToTimezoneDate:vj,isDayjs:function(t){return Dn.isDayjs(t)}};const Kn=sLe;var tg={},cLe={get exports(){return tg},set exports(e){tg=e}},HE={},uLe={get exports(){return HE},set exports(e){HE=e}},hj=` -\v\f\r                 \u2028\u2029\uFEFF`,dLe=Dr,fLe=vs,pLe=ai,WE=hj,gj=dLe("".replace),vLe=RegExp("^["+WE+"]+"),hLe=RegExp("(^|[^"+WE+"])["+WE+"]+$"),VE=function(e){return function(t){var r=pLe(fLe(t));return e&1&&(r=gj(r,vLe,"")),e&2&&(r=gj(r,hLe,"$1")),r}},gLe={start:VE(1),end:VE(2),trim:VE(3)},_Le=i5.PROPER,mLe=vr,_j=hj,mj="​…᠎",xLe=function(e){return mLe(function(){return!!_j[e]()||mj[e]()!==mj||_Le&&_j[e].name!==e})},bLe=Re,yLe=gLe.trim,wLe=xLe;bLe({target:"String",proto:!0,forced:wLe("trim")},{trim:function(){return yLe(this)}});var DLe=ca,ILe=DLe("String","trim"),FLe=Sn,$Le=ILe,KE=String.prototype,SLe=function(e){var t=e.trim;return typeof e=="string"||e===KE||FLe(KE,e)&&t===KE.trim?$Le:t},ELe=SLe,CLe=ELe,TLe=CLe,RLe=TLe,OLe=RLe,ALe=OLe;(function(e){e.exports=ALe})(uLe),function(e){e.exports=HE}(cLe);const yp=qt(tg);var Ry={},kLe={get exports(){return Ry},set exports(e){Ry=e}},qE={},PLe={get exports(){return qE},set exports(e){qE=e}},NLe=vr,YE=!NLe(function(){return Object.isExtensible(Object.preventExtensions({}))}),Vu={},MLe={get exports(){return Vu},set exports(e){Vu=e}},LLe=vr,zLe=LLe(function(){if(typeof ArrayBuffer=="function"){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}),BLe=vr,jLe=dn,ULe=wl,xj=zLe,Oy=Object.isExtensible,HLe=BLe(function(){Oy(1)}),WLe=HLe||xj?function(t){return!jLe(t)||xj&&ULe(t)==="ArrayBuffer"?!1:Oy?Oy(t):!0}:Oy,VLe=Re,KLe=Dr,qLe=Dh,YLe=dn,GE=Vn,GLe=po.f,bj=$h,XLe=$$,XE=WLe,ZLe=Kb,QLe=YE,yj=!1,Ds=ZLe("meta"),JLe=0,ZE=function(e){GLe(e,Ds,{value:{objectID:"O"+JLe++,weakData:{}}})},eze=function(e,t){if(!YLe(e))return typeof e=="symbol"?e:(typeof e=="string"?"S":"P")+e;if(!GE(e,Ds)){if(!XE(e))return"F";if(!t)return"E";ZE(e)}return e[Ds].objectID},tze=function(e,t){if(!GE(e,Ds)){if(!XE(e))return!0;if(!t)return!1;ZE(e)}return e[Ds].weakData},rze=function(e){return QLe&&yj&&XE(e)&&!GE(e,Ds)&&ZE(e),e},nze=function(){aze.enable=function(){},yj=!0;var e=bj.f,t=KLe([].splice),r={};r[Ds]=1,e(r).length&&(bj.f=function(n){for(var a=e(n),o=0,i=a.length;o1&&arguments[1]!==void 0?arguments[1]:null;if(!r)return!1;if(r.contains)return r.contains(n);for(var a=n;a;){if(a===r)return!0;a=a.parentNode}return!1}}]),e}(),rg={},yze={get exports(){return rg},set exports(e){rg=e}},r6={},wze={get exports(){return r6},set exports(e){r6=e}},Dze=Re,Ize=_n,Fze=Vu,$ze=vr,Sze=Dc,Eze=ii,Cze=V0,Tze=mn,Rze=dn,Oze=wc,Aze=Fc,kze=po.f,Pze=Ec.forEach,Nze=sa,Fj=$c,Mze=Fj.set,Lze=Fj.getterFor,n6=function(e,t,r){var n=e.indexOf("Map")!==-1,a=e.indexOf("Weak")!==-1,o=n?"set":"add",i=Ize[e],l=i&&i.prototype,s={},c;if(!Nze||!Tze(i)||!(a||l.forEach&&!$ze(function(){new i().entries().next()})))c=r.getConstructor(t,e,n,o),Fze.enable();else{c=t(function(v,h){Mze(Cze(v,d),{type:e,collection:new i}),Oze(h)||Eze(h,v[o],{that:v,AS_ENTRIES:n})});var d=c.prototype,f=Lze(e);Pze(["add","clear","delete","forEach","get","has","set","keys","values","entries"],function(v){var h=v==="add"||v==="set";v in l&&!(a&&v==="clear")&&Sze(d,v,function(g,_){var w=f(this).collection;if(!h&&a&&!Rze(g))return v==="get"?void 0:!1;var b=w[v](g===0?0:g,_);return h?this:b})}),a||kze(d,"size",{configurable:!0,get:function(){return f(this).collection.size}})}return Aze(c,e,!1,!0),s[e]=c,Dze({global:!0,forced:!0},s),a||r.setStrong(c,e,n),c},zze=Bf,a6=function(e,t,r){for(var n in t)r&&r.unsafe&&e[n]?e[n]=t[n]:zze(e,n,t[n],r);return e},$j=Au,Bze=S$,Sj=a6,jze=kn,Uze=V0,Hze=wc,Wze=ii,Vze=G$,Ay=X$,Kze=hL,ng=sa,Ej=Vu.fastKey,Cj=$c,Tj=Cj.set,o6=Cj.getterFor,Rj={getConstructor:function(e,t,r,n){var a=e(function(c,d){Uze(c,o),Tj(c,{type:t,index:$j(null),first:void 0,last:void 0,size:0}),ng||(c.size=0),Hze(d)||Wze(d,c[n],{that:c,AS_ENTRIES:r})}),o=a.prototype,i=o6(t),l=function(c,d,f){var v=i(c),h=s(c,d),g,_;return h?h.value=f:(v.last=h={index:_=Ej(d,!0),key:d,value:f,previous:g=v.last,next:void 0,removed:!1},v.first||(v.first=h),g&&(g.next=h),ng?v.size++:c.size++,_!=="F"&&(v.index[_]=h)),c},s=function(c,d){var f=i(c),v=Ej(d),h;if(v!=="F")return f.index[v];for(h=f.first;h;h=h.next)if(h.key===d)return h};return Sj(o,{clear:function(){for(var d=this,f=i(d),v=f.first;v;)v.removed=!0,v.previous&&(v.previous=v.previous.next=void 0),v=v.next;f.first=f.last=void 0,f.index=$j(null),ng?f.size=0:d.size=0},delete:function(c){var d=this,f=i(d),v=s(d,c);if(v){var h=v.next,g=v.previous;delete f.index[v.index],v.removed=!0,g&&(g.next=h),h&&(h.previous=g),f.first===v&&(f.first=h),f.last===v&&(f.last=g),ng?f.size--:d.size--}return!!v},forEach:function(d){for(var f=i(this),v=jze(d,arguments.length>1?arguments[1]:void 0),h;h=h?h.next:f.first;)for(v(h.value,h.key,this);h&&h.removed;)h=h.previous},has:function(d){return!!s(this,d)}}),Sj(o,r?{get:function(d){var f=s(this,d);return f&&f.value},set:function(d,f){return l(this,d===0?0:d,f)}}:{add:function(d){return l(this,d=d===0?0:d,d)}}),ng&&Bze(o,"size",{configurable:!0,get:function(){return i(this).size}}),a},setStrong:function(e,t,r){var n=t+" Iterator",a=o6(t),o=o6(n);Vze(e,t,function(i,l){Tj(this,{type:n,target:i,state:a(i),kind:l,last:void 0})},function(){for(var i=o(this),l=i.kind,s=i.last;s&&s.removed;)s=s.previous;return!i.target||!(i.last=s=s?s.next:i.state.first)?(i.target=void 0,Ay(void 0,!0)):Ay(l==="keys"?s.key:l==="values"?s.value:[s.key,s.value],!1)},r?"entries":"values",!r,!0),Kze(t)}},qze=n6,Yze=Rj;qze("Map",function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}},Yze);var i6=function(e,t){return t===1?function(r,n){return r[e](n)}:function(r,n,a){return r[e](n,a)}},Gze=ta,ky=i6,Oj=Gze("Map"),Gi={Map:Oj,set:ky("set",2),get:ky("get",1),has:ky("has",1),remove:ky("delete",1),proto:Oj.prototype},Xze=Re,Zze=Dr,Qze=Wn,Jze=vs,e7e=ii,Py=Gi,t7e=s8,r7e=Py.Map,n7e=Py.has,a7e=Py.get,o7e=Py.set,i7e=Zze([].push);Xze({target:"Map",stat:!0,forced:t7e},{groupBy:function(t,r){Jze(t),Qze(r);var n=new r7e,a=0;return e7e(t,function(o){var i=r(o,a++);n7e(n,i)?i7e(a7e(n,i),o):o7e(n,i,[o])}),n}});var l7e=xn,s7e=l7e.Map,c7e=s7e,u7e=c7e,d7e=u7e,f7e=d7e,p7e=kn,v7e=xa,h7e=Ma,g7e=ii,l6=function(e,t,r){return function(a){var o=h7e(a),i=arguments.length,l=i>1?arguments[1]:void 0,s=l!==void 0,c=s?p7e(l,i>2?arguments[2]:void 0):void 0,d=new e,f=0;return g7e(o,function(v){var h=s?c(v,f++):v;r?t(d,v7e(h)[0],h[1]):t(d,h)}),d}},_7e=Re,Aj=Gi,m7e=l6;_7e({target:"Map",stat:!0,forced:!0},{from:m7e(Aj.Map,Aj.set,!0)});var x7e=xa,s6=function(e,t,r){return function(){for(var a=new e,o=arguments.length,i=0;i1?arguments[1]:void 0);return N7e(r,function(a,o){if(!n(a,o,r))return!1},!0)!==!1}});var M7e=Re,L7e=kn,z7e=mo,Nj=Gi,B7e=Rl,j7e=Nj.Map,U7e=Nj.set;M7e({target:"Map",proto:!0,real:!0,forced:!0},{filter:function(t){var r=z7e(this),n=L7e(t,arguments.length>1?arguments[1]:void 0),a=new j7e;return B7e(r,function(o,i){n(o,i,r)&&U7e(a,i,o)}),a}});var H7e=Re,W7e=kn,V7e=mo,K7e=Rl;H7e({target:"Map",proto:!0,real:!0,forced:!0},{find:function(t){var r=V7e(this),n=W7e(t,arguments.length>1?arguments[1]:void 0),a=K7e(r,function(o,i){if(n(o,i,r))return{value:o}},!0);return a&&a.value}});var q7e=Re,Y7e=kn,G7e=mo,X7e=Rl;q7e({target:"Map",proto:!0,real:!0,forced:!0},{findKey:function(t){var r=G7e(this),n=Y7e(t,arguments.length>1?arguments[1]:void 0),a=X7e(r,function(o,i){if(n(o,i,r))return{key:i}},!0);return a&&a.key}});var Z7e=function(e,t){return e===t||e!==e&&t!==t},Q7e=Re,J7e=Z7e,eBe=mo,tBe=Rl;Q7e({target:"Map",proto:!0,real:!0,forced:!0},{includes:function(t){return tBe(eBe(this),function(r){if(J7e(r,t))return!0},!0)===!0}});var rBe=Re,nBe=kr,aBe=ii,oBe=mn,Mj=Wn,iBe=Gi.Map;rBe({target:"Map",stat:!0,forced:!0},{keyBy:function(t,r){var n=oBe(this)?this:iBe,a=new n;Mj(r);var o=Mj(a.set);return aBe(t,function(i){nBe(o,a,r(i),i)}),a}});var lBe=Re,sBe=mo,cBe=Rl;lBe({target:"Map",proto:!0,real:!0,forced:!0},{keyOf:function(t){var r=cBe(sBe(this),function(n,a){if(n===t)return{key:a}},!0);return r&&r.key}});var uBe=Re,dBe=kn,fBe=mo,Lj=Gi,pBe=Rl,vBe=Lj.Map,hBe=Lj.set;uBe({target:"Map",proto:!0,real:!0,forced:!0},{mapKeys:function(t){var r=fBe(this),n=dBe(t,arguments.length>1?arguments[1]:void 0),a=new vBe;return pBe(r,function(o,i){hBe(a,n(o,i,r),o)}),a}});var gBe=Re,_Be=kn,mBe=mo,zj=Gi,xBe=Rl,bBe=zj.Map,yBe=zj.set;gBe({target:"Map",proto:!0,real:!0,forced:!0},{mapValues:function(t){var r=mBe(this),n=_Be(t,arguments.length>1?arguments[1]:void 0),a=new bBe;return xBe(r,function(o,i){yBe(a,i,n(o,i,r))}),a}});var wBe=Re,DBe=mo,IBe=ii,FBe=Gi.set;wBe({target:"Map",proto:!0,real:!0,arity:1,forced:!0},{merge:function(t){for(var r=DBe(this),n=arguments.length,a=0;a1?arguments[1]:void 0);return kBe(r,function(a,o){if(n(a,o,r))return!0},!0)===!0}});var PBe=Re,Bj=Wn,NBe=mo,u6=Gi,MBe=TypeError,LBe=u6.get,zBe=u6.has,BBe=u6.set;PBe({target:"Map",proto:!0,real:!0,forced:!0},{update:function(t,r){var n=NBe(this),a=arguments.length;Bj(r);var o=zBe(n,t);if(!o&&a<3)throw new MBe("Updating absent value");var i=o?LBe(n,t):Bj(a>2?arguments[2]:void 0)(t,n);return BBe(n,t,r(i,t,n)),n}});var Ny=kr,d6=Wn,My=mn,jBe=xa,UBe=TypeError,f6=function(t,r){var n=jBe(this),a=d6(n.get),o=d6(n.has),i=d6(n.set),l=arguments.length>2?arguments[2]:void 0,s;if(!My(r)&&!My(l))throw new UBe("At least one callback required");return Ny(o,n,t)?(s=Ny(a,n,t),My(r)&&(s=r(s),Ny(i,n,t,s))):My(l)&&(s=l(),Ny(i,n,t,s)),s},HBe=Re,WBe=f6;HBe({target:"Map",proto:!0,real:!0,forced:!0},{upsert:WBe});var VBe=Re,KBe=f6;VBe({target:"Map",proto:!0,real:!0,name:"upsert",forced:!0},{updateOrInsert:KBe});var qBe=f7e,YBe=qBe;(function(e){e.exports=YBe})(wze),function(e){e.exports=r6}(yze);const fa=qt(rg);var Ly={},GBe={get exports(){return Ly},set exports(e){Ly=e}},p6={},XBe={get exports(){return p6},set exports(e){p6=e}},ZBe=Re,QBe=Ec.find,jj="find",Uj=!0;jj in[]&&Array(1)[jj](function(){Uj=!1}),ZBe({target:"Array",proto:!0,forced:Uj},{find:function(t){return QBe(this,t,arguments.length>1?arguments[1]:void 0)}});var JBe=ca,eje=JBe("Array","find"),tje=Sn,rje=eje,v6=Array.prototype,nje=function(e){var t=e.find;return e===v6||tje(v6,e)&&t===v6.find?rje:t},aje=nje,oje=aje,ije=oje,lje=ije,sje=lje,cje=sje;(function(e){e.exports=cje})(XBe),function(e){e.exports=p6}(GBe);const uje=qt(Ly);var Hj="jdy-design-theme-key",zy=function(){var t=document.querySelector("head");return t||document.body},Wj=function(t,r){var n=document.createElement("style");n.innerHTML=t;var a=r||zy();return a.appendChild(n),n},h6=new fa,Vj=function(t,r){var n,a=r||zy(),o=h6.get(a);return o?uje(n=Il(o.children)).call(n,function(i){return i.tagName==="STYLE"&&i.getAttribute(Hj)===t}):null},Kj=function(t,r,n){var a=n||zy();if(!h6.has(a)){var o=Wj("",a),i=o.parentNode;h6.set(a,i),i.removeChild(o)}var l=Vj(r,a);if(l)return l.innerHTML!==t&&(l.innerHTML=t),l;var s=Wj(t,a);return s.setAttribute(Hj,r),s};function qj(e,t){var r=t||zy(),n=Vj(e,r);n&&r.removeChild(n)}function dje(e){return Qa.isDomElement(e)?e:e instanceof $.Component?Kr.findDOMNode(e):null}var By={},fje={get exports(){return By},set exports(e){By=e}},g6={},pje={get exports(){return g6},set exports(e){g6=e}},vje=Re;vje({target:"Number",stat:!0},{isNaN:function(t){return t!==t}});var hje=xn,gje=hje.Number.isNaN,_je=gje,mje=_je,xje=mje,bje=xje,yje=bje,wje=yje;(function(e){e.exports=wje})(pje),function(e){e.exports=g6}(fje);const Yj=qt(By);var _6;function Dje(e){if(typeof document>"u")return 0;if(e||_6===void 0){var t=document.createElement("div");t.style.width="100%",t.style.height="200px";var r=document.createElement("div"),n=r.style;n.position="absolute",n.top="0",n.left="0",n.pointerEvents="none",n.visibility="hidden",n.width="200px",n.height="150px",n.overflow="hidden",r.appendChild(t),document.body.appendChild(r);var a=t.offsetWidth;r.style.overflow="scroll";var o=t.offsetWidth;a===o&&(o=r.clientWidth),document.body.removeChild(r),_6=a-o}return _6}function Gj(e){var t=e.match(/^(.*)px$/),r=Number(t?.[1]);return Yj(r)?Dje():r}function Ije(e){if(typeof document>"u"||!e||!(e instanceof Element))return{width:0,height:0};var t=getComputedStyle(e,"::-webkit-scrollbar"),r=t.width,n=t.height;return{width:Gj(r),height:Gj(n)}}var Fje=m.isValidElement;function $je(e,t,r){return Fje(e)?m.cloneElement(e,typeof r=="function"?r(e.props||{}):r):t}function Xj(e,t){return $je(e,e,t)}var jy={},Sje={get exports(){return jy},set exports(e){jy=e}},m6={},Eje={get exports(){return m6},set exports(e){m6=e}},Cje=Re,Tje=Ec.filter,Rje=Fh,Oje=Rje("filter");Cje({target:"Array",proto:!0,forced:!Oje},{filter:function(t){return Tje(this,t,arguments.length>1?arguments[1]:void 0)}});var Aje=ca,kje=Aje("Array","filter"),Pje=Sn,Nje=kje,x6=Array.prototype,Mje=function(e){var t=e.filter;return e===x6||Pje(x6,e)&&t===x6.filter?Nje:t},Lje=Mje,zje=Lje,Bje=zje,jje=Bje,Uje=jje,Hje=Uje;(function(e){e.exports=Hje})(Eje),function(e){e.exports=m6}(Sje);const Ol=qt(jy);function Wje(e){if(tL(e))return e}var Uy={},Vje={get exports(){return Uy},set exports(e){Uy=e}},Kje=sa,qje=Ic,Yje=TypeError,Gje=Object.getOwnPropertyDescriptor,Xje=Kje&&!function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(e){return e instanceof TypeError}}(),Zj=Xje?function(e,t){if(qje(e)&&!Gje(e,"length").writable)throw new Yje("Cannot set read only .length");return e.length=t}:function(e,t){return e.length=t},Zje=Re,Qje=Ma,Jje=ni,e9e=Zj,t9e=a0,r9e=vr,n9e=r9e(function(){return[].push.call({length:4294967296},1)!==4294967297}),a9e=function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(e){return e instanceof TypeError}},o9e=n9e||!a9e();Zje({target:"Array",proto:!0,arity:1,forced:o9e},{push:function(t){var r=Qje(this),n=Jje(r),a=arguments.length;t9e(n+a);for(var o=0;o1&&arguments[1]!==void 0?arguments[1]:1;e9+=1;var n=e9;function a(o){if(o===0)t9(n),t();else{var i=Qj(function(){a(o-1)});w6.set(n,i)}}return a(r),n};r9.cancel=function(e){var t=w6.get(e);return t9(t),Jj(t)};const di=r9;function D9e(e){if(typeof MessageChannel>"u")di(e);else{var t=new MessageChannel;t.port1.onmessage=function(){return e()},t.port2.postMessage(void 0)}}function I9e(){var e=$.useRef(null),t=function(n){e.current||(e.current=[],D9e(function(){Kr.unstable_batchedUpdates(function(){mE(e.current,function(a){a()}),e.current=null})})),e.current.push(n)};return t}function ag(e,t){var r=$.useState(t),n=me(r,2),a=n[0],o=n[1],i=y6(function(l){e(function(){o(l)})});return[a,i]}var n9=m.useLayoutEffect,Ip=function(t,r){var n=m.useRef(!0);n9(function(){return t(n.current)},r),n9(function(){return n.current=!1,function(){n.current=!0}},[])};const og={locale:"zh-cn",dialog:{okText:"确定",cancelText:"取消",dragTip:"长按可拖拽窗口"},prompt:{okText:"确定",cancelText:"取消"},popConfirm:{okText:"确定",cancelText:"取消"},alert:{okText:"确定",cancelText:"取消"},check:{checkAll:"全选"},combo:{searchEmpty:"未搜索到数据",searchPlaceholder:"搜索",searching:"搜索中...",allCheck:"全选",allCheckInSearch:"搜索结果全选",emptyTip:"没有可选择的数据",loading:"正在加载",clickToLoadMore:"点击加载更多"},upload:{uploadText:"选择文件"},datetime:{clear:"清空",today:"今天",month:"本月",now:"此刻",ok:"确定",time:"时间",shortSun:"日",shortMon:"一",shortTue:"二",shortWed:"三",shortThu:"四",shortFri:"五",shortSat:"六",january:"一月",february:"二月",march:"三月",april:"四月",may:"五月",june:"六月",july:"七月",august:"八月",september:"九月",october:"十月",november:"十一月",december:"十二月",january_m:"1月",february_m:"2月",march_m:"3月",april_m:"4月",may_m:"5月",june_m:"6月",july_m:"7月",august_m:"8月",september_m:"9月",october_m:"10月",november_m:"11月",december_m:"12月",hour:"时",minute:"分",second:"秒"},cascader:{searchPlaceholder:"搜索",searchEmpty:"未搜索到数据",searching:"搜索中..."},filePreview:{download:"下载",noSupportPreview:"当前文件类型不支持在线预览",zoomIn:"放大",zoomOut:"缩小",rotateToRight:"向右旋转",viewOrigin:"查看原图",loading:"加载中,请稍后..."},pagination:{currentPage:"第 {page} 页"},colorPicker:{recommendColor:"推荐颜色",customColor:"自定义颜色",alpha:"透明度",noMessage:"暂无"},image:{preview:"预览"},typography:{edit:"编辑",copy:"复制",copied:"复制成功",expand:"展开"},select:{allCheck:"全选",allCheckInSearch:"搜索结果全选",emptyTip:"没有可选择的数据",searchPlaceholder:"搜索"},treeSelect:{emptyTip:"没有可选择的数据",searchPlaceholder:"搜索"}};var D6=m.createContext({locale:og}),F9e=function(t){var r=$.useContext(D6),n=r.locale,a=$.useMemo(function(){var o,i=og[t],l=(o=n?.[t])!==null&&o!==void 0?o:{};return ue(ue({},i),l||{})},[t,n]);return[a]};const Fp=F9e;function a9(e,t,r){var n=m.useRef({});return(!("value"in n.current)||r(n.current.condition,t))&&(n.current.value=e(),n.current.condition=t),n.current.value}var $9e=function(t,r){var n=r||{},a=n.defaultValue,o=n.value,i=n.onChange,l=n.postState,s=m.useState(function(){return o!==void 0?o:a!==void 0?a:t}),c=me(s,2),d=c[0],f=c[1],v=o!==void 0?o:d;l&&(v=l(v));var h=function(w,b){var y=typeof w=="function"?w(d):w;f(w),b?.invokeChange!==!1&&v!==w&&i&&i(y,v)},g=m.useRef(!0);return m.useEffect(function(){if(g.current){g.current=!1;return}o===void 0&&f(o)},[o]),[v,h]};const Is=$9e;var Al={},S9e={get exports(){return Al},set exports(e){Al=e}},I6={},E9e={get exports(){return I6},set exports(e){I6=e}},C9e=xn,T9e=C9e.Object.getOwnPropertySymbols,R9e=T9e,O9e=R9e,A9e=O9e,k9e=A9e,P9e=k9e,N9e=P9e;(function(e){e.exports=N9e})(E9e),function(e){e.exports=I6}(S9e);const Ue=qt(Al);var $r={},M9e={get exports(){return $r},set exports(e){$r=e}},L9e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",z9e=L9e,B9e=z9e;function o9(){}function i9(){}i9.resetWarningCache=o9;var j9e=function(){function e(n,a,o,i,l,s){if(s!==B9e){var c=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw c.name="Invariant Violation",c}}e.isRequired=e;function t(){return e}var r={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i9,resetWarningCache:o9};return r.PropTypes=r,r};M9e.exports=j9e();var l9=ue({},og),s9=function(){return l9},c9=function(t){l9=ue(ue({},og),t)};function U9e(e){var t=H9e();return function(){var n=Pr(e),a;if(t){var o=Pr(this).constructor;a=Pt(n,arguments,o)}else a=n.apply(this,arguments);return go(this,a)}}function H9e(){if(typeof Reflect>"u"||!Pt||Pt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Pt(Boolean,[],function(){})),!0}catch{return!1}}var u9=function(e){ho(r,e);var t=U9e(r);function r(n){var a;return Cr(this,r),a=t.call(this,n),c9(n.locale),a}return Tr(r,[{key:"componentDidUpdate",value:function(a){var o=this.props.locale;o!==a.locale&&c9(o)}},{key:"render",value:function(){var a=this.props,o=a.children,i=a.locale;return m.createElement(D6.Provider,{value:{locale:i}},o)}}]),r}(m.Component);u9.propTypes={locale:$r.object};const F6=u9;var W9e=function(t){var r=$.useContext(K9e),n=$.useMemo(function(){return t?typeof t=="string"||typeof t=="number"?t??r:t instanceof Function?t(r):r:r},[t,r]);return n};const xo=W9e;var d9=$.createContext(void 0),V9e=function(t){var r=t.children,n=t.size,a=xo(n);return $.createElement(d9.Provider,{value:a},r)};const K9e=d9;var Xi={},q9e={get exports(){return Xi},set exports(e){Xi=e}},$6={},Y9e={get exports(){return $6},set exports(e){$6=e}},G9e=Re,X9e=Ec.map,Z9e=Fh,Q9e=Z9e("map");G9e({target:"Array",proto:!0,forced:!Q9e},{map:function(t){return X9e(this,t,arguments.length>1?arguments[1]:void 0)}});var J9e=ca,eUe=J9e("Array","map"),tUe=Sn,rUe=eUe,S6=Array.prototype,nUe=function(e){var t=e.map;return e===S6||tUe(S6,e)&&t===S6.map?rUe:t},aUe=nUe,oUe=aUe,iUe=oUe,lUe=iUe,sUe=lUe,cUe=sUe;(function(e){e.exports=cUe})(Y9e),function(e){e.exports=$6}(q9e);const Ct=qt(Xi);var f9,uUe=_t(f9="-fd-".concat(Date.now(),"-")).call(f9,Math.random()),E6=function(t){return t.replace(/([a-z])([A-Z(\d+)])/g,"$1-$2").toLowerCase()},dUe=function(t,r){var n,a,o,i={},l="";gr(t?.token,function(d,f){d&&(i[E6(f)]=d)});var s=Ct(n=xs(i)).call(n,function(d){var f;return _t(f="--fd-".concat(d,": ")).call(f,i[d],";")}),c=t?.scope||":root";return l+=yp(a=_t(o="".concat(c," {")).call(o,s.join(""),"}")).call(a),gr(t?.components,function(d,f){var v,h,g,_,w=E6(f),b={};gr(d,function(D,F){if(D){var S;b[_t(S="".concat(w,"-")).call(S,E6(F))]=D}});var y=Ct(v=xs(b)).call(v,function(D){var F;return _t(F="--fd-".concat(D,": ")).call(F,b[D],";")});l+=` -`,l+=yp(h=_t(g=_t(_=".".concat(r??$p,"-")).call(_,w,"-css-var {")).call(g,y.join(""),"}")).call(h)}),l},fUe=function(t,r,n){var a=dUe(t,n);Kj(a,"".concat(uUe,"-dynamic-theme"),r)},p9=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a1?arguments[1]:void 0)}});var wUe=ca,DUe=wUe("Array","includes"),IUe=dn,FUe=wl,$Ue=an,SUe=$Ue("match"),EUe=function(e){var t;return IUe(e)&&((t=e[SUe])!==void 0?!!t:FUe(e)==="RegExp")},CUe=EUe,TUe=TypeError,RUe=function(e){if(CUe(e))throw new TUe("The method doesn't accept regular expressions");return e},OUe=an,AUe=OUe("match"),kUe=function(e){var t=/./;try{"/./"[e](t)}catch{try{return t[AUe]=!1,"/./"[e](t)}catch{}}return!1},PUe=Re,NUe=Dr,MUe=RUe,LUe=vs,x9=ai,zUe=kUe,BUe=NUe("".indexOf);PUe({target:"String",proto:!0,forced:!zUe("includes")},{includes:function(t){return!!~BUe(x9(LUe(this)),x9(MUe(t)),arguments.length>1?arguments[1]:void 0)}});var jUe=ca,UUe=jUe("String","includes"),b9=Sn,HUe=DUe,WUe=UUe,R6=Array.prototype,O6=String.prototype,VUe=function(e){var t=e.includes;return e===R6||b9(R6,e)&&t===R6.includes?HUe:typeof e=="string"||e===O6||b9(O6,e)&&t===O6.includes?WUe:t},KUe=VUe,qUe=KUe,YUe=qUe,GUe=YUe,XUe=GUe,ZUe=XUe;(function(e){e.exports=ZUe})(_Ue),function(e){e.exports=T6}(gUe);const ya=qt(Sp);var y9=function(t,r,n){var a,o=t.key,i=document.activeElement;if(!(!i||!i.classList.contains(r)||!ya(a=[ko.DOWN,ko.UP]).call(a,o))){t.preventDefault();var l=0,s=n.childNodes||[];if(gr(s,function(d,f){d.contains(document.activeElement)&&(l=Number(f))}),o===ko.DOWN?l=Math.min(l+1,s.length-1):o===ko.UP&&(l=Math.max(l-1,0)),s[l]){var c=s[l].querySelector("[tabindex]");c&&c.focus()}}};function Ee(e,t,r){return t=N5(t),t in e?n0(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const QUe=Object.freeze(Object.defineProperty({__proto__:null,default:Ee},Symbol.toStringTag,{value:"Module"}));var JUe=`accept acceptCharset accessKey action allowFullScreen allowTransparency + */var jE=Symbol.for("react.element"),UE=Symbol.for("react.portal"),ry=Symbol.for("react.fragment"),ny=Symbol.for("react.strict_mode"),oy=Symbol.for("react.profiler"),ay=Symbol.for("react.provider"),iy=Symbol.for("react.context"),V_e=Symbol.for("react.server_context"),ly=Symbol.for("react.forward_ref"),sy=Symbol.for("react.suspense"),cy=Symbol.for("react.suspense_list"),uy=Symbol.for("react.memo"),dy=Symbol.for("react.lazy"),K_e=Symbol.for("react.offscreen"),Az;Az=Symbol.for("react.module.reference");function fi(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case jE:switch(e=e.type,e){case ry:case oy:case ny:case sy:case cy:return e;default:switch(e=e&&e.$$typeof,e){case V_e:case iy:case ly:case dy:case uy:case ay:return e;default:return t}}case UE:return t}}}Hr.ContextConsumer=iy,Hr.ContextProvider=ay,Hr.Element=jE,Hr.ForwardRef=ly,Hr.Fragment=ry,Hr.Lazy=dy,Hr.Memo=uy,Hr.Portal=UE,Hr.Profiler=oy,Hr.StrictMode=ny,Hr.Suspense=sy,Hr.SuspenseList=cy,Hr.isAsyncMode=function(){return!1},Hr.isConcurrentMode=function(){return!1},Hr.isContextConsumer=function(e){return fi(e)===iy},Hr.isContextProvider=function(e){return fi(e)===ay},Hr.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===jE},Hr.isForwardRef=function(e){return fi(e)===ly},Hr.isFragment=function(e){return fi(e)===ry},Hr.isLazy=function(e){return fi(e)===dy},Hr.isMemo=function(e){return fi(e)===uy},Hr.isPortal=function(e){return fi(e)===UE},Hr.isProfiler=function(e){return fi(e)===oy},Hr.isStrictMode=function(e){return fi(e)===ny},Hr.isSuspense=function(e){return fi(e)===sy},Hr.isSuspenseList=function(e){return fi(e)===cy},Hr.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===ry||e===oy||e===ny||e===sy||e===cy||e===K_e||typeof e=="object"&&e!==null&&(e.$$typeof===dy||e.$$typeof===uy||e.$$typeof===ay||e.$$typeof===iy||e.$$typeof===ly||e.$$typeof===Az||e.getModuleId!==void 0)},Hr.typeOf=fi,function(e){e.exports=Hr}(W_e);var kz=function e(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=[];return E.Children.forEach(t,function(o){o==null&&!r.keepEmpty||(Array.isArray(o)?n=mt(n).call(n,e(o)):Gg.isFragment(o)&&o.props?n=mt(n).call(n,e(o.props.children,r)):n.push(o))}),n},Xg={},q_e={get exports(){return Xg},set exports(e){Xg=e}},fy={},Y_e={get exports(){return fy},set exports(e){fy=e}},G_e=Lr,Pz=So,X_e=R$,py=function(e,t,r){var n,o;Pz(e);try{if(n=X_e(e,"return"),!n){if(t==="throw")throw r;return r}n=G_e(n,e)}catch(a){o=!0,n=a}if(t==="throw")throw r;if(o)throw n;return Pz(n),r},Z_e=So,Q_e=py,J_e=function(e,t,r,n){try{return n?t(Z_e(r)[0],r[1]):t(r)}catch(o){Q_e(e,"throw",o)}},eme=cn,tme=Ku,rme=eme("iterator"),nme=Array.prototype,Nz=function(e){return e!==void 0&&(tme.Array===e||nme[rme]===e)},ome=ju,Mz=R$,ame=Oc,ime=Ku,lme=cn,sme=lme("iterator"),vy=function(e){if(!ame(e))return Mz(e,sme)||Mz(e,"@@iterator")||ime[ome(e)]},cme=Lr,ume=Zn,dme=So,fme=Ds,pme=vy,vme=TypeError,zz=function(e,t){var r=arguments.length<2?pme(e):t;if(ume(r))return dme(cme(r,e));throw new vme(fme(e)+" is not iterable")},gme=Un,hme=Lr,_me=Uo,mme=J_e,xme=Nz,bme=C0,yme=ui,Lz=z0,wme=zz,Dme=vy,Bz=Array,Ime=function(t){var r=_me(t),n=bme(this),o=arguments.length,a=o>1?arguments[1]:void 0,i=a!==void 0;i&&(a=gme(a,o>2?arguments[2]:void 0));var l=Dme(r),s=0,c,d,f,v,g,h;if(l&&!(this===Bz&&xme(l)))for(d=n?new this:[],v=wme(r,l),g=v.next;!(f=hme(g,v)).done;s++)h=i?mme(v,a,[f.value,s],!0):f.value,Lz(d,s,h);else for(c=yme(r),d=n?new this(c):Bz(c);c>s;s++)h=i?a(r[s],s):r[s],Lz(d,s,h);return d.length=s,d},Fme=cn,jz=Fme("iterator"),Uz=!1;try{var $me=0,Hz={next:function(){return{done:!!$me++}},return:function(){Uz=!0}};Hz[jz]=function(){return this},Array.from(Hz,function(){throw 2})}catch{}var Wz=function(e,t){try{if(!t&&!Uz)return!1}catch{return!1}var r=!1;try{var n={};n[jz]=function(){return{next:function(){return{done:r=!0}}}},e(n)}catch{}return r},Eme=Ne,Sme=Ime,Cme=Wz,Tme=!Cme(function(e){Array.from(e)});Eme({target:"Array",stat:!0,forced:Tme},{from:Sme});var Rme=hn,Ome=Rme.Array.from,Ame=Ome,kme=Ame,Pme=kme,Nme=Pme,Mme=Nme,zme=Mme;(function(e){e.exports=zme})(Y_e);const Vz=Vt(fy);(function(e){e.exports=fy})(q_e);const ol=Vt(Xg);var gy={},Lme={get exports(){return gy},set exports(e){gy=e}};(function(e){e.exports=Qf})(Lme);const qu=Vt(gy);var hy={},Bme={get exports(){return hy},set exports(e){hy=e}},_y={},jme={get exports(){return _y},set exports(e){_y=e}},Ume=vy,Hme=Ume,Wme=Hme,Vme=Wme,Kme=Vme,qme=Kme,Yme=qme,Gme=Yme;(function(e){e.exports=Gme})(jme);const Kz=Vt(_y);(function(e){e.exports=_y})(Bme);const Yu=Vt(hy);var HE={},Xme={get exports(){return HE},set exports(e){HE=e}},Zme=Ne,Qme=kc;Zme({target:"Array",stat:!0},{isArray:Qme});var Jme=hn,exe=Jme.Array.isArray,txe=exe,rxe=txe,nxe=rxe,oxe=nxe,axe=oxe,ixe=axe;(function(e){e.exports=ixe})(Xme);const qz=Vt(HE);function WE(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);rf;f++)if(g=x(e[f]),g&&rL(oL,g))return g;return new xy(!1)}c=Rbe(e,d)}for(h=a?e.next:c.next;!(_=$be(h,c)).done;){try{g=x(_.value)}catch(w){nL(c,"throw",w)}if(typeof g=="object"&&g&&rL(oL,g))return g}return new xy(!1)},kbe=di,Pbe=function(e,t){return e===void 0?arguments.length<2?"":t:kbe(e)},Nbe=Ne,Mbe=Nn,zbe=Yg,by=oz,Lbe=cbe,aL=Hu,YE=Ac,GE=zu,Bbe=fbe,jbe=Ibe,Ube=vi,Hbe=Pbe,Wbe=cn,Vbe=Wbe("toStringTag"),yy=Error,Kbe=[].push,ip=function(t,r){var n=Mbe(XE,this),o;by?o=by(new yy,n?zbe(this):XE):(o=n?this:aL(XE),YE(o,Vbe,"Error")),r!==void 0&&YE(o,"message",Hbe(r)),jbe(o,ip,o.stack,1),arguments.length>2&&Bbe(o,arguments[2]);var a=[];return Ube(t,Kbe,{that:a}),YE(o,"errors",a),o};by?by(ip,yy):Lbe(ip,yy,{name:!0});var XE=ip.prototype=aL(yy.prototype,{constructor:GE(1,ip),message:GE(1,""),name:GE(1,"AggregateError")});Nbe({global:!0,constructor:!0,arity:2},{AggregateError:ip});var qbe=In,Ybe=Ol,wy=Ybe(qbe.process)==="process",Gbe=lo,Xbe=lE,Zbe=cn,Qbe=io,iL=Zbe("species"),lL=function(e){var t=Gbe(e);Qbe&&t&&!t[iL]&&Xbe(t,iL,{configurable:!0,get:function(){return this}})},Jbe=Nn,e0e=TypeError,Dy=function(e,t){if(Jbe(t,e))return e;throw new e0e("Incorrect invocation")},sL=So,t0e=EM,r0e=Oc,n0e=cn,o0e=n0e("species"),cL=function(e,t){var r=sL(e).constructor,n;return r===void 0||r0e(n=sL(r)[o0e])?t:t0e(n)},a0e=TypeError,i0e=function(e,t){if(e0){if(++t>=eDe)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var oDe=nDe,aDe=Jwe,iDe=oDe,lDe=iDe(aDe),d7=lDe,sDe=hp,cDe=c7,uDe=d7;function dDe(e,t){return uDe(cDe(e,t,sDe),e+"")}var Uc=dDe,fDe=9007199254740991;function pDe(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=fDe}var FS=pDe,vDe=Fr,gDe=FS;function hDe(e){return e!=null&&gDe(e.length)&&!vDe(e)}var ll=hDe,_De=9007199254740991,mDe=/^(?:0|[1-9]\d*)$/;function xDe(e,t){var r=typeof e;return t=t??_De,!!t&&(r=="number"||r!="symbol"&&mDe.test(e))&&e>-1&&e%1==0&&e1?r[o-1]:void 0,i=o>2?r[2]:void 0;for(a=e.length>3&&typeof a=="function"?(o--,a):void 0,i&&$De(r[0],r[1],i)&&(a=o<3?void 0:a,o=1),t=Object(t);++n=t?e:t)),e}var x7=nFe,oFe=/\s/;function aFe(e){for(var t=e.length;t--&&oFe.test(e.charAt(t)););return t}var iFe=aFe,lFe=iFe,sFe=/^\s+/;function cFe(e){return e&&e.slice(0,lFe(e)+1).replace(sFe,"")}var b7=cFe,uFe=il,dFe=wa,fFe="[object Symbol]";function pFe(e){return typeof e=="symbol"||dFe(e)&&uFe(e)==fFe}var uh=pFe,vFe=b7,y7=En,gFe=uh,w7=0/0,hFe=/^[-+]0x[0-9a-f]+$/i,_Fe=/^0b[01]+$/i,mFe=/^0o[0-7]+$/i,xFe=parseInt;function bFe(e){if(typeof e=="number")return e;if(gFe(e))return w7;if(y7(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=y7(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=vFe(e);var r=_Fe.test(e);return r||mFe.test(e)?xFe(e.slice(2),r?2:8):hFe.test(e)?w7:+e}var SS=bFe,yFe=x7,CS=SS;function wFe(e,t,r){return r===void 0&&(r=t,t=void 0),r!==void 0&&(r=CS(r),r=r===r?r:0),t!==void 0&&(t=CS(t),t=t===t?t:0),yFe(CS(e),t,r)}var DFe=wFe;function IFe(){this.__data__=[],this.size=0}var FFe=IFe,$Fe=ih;function EFe(e,t){for(var r=e.length;r--;)if($Fe(e[r][0],t))return r;return-1}var Py=EFe,SFe=Py,CFe=Array.prototype,TFe=CFe.splice;function RFe(e){var t=this.__data__,r=SFe(t,e);if(r<0)return!1;var n=t.length-1;return r==n?t.pop():TFe.call(t,r,1),--this.size,!0}var OFe=RFe,AFe=Py;function kFe(e){var t=this.__data__,r=AFe(t,e);return r<0?void 0:t[r][1]}var PFe=kFe,NFe=Py;function MFe(e){return NFe(this.__data__,e)>-1}var zFe=MFe,LFe=Py;function BFe(e,t){var r=this.__data__,n=LFe(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}var jFe=BFe,UFe=FFe,HFe=OFe,WFe=PFe,VFe=zFe,KFe=jFe;function _p(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t0&&r(l)?t>1?oB(l,t-1,r,n,o):o3e(o,l):n||(o[o.length]=l)}return o}var Ip=oB,i3e=jy,l3e=Ip,s3e=By,c3e=lr;function u3e(){var e=arguments.length;if(!e)return[];for(var t=Array(e-1),r=arguments[0],n=e;n--;)t[n-1]=arguments[n];return i3e(c3e(r)?s3e(r):[r],l3e(t,1))}var Es=u3e,d3e=al,f3e=function(){return d3e.Date.now()},p3e=f3e,v3e=En,jS=p3e,aB=SS,g3e="Expected a function",h3e=Math.max,_3e=Math.min;function m3e(e,t,r){var n,o,a,i,l,s,c=0,d=!1,f=!1,v=!0;if(typeof e!="function")throw new TypeError(g3e);t=aB(t)||0,v3e(r)&&(d=!!r.leading,f="maxWait"in r,a=f?h3e(aB(r.maxWait)||0,t):a,v="trailing"in r?!!r.trailing:v);function g(F){var C=n,R=o;return n=o=void 0,c=F,i=e.apply(R,C),i}function h(F){return c=F,l=setTimeout(x,t),d?g(F):i}function _(F){var C=F-s,R=F-c,k=t-C;return f?_3e(k,a-R):k}function b(F){var C=F-s,R=F-c;return s===void 0||C>=t||C<0||f&&R>=a}function x(){var F=jS();if(b(F))return w(F);l=setTimeout(x,_(F))}function w(F){return l=void 0,v&&n?g(F):(n=o=void 0,i)}function D(){l!==void 0&&clearTimeout(l),c=0,n=s=o=l=void 0}function I(){return l===void 0?i:w(jS())}function $(){var F=jS(),C=b(F);if(n=arguments,o=this,s=F,C){if(l===void 0)return h(s);if(f)return clearTimeout(l),l=setTimeout(x,t),g(s)}return l===void 0&&(l=setTimeout(x,t)),i}return $.cancel=D,$.flush=I,$}var Fp=m3e,x3e="__lodash_hash_undefined__";function b3e(e){return this.__data__.set(e,x3e),this}var y3e=b3e;function w3e(e){return this.__data__.has(e)}var D3e=w3e,I3e=RS,F3e=y3e,$3e=D3e;function Wy(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new I3e;++t-1}var US=M3e;function z3e(e,t,r){for(var n=-1,o=e==null?0:e.length;++n=q3e&&(a=K3e,i=!1,t=new j3e(t));e:for(;++ol))return!1;var c=a.get(e),d=a.get(t);if(c&&d)return c==t&&d==e;var f=-1,v=!0,g=r&lCe?new nCe:void 0;for(a.set(e,t),a.set(t,e);++fo?0:o+t),r=r>o?o:r,r<0&&(r+=o),o=t>r?0:r-t>>>0,t>>>=0;for(var a=Array(o);++n-1?o[a?t[i]:i]:void 0}}var GRe=YRe,XRe=iB,ZRe=sl,QRe=Kc,JRe=Math.max;function eOe(e,t,r){var n=e==null?0:e.length;if(!n)return-1;var o=r==null?0:QRe(r);return o<0&&(o=JRe(n+o,0)),XRe(e,ZRe(t),o)}var zB=eOe,tOe=GRe,rOe=zB,nOe=tOe(rOe),e6=nOe,Xy={},oOe={get exports(){return Xy},set exports(e){Xy=e}};function aOe(e){return e&&e.length?e[0]:void 0}var iOe=aOe;(function(e){e.exports=iOe})(oOe);const lOe=Vt(Xy);var sOe=Ip;function cOe(e){var t=e==null?0:e.length;return t?sOe(e,1):[]}var t6=cOe;const uOe=t6;var dOe=Object.prototype,fOe=dOe.hasOwnProperty;function pOe(e,t){return e!=null&&fOe.call(e,t)}var vOe=pOe,gOe=vOe,hOe=RB;function _Oe(e,t){return e!=null&&hOe(e,t,gOe)}var Ho=_Oe,mOe=il,xOe=lr,bOe=wa,yOe="[object String]";function wOe(e){return typeof e=="string"||!xOe(e)&&bOe(e)&&mOe(e)==yOe}var aa=wOe,DOe=Nl;function IOe(e,t){return DOe(t,function(r){return e[r]})}var FOe=IOe,$Oe=FOe,EOe=Vc;function SOe(e){return e==null?[]:$Oe(e,EOe(e))}var r6=SOe,COe=$p,TOe=ll,ROe=aa,OOe=Kc,AOe=r6,kOe=Math.max;function POe(e,t,r,n){e=TOe(e)?e:AOe(e),r=r&&!n?OOe(r):0;var o=e.length;return r<0&&(r=kOe(o+r,0)),ROe(e)?r<=o&&e.indexOf(t,r)>-1:!!o&&COe(e,t,r)>-1}var rn=POe,NOe=$p,MOe=Kc,zOe=Math.max;function LOe(e,t,r){var n=e==null?0:e.length;if(!n)return-1;var o=r==null?0:MOe(r);return o<0&&(o=zOe(n+o,0)),NOe(e,t,o)}var n6=LOe,BOe=Vy,jOe=US,UOe=HS,HOe=Nl,WOe=$s,LB=Ky,VOe=Math.min;function KOe(e,t,r){for(var n=r?UOe:jOe,o=e[0].length,a=e.length,i=a,l=Array(a),s=1/0,c=[];i--;){var d=e[i];i&&t&&(d=HOe(d,WOe(t))),s=VOe(d.length,s),l[i]=!r&&(t||o>=120&&d.length>=120)?new BOe(i&&d):void 0}d=e[0];var f=-1,v=l[0];e:for(;++f1),a}),FNe(e,SNe(e),r),n&&(r=wNe(r,CNe|TNe|RNe,$Ne));for(var o=t.length;o--;)DNe(r,t[o]);return r}),Ts=ONe,ANe=9007199254740991,kNe=Math.floor;function PNe(e,t){var r="";if(!e||t<1||t>ANe)return r;do t%2&&(r+=e),t=kNe(t/2),t&&(e+=e);while(t);return r}var NNe=PNe,MNe=Yy;function zNe(e,t,r){var n=e.length;return r=r===void 0?n:r,!t&&r>=n?e:MNe(e,t,r)}var l6=zNe,LNe="\\ud800-\\udfff",BNe="\\u0300-\\u036f",jNe="\\ufe20-\\ufe2f",UNe="\\u20d0-\\u20ff",HNe=BNe+jNe+UNe,WNe="\\ufe0e\\ufe0f",VNe="\\u200d",KNe=RegExp("["+VNe+LNe+HNe+WNe+"]");function qNe(e){return KNe.test(e)}var Jy=qNe,YNe=AB,GNe=YNe("length"),XNe=GNe,Sj="\\ud800-\\udfff",ZNe="\\u0300-\\u036f",QNe="\\ufe20-\\ufe2f",JNe="\\u20d0-\\u20ff",e8e=ZNe+QNe+JNe,t8e="\\ufe0e\\ufe0f",r8e="["+Sj+"]",s6="["+e8e+"]",c6="\\ud83c[\\udffb-\\udfff]",n8e="(?:"+s6+"|"+c6+")",Cj="[^"+Sj+"]",Tj="(?:\\ud83c[\\udde6-\\uddff]){2}",Rj="[\\ud800-\\udbff][\\udc00-\\udfff]",o8e="\\u200d",Oj=n8e+"?",Aj="["+t8e+"]?",a8e="(?:"+o8e+"(?:"+[Cj,Tj,Rj].join("|")+")"+Aj+Oj+")*",i8e=Aj+Oj+a8e,l8e="(?:"+[Cj+s6+"?",s6,Tj,Rj,r8e].join("|")+")",kj=RegExp(c6+"(?="+c6+")|"+l8e+i8e,"g");function s8e(e){for(var t=kj.lastIndex=0;kj.test(e);)++t;return t}var c8e=s8e,u8e=XNe,d8e=Jy,f8e=c8e;function p8e(e){return d8e(e)?f8e(e):u8e(e)}var u6=p8e;function v8e(e){return e.split("")}var g8e=v8e,Pj="\\ud800-\\udfff",h8e="\\u0300-\\u036f",_8e="\\ufe20-\\ufe2f",m8e="\\u20d0-\\u20ff",x8e=h8e+_8e+m8e,b8e="\\ufe0e\\ufe0f",y8e="["+Pj+"]",d6="["+x8e+"]",f6="\\ud83c[\\udffb-\\udfff]",w8e="(?:"+d6+"|"+f6+")",Nj="[^"+Pj+"]",Mj="(?:\\ud83c[\\udde6-\\uddff]){2}",zj="[\\ud800-\\udbff][\\udc00-\\udfff]",D8e="\\u200d",Lj=w8e+"?",Bj="["+b8e+"]?",I8e="(?:"+D8e+"(?:"+[Nj,Mj,zj].join("|")+")"+Bj+Lj+")*",F8e=Bj+Lj+I8e,$8e="(?:"+[Nj+d6+"?",d6,Mj,zj,y8e].join("|")+")",E8e=RegExp(f6+"(?="+f6+")|"+$8e+F8e,"g");function S8e(e){return e.match(E8e)||[]}var C8e=S8e,T8e=g8e,R8e=Jy,O8e=C8e;function A8e(e){return R8e(e)?O8e(e):T8e(e)}var p6=A8e,jj=NNe,k8e=ph,P8e=l6,N8e=Jy,M8e=u6,z8e=p6,L8e=Math.ceil;function B8e(e,t){t=t===void 0?" ":k8e(t);var r=t.length;if(r<2)return r?jj(t,e):t;var n=jj(t,L8e(e/M8e(t)));return N8e(t)?P8e(z8e(n),0,e).join(""):n.slice(0,e)}var j8e=B8e,U8e=j8e,H8e=u6,W8e=Kc,V8e=gi;function K8e(e,t,r){e=V8e(e),t=W8e(t);var n=t?H8e(e):0;return t&&n-1;)l!==e&&Wj.call(l,s,1),Wj.call(e,s,1);return e}var xMe=mMe,bMe=xMe;function yMe(e,t){return e&&e.length&&t&&t.length?bMe(e,t):e}var wMe=yMe,DMe=Uc,IMe=wMe,FMe=DMe(IMe),Vj=FMe,$Me=Math.ceil,EMe=Math.max;function SMe(e,t,r,n){for(var o=-1,a=EMe($Me((t-e)/(r||1)),0),i=Array(a);a--;)i[n?a:++o]=e,e+=r;return i}var CMe=SMe,TMe=CMe,RMe=Zu,v6=PB;function OMe(e){return function(t,r,n){return n&&typeof n!="number"&&RMe(t,r,n)&&(r=n=void 0),t=v6(t),r===void 0?(r=t,t=0):r=v6(r),n=n===void 0?tt||a&&i&&s&&!l&&!c||n&&i&&s||!r&&s||!o)return 1;if(!n&&!a&&!c&&e=l)return s;var c=r[n];return s*(c=="desc"?-1:1)}}return e.index-t.index}var C5e=S5e,m6=Nl,T5e=vh,R5e=sl,O5e=mj,A5e=I5e,k5e=$s,P5e=C5e,N5e=hp,M5e=lr;function z5e(e,t,r){t.length?t=m6(t,function(a){return M5e(a)?function(i){return T5e(i,a.length===1?a[0]:a)}:a}):t=[N5e];var n=-1;t=m6(t,k5e(R5e));var o=O5e(e,function(a,i,l){var s=m6(t,function(c){return c(a)});return{criteria:s,index:++n,value:a}});return A5e(o,function(a,i){return P5e(a,i,r)})}var L5e=z5e,B5e=Ip,j5e=L5e,U5e=Uc,Zj=Zu,H5e=U5e(function(e,t){if(e==null)return[];var r=t.length;return r>1&&Zj(e,t[0],t[1])?t=[]:r>2&&Zj(t[0],t[1],t[2])&&(t=[t[0]]),j5e(e,B5e(t,1),[])}),W5e=H5e,V5e=ph,K5e=l6,q5e=Jy,Y5e=Zu,G5e=o6,X5e=p6,Z5e=gi,Q5e=4294967295;function J5e(e,t,r){return r&&typeof r!="number"&&Y5e(e,t,r)&&(t=r=void 0),r=r===void 0?Q5e:r>>>0,r?(e=Z5e(e),e&&(typeof t=="string"||t!=null&&!G5e(t))&&(t=V5e(t),!t&&q5e(e))?K5e(X5e(e),0,r):e.split(t,r)):[]}var t1=J5e,eze=x7,tze=ph,rze=Kc,nze=gi;function oze(e,t,r){return e=nze(e),r=r==null?0:eze(rze(r),0,e.length),t=tze(t),e.slice(r,r+t.length)==t}var aze=oze;function ize(e,t){for(var r,n=-1,o=e.length;++n-1;);return r}var _ze=hze,mze=$p;function xze(e,t){for(var r=-1,n=e.length;++r-1;);return r}var bze=xze,yze=ph,wze=b7,Dze=l6,Ize=_ze,Fze=bze,Jj=p6,$ze=gi;function Eze(e,t,r){if(e=$ze(e),e&&(r||t===void 0))return wze(e);if(!e||!(t=yze(t)))return e;var n=Jj(e),o=Jj(t),a=Fze(n,o),i=Ize(n,o)+1;return Dze(n,a,i).join("")}var e9=Eze;function Sze(){}var Cze=Sze,b6=A7,Tze=Cze,Rze=WS,Oze=1/0,Aze=b6&&1/Rze(new b6([,-0]))[1]==Oze?function(e){return new b6(e)}:Tze,kze=Aze,Pze=Vy,Nze=US,Mze=HS,zze=Ky,Lze=kze,Bze=WS,jze=200;function Uze(e,t,r){var n=-1,o=Nze,a=e.length,i=!0,l=[],s=l;if(r)i=!1,o=Mze;else if(a>=jze){var c=t?null:Lze(e);if(c)return Bze(c);i=!1,o=zze,s=new Pze}else s=t?[]:l;e:for(;++n=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return a=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!a&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function nLe(e,t){var r;if(e){if(typeof e=="string")return o9(e,t);var n=kt(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return ol(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return o9(e,t)}}function o9(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0)return!1;if(r.length===0)return!0;for(var n in r)if(Ho(r,n))return!1;return isNaN(r)}}]),e}(),oLe=function(t){return t instanceof xo},aLe=function(){if(window&&window.getSelection){var t=window.getSelection();return t&&t.toString()}else if(document){var r=document;if(r.selection&&r.selection.createRange)return r.selection.createRange().text}return""},a9=function(t){return E.isValidElement(t)||aa(t)||Wn(t)||Zy(t)||dt(t)},iLe=function(t){return!!(dt(t)||lr(t)&&!t.length||aa(t)&&!t)},lLe=function(t,r){for(var n=r||"1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",o="",a=t;a>0;){var i=Math.floor(Math.random()*n.length);o+=n[i],a--}return o},_i=function(t){var r=t&&t.toString();return!lr(t)&&r-parseFloat(r)+1>=0},sLe=function(t){return dt(t)?[]:lr(t)?t:[t]},w6=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:["onClick","onMouseEnter","onMouseLeave","onFocus","onBlur"];return Op(t,r)},i9=function(t,r,n){return t!==void 0?t:r!==void 0?r:n},Ap={},cLe={get exports(){return Ap},set exports(e){Ap=e}};(function(e,t){(function(r,n){e.exports=n()})(Bn,function(){var r=1e3,n=6e4,o=36e5,a="millisecond",i="second",l="minute",s="hour",c="day",d="week",f="month",v="quarter",g="year",h="date",_="Invalid Date",b=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,x=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,w={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(A){var M=["th","st","nd","rd"],N=A%100;return"["+A+(M[(N-20)%10]||M[N]||M[0])+"]"}},D=function(A,M,N){var T=String(A);return!T||T.length>=M?A:""+Array(M+1-T.length).join(N)+A},I={s:D,z:function(A){var M=-A.utcOffset(),N=Math.abs(M),T=Math.floor(N/60),O=N%60;return(M<=0?"+":"-")+D(T,2,"0")+":"+D(O,2,"0")},m:function A(M,N){if(M.date()1)return A(K[0])}else{var Q=M.name;F[Q]=M,O=Q}return!T&&O&&($=O),O||!T&&$},P=function(A,M){if(R(A))return A.clone();var N=typeof M=="object"?M:{};return N.date=A,N.args=arguments,new B(N)},U=I;U.l=k,U.i=R,U.w=function(A,M){return P(A,{locale:M.$L,utc:M.$u,x:M.$x,$offset:M.$offset})};var B=function(){function A(N){this.$L=k(N.locale,null,!0),this.parse(N),this.$x=this.$x||N.x||{},this[C]=!0}var M=A.prototype;return M.parse=function(N){this.$d=function(T){var O=T.date,j=T.utc;if(O===null)return new Date(NaN);if(U.u(O))return new Date;if(O instanceof Date)return new Date(O);if(typeof O=="string"&&!/Z$/i.test(O)){var K=O.match(b);if(K){var Q=K[2]-1||0,Y=(K[7]||"0").substring(0,3);return j?new Date(Date.UTC(K[1],Q,K[3]||1,K[4]||0,K[5]||0,K[6]||0,Y)):new Date(K[1],Q,K[3]||1,K[4]||0,K[5]||0,K[6]||0,Y)}}return new Date(O)}(N),this.init()},M.init=function(){var N=this.$d;this.$y=N.getFullYear(),this.$M=N.getMonth(),this.$D=N.getDate(),this.$W=N.getDay(),this.$H=N.getHours(),this.$m=N.getMinutes(),this.$s=N.getSeconds(),this.$ms=N.getMilliseconds()},M.$utils=function(){return U},M.isValid=function(){return this.$d.toString()!==_},M.isSame=function(N,T){var O=P(N);return this.startOf(T)<=O&&O<=this.endOf(T)},M.isAfter=function(N,T){return P(N)68?1900:2e3)},c=function(_){return function(b){this[_]=+b}},d=[/[+-]\d\d:?(\d\d)?|Z/,function(_){(this.zone||(this.zone={})).offset=function(b){if(!b||b==="Z")return 0;var x=b.match(/([+-]|\d\d)/g),w=60*x[1]+(+x[2]||0);return w===0?0:x[0]==="+"?-w:w}(_)}],f=function(_){var b=l[_];return b&&(b.indexOf?b:b.s.concat(b.f))},v=function(_,b){var x,w=l.meridiem;if(w){for(var D=1;D<=24;D+=1)if(_.indexOf(w(D,0,b))>-1){x=D>12;break}}else x=_===(b?"pm":"PM");return x},g={A:[i,function(_){this.afternoon=v(_,!1)}],a:[i,function(_){this.afternoon=v(_,!0)}],S:[/\d/,function(_){this.milliseconds=100*+_}],SS:[o,function(_){this.milliseconds=10*+_}],SSS:[/\d{3}/,function(_){this.milliseconds=+_}],s:[a,c("seconds")],ss:[a,c("seconds")],m:[a,c("minutes")],mm:[a,c("minutes")],H:[a,c("hours")],h:[a,c("hours")],HH:[a,c("hours")],hh:[a,c("hours")],D:[a,c("day")],DD:[o,c("day")],Do:[i,function(_){var b=l.ordinal,x=_.match(/\d+/);if(this.day=x[0],b)for(var w=1;w<=31;w+=1)b(w).replace(/\[|\]/g,"")===_&&(this.day=w)}],M:[a,c("month")],MM:[o,c("month")],MMM:[i,function(_){var b=f("months"),x=(f("monthsShort")||b.map(function(w){return w.slice(0,3)})).indexOf(_)+1;if(x<1)throw new Error;this.month=x%12||x}],MMMM:[i,function(_){var b=f("months").indexOf(_)+1;if(b<1)throw new Error;this.month=b%12||b}],Y:[/[+-]?\d+/,c("year")],YY:[o,function(_){this.year=s(_)}],YYYY:[/\d{4}/,c("year")],Z:d,ZZ:d};function h(_){var b,x;b=_,x=l&&l.formats;for(var w=(_=b.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(k,P,U){var B=U&&U.toUpperCase();return P||x[U]||r[U]||x[B].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(z,A,M){return A||M.slice(1)})})).match(n),D=w.length,I=0;I-1)return new Date((T==="X"?1e3:1)*N);var j=h(T)(N),K=j.year,Q=j.month,Y=j.day,X=j.hours,G=j.minutes,H=j.seconds,V=j.milliseconds,Z=j.zone,te=new Date,J=Y||(K||Q?1:te.getDate()),ne=K||te.getFullYear(),re=0;K&&!Q||(re=Q>0?Q-1:te.getMonth());var ie=X||0,ce=G||0,oe=H||0,fe=V||0;return Z?new Date(Date.UTC(ne,re,J,ie,ce,oe,fe+60*Z.offset*1e3)):O?new Date(Date.UTC(ne,re,J,ie,ce,oe,fe)):new Date(ne,re,J,ie,ce,oe,fe)}catch{return new Date("")}}($,R,F),this.init(),B&&B!==!0&&(this.$L=this.locale(B).$L),U&&$!=this.format(R)&&(this.$d=new Date("")),l={}}else if(R instanceof Array)for(var z=R.length,A=1;A<=z;A+=1){C[1]=R[A-1];var M=x.apply(this,C);if(M.isValid()){this.$d=M.$d,this.$L=M.$L,this.init();break}A===z&&(this.$d=new Date(""))}else D.call(this,I)}}})})(hLe);const l9=i1;var l1={},_Le={get exports(){return l1},set exports(e){l1=e}};(function(e,t){(function(r,n){e.exports=n()})(Bn,function(){var r={year:0,month:1,day:2,hour:3,minute:4,second:5},n={};return function(o,a,i){var l,s=function(v,g,h){h===void 0&&(h={});var _=new Date(v),b=function(x,w){w===void 0&&(w={});var D=w.timeZoneName||"short",I=x+"|"+D,$=n[I];return $||($=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:x,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:D}),n[I]=$),$}(g,h);return b.formatToParts(_)},c=function(v,g){for(var h=s(v,g),_=[],b=0;b=0&&(_[I]=parseInt(D,10))}var $=_[3],F=$===24?0:$,C=_[0]+"-"+_[1]+"-"+_[2]+" "+F+":"+_[4]+":"+_[5]+":000",R=+v;return(i.utc(C).valueOf()-(R-=R%1e3))/6e4},d=a.prototype;d.tz=function(v,g){v===void 0&&(v=l);var h=this.utcOffset(),_=this.toDate(),b=_.toLocaleString("en-US",{timeZone:v}),x=Math.round((_-new Date(b))/1e3/60),w=i(b,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(15*-Math.round(_.getTimezoneOffset()/15)-x,!0);if(g){var D=w.utcOffset();w=w.add(h-D,"minute")}return w.$x.$timezone=v,w},d.offsetName=function(v){var g=this.$x.$timezone||i.tz.guess(),h=s(this.valueOf(),g,{timeZoneName:v}).find(function(_){return _.type.toLowerCase()==="timezonename"});return h&&h.value};var f=d.startOf;d.startOf=function(v,g){if(!this.$x||!this.$x.$timezone)return f.call(this,v,g);var h=i(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return f.call(h,v,g).tz(this.$x.$timezone,!0)},i.tz=function(v,g,h){var _=h&&g,b=h||g||l,x=c(+i(),b);if(typeof v!="string")return i(v).tz(b);var w=function(F,C,R){var k=F-60*C*1e3,P=c(k,R);if(C===P)return[k,C];var U=c(k-=60*(P-C)*1e3,R);return P===U?[k,P]:[F-60*Math.min(P,U)*1e3,Math.max(P,U)]}(i.utc(v,_).valueOf(),x,b),D=w[0],I=w[1],$=i(D).utcOffset(I);return $.$x.$timezone=b,$},i.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},i.tz.setDefault=function(v){l=v}}})})(_Le);const mLe=l1;var s1={},xLe={get exports(){return s1},set exports(e){s1=e}};(function(e,t){(function(r,n){e.exports=n()})(Bn,function(){var r="minute",n=/[+-]\d\d(?::?\d\d)?/g,o=/([+-]|\d\d)/g;return function(a,i,l){var s=i.prototype;l.utc=function(_){var b={date:_,utc:!0,args:arguments};return new i(b)},s.utc=function(_){var b=l(this.toDate(),{locale:this.$L,utc:!0});return _?b.add(this.utcOffset(),r):b},s.local=function(){return l(this.toDate(),{locale:this.$L,utc:!1})};var c=s.parse;s.parse=function(_){_.utc&&(this.$u=!0),this.$utils().u(_.$offset)||(this.$offset=_.$offset),c.call(this,_)};var d=s.init;s.init=function(){if(this.$u){var _=this.$d;this.$y=_.getUTCFullYear(),this.$M=_.getUTCMonth(),this.$D=_.getUTCDate(),this.$W=_.getUTCDay(),this.$H=_.getUTCHours(),this.$m=_.getUTCMinutes(),this.$s=_.getUTCSeconds(),this.$ms=_.getUTCMilliseconds()}else d.call(this)};var f=s.utcOffset;s.utcOffset=function(_,b){var x=this.$utils().u;if(x(_))return this.$u?0:x(this.$offset)?f.call(this):this.$offset;if(typeof _=="string"&&(_=function($){$===void 0&&($="");var F=$.match(n);if(!F)return null;var C=(""+F[0]).match(o)||["-",0,0],R=C[0],k=60*+C[1]+ +C[2];return k===0?0:R==="+"?k:-k}(_),_===null))return this;var w=Math.abs(_)<=16?60*_:_,D=this;if(b)return D.$offset=w,D.$u=_===0,D;if(_!==0){var I=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(D=this.local().add(w+I,r)).$offset=w,D.$x.$localOffset=I}else D=this.utc();return D};var v=s.format;s.format=function(_){var b=_||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return v.call(this,b)},s.valueOf=function(){var _=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*_},s.isUTC=function(){return!!this.$u},s.toISOString=function(){return this.toDate().toISOString()},s.toString=function(){return this.toDate().toUTCString()};var g=s.toDate;s.toDate=function(_){return _==="s"&&this.$offset?l(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():g.call(this)};var h=s.diff;s.diff=function(_,b,x){if(_&&this.$u===_.$u)return h.call(this,_,b,x);var w=this.local(),D=l(_).local();return h.call(w,D,b,x)}}})})(xLe);const bLe=s1;var s9="YYYY-MM-DD HH:mm:ss";Tn.locale(ae(ae({},gLe),{weekStart:1})),Tn.extend(l9),Tn.extend(dLe),Tn.extend(pLe),Tn.extend(bLe),Tn.extend(mLe),Tn.extend(l9);var c9=function(t,r){if(r){var n=Tn.tz(t,r).format(s9);return Tn(n).toDate()}return t},D6=function(t){var r=c9(Tn().toDate(),t);return Tn(r)},yLe={getNow:function(t){return D6(t)},getFixedDate:function(t){return Tn(t,"YYYY-MM-DD")},getStart:function(t,r){return Tn(t).startOf(r)},getEnd:function(t,r){return Tn(t).endOf(r)},getEndDate:function(t){return t.endOf("month")},getWeekDay:function(t){return t.weekday()+t.localeData().firstDayOfWeek()},getYear:function(t){return t.year()},getMonth:function(t){return t.month()},getDate:function(t){return t.date()},getHour:function(t){return t.hour()},getMinute:function(t){return t.minute()},getSecond:function(t){return t.second()},addYear:function(t,r){return t.add(r,"year")},addMonth:function(t,r){return t.add(r,"month")},addDate:function(t,r){return t.add(r,"day")},setYear:function(t,r){return t.year(r)},setMonth:function(t,r){return t.month(r)},setDate:function(t,r){return t.date(r)},setHour:function(t,r,n,o){var a=t.hour(r);return dt(n)||(a=a.minute(n)),dt(o)||(a=a.second(o)),a},setMinute:function(t,r){return t.minute(r)},setSecond:function(t,r){return t.second(r)},setMillisecond:function(t,r){return t.millisecond(r)},isAfter:function(t,r){return t.isAfter(r)},isValidate:function(t){return t.isValid()},getWeekFirstDay:function(){return D6().localeData().firstDayOfWeek()},getWeekFirstDate:function(t){return t.weekday(0)},getShortWeekDays:function(){return D6().localeData().weekdaysMin()},format:function(t,r){return t.format(r)},parse:function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=Tn(t,r,n);return o.isValid()?o:null},toDate:function(t){return t.toDate()},toDayjs:function(t){return Tn(t)},getRealTimeZoneDayjs:function(t,r){if(r){var n=Tn(t).format(s9);return Tn.tz(n,r)}return Tn(t)},tz:function(t,r){return Tn.tz(t,r)},localDateToTimezoneDate:c9,isDayjs:function(t){return Tn.isDayjs(t)}};const Jn=yLe;var hh={},wLe={get exports(){return hh},set exports(e){hh=e}},I6={},DLe={get exports(){return I6},set exports(e){I6=e}},u9=` +\v\f\r                 \u2028\u2029\uFEFF`,ILe=Ir,FLe=ws,$Le=di,F6=u9,d9=ILe("".replace),ELe=RegExp("^["+F6+"]+"),SLe=RegExp("(^|[^"+F6+"])["+F6+"]+$"),$6=function(e){return function(t){var r=$Le(FLe(t));return e&1&&(r=d9(r,ELe,"")),e&2&&(r=d9(r,SLe,"$1")),r}},CLe={start:$6(1),end:$6(2),trim:$6(3)},TLe=Q5.PROPER,RLe=_r,f9=u9,p9="​…᠎",OLe=function(e){return RLe(function(){return!!f9[e]()||p9[e]()!==p9||TLe&&f9[e].name!==e})},ALe=Ne,kLe=CLe.trim,PLe=OLe;ALe({target:"String",proto:!0,forced:PLe("trim")},{trim:function(){return kLe(this)}});var NLe=_o,MLe=NLe("String","trim"),zLe=Nn,LLe=MLe,E6=String.prototype,BLe=function(e){var t=e.trim;return typeof e=="string"||e===E6||zLe(E6,e)&&t===E6.trim?LLe:t},jLe=BLe,ULe=jLe,HLe=ULe,WLe=HLe,VLe=WLe,KLe=VLe;(function(e){e.exports=KLe})(DLe),function(e){e.exports=I6}(wLe);const kp=Vt(hh);var c1={},qLe={get exports(){return c1},set exports(e){c1=e}},S6={},YLe={get exports(){return S6},set exports(e){S6=e}},GLe=_r,C6=!GLe(function(){return Object.isExtensible(Object.preventExtensions({}))}),td={},XLe={get exports(){return td},set exports(e){td=e}},ZLe=_r,QLe=ZLe(function(){if(typeof ArrayBuffer=="function"){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}),JLe=_r,e7e=gn,t7e=Ol,v9=QLe,u1=Object.isExtensible,r7e=JLe(function(){u1(1)}),n7e=r7e||v9?function(t){return!e7e(t)||v9&&t7e(t)==="ArrayBuffer"?!1:u1?u1(t):!0}:u1,o7e=Ne,a7e=Ir,i7e=Ng,l7e=gn,T6=Qn,s7e=_a.f,g9=Bg,c7e=iE,R6=n7e,u7e=$0,d7e=C6,h9=!1,Os=u7e("meta"),f7e=0,O6=function(e){s7e(e,Os,{value:{objectID:"O"+f7e++,weakData:{}}})},p7e=function(e,t){if(!l7e(e))return typeof e=="symbol"?e:(typeof e=="string"?"S":"P")+e;if(!T6(e,Os)){if(!R6(e))return"F";if(!t)return"E";O6(e)}return e[Os].objectID},v7e=function(e,t){if(!T6(e,Os)){if(!R6(e))return!0;if(!t)return!1;O6(e)}return e[Os].weakData},g7e=function(e){return d7e&&h9&&R6(e)&&!T6(e,Os)&&O6(e),e},h7e=function(){_7e.enable=function(){},h9=!0;var e=g9.f,t=a7e([].splice),r={};r[Os]=1,e(r).length&&(g9.f=function(n){for(var o=e(n),a=0,i=o.length;a1?arguments[1]:void 0)}});var B7e=_o,j7e=B7e("Array","includes"),U7e=gn,H7e=Ol,W7e=cn,V7e=W7e("match"),K7e=function(e){var t;return U7e(e)&&((t=e[V7e])!==void 0?!!t:H7e(e)==="RegExp")},q7e=K7e,Y7e=TypeError,G7e=function(e){if(q7e(e))throw new Y7e("The method doesn't accept regular expressions");return e},X7e=cn,Z7e=X7e("match"),Q7e=function(e){var t=/./;try{"/./"[e](t)}catch{try{return t[Z7e]=!1,"/./"[e](t)}catch{}}return!1},J7e=Ne,eBe=Ir,tBe=G7e,rBe=ws,b9=di,nBe=Q7e,oBe=eBe("".indexOf);J7e({target:"String",proto:!0,forced:!nBe("includes")},{includes:function(t){return!!~oBe(b9(rBe(this)),b9(tBe(t)),arguments.length>1?arguments[1]:void 0)}});var aBe=_o,iBe=aBe("String","includes"),y9=Nn,lBe=j7e,sBe=iBe,z6=Array.prototype,L6=String.prototype,cBe=function(e){var t=e.includes;return e===z6||y9(z6,e)&&t===z6.includes?lBe:typeof e=="string"||e===L6||y9(L6,e)&&t===L6.includes?sBe:t},uBe=cBe,dBe=uBe,fBe=dBe,pBe=fBe,vBe=pBe,gBe=vBe;(function(e){e.exports=gBe})(P7e),function(e){e.exports=M6}(k7e);const bo=Vt(rd);var Np={},Co=function(){function e(){Br(this,e)}return jr(e,null,[{key:"isDomElement",value:function(r){return r instanceof HTMLElement||r instanceof SVGElement}},{key:"isVisible",value:function(r){if(!r)return!1;if(r instanceof Element){if(r.offsetParent)return!0;if(r.getBBox){var n=r.getBBox(),o=n.width,a=n.height;if(o||a)return!0}if(r.getBoundingClientRect){var i=r.getBoundingClientRect(),l=i.width,s=i.height;if(l||s)return!0}}return!1}},{key:"getDomOffset",value:function(r,n){if(!(!e.isDomElement(r)||!e.isDomElement(n))){var o=r.getBoundingClientRect(),a=n.getBoundingClientRect();return{left:o.left-a.left,top:o.top-a.top}}}},{key:"removeClass",value:function(r,n){!e.isDomElement(r)||dt(n)||(lr(n)?yr(n,function(o){r.classList.remove(o)}):r.classList.remove(n))}},{key:"addClass",value:function(r,n){!e.isDomElement(r)||dt(n)||(lr(n)?yr(n,function(o){r.classList.add(o)}):r.classList.add(n))}},{key:"closest",value:function(r,n){if(!e.isDomElement(r))return null;if(r.closest)return r.closest(n);var o=r.matches||r.webkitMatchesSelector||r.mozMatchesSelector||r.msMatchesSelector;if(!o)return null;for(var a=r;a;){if(a.nodeType===1&&o.call(a,n))return a;a=a.parentElement||a.parentNode}return null}},{key:"isFirstElement",value:function(r){if(!e.isDomElement(r))return!1;var n=r.parentElement;return n&&n.firstChild===r}},{key:"isLastElement",value:function(r){if(!e.isDomElement(r))return!1;var n=r.parentElement;return n&&n.lastChild===r}},{key:"cssSupport",value:function(r,n){var o,a=mt(o="".concat(r,": ")).call(o,n);if(!dt(Np[a]))return Np[a];var i=document.createElement("div"),l=!1;return r in i.style&&(i.style[r]=n,l=i.style[r]===n),Np[a]=l,l}},{key:"supportFlexGap",value:function(){var r="flexGap";if(!dt(Np[r]))return Np[r];var n=!1,o=document.createElement("div");return o.style.display="flex",o.style.flexDirection="column",o.style.rowGap="1px",o.appendChild(document.createElement("div")),o.appendChild(document.createElement("div")),document.body.appendChild(o),n=o.scrollHeight===1,document.body.removeChild(o),Np[r]=n,n}},{key:"contains",value:function(r){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!r)return!1;if(r.contains)return r.contains(n);for(var o=n;o;){if(o===r)return!0;o=o.parentNode}return!1}},{key:"getWin",value:function(r){return r.ownerDocument.defaultView}},{key:"collectScroller",value:function(r){for(var n=[],o=r?.parentElement,a=["hidden","scroll","clip","auto"];o;){var i=e.getWin(o);if(i){var l=i.getComputedStyle(o),s=l.overflowX,c=l.overflowY,d=l.overflow;[s,c,d].some(function(f){return bo(a).call(a,f)})&&n.push(o)}o=o.parentElement}return n}}]),e}(),_h={},hBe={get exports(){return _h},set exports(e){_h=e}},B6={},_Be={get exports(){return B6},set exports(e){B6=e}},mBe=Ne,xBe=In,bBe=td,yBe=_r,wBe=Ac,DBe=vi,IBe=Dy,FBe=Fn,$Be=gn,EBe=Oc,SBe=Pc,CBe=_a.f,TBe=zc.forEach,RBe=io,w9=Nc,OBe=w9.set,ABe=w9.getterFor,j6=function(e,t,r){var n=e.indexOf("Map")!==-1,o=e.indexOf("Weak")!==-1,a=n?"set":"add",i=xBe[e],l=i&&i.prototype,s={},c;if(!RBe||!FBe(i)||!(o||l.forEach&&!yBe(function(){new i().entries().next()})))c=r.getConstructor(t,e,n,a),bBe.enable();else{c=t(function(v,g){OBe(IBe(v,d),{type:e,collection:new i}),EBe(g)||DBe(g,v[a],{that:v,AS_ENTRIES:n})});var d=c.prototype,f=ABe(e);TBe(["add","clear","delete","forEach","get","has","set","keys","values","entries"],function(v){var g=v==="add"||v==="set";v in l&&!(o&&v==="clear")&&wBe(d,v,function(h,_){var b=f(this).collection;if(!g&&o&&!$Be(h))return v==="get"?void 0:!1;var x=b[v](h===0?0:h,_);return g?this:x})}),o||CBe(d,"size",{configurable:!0,get:function(){return f(this).collection.size}})}return SBe(c,e,!1,!0),s[e]=c,mBe({global:!0,forced:!0},s),o||r.setStrong(c,e,n),c},kBe=Jf,U6=function(e,t,r){for(var n in t)r&&r.unsafe&&e[n]?e[n]=t[n]:kBe(e,n,t[n],r);return e},D9=Hu,PBe=lE,I9=U6,NBe=Un,MBe=Dy,zBe=Oc,LBe=vi,BBe=CE,d1=TE,jBe=lL,mh=io,F9=td.fastKey,$9=Nc,E9=$9.set,H6=$9.getterFor,S9={getConstructor:function(e,t,r,n){var o=e(function(c,d){MBe(c,a),E9(c,{type:t,index:D9(null),first:void 0,last:void 0,size:0}),mh||(c.size=0),zBe(d)||LBe(d,c[n],{that:c,AS_ENTRIES:r})}),a=o.prototype,i=H6(t),l=function(c,d,f){var v=i(c),g=s(c,d),h,_;return g?g.value=f:(v.last=g={index:_=F9(d,!0),key:d,value:f,previous:h=v.last,next:void 0,removed:!1},v.first||(v.first=g),h&&(h.next=g),mh?v.size++:c.size++,_!=="F"&&(v.index[_]=g)),c},s=function(c,d){var f=i(c),v=F9(d),g;if(v!=="F")return f.index[v];for(g=f.first;g;g=g.next)if(g.key===d)return g};return I9(a,{clear:function(){for(var d=this,f=i(d),v=f.first;v;)v.removed=!0,v.previous&&(v.previous=v.previous.next=void 0),v=v.next;f.first=f.last=void 0,f.index=D9(null),mh?f.size=0:d.size=0},delete:function(c){var d=this,f=i(d),v=s(d,c);if(v){var g=v.next,h=v.previous;delete f.index[v.index],v.removed=!0,h&&(h.next=g),g&&(g.previous=h),f.first===v&&(f.first=g),f.last===v&&(f.last=h),mh?f.size--:d.size--}return!!v},forEach:function(d){for(var f=i(this),v=NBe(d,arguments.length>1?arguments[1]:void 0),g;g=g?g.next:f.first;)for(v(g.value,g.key,this);g&&g.removed;)g=g.previous},has:function(d){return!!s(this,d)}}),I9(a,r?{get:function(d){var f=s(this,d);return f&&f.value},set:function(d,f){return l(this,d===0?0:d,f)}}:{add:function(d){return l(this,d=d===0?0:d,d)}}),mh&&PBe(a,"size",{configurable:!0,get:function(){return i(this).size}}),o},setStrong:function(e,t,r){var n=t+" Iterator",o=H6(t),a=H6(n);BBe(e,t,function(i,l){E9(this,{type:n,target:i,state:o(i),kind:l,last:void 0})},function(){for(var i=a(this),l=i.kind,s=i.last;s&&s.removed;)s=s.previous;return!i.target||!(i.last=s=s?s.next:i.state.first)?(i.target=void 0,d1(void 0,!0)):d1(l==="keys"?s.key:l==="values"?s.value:[s.key,s.value],!1)},r?"entries":"values",!r,!0),jBe(t)}},UBe=j6,HBe=S9;UBe("Map",function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}},HBe);var W6=function(e,t){return t===1?function(r,n){return r[e](n)}:function(r,n,o){return r[e](n,o)}},WBe=lo,f1=W6,C9=WBe("Map"),cl={Map:C9,set:f1("set",2),get:f1("get",1),has:f1("has",1),remove:f1("delete",1),proto:C9.prototype},VBe=Ne,KBe=Ir,qBe=Zn,YBe=ws,GBe=vi,p1=cl,XBe=eM,ZBe=p1.Map,QBe=p1.has,JBe=p1.get,eje=p1.set,tje=KBe([].push);VBe({target:"Map",stat:!0,forced:XBe},{groupBy:function(t,r){YBe(t),qBe(r);var n=new ZBe,o=0;return GBe(t,function(a){var i=r(a,o++);QBe(n,i)?tje(JBe(n,i),a):eje(n,i,[a])}),n}});var rje=hn,nje=rje.Map,oje=nje,aje=oje,ije=aje,lje=ije,sje=Un,cje=So,uje=Uo,dje=vi,V6=function(e,t,r){return function(o){var a=uje(o),i=arguments.length,l=i>1?arguments[1]:void 0,s=l!==void 0,c=s?sje(l,i>2?arguments[2]:void 0):void 0,d=new e,f=0;return dje(a,function(v){var g=s?c(v,f++):v;r?t(d,cje(g)[0],g[1]):t(d,g)}),d}},fje=Ne,T9=cl,pje=V6;fje({target:"Map",stat:!0,forced:!0},{from:pje(T9.Map,T9.set,!0)});var vje=So,K6=function(e,t,r){return function(){for(var o=new e,a=arguments.length,i=0;i1?arguments[1]:void 0);return Rje(r,function(o,a){if(!n(o,a,r))return!1},!0)!==!1}});var Oje=Ne,Aje=Un,kje=Da,A9=cl,Pje=zl,Nje=A9.Map,Mje=A9.set;Oje({target:"Map",proto:!0,real:!0,forced:!0},{filter:function(t){var r=kje(this),n=Aje(t,arguments.length>1?arguments[1]:void 0),o=new Nje;return Pje(r,function(a,i){n(a,i,r)&&Mje(o,i,a)}),o}});var zje=Ne,Lje=Un,Bje=Da,jje=zl;zje({target:"Map",proto:!0,real:!0,forced:!0},{find:function(t){var r=Bje(this),n=Lje(t,arguments.length>1?arguments[1]:void 0),o=jje(r,function(a,i){if(n(a,i,r))return{value:a}},!0);return o&&o.value}});var Uje=Ne,Hje=Un,Wje=Da,Vje=zl;Uje({target:"Map",proto:!0,real:!0,forced:!0},{findKey:function(t){var r=Wje(this),n=Hje(t,arguments.length>1?arguments[1]:void 0),o=Vje(r,function(a,i){if(n(a,i,r))return{key:i}},!0);return o&&o.key}});var Kje=function(e,t){return e===t||e!==e&&t!==t},qje=Ne,Yje=Kje,Gje=Da,Xje=zl;qje({target:"Map",proto:!0,real:!0,forced:!0},{includes:function(t){return Xje(Gje(this),function(r){if(Yje(r,t))return!0},!0)===!0}});var Zje=Ne,Qje=Lr,Jje=vi,e9e=Fn,k9=Zn,t9e=cl.Map;Zje({target:"Map",stat:!0,forced:!0},{keyBy:function(t,r){var n=e9e(this)?this:t9e,o=new n;k9(r);var a=k9(o.set);return Jje(t,function(i){Qje(a,o,r(i),i)}),o}});var r9e=Ne,n9e=Da,o9e=zl;r9e({target:"Map",proto:!0,real:!0,forced:!0},{keyOf:function(t){var r=o9e(n9e(this),function(n,o){if(n===t)return{key:o}},!0);return r&&r.key}});var a9e=Ne,i9e=Un,l9e=Da,P9=cl,s9e=zl,c9e=P9.Map,u9e=P9.set;a9e({target:"Map",proto:!0,real:!0,forced:!0},{mapKeys:function(t){var r=l9e(this),n=i9e(t,arguments.length>1?arguments[1]:void 0),o=new c9e;return s9e(r,function(a,i){u9e(o,n(a,i,r),a)}),o}});var d9e=Ne,f9e=Un,p9e=Da,N9=cl,v9e=zl,g9e=N9.Map,h9e=N9.set;d9e({target:"Map",proto:!0,real:!0,forced:!0},{mapValues:function(t){var r=p9e(this),n=f9e(t,arguments.length>1?arguments[1]:void 0),o=new g9e;return v9e(r,function(a,i){h9e(o,i,n(a,i,r))}),o}});var _9e=Ne,m9e=Da,x9e=vi,b9e=cl.set;_9e({target:"Map",proto:!0,real:!0,arity:1,forced:!0},{merge:function(t){for(var r=m9e(this),n=arguments.length,o=0;o1?arguments[1]:void 0);return C9e(r,function(o,a){if(n(o,a,r))return!0},!0)===!0}});var T9e=Ne,M9=Zn,R9e=Da,Y6=cl,O9e=TypeError,A9e=Y6.get,k9e=Y6.has,P9e=Y6.set;T9e({target:"Map",proto:!0,real:!0,forced:!0},{update:function(t,r){var n=R9e(this),o=arguments.length;M9(r);var a=k9e(n,t);if(!a&&o<3)throw new O9e("Updating absent value");var i=a?A9e(n,t):M9(o>2?arguments[2]:void 0)(t,n);return P9e(n,t,r(i,t,n)),n}});var v1=Lr,G6=Zn,g1=Fn,N9e=So,M9e=TypeError,X6=function(t,r){var n=N9e(this),o=G6(n.get),a=G6(n.has),i=G6(n.set),l=arguments.length>2?arguments[2]:void 0,s;if(!g1(r)&&!g1(l))throw new M9e("At least one callback required");return v1(a,n,t)?(s=v1(o,n,t),g1(r)&&(s=r(s),v1(i,n,t,s))):g1(l)&&(s=l(),v1(i,n,t,s)),s},z9e=Ne,L9e=X6;z9e({target:"Map",proto:!0,real:!0,forced:!0},{upsert:L9e});var B9e=Ne,j9e=X6;B9e({target:"Map",proto:!0,real:!0,name:"upsert",forced:!0},{updateOrInsert:j9e});var U9e=lje,H9e=U9e;(function(e){e.exports=H9e})(_Be),function(e){e.exports=B6}(hBe);const so=Vt(_h);var h1={},W9e={get exports(){return h1},set exports(e){h1=e}},Z6={},V9e={get exports(){return Z6},set exports(e){Z6=e}},K9e=Ne,q9e=zc.find,z9="find",L9=!0;z9 in[]&&Array(1)[z9](function(){L9=!1}),K9e({target:"Array",proto:!0,forced:L9},{find:function(t){return q9e(this,t,arguments.length>1?arguments[1]:void 0)}});var Y9e=_o,G9e=Y9e("Array","find"),X9e=Nn,Z9e=G9e,Q6=Array.prototype,Q9e=function(e){var t=e.find;return e===Q6||X9e(Q6,e)&&t===Q6.find?Z9e:t},J9e=Q9e,eUe=J9e,tUe=eUe,rUe=tUe,nUe=rUe,oUe=nUe;(function(e){e.exports=oUe})(V9e),function(e){e.exports=Z6}(W9e);const aUe=Vt(h1);var B9="jdy-design-theme-key",_1=function(){var t=document.querySelector("head");return t||document.body},j9=function(t,r){var n=document.createElement("style");n.innerHTML=t;var o=r||_1();return o.appendChild(n),n},J6=new so,U9=function(t,r){var n,o=r||_1(),a=J6.get(o);return a?aUe(n=ol(a.children)).call(n,function(i){return i.tagName==="STYLE"&&i.getAttribute(B9)===t}):null},H9=function(t,r,n){var o=n||_1();if(!J6.has(o)){var a=j9("",o),i=a.parentNode;J6.set(o,i),i.removeChild(a)}var l=U9(r,o);if(l)return l.innerHTML!==t&&(l.innerHTML=t),l;var s=j9(t,o);return s.setAttribute(B9,r),s};function W9(e,t){var r=t||_1(),n=U9(e,r);n&&r.removeChild(n)}function iUe(e){return Co.isDomElement(e)?e:e instanceof E.Component?Kr.findDOMNode(e):null}var m1={},lUe={get exports(){return m1},set exports(e){m1=e}},e3={},sUe={get exports(){return e3},set exports(e){e3=e}},cUe=Ne;cUe({target:"Number",stat:!0},{isNaN:function(t){return t!==t}});var uUe=hn,dUe=uUe.Number.isNaN,fUe=dUe,pUe=fUe,vUe=pUe,gUe=vUe,hUe=gUe,_Ue=hUe;(function(e){e.exports=_Ue})(sUe),function(e){e.exports=e3}(lUe);const V9=Vt(m1);var t3;function mUe(e){if(typeof document>"u")return 0;if(e||t3===void 0){var t=document.createElement("div");t.style.width="100%",t.style.height="200px";var r=document.createElement("div"),n=r.style;n.position="absolute",n.top="0",n.left="0",n.pointerEvents="none",n.visibility="hidden",n.width="200px",n.height="150px",n.overflow="hidden",r.appendChild(t),document.body.appendChild(r);var o=t.offsetWidth;r.style.overflow="scroll";var a=t.offsetWidth;o===a&&(a=r.clientWidth),document.body.removeChild(r),t3=o-a}return t3}function K9(e){var t=e.match(/^(.*)px$/),r=Number(t?.[1]);return V9(r)?mUe():r}function xUe(e){if(typeof document>"u"||!e||!(e instanceof Element))return{width:0,height:0};var t=getComputedStyle(e,"::-webkit-scrollbar"),r=t.width,n=t.height;return{width:K9(r),height:K9(n)}}var bUe=m.isValidElement;function yUe(e,t,r){return bUe(e)?m.cloneElement(e,typeof r=="function"?r(e.props||{}):r):t}function q9(e,t){return yUe(e,e,t)}var x1={},wUe={get exports(){return x1},set exports(e){x1=e}},r3={},DUe={get exports(){return r3},set exports(e){r3=e}},IUe=Ne,FUe=zc.filter,$Ue=Lg,EUe=$Ue("filter");IUe({target:"Array",proto:!0,forced:!EUe},{filter:function(t){return FUe(this,t,arguments.length>1?arguments[1]:void 0)}});var SUe=_o,CUe=SUe("Array","filter"),TUe=Nn,RUe=CUe,n3=Array.prototype,OUe=function(e){var t=e.filter;return e===n3||TUe(n3,e)&&t===n3.filter?RUe:t},AUe=OUe,kUe=AUe,PUe=kUe,NUe=PUe,MUe=NUe,zUe=MUe;(function(e){e.exports=zUe})(DUe),function(e){e.exports=r3}(wUe);const ul=Vt(x1);function LUe(e){if(qz(e))return e}var b1={},BUe={get exports(){return b1},set exports(e){b1=e}},jUe=io,UUe=kc,HUe=TypeError,WUe=Object.getOwnPropertyDescriptor,VUe=jUe&&!function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(e){return e instanceof TypeError}}(),Y9=VUe?function(e,t){if(UUe(e)&&!WUe(e,"length").writable)throw new HUe("Cannot set read only .length");return e.length=t}:function(e,t){return e.length=t},KUe=Ne,qUe=Uo,YUe=ui,GUe=Y9,XUe=M0,ZUe=_r,QUe=ZUe(function(){return[].push.call({length:4294967296},1)!==4294967297}),JUe=function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(e){return e instanceof TypeError}},eHe=QUe||!JUe();KUe({target:"Array",proto:!0,arity:1,forced:eHe},{push:function(t){var r=qUe(this),n=YUe(r),o=arguments.length;XUe(n+o);for(var a=0;a1&&arguments[1]!==void 0?arguments[1]:1;Z9+=1;var n=Z9;function o(a){if(a===0)Q9(n),t();else{var i=G9(function(){o(a-1)});a3.set(n,i)}}return o(r),n};J9.cancel=function(e){var t=a3.get(e);return Q9(t),X9(t)};const dl=J9;function mHe(e){if(typeof MessageChannel>"u")dl(e);else{var t=new MessageChannel;t.port1.onmessage=function(){return e()},t.port2.postMessage(void 0)}}function xHe(){var e=E.useRef(null),t=function(n){e.current||(e.current=[],mHe(function(){Kr.unstable_batchedUpdates(function(){QS(e.current,function(o){o()}),e.current=null})})),e.current.push(n)};return t}function bh(e,t){var r=E.useState(t),n=be(r,2),o=n[0],a=n[1],i=xh(function(l){e(function(){a(l)})});return[o,i]}var eU=m.useLayoutEffect,As=function(t,r){var n=m.useRef(!0);eU(function(){return t(n.current)},r),eU(function(){return n.current=!1,function(){n.current=!0}},[])};const yh={locale:"zh-cn",dialog:{okText:"确定",cancelText:"取消",dragTip:"长按可拖拽窗口"},prompt:{okText:"确定",cancelText:"取消"},popConfirm:{okText:"确定",cancelText:"取消"},alert:{okText:"确定",cancelText:"取消"},check:{checkAll:"全选"},combo:{searchEmpty:"未搜索到数据",searchPlaceholder:"搜索",searching:"搜索中...",allCheck:"全选",allCheckInSearch:"搜索结果全选",emptyTip:"没有可选择的数据",loading:"正在加载",clickToLoadMore:"点击加载更多"},upload:{uploadText:"选择文件"},datetime:{clear:"清空",today:"今天",month:"本月",now:"此刻",ok:"确定",time:"时间",shortSun:"日",shortMon:"一",shortTue:"二",shortWed:"三",shortThu:"四",shortFri:"五",shortSat:"六",january:"一月",february:"二月",march:"三月",april:"四月",may:"五月",june:"六月",july:"七月",august:"八月",september:"九月",october:"十月",november:"十一月",december:"十二月",january_m:"1月",february_m:"2月",march_m:"3月",april_m:"4月",may_m:"5月",june_m:"6月",july_m:"7月",august_m:"8月",september_m:"9月",october_m:"10月",november_m:"11月",december_m:"12月",hour:"时",minute:"分",second:"秒"},cascader:{searchPlaceholder:"搜索",searchEmpty:"未搜索到数据",searching:"搜索中..."},filePreview:{download:"下载",noSupportPreview:"当前文件类型不支持在线预览",zoomIn:"放大",zoomOut:"缩小",rotateToRight:"向右旋转",viewOrigin:"查看原图",loading:"加载中,请稍后..."},pagination:{currentPage:"第 {page} 页"},colorPicker:{recommendColor:"推荐颜色",customColor:"自定义颜色",alpha:"透明度",noMessage:"暂无"},image:{preview:"预览"},typography:{edit:"编辑",copy:"复制",copied:"复制成功",expand:"展开"},select:{allCheck:"全选",allCheckInSearch:"搜索结果全选",emptyTip:"没有可选择的数据",searchPlaceholder:"搜索"},treeSelect:{emptyTip:"没有可选择的数据",searchPlaceholder:"搜索"}};var i3=m.createContext({locale:yh}),bHe=function(t){var r=E.useContext(i3),n=r.locale,o=E.useMemo(function(){var a,i=yh[t],l=(a=n?.[t])!==null&&a!==void 0?a:{};return ae(ae({},i),l||{})},[t,n]);return[o]};const Mp=bHe;function l3(e,t,r){var n=m.useRef({});return(!("value"in n.current)||r(n.current.condition,t))&&(n.current.value=e(),n.current.condition=t),n.current.value}var yHe=function(t,r){var n=r||{},o=n.defaultValue,a=n.value,i=n.onChange,l=n.postState,s=m.useState(function(){return a!==void 0?a:o!==void 0?o:t}),c=be(s,2),d=c[0],f=c[1],v=a!==void 0?a:d;l&&(v=l(v));var g=function(b,x){var w=typeof b=="function"?b(d):b;f(b),x?.invokeChange!==!1&&v!==b&&i&&i(w,v)},h=m.useRef(!0);return m.useEffect(function(){if(h.current){h.current=!1;return}a===void 0&&f(a)},[a]),[v,g]};const xi=yHe;var Ll={},wHe={get exports(){return Ll},set exports(e){Ll=e}},s3={},DHe={get exports(){return s3},set exports(e){s3=e}},IHe=hn,FHe=IHe.Object.getOwnPropertySymbols,$He=FHe,EHe=$He,SHe=EHe,CHe=SHe,THe=CHe,RHe=THe;(function(e){e.exports=RHe})(DHe),function(e){e.exports=s3}(wHe);const Ye=Vt(Ll);var Or={},OHe={get exports(){return Or},set exports(e){Or=e}},AHe="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",kHe=AHe,PHe=kHe;function tU(){}function rU(){}rU.resetWarningCache=tU;var NHe=function(){function e(n,o,a,i,l,s){if(s!==PHe){var c=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw c.name="Invariant Violation",c}}e.isRequired=e;function t(){return e}var r={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:rU,resetWarningCache:tU};return r.PropTypes=r,r};OHe.exports=NHe();var nU=ae({},yh),oU=function(){return nU},aU=function(t){nU=ae(ae({},yh),t)};function MHe(e){var t=zHe();return function(){var n=Ur(e),o;if(t){var a=Ur(this).constructor;o=Lt(n,arguments,a)}else o=n.apply(this,arguments);return ba(this,o)}}function zHe(){if(typeof Reflect>"u"||!Lt||Lt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Lt(Boolean,[],function(){})),!0}catch{return!1}}var iU=function(e){xa(r,e);var t=MHe(r);function r(n){var o;return Br(this,r),o=t.call(this,n),aU(n.locale),o}return jr(r,[{key:"componentDidUpdate",value:function(o){var a=this.props.locale;a!==o.locale&&aU(a)}},{key:"render",value:function(){var o=this.props,a=o.children,i=o.locale;return m.createElement(i3.Provider,{value:{locale:i}},a)}}]),r}(m.Component);iU.propTypes={locale:Or.object};const c3=iU;var LHe=function(t){var r=E.useContext(jHe),n=E.useMemo(function(){return t?typeof t=="string"||typeof t=="number"?t??r:t instanceof Function?t(r):r:r},[t,r]);return n};const Ia=LHe;var lU=E.createContext(void 0),BHe=function(t){var r=t.children,n=t.size,o=Ia(n);return E.createElement(lU.Provider,{value:o},r)};const jHe=lU;var fl={},UHe={get exports(){return fl},set exports(e){fl=e}},u3={},HHe={get exports(){return u3},set exports(e){u3=e}},WHe=Ne,VHe=zc.map,KHe=Lg,qHe=KHe("map");WHe({target:"Array",proto:!0,forced:!qHe},{map:function(t){return VHe(this,t,arguments.length>1?arguments[1]:void 0)}});var YHe=_o,GHe=YHe("Array","map"),XHe=Nn,ZHe=GHe,d3=Array.prototype,QHe=function(e){var t=e.map;return e===d3||XHe(d3,e)&&t===d3.map?ZHe:t},JHe=QHe,eWe=JHe,tWe=eWe,rWe=tWe,nWe=rWe,oWe=nWe;(function(e){e.exports=oWe})(HHe),function(e){e.exports=u3}(UHe);const $t=Vt(fl),y1={global:["--fd-color-red-1: #fdeeee;","--fd-color-red-2: #f9cbcb;","--fd-color-red-3: #f7b9b9;","--fd-color-red-4: #f5a8a8;","--fd-color-red-5: #f18585;","--fd-color-red-6: #EB5050;","--fd-color-red-7: #bc4040;","--fd-color-red-8: #8d3030;","--fd-color-red-9: #5e2020;","--fd-color-red-10: #471818;","--fd-color-yellow-1: #fef6e6;","--fd-color-yellow-2: #fbe5b3;","--fd-color-yellow-3: #f9dc99;","--fd-color-yellow-4: #f8d480;","--fd-color-yellow-5: #f5c24d;","--fd-color-yellow-6: #F0A800;","--fd-color-yellow-7: #c08600;","--fd-color-yellow-8: #906500;","--fd-color-yellow-9: #604300;","--fd-color-yellow-10: #483200;","--fd-color-green-1: #edf9f1;","--fd-color-green-2: #c8edd4;","--fd-color-green-3: #b5e7c5;","--fd-color-green-4: #a3e1b7;","--fd-color-green-5: #7ed49a;","--fd-color-green-6: #46C26F;","--fd-color-green-7: #389b59;","--fd-color-green-8: #2a7443;","--fd-color-green-9: #1c4e2c;","--fd-color-green-10: #153a21;","--fd-color-blue-1: #eaf2fd;","--fd-color-blue-2: #c1d8f9;","--fd-color-blue-3: #accbf7;","--fd-color-blue-4: #97bef5;","--fd-color-blue-5: #6da4f1;","--fd-color-blue-6: #2F7DEB;","--fd-color-blue-7: #2664bc;","--fd-color-blue-8: #1c4b8d;","--fd-color-blue-9: #13325e;","--fd-color-blue-10: #0e2647;","--fd-color-brand-1: #e6f8f5;","--fd-color-brand-2: #b3eae0;","--fd-color-brand-3: #99e3d6;","--fd-color-brand-4: #80dccc;","--fd-color-brand-5: #4dcdb8;","--fd-color-brand-6: #00B899;","--fd-color-brand-7: #00937a;","--fd-color-brand-8: #006e5c;","--fd-color-brand-9: #004a3d;","--fd-color-brand-10: #00372e;","--fd-color-error-1: var(--fd-color-red-1);","--fd-color-error-2: var(--fd-color-red-2);","--fd-color-error-3: var(--fd-color-red-3);","--fd-color-error-4: var(--fd-color-red-4);","--fd-color-error-5: var(--fd-color-red-5);","--fd-color-error-6: var(--fd-color-red-6);","--fd-color-error-7: var(--fd-color-red-7);","--fd-color-error-8: var(--fd-color-red-8);","--fd-color-error-9: var(--fd-color-red-9);","--fd-color-error-10: var(--fd-color-red-10);","--fd-color-warning-1: var(--fd-color-yellow-1);","--fd-color-warning-2: var(--fd-color-yellow-2);","--fd-color-warning-3: var(--fd-color-yellow-3);","--fd-color-warning-4: var(--fd-color-yellow-4);","--fd-color-warning-5: var(--fd-color-yellow-5);","--fd-color-warning-6: var(--fd-color-yellow-6);","--fd-color-warning-7: var(--fd-color-yellow-7);","--fd-color-warning-8: var(--fd-color-yellow-8);","--fd-color-warning-9: var(--fd-color-yellow-9);","--fd-color-warning-10: var(--fd-color-yellow-10);","--fd-color-success-1: var(--fd-color-green-1);","--fd-color-success-2: var(--fd-color-green-2);","--fd-color-success-3: var(--fd-color-green-3);","--fd-color-success-4: var(--fd-color-green-4);","--fd-color-success-5: var(--fd-color-green-5);","--fd-color-success-6: var(--fd-color-green-6);","--fd-color-success-7: var(--fd-color-green-7);","--fd-color-success-8: var(--fd-color-green-8);","--fd-color-success-9: var(--fd-color-green-9);","--fd-color-success-10: var(--fd-color-green-10);","--fd-color-info-1: var(--fd-color-blue-1);","--fd-color-info-2: var(--fd-color-blue-2);","--fd-color-info-3: var(--fd-color-blue-3);","--fd-color-info-4: var(--fd-color-blue-4);","--fd-color-info-5: var(--fd-color-blue-5);","--fd-color-info-6: var(--fd-color-blue-6);","--fd-color-info-7: var(--fd-color-blue-7);","--fd-color-info-8: var(--fd-color-blue-8);","--fd-color-info-9: var(--fd-color-blue-9);","--fd-color-info-10: var(--fd-color-blue-10);","--fd-color-grey-1: #FFFFFF;","--fd-color-grey-2: #F5F6F8;","--fd-color-grey-3: #F0F1F4;","--fd-color-grey-4: #EDEFF3;","--fd-color-grey-5: #E6E8ED;","--fd-color-grey-6: #EBECEE;","--fd-color-grey-7: #E1E3E5;","--fd-color-grey-8: #D7D9DC;","--fd-color-grey-9: #B5B8BE;","--fd-color-grey-10: #838892;","--fd-color-grey-11: #525967;","--fd-color-grey-12: #141E31;","--fd-color-grey-13: #000000;","--fd-color-transparent-1: #000000;","--fd-color-transparent-2: rgba(0, 10, 31, 0.92);","--fd-color-transparent-3: rgba(1, 11, 31, 0.68);","--fd-color-transparent-4: rgba(2, 12, 33, 0.49);","--fd-color-transparent-5: rgba(0, 10, 31, 0.29);","--fd-color-transparent-6: rgba(5, 18, 36, 0.16);","--fd-color-transparent-7: rgba(5, 22, 38, 0.12);","--fd-color-transparent-8: rgba(5, 17, 42, 0.08);","--fd-color-transparent-9: rgba(5, 25, 75, 0.1);","--fd-color-transparent-10: rgba(30, 55, 105, 0.08);","--fd-color-transparent-11: rgba(5, 22, 72, 0.06);","--fd-color-transparent-12: rgba(5, 30, 80, 0.04);","--fd-color-transparent-13: transparent;","--fd-border-radius-xs: 2px;","--fd-border-radius-sm: 3px;","--fd-border-radius: 4px;","--fd-border-radius-lg: 6px;","--fd-border-radius-xl: 8px;","--fd-gap-xs: 2px;","--fd-gap-sm: 4px;","--fd-gap: 8px;","--fd-gap-lg: 10px;","--fd-gap-xl: 12px;","--fd-gap-2xl: 16px;","--fd-gap-3xl: 20px;","--fd-gap-4xl: 24px;","--fd-gap-5xl: 32px;","--fd-padding-layout-3xs: 2px;","--fd-padding-layout-2xs: 4px;","--fd-padding-layout-xs: 8px;","--fd-padding-layout-sm: 12px;","--fd-padding-layout: 16px;","--fd-padding-layout-lg: 20px;","--fd-padding-layout-xl: 24px;","--fd-padding-layout-2xl: 32px;","--fd-padding-layout-3xl: 48px;","--fd-padding-zero: 0;","--fd-padding-2xs: 2px;","--fd-padding-xs: 4px;","--fd-padding-sm: 6px;","--fd-padding: 8px;","--fd-padding-lg: 12px;","--fd-padding-xl: 16px;","--fd-padding-2xl: 20px;","--fd-padding-3xl: 24px;","--fd-padding-4xl: 32px;","--fd-control-height-xs: 16px;","--fd-control-height-sm: 24px;","--fd-control-height: 32px;","--fd-control-height-lg: 40px;","--fd-font-size-sm: 12px;","--fd-font-size: 14px;","--fd-font-size-lg: 16px;","--fd-font-size-xl: 18px;","--fd-font-size-2xl: 20px;","--fd-font-size-heading-1: 38px;","--fd-font-size-heading-2: 30px;","--fd-font-size-heading-3: 24px;","--fd-font-size-heading-4: 20px;","--fd-font-size-heading-5: 16px;","--fd-control-item-font-weight-active: 400;","--fd-icon-size-2sm: 12px;","--fd-icon-size-sm: 14px;","--fd-icon-size: 16px;","--fd-icon-size-lg: 18px;","--fd-line-height-sm: 20px;","--fd-line-height: 22px;","--fd-line-height-lg: 24px;","--fd-line-height-xl: 26px;","--fd-line-height-2xl: 28px;","--fd-line-height-heading-1: 46px;","--fd-line-height-heading-2: 38px;","--fd-line-height-heading-3: 32px;","--fd-line-height-heading-4: 28px;","--fd-line-height-heading-5: 24px;","--fd-line-width: 1px;","--fd-line-width-bold: 2px;","--fd-line-width-focus: 4px;","--fd-control-outline-width: 2px;","--fd-color-primary: var(--fd-color-brand-6);","--fd-color-primary-active: var(--fd-color-brand-7);","--fd-color-primary-hover: var(--fd-color-brand-5);","--fd-color-primary-bg: var(--fd-color-brand-1);","--fd-color-primary-bg-active: var(--fd-color-brand-3);","--fd-color-primary-bg-hover: var(--fd-color-brand-2);","--fd-color-primary-border: var(--fd-color-brand-3);","--fd-color-primary-border-hover: var(--fd-color-brand-4);","--fd-color-primary-text: var(--fd-color-brand-6);","--fd-color-primary-text-active: var(--fd-color-brand-7);","--fd-color-primary-text-hover: var(--fd-color-brand-5);","--fd-color-link: var(--fd-color-brand-6);","--fd-color-link-active: var(--fd-color-brand-7);","--fd-color-link-hover: var(--fd-color-brand-4);","--fd-color-control-outline: rgba(0, 184, 153, 0.1);","--fd-color-info: var(--fd-color-info-6);","--fd-color-info-active: var(--fd-color-info-7);","--fd-color-info-hover: var(--fd-color-info-4);","--fd-color-info-bg: var(--fd-color-info-1);","--fd-color-info-bg-hover: var(--fd-color-info-2);","--fd-color-info-border: var(--fd-color-info-3);","--fd-color-info-border-hover: var(--fd-color-info-4);","--fd-color-info-text: var(--fd-color-info-6);","--fd-color-info-text-active: var(--fd-color-info-7);","--fd-color-info-text-hover: var(--fd-color-info-5);","--fd-color-success: var(--fd-color-success-6);","--fd-color-success-active: var(--fd-color-success-7);","--fd-color-success-hover: var(--fd-color-success-4);","--fd-color-success-bg: var(--fd-color-success-1);","--fd-color-success-bg-hover: var(--fd-color-success-2);","--fd-color-success-border: var(--fd-color-success-3);","--fd-color-success-border-hover: var(--fd-color-success-4);","--fd-color-success-text: var(--fd-color-success-6);","--fd-color-success-text-active: var(--fd-color-success-7);","--fd-color-success-text-hover: var(--fd-color-success-5);","--fd-color-warning: var(--fd-color-warning-6);","--fd-color-warning-active: var(--fd-color-warning-7);","--fd-color-warning-hover: var(--fd-color-warning-4);","--fd-color-warning-bg: var(--fd-color-warning-1);","--fd-color-warning-bg-hover: var(--fd-color-warning-2);","--fd-color-warning-border: var(--fd-color-warning-3);","--fd-color-warning-border-hover: var(--fd-color-warning-4);","--fd-color-warning-text: var(--fd-color-warning-6);","--fd-color-warning-text-active: var(--fd-color-warning-7);","--fd-color-warning-text-hover: var(--fd-color-warning-5);","--fd-color-warning-outline: rgba(240, 168, 0, 0.1);","--fd-color-error: var(--fd-color-error-6);","--fd-color-error-active: var(--fd-color-error-7);","--fd-color-error-hover: var(--fd-color-error-5);","--fd-color-error-bg: var(--fd-color-error-1);","--fd-color-error-bg-hover: var(--fd-color-error-2);","--fd-color-error-bg-active: var(--fd-color-error-3);","--fd-color-error-border: var(--fd-color-error-3);","--fd-color-error-border-hover: var(--fd-color-error-4);","--fd-color-error-text: var(--fd-color-error-6);","--fd-color-error-text-active: var(--fd-color-error-7);","--fd-color-error-text-hover: var(--fd-color-error-5);","--fd-color-error-outline: rgba(235, 80, 80, 0.06);","--fd-color-white: #FFFFFF;","--fd-color-black: #000000;","--fd-color-transparent: var(--fd-color-transparent-13);","--fd-color-text: var(--fd-color-transparent-2);","--fd-color-text-secondary: var(--fd-color-transparent-3);","--fd-color-text-tertiary: var(--fd-color-transparent-4);","--fd-color-text-quaternary: var(--fd-color-transparent-5);","--fd-color-text-placeholder: var(--fd-color-text-quaternary);","--fd-color-text-description: var(--fd-color-text-tertiary);","--fd-color-text-disabled: var(--fd-color-text-quaternary);","--fd-color-text-data-disabled: var(--fd-color-text-disabled);","--fd-color-text-heading: var(--fd-color-text);","--fd-color-text-light-solid: #FFFFFF;","--fd-color-text-label: var(--fd-color-text-secondary);","--fd-color-text-active: var(--fd-color-fill);","--fd-color-fill: var(--fd-color-transparent-7);","--fd-color-fill-secondary: var(--fd-color-transparent-9);","--fd-color-fill-tertiary: var(--fd-color-transparent-11);","--fd-color-fill-quaternary: var(--fd-color-transparent-12);","--fd-color-bg-container: var(--fd-color-white);","--fd-color-bg-container-disabled: var(--fd-color-fill-quaternary);","--fd-color-bg-elevated: #FFFFFF;","--fd-color-bg-spotlight: var(--fd-color-transparent-3);","--fd-color-bg-mask: var(--fd-color-transparent-5);","--fd-control-item-bg-hover: var(--fd-color-fill-tertiary);","--fd-control-item-bg-active: var(--fd-color-primary-bg);","--fd-control-item-bg-active-hover: var(--fd-color-primary-bg-hover);","--fd-control-item-bg-active-disabled: var(--fd-color-fill-secondary);","--fd-color-bg-text-hover: var(--fd-color-fill-quaternary);","--fd-color-bg-text-active: var(--fd-color-fill-tertiary);","--fd-color-fill-alter: var(--fd-color-fill-quaternary);","--fd-color-fill-content: var(--fd-color-fill-secondary);","--fd-color-icon: var(--fd-color-text-tertiary);","--fd-color-icon-hover: var(--fd-color-text-secondary);","--fd-color-icon-active: var(--fd-color-text);","--fd-color-icon-normal: var(--fd-color-text-secondary);","--fd-color-icon-disabled: var(--fd-color-transparent-7);","--fd-color-border: var(--fd-color-grey-5);","--fd-color-border-secondary: var(--fd-color-grey-4);","--fd-color-split: var(--fd-color-border-secondary);","--fd-box-shadow: 0 0 2px 0 rgba(9, 30, 64, 0.02), 0 4px 8px 0 rgba(9, 30, 64, .06), 0 4px 24px 6px rgba(9, 30, 64, .04);","--fd-box-shadow-secondary: 0 0 4px 0 rgba(9, 30, 64, 0.05), 0 6px 16px -1px rgba(9, 30, 64, .06), 0 6px 32px 8px rgba(9, 30, 64, .04);","--fd-box-shadow-tertiary: 0 0 5px 0 rgba(9, 30, 64, 0.06), 0 10px 24px -2px rgba(9, 30, 64, .1), 0 10px 48px 12px rgba(9, 30, 64, .04);"]};var sU,aWe=mt(sU="-fd-".concat(Date.now(),"-")).call(sU,Math.random()),f3=function(t){return t.replace(/([a-z])([A-Z(\d+)])/g,"$1-$2").toLowerCase()},iWe=function(t,r){var n,o,a,i={},l="";yr(t?.token,function(f,v){f&&(i[f3(v)]=f)});var s=$t(n=pi(i)).call(n,function(f){var v;return mt(v="--fd-".concat(f,": ")).call(v,i[f],";")});if(t?.scope&&y1?.global){var c;s=mt(c=y1.global).call(c,s)}var d=t?.scope||":root";return l+=kp(o=mt(a="".concat(d," {")).call(a,s.join(""),"}")).call(o),yr(t?.components,function(f,v){var g,h,_,b,x=f3(v),w={};yr(f,function(I,$){if(I){var F;w[mt(F="".concat(x,"-")).call(F,f3($))]=I}});var D=$t(g=pi(w)).call(g,function(I){var $;return mt($="--fd-".concat(I,": ")).call($,w[I],";")});l+=` +`,l+=kp(h=mt(_=mt(b=".".concat(r??zp,"-")).call(b,x,"-css-var {")).call(_,D.join(""),"}")).call(h)}),l},lWe=function(t,r,n){var o=iWe(t,n);H9(o,"".concat(aWe,"-dynamic-theme"),r)},cU=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o1&&arguments[1]!==void 0?arguments[1]:!1,r;t===!1?r={aria:!0,data:!0,attr:!0}:t===!0?r={aria:!0}:r=ue({},t);var n={};return xs(e).forEach(function(a){(r.aria&&(a==="role"||D9(a,tHe))||r.data&&D9(a,rHe)||r.attr&&ya(w9).call(w9,a))&&wn(n,Ee({},a,kt(e,a)))}),n}var Zi={},nHe={get exports(){return Zi},set exports(e){Zi=e}};/*! - Copyright (c) 2017 Jed Watson. - Licensed under the MIT License (MIT), see - http://jedwatson.github.io/classnames -*/(function(e){(function(){var t={}.hasOwnProperty;function r(){for(var n=[],a=0;a"u"||!Pt||Pt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Pt(Boolean,[],function(){})),!0}catch{return!1}}var qy=function(e){ho(r,e);var t=IHe(r);function r(){var n;return Cr(this,r),n=t.apply(this,arguments),n.handleExit=function(){var a=n.props.onAfterExit;a&&a(),n.props.hideScrollBar&&r.removeModalEffect()},n.handleClick=function(a){var o=n.props.onClick;o&&a.target===a.currentTarget&&o(a),n.stopPropagationMouseEvent(a)},n}return Tr(r,[{key:"componentDidMount",value:function(){this.props.hideScrollBar&&this.props.visible&&r.addModalEffect()}},{key:"componentDidUpdate",value:function(a){this.props.hideScrollBar&&this.props.visible&&!a.visible&&r.addModalEffect()}},{key:"stopPropagationMouseEvent",value:function(a){a.stopPropagation()}},{key:"render",value:function(){var a,o=this.props,i=o.visible,l=o.className,s=o.maskClassName,c=o.id,d=o.zIndex,f=o.style,v=o.maskStyle,h=o.mask,g=o.hasAnimation,_=o.destroyOnClose,w=o.onAfterEnter,b=(a=this.props.prefixCls)!==null&&a!==void 0?a:this.context.getPrefixCls("",this.props.prefixCls);return Kr.createPortal(m.createElement($s,{classNames:"mask",appear:g,enter:g,exit:g,timeout:{enter:za.NORMAL,exit:za.FAST},in:i,onExited:this.handleExit,onEntered:w,mountOnEnter:!0,unmountOnExit:_},m.createElement("div",we({className:pe(l,"".concat(b,"-window-mask")),id:c,style:ue({zIndex:d},f),onClick:this.handleClick,onDoubleClick:this.stopPropagationMouseEvent},pa(this.props,{aria:!0,data:!0})),h&&m.createElement("div",{className:pe("".concat(b,"-mask"),s),style:v}),this.props.children)),document.body)}}],[{key:"addModalEffect",value:function(){if(r.modalCount++,!(r.modalCount>1)){var a=document.body.clientWidth0)&&(document.body.style.paddingRight="",document.body.style.overflow="")}},{key:"getScrollBarSize",value:function(){var a=navigator.userAgent.toLowerCase(),o=a.indexOf(" applewebkit/")>-1;return o?9:17}}]),r}(m.Component);qy.defaultProps={hideScrollBar:!0,hasAnimation:!0,destroyOnClose:!0,mask:!0},qy.contextType=fi,qy.modalCount=0;const T9=qy;var $He=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a1&&arguments[1]!==void 0?arguments[1]:"",n=arguments.length>2?arguments[2]:void 0,a=t.props||{},o=ue({key:r},ws(a,"children")),i=a.children||[];return or(i)||(i=[i]),n&&wn(o,R9,n),$.createElement(t.type,o,En(i,function(l,s){var c;return e(l,_t(c="".concat(t.type,"-")).call(c,s))}))},EHe=function(t,r){var n,a=t.className,o=t.component,i=t.icon,l=t.spin,s=t.name,c=t.onClick,d=t.viewBox,f=t.style,v=t.prefixCls,h=$He(t,["className","component","icon","spin","name","onClick","viewBox","style","prefixCls"]),g=Yt("svgicon",v),_=pe(g,Ee({},_t(n="".concat(g,"-")).call(n,s),s),a,{spin:!!l}),w=function(){var y={style:f};return d&&(y.viewBox=d),o?$.createElement(o,we({},R9,y)):i?SHe(i,s,y):null};return $.createElement("i",we({ref:r,className:_,onClick:c},h),w())};const Br=$.forwardRef(EHe);var O9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"CalendarOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M776 201.6H670.4v-52.8c0-22.4-17.6-40-40-40s-40 17.6-40 40v54.4h-160v-54.4c0-22.4-17.6-40-40-40s-40 17.6-40 40v54.4h-99.2c-33.6 0-67.2 14.4-91.2 38.4s-36.8 57.6-36.8 91.2V784c0 35.2 12.8 67.2 36.8 91.2 24 25.6 56 38.4 91.2 38.4h528c70.4 0 128-59.2 128-131.2V329.6c-3.2-68.8-60.8-128-131.2-128zM214.4 296c9.6-9.6 20.8-14.4 33.6-14.4h100.8V336c0 22.4 17.6 40 40 40s40-17.6 40-40v-54.4h160V336c0 22.4 17.6 40 40 40s40-17.6 40-40v-54.4h105.6c27.2 0 48 22.4 48 51.2v80h-624v-80c1.6-14.4 6.4-27.2 16-36.8zM776 835.2H248c-12.8 0-24-4.8-33.6-14.4-9.6-9.6-14.4-22.4-14.4-36.8V492.8h624V784c0 28.8-22.4 51.2-48 51.2z"}),$.createElement("path",{d:"M593.6 771.2c-3.2-1.6-9.6-4.8-28.8-4.8h-27.2V540.8c0-6.4-1.6-11.2-3.2-14.4-4.8-6.4-12.8-8-19.2-6.4-1.6 0-3.2 0-6.4 1.6l-64 17.6c-6.4 1.6-11.2 4.8-14.4 8-3.2 4.8-6.4 9.6-6.4 14.4 0 6.4 1.6 12.8 6.4 16 4.8 3.2 9.6 6.4 16 6.4h3.2l35.2-8v193.6h-27.2c-19.2 0-25.6 1.6-28.8 4.8-4.8 3.2-9.6 8-9.6 19.2 0 8 1.6 12.8 6.4 17.6 4.8 3.2 11.2 6.4 17.6 6.4H576c8 0 14.4-1.6 17.6-6.4 4.8-4.8 6.4-9.6 6.4-17.6 1.6-14.4-3.2-20.8-6.4-22.4z"}))}))};O9.displayName="CalendarOutlined";const CHe=$.memo($.forwardRef(O9));var A9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"CaretDownFilled",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M488 740.8 232 454.4c-19.2-20.8-3.2-52.8 24-52.8h512c27.2 0 41.6 32 24 52.8L536 740.8c-12.8 14.4-35.2 14.4-48 0z"}))}))};A9.displayName="CaretDownFilled";const k9=$.memo($.forwardRef(A9));var P9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"CaretRightFilled",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M658.286 512q0 14.848-10.862 25.71l-256 256q-10.862 10.861-25.71 10.861t-25.71-10.861-10.86-25.71V256q0-14.848 10.862-25.71t25.71-10.861 25.709 10.861l256 256q10.862 10.862 10.862 25.71z"}))}))};P9.displayName="CaretRightFilled";const THe=$.memo($.forwardRef(P9));var N9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"CaretUpFilled",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M488 123.2 232 409.6c-19.2 20.8-3.2 52.8 24 52.8h512c27.2 0 41.6-32 24-52.8L536 123.2c-12.8-14.4-35.2-14.4-48 0z"}))}))};N9.displayName="CaretUpFilled";const RHe=$.memo($.forwardRef(N9));var M9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"CheckCircleFilled",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm254.4 340.8L513.6 699.2c-6.4 8-17.6 12.8-28.8 14.4h-1.6c-9.6 0-19.2-3.2-27.2-11.2l-163.2-152c-16-14.4-17.6-40-1.6-56 14.4-16 40-17.6 56-1.6L480 616l224-262.4c14.4-16 40-19.2 56-4.8 17.6 14.4 20.8 38.4 6.4 56z"}))}))};M9.displayName="CheckCircleFilled";const Yy=$.memo($.forwardRef(M9));var L9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"CheckOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M384 792c-9.6 0-20.8-3.2-28.8-11.2l-224-224c-16-16-16-41.6 0-56 16-16 41.6-16 56 0L384 696l451.2-451.2c16-16 41.6-16 56 0 16 16 16 41.6 0 56l-480 480c-6.4 8-17.6 11.2-27.2 11.2z"}))}))};L9.displayName="CheckOutlined";const OHe=$.memo($.forwardRef(L9));var z9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"CloseCircleFilled",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zM339.2 627.2 454.4 512 339.2 396.8c-16-16-16-41.6 0-56 8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2L512 456l115.2-115.2c8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2c16 16 16 41.6 0 56L568 512l115.2 115.2c16 16 16 41.6 0 56-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2L512 568 396.8 683.2c-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2c-14.4-14.4-14.4-40 0-56z"}))}))};z9.displayName="CloseCircleFilled";const Gu=$.memo($.forwardRef(z9));var B9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"CloseOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"m568 512 291.2-291.2c16-16 16-41.6 0-56-16-16-41.6-16-56 0L512 456 220.8 163.2c-16-16-41.6-16-56 0-16 16-16 41.6 0 56L456 512 163.2 803.2c-16 16-16 41.6 0 56 8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2L512 568l291.2 291.2c8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2c16-16 16-41.6 0-56L568 512z"}))}))};B9.displayName="CloseOutlined";const dg=$.memo($.forwardRef(B9));var j9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"DoubleLeftOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M819.2 776c16 16 16 41.6 0 56-16 16-41.6 16-56 0L478.4 547.2c-8-8-11.2-17.6-11.2-28.8s4.8-20.8 11.2-28.8l284.8-284.8c8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2c16 16 16 41.6 0 56L563.2 520l256 256zM289.6 520l257.6-257.6c16-16 16-41.6 0-56-8-8-17.6-11.2-28.8-11.2s-20.8 3.2-28.8 11.2L204.8 491.2c-8 8-11.2 17.6-11.2 28.8s4.8 20.8 11.2 28.8l284.8 284.8c16 16 41.6 16 56 0 16-16 16-41.6 0-56L289.6 520z"}))}))};j9.displayName="DoubleLeftOutlined";const j6=$.memo($.forwardRef(j9));var U9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"DoubleRightOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M204.8 248c-16-16-16-41.6 0-56 16-16 41.6-16 56 0l284.8 284.8c8 8 11.2 17.6 11.2 28.8s-4.8 20.8-11.2 28.8L260.8 819.2c-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2c-16-16-16-41.6 0-56L460.8 504l-256-256zm529.6 256L476.8 761.6c-16 16-16 41.6 0 56 8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2l284.8-284.8c8-8 11.2-17.6 11.2-28.8s-4.8-20.8-11.2-28.8L534.4 190.4c-16-16-41.6-16-56 0-16 16-16 41.6 0 56l256 257.6z"}))}))};U9.displayName="DoubleRightOutlined";const U6=$.memo($.forwardRef(U9));var H9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"DownOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M867.2 387.2c0 9.6-3.2 20.8-11.2 28.8L540.8 729.6c-16 16-41.6 16-56 0L169.6 414.4c-16-16-16-41.6 0-56 16-16 41.6-16 56 0L512 644.8l286.4-286.4c16-16 41.6-16 56 0 8 8 12.8 17.6 12.8 28.8z"}))}))};H9.displayName="DownOutlined";const W9=$.memo($.forwardRef(H9));var V9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"EllipsisOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M104 512a80 80 0 1 0 160 0 80 80 0 1 0-160 0Zm328 0a80 80 0 1 0 160 0 80 80 0 1 0-160 0Zm328 0a80 80 0 1 0 160 0 80 80 0 1 0-160 0Z"}))}))};V9.displayName="EllipsisOutlined";const AHe=$.memo($.forwardRef(V9));var K9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"ExclamationCircleFilled",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm-40 232c0-22.4 17.6-40 40-40s40 17.6 40 40v240c0 22.4-17.6 40-40 40s-40-17.6-40-40V296zm40 472c-30.4 0-56-25.6-56-56s25.6-56 56-56 56 25.6 56 56c0 32-25.6 57.6-56 56z"}))}))};K9.displayName="ExclamationCircleFilled";const Uc=$.memo($.forwardRef(K9));var q9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"EyeInvisibleOutlined",icon:$.createElement("svg",{viewBox:"0 0 16 16"},$.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14.625 6.8c-.7-.75-1.475-1.4-2.325-1.95l1-1c.25-.25.25-.65 0-.9a.634.634 0 0 0-.9 0l-9.175 9.2c-.25.25-.25.65 0 .9s.65.25.9 0l1.45-1.45c.775.3 1.6.45 2.45.475 3.075 0 5.65-2.375 6.625-3.4a1.385 1.385 0 0 0-.025-1.875ZM13.7 7.825c-.85.9-3.125 2.975-5.7 2.975-.475 0-.975-.075-1.425-.2l.575-.575c.275.1.55.15.85.15a2.427 2.427 0 0 0 2.425-2.425c0-.3-.05-.575-.15-.85L11.4 5.775c.85.525 1.625 1.15 2.325 1.9.025.05.025.1-.025.15Zm-8.075-.55c-.025.15-.05.3-.05.475 0 .15.025.3.05.45L8.45 5.375c-1.3-.25-2.575.6-2.825 1.9ZM4.3 9.525c-.725-.5-1.4-1.075-2-1.7-.05-.05-.05-.1 0-.15.875-.9 3.125-3 5.7-3 .35 0 .7.025 1.025.1l1.025-1.05a6.573 6.573 0 0 0-2.075-.35c-3.05 0-5.65 2.375-6.625 3.4a1.39 1.39 0 0 0 0 1.9c.625.65 1.3 1.225 2.025 1.75l.925-.9Z"}))}))};q9.displayName="EyeInvisibleOutlined";const kHe=$.memo($.forwardRef(q9));var Y9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"EyeOutlined",icon:$.createElement("svg",{viewBox:"0 0 16 16"},$.createElement("path",{d:"M8 5.375a2.625 2.625 0 1 0 0 5.25 2.625 2.625 0 0 0 0-5.25ZM6.625 8a1.375 1.375 0 1 1 2.75 0 1.375 1.375 0 0 1-2.75 0Z"}),$.createElement("path",{d:"M14.877 7.732 14.312 8l.565.268v.002l-.003.004-.006.013a2.911 2.911 0 0 1-.098.187 7.572 7.572 0 0 1-.3.494 9.008 9.008 0 0 1-1.22 1.48c-1.107 1.078-2.834 2.177-5.25 2.177-2.417 0-4.143-1.099-5.25-2.178a8.956 8.956 0 0 1-1.22-1.479 7.564 7.564 0 0 1-.404-.694l-.002-.004-.001-.001L1.687 8a62.44 62.44 0 0 1-.564-.268V7.73l.003-.004a1.843 1.843 0 0 1 .027-.055l.077-.145c.068-.122.167-.292.3-.494a9.008 9.008 0 0 1 1.22-1.48C3.857 4.474 5.583 3.375 8 3.375c2.416 0 4.143 1.099 5.25 2.177a8.957 8.957 0 0 1 1.22 1.48 7.572 7.572 0 0 1 .398.681l.004.008.002.005.002.004v.001l.001.001ZM2.575 7.718c-.07.107-.129.202-.176.282a7.707 7.707 0 0 0 1.224 1.552c.945.922 2.375 1.823 4.377 1.823s3.432-.901 4.377-1.823A7.708 7.708 0 0 0 13.601 8a7.708 7.708 0 0 0-1.224-1.552C11.432 5.526 10.002 4.625 8 4.625s-3.432.901-4.377 1.823a7.68 7.68 0 0 0-1.048 1.27Zm11.173.013Z"}),$.createElement("path",{d:"m14.313 8 .564-.267.127.267-.127.267L14.312 8Zm-13.19-.267L1.687 8l-.564.267L.996 8l.127-.267Z"}))}))};Y9.displayName="EyeOutlined";const PHe=$.memo($.forwardRef(Y9));var G9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"FolderFilled",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M832 272H512l-80-80H193.6c-44.8 0-81.6 36.8-81.6 81.6v476.8c0 44.8 36.8 81.6 81.6 81.6h636.8c44.8 0 81.6-36.8 81.6-81.6V352c0-43.2-35.2-80-80-80zm80 160H112v-43.2h800V432z"}))}))};G9.displayName="FolderFilled";const NHe=$.memo($.forwardRef(G9));var X9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"FolderOpenFilled",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M880 449.6H227.2c-8 0-16 3.2-20.8 6.4-6.4 4.8-9.6 11.2-9.6 17.6l-62.4 320v3.2c0 8 14.4 19.2 32 19.2h652.8c16 0 27.2-11.2 30.4-22.4L872 678.4l40-209.6c1.6-11.2-14.4-19.2-32-19.2z"}),$.createElement("path",{d:"M227.2 406.4h643.2V360c0-41.6-33.6-76.8-75.2-76.8h-304L416 206.4H187.2c-41.6 0-75.2 33.6-75.2 76.8v393.6l40-206.4c6.4-38.4 33.6-64 75.2-64z"}))}))};X9.displayName="FolderOpenFilled";const MHe=$.memo($.forwardRef(X9));var Z9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"LeftOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M636.8 867.2c-9.6 0-20.8-3.2-28.8-11.2L294.4 540.8c-16-16-16-41.6 0-56l315.2-315.2c16-16 41.6-16 56 0 16 16 16 41.6 0 56L379.2 512l286.4 286.4c16 16 16 41.6 0 56-8 8-17.6 12.8-28.8 12.8z"}))}))};Z9.displayName="LeftOutlined";const H6=$.memo($.forwardRef(Z9));var Q9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"MinusOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M864 560H160c-27.2 0-48-20.8-48-48s20.8-48 48-48h704c27.2 0 48 20.8 48 48s-20.8 48-48 48z"}))}))};Q9.displayName="MinusOutlined";const LHe=$.memo($.forwardRef(Q9));var J9=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"PlusOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M512 913.6c-20.8 0-38.4-17.6-38.4-38.4V550.4H148.8c-20.8 0-38.4-17.6-38.4-38.4 0-20.8 17.6-38.4 38.4-38.4h326.4V148.8c0-20.8 17.6-38.4 38.4-38.4 20.8 0 38.4 17.6 38.4 38.4v326.4h326.4c20.8 0 38.4 17.6 38.4 38.4 0 20.8-17.6 38.4-38.4 38.4h-328v326.4c0 17.6-17.6 35.2-38.4 35.2z"}),$.createElement("path",{d:"M512 112c20.8 0 36.8 16 36.8 36.8v328h328c20.8 0 36.8 16 36.8 36.8 0 20.8-16 36.8-36.8 36.8h-328v328c0 20.8-16 36.8-36.8 36.8-20.8 0-36.8-16-36.8-36.8V548.8H148.8c-20.8 0-36.8-16-36.8-36.8 0-20.8 16-36.8 36.8-36.8h328V148.8C475.2 128 491.2 112 512 112m0-3.2c-22.4 0-40 17.6-40 40v324.8H148.8c-22.4 0-40 17.6-40 40s17.6 40 40 40h324.8v324.8c0 22.4 17.6 40 40 40s40-17.6 40-40V552h324.8c22.4 0 40-17.6 40-40s-17.6-40-40-40H552V148.8c0-22.4-17.6-40-40-40z"}))}))};J9.displayName="PlusOutlined";const zHe=$.memo($.forwardRef(J9));var eU=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"QuestionCircleFilled",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm40 696c-6.4 12.8-16 24-30.4 30.4-14.4 6.4-28.8 6.4-43.2 0-12.8-6.4-24-16-30.4-30.4-6.4-14.4-6.4-28.8 0-43.2 6.4-12.8 16-24 30.4-30.4 14.4-6.4 28.8-6.4 43.2 0 12.8 6.4 24 16 30.4 30.4 6.4 14.4 6.4 28.8 0 43.2zm89.6-320c-12.8 20.8-28.8 40-46.4 57.6-12.8 12.8-22.4 22.4-28.8 30.4-6.4 6.4-11.2 14.4-16 22.4-3.2 6.4-6.4 12.8-6.4 19.2-1.6 8-1.6 14.4-1.6 22.4 0 27.2-11.2 41.6-35.2 41.6-6.4 0-14.4 0-20.8-1.6-4.8-1.6-8-3.2-12.8-6.4-3.2-3.2-4.8-8-4.8-12.8-1.6-6.4-1.6-12.8-1.6-19.2 0-43.2 22.4-88 67.2-131.2 11.2-9.6 19.2-17.6 25.6-24 6.4-6.4 11.2-11.2 16-19.2 3.2-4.8 4.8-11.2 6.4-17.6 1.6-6.4 1.6-14.4 1.6-20.8 1.6-16-4.8-33.6-17.6-44.8-12.8-11.2-30.4-16-48-16-17.6-1.6-36.8 4.8-49.6 17.6-12.8 11.2-19.2 27.2-19.2 43.2-1.6 25.6-14.4 38.4-36.8 38.4-17.6 3.2-33.6-8-36.8-25.6v-11.2c0-35.2 16-68.8 41.6-92.8 27.2-27.2 65.6-41.6 105.6-40 36.8-1.6 73.6 11.2 100.8 35.2 25.6 27.2 40 64 36.8 100.8-4.8 17.6-9.6 38.4-19.2 54.4z"}))}))};eU.displayName="QuestionCircleFilled";const tU=$.memo($.forwardRef(eU));var rU=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"RightOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M387.2 867.2c-9.6 0-20.8-3.2-28.8-11.2-16-16-16-41.6 0-56l286.4-288-286.4-286.4c-16-16-16-41.6 0-56 16-16 41.6-16 56 0l315.2 315.2c16 16 16 41.6 0 56L414.4 854.4c-8 8-17.6 12.8-27.2 12.8z"}))}))};rU.displayName="RightOutlined";const Gy=$.memo($.forwardRef(rU));var nU=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"SearchOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M892.8 835.2 726.4 668.8C772.8 609.6 800 536 800 456c0-190.4-153.6-344-344-344S112 265.6 112 456s153.6 344 344 344c80 0 155.2-27.2 212.8-73.6l166.4 166.4c8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2c14.4-16 14.4-41.6 0-57.6zM456 720c-145.6 0-264-118.4-264-264s118.4-264 264-264 264 118.4 264 264-118.4 264-264 264z"}))}))};nU.displayName="SearchOutlined";const aU=$.memo($.forwardRef(nU));var oU=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"SortFilled",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M488 123.2 232 409.6c-19.2 20.8-3.2 52.8 24 52.8h512c27.2 0 41.6-32 24-52.8L536 123.2c-12.8-14.4-35.2-14.4-48 0zm0 777.6L232 614.4c-19.2-20.8-3.2-52.8 24-52.8h512c27.2 0 41.6 32 24 52.8L536 900.8c-12.8 14.4-35.2 14.4-48 0z"}))}))};oU.displayName="SortFilled";const BHe=$.memo($.forwardRef(oU));var iU=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"TimeOutlined",icon:$.createElement("svg",{viewBox:"0 0 1100 1024"},$.createElement("path",{d:"M512 144c203.2 0 368 164.8 368 368S715.2 880 512 880 144 715.2 144 512s164.8-368 368-368m0-80C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm318.4 464c0-22.4-17.6-40-40-40h-248V241.6c0-22.4-17.6-40-40-40s-40 17.6-40 40V528c0 22.4 17.6 40 40 40h286.4c24 0 41.6-17.6 41.6-40z"}))}))};iU.displayName="TimeOutlined";const jHe=$.memo($.forwardRef(iU));var lU=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"UpOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M788.8 694.4c-9.6 0-20.8-3.2-28.8-11.2L504 425.6 246.4 683.2c-16 16-41.6 16-56 0-16-16-16-41.6 0-56l284.8-284.8c14.4-14.4 41.6-14.4 56 0L816 627.2c16 16 16 41.6 0 56-6.4 8-17.6 11.2-27.2 11.2z"}))}))};lU.displayName="UpOutlined";const UHe=$.memo($.forwardRef(lU));var sU=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"VerticalLeftOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M763.2 769.6c16 16 16 41.6 0 56-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2L420.8 540.8c-8-8-11.2-17.6-11.2-28.8s4.8-20.8 11.2-28.8l284.8-284.8c16-16 41.6-16 56 0 16 16 16 41.6 0 56L505.6 512l257.6 257.6zM321.6 172.8c-22.4 0-40 17.6-40 40v598.4c0 22.4 17.6 40 40 40s40-17.6 40-40V212.8c0-22.4-17.6-40-40-40z"}))}))};sU.displayName="VerticalLeftOutlined";const HHe=$.memo($.forwardRef(sU));var cU=function(t,r){return $.createElement(Br,we({},t,{ref:r,name:"VerticalRightOutlined",icon:$.createElement("svg",{viewBox:"0 0 1024 1024"},$.createElement("path",{d:"M260.8 254.4c-16-16-16-41.6 0-56 8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2l284.8 284.8c8 8 11.2 17.6 11.2 28.8s-4.8 20.8-11.2 28.8L318.4 825.6c-16 16-41.6 16-56 0-16-16-16-41.6 0-56l256-257.6-257.6-257.6zm441.6 596.8c22.4 0 40-17.6 40-40V212.8c0-22.4-17.6-40-40-40s-40 17.6-40 40v598.4c0 22.4 17.6 40 40 40z"}))}))};cU.displayName="VerticalRightOutlined";const WHe=$.memo($.forwardRef(cU));var VHe="​",KHe=function(t){var r=t.prefixCls,n=t.className,a=t.style,o=t.children,i=pe("".concat(r,"-icon-wrapper"),n);return $.createElement("span",{className:i,style:a},VHe,$.createElement("span",{className:"".concat(r,"-icon")},o))};const uU=KHe;var qHe=function(t,r){var n=t.loading,a=n===void 0?!1:n,o=t.size,i=t.type,l=i===void 0?"normal":i,s=t.disabled,c=s===void 0?!1:s,d=t.danger,f=d===void 0?!1:d,v=t.loadingWhenClick,h=v===void 0?!1:v,g=t.compact,_=g===void 0?!1:g,w=t.block,b=w===void 0?!1:w,y=t.htmlType,D=y===void 0?"button":y,F=t.href,S=t.onClick,I=t.className,C=t.id,R=t.shape,P=t.icon,O=t.children,N=t.style,A=t.prefixCls,z=t.target,k=m.useRef(),M=xo(o)||"normal",T=m.useState(!1),B=me(T,2),L=B[0],K=B[1],X=m.useState(!1),ee=me(X,2),q=ee[0],G=ee[1],W=Yt("button",A);m.useImperativeHandle(r,function(){return{click:function(){k.current&&k.current.click()}}});var V=function(fe){if(!(a||L||c||!br(S))){var ge=S(fe);if(V5e(ge)){K(!0);var le=function(){return K(!1)};ge.then(le,le)}}},Y=function(){k.current&&k.current.blur()},Z=function(fe){c||a||fe.key===ko.ENTER&&(G(!0),setTimeout(function(){G(!1)},za.NORMAL))},te=function(){return a||h&&L},J=function(){var fe,ge=P,le=(!Nn(P)||a)&&ut(O),_e=_&&fn(["text","text-normal"],l);return pe(W,"".concat(W,"-css-var"),"size-".concat(M),"style-".concat(l),(fe={loading:te(),disable:c,danger:f,block:b,"has-icon":ge,"is-only-icon":le},Ee(fe,"shape-".concat(R),R),Ee(fe,"is-active",q),Ee(fe,"compact-".concat(M),_e),fe),I)},ae=function(){return ws(t,["href","target","size","className","style","type","loading","disabled","icon","children","shape","loadingWhenClick","compact","danger","block","htmlType"])},re=function(){var fe=P,ge=te();return $.createElement($.Fragment,null,ge&&$.createElement(uU,{prefixCls:W},$.createElement("span",{className:"loader-icon"})),!ge&&fe&&$.createElement(uU,{prefixCls:W},fe),O&&$.createElement("span",null,O))},ie=function(){return $.createElement("a",we({ref:k,className:J(),style:N,onClick:V,onMouseUp:Y,onKeyPress:Z,href:F,target:z||"__block"},ae()),re())},ve=function(){return $.createElement("button",we({ref:k,disabled:a||c,type:D,className:J(),id:C,style:N},ae(),{onClick:V,onMouseUp:Y,onKeyPress:Z}),re())};return F?ie():ve()};const YHe=m.forwardRef(qHe);var GHe=function(t){var r,n=t.type,a=n===void 0?"normal":n,o=t.size,i=o===void 0?"normal":o,l=t.className,s=t.id,c=t.style,d=t.children,f=t.prefixCls,v=Yt("button",f),h=pe("".concat(v,"-group"),l,"type-".concat(a));return m.createElement("div",{className:h,style:c,id:s},Ct(r=m.Children).call(r,d,function(g){return ut(g)||ut(g.props)?null:m.cloneElement(g,{type:a,size:i})}))};const XHe=GHe;var W6=YHe;W6.displayName="Button",W6.Group=XHe;const jr=W6;var ZHe=m.createContext({});const dU=ZHe;var fU=["xxl","xl","lg","md","sm","xs"],Xy={xs:"(max-width: 575px)",sm:"(min-width: 576px)",md:"(min-width: 768px)",lg:"(min-width: 992px)",xl:"(min-width: 1200px)",xxl:"(min-width: 1600px)"},Xu=new fa,V6=-1,Zy={},QHe={matchHandlers:{},dispatch:function(t){return Zy=t,Xu.forEach(function(r){return r(Zy)}),Xu.size>=1},subscribe:function(t){return Xu.size||this.register(),V6+=1,Xu.set(V6,t),t(Zy),V6},unsubscribe:function(t){Xu.delete(t),Xu.size||this.unregister()},unregister:function(){var t=this;xs(Xy).forEach(function(r){var n=Xy[r],a=t.matchHandlers[n];a&&a.mql.removeListener(a.listener)}),Xu.clear()},register:function(){var t=this;xs(Xy).forEach(function(r){var n=Xy[r],a=function(l){var s=l.matches;t.dispatch(ue(ue({},Zy),Ee({},r,s)))},o=window.matchMedia(n);o.addListener(a),t.matchHandlers[n]={mql:o,listener:a},a(o)})}};const Qy=QHe;function JHe(e,t){var r=typeof Mu<"u"&&Lu(e)||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=eWe(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,a=function(){};return{s:a,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return o=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!o&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function eWe(e,t){var r;if(e){if(typeof e=="string")return pU(e,t);var n=At(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Il(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return pU(e,t)}}function pU(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0?S[0]/-2:void 0,P=S[1]>0?S[1]/-2:void 0;if(R&&(C.marginLeft=R,C.marginRight=R),b){var O=me(S,2);C.rowGap=O[1]}else P&&(C.marginTop=P,C.marginBottom=P);var N=m.useMemo(function(){return{gutter:S,wrap:d,supportFlexGap:b}},[S,d,b]);return $.createElement(dU.Provider,{value:N},$.createElement("div",we({},v,{className:I,style:ue(ue({},C),i),ref:t}),l))});const fg=rWe;var nWe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a0){var I=a[0]/2;S.paddingLeft=I,S.paddingRight=I}if(a&&a[1]>0&&!i){var C=a[1]/2;S.paddingTop=C,S.paddingBottom=C}return g&&(S.flex=aWe(g),g&&o===!1&&!S.minWidth&&(S.minWidth=0)),$.createElement("div",we({},b,{style:ue(ue({},S),_),className:F,ref:t}),h)});const Hc=iWe;var K6={},lWe={get exports(){return K6},set exports(e){K6=e}},q6={},sWe={get exports(){return q6},set exports(e){q6=e}},vU=gs,cWe=TypeError,hU=function(e,t){if(!delete e[t])throw new cWe("Cannot delete property "+vU(t)+" of "+vU(e))},uWe=Re,dWe=Ma,fWe=Xb,pWe=Ou,vWe=ni,hWe=Zj,gWe=a0,_We=i0,mWe=o0,Y6=hU,xWe=Fh,bWe=xWe("splice"),yWe=Math.max,wWe=Math.min;uWe({target:"Array",proto:!0,forced:!bWe},{splice:function(t,r){var n=dWe(this),a=vWe(n),o=fWe(t,a),i=arguments.length,l,s,c,d,f,v;for(i===0?l=s=0:i===1?(l=0,s=a-o):(l=i-2,s=wWe(yWe(pWe(r),0),a-o)),gWe(a+l-s),c=_We(n,s),d=0;da-s+l;d--)Y6(n,d-1)}else if(l>s)for(d=a-s;d>o;d--)f=d+s-1,v=d+l-1,f in n?n[v]=n[f]:Y6(n,v);for(d=0;d0&&arguments[0]!==void 0?arguments[0]:{};return this.valueMap=n,this.errorMap={},new da(function(a,o){if(Nn(r.ruleMap))return a();var i=[];return gr(r.ruleMap,function(l,s){var c=kt(n,s);gr(l,function(d){i.push(r.validateItem(c,d,s))})}),da.all(i).then(function(){return a()}).catch(function(){return o(r.errorMap)})})}},{key:"validateItem",value:function(r){var n=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=r;return br(a.transform)&&(i=a.transform(i)),new da(function(l,s){if(br(a.validate))return a.validate(i)?l(void 0):s();if(br(a.promiseValidate))return l(a.promiseValidate(i));if(!Nn(a.type)){var c=or(a.type)?a.type:[a.type],d=!0;if(gr(c,function(w){if(!n.isTypeValid(i,w))return d=!1,!1}),!d)return s()}if(IE(a.pattern)&&!a.pattern.test(i)||a.required&&(!La(n.valueMap,o)||q5e(i)))return s();if(!ut(a.length)){if(Za(i)||or(i)){if(i.length!==a.length)return s()}else if(zr(i)&&i!==a.length)return s()}if(or(a.range)){var f=ut(a.range[0])?-1/0:a.range[0],v=ut(a.range[1])?1/0:a.range[1];if(Za(i)||or(i)){if(i.lengthv)return s()}else if(zr(i)&&(iv))return s()}if(_p(a.fields)){if(!_p(i))return s();if(a.additional===!1){var h=!1;if(gr(kt(n.valueMap,o),function(w,b){if(!La(a.fields,b))return h=!0,!1}),h)return s()}var g=[];return gr(a.fields,function(w,b){var y=i[b];gr(w,function(D){var F;g.push(n.validateItem(y,D,_t(F="".concat(o,".")).call(F,b)))})}),l(da.all(g))}if(or(Zu(a))){if(!or(i))return s();var _=[];return gr(Zu(a),function(w,b){var y=i[b];gr(w,function(D){var F;_.push(n.validateItem(y,D,_t(F="".concat(o,".")).call(F,b)))})}),l(da.all(_))}l(void 0)}).catch(function(){if(o){var l="";if(Za(a.message)?l=a.message:br(a.message)&&(l=a.message(i)),!La(n.errorMap,o))si(n.errorMap,o,[l]);else{var s=kt(n.errorMap,o);s.push(l)}}return da.reject()})}},{key:"isTypeValid",value:function(r,n){switch(n){case Qu.STRING:case Qu.NUMBER:case Qu.BOOLEAN:case Qu.FUNCTION:return n===Pn(r);case Qu.ARRAY:return or(r);case Qu.DATE:return r instanceof Date;case Qu.OBJECT:return _p(r);default:return!1}}}]),e}();const _U=ZWe;var QWe=function(){function e(t){Cr(this,e),this.init(t)}return Tr(e,[{key:"init",value:function(r){var n=r.value,a=r.name,o=r.rules,i=r.emit;this.value=n,this.name=a,this.rules=o,this.emit=i}},{key:"set",value:function(r,n){this.emit(r,this.name,n)}}]),e}(),JWe=function(){function e(){var t=this,r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{value:{},rules:{},layout:"horizontal",labelWidth:"80",labelSuffix:"",onAfterValidate:function(){},onAfterOptionUpdate:function(){}};Cr(this,e),this.updateRule=function(n){gr(n.rules,function(a,o){si(t.rules,o,pg(a))})},this.emit=function(n,a,o){n==="value"&&(si(t.value,a,o),t.onValuesChange&&t.onValuesChange(xp(t.value,vg(a)),t.value))},this.fields=[],this.initialValue=r.value||{},this.value=dy(r.value)||{},this.rules={},this.updateRule(r),this.layout=r.layout||"horizontal",this.labelWidth=r.labelWidth||"80",this.labelSuffix=r.labelSuffix||"",this.error={},this.onAfterValidate=r.onAfterValidate||function(){},this.onAfterOptionUpdate=r.onAfterOptionUpdate||function(){},this.onFinish=r.onFinish,this.onFinishFailed=r.onFinishFailed,this.onValuesChange=r.onValuesChange}return Tr(e,[{key:"addField",value:function(r){var n=new QWe(ue({emit:this.emit},r));return this.fields.push(n),n}},{key:"removeField",value:function(r){var n;Jy(n=this.fields).call(n,this.fields.indexOf(r),1)}},{key:"updateOption",value:function(r){ue(this,r),r.rules&&this.updateRule(r),this.onAfterOptionUpdate()}},{key:"getItemValue",value:function(r){return kt(this.value,r)}},{key:"getItemError",value:function(r){return kt(this.error,r)}},{key:"getLabelStyle",value:function(r){var n=r||this.labelWidth;return this.layout!=="horizontal"||!n?{}:{width:parseInt(n,10)}}},{key:"getLabelSuffix",value:function(){return this.labelSuffix}},{key:"getRules",value:function(){return this.rules}},{key:"getValue",value:function(){return this.value}},{key:"getError",value:function(){return Z6(this.error)}},{key:"submit",value:function(){var r=this;this.validate().then(function(){r.onFinish&&r.onFinish(r.value)},function(){if(r.onFinishFailed){var n=[];gr(r.error,function(a,o){n.push({name:pg(o),errors:pg(a)})}),r.onFinishFailed({values:r.value,errorFields:n})}})}},{key:"resetFields",value:function(r){var n=this;r?gr(r,function(a){var o=kt(n.initialValue,a);si(n.value,a,o)}):this.value=dy(this.initialValue)}},{key:"validate",value:function(){var r=this,n=dy(this.rules);gr(this.fields,function(o){var i=o.name,l=o.rules;l&&si(n,i,Nc(kt(n,i,[]),l))});var a=new _U(n);return new da(function(o,i){a.validate(r.value).then(function(){r.onAfterValidate(),o()}).catch(function(l){r.error=l,r.onAfterValidate(),i(Z6(l))})})}},{key:"validateItem",value:function(r){var n=this,a=xp(this.value,vg(r)),o=xp(this.rules,vg(r)),i=bE(this.fields,function(s){return vg(s.name)===vg(r)});i?.rules&&si(o,r,Nc(kt(o,r,[]),i.rules));var l=new _U(o);return new da(function(s,c){l.validate(a).then(function(){Iy(n.error,r),s()}).catch(function(d){FE(n.error,d),c(Z6(d))})})}}]),e}();new JWe;var hg=m.createContext({}),eVe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a1&&arguments[1]!==void 0?arguments[1]:!1,r;t===!1?r={aria:!0,data:!0,attr:!0}:t===!0?r={aria:!0}:r=ae({},t);var n={};return pi(e).forEach(function(o){(r.aria&&(o==="role"||hU(o,vWe))||r.data&&hU(o,gWe)||r.attr&&bo(gU).call(gU,o))&&Sn(n,je({},o,Nt(e,o)))}),n}function v3(e,t){return v3=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,o){return n.__proto__=o,n},v3(e,t)}function Ih(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,v3(e,t)}var g3={},hWe={get exports(){return g3},set exports(e){g3=e}},_We="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",mWe=_We,xWe=mWe;function _U(){}function mU(){}mU.resetWarningCache=_U;var bWe=function(){function e(n,o,a,i,l,s){if(s!==xWe){var c=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw c.name="Invariant Violation",c}}e.isRequired=e;function t(){return e}var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:mU,resetWarningCache:_U};return r.PropTypes=r,r};hWe.exports=bWe();function yWe(e,t){return e.classList?!!t&&e.classList.contains(t):(" "+(e.className.baseVal||e.className)+" ").indexOf(" "+t+" ")!==-1}function wWe(e,t){e.classList?e.classList.add(t):yWe(e,t)||(typeof e.className=="string"?e.className=e.className+" "+t:e.setAttribute("class",(e.className&&e.className.baseVal||"")+" "+t))}function xU(e,t){return e.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}function DWe(e,t){e.classList?e.classList.remove(t):typeof e.className=="string"?e.className=xU(e.className,t):e.setAttribute("class",xU(e.className&&e.className.baseVal||"",t))}const h3={disabled:!1},Fh=E.createContext(null);var $h="unmounted",od="exited",bi="entering",Bl="entered",Eh="exiting",ks=function(e){Ih(t,e);function t(n,o){var a;a=e.call(this,n,o)||this;var i=o,l=i&&!i.isMounting?n.enter:n.appear,s;return a.appearStatus=null,n.in?l?(s=od,a.appearStatus=bi):s=Bl:n.unmountOnExit||n.mountOnEnter?s=$h:s=od,a.state={status:s},a.nextCallback=null,a}t.getDerivedStateFromProps=function(o,a){var i=o.in;return i&&a.status===$h?{status:od}:null};var r=t.prototype;return r.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},r.componentDidUpdate=function(o){var a=null;if(o!==this.props){var i=this.state.status;this.props.in?i!==bi&&i!==Bl&&(a=bi):(i===bi||i===Bl)&&(a=Eh)}this.updateStatus(!1,a)},r.componentWillUnmount=function(){this.cancelNextCallback()},r.getTimeouts=function(){var o=this.props.timeout,a,i,l;return a=i=l=o,o!=null&&typeof o!="number"&&(a=o.exit,i=o.enter,l=o.appear!==void 0?o.appear:i),{exit:a,enter:i,appear:l}},r.updateStatus=function(o,a){o===void 0&&(o=!1),a!==null?(this.cancelNextCallback(),a===bi?this.performEnter(o):this.performExit()):this.props.unmountOnExit&&this.state.status===od&&this.setState({status:$h})},r.performEnter=function(o){var a=this,i=this.props.enter,l=this.context?this.context.isMounting:o,s=this.props.nodeRef?[l]:[Rl.findDOMNode(this),l],c=s[0],d=s[1],f=this.getTimeouts(),v=l?f.appear:f.enter;if(!o&&!i||h3.disabled){this.safeSetState({status:Bl},function(){a.props.onEntered(c)});return}this.props.onEnter(c,d),this.safeSetState({status:bi},function(){a.props.onEntering(c,d),a.onTransitionEnd(v,function(){a.safeSetState({status:Bl},function(){a.props.onEntered(c,d)})})})},r.performExit=function(){var o=this,a=this.props.exit,i=this.getTimeouts(),l=this.props.nodeRef?void 0:Rl.findDOMNode(this);if(!a||h3.disabled){this.safeSetState({status:od},function(){o.props.onExited(l)});return}this.props.onExit(l),this.safeSetState({status:Eh},function(){o.props.onExiting(l),o.onTransitionEnd(i.exit,function(){o.safeSetState({status:od},function(){o.props.onExited(l)})})})},r.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},r.safeSetState=function(o,a){a=this.setNextCallback(a),this.setState(o,a)},r.setNextCallback=function(o){var a=this,i=!0;return this.nextCallback=function(l){i&&(i=!1,a.nextCallback=null,o(l))},this.nextCallback.cancel=function(){i=!1},this.nextCallback},r.onTransitionEnd=function(o,a){this.setNextCallback(a);var i=this.props.nodeRef?this.props.nodeRef.current:Rl.findDOMNode(this),l=o==null&&!this.props.addEndListener;if(!i||l){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var s=this.props.nodeRef?[this.nextCallback]:[i,this.nextCallback],c=s[0],d=s[1];this.props.addEndListener(c,d)}o!=null&&setTimeout(this.nextCallback,o)},r.render=function(){var o=this.state.status;if(o===$h)return null;var a=this.props,i=a.children;a.in,a.mountOnEnter,a.unmountOnExit,a.appear,a.enter,a.exit,a.timeout,a.addEndListener,a.onEnter,a.onEntering,a.onEntered,a.onExit,a.onExiting,a.onExited,a.nodeRef;var l=Av(a,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return E.createElement(Fh.Provider,{value:null},typeof i=="function"?i(o,l):E.cloneElement(E.Children.only(i),l))},t}(E.Component);ks.contextType=Fh,ks.propTypes={};function Lp(){}ks.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:Lp,onEntering:Lp,onEntered:Lp,onExit:Lp,onExiting:Lp,onExited:Lp},ks.UNMOUNTED=$h,ks.EXITED=od,ks.ENTERING=bi,ks.ENTERED=Bl,ks.EXITING=Eh;const bU=ks;var IWe=function(t,r){return t&&r&&r.split(" ").forEach(function(n){return wWe(t,n)})},_3=function(t,r){return t&&r&&r.split(" ").forEach(function(n){return DWe(t,n)})},m3=function(e){Ih(t,e);function t(){for(var n,o=arguments.length,a=new Array(o),i=0;i"u"||!Lt||Lt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Lt(Boolean,[],function(){})),!0}catch{return!1}}var F1=function(e){xa(r,e);var t=NWe(r);function r(){var n;return Br(this,r),n=t.apply(this,arguments),n.handleExit=function(){var o=n.props.onAfterExit;o&&o(),n.props.hideScrollBar&&r.removeModalEffect()},n.handleClick=function(o){var a=n.props.onClick;a&&o.target===o.currentTarget&&a(o),n.stopPropagationMouseEvent(o)},n}return jr(r,[{key:"componentDidMount",value:function(){this.props.hideScrollBar&&this.props.visible&&r.addModalEffect()}},{key:"componentDidUpdate",value:function(o){this.props.hideScrollBar&&this.props.visible&&!o.visible&&r.addModalEffect()}},{key:"stopPropagationMouseEvent",value:function(o){o.stopPropagation()}},{key:"render",value:function(){var o,a=this.props,i=a.visible,l=a.className,s=a.maskClassName,c=a.id,d=a.zIndex,f=a.style,v=a.maskStyle,g=a.mask,h=a.hasAnimation,_=a.destroyOnClose,b=a.onAfterEnter,x=(o=this.props.prefixCls)!==null&&o!==void 0?o:this.context.getPrefixCls("",this.props.prefixCls);return Kr.createPortal(m.createElement(Ps,{classNames:"mask",appear:h,enter:h,exit:h,timeout:{enter:Vo.NORMAL,exit:Vo.FAST},in:i,onExited:this.handleExit,onEntered:b,mountOnEnter:!0,unmountOnExit:_},m.createElement("div",Ee({className:_e(l,"".concat(x,"-window-mask")),id:c,style:ae({zIndex:d},f),onClick:this.handleClick,onDoubleClick:this.stopPropagationMouseEvent},yo(this.props,{aria:!0,data:!0})),g&&m.createElement("div",{className:_e("".concat(x,"-mask"),s),style:v}),this.props.children)),document.body)}}],[{key:"addModalEffect",value:function(){if(r.modalCount++,!(r.modalCount>1)){var o=document.body.clientWidth0)&&(document.body.style.paddingRight="",document.body.style.overflow="")}},{key:"getScrollBarSize",value:function(){var o=navigator.userAgent.toLowerCase(),a=o.indexOf(" applewebkit/")>-1;return a?9:17}}]),r}(m.Component);F1.defaultProps={hideScrollBar:!0,hasAnimation:!0,destroyOnClose:!0,mask:!0},F1.contextType=Ko,F1.modalCount=0;const DU=F1;var zWe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o1&&arguments[1]!==void 0?arguments[1]:"",n=arguments.length>2?arguments[2]:void 0,o=t.props||{},a=ae({key:r},Ts(o,"children")),i=o.children||[];return lr(i)||(i=[i]),n&&Sn(a,IU,n),E.createElement(t.type,a,Cn(i,function(l,s){var c;return e(l,mt(c="".concat(t.type,"-")).call(c,s))}))},BWe=function(t,r){var n,o=t.className,a=t.component,i=t.icon,l=t.spin,s=t.name,c=t.onClick,d=t.viewBox,f=t.style,v=t.prefixCls,g=zWe(t,["className","component","icon","spin","name","onClick","viewBox","style","prefixCls"]),h=qt("svgicon",v),_=_e(h,je({},mt(n="".concat(h,"-")).call(n,s),s),o,{spin:!!l}),b=function(){var w={style:f};return d&&(w.viewBox=d),a?E.createElement(a,Ee({},IU,w)):i?LWe(i,s,w):null};return E.createElement("i",Ee({ref:r,className:_,onClick:c},g),b())};const qr=E.forwardRef(BWe);var FU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"CalendarOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M776 201.6H670.4v-52.8c0-22.4-17.6-40-40-40s-40 17.6-40 40v54.4h-160v-54.4c0-22.4-17.6-40-40-40s-40 17.6-40 40v54.4h-99.2c-33.6 0-67.2 14.4-91.2 38.4s-36.8 57.6-36.8 91.2V784c0 35.2 12.8 67.2 36.8 91.2 24 25.6 56 38.4 91.2 38.4h528c70.4 0 128-59.2 128-131.2V329.6c-3.2-68.8-60.8-128-131.2-128zM214.4 296c9.6-9.6 20.8-14.4 33.6-14.4h100.8V336c0 22.4 17.6 40 40 40s40-17.6 40-40v-54.4h160V336c0 22.4 17.6 40 40 40s40-17.6 40-40v-54.4h105.6c27.2 0 48 22.4 48 51.2v80h-624v-80c1.6-14.4 6.4-27.2 16-36.8zM776 835.2H248c-12.8 0-24-4.8-33.6-14.4-9.6-9.6-14.4-22.4-14.4-36.8V492.8h624V784c0 28.8-22.4 51.2-48 51.2z"}),E.createElement("path",{d:"M593.6 771.2c-3.2-1.6-9.6-4.8-28.8-4.8h-27.2V540.8c0-6.4-1.6-11.2-3.2-14.4-4.8-6.4-12.8-8-19.2-6.4-1.6 0-3.2 0-6.4 1.6l-64 17.6c-6.4 1.6-11.2 4.8-14.4 8-3.2 4.8-6.4 9.6-6.4 14.4 0 6.4 1.6 12.8 6.4 16 4.8 3.2 9.6 6.4 16 6.4h3.2l35.2-8v193.6h-27.2c-19.2 0-25.6 1.6-28.8 4.8-4.8 3.2-9.6 8-9.6 19.2 0 8 1.6 12.8 6.4 17.6 4.8 3.2 11.2 6.4 17.6 6.4H576c8 0 14.4-1.6 17.6-6.4 4.8-4.8 6.4-9.6 6.4-17.6 1.6-14.4-3.2-20.8-6.4-22.4z"}))}))};FU.displayName="CalendarOutlined";const jWe=E.memo(E.forwardRef(FU));var $U=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"CaretDownFilled",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M488 740.8 232 454.4c-19.2-20.8-3.2-52.8 24-52.8h512c27.2 0 41.6 32 24 52.8L536 740.8c-12.8 14.4-35.2 14.4-48 0z"}))}))};$U.displayName="CaretDownFilled";const EU=E.memo(E.forwardRef($U));var SU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"CaretRightFilled",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M658.286 512q0 14.848-10.862 25.71l-256 256q-10.862 10.861-25.71 10.861t-25.71-10.861-10.86-25.71V256q0-14.848 10.862-25.71t25.71-10.861 25.709 10.861l256 256q10.862 10.862 10.862 25.71z"}))}))};SU.displayName="CaretRightFilled";const UWe=E.memo(E.forwardRef(SU));var CU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"CaretUpFilled",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M488 123.2 232 409.6c-19.2 20.8-3.2 52.8 24 52.8h512c27.2 0 41.6-32 24-52.8L536 123.2c-12.8-14.4-35.2-14.4-48 0z"}))}))};CU.displayName="CaretUpFilled";const HWe=E.memo(E.forwardRef(CU));var TU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"CheckCircleFilled",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm254.4 340.8L513.6 699.2c-6.4 8-17.6 12.8-28.8 14.4h-1.6c-9.6 0-19.2-3.2-27.2-11.2l-163.2-152c-16-14.4-17.6-40-1.6-56 14.4-16 40-17.6 56-1.6L480 616l224-262.4c14.4-16 40-19.2 56-4.8 17.6 14.4 20.8 38.4 6.4 56z"}))}))};TU.displayName="CheckCircleFilled";const $1=E.memo(E.forwardRef(TU));var RU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"CheckOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M384 792c-9.6 0-20.8-3.2-28.8-11.2l-224-224c-16-16-16-41.6 0-56 16-16 41.6-16 56 0L384 696l451.2-451.2c16-16 41.6-16 56 0 16 16 16 41.6 0 56l-480 480c-6.4 8-17.6 11.2-27.2 11.2z"}))}))};RU.displayName="CheckOutlined";const WWe=E.memo(E.forwardRef(RU));var OU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"CloseCircleFilled",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zM339.2 627.2 454.4 512 339.2 396.8c-16-16-16-41.6 0-56 8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2L512 456l115.2-115.2c8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2c16 16 16 41.6 0 56L568 512l115.2 115.2c16 16 16 41.6 0 56-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2L512 568 396.8 683.2c-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2c-14.4-14.4-14.4-40 0-56z"}))}))};OU.displayName="CloseCircleFilled";const id=E.memo(E.forwardRef(OU));var AU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"CloseOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"m568 512 291.2-291.2c16-16 16-41.6 0-56-16-16-41.6-16-56 0L512 456 220.8 163.2c-16-16-41.6-16-56 0-16 16-16 41.6 0 56L456 512 163.2 803.2c-16 16-16 41.6 0 56 8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2L512 568l291.2 291.2c8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2c16-16 16-41.6 0-56L568 512z"}))}))};AU.displayName="CloseOutlined";const Sh=E.memo(E.forwardRef(AU));var kU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"DoubleLeftOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M819.2 776c16 16 16 41.6 0 56-16 16-41.6 16-56 0L478.4 547.2c-8-8-11.2-17.6-11.2-28.8s4.8-20.8 11.2-28.8l284.8-284.8c8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2c16 16 16 41.6 0 56L563.2 520l256 256zM289.6 520l257.6-257.6c16-16 16-41.6 0-56-8-8-17.6-11.2-28.8-11.2s-20.8 3.2-28.8 11.2L204.8 491.2c-8 8-11.2 17.6-11.2 28.8s4.8 20.8 11.2 28.8l284.8 284.8c16 16 41.6 16 56 0 16-16 16-41.6 0-56L289.6 520z"}))}))};kU.displayName="DoubleLeftOutlined";const w3=E.memo(E.forwardRef(kU));var PU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"DoubleRightOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M204.8 248c-16-16-16-41.6 0-56 16-16 41.6-16 56 0l284.8 284.8c8 8 11.2 17.6 11.2 28.8s-4.8 20.8-11.2 28.8L260.8 819.2c-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2c-16-16-16-41.6 0-56L460.8 504l-256-256zm529.6 256L476.8 761.6c-16 16-16 41.6 0 56 8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2l284.8-284.8c8-8 11.2-17.6 11.2-28.8s-4.8-20.8-11.2-28.8L534.4 190.4c-16-16-41.6-16-56 0-16 16-16 41.6 0 56l256 257.6z"}))}))};PU.displayName="DoubleRightOutlined";const D3=E.memo(E.forwardRef(PU));var NU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"DownOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M867.2 387.2c0 9.6-3.2 20.8-11.2 28.8L540.8 729.6c-16 16-41.6 16-56 0L169.6 414.4c-16-16-16-41.6 0-56 16-16 41.6-16 56 0L512 644.8l286.4-286.4c16-16 41.6-16 56 0 8 8 12.8 17.6 12.8 28.8z"}))}))};NU.displayName="DownOutlined";const MU=E.memo(E.forwardRef(NU));var zU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"EllipsisOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M104 512a80 80 0 1 0 160 0 80 80 0 1 0-160 0Zm328 0a80 80 0 1 0 160 0 80 80 0 1 0-160 0Zm328 0a80 80 0 1 0 160 0 80 80 0 1 0-160 0Z"}))}))};zU.displayName="EllipsisOutlined";const VWe=E.memo(E.forwardRef(zU));var LU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"ExclamationCircleFilled",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm-40 232c0-22.4 17.6-40 40-40s40 17.6 40 40v240c0 22.4-17.6 40-40 40s-40-17.6-40-40V296zm40 472c-30.4 0-56-25.6-56-56s25.6-56 56-56 56 25.6 56 56c0 32-25.6 57.6-56 56z"}))}))};LU.displayName="ExclamationCircleFilled";const Zc=E.memo(E.forwardRef(LU));var BU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"EyeInvisibleOutlined",icon:E.createElement("svg",{viewBox:"0 0 16 16"},E.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14.625 6.8c-.7-.75-1.475-1.4-2.325-1.95l1-1c.25-.25.25-.65 0-.9a.634.634 0 0 0-.9 0l-9.175 9.2c-.25.25-.25.65 0 .9s.65.25.9 0l1.45-1.45c.775.3 1.6.45 2.45.475 3.075 0 5.65-2.375 6.625-3.4a1.385 1.385 0 0 0-.025-1.875ZM13.7 7.825c-.85.9-3.125 2.975-5.7 2.975-.475 0-.975-.075-1.425-.2l.575-.575c.275.1.55.15.85.15a2.427 2.427 0 0 0 2.425-2.425c0-.3-.05-.575-.15-.85L11.4 5.775c.85.525 1.625 1.15 2.325 1.9.025.05.025.1-.025.15Zm-8.075-.55c-.025.15-.05.3-.05.475 0 .15.025.3.05.45L8.45 5.375c-1.3-.25-2.575.6-2.825 1.9ZM4.3 9.525c-.725-.5-1.4-1.075-2-1.7-.05-.05-.05-.1 0-.15.875-.9 3.125-3 5.7-3 .35 0 .7.025 1.025.1l1.025-1.05a6.573 6.573 0 0 0-2.075-.35c-3.05 0-5.65 2.375-6.625 3.4a1.39 1.39 0 0 0 0 1.9c.625.65 1.3 1.225 2.025 1.75l.925-.9Z"}))}))};BU.displayName="EyeInvisibleOutlined";const KWe=E.memo(E.forwardRef(BU));var jU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"EyeOutlined",icon:E.createElement("svg",{viewBox:"0 0 16 16"},E.createElement("path",{d:"M8 5.375a2.625 2.625 0 1 0 0 5.25 2.625 2.625 0 0 0 0-5.25ZM6.625 8a1.375 1.375 0 1 1 2.75 0 1.375 1.375 0 0 1-2.75 0Z"}),E.createElement("path",{d:"M14.877 7.732 14.312 8l.565.268v.002l-.003.004-.006.013a2.911 2.911 0 0 1-.098.187 7.572 7.572 0 0 1-.3.494 9.008 9.008 0 0 1-1.22 1.48c-1.107 1.078-2.834 2.177-5.25 2.177-2.417 0-4.143-1.099-5.25-2.178a8.956 8.956 0 0 1-1.22-1.479 7.564 7.564 0 0 1-.404-.694l-.002-.004-.001-.001L1.687 8a62.44 62.44 0 0 1-.564-.268V7.73l.003-.004a1.843 1.843 0 0 1 .027-.055l.077-.145c.068-.122.167-.292.3-.494a9.008 9.008 0 0 1 1.22-1.48C3.857 4.474 5.583 3.375 8 3.375c2.416 0 4.143 1.099 5.25 2.177a8.957 8.957 0 0 1 1.22 1.48 7.572 7.572 0 0 1 .398.681l.004.008.002.005.002.004v.001l.001.001ZM2.575 7.718c-.07.107-.129.202-.176.282a7.707 7.707 0 0 0 1.224 1.552c.945.922 2.375 1.823 4.377 1.823s3.432-.901 4.377-1.823A7.708 7.708 0 0 0 13.601 8a7.708 7.708 0 0 0-1.224-1.552C11.432 5.526 10.002 4.625 8 4.625s-3.432.901-4.377 1.823a7.68 7.68 0 0 0-1.048 1.27Zm11.173.013Z"}),E.createElement("path",{d:"m14.313 8 .564-.267.127.267-.127.267L14.312 8Zm-13.19-.267L1.687 8l-.564.267L.996 8l.127-.267Z"}))}))};jU.displayName="EyeOutlined";const qWe=E.memo(E.forwardRef(jU));var UU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"FolderFilled",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M832 272H512l-80-80H193.6c-44.8 0-81.6 36.8-81.6 81.6v476.8c0 44.8 36.8 81.6 81.6 81.6h636.8c44.8 0 81.6-36.8 81.6-81.6V352c0-43.2-35.2-80-80-80zm80 160H112v-43.2h800V432z"}))}))};UU.displayName="FolderFilled";const YWe=E.memo(E.forwardRef(UU));var HU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"FolderOpenFilled",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M880 449.6H227.2c-8 0-16 3.2-20.8 6.4-6.4 4.8-9.6 11.2-9.6 17.6l-62.4 320v3.2c0 8 14.4 19.2 32 19.2h652.8c16 0 27.2-11.2 30.4-22.4L872 678.4l40-209.6c1.6-11.2-14.4-19.2-32-19.2z"}),E.createElement("path",{d:"M227.2 406.4h643.2V360c0-41.6-33.6-76.8-75.2-76.8h-304L416 206.4H187.2c-41.6 0-75.2 33.6-75.2 76.8v393.6l40-206.4c6.4-38.4 33.6-64 75.2-64z"}))}))};HU.displayName="FolderOpenFilled";const GWe=E.memo(E.forwardRef(HU));var WU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"LeftOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M636.8 867.2c-9.6 0-20.8-3.2-28.8-11.2L294.4 540.8c-16-16-16-41.6 0-56l315.2-315.2c16-16 41.6-16 56 0 16 16 16 41.6 0 56L379.2 512l286.4 286.4c16 16 16 41.6 0 56-8 8-17.6 12.8-28.8 12.8z"}))}))};WU.displayName="LeftOutlined";const I3=E.memo(E.forwardRef(WU));var VU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"MinusOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M864 560H160c-27.2 0-48-20.8-48-48s20.8-48 48-48h704c27.2 0 48 20.8 48 48s-20.8 48-48 48z"}))}))};VU.displayName="MinusOutlined";const XWe=E.memo(E.forwardRef(VU));var KU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"PlusOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M512 913.6c-20.8 0-38.4-17.6-38.4-38.4V550.4H148.8c-20.8 0-38.4-17.6-38.4-38.4 0-20.8 17.6-38.4 38.4-38.4h326.4V148.8c0-20.8 17.6-38.4 38.4-38.4 20.8 0 38.4 17.6 38.4 38.4v326.4h326.4c20.8 0 38.4 17.6 38.4 38.4 0 20.8-17.6 38.4-38.4 38.4h-328v326.4c0 17.6-17.6 35.2-38.4 35.2z"}),E.createElement("path",{d:"M512 112c20.8 0 36.8 16 36.8 36.8v328h328c20.8 0 36.8 16 36.8 36.8 0 20.8-16 36.8-36.8 36.8h-328v328c0 20.8-16 36.8-36.8 36.8-20.8 0-36.8-16-36.8-36.8V548.8H148.8c-20.8 0-36.8-16-36.8-36.8 0-20.8 16-36.8 36.8-36.8h328V148.8C475.2 128 491.2 112 512 112m0-3.2c-22.4 0-40 17.6-40 40v324.8H148.8c-22.4 0-40 17.6-40 40s17.6 40 40 40h324.8v324.8c0 22.4 17.6 40 40 40s40-17.6 40-40V552h324.8c22.4 0 40-17.6 40-40s-17.6-40-40-40H552V148.8c0-22.4-17.6-40-40-40z"}))}))};KU.displayName="PlusOutlined";const ZWe=E.memo(E.forwardRef(KU));var qU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"QuestionCircleFilled",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm40 696c-6.4 12.8-16 24-30.4 30.4-14.4 6.4-28.8 6.4-43.2 0-12.8-6.4-24-16-30.4-30.4-6.4-14.4-6.4-28.8 0-43.2 6.4-12.8 16-24 30.4-30.4 14.4-6.4 28.8-6.4 43.2 0 12.8 6.4 24 16 30.4 30.4 6.4 14.4 6.4 28.8 0 43.2zm89.6-320c-12.8 20.8-28.8 40-46.4 57.6-12.8 12.8-22.4 22.4-28.8 30.4-6.4 6.4-11.2 14.4-16 22.4-3.2 6.4-6.4 12.8-6.4 19.2-1.6 8-1.6 14.4-1.6 22.4 0 27.2-11.2 41.6-35.2 41.6-6.4 0-14.4 0-20.8-1.6-4.8-1.6-8-3.2-12.8-6.4-3.2-3.2-4.8-8-4.8-12.8-1.6-6.4-1.6-12.8-1.6-19.2 0-43.2 22.4-88 67.2-131.2 11.2-9.6 19.2-17.6 25.6-24 6.4-6.4 11.2-11.2 16-19.2 3.2-4.8 4.8-11.2 6.4-17.6 1.6-6.4 1.6-14.4 1.6-20.8 1.6-16-4.8-33.6-17.6-44.8-12.8-11.2-30.4-16-48-16-17.6-1.6-36.8 4.8-49.6 17.6-12.8 11.2-19.2 27.2-19.2 43.2-1.6 25.6-14.4 38.4-36.8 38.4-17.6 3.2-33.6-8-36.8-25.6v-11.2c0-35.2 16-68.8 41.6-92.8 27.2-27.2 65.6-41.6 105.6-40 36.8-1.6 73.6 11.2 100.8 35.2 25.6 27.2 40 64 36.8 100.8-4.8 17.6-9.6 38.4-19.2 54.4z"}))}))};qU.displayName="QuestionCircleFilled";const YU=E.memo(E.forwardRef(qU));var GU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"RightOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M387.2 867.2c-9.6 0-20.8-3.2-28.8-11.2-16-16-16-41.6 0-56l286.4-288-286.4-286.4c-16-16-16-41.6 0-56 16-16 41.6-16 56 0l315.2 315.2c16 16 16 41.6 0 56L414.4 854.4c-8 8-17.6 12.8-27.2 12.8z"}))}))};GU.displayName="RightOutlined";const E1=E.memo(E.forwardRef(GU));var XU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"SearchOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M892.8 835.2 726.4 668.8C772.8 609.6 800 536 800 456c0-190.4-153.6-344-344-344S112 265.6 112 456s153.6 344 344 344c80 0 155.2-27.2 212.8-73.6l166.4 166.4c8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2c14.4-16 14.4-41.6 0-57.6zM456 720c-145.6 0-264-118.4-264-264s118.4-264 264-264 264 118.4 264 264-118.4 264-264 264z"}))}))};XU.displayName="SearchOutlined";const ZU=E.memo(E.forwardRef(XU));var QU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"SortFilled",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M488 123.2 232 409.6c-19.2 20.8-3.2 52.8 24 52.8h512c27.2 0 41.6-32 24-52.8L536 123.2c-12.8-14.4-35.2-14.4-48 0zm0 777.6L232 614.4c-19.2-20.8-3.2-52.8 24-52.8h512c27.2 0 41.6 32 24 52.8L536 900.8c-12.8 14.4-35.2 14.4-48 0z"}))}))};QU.displayName="SortFilled";const QWe=E.memo(E.forwardRef(QU));var JU=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"TimeOutlined",icon:E.createElement("svg",{viewBox:"0 0 1100 1024"},E.createElement("path",{d:"M512 144c203.2 0 368 164.8 368 368S715.2 880 512 880 144 715.2 144 512s164.8-368 368-368m0-80C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm318.4 464c0-22.4-17.6-40-40-40h-248V241.6c0-22.4-17.6-40-40-40s-40 17.6-40 40V528c0 22.4 17.6 40 40 40h286.4c24 0 41.6-17.6 41.6-40z"}))}))};JU.displayName="TimeOutlined";const JWe=E.memo(E.forwardRef(JU));var eH=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"UpOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M788.8 694.4c-9.6 0-20.8-3.2-28.8-11.2L504 425.6 246.4 683.2c-16 16-41.6 16-56 0-16-16-16-41.6 0-56l284.8-284.8c14.4-14.4 41.6-14.4 56 0L816 627.2c16 16 16 41.6 0 56-6.4 8-17.6 11.2-27.2 11.2z"}))}))};eH.displayName="UpOutlined";const eVe=E.memo(E.forwardRef(eH));var tH=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"VerticalLeftOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M763.2 769.6c16 16 16 41.6 0 56-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2L420.8 540.8c-8-8-11.2-17.6-11.2-28.8s4.8-20.8 11.2-28.8l284.8-284.8c16-16 41.6-16 56 0 16 16 16 41.6 0 56L505.6 512l257.6 257.6zM321.6 172.8c-22.4 0-40 17.6-40 40v598.4c0 22.4 17.6 40 40 40s40-17.6 40-40V212.8c0-22.4-17.6-40-40-40z"}))}))};tH.displayName="VerticalLeftOutlined";const tVe=E.memo(E.forwardRef(tH));var rH=function(t,r){return E.createElement(qr,Ee({},t,{ref:r,name:"VerticalRightOutlined",icon:E.createElement("svg",{viewBox:"0 0 1024 1024"},E.createElement("path",{d:"M260.8 254.4c-16-16-16-41.6 0-56 8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2l284.8 284.8c8 8 11.2 17.6 11.2 28.8s-4.8 20.8-11.2 28.8L318.4 825.6c-16 16-41.6 16-56 0-16-16-16-41.6 0-56l256-257.6-257.6-257.6zm441.6 596.8c22.4 0 40-17.6 40-40V212.8c0-22.4-17.6-40-40-40s-40 17.6-40 40v598.4c0 22.4 17.6 40 40 40z"}))}))};rH.displayName="VerticalRightOutlined";const rVe=E.memo(E.forwardRef(rH));var nVe=function(t){var r;return(r=E.useContext(Ko))===null||r===void 0?void 0:r[t]};const To=nVe;var oVe="​",aVe=function(t){var r=t.prefixCls,n=t.className,o=t.style,a=t.children,i=_e("".concat(r,"-icon-wrapper"),n);return E.createElement("span",{className:i,style:o},oVe,E.createElement("span",{className:"".concat(r,"-icon")},a))};const nH=aVe;var iVe=function(t,r){var n=t.loading,o=n===void 0?!1:n,a=t.size,i=t.type,l=i===void 0?"normal":i,s=t.disabled,c=s===void 0?!1:s,d=t.danger,f=d===void 0?!1:d,v=t.loadingWhenClick,g=v===void 0?!1:v,h=t.compact,_=h===void 0?!1:h,b=t.block,x=b===void 0?!1:b,w=t.htmlType,D=w===void 0?"button":w,I=t.href,$=t.onClick,F=t.className,C=t.id,R=t.shape,k=t.icon,P=t.children,U=t.style,B=t.prefixCls,z=t.target,A=m.useRef(),M=Ia(a)||"normal",N=m.useState(!1),T=be(N,2),O=T[0],j=T[1],K=m.useState(!1),Q=be(K,2),Y=Q[0],X=Q[1],G=To("button"),H=qt("button",B),V=ae(ae({},G?.style),U);m.useImperativeHandle(r,function(){return{click:function(){A.current&&A.current.click()}}});var Z=function(he){if(!(o||O||c||!Fr($))){var ge=$(he);if(oLe(ge)){j(!0);var $e=function(){return j(!1)};ge.then($e,$e)}}},te=function(){A.current&&A.current.blur()},J=function(he){c||o||he.key===La.ENTER&&(X(!0),setTimeout(function(){X(!1)},Vo.NORMAL))},ne=function(){return o||g&&O},re=function(){var he,ge=k,$e=(!Hn(k)||o)&&dt(P),ue=_&&rn(["text","text-normal"],l);return _e(H,"".concat(H,"-css-var"),"size-".concat(M),"style-".concat(l),(he={loading:ne(),disable:c,danger:f,block:x,"has-icon":ge,"is-only-icon":$e},je(he,"shape-".concat(R),R),je(he,"is-active",Y),je(he,"compact-".concat(M),ue),he),F,G?.className)},ie=function(){return Ts(t,["href","target","size","className","style","type","loading","disabled","icon","children","shape","loadingWhenClick","compact","danger","block","htmlType"])},ce=function(){var he=k,ge=ne();return E.createElement(E.Fragment,null,ge&&E.createElement(nH,{prefixCls:H},E.createElement("span",{className:"loader-icon"})),!ge&&he&&E.createElement(nH,{prefixCls:H},he),P&&E.createElement("span",null,P))},oe=function(){return E.createElement("a",Ee({ref:A,className:re(),style:V,onClick:Z,onMouseUp:te,onKeyPress:J,href:I,target:z||"__block"},ie()),ce())},fe=function(){return E.createElement("button",Ee({ref:A,disabled:o||c,type:D,className:re(),id:C,style:V},ie(),{onClick:Z,onMouseUp:te,onKeyPress:J}),ce())};return I?oe():fe()};const lVe=m.forwardRef(iVe);var sVe=function(t){var r,n=t.type,o=n===void 0?"normal":n,a=t.size,i=a===void 0?"normal":a,l=t.className,s=t.id,c=t.style,d=t.children,f=t.prefixCls,v=qt("button",f),g=_e("".concat(v,"-group"),l,"type-".concat(o));return m.createElement("div",{className:g,style:c,id:s},$t(r=m.Children).call(r,d,function(h){return dt(h)||dt(h.props)?null:m.cloneElement(h,{type:o,size:i})}))};const cVe=sVe;var F3=lVe;F3.displayName="Button",F3.Group=cVe;const Ar=F3;var uVe=m.createContext({});const oH=uVe;var aH=["xxl","xl","lg","md","sm","xs"],S1={xs:"(max-width: 575px)",sm:"(min-width: 576px)",md:"(min-width: 768px)",lg:"(min-width: 992px)",xl:"(min-width: 1200px)",xxl:"(min-width: 1600px)"},ld=new so,$3=-1,C1={},dVe={matchHandlers:{},dispatch:function(t){return C1=t,ld.forEach(function(r){return r(C1)}),ld.size>=1},subscribe:function(t){return ld.size||this.register(),$3+=1,ld.set($3,t),t(C1),$3},unsubscribe:function(t){ld.delete(t),ld.size||this.unregister()},unregister:function(){var t=this;pi(S1).forEach(function(r){var n=S1[r],o=t.matchHandlers[n];o&&o.mql.removeListener(o.listener)}),ld.clear()},register:function(){var t=this;pi(S1).forEach(function(r){var n=S1[r],o=function(l){var s=l.matches;t.dispatch(ae(ae({},C1),je({},r,s)))},a=window.matchMedia(n);a.addListener(o),t.matchHandlers[n]={mql:a,listener:o},o(a)})}};const T1=dVe;function fVe(e,t){var r=typeof qu<"u"&&Yu(e)||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=pVe(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return a=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!a&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function pVe(e,t){var r;if(e){if(typeof e=="string")return iH(e,t);var n=kt(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return ol(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return iH(e,t)}}function iH(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0?$[0]/-2:void 0,k=$[1]>0?$[1]/-2:void 0;if(R&&(C.marginLeft=R,C.marginRight=R),x){var P=be($,2);C.rowGap=P[1]}else k&&(C.marginTop=k,C.marginBottom=k);var U=m.useMemo(function(){return{gutter:$,wrap:d,supportFlexGap:x}},[$,d,x]);return E.createElement(oH.Provider,{value:U},E.createElement("div",Ee({},v,{className:F,style:ae(ae({},C),i),ref:t}),l))});const Ch=gVe;var hVe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o0){var F=o[0]/2;$.paddingLeft=F,$.paddingRight=F}if(o&&o[1]>0&&!i){var C=o[1]/2;$.paddingTop=C,$.paddingBottom=C}return h&&($.flex=_Ve(h),h&&a===!1&&!$.minWidth&&($.minWidth=0)),E.createElement("div",Ee({},x,{style:ae(ae({},$),_),className:I,ref:t}),g)});const Qc=xVe;var E3={},bVe={get exports(){return E3},set exports(e){E3=e}},S3={},yVe={get exports(){return S3},set exports(e){S3=e}},lH=Ds,wVe=TypeError,sH=function(e,t){if(!delete e[t])throw new wVe("Cannot delete property "+lH(t)+" of "+lH(e))},DVe=Ne,IVe=Uo,FVe=T0,$Ve=Uu,EVe=ui,SVe=Y9,CVe=M0,TVe=L0,RVe=z0,C3=sH,OVe=Lg,AVe=OVe("splice"),kVe=Math.max,PVe=Math.min;DVe({target:"Array",proto:!0,forced:!AVe},{splice:function(t,r){var n=IVe(this),o=EVe(n),a=FVe(t,o),i=arguments.length,l,s,c,d,f,v;for(i===0?l=s=0:i===1?(l=0,s=o-a):(l=i-2,s=PVe(kVe($Ve(r),0),o-a)),CVe(o+l-s),c=TVe(n,s),d=0;do-s+l;d--)C3(n,d-1)}else if(l>s)for(d=o-s;d>a;d--)f=d+s-1,v=d+l-1,f in n?n[v]=n[f]:C3(n,v);for(d=0;d0&&arguments[0]!==void 0?arguments[0]:{};return this.valueMap=n,this.errorMap={},new xo(function(o,a){if(Hn(r.ruleMap))return o();var i=[];return yr(r.ruleMap,function(l,s){var c=Nt(n,s);yr(l,function(d){i.push(r.validateItem(c,d,s))})}),xo.all(i).then(function(){return o()}).catch(function(){return a(r.errorMap)})})}},{key:"validateItem",value:function(r){var n=this,o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=r;return Fr(o.transform)&&(i=o.transform(i)),new xo(function(l,s){if(Fr(o.validate))return o.validate(i)?l(void 0):s();if(Fr(o.promiseValidate))return l(o.promiseValidate(i));if(!Hn(o.type)){var c=lr(o.type)?o.type:[o.type],d=!0;if(yr(c,function(b){if(!n.isTypeValid(i,b))return d=!1,!1}),!d)return s()}if(o6(o.pattern)&&!o.pattern.test(i)||o.required&&(!Ho(n.valueMap,a)||iLe(i)))return s();if(!dt(o.length)){if(aa(i)||lr(i)){if(i.length!==o.length)return s()}else if(Wn(i)&&i!==o.length)return s()}if(lr(o.range)){var f=dt(o.range[0])?-1/0:o.range[0],v=dt(o.range[1])?1/0:o.range[1];if(aa(i)||lr(i)){if(i.lengthv)return s()}else if(Wn(i)&&(iv))return s()}if(Tp(o.fields)){if(!Tp(i))return s();if(o.additional===!1){var g=!1;if(yr(Nt(n.valueMap,a),function(b,x){if(!Ho(o.fields,x))return g=!0,!1}),g)return s()}var h=[];return yr(o.fields,function(b,x){var w=i[x];yr(b,function(D){var I;h.push(n.validateItem(w,D,mt(I="".concat(a,".")).call(I,x)))})}),l(xo.all(h))}if(lr(sd(o))){if(!lr(i))return s();var _=[];return yr(sd(o),function(b,x){var w=i[x];yr(b,function(D){var I;_.push(n.validateItem(w,D,mt(I="".concat(a,".")).call(I,x)))})}),l(xo.all(_))}l(void 0)}).catch(function(){if(a){var l="";if(aa(o.message)?l=o.message:Fr(o.message)&&(l=o.message(i)),!Ho(n.errorMap,a))hi(n.errorMap,a,[l]);else{var s=Nt(n.errorMap,a);s.push(l)}}return xo.reject()})}},{key:"isTypeValid",value:function(r,n){switch(n){case cd.STRING:case cd.NUMBER:case cd.BOOLEAN:case cd.FUNCTION:return n===Mn(r);case cd.ARRAY:return lr(r);case cd.DATE:return r instanceof Date;case cd.OBJECT:return Tp(r);default:return!1}}}]),e}();const uH=uKe;var dKe=function(){function e(t){Br(this,e),this.init(t)}return jr(e,[{key:"init",value:function(r){var n=r.value,o=r.name,a=r.rules,i=r.emit;this.value=n,this.name=o,this.rules=a,this.emit=i}},{key:"set",value:function(r,n){this.emit(r,this.name,n)}}]),e}(),fKe=function(){function e(){var t=this,r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{value:{},rules:{},layout:"horizontal",labelWidth:"80",labelSuffix:"",onAfterValidate:function(){},onAfterOptionUpdate:function(){}};Br(this,e),this.updateRule=function(n){yr(n.rules,function(o,a){hi(t.rules,a,Th(o))})},this.emit=function(n,o,a){n==="value"&&(hi(t.value,o,a),t.onValuesChange&&t.onValuesChange(Op(t.value,Rh(o)),t.value))},this.fields=[],this.initialValue=r.value||{},this.value=Hy(r.value)||{},this.rules={},this.updateRule(r),this.layout=r.layout||"horizontal",this.labelWidth=r.labelWidth||"80",this.labelSuffix=r.labelSuffix||"",this.error={},this.onAfterValidate=r.onAfterValidate||function(){},this.onAfterOptionUpdate=r.onAfterOptionUpdate||function(){},this.onFinish=r.onFinish,this.onFinishFailed=r.onFinishFailed,this.onValuesChange=r.onValuesChange}return jr(e,[{key:"addField",value:function(r){var n=new dKe(ae({emit:this.emit},r));return this.fields.push(n),n}},{key:"removeField",value:function(r){var n;R1(n=this.fields).call(n,this.fields.indexOf(r),1)}},{key:"updateOption",value:function(r){ae(this,r),r.rules&&this.updateRule(r),this.onAfterOptionUpdate()}},{key:"getItemValue",value:function(r){return Nt(this.value,r)}},{key:"getItemError",value:function(r){return Nt(this.error,r)}},{key:"getLabelStyle",value:function(r){var n=r||this.labelWidth;return this.layout!=="horizontal"||!n?{}:{width:parseInt(n,10)}}},{key:"getLabelSuffix",value:function(){return this.labelSuffix}},{key:"getRules",value:function(){return this.rules}},{key:"getValue",value:function(){return this.value}},{key:"getError",value:function(){return O3(this.error)}},{key:"submit",value:function(){var r=this;this.validate().then(function(){r.onFinish&&r.onFinish(r.value)},function(){if(r.onFinishFailed){var n=[];yr(r.error,function(o,a){n.push({name:Th(a),errors:Th(o)})}),r.onFinishFailed({values:r.value,errorFields:n})}})}},{key:"resetFields",value:function(r){var n=this;r?yr(r,function(o){var a=Nt(n.initialValue,o);hi(n.value,o,a)}):this.value=Hy(this.initialValue)}},{key:"validate",value:function(){var r=this,n=Hy(this.rules);yr(this.fields,function(a){var i=a.name,l=a.rules;l&&hi(n,i,Es(Nt(n,i,[]),l))});var o=new uH(n);return new xo(function(a,i){o.validate(r.value).then(function(){r.onAfterValidate(),a()}).catch(function(l){r.error=l,r.onAfterValidate(),i(O3(l))})})}},{key:"validateItem",value:function(r){var n=this,o=Op(this.value,Rh(r)),a=Op(this.rules,Rh(r)),i=e6(this.fields,function(s){return Rh(s.name)===Rh(r)});i?.rules&&hi(a,r,Es(Nt(a,r,[]),i.rules));var l=new uH(a);return new xo(function(s,c){l.validate(o).then(function(){r1(n.error,r),s()}).catch(function(d){a6(n.error,d),c(O3(d))})})}}]),e}();new fKe;var Oh=m.createContext({}),pKe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o1&&arguments[1]!==void 0?arguments[1]:!1,r=e.getAttribute("id")||e.getAttribute("data-reactid")||e.getAttribute("name");if(t&&c3[r])return c3[r];var n=window.getComputedStyle(e),a=n.getPropertyValue("box-sizing")||n.getPropertyValue("-moz-box-sizing")||n.getPropertyValue("-webkit-box-sizing"),o=parseFloat(n.getPropertyValue("padding-bottom"))+parseFloat(n.getPropertyValue("padding-top")),i=parseFloat(n.getPropertyValue("border-bottom-width"))+parseFloat(n.getPropertyValue("border-top-width")),l=Ct(xU).call(xU,function(c){var d;return _t(d="".concat(c,":")).call(d,n.getPropertyValue(c))}).join(";"),s={sizingStyle:l,paddingSize:o,borderSize:i,boxSizing:a};return t&&r&&(c3[r]=s),s}function jVe(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;hi||(hi=document.createElement("textarea"),hi.setAttribute("tab-index","-1"),hi.setAttribute("aria-hidden","true"),document.body.appendChild(hi)),e.getAttribute("wrap")?hi.setAttribute("wrap",e.getAttribute("wrap")):hi.removeAttribute("wrap");var o=BVe(e,r),i=o.paddingSize,l=o.borderSize,s=o.boxSizing,c=o.sizingStyle;hi.setAttribute("style",_t(t="".concat(c,";")).call(t,zVe)),hi.value=e.value||e.placeholder||"";var d=EVe,f=s3,v=hi.scrollHeight,h;if(s==="border-box"?v+=l:s==="content-box"&&(v-=i),n!==null||a!==null){hi.value=" ";var g=hi.scrollHeight-i;n!==null&&(d=g*n,s==="border-box"&&(d=d+i+l),v=Math.max(d,v)),a!==null&&(f=g*a,s==="border-box"&&(f=f+i+l),h=v>f?"":"hidden",v=Math.min(f,v))}return{height:v,minHeight:d,maxHeight:f,overflowY:h,resize:"none"}}var Ju;(function(e){e[e.NONE=0]="NONE",e[e.RESIZING=1]="RESIZING",e[e.RESIZED=2]="RESIZED"})(Ju||(Ju={}));var UVe=function(t,r){var n,a=t.disabled,o=a===void 0?!1:a,i=t.autoSelect,l=i===void 0?!1:i,s=t.autoFocus,c=s===void 0?!1:s,d=t.readonly,f=d===void 0?!1:d,v=t.block,h=v===void 0?!1:v,g=t.autoSize,_=t.value,w=t.className,b=t.id,y=t.style,D=t.tabIndex,F=t.inputState,S=t.placeholder,I=t.maxLength,C=t.spellCheck,R=t.prefixCls,P=t.onFocus,O=t.onBlur,N=t.onChange,A=t.onKeyDown,z=t.onKeyUp,k=m.useState(!1),M=me(k,2),T=M[0],B=M[1],L=m.useState(!0),K=me(L,2),X=K[0],ee=K[1],q=m.useState(Ju.NONE),G=me(q,2),W=G[0],V=G[1],Y=m.useState(),Z=me(Y,2),te=Z[0],J=Z[1],ae=m.useRef(null),re=m.useRef(),ie=m.useRef(),ve=Yt("resize-textarea",R),oe=Yt("input",R);m.useLayoutEffect(function(){l&&_e()},[l]),m.useEffect(function(){le()},[_,g]),m.useEffect(function(){return function(){re.current&&cancelAnimationFrame(re.current)}},[]),m.useImperativeHandle(r,function(){return{blur:function(){ae.current&&ae.current.blur()},focus:function(Xe){ae.current&&t3(ae.current,Xe)},select:_e,setSelectionRange:function(Xe,ot,tt){var Dt;(Dt=ae.current)===null||Dt===void 0||Dt.setSelectionRange(Xe,ot,tt)},input:ae.current}});var fe=function(){g&&ge()},ge=function(){re.current&&cancelAnimationFrame(re.current),re.current=requestAnimationFrame(le)},le=function(){if(!(!g||!ae.current)){var Xe=g.minRows,ot=g.maxRows,tt=jVe(ae.current,!1,Xe,ot);J(tt),V(Ju.RESIZING),ie.current&&cancelAnimationFrame(ie.current),ie.current=requestAnimationFrame(function(){V(Ju.RESIZED),ie.current=requestAnimationFrame(function(){V(Ju.NONE)})})}},_e=function(){var Xe=ae.current;Xe&&(Xe.focus(),Xe.select())},De=function(Xe){B(!0),ee(!0),P&&P(Xe)},Oe=function(Xe){var ot,tt=yp(ot=Xe.target.value).call(ot);B(!1),O&&O(tt,Xe)},Be=function(Xe){z&&z(Xe)},Pe=function(Xe){A&&A(Xe)},Ge=function(Xe){N&&N(Xe.target.value,Xe)},ke=function(Xe){return ut(Xe)?"":Xe},Ze=function(Xe){var ot=Xe.currentTarget.value;I&&N&&N(ot.substr(0,I))},Ke=ue(ue(ue({},y),te),W===Ju.RESIZING?{overflowX:"hidden",overflowY:"hidden"}:null);return $.createElement(vi,{onResize:fe,disabled:!g},$.createElement("textarea",{className:pe(ve,"".concat(oe,"-css-var"),w,(n={"textarea-disable":o,"textarea-focus":T,"textarea-readonly":f,"textarea-invalid":!X},Ee(n,"textarea-".concat(F),F),Ee(n,"block",h),n)),id:b,maxLength:I,style:Ke,ref:ae,disabled:o,readOnly:f,value:ke(_),tabIndex:D,onCompositionEnd:Ze,placeholder:S,onFocus:De,onBlur:Oe,onKeyDown:Pe,onKeyUp:Be,onChange:Ge,autoFocus:c,spellCheck:C}))};const HVe=m.forwardRef(UVe);var WVe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a"u"||!Pt||Pt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Pt(Boolean,[],function(){})),!0}catch{return!1}}var bU=function(e){ho(r,e);var t=XVe(r);function r(){return Cr(this,r),t.apply(this,arguments)}return Tr(r,[{key:"render",value:function(){var a=this.props.child;return m.createElement(D6.Consumer,null,function(o){var i=ue(ue({},og),o.locale);return a(i)})}}],[{key:"replaceLocale",value:function(a,o){return a.replace(/\{\w+\}/g,function(i){var l=At(i).call(i,1,-1);return String(o[l])})}}]),r}(m.Component);bU.propTypes={child:$r.func};const ed=bU;function QVe(e){var t=JVe();return function(){var n=Pr(e),a;if(t){var o=Pr(this).constructor;a=Pt(n,arguments,o)}else a=n.apply(this,arguments);return go(this,a)}}function JVe(){if(typeof Reflect>"u"||!Pt||Pt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Pt(Boolean,[],function(){})),!0}catch{return!1}}var eKe={warning:"negative",error:"negative",success:"primary",query:"primary",question:"primary",info:"primary"},u3=function(e){ho(r,e);var t=QVe(r);function r(n){var a;return Cr(this,r),a=t.call(this,n),a.state={value:""},a}return Tr(r,[{key:"renderFooter",value:function(a){var o=this.props,i=o.text4Cancel,l=o.text4Ok,s=o.onOk,c=o.onCancel,d=o.footerLeft,f=o.props4Ok,v=o.props4Cancel,h=o.type,g=a.alert&&a.alert.okText,_=a.alert&&a.alert.cancelText,w=eKe[h||""],b=m.createElement(jr,we({className:"footer-btn",type:w,danger:w==="negative"},f,{loadingWhenClick:!0,onClick:s}),l||g),y;return h!=="success"&&h!=="info"&&(y=m.createElement(jr,we({className:"footer-btn",type:"negative",onClick:c},v),i||_)),m.createElement(fg,{justify:"space-between",wrap:!0,style:{flexDirection:"row-reverse"},className:"alert-footer",gutter:[0,12],align:"middle"},m.createElement(Hc,{className:"footer-right"},ys(l)?null:b,ys(i)?null:y),m.createElement(Hc,{className:"footer-left"},d))}},{key:"renderIcon",value:function(a){var o={info:Uc,warning:Uc,query:tU,success:Yy,error:Gu,question:tU},i=o[a||"warning"];return i&&m.createElement(i,{className:a})}},{key:"render",value:function(){var a=this,o,i=this.props,l=i.id,s=i.type,c=i.title,d=i.message,f=i.visible,v=i.content,h=i.placeholder,g=i.onChange,_=i.icon,w=(o=this.props.prefixCls)!==null&&o!==void 0?o:this.context.getPrefixCls("alert",this.props.prefixCls);return m.createElement($s,{classNames:"alert",appear:!0,enter:!0,exit:!0,in:f,timeout:{enter:za.NORMAL,exit:za.FAST}},m.createElement("div",we({className:pe("".concat(w),this.props.className),style:this.props.style,id:l},pa(this.props,{aria:!0,data:!0})),_===void 0?this.renderIcon(s):_,m.createElement("div",{className:"alert-body"},m.createElement("div",{className:"title"},c),d&&m.createElement("div",{className:"message"},d),v&&m.createElement("div",{className:"content"},v),s==="question"&&m.createElement(Ss,{value:this.state.value,className:"question",placeholder:h,onChange:function(y){g?.(y),a.setState({value:y})}})),m.createElement(ed,{child:function(y){return a.renderFooter(y)}})))}}]),r}(m.Component);u3.defaultProps={title:"",message:"",type:"warning",visible:!1,footerLeft:null},u3.contextType=fi;const tKe=u3;function rKe(e){var t=nKe();return function(){var n=Pr(e),a;if(t){var o=Pr(this).constructor;a=Pt(n,arguments,o)}else a=n.apply(this,arguments);return go(this,a)}}function nKe(){if(typeof Reflect>"u"||!Pt||Pt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Pt(Boolean,[],function(){})),!0}catch{return!1}}var td=function(e){ho(r,e);var t=rKe(r);function r(n){var a;return Cr(this,r),a=t.call(this,n),a.openAlert=function(o){a.setState({config:o,visible:!0})},a.closeAlert=function(){a.setState({visible:!1})},a.state={config:{title:""},visible:!1},a}return Tr(r,[{key:"componentDidMount",value:function(){var a=this.props.onReady;a&&a(this)}},{key:"render",value:function(){var a=this.state,o=a.config,i=a.visible;return"visible"in this.props&&(i=!!this.props.visible,o=this.props),m.createElement(T9,{visible:i},m.createElement(tKe,we({},o,{onOk:o.onOk||this.closeAlert,onCancel:o.onCancel||this.closeAlert,visible:i})))}}]),r}(m.Component);function yU(){return td.THE_ALERT?da.resolve(td.THE_ALERT):new da(function(e){var t=document.createElement("div");Kr.render(m.createElement(Hy,C6(),m.createElement(F6,{locale:s9()},m.createElement(td,{title:"",onReady:function(n){td.THE_ALERT=n,e(n)}}))),t)})}td.openAlert=function(e){yU().then(function(t){t.openAlert(e)})},td.closeAlert=function(){yU().then(function(e){e.closeAlert()})};const d3=td;var aKe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);an.size?LKe(n.getIterator(),function(o){BKe(r,o)&&OU(a,o)}):MKe(r,function(o){n.includes(o)&&OU(a,o)}),a},jKe=Re,UKe=AU,HKe=nd,WKe=!HKe();jKe({target:"Set",proto:!0,real:!0,forced:WKe},{intersection:UKe});var VKe=Ba,KKe=Po.has,qKe=gg,YKe=rd,GKe=gi,XKe=jc,ZKe=P0,kU=function(t){var r=VKe(this),n=YKe(t);if(qKe(r)<=n.size)return GKe(r,function(o){if(n.includes(o))return!1},!0)!==!1;var a=n.getIterator();return XKe(a,function(o){if(KKe(r,o))return ZKe(a,"normal",!1)})!==!1},QKe=Re,JKe=kU,eqe=nd;QKe({target:"Set",proto:!0,real:!0,forced:!eqe()},{isDisjointFrom:JKe});var tqe=Ba,rqe=gg,nqe=gi,aqe=rd,PU=function(t){var r=tqe(this),n=aqe(t);return rqe(r)>n.size?!1:nqe(r,function(a){if(!n.includes(a))return!1},!0)!==!1},oqe=Re,iqe=PU,lqe=nd;oqe({target:"Set",proto:!0,real:!0,forced:!lqe()},{isSubsetOf:iqe});var sqe=Ba,cqe=Po.has,uqe=gg,dqe=rd,fqe=jc,pqe=P0,NU=function(t){var r=sqe(this),n=dqe(t);if(uqe(r)1?arguments[1]:void 0);return eYe(r,function(a){if(!n(a,a,r))return!1},!0)!==!1}});var tYe=Ru,rYe=Vn,nYe=wc,aYe=an,oYe=Nu,iYe=aYe("iterator"),lYe=Object,sYe=function(e){if(nYe(e))return!1;var t=lYe(e);return t[iYe]!==void 0||"@@iterator"in t||rYe(oYe,tYe(t))},cYe=ta,jU=mn,uYe=sYe,dYe=dn,fYe=cYe("Set"),pYe=function(e){return dYe(e)&&typeof e.size=="number"&&jU(e.has)&&jU(e.keys)},ad=function(e){return pYe(e)?e:uYe(e)?new fYe(e):e},vYe=Re,hYe=kr,gYe=ad,_Ye=RU;vYe({target:"Set",proto:!0,real:!0,forced:!0},{difference:function(t){return hYe(_Ye,this,gYe(t))}});var mYe=Re,xYe=kn,bYe=Ba,UU=Po,yYe=gi,wYe=UU.Set,DYe=UU.add;mYe({target:"Set",proto:!0,real:!0,forced:!0},{filter:function(t){var r=bYe(this),n=xYe(t,arguments.length>1?arguments[1]:void 0),a=new wYe;return yYe(r,function(o){n(o,o,r)&&DYe(a,o)}),a}});var IYe=Re,FYe=kn,$Ye=Ba,SYe=gi;IYe({target:"Set",proto:!0,real:!0,forced:!0},{find:function(t){var r=$Ye(this),n=FYe(t,arguments.length>1?arguments[1]:void 0),a=SYe(r,function(o){if(n(o,o,r))return{value:o}},!0);return a&&a.value}});var EYe=Re,CYe=kr,TYe=ad,RYe=AU;EYe({target:"Set",proto:!0,real:!0,forced:!0},{intersection:function(t){return CYe(RYe,this,TYe(t))}});var OYe=Re,AYe=kr,kYe=ad,PYe=kU;OYe({target:"Set",proto:!0,real:!0,forced:!0},{isDisjointFrom:function(t){return AYe(PYe,this,kYe(t))}});var NYe=Re,MYe=kr,LYe=ad,zYe=PU;NYe({target:"Set",proto:!0,real:!0,forced:!0},{isSubsetOf:function(t){return MYe(zYe,this,LYe(t))}});var BYe=Re,jYe=kr,UYe=ad,HYe=NU;BYe({target:"Set",proto:!0,real:!0,forced:!0},{isSupersetOf:function(t){return jYe(HYe,this,UYe(t))}});var WYe=Re,HU=Dr,VYe=Ba,KYe=gi,qYe=ai,YYe=HU([].join),GYe=HU([].push);WYe({target:"Set",proto:!0,real:!0,forced:!0},{join:function(t){var r=VYe(this),n=t===void 0?",":qYe(t),a=[];return KYe(r,function(o){GYe(a,o)}),YYe(a,n)}});var XYe=Re,ZYe=kn,QYe=Ba,WU=Po,JYe=gi,eGe=WU.Set,tGe=WU.add;XYe({target:"Set",proto:!0,real:!0,forced:!0},{map:function(t){var r=QYe(this),n=ZYe(t,arguments.length>1?arguments[1]:void 0),a=new eGe;return JYe(r,function(o){tGe(a,n(o,o,r))}),a}});var rGe=Re,nGe=Wn,aGe=Ba,oGe=gi,iGe=TypeError;rGe({target:"Set",proto:!0,real:!0,forced:!0},{reduce:function(t){var r=aGe(this),n=arguments.length<2,a=n?void 0:arguments[1];if(nGe(t),oGe(r,function(o){n?(n=!1,a=o):a=t(a,o,o,r)}),n)throw new iGe("Reduce of empty set with no initial value");return a}});var lGe=Re,sGe=kn,cGe=Ba,uGe=gi;lGe({target:"Set",proto:!0,real:!0,forced:!0},{some:function(t){var r=cGe(this),n=sGe(t,arguments.length>1?arguments[1]:void 0);return uGe(r,function(a){if(n(a,a,r))return!0},!0)===!0}});var dGe=Re,fGe=kr,pGe=ad,vGe=MU;dGe({target:"Set",proto:!0,real:!0,forced:!0},{symmetricDifference:function(t){return fGe(vGe,this,pGe(t))}});var hGe=Re,gGe=kr,_Ge=ad,mGe=LU;hGe({target:"Set",proto:!0,real:!0,forced:!0},{union:function(t){return gGe(mGe,this,_Ge(t))}});var xGe=Bqe,bGe=xGe;(function(e){e.exports=bGe})(lKe),function(e){e.exports=v3}(iKe);const od=qt(p3);var yGe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a-1:re.checked,onChange:q(re.value),style:re.style,id:re.id,tabFocus:h,size:re.size||D},re.label)}):Ct(r=$.Children).call(r,g,function(re){return re?$.cloneElement(re,{checked:by(re.props.checked)?K.indexOf(re.props.value)>-1:re.props.checked,onChange:q(re.props.value),disabled:l||re.props.disabled,tabFocus:h,size:re.props.size||D}):null}),ae=pe("".concat(ee,"-group"),w,"check-group-".concat(c),{"check-group-disable":l,"no-default-padding":!C});return $.createElement("div",we({className:ae,style:y,id:b,onKeyDown:Z},N),f&&Y(),J)};const DGe=wGe;var x3=f3;x3.displayName="Check",x3.Group=DGe;const id=x3;var b3={},IGe={get exports(){return b3},set exports(e){b3=e}},y3={},FGe={get exports(){return y3},set exports(e){y3=e}},$Ge=Ou,SGe=ai,EGe=vs,CGe=RangeError,TGe=function(t){var r=SGe(EGe(this)),n="",a=$Ge(t);if(a<0||a===1/0)throw new CGe("Wrong number of repetitions");for(;a>0;(a>>>=1)&&(r+=r))a&1&&(n+=r);return n},VU=Dr,RGe=N8,KU=ai,OGe=TGe,AGe=vs,kGe=VU(OGe),PGe=VU("".slice),NGe=Math.ceil,qU=function(e){return function(t,r,n){var a=KU(AGe(t)),o=RGe(r),i=a.length,l=n===void 0?" ":KU(n),s,c;return o<=i||l===""?a:(s=o-i,c=kGe(l,NGe(s/l.length)),c.length>s&&(c=PGe(c,0,s)),e?a+c:c+a)}},MGe={start:qU(!1),end:qU(!0)},Vc=Dr,YU=vr,ld=MGe.start,LGe=RangeError,zGe=isFinite,BGe=Math.abs,Es=Date.prototype,w3=Es.toISOString,jGe=Vc(Es.getTime),UGe=Vc(Es.getUTCDate),HGe=Vc(Es.getUTCFullYear),WGe=Vc(Es.getUTCHours),VGe=Vc(Es.getUTCMilliseconds),KGe=Vc(Es.getUTCMinutes),qGe=Vc(Es.getUTCMonth),YGe=Vc(Es.getUTCSeconds),GGe=YU(function(){return w3.call(new Date(-5e13-1))!=="0385-07-25T07:06:39.999Z"})||!YU(function(){w3.call(new Date(NaN))})?function(){if(!zGe(jGe(this)))throw new LGe("Invalid time value");var t=this,r=HGe(t),n=VGe(t),a=r<0?"-":r>9999?"+":"";return a+ld(BGe(r),a?6:4,0)+"-"+ld(qGe(t)+1,2,0)+"-"+ld(UGe(t),2,0)+"T"+ld(WGe(t),2,0)+":"+ld(KGe(t),2,0)+":"+ld(YGe(t),2,0)+"."+ld(n,3,0)+"Z"}:w3,XGe=Re,GU=kr,ZGe=Ma,QGe=g8,JGe=GGe,eXe=wl,tXe=vr,rXe=tXe(function(){return new Date(NaN).toJSON()!==null||GU(Date.prototype.toJSON,{toISOString:function(){return 1}})!==1});XGe({target:"Date",proto:!0,forced:rXe},{toJSON:function(t){var r=ZGe(this),n=QGe(r,"number");return typeof n=="number"&&!isFinite(n)?null:!("toISOString"in r)&&eXe(r)==="Date"?GU(JGe,r):r.toISOString()}});var D3=xn,nXe=Of;D3.JSON||(D3.JSON={stringify:JSON.stringify});var aXe=function(t,r,n){return nXe(D3.JSON.stringify,null,arguments)},oXe=aXe,iXe=oXe,lXe=iXe,sXe=lXe,cXe=sXe,uXe=cXe;(function(e){e.exports=uXe})(FGe),function(e){e.exports=y3}(IGe);const XU=qt(b3);var ZU=$.useRef,dXe=$.useState,fXe=$.forwardRef,pXe=$.useImperativeHandle,vXe=$.useEffect,hXe=function(t,r){var n=t.className,a=t.id,o=t.style,i=t.readonly,l=i===void 0?!1:i,s=t.value,c=t.onChange,d=t.placeholder,f=t.onBlur,v=t.autoFocus,h=v===void 0?!1:v,g=t.allowClear,_=g===void 0?!1:g,w=t.showSearchIcon,b=w===void 0?!0:w,y=t.prefix,D=t.suffix,F=t.onClearBtnClick,S=t.onFocus,I=t.onKeyUp,C=t.onKeyDown,R=t.debounceTime,P=R===void 0?500:R,O=t.prefixCls,N=t.onSearchStart,A=dXe(!1),z=me(A,2),k=z[0],M=z[1],T=ZU(null),B=ZU({debounceTimer:Number}),L=Yt("search-input",O);pXe(r,function(){return{focus:function(){T.current&&T.current.focus()},blur:function(){T.current&&T.current.blur()}}}),vXe(function(){var V=X();V!==k&&M(V)},[s]);var K=function(){return T.current?T.current.value:""},X=function(){return _&&!l&&!Nn(K())},ee=function(Y){var Z=Y.target.value;if(M(X()),c&&c(Z,Y),N){var te=B.current.searchTimer;te&&clearTimeout(te),B.current.searchTimer=setTimeout(function(){N(Z)},P)}},q=function(Y){La(t,"value")||T.current&&(T.current.value="",M(!1)),F&&F(Y)},G=function(Y){f&&f(Y.target.value,Y)},W=pe(L,n,{readonly:l,"has-clear":k});return $.createElement("div",{className:W,style:o,id:a},y&&$.createElement("div",{className:"search-prefix"},y),$.createElement("div",{className:"input-wrapper"},$.createElement("div",{className:pe("input-content",{"show-search-icon":b})},b&&$.createElement("div",{className:"input-prefix"},$.createElement(aU,null)),$.createElement("input",{ref:T,type:"text",readOnly:l,value:s,onChange:ee,onBlur:G,onFocus:S,onKeyUp:I,onKeyDown:C,placeholder:d,autoFocus:h}),k&&$.createElement("div",{className:"input-suffix",onClick:q},$.createElement(dg,null)))),D&&$.createElement("div",{className:"search-suffix"},D))};const gXe=fXe(hXe);var _Xe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a(window.innerHeight||document.documentElement.clientHeight)&&window.innerWidth>document.body.offsetWidth}var wXe="x-util-locker-".concat(Date.now()),JU=0;function DXe(e){var t=!!e,r=m.useState(function(){var o;return JU+=1,_t(o="".concat(wXe,"_")).call(o,JU)}),n=me(r,1),a=n[0];Ip(function(){if(t){var o=Ije(document.body).width,i=yXe();Kj(` +`,fH=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","font-variant","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing","word-break"],W3={},wi;function JKe(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=e.getAttribute("id")||e.getAttribute("data-reactid")||e.getAttribute("name");if(t&&W3[r])return W3[r];var n=window.getComputedStyle(e),o=n.getPropertyValue("box-sizing")||n.getPropertyValue("-moz-box-sizing")||n.getPropertyValue("-webkit-box-sizing"),a=parseFloat(n.getPropertyValue("padding-bottom"))+parseFloat(n.getPropertyValue("padding-top")),i=parseFloat(n.getPropertyValue("border-bottom-width"))+parseFloat(n.getPropertyValue("border-top-width")),l=$t(fH).call(fH,function(c){var d;return mt(d="".concat(c,":")).call(d,n.getPropertyValue(c))}).join(";"),s={sizingStyle:l,paddingSize:a,borderSize:i,boxSizing:o};return t&&r&&(W3[r]=s),s}function eqe(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;wi||(wi=document.createElement("textarea"),wi.setAttribute("tab-index","-1"),wi.setAttribute("aria-hidden","true"),document.body.appendChild(wi)),e.getAttribute("wrap")?wi.setAttribute("wrap",e.getAttribute("wrap")):wi.removeAttribute("wrap");var a=JKe(e,r),i=a.paddingSize,l=a.borderSize,s=a.boxSizing,c=a.sizingStyle;wi.setAttribute("style",mt(t="".concat(c,";")).call(t,QKe)),wi.value=e.value||e.placeholder||"";var d=jKe,f=H3,v=wi.scrollHeight,g;if(s==="border-box"?v+=l:s==="content-box"&&(v-=i),n!==null||o!==null){wi.value=" ";var h=wi.scrollHeight-i;n!==null&&(d=h*n,s==="border-box"&&(d=d+i+l),v=Math.max(d,v)),o!==null&&(f=h*o,s==="border-box"&&(f=f+i+l),g=v>f?"":"hidden",v=Math.min(f,v))}return{height:v,minHeight:d,maxHeight:f,overflowY:g,resize:"none"}}var ud;(function(e){e[e.NONE=0]="NONE",e[e.RESIZING=1]="RESIZING",e[e.RESIZED=2]="RESIZED"})(ud||(ud={}));var tqe=function(t,r){var n,o=t.disabled,a=o===void 0?!1:o,i=t.autoSelect,l=i===void 0?!1:i,s=t.autoFocus,c=s===void 0?!1:s,d=t.readonly,f=d===void 0?!1:d,v=t.block,g=v===void 0?!1:v,h=t.autoSize,_=t.value,b=t.className,x=t.id,w=t.style,D=t.tabIndex,I=t.inputState,$=t.placeholder,F=t.maxLength,C=t.spellCheck,R=t.prefixCls,k=t.onFocus,P=t.onBlur,U=t.onChange,B=t.onKeyDown,z=t.onKeyUp,A=m.useState(!1),M=be(A,2),N=M[0],T=M[1],O=m.useState(!0),j=be(O,2),K=j[0],Q=j[1],Y=m.useState(ud.NONE),X=be(Y,2),G=X[0],H=X[1],V=m.useState(),Z=be(V,2),te=Z[0],J=Z[1],ne=m.useRef(null),re=m.useRef(),ie=m.useRef(),ce=qt("resize-textarea",R),oe=qt("input",R);m.useLayoutEffect(function(){l&&ge()},[l]),m.useEffect(function(){he()},[_,h]),m.useEffect(function(){return function(){re.current&&cancelAnimationFrame(re.current)}},[]),m.useImperativeHandle(r,function(){return{blur:function(){ne.current&&ne.current.blur()},focus:function(Le){ne.current&&N3(ne.current,Le)},select:ge,setSelectionRange:function(Le,ze,ft){var pt;(pt=ne.current)===null||pt===void 0||pt.setSelectionRange(Le,ze,ft)},input:ne.current}});var fe=function(){h&&ve()},ve=function(){re.current&&cancelAnimationFrame(re.current),re.current=requestAnimationFrame(he)},he=function(){if(!(!h||!ne.current)){var Le=h.minRows,ze=h.maxRows,ft=eqe(ne.current,!1,Le,ze);J(ft),H(ud.RESIZING),ie.current&&cancelAnimationFrame(ie.current),ie.current=requestAnimationFrame(function(){H(ud.RESIZED),ie.current=requestAnimationFrame(function(){H(ud.NONE)})})}},ge=function(){var Le=ne.current;Le&&(Le.focus(),Le.select())},$e=function(Le){T(!0),Q(!0),k&&k(Le)},ue=function(Le){var ze,ft=kp(ze=Le.target.value).call(ze);T(!1),P&&P(ft,Le)},Me=function(Le){z&&z(Le)},Pe=function(Le){B&&B(Le)},Qe=function(Le){U&&U(Le.target.value,Le)},it=function(Le){return dt(Le)?"":Le},Je=function(Le){var ze=Le.currentTarget.value;F&&U&&U(ze.substr(0,F))},He=ae(ae(ae({},w),te),G===ud.RESIZING?{overflowX:"hidden",overflowY:"hidden"}:null);return E.createElement(yi,{onResize:fe,disabled:!h},E.createElement("textarea",{className:_e(ce,"".concat(oe,"-css-var"),b,(n={"textarea-disable":a,"textarea-focus":N,"textarea-readonly":f,"textarea-invalid":!K},je(n,"textarea-".concat(I),I),je(n,"block",g),n)),id:x,maxLength:F,style:He,ref:ne,disabled:a,readOnly:f,value:it(_),tabIndex:D,onCompositionEnd:Je,placeholder:$,onFocus:$e,onBlur:ue,onKeyDown:Pe,onKeyUp:Me,onChange:Qe,autoFocus:c,spellCheck:C}))};const rqe=m.forwardRef(tqe);var nqe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o"u"||!Lt||Lt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Lt(Boolean,[],function(){})),!0}catch{return!1}}var pH=function(e){xa(r,e);var t=cqe(r);function r(){return Br(this,r),t.apply(this,arguments)}return jr(r,[{key:"render",value:function(){var o=this.props.child;return m.createElement(i3.Consumer,null,function(a){var i=ae(ae({},yh),a.locale);return o(i)})}}],[{key:"replaceLocale",value:function(o,a){return o.replace(/\{\w+\}/g,function(i){var l=kt(i).call(i,1,-1);return String(a[l])})}}]),r}(m.Component);pH.propTypes={child:Or.func};const dd=pH;function dqe(e){var t=fqe();return function(){var n=Ur(e),o;if(t){var a=Ur(this).constructor;o=Lt(n,arguments,a)}else o=n.apply(this,arguments);return ba(this,o)}}function fqe(){if(typeof Reflect>"u"||!Lt||Lt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Lt(Boolean,[],function(){})),!0}catch{return!1}}var pqe={warning:"negative",error:"negative",success:"primary",query:"primary",question:"primary",info:"primary"},V3=function(e){xa(r,e);var t=dqe(r);function r(n){var o;return Br(this,r),o=t.call(this,n),o.state={value:""},o}return jr(r,[{key:"renderFooter",value:function(o){var a=this.props,i=a.text4Cancel,l=a.text4Ok,s=a.onOk,c=a.onCancel,d=a.footerLeft,f=a.props4Ok,v=a.props4Cancel,g=a.type,h=o.alert&&o.alert.okText,_=o.alert&&o.alert.cancelText,b=pqe[g||""],x=m.createElement(Ar,Ee({className:"footer-btn",type:b,danger:b==="negative"},f,{loadingWhenClick:!0,onClick:s}),l||h),w;return g!=="success"&&g!=="info"&&(w=m.createElement(Ar,Ee({className:"footer-btn",type:"negative",onClick:c},v),i||_)),m.createElement(Ch,{justify:"space-between",wrap:!0,style:{flexDirection:"row-reverse"},className:"alert-footer",gutter:[0,12],align:"middle"},m.createElement(Qc,{className:"footer-right"},Cs(l)?null:x,Cs(i)?null:w),m.createElement(Qc,{className:"footer-left"},d))}},{key:"renderIcon",value:function(o){var a={info:Zc,warning:Zc,query:YU,success:$1,error:id,question:YU},i=a[o||"warning"];return i&&m.createElement(i,{className:o})}},{key:"render",value:function(){var o=this,a,i=this.props,l=i.style,s=i.id,c=i.type,d=i.title,f=i.message,v=i.visible,g=i.content,h=i.placeholder,_=i.onChange,b=i.icon,x=this.context.alert,w=(a=this.props.prefixCls)!==null&&a!==void 0?a:this.context.getPrefixCls("alert",this.props.prefixCls),D=ae(ae({},x?.style),l);return m.createElement(Ps,{classNames:"alert",appear:!0,enter:!0,exit:!0,in:v,timeout:{enter:Vo.NORMAL,exit:Vo.FAST}},m.createElement("div",Ee({className:_e("".concat(w),this.props.className,x?.className),style:D,id:s},yo(this.props,{aria:!0,data:!0})),b===void 0?this.renderIcon(c):b,m.createElement("div",{className:"alert-body"},m.createElement("div",{className:"title"},d),f&&m.createElement("div",{className:"message"},f),g&&m.createElement("div",{className:"content"},g),c==="question"&&m.createElement(jl,{value:this.state.value,className:"question",placeholder:h,onChange:function($){_?.($),o.setState({value:$})}})),m.createElement(dd,{child:function($){return o.renderFooter($)}})))}}]),r}(m.Component);V3.defaultProps={title:"",message:"",type:"warning",visible:!1,footerLeft:null},V3.contextType=Ko;const vqe=V3;function gqe(e){var t=hqe();return function(){var n=Ur(e),o;if(t){var a=Ur(this).constructor;o=Lt(n,arguments,a)}else o=n.apply(this,arguments);return ba(this,o)}}function hqe(){if(typeof Reflect>"u"||!Lt||Lt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Lt(Boolean,[],function(){})),!0}catch{return!1}}var fd=function(e){xa(r,e);var t=gqe(r);function r(n){var o;return Br(this,r),o=t.call(this,n),o.openAlert=function(a){o.setState({config:a,visible:!0})},o.closeAlert=function(){o.setState({visible:!1})},o.state={config:{title:""},visible:!1},o}return jr(r,[{key:"componentDidMount",value:function(){var o=this.props.onReady;o&&o(this)}},{key:"render",value:function(){var o=this.state,a=o.config,i=o.visible;return"visible"in this.props&&(i=!!this.props.visible,a=this.props),m.createElement(DU,{visible:i},m.createElement(vqe,Ee({},a,{onOk:a.onOk||this.closeAlert,onCancel:a.onCancel||this.closeAlert,visible:i})))}}]),r}(m.Component);function vH(){return fd.THE_ALERT?xo.resolve(fd.THE_ALERT):new xo(function(e){var t=document.createElement("div");Kr.render(m.createElement(wh,p3(),m.createElement(c3,{locale:oU()},m.createElement(fd,{title:"",onReady:function(n){fd.THE_ALERT=n,e(n)}}))),t)})}fd.openAlert=function(e){vH().then(function(t){t.openAlert(e)})},fd.closeAlert=function(){vH().then(function(e){e.closeAlert()})};const K3=fd;var _qe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);on.size?Zqe(n.getIterator(),function(a){Jqe(r,a)&&FH(o,a)}):Xqe(r,function(a){n.includes(a)&&FH(o,a)}),o},eYe=Ne,tYe=$H,rYe=vd,nYe=!rYe();eYe({target:"Set",proto:!0,real:!0,forced:nYe},{intersection:tYe});var oYe=qo,aYe=Ba.has,iYe=Ah,lYe=pd,sYe=Di,cYe=Xc,uYe=py,EH=function(t){var r=oYe(this),n=lYe(t);if(iYe(r)<=n.size)return sYe(r,function(a){if(n.includes(a))return!1},!0)!==!1;var o=n.getIterator();return cYe(o,function(a){if(aYe(r,a))return uYe(o,"normal",!1)})!==!1},dYe=Ne,fYe=EH,pYe=vd;dYe({target:"Set",proto:!0,real:!0,forced:!pYe()},{isDisjointFrom:fYe});var vYe=qo,gYe=Ah,hYe=Di,_Ye=pd,SH=function(t){var r=vYe(this),n=_Ye(t);return gYe(r)>n.size?!1:hYe(r,function(o){if(!n.includes(o))return!1},!0)!==!1},mYe=Ne,xYe=SH,bYe=vd;mYe({target:"Set",proto:!0,real:!0,forced:!bYe()},{isSubsetOf:xYe});var yYe=qo,wYe=Ba.has,DYe=Ah,IYe=pd,FYe=Xc,$Ye=py,CH=function(t){var r=yYe(this),n=IYe(t);if(DYe(r)1?arguments[1]:void 0);return pGe(r,function(o){if(!n(o,o,r))return!1},!0)!==!1}});var vGe=ju,gGe=Qn,hGe=Oc,_Ge=cn,mGe=Ku,xGe=_Ge("iterator"),bGe=Object,yGe=function(e){if(hGe(e))return!1;var t=bGe(e);return t[xGe]!==void 0||"@@iterator"in t||gGe(mGe,vGe(t))},wGe=lo,kH=Fn,DGe=yGe,IGe=gn,FGe=wGe("Set"),$Ge=function(e){return IGe(e)&&typeof e.size=="number"&&kH(e.has)&&kH(e.keys)},gd=function(e){return $Ge(e)?e:DGe(e)?new FGe(e):e},EGe=Ne,SGe=Lr,CGe=gd,TGe=IH;EGe({target:"Set",proto:!0,real:!0,forced:!0},{difference:function(t){return SGe(TGe,this,CGe(t))}});var RGe=Ne,OGe=Un,AGe=qo,PH=Ba,kGe=Di,PGe=PH.Set,NGe=PH.add;RGe({target:"Set",proto:!0,real:!0,forced:!0},{filter:function(t){var r=AGe(this),n=OGe(t,arguments.length>1?arguments[1]:void 0),o=new PGe;return kGe(r,function(a){n(a,a,r)&&NGe(o,a)}),o}});var MGe=Ne,zGe=Un,LGe=qo,BGe=Di;MGe({target:"Set",proto:!0,real:!0,forced:!0},{find:function(t){var r=LGe(this),n=zGe(t,arguments.length>1?arguments[1]:void 0),o=BGe(r,function(a){if(n(a,a,r))return{value:a}},!0);return o&&o.value}});var jGe=Ne,UGe=Lr,HGe=gd,WGe=$H;jGe({target:"Set",proto:!0,real:!0,forced:!0},{intersection:function(t){return UGe(WGe,this,HGe(t))}});var VGe=Ne,KGe=Lr,qGe=gd,YGe=EH;VGe({target:"Set",proto:!0,real:!0,forced:!0},{isDisjointFrom:function(t){return KGe(YGe,this,qGe(t))}});var GGe=Ne,XGe=Lr,ZGe=gd,QGe=SH;GGe({target:"Set",proto:!0,real:!0,forced:!0},{isSubsetOf:function(t){return XGe(QGe,this,ZGe(t))}});var JGe=Ne,eXe=Lr,tXe=gd,rXe=CH;JGe({target:"Set",proto:!0,real:!0,forced:!0},{isSupersetOf:function(t){return eXe(rXe,this,tXe(t))}});var nXe=Ne,NH=Ir,oXe=qo,aXe=Di,iXe=di,lXe=NH([].join),sXe=NH([].push);nXe({target:"Set",proto:!0,real:!0,forced:!0},{join:function(t){var r=oXe(this),n=t===void 0?",":iXe(t),o=[];return aXe(r,function(a){sXe(o,a)}),lXe(o,n)}});var cXe=Ne,uXe=Un,dXe=qo,MH=Ba,fXe=Di,pXe=MH.Set,vXe=MH.add;cXe({target:"Set",proto:!0,real:!0,forced:!0},{map:function(t){var r=dXe(this),n=uXe(t,arguments.length>1?arguments[1]:void 0),o=new pXe;return fXe(r,function(a){vXe(o,n(a,a,r))}),o}});var gXe=Ne,hXe=Zn,_Xe=qo,mXe=Di,xXe=TypeError;gXe({target:"Set",proto:!0,real:!0,forced:!0},{reduce:function(t){var r=_Xe(this),n=arguments.length<2,o=n?void 0:arguments[1];if(hXe(t),mXe(r,function(a){n?(n=!1,o=a):o=t(o,a,a,r)}),n)throw new xXe("Reduce of empty set with no initial value");return o}});var bXe=Ne,yXe=Un,wXe=qo,DXe=Di;bXe({target:"Set",proto:!0,real:!0,forced:!0},{some:function(t){var r=wXe(this),n=yXe(t,arguments.length>1?arguments[1]:void 0);return DXe(r,function(o){if(n(o,o,r))return!0},!0)===!0}});var IXe=Ne,FXe=Lr,$Xe=gd,EXe=TH;IXe({target:"Set",proto:!0,real:!0,forced:!0},{symmetricDifference:function(t){return FXe(EXe,this,$Xe(t))}});var SXe=Ne,CXe=Lr,TXe=gd,RXe=RH;SXe({target:"Set",proto:!0,real:!0,forced:!0},{union:function(t){return CXe(RXe,this,TXe(t))}});var OXe=JYe,AXe=OXe;(function(e){e.exports=AXe})(bqe),function(e){e.exports=Y3}(xqe);const Ul=Vt(A1);var kXe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o-1:re.checked,onChange:Y(re.value),style:re.style,id:re.id,tabFocus:g,size:re.size||D},re.label)}):$t(r=E.Children).call(r,h,function(re){return re?E.cloneElement(re,{checked:Qy(re.props.checked)?j.indexOf(re.props.value)>-1:re.props.checked,onChange:Y(re.props.value),disabled:l||re.props.disabled,tabFocus:g,size:re.props.size||D}):null}),ne=_e("".concat(Q,"-group"),b,"check-group-".concat(c),{"check-group-disable":l,"no-default-padding":!C});return E.createElement("div",Ee({className:ne,style:w,id:x,onKeyDown:Z},U),f&&V(),J)};const NXe=PXe;var J3=q3;J3.displayName="Check",J3.Group=NXe;const hd=J3;var eC={},MXe={get exports(){return eC},set exports(e){eC=e}},tC={},zXe={get exports(){return tC},set exports(e){tC=e}},LXe=Uu,BXe=di,jXe=ws,UXe=RangeError,HXe=function(t){var r=BXe(jXe(this)),n="",o=LXe(t);if(o<0||o===1/0)throw new UXe("Wrong number of repetitions");for(;o>0;(o>>>=1)&&(r+=r))o&1&&(n+=r);return n},zH=Ir,WXe=SM,LH=di,VXe=HXe,KXe=ws,qXe=zH(VXe),YXe=zH("".slice),GXe=Math.ceil,BH=function(e){return function(t,r,n){var o=LH(KXe(t)),a=WXe(r),i=o.length,l=n===void 0?" ":LH(n),s,c;return a<=i||l===""?o:(s=a-i,c=qXe(l,GXe(s/l.length)),c.length>s&&(c=YXe(c,0,s)),e?o+c:c+o)}},XXe={start:BH(!1),end:BH(!0)},eu=Ir,jH=_r,_d=XXe.start,ZXe=RangeError,QXe=isFinite,JXe=Math.abs,Ns=Date.prototype,rC=Ns.toISOString,eZe=eu(Ns.getTime),tZe=eu(Ns.getUTCDate),rZe=eu(Ns.getUTCFullYear),nZe=eu(Ns.getUTCHours),oZe=eu(Ns.getUTCMilliseconds),aZe=eu(Ns.getUTCMinutes),iZe=eu(Ns.getUTCMonth),lZe=eu(Ns.getUTCSeconds),sZe=jH(function(){return rC.call(new Date(-5e13-1))!=="0385-07-25T07:06:39.999Z"})||!jH(function(){rC.call(new Date(NaN))})?function(){if(!QXe(eZe(this)))throw new ZXe("Invalid time value");var t=this,r=rZe(t),n=oZe(t),o=r<0?"-":r>9999?"+":"";return o+_d(JXe(r),o?6:4,0)+"-"+_d(iZe(t)+1,2,0)+"-"+_d(tZe(t),2,0)+"T"+_d(nZe(t),2,0)+":"+_d(aZe(t),2,0)+":"+_d(lZe(t),2,0)+"."+_d(n,3,0)+"Z"}:rC,cZe=Ne,UH=Lr,uZe=Uo,dZe=sM,fZe=sZe,pZe=Ol,vZe=_r,gZe=vZe(function(){return new Date(NaN).toJSON()!==null||UH(Date.prototype.toJSON,{toISOString:function(){return 1}})!==1});cZe({target:"Date",proto:!0,forced:gZe},{toJSON:function(t){var r=uZe(this),n=dZe(r,"number");return typeof n=="number"&&!isFinite(n)?null:!("toISOString"in r)&&pZe(r)==="Date"?UH(fZe,r):r.toISOString()}});var nC=hn,hZe=Vf;nC.JSON||(nC.JSON={stringify:JSON.stringify});var _Ze=function(t,r,n){return hZe(nC.JSON.stringify,null,arguments)},mZe=_Ze,xZe=mZe,bZe=xZe,yZe=bZe,wZe=yZe,DZe=wZe;(function(e){e.exports=DZe})(zXe),function(e){e.exports=tC}(MXe);const HH=Vt(eC);var WH=E.useRef,IZe=E.useState,FZe=E.forwardRef,$Ze=E.useImperativeHandle,EZe=E.useEffect,SZe=function(t,r){var n=t.className,o=t.id,a=t.style,i=t.readonly,l=i===void 0?!1:i,s=t.value,c=t.onChange,d=t.placeholder,f=t.onBlur,v=t.autoFocus,g=v===void 0?!1:v,h=t.allowClear,_=h===void 0?!1:h,b=t.showSearchIcon,x=b===void 0?!0:b,w=t.prefix,D=t.suffix,I=t.onClearBtnClick,$=t.onFocus,F=t.onKeyUp,C=t.onKeyDown,R=t.debounceTime,k=R===void 0?500:R,P=t.prefixCls,U=t.onSearchStart,B=IZe(!1),z=be(B,2),A=z[0],M=z[1],N=WH(null),T=WH({debounceTimer:Number}),O=qt("search-input",P);$Ze(r,function(){return{focus:function(){N.current&&N.current.focus()},blur:function(){N.current&&N.current.blur()}}}),EZe(function(){var H=K();H!==A&&M(H)},[s]);var j=function(){return N.current?N.current.value:""},K=function(){return _&&!l&&!Hn(j())},Q=function(V){var Z=V.target.value;if(M(K()),c&&c(Z,V),U){var te=T.current.searchTimer;te&&clearTimeout(te),T.current.searchTimer=setTimeout(function(){U(Z)},k)}},Y=function(V){Ho(t,"value")||N.current&&(N.current.value="",M(!1)),I&&I(V)},X=function(V){f&&f(V.target.value,V)},G=_e(O,n,{readonly:l,"has-clear":A});return E.createElement("div",{className:G,style:a,id:o},w&&E.createElement("div",{className:"search-prefix"},w),E.createElement("div",{className:"input-wrapper"},E.createElement("div",{className:_e("input-content",{"show-search-icon":x})},x&&E.createElement("div",{className:"input-prefix"},E.createElement(ZU,null)),E.createElement("input",{ref:N,type:"text",readOnly:l,value:s,onChange:Q,onBlur:X,onFocus:$,onKeyUp:F,onKeyDown:C,placeholder:d,autoFocus:g}),A&&E.createElement("div",{className:"input-suffix",onClick:Y},E.createElement(Sh,null)))),D&&E.createElement("div",{className:"search-suffix"},D))};const CZe=FZe(SZe);var TZe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o(window.innerHeight||document.documentElement.clientHeight)&&window.innerWidth>document.body.offsetWidth}var PZe="x-util-locker-".concat(Date.now()),KH=0;function NZe(e){var t=!!e,r=m.useState(function(){var a;return KH+=1,mt(a="".concat(PZe,"_")).call(a,KH)}),n=be(r,1),o=n[0];As(function(){if(t){var a=xUe(document.body).width,i=kZe();H9(` html body { overflow-y: hidden; - `.concat(i?"width: calc(100% - ".concat(o,"px);"):"",` -}`),a)}else qj(a);return function(){qj(a)}},[t,a])}var eH=function(t){return t===!1?!1:t?typeof t=="string"?document.querySelector(t):typeof t=="function"?t():t:null},IXe=m.forwardRef(function(e,t){var r=e.open,n=e.autoLock,a=e.getContainer,o=e.autoDestroy,i=o===void 0?!0:o,l=e.children,s=m.useState(r),c=me(s,2),d=c[0],f=c[1],v=d||r;m.useEffect(function(){(i||r)&&f(r)},[r,i]);var h=m.useState(function(){return eH(a)}),g=me(h,2),_=g[0],w=g[1];m.useEffect(function(){var P=eH(a);w(P??null)});var b=bXe(!!v&&!_),y=me(b,1),D=y[0],F=_??D;DXe(n&&r&&(F===D||F===document.body));var S=null;l&&ig(l)&&t&&(S=l.ref);var I=m9(S,t);if(!v||_===void 0)return null;var C=F===!1,R=l;return t&&(R=m.cloneElement(l,{ref:I})),m.createElement(m.Fragment,null,C?R:Kr.createPortal(R,F))});const FXe=IXe;var n1={},I3={},$Xe={get exports(){return I3},set exports(e){I3=e}};(function(e){function t(r,n){if(!(r instanceof n))throw new TypeError("Cannot call a class as a function")}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports})($Xe);var F3={},SXe={get exports(){return F3},set exports(e){F3=e}};(function(e){function t(n,a){for(var o=0;o=0)&&(a[i]=r[i]);return a}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports})(PXe),function(e){var t=O3;function r(n,a){if(n==null)return{};var o=t(n,a),i,l;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(n);for(l=0;l=0)&&Object.prototype.propertyIsEnumerable.call(n,i)&&(o[i]=n[i])}return o}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports}(kXe);var A3={},NXe={get exports(){return A3},set exports(e){A3=e}};(function(e){function t(){return e.exports=t=Object.assign?Object.assign.bind():function(r){for(var n=1;n1&&arguments[1]!==void 0?arguments[1]:this.props,o=a.target;if(o){var i=o;typeof o=="string"&&(i=window[o]),ZXe(a,n.bind(null,i))}}},{key:"render",value:function(){return this.props.children||null}}]),t}(qXe.PureComponent);oH.propTypes={},n1.withOptions=QXe;var k3=n1.default=oH;function JXe(e){var t=eZe();return function(){var n=Pr(e),a;if(t){var o=Pr(this).constructor;a=Pt(n,arguments,o)}else a=n.apply(this,arguments);return go(this,a)}}function eZe(){if(typeof Reflect>"u"||!Pt||Pt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Pt(Boolean,[],function(){})),!0}catch{return!1}}function tZe(e){var t=function(r){ho(a,r);var n=JXe(a);function a(o){var i;return Cr(this,a),i=n.call(this,o),i.handleMouseDown=function(l){var s=i.instanceRef.current,c=Kr.findDOMNode(s),d=i.clickStartEl;c&&d&&!c.contains(d)&&i.props.onClickOutside(l)},i.instanceRef=o.forwaredRef||m.createRef(),i}return Tr(a,[{key:"render",value:function(){var i=this;return m.createElement(m.Fragment,null,m.createElement(k3,{target:document.body,onMouseDown:function(s){i.clickStartEl=s.target,i.handleMouseDown(s)}}),m.createElement(e,we({},this.props,{ref:this.instanceRef})))}}]),a}(m.Component);return t.displayName="withClickOutside(".concat(e.displayName||e.name||"Component",")"),m.forwardRef(function(r,n){return m.createElement(t,we({},r,{forwaredRef:n}))})}function iH(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function lH(e){for(var t=1;t=0&&r.left>=0&&r.bottom>r.top&&r.right>r.left?r:null}function IZe(e,t,r,n){var a=Xt.clone(e),o={width:t.width,height:t.height};return n.adjustX&&a.left=r.left&&a.left+o.width>r.right&&(o.width-=a.left+o.width-r.right),n.adjustX&&a.left+o.width>r.right&&(a.left=Math.max(r.right-o.width,r.left)),n.adjustY&&a.top=r.top&&a.top+o.height>r.bottom&&(o.height-=a.top+o.height-r.bottom),n.adjustY&&a.top+o.height>r.bottom&&(a.top=Math.max(r.bottom-o.height,r.top)),Xt.mix(a,o)}function K3(e){var t,r,n;if(!Xt.isWindow(e)&&e.nodeType!==9)t=Xt.offset(e),r=Xt.outerWidth(e),n=Xt.outerHeight(e);else{var a=Xt.getWindow(e);t={left:Xt.getWindowScrollLeft(a),top:Xt.getWindowScrollTop(a)},r=Xt.viewportWidth(a),n=Xt.viewportHeight(a)}return t.width=r,t.height=n,t}function wH(e,t){var r=t.charAt(0),n=t.charAt(1),a=e.width,o=e.height,i=e.left,l=e.top;return r==="c"?l+=o/2:r==="b"&&(l+=o),n==="c"?i+=a/2:n==="r"&&(i+=a),{left:i,top:l}}function s1(e,t,r,n,a){var o=wH(t,r[1]),i=wH(e,r[0]),l=[i.left-o.left,i.top-o.top];return{left:Math.round(e.left-l[0]+n[0]-a[0]),top:Math.round(e.top-l[1]+n[1]-a[1])}}function DH(e,t,r){return e.leftr.right}function IH(e,t,r){return e.topr.bottom}function FZe(e,t,r){return e.left>r.right||e.left+t.widthr.bottom||e.top+t.height=r.right||n.top>=r.bottom}function Op(e,t,r){var n=r.target||t,a=K3(n),o=!SZe(n,r.overflow&&r.overflow.alwaysByViewport);return SH(e,a,r,o)}Op.__getOffsetParent=W3,Op.__getVisibleRectForElement=V3;function EZe(e,t,r){var n,a,o=Xt.getDocument(e),i=o.defaultView||o.parentWindow,l=Xt.getWindowScrollLeft(i),s=Xt.getWindowScrollTop(i),c=Xt.viewportWidth(i),d=Xt.viewportHeight(i);"pageX"in t?n=t.pageX:n=l+t.clientX,"pageY"in t?a=t.pageY:a=s+t.clientY;var f={left:n,top:a,width:0,height:0},v=n>=0&&n<=l+c&&a>=0&&a<=s+d,h=[r.points[0],"cc"];return SH(e,f,lH(lH({},r),{},{points:h}),v)}const CZe=Object.freeze(Object.defineProperty({__proto__:null,alignElement:Op,alignPoint:EZe,default:Op},Symbol.toStringTag,{value:"Module"}));function TZe(e){var t=RZe();return function(){var n=Pr(e),a;if(t){var o=Pr(this).constructor;a=Pt(n,arguments,o)}else a=n.apply(this,arguments);return go(this,a)}}function RZe(){if(typeof Reflect>"u"||!Pt||Pt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Pt(Boolean,[],function(){})),!0}catch{return!1}}var EH=function(t,r){var n={t:"b",b:"t",l:"r",r:"l"};return En(t,function(a){return PE(a,new RegExp(r,"gi"),function(o){return n[o]})})},d1=function(t,r){return Ct(t).call(t,function(n,a){return a===r?-n:n})},OZe=function(e){ho(r,e);var t=TZe(r);function r(n){var a;return Cr(this,r),a=t.call(this,n),a.align=function(){a.waitSourceElShow().then(function(){var o,i=a.props,l=i.align,s=i.builtinPlacements,c=i.target,d=i.onAfterAdjustDirection,f=i.useCssTransform,v=a.el.current,h=c();if(!(!v||!h)){var g=Wu.getPlacementFromAlign(l,s),_=Op(v,h,wn({},l,{useCssTransform:f}));if(!((o=l.overflow)===null||o===void 0)&&o.alwaysByViewport){var w=v.getBoundingClientRect(),b=!1;(w.bottom>window.innerHeight||w.top<0)&&(_.points=EH(_.points,"[tb]"),_.offset=d1(_.offset,1),_.targetOffset=d1(_.targetOffset,1),b=!0),(w.right>window.innerWidth||w.left<0)&&(_.points=EH(_.points,"[lr]"),_.offset=d1(_.offset,0),_.targetOffset=d1(_.targetOffset,0),b=!0),b&&Op(v,h,wn({},_,{useCssTransform:f}))}var y=Wu.getPlacementFromAlign(_,s);y!==g&&d&&d(y,{points:_.points,offset:_.offset,targetOffset:_.targetOffset,overflow:l.overflow})}})},a.waitSourceElShow=function(){var o=a.el.current;return new da(function(i){var l=function s(){var c=o&&(o.clientWidth>0||o.clientHeight>0);c?i(!0):requestAnimationFrame(s)};l()})},a.el=m.createRef(),a}return Tr(r,[{key:"componentDidMount",value:function(){this.align()}},{key:"render",value:function(){return m.cloneElement(m.Children.only(this.props.children),{ref:this.el})}}]),r}(m.Component);const AZe=OZe;function kZe(e){var t=PZe();return function(){var n=Pr(e),a;if(t){var o=Pr(this).constructor;a=Pt(n,arguments,o)}else a=n.apply(this,arguments);return go(this,a)}}function PZe(){if(typeof Reflect>"u"||!Pt||Pt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Pt(Boolean,[],function(){})),!0}catch{return!1}}var CH=function(e){ho(r,e);var t=kZe(r);function r(n){var a;return Cr(this,r),a=t.call(this,n),a.getTarget=function(){return a.props.getRootDomNode()},a.align=function(){a.alignCount+=1;var o=a.alignCount;da.resolve().then(function(){o===a.alignCount&&a.alignRef.current&&a.alignRef.current.align()})},a.getMiscStyle=function(){var o={position:"absolute"},i=a.props,l=i.stretch,s=i.targetWidth,c=i.targetHeight;return l&&(ya(l).call(l,"height")&&c?o.height=c:ya(l).call(l,"minHeight")&&c&&(o.minHeight=c),ya(l).call(l,"width")&&s?o.width=s:ya(l).call(l,"minWidth")&&s&&(o.minWidth=s)),o},a.alignRef=m.createRef(),a.alignCount=0,a}return Tr(r,[{key:"render",value:function(){var a=this,o=this.props,i=o.className,l=o.style,s=o.align,c=o.builtinPlacements,d=o.visible,f=o.prefixCls,v=o.transitionName,h=o.transitionTime,g=o.children,_=o.autoDestroy,w=_===void 0?!0:_,b=o.zIndex,y=o.onMouseEnter,D=o.onMouseLeave,F=o.onShow,S=o.onHide,I=o.onAfterShow,C=o.onAfterHide,R=o.onAfterAdjustDirection,P=o.useCssTransform,O=this.context.getPrefixCls("popup"),N=pe(O,i,f,"".concat(f,"-content")),A=m.Children.only(g);return m.createElement(vi,{onResize:function(){a.alignRef.current&&a.alignRef.current.align()}},m.createElement(AZe,{target:this.getTarget,key:"popup",align:s,builtinPlacements:c,onAfterAdjustDirection:R,useCssTransform:P,ref:this.alignRef},m.createElement("div",{className:N,onMouseEnter:y,onMouseLeave:D,style:wn(this.getMiscStyle(),{zIndex:b},l),onClick:function(k){return k.stopPropagation()}},m.createElement($s,{classNames:v,timeout:h,appear:!0,enter:!0,exit:!0,in:d,unmountOnExit:w,onEnter:F,onExit:S,onEntered:I,onExited:C},A))))}}]),r}(m.Component);CH.contextType=fi;const NZe=tZe(CH);var MZe=m.forwardRef(function(e,t){var r=e.children,n=e.getTriggerDOMNode,a=ig(r),o=m.useCallback(function(l){_9(t,n?n(l):l)},[n]),i=m9(o,r.ref);return a?m.cloneElement(r,{ref:i}):r});const LZe=MZe;function zZe(e){var t=BZe();return function(){var n=Pr(e),a;if(t){var o=Pr(this).constructor;a=Pt(n,arguments,o)}else a=n.apply(this,arguments);return go(this,a)}}function BZe(){if(typeof Reflect>"u"||!Pt||Pt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Pt(Boolean,[],function(){})),!0}catch{return!1}}var q3=function(e){ho(r,e);var t=zZe(r);function r(n){var a;return Cr(this,r),a=t.call(this,n),a.setTargetRef=function(o){Qa.isDomElement(o)&&a.targetEle!==o&&(a.targetEle=o)},a.handleAfterAdjustDirection=function(o,i){a.setState({placement:o,prevAlign:i})},a.getRootDomNode=function(){try{var o=Kr.findDOMNode(a.el.current);if(o)return o}catch{}try{return Kr.findDOMNode(aS(a))}catch{}},a.getPopupEdgeStyle=function(){var o=a.props.popupEdge;if(!(!zr(o)||o<=0)){var i={top:["paddingTop"],"top-left":["paddingTop","paddingRight"],"top-right":["paddingTop","paddingLeft"],right:["paddingRight"],"right-top":["paddingRight","paddingBottom"],"right-bottom":["paddingRight","paddingTop"],left:["paddingLeft"],"left-top":["paddingLeft","paddingBottom"],"left-bottom":["paddingLeft","paddingTop"],bottom:["paddingBottom"],"bottom-left":["paddingBottom","paddingRight"],"bottom-right":["paddingBottom","paddingLeft"]},l=a.state.placement,s=i[l];if(s){var c={};return gr(s,function(d){c[d]=o}),c}}},a.align=function(){Qa.isDomElement(a.targetEle)&&!Qa.isVisible(a.targetEle)||a.alignRef.current&&a.alignRef.current.align()},a.handleAfterHide=function(){a.setState({forceKeepDom:!1,prevAlign:void 0,placement:a.defaultPlacement},function(){var o=a.props.onAfterPopupHide;o&&o()})},a.getComponent=function(o){var i=a.props,l=i.prefixCls,s=i.popup,c=i.popupAlign,d=i.builtinPlacements,f=i.transitionTime,v=i.stretch,h=i.autoDestroy,g=i.onPopupShow,_=i.onPopupHide,w=i.disabled,b=i.useCssTransform,y=i.overlayClassName,D=i.overlayStyle,F=i.zIndex,S=a.state,I=S.prevAlign,C=S.placement,R=S.targetWidth,P=S.targetHeight,O=a.context.getPrefixCls("popup"),N=kt(a.props,"popupVisible",a.state.popupVisible),A={};w||(a.isMouseEnterToShow()&&(A.onMouseEnter=a.onPopupMouseEnter),a.isMouseLeaveToHide()&&(A.onMouseLeave=a.onPopupMouseLeave));var z=s;br(s)&&(z=s()),z=m.Children.only(z);var k="placement-".concat(C),M=ut(I)?c:I;return m.createElement(NZe,we({ref:a.alignRef,style:wn(a.getPopupEdgeStyle(),D),className:pe(y,k,Ee({},"".concat(O,"-hidden"),!o)),zIndex:F,prefixCls:l,visible:N,align:M,autoDestroy:h,builtinPlacements:d,stretch:v,targetWidth:R,targetHeight:P,transitionName:Wu.getPlacementTransitionName(l,C),transitionTime:f},A,{getRootDomNode:a.getRootDomNode,onClickOutside:a.handleClickOutside,onAfterHide:a.handleAfterHide,onAfterShow:a.props.onAfterPopupShow,onShow:g,onHide:_,onAfterAdjustDirection:a.handleAfterAdjustDirection,useCssTransform:b}),z)},a.getContainer=function(){var o=a.props.getPopupContainer;return o&&function(){return o(a.getRootDomNode())}},a.handleClickOutside=function(o){var i=a.props,l=i.autoClose,s=i.shouldTriggerEvent,c=s===void 0?function(){return!1}:s,d=a.context.getPrefixCls("popup"),f=l;if(a.isClickToHide()){var v=a.getRootDomNode();v&&v.contains(o.target)&&!c(o.target)&&(f=!1);var h=Qa.closest(o.target,".".concat(d));h&&(h.contains(v)||(f=!1))}f&&a.setPopupVisible(!1,!0)},a.hasPopupVisibleProp=function(){return"popupVisible"in a.props},a.onChildEventHandler=function(o,i){var l=m.Children.only(a.props.children);if(m.isValidElement(l)){var s=kt(l.props,o);br(s)&&s(i)}},a.onPropsEventHandler=function(o,i){var l=kt(a.props,o);br(l)&&l(i)},a.onTargetResize=function(o){a.props.stretch&&a.setState({targetWidth:o.width,targetHeight:o.height}),a.align()},a.onMouseEnter=function(o){a.isMouseEnterToShow()&&a.delaySetPopupVisible(!0,a.props.mouseEnterDelay),a.onChildEventHandler("onMouseEnter",o),a.onPropsEventHandler("onMouseEnter",o)},a.onMouseLeave=function(o){a.isMouseLeaveToHide()&&a.delaySetPopupVisible(!1,a.props.mouseLeaveDelay),a.onChildEventHandler("onMouseLeave",o),a.onPropsEventHandler("onMouseLeave",o)},a.onFocus=function(o){a.isFocusToShow()&&a.delaySetPopupVisible(!0,a.props.focusDelay),a.onChildEventHandler("onFocus",o),a.onPropsEventHandler("onFocus",o)},a.onBlur=function(o){a.isBlurToHide()&&a.delaySetPopupVisible(!1,a.props.blurDelay),a.onChildEventHandler("onBlur",o),a.onPropsEventHandler("onBlur",o)},a.onPopupMouseEnter=function(){a.clearDelayTimer()},a.onPopupMouseLeave=function(){a.delaySetPopupVisible(!1,a.props.mouseLeaveDelay)},a.onClick=function(o){if(a.isClickToHide()||a.isClickToShow()){o&&o.preventDefault&&o.preventDefault();var i=a.hasPopupVisibleProp()?!a.props.popupVisible:!a.state.popupVisible;(a.isClickToHide()&&!i||i&&a.isClickToShow())&&a.setPopupVisible(i)}a.onChildEventHandler("onClick",o),a.onPropsEventHandler("onClick",o)},a.el=m.createRef(),a.alignRef=m.createRef(),a.targetEle=null,a.defaultPlacement=Wu.getPlacementFromAlign(n.popupAlign,n.builtinPlacements),a.state={targetWidth:0,targetHeight:0,placement:a.defaultPlacement,popupVisible:!1,forceKeepDom:!1},a}return Tr(r,[{key:"close",value:function(){this.setPopupVisible(!1)}},{key:"delaySetPopupVisible",value:function(a){var o=this,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,l=i*1e3;this.clearDelayTimer(),l?this.delayTimer=window.setTimeout(function(){o.setPopupVisible(a),o.clearDelayTimer()},l):this.setPopupVisible(a)}},{key:"clearDelayTimer",value:function(){this.delayTimer&&(clearTimeout(this.delayTimer),this.delayTimer=0)}},{key:"setPopupVisible",value:function(a,o){this.clearDelayTimer();var i=this.props.onPopupVisibleChange,l=i===void 0?Bc:i;this.hasPopupVisibleProp()?a!==this.props.popupVisible&&l(a,o):this.setState({popupVisible:a},function(){l(a,o)})}},{key:"isClickToShow",value:function(){var a=this.props,o=a.action,i=a.showAction;return o.indexOf("click")!==-1||i&&i.indexOf("click")!==-1}},{key:"isClickToHide",value:function(){var a=this.props,o=a.action,i=a.hideAction;return o.indexOf("click")!==-1||i&&i.indexOf("click")!==-1}},{key:"isFocusToShow",value:function(){var a=this.props,o=a.action,i=a.showAction;return o.indexOf("focus")!==-1||i&&i.indexOf("focus")!==-1}},{key:"isBlurToHide",value:function(){var a=this.props,o=a.action,i=a.hideAction;return o.indexOf("focus")!==-1||i&&i.indexOf("focus")!==-1}},{key:"isMouseEnterToShow",value:function(){var a=this.props,o=a.action,i=a.showAction;return o.indexOf("hover")!==-1||i&&i.indexOf("mouseEnter")!==-1}},{key:"isMouseLeaveToHide",value:function(){var a=this.props,o=a.action,i=a.hideAction;return o.indexOf("hover")!==-1||i&&i.indexOf("mouseLeave")!==-1}},{key:"needMountPopup",value:function(){var a=this.state.popupVisible;return"popupVisible"in this.props&&(a=this.props.popupVisible),a||this.state.forceKeepDom}},{key:"render",value:function(){var a=this.props,o=a.children,i=a.disabled,l=a.autoDestroy,s=a.getTriggerDOMNode,c=m.Children.only(o),d={key:"trigger"};ig(c)&&(d.ref=Ku(this.el,c.ref)),i||(d.onClick=this.onClick,d.onMouseEnter=this.onMouseEnter,d.onMouseLeave=this.onMouseLeave,d.onFocus=this.onFocus,d.onBlur=this.onBlur);var f=this.needMountPopup(),v=m.cloneElement(c,d);return m.createElement(m.Fragment,null,m.createElement(vi,{disabled:!f,onResize:this.onTargetResize,ref:this.setTargetRef},m.createElement(LZe,{getTriggerDOMNode:s},v)),m.createElement(FXe,{open:f,getContainer:this.getContainer(),autoDestroy:l},this.getComponent(f)))}}],[{key:"getDerivedStateFromProps",value:function(a,o){return a.popupVisible||o.popupVisible?{forceKeepDom:!0}:null}}]),r}(m.Component);q3.defaultProps={popupAlign:{},popupEdge:0,showAction:[],hideAction:[],mouseEnterDelay:.1,mouseLeaveDelay:.1,autoClose:!0,disabled:!1,autoDestroy:!0,transitionTime:{enter:za.NORMAL,exit:za.FAST},useCssTransform:!1,shouldTriggerEvent:function(){return!1}},q3.contextType=fi;const yg=q3;var wa={VIEWMODE:{YM:0,YMD:1,YMDHM:2,YMDHMS:3,HMS:4,HM:5},DATEMODE:{DAY:"day",MONTH:"month",YEAR:"year"},NAV:{prevm:2,nextm:3,clear:4,today:5,dok:6,prevy:7,nexty:8,plus:9,minus:10,day:11,month:12,year:13,yearmode:14,monthmode:15,prevyear:16,nextyear:17,yearok:18}},jZe=function(t){var r=["shortMon","shortTue","shortWed","shortThu","shortFri","shortSat","shortSun"];return r[t]},Y3=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=["january","february","march","april","may","june","july","august","september","october","november","december"],a=["january_m","february_m","march_m","april_m","may_m","june_m","july_m","august_m","september_m","october_m","november_m","december_m"];return r?a[t]:n[t]},TH=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,a=[];if(r>=t||n<=0)return a;for(var o=r;o<=t;o+=n)a.push(o);return a},cd=function(t){return[t.getFullYear(),t.getMonth(),t.getDate()]},wg=function(t,r){var n=new Date(t.getTime()),a=Ap(r,n.getMonth(),n.getDate());return n.setDate(a),n.setFullYear(r),n},RH=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=new Date(t.getTime()),a=cd(n),o=me(a,3),i=o[0],l=o[1],s=o[2];if(l>=11){n=wg(t,t.getFullYear()+1);var c=0,d=r?1:Ap(n.getFullYear(),c,s);n.setDate(d),n.setMonth(c)}else{var f=l+1,v=r?1:Ap(i,f,s);n.setDate(v),n.setMonth(f)}return n},OH=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=new Date(t.getTime()),a=cd(n),o=me(a,3),i=o[0],l=o[1],s=o[2];if(l<=0){n=wg(t,t.getFullYear()-1);var c=11,d=r?1:Ap(n.getFullYear(),c,s);n.setDate(d),n.setMonth(c)}else{var f=l-1,v=r?1:Ap(i,f,s);n.setDate(v),n.setMonth(f)}return n},UZe=function(t,r){var n=new Date(t.getTime());if(r<0||r>11)return n;var a=cd(t),o=me(a,3),i=o[0],l=o[2],s=Ap(i,r,l);return n.setDate(s),n.setMonth(r),n},Ap=function(t,r,n){var a=e6(t,r);return Math.min(n,a)},HZe=function(t){var r=[6,0,1,2,3,4,5];return new Date(t.setDate(t.getDate()-r[t.getDay()]))},f1=function(t,r){return!t&&!r||t&&r&&t.getTime()===r.getTime()},AH=function(t,r){var n=cd(t),a=me(n,3),o=a[0],i=a[1],l=a[2],s=cd(r),c=me(s,3),d=c[0],f=c[1],v=c[2];return o===d&&i===f&&l===v},WZe=function(t){var r=new Date(t.getTime());return r.setDate(1),r},VZe=function(t){var r=new Date(t.getTime());return r.setHours(0),r.setMinutes(0),r.setSeconds(0),r.setMilliseconds(0),r},KZe=function(t){var r=new Date(t.getTime());return r.setHours(23),r.setMinutes(59),r.setSeconds(59),r.setMilliseconds(59),r},qZe=function(t){var r=new Date(t.getTime());return r.setMonth(0),r.setDate(1),r.setHours(0),r.setMinutes(0),r.setSeconds(0),r.setMilliseconds(0),r},YZe=function(t){var r=new Date(t.getTime());return r.setMonth(12),r.setDate(0),r.setHours(23),r.setMinutes(59),r.setSeconds(59),r.setMilliseconds(59),r},GZe=function(t){var r=XZe(t),n=r.year-r.year%10;return[n,n+9]},XZe=function(t){return{year:t.getFullYear(),month:t.getMonth(),day:t.getDate(),hour:t.getHours(),minute:t.getMinutes(),second:t.getSeconds()}};function ZZe(e){var t=QZe();return function(){var n=Pr(e),a;if(t){var o=Pr(this).constructor;a=Pt(n,arguments,o)}else a=n.apply(this,arguments);return go(this,a)}}function QZe(){if(typeof Reflect>"u"||!Pt||Pt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Pt(Boolean,[],function(){})),!0}catch{return!1}}var Cn=wa.VIEWMODE,p1=wa.DATEMODE,Mn=wa.NAV,v1=wp.MAXYEAR,h1=wp.MINYEAR,G3=function(t,r,n){if(t){var a=t.scrollTop;if(!n){t.scrollTop=r;return}var o=(r-a)/10,i=function l(){if(a=a+o,Math.abs(a-r)<=1){t.scrollTop=r;return}t.scrollTop=a,window.requestAnimationFrame(l)};i()}},X3=function(e){ho(r,e);var t=ZZe(r);function r(n){var a;return Cr(this,r),a=t.call(this,n),a.getPickerDate=function(){return new Date(a.state.date.getTime())},a.getDefaultDateMode=function(o){var i=[];switch(o){case Cn.YM:i.push(p1.MONTH);break;case Cn.YMD:case Cn.YMDHM:case Cn.YMDHMS:i.push(p1.DAY);break}return i},a.popDateMode=function(){var o=a.state.dateMode;return!o||o.length<=1?a.getDefaultDateMode(a.props.viewMode):(o.pop(),o)},a.pushDateMode=function(o){var i=a.state.dateMode;return i.push(o),i},a.getCurrentDateMode=function(){var o=a.state.dateMode;return!o||!o?"":o[o.length-1]},a.shouldHide=function(){var o=a.state.dateMode;return!!((!o||o.length<=1)&&fn([Cn.YM,Cn.YMD],a.props.viewMode))},a.shouldFocusHour=function(){return fn([Cn.YMDHM,Cn.YMDHMS],a.props.viewMode)&&ba(a.state.dateMode)<=1},a.isDisabledDate=function(o){var i=a.props.disabledDate;return!!i?.(o,{type:"date"})},a.isDateInRange=function(o){var i=a.props,l=i.startDate,s=i.endDate,c=l?VZe(l):new Date(h1,0,1,0,0,0),d=s?KZe(s):new Date(v1,11,31,23,59,59);return o>=c&&o<=d},a.isValidDate=function(o){return a.isDateInRange(o)&&!a.isDisabledDate(o)},a.isValidMonth=function(o){var i=a.props,l=i.startDate,s=i.endDate,c=new Date(a.state.date),d=l||new Date(h1,0),f=s||new Date(v1,11),v=new Date(d.getFullYear(),d.getMonth()),h=new Date(f.getFullYear(),f.getMonth()),g=new Date(c.getFullYear(),o);return v<=g&&g<=h},a.isValidOneMonth=function(o){var i=new Date(o.getTime());i.setDate(1);var l=new Date(o.getTime()),s=cd(l),c=me(s,2),d=c[0],f=c[1];return l.setDate(e6(d,f)),a.isDateInRange(i)||a.isDateInRange(l)},a.isValidYear=function(o){var i=a.props,l=i.startDate,s=i.endDate,c=l?l.getFullYear():h1,d=s?s.getFullYear():v1;return!(c&&od)},a.getCloseInLimit=function(o){var i=a.props,l=i.startDate,s=i.endDate,c=new Date(o.getTime()),d=l||new Date(h1,0,1,0,0,0),f=s||new Date(v1,11,31,23,59,59);if(!(d>f)){{if(d&&of)return f}return c}},a.handleClick=function(o,i,l,s,c,d){return function(){var f=p1;if(!l)switch(o){case Mn.prevm:{a.toPrevMonth();break}case Mn.nextm:{a.toNextMonth();break}case Mn.today:{a.updateDate(Kn.getNow(a.context.timezone).toDate(),void 0,!0);break}case Mn.dok:{a.updateDate(a.state.date,void 0,!0);break}case Mn.prevy:{var v=new Date(a.state.date).getFullYear()-10,h=a.toYear(v);a.updateDate(h);break}case Mn.nexty:{var g=new Date(a.state.date).getFullYear()+10,_=a.toYear(g);a.updateDate(_);break}case Mn.year:{var w=new Date(a.state.date);zr(i)&&(w=a.toYear(i)),a.updateDate(w,c||d?{yearIndex:s}:{yearIndex:s,dateMode:a.popDateMode()},!1,a.shouldFocusHour());break}case Mn.month:{var b=new Date(a.state.date);zr(i)&&(b=UZe(a.state.date,i));var y=a.shouldHide();a.updateDate(b,{dateMode:a.popDateMode()},y,a.shouldFocusHour());break}case Mn.day:{Q7(i)&&a.updateDate(i,void 0,a.shouldHide(),a.shouldFocusHour());break}case Mn.monthmode:{a.setState({dateMode:a.pushDateMode(f.MONTH)});break}case Mn.yearmode:{a.setState({dateMode:a.pushDateMode(f.YEAR)});break}case Mn.nextyear:a.toNextYear();break;case Mn.prevyear:a.toPrevYear();break;case Mn.yearok:{a.setState({dateMode:a.pushDateMode(f.YEAR)});break}}}},a.scrollTimePosition=function(){var o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;if(a.isTimeMode()&&a.scrollRefs.length){var i=28,l=new Date(a.state.date),s=me(a.scrollRefs,3),c=s[0],d=s[1],f=s[2],v=l.getHours(),h=l.getMinutes(),g=l.getSeconds();G3(c.current,v*i,o),G3(d.current,h*i,o),G3(f.current,g*i,o)}},a.handleTimeChange=function(o,i){var l=new Date(a.state.date);switch(o){case"h":i<24&&i>=0&&l.setHours(i);break;case"m":i<60&&i>=0&&l.setMinutes(i);break;case"s":i<60&&i>=0&&l.setSeconds(i);break;default:return}a.updateDate(l)},a.toNextMonth=function(){var o=RH(a.state.date,a.props.mode==="empty");a.updateDate(o)},a.toNextYear=function(){var o=a.state.date.getFullYear()+1,i=a.toYear(o);a.props.mode==="empty"&&i.setMonth(0),a.updateDate(i)},a.toPrevYear=function(){var o=a.state.date.getFullYear()-1,i=a.toYear(o);a.props.mode==="empty"&&i.setMonth(0),a.updateDate(i)},a.updateDate=function(o,i,l,s){a.setState(ue({date:a.getCloseInLimit(o),hasSelect:!0},i),function(){var c=a.props,d=c.onDateUpdate,f=c.onOk;l&&f?f(a.state.date):d&&d(a.state.date),s&&a.hourInputRef.current&&a.hourInputRef.current.focus()})},a.handleKeyDown=function(o){var i=a.props.onClose,l=a.state.date;switch(o.key){case ko.ESC:i&&(i(),o.preventDefault());break;case ko.ENTER:a.updateDate(l,void 0,!0);break}},a.toYear=function(o){var i=new Date(a.state.date),l=wg(i,o);return l},a.createDayBody=function(){for(var o=a.state.date.getMonth(),i=WZe(a.state.date),l=HZe(i),s=l.getDate(),c=[],d=0;d<6;d++){for(var f=[],v=0;v<7;++v){var h,g=d*6+v+d,_=new Date(l.getTime());_.setDate(s+g);var w=_.getDate(),b=_.getMonth()===o,y=!a.isValidDate(_),D=!b;f.push(m.createElement("td",{key:_t(h="".concat(d,"_")).call(h,v),className:pe("day nav",{oday:D,disabled:y,selected:AH(_,a.state.date)&&a.state.hasSelect,today:AH(_,Kn.getNow(a.context.timezone).toDate())}),onClick:a.handleClick(Mn.day,_,y,"")},m.createElement("div",{className:"td-text"},w)))}c.push(m.createElement("tr",{key:d},f))}return c},a.isTimeMode=function(){var o;return ya(o=[Cn.YMDHMS,Cn.YMDHM,Cn.HMS,Cn.HM]).call(o,a.props.viewMode||1)},a.createMonthHead=function(){var o=Mn,i=new Date(a.state.date),l=qZe(wg(i,i.getFullYear()+1)),s=YZe(wg(i,i.getFullYear()-1)),c=!a.isValidDate(l),d=!a.isValidDate(s);return m.createElement("div",{className:"date-head"},a.createHeadBtn({cls:"btn-prevy",icon:m.createElement(j6,null),disable:d,nav:o.prevyear}),m.createElement("span",null,a.createHeadBtn({cls:"btn-year",disable:!1,nav:o.yearok,text:i.getFullYear()})),a.createHeadBtn({cls:"btn-nexty",icon:m.createElement(U6,null),disable:c,nav:o.nextyear}))},a.createMonthPicker=function(){for(var o=Mn,i=new Date(a.state.date),l=[],s=i.getMonth(),c=function(v){var h=!a.isValidMonth(v);l.push(m.createElement("div",{className:pe("item-cell",{disabled:h}),key:v,onClick:a.handleClick(o.month,v,h,"")},m.createElement("div",{className:pe("cell-btn",{select:s===v,disabled:h})},m.createElement(ed,{child:function(_){return _.datetime&&_.datetime[Y3(v)]}}))))},d=0;d<12;d++)c(d);return m.createElement(m.Fragment,null,a.createMonthHead(),m.createElement("div",{className:pe("date-month")},l))},a.createYearHead=function(o){var i=Mn;return m.createElement("div",{className:"date-head"},a.createHeadBtn({cls:"btn-prevy",icon:m.createElement(j6,null),disable:o.prevYDisable,nav:i.prevy}),m.createElement("span",null,m.createElement("div",{className:"head-btn btn-year default"},o.text)),a.createHeadBtn({cls:"btn-nexty",icon:m.createElement(U6,null),disable:o.nextYDisable,nav:i.nexty}))},a.createYearPicker=function(){for(var o=new Date(a.state.date),i=Mn,l=o.getFullYear(),s=GZe(o),c=s.join("~"),d=[],f=0;f<12;f++){var v=s[0]+f-1;d.push(v)}return m.createElement(m.Fragment,null,a.createYearHead({prevYDisable:!a.isValidYear(d[0]-1),nextYDisable:!a.isValidYear(d[11]+1),text:c}),m.createElement("div",{className:pe("date-year")},Ct(d).call(d,function(h,g){var _=!a.isValidYear(d[g]),w=g===0,b=g===11;return m.createElement("div",{className:pe("item-cell",{disabled:_}),key:g,onClick:a.handleClick(i.year,h,_,"",w,b)},m.createElement("div",{className:pe("cell-btn",{select:h===l,disabled:_,"last-year":w,"next-year":b})},h))})))},a.createDayHead=function(){var o=Mn,i=new Date(a.state.date),l=cd(i),s=me(l,2),c=s[0],d=s[1],f=RH(i),v=OH(i),h=!a.isValidOneMonth(f),g=!a.isValidOneMonth(v),_=!a.isValidYear(i.getFullYear()+1),w=!a.isValidYear(i.getFullYear()-1);return m.createElement("div",{className:"date-head"},a.createHeadBtn({cls:"btn-prevy",nav:o.prevyear,disable:w,icon:m.createElement(j6,null)}),a.createHeadBtn({cls:"btn-prevm",nav:o.prevm,disable:g,icon:m.createElement(H6,null)}),m.createElement("span",null,a.createHeadBtn({cls:"btn-year",nav:o.yearmode,disable:!1,text:c}),a.createHeadBtn({cls:"btn-month",nav:o.monthmode,disable:!1,text:m.createElement(ed,{child:function(y){return y.datetime&&y.datetime[Y3(d,!0)]}})})),a.createHeadBtn({cls:"btn-nextm",icon:m.createElement(Gy,null),disable:h,nav:o.nextm}),a.createHeadBtn({cls:"btn-nexty",icon:m.createElement(U6,null),disable:_,nav:o.nextyear}))},a.createHeadBtn=function(o){var i=o.cls,l=o.nav,s=o.icon,c=o.disable,d=o.text;return m.createElement("div",{className:pe("head-btn",{disabled:c},i),onClick:a.handleClick(l,"",c,"")},s,d)},a.renderFootBtn=function(o){if(!o)return null;var i=Mn,l=-1,s="text",c=!1;switch(o){case"month":case"today":case"now":l=i.today,c=!a.isValidDate(Kn.getNow(a.context.timezone).toDate()),s="text";break;case"ok":l=i.dok,c=!a.isValidDate(a.state.date),s="primary";break}return m.createElement(jr,{className:pe("foot-btn"),type:s,size:"small",disabled:c,onClick:a.handleClick(l,"",!1,""),key:o},m.createElement(ed,{child:function(f){return f.datetime&&f.datetime[o]}}))},a.createFooter=function(o){var i=[],l=[],s=[],c=a.props.viewMode;switch(c){case Cn.YM:l.push("month");break;case Cn.YMD:l.push("today");break;case Cn.YMDHM:case Cn.YMDHMS:i.push("now"),s.push("ok");break;case Cn.HM:case Cn.HMS:i.push("now"),s.push("ok");break}return m.createElement("div",{className:pe("date-foot",o)},m.createElement("div",null,Ct(i).call(i,function(d){return a.renderFootBtn(d)})),m.createElement("div",null,Ct(l).call(l,function(d){return a.renderFootBtn(d)})),m.createElement("div",null,Ct(s).call(s,function(d){return a.renderFootBtn(d)})))},a.createDayPicker=function(){var o;return m.createElement(m.Fragment,null,a.createDayHead(),m.createElement("div",{className:"date-body"},m.createElement("table",{cellPadding:"0",className:"dt"},m.createElement("thead",null,m.createElement("tr",null,Ct(o=TH(6)).call(o,function(i){return m.createElement("th",{key:i,className:"day name"},m.createElement(ed,{child:function(s){return s.datetime&&s.datetime[jZe(i)]}}))}))),m.createElement("tbody",null,a.createDayBody()))),a.isTimeMode()&&a.props.showTimeLabel&&m.createElement("div",{className:"time-label"},Kn.format(Kn.toDayjs(a.state.date),a.getTimeFormatStr())))},a.getTimeFormatStr=function(){var o,i=ya(o=[Cn.YMDHMS,Cn.HMS]).call(o,a.props.viewMode||-1);return i?"HH:mm:ss":"HH:mm"},a.createTimePicker=function(o){var i;if(!a.isTimeMode())return null;var l=["h","m"],s=ya(i=[Cn.YMDHMS,Cn.HMS]).call(i,a.props.viewMode||-1);return s&&l.push("s"),m.createElement("div",{className:pe("date-time-picker",o)},m.createElement("div",{className:"time-body"},Ct(l).call(l,function(c){return a.getColList(c)})))},a.getColList=function(o){var i,l=new Date(a.state.date),s=0,c=0,d="",f;if(l)switch(o){case"s":s=l.getSeconds(),c=59,d="second",f=a.scrollRefs[2];break;case"m":s=l.getMinutes(),c=59,d="minute",f=a.scrollRefs[1];break;case"h":s=l.getHours(),c=23,d="hour",f=a.scrollRefs[0];break}return m.createElement("div",{className:"col",key:o},m.createElement("div",{className:"label"},m.createElement(ed,{child:function(h){return h.datetime&&h.datetime[d]}})),m.createElement("div",{className:"col-list",ref:f},Ct(i=TH(c)).call(i,function(v,h){return m.createElement("div",{className:pe("col-item",{select:s===h}),key:h,onClick:function(){return a.handleTimeChange(o,h)}},Lc(String(h),2,"0"))})))},a.state={date:void 0,yearIndex:6,hasSelect:!0,dateMode:a.getDefaultDateMode(n.viewMode)},a.hourInputRef=m.createRef(),a.scrollRefs=a.isTimeMode()?[m.createRef(),m.createRef(),m.createRef()]:[],a}return Tr(r,[{key:"componentDidMount",value:function(){var a=this.props.date||Kn.getNow(this.context.timezone).toDate();if(this.props.date)a=this.props.date;else{var o=Kn.getNow(this.context.timezone);if(this.props.showTime&&this.props.showTime.defaultValue){var i=Ij(this.props.showTime.defaultValue);i&&(o=o.set("h",i.getHours()).set("m",i.getMinutes()).set("s",i.getSeconds()))}a=o.toDate()}this.setState({date:a}),this.scrollTimePosition(!1)}},{key:"componentDidUpdate",value:function(a,o){var i=this.props.date;!f1(a.date,i)&&!f1(i,this.state.date)&&(this.setState({date:i||Kn.getNow(this.context.timezone).toDate()}),this.scrollTimePosition()),f1(o.date,this.state.date)||this.scrollTimePosition()}},{key:"toPrevMonth",value:function(){var a=OH(this.state.date,this.props.mode==="empty");this.updateDate(a)}},{key:"render",value:function(){var a;if(ut(this.state.date))return null;var o=null,i=p1;switch(this.getCurrentDateMode()){case i.DAY:o=this.createDayPicker();break;case i.MONTH:o=this.createMonthPicker();break;case i.YEAR:o=this.createYearPicker();break}var l=pe({"multi-pane":ba(this.state.dateMode)>1,"show-time-label":this.props.showTimeLabel}),s=this.props.shortcutEnable,c=s===void 0?!0:s,d=(a=this.props.prefixCls)!==null&&a!==void 0?a:this.context.getPrefixCls("datepicker",this.props.prefixCls);return m.createElement("div",{className:d},m.createElement("div",null,o&&m.createElement("div",{className:pe("picker-content",l)},o),this.createTimePicker(l)),this.createFooter(l),c&&m.createElement(k3,{target:document,onKeyDown:this.handleKeyDown}))}}]),r}(m.Component);X3.defaultProps={viewMode:1,mode:"value"},X3.contextType=fi;const JZe=X3;var eQe=function(t,r){return!t||!r?null:Kn.parse(t,r)},kH={year:{max:2900,min:1e3,transaction:function(t,r){return t.setFullYear(r)}},month:{max:12,min:1,transaction:function(t,r){return t.setMonth(r-1)}},day:{min:1,max:function(t){return e6(Number(t.year),Number(t.month)-1)},transaction:function(t,r){return t.setDate(r)}},hour:{min:0,max:23,transaction:function(t,r){t.setHours(r),t.setMinutes(0),t.setSeconds(0)}},minute:{min:0,max:59,transaction:function(t,r){return t.setMinutes(r)}},second:{min:0,max:59,transaction:function(t,r){return t.setSeconds(r)}}},tQe=function(t){switch(t){case"yyyy":return["year"];case"yyyy-MM":return["year","month"];case"yyyy-MM-dd":return["year","month","day"];case"yyyy-MM-dd HH:mm":return["year","month","day","hour","minute"];case"yyyy-MM-dd HH:mm:ss":return["year","month","day","hour","minute","second"];case"HH:mm":return["hour","minute"];case"HH:mm:ss":return["hour","minute","second"]}},PH=function(t,r,n,a){var o=!1,i=tQe(r);if(mE(i,function(l){var s=br(a)?a(kH)[l]:kH[l];if(s){var c=t[l],d=Number(c||0),f=br(s.max)?s.max(t):s.max,v=br(s.min)?s.min(t):s.min,h=d>f||d1&&arguments[1]!==void 0?arguments[1]:"yyyy-MM-dd";if(!e)return"";var r=t.length,n="";if(r>0){for(var a=t.charAt(0),o=0,i=a,l=1;l2?r=Y3(t.getMonth()):n<2?r=t.getMonth()+1:r=Lc(String(t.getMonth()+1),2,"0");break;case"d":n>1?r=Lc(String(t.getDate()),2,"0"):r=t.getDate();break;case"h":{var i=t.getHours()%12;i===0&&(i=12),n>1?r=Lc(String(i),2,"0"):r=i;break}case"H":n>1?r=Lc(String(t.getHours()),2,"0"):r=t.getHours();break;case"m":n>1?r=Lc(String(t.getMinutes()),2,"0"):r=t.getMinutes();break;case"s":n>1?r=Lc(String(t.getSeconds()),2,"0"):r=t.getSeconds();break;case"a":r=t.getHours()<12?"am":"pm";break;default:r=e.str;break}return r}var oQe=function(t){if(zH(t))switch(t){case"yyyy-MM":return wa.VIEWMODE.YM;case"yyyy-MM-dd":return wa.VIEWMODE.YMD;case"yyyy-MM-dd HH:mm":return wa.VIEWMODE.YMDHM;case"yyyy-MM-dd HH:mm:ss":return wa.VIEWMODE.YMDHMS;case"HH:mm:ss":return wa.VIEWMODE.HMS;case"HH:mm":return wa.VIEWMODE.HM;default:return wa.VIEWMODE.YMDHMS}else return/d/.test(t)?/s/.test(t)?wa.VIEWMODE.YMDHMS:/H|h|m/.test(t)?wa.VIEWMODE.YMDHM:wa.VIEWMODE.YMD:/s/.test(t)?wa.VIEWMODE.HMS:/H|h|m/.test(t)?wa.VIEWMODE.HM:wa.VIEWMODE.YM},zH=function(t){return fn(["yyyy-MM","yyyy-MM-dd","yyyy-MM-dd HH:mm","yyyy-MM-dd HH:mm:ss","HH:mm:ss","HH:mm"],t)},iQe=function(t){return t&&t.replace(/y/g,"Y").replace(/d/g,"D")},lQe=wp.MAXYEAR,sQe=wp.MINYEAR,cQe=function(t){var r=m.useContext(fi),n=r.timezone,a=t.className,o=t.style,i=t.placeholder,l=t.disabled,s=t.format,c=t.getPickerDate,d=t.value,f=t.editable,v=f===void 0?!0:f,h=t.onEnter,g=h===void 0?Bc:h,_=t.onChange,w=_===void 0?Bc:_,b=t.onFocusChange,y=b===void 0?Bc:b,D=t.prefixCls,F=m.useState(),S=me(F,2),I=S[0],C=S[1],R=m.useState(!!t.focus),P=me(R,2),O=P[0],N=P[1],A=m.useRef(null),z=Yt("date-input",D);m.useEffect(function(){A.current&&(t.focus?A.current.focus():A.current.blur())},[t.focus]),m.useEffect(function(){O||C(d)},[d]),m.useEffect(function(){O||C(d)},[O]);var k=function(){N(!0),y(!0)},M=function(){N(!1),y(!1)},T=function(K){var X;C(K);var ee=br(c)?c():Kn.getNow(n).toDate(),q=function(V){return V.year=ue(ue({},V.year),{max:lQe,min:sQe}),V},G;zH(s)?G=aQe(K,s,ee,q):G=(X=eQe(K,iQe(s)))===null||X===void 0?void 0:X.toDate(),G&&!f1(G,ee)&&w(G)},B=function(){A.current&&A.current.blur(),g()};return $.createElement(Ss,{tabIndex:-1,className:pe(z,a,{"read-only":!v}),style:o,value:I,placeholder:i,disabled:l,readonly:!v,ref:A,onFocus:k,onBlur:M,onPressEnter:B,onChange:T})};const uQe=cQe;var dQe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);aXe||Je>ct)return;De.current.style.cursor="move",Oe.current={x:Ae.clientX-st,y:Ae.clientY-$t},document.addEventListener("mousemove",Ft),document.addEventListener("mouseup",lt)}},qe=function(){return $.createElement("div",{className:pe("dialog-title",{"align-center":v==="center",draggable:Ke}),onMouseDown:Ie,title:Ke?Dt.dragTip:void 0},N||$.createElement($.Fragment,null,d&&$.createElement("span",{className:"main-title"},d),O&&$.createElement("span",{className:"sub-title"},O)))},dt=function(Ae){!Ze&&ve&&_e.current===Ae.target&&B?.(Ae,"mask")},mt=function(Ae){if(fe&&Ae.keyCode===ui.ESC){Ae.stopPropagation(),B?.(Ae,"keyboard");return}},Rt=function(){return!ys(A)||!ys(z)||k||M},Gt=function(){return ft()?$.createElement("div",{className:pe("dialog-header",a?.header),style:s?.header},qe(),nt()):nt()},Qe=function(){if(!Rt())return null;var Ae=Dt.okText,Fe=Dt.cancelText;return $.createElement(fg,{justify:"space-between",wrap:!0,style:ue({flexDirection:"row-reverse"},s?.footer),className:pe("dialog-footer",{"has-separator":w},a?.footer),gutter:[0,12],align:"middle"},$.createElement(Hc,{className:"footer-right"},M,!ys(z)&&$.createElement(jr,we({className:"footer-btn",type:"negative",onClick:function($t){B?.($t,"cancel"),le?.($t)}},K),z||Fe),!ys(A)&&$.createElement(jr,we({className:"footer-btn",type:"primary",loadingWhenClick:!0,onClick:T||function(st){B?.(st,"ok"),le?.(st)}},L),A||Ae)),$.createElement(Hc,{className:"footer-left"},k))},He=function(){var Ae=kt(l,"width",F||0),Fe=kt(l,"height",y||0),st=ws(l,["width","height"]);return $.createElement("div",we({style:ue({paddingTop:Tt(Fe)},st),className:pe(Bt,I,n,"theme-".concat(J)),id:o,ref:_e,tabIndex:-1,onClick:dt,onKeyDown:mt},pa(t,{aria:!0,data:!0})),$.createElement("div",{className:pe("content-wrapper",a?.wrapper),ref:De,style:ue({width:Ae,height:Fe},s?.wrapper)},Gt(),$.createElement("div",{className:pe("dialog-content",{"has-padding":R,"has-separator":w},a?.body),style:s?.body},ee),Qe()))},je=function(){var Ae=I==="fade-down"?{enter:za.SLOW,exit:za.NORMAL}:{enter:za.NORMAL,exit:za.FAST};return $.createElement($.Fragment,null,$.createElement(k3,{target:"window",onResize:er}),$.createElement($s,{mountOnEnter:!0,unmountOnExit:Z,classNames:"dialog-content",timeout:Ae,appear:!0,enter:!0,exit:!0,in:Ge},He()))},ze=function(){return Ze?Kr.createPortal($.createElement("div",{className:"".concat(Bt,"-modeless"),style:{display:Ge?" block":"none",zIndex:i}},je()),document.body):$.createElement(T9,{zIndex:i,visible:!!Ge,destroyOnClose:Z,mask:re,maskClassName:a?.mask,maskStyle:s?.mask,onAfterExit:X},je())};return ze()};const BH=m.forwardRef(gQe);var J3=new hQe,_Qe=function(t){var r=document.createElement("div");document.body.appendChild(r);var n=m.createRef(),a=B5e();J3.registerInstance(a,n);var o=t.content;return Iy(t,"content"),Iy(t,"visible"),Kr.render(m.createElement(Hy,C6(),m.createElement(F6,{locale:s9()},m.createElement(BH,we({ref:n},t,{onAfterClose:function(){Kr.unmountComponentAtNode(r),r.remove(),J3.unRegisterInstance(a),t.onAfterClose&&t.onAfterClose()}}),o))),r),n&&n.current.show(),a},mQe=function(t){var r=J3.getInstance(t);r&&r.current.hide()},eC=BH;eC.add=_Qe,eC.hide=mQe;const jH=eC;var xQe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a1&&arguments[1]!==void 0?arguments[1]:"",$t=arguments.length>2?arguments[2]:void 0;if((!_||W)&&(ut(Fe)||Fe===""))return"";if(!ud(Fe))return st;var Je=bo(Fe);return $t&&(ud(A)&&Je>A&&(Je=bo(A)),ud(z)&&Jebo(z):!0},er=function(Fe){switch(Fe.key){case ko.ENTER:Bt.current&&Bt.current.blur&&Bt.current.blur(),M&&M(Fe);break;case ko.UP:nt(!0);break;case ko.DOWN:nt(!1);break}k&&k(Fe)},ft=function(){clearTimeout(Dt.current)},nt=function(Fe){dt()&&_e(function(st){var $t=bo(oe(st));if(i||Fe&&!Tt($t)||!Fe&&!ye($t))return st;var Je=bo(s),ht=Fe?$t+Je:$t-Je,Vt=ie(ht,"",!0),Mt=g1(Vt),_r=ve(Vt);return tt.current=_r,B&&B(Mt,Fe?"up":"down"),T&&T(Mt,_r),_r})},Ft=function(Fe){i||b||(D&&(Bt.current&&Bt.current.select&&Bt.current.select(),tt.current=Fe.target.value),L&&L(Fe.target.value,Fe),Ze(!0))},lt=function(Fe){var st=Fe.target.value,$t=oe(st),Je=ve($t);_e(function(ht){return $t===oe(ht)?st:Je}),La(t,"value")&&T&&T(g1($t),Je)},Ie=function(Fe){var st=Fe.target.value;st===""&&ud(z)&&W&&(st=bo(z).toFixed(v));var $t=ie(oe(st),oe(tt.current),!0),Je=ve($t);La(t,"value")?_e(ve(ie(a))):_e(Je),Ze(!1),T&&T(g1($t),Je),K&&K(g1($t),Fe)},qe=function(Fe,st){Fe.preventDefault(),nt(st);var $t=function Je(){nt(st),Dt.current=setTimeout(Je,wQe)};Dt.current=setTimeout($t,DQe)},dt=function(){var Fe=parseFloat(Math.pow(.1,bo(v)).toFixed(8));return bo(s)>=Fe},mt=S==="right",Rt=pe(gt,"".concat(gt,"-css-var"),C,(n={},Ee(n,"size-".concat(re),!!re),Ee(n,"input-state-".concat(Be),Be),Ee(n,"input-readonly",b),Ee(n,"disabled",i),Ee(n,"control-in-right",mt),Ee(n,"no-control-btn",!_),Ee(n,"focus",ke),Ee(n,"hover",Xe),n)),Gt=oe(le),Qe=!i&&Tt(Gt),He=!i&&ye(Gt),je=Z,ze=te;if(_){var Ve={onMouseUp:ft,onMouseLeave:ft};mt?ze=$.createElement("div",{className:"control-group"},$.createElement("div",we({className:pe("btn",{"btn-disabled":!Qe}),onMouseDown:function(Fe){return qe(Fe,!0)}},Ve),$.createElement(UHe,null)),$.createElement("div",we({className:pe("btn",{"btn-disabled":!He}),onMouseDown:function(Fe){return qe(Fe,!1)}},Ve),$.createElement(W9,null))):(je=$.createElement("div",{className:"control-btn minus"},$.createElement("div",we({className:pe("btn",{"btn-disabled":!He}),onMouseDown:function(Fe){return qe(Fe,!1)}},Ve),$.createElement(LHe,null))),ze=$.createElement("div",{className:"control-btn add"},$.createElement("div",we({className:pe("btn",{"btn-disabled":!Qe}),onMouseDown:function(Fe){return qe(Fe,!0)}},Ve),$.createElement(zHe,null))))}return $.createElement("div",we({className:Rt,style:P,id:R},ae),je&&$.createElement("div",{className:"prefix"},je," "),$.createElement("input",{className:"inner-input",ref:Bt,disabled:i,value:le,placeholder:_?"":X,readOnly:b,onFocus:Ft,onChange:lt,onBlur:Ie,onMouseEnter:function(){return ot(!0)},onMouseLeave:function(){return ot(!1)},onKeyDown:er,onKeyUp:O,onInput:N,autoFocus:Y}),ze&&$.createElement("div",{className:"suffix"},ze))};const rC=$.forwardRef(IQe);function FQe(){var e=m.useReducer(function(n){return n+1},0),t=me(e,2),r=t[1];return r}function $Qe(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=m.useRef({}),r=FQe();return m.useEffect(function(){var n=Qy.subscribe(function(a){t.current=a,e&&r()});return function(){return Qy.unsubscribe(n)}},[]),t.current}var SQe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);aZ},N=function(W,V){var Y=b?b(W,V):$.createElement("li",null,W);return $.cloneElement(Y,{key:w?.(W)||V,className:pe(Y.props.className,"list-item"),onClick:function(te){A(W,te),Y.props.onClick&&Y.props.onClick(te)}})},A=function(W,V){y&&y(W,V)},z=xs(v||{}).some(function(G){var W;return ya(W=["xs","sm","md","lg","xl","xxl"]).call(W,G)}),k=$Qe(z),M=$.useMemo(function(){var G;return gr(fU,function(W){if(k[W])return G=W,!1}),G},[k]),T=$.useMemo(function(){if(v){var G=M&&v[M]?v[M]:v.column;if(G)return{width:"".concat(100/G,"%"),maxWidth:"".concat(100/G,"%")}}},[v?.column,M]),B=R&&$.createElement("div",{style:{minHeight:53}});if(a.length>0){var L,K=Ct(a).call(a,function(G,W){return N(G,W)});B=v?$.createElement(fg,{gutter:v.gutter},Ct(L=$.Children).call(L,K,function(G){return $.createElement("div",{key:G?.key,style:T},G)})):K}var X={};D&&(X.onScroll=P);var ee=$.useMemo(function(){return{grid:v}},[XU(v)]),q=Yt("list",_);return $.createElement(UH.Provider,{value:ee},$.createElement("div",we({className:pe(q,l,"size-".concat(I)),id:s,style:c,ref:Ku(S,r)},F,X),$.createElement(r1,C),B))};const CQe=$.forwardRef(EQe);var TQe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a0;)e[o]=e[--o];o!==n++&&(e[o]=a)}else for(var i=MQe(r/2),l=oC(YH(e,0,i),t),s=oC(YH(e,i),t),c=l.length,d=s.length,f=0,v=0;f3)){if(QQe)return!0;if(nW)return nW<603;var e="",t,r,n,a;for(t=65;t<76;t++){switch(r=String.fromCharCode(t),t){case 66:case 69:case 70:case 72:n=3;break;case 68:case 71:n=4;break;default:n=2}for(a=0;a<47;a++)Kc.push({k:r+a,v:n})}for(Kc.sort(function(o,i){return i.v-o.v}),a=0;aeW(r)?1:-1}};KQe({target:"Array",proto:!0,forced:nJe},{sort:function(t){t!==void 0&&qQe(t);var r=YQe(this);if(oW)return t===void 0?aW(r):aW(r,t);var n=[],a=JH(r),o,i;for(i=0;i4&&arguments[4]!==void 0?arguments[4]:!1,o=arguments.length>5?arguments[5]:void 0,i=arguments.length>6?arguments[6]:void 0,l=$.useMemo(function(){if(Pn(n)==="object")return n.clearIcon},[n]),s=$.useMemo(function(){return!!(!a&&n&&(r.length||o))},[n,a,r.length,o,i]);return{allowClear:s,clearIcon:$.createElement(sC,{className:"".concat(e,"-clear"),onMouseDown:t,customizeIcon:l},"×")}}var lW=m.createContext(null);function DJe(){return m.useContext(lW)}function IJe(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:10,t=m.useState(!1),r=me(t,2),n=r[0],a=r[1],o=m.useRef(),i=function(){window.clearTimeout(o.current)};m.useEffect(function(){return i},[]);var l=function(c,d){i(),o.current=window.setTimeout(function(){a(c),d&&d()},e)};return[n,l,i]}function FJe(e,t,r,n){var a=m.useRef({open:t,triggerOpen:r,customizedTrigger:n});a.current={open:t,triggerOpen:r,customizedTrigger:n},m.useEffect(function(){function o(i){var l,s;if(!(!((s=a.current)===null||s===void 0)&&s.customizedTrigger)){var c=i.target;c.shadowRoot&&i.composed&&(c=i.composedPath()[0]||c),a.current.open&&Ol(l=e()).call(l,function(d){return d}).every(function(d){return!d.contains(c)&&d!==c})&&a.current.triggerOpen(!1)}}return window.addEventListener("mousedown",o),function(){return window.removeEventListener("mousedown",o)}},[])}var $Je=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a0&&Ze,ct=h===dW,Xe=Ke||typeof h=="number"&&a.length>h,ot=m.useMemo(function(){var Qe=a;return Ke?N===null&&I?Qe=a:Qe=At(a).call(a,0,Math.min(a.length,z/c)):typeof h=="number"&&(Qe=At(a).call(a,0,h)),Qe},[a,c,N,h,Ke]),tt=m.useMemo(function(){return Ke?At(a).call(a,_e+1):At(a).call(a,ot.length)},[a,ot,Ke,_e]),Dt=m.useCallback(function(Qe,He){var je;return typeof l=="function"?l(Qe):(je=l&&Qe?.[l])!==null&&je!==void 0?je:He},[l]),Bt=m.useCallback(o||function(Qe){return Qe},[o]);function gt(Qe,He,je){ge===Qe&&(He===void 0||He===ie)||(le(Qe),je||(Pe(Qez){gt(ze-1,Qe-Ve-te+W);break}}w&&nt(0)+te>z&&ve(null)}},[z,T,W,te,Dt,ot]);var Ft=Be&&!!tt.length,lt={};ie!==null&&Ke&&(lt={position:"absolute",left:ie,top:0});var Ie={prefixCls:Ge,responsive:Ke,component:D,invalidate:ct},qe=i?function(Qe,He){var je=Dt(Qe,He);return $.createElement(m1.Provider,{key:je,value:ue(ue({},Ie),{order:He,item:Qe,itemKey:je,registerSize:ye,display:He<=_e})},i(Qe,He))}:function(Qe,He){var je=Dt(Qe,He);return $.createElement(_1,we({},Ie,{order:He,key:je,item:Qe,renderItem:Bt,itemKey:je,registerSize:ye,display:He<=_e}))},dt,mt={order:Ft?_e:s3,className:"".concat(Ge,"-rest"),registerSize:er,display:Ft};if(_)_&&(dt=$.createElement(m1.Provider,{value:ue(ue({},Ie),mt)},_(tt)));else{var Rt=g||RJe;dt=$.createElement(_1,we({},Ie,mt),typeof Rt=="function"?Rt(tt):Rt)}var Gt=$.createElement(y,we({className:pe(!ct&&C,v),style:f,ref:t},S),Ct(ot).call(ot,qe),Xe?dt:null,w&&$.createElement(_1,we({},Ie,{responsive:Ze,responsiveDisabled:!Ke,order:_e,className:"".concat(Ge,"-suffix"),registerSize:ft,display:!0,style:lt}),w));return Ze&&(Gt=$.createElement(vi,{onResize:Tt,disabled:!Ke},Gt)),Gt}var Dg=$.forwardRef(OJe);Dg.displayName="Overflow",Dg.Item=CJe,Dg.RESPONSIVE=uW,Dg.INVALIDATE=dW;const AJe=Dg;function kJe(e){var t;return(t=e.key)!==null&&t!==void 0?t:e.value}var PJe=function(t){t.preventDefault(),t.stopPropagation()},NJe=function(t){var r=t.prefixCls,n=Zu(t),a=t.placeholder,o=t.disabled,i=t.tags,l=t.title,s=t.removeIcon,c=t.maxTagCount,d=t.maxTagTextLength,f=t.maxTagPlaceholder,v=f===void 0?function(R){return"+ ".concat(R.length," ...")}:f,h=t.tagRender,g=t.valueRender,_=t.onRemove,w="".concat(r,"-selection");function b(R,P,O,N,A,z){var k;return m.createElement("span",{className:pe("".concat(w,"-item"),(k={},Ee(k,"".concat(w,"-item-disabled"),O),Ee(k,"".concat(w,"-item-error"),N),k)),title:X6(R)},m.createElement("span",{className:"".concat(w,"-item-content")},P),A&&m.createElement(sC,{className:"".concat(w,"-item-remove"),onMouseDown:PJe,onClick:z,customizeIcon:s},"×"))}function y(R,P,O,N,A,z){return h(ue(ue({},R),{label:P,value:R.value,disabled:O,error:N,closable:A,onClose:z}))}function D(R){var P=R.disabled,O=R.error,N=R.label,A=!o&&!P,z=N;if(typeof d=="number"&&(typeof N=="string"||typeof N=="number")){var k=String(z);k.length>d&&(z="".concat(At(k).call(k,0,d),"..."))}var M=function(B){B&&B.stopPropagation(),_(R)};return typeof h=="function"?y(R,z,!!P,!!O,A,M):b(R,z,!!P,!!O,A,M)}function F(R){var P=typeof v=="function"?v(R):v;return typeof h=="function"?y({title:P,isMaxTag:!0},P,!1,!1,!1,function(){}):b({title:P},P,!1,!1)}var S=m.createElement("span",{className:"".concat(w,"-suffix"),style:{width:0,visibility:"hidden"}}," "),I=function(){return m.createElement(AJe,{prefixCls:"".concat(w,"-overflow"),data:n,renderItem:D,renderRest:F,suffix:S,itemKey:kJe,maxCount:c})},C=function(){if(!n.length)return null;if(br(g)){var P=g(n);return m.createElement("span",{className:"".concat(r,"-selection-item")},P)}var O=ej(n,function(A,z,k){var M,T,B=m.createElement("span",{key:z.value,className:pe(Ee({},"".concat(r,"-selection-item-error"),z.error))},z.label);return k===n.length-1?_t(M=[]).call(M,lr(A),[B]):_t(T=[]).call(T,lr(A),[B,m.createElement("span",{key:k},Dj.COMMA)])},[]),N=l!==void 0?l:iB(En(n,function(A){return X6(A)}),Dj.COMMA);return m.createElement("span",{className:"".concat(r,"-selection-item"),title:N},O)};return m.createElement(m.Fragment,null,i?I():C(),!n.length&&m.createElement("span",{className:"".concat(w,"-placeholder")},a))};const MJe=NJe;var LJe=function(t){var r=t.prefixCls,n=Zu(t),a=t.placeholder,o=t.title,i=t.valueRender,l=n[0],s=o===void 0?X6(l):o,c=function(){return l?null:m.createElement("span",{className:"".concat(r,"-selection-placeholder")},a)},d=function(){if(!l)return null;var v=br(i)?i(n):l.label;return m.createElement("span",{className:"".concat(r,"-selection-item"),title:s},m.createElement("span",{className:pe(Ee({},"".concat(r,"-selection-item-error"),l.error))},v))};return m.createElement(m.Fragment,null,d(),c())};const zJe=LJe;var BJe=function(t){var r=t.prefixCls,n=t.open,a=Zu(t),o=t.multiple,i=t.selectorRender,l=t.onToggleOpen,s=t.domRef,c=function(){l()};if(br(i))return m.createElement("div",{ref:s,className:"".concat(r,"-custom-selector"),onClick:c},i(a,n));var d=o?m.createElement(MJe,t):m.createElement(zJe,t);return m.createElement("div",{ref:s,className:"".concat(r,"-selector"),onClick:c},d)};const jJe=BJe;var UJe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a1?Ae-1:0),st=1;st1?Ae-1:0),st=1;st1?arguments[1]:void 0)}});var ZJe=ca,QJe=ZJe("Array","findIndex"),JJe=Sn,eet=QJe,fC=Array.prototype,tet=function(e){var t=e.findIndex;return e===fC||JJe(fC,e)&&t===fC.findIndex?eet:t},ret=tet,net=ret,aet=net,oet=aet,iet=oet,set=iet;(function(e){e.exports=set})(YJe),function(e){e.exports=dC}(qJe);const qc=qt(uC);var vW=m.forwardRef(function(e,t){var r=e.height,n=e.offsetY,a=e.offsetX,o=e.children,i=e.prefixCls,l=e.onInnerResize,s=e.innerProps,c=e.rtl,d=e.extra,f={},v={display:"flex",flexDirection:"column"};if(n!==void 0){var h;f={height:r,position:"relative",overflow:"hidden"},v=ue(ue({},v),(h={transform:"translateY(".concat(n,"px)")},Ee(h,c?"marginRight":"marginLeft",-a),Ee(h,"position","absolute"),Ee(h,"left",0),Ee(h,"right",0),Ee(h,"top",0),h))}return m.createElement("div",{style:f},m.createElement(vi,{onResize:function(_){var w=_.offsetHeight;w&&l&&l()}},m.createElement("div",we({style:v,className:pe(Ee({},"".concat(i,"-holder-inner"),i)),ref:t},s),o),d))});vW.displayName="Filler";const cet=vW;function hW(e,t){var r="touches"in e?e.touches[0]:e;return r[t?"pageX":"pageY"]}var uet=m.forwardRef(function(e,t){var r,n=e.prefixCls,a=e.rtl,o=e.scrollOffset,i=e.scrollRange,l=e.onStartMove,s=e.onStopMove,c=e.onScroll,d=e.horizontal,f=e.spinSize,v=e.containerSize,h=m.useState(!1),g=me(h,2),_=g[0],w=g[1],b=m.useState(null),y=me(b,2),D=y[0],F=y[1],S=m.useState(null),I=me(S,2),C=I[0],R=I[1],P=!a,O=m.useRef(null),N=m.useRef(null),A=m.useState(!1),z=me(A,2),k=z[0],M=z[1],T=m.useRef(),B=function(){clearTimeout(T.current),M(!0),T.current=setTimeout(function(){M(!1)},3e3)},L=i-v||0,K=v-f||0,X=L>0,ee=m.useMemo(function(){if(o===0||L===0)return 0;var te=o/L;return te*K},[o,L,K]),q=function(J){J.stopPropagation(),J.preventDefault()},G=m.useRef({top:ee,dragging:_,pageY:D,startTop:C});G.current={top:ee,dragging:_,pageY:D,startTop:C};var W=function(J){w(!0),F(hW(J,!!d)),R(G.current.top),l(),J.stopPropagation(),J.preventDefault()};m.useEffect(function(){var te=function(ie){ie.preventDefault()},J=O.current,ae=N.current;return J.addEventListener("touchstart",te),ae.addEventListener("touchstart",W),function(){J.removeEventListener("touchstart",te),ae.removeEventListener("touchstart",W)}},[]),m.useEffect(function(){if(_){var te,J=function(ie){var ve=G.current,oe=ve.dragging,fe=ve.pageY,ge=ve.startTop;if(di.cancel(te),oe){var le=hW(ie,!!d)-fe,_e=ge;!P&&d?_e-=le:_e+=le;var De=K?_e/K:0,Oe=Math.ceil(De*L);Oe=Math.max(Oe,0),Oe=Math.min(Oe,L),te=di(function(){c(Oe,d)})}},ae=function(){w(!1),s()};return window.addEventListener("mousemove",J),window.addEventListener("touchmove",J),window.addEventListener("mouseup",ae),window.addEventListener("touchend",ae),function(){window.removeEventListener("mousemove",J),window.removeEventListener("touchmove",J),window.removeEventListener("mouseup",ae),window.removeEventListener("touchend",ae),di.cancel(te)}}},[_]),m.useEffect(function(){B()},[o]),m.useImperativeHandle(t,function(){return{delayHidden:B}});var V="".concat(n,"-scrollbar"),Y={position:"absolute",visibility:k&&X?void 0:"hidden"},Z={position:"absolute",background:"rgba(0, 0, 0, 0.5)",borderRadius:99,cursor:"pointer",userSelect:"none"};return d?(Y.height=8,Y.left=0,Y.right=0,Y.bottom=0,Z.height="100%",Z.width=f,P?Z.left=ee:Z.right=ee):(Y.width=8,Y.top=0,Y.bottom=0,P?Y.right=0:Y.left=0,Z.width="100%",Z.height=f,Z.top=ee),m.createElement("div",{ref:O,className:pe(V,(r={},Ee(r,"".concat(V,"-horizontal"),d),Ee(r,"".concat(V,"-vertical"),!d),Ee(r,"".concat(V,"-visible"),k),r)),style:Y,onMouseDown:q,onMouseMove:B},m.createElement("div",{ref:N,className:pe("".concat(V,"-thumb"),Ee({},"".concat(V,"-thumb-moving"),_)),style:Z,onMouseDown:W}))});const gW=uet;function det(e){var t=e.children,r=e.setRef,n=m.useCallback(function(a){r(a)},[]);return m.cloneElement(t,{ref:n})}function fet(e,t,r,n,a,o,i){var l,s=i.getKey;return Ct(l=At(e).call(e,t,r+1)).call(l,function(c,d){var f=t+d,v=o(c,f,{style:{width:n}}),h=s(c);return m.createElement(det,{key:h,setRef:function(_){return a(c,_)}},v)})}function pet(e,t,r){var n=e.length,a=t.length,o,i;if(n===0&&a===0)return null;n1&&arguments[1]!==void 0?arguments[1]:!1,s=i<0&&o.current.top||i>0&&o.current.bottom;return l&&s?(clearTimeout(n.current),r.current=!1):(!s||r.current)&&a(),!r.current&&s}};function het(e,t,r,n,a){var o=m.useRef(0),i=m.useRef(),l=m.useRef(),s=m.useRef(!1),c=_W(t,r);function d(w){ut(i.current)||di.cancel(i.current);var b=w.deltaY;o.current+=b,l.current=b,!c(b)&&(B5()||w.preventDefault(),i.current=di(function(){var y=s.current?10:1;a(o.current*y),o.current=0}))}function f(w){var b=w.deltaX;a(b,!0),B5()||w.preventDefault()}var v=m.useRef(null),h=m.useRef();function g(w){if(e){ut(h.current)||di.cancel(h.current),h.current=di(function(){v.current=null},2);var b=w.deltaX,y=w.deltaY,D=Math.abs(b),F=Math.abs(y);v.current===null&&(v.current=n&&D>F?"x":"y"),v.current==="x"?f(w):d(w)}}function _(w){e&&(s.current=w.detail===l.current)}return[g,_]}var get=function(){function e(){Cr(this,e),this.maps=Object.create(null)}return Tr(e,[{key:"set",value:function(r,n){this.maps[r]=n}},{key:"get",value:function(r){return this.maps[r]}}]),e}();const _et=get;function met(e,t,r){var n=m.useState(0),a=me(n,2),o=a[0],i=a[1],l=m.useRef(new fa),s=m.useRef(new _et),c=m.useRef();function d(){ut(c.current)||di.cancel(c.current)}function f(){d(),c.current=di(function(){l.current.forEach(function(h,g){if(h&&h.offsetParent){var _=dje(h),w=_.offsetHeight;s.current.get(g)!==w&&s.current.set(g,_.offsetHeight)}}),i(function(h){return h+1})})}function v(h,g){var _=e(h),w=l.current.get(_);g?(l.current.set(_,g),f()):l.current.delete(_),!w!=!g&&(g?t?.(h):r?.(h))}return m.useEffect(function(){return d},[]),[v,f,s.current,o]}var xet=14/15;function bet(e,t,r){var n=m.useRef(!1),a=m.useRef(0),o=m.useRef(),i=m.useRef(),l,s=function(v){if(n.current){var h=Math.ceil(v.touches[0].pageY),g=a.current-h;a.current=h,r(g)&&v.preventDefault(),clearInterval(i.current),i.current=window.setInterval(function(){g*=xet,(!r(g,!0)||Math.abs(g)<=.1)&&clearInterval(i.current)},16)}},c=function(){n.current=!1,l()},d=function(v){l(),v.touches.length===1&&!n.current&&(n.current=!0,a.current=Math.ceil(v.touches[0].pageY),o.current=v.target,o.current.addEventListener("touchmove",s),o.current.addEventListener("touchend",c))};l=function(){o.current&&(o.current.removeEventListener("touchmove",s),o.current.removeEventListener("touchend",c))},Ip(function(){var f;return e&&((f=t.current)===null||f===void 0||f.addEventListener("touchstart",d)),function(){var v;(v=t.current)===null||v===void 0||v.removeEventListener("touchstart",d),l(),clearInterval(i.current)}},[e])}function yet(e,t,r,n,a,o,i,l){var s=m.useRef();return function(c){if(c==null){l();return}if(ut(s.current)||di.cancel(s.current),typeof c=="number")i(c);else if(c&&Pn(c)==="object"){var d,f=c.align;"index"in c?d=c.index:d=qc(t).call(t,function(_){return a(_)===c.key});var v=c.offset,h=v===void 0?0:v,g=function _(w,b){if(!(w<0||!e.current)){var y=e.current.clientHeight,D=!1,F=b;if(y){for(var S=b||f,I=0,C=0,R=0,P=Math.min(t.length,d),O=0;O<=P;O+=1){var N=a(t[O]);C=I;var A=r.get(N);R=C+(A===void 0?n:A),I=R,O===d&&A===void 0&&(D=!0)}var z=null;switch(S){case"top":z=C-h;break;case"bottom":z=R-y+h;break;default:{var k=e.current.scrollTop,M=k+y;CM&&(F="bottom")}}z!==null&&z!==e.current.scrollTop&&i(z)}s.current=di(function(){D&&o(),_(w-1,F)},2)}};g(3)}}}var wet=20;function mW(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=e/t*100;return isNaN(r)&&(r=0),r=Math.max(r,wet),r=Math.min(r,e/2),Math.floor(r)}var Det=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);ao,O=g==="rtl",N=pe(C,Ee({},"".concat(C,"-rtl"),O),n),A=d||Iet,z=m.useRef(null),k=m.useRef(null),M=m.useState(0),T=me(M,2),B=T[0],L=T[1],K=m.useState(0),X=me(K,2),ee=X[0],q=X[1],G=m.useState(!1),W=me(G,2),V=W[0],Y=W[1],Z=function(){Y(!0)},te=function(){Y(!1)},J=m.useCallback(function(Je){return typeof v=="function"?v(Je):kt(Je,v)},[v]),ae={getKey:J};function re(Je){L(function(ht){var Vt;typeof Je=="function"?Vt=Je(ht):Vt=Je;var Mt=Ft(Vt);return z.current&&(z.current.scrollTop=Mt),Mt})}var ie=m.useRef({start:0,end:A.length}),ve=m.useRef(),oe=vet(A,J),fe=me(oe,1),ge=fe[0];ve.current=ge;var le=met(J),_e=me(le,4),De=_e[0],Oe=_e[1],Be=_e[2],Pe=_e[3],Ge=m.useMemo(function(){var Je;if(!R)return{scrollHeight:void 0,start:0,end:A.length-1,offset:void 0};if(!P)return{scrollHeight:((Je=k.current)===null||Je===void 0?void 0:Je.offsetHeight)||0,start:0,end:A.length-1,offset:void 0};for(var ht=0,Vt,Mt,_r,Ca=A.length,Zn=0;Zn=B&&Vt===void 0&&(Vt=Zn,Mt=ht),Me>B+o&&_r===void 0&&(_r=Zn),ht=Me}return Vt===void 0&&(Vt=0,Mt=0,_r=Math.ceil(o/i)),_r===void 0&&(_r=A.length-1),_r=Math.min(_r+1,A.length),{scrollHeight:ht,start:Vt,end:_r,offset:Mt}},[P,R,B,A,Pe,o]),ke=Ge.scrollHeight,Ze=Ge.start,Ke=Ge.end,ct=Ge.offset;ie.current.start=Ze,ie.current.end=Ke;var Xe=m.useState({width:0,height:o}),ot=me(Xe,2),tt=ot[0],Dt=ot[1],Bt=function(ht){Dt(ht)},gt=m.useRef(null),Tt=m.useRef(null),ye=m.useMemo(function(){return mW(tt.width,_)},[tt.width,_]),er=m.useMemo(function(){return mW(tt.height,ke)},[tt.height,ke]),ft=ke-o,nt=m.useRef(ft);nt.current=ft;function Ft(Je){var ht=Je;return Yj(nt.current)||(ht=Math.min(ht,nt.current)),ht=Math.max(ht,0),ht}var lt=B<=0,Ie=B>=ft,qe=_W(lt,Ie);function dt(Je,ht){var Vt=Je;ht?q(Vt):re(Vt)}function mt(Je){var ht=Je.currentTarget.scrollTop;ht!==B&&re(ht),y?.(Je)}var Rt=y6(function(Je,ht){ht?q(function(Vt){var Mt=Vt+Je,_r=_-tt.width;return Mt=Math.max(Mt,0),Mt=Math.min(Mt,_r),Mt}):re(function(Vt){var Mt=Vt+Je;return Mt})}),Gt=het(R,lt,Ie,!!_,Rt),Qe=me(Gt,2),He=Qe[0],je=Qe[1];bet(R,z,function(Je,ht){if(qe(Je,ht))return!1;var Vt={preventDefault:function(){},deltaY:Je};return He(Vt),!0}),Ip(function(){function Je(Vt){R&&Vt.preventDefault()}var ht=z.current;return ht.addEventListener("wheel",He),ht.addEventListener("DOMMouseScroll",je),ht.addEventListener("MozMousePixelScroll",Je),function(){ht.removeEventListener("wheel",He),ht.removeEventListener("DOMMouseScroll",je),ht.removeEventListener("MozMousePixelScroll",Je)}},[R]);var ze=function(){var ht,Vt;(ht=gt.current)===null||ht===void 0||ht.delayHidden(),(Vt=Tt.current)===null||Vt===void 0||Vt.delayHidden()},Ve=yet(z,A,Be,i,J,Oe,re,ze);m.useImperativeHandle(t,function(){return{scrollTo:Ve}}),Ip(function(){if(D){var Je=At(A).call(A,Ze,Ke+1);D(Je,A)}},[Ze,Ke,A]);var Ae=fet(A,Ze,Ke,_,De,f,ae),Fe=S?.({start:Ze,end:Ke,virtual:P,offsetX:ee,rtl:O}),st={};o&&(st=ue(Ee({},s?"height":"maxHeight",o),Fet),R&&(st.overflowY="hidden",_&&(st.overflowX="hidden"),V&&(st.pointerEvents="none")));var $t={};return O&&($t.dir="rtl"),m.createElement("div",we({style:ue(ue({},c),{position:"relative"}),id:a,className:N},$t,pa(I,{aria:!0,data:!0})),m.createElement(vi,{onResize:Bt},m.createElement(b,{className:"".concat(C,"-holder"),style:st,ref:z,onScroll:mt,onMouseEnter:ze},m.createElement(cet,{prefixCls:C,height:ke,offsetX:ee,offsetY:ct,scrollWidth:_,onInnerResize:Oe,ref:k,innerProps:F,rtl:O,extra:Fe},Ae))),P&&ke>o&&m.createElement(gW,{ref:gt,prefixCls:C,scrollOffset:B,scrollRange:ke,rtl:O,onScroll:dt,onStartMove:Z,onStopMove:te,spinSize:er,containerSize:tt.height}),P&&_&&m.createElement(gW,{ref:Tt,prefixCls:C,scrollOffset:ee,scrollRange:_,rtl:O,onScroll:dt,onStartMove:Z,onStopMove:te,spinSize:ye,containerSize:tt.width,horizontal:!0}))}var xW=m.forwardRef($et);xW.displayName="List";const Eet=xW;var Cet=m.createContext(null);const bW=Cet;var Tet=function(){var t=$.useContext(bW);return t===null&&console.warn("BaseSelect must be wrapped by SelectContext.Provider"),t};const Ret=Tet;var Oet=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a1&&arguments[1]!==void 0?arguments[1]:1,le=L.length,_e=0;_e1&&arguments[1]!==void 0?arguments[1]:{},r=t.fieldNames,n=t.childrenAsData,a=[],o=IW(r,!1),i=o.label,l=o.value,s=o.options,c=o.groupLabel;function d(f,v){f.forEach(function(h){if(v||!(s in h)){var g=h[l];a.push({key:DW(h,a.length),groupOption:v,data:h,label:h[i],value:g})}else{var _=h[c];_===void 0&&n&&(_=h.label),a.push({key:DW(h,a.length),group:!0,data:h,label:_}),d(h[s],!0)}})}return d(e,!1),a}function pC(e){var t=ue({},e);return"props"in t||Object.defineProperty(t,"props",{get:function(){return console.warn("Return type is option instead of Option instance. Please read value directly instead of reading from `props`."),t}}),t}function vC(e,t){var r;return ya(r=pg(e).join("").toUpperCase()).call(r,t)}const Let=function(e,t,r,n,a){var o=m.useContext(Net);return m.useMemo(function(){if(!r||n===!1)return e;var i=t.options,l=t.label,s=t.value,c=[],d=typeof n=="function",f=typeof o=="function",v=r.toUpperCase(),h=d?n:f?o:function(_,w){return a?vC(w[a],v):w[i]?vC(w[l!=="children"?l:"label"],v):vC(w[s],v)},g=d?function(_){return pC(_)}:function(_){return _};return e.forEach(function(_){if(_[i]){var w=h(r,g(_));if(w)c.push(_);else{var b,y=Ol(b=_[i]).call(b,function(D){return h(r,g(D))});y.length&&c.push(ue(ue({},_),Ee({},i,y)))}return}h(r,g(_))&&c.push(_)}),c},[e,n,a,r,t])};var FW=0;function zet(){var e=FW;return FW+=1,e}function Bet(e){var t=m.useState(function(){return"x_select_".concat(zet())}),r=me(t,1),n=r[0];return e||n}var $W=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a1&&arguments[1]!==void 0?arguments[1]:!1;return Ol(t=Ct(r=U5(e)).call(r,function(a,o){if(!m.isValidElement(a)||!a.type)return null;var i=a,l=i.type.isSelectOptGroup,s=i.key,c=i.props,d=c.children,f=$W(c,["children"]);return n||!l?jet(a):ue(ue({key:"__RC_SELECT_GRP__".concat(s===null?o:s,"__"),label:s},f),{options:SW(d)})})).call(t,function(a){return a})}function Uet(e,t){var r=typeof Mu<"u"&&Lu(e)||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Het(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,a=function(){};return{s:a,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return o=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!o&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function Het(e,t){var r;if(e){if(typeof e=="string")return EW(e,t);var n=At(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Il(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return EW(e,t)}}function EW(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r1&&arguments[1]!==void 0?arguments[1]:!1,v=Uet(d),h;try{for(v.s();!(h=v.n()).done;){var g=h.value;!kt(g,r.options)||f?(i.set(kt(g,r.value),g),s(l,g,kt(g,r.label)),s(l,g,n),s(l,g,a)):c(kt(g,r.options),!0)}}catch(_){v.e(_)}finally{v.f()}}return c(o),{options:o,valueOptions:i,labelOptions:l}},[e,t,r,n,a])}function CW(e){var t=m.useRef();t.current=e;var r=m.useCallback(function(){return t.current&&t.current.apply(t,arguments)},[]);return r}var Vet=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a=ke||oe(ke)}},ie=function(){i<=1||oe(i-1)},ve=function(){if(!ut(r)){var ke=Math.ceil(r/X);if(i>=ke)return}d||oe(i+1)},oe=function(ke){A&&A(ke),V(ke)},fe=function(ke){V(ke)},ge=function(ke){oe(ke)},le=function(){B.current&&B.current.blur()},_e=function(){if(br(P)){var ke=En(s,function(Ze){return{label:P(Ze)||"",value:Ze}});return $.createElement(_C,{size:Y,className:pe("size-combo",te),options:ke,value:X,placeholder:F,onChange:function(Ke){J(Ke)},dropdownClassName:D})}},De=function(){return $.createElement("span",{className:"count"},br(O)?O(r):"")},Oe=function(){var ke=x1(X,r);if(br(R))return R(i,ut(r)?void 0:ke);if(!ut(r))return $.createElement("div",{className:"page-jump"},v?$.createElement($.Fragment,null,$.createElement("div",{className:pe("page-input-wrapper",te)},$.createElement(rC,{className:"page-input",value:W,min:1,max:ke,size:"small",hasControlBtn:!1,onChange:fe,onBlur:ge,onPressEnter:le,ref:B}),$.createElement("div",{className:"fake-placeholder"},W)),$.createElement("span",{className:"total-page"}," / ".concat(ke))):$.createElement("span",{className:"jump-page"},ed.replaceLocale(T.currentPage,{page:W})))},Be=function(){var ke=[];return y&&ke.push($.createElement("div",{key:"first",className:pe("page-turn-first",te,{"page-btn-disabled":i<=1}),onClick:ae},$.createElement(HHe,null))),ke.push($.createElement("div",{key:"pre",className:pe("page-turn-pre",te,{"page-btn-disabled":i<=1}),onClick:ie},$.createElement(H6,null))),$.createElement("div",{className:pe("page-turn","page-turn-left",{jumpable:ba(ke)===2})},ke)},Pe=function(){var ke=x1(X,r),Ze=i>=ke||d,Ke=[];return Ke.push($.createElement("div",{key:"next",className:pe("page-turn-next",te,{"page-btn-disabled":Ze}),onClick:ve},$.createElement(Gy,null))),!ut(r)&&y&&v&&Ke.push($.createElement("div",{key:"last",className:pe("page-turn-last",te,{"page-btn-disabled":Ze}),onClick:re},$.createElement(WHe,null))),$.createElement("div",{className:pe("page-turn","page-turn-right",{jumpable:ba(Ke)===2})},Ke)};return $.createElement("div",we({className:pe(Z,Ee({},"".concat(Y),Y==="small"),w),id:b,style:_},z),$.createElement("div",{className:"pagination-left"},_e(),De()),$.createElement("div",{className:"pagination-right"},Be(),Oe(),Pe()))};const TW=ntt;var att=function(t){var r=t.autoWrap,n=r===void 0?!0:r,a=t.allowDeselect,o=a===void 0?!1:a,i=t.defaultChecked,l=i===void 0?!1:i,s=t.checked,c=t.disabled,d=c===void 0?!1:c,f=t.autoFocus,v=f===void 0?!1:f,h=t.tabFocus,g=h===void 0?!1:h,_=t.hasPadding,w=_===void 0?!0:_,b=t.className,y=t.children,D=t.style,F=t.id,S=t.title,I=t.value,C=t.prefixCls,R=t.onClick,P=t.onChange,O=m.useRef(),N=Is(!1,{defaultValue:l,value:s}),A=me(N,2),z=A[0],k=A[1],M=Yt("radio",C),T=function(q,G){return function(W){R?.(W),!(d||!P)&&(G?o&&P(null,W):P(q,W))}},B=function(q,G,W){d||!P||q.key===ko.ENTER&&(q.preventDefault(),k(function(V){if(V){if(o)return!1}else return!V;return!0}),W?o&&P(null):P(G))},L=function(){O.current&&O.current.blur()},K=function(){return!d&&g};m.useEffect(function(){var ee;v&&((ee=O.current)===null||ee===void 0||ee.focus())},[v]);var X=pe(M,"".concat(M,"-css-var"),b,{"radio-disable":d,"radio-checked":z,"is-only-icon":!y,"auto-wrap":n,"has-default-padding":w});return m.createElement("div",we({className:X,style:D,id:F},pa(t,{aria:!0,data:!0})),m.createElement("div",{className:"".concat(M,"-wrapper"),onClick:T(I,z),tabIndex:K()?0:-1,onKeyDown:function(q){return B(q,I,z)},onMouseUp:L,ref:O,title:S},m.createElement("span",{className:"radio-check-icon"}),y&&m.createElement("span",{className:"radio-text"},y)))};const RW=att;var mC={},ott={get exports(){return mC},set exports(e){mC=e}},xC={},itt={get exports(){return xC},set exports(e){xC=e}},ltt=Ma,OW=Xb,stt=ni,ctt=function(t){for(var r=ltt(this),n=stt(r),a=arguments.length,o=OW(a>1?arguments[1]:void 0,n),i=a>2?arguments[2]:void 0,l=i===void 0?n:OW(i,n);l>o;)r[o++]=t;return r},utt=Re,dtt=ctt;utt({target:"Array",proto:!0},{fill:dtt});var ftt=ca,ptt=ftt("Array","fill"),vtt=Sn,htt=ptt,bC=Array.prototype,gtt=function(e){var t=e.fill;return e===bC||vtt(bC,e)&&t===bC.fill?htt:t},_tt=gtt,mtt=_tt,xtt=mtt,btt=xtt,ytt=btt,wtt=ytt;(function(e){e.exports=wtt})(itt),function(e){e.exports=xC}(ott);const yC=qt(mC);var Dtt=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a=0)&&(o[i]=r[i]);return o}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports})(QZe),function(e){var t=fC;function r(n,o){if(n==null)return{};var a=t(n,o),i,l;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(n);for(l=0;l=0)&&Object.prototype.propertyIsEnumerable.call(n,i)&&(a[i]=n[i])}return a}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports}(ZZe);var pC={},JZe={get exports(){return pC},set exports(e){pC=e}};(function(e){function t(){return e.exports=t=Object.assign?Object.assign.bind():function(r){for(var n=1;n1&&arguments[1]!==void 0?arguments[1]:this.props,a=o.target;if(a){var i=a;typeof a=="string"&&(i=window[a]),vQe(o,n.bind(null,i))}}},{key:"render",value:function(){return this.props.children||null}}]),t}(uQe.PureComponent);QH.propTypes={},N1.withOptions=gQe;var vC=N1.default=QH;function hQe(e){var t=_Qe();return function(){var n=Ur(e),o;if(t){var a=Ur(this).constructor;o=Lt(n,arguments,a)}else o=n.apply(this,arguments);return ba(this,o)}}function _Qe(){if(typeof Reflect>"u"||!Lt||Lt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Lt(Boolean,[],function(){})),!0}catch{return!1}}function mQe(e){var t=function(r){xa(o,r);var n=hQe(o);function o(a){var i;return Br(this,o),i=n.call(this,a),i.handleMouseDown=function(l){var s=i.instanceRef.current,c=Kr.findDOMNode(s),d=i.clickStartEl;c&&d&&!c.contains(d)&&i.props.onClickOutside(l)},i.instanceRef=a.forwaredRef||m.createRef(),i}return jr(o,[{key:"render",value:function(){var i=this;return m.createElement(m.Fragment,null,m.createElement(vC,{target:document.body,onMouseDown:function(s){i.clickStartEl=s.target,i.handleMouseDown(s)}}),m.createElement(e,Ee({},this.props,{ref:this.instanceRef})))}}]),o}(m.Component);return t.displayName="withClickOutside(".concat(e.displayName||e.name||"Component",")"),m.forwardRef(function(r,n){return m.createElement(t,Ee({},r,{forwaredRef:n}))})}function JH(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,n)}return r}function eW(e){for(var t=1;t=0&&r.left>=0&&r.bottom>r.top&&r.right>r.left?r:null}function jQe(e,t,r,n){var o=Zt.clone(e),a={width:t.width,height:t.height};return n.adjustX&&o.left=r.left&&o.left+a.width>r.right&&(a.width-=o.left+a.width-r.right),n.adjustX&&o.left+a.width>r.right&&(o.left=Math.max(r.right-a.width,r.left)),n.adjustY&&o.top=r.top&&o.top+a.height>r.bottom&&(a.height-=o.top+a.height-r.bottom),n.adjustY&&o.top+a.height>r.bottom&&(o.top=Math.max(r.bottom-a.height,r.top)),Zt.mix(o,a)}function $C(e){var t,r,n;if(!Zt.isWindow(e)&&e.nodeType!==9)t=Zt.offset(e),r=Zt.outerWidth(e),n=Zt.outerHeight(e);else{var o=Zt.getWindow(e);t={left:Zt.getWindowScrollLeft(o),top:Zt.getWindowScrollTop(o)},r=Zt.viewportWidth(o),n=Zt.viewportHeight(o)}return t.width=r,t.height=n,t}function gW(e,t){var r=t.charAt(0),n=t.charAt(1),o=e.width,a=e.height,i=e.left,l=e.top;return r==="c"?l+=a/2:r==="b"&&(l+=a),n==="c"?i+=o/2:n==="r"&&(i+=o),{left:i,top:l}}function j1(e,t,r,n,o){var a=gW(t,r[1]),i=gW(e,r[0]),l=[i.left-a.left,i.top-a.top];return{left:Math.round(e.left-l[0]+n[0]-o[0]),top:Math.round(e.top-l[1]+n[1]-o[1])}}function hW(e,t,r){return e.leftr.right}function _W(e,t,r){return e.topr.bottom}function UQe(e,t,r){return e.left>r.right||e.left+t.widthr.bottom||e.top+t.height=r.right||n.top>=r.bottom}function Hp(e,t,r){var n=r.target||t,o=$C(n),a=!WQe(n,r.overflow&&r.overflow.alwaysByViewport);return bW(e,o,r,a)}Hp.__getOffsetParent=IC,Hp.__getVisibleRectForElement=FC;function VQe(e,t,r){var n,o,a=Zt.getDocument(e),i=a.defaultView||a.parentWindow,l=Zt.getWindowScrollLeft(i),s=Zt.getWindowScrollTop(i),c=Zt.viewportWidth(i),d=Zt.viewportHeight(i);"pageX"in t?n=t.pageX:n=l+t.clientX,"pageY"in t?o=t.pageY:o=s+t.clientY;var f={left:n,top:o,width:0,height:0},v=n>=0&&n<=l+c&&o>=0&&o<=s+d,g=[r.points[0],"cc"];return bW(e,f,eW(eW({},r),{},{points:g}),v)}const KQe=Object.freeze(Object.defineProperty({__proto__:null,alignElement:Hp,alignPoint:VQe,default:Hp},Symbol.toStringTag,{value:"Module"}));function qQe(e){var t=YQe();return function(){var n=Ur(e),o;if(t){var a=Ur(this).constructor;o=Lt(n,arguments,a)}else o=n.apply(this,arguments);return ba(this,o)}}function YQe(){if(typeof Reflect>"u"||!Lt||Lt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Lt(Boolean,[],function(){})),!0}catch{return!1}}var yW=function(t,r){var n={t:"b",b:"t",l:"r",r:"l"};return Cn(t,function(o){return h6(o,new RegExp(r,"gi"),function(a){return n[a]})})},W1=function(t,r){return $t(t).call(t,function(n,o){return o===r?-n:n})},GQe=function(t){var r=t.getBoundingClientRect(),n=r.top,o=r.bottom,a=r.left,i=r.right;return o<0||n>window.innerHeight||i<0||a>window.innerWidth},XQe=function(e){xa(r,e);var t=qQe(r);function r(n){var o;return Br(this,r),o=t.call(this,n),o.align=function(){o.waitSourceElShow().then(function(){var a,i=o.props,l=i.align,s=i.builtinPlacements,c=i.target,d=i.onAfterAdjustDirection,f=i.useCssTransform,v=o.el.current,g=c();if(!(!v||!g)){var h=ed.getPlacementFromAlign(l,s),_=Hp(v,g,Sn({},l,{useCssTransform:f})),b=GQe(g);if(!b&&(!((a=l.overflow)===null||a===void 0)&&a.alwaysByViewport)){var x=v.getBoundingClientRect(),w=!1;(x.bottom>window.innerHeight||x.top<0)&&(_.points=yW(_.points,"[tb]"),_.offset=W1(_.offset,1),_.targetOffset=W1(_.targetOffset,1),w=!0),(x.right>window.innerWidth||x.left<0)&&(_.points=yW(_.points,"[lr]"),_.offset=W1(_.offset,0),_.targetOffset=W1(_.targetOffset,0),w=!0),w&&Hp(v,g,Sn({},_,{useCssTransform:f}))}var D=ed.getPlacementFromAlign(_,s);D!==h&&d&&d(D,{points:_.points,offset:_.offset,targetOffset:_.targetOffset,overflow:l.overflow})}})},o.waitSourceElShow=function(){var a=o.el.current;return new xo(function(i){var l=function s(){var c=a&&(a.clientWidth>0||a.clientHeight>0);c?i(!0):requestAnimationFrame(s)};l()})},o.el=m.createRef(),o}return jr(r,[{key:"componentDidMount",value:function(){this.align()}},{key:"render",value:function(){return m.cloneElement(m.Children.only(this.props.children),{ref:this.el})}}]),r}(m.Component);const ZQe=XQe;function QQe(e){var t=JQe();return function(){var n=Ur(e),o;if(t){var a=Ur(this).constructor;o=Lt(n,arguments,a)}else o=n.apply(this,arguments);return ba(this,o)}}function JQe(){if(typeof Reflect>"u"||!Lt||Lt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Lt(Boolean,[],function(){})),!0}catch{return!1}}var wW=function(e){xa(r,e);var t=QQe(r);function r(n){var o;return Br(this,r),o=t.call(this,n),o.getTarget=function(){return o.props.getRootDomNode()},o.align=function(){o.alignCount+=1;var a=o.alignCount;xo.resolve().then(function(){a===o.alignCount&&o.alignRef.current&&o.alignRef.current.align()})},o.getMiscStyle=function(){var a={position:"absolute"},i=o.props,l=i.stretch,s=i.targetWidth,c=i.targetHeight;return l&&(bo(l).call(l,"height")&&c?a.height=c:bo(l).call(l,"minHeight")&&c&&(a.minHeight=c),bo(l).call(l,"width")&&s?a.width=s:bo(l).call(l,"minWidth")&&s&&(a.minWidth=s)),a},o.alignRef=m.createRef(),o.alignCount=0,o}return jr(r,[{key:"render",value:function(){var o=this,a=this.props,i=a.className,l=a.style,s=a.align,c=a.builtinPlacements,d=a.visible,f=a.prefixCls,v=a.transitionName,g=a.transitionTime,h=a.children,_=a.autoDestroy,b=_===void 0?!0:_,x=a.zIndex,w=a.onMouseEnter,D=a.onMouseLeave,I=a.onShow,$=a.onHide,F=a.onAfterShow,C=a.onAfterHide,R=a.onAfterAdjustDirection,k=a.useCssTransform,P=this.context.getPrefixCls("popup"),U=_e(P,i,f,"".concat(f,"-content")),B=m.Children.only(h);return m.createElement(yi,{onResize:function(){o.alignRef.current&&o.alignRef.current.align()}},m.createElement(ZQe,{target:this.getTarget,key:"popup",align:s,builtinPlacements:c,onAfterAdjustDirection:R,useCssTransform:k,ref:this.alignRef},m.createElement("div",{className:U,onMouseEnter:w,onMouseLeave:D,style:Sn(this.getMiscStyle(),{zIndex:x},l),onClick:function(A){return A.stopPropagation()}},m.createElement(Ps,{classNames:v,timeout:g,appear:!0,enter:!0,exit:!0,in:d,unmountOnExit:b,onEnter:I,onExit:$,onEntered:F,onExited:C},B))))}}]),r}(m.Component);wW.contextType=Ko;const eJe=mQe(wW);var tJe=m.forwardRef(function(e,t){var r=e.children,n=e.getTriggerDOMNode,o=Dh(r),a=m.useCallback(function(l){fU(t,n?n(l):l)},[n]),i=pU(a,r.ref);return o?m.cloneElement(r,{ref:i}):r});const rJe=tJe;function nJe(e){var t=oJe();return function(){var n=Ur(e),o;if(t){var a=Ur(this).constructor;o=Lt(n,arguments,a)}else o=n.apply(this,arguments);return ba(this,o)}}function oJe(){if(typeof Reflect>"u"||!Lt||Lt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Lt(Boolean,[],function(){})),!0}catch{return!1}}var EC=function(e){xa(r,e);var t=nJe(r);function r(n){var o;return Br(this,r),o=t.call(this,n),o.setTargetRef=function(a){var i;Co.isDomElement(a)&&o.targetEle!==a&&(o.targetEle=a,(i=o.watch)===null||i===void 0||i.setTargetEle(a))},o.setWatchRef=function(a){var i;o.watch=a,o.targetEle&&((i=o.watch)===null||i===void 0||i.setTargetEle(o.targetEle))},o.handleAfterAdjustDirection=function(a,i){o.setState({placement:a,prevAlign:i})},o.getRootDomNode=function(){try{var a=Kr.findDOMNode(o.el.current);if(a)return a}catch{}try{return Kr.findDOMNode(zE(o))}catch{}},o.getTargetSize=function(){var a=o.state,i=a.targetWidth,l=a.targetHeight,s=o.targetEle||{},c=s.offsetWidth,d=c===void 0?0:c,f=s.offsetHeight,v=f===void 0?0:f;return{targetWidth:i!==null?i:d,targetHeight:l!==null?l:v}},o.getPopupEdgeStyle=function(){var a=o.props.popupEdge;if(!(!Wn(a)||a<=0)){var i={top:["paddingTop"],"top-left":["paddingTop","paddingRight"],"top-right":["paddingTop","paddingLeft"],right:["paddingRight"],"right-top":["paddingRight","paddingBottom"],"right-bottom":["paddingRight","paddingTop"],left:["paddingLeft"],"left-top":["paddingLeft","paddingBottom"],"left-bottom":["paddingLeft","paddingTop"],bottom:["paddingBottom"],"bottom-left":["paddingBottom","paddingRight"],"bottom-right":["paddingBottom","paddingLeft"]},l=o.state.placement,s=i[l];if(s){var c={};return yr(s,function(d){c[d]=a}),c}}},o.align=function(){Co.isDomElement(o.targetEle)&&!Co.isVisible(o.targetEle)||o.alignRef.current&&o.alignRef.current.align()},o.handleAfterHide=function(){o.setState({forceKeepDom:!1,targetWidth:null,targetHeight:null,prevAlign:void 0,placement:o.defaultPlacement},function(){var a=o.props.onAfterPopupHide;a&&a()})},o.getComponent=function(a){var i=o.props,l=i.prefixCls,s=i.popup,c=i.popupAlign,d=i.builtinPlacements,f=i.transitionTime,v=i.stretch,g=i.autoDestroy,h=i.onPopupShow,_=i.onPopupHide,b=i.disabled,x=i.useCssTransform,w=i.overlayClassName,D=i.overlayStyle,I=i.zIndex,$=o.state,F=$.prevAlign,C=$.placement,R=o.context.getPrefixCls("popup"),k=Nt(o.props,"popupVisible",o.state.popupVisible),P={};b||(o.isMouseEnterToShow()&&(P.onMouseEnter=o.onPopupMouseEnter),o.isMouseLeaveToHide()&&(P.onMouseLeave=o.onPopupMouseLeave));var U=s;Fr(s)&&(U=s()),U=m.Children.only(U);var B="placement-".concat(C),z=dt(F)?c:F,A=o.getTargetSize(),M=A.targetWidth,N=A.targetHeight;return m.createElement(eJe,Ee({ref:o.alignRef,style:Sn(o.getPopupEdgeStyle(),D),className:_e(w,B,je({},"".concat(R,"-hidden"),!a)),zIndex:I,prefixCls:l,visible:k,align:z,autoDestroy:g,builtinPlacements:d,stretch:v,targetWidth:M,targetHeight:N,transitionName:ed.getPlacementTransitionName(l,C),transitionTime:f},P,{getRootDomNode:o.getRootDomNode,onClickOutside:o.handleClickOutside,onAfterHide:o.handleAfterHide,onAfterShow:o.props.onAfterPopupShow,onShow:h,onHide:_,onAfterAdjustDirection:o.handleAfterAdjustDirection,useCssTransform:x}),U)},o.getContainer=function(){var a=o.props.getPopupContainer;return a&&function(){return a(o.getRootDomNode())}},o.handleClickOutside=function(a){var i=o.props,l=i.autoClose,s=i.shouldTriggerEvent,c=s===void 0?function(){return!1}:s,d=o.context.getPrefixCls("popup"),f=l;if(o.isClickToHide()){var v=o.getRootDomNode();v&&v.contains(a.target)&&!c(a.target)&&(f=!1);var g=Co.closest(a.target,".".concat(d));g&&(g.contains(v)||(f=!1))}f&&o.setPopupVisible(!1,!0)},o.hasPopupVisibleProp=function(){return"popupVisible"in o.props},o.onChildEventHandler=function(a,i){var l=m.Children.only(o.props.children);if(m.isValidElement(l)){var s=Nt(l.props,a);Fr(s)&&s(i)}},o.onPropsEventHandler=function(a,i){var l=Nt(o.props,a);Fr(l)&&l(i)},o.onTargetResize=function(a){o.props.stretch&&o.setState({targetWidth:a.width,targetHeight:a.height}),o.align()},o.onMouseEnter=function(a){o.isMouseEnterToShow()&&o.delaySetPopupVisible(!0,o.props.mouseEnterDelay),o.onChildEventHandler("onMouseEnter",a),o.onPropsEventHandler("onMouseEnter",a)},o.onMouseLeave=function(a){o.isMouseLeaveToHide()&&o.delaySetPopupVisible(!1,o.props.mouseLeaveDelay),o.onChildEventHandler("onMouseLeave",a),o.onPropsEventHandler("onMouseLeave",a)},o.onFocus=function(a){o.isFocusToShow()&&o.delaySetPopupVisible(!0,o.props.focusDelay),o.onChildEventHandler("onFocus",a),o.onPropsEventHandler("onFocus",a)},o.onBlur=function(a){o.isBlurToHide()&&o.delaySetPopupVisible(!1,o.props.blurDelay),o.onChildEventHandler("onBlur",a),o.onPropsEventHandler("onBlur",a)},o.onPopupMouseEnter=function(){o.clearDelayTimer()},o.onPopupMouseLeave=function(){o.delaySetPopupVisible(!1,o.props.mouseLeaveDelay)},o.onClick=function(a){if(o.isClickToHide()||o.isClickToShow()){a&&a.preventDefault&&a.preventDefault();var i=o.hasPopupVisibleProp()?!o.props.popupVisible:!o.state.popupVisible;(o.isClickToHide()&&!i||i&&o.isClickToShow())&&o.setPopupVisible(i)}o.onChildEventHandler("onClick",a),o.onPropsEventHandler("onClick",a)},o.el=m.createRef(),o.alignRef=m.createRef(),o.targetEle=null,o.watch=null,o.defaultPlacement=ed.getPlacementFromAlign(n.popupAlign,n.builtinPlacements),o.state={targetWidth:null,targetHeight:null,placement:o.defaultPlacement,popupVisible:!1,forceKeepDom:!1},o}return jr(r,[{key:"close",value:function(){this.setPopupVisible(!1)}},{key:"delaySetPopupVisible",value:function(o){var a=this,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,l=i*1e3;this.clearDelayTimer(),l?this.delayTimer=window.setTimeout(function(){a.setPopupVisible(o),a.clearDelayTimer()},l):this.setPopupVisible(o)}},{key:"clearDelayTimer",value:function(){this.delayTimer&&(clearTimeout(this.delayTimer),this.delayTimer=0)}},{key:"setPopupVisible",value:function(o,a){this.clearDelayTimer();var i=this.props.onPopupVisibleChange,l=i===void 0?Gc:i;this.hasPopupVisibleProp()?o!==this.props.popupVisible&&l(o,a):this.setState({popupVisible:o},function(){l(o,a)})}},{key:"isClickToShow",value:function(){var o=this.props,a=o.action,i=o.showAction;return a.indexOf("click")!==-1||i&&i.indexOf("click")!==-1}},{key:"isClickToHide",value:function(){var o=this.props,a=o.action,i=o.hideAction;return a.indexOf("click")!==-1||i&&i.indexOf("click")!==-1}},{key:"isFocusToShow",value:function(){var o=this.props,a=o.action,i=o.showAction;return a.indexOf("focus")!==-1||i&&i.indexOf("focus")!==-1}},{key:"isBlurToHide",value:function(){var o=this.props,a=o.action,i=o.hideAction;return a.indexOf("focus")!==-1||i&&i.indexOf("focus")!==-1}},{key:"isMouseEnterToShow",value:function(){var o=this.props,a=o.action,i=o.showAction;return a.indexOf("hover")!==-1||i&&i.indexOf("mouseEnter")!==-1}},{key:"isMouseLeaveToHide",value:function(){var o=this.props,a=o.action,i=o.hideAction;return a.indexOf("hover")!==-1||i&&i.indexOf("mouseLeave")!==-1}},{key:"needMountPopup",value:function(){var o=this.state.popupVisible;return"popupVisible"in this.props&&(o=this.props.popupVisible),o||this.state.forceKeepDom}},{key:"render",value:function(){var o=this.props,a=o.children,i=o.disabled,l=o.autoDestroy,s=o.getTriggerDOMNode,c=m.Children.only(a),d={key:"trigger"};Dh(c)&&(d.ref=nd(this.el,c.ref)),i||(d.onClick=this.onClick,d.onMouseEnter=this.onMouseEnter,d.onMouseLeave=this.onMouseLeave,d.onFocus=this.onFocus,d.onBlur=this.onBlur);var f=this.needMountPopup(),v=m.cloneElement(c,d);return m.createElement(m.Fragment,null,m.createElement(yi,{disabled:!f,onResize:this.onTargetResize,ref:this.setTargetRef},m.createElement(rJe,{getTriggerDOMNode:s},v)),m.createElement(zZe,{open:f,getContainer:this.getContainer(),autoDestroy:l},this.getComponent(f)),m.createElement(UZe,{visible:f,ref:this.setWatchRef,onAlign:this.align}))}}],[{key:"getDerivedStateFromProps",value:function(o,a){return o.popupVisible||a.popupVisible?{forceKeepDom:!0}:null}}]),r}(m.Component);EC.defaultProps={popupAlign:{},popupEdge:0,showAction:[],hideAction:[],mouseEnterDelay:.1,mouseLeaveDelay:.1,autoClose:!0,disabled:!1,autoDestroy:!0,transitionTime:{enter:Vo.NORMAL,exit:Vo.FAST},useCssTransform:!1,shouldTriggerEvent:function(){return!1}},EC.contextType=Ko;const zh=EC;var Ro={VIEWMODE:{YM:0,YMD:1,YMDHM:2,YMDHMS:3,HMS:4,HM:5},DATEMODE:{DAY:"day",MONTH:"month",YEAR:"year"},NAV:{prevm:2,nextm:3,clear:4,today:5,dok:6,prevy:7,nexty:8,plus:9,minus:10,day:11,month:12,year:13,yearmode:14,monthmode:15,prevyear:16,nextyear:17,yearok:18}},aJe=function(t){var r=["shortMon","shortTue","shortWed","shortThu","shortFri","shortSat","shortSun"];return r[t]},SC=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=["january","february","march","april","may","june","july","august","september","october","november","december"],o=["january_m","february_m","march_m","april_m","may_m","june_m","july_m","august_m","september_m","october_m","november_m","december_m"];return r?o[t]:n[t]},DW=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,o=[];if(r>=t||n<=0)return o;for(var a=r;a<=t;a+=n)o.push(a);return o},xd=function(t){return[t.getFullYear(),t.getMonth(),t.getDate()]},Lh=function(t,r){var n=new Date(t.getTime()),o=Wp(r,n.getMonth(),n.getDate());return n.setDate(o),n.setFullYear(r),n},IW=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=new Date(t.getTime()),o=xd(n),a=be(o,3),i=a[0],l=a[1],s=a[2];if(l>=11){n=Lh(t,t.getFullYear()+1);var c=0,d=r?1:Wp(n.getFullYear(),c,s);n.setDate(d),n.setMonth(c)}else{var f=l+1,v=r?1:Wp(i,f,s);n.setDate(v),n.setMonth(f)}return n},FW=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=new Date(t.getTime()),o=xd(n),a=be(o,3),i=a[0],l=a[1],s=a[2];if(l<=0){n=Lh(t,t.getFullYear()-1);var c=11,d=r?1:Wp(n.getFullYear(),c,s);n.setDate(d),n.setMonth(c)}else{var f=l-1,v=r?1:Wp(i,f,s);n.setDate(v),n.setMonth(f)}return n},iJe=function(t,r){var n=new Date(t.getTime());if(r<0||r>11)return n;var o=xd(t),a=be(o,3),i=a[0],l=a[2],s=Wp(i,r,l);return n.setDate(s),n.setMonth(r),n},Wp=function(t,r,n){var o=P6(t,r);return Math.min(n,o)},lJe=function(t){var r=[6,0,1,2,3,4,5];return new Date(t.setDate(t.getDate()-r[t.getDay()]))},V1=function(t,r){return!t&&!r||t&&r&&t.getTime()===r.getTime()},$W=function(t,r){var n=xd(t),o=be(n,3),a=o[0],i=o[1],l=o[2],s=xd(r),c=be(s,3),d=c[0],f=c[1],v=c[2];return a===d&&i===f&&l===v},sJe=function(t){var r=new Date(t.getTime());return r.setDate(1),r},cJe=function(t){var r=new Date(t.getTime());return r.setHours(0),r.setMinutes(0),r.setSeconds(0),r.setMilliseconds(0),r},uJe=function(t){var r=new Date(t.getTime());return r.setHours(23),r.setMinutes(59),r.setSeconds(59),r.setMilliseconds(59),r},dJe=function(t){var r=new Date(t.getTime());return r.setMonth(0),r.setDate(1),r.setHours(0),r.setMinutes(0),r.setSeconds(0),r.setMilliseconds(0),r},fJe=function(t){var r=new Date(t.getTime());return r.setMonth(12),r.setDate(0),r.setHours(23),r.setMinutes(59),r.setSeconds(59),r.setMilliseconds(59),r},pJe=function(t){var r=vJe(t),n=r.year-r.year%10;return[n,n+9]},vJe=function(t){return{year:t.getFullYear(),month:t.getMonth(),day:t.getDate(),hour:t.getHours(),minute:t.getMinutes(),second:t.getSeconds()}};function gJe(e){var t=hJe();return function(){var n=Ur(e),o;if(t){var a=Ur(this).constructor;o=Lt(n,arguments,a)}else o=n.apply(this,arguments);return ba(this,o)}}function hJe(){if(typeof Reflect>"u"||!Lt||Lt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Lt(Boolean,[],function(){})),!0}catch{return!1}}var zn=Ro.VIEWMODE,K1=Ro.DATEMODE,Vn=Ro.NAV,q1=Pp.MAXYEAR,Y1=Pp.MINYEAR,CC=function(t,r,n){if(t){var o=t.scrollTop;if(!n){t.scrollTop=r;return}var a=(r-o)/10,i=function l(){if(o=o+a,Math.abs(o-r)<=1){t.scrollTop=r;return}t.scrollTop=o,window.requestAnimationFrame(l)};i()}},TC=function(e){xa(r,e);var t=gJe(r);function r(n){var o;return Br(this,r),o=t.call(this,n),o.getPickerDate=function(){return new Date(o.state.date.getTime())},o.getDefaultDateMode=function(a){var i=[];switch(a){case zn.YM:i.push(K1.MONTH);break;case zn.YMD:case zn.YMDHM:case zn.YMDHMS:i.push(K1.DAY);break}return i},o.popDateMode=function(){var a=o.state.dateMode;return!a||a.length<=1?o.getDefaultDateMode(o.props.viewMode):(a.pop(),a)},o.pushDateMode=function(a){var i=o.state.dateMode;return i.push(a),i},o.getCurrentDateMode=function(){var a=o.state.dateMode;return!a||!a?"":a[a.length-1]},o.shouldHide=function(){var a=o.state.dateMode;return!!((!a||a.length<=1)&&rn([zn.YM,zn.YMD],o.props.viewMode))},o.shouldFocusHour=function(){return rn([zn.YMDHM,zn.YMDHMS],o.props.viewMode)&&Wo(o.state.dateMode)<=1},o.isDisabledDate=function(a){var i=o.props.disabledDate;return!!i?.(a,{type:"date"})},o.isDateInRange=function(a){var i=o.props,l=i.startDate,s=i.endDate,c=l?cJe(l):new Date(Y1,0,1,0,0,0),d=s?uJe(s):new Date(q1,11,31,23,59,59);return a>=c&&a<=d},o.isValidDate=function(a){return o.isDateInRange(a)&&!o.isDisabledDate(a)},o.isValidMonth=function(a){var i=o.props,l=i.startDate,s=i.endDate,c=new Date(o.state.date),d=l||new Date(Y1,0),f=s||new Date(q1,11),v=new Date(d.getFullYear(),d.getMonth()),g=new Date(f.getFullYear(),f.getMonth()),h=new Date(c.getFullYear(),a);return v<=h&&h<=g},o.isValidOneMonth=function(a){var i=new Date(a.getTime());i.setDate(1);var l=new Date(a.getTime()),s=xd(l),c=be(s,2),d=c[0],f=c[1];return l.setDate(P6(d,f)),o.isDateInRange(i)||o.isDateInRange(l)},o.isValidYear=function(a){var i=o.props,l=i.startDate,s=i.endDate,c=l?l.getFullYear():Y1,d=s?s.getFullYear():q1;return!(c&&ad)},o.getCloseInLimit=function(a){var i=o.props,l=i.startDate,s=i.endDate,c=new Date(a.getTime()),d=l||new Date(Y1,0,1,0,0,0),f=s||new Date(q1,11,31,23,59,59);if(!(d>f)){{if(d&&af)return f}return c}},o.handleClick=function(a,i,l,s,c,d){return function(){var f=K1;if(!l)switch(a){case Vn.prevm:{o.toPrevMonth();break}case Vn.nextm:{o.toNextMonth();break}case Vn.today:{o.updateDate(Jn.getNow(o.context.timezone).toDate(),void 0,!0);break}case Vn.dok:{o.updateDate(o.state.date,void 0,!0);break}case Vn.prevy:{var v=new Date(o.state.date).getFullYear()-10,g=o.toYear(v);o.updateDate(g);break}case Vn.nexty:{var h=new Date(o.state.date).getFullYear()+10,_=o.toYear(h);o.updateDate(_);break}case Vn.year:{var b=new Date(o.state.date);Wn(i)&&(b=o.toYear(i)),o.updateDate(b,c||d?{yearIndex:s}:{yearIndex:s,dateMode:o.popDateMode()},!1,o.shouldFocusHour());break}case Vn.month:{var x=new Date(o.state.date);Wn(i)&&(x=iJe(o.state.date,i));var w=o.shouldHide();o.updateDate(x,{dateMode:o.popDateMode()},w,o.shouldFocusHour());break}case Vn.day:{VB(i)&&o.updateDate(i,void 0,o.shouldHide(),o.shouldFocusHour());break}case Vn.monthmode:{o.setState({dateMode:o.pushDateMode(f.MONTH)});break}case Vn.yearmode:{o.setState({dateMode:o.pushDateMode(f.YEAR)});break}case Vn.nextyear:o.toNextYear();break;case Vn.prevyear:o.toPrevYear();break;case Vn.yearok:{o.setState({dateMode:o.pushDateMode(f.YEAR)});break}}}},o.scrollTimePosition=function(){var a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;if(o.isTimeMode()&&o.scrollRefs.length){var i=28,l=new Date(o.state.date),s=be(o.scrollRefs,3),c=s[0],d=s[1],f=s[2],v=l.getHours(),g=l.getMinutes(),h=l.getSeconds();CC(c.current,v*i,a),CC(d.current,g*i,a),CC(f.current,h*i,a)}},o.handleTimeChange=function(a,i){var l=new Date(o.state.date);switch(a){case"h":i<24&&i>=0&&l.setHours(i);break;case"m":i<60&&i>=0&&l.setMinutes(i);break;case"s":i<60&&i>=0&&l.setSeconds(i);break;default:return}o.updateDate(l)},o.toNextMonth=function(){var a=IW(o.state.date,o.props.mode==="empty");o.updateDate(a)},o.toNextYear=function(){var a=o.state.date.getFullYear()+1,i=o.toYear(a);o.props.mode==="empty"&&i.setMonth(0),o.updateDate(i)},o.toPrevYear=function(){var a=o.state.date.getFullYear()-1,i=o.toYear(a);o.props.mode==="empty"&&i.setMonth(0),o.updateDate(i)},o.updateDate=function(a,i,l,s){o.setState(ae({date:o.getCloseInLimit(a),hasSelect:!0},i),function(){var c=o.props,d=c.onDateUpdate,f=c.onOk;l&&f?f(o.state.date):d&&d(o.state.date),s&&o.hourInputRef.current&&o.hourInputRef.current.focus()})},o.handleKeyDown=function(a){var i=o.props.onClose,l=o.state.date;switch(a.key){case La.ESC:i&&(i(),a.preventDefault());break;case La.ENTER:o.updateDate(l,void 0,!0);break}},o.toYear=function(a){var i=new Date(o.state.date),l=Lh(i,a);return l},o.createDayBody=function(){for(var a=o.state.date.getMonth(),i=sJe(o.state.date),l=lJe(i),s=l.getDate(),c=[],d=0;d<6;d++){for(var f=[],v=0;v<7;++v){var g,h=d*6+v+d,_=new Date(l.getTime());_.setDate(s+h);var b=_.getDate(),x=_.getMonth()===a,w=!o.isValidDate(_),D=!x;f.push(m.createElement("td",{key:mt(g="".concat(d,"_")).call(g,v),className:_e("day nav",{oday:D,disabled:w,selected:$W(_,o.state.date)&&o.state.hasSelect,today:$W(_,Jn.getNow(o.context.timezone).toDate())}),onClick:o.handleClick(Vn.day,_,w,"")},m.createElement("div",{className:"td-text"},b)))}c.push(m.createElement("tr",{key:d},f))}return c},o.isTimeMode=function(){var a;return bo(a=[zn.YMDHMS,zn.YMDHM,zn.HMS,zn.HM]).call(a,o.props.viewMode||1)},o.createMonthHead=function(){var a=Vn,i=new Date(o.state.date),l=dJe(Lh(i,i.getFullYear()+1)),s=fJe(Lh(i,i.getFullYear()-1)),c=!o.isValidDate(l),d=!o.isValidDate(s);return m.createElement("div",{className:"date-head"},o.createHeadBtn({cls:"btn-prevy",icon:m.createElement(w3,null),disable:d,nav:a.prevyear}),m.createElement("span",null,o.createHeadBtn({cls:"btn-year",disable:!1,nav:a.yearok,text:i.getFullYear()})),o.createHeadBtn({cls:"btn-nexty",icon:m.createElement(D3,null),disable:c,nav:a.nextyear}))},o.createMonthPicker=function(){for(var a=Vn,i=new Date(o.state.date),l=[],s=i.getMonth(),c=function(v){var g=!o.isValidMonth(v);l.push(m.createElement("div",{className:_e("item-cell",{disabled:g}),key:v,onClick:o.handleClick(a.month,v,g,"")},m.createElement("div",{className:_e("cell-btn",{select:s===v,disabled:g})},m.createElement(dd,{child:function(_){return _.datetime&&_.datetime[SC(v)]}}))))},d=0;d<12;d++)c(d);return m.createElement(m.Fragment,null,o.createMonthHead(),m.createElement("div",{className:_e("date-month")},l))},o.createYearHead=function(a){var i=Vn;return m.createElement("div",{className:"date-head"},o.createHeadBtn({cls:"btn-prevy",icon:m.createElement(w3,null),disable:a.prevYDisable,nav:i.prevy}),m.createElement("span",null,m.createElement("div",{className:"head-btn btn-year default"},a.text)),o.createHeadBtn({cls:"btn-nexty",icon:m.createElement(D3,null),disable:a.nextYDisable,nav:i.nexty}))},o.createYearPicker=function(){for(var a=new Date(o.state.date),i=Vn,l=a.getFullYear(),s=pJe(a),c=s.join("~"),d=[],f=0;f<12;f++){var v=s[0]+f-1;d.push(v)}return m.createElement(m.Fragment,null,o.createYearHead({prevYDisable:!o.isValidYear(d[0]-1),nextYDisable:!o.isValidYear(d[11]+1),text:c}),m.createElement("div",{className:_e("date-year")},$t(d).call(d,function(g,h){var _=!o.isValidYear(d[h]),b=h===0,x=h===11;return m.createElement("div",{className:_e("item-cell",{disabled:_}),key:h,onClick:o.handleClick(i.year,g,_,"",b,x)},m.createElement("div",{className:_e("cell-btn",{select:g===l,disabled:_,"last-year":b,"next-year":x})},g))})))},o.createDayHead=function(){var a=Vn,i=new Date(o.state.date),l=xd(i),s=be(l,2),c=s[0],d=s[1],f=IW(i),v=FW(i),g=!o.isValidOneMonth(f),h=!o.isValidOneMonth(v),_=!o.isValidYear(i.getFullYear()+1),b=!o.isValidYear(i.getFullYear()-1);return m.createElement("div",{className:"date-head"},o.createHeadBtn({cls:"btn-prevy",nav:a.prevyear,disable:b,icon:m.createElement(w3,null)}),o.createHeadBtn({cls:"btn-prevm",nav:a.prevm,disable:h,icon:m.createElement(I3,null)}),m.createElement("span",null,o.createHeadBtn({cls:"btn-year",nav:a.yearmode,disable:!1,text:c}),o.createHeadBtn({cls:"btn-month",nav:a.monthmode,disable:!1,text:m.createElement(dd,{child:function(w){return w.datetime&&w.datetime[SC(d,!0)]}})})),o.createHeadBtn({cls:"btn-nextm",icon:m.createElement(E1,null),disable:g,nav:a.nextm}),o.createHeadBtn({cls:"btn-nexty",icon:m.createElement(D3,null),disable:_,nav:a.nextyear}))},o.createHeadBtn=function(a){var i=a.cls,l=a.nav,s=a.icon,c=a.disable,d=a.text;return m.createElement("div",{className:_e("head-btn",{disabled:c},i),onClick:o.handleClick(l,"",c,"")},s,d)},o.renderFootBtn=function(a){if(!a)return null;var i=Vn,l=-1,s="text",c=!1;switch(a){case"month":case"today":case"now":l=i.today,c=!o.isValidDate(Jn.getNow(o.context.timezone).toDate()),s="text";break;case"ok":l=i.dok,c=!o.isValidDate(o.state.date),s="primary";break}return m.createElement(Ar,{className:_e("foot-btn"),type:s,size:"small",disabled:c,onClick:o.handleClick(l,"",!1,""),key:a},m.createElement(dd,{child:function(f){return f.datetime&&f.datetime[a]}}))},o.createFooter=function(a){var i=[],l=[],s=[],c=o.props.viewMode;switch(c){case zn.YM:l.push("month");break;case zn.YMD:l.push("today");break;case zn.YMDHM:case zn.YMDHMS:i.push("now"),s.push("ok");break;case zn.HM:case zn.HMS:i.push("now"),s.push("ok");break}return m.createElement("div",{className:_e("date-foot",a)},m.createElement("div",null,$t(i).call(i,function(d){return o.renderFootBtn(d)})),m.createElement("div",null,$t(l).call(l,function(d){return o.renderFootBtn(d)})),m.createElement("div",null,$t(s).call(s,function(d){return o.renderFootBtn(d)})))},o.createDayPicker=function(){var a;return m.createElement(m.Fragment,null,o.createDayHead(),m.createElement("div",{className:"date-body"},m.createElement("table",{cellPadding:"0",className:"dt"},m.createElement("thead",null,m.createElement("tr",null,$t(a=DW(6)).call(a,function(i){return m.createElement("th",{key:i,className:"day name"},m.createElement(dd,{child:function(s){return s.datetime&&s.datetime[aJe(i)]}}))}))),m.createElement("tbody",null,o.createDayBody()))),o.isTimeMode()&&o.props.showTimeLabel&&m.createElement("div",{className:"time-label"},Jn.format(Jn.toDayjs(o.state.date),o.getTimeFormatStr())))},o.getTimeFormatStr=function(){var a,i=bo(a=[zn.YMDHMS,zn.HMS]).call(a,o.props.viewMode||-1);return i?"HH:mm:ss":"HH:mm"},o.createTimePicker=function(a){var i;if(!o.isTimeMode())return null;var l=["h","m"],s=bo(i=[zn.YMDHMS,zn.HMS]).call(i,o.props.viewMode||-1);return s&&l.push("s"),m.createElement("div",{className:_e("date-time-picker",a)},m.createElement("div",{className:"time-body"},$t(l).call(l,function(c){return o.getColList(c)})))},o.getColList=function(a){var i,l=new Date(o.state.date),s=0,c=0,d="",f;if(l)switch(a){case"s":s=l.getSeconds(),c=59,d="second",f=o.scrollRefs[2];break;case"m":s=l.getMinutes(),c=59,d="minute",f=o.scrollRefs[1];break;case"h":s=l.getHours(),c=23,d="hour",f=o.scrollRefs[0];break}return m.createElement("div",{className:"col",key:a},m.createElement("div",{className:"label"},m.createElement(dd,{child:function(g){return g.datetime&&g.datetime[d]}})),m.createElement("div",{className:"col-list",ref:f},$t(i=DW(c)).call(i,function(v,g){return m.createElement("div",{className:_e("col-item",{select:s===g}),key:g,onClick:function(){return o.handleTimeChange(a,g)}},qc(String(g),2,"0"))})))},o.state={date:void 0,yearIndex:6,hasSelect:!0,dateMode:o.getDefaultDateMode(n.viewMode)},o.hourInputRef=m.createRef(),o.scrollRefs=o.isTimeMode()?[m.createRef(),m.createRef(),m.createRef()]:[],o}return jr(r,[{key:"componentDidMount",value:function(){var o=this.props.date||Jn.getNow(this.context.timezone).toDate();if(this.props.date)o=this.props.date;else{var a=Jn.getNow(this.context.timezone);if(this.props.showTime&&this.props.showTime.defaultValue){var i=x9(this.props.showTime.defaultValue);i&&(a=a.set("h",i.getHours()).set("m",i.getMinutes()).set("s",i.getSeconds()))}o=a.toDate()}this.setState({date:o}),this.scrollTimePosition(!1)}},{key:"componentDidUpdate",value:function(o,a){var i=this.props.date;!V1(o.date,i)&&!V1(i,this.state.date)&&(this.setState({date:i||Jn.getNow(this.context.timezone).toDate()}),this.scrollTimePosition()),V1(a.date,this.state.date)||this.scrollTimePosition()}},{key:"toPrevMonth",value:function(){var o=FW(this.state.date,this.props.mode==="empty");this.updateDate(o)}},{key:"render",value:function(){var o;if(dt(this.state.date))return null;var a=null,i=K1;switch(this.getCurrentDateMode()){case i.DAY:a=this.createDayPicker();break;case i.MONTH:a=this.createMonthPicker();break;case i.YEAR:a=this.createYearPicker();break}var l=_e({"multi-pane":Wo(this.state.dateMode)>1,"show-time-label":this.props.showTimeLabel}),s=this.props.shortcutEnable,c=s===void 0?!0:s,d=(o=this.props.prefixCls)!==null&&o!==void 0?o:this.context.getPrefixCls("datepicker",this.props.prefixCls);return m.createElement("div",{className:d},m.createElement("div",null,a&&m.createElement("div",{className:_e("picker-content",l)},a),this.createTimePicker(l)),this.createFooter(l),c&&m.createElement(vC,{target:document,onKeyDown:this.handleKeyDown}))}}]),r}(m.Component);TC.defaultProps={viewMode:1,mode:"value"},TC.contextType=Ko;const _Je=TC;var mJe=function(t,r){return!t||!r?null:Jn.parse(t,r)},EW={year:{max:2900,min:1e3,transaction:function(t,r){return t.setFullYear(r)}},month:{max:12,min:1,transaction:function(t,r){return t.setMonth(r-1)}},day:{min:1,max:function(t){return P6(Number(t.year),Number(t.month)-1)},transaction:function(t,r){return t.setDate(r)}},hour:{min:0,max:23,transaction:function(t,r){t.setHours(r),t.setMinutes(0),t.setSeconds(0)}},minute:{min:0,max:59,transaction:function(t,r){return t.setMinutes(r)}},second:{min:0,max:59,transaction:function(t,r){return t.setSeconds(r)}}},xJe=function(t){switch(t){case"yyyy":return["year"];case"yyyy-MM":return["year","month"];case"yyyy-MM-dd":return["year","month","day"];case"yyyy-MM-dd HH:mm":return["year","month","day","hour","minute"];case"yyyy-MM-dd HH:mm:ss":return["year","month","day","hour","minute","second"];case"HH:mm":return["hour","minute"];case"HH:mm:ss":return["hour","minute","second"]}},SW=function(t,r,n,o){var a=!1,i=xJe(r);if(QS(i,function(l){var s=Fr(o)?o(EW)[l]:EW[l];if(s){var c=t[l],d=Number(c||0),f=Fr(s.max)?s.max(t):s.max,v=Fr(s.min)?s.min(t):s.min,g=d>f||d1&&arguments[1]!==void 0?arguments[1]:"yyyy-MM-dd";if(!e)return"";var r=t.length,n="";if(r>0){for(var o=t.charAt(0),a=0,i=o,l=1;l2?r=SC(t.getMonth()):n<2?r=t.getMonth()+1:r=qc(String(t.getMonth()+1),2,"0");break;case"d":n>1?r=qc(String(t.getDate()),2,"0"):r=t.getDate();break;case"h":{var i=t.getHours()%12;i===0&&(i=12),n>1?r=qc(String(i),2,"0"):r=i;break}case"H":n>1?r=qc(String(t.getHours()),2,"0"):r=t.getHours();break;case"m":n>1?r=qc(String(t.getMinutes()),2,"0"):r=t.getMinutes();break;case"s":n>1?r=qc(String(t.getSeconds()),2,"0"):r=t.getSeconds();break;case"a":r=t.getHours()<12?"am":"pm";break;default:r=e.str;break}return r}var DJe=function(t){if(OW(t))switch(t){case"yyyy-MM":return Ro.VIEWMODE.YM;case"yyyy-MM-dd":return Ro.VIEWMODE.YMD;case"yyyy-MM-dd HH:mm":return Ro.VIEWMODE.YMDHM;case"yyyy-MM-dd HH:mm:ss":return Ro.VIEWMODE.YMDHMS;case"HH:mm:ss":return Ro.VIEWMODE.HMS;case"HH:mm":return Ro.VIEWMODE.HM;default:return Ro.VIEWMODE.YMDHMS}else return/d/.test(t)?/s/.test(t)?Ro.VIEWMODE.YMDHMS:/H|h|m/.test(t)?Ro.VIEWMODE.YMDHM:Ro.VIEWMODE.YMD:/s/.test(t)?Ro.VIEWMODE.HMS:/H|h|m/.test(t)?Ro.VIEWMODE.HM:Ro.VIEWMODE.YM},OW=function(t){return rn(["yyyy-MM","yyyy-MM-dd","yyyy-MM-dd HH:mm","yyyy-MM-dd HH:mm:ss","HH:mm:ss","HH:mm"],t)},IJe=function(t){return t&&t.replace(/y/g,"Y").replace(/d/g,"D")},FJe=Pp.MAXYEAR,$Je=Pp.MINYEAR,EJe=function(t){var r=m.useContext(Ko),n=r.timezone,o=t.className,a=t.style,i=t.placeholder,l=t.disabled,s=t.format,c=t.getPickerDate,d=t.value,f=t.editable,v=f===void 0?!0:f,g=t.onEnter,h=g===void 0?Gc:g,_=t.onChange,b=_===void 0?Gc:_,x=t.onFocusChange,w=x===void 0?Gc:x,D=t.prefixCls,I=m.useState(),$=be(I,2),F=$[0],C=$[1],R=m.useState(!!t.focus),k=be(R,2),P=k[0],U=k[1],B=m.useRef(null),z=qt("date-input",D);m.useEffect(function(){B.current&&(t.focus?B.current.focus():B.current.blur())},[t.focus]),m.useEffect(function(){P||C(d)},[d]),m.useEffect(function(){P||C(d)},[P]);var A=function(){U(!0),w(!0)},M=function(){U(!1),w(!1)},N=function(j){var K;C(j);var Q=Fr(c)?c():Jn.getNow(n).toDate(),Y=function(H){return H.year=ae(ae({},H.year),{max:FJe,min:$Je}),H},X;OW(s)?X=wJe(j,s,Q,Y):X=(K=mJe(j,IJe(s)))===null||K===void 0?void 0:K.toDate(),X&&!V1(X,Q)&&b(X)},T=function(){B.current&&B.current.blur(),h()};return E.createElement(jl,{tabIndex:-1,className:_e(z,o,{"read-only":!v}),style:a,value:F,placeholder:i,disabled:l,readonly:!v,ref:B,onFocus:A,onBlur:M,onPressEnter:T,onChange:N})};const SJe=EJe;var CJe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);opt||Ae>ft)return;Pe.current.style.cursor="move",Qe.current={x:zt.clientX-vr,y:zt.clientY-fn},document.addEventListener("mousemove",Rt),document.addEventListener("mouseup",xe)}},We=function(){return E.createElement("div",{className:_e("dialog-title",{"align-center":v==="center",draggable:ze}),onMouseDown:Te,title:ze?xt.dragTip:void 0},z||E.createElement(E.Fragment,null,d&&E.createElement("span",{className:"main-title"},d),B&&E.createElement("span",{className:"sub-title"},B)))},Xe=function(zt){!Le&&ve&&Me.current===zt.target&&K?.(zt,"mask")},ot=function(zt){if(ge&&zt.keyCode===mi.ESC){zt.stopPropagation(),K?.(zt,"keyboard");return}},gt=function(){return!Cs(A)||!Cs(M)||N||O},Et=function(){return Ve()?E.createElement("div",{className:_e("dialog-header",o?.header,{"has-separator":Tt}),style:s?.header},We(),Ke()):Ke()},Qt=function(){var zt;if(typeof T=="function"||typeof T>"u"){var Jt=xt.okText,vr=xt.cancelText;zt=E.createElement(E.Fragment,null,!Cs(M)&&E.createElement(Ar,Ee({className:"footer-btn",type:"negative",onClick:function(Ae){K?.(Ae,"cancel"),ue?.(Ae)}},Y),M||vr),!Cs(A)&&E.createElement(Ar,Ee({className:"footer-btn",type:"primary",loadingWhenClick:!0,onClick:j||function(fn){K?.(fn,"ok"),ue?.(fn)}},Q),A||Jt)),typeof T=="function"&&(zt=T(zt))}else zt=T;return E.createElement(E.Fragment,null,O,zt)},Ft=function(){return gt()?E.createElement(Ch,{justify:"space-between",wrap:!0,style:ae({flexDirection:"row-reverse"},s?.footer),className:_e("dialog-footer",{"has-separator":It},o?.footer),gutter:[0,12],align:"middle"},E.createElement(Qc,{className:"footer-right"},Qt()),E.createElement(Qc,{className:"footer-left"},N)):null},ct=function(){var zt=Nt(Ut,"width",F||0),Jt=Nt(Ut,"height",I||0),vr=Ts(Ut,["width","height"]);return E.createElement("div",Ee({style:ae({paddingTop:vt(Jt)},vr),className:_e(Yt,R,n,we?.className,"theme-".concat(ie)),id:a,ref:Me,tabIndex:-1,onClick:Xe,onKeyDown:ot},yo(t,{aria:!0,data:!0})),E.createElement("div",{className:_e("content-wrapper",o?.wrapper),ref:Pe,style:ae({width:zt,height:Jt},s?.wrapper)},Et(),E.createElement("div",{className:_e("dialog-content",{"has-padding":P,"has-top-padding":P&&Tt,"has-bottom-padding":P&&It},o?.body),style:s?.body},G),Ft()))},Bt=function(){var zt=R==="fade-down"?{enter:Vo.SLOW,exit:Vo.NORMAL}:{enter:Vo.NORMAL,exit:Vo.FAST};return E.createElement(E.Fragment,null,E.createElement(vC,{target:"window",onResize:qe}),E.createElement(Ps,{mountOnEnter:!0,unmountOnExit:ne,classNames:"dialog-content",timeout:zt,appear:!0,enter:!0,exit:!0,in:He},ct()))},Mt=function(){return Le?Kr.createPortal(E.createElement("div",{className:"".concat(Yt,"-modeless"),style:{display:He?" block":"none",zIndex:i}},Bt()),document.body):E.createElement(DU,{zIndex:i,visible:!!He,destroyOnClose:ne,mask:oe,maskClassName:o?.mask,maskStyle:s?.mask,onAfterExit:X},Bt())};return Mt()};const AW=m.forwardRef(kJe);var AC=new AJe,PJe=function(t){var r=document.createElement("div");document.body.appendChild(r);var n=m.createRef(),o=Jze();AC.registerInstance(o,n);var a=t.content;return r1(t,"content"),r1(t,"visible"),Kr.render(m.createElement(wh,p3(),m.createElement(c3,{locale:oU()},m.createElement(AW,Ee({ref:n},t,{onAfterClose:function(){Kr.unmountComponentAtNode(r),r.remove(),AC.unRegisterInstance(o),t.onAfterClose&&t.onAfterClose()}}),a))),r),n&&n.current.show(),o},NJe=function(t){var r=AC.getInstance(t);r&&r.current.hide()},kC=AW;kC.add=PJe,kC.hide=NJe;const kW=kC;var MJe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o1&&arguments[1]!==void 0?arguments[1]:"",Mt=arguments.length>2?arguments[2]:void 0;if((!_||G)&&(dt(ct)||ct===""))return"";if(!bd(ct))return Bt;var St=Fa(ct);return Mt&&(bd(B)&&St>B&&(St=Fa(B)),bd(z)&&StFa(z):!0},Tt=function(ct){switch(ct.key){case La.ENTER:xt.current&&xt.current.blur&&xt.current.blur(),M&&M(ct);break;case La.UP:at(!0);break;case La.DOWN:at(!1);break}A&&A(ct)},It=function(){clearTimeout(st.current)},at=function(ct){Ke()&&ue(function(Bt){var Mt=Fa(ve(Bt));if(i||ct&&!Yt(Mt)||!ct&&!Ut(Mt))return Bt;var St=Fa(s),zt=ct?Mt+St:Mt-St,Jt=oe(zt,"",!0),vr=G1(Jt),fn=fe(Jt);return wt.current=fn,T&&T(vr,ct?"up":"down"),N&&N(vr,fn),fn})},vt=function(ct){i||x||(D&&(xt.current&&xt.current.select&&xt.current.select(),wt.current=ct.target.value),O&&O(ct.target.value,ct),Ce(!0))},et=function(ct){var Bt=ct.target.value,Mt=ve(Bt),St=fe(Mt);ue(function(zt){return Mt===ve(zt)?Bt:St}),Ho(t,"value")&&N&&N(G1(Mt),St)},qe=function(ct){var Bt=ct.target.value;Bt===""&&bd(z)&&G&&(Bt=Fa(z).toFixed(v));var Mt=oe(ve(Bt),ve(wt.current),!0),St=fe(Mt);Ho(t,"value")?ue(fe(oe(o))):ue(St),Ce(!1),N&&N(G1(Mt),St),j&&j(G1(Mt),ct)},Ve=function(ct,Bt){ct.preventDefault(),at(Bt);var Mt=function St(){at(Bt),st.current=setTimeout(St,BJe)};st.current=setTimeout(Mt,jJe)},Ke=function(){var ct=parseFloat(Math.pow(.1,Fa(v)).toFixed(8));return Fa(s)>=ct},Rt=$==="right",xe=_e(we,"".concat(we,"-css-var"),C,ie?.className,(n={},je(n,"size-".concat(ce),!!ce),je(n,"input-state-".concat(Qe),Qe),je(n,"input-readonly",x),je(n,"disabled",i),je(n,"control-in-right",Rt),je(n,"no-control-btn",!_),je(n,"focus",He),je(n,"hover",ft),n)),Te=ae(ae({},ie?.style),k),We=ve($e),Xe=!i&&Yt(We),ot=!i&&Ut(We),gt=Z,Et=te;if(_){var Qt={onMouseUp:It,onMouseLeave:It};Rt?Et=E.createElement("div",{className:"control-group"},E.createElement("div",Ee({className:_e("btn",{"btn-disabled":!Xe}),onMouseDown:function(ct){return Ve(ct,!0)}},Qt),E.createElement(eVe,null)),E.createElement("div",Ee({className:_e("btn",{"btn-disabled":!ot}),onMouseDown:function(ct){return Ve(ct,!1)}},Qt),E.createElement(MU,null))):(gt=E.createElement("div",{className:"control-btn minus"},E.createElement("div",Ee({className:_e("btn",{"btn-disabled":!ot}),onMouseDown:function(ct){return Ve(ct,!1)}},Qt),E.createElement(XWe,null))),Et=E.createElement("div",{className:"control-btn add"},E.createElement("div",Ee({className:_e("btn",{"btn-disabled":!Xe}),onMouseDown:function(ct){return Ve(ct,!0)}},Qt),E.createElement(ZWe,null))))}return E.createElement("div",Ee({className:xe,style:Te,id:R},ne),gt&&E.createElement("div",{className:"prefix"},gt," "),E.createElement("input",{className:"inner-input",ref:xt,disabled:i,value:$e,placeholder:_?"":K,readOnly:x,onFocus:vt,onChange:et,onBlur:qe,onMouseEnter:function(){return pt(!0)},onMouseLeave:function(){return pt(!1)},onKeyDown:Tt,onKeyUp:P,onInput:U,autoFocus:V}),Et&&E.createElement("div",{className:"suffix"},Et))};const PC=E.forwardRef(UJe);function HJe(){var e=m.useReducer(function(n){return n+1},0),t=be(e,2),r=t[1];return r}function WJe(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=m.useRef({}),r=HJe();return m.useEffect(function(){var n=T1.subscribe(function(o){t.current=o,e&&r()});return function(){return T1.unsubscribe(n)}},[]),t.current}var VJe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);oJ},B=function(V,Z){var te=x?x(V,Z):E.createElement("li",null,V);return E.cloneElement(te,{key:b?.(V)||Z,className:_e(te.props.className,"list-item"),onClick:function(ne){z(V,ne),te.props.onClick&&te.props.onClick(ne)}})},z=function(V,Z){w&&w(V,Z)},A=pi(v||{}).some(function(H){var V;return bo(V=["xs","sm","md","lg","xl","xxl"]).call(V,H)}),M=WJe(A),N=E.useMemo(function(){var H;return yr(aH,function(V){if(M[V])return H=V,!1}),H},[M]),T=E.useMemo(function(){if(v){var H=N&&v[N]?v[N]:v.column;if(H)return{width:"".concat(100/H,"%"),maxWidth:"".concat(100/H,"%")}}},[v?.column,N]),O=k&&E.createElement("div",{style:{minHeight:53}});if(o.length>0){var j,K=$t(o).call(o,function(H,V){return B(H,V)});O=v?E.createElement(Ch,{gutter:v.gutter},$t(j=E.Children).call(j,K,function(H){return E.createElement("div",{key:H?.key,style:T},H)})):K}var Q={};D&&(Q.onScroll=P);var Y=E.useMemo(function(){return{grid:v}},[HH(v)]),X=qt("list",_),G=ae(ae({},F?.style),c);return E.createElement(NW.Provider,{value:Y},E.createElement("div",Ee({className:_e(X,l,F?.className,"size-".concat(C)),id:s,style:G,ref:nd($,r)},I,Q),E.createElement(P1,R),O))};const qJe=E.forwardRef(KJe);var YJe=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o0;)e[a]=e[--a];a!==n++&&(e[a]=o)}else for(var i=tet(r/2),l=zC(UW(e,0,i),t),s=zC(UW(e,i),t),c=l.length,d=s.length,f=0,v=0;f3)){if(_et)return!0;if(ZW)return ZW<603;var e="",t,r,n,o;for(t=65;t<76;t++){switch(r=String.fromCharCode(t),t){case 66:case 69:case 70:case 72:n=3;break;case 68:case 71:n=4;break;default:n=2}for(o=0;o<47;o++)tu.push({k:r+o,v:n})}for(tu.sort(function(a,i){return i.v-a.v}),o=0;oYW(r)?1:-1}};det({target:"Array",proto:!0,forced:wet},{sort:function(t){t!==void 0&&fet(t);var r=pet(this);if(JW)return t===void 0?QW(r):QW(r,t);var n=[],o=qW(r),a,i;for(i=0;i4&&arguments[4]!==void 0?arguments[4]:!1,a=arguments.length>5?arguments[5]:void 0,i=arguments.length>6?arguments[6]:void 0,l=E.useMemo(function(){if(Mn(n)==="object")return n.clearIcon},[n]),s=E.useMemo(function(){return!!(!o&&n&&(r.length||a))},[n,o,r.length,a,i]);return{allowClear:s,clearIcon:E.createElement(jC,{className:"".concat(e,"-clear"),onMouseDown:t,customizeIcon:l},"×")}}var tV=m.createContext(null);function Het(){return m.useContext(tV)}function Wet(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:10,t=m.useState(!1),r=be(t,2),n=r[0],o=r[1],a=m.useRef(),i=function(){window.clearTimeout(a.current)};m.useEffect(function(){return i},[]);var l=function(c,d){i(),a.current=window.setTimeout(function(){o(c),d&&d()},e)};return[n,l,i]}function Vet(e,t,r,n){var o=m.useRef({open:t,triggerOpen:r,customizedTrigger:n});o.current={open:t,triggerOpen:r,customizedTrigger:n},m.useEffect(function(){function a(i){var l,s;if(!(!((s=o.current)===null||s===void 0)&&s.customizedTrigger)){var c=i.target;c.shadowRoot&&i.composed&&(c=i.composedPath()[0]||c),o.current.open&&ul(l=e()).call(l,function(d){return d}).every(function(d){return!d.contains(c)&&d!==c})&&o.current.triggerOpen(!1)}}return window.addEventListener("mousedown",a),function(){return window.removeEventListener("mousedown",a)}},[])}var Ket=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o0&&Je,Ce=g===aV,Le=He||typeof g=="number"&&o.length>g,ze=m.useMemo(function(){var xe=o;return He?U===null&&F?xe=o:xe=kt(o).call(o,0,Math.min(o.length,z/c)):typeof g=="number"&&(xe=kt(o).call(o,0,g)),xe},[o,c,U,g,He]),ft=m.useMemo(function(){return He?kt(o).call(o,ge+1):kt(o).call(o,ze.length)},[o,ze,He,ge]),pt=m.useCallback(function(xe,Te){var We;return typeof l=="function"?l(xe):(We=l&&xe?.[l])!==null&&We!==void 0?We:Te},[l]),wt=m.useCallback(a||function(xe){return xe},[a]);function st(xe,Te,We){ve===xe&&(Te===void 0||Te===ie)||(he(xe),We||(Pe(xez){st(Xe-1,xe-ot-te+G);break}}b&&Tt(0)+te>z&&ce(null)}},[z,N,G,te,pt,ze]);var It=Me&&!!ft.length,at={};ie!==null&&He&&(at={position:"absolute",left:ie,top:0});var vt={prefixCls:Qe,responsive:He,component:D,invalidate:Ce},et=i?function(xe,Te){var We=pt(xe,Te);return E.createElement(Z1.Provider,{key:We,value:ae(ae({},vt),{order:Te,item:xe,itemKey:We,registerSize:we,display:Te<=ge})},i(xe,Te))}:function(xe,Te){var We=pt(xe,Te);return E.createElement(X1,Ee({},vt,{order:Te,key:We,item:xe,renderItem:wt,itemKey:We,registerSize:we,display:Te<=ge}))},qe,Ve={order:It?ge:H3,className:"".concat(Qe,"-rest"),registerSize:Yt,display:It};if(_)_&&(qe=E.createElement(Z1.Provider,{value:ae(ae({},vt),Ve)},_(ft)));else{var Ke=h||Zet;qe=E.createElement(X1,Ee({},vt,Ve),typeof Ke=="function"?Ke(ft):Ke)}var Rt=E.createElement(w,Ee({className:_e(!Ce&&C,v),style:f,ref:t},$),$t(ze).call(ze,et),Le?qe:null,b&&E.createElement(X1,Ee({},vt,{responsive:Je,responsiveDisabled:!He,order:ge,className:"".concat(Qe,"-suffix"),registerSize:Ut,display:!0,style:at}),b));return Je&&(Rt=E.createElement(yi,{onResize:xt,disabled:!He},Rt)),Rt}var jh=E.forwardRef(Qet);jh.displayName="Overflow",jh.Item=Get,jh.RESPONSIVE=oV,jh.INVALIDATE=aV;const Jet=jh;function ett(e){var t;return(t=e.key)!==null&&t!==void 0?t:e.value}var ttt=function(t){t.preventDefault(),t.stopPropagation()},rtt=function(t){var r=t.prefixCls,n=sd(t),o=t.placeholder,a=t.disabled,i=t.tags,l=t.title,s=t.removeIcon,c=t.maxTagCount,d=t.maxTagTextLength,f=t.maxTagPlaceholder,v=f===void 0?function(R){return"+ ".concat(R.length," ...")}:f,g=t.tagRender,h=t.valueRender,_=t.onRemove,b="".concat(r,"-selection");function x(R,k,P,U,B,z){var A;return m.createElement("span",{className:_e("".concat(b,"-item"),(A={},je(A,"".concat(b,"-item-disabled"),P),je(A,"".concat(b,"-item-error"),U),A)),title:R3(R)},m.createElement("span",{className:"".concat(b,"-item-content")},k),B&&m.createElement(jC,{className:"".concat(b,"-item-remove"),onMouseDown:ttt,onClick:z,customizeIcon:s},"×"))}function w(R,k,P,U,B,z){return g(ae(ae({},R),{label:k,value:R.value,disabled:P,error:U,closable:B,onClose:z}))}function D(R){var k=R.disabled,P=R.error,U=R.label,B=!a&&!k,z=U;if(typeof d=="number"&&(typeof U=="string"||typeof U=="number")){var A=String(z);A.length>d&&(z="".concat(kt(A).call(A,0,d),"..."))}var M=function(T){T&&T.stopPropagation(),_(R)};return typeof g=="function"?w(R,z,!!k,!!P,B,M):x(R,z,!!k,!!P,B,M)}function I(R){var k=typeof v=="function"?v(R):v;return typeof g=="function"?w({title:k,isMaxTag:!0},k,!1,!1,!1,function(){}):x({title:k},k,!1,!1)}var $=m.createElement("span",{className:"".concat(b,"-suffix"),style:{width:0,visibility:"hidden"}}," "),F=function(){return m.createElement(Jet,{prefixCls:"".concat(b,"-overflow"),data:n,renderItem:D,renderRest:I,suffix:$,itemKey:ett,maxCount:c})},C=function(){if(!n.length)return null;if(Fr(h)){var k=h(n);return m.createElement("span",{className:"".concat(r,"-selection-item")},k)}var P=g6(n,function(B,z,A){var M,N,T=m.createElement("span",{key:"select-item-".concat(z.value),className:_e(je({},"".concat(r,"-selection-item-error"),z.error))},z.label);return A===n.length-1?mt(M=[]).call(M,ar(B),[T]):mt(N=[]).call(N,ar(B),[T,m.createElement("span",{key:"select-item-comma-".concat(z.value)},m9.COMMA)])},[]),U=l!==void 0?l:JB(Cn(n,function(B){return R3(B)}),m9.COMMA);return m.createElement("span",{className:"".concat(r,"-selection-item"),title:U},P)};return m.createElement(m.Fragment,null,i?F():C(),!n.length&&m.createElement("span",{className:"".concat(b,"-placeholder")},o))};const ntt=rtt;var ott=function(t){var r=t.prefixCls,n=sd(t),o=t.placeholder,a=t.title,i=t.valueRender,l=n[0],s=a===void 0?R3(l):a,c=function(){return l?null:m.createElement("span",{className:"".concat(r,"-selection-placeholder")},o)},d=function(){if(!l)return null;var v=Fr(i)?i(n):l.label;return m.createElement("span",{className:"".concat(r,"-selection-item"),title:s},m.createElement("span",{className:_e(je({},"".concat(r,"-selection-item-error"),l.error))},v))};return m.createElement(m.Fragment,null,d(),c())};const att=ott;var itt=function(t){var r=t.prefixCls,n=t.open,o=sd(t),a=t.multiple,i=t.selectorRender,l=t.onToggleOpen,s=t.domRef,c=function(){l()};if(Fr(i))return m.createElement("div",{ref:s,className:"".concat(r,"-custom-selector"),onClick:c},i(o,n));var d=a?m.createElement(ntt,t):m.createElement(att,t);return m.createElement("div",{ref:s,className:"".concat(r,"-selector"),onClick:c},d)};const ltt=itt;var stt=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o1?Et-1:0),Ft=1;Ft1?Et-1:0),Ft=1;Ft1?arguments[1]:void 0)}});var _tt=_o,mtt=_tt("Array","findIndex"),xtt=Nn,btt=mtt,VC=Array.prototype,ytt=function(e){var t=e.findIndex;return e===VC||xtt(VC,e)&&t===VC.findIndex?btt:t},wtt=ytt,Dtt=wtt,Itt=Dtt,Ftt=Itt,$tt=Ftt,Ett=$tt;(function(e){e.exports=Ett})(vtt),function(e){e.exports=WC}(ptt);const ru=Vt(HC);var KC={},Stt={get exports(){return KC},set exports(e){KC=e}},qC={},Ctt={get exports(){return qC},set exports(e){qC=e}},sV=io,Ttt=_r,cV=Ir,Rtt=Yg,Ott=Mg,Att=Al,ktt=Cg.f,uV=cV(ktt),Ptt=cV([].push),Ntt=sV&&Ttt(function(){var e=Object.create(null);return e[2]=2,!uV(e,2)}),dV=function(e){return function(t){for(var r=Att(t),n=Ott(r),o=Ntt&&Rtt(r)===null,a=n.length,i=0,l=[],s;a>i;)s=n[i++],(!sV||(o?s in r:uV(r,s)))&&Ptt(l,e?[s,r[s]]:r[s]);return l}},Mtt={entries:dV(!0),values:dV(!1)},ztt=Ne,Ltt=Mtt.values;ztt({target:"Object",stat:!0},{values:function(t){return Ltt(t)}});var Btt=hn,jtt=Btt.Object.values,Utt=jtt,Htt=Utt,Wtt=Htt,Vtt=Wtt,Ktt=Vtt,qtt=Ktt;(function(e){e.exports=qtt})(Ctt),function(e){e.exports=qC}(Stt);const Ytt=Vt(KC);var fV=m.forwardRef(function(e,t){var r=e.height,n=e.offsetY,o=e.offsetX,a=e.children,i=e.prefixCls,l=e.onInnerResize,s=e.innerProps,c=e.rtl,d=e.extra,f={},v={display:"flex",flexDirection:"column"};if(n!==void 0){var g;f={height:r,position:"relative",overflow:"hidden"},v=ae(ae({},v),(g={transform:"translateY(".concat(n,"px)")},je(g,c?"marginRight":"marginLeft",-o),je(g,"position","absolute"),je(g,"left",0),je(g,"right",0),je(g,"top",0),g))}return m.createElement("div",{style:f},m.createElement(yi,{onResize:function(_){var b=_.offsetHeight;b&&l&&l()}},m.createElement("div",Ee({style:v,className:_e(je({},"".concat(i,"-holder-inner"),i)),ref:t},s),a,d)))});fV.displayName="Filler";const Gtt=fV;function pV(e,t){var r="touches"in e?e.touches[0]:e;return r[t?"pageX":"pageY"]}var Xtt=m.forwardRef(function(e,t){var r,n=e.prefixCls,o=e.rtl,a=e.scrollOffset,i=e.scrollRange,l=e.onStartMove,s=e.onStopMove,c=e.onScroll,d=e.horizontal,f=e.spinSize,v=e.containerSize,g=e.style,h=e.thumbStyle,_=m.useState(!1),b=be(_,2),x=b[0],w=b[1],D=m.useState(null),I=be(D,2),$=I[0],F=I[1],C=m.useState(null),R=be(C,2),k=R[0],P=R[1],U=!o,B=m.useRef(null),z=m.useRef(null),A=m.useState(!1),M=be(A,2),N=M[0],T=M[1],O=m.useRef(),j=function(){clearTimeout(O.current),T(!0),O.current=setTimeout(function(){T(!1)},3e3)},K=i-v||0,Q=v-f||0,Y=m.useMemo(function(){if(a===0||K===0)return 0;var re=a/K;return re*Q},[a,K,Q]),X=function(ie){ie.stopPropagation(),ie.preventDefault()},G=m.useRef({top:Y,dragging:x,pageY:$,startTop:k});G.current={top:Y,dragging:x,pageY:$,startTop:k};var H=function(ie){w(!0),F(pV(ie,!!d)),P(G.current.top),l(),ie.stopPropagation(),ie.preventDefault()};m.useEffect(function(){var re=function(fe){fe.preventDefault()},ie=B.current,ce=z.current;return ie.addEventListener("touchstart",re),ce.addEventListener("touchstart",H),function(){ie.removeEventListener("touchstart",re),ce.removeEventListener("touchstart",H)}},[]);var V=m.useRef();V.current=K;var Z=m.useRef();Z.current=Q,m.useEffect(function(){if(x){var re,ie=function(fe){var ve=G.current,he=ve.dragging,ge=ve.pageY,$e=ve.startTop;if(dl.cancel(re),he){var ue=pV(fe,!!d)-ge,Me=$e;!U&&d?Me-=ue:Me+=ue;var Pe=V.current,Qe=Z.current,it=Qe?Me/Qe:0,Je=Math.ceil(it*Pe);Je=Math.max(Je,0),Je=Math.min(Je,Pe),re=dl(function(){c(Je,d)})}},ce=function(){w(!1),s()};return window.addEventListener("mousemove",ie),window.addEventListener("touchmove",ie),window.addEventListener("mouseup",ce),window.addEventListener("touchend",ce),function(){window.removeEventListener("mousemove",ie),window.removeEventListener("touchmove",ie),window.removeEventListener("mouseup",ce),window.removeEventListener("touchend",ce),dl.cancel(re)}}},[x]),m.useEffect(function(){j()},[a]),m.useImperativeHandle(t,function(){return{delayHidden:j}});var te="".concat(n,"-scrollbar"),J={position:"absolute",visibility:N?void 0:"hidden"},ne={position:"absolute",background:"rgba(0, 0, 0, 0.5)",borderRadius:99,cursor:"pointer",userSelect:"none"};return d?(J.height=8,J.left=0,J.right=0,J.bottom=0,ne.height="100%",ne.width=f,U?ne.left=Y:ne.right=Y):(J.width=8,J.top=0,J.bottom=0,U?J.right=0:J.left=0,ne.width="100%",ne.height=f,ne.top=Y),m.createElement("div",{ref:B,className:_e(te,(r={},je(r,"".concat(te,"-horizontal"),d),je(r,"".concat(te,"-vertical"),!d),je(r,"".concat(te,"-visible"),N),r)),style:ae(ae({},J),g),onMouseDown:X,onMouseMove:j},m.createElement("div",{ref:z,className:_e("".concat(te,"-thumb"),je({},"".concat(te,"-thumb-moving"),x)),style:ae(ae({},ne),h),onMouseDown:H}))});const vV=Xtt;function Ztt(e){var t=e.children,r=e.setRef,n=m.useCallback(function(o){r(o)},[]);return m.cloneElement(t,{ref:n})}function Qtt(e,t,r,n,o,a,i){var l,s=i.getKey;return $t(l=kt(e).call(e,t,r+1)).call(l,function(c,d){var f=t+d,v=a(c,f,{style:{width:n}}),g=s(c);return m.createElement(Ztt,{key:g,setRef:function(_){return o(c,_)}},v)})}function Jtt(e,t,r){var n=e.length,o=t.length,a,i;if(n===0&&o===0)return null;n1&&arguments[1]!==void 0?arguments[1]:!1,s=i<0&&a.current.top||i>0&&a.current.bottom;return l&&s?(clearTimeout(n.current),r.current=!1):(!s||r.current)&&o(),!r.current&&s}};function trt(e,t,r,n,o){var a=m.useRef(0),i=m.useRef(),l=m.useRef(),s=m.useRef(!1),c=gV(t,r);function d(b,x){dt(i.current)||dl.cancel(i.current),a.current+=x,l.current=x,!c(x)&&(Oz()||b.preventDefault(),i.current=dl(function(){var w=s.current?10:1;o(a.current*w),a.current=0}))}function f(b,x){o(x,!0),Oz()||b.preventDefault()}var v=m.useRef(null),g=m.useRef();function h(b){if(e){dt(g.current)||dl.cancel(g.current),g.current=dl(function(){v.current=null},2);var x=b.deltaX,w=b.deltaY,D=b.shiftKey,I=x,$=w;(v.current==="sx"||!v.current&&D&&w&&!x)&&(I=w,$=0,v.current="sx");var F=Math.abs(I),C=Math.abs($);v.current===null&&(v.current=n&&F>C?"x":"y"),v.current==="y"?d(b,$):f(b,I)}}function _(b){e&&(s.current=b.detail===l.current)}return[h,_]}function rrt(e,t,r,n){var o=m.useMemo(function(){return[new so,[]]},[e,r.id,n]),a=be(o,2),i=a[0],l=a[1],s=function(d){var f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:d,v,g=i.get(d),h=i.get(f);if(g===void 0||h===void 0)for(var _=e.length,b=l.length;b<_;b+=1){var x=e[b],w=t(x);i.set(w,b);var D=(v=r.get(w))!==null&&v!==void 0?v:n;if(l[b]=(l[b-1]||0)+D,w===d&&(g=b),w===f&&(h=b),g!==void 0&&h!==void 0)break}return{top:l[g-1]||0,bottom:l[h]}};return s}var nrt=function(){function e(){Br(this,e),this.id=0,this.maps=Object.create(null)}return jr(e,[{key:"set",value:function(r,n){this.maps[r]=n,this.id+=1}},{key:"get",value:function(r){return this.maps[r]}}]),e}();const ort=nrt;function art(e,t,r){var n=m.useState(0),o=be(n,2),a=o[0],i=o[1],l=m.useRef(new so),s=m.useRef(new ort),c=m.useRef();function d(){dt(c.current)||dl.cancel(c.current)}function f(){var g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;d();var h=function(){l.current.forEach(function(b,x){if(b&&b.offsetParent){var w=iUe(b),D=w.offsetHeight;s.current.get(x)!==D&&s.current.set(x,w.offsetHeight)}}),i(function(b){return b+1})};g?h():c.current=dl(h)}function v(g,h){var _=e(g),b=l.current.get(_);h?(l.current.set(_,h),f()):l.current.delete(_),!b!=!h&&(h?t?.(g):r?.(g))}return m.useEffect(function(){return d},[]),[v,f,s.current,a]}var irt=14/15;function lrt(e,t,r){var n=m.useRef(!1),o=m.useRef(0),a=m.useRef(),i=m.useRef(),l,s=function(v){if(n.current){var g=Math.ceil(v.touches[0].pageY),h=o.current-g;o.current=g,r(h)&&v.preventDefault(),clearInterval(i.current),i.current=window.setInterval(function(){h*=irt,(!r(h,!0)||Math.abs(h)<=.1)&&clearInterval(i.current)},16)}},c=function(){n.current=!1,l()},d=function(v){l(),v.touches.length===1&&!n.current&&(n.current=!0,o.current=Math.ceil(v.touches[0].pageY),a.current=v.target,a.current.addEventListener("touchmove",s),a.current.addEventListener("touchend",c))};l=function(){a.current&&(a.current.removeEventListener("touchmove",s),a.current.removeEventListener("touchend",c))},As(function(){var f;return e&&((f=t.current)===null||f===void 0||f.addEventListener("touchstart",d)),function(){var v;(v=t.current)===null||v===void 0||v.removeEventListener("touchstart",d),l(),clearInterval(i.current)}},[e])}var srt=10;function crt(e,t,r,n,o,a,i,l){var s=m.useRef(),c=m.useState(),d=be(c,2),f=d[0],v=d[1];return As(function(){if(f&&f.times=0;A-=1){var M=o(t[A]),N=r.get(M);if(N===void 0){w=!0;break}if(z-=N,z<=0)break}switch($){case"top":I=C-b;break;case"bottom":I=R-x+b;break;default:{var T=e.current.scrollTop,O=T+x;CO&&(D="bottom")}}I!==null&&i(I),I!==f.lastTop&&(w=!0)}w&&v(ae(ae({},f),{times:f.times+1,targetAlign:D,lastTop:I}))}},[f,e.current]),function(g){if(g==null){l();return}if(dt(s.current)||dl.cancel(s.current),typeof g=="number")i(g);else if(g&&Mn(g)==="object"){var h,_=g.align;"index"in g?h=g.index:h=ru(t).call(t,function(w){return o(w)===g.key});var b=g.offset,x=b===void 0?0:b;v({times:0,index:h,offset:x,originAlign:_})}}}var urt=20;function hV(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=e/t*e;return isNaN(r)&&(r=0),r=Math.max(r,urt),Math.floor(r)}var drt=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);oa||!!_),K=h==="rtl",Q=_e(k,je({},"".concat(k,"-rtl"),K),n),Y=d||frt,X=m.useRef(null),G=m.useRef(null),H=m.useState(0),V=be(H,2),Z=V[0],te=V[1],J=m.useState(0),ne=be(J,2),re=ne[0],ie=ne[1],ce=m.useState(!1),oe=be(ce,2),fe=oe[0],ve=oe[1],he=function(){ve(!0)},ge=function(){ve(!1)},$e={getKey:P};function ue(Ae){te(function(ke){var ye;typeof Ae=="function"?ye=Ae(ke):ye=Ae;var Ue=et(ye);return X.current&&(X.current.scrollTop=Ue),Ue})}var Me=m.useRef({start:0,end:Y.length}),Pe=m.useRef(),Qe=ert(Y,P),it=be(Qe,1),Je=it[0];Pe.current=Je;var He=m.useMemo(function(){var Ae;if(!T)return{scrollHeight:void 0,start:0,end:Y.length-1,offset:void 0};if(!j)return{scrollHeight:((Ae=G.current)===null||Ae===void 0?void 0:Ae.offsetHeight)||0,start:0,end:Y.length-1,offset:void 0};for(var ke=0,ye,Ue,ut,ir=Y.length,Rr=0;Rr=Z&&ye===void 0&&(ye=Rr,Ue=ke),er>Z+a&&ut===void 0&&(ut=Rr),ke=er}return ye===void 0&&(ye=0,Ue=0,ut=Math.ceil(a/i)),ut===void 0&&(ut=Y.length-1),ut=Math.min(ut+1,Y.length-1),{scrollHeight:ke,start:ye,end:ut,offset:Ue}},[j,T,Z,Y,N,a]),Ce=He.scrollHeight,Le=He.start,ze=He.end,ft=He.offset;Me.current.start=Le,Me.current.end=ze;var pt=m.useState({width:0,height:a}),wt=be(pt,2),st=wt[0],xt=wt[1],we=function(ke){xt({width:ke.width||ke.offsetWidth,height:ke.height||ke.offsetHeight})},Yt=m.useRef(null),Ut=m.useRef(null),Tt=m.useMemo(function(){return hV(st.width,_)},[st.width,_]),It=m.useMemo(function(){return hV(st.height,Ce)},[st.height,Ce]),at=Ce-a,vt=m.useRef(at);vt.current=at;function et(Ae){var ke=Ae;return V9(vt.current)||(ke=Math.min(ke,vt.current)),ke=Math.max(ke,0),ke}var qe=Z<=0,Ve=Z>=at,Ke=gV(qe,Ve),Rt=function(){return{x:K?-re:re,y:Z}},xe=m.useRef(Rt()),Te=xh(function(){if(D){var Ae=Rt();(xe.current.x!==Ae.x||xe.current.y!==Ae.y)&&(D(Ae),xe.current=Ae)}});function We(Ae,ke){var ye=Ae;ke?(Kr.flushSync(function(){ie(ye)}),Te()):ue(ye)}function Xe(Ae){var ke=Ae.currentTarget.scrollTop;ke!==Z&&ue(ke),w?.(Ae),Te()}var ot=function(ke){var ye=ke,Ue=_?_-st.width:0;return ye=Math.max(ye,0),ye=Math.min(ye,Ue),ye},gt=xh(function(Ae,ke){ke?(Kr.flushSync(function(){ie(function(ye){var Ue=ye+(K?-Ae:Ae);return ot(Ue)})}),Te()):ue(function(ye){var Ue=ye+Ae;return Ue})}),Et=trt(T,qe,Ve,!!_,gt),Qt=be(Et,2),Ft=Qt[0],ct=Qt[1];lrt(T,X,function(Ae,ke){if(Ke(Ae,ke))return!1;var ye={preventDefault:function(){},deltaY:Ae};return Ft(ye),!0}),As(function(){function Ae(ye){T&&ye.preventDefault()}var ke=X.current;return ke.addEventListener("wheel",Ft),ke.addEventListener("DOMMouseScroll",ct),ke.addEventListener("MozMousePixelScroll",Ae),function(){ke.removeEventListener("wheel",Ft),ke.removeEventListener("DOMMouseScroll",ct),ke.removeEventListener("MozMousePixelScroll",Ae)}},[T]),As(function(){_&&ie(function(Ae){return ot(Ae)})},[st.width,_]);var Bt=function(){var ke,ye;(ke=Yt.current)===null||ke===void 0||ke.delayHidden(),(ye=Ut.current)===null||ye===void 0||ye.delayHidden()},Mt=crt(X,Y,M,i,P,function(){return A(!0)},ue,Bt);m.useImperativeHandle(t,function(){return{getScrollInfo:Rt,scrollTo:function(ke){function ye(Ue){return Ue&&Mn(Ue)==="object"&&("left"in Ue||"top"in Ue)}ye(ke)?(ke.left!==void 0&&ie(ot(ke.left)),Mt(ke.top)):Mt(ke)}}}),As(function(){if(I){var Ae=kt(Y).call(Y,Le,ze+1);I(Ae,Y)}},[Le,ze,Y]);var St=rrt(Y,P,M,i),zt=F?.({start:Le,end:ze,virtual:j,offsetX:re,offsetY:ft,rtl:K,getSize:St}),Jt=Qtt(Y,Le,ze,_,z,f,$e),vr={};a&&(vr=ae(je({},s?"height":"maxHeight",a),prt),T&&(vr.overflowY="hidden",_&&(vr.overflowX="hidden"),fe&&(vr.pointerEvents="none")));var fn={};return K&&(fn.dir="rtl"),m.createElement("div",Ee({style:ae(ae({},c),{position:"relative"}),id:o,className:Q},fn,yo(R,{aria:!0,data:!0})),m.createElement(yi,{onResize:we},m.createElement(x,{className:"".concat(k,"-holder"),style:vr,ref:X,onScroll:Xe,onMouseEnter:Bt},m.createElement(Gtt,{prefixCls:k,height:Ce,offsetX:re,offsetY:ft,scrollWidth:_,onInnerResize:A,ref:G,innerProps:$,rtl:K,extra:zt},Jt))),j&&Ce>a&&m.createElement(vV,{ref:Yt,prefixCls:k,scrollOffset:Z,scrollRange:Ce,rtl:K,onScroll:We,onStartMove:he,onStopMove:ge,spinSize:It,containerSize:st.height,style:C?.verticalScrollBar,thumbStyle:C?.verticalScrollBarThumb}),j&&_&&_>st.width&&m.createElement(vV,{ref:Ut,prefixCls:k,scrollOffset:re,scrollRange:_,rtl:K,onScroll:We,onStartMove:he,onStopMove:ge,spinSize:Tt,containerSize:st.width,horizontal:!0,style:C?.verticalScrollBar,thumbStyle:C?.verticalScrollBarThumb}))}var _V=m.forwardRef(vrt);_V.displayName="List";const mV=_V;var grt=m.createContext(null);const xV=grt;var hrt=function(){var t=E.useContext(xV);return t===null&&console.warn("BaseSelect must be wrapped by SelectContext.Provider"),t};const _rt=hrt;var mrt=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o1&&arguments[1]!==void 0?arguments[1]:1,he=O.length,ge=0;ge1&&arguments[1]!==void 0?arguments[1]:{},r=t.fieldNames,n=t.childrenAsData,o=[],a=DV(r,!1),i=a.label,l=a.value,s=a.options,c=a.groupLabel;function d(f,v){f.forEach(function(g){if(v||!(s in g)){var h=g[l];o.push({key:wV(g,o.length),groupOption:v,data:g,label:g[i],value:h})}else{var _=g[c];_===void 0&&n&&(_=g.label),o.push({key:wV(g,o.length),group:!0,data:g,label:_}),d(g[s],!0)}})}return d(e,!1),o}function YC(e){var t=ae({},e);return"props"in t||Object.defineProperty(t,"props",{get:function(){return console.warn("Return type is option instead of Option instance. Please read value directly instead of reading from `props`."),t}}),t}function GC(e,t){var r;return bo(r=Th(e).join("").toUpperCase()).call(r,t)}const Irt=function(e,t,r,n,o){var a=m.useContext(wrt);return m.useMemo(function(){if(!r||n===!1)return e;var i=t.options,l=t.label,s=t.value,c=[],d=typeof n=="function",f=typeof a=="function",v=r.toUpperCase(),g=d?n:f?a:function(_,b){return o?GC(b[o],v):b[i]?GC(b[l!=="children"?l:"label"],v):GC(b[s],v)},h=d?function(_){return YC(_)}:function(_){return _};return e.forEach(function(_){if(_[i]){var b=g(r,h(_));if(b)c.push(_);else{var x,w=ul(x=_[i]).call(x,function(D){return g(r,h(D))});w.length&&c.push(ae(ae({},_),je({},i,w)))}return}g(r,h(_))&&c.push(_)}),c},[e,n,o,r,t])};var IV=0;function Frt(){var e=IV;return IV+=1,e}function $rt(e){var t=m.useState(function(){return"x_select_".concat(Frt())}),r=be(t,1),n=r[0];return e||n}var FV=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o1&&arguments[1]!==void 0?arguments[1]:!1;return ul(t=$t(r=kz(e)).call(r,function(o,a){if(!m.isValidElement(o)||!o.type)return null;var i=o,l=i.type.isSelectOptGroup,s=i.key,c=i.props,d=c.children,f=FV(c,["children"]);return n||!l?Ert(o):ae(ae({key:"__RC_SELECT_GRP__".concat(s===null?a:s,"__"),label:s},f),{options:$V(d)})})).call(t,function(o){return o})}function Srt(e,t){var r=typeof qu<"u"&&Yu(e)||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Crt(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return a=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!a&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function Crt(e,t){var r;if(e){if(typeof e=="string")return EV(e,t);var n=kt(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return ol(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return EV(e,t)}}function EV(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r1&&arguments[1]!==void 0?arguments[1]:!1,v=Srt(d),g;try{for(v.s();!(g=v.n()).done;){var h=g.value;!Nt(h,r.options)||f?(i.set(Nt(h,r.value),h),s(l,h,Nt(h,r.label)),s(l,h,n),s(l,h,o)):c(Nt(h,r.options),!0)}}catch(_){v.e(_)}finally{v.f()}}return c(a),{options:a,valueOptions:i,labelOptions:l}},[e,t,r,n,o])}function SV(e){var t=m.useRef();t.current=e;var r=m.useCallback(function(){return t.current&&t.current.apply(t,arguments)},[]);return r}var Rrt=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o=Ce||ve(Ce)}},oe=function(){i<=1||ve(i-1)},fe=function(){if(!dt(r)){var Ce=Math.ceil(r/Y);if(i>=Ce)return}d||ve(i+1)},ve=function(Ce){B&&B(Ce),Z(Ce)},he=function(Ce){Z(Ce)},ge=function(Ce){ve(Ce)},$e=function(){j.current&&j.current.blur()},ue=function(){if(Fr(k)){var Ce=Cn(s,function(Le){return{label:k(Le)||"",value:Le}});return E.createElement(QC,{size:te,className:_e("size-combo",ne),options:Ce,value:Y,placeholder:I,onChange:function(ze){re(ze)},dropdownClassName:D})}},Me=function(){return E.createElement("span",{className:"count"},Fr(P)?P(r):"")},Pe=function(){var Ce=Q1(Y,r);if(Fr(R))return R(i,dt(r)?void 0:Ce);if(!dt(r))return E.createElement("div",{className:"page-jump"},v?E.createElement(E.Fragment,null,E.createElement("div",{className:_e("page-input-wrapper",ne)},E.createElement(PC,{className:"page-input",value:V,min:1,max:Ce,size:"small",hasControlBtn:!1,onChange:he,onBlur:ge,onPressEnter:$e,ref:j}),E.createElement("div",{className:"fake-placeholder"},V)),E.createElement("span",{className:"total-page"}," / ".concat(Ce))):E.createElement("span",{className:"jump-page"},dd.replaceLocale(O.currentPage,{page:V})))},Qe=function(){var Ce=[];return w&&Ce.push(E.createElement("div",{key:"first",className:_e("page-turn-first",ne,{"page-btn-disabled":i<=1}),onClick:ie},E.createElement(tVe,null))),Ce.push(E.createElement("div",{key:"pre",className:_e("page-turn-pre",ne,{"page-btn-disabled":i<=1}),onClick:oe},E.createElement(I3,null))),E.createElement("div",{className:_e("page-turn","page-turn-left",{jumpable:Wo(Ce)===2})},Ce)},it=function(){var Ce=Q1(Y,r),Le=i>=Ce||d,ze=[];return ze.push(E.createElement("div",{key:"next",className:_e("page-turn-next",ne,{"page-btn-disabled":Le}),onClick:fe},E.createElement(E1,null))),!dt(r)&&w&&v&&ze.push(E.createElement("div",{key:"last",className:_e("page-turn-last",ne,{"page-btn-disabled":Le}),onClick:ce},E.createElement(rVe,null))),E.createElement("div",{className:_e("page-turn","page-turn-right",{jumpable:Wo(ze)===2})},ze)},Je=ae(ae({},M?.style),_);return E.createElement("div",Ee({className:_e(J,je({},"".concat(te),te==="small"),b,M?.className),id:x,style:Je},z),E.createElement("div",{className:"pagination-left"},ue(),Me()),E.createElement("div",{className:"pagination-right"},Qe(),Pe(),it()))};const CV=Hrt;var Wrt=function(t){var r=t.autoWrap,n=r===void 0?!0:r,o=t.allowDeselect,a=o===void 0?!1:o,i=t.defaultChecked,l=i===void 0?!1:i,s=t.checked,c=t.disabled,d=c===void 0?!1:c,f=t.autoFocus,v=f===void 0?!1:f,g=t.tabFocus,h=g===void 0?!1:g,_=t.hasPadding,b=_===void 0?!0:_,x=t.className,w=t.children,D=t.style,I=t.id,$=t.title,F=t.value,C=t.prefixCls,R=t.onClick,k=t.onChange,P=m.useRef(),U=xi(!1,{defaultValue:l,value:s}),B=be(U,2),z=B[0],A=B[1],M=To("radio"),N=qt("radio",C),T=function(G,H){return function(V){R?.(V),!(d||!k)&&(H?a&&k(null,V):k(G,V))}},O=function(G,H,V){d||!k||G.key===La.ENTER&&(G.preventDefault(),A(function(Z){if(Z){if(a)return!1}else return!Z;return!0}),V?a&&k(null):k(H))},j=function(){P.current&&P.current.blur()},K=function(){return!d&&h};m.useEffect(function(){var X;v&&((X=P.current)===null||X===void 0||X.focus())},[v]);var Q=_e(N,"".concat(N,"-css-var"),x,M?.className,{"radio-disable":d,"radio-checked":z,"is-only-icon":!w,"auto-wrap":n,"has-default-padding":b}),Y=ae(ae({},M?.style),D);return m.createElement("div",Ee({className:Q,style:Y,id:I},yo(t,{aria:!0,data:!0})),m.createElement("div",{className:"".concat(N,"-wrapper"),onClick:T(F,z),tabIndex:K()?0:-1,onKeyDown:function(G){return O(G,F,z)},onMouseUp:j,ref:P,title:$},m.createElement("span",{className:"radio-check-icon"}),w&&m.createElement("span",{className:"radio-text"},w)))};const TV=Wrt;var JC={},Vrt={get exports(){return JC},set exports(e){JC=e}},eT={},Krt={get exports(){return eT},set exports(e){eT=e}},qrt=Uo,RV=T0,Yrt=ui,Grt=function(t){for(var r=qrt(this),n=Yrt(r),o=arguments.length,a=RV(o>1?arguments[1]:void 0,n),i=o>2?arguments[2]:void 0,l=i===void 0?n:RV(i,n);l>a;)r[a++]=t;return r},Xrt=Ne,Zrt=Grt;Xrt({target:"Array",proto:!0},{fill:Zrt});var Qrt=_o,Jrt=Qrt("Array","fill"),ent=Nn,tnt=Jrt,tT=Array.prototype,rnt=function(e){var t=e.fill;return e===tT||ent(tT,e)&&t===tT.fill?tnt:t},nnt=rnt,ont=nnt,ant=ont,int=ant,lnt=int,snt=lnt;(function(e){e.exports=snt})(Krt),function(e){e.exports=eT}(Vrt);const rT=Vt(JC);var cnt=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o0,O={},N=Yt("");v||wn(O,{onClick:function(T){var B;D?.(T),i?.(t.item,T),(B=R.onAfterSelect)===null||B===void 0||B.call(R,t.item,T)},onMouseEnter:F,onMouseLeave:S});var A=pe("".concat(n,"-item"),s,{disabled:v,selected:h,"has-children":P,"custom-content":!ut(_)}),z=function(T,B){return $.createElement("ul",{className:pe(n),style:ue({},o(B))},En(T,function(L,K){var X=a(L,K);return $.createElement(e,{prefixCls:n,key:X,item:L,level:B,onGetMenuWidthStyle:o,onGetItemKey:a,onAfterSelect:i})}))},k=function(){return ut(_)?$.createElement($.Fragment,null,w&&$.createElement("span",{className:"item-icon"},w),b&&$.createElement("span",{className:"item-label"},b),P?$.createElement(Gy,{className:"expand-icon"}):h&&$.createElement(OHe,{className:"check-icon"})):br(_)?_(t.item):_};return g?$.createElement(kW,we({className:s},pa(I,{aria:!0,data:!0}))):!P||v?$.createElement("li",we({className:A,style:d,title:f},O,pa(I,{aria:!0,data:!0})),k()):$.createElement(tC,{effect:"light",className:pe("".concat(N,"-sub-menu"),c),content:z(y,r+1),placement:"right-top",arrow:!1,hasPadding:!1,offset:[4,0],trigger:"hover"},$.createElement("li",we({className:A,style:d,title:f},O,pa(I,{aria:!0,data:!0})),k()))};const Ntt=Ptt;var Mtt=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);ak?(A=O,I.current="x"):(A=N,I.current="y"),t(-A,-A)&&P.preventDefault()}var R=m.useRef({onTouchStart:D,onTouchMove:F,onTouchEnd:S,onWheel:C});m.useEffect(function(){var P,O;function N(M){var T;(T=R.current)===null||T===void 0||T.onTouchStart(M)}function A(M){var T;(T=R.current)===null||T===void 0||T.onTouchMove(M)}function z(M){var T;(T=R.current)===null||T===void 0||T.onTouchEnd(M)}function k(M){var T;(T=R.current)===null||T===void 0||T.onWheel(M)}return document.addEventListener("touchmove",A,{passive:!1}),document.addEventListener("touchend",z,{passive:!0}),(P=e.current)===null||P===void 0||P.addEventListener("touchstart",N,{passive:!0}),(O=e.current)===null||O===void 0||O.addEventListener("wheel",k,{passive:!1}),function(){document.removeEventListener("touchmove",A),document.removeEventListener("touchend",z)}},[])}var Ztt=function(t){var r=t.enable,n=t.headerRef,a=t.activeKey,o=t.theme,i=m.useState({}),l=me(i,2),s=l[0],c=l[1],d=function(){if(!n.current)return{};var g=n.current.querySelector(".tab-header-active"),_=n.current.querySelector(".tab-header-item")||{},w=Qa.getDomOffset(g,_)||{left:0},b=w.left,y=kt(g,"offsetWidth",0);c({width:y,left:"".concat(b,"px")})};m.useEffect(function(){r&&setTimeout(function(){d()})},[a,o]);var f=function(){return r?$.createElement("div",{className:"segment-animate-dot",style:s}):null},v=fp(function(){r&&d()},200);return[f(),v]};const Qtt=Ztt;var BW=function(t,r){var n="";return $.Children.forEach(t,function(a){kt(a,"props.disable")||ut(a?.key)||(a?.key===r?n=r:!n&&a?.key&&(n=a.key))}),n},Jtt=function(t){var r=t.defaultActiveKey,n=t.activeKey,a=t.onTabClick,o=t.onTabActive,i=t.children,l=m.useState(function(){return BW(i,r)}),s=me(l,2),c=s[0],d=s[1];m.useEffect(function(){d(n||BW(i,c))},[n,i]);var f=function(h,g){var _=g.props.disable;if(!_){var w=g.key,b=!1;if(a){var y=a(w,h);y!==!1&&(b=!0)}else b=!0;w!==c&&b&&(d(w),o&&o(w,h))}};return[c,f]};const jW=Jtt;var ert=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a=qe)return!1;var dt=Ie-qe;return K(function(mt){var Rt=mt+lt;return Math.min(Math.max(Rt,dt),0)}),!0});var Be=function(){return ut(O.current)?0:O.current.scrollWidth},Pe=function(){return ut(O.current)?0:O.current.clientWidth},Ge=function(){if(P.current){var Ie=P.current.querySelector(".next"),qe=eg(P.current.querySelectorAll(".tab-header-item"));if(!(!Ie||!qe)){var dt=qe.offsetWidth,mt=Qa.getDomOffset(qe,Ie);if(-mt.left>dt){var Rt=Pe(),Gt=Be();K(Rt-Gt)}}}},ke=function(){return c&&!s&&!k},Ze=function(){return L<0},Ke=function(){if(L===0)return!0;var Ie=Pe()-Be();return L>Ie},ct=function(){if(!s){var Ie=P.current?P.current.offsetWidth:0,qe=Be()>Ie;if(M(qe),qe){gt(),Ge();return}K(0)}},Xe=fp(function(){ct()},200),ot=function(Ie,qe){if(ut(Ie)||!P.current)return null;var dt=P.current.querySelector(".prev"),mt=P.current.querySelector(".next");if(!(!dt||!mt)){var Rt=Qa.getDomOffset(Ie,dt),Gt=Qa.getDomOffset(Ie,mt);if(!Rt||!Gt)return null;var Qe=o!=="default"?4:0,He=Ie.offsetWidth+Qe*2,je=dt.offsetWidth;Rt.left=Math.round(Rt.left-Qe)-je,Gt.left=Math.round(Gt.left-Qe);var ze={prevOffset:Rt,nextOffset:Gt,elWidth:He};return Gt.left<0&&Gt.left+He>0||Gt.left>=0&&qe===Nl.RIGHT||Gt.left>0&&ut(qe)?ue(ue({},ze),{offset:Nl.RIGHT}):Rt.left<0&&Rt.left+He>0||Rt.left<0&&qe===Nl.LEFT||Rt.left+He<0&&ut(qe)?ue(ue({},ze),{offset:Nl.LEFT}):null}},tt=function(Ie,qe){if(!k||!P.current)return!1;var dt=ot(Ie,qe);if(!ut(dt)){var mt=dt.prevOffset,Rt=dt.nextOffset,Gt=dt.offset,Qe=dt.elWidth;Gt===Nl.RIGHT&&K(function(He){return He-(Qe+Rt.left)}),Gt===Nl.LEFT&&K(function(He){return He-mt.left})}},Dt=function(Ie){var qe=Math.min(L+Pe(),0);K(qe),y&&y(Ie),ye()},Bt=function(Ie){var qe=Pe(),dt=Be(),mt=L-qe,Rt=qe-dt;mt=Math.max(mt,Rt),K(mt),D&&D(Ie),ye()},gt=function(){G(!Ze()),Z(!Ke())},Tt=function(Ie){var qe;if(P.current){var dt=P.current.querySelectorAll(".tab-header-item")||[],mt={};return Ct(qe=$.Children).call(qe,d,function(Rt,Gt){if(Rt){var Qe=Rt.key||Gt;mt[Qe]=Rt}}),iE(En(dt,function(Rt,Gt){var Qe=ot(Rt,Ie),He=Rt.getAttribute("data-tab-id")||Gt,je=mt[He];if(Qe&&Qe.offset===Ie&&je){var ze=je.props,Ve=ze.disable,Ae=ze.tab;if(Nn(Ae))return;var Fe=dj(Ae)?Ae:$.createElement(NW,Ae);return $.createElement("span",{onClick:function($t){ye(),R($t,je),tt(Rt||$t.currentTarget,Ie)},key:je.key,className:pe("tab-hide-popover-item",{disabled:Ve})},Fe)}}))}},ye=function(){re(!1),fe(!1)},er=function(Ie,qe,dt,mt){var Rt=Tt(qe),Gt=dt;return Nn(Rt)&&(Gt=!1),$.createElement(b1,{visible:Gt,arrow:!1,onVisibleChange:mt,content:$.createElement("div",{className:"tab-hide-popover-list"},Rt),placement:"bottom",className:pe("tab-hide-popover-wrapper",b)},Ie)},ft=function(){return $.createElement(vi,{onResize:function(qe){(qe.offsetWidth!==0||qe.offsetHeight!==0)&&(Xe(),De())}},$.createElement(MW,we({},t,{tabHeaderClassName:pe(_,{"has-arrow":k}),activeKey:C,onItemClick:R,headerRef:P,headerListRef:O,headerListStyle:{transform:"translate(".concat(L,"px, 0)")},prefixEle:k&&er($.createElement("div",{className:pe("tab-arrow","prev",{disabled:q}),onClick:Dt},$.createElement(H6,{className:"arrow-icon"})),Nl.LEFT,ae,re),suffixEle:$.createElement($.Fragment,null,k&&er($.createElement("div",{className:pe("tab-arrow","next",{disabled:Y}),onClick:Bt},$.createElement(Gy,{className:"arrow-icon"})),Nl.RIGHT,oe,fe),ke()&&$.createElement("div",{className:pe("tab-extra-content",w)},c)),lastItemEle:_e}),d))};if(!C)return null;var nt=Oe,Ft=pe("".concat(v," horizontal-tab"),f,(r={},Ee(r,"size-".concat(nt),nt),Ee(r,"theme-".concat(o),o),Ee(r,"is-stretch",s),r));return $.createElement("div",we({className:Ft,style:g,id:h},pa(F,{aria:!0,data:!0})),ft(),$.createElement(PW,{destroyInactive:l,activeKey:C},d))};const rrt=trt;var nrt=function(t){var r=t.className,n=t.children,a=t.style,o=t.active,i=o===void 0?!1:o,l=t.forceRender,s=l===void 0?!1:l,c=t.destroyInactive,d=c===void 0?!0:c,f=t.prefixCls,v=Yt("tab",f),h=pe("".concat(v,"-content"),r),g=m.useState(s),_=me(g,2),w=_[0],b=_[1];if(m.useEffect(function(){i?b(!0):d&&b(!1)},[i,d]),d&&!i)return null;var y={};return i||(y.display="none"),$.createElement("div",{className:h,style:wn(y,a)},(i||w||s)&&n)};const art=nrt;var ort=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a0?" ".concat(c[5]):""," {")),d+=l(c),f&&(d+="}"),c[2]&&(d+="}"),c[4]&&(d+="}"),d}).join("")},s.i=function(c,d,f,v,h){typeof c=="string"&&(c=[[null,c,void 0]]);var g={};if(f)for(var _=0;_0?" ".concat(y[5]):""," {").concat(y[1],"}")),y[5]=h),d&&(y[2]&&(y[1]="@media ".concat(y[2]," {").concat(y[1],"}")),y[2]=d),v&&(y[4]?(y[1]="@supports (".concat(y[4],") {").concat(y[1],"}"),y[4]=v):y[4]="".concat(v)),s.push(y))}},s}},81:function(i){i.exports=function(l){return l[1]}},379:function(i){var l=[];function s(f){for(var v=-1,h=0;h"u")return{update:function(){},remove:function(){}};var s=l.insertStyleElement(l);return{update:function(c){(function(d,f,v){var h="";v.supports&&(h+="@supports (".concat(v.supports,") {")),v.media&&(h+="@media ".concat(v.media," {"));var g=v.layer!==void 0;g&&(h+="@layer".concat(v.layer.length>0?" ".concat(v.layer):""," {")),h+=v.css,g&&(h+="}"),v.media&&(h+="}"),v.supports&&(h+="}");var _=v.sourceMap;_&&typeof btoa<"u"&&(h+=` -/*# sourceMappingURL=data:application/json;base64,`.concat(btoa(unescape(encodeURIComponent(JSON.stringify(_))))," */")),f.styleTagTransform(h,d,f.options)})(s,l,c)},remove:function(){(function(c){if(c.parentNode===null)return!1;c.parentNode.removeChild(c)})(s)}}}},589:function(i){i.exports=function(l,s){if(s.styleSheet)s.styleSheet.cssText=l;else{for(;s.firstChild;)s.removeChild(s.firstChild);s.appendChild(document.createTextNode(l))}}}},n={};function a(i){var l=n[i];if(l!==void 0)return l.exports;var s=n[i]={id:i,exports:{}};return r[i](s,s.exports,a),s.exports}a.n=function(i){var l=i&&i.__esModule?function(){return i.default}:function(){return i};return a.d(l,{a:l}),l},a.d=function(i,l){for(var s in l)a.o(l,s)&&!a.o(i,s)&&Object.defineProperty(i,s,{enumerable:!0,get:l[s]})},a.o=function(i,l){return Object.prototype.hasOwnProperty.call(i,l)},a.r=function(i){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})},a.nc=void 0;var o={};return function(){a.r(o),a.d(o,{default:function(){return R}});var i=a(379),l=a.n(i),s=a(795),c=a.n(s),d=a(569),f=a.n(d),v=a(565),h=a.n(v),g=a(216),_=a.n(g),w=a(589),b=a.n(w),y=a(543),D={};function F(P){return F=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(O){return typeof O}:function(O){return O&&typeof Symbol=="function"&&O.constructor===Symbol&&O!==Symbol.prototype?"symbol":typeof O},F(P)}function S(P,O){var N=Object.keys(P);if(Object.getOwnPropertySymbols){var A=Object.getOwnPropertySymbols(P);O&&(A=A.filter(function(z){return Object.getOwnPropertyDescriptor(P,z).enumerable})),N.push.apply(N,A)}return N}function I(P,O,N){return(O=function(A){var z=function(k,M){if(F(k)!=="object"||k===null)return k;var T=k[Symbol.toPrimitive];if(T!==void 0){var B=T.call(k,"string");if(F(B)!=="object")return B;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(k)}(A);return F(z)==="symbol"?z:String(z)}(O))in P?Object.defineProperty(P,O,{value:N,enumerable:!0,configurable:!0,writable:!0}):P[O]=N,P}D.styleTagTransform=b(),D.setAttributes=h(),D.insert=f().bind(null,"head"),D.domAPI=c(),D.insertStyleElement=_(),l()(y.Z,D);var C=function(P){for(var O=1;O2&&arguments[2]!==void 0?arguments[2]:!0;mt&&qe.preventDefault(),qe.stopPropagation(),dt&&dt(qe,Dt)},lt=function(qe){L&&qe.dataTransfer.setDragImage(VW,0,0),qe.stopPropagation(),V&&V(qe,Dt)};return $.createElement("div",{className:pe("tree-node",g,"".concat(WW).concat(r),Ee({"node-selected":!n&&a,disabled:Pe,draggable:ke},"check-pos-".concat(z),N)),style:ue(ue({},v),{height:F}),onClick:nt,draggable:ke,onDragStart:ke?lt:void 0,onDragEnter:ke?function(Ie){return Ft(Ie,Y)}:void 0,onDragOver:ke?function(Ie){return Ft(Ie,Z)}:void 0,onDragLeave:ke?function(Ie){return Ft(Ie,ae,!1)}:void 0,onDragEnd:ke?function(Ie){return Ft(Ie,re,!1)}:void 0,onDrop:ke?function(Ie){return Ft(Ie,ie)}:void 0},X?X(ue(ue(ue(ue(ue({},le),t),{isLeaf:tt(),onExpand:er}),d),{nodeIndex:_})):$.createElement($.Fragment,null,z==="left"&&Bt(),gt(),R&&Tt(),z==="middle"&&Bt(),ye(),z==="right"&&Bt()))},qn;(function(e){e[e.TOP=1]="TOP",e[e.OVER=0]="OVER",e[e.BOTTOM=-1]="BOTTOM"})(qn||(qn={}));var qW=function(t,r){var n;return _t(n="".concat(t,"-")).call(n,r)},YW=function(t){var r=t.event,n=t.targetNode,a=t.draggingNode,o=t.indent,i=t.startMousePosition,l=t.allowDrop,s=t.flattenedNodes,c=t.keyEntities,d=t.expandKeys,f=r.clientX,v=r.clientY,h=r.target.getBoundingClientRect(),g=h.top,_=h.height,w=20,b=(i.x||0)-f,y=(b-w)/o,D=c[n.nodeKey];if(v-1.5)l({dropNode:n,dropPosition:qn.BOTTOM,dragNode:a,dropNodeParent:D.parent})?P=qn.BOTTOM:A=!1;else{var z=n;n.nodeKey!==D.key&&(z=ue({nodeKey:D.key},C.node)),l({dropNode:z,dropPosition:qn.OVER,dragNode:a,dropNodeParent:D.parent})?P=qn.OVER:l({dropNode:n,dropPosition:qn.BOTTOM,dragNode:a,dropNodeParent:D.parent})?P=qn.BOTTOM:A=!1}else l({dropNode:n,dropPosition:qn.BOTTOM,dragNode:a,dropNodeParent:D.parent})?P=qn.BOTTOM:A=!1;return vrt(D,a.nodeKey)&&(A=!1),{dropPosition:P,dropLevelOffset:O,dropTargetKey:D.key,dropTargetPos:D.pos,dragOverNodeKey:R,dropContainerKey:P===qn.OVER?D.key:D.parent?D.parent.key:null,dropAllowed:A}},vrt=function(t,r){var n=!1,a=function o(i){if(!ut(i.parent)){if(i.parent.key===r){n=!0;return}o(i.parent)}};return a(t),n},hrt=function(t){if(t.parent){var r=GW(t.pos);return Number(r[r.length-1])===t.parent.children.length-1}return!1},grt=function(t){var r=GW(t.pos);return Number(r[r.length-1])===0},GW=function(t){return t.split("-")},_rt=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=t.length,a=r.length;if(Math.abs(n-a)!==1)return{add:!1,key:null};var o=function(l,s){var c=new fa;l.forEach(function(f){c.set(f,!0)});var d=Ol(s).call(s,function(f){return!c.has(f)});return d.length===1?d[0]:null};return n0&&arguments[0]!==void 0?arguments[0]:[],r=arguments.length>1?arguments[1]:void 0,n=new od(r),a=[],o=function i(l){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return Ct(l).call(l,function(c,d){var f=qW(s?s.pos:"0",d),v=SC(c.key,f),h=ue(ue({},c),{parent:s,pos:f,children:[],data:c});return a.push(h),n.has(v)?h.children=i(c.children||[],h):h.children=[],h})};return o(t),a},D1=function(t,r){var n=r.expandedKeys,a=r.selectedKeys,o=r.checkedKeys,i=r.halfCheckedKeys,l=r.disableSelectKeys,s=r.disableCheckKeys,c=r.loadingKeys,d={nodeKey:t,expanded:fn(n,t),selected:fn(a,t),checked:fn(o,t),indeterminate:i?fn(i,t):void 0,selectable:!fn(l,t),checkable:!fn(s,t),loading:fn(c,t)};return d},brt=function(t,r,n){var a=r||[];if(n){var o=lr(a),i=function l(s){s.forEach(function(c){c.children&&(ya(o).call(o,c.key)&&(o=Nc(o,En(c.children,"key"))),l(c.children)),ba(c.children)&&Hu(c.children,function(d){return fn(o,d.key)})&&o.push(c.key)})};i(t),a=lr(o)}return Tl(a)},yrt=function(t){var r=t.children,n=t.key,a=[n],o=function i(l){l.forEach(function(s){var c=s.children;a.push(s.key),ba(c)&&(a=_t(a).call(a,En(c,"key")),i(c))})};return ba(r)&&o(r||[]),a},wrt=function(t,r,n){var a=t[r.key],o=lr(n),i=function l(s){!ut(s.children)&&Hu(s.children,function(c){return fn(o,c.key)})?o.push(s.key):o=El(o,[s.key]),ut(s.parent)||l(s.parent)};return ut(a.parent)||i(a.parent),o},ZW=function(t,r,n,a,o){var i=lr(r),l=[n.key];if(o&&(l=yrt(n)),a){var s;i=_t(s=[]).call(s,lr(i),lr(l))}else i=El(i,l);return o&&(i=wrt(t,n,i)),Tl(i)},Drt=function(t){var r={},n={};return Irt(t,function(a){var o=a.node,i=a.index,l=a.pos,s=a.key,c=a.parentPos,d=a.level,f=mrt(a,["node","index","pos","key","parentPos","level"]),v=ue({node:o,index:i,key:s,pos:l,level:d},f),h=SC(s,l);r[l]=v,n[h]=v,v.parent=r[c],v.parent&&(v.parent.children=v.parent.children||[],v.parent.children.push(v))}),n},Irt=function(t,r){var n=function a(o,i,l){var s=o?o.children:t,c=o?qW(l.pos,i):"0";if(o){var d=SC(o.key,c),f={node:o,index:i,pos:c,key:d,parentPos:l.node?l.pos:null,level:l.level+1};r(f)}s&&s.forEach(function(v,h){a(v,h,{node:o,pos:c,level:l?l.level+1:-1})})};n(null)},Frt=function e(t){if(Nn(t))return[];var r=[];return gr(t,function(n){if(n){var a,o=n.key,i=n.children,l=i===void 0?[]:i;r.push.apply(r,_t(a=[o]).call(a,lr(e(l))))}}),r},$rt=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=arguments.length>2?arguments[2]:void 0,a=lr(r),o=[];if(n){var i=function l(s){s.forEach(function(c){c.children&&(ya(a).call(a,c.key)&&(a=Nc(a,En(c.children,"key"))),l(c.children)),ba(c.children)&&Hu(c.children,function(d){return fn(a,d.key)})?a.push(c.key):wy(c.children,function(d){return fn(a,d.key)||fn(o,d.key)})&&o.push(c.key)})};i(t)}return o},Srt=function(t){return or(t)?{checked:t,halfChecked:void 0}:(yn(t),t)},QW=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a=this.itemCount)return{offset:0,size:0};if(r>this.lastMeasuredIndex){for(var n=this.getSizeAndPositionOfLastMeasuredItem(),a=n.offset+n.size,o=this.lastMeasuredIndex+1;o<=r;o++){var i=this.itemSize;this.itemSizeAndPositionData[o]={offset:a,size:i},a+=i}this.lastMeasuredIndex=r}return this.itemSizeAndPositionData[r]}},{key:"getSizeAndPositionOfLastMeasuredItem",value:function(){return this.lastMeasuredIndex>=0?this.itemSizeAndPositionData[this.lastMeasuredIndex]:{offset:0,size:0}}},{key:"getTotalSize",value:function(){var r=this.getSizeAndPositionOfLastMeasuredItem();return r.offset+r.size+(this.itemCount-this.lastMeasuredIndex-1)*this.itemSize}},{key:"getUpdatedOffsetForIndex",value:function(r){var n=r.containerSize,a=r.targetIndex;if(n<=0)return 0;var o=this.getSizeAndPositionForIndex(a),i=o.offset,l=i-n+o.size,s=this.getTotalSize();return Math.max(0,Math.min(s-n,l))}},{key:"getVisibleRange",value:function(r){var n=r.containerSize,a=r.offset,o=r.overScanCount,i=this.getTotalSize();if(i===0)return{};for(var l=a+n,s=this.findNearestItem(a),c=this.getSizeAndPositionForIndex(s),d=c.offset+c.size,f=s;d=n?this.binarySearch({high:o,low:0,offset:n}):this.exponentialSearch({index:o,offset:n})}},{key:"binarySearch",value:function(r){for(var n=r.low,a=r.high,o=r.offset,i=0,l=0,s=n,c=Math.min(a,this.itemCount-1);s<=c;){if(i=s+Math.floor((c-s)/2),l=this.getSizeAndPositionForIndex(i).offset,l===o)return i;lo&&(c=i-1)}return s>0?s-1:0}},{key:"exponentialSearch",value:function(r){for(var n=r.index,a=r.offset,o=1,i=n;i=a)&&(M=0);var T=d===Ji.VERTICAL?r:n;return S.current.getUpdatedOffsetForIndex({containerSize:zr(T)?T:0,targetIndex:M})},P=function(){var M;S.current.updateConfig({itemCount:a,itemSize:o});var T=d===Ji.VERTICAL?r:n,B=S.current.getVisibleRange({containerSize:zr(T)?T:0,offset:y,overScanCount:s}),L=B.start,K=B.stop,X=S.current.getSizeAndPositionForIndex(L||-1),ee=X.offset,q=[],G=(M={minHeight:"100%"},Ee(M,eV[d],S.current.getTotalSize()),Ee(M,Rrt[d],ee),M);if(zr(L)&&zr(K))for(var W=L;W<=K;W++)q.push(f({index:W,style:O(W)}));return $.createElement("div",{style:G,className:"virtual-list-inner"},q)},O=function(M){var T=C.current[M];if(T)return T;var B=S.current.getSizeAndPositionForIndex(M),L=B.size,K=Ee({},eV[d],L);return C.current[M]=K,K},N=function(){return F.current?F.current[JW[d]]:0},A=function(M){var T=N();T<0||y===T||M.target!==F.current||(D(T),_&&_(T,M))},z=function(M){if(F.current){var T=JW[d];F.current[T]=M}};return $.createElement("div",{ref:F,style:ue(ue({overflow:"auto"},i),{height:r,width:n}),onScroll:A,className:I},P())};const Art=Ort;var krt=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a0&&arguments[0]!==void 0?arguments[0]:[];gr(fe,function(ge){if(fn(o,ge.key))return ie=!0,!1;ge.children&&oe(ge.children)})};return ve(J),ie=ie&&!Hu(J,function(oe){return fn(o,oe.key)}),ie};return $.createElement(Crt,we({key:Y,index:W},te,Z,{indeterminate:ae(),itemHeight:v,data:G.data,motionNodes:Y===EC?I:null,motionType:O,onMotionStart:g,onMotionEnd:B,treeNodeRequiredProps:L}))},ee=function(){return $.createElement(Art,{width:"100%",itemCount:y.length,itemSize:v,height:f,itemRender:K})};return h?ee():$.createElement($.Fragment,null,En(y,function(q,G){return X(q,G)}))};const Mrt=Nrt;var Lrt=function(){function e(t){var r=t.treeRef,n=t.indent;Cr(this,e),this.isDragging=!1,this.treeRef=r,this.indent=n}return Tr(e,[{key:"clear",value:function(){this.clearDropOverNode(),this.clearDropContainer(),this.clearCustomizeDraggingNode(),this.isDragging=!1,this.dragStartPosition=null,this.draggingNode=null,this.dropPosition=null,this.dropNode=null,this.dropOverNodeKey=null,this.dropTargetKey=null}},{key:"handleDragStart",value:function(r,n,a){this.isDragging=!0,this.dragStartPosition={x:r.clientX,y:r.clientY},this.draggingNode=n,this.customizeDraggingNode=a,this.refreshCustomizeDraggingNode({x:r.clientX,y:r.clientY})}},{key:"handleDragLeave",value:function(r){this.handleDragOverPosition({dropAllowed:!1,dropContainerKey:null,dragOverNodeKey:null,dropPosition:0,dropLevelOffset:0,dropNode:{},dropTargetKey:null,event:r})}},{key:"handleDragOverPosition",value:function(r){var n=r.dropAllowed,a=r.dropContainerKey,o=r.dragOverNodeKey,i=r.dropPosition,l=r.dropLevelOffset,s=r.dropNode,c=r.dropTargetKey,d=r.event;n?(this.dropTargetKey=c,this.dropNode=s,this.setDropContainerNodeKey(a),this.setDropOverNodeKey(o,i,l)):(this.dropNode=null,this.dropTargetKey=null,this.setDropContainerNodeKey(null),this.setDropOverNodeKey(null,i,l)),this.refreshCustomizeDraggingNode({x:d.clientX,y:d.clientY})}},{key:"refreshCustomizeDraggingNode",value:function(r){var n=r.x,a=r.y;this.customizeDraggingNode&&(this.customizeDraggingNode.style.left="".concat(n,"px"),this.customizeDraggingNode.style.top="".concat(a,"px"))}},{key:"clearDropContainer",value:function(){if(!(!this.treeRef.current||!this.dropContainerNodeKey)){var r=this.getTreeNodeByKey(this.dropContainerNodeKey);if(r){var n;r.className=DC.apply(void 0,_t(n=lr(Dy(r.className," "))).call(n,[{"drop-container":!1}]))}}}},{key:"clearCustomizeDraggingNode",value:function(){this.customizeDraggingNode&&(this.customizeDraggingNode.style.left="-500px",this.customizeDraggingNode.style.top="-500px",this.customizeDraggingNode=null)}},{key:"clearDropOverNode",value:function(){this.setDropOverNodeStyle({display:"none"}),this.dropPosition=null}},{key:"setDropOverNodeStyle",value:function(r){if(!(!this.treeRef.current||!this.dropOverNodeKey)){var n=this.getTreeNodeByKey(this.dropOverNodeKey);if(n){var a=n.getElementsByClassName("node-drop-indicator")[0]||null;if(!a)return;En(r,function(o,i){a.style[i]=o})}}}},{key:"setDropOverNodeKey",value:function(r,n,a){if(this.clearDropOverNode(),this.dropOverNodeKey=r,!ys(r)){this.dropPosition=n;var o={left:"".concat(-a*this.indent,"px"),display:"block"};switch(n){case qn.TOP:o.top="0",o.bottom="unset";break;case qn.BOTTOM:o.bottom="0",o.top="unset";break;case qn.OVER:o.bottom="0",o.top="unset",o.left="".concat(this.indent,"px");break}this.setDropOverNodeStyle(o)}}},{key:"setDropContainerNodeKey",value:function(r){if(r!==this.dropContainerNodeKey&&(this.clearDropContainer(),this.dropContainerNodeKey=r,!ys(r))){var n=this.getTreeNodeByKey(r);n&&(n.className=n.className+" drop-container")}}},{key:"getTreeNodeByKey",value:function(r){var n;if(!this.treeRef.current)return null;var a=this.treeRef.current.getElementsByClassName(_t(n="".concat(WW)).call(n,r));return a[0]||null}}]),e}();const zrt=Lrt;var Brt=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a1&&arguments[1]!==void 0?arguments[1]:[];return!t||!t.parent?r:(r.push(t.parent.key),e(t.parent,r))},Urt=function(t){var r=t.treeData,n=t.showIcon,a=n===void 0?!0:n,o=t.icon,i=o===void 0?function(yr){var jt=yr.isLeaf,bt=yr.expanded;return jt?null:bt?$.createElement(MHe,{className:"node-icon-group"}):$.createElement(NHe,{className:"node-icon-group"})}:o,l=t.showSwitcher,s=l===void 0?!0:l,c=t.switcherIcon,d=c===void 0?function(yr){var jt=yr.isLeaf,bt=yr.expanded;return jt?null:bt?$.createElement(k9,null):$.createElement(THe,null)}:c,f=t.indent,v=f===void 0?20:f,h=t.titleRender,g=t.treeNodeRender,_=t.checkboxRender,w=t.disabled,b=t.expandedKeys,y=t.defaultExpandAll,D=y===void 0?!1:y,F=t.defaultExpandedKeys,S=t.selectable,I=t.allowDeselect,C=t.multipleSelect,R=t.selectedKeys,P=t.disableSelectKeys,O=t.defaultSelectedKeys,N=t.onSelect,A=t.checkable,z=t.checkedKeys,k=t.disableCheckKeys,M=t.defaultCheckedKeys,T=t.onCheck,B=t.draggable,L=t.onExpand,K=t.checkPos,X=K===void 0?"left":K,ee=t.allowDrop,q=ee===void 0?function(){return!0}:ee,G=t.allowExpandWhenDrag,W=G===void 0?function(){return!0}:G,V=t.onDropOutside,Y=t.onDragStart,Z=t.onDragEnter,te=t.onDragOver,J=t.onDragLeave,ae=t.onDragEnd,re=t.onDrop,ie=t.onClick,ve=t.virtual,oe=t.nodeHeight,fe=oe===void 0?32:oe,ge=t.draggingNodeRender,le=t.contentEllipsis,_e=t.className,De=t.id,Oe=t.autoExpand,Be=t.expandArea,Pe=Be===void 0?"node":Be,Ge=t.checkArea,ke=Ge===void 0?"node":Ge,Ze=t.leafCheckArea,Ke=t.isCheckRelated,ct=Ke===void 0?!1:Ke,Xe=t.checkStrictly,ot=Xe===void 0?!1:Xe,tt=t.prefixCls,Dt=t.onLoadData,Bt=Brt(t,["treeData","showIcon","icon","showSwitcher","switcherIcon","indent","titleRender","treeNodeRender","checkboxRender","disabled","expandedKeys","defaultExpandAll","defaultExpandedKeys","selectable","allowDeselect","multipleSelect","selectedKeys","disableSelectKeys","defaultSelectedKeys","onSelect","checkable","checkedKeys","disableCheckKeys","defaultCheckedKeys","onCheck","draggable","onExpand","checkPos","allowDrop","allowExpandWhenDrag","onDropOutside","onDragStart","onDragEnter","onDragOver","onDragLeave","onDragEnd","onDrop","onClick","virtual","nodeHeight","draggingNodeRender","contentEllipsis","className","id","autoExpand","expandArea","checkArea","leafCheckArea","isCheckRelated","checkStrictly","prefixCls","onLoadData"]),gt=m.useMemo(function(){return ct&&!ot},[ct,ot]),Tt=m.useMemo(function(){return Srt(z)},[z]),ye=m.useState(F||[]),er=me(ye,2),ft=er[0],nt=er[1],Ft=m.useState(O||[]),lt=me(Ft,2),Ie=lt[0],qe=lt[1],dt=m.useState(Tt?.checked||M||[]),mt=me(dt,2),Rt=mt[0],Gt=mt[1],Qe=m.useState(Tt?.halfChecked||[]),He=me(Qe,2),je=He[0],ze=He[1],Ve=m.useState([]),Ae=me(Ve,2),Fe=Ae[0],st=Ae[1],$t=m.useState([]),Je=me($t,2),ht=Je[0],Vt=Je[1],Mt=m.useState(0),_r=me(Mt,2),Ca=_r[0],Zn=_r[1],sn=m.useRef(null),It=m.useRef(),xt=m.useRef(!1),Me=m.useRef(null),Le=m.useRef();Le.current||(Le.current=new zrt({treeRef:sn,indent:v}));var St=Yt("list-tree",tt);m.useEffect(function(){return function(){window.removeEventListener("dragend",es),window.removeEventListener("dragover",Bd)}},[]),m.useEffect(function(){F||nt(D?En(Et,function(yr,jt){return jt}):[])},[D,F]);var fr=m.useMemo(function(){return xrt(r,b||ft)},[r,b,ft]),Et=m.useMemo(function(){var yr=Drt(r);return Le.current.keyEntities=yr,yr},[r]),Kt=m.useMemo(function(){return brt(r,Tt?.checked||Rt,gt)},[r,Tt,Rt]),Zt=m.useMemo(function(){return Tt?.halfChecked||je},[Tt,je]);m.useEffect(function(){var yr,jt;if(Oe){var bt=Tl(_t(yr=[]).call(yr,lr(R||Ie),lr(Kt))),Ot=yE(En(bt,function(Qn){var va=Et[Qn];return jrt(va)})),nr=Tl(b||ft),Wr=Tl(_t(jt=[]).call(jt,lr(nr),lr(Ot)));(ba(nr)!==ba(Wr)||!Nn(El(nr,Wr))||!Nn(El(Wr,nr)))&&(b||nt(Wr),L&&L(Wr))}},[R,O,Kt,Et,Oe]);var Hr={expandedKeys:b||ft,selectedKeys:R||Ie,checkedKeys:Kt,halfCheckedKeys:ot?Zt:void 0,loadingKeys:Fe,disableCheckKeys:k,disableSelectKeys:P},In=function(jt,bt,Ot){var nr=ZW(Et,Kt,bt,Ot,gt);Gt(nr),ot?(ze(ZW(Et,Zt,bt,!1,gt)),T&&T({checked:nr,halfChecked:Zt},{node:bt,checked:Ot,event:jt})):T&&T(nr,{node:bt,checked:Ot,event:jt,halfCheckedKeys:$rt(r,nr,ct)})},mr=function(jt,bt){var Ot=R||Ie,nr=bt.selected,Wr=bt.key,Qn=!nr;if(C)if(Qn){var va;Ot=_t(va=[]).call(va,lr(Ot),[Wr])}else Ot=Cl(Ot,function(to){return to!==Wr});else!I||I&&Qn?Ot=[Wr]:Ot=Cl(Ot,function(to){return to!==Wr});R||qe(Ot),N&&N(Ot,{selected:Qn,node:bt,event:jt})},Mr=function(jt,bt){ie&&ie(bt)},Ja=function(jt){return Dt&&!fn(Fe,jt)},eo=function(jt){var bt=jt.key,Ot=new da(function(nr,Wr){Dt&&(st(function(Qn){var va;return Tl(_t(va=[]).call(va,lr(Qn),[bt]))}),Dt(jt).then(function(){nr()}).catch(function(){Wr()}).finally(function(){return st(function(Qn){return El(Qn,[bt])})}))});return Ot.catch(function(){}),Ot},dl=function(jt,bt){if(!xt.current){var Ot=b||ft,nr=bt.key,Wr=bt.expanded,Qn=!Wr;if(Qn){var va;Ot=Tl(_t(va=[]).call(va,lr(Ot),[nr]))}else Ot=Cl(Ot,function(Uo){return Uo!==nr});var to=function(){b||nt(Ot),L&&L(Ot,{node:bt,expanded:Qn,event:jt})};Ja(nr)&&Qn?eo(bt).then(to).catch(function(){nt(El(Ot,[nr]))}):to()}},es=function yr(){Vt([]),Le.current.clear(),V&&V(),window.removeEventListener("dragend",yr),window.removeEventListener("dragover",Bd)},Bd=function(jt){It.current&&clearTimeout(It.current),Le.current.refreshCustomizeDraggingNode({x:jt.clientX,y:jt.clientY})},Hs=function(jt,bt){var Ot,nr=bt.children,Wr=bt.key;Vt(_t(Ot=[]).call(Ot,lr(Frt(nr)),[Wr])),Le.current.handleDragStart(jt,bt,Me.current),window.addEventListener("dragend",es),window.addEventListener("dragover",Bd),Y&&Y({node:bt,event:jt})},nv=function(jt,bt){It.current&&clearTimeout(It.current),bt.key!==Le.current.draggingNode.key&&W({dragNode:Le.current.draggingNode,dropNode:bt})&&(jt.persist(),It.current=window.setTimeout(function(){if(Le.current.isDragging){var Ot=lr(b||ft),nr=Et[bt.key];if(nr&&(nr.children||[]).length){var Wr;Ot=Tl(_t(Wr=[]).call(Wr,lr(Ot),[bt.key])),b||nt(Ot),L&&L(Ot,{node:bt,expanded:!0,event:jt})}}},800))},Pm=function(jt,bt){if(!(!sn.current||!Le.current.isDragging)){var Ot=YW({event:jt,targetNode:bt,draggingNode:Le.current.draggingNode,indent:v,startMousePosition:Le.current.dragStartPosition,allowDrop:q,flattenedNodes:fr,keyEntities:Et,expandKeys:b||ft}),nr=Ot.dropAllowed,Wr=Ot.dropContainerKey,Qn=Ot.dragOverNodeKey,va=Ot.dropPosition,to=Ot.dropTargetKey,Uo=Ot.dropLevelOffset;Le.current.handleDragOverPosition({dropAllowed:nr,dropContainerKey:Wr,dragOverNodeKey:Qn,dropPosition:va,dropLevelOffset:Uo,dropTargetKey:to,dropNode:bt,event:jt}),!(!nr||!Le.current.draggingNode||fn(ht,to))&&(nv(jt,bt),Z&&Z({node:bt,event:jt}))}},eu=function(jt,bt){var Ot=Le.current;if(!(!sn.current||!Ot.isDragging)){var nr=YW({event:jt,targetNode:bt,draggingNode:Ot.draggingNode,indent:v,startMousePosition:Ot.dragStartPosition,allowDrop:q,flattenedNodes:fr,keyEntities:Et,expandKeys:b||ft}),Wr=nr.dropAllowed,Qn=nr.dropContainerKey,va=nr.dropTargetKey,to=nr.dragOverNodeKey,Uo=nr.dropPosition,vD=nr.dropLevelOffset;Ot.handleDragOverPosition({dropAllowed:Wr,dropContainerKey:Qn,dragOverNodeKey:to,dropPosition:Uo,dropLevelOffset:vD,dropTargetKey:va,dropNode:bt,event:jt}),te&&te({node:bt,event:jt})}},qR=function(jt,bt){Le.current.handleDragLeave(jt),J&&J({node:bt,event:jt})},pD=function(jt,bt){var Ot=Le.current;sn.current&&(Ot.clear(),ae&&ae({node:bt,event:jt}))},av=function(jt){if(!(!sn.current||!Le.current.isDragging)){Vt([]);var bt=Le.current,Ot=bt.dropTargetKey;if(Ot===null){bt.clear();return}var nr=D1(Ot,Hr),Wr=D1(bt.draggingNode.key,Hr);bt.dropPosition===qn.OVER&&dl(null,{dropNode:nr,key:Ot}),re&&re({node:ue(ue(ue({},Et[nr.nodeKey]),nr),{key:nr.nodeKey}),dragNode:ue(ue({},Et[bt.draggingNode.key]),Wr),dropPosition:bt.dropPosition,event:jt}),bt.clear()}};return $.createElement($C.Provider,{value:{isCheckRelated:gt,checkStrictly:ot,selectable:S,draggable:B,checkable:A,disabled:w,checkPos:X,showIcon:a,icon:i,showSwitcher:s,switcherIcon:d,draggingKeys:ht,indent:v,keyEntities:Et,titleRender:h,treeNodeRender:g,checkboxRender:_,onNodeExpand:dl,onNodeCheck:In,onNodeSelect:mr,onNodeClick:Mr,onLoadData:Dt,onNodeLoad:eo,onNodeDragStart:Hs,onNodeDragEnter:Pm,onNodeDragOver:eu,onNodeDragLeave:qR,onNodeDragEnd:pD,onNodeDrop:av,nodeHeight:fe,customizeDraggingNode:!!ge,checkArea:ke,expandArea:Pe,leafCheckArea:Ze}},$.createElement(vi,{onResize:function(jt){var bt=jt.height;Zn(bt)}},$.createElement("div",we({className:pe(St,_e,{"is-dragging":!Nn(ht),"is-virtual-list":ve,"content-ellipsis":le}),id:De,ref:sn},pa(Bt,{aria:!0,data:!0})),$.createElement(Mrt,we({virtual:ve,data:fr},Hr,{dragging:!Nn(ht),height:Ca,itemHeight:fe,onListChangeEnd:function(){xt.current=!1},onListChangeStart:function(){xt.current=!0}})),ge&&$.createElement("div",{className:pe("customize-dragging-node",{show:!Nn(ht)}),ref:Me},ge(Le.current.draggingNode)))))};const Hrt=Urt;var CC={},Wrt={get exports(){return CC},set exports(e){CC=e}},TC={},Vrt={get exports(){return TC},set exports(e){TC=e}};(function(e){var t=zf,r=b0;function n(a){"@babel/helpers - typeof";return e.exports=n=typeof t=="function"&&typeof r=="symbol"?function(o){return typeof o}:function(o){return o&&typeof t=="function"&&o.constructor===t&&o!==t.prototype?"symbol":typeof o},e.exports.__esModule=!0,e.exports.default=e.exports,n(a)}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports})(Vrt);var RC={},Krt={get exports(){return RC},set exports(e){RC=e}},qrt=Ec.forEach,Yrt=GH,Grt=Yrt("forEach"),Xrt=Grt?[].forEach:function(t){return qrt(this,t,arguments.length>1?arguments[1]:void 0)},Zrt=Re,aV=Xrt;Zrt({target:"Array",proto:!0,forced:[].forEach!==aV},{forEach:aV});var Qrt=ca,Jrt=Qrt("Array","forEach"),ent=Jrt,tnt=ent,rnt=Ru,nnt=Vn,ant=Sn,ont=tnt,OC=Array.prototype,int={DOMTokenList:!0,NodeList:!0},lnt=function(e){var t=e.forEach;return e===OC||ant(OC,e)&&t===OC.forEach||nnt(int,rnt(e))?ont:t},snt=lnt,cnt=snt,unt=cnt,dnt=unt;(function(e){e.exports=dnt})(Krt);var AC={},fnt={get exports(){return AC},set exports(e){AC=e}},pnt=Re,vnt=Dr,hnt=Ic,gnt=vnt([].reverse),oV=[1,2];pnt({target:"Array",proto:!0,forced:String(oV)===String(oV.reverse())},{reverse:function(){return hnt(this)&&(this.length=this.length),gnt(this)}});var _nt=ca,mnt=_nt("Array","reverse"),xnt=Sn,bnt=mnt,kC=Array.prototype,ynt=function(e){var t=e.reverse;return e===kC||xnt(kC,e)&&t===kC.reverse?bnt:t},wnt=ynt,Dnt=wnt,Int=Dnt,Fnt=Int,$nt=Fnt,Snt=$nt;(function(e){e.exports=Snt})(fnt),function(e){var t=TC.default,r=r0,n=zf,a=y0,o=D0,i=RC,l=Uy,s=w0,c=B0,d=AC,f=Nh;function v(){e.exports=v=function(){return h},e.exports.__esModule=!0,e.exports.default=e.exports;var h={},g=Object.prototype,_=g.hasOwnProperty,w=r||function(W,V,Y){W[V]=Y.value},b=typeof n=="function"?n:{},y=b.iterator||"@@iterator",D=b.asyncIterator||"@@asyncIterator",F=b.toStringTag||"@@toStringTag";function S(W,V,Y){return r(W,V,{value:Y,enumerable:!0,configurable:!0,writable:!0}),W[V]}try{S({},"")}catch{S=function(Y,Z,te){return Y[Z]=te}}function I(W,V,Y,Z){var te=V&&V.prototype instanceof P?V:P,J=a(te.prototype),ae=new q(Z||[]);return w(J,"_invoke",{value:L(W,Y,ae)}),J}function C(W,V,Y){try{return{type:"normal",arg:W.call(V,Y)}}catch(Z){return{type:"throw",arg:Z}}}h.wrap=I;var R={};function P(){}function O(){}function N(){}var A={};S(A,y,function(){return this});var z=o,k=z&&z(z(G([])));k&&k!==g&&_.call(k,y)&&(A=k);var M=N.prototype=P.prototype=a(A);function T(W){var V;i(V=["next","throw","return"]).call(V,function(Y){S(W,Y,function(Z){return this._invoke(Y,Z)})})}function B(W,V){function Y(te,J,ae,re){var ie=C(W[te],W,J);if(ie.type!=="throw"){var ve=ie.arg,oe=ve.value;return oe&&t(oe)=="object"&&_.call(oe,"__await")?V.resolve(oe.__await).then(function(fe){Y("next",fe,ae,re)},function(fe){Y("throw",fe,ae,re)}):V.resolve(oe).then(function(fe){ve.value=fe,ae(ve)},function(fe){return Y("throw",fe,ae,re)})}re(ie.arg)}var Z;w(this,"_invoke",{value:function(J,ae){function re(){return new V(function(ie,ve){Y(J,ae,ie,ve)})}return Z=Z?Z.then(re,re):re()}})}function L(W,V,Y){var Z="suspendedStart";return function(te,J){if(Z==="executing")throw new Error("Generator is already running");if(Z==="completed"){if(te==="throw")throw J;return{value:void 0,done:!0}}for(Y.method=te,Y.arg=J;;){var ae=Y.delegate;if(ae){var re=K(ae,Y);if(re){if(re===R)continue;return re}}if(Y.method==="next")Y.sent=Y._sent=Y.arg;else if(Y.method==="throw"){if(Z==="suspendedStart")throw Z="completed",Y.arg;Y.dispatchException(Y.arg)}else Y.method==="return"&&Y.abrupt("return",Y.arg);Z="executing";var ie=C(W,V,Y);if(ie.type==="normal"){if(Z=Y.done?"completed":"suspendedYield",ie.arg===R)continue;return{value:ie.arg,done:Y.done}}ie.type==="throw"&&(Z="completed",Y.method="throw",Y.arg=ie.arg)}}}function K(W,V){var Y=V.method,Z=W.iterator[Y];if(Z===void 0)return V.delegate=null,Y==="throw"&&W.iterator.return&&(V.method="return",V.arg=void 0,K(W,V),V.method==="throw")||Y!=="return"&&(V.method="throw",V.arg=new TypeError("The iterator does not provide a '"+Y+"' method")),R;var te=C(Z,W.iterator,V.arg);if(te.type==="throw")return V.method="throw",V.arg=te.arg,V.delegate=null,R;var J=te.arg;return J?J.done?(V[W.resultName]=J.value,V.next=W.nextLoc,V.method!=="return"&&(V.method="next",V.arg=void 0),V.delegate=null,R):J:(V.method="throw",V.arg=new TypeError("iterator result is not an object"),V.delegate=null,R)}function X(W){var V,Y={tryLoc:W[0]};1 in W&&(Y.catchLoc=W[1]),2 in W&&(Y.finallyLoc=W[2],Y.afterLoc=W[3]),l(V=this.tryEntries).call(V,Y)}function ee(W){var V=W.completion||{};V.type="normal",delete V.arg,W.completion=V}function q(W){this.tryEntries=[{tryLoc:"root"}],i(W).call(W,X,this),this.reset(!0)}function G(W){if(W||W===""){var V=W[y];if(V)return V.call(W);if(typeof W.next=="function")return W;if(!isNaN(W.length)){var Y=-1,Z=function te(){for(;++Y=0;--te){var J=this.tryEntries[te],ae=J.completion;if(J.tryLoc==="root")return Z("end");if(J.tryLoc<=this.prev){var re=_.call(J,"catchLoc"),ie=_.call(J,"finallyLoc");if(re&&ie){if(this.prev=0;--Z){var te=this.tryEntries[Z];if(te.tryLoc<=this.prev&&_.call(te,"finallyLoc")&&this.prev=0;--Y){var Z=this.tryEntries[Y];if(Z.finallyLoc===V)return this.complete(Z.completion,Z.afterLoc),ee(Z),R}},catch:function(V){for(var Y=this.tryEntries.length-1;Y>=0;--Y){var Z=this.tryEntries[Y];if(Z.tryLoc===V){var te=Z.completion;if(te.type==="throw"){var J=te.arg;ee(Z)}return J}}throw new Error("illegal catch attempt")},delegateYield:function(V,Y,Z){return this.delegate={iterator:G(V),resultName:Y,nextLoc:Z},this.method==="next"&&(this.arg=void 0),R}},h}e.exports=v,e.exports.__esModule=!0,e.exports.default=e.exports}(Wrt);var S1=CC(),iV=S1;try{regeneratorRuntime=S1}catch{typeof globalThis=="object"?globalThis.regeneratorRuntime=S1:Function("r","regeneratorRuntime = r")(S1)}function Ent(e){var t=Cnt();return function(){var n=Pr(e),a;if(t){var o=Pr(this).constructor;a=Pt(n,arguments,o)}else a=n.apply(this,arguments);return go(this,a)}}function Cnt(){if(typeof Reflect>"u"||!Pt||Pt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Pt(Boolean,[],function(){})),!0}catch{return!1}}var E1=function(e){ho(r,e);var t=Ent(r);function r(n){var a;return Cr(this,r),a=t.call(this,n),a.handleOk=function(){var o=a.props.onOk;a.handleClose(),o&&o()},a.handleCloseBtnClick=function(){var o=a.props.onCloseBtnClick;a.handleClose(),o&&o()},a.handleClose=function(){a.stopTimer();var o=a.props.onClose;o&&o()},a.state={visible:a.props.visible},a}return Tr(r,[{key:"componentDidMount",value:function(){var a=this.props,o=a.visible,i=a.onAfterClose,l=i===void 0?Bc:i;if(!o)return l();this.startTimer()}},{key:"stopTimer",value:function(){clearTimeout(this.timeout)}},{key:"startTimer",value:function(){var a=this,o=this.props.duration;o>0&&(this.timeout=window.setTimeout(function(){a.handleClose()},o))}},{key:"render",value:function(){var a,o=this.props,i=o.className,l=o.classNames,s=o.placement,c=o.icon,d=o.style,f=o.styles,v=o.title,h=o.content,g=o.text4Ok,_=o.onAfterClose,w=o.visible,b=o.type,y=(a=this.props.prefixCls)!==null&&a!==void 0?a:this.context.getPrefixCls("msg-notification",this.props.prefixCls),D=pe(y,i,{"has-icon":c||b!=="normal","only-title":!h&&!g}),F;switch(b){case"success":F=m.createElement(Yy,{className:pe("notification-icon","".concat(b))});break;case"error":F=m.createElement(Gu,{className:pe("notification-icon","".concat(b))});break;case"warning":F=m.createElement(Uc,{className:pe("notification-icon","".concat(b))});break;case"info":F=m.createElement(Uc,{className:pe("notification-icon","".concat(b))});break;default:F=null;break}return m.createElement("div",{className:pe("".concat(y,"-container"),s,l?.container),style:f?.container},m.createElement($s,{classNames:y,appear:!0,exit:!0,in:w,onExited:_,timeout:{enter:za.SLOW,exit:za.NORMAL}},m.createElement("div",{className:D,style:d},m.createElement("div",{className:"".concat(y,"-wrapper")},m.createElement(dg,{className:"close-btn",onClick:this.handleCloseBtnClick}),m.createElement("div",{className:"".concat(y,"-main")},c?m.cloneElement(c,{className:pe(kt(c,"props.className"),"notification-icon")}):F,m.createElement("div",{className:"".concat(y,"-title")},v),h&&m.createElement("div",{className:"".concat(y,"-content")},h),g&&m.createElement("div",{className:"".concat(y,"-footer")},m.createElement(jr,{className:"footer-btn",type:"primary",onClick:this.handleOk},g)))))))}}]),r}(m.Component);E1.propTypes={className:$r.string,classNames:$r.object,style:$r.object,styles:$r.object,placement:$r.oneOf(["top-right","top-left","bottom-left","bottom-right"]),type:$r.oneOf(["success","error","warning","info","normal"]),content:$r.node,icon:$r.node,duration:$r.number,visible:$r.bool,title:$r.node,text4Ok:$r.string,onOk:$r.func,onClose:$r.func,onCloseBtnClick:$r.func},E1.contextType=fi,E1.defaultProps={type:"normal",placement:"top-right",duration:4500};const Tnt=E1;function Rnt(e){var t=Ont();return function(){var n=Pr(e),a;if(t){var o=Pr(this).constructor;a=Pt(n,arguments,o)}else a=n.apply(this,arguments);return go(this,a)}}function Ont(){if(typeof Reflect>"u"||!Pt||Pt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Pt(Boolean,[],function(){})),!0}catch{return!1}}var C1=function(e){ho(r,e);var t=Rnt(r);function r(n){var a;return Cr(this,r),a=t.call(this,n),a.handleClose=function(){a.stopTimer();var o=a.props.onClose;o&&o()},a.state={visible:a.props.visible},a}return Tr(r,[{key:"componentDidMount",value:function(){var a=this.props,o=a.visible,i=a.onAfterClose,l=i===void 0?Bc:i;if(!o)return l();this.startTimer()}},{key:"getDuration",value:function(){switch(this.props.type){case"success":return 2e3;case"loading":return 0;case"error":case"warning":case"info":default:return 4e3}}},{key:"startTimer",value:function(){var a=this,o=this.getDuration();o>0&&(this.timeout=window.setTimeout(function(){a.handleClose()},o))}},{key:"stopTimer",value:function(){clearTimeout(this.timeout)}},{key:"render",value:function(){var a,o=this.props,i=o.className,l=o.classNames,s=o.style,c=o.styles,d=o.type,f=o.colorful,v=o.message,h=o.onAfterClose,g=o.visible,_=function(){if(!d)return null;var y={success:Yy,warning:Uc,error:Gu,info:Uc,loading:function(){return m.createElement("i",null)}},D=y[d];return D&&m.createElement(D,null)},w=(a=this.props.prefixCls)!==null&&a!==void 0?a:this.context.getPrefixCls("msg-toast",this.props.prefixCls);return m.createElement("div",{className:pe("".concat(w,"-container"),l?.container),style:c?.container},m.createElement($s,{classNames:w,appear:!0,exit:!0,in:g,onExited:h,timeout:{enter:za.NORMAL,exit:za.FAST}},m.createElement("div",{className:pe(w,i),style:s},m.createElement("div",{className:pe("".concat(w,"-content"),d,{colorful:f})},m.createElement("div",{className:"".concat(w,"-icon")},_()),m.createElement("div",{className:"".concat(w,"-text")},v)))))}}]),r}(m.Component);C1.propTypes={className:$r.string,classNames:$r.object,style:$r.object,styles:$r.object,type:$r.oneOf(["error","warning","success","info","loading"]),visible:$r.bool,message:$r.string,onClose:$r.func},C1.contextType=fi,C1.defaultProps={type:"success",colorful:!0};const Ant=C1;function knt(e){var t=Pnt();return function(){var n=Pr(e),a;if(t){var o=Pr(this).constructor;a=Pt(n,arguments,o)}else a=n.apply(this,arguments);return go(this,a)}}function Pnt(){if(typeof Reflect>"u"||!Pt||Pt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Pt(Boolean,[],function(){})),!0}catch{return!1}}var T1=function(e){ho(r,e);var t=knt(r);function r(n){var a;return Cr(this,r),a=t.call(this,n),a.state={messages:[]},a}return Tr(r,[{key:"componentDidMount",value:function(){var a=this.props.onReady;a&&a(this)}},{key:"getUuid",value:function(){var a=Date.now();return"message_"+a}},{key:"getVisibleCount",value:function(a){return ba(Cl(this.state.messages,function(o){return o.visible&&o.messageType===a}))}},{key:"add",value:function(a){var o=this;return new da(function(i){a.key||si(a,"key",o.getUuid());var l=a.key;o.setState(function(s){var c=s.messages;return Hu(c,function(d){return d.key!==l})?{messages:Nc(c,ue(ue({},a),{visible:!0,onClose:function(){o.hide(l)},onAfterClose:function(){o.remove(l),a.onClose&&a.onClose()}}))}:{messages:c}},function(){return i()})})}},{key:"hide",value:function(a){var o=this,i=this.props.onClose;this.setState(function(l){var s=l.messages;return{messages:En(s,function(c){return c.key===a?ue(ue({},c),{visible:!1}):c})}},function(){var l=bE(o.state.messages,function(s){return a===s.key});l&&br(i)&&i(l.messageType,l.key)})}},{key:"remove",value:function(a){this.setState(function(o){var i=o.messages;return{messages:Cl(i,function(l){return l.key!==a})}})}},{key:"render",value:function(){var a=this.props.messageType;return m.createElement(m.Fragment,null,En(this.state.messages,function(o){switch(a){case"toast":return m.createElement(Ant,o);case"notification":return m.createElement(Tnt,o,o.content)}}))}}]),r}(m.Component);T1.propTypes={placement:$r.string,messageType:$r.string,onReady:$r.func},T1.defaultProps={placement:"top-right"},T1.contextType=fi;const Nnt=T1;var Mnt=function(){function e(){Cr(this,e),this.items=[]}return Tr(e,[{key:"enqueue",value:function(r){this.items.push(r)}},{key:"dequeue",value:function(){if(!this.isEmpty())return this.items.shift()}},{key:"front",value:function(){return GRe(this.items)}},{key:"isEmpty",value:function(){return Nn(this.items)}},{key:"size",value:function(){return this.items.length}},{key:"clear",value:function(){this.items=[]}},{key:"remove",value:function(r){tj(this.items,r)}}]),e}();const Lnt=Mnt;var znt=globalThis&&globalThis.__awaiter||function(e,t,r,n){function a(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=da))(function(o,i){function l(d){try{c(n.next(d))}catch(f){i(f)}}function s(d){try{c(n.throw(d))}catch(f){i(f)}}function c(d){d.done?o(d.value):a(d.value).then(l,s)}c((n=n.apply(e,t||[])).next())})},lV={maxCount:{toast:null,notification:null}},Bnt=function(){function e(){Cr(this,e),this.messageInstance={},this.messageQueue={},this.invokeLock={}}return Tr(e,[{key:"add",value:function(r){var n=r.messageType;this.getQueueByMessageType(n).enqueue(r),this.invokeMessageInQueue(n)}},{key:"remove",value:function(r){gr(this.messageInstance,function(n){n.remove(r)}),gr(this.messageQueue,function(n){n.remove(function(a){return a.key===r})})}},{key:"typeOpen",value:function(r,n,a,o){var i={messageType:"toast",type:r};n&&Pn(n)==="object"&&"message"in n?i=ue(ue({},n),i):i=ue({message:n,duration:a,onClose:o},i),this.add(i)}},{key:"success",value:function(r,n,a){this.typeOpen("success",r,n,a)}},{key:"error",value:function(r,n,a){this.typeOpen("error",r,n,a)}},{key:"info",value:function(r,n,a){this.typeOpen("info",r,n,a)}},{key:"warning",value:function(r,n,a){this.typeOpen("warning",r,n,a)}},{key:"loading",value:function(r,n,a){this.typeOpen("loading",r,n,a)}},{key:"config",value:function(r){FE(lV,r)}},{key:"invokeMessageInQueue",value:function(r){return znt(this,void 0,void 0,iV.mark(function n(){var a,o,i,l,s;return iV.wrap(function(d){for(;;)switch(d.prev=d.next){case 0:if(!this.invokeLock[r]){d.next=2;break}return d.abrupt("return");case 2:this.invokeLock[r]=!0,a=kt(lV,"maxCount.".concat(r)),o=this.getQueueByMessageType(r);case 5:if(o.isEmpty()){d.next=18;break}return d.next=8,this.getInstance(o.front());case 8:if(i=d.sent,l=this.getMessageCount(r),!(zr(a)&&l>=a)){d.next=12;break}return d.abrupt("break",18);case 12:if(s=o.dequeue(),!s){d.next=16;break}return d.next=16,i.add(s);case 16:d.next=5;break;case 18:this.invokeLock[r]=!1;case 19:case"end":return d.stop()}},n,this)}))}},{key:"getMessageInstanceKey",value:function(r){var n=r.placement||"top-right";return r.messageType+n}},{key:"getInstance",value:function(r){var n=this.getMessageInstanceKey(r);return this.messageInstance[n]?da.resolve(this.messageInstance[n]):this.createInstance(r)}},{key:"createInstance",value:function(r){var n=this,a=document.createElement("div"),o=this.getMessageInstanceKey(r);return document.body&&document.body.appendChild(a),new da(function(i){Kr.render(m.createElement(Hy,C6(),m.createElement(Nnt,we({},r,{onReady:function(s){n.messageInstance[o]={add:function(d){s.add(d)},remove:function(d){s.hide(d)},component:s,destroy:function(){Kr.unmountComponentAtNode(a),document.body.removeChild(a)}},i(n.messageInstance[o])},onClose:function(s){n.invokeMessageInQueue(s)}}))),a)})}},{key:"getQueueByMessageType",value:function(r){return this.messageQueue[r]||(this.messageQueue[r]=new Lnt),this.messageQueue[r]}},{key:"getMessageCount",value:function(r){var n=0;return gr(this.messageInstance,function(a){n+=a.component.getVisibleCount(r)}),n}}]),e}();const jnt=new Bnt;var Unt=function(t){var r=t.className,n=t.direction,a=t.index,o=t.children,i=t.split,l=t.wrap,s=t.horizontalSize,c=t.verticalSize,d=t.latestIndex,f=t.supportFlexGap,v=t.prefixCls,h={};return f||(n==="vertical"?a0&&Xnt(f)?(v=Znt(f),s=sV(e,t,f,v,s,o-1)-1):(Qnt(s+1),e[s]=f),s++),c++;return s},eat=sV,tat=Re,rat=eat,nat=Ma,aat=ni,oat=Ou,iat=i0;tat({target:"Array",proto:!0},{flat:function(){var t=arguments.length?arguments[0]:void 0,r=nat(this),n=aat(r),a=iat(r,0);return a.length=rat(a,r,r,n,0,t===void 0?1:oat(t)),a}});var lat=ca,sat=lat("Array","flat"),cat=Sn,uat=sat,LC=Array.prototype,dat=function(e){var t=e.flat;return e===LC||cat(LC,e)&&t===LC.flat?uat:t},fat=dat,pat=fat,vat=pat,hat=vat,gat=hat,_at=gat;(function(e){e.exports=_at})(Gnt),function(e){e.exports=MC}(Ynt);const Ml=qt(NC);var mat=function(t){var r=t.descriptors;return $.createElement("colgroup",null,Ct(r).call(r,function(n){return n.type==="blank"?$.createElement("col",{key:n.blankSide,style:{width:n.width}}):$.createElement("col",{key:n.col.dataIndex,style:{width:n.col.width}})}))};const xat=mat;var bat=function(){function e(){Cr(this,e),this.rects=[]}return Tr(e,[{key:"testSkip",value:function(r,n){return this.rects.some(function(a){var o=a.left,i=a.right,l=a.top,s=a.bottom;return o<=n&&nr})}},{key:"add",value:function(r,n,a,o){this.rects.push({left:n,right:n+a,top:r,bottom:r+o})}}]),e}(),yat=function(t){var r=t.getRowProps,n=t.renderInfo,a=t.dataSource,o=t.rowHeightManager,i=t.fixedLeftClassName,l=i===void 0?"":i;if(!n)return null;var s=n.verticalRenderRange,c=s.topIndex,d=s.bottomIndex,f={first:0,offset:c,limit:d,last:a.length-1},v=At(a).call(a,c,d),h=Ml(n),g=n.horizontalRenderRange,_=new bat,w=h.full.length,b=h.left.length,y=h.right.length,D=function(I,C){var R,P=f.offset+C;_.stripUpwards(P);var O=r?r(I,P):{},N=pe("table-row",{first:P===f.first,last:P===f.last,even:P%2===0,odd:P%2===1},O.className),A=ue(ue({},O),{onClick:function(k){K5e()||O.onClick&&O.onClick(k)},className:N,"data-rowindex":P,children:Ct(R=n.visible).call(R,function(z){if(z.type==="blank"){var k=o.cache[P];return $.createElement("td",{className:"table-cell",key:z.blankSide,style:{height:k}})}return F(I,P,z.col,z.colIndex)})});return $.createElement("tr",we({key:P},A))},F=function(I,C,R,P){if(_.testSkip(C,P))return null;var O=I[R.dataIndex||""],N=R.getCellProps?R.getCellProps(O,I,C):{},A=O;if(R.render&&(A=R.render(O,I,C)),N.rowSpan===0||N.colSpan===0)return null;var z=1,k=1;if(R.getSpanRect){var M=R.getSpanRect(O,I,C);z=M===null?1:M.right-P,k=M===null?1:M.bottom-C}else zr(N.colSpan)&&(z=N.colSpan),zr(N.rowSpan)&&(k=N.rowSpan);k=Math.min(k,f.limit-C),z=Math.min(z,b+g.rightIndex-P);var T=z>1||k>1;T&&_.add(C,P,z,k);var B={},L=P=w-y;l||(L?(B.position="sticky",B.left=n.stickyLeftMap.get(P)):X&&(B.position="sticky",B.right=n.stickyRightMap.get(P)));var ee=ue(ue(ue(ue({},N),{className:pe("table-cell",N.className,Ee({first:P===0,last:P+z===w,"fixed-left":L,"last-fixed-left":K,"fixed-right":X},l,L))}),T?{colSpan:z,rowSpan:k}:null),{style:ue(ue({textAlign:R.align},N.style),B),children:$.createElement("div",{className:"cell-content"},A)});return $.createElement("td",we({key:P},ee,{"data-index":R.dataIndex}))};return $.createElement("table",null,$.createElement(xat,{descriptors:n.visible}),$.createElement("tbody",null,Ct(v).call(v,D)))},cV=20,wat=function(t){var r=t.leftFixedTotalWidth,n=t.rightFixedTotalWidth;return $.createElement($.Fragment,null,!!r&&$.createElement("div",{className:"fixed-shadow-mask",style:{left:0,width:r+cV}},$.createElement("div",{className:"fixed-shadow left"})),!!n&&$.createElement("div",{className:"fixed-shadow-mask",style:{right:0,width:n+cV}},$.createElement("div",{className:"fixed-shadow right"})))};const Dat=wat;function uV(e,t){var r=typeof Mu<"u"&&Lu(e)||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Iat(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,a=function(){};return{s:a,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return o=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!o&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function Iat(e,t){var r;if(e){if(typeof e=="string")return dV(e,t);var n=At(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Il(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return dV(e,t)}}function dV(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r1&&arguments[1]!==void 0?arguments[1]:"pre",n=function o(i){if(i){var l=uV(i),s;try{for(l.s();!(s=l.n()).done;){var c=s.value;Ll(c)?a.push(c):r==="pre"?(a.push(c),o(c.children)):r==="post"?(o(c.children),a.push(c)):o(c.children)}}catch(d){l.e(d)}finally{l.f()}}},a=[];return n(t),a},$at=function(t){var r=function a(o,i){var l=uV(o),s;try{for(l.s();!(s=l.n()).done;){var c=s.value;Ll(c)?n=Math.max(n,i):a(c.children||[],i+1)}}catch(d){l.e(d)}finally{l.f()}},n=-1;return r(t,0),n},fd=function(t,r,n){var a;return typeof t=="string"?a=r[t]:typeof t=="function"&&(a=t(r)),a||(a=String(n)),a},Sat=function(t,r){return function(){for(var n=arguments.length,a=new Array(n),o=0;o=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return o=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!o&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function Tat(e,t){var r;if(e){if(typeof e=="string")return fV(e,t);var n=At(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Il(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return fV(e,t)}}function fV(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return o=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!o&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function Aat(e,t){var r;if(e){if(typeof e=="string")return pV(e,t);var n=At(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Il(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return pV(e,t)}}function pV(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&c.push({colIndex:h,col:v,children:g.filtered})}}}catch(_){d.e(_)}finally{d.f()}return{filtered:c,leafCount:s}};return a(t,n).filtered},R1=function(t,r){for(var n=function l(s,c){var d=0,f=jC(s),v;try{for(f.s();!(v=f.n()).done;){var h=v.value;if(Ll(h)){d+=1;var g={type:"normal",width:h.col.width,col:h.col,colIndex:h.colIndex,colSpan:1,isLeaf:!0};a[c].push(g),i.push(g)}else{var _=l(h.children||[],c+1);d+=_.leafCount,_.leafCount>0&&a[c].push({type:"normal",width:h.col.width,col:h.col,colIndex:h.colIndex,colSpan:_.leafCount,isLeaf:!1})}}}catch(w){f.e(w)}finally{f.f()}return{leafCount:d}},a=[],o=0;o0&&l.push({col:f,colIndex:v,children:h.result})}}}catch(g){c.e(g)}finally{c.f()}return{result:l,leafCount:s}};return n(t,r).result},Pat=function(t,r){var n=Ml(t),a=t.nested,o=t.horizontalRenderRange,i=t.useVirtual;if(i.header){var l,s,c=R1(UC(a.left,0),r),d=kat(a.center,o,n.left.length),f=R1(d,r),v=R1(UC(a.right,n.left.length+n.center.length),r);return{flat:_t(l=[]).call(l,lr(Ml(c)),[{type:"blank",width:o.leftBlank,blankSide:"left"}],lr(Ml(f)),[{type:"blank",width:o.rightBlank,blankSide:"right"}],lr(Ml(v))),leveled:Ct(s=JB(r)).call(s,function(h){var g;return _t(g=[]).call(g,lr(c.leveled[h]),[{type:"blank",width:o.leftBlank,blankSide:"left"}],lr(f.leveled[h]),[{type:"blank",width:o.rightBlank,blankSide:"right"}],lr(v.leveled[h]))})}}return R1(UC(a.full,0),r)},Nat=function(t){var r,n,a=t.renderInfo,o=t.onColumnResizeStart,i=t.fixedLeftClassName,l=i===void 0?"fixedLeftClassName":i,s=t.resizable;if(!a)return null;var c=a.nested,d=Ml(a),f=a.stickyLeftMap,v=a.stickyRightMap,h=$at(c.full)+1,g=Pat(a,h),_=d.full.length,w=d.left.length,b=d.right.length,y=Ct(r=g.leveled).call(r,function(D,F){var S=Ct(D).call(D,function(I){if(I.type==="normal"){var C=I.colIndex,R=I.colSpan,P=I.isLeaf,O=I.col,N=O.headerCellProps||{};if(N.rowSpan===0||N.colSpan===0)return null;var A={},z=C=_-b;l||(z?(A.position="sticky",A.left=f.get(C)):k&&(A.position="sticky",A.right=v.get(C+R-1)));var M="resizable"in O?O.resizable:s;return $.createElement("th",we({key:C},N,{className:pe("table-header-cell",N.className,Ee({first:C===0,last:C+R===_,"fixed-left":z,"fixed-right":k},l,z)),colSpan:N.colSpan||R,rowSpan:N.rowSpan||(P?h-F:void 0),style:ue(ue({},N.style),A)}),$.createElement("span",{className:"header-cell-wrapper"},m.isValidElement(O.title)?O.title:$.createElement("span",{className:"header-cell-content"},O.title)),P&&M&&$.createElement("span",{className:"resize-spanner",onMouseDown:function(B){return o(B,O.dataIndex,O.width)}}))}else return I.width>0?$.createElement("th",{key:I.blankSide}," "):null});return $.createElement("tr",{key:F,className:pe("table-header-row",{first:F===0,last:F===h-1})},S)});return $.createElement("table",null,$.createElement("colgroup",null,Ct(n=Ml(g)).call(n,function(D){return D.type==="blank"?D.width>0?$.createElement("col",{key:D.blankSide,style:{width:D.width}}):null:$.createElement("col",{key:D.colIndex,style:{width:D.width}})})),$.createElement("thead",null,y))};const Mat=Nat;var vV=100,Lat=3e3,zat=100,Bat=100,jat=300,hV=Qa.cssSupport("position","sticky"),Uat=function(t){var r;return _t(r="".concat(t,"-fixed-left-")).call(r,Math.floor(1e5+Math.random()*9e5))},Hat=function(t,r){var n=m.useRef(Uat(t)),a=m.useRef();m.useEffect(function(){return function(){var i=a.current;if(i){var l=i.parentElement;l&&l.removeChild(i)}}},[]);var o=function(l){var s,c;if(!hV){var d=n.current,f=_t(s=_t(c=".".concat(d," { transform: translate3d(")).call(c,l,"px, 0, ")).call(s,r||0,"px)}"),v=a.current;if(v)v.textContent!==f&&(v.innerHTML=f);else{var h=document.createElement("style");a.current=h,h.id=d,h.innerHTML=f,document.getElementsByTagName("HEAD").item(0).appendChild(h)}}};return[hV?"":n.current,o]};const gV=Hat;var _V=function(){function e(){Cr(this,e),this._snapshots={},this._rowPropsGetters=[]}return Tr(e,[{key:"appendRowPropsGetter",value:function(r){return this._rowPropsGetters.push(r),this}},{key:"getDataSource",value:function(r){return ut(r)?this._dataSource:this._snapshots[r].dataSource}},{key:"getColumns",value:function(r){return ut(r)?this._columns:this._snapshots[r].columns}},{key:"ensurePrimaryKey",value:function(r){if(this.primaryKey===null)throw new Error(r?"使用 ".concat(r," 之前必须先设置 primaryKey"):"必须先设置 primaryKey");return this.primaryKey}},{key:"setPrimaryKey",value:function(r){return this.primaryKey=r,this}},{key:"input",value:function(r){if(!ut(this._dataSource)||!ut(this._columns))throw new Error("input 不能调用两次");return this._dataSource=r.dataSource,this._columns=r.columns,this.snapshot("input"),this}},{key:"dataSource",value:function(r){return this._dataSource=r,this}},{key:"columns",value:function(r){return this._columns=r,this}},{key:"snapshot",value:function(r){var n;return this._snapshots[r]={dataSource:this._dataSource,columns:this._columns,rowPropsGetters:At(n=this._rowPropsGetters).call(n)},this}},{key:"use",value:function(r){return r(this)}},{key:"mapDataSource",value:function(r){return this.dataSource(r(this.getDataSource()))}},{key:"mapColumns",value:function(r){return this.columns(r(this.getColumns()))}},{key:"getProps",value:function(r){var n=this;if(!r||!this._snapshots[r]){var a={dataSource:this._dataSource,columns:this._columns};return this._rowPropsGetters.length>0&&(a.getRowProps=function(d,f,v){return n._rowPropsGetters.reduce(function(h,g){return g?BC(h,g(d,f,v)):h},{})}),a}else{var o=this._snapshots[r],i=o.dataSource,l=o.columns,s=o.rowPropsGetters,c={dataSource:i,columns:l};return s.length>0&&(c.getRowProps=function(d,f,v){return s.reduce(function(h,g){return g?BC(h,g(d,f,v)):h},{})}),c}}}]),e}(),Wat=function(){return new _V},Vat=function(t,r){return t===r},Kat=function(){return function(t){var r=t.getDataSource();return t.mapColumns(Oat(function(n,a){var o=a.startIndex,i=a.endIndex;if(!n.autoRowSpan||!Ll(n))return n;for(var l=br(n.autoRowSpan)?n.autoRowSpan:Vat,s=[],c=0,d=null,f=null,v=0;v tr[data-row-id="'.concat(v,'"]')):h=document.querySelectorAll('tbody > tr[data-row-id="'.concat(v,'"]')),gr(h,function(g){c?g.classList.add("hover"):g.classList.remove("hover")})};return a.appendRowPropsGetter(function(i,l,s){var c,d=s?"".concat(r(i,l)):_t(c="".concat(r(i,l),"-")).call(c,n);return{className:d===HC?"hover":"","data-row-id":d,onMouseEnter:function(){o(i,l,!0,s)},onMouseLeave:function(){o(i,l,!1,s)},onMouseOver:function(){o(i,l,!0,s)}}}),a}},WC,Yat=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return function(r){var n,a=r.ensurePrimaryKey("multiSelect"),o=t.isDisabled||function(){return!1},i=t.clickArea||"check",l=t.value||[],s=function(I,C,R){t.onChange&&t.onChange(I,C,R)},c=r.getDataSource(),d=i==="check",f=i==="cell",v=new od,h=[];c.forEach(function(S,I){var C=fd(a,S,I);v.add(C),o(S,I)||h.push(C)});var g=new od(l),_=h.length>0&&h.every(function(S){return g.has(S)}),w=function(I,C){var R=kt(C,"nativeEvent.shiftKey")||kt(C,"shiftKey"),P=I.value,O=I.isCheck,N=[P];if(R&&!ut(WC)){var A=DE(h,kt(WC,"value")),z=DE(h,P);N=NE(h,Math.min(A,z),Math.max(A,z)+1)}return WC={value:P,isCheck:O},{checkValues:N,isCheck:O}},b=function(I,C,R){var P=w({value:C,isCheck:!I},R),O=P.checkValues,N=P.isCheck;N?s(BE(l,O),C,"check"):s(El(l,O),C,"uncheck")},y=function(){_?s(El(h,l),"","uncheck-all"):s(BE(l,h),"","check-all")},D=ue(ue({title:$.createElement(id,{checked:_,onChange:d?y:void 0}),headerCellProps:{style:f?{cursor:"pointer"}:void 0,onClick:f?y:void 0},width:35,dataIndex:a,align:"center"},t.column),{getCellProps:function(I,C,R){var P=fd(a,C,R);if(v.has(P)&&f){var O=g.has(P),N=o(C,R);return{style:{cursor:N?"not-allowed":"pointer"},onClick:N?void 0:function(A){A.stopPropagation(),b(O,P,A)}}}return{}},render:function(I,C,R){var P=fd(a,C,R),O=g.has(P),N=o(C,R);return t.disableTooltip&&N?$.createElement(tC,t.disableTooltip,$.createElement("span",null,$.createElement(id,{checked:O,disabled:N}))):$.createElement("span",{onClick:d?function(A){return A.stopPropagation()}:void 0},$.createElement(id,{checked:O,disabled:N,onChange:d?function(A,z){z&&z.stopPropagation(),b(O,P,z)}:void 0}))}}),F=At(n=r.getColumns()).call(n);return F.unshift(D),r.columns(F),r.appendRowPropsGetter(function(S,I){var C=fd(a,S,I);if(!v.has(C))return{};var R={},P="",O=g.has(C),N={className:P,style:R};if(i==="row"){var A=o(S,I);A||(R.cursor="pointer",N.onClick=function(z){z.stopPropagation(),b(O,C,z)})}return N}),r}};function Gat(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return function(r){var n,a=e.clickArea||"radio",o=e.isDisabled||function(){return!1},i=r.ensurePrimaryKey("singleSelect"),l=e.value,s=function(v){v===l&&!e.cancel||e.onChange&&e.onChange(v)},c=ue(ue({width:35,dataIndex:i},e.column),{getCellProps:function(v,h,g){if(a==="cell"){var _=fd(i,h,g),w=o(h,g);return{style:{cursor:w?"not-allowed":"pointer"},onClick:w?void 0:function(b){b.stopPropagation(),s(_)}}}return{}},render:function(v,h,g){var _=fd(i,h,g);return $.createElement($tt,{checked:l===_,disabled:o(h,g),onChange:a==="radio"?function(w,b){b&&b.stopPropagation(),s(_)}:void 0})}}),d=At(n=r.getColumns()).call(n);return d.unshift(c),r.columns(d),r.appendRowPropsGetter(function(f,v){var h=fd(i,f,v),g={},_="",w;return a==="row"&&!o(f,v)&&(g.cursor="pointer",w=function(y){y.stopPropagation(),s(h)}),{className:_,style:g,onClick:w}}),r}}var Xat=function(t){var r=t.children,n=t.sortOrder,a=function(){if(n){var i={ascend:RHe,descend:k9},l=i[n];return l&&$.createElement(l,null)}return $.createElement(BHe,null)};return $.createElement($.Fragment,null,r,$.createElement("div",{className:"sort-icon"},a()))},VC=["ascend","descend",null],Zat=function(t){var r=VC.indexOf(t);return VC[r===VC.length-1?0:r+1]},Qat=function(t){var r=t.onSortChange,n=t.SortHeaderCell,a=n===void 0?Xat:n;return function(o){var i=o.getColumns(),l=function(d){var f=d.sortOrder||null,v=Zat(f);r({field:d.dataIndex,order:v,column:d})},s=function(d){var f=function v(h){var g=ue({},h),_=h.sortable;if(_){var w=h.sortOrder;g.title=$.createElement(a,{onToggle:function(D){D.stopPropagation(),l(h)},sortOrder:w,column:h},m.isValidElement(h.title)?h.title:$.createElement("span",{className:"header-cell-content"},h.title)),g.headerCellProps=BC({onClick:function(D){D.stopPropagation(),l(h)},style:{cursor:"pointer",paddingRight:20}},g.headerCellProps||{})}if(!Ll(h)){var b;g.children=Ct(b=h.children||[]).call(b,v)}return g};return Ct(d).call(d,f)};return o.columns(s(i)),o}};const Jat=Object.freeze(Object.defineProperty({__proto__:null,TablePipeline:_V,createTablePipeline:Wat,features:Object.freeze(Object.defineProperty({__proto__:null,autoRowSpan:Kat,mergeRowHover:qat,multiSelect:Yat,singleSelect:Gat,sort:Qat},Symbol.toStringTag,{value:"Module"}))},Symbol.toStringTag,{value:"Module"}));var eot=Tr(function e(t){var r=this;Cr(this,e),this.setBodyCursor=function(n){var a=document.querySelector("body");a&&(a.style.cursor=n)},this.startResize=function(){var n=r.props,a=n.startClientX,o=n.content,i=n.resizeLine;if(a){document.addEventListener("mousemove",r.onColumnResizing),document.addEventListener("mouseup",r.onColumnResizeEnd),r.setBodyCursor("ew-resize");var l=o.getBoundingClientRect(),s=l.x;i.style.height="".concat(o.scrollHeight,"px"),i.style.left="".concat(a-s,"px"),i.className="column-resize-line active",o.className=DC(o.className,"resizing")}},this.getWidth=function(n){var a=r.props,o=a.startClientX,i=a.columnWidth,l=a.minWidth;return r.width=n.clientX-o+i,r.width=Math.max(l,r.width),r.width},this.onColumnResizing=function(n){n.stopPropagation();var a=r.props,o=a.startClientX,i=a.columnWidth,l=a.minWidth,s=a.content,c=s.getBoundingClientRect(),d=c.x,f=n.clientX-d;i+n.clientX-o=r)break;a+=o,n+=1}return this.overscanUpwards(n,a)}},{key:"getEnd",value:function(r,n){for(var a=n.topIndex,o=n.topBlank;a .table-row")}},{key:"getTableBodyHtmlTable",value:function(){return this.table.querySelector(".table-body table")}},{key:"getLeftFixedShadow",value:function(){var r=".fixed-shadow-mask .left";return this.table.querySelector(r)}},{key:"getRightFixedShadow",value:function(){var r=".fixed-shadow-mask .right";return this.table.querySelector(r)}}]),e}();function mV(e,t){var r=typeof Mu<"u"&&Lu(e)||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=not(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,a=function(){};return{s:a,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return o=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!o&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function not(e,t){var r;if(e){if(typeof e=="string")return xV(e,t);var n=At(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Il(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return xV(e,t)}}function xV(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&i.push(ue(ue({},c),{children:d}))}}}catch(f){l.e(f)}finally{l.f()}return i};return n(t)},bV=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return r?zr(t)?t>=r:!1:!!t},yV=function(t,r){var n=0,a=function s(c){return Ll(c)?bV(c.fixed,r):bV(c.fixed,r)||wy(c.children,s)},o=mV(t),i;try{for(o.s();!(i=o.n()).done;){var l=i.value;if(a(l))n+=1;else break}}catch(s){o.e(s)}finally{o.f()}return n},oot=function(t){var r,n,a=t.offsetX,o=t.maxRenderWidth,i=Ml(t),l=t.useVirtual,s=t.overScan;if(!l.horizontal)return{leftIndex:0,leftBlank:0,rightIndex:i.full.length,rightBlank:0};for(var c=0,d=0,f=0,v=0,h=Math.max(0,a-s);c_)break}var b=i.center.length-c-d,y=zc(Ct(r=At(n=i.center).call(n,i.center.length-b)).call(r,function(D){return D.width}));return{leftIndex:c,leftBlank:f,rightIndex:c+d,rightBlank:y}},iot=function e(t){var r=t.maxRenderWidth,n=t.columns,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,o=yV(n,a),i=At(n).call(n,0,o),l=zc(En(dd(i,"leaf-only"),function(s){return s.width}));return l>=r&&a<3?e({maxRenderWidth:r,columns:n},a+1):{leftNestedFixedCount:o,leftNested:i}},lot=function(t){var r,n,a,o,i,l,s,c=t.columns,d=t.dataSource,f=t.defaultColumnWidth,v=t.useVirtual,h=t.offsetX,g=t.maxRenderWidth,_=t.getVerticalRenderRange,w=t.overScan,b=aot(c,f),y=iot({columns:b,maxRenderWidth:g}),D=y.leftNestedFixedCount,F=y.leftNested,S=dd(b,"leaf-only"),I,C,R=zc(Ct(S).call(S,function(De){return De.width}));R=g?(I={left:[],right:[],full:S,center:S},C={left:[],right:[],full:b,center:b}):(I={left:dd(F,"leaf-only"),full:S,right:dd(A,"leaf-only"),center:dd(N,"leaf-only")},C={left:F,full:b,right:A,center:N});for(var z=S.length*d.length>Lat,k=S.length>Bat&&S.every(function(De){return zr(De.width)}),M=d.length>zat,T=k||M,B=S.length>jat,L=yn(v),K={horizontal:qC(L?v.horizontal:v,z||T),vertical:qC(L?v.vertical:v,z||T),header:qC(L?v.header:v,B)},X=oot({maxRenderWidth:g,offsetX:h,useVirtual:K,flat:I,overScan:w}),ee=_(K),q=X.leftBlank,G=X.leftIndex,W=X.rightBlank,V=X.rightIndex,Y=iE(_t(r=[]).call(r,lr(Ct(n=I.left).call(n,function(De,Oe){return{type:"normal",col:De,colIndex:Oe}})),[q>0&&{type:"blank",blankSide:"left",width:q}],lr(Ct(a=At(o=I.center).call(o,G,V)).call(a,function(De,Oe){return{type:"normal",col:De,colIndex:I.left.length+G+Oe}})),[W>0&&{type:"blank",blankSide:"right",width:W}],lr(Ct(i=I.right).call(i,function(De,Oe){return{type:"normal",col:De,colIndex:I.full.length-I.right.length+Oe}})))),Z=Ol(Y).call(Y,Boolean),te=I.full.length,J=I.left.length,ae=I.right.length,re=new fa,ie=0,ve=0;ve0||C.right.length>0}},sot=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ue=="function")for(var a=0,n=Ue(e);a0?{VERTICAL_OVER_SCAN_SIZE:t,HORIZONTAL_OVER_SCAN_SIZE:t}:yn(t)?{VERTICAL_OVER_SCAN_SIZE:t.vertical,HORIZONTAL_OVER_SCAN_SIZE:t.horizontal}:{VERTICAL_OVER_SCAN_SIZE:vV,HORIZONTAL_OVER_SCAN_SIZE:vV}},uot=function(t,r){return t||(r==="large"?46:34)},O1=Qa.cssSupport("position","sticky"),wV=function(t){var r,n=t.className,a=t.id,o=t.style,i=t.size,l=t.estimatedRowHeight,s=t.getRowProps,c=t.dataSource,d=t.columns,f=t.useVirtual,v=f===void 0?"auto":f,h=t.defaultColumnWidth,g=h===void 0?100:h,_=t.overScanSize,w=t.fixedHeader,b=t.resize,y=t.scrollLeft,D=t.scrollTop,F=t.hasCellBorder,S=t.hasOutBorder,I=S===void 0?!0:S,C=t.striped,R=t.onTableScroll,P=t.blankAllowScroll,O=P===void 0?!0:P,N=t.rowHeightClearDeps,A=N===void 0?[]:N,z=t.noWrap,k=t.emptyContent,M=t.prefixCls,T=sot(t,["className","id","style","size","estimatedRowHeight","getRowProps","dataSource","columns","useVirtual","defaultColumnWidth","overScanSize","fixedHeader","resize","scrollLeft","scrollTop","hasCellBorder","hasOutBorder","striped","onTableScroll","blankAllowScroll","rowHeightClearDeps","noWrap","emptyContent","prefixCls"]),B=m.useState(0),L=me(B,2),K=L[0],X=L[1],ee=m.useState(0),q=me(ee,2),G=q[0],W=q[1],V=m.useState(400),Y=me(V,2),Z=Y[0],te=Y[1],J=m.useState(0),ae=me(J,2),re=ae[0],ie=ae[1],ve=m.useState(!1),oe=me(ve,2),fe=oe[0],ge=oe[1],le=m.useRef(null),_e=m.useRef(),De=m.useRef(),Oe=m.useState(!0),Be=me(Oe,2),Pe=Be[0],Ge=Be[1],ke=m.useRef(),Ze=m.useRef("first"),Ke=m.useRef(null),ct=m.useState(0),Xe=me(ct,2),ot=Xe[0],tt=Xe[1],Dt=m.useRef(!1),Bt=cot(_),gt=Bt.VERTICAL_OVER_SCAN_SIZE,Tt=Bt.HORIZONTAL_OVER_SCAN_SIZE,ye=xo(i),er=uot(l,ye),ft=Yt("virtual-table",M),nt=Yt("table",M),Ft=gV(nt),lt=me(Ft,2),Ie=lt[0],qe=lt[1],dt=gV(nt,1),mt=me(dt,2),Rt=mt[0],Gt=mt[1],Qe=m.useRef({top:0,left:0}),He=m.useRef(En(d,function(It){return It.width})),je=function(){tt(function(xt){return xt+1}),Dt.current=!0};ke.current||(ke.current=new KC(c.length,er,gt)),m.useEffect(function(){if(Ze.current="first",_e.current){var It=_e.current,xt=It.tableWrapper,Me=It.tableBody;Ze.current=Me,W(xt.scrollTop),X(Me.scrollLeft)}},[c,d]),m.useEffect(function(){if(_e.current&&O){var It=_e.current,xt=It.tableWrapper,Me=It.tableBody,Le=It.tableHeader,St=I?2:0;Me.style.minHeight="".concat(xt.offsetHeight-Le.offsetHeight-St,"px")}},[Z]),m.useEffect(function(){if(ke.current=new KC(c.length,er,gt),Ze.current="first",Qe.current&&Qe.current.left&&Mt(Qe.current.left),_e.current&&!O1){var It=_e.current,xt=It.tableHeader,Me=It.horizontalScroll;w&&(xt.style.transform="translateY(0)"),Me.style.bottom="0"}je()},_t(r=[c,er,gt]).call(r,lr(A))),m.useEffect(function(){var It=En(d,function(xt){return xt.width});w4e(He.current,It)||(He.current=It,ke.current=new KC(c.length,er,gt),je())},[d]);var ze=function(xt){var Me=c.length;return xt.vertical?ke.current.getRenderRange(G,Z,Me):{topIndex:0,topBlank:0,bottomIndex:Me,bottomBlank:0}},Ve=m.useMemo(function(){var It=lot({columns:d,dataSource:c,defaultColumnWidth:g,useVirtual:v,offsetX:K,maxRenderWidth:re,getVerticalRenderRange:ze,overScan:Tt});return De.current=It,It},[d,c,g,v,K,re,G,Z,ot]);m.useEffect(function(){Ae(),Fe(),$t(),st()}),m.useEffect(function(){var It=_e.current.tableBody;zr(y)&&It&&It.scrollLeft!==y&&setTimeout(function(){Ze.current=It,It.scrollLeft=y})},[y]),m.useEffect(function(){var It=_e.current.tableWrapper;zr(D)&&It&&It.scrollTop!==D&&setTimeout(function(){It.scrollTop=D})},[D]);var Ae=function(){_e.current=new rot(le.current)},Fe=function(){if(Dt.current){Dt.current=!1;return}var xt=_e.current;xt.getTableRows().forEach(function(Me){var Le=Number(Me.dataset.rowindex);if(!isNaN(Le)){var St=Me.offsetHeight;ke.current.updateRow(Le,St)}})},st=function(){var xt=_e.current,Me=xt.table,Le=xt.horizontalScrollItem,St=xt.horizontalScroll;if(Me){var fr=_e.current.getTableBodyHtmlTable(),Et=fr.offsetWidth,Kt=Me.offsetWidth,Zt=Fat().height;Le.style.width="".concat(Et,"px"),St.style.marginTop="-".concat(Zt+1,"px"),Kt>=Et?fe&&ge(!1):Zt>5&&(fe||ge(!0))}},$t=function(){var xt=De.current,Me=Ml(xt),Le=xt.hasFixedColumn;if(Le){var St,fr=zc(Ct(St=Me.full).call(St,function(Kt){return Kt.width})),Et=fr>_e.current.table.clientWidth;Pe!==Et&&Ge(Et)}else Pe&&Ge(!1)},Je=function(xt){De.current.useVirtual.horizontal&&Math.abs(xt-K)>=Tt/2&&X(xt)},ht=function(xt){var Me=xt.currentTarget.scrollTop;if(Qe.current.top!==Me){if(Qe.current.top=Me,R&&R(Qe.current),!O1&&w){if(w){var Le=_e.current.tableHeader;Le.style.transform="translateY(".concat(Me,"px)")}var St=_e.current.horizontalScroll;St.style.bottom="-".concat(Me,"px")}xt.target===le.current&&De.current.useVirtual.vertical&&Math.abs(Me-G)>gt/2&&W(Me)}},Vt=function(xt){var Me=xt.currentTarget.scrollLeft;if(Ze.current==="first")Ze.current=xt.currentTarget;else if(xt.currentTarget!==Ze.current||Qe.current.left===Me)return;Qe.current.left=Me,R&&R(Qe.current),O1||(qe(Me),Gt(Me));var Le=_e.current,St=Le.tableHeader,fr=Le.tableBody,Et=Le.horizontalScroll;Je(Me),Mt(Me),gr([St,fr,Et],function(Kt){xt.currentTarget===Kt||Kt.scrollLeft===Me||(Kt.scrollLeft=Me)})},Mt=function(xt){var Me=_e.current.tableBody,Le=Ml(De.current),St=_e.current.getLeftFixedShadow();if(St){var fr=Le.left.length>0&&Pe&&xt>0;fr?(le.current.classList.add("ping-left"),St.classList.add("show-shadow")):(le.current.classList.remove("ping-left"),St.classList.remove("show-shadow"))}var Et=_e.current.getRightFixedShadow();if(Et){var Kt=Le.right.length>0&&Pe&&xt(e[e.NONE=0]="NONE",e[e.DATABASE=1]="DATABASE",e[e.SQL=2]="SQL",e[e.EXCEL=3]="EXCEL",e[e.ANALYSIS=4]="ANALYSIS",e[e.SERVER=5]="SERVER",e[e.JDY=8]="JDY",e[e.EXTERNAL=9]="EXTERNAL",e[e.OLD_FDL=16]="OLD_FDL",e))(ra||{}),el=(e=>(e.SPIDER="spider",e.DIRECT="direct",e))(el||{}),na=(e=>(e[e.NONE=0]="NONE",e[e.STRING=16]="STRING",e[e.NUMBER=32]="NUMBER",e[e.DATE=48]="DATE",e[e.DATE_TIME=49]="DATE_TIME",e))(na||{}),et=(e=>(e[e.FOLDER=100100]="FOLDER",e[e.MODEL_FOLDER=100101]="MODEL_FOLDER",e[e.INDICATOR_FOLDER=100102]="INDICATOR_FOLDER",e[e.DIMENSION_FOLDER=100103]="DIMENSION_FOLDER",e[e.BUSINESS_MODEL_FOLDER=100104]="BUSINESS_MODEL_FOLDER",e[e.TAG_FOLDER=2]="TAG_FOLDER",e[e.TABLE=200100]="TABLE",e[e.INDICATOR=200101]="INDICATOR",e[e.DIMENSION=200102]="DIMENSION",e[e.BUSINESS_MODEL=200103]="BUSINESS_MODEL",e[e.DATA_TABLE=200104]="DATA_TABLE",e[e.TAG=1]="TAG",e[e.FIELD=500100]="FIELD",e[e.SUBJECT=33]="SUBJECT",e))(et||{}),Cs=(e=>(e.DATA_ROOT="__root_group__",e.TABLE_ROOT="__table_root__",e.INDICATOR_ROOT="__index_root__",e.DIMENSION_ROOT="__dimension_root__",e.BUSINESS_MODEL_ROOT="__biz_model_root__",e.TAG_ROOT="__tag_root__",e.ANALYSIS_ROOT="__my_analysis__",e))(Cs||{}),A1=(e=>(e.TABLE_UNGROUPED="__table_ungrouped__",e.COOP_GROUP="__coop_root_group__",e))(A1||{}),GC=(e=>(e.DATA_CATALOG="data_directory",e.MODEL="model_center",e))(GC||{}),sr=(e=>(e[e.REPORT=1]="REPORT",e[e.WIDGET=2]="WIDGET",e[e.TABLE=3]="TABLE",e[e.ANALYSIS_TABLE=4]="ANALYSIS_TABLE",e[e.DOC=5]="DOC",e[e.BI_BUSINESS_MODEL=16]="BI_BUSINESS_MODEL",e[e.SUBJECT=33]="SUBJECT",e[e.SUBJECT_GROUP=34]="SUBJECT_GROUP",e[e.PACKAGE=49]="PACKAGE",e[e.PACKAGE_GROUP=50]="PACKAGE_GROUP",e[e.INDICATOR=65]="INDICATOR",e[e.DIMENSION=66]="DIMENSION",e[e.BUSINESS_MODEL=67]="BUSINESS_MODEL",e[e.FIELD=145]="FIELD",e))(sr||{}),XC=(e=>(e[e.TIME=0]="TIME",e[e.NAME=1]="NAME",e))(XC||{}),zl=(e=>(e.COMMON="COMMON",e.MATH="MATH",e.DATETIME="DATETIME",e.TEXT="TEXT",e.LOGIC="LOGIC",e.AGG="AGG",e.TABLE_CAL="TABLE_CAL",e.ANALYSIS="ANALYSIS",e.OTHER="OTHER",e))(zl||{}),k1=(e=>(e[e.FIELD=0]="FIELD",e[e.INDICATOR=1]="INDICATOR",e[e.DIMENSION=2]="DIMENSION",e))(k1||{}),Ts=(e=>(e[e.NORMAL=0]="NORMAL",e[e.PUBLISH=1]="PUBLISH",e[e.APPLYING=2]="APPLYING",e[e.CANCELING=3]="CANCELING",e))(Ts||{}),No=(e=>(e[e.SUCCESS=1]="SUCCESS",e[e.SUCCESS_AUTO=2]="SUCCESS_AUTO",e[e.FAIL_SAME_TYPE=3]="FAIL_SAME_TYPE",e[e.FAIL_STATUS_ERROR=4]="FAIL_STATUS_ERROR",e[e.FAIL=5]="FAIL",e[e.FAIL_REVIEWER_ERROR=6]="FAIL_REVIEWER_ERROR",e))(No||{}),P1=(e=>(e.RELATION_ENABLE_ERROR="71310006",e.RELATION_DUPLICATE="71310015",e.RELATION_ANALYSIS_TABLE_DISABLE="71320001",e))(P1||{}),FV=(e=>(e.FORMULA_CALCULATION_ERROR="61310048",e))(FV||{}),Yn=(e=>(e[e.ALL=1]="ALL",e[e.SUBJECT=2]="SUBJECT",e[e.TABLE=3]="TABLE",e[e.FOLDER=6]="FOLDER",e[e.INDICATOR=65]="INDICATOR",e[e.DIMENSION=66]="DIMENSION",e[e.BUSINESS_MODEL=67]="BUSINESS_MODEL",e))(Yn||{}),ZC=(e=>(e[e.DATA_CATALOG=0]="DATA_CATALOG",e[e.MODEL_CENTER=1]="MODEL_CENTER",e))(ZC||{});const $V={[FV.FORMULA_CALCULATION_ERROR]:{type:"error",message:"FDI_Calculate_Error"},[P1.RELATION_ENABLE_ERROR]:{type:"error",message:"FDI_Relation_Enable_Error"},[P1.RELATION_DUPLICATE]:{type:"error",message:"FDI_Relation_Duplicate_Add"},[P1.RELATION_ANALYSIS_TABLE_DISABLE]:{type:"error",message:"FDI_Relation_Analysis_Table_Disable"}},SV={21300001:{title:"FDI_Operation_Failed",message:"FDI_Operation_Failed_Please_Refresh"},21300018:{title:"FDI_Operation_Failed",message:"FDI_Operation_Failed_Please_Refresh"},21300019:{title:"FDI_Operation_Failed",message:"FDI_Operation_Failed_Please_Refresh"},21300014:{title:"FDI_Operation_Failed",message:"FDI_Operation_Failed_Please_Refresh"}},EV={...SV,71310014:{type:"error",title:"FDI_Operation_Failed",message:"FDI_Model_Not_Exist"},71311001:{type:"error",title:"FDI_Operation_Failed",message:"FDI_Model_No_Use_Permission"},71310001:{type:"error",title:"FDI_Operation_Failed",message:"FDI_Table_Not_Exist"},71310002:{type:"warning",title:"FDI_Rename_Failed",message:"FDI_Exist_Duplicate_Name"},7130003:{type:"warning",title:"FDI_Operation_Failed",message:"FDI_Folder_Not_Exist"},71310005:{type:"error",title:"FDI_Add_Failed",message:"FDI_Resource_Add_Error"},71310010:{type:"error",title:"FDI_Operation_Failed",message:"FDI_Indicator_Note_Exist"},71310011:{type:"warning",title:"FDI_Rename_Failed",message:"FDI_Exist_Duplicate_Name"},71310012:{type:"error",title:"FDI_Operation_Failed",message:"FDI_Dimension_Not_Exist"},71310013:{type:"warning",title:"FDI_Rename_Failed",message:"FDI_Exist_Duplicate_Name"},71310007:{type:"error",title:"FDI_Operation_Failed",message:"FDI_Business_Model_Not_Exit"},71310008:{type:"warning",title:"FDI_Rename_Failed",message:"FDI_Exist_Duplicate_Name"},71310030:{type:"warning",title:"FDI_Operation_Failed",message:"FDI_Data_No_Auth"},71310032:{type:"warning",title:"FDI_Operation_Failed",message:"FDI_Folder_Not_Exist"}},CV={71310004:{type:"warning",message:"FDI_Exist_Duplicate_Name"},71310009:{type:"warning",title:"FDI_Operation_Failed",message:"FDI_Folder_Levels_Over_limit"},71310016:{type:"error",message:"FDI_Folder_Not_Move"},71310031:{type:"warning",message:"FDI_Exist_Duplicate_Name"},71310033:{type:"warning",message:"FDI_Folder_Name_Duplicate"}},bot={...$V,...EV,...CV},yot=e=>Te.includes(Te.keys($V),e),wot=e=>Te.includes(Te.keys(EV),e),Dot=e=>Te.includes(Te.keys(CV),e),Iot=({type:e,message:t})=>{jnt.add({type:e,colorful:!1,messageType:"toast",message:t})};/*! js-cookie v3.0.5 | MIT */function N1(e){for(var t=1;t"u")){i=N1({},t,i),typeof i.expires=="number"&&(i.expires=new Date(Date.now()+i.expires*864e5)),i.expires&&(i.expires=i.expires.toUTCString()),a=encodeURIComponent(a).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var l="";for(var s in i)i[s]&&(l+="; "+s,i[s]!==!0&&(l+="="+i[s].split(";")[0]));return document.cookie=a+"="+e.write(o,a)+l}}function n(a){if(!(typeof document>"u"||arguments.length&&!a)){for(var o=document.cookie?document.cookie.split("; "):[],i={},l=0;lU2.create({baseURL:e,timeout:3e5,headers:{"X-Requested-With":"XMLHttpRequest"}}),Eot=e=>(e.interceptors.request.use(t=>{const r=$ot.get("fine_auth_token");return r&&(t.headers.Authorization=`Bearer ${r}`),t}),e),Cot=(e,t)=>{e.interceptors.response.use(r=>r.status===200?t?r:r.data:Promise.reject("error"),r=>(U2.isCancel(r)&&console.log("Request was canceled:",r.message),Promise.reject(r)))},Tot=e=>{e.interceptors.response.use(t=>TV(t)?Promise.reject("error"):t)},Rot=(e,t,r)=>{const n=Sot(e);return Eot(n),Cot(n,r),t&&Tot(n),n},JC=(e,t)=>Rot(window.Dec.fineServletURL,e,t),TV=e=>{if(e.errorCode){if(yot(e.errorCode))return!1;const t=bot[e.errorCode],{title:r,type:n="error",message:a=e.errorMsg}=t||{};return wot(e.errorCode)?(d3.openAlert({type:n,title:at(r),message:at(a),text4Ok:at("FDI_I_Know"),onOk:()=>{SV[e.errorCode]&&window.open(`${window.Dec?.fineServletURL}/login`,"_blank"),d3.closeAlert()}}),!0):Dot(e.errorCode)?(Iot({type:n,message:at(a)}),!0):(d3.openAlert({title:e.errorCode,content:e.errorMsg,text4Ok:at("FDI_I_Know")}),!0)}return!1},tl=JC(!0);JC(!1),JC(!0,!0);let M1;const Oot=new Uint8Array(16);function Aot(){if(!M1&&(M1=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!M1))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return M1(Oot)}const Da=[];for(let e=0;e<256;++e)Da.push((e+256).toString(16).slice(1));function kot(e,t=0){return Da[e[t+0]]+Da[e[t+1]]+Da[e[t+2]]+Da[e[t+3]]+"-"+Da[e[t+4]]+Da[e[t+5]]+"-"+Da[e[t+6]]+Da[e[t+7]]+"-"+Da[e[t+8]]+Da[e[t+9]]+"-"+Da[e[t+10]]+Da[e[t+11]]+Da[e[t+12]]+Da[e[t+13]]+Da[e[t+14]]+Da[e[t+15]]}const RV={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function OV(e,t,r){if(RV.randomUUID&&!t&&!e)return RV.randomUUID();e=e||{};const n=e.random||(e.rng||Aot)();if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,t){r=r||0;for(let a=0;a<16;++a)t[r+a]=n[a];return t}return kot(n)}const AV={[Cs.DATA_ROOT]:"svg-resource_total",[Cs.INDICATOR_ROOT]:"svg-resource_total",[Cs.BUSINESS_MODEL_ROOT]:"svg-resource_total",[Cs.DIMENSION_ROOT]:"svg-resource_total",[Cs.TAG_ROOT]:"svg-tag_root"},kV={[et.INDICATOR]:"icon-indicator-leaf",[et.DIMENSION]:"icon-dimension-leaf",[et.BUSINESS_MODEL]:"icon-business-model-leaf",[et.TAG]:"svg-tag",[et.SUBJECT]:"subject-icon"},eT={SMALL:14,NORMAL:16,LARGE:28,CARD:60,DETAIL:24,TABLE_DETAIL:38,PREVIEW:64},Bl={NAME:50,COMMENT:150,DESCRIPTION:200,MAX_DESCRIPTION:1e3,APPLY_REMARK:100};et.FOLDER+"",et.MODEL_FOLDER+"",et.INDICATOR_FOLDER+"",et.DIMENSION_FOLDER+"",et.BUSINESS_MODEL_FOLDER+"",et.TAG_FOLDER+"",et.INDICATOR+"",et.DIMENSION+"",et.BUSINESS_MODEL+"",et.TAG+"",et.FOLDER+"",et.TABLE+"",et.DATA_TABLE+"",et.INDICATOR+"",et.DIMENSION+"",et.BUSINESS_MODEL+"",GC.DATA_CATALOG,GC.MODEL;const L1=5e3,tT=100;el.SPIDER+"",el.DIRECT+"",sr.DOC+"",sr.WIDGET+"",sr.REPORT+"",sr.TABLE+"",sr.BI_BUSINESS_MODEL+"";const PV={[na.NONE]:{iconName:"icon-text-string",localeKey:"FDI_Table_Field_String"},[na.STRING]:{iconName:"icon-text-string",localeKey:"FDI_Table_Field_String"},[na.NUMBER]:{iconName:"icon-text-number",localeKey:"FDI_Table_Field_Number"},[na.DATE]:{iconName:"icon-text-datetime",localeKey:"FDI_Table_Field_Datetime"}},NV={[ra.ANALYSIS]:"analysis-table",[ra.DATABASE]:"database-table",[ra.EXCEL]:"excel-table",[ra.SQL]:"sql-table",[ra.SERVER]:"database-table",[ra.JDY]:"database-table",[ra.OLD_FDL]:"database-table",[ra.EXTERNAL]:"etl-table"};ra.ANALYSIS+"",ra.DATABASE+"",ra.EXCEL+"",ra.SQL+"",ra.SERVER+"",ra.JDY+"",ra.OLD_FDL+"",ra.EXTERNAL+"",el.DIRECT+"",el.SPIDER+"";const Tn={token:{colorBrand1:"#F5FAFF",colorBrand2:"#E5EFFF",colorBrand3:"#B9D3FE",colorBrand4:"#87B0F7",colorBrand5:"#5285EA",colorBrand6:"#2C60DB",colorBrand7:"#1C4BBA",colorBrand8:"#0F3A9E",colorBrand9:"#062A7F",colorBrand10:"#042062",colorError1:"#FFF6F5",colorError2:"#FFE8E6",colorError3:"#FFDAD7",colorError4:"#FFBCB8",colorError5:"#F88581",colorError6:"#E65251",colorError7:"#BF393E",colorError8:"#93252F",colorError9:"#731720",colorError10:"#4D0F17",colorWarning1:"#FFFBEB",colorWarning2:"#FFF5D7",colorWarning3:"#FFEBBA",colorWarning4:"#FFDC91",colorWarning5:"#FCC868",colorWarning6:"#F0AC3C",colorWarning7:"#CF8926",colorWarning8:"#A06318",colorWarning9:"#74420B",colorWarning10:"#572E08",colorSuccess1:"#EFFBF0",colorSuccess2:"#DDF3DF",colorSuccess3:"#BEE4BF",colorSuccess4:"#95D097",colorSuccess5:"#57B25D",colorSuccess6:"#248F2E",colorSuccess7:"#177323",colorSuccess8:"#10561F",colorSuccess9:"#0A4213",colorSuccess10:"#042F0B",colorInfo1:"#F5FAFF",colorInfo2:"#E5EFFF",colorInfo3:"#B9D3FE",colorInfo4:"#87B0F7",colorInfo5:"#5285EA",colorInfo6:"#2C60DB",colorInfo7:"#1C4BBA",colorInfo8:"#0F3A9E",colorInfo9:"#062A7F",colorInfo10:"#042062",colorGrey1:"#FFFFFF",colorGrey2:"#F8F9FC",colorGrey3:"#EEF1F6",colorGrey4:"#E6E9EF",colorGrey5:"#DADEE7",colorGrey6:"#CFD4DC",colorGrey7:"#C0C7D0",colorGrey8:"#A3ADBD",colorGrey9:"#8A95A6",colorGrey10:"#5D6B81",colorGrey11:"#3F506A",colorGrey12:"#223553",colorGrey13:"#091E40",colorTransparent2:"rgba(9, 30, 64, .9)",colorTransparent3:"rgba(9, 30, 64, .78)",colorTransparent4:"rgba(9, 30, 64, .66)",colorTransparent5:"rgba(9, 30, 64, .47)",colorTransparent6:"rgba(9, 30, 64, .37)",colorTransparent7:"rgba(9, 30, 64, .29)",colorTransparent8:"rgba(9, 30, 64, .24)",colorTransparent9:"rgba(9, 30, 64, .19)",colorTransparent10:"rgba(9, 30, 64, .15)",colorTransparent11:"rgba(9, 30, 64, .11)",colorTransparent12:"rgba(9, 30, 64, .07)",colorTransparent13:"rgba(9, 30, 64, 0)",colorControlOutline:"rgba(44, 96, 219, 0.10)",colorPrimaryBg:"#EBF3FF",borderRadiusXs:"2px",borderRadiusSm:"3px",borderRadius:"4px",borderRadiusLg:"6px",borderRadiusXl:"8px",gapXs:"2px",gapSm:"6px",gap:"8px",gapLg:"10px",gapXl:"12px",gap2Xl:"16px",gap3Xl:"16px",gap4Xl:"32px",paddingLayout3Xs:"2px",paddingLayout2Xs:"4px",paddingLayoutXs:"8px",paddingLayoutSm:"12px",paddingLayout:"16px",paddingLayoutLg:"20px",paddingLayoutXl:"24px",paddingLayout2Xl:"32px",paddingLayout3Xl:"48px",paddingZero:"0",padding2Xs:"2px",paddingXs:"4px",paddingSm:"8px",padding:"8px",paddingLg:"8px",paddingXl:"12px",padding2Xl:"20px",padding3Xl:"24px",padding4Xl:"32px",controlHeightXs:"16px",controlHeightSm:"22px",controlHeight:"28px",controlHeightLg:"32px",fontSizeSm:"12px",fontSize:"12px",fontSizeLg:"14px",fontSizeXl:"16px",fontSize2Xl:"18px",fontSizeHeading1:"38px",fontSizeHeading2:"30px",fontSizeHeading3:"24px",fontSizeHeading4:"20px",fontSizeHeading5:"16px",controlItemFontWeightActive:"600",iconSize:"16px",iconSizeLg:"18px",iconSizeSm:"14px",iconSize2Sm:"12px",lineHeightSm:"20px",lineHeight:"20px",lineHeightLg:"22px",lineHeightXl:"24px",lineHeight2Xl:"26px",lineHeightHeading1:"46px",lineHeightHeading2:"38px",lineHeightHeading3:"32px",lineHeightHeading4:"28px",lineHeightHeading5:"24px",lineWidth:"1px",lineWidthBold:"2px",lineWidthFocus:"4px",controlOutlineWidth:"2px",boxShadow:"0 0 0 0 rgb(0, 0, 0), 0 6px 16px 0 rgba(0, 0, 0, .08), 0 3px 6px -4px rgba(0, 0, 0, .12), 0 9px 28px 8px rgb(0, 0, 0, .05)",boxShadowSecondary:"0 0 0 0 rgb(0, 0, 0), 0 6px 16px 0 rgba(0, 0, 0, .08), 0 3px 6px -4px rgba(0, 0, 0, .12), 0 9px 28px 8px rgb(0, 0, 0, .05)",boxShadowTertiary:"0 0 0 0 rgb(0, 0, 0), 0 1px 2px 0 rgba(0, 0, 0, .03), 0 1px 6px -1px rgba(0, 0, 0, .02), 0 2px 4px 0 rgb(0, 0, 0, .02)",controlOutline:"0 0 0 var(--fd-control-outline-width) rgba(22, 119, 255, .1)",controlWarningOutline:"0 0 0 var(--fd-control-outline-width) rgba(240, 172, 60, .1)",controlErrorOutline:"0 0 0 var(--fd-control-outline-width) rgba(230, 82, 81, .06)",controlItemBgActive:"#E5EFFF",controlItemBgHover:"#EEF1F6"},components:{Button:{marginBetween:"0",paddingText:"8px",paddingTextXl:"12px",heightTextSm:"22px",heightText:"28px",heightTextLg:"32px"},Radio:{defaultPadding:"0"},Check:{defaultPadding:"0"},Collapse:{panelPadding:"0"},Spin:{heightSm:"14px",height:"20px",heightLg:"32px"},Tooltip:{paddingLayout2xs:"6px",paddingLayoutXs:"8px"}}};var Pot=typeof global=="object"&&global&&global.Object===Object&&global;const MV=Pot;var Not=typeof self=="object"&&self&&self.Object===Object&&self,Mot=MV||Not||Function("return this")();const jl=Mot;var Lot=jl.Symbol;const _i=Lot;var LV=Object.prototype,zot=LV.hasOwnProperty,Bot=LV.toString,$g=_i?_i.toStringTag:void 0;function jot(e){var t=zot.call(e,$g),r=e[$g];try{e[$g]=void 0;var n=!0}catch{}var a=Bot.call(e);return n&&(t?e[$g]=r:delete e[$g]),a}var Uot=Object.prototype,Hot=Uot.toString;function Wot(e){return Hot.call(e)}var Vot="[object Null]",Kot="[object Undefined]",zV=_i?_i.toStringTag:void 0;function Yc(e){return e==null?e===void 0?Kot:Vot:zV&&zV in Object(e)?jot(e):Wot(e)}function Ul(e){return e!=null&&typeof e=="object"}var qot="[object Symbol]";function z1(e){return typeof e=="symbol"||Ul(e)&&Yc(e)==qot}function rT(e,t){for(var r=-1,n=e==null?0:e.length,a=Array(n);++r0){if(++t>=Tit)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function kit(e){return function(){return e}}var Pit=function(){try{var e=vd(Object,"defineProperty");return e({},"",{}),e}catch{}}();const j1=Pit;var Nit=j1?function(e,t){return j1(e,"toString",{configurable:!0,enumerable:!1,value:kit(t),writable:!0})}:B1,Mit=Ait(Nit);const YV=Mit;function GV(e,t){for(var r=-1,n=e==null?0:e.length;++r-1&&e%1==0&&e-1&&e%1==0&&e<=Wit}function hd(e){return e!=null&&lT(e.length)&&!VV(e)}function Vit(e,t,r){if(!Rs(r))return!1;var n=typeof t;return(n=="number"?hd(r)&&oT(t,r.length):n=="string"&&t in r)?U1(r[t],e):!1}function Kit(e){return Hit(function(t,r){var n=-1,a=r.length,o=a>1?r[a-1]:void 0,i=a>2?r[2]:void 0;for(o=e.length>3&&typeof o=="function"?(a--,o):void 0,i&&Vit(r[0],r[1],i)&&(o=a<3?void 0:o,a=1),t=Object(t);++n-1}function fst(e,t){var r=this.__data__,n=V1(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}function Os(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t0&&r(l)?t>1?uK(l,t-1,r,n,a):hT(a,l):n||(a[a.length]=l)}return a}function gT(e){var t=e==null?0:e.length;return t?uK(e,1):[]}function Rst(e){return YV(QV(e,void 0,gT),e+"")}var Ost=sK(Object.getPrototypeOf,Object);const _T=Ost;var Ast="[object Object]",kst=Function.prototype,Pst=Object.prototype,dK=kst.toString,Nst=Pst.hasOwnProperty,Mst=dK.call(Object);function Lst(e){if(!Ul(e)||Yc(e)!=Ast)return!1;var t=_T(e);if(t===null)return!0;var r=Nst.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&dK.call(r)==Mst}function zst(e,t,r){var n=-1,a=e.length;t<0&&(t=-t>a?0:a+t),r=r>a?a:r,r<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=Array(a);++nl))return!1;var c=o.get(e),d=o.get(t);if(c&&d)return c==t&&d==e;var f=-1,v=!0,h=r&Out?new G1:void 0;for(o.set(e,t),o.set(t,e);++f-1?a[o?t[i]:i]:void 0}}var Idt=Math.max;function CT(e,t,r){var n=e==null?0:e.length;if(!n)return-1;var a=r==null?0:lit(r);return a<0&&(a=Idt(n+a,0)),Lit(e,$T(t),a)}var Fdt=Ddt(CT);const $dt=Fdt;function Sdt(e,t){var r=-1,n=hd(e)?Array(e.length):[];return BK(e,function(a,o,i){n[++r]=t(a,o,i)}),n}function Edt(e,t){var r=yo(e)?rT:Sdt;return r(e,$T(t))}function Cdt(e,t){return t.length<2?e:vT(e,zst(t,0,-1))}var Tdt="[object Number]";function Rdt(e){return typeof e=="number"||Ul(e)&&Yc(e)==Tdt}function Gc(e){return e==null}function Odt(e){return e===void 0}function Adt(e,t){return t=q1(t,e),e=Cdt(e,t),e==null||delete e[Tg(ST(t))]}function kdt(e){return Lst(e)?void 0:e}var Pdt=1,Ndt=2,Mdt=4,Ldt=Rst(function(e,t){var r={};if(e==null)return r;var n=!1;t=rT(t,function(o){return o=q1(o,e),n||(n=o.length>1),o}),Pp(e,bK(e),r),n&&(r=Og(r,Pdt|Ndt|Mdt,kdt));for(var a=t.length;a--;)Adt(r,t[a]);return r});const zdt=Ldt,jK="fd-svgicon",UK={width:"1em",height:"1em",fill:"currentColor","aria-hidden":!0,focusable:!1},HK=(e,t="",r)=>{const n=e.props||{},a={key:t,...zdt(n,"children")};let o=n.children||[];return yo(o)||(o=[o]),r&&jlt(a,UK,r),$.createElement(e.type,a,Edt(o,(i,l)=>HK(i,`${e.type}-${l}`)))},xd=$.forwardRef((e,t)=>{const{className:r,component:n,icon:a,spin:o,name:i,onClick:l,onMouseDown:s,...c}=e,d=ar(jK,{[`${jK}-${i}`]:i},r,{spin:!!o});return c.viewBox||delete c.viewBox,de("i",{ref:t,className:d,onClick:l,onMouseDown:s,children:n?de(n,{...UK,...c,className:"align-[-0.14em]"}):a?HK(a,i,c):null})}),WK=(e,t)=>de(xd,{...e,ref:t,name:"AddOutlined",icon:de("svg",{viewBox:"0 0 1024 1024",children:de("path",{d:"M481.904 192a8.016 8.016 0 0 0-8.032 8v272h-273.08a8.016 8.016 0 0 0-8.032 8v64c0 4.42 3.6 8 8.032 8h273.08v272c0 4.42 3.596 8 8.032 8h64.256a8.016 8.016 0 0 0 8.032-8V552h273.076a8.016 8.016 0 0 0 8.032-8v-64c0-4.42-3.596-8-8.032-8H554.192V200c0-4.42-3.596-8-8.032-8h-64.256z",fillOpacity:.9})})});WK.displayName="AddOutlined";const VK=$.memo($.forwardRef(WK)),KK=(e,t)=>de(xd,{...e,ref:t,name:"ArrowlOutlined",icon:de("svg",{viewBox:"0 0 1024 1024",children:de("path",{d:"M665.864 165.224a8 8 0 0 0-11.312 0L359.864 459.912c-.62.348-1.2.788-1.728 1.316L312.88 506.48a8 8 0 0 0 0 11.316l340.984 340.98a8 8 0 0 0 11.312 0l45.256-45.252a8 8 0 0 0 0-11.316L420.568 512.344 711.12 221.796a8 8 0 0 0 0-11.316l-45.256-45.252z",fillOpacity:.9})})});KK.displayName="ArrowlOutlined";const Bdt=$.memo($.forwardRef(KK)),qK=(e,t)=>de(xd,{...e,ref:t,name:"ArrowrOutlined",icon:de("svg",{viewBox:"0 0 1024 1024",children:de("path",{d:"M358.136 858.776a8 8 0 0 0 11.312 0l294.688-294.688c.62-.348 1.2-.788 1.728-1.316l45.256-45.252a8 8 0 0 0 0-11.316l-340.984-340.98a8 8 0 0 0-11.312 0l-45.256 45.252a8 8 0 0 0 0 11.316l289.864 289.864L312.88 802.204a8 8 0 0 0 0 11.316l45.256 45.256z",fillOpacity:.9})})});qK.displayName="ArrowrOutlined";const jdt=$.memo($.forwardRef(qK)),YK=(e,t)=>de(xd,{...e,ref:t,name:"DraghOutlined",icon:de("svg",{viewBox:"0 0 1024 1024",children:de("path",{d:"M768 120a8 8 0 0 0-8-8h-80a8 8 0 0 0-8 8v80a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-80zm-416 0a8 8 0 0 0-8-8h-80a8 8 0 0 0-8 8v80a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-80zm408 344a8 8 0 0 1 8 8v80a8 8 0 0 1-8 8h-80a8 8 0 0 1-8-8v-80a8 8 0 0 1 8-8h80zm8 360a8 8 0 0 0-8-8h-80a8 8 0 0 0-8 8v80a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-80zM344 464a8 8 0 0 1 8 8v80a8 8 0 0 1-8 8h-80a8 8 0 0 1-8-8v-80a8 8 0 0 1 8-8h80zm8 360a8 8 0 0 0-8-8h-80a8 8 0 0 0-8 8v80a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-80z",fillOpacity:.9})})});YK.displayName="DraghOutlined";const Udt=$.memo($.forwardRef(YK)),GK=(e,t)=>de(xd,{...e,ref:t,name:"DragvOutlined",icon:de("svg",{viewBox:"0 0 1024 1024",children:de("path",{d:"M120 256a8 8 0 0 0-8 8v80a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-80a8 8 0 0 0-8-8h-80zm0 416a8 8 0 0 0-8 8v80a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-80a8 8 0 0 0-8-8h-80zm344-408a8 8 0 0 1 8-8h80a8 8 0 0 1 8 8v80a8 8 0 0 1-8 8h-80a8 8 0 0 1-8-8v-80zm360-8a8 8 0 0 0-8 8v80a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-80a8 8 0 0 0-8-8h-80zM464 680a8 8 0 0 1 8-8h80a8 8 0 0 1 8 8v80a8 8 0 0 1-8 8h-80a8 8 0 0 1-8-8v-80zm360-8a8 8 0 0 0-8 8v80a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-80a8 8 0 0 0-8-8h-80z",fillOpacity:.9})})});GK.displayName="DragvOutlined";const Hdt=$.memo($.forwardRef(GK)),XK=(e,t)=>de(xd,{...e,ref:t,name:"RubbishOutlined",icon:de("svg",{viewBox:"0 0 1024 1024",children:de("path",{d:"M256 120a8 8 0 0 1 8-8h496a8 8 0 0 1 8 8v136h184a8 8 0 0 1 8 8v48a8 8 0 0 1-8 8H72a8 8 0 0 1-8-8v-48a8 8 0 0 1 8-8h184V120zm64 56v80h384v-80H320zM192 392a8 8 0 0 1 8-8h48a8 8 0 0 1 8 8v456h512V392a8 8 0 0 1 8-8h48a8 8 0 0 1 8 8v504a16 16 0 0 1-16 16H208a16 16 0 0 1-16-16V392zm192 0a8 8 0 0 1 8-8h48a8 8 0 0 1 8 8v384a8 8 0 0 1-8 8h-48a8 8 0 0 1-8-8V392zm256 0a8 8 0 0 0-8-8h-48a8 8 0 0 0-8 8v384a8 8 0 0 0 8 8h48a8 8 0 0 0 8-8V392z",fillOpacity:.9})})});XK.displayName="RubbishOutlined";const ZK=$.memo($.forwardRef(XK)),QK=(e,t)=>de(xd,{...e,ref:t,name:"SwitchOutlined",icon:de("svg",{viewBox:"0 0 1024 1024",children:de("path",{d:"M722.344 474.912a8 8 0 0 0 11.312 0l173.256-173.256a8 8 0 0 0 0-11.312L733.656 117.088a8 8 0 0 0-11.312 0l-45.256 45.256a8 8 0 0 0 0 11.312l83.676 83.68H120a8 8 0 0 0-8 8v64a8 8 0 0 0 8 8h638.1l-81.012 81.008a8 8 0 0 0 0 11.312l45.256 45.256zM263.236 766.668l83.676 83.676a8 8 0 0 1 0 11.312l-45.256 45.256a8 8 0 0 1-11.312 0L117.088 733.656a8 8 0 0 1 0-11.312l173.256-173.256a8 8 0 0 1 11.312 0l45.256 45.256a8 8 0 0 1 0 11.312L265.9 686.668H904a8 8 0 0 1 8 8v64a8 8 0 0 1-8 8H263.236z",fillOpacity:.9})})});QK.displayName="SwitchOutlined";const JK=$.memo($.forwardRef(QK)),eq=m.createContext(void 0),Wdt={locale:"en-us",dialog:{okText:"OK",cancelText:"Cancel",dragTip:"Long press to drag the window"},prompt:{okText:"OK",cancelText:"Cancel"},popConfirm:{okText:"OK",cancelText:"Cancel"},alert:{okText:"OK",cancelText:"Cancel"},check:{checkAll:"Select All"},combo:{searchEmpty:"No results",searchPlaceholder:"Search",searching:"Searching...",allCheck:"Select All",allCheckInSearch:"Select all results",emptyTip:"No data to select",loading:"Loading",clickToLoadMore:"Click to load more"},upload:{uploadText:"Select File"},datetime:{clear:"Clear",today:"Today",month:"This Month",now:"Now",ok:"OK",time:"Time",shortSun:"Su",shortMon:"Mo",shortTue:"Tu",shortWed:"We",shortThu:"Th",shortFri:"Fr",shortSat:"Sa",january:"Jan",february:"Feb",march:"Mar",april:"Apr",may:"May",june:"June",july:"July",august:"Aug",september:"Sept",october:"Oct",november:"Nov",december:"Dec",january_m:"Jan",february_m:"Feb",march_m:"Mar",april_m:"Apr",may_m:"May",june_m:"June",july_m:"July",august_m:"Aug",september_m:"Sept",october_m:"Oct",november_m:"Nov",december_m:"Dec",hour:"Hour",minute:"Minute",second:"Second"},cascader:{searchPlaceholder:"Search",searchEmpty:"No results",searching:"Searching..."},filePreview:{download:"Download",noSupportPreview:"This type of file does not support online preview",zoomIn:"Zoom In",zoomOut:"Zoom Out",rotateToRight:"Rotate Right",viewOrigin:"View Original",loading:"Loading..."},pagination:{currentPage:"Page {page}"},colorPicker:{recommendColor:"Recommended Color",customColor:"Custom Color",alpha:"alpha",noMessage:"None yet"},image:{preview:"Preview"},typography:{edit:"Edit",copy:"Copy",copied:"Copied",expand:"Expand"},select:{emptyTip:"No data to select",searchPlaceholder:"Search"},treeSelect:{emptyTip:"No data to select",searchPlaceholder:"Search"}},tq={...Wdt,LogicTree:{AND:"AND",OR:"OR",SWITCH:"S",ADD:"ADD",DELETE:"DEL"},FormulaPane:{FUNC:"Func",SEARCH:"Search",FUNC_DEF:"Func Def",PARAM_DEF:"Param Def",EXAMPLE:"Example",FIELD:"Field",INPUT:"Please Input"}};function Vdt(e){const t=m.useContext(eq)??tq;return[m.useMemo(()=>({...t?.[e]||{}}),[e,t])]}const Kdt={locale:"ja",dialog:{okText:"OK",cancelText:"キャンセル",dragTip:"長押ししてウィンドウをドラッグする"},prompt:{okText:"OK",cancelText:"キャンセル"},popConfirm:{okText:"OK",cancelText:"キャンセル"},alert:{okText:"OK",cancelText:"キャンセル"},check:{checkAll:"すべて選択"},combo:{searchEmpty:"データが見つかりません",searchPlaceholder:"検索",searching:"検索中...",allCheck:"すべて選択",allCheckInSearch:"すべての結果を選択",emptyTip:"選択するデータがありません",loading:"読み込み中",clickToLoadMore:"クリックしてさらに読み込む"},upload:{uploadText:"ファイルを選択"},datetime:{clear:"クリア",today:"今日",month:"今月",now:"この瞬間",ok:"わかりました",time:"時間",shortSun:"日",shortMon:"1",shortTue:"2",shortWed:"3",shortThu:"4",shortFri:"5",shortSat:"6",january:"1月",february:"2月",march:"3月",april:"4月",may:"5月",june:"6月",july:"7月",august:"8月",september:"9月",october:"10月",november:"11月",december:"12月",january_m:"1月",february_m:"2月",march_m:"3月",april_m:"4月",may_m:"5月",june_m:"6月",july_m:"7月",august_m:"8月",september_m:"9月",october_m:"10月",november_m:"11月",december_m:"12月",hour:"時間",minute:"分",second:"秒"},cascader:{searchPlaceholder:"検索",searchEmpty:"データが見つかりません",searching:"検索中..."},filePreview:{download:"ダウンロード",noSupportPreview:"現在のファイルの種類はオンラインプレビューをサポートしていません",zoomIn:"増幅",zoomOut:"縮小",rotateToRight:"右に回転",viewOrigin:"元の画像を表示",loading:"読み込み中です。お待ちください..."},pagination:{currentPage:"ページ {page}"},colorPicker:{recommendColor:"推奨色",customColor:"カスタムカラー",alpha:"透明度",noMessage:"まだありません"},image:{preview:"プレビュー"},typography:{edit:"編集",copy:"コピー",copied:"レプリケーションに成功しました",expand:"展開"},select:{emptyTip:"選択するデータがありません",searchPlaceholder:"検索"},treeSelect:{emptyTip:"選択するデータがありません",searchPlaceholder:"検索"}},qdt={...Kdt,LogicTree:{AND:"そして",OR:"または",SWITCH:"スイッチ",ADD:"に追加",DELETE:"消去"},FormulaPane:{FUNC:"関数",SEARCH:"検索",FUNC_DEF:"関数の解釈",PARAM_DEF:"パラメータの説明",EXAMPLE:"例",FIELD:"分野",INPUT:"入ってください"}},Ydt={locale:"ko",dialog:{okText:"확인",cancelText:"취소",dragTip:"창을 드래그하려면 길게 누르기"},prompt:{okText:"확인",cancelText:"취소"},popConfirm:{okText:"확인",cancelText:"취소"},alert:{okText:"확인",cancelText:"취소"},check:{checkAll:"모두 선택"},combo:{searchEmpty:"데이터를 찾을 수 없음",searchPlaceholder:"검색",searching:"검색 중...",allCheck:"모두 선택",allCheckInSearch:"모든 결과 선택",emptyTip:"선택할 데이터가 없습니다.",loading:"불러오는 중",clickToLoadMore:"더 불러오려면 클릭"},upload:{uploadText:"파일 선택"},datetime:{clear:"비어 있음",today:"오늘",month:"이번 달",now:"현재",ok:"확인",time:"시간",shortSun:"일",shortMon:"하나",shortTue:"둘",shortWed:"셋",shortThu:"넷",shortFri:"다섯",shortSat:"여섯",january:"1월",february:"2월",march:"3월",april:"4월",may:"5월",june:"6월",july:"7월",august:"8월",september:"9월",october:"10월",november:"11월",december:"12월",january_m:"1월",february_m:"2월",march_m:"3월",april_m:"4월",may_m:"5월",june_m:"6월",july_m:"7월",august_m:"8월",september_m:"9월",october_m:"10월",november_m:"11월",december_m:"12월",hour:"시간",minute:"분",second:"초"},cascader:{searchPlaceholder:"검색",searchEmpty:"데이터를 찾을 수 없음",searching:"검색중..."},filePreview:{download:"다운로드",noSupportPreview:"현재 파일 형식은 온라인 미리보기를 지원하지 않습니다.",zoomIn:"증폭",zoomOut:"축소",rotateToRight:"Простовання",viewOrigin:"원본 이미지 보기",loading:"불러오는 중, 잠시만 기다려 주세요..."},pagination:{currentPage:"{page} 페이지"},colorPicker:{recommendColor:"추천 색상",customColor:"사용자 지정 색상",alpha:"투명도",noMessage:"아직 없음"},image:{preview:"미리보기"},typography:{edit:"편집",copy:"복사",copied:"복제 성공",expand:"펼치기"},select:{emptyTip:"선택할 데이터가 없습니다.",searchPlaceholder:"검색"},treeSelect:{emptyTip:"선택할 데이터가 없습니다.",searchPlaceholder:"검색"}},Gdt={...Ydt,LogicTree:{AND:"그리고",OR:"또는",SWITCH:"스위치",ADD:"다음에 추가",DELETE:"삭제"},FormulaPane:{FUNC:"기능",SEARCH:"찾다",FUNC_DEF:"함수 해석",PARAM_DEF:"매개변수 설명",EXAMPLE:"예",FIELD:"필드",INPUT:"들어 오세요"}},Xdt={locale:"zh-cn",dialog:{okText:"确定",cancelText:"取消",dragTip:"长按可拖拽窗口"},prompt:{okText:"确定",cancelText:"取消"},popConfirm:{okText:"确定",cancelText:"取消"},alert:{okText:"确定",cancelText:"取消"},check:{checkAll:"全选"},combo:{searchEmpty:"未搜索到数据",searchPlaceholder:"搜索",searching:"搜索中...",allCheck:"全选",allCheckInSearch:"搜索结果全选",emptyTip:"没有可选择的数据",loading:"正在加载",clickToLoadMore:"点击加载更多"},upload:{uploadText:"选择文件"},datetime:{clear:"清空",today:"今天",month:"本月",now:"此刻",ok:"确定",time:"时间",shortSun:"日",shortMon:"一",shortTue:"二",shortWed:"三",shortThu:"四",shortFri:"五",shortSat:"六",january:"一月",february:"二月",march:"三月",april:"四月",may:"五月",june:"六月",july:"七月",august:"八月",september:"九月",october:"十月",november:"十一月",december:"十二月",january_m:"1月",february_m:"2月",march_m:"3月",april_m:"4月",may_m:"5月",june_m:"6月",july_m:"7月",august_m:"8月",september_m:"9月",october_m:"10月",november_m:"11月",december_m:"12月",hour:"时",minute:"分",second:"秒"},cascader:{searchPlaceholder:"搜索",searchEmpty:"未搜索到数据",searching:"搜索中..."},filePreview:{download:"下载",noSupportPreview:"当前文件类型不支持在线预览",zoomIn:"放大",zoomOut:"缩小",rotateToRight:"向右旋转",viewOrigin:"查看原图",loading:"加载中,请稍后..."},pagination:{currentPage:"第 {page} 页"},colorPicker:{recommendColor:"推荐颜色",customColor:"自定义颜色",alpha:"透明度",noMessage:"暂无"},image:{preview:"预览"},typography:{edit:"编辑",copy:"复制",copied:"复制成功",expand:"展开"},select:{emptyTip:"没有可选择的数据",searchPlaceholder:"搜索"},treeSelect:{emptyTip:"没有可选择的数据",searchPlaceholder:"搜索"}},rq={...Xdt,LogicTree:{AND:"且",OR:"或",SWITCH:"切换",ADD:"添加",DELETE:"删除"},FormulaPane:{FUNC:"函数",SEARCH:"搜索",FUNC_DEF:"函数释义",PARAM_DEF:"参数说明",EXAMPLE:"示例",FIELD:"字段",INPUT:"请输入"}},Zdt=typeof window<"u"?$.useInsertionEffect||$.useLayoutEffect:()=>{};function nq(e){const t=$.useRef(Qdt);Zdt(()=>{t.current=e},[e]);const r=$.useRef(null);return r.current||(r.current=function(){return t.current.apply(this,arguments)}),r.current}function Qdt(){throw new Error("INVALID_USEEVENT_INVOCATION: the callback from useEvent cannot be invoked before the component has mounted.")}function Jdt(e){const{initialItems:t=[],getKey:r=v=>v.id||v.key,getChildren:n=v=>v.children}=e,[a,o]=m.useState(()=>s(t,new Map)),{items:i,nodeMap:l}=a;function s(v=[],h,g){return{items:v.map(_=>{const w={key:r(_),parentKey:g,value:_,children:[]};return w.children=s(n(_),h,w.key).items,h.set(w.key,w),w}),nodeMap:h}}function c(v,h,g,_){var w,b;let y=_.get(h);if(!y)return{items:v,nodeMap:_};const D=new Map(_);let F=g(y);for(F==null?f(y,D):d(F,D);y!=null&&y.parentKey;){const S=D.get(y.parentKey),I={key:S.key,parentKey:S.parentKey,value:S.value,children:[]};let{children:C}=S;F==null&&(C=C.filter(R=>R!==y),S!=null&&S.value.children&&(S.value.children=S?.value.children.filter(R=>R.key!==y?.key))),I.children=C.map(R=>R==y?F:R),I.value.children=(b=(w=S?.value)==null?void 0:w.children)==null?void 0:b.map(R=>R.key==y?.key?F?.value:R),D.set(I.key,I),F=I,y=S}return F==null&&(v=v.filter(S=>S!==y)),{items:v.map(S=>S==y?F:S),nodeMap:D}}function d(v,h){h.set(v.key,v);for(const g of v.children)d(g,h)}function f(v,h){h.delete(v.key);for(const g of v.children)f(g,h)}return{items:i,getItem(v){return l.get(v)},insert(v,h,...g){o(({items:_,nodeMap:w})=>{const{items:b,nodeMap:y}=s(g,w,v);return v==null?{items:[..._.slice(0,h),...b,..._.slice(h)],nodeMap:y}:c(_,v,D=>({key:D.key,parentKey:D.parentKey,value:{...D.value,children:[...D.children.slice(0,h).map(F=>F.value),...b.map(F=>F.value),...D.children.slice(h).map(F=>F.value)]},children:[...D.children.slice(0,h),...b,...D.children.slice(h)]}),y)})},insertBefore(v,...h){const g=l.get(v);if(!g)return;const _=l.get(g.parentKey),w=(_?_.children:i).indexOf(g);this.insert(_?.key,w,...h)},insertAfter(v,...h){const g=l.get(v);if(!g)return;const _=l.get(g.parentKey),w=(_?_.children:i).indexOf(g);this.insert(_?.key,w+1,...h)},prepend(v,...h){this.insert(v,0,...h)},append(v,...h){if(v==null)this.insert(null,i.length,...h);else{const g=l.get(v);if(!g)return;this.insert(v,g.children.length,...h)}},remove(...v){v.length!=0&&o(({items:h,nodeMap:g})=>{let _=h,w=g,b;for(const y of v)b=c(_,y,()=>null,w),w=b.nodeMap,_=b.items;return{items:_,nodeMap:w}})},move(v,h,g){o(({items:_,nodeMap:w})=>{const b=w.get(v);if(!b)return{items:_,nodeMap:w};const{items:y,nodeMap:D}=c(_,v,()=>null,w),F={...b,parentKey:h};return h==null?(d(F,D),{items:[...y.slice(0,g),F,...y.slice(g)],nodeMap:D}):c(y,h,S=>({key:S.key,parentKey:S.parentKey,value:{...S.value,children:[...S.children.slice(0,g).map(I=>I.value),F.value,...S.children.slice(g).map(I=>I.value)]},children:[...S.children.slice(0,g),F,...S.children.slice(g)]}),D)})},update(v,h){o(({items:g,nodeMap:_})=>c(g,v,w=>{const b={key:w.key,parentKey:w.parentKey,value:{key:w.key,...h},children:[]},y=s(n(h),_,b.key);return b.children=y.items,b},_))}}}var Gn=(e=>(e[e.AND=1]="AND",e[e.OR=2]="OR",e[e.LEAF=3]="LEAF",e))(Gn||{});const aq=({info:e,disabled:t=!1,itemRender:r,onRemove:n,onAdd:a,menu:o,id:i,onChange:l,onSwitch:s,canAddNode:c,parentType:d})=>{const{value:{type:f},children:v}=e,[h]=Vdt("LogicTree"),g=m.useMemo(()=>f===1||f===2,[f]),_=m.useMemo(()=>f===1?h.AND:h.OR,[h.AND,h.OR,f]),w=m.useCallback(()=>{i&&n?.(i)},[i,n]),b=m.useCallback(S=>{S.key&&a?.(i,S.key)},[i,a]),y=S=>{switch(S.key){case 3:n?.(i);break;case 1:s?.(i);break;default:a?.(i,S.key);break}},D=m.useCallback((S,I)=>{const C=r?.(S);return Gc(C)?null:$.cloneElement(C,{value:S,onChange:R=>{var P,O;(O=(P=C.props).onChange)==null||O.call(P,R),l?.(I,{type:e.value.type,value:{...S,value:R}})}})},[r,l,e.value.type]),F=m.useMemo(()=>o.map(S=>({...S,disabled:S.type!==d&&!c(i,S.type)})),[c,i,o,d]);return g?tn("div",{className:ar("logic-wrapper","solid-border m-[4px_8px] inline-flex flex-1 items-stretch rounded-lg bg-fill-quaternary"),children:[de(YC,{trigger:"click",disabled:t,placement:"right-top",menu:{items:[{label:h.SWITCH,key:1,icon:de(JK,{})},{label:h.ADD,key:2,icon:de(VK,{}),children:F},{label:h.DELETE,key:3,icon:de(ZK,{}),danger:!0,className:"text-error [&>.item-icon]:!text-error"}],onAfterSelect:y},children:tn("div",{className:ar("condition solid-border-r relative flex w-[24px] cursor-pointer flex-col items-center justify-center rounded-es-lg rounded-ss-lg",{"hover:bg hover:bg-text-hover active:bg-text-active":!t,"text-disabled":t}),children:[de("div",{className:"switch absolute top-1/2 -mt-[12px] -translate-y-full",title:h.SWITCH,children:"..."}),_]})}),de("div",{className:ar("children-wrapper","flex flex-1 flex-col p-[4px_0]"),children:v.map(S=>de(aq,{disabled:t,id:S.key,info:S,menu:o,canAddNode:c,parentType:f,itemRender:r,onAdd:a,onRemove:n,onChange:l,onSwitch:s},S.key))})]}):tn("div",{className:ar("leaf-wrapper","leaf-node","flex h-control p-[4px_8px]",{"hover:bg-fill-secondary":!t}),children:[de("div",{className:"leaf-render flex-1",children:D(e.value.value,i)}),de(YC,{disabled:t,trigger:"click",menu:{items:F,onAfterSelect:b},children:de(jr,{disabled:t,className:"add-button",type:"text",icon:de(VK,{})})}),de(jr,{disabled:t,className:"delete-button",type:"text",icon:de(ZK,{}),onClick:w})]})},eft=e=>{const[t,r]=m.useState(e),[n,a]=m.useState(e);return n!==e&&(a(e),r(e)),[t,r]},tft=({value:e,onClick:t,disabled:r,items:n=[],canAddNode:a})=>{const[o,i]=eft(e),l=m.useMemo(()=>n.find(f=>f?.key===o),[o,n]),s=l?.label,c=m.useCallback(()=>{t(o,l.value)},[o,t,l]),d=m.useCallback(()=>{i(o===Gn.AND?Gn.OR:Gn.AND)},[o,i]);return tn("div",{className:"switch-wrapper flex",children:[de(jr,{disabled:r||!a(null,o),onClick:c,className:"rounded-ee-[0] rounded-se-[0] !border-r-transparent",children:s}),de(jr,{disabled:r,icon:de(JK,{}),onClick:d,className:"!ml-[0] rounded-es-[0] rounded-ss-[0]"})]})};let Z1;const rft=new Uint8Array(16);function nft(){if(!Z1&&(Z1=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!Z1))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return Z1(rft)}const Ia=[];for(let e=0;e<256;++e)Ia.push((e+256).toString(16).slice(1));function aft(e,t=0){return Ia[e[t+0]]+Ia[e[t+1]]+Ia[e[t+2]]+Ia[e[t+3]]+"-"+Ia[e[t+4]]+Ia[e[t+5]]+"-"+Ia[e[t+6]]+Ia[e[t+7]]+"-"+Ia[e[t+8]]+Ia[e[t+9]]+"-"+Ia[e[t+10]]+Ia[e[t+11]]+Ia[e[t+12]]+Ia[e[t+13]]+Ia[e[t+14]]+Ia[e[t+15]]}const oft=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),oq={randomUUID:oft};function Ag(e,t,r){if(oq.randomUUID&&!t&&!e)return oq.randomUUID();e=e||{};const n=e.random||(e.rng||nft)();if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,t){r=r||0;for(let a=0;a<16;++a)t[r+a]=n[a];return t}return aft(n)}function iq(e){const t=[];return ET(e,r=>{r.value.type!==Gn.LEAF?t.push({type:r.value.type,children:iq(r.children)}):t.push({value:r.value.value})}),t}function Q1(e){let t=0;return ET(e,r=>{let n=1;r.value.type!==Gn.LEAF&&(n+=Q1(r.children)),t{t.key=t?.key??Ag(),t.children&&lq(t.children)})}const mi=[Gn.AND,Gn.OR],ift=m.forwardRef(({defaultItems:e,itemRender:t,className:r,operations:n=[],maxLevel:a=5,paneStyle:o,paneClassName:i,disabled:l=!1,onAdd:s,onChange:c,onRemove:d},f)=>{const v=m.useMemo(()=>{const N=Fut(e);return lq(N),N},[e]),h=Jdt({initialItems:v}),g=nq(()=>{c?.()}),{items:_,getItem:w}=h;m.useImperativeHandle(f,()=>({getTreeValue:()=>iq(_)}));const b=m.useMemo(()=>gT(n).reduce((N,A)=>(N.set(`${A.value}-${A.key}`,A),N),new Map),[n]),y=m.useMemo(()=>Q1(_),[_]),D=m.useMemo(()=>gT(n).reduce((N,A)=>(N.push({label:A.label,key:`${A.value}-${A.key}`,type:A.key}),N),[]),[n]),F=m.useCallback((N,A)=>{let z=0,k=A;const M=Q1([N]);for(;k;)k=w(k.parentKey),z+=1;return z+M},[w]),S=m.useCallback((N,A,z)=>{const k=h.getItem(N),M=A===Gn.AND?0:1;if(!Gc(k)){const T=k.value,B=h.getItem(k.parentKey),L={key:Ag(),type:Gn.LEAF,value:z},K=CT(B?.children,ee=>ee.key===k.key);if(T.type===mi[M]){h.append(N,L);return}const X=B?.value;if(T.type===mi[1-M]&&X?.type===mi[M]){h.insert(B.key,K+1,L);return}if(T.type===mi[1-M]&&X?.type!==mi[M]||X?.type===mi[1-M]||!B){const ee={key:Ag(),type:A,children:[L]};B?h.insert(B.key,K,ee):h.append(null,ee),h.move(N,ee.key,0);return}h.insert(B?.key,K+1,L)}},[h]),I=m.useCallback((N,A,z)=>{if(!Gc(z))S(z,N,A);else{const k={key:Ag(),type:Gn.LEAF,value:A},M=ST(_);if(Gc(M))h.append(null,k);else if(M.value.type===N)h.append(M.key,k);else{const T={key:Ag(),type:N,children:[k]};h.append(null,T),h.move(M.key,T.key,0)}}s?.()},[S,_,s,h]),C=m.useCallback((N,A)=>{if(Gc(N)){const z=ST(_);return Gc(z)||z.value.type===A?!0:y{const A=h.getItem(N);if(!Gc(A)){const z=h.getItem(A.parentKey);if(z?.children.length<=2){const k=h.getItem(z.parentKey),M=CT(k?.children,T=>T.key===z.key);if(z.children.length===2){const T=$dt(z.children,B=>B.key!==N);T!=null&&T.key&&h.move(T.key,k?.key,M<0?0:M)}h.remove(A.key,z.key)}else h.remove(A.key);d?.()}},[d,h]),P=m.useCallback((N,A)=>{h.update(N,A)},[h]),O=m.useCallback(N=>{const A=w(N),z=A.value.type===Gn.AND?Gn.OR:Gn.AND;h.update(N,{...A.value,type:z})},[w,h]);return m.useEffect(()=>{g?.()},[_]),tn("div",{className:r,children:[de("div",{className:ar(i,"overflow-auto"),style:o,children:de("div",{className:"inner-pane [&>.leaf-node]:solid-border flex [&>.leaf-node]:flex-1 [&>.leaf-node]:rounded-lg [&>.logic-wrapper]:m-[0]",children:_.map(N=>de(aq,{disabled:l,id:N.key,info:N,menu:D,itemRender:t,onRemove:R,onAdd:(A,z)=>{const{key:k,value:M}=b.get(z);I(k,M,A)},canAddNode:C,onChange:P,onSwitch:O},N.key))})}),de(PC,{size:10,className:"header mt-[10px]",children:n.map((N,A)=>de(tft,{disabled:l,items:N,value:N[0].key,onClick:I,canAddNode:C},A))})]})}),lft=$.createContext({search:"match"}),sft=({locale:e,search:t="match",children:r,...n})=>{const a=m.useMemo(()=>({search:t}),[t]);return de(eq.Provider,{value:e,children:de(lft.Provider,{value:a,children:de(Hy,{locale:e,...n,children:r})})})};function cft(e){const{onChange:t,defaultValue:r,value:n,defaultStateValue:a}=e,o=n!==void 0,i=m.useRef(o?void 0:Odt(r)?a:r),l=typeof n=="function"?n(i.current):n,[,s]=m.useState({});o&&(i.current=l);const c=nq(d=>{const f=typeof d=="function"?d(i.current):d;f!==i.current&&(i.current=f,s({}),t&&t(f))});return[i.current,c]}var uft=function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,a){n.__proto__=a}||function(n,a){for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(n[o]=a[o])},e(t,r)};return function(t,r){e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),Xn=function(){return Xn=Object.assign||function(e){for(var t,r=1,n=arguments.length;r"u"?void 0:Number(n),maxHeight:typeof a>"u"?void 0:Number(a),minWidth:typeof o>"u"?void 0:Number(o),minHeight:typeof i>"u"?void 0:Number(i)}},_ft=["as","style","className","grid","snap","bounds","boundsByDirection","size","defaultSize","minWidth","minHeight","maxWidth","maxHeight","lockAspectRatio","lockAspectRatioExtraWidth","lockAspectRatioExtraHeight","enable","handleStyles","handleClasses","handleWrapperStyle","handleWrapperClass","children","onResizeStart","onResize","onResizeStop","handleComponent","scale","resizeRatio","snapGap"],fq="__resizable_base__",mft=function(e){pft(t,e);function t(r){var n=e.call(this,r)||this;return n.ratio=1,n.resizable=null,n.parentLeft=0,n.parentTop=0,n.resizableLeft=0,n.resizableRight=0,n.resizableTop=0,n.resizableBottom=0,n.targetLeft=0,n.targetTop=0,n.appendBase=function(){if(!n.resizable||!n.window)return null;var a=n.parentNode;if(!a)return null;var o=n.window.document.createElement("div");return o.style.width="100%",o.style.height="100%",o.style.position="absolute",o.style.transform="scale(0, 0)",o.style.left="0",o.style.flex="0 0 100%",o.classList?o.classList.add(fq):o.className+=fq,a.appendChild(o),o},n.removeBase=function(a){var o=n.parentNode;o&&o.removeChild(a)},n.ref=function(a){a&&(n.resizable=a)},n.state={isResizing:!1,width:typeof(n.propsSize&&n.propsSize.width)>"u"?"auto":n.propsSize&&n.propsSize.width,height:typeof(n.propsSize&&n.propsSize.height)>"u"?"auto":n.propsSize&&n.propsSize.height,direction:"right",original:{x:0,y:0,width:0,height:0},backgroundStyle:{height:"100%",width:"100%",backgroundColor:"rgba(0,0,0,0)",cursor:"auto",opacity:0,position:"fixed",zIndex:9999,top:"0",left:"0",bottom:"0",right:"0"},flexBasis:void 0},n.onResizeStart=n.onResizeStart.bind(n),n.onMouseMove=n.onMouseMove.bind(n),n.onMouseUp=n.onMouseUp.bind(n),n}return Object.defineProperty(t.prototype,"parentNode",{get:function(){return this.resizable?this.resizable.parentNode:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"window",{get:function(){return!this.resizable||!this.resizable.ownerDocument?null:this.resizable.ownerDocument.defaultView},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"propsSize",{get:function(){return this.props.size||this.props.defaultSize||vft},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"size",{get:function(){var r=0,n=0;if(this.resizable&&this.window){var a=this.resizable.offsetWidth,o=this.resizable.offsetHeight,i=this.resizable.style.position;i!=="relative"&&(this.resizable.style.position="relative"),r=this.resizable.style.width!=="auto"?this.resizable.offsetWidth:a,n=this.resizable.style.height!=="auto"?this.resizable.offsetHeight:o,this.resizable.style.position=i}return{width:r,height:n}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"sizeStyle",{get:function(){var r=this,n=this.props.size,a=function(l){if(typeof r.state[l]>"u"||r.state[l]==="auto")return"auto";if(r.propsSize&&r.propsSize[l]&&r.propsSize[l].toString().endsWith("%")){if(r.state[l].toString().endsWith("%"))return r.state[l].toString();var s=r.getParentSize(),c=Number(r.state[l].toString().replace("px","")),d=c/s[l]*100;return d+"%"}return TT(r.state[l])},o=n&&typeof n.width<"u"&&!this.state.isResizing?TT(n.width):a("width"),i=n&&typeof n.height<"u"&&!this.state.isResizing?TT(n.height):a("height");return{width:o,height:i}},enumerable:!1,configurable:!0}),t.prototype.getParentSize=function(){if(!this.parentNode)return this.window?{width:this.window.innerWidth,height:this.window.innerHeight}:{width:0,height:0};var r=this.appendBase();if(!r)return{width:0,height:0};var n=!1,a=this.parentNode.style.flexWrap;a!=="wrap"&&(n=!0,this.parentNode.style.flexWrap="wrap"),r.style.position="relative",r.style.minWidth="100%",r.style.minHeight="100%";var o={width:r.offsetWidth,height:r.offsetHeight};return n&&(this.parentNode.style.flexWrap=a),this.removeBase(r),o},t.prototype.bindEvents=function(){this.window&&(this.window.addEventListener("mouseup",this.onMouseUp),this.window.addEventListener("mousemove",this.onMouseMove),this.window.addEventListener("mouseleave",this.onMouseUp),this.window.addEventListener("touchmove",this.onMouseMove,{capture:!0,passive:!1}),this.window.addEventListener("touchend",this.onMouseUp))},t.prototype.unbindEvents=function(){this.window&&(this.window.removeEventListener("mouseup",this.onMouseUp),this.window.removeEventListener("mousemove",this.onMouseMove),this.window.removeEventListener("mouseleave",this.onMouseUp),this.window.removeEventListener("touchmove",this.onMouseMove,!0),this.window.removeEventListener("touchend",this.onMouseUp))},t.prototype.componentDidMount=function(){if(!(!this.resizable||!this.window)){var r=this.window.getComputedStyle(this.resizable);this.setState({width:this.state.width||this.size.width,height:this.state.height||this.size.height,flexBasis:r.flexBasis!=="auto"?r.flexBasis:void 0})}},t.prototype.componentWillUnmount=function(){this.window&&this.unbindEvents()},t.prototype.createSizeForCssProperty=function(r,n){var a=this.propsSize&&this.propsSize[n];return this.state[n]==="auto"&&this.state.original[n]===r&&(typeof a>"u"||a==="auto")?"auto":r},t.prototype.calculateNewMaxFromBoundary=function(r,n){var a=this.props.boundsByDirection,o=this.state.direction,i=a&&Mp("left",o),l=a&&Mp("top",o),s,c;if(this.props.bounds==="parent"){var d=this.parentNode;d&&(s=i?this.resizableRight-this.parentLeft:d.offsetWidth+(this.parentLeft-this.resizableLeft),c=l?this.resizableBottom-this.parentTop:d.offsetHeight+(this.parentTop-this.resizableTop))}else this.props.bounds==="window"?this.window&&(s=i?this.resizableRight:this.window.innerWidth-this.resizableLeft,c=l?this.resizableBottom:this.window.innerHeight-this.resizableTop):this.props.bounds&&(s=i?this.resizableRight-this.targetLeft:this.props.bounds.offsetWidth+(this.targetLeft-this.resizableLeft),c=l?this.resizableBottom-this.targetTop:this.props.bounds.offsetHeight+(this.targetTop-this.resizableTop));return s&&Number.isFinite(s)&&(r=r&&r"u"?10:o.width,f=typeof a.width>"u"||a.width<0?r:a.width,v=typeof o.height>"u"?10:o.height,h=typeof a.height>"u"||a.height<0?n:a.height,g=s||0,_=c||0;if(l){var w=(v-g)*this.ratio+_,b=(h-g)*this.ratio+_,y=(d-_)/this.ratio+g,D=(f-_)/this.ratio+g,F=Math.max(d,w),S=Math.min(f,b),I=Math.max(v,y),C=Math.min(h,D);r=ew(r,F,S),n=ew(n,I,C)}else r=ew(r,d,f),n=ew(n,v,h);return{newWidth:r,newHeight:n}},t.prototype.setBoundingClientRect=function(){if(this.props.bounds==="parent"){var r=this.parentNode;if(r){var n=r.getBoundingClientRect();this.parentLeft=n.left,this.parentTop=n.top}}if(this.props.bounds&&typeof this.props.bounds!="string"){var a=this.props.bounds.getBoundingClientRect();this.targetLeft=a.left,this.targetTop=a.top}if(this.resizable){var o=this.resizable.getBoundingClientRect(),i=o.left,l=o.top,s=o.right,c=o.bottom;this.resizableLeft=i,this.resizableRight=s,this.resizableTop=l,this.resizableBottom=c}},t.prototype.onResizeStart=function(r,n){if(!(!this.resizable||!this.window)){var a=0,o=0;if(r.nativeEvent&&hft(r.nativeEvent)?(a=r.nativeEvent.clientX,o=r.nativeEvent.clientY):r.nativeEvent&&tw(r.nativeEvent)&&(a=r.nativeEvent.touches[0].clientX,o=r.nativeEvent.touches[0].clientY),this.props.onResizeStart&&this.resizable){var i=this.props.onResizeStart(r,n,this.resizable);if(i===!1)return}this.props.size&&(typeof this.props.size.height<"u"&&this.props.size.height!==this.state.height&&this.setState({height:this.props.size.height}),typeof this.props.size.width<"u"&&this.props.size.width!==this.state.width&&this.setState({width:this.props.size.width})),this.ratio=typeof this.props.lockAspectRatio=="number"?this.props.lockAspectRatio:this.size.width/this.size.height;var l,s=this.window.getComputedStyle(this.resizable);if(s.flexBasis!=="auto"){var c=this.parentNode;if(c){var d=this.window.getComputedStyle(c).flexDirection;this.flexDir=d.startsWith("row")?"row":"column",l=s.flexBasis}}this.setBoundingClientRect(),this.bindEvents();var f={original:{x:a,y:o,width:this.size.width,height:this.size.height},isResizing:!0,backgroundStyle:Wl(Wl({},this.state.backgroundStyle),{cursor:this.window.getComputedStyle(r.target).cursor||"auto"}),direction:n,flexBasis:l};this.setState(f)}},t.prototype.onMouseMove=function(r){var n=this;if(!(!this.state.isResizing||!this.resizable||!this.window)){if(this.window.TouchEvent&&tw(r))try{r.preventDefault(),r.stopPropagation()}catch{}var a=this.props,o=a.maxWidth,i=a.maxHeight,l=a.minWidth,s=a.minHeight,c=tw(r)?r.touches[0].clientX:r.clientX,d=tw(r)?r.touches[0].clientY:r.clientY,f=this.state,v=f.direction,h=f.original,g=f.width,_=f.height,w=this.getParentSize(),b=gft(w,this.window.innerWidth,this.window.innerHeight,o,i,l,s);o=b.maxWidth,i=b.maxHeight,l=b.minWidth,s=b.minHeight;var y=this.calculateNewSizeFromDirection(c,d),D=y.newHeight,F=y.newWidth,S=this.calculateNewMaxFromBoundary(o,i);this.props.snap&&this.props.snap.x&&(F=dq(F,this.props.snap.x,this.props.snapGap)),this.props.snap&&this.props.snap.y&&(D=dq(D,this.props.snap.y,this.props.snapGap));var I=this.calculateNewSizeFromAspectRatio(F,D,{width:S.maxWidth,height:S.maxHeight},{width:l,height:s});if(F=I.newWidth,D=I.newHeight,this.props.grid){var C=uq(F,this.props.grid[0]),R=uq(D,this.props.grid[1]),P=this.props.snapGap||0;F=P===0||Math.abs(C-F)<=P?C:F,D=P===0||Math.abs(R-D)<=P?R:D}var O={width:F-h.width,height:D-h.height};if(g&&typeof g=="string"){if(g.endsWith("%")){var N=F/w.width*100;F=N+"%"}else if(g.endsWith("vw")){var A=F/this.window.innerWidth*100;F=A+"vw"}else if(g.endsWith("vh")){var z=F/this.window.innerHeight*100;F=z+"vh"}}if(_&&typeof _=="string"){if(_.endsWith("%")){var N=D/w.height*100;D=N+"%"}else if(_.endsWith("vw")){var A=D/this.window.innerWidth*100;D=A+"vw"}else if(_.endsWith("vh")){var z=D/this.window.innerHeight*100;D=z+"vh"}}var k={width:this.createSizeForCssProperty(F,"width"),height:this.createSizeForCssProperty(D,"height")};this.flexDir==="row"?k.flexBasis=k.width:this.flexDir==="column"&&(k.flexBasis=k.height),Kr.flushSync(function(){n.setState(k)}),this.props.onResize&&this.props.onResize(r,v,this.resizable,O)}},t.prototype.onMouseUp=function(r){var n=this.state,a=n.isResizing,o=n.direction,i=n.original;if(!(!a||!this.resizable)){var l={width:this.size.width-i.width,height:this.size.height-i.height};this.props.onResizeStop&&this.props.onResizeStop(r,o,this.resizable,l),this.props.size&&this.setState(this.props.size),this.unbindEvents(),this.setState({isResizing:!1,backgroundStyle:Wl(Wl({},this.state.backgroundStyle),{cursor:"auto"})})}},t.prototype.updateSize=function(r){this.setState({width:r.width,height:r.height})},t.prototype.renderResizer=function(){var r=this,n=this.props,a=n.enable,o=n.handleStyles,i=n.handleClasses,l=n.handleWrapperStyle,s=n.handleWrapperClass,c=n.handleComponent;if(!a)return null;var d=Object.keys(a).map(function(f){return a[f]!==!1?m.createElement(fft,{key:f,direction:f,onResizeStart:r.onResizeStart,replaceStyles:o&&o[f],className:i&&i[f]},c&&c[f]?c[f]:null):null});return m.createElement("div",{className:s,style:l},d)},t.prototype.render=function(){var r=this,n=Object.keys(this.props).reduce(function(i,l){return _ft.indexOf(l)!==-1||(i[l]=r.props[l]),i},{}),a=Wl(Wl(Wl({position:"relative",userSelect:this.state.isResizing?"none":"auto"},this.props.style),this.sizeStyle),{maxWidth:this.props.maxWidth,maxHeight:this.props.maxHeight,minWidth:this.props.minWidth,minHeight:this.props.minHeight,boxSizing:"border-box",flexShrink:0});this.state.flexBasis&&(a.flexBasis=this.state.flexBasis);var o=this.props.as||"div";return m.createElement(o,Wl({ref:this.ref,style:a,className:this.props.className},n),this.state.isResizing&&m.createElement("div",{style:this.state.backgroundStyle}),this.props.children,this.renderResizer())},t.defaultProps={as:"div",onResizeStart:function(){},onResize:function(){},onResizeStop:function(){},enable:{top:!0,right:!0,bottom:!0,left:!0,topRight:!0,bottomRight:!0,bottomLeft:!0,topLeft:!0},style:{},grid:[1,1],lockAspectRatio:!1,lockAspectRatioExtraWidth:0,lockAspectRatioExtraHeight:0,scale:1,resizeRatio:1,snapGap:0},t}(m.PureComponent);const pq=m.forwardRef((e,t)=>{const{children:r,direction:n="horizontal",activeContent:a,drivenContent:o,defaultSize:i=100,size:l,style:s,allowCollapse:c=!0,onResizeStop:d,defaultCollapse:f=!1,onCollapseChange:v,isLazy:h,className:g,expandContent:_,...w}=e,[b,y]=cft({value:l,defaultStateValue:i}),[D,F]=m.useState(f),[S,I]=m.useState(!0);m.useEffect(()=>{v?.(D)},[D,v]);const C=n==="horizontal",R=m.useMemo(()=>C?{width:b,height:"100%"}:{width:"100%",height:b},[b,C]),P=m.useMemo(()=>D?0:S?b:0,[b,D,S]),O=C?{width:i,height:"100%"}:{height:i,width:"100%"},N=C?{top:!1,right:!0,bottom:!1,left:!1}:{top:!1,right:!1,bottom:!0,left:!1},A=m.useCallback((z,k,M,T)=>{y(B=>Rdt(B)?B+(k==="right"?T.width:T.height):k==="right"?M.clientWidth:M.clientHeight),d?.(z,k,M,T)},[d,y]);return m.useImperativeHandle(t,()=>({setCollapse:F,setPin:I,getPin:()=>S,getCollapse:()=>D})),tn("div",{style:s,className:ar({"flex h-full flex-col overflow-hidden":!C,"relative flex w-full overflow-hidden":C}),children:[D?_??de("div",{className:ar({"solid-border-r h-wrapper group w-[16px] cursor-pointer bg-container-disabled":C,"solid-border-b v-wrapper group flex h-[16px] bg-container-disabled":!C}),onClick:()=>{F(!1)},"aria-label":"expand-icon",children:de(jdt,{className:"group-hover-[.h-wrapper]:text-primary group-[.h-wrapper]:mt-[6px] group-[.v-wrapper]:ml-[12px] group-[.h-wrapper]:inline-block group-[.h-wrapper]:w-full group-[.v-wrapper]:rotate-90 group-[.h-wrapper]:text-center"})}):null,tn(mft,{style:D?{...h?{transform:`translateX(${-b}px)`}:{display:"none"}}:{...h?{position:"absolute"}:{}},defaultSize:O,className:ar(g,h?"absolute z-[1]":{"solid-border-r":C,"solid-border-b":!C}),enable:N,size:R,handleComponent:C?{right:de(Udt,{className:"absolute right-[-2px] top-1/2 translate-y-[-50%]"})}:{bottom:de(Hdt,{className:"absolute bottom-[-6px] left-1/2 translate-x-[-50%]"})},onResizeStop:A,...w,children:[c?_??de("div",{"aria-label":"collapse-icon",className:ar("solid-border hover:border-border-hover flex h-[18px] w-[18px] cursor-pointer items-center justify-center rounded-[50%] bg-container leading-[14px] hover:text-primary [&>.fd-svgicon]:h-[16px] [&>.fd-svgicon]:text-[16px]",{"absolute right-0 top-[12px] z-[1] translate-x-1/2":C,"absolute bottom-0 left-[12px] z-[1] translate-x-1/2 rotate-90":!C}),onClick:()=>{F(z=>!z)},children:de(Bdt,{})}):null,a]}),de("div",{className:ar("min-w-0 flex-1","driven-wrapper",h?"z[1] absolute":""),style:{...h?{inset:0,left:P}:{}},children:o})]})});pq.displayName="ResizeContainer";const jKt="",xft=()=>{const e=tN();return{zh_CN:rq,en_US:tq,ja_JP:qdt,ko_KR:Gdt}[e]||rq},bft=()=>({theme:Tn,locale:xft()}),yft=jH.add;jH.add=e=>yft({className:ar(e.className,"fdi-global-adaptor"),...e});class wft{constructor(){this.configs=new Map}inject(t){this.configs.has(t.type)||(this.configs.set(t.type,{...t,key:t.name+Math.abs(t.type)}),this.configAdd(this.configs.get(t.type)))}getCustomConfig(t){return typeof t=="number"?this.configs.get(t):Array.from(this.configs.values()).find(r=>r.key===t)}isCustomTable(t){return this.configs.has(t)}getAddCustomTableMenuKeys(){return[...Array.from(this.configs.values()).map(t=>t.key)]}getCustomTableIcon(t){return this.getIconCls(this.configs.get(t))}getCustomTables(){return Array.from(this.configs.values())}getIconCls(t){return t?`custom-${t.key}-table`:""}configAdd(t){const r=this.getIconCls(t),n=document.createElement("style");n.innerHTML=` +*/(function(e){(function(){var t=function(){function r(){}r.prototype=Object.create(null);function n(f,v){for(var g=v.length,h=0;h0,P={},U=qt("");v||Sn(P,{onClick:function(N){var T;D?.(N),i?.(t.item,N),(T=R.onAfterSelect)===null||T===void 0||T.call(R,t.item,N)},onMouseEnter:I,onMouseLeave:$});var B=_e("".concat(n,"-item"),s,{disabled:v,selected:g,"has-children":k,"custom-content":!dt(_)}),z=function(N,T){return E.createElement("ul",{className:_e(n),style:ae({},a(T))},Cn(N,function(O,j){var K=o(O,j);return E.createElement(e,{prefixCls:n,key:K,item:O,level:T,onGetMenuWidthStyle:a,onGetItemKey:o,onAfterSelect:i})}))},A=function(){return dt(_)?E.createElement(E.Fragment,null,b&&E.createElement("span",{className:"item-icon"},b),x&&E.createElement("span",{className:"item-label"},x),k?E.createElement(E1,{className:"expand-icon"}):g&&E.createElement(WWe,{className:"check-icon"})):Fr(_)?_(t.item):_};return h?E.createElement(AV,Ee({className:s},yo(F,{aria:!0,data:!0}))):!k||v?E.createElement("li",Ee({className:B,style:d,title:f},P,yo(F,{aria:!0,data:!0})),A()):E.createElement(Bh,{effect:"light",className:_e("".concat(U,"-sub-menu"),c),content:z(w,r+1),placement:"right-top",arrow:!1,hasPadding:!1,offset:[4,0],trigger:"hover"},E.createElement("li",Ee({className:B,style:d,title:f},P,yo(F,{aria:!0,data:!0})),A()))};const wnt=ynt;var Dnt=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);oA?(B=P,F.current="x"):(B=U,F.current="y"),t(-B,-B)&&k.preventDefault()}var R=m.useRef({onTouchStart:D,onTouchMove:I,onTouchEnd:$,onWheel:C});m.useEffect(function(){var k,P;function U(M){var N;(N=R.current)===null||N===void 0||N.onTouchStart(M)}function B(M){var N;(N=R.current)===null||N===void 0||N.onTouchMove(M)}function z(M){var N;(N=R.current)===null||N===void 0||N.onTouchEnd(M)}function A(M){var N;(N=R.current)===null||N===void 0||N.onWheel(M)}return document.addEventListener("touchmove",B,{passive:!1}),document.addEventListener("touchend",z,{passive:!0}),(k=e.current)===null||k===void 0||k.addEventListener("touchstart",U,{passive:!0}),(P=e.current)===null||P===void 0||P.addEventListener("wheel",A,{passive:!1}),function(){document.removeEventListener("touchmove",B),document.removeEventListener("touchend",z)}},[])}var Mnt=function(t){var r=t.enable,n=t.headerRef,o=t.activeKey,a=t.theme,i=m.useState({}),l=be(i,2),s=l[0],c=l[1],d=function(){if(!n.current)return{};var h=n.current.querySelector(".tab-header-active"),_=n.current.querySelector(".tab-header-item")||{},b=Co.getDomOffset(h,_)||{left:0},x=b.left,w=Nt(h,"offsetWidth",0);c({width:w,left:"".concat(x,"px")})};m.useEffect(function(){r&&setTimeout(function(){d()})},[o,a]);var f=function(){return r?E.createElement("div",{className:"segment-animate-dot",style:s}):null},v=Fp(function(){r&&d()},200);return[f(),v]};const znt=Mnt;var LV=function(t,r){var n="";return E.Children.forEach(t,function(o){Nt(o,"props.disable")||dt(o?.key)||(o?.key===r?n=r:!n&&o?.key&&(n=o.key))}),n},Lnt=function(t){var r=t.defaultActiveKey,n=t.activeKey,o=t.onTabClick,a=t.onTabActive,i=t.children,l=xi(LV(i,r),{value:n}),s=be(l,2),c=s[0],d=s[1];m.useEffect(function(){n||d(LV(i,c))},[i]);var f=function(g,h){var _=h.props.disable;if(!_){var b=h.key,x=!1;if(o){var w=o(b,g);w!==!1&&(x=!0)}else x=!0;b!==c&&x&&(d(b),a&&a(b,g))}};return[c,f]};const BV=Lnt;var Bnt=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o=Ve)return!1;var Ke=qe-Ve;return j(function(Rt){var xe=Rt+et;return Math.min(Math.max(xe,Ke),0)}),!0});var Pe=function(){return dt(P.current)?0:P.current.scrollWidth},Qe=function(){return dt(P.current)?0:P.current.clientWidth},it=function(){if(k.current){var qe=k.current.querySelector(".next"),Ve=gh(k.current.querySelectorAll(".tab-header-item"));if(!(!qe||!Ve)){var Ke=Ve.offsetWidth,Rt=Co.getDomOffset(Ve,qe);if(-Rt.left>Ke){var xe=Qe(),Te=Pe();j(xe-Te)}}}},Je=m.useMemo(function(){return c&&!s},[c,s]),He=function(){return O<0},Ce=function(){if(O===0)return!0;var qe=Qe()-Pe();return O>qe},Le=function(){if(!s){var qe=k.current?k.current.offsetWidth:0,Ve=Pe()>qe;if(M(Ve),Ve){xt(),it();return}j(0)}},ze=Fp(function(){Le()},200),ft=function(qe,Ve){if(dt(qe)||!k.current)return null;var Ke=k.current.querySelector(".prev"),Rt=k.current.querySelector(".next");if(!(!Ke||!Rt)){var xe=Co.getDomOffset(qe,Ke),Te=Co.getDomOffset(qe,Rt);if(!xe||!Te)return null;var We=a!=="default"?4:0,Xe=qe.offsetWidth+We*2,ot=Ke.offsetWidth;xe.left=Math.round(xe.left-We)-ot,Te.left=Math.round(Te.left-We);var gt={prevOffset:xe,nextOffset:Te,elWidth:Xe};return Te.left<0&&Te.left+Xe>0||Te.left>=0&&Ve===Wl.RIGHT||Te.left>0&&dt(Ve)?ae(ae({},gt),{offset:Wl.RIGHT}):xe.left<0&&xe.left+Xe>0||xe.left<0&&Ve===Wl.LEFT||xe.left+Xe<0&&dt(Ve)?ae(ae({},gt),{offset:Wl.LEFT}):null}},pt=function(qe,Ve){if(!A||!k.current)return!1;var Ke=ft(qe,Ve);if(!dt(Ke)){var Rt=Ke.prevOffset,xe=Ke.nextOffset,Te=Ke.offset,We=Ke.elWidth;Te===Wl.RIGHT&&j(function(Xe){return Xe-(We+xe.left)}),Te===Wl.LEFT&&j(function(Xe){return Xe-Rt.left})}},wt=function(qe){var Ve=Math.min(O+Qe(),0);j(Ve),w&&w(qe),Yt()},st=function(qe){var Ve=Qe(),Ke=Pe(),Rt=O-Ve,xe=Ve-Ke;Rt=Math.max(Rt,xe),j(Rt),D&&D(qe),Yt()},xt=function(){X(!He()),Z(!Ce())},we=function(qe){var Ve;if(k.current){var Ke=k.current.querySelectorAll(".tab-header-item")||[],Rt={};return $t(Ve=E.Children).call(Ve,d,function(xe,Te){if(xe){var We=xe.key||Te;Rt[We]=xe}}),BS(Cn(Ke,function(xe,Te){var We=ft(xe,qe),Xe=xe.getAttribute("data-tab-id")||Te,ot=Rt[Xe];if(We&&We.offset===qe&&ot){var gt=ot.props,Et=gt.disable,Qt=gt.tab;if(Hn(Qt))return;var Ft=a9(Qt)?Qt:E.createElement(PV,Qt);return E.createElement("span",{onClick:function(Bt){Yt(),R(Bt,ot),pt(xe||Bt.currentTarget,qe)},key:ot.key,className:_e("tab-hide-popover-item",{disabled:Et})},Ft)}}))}},Yt=function(){re(!1),fe(!1)},Ut=function(qe,Ve,Ke,Rt){var xe=we(Ve),Te=Ke;return Hn(xe)&&(Te=!1),E.createElement(J1,{visible:Te,arrow:!1,onVisibleChange:Rt,content:E.createElement("div",{className:"tab-hide-popover-list"},xe),placement:"bottom",className:_e("tab-hide-popover-wrapper",x)},qe)},Tt=function(){return E.createElement(yi,{onResize:function(Ve){(Ve.offsetWidth!==0||Ve.offsetHeight!==0)&&(ze(),$e())}},E.createElement(NV,Ee({},t,{tabHeaderClassName:_e(_,{"has-arrow":A}),activeKey:C,onItemClick:function(Ve,Ke){R(Ve,Ke),pt(Ve.currentTarget)},headerRef:k,headerListRef:P,headerListStyle:{transform:"translate(".concat(O,"px, 0)")},prefixEle:A&&Ut(E.createElement("div",{className:_e("tab-arrow","prev",{disabled:Y}),onClick:wt},E.createElement(I3,{className:"arrow-icon"})),Wl.LEFT,ne,re),suffixEle:E.createElement(E.Fragment,null,A&&Ut(E.createElement("div",{className:_e("tab-arrow","next",{disabled:V}),onClick:st},E.createElement(E1,{className:"arrow-icon"})),Wl.RIGHT,oe,fe),Je&&E.createElement("div",{className:_e("tab-extra-content",b)},c)),lastItemEle:ge}),d))};if(!C)return null;var It=Me,at=_e("".concat(v," horizontal-tab"),f,ue?.className,(r={},je(r,"size-".concat(It),It),je(r,"theme-".concat(a),a),je(r,"is-stretch",s),r)),vt=ae(ae({},ue?.style),h);return E.createElement("div",Ee({className:at,style:vt,id:g},yo(I,{aria:!0,data:!0})),Tt(),E.createElement(kV,{destroyInactive:l,activeKey:C},d))};const Unt=jnt;var Hnt=function(t){var r=t.className,n=t.children,o=t.style,a=t.active,i=a===void 0?!1:a,l=t.forceRender,s=l===void 0?!1:l,c=t.destroyInactive,d=c===void 0?!0:c,f=t.prefixCls,v=qt("tab",f),g=_e("".concat(v,"-content"),r),h=m.useState(s),_=be(h,2),b=_[0],x=_[1];if(m.useEffect(function(){i?x(!0):d&&x(!1)},[i,d]),d&&!i)return null;var w={};return i||(w.display="none"),E.createElement("div",{className:g,style:Sn(w,o)},(i||b||s)&&n)};const Wnt=Hnt;var Vnt=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o2&&arguments[2]!==void 0?arguments[2]:!0;Ke&&qe.preventDefault(),qe.stopPropagation(),Ve&&Ve(qe,wt)},vt=function(qe){j&&qe.dataTransfer.setDragImage(WV,0,0),qe.stopPropagation(),V&&V(qe,wt)};return E.createElement("div",{className:_e("tree-node",h,"".concat(HV).concat(r),je({"node-selected":!n&&o,disabled:Qe,draggable:Je},"check-pos-".concat(A),B)),style:ae(ae({},v),{height:$}),onClick:It,draggable:Je,onDragStart:Je?vt:void 0,onDragEnter:Je?function(et){return at(et,Z)}:void 0,onDragOver:Je?function(et){return at(et,te)}:void 0,onDragLeave:Je?function(et){return at(et,re,!1)}:void 0,onDragEnd:Je?function(et){return at(et,ie,!1)}:void 0,onDrop:Je?function(et){return at(et,ce)}:void 0},Q?Q(ae(ae(ae(ae(ae({},ge),t),{isLeaf:pt(),onExpand:Ut}),d),{nodeIndex:_})):E.createElement(E.Fragment,null,A==="left"&&st(),xt(),k&&we(),A==="middle"&&st(),Yt(),A==="right"&&st()))},KV=function(t,r){var n;return mt(n="".concat(t,"-")).call(n,r)},qV=function(t){var r=t.event,n=t.targetNode,o=t.draggingNode,a=t.indent,i=t.startMousePosition,l=t.allowDrop,s=t.flattenedNodes,c=t.keyEntities,d=t.expandKeys,f=r.clientX,v=r.clientY,g=r.target.getBoundingClientRect(),h=g.top,_=g.height,b=20,x=(i.x||0)-f,w=(x-b)/a,D=c[n.nodeKey];if(v-1.5)l({dropNode:n,dropPosition:eo.BOTTOM,dragNode:o,dropNodeParent:D.parent})?k=eo.BOTTOM:B=!1;else{var z=n;n.nodeKey!==D.key&&(z=ae({nodeKey:D.key},C.node)),l({dropNode:z,dropPosition:eo.OVER,dragNode:o,dropNodeParent:D.parent})?k=eo.OVER:l({dropNode:n,dropPosition:eo.BOTTOM,dragNode:o,dropNodeParent:D.parent})?k=eo.BOTTOM:B=!1}else l({dropNode:n,dropPosition:eo.BOTTOM,dragNode:o,dropNodeParent:D.parent})?k=eo.BOTTOM:B=!1;return eot(D,o.nodeKey)&&(B=!1),{dropPosition:k,dropLevelOffset:P,dropTargetKey:D.key,dropTargetPos:D.pos,dragOverNodeKey:R,dropContainerKey:k===eo.OVER?D.key:D.parent?D.parent.key:null,dropAllowed:B}},eot=function(t,r){var n=!1,o=function a(i){if(!dt(i.parent)){if(i.parent.key===r){n=!0;return}a(i.parent)}};return o(t),n},tot=function(t){if(t.parent){var r=YV(t.pos);return Number(r[r.length-1])===t.parent.children.length-1}return!1},rot=function(t){var r=YV(t.pos);return Number(r[r.length-1])===0},YV=function(t){return t.split("-")},not=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=t.length,o=r.length;if(Math.abs(n-o)!==1)return{add:!1,key:null};var a=function(l,s){var c=new so;l.forEach(function(f){c.set(f,!0)});var d=ul(s).call(s,function(f){return!c.has(f)});return d.length===1?d[0]:null};return n0&&arguments[0]!==void 0?arguments[0]:[],r=arguments.length>1?arguments[1]:void 0,n=new Ul(r),o=[],a=function i(l){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return $t(l).call(l,function(c,d){var f=KV(s?s.pos:"0",d),v=sT(c.key,f),g=ae(ae({},c),{parent:s,pos:f,children:[],data:c});return o.push(g),n.has(v)?g.children=i(c.children||[],g):g.children=[],g})};return a(t),o},rw=function(t,r){var n=r.expandedKeys,o=r.selectedKeys,a=r.checkedKeys,i=r.halfCheckedKeys,l=r.disableSelectKeys,s=r.disableCheckKeys,c=r.loadingKeys,d=r.loadedKeys,f={nodeKey:t,expanded:rn(n,t),selected:rn(o,t),checked:rn(a,t),indeterminate:i?rn(i,t):void 0,selectable:!rn(l,t),checkable:!rn(s,t),loading:rn(c,t),loaded:rn(d,t)};return f},iot=function(t,r,n){var o=r||[];if(n){var a=ar(o),i=function l(s){s.forEach(function(c){c.children&&(bo(a).call(a,c.key)&&(a=Es(a,Cn(c.children,"key"))),l(c.children)),Wo(c.children)&&Ju(c.children,function(d){return rn(a,d.key)})&&a.push(c.key)})};i(t),o=ar(a)}return Rs(o)},lot=function(t){var r=t.children,n=t.key,o=[n],a=function i(l){l.forEach(function(s){var c=s.children;o.push(s.key),Wo(c)&&(o=mt(o).call(o,Cn(c,"key")),i(c))})};return Wo(r)&&a(r||[]),o},sot=function(t,r,n){var o=t[r.key],a=ar(n),i=function l(s){!dt(s.children)&&Ju(s.children,function(c){return rn(a,c.key)})?a.push(s.key):a=Ss(a,[s.key]),dt(s.parent)||l(s.parent)};return dt(o.parent)||i(o.parent),a},XV=function(t,r,n,o,a){var i=ar(r),l=[n.key];if(a){var s=t[n.key];l=lot(s)}if(o){var c;i=mt(c=[]).call(c,ar(i),ar(l))}else i=Ss(i,l);return a&&(i=sot(t,n,i)),Rs(i)},cot=function(t){var r={},n={};return uot(t,function(o){var a=o.node,i=o.index,l=o.pos,s=o.key,c=o.parentPos,d=o.level,f=oot(o,["node","index","pos","key","parentPos","level"]),v=ae({node:a,index:i,key:s,pos:l,level:d},f),g=sT(s,l);r[l]=v,n[g]=v,v.parent=r[c],v.parent&&(v.parent.children=v.parent.children||[],v.parent.children.push(v))}),n},uot=function(t,r){var n=function o(a,i,l){var s=a?a.children:t,c=a?KV(l.pos,i):"0";if(a){var d=sT(a.key,c),f={node:a,index:i,pos:c,key:d,parentPos:l.node?l.pos:null,level:l.level+1};r(f)}s&&s.forEach(function(v,g){o(v,g,{node:a,pos:c,level:l?l.level+1:-1})})};n(null)},dot=function e(t){if(Hn(t))return[];var r=[];return yr(t,function(n){if(n){var o,a=n.key,i=n.children,l=i===void 0?[]:i;r.push.apply(r,mt(o=[a]).call(o,ar(e(l))))}}),r},fot=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=arguments.length>2?arguments[2]:void 0,o=ar(r),a=[];if(n){var i=function l(s){s.forEach(function(c){c.children&&(bo(o).call(o,c.key)&&(o=Es(o,Cn(c.children,"key"))),l(c.children)),Wo(c.children)&&Ju(c.children,function(d){return rn(o,d.key)})?o.push(c.key):e1(c.children,function(d){return rn(o,d.key)||rn(a,d.key)})&&a.push(c.key)})};i(t)}return a},pot=function(t){return lr(t)?{checked:t,halfChecked:void 0}:(En(t),t)},ZV=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o0&&arguments[0]!==void 0?arguments[0]:[];yr(he,function(ge){if(rn(a,ge.key))return oe=!0,!1;ge.children&&ve(ge.children)})};return fe(re),oe=oe&&!Ju(re,function(ve){return rn(a,ve.key)}),oe};return E.createElement(got,Ee({key:te,index:V},ne,J,{indeterminate:ie(),itemHeight:g,data:H.data,motionNodes:te===nw?C:null,motionType:U,onMotionStart:_,onMotionEnd:K,treeNodeRequiredProps:Q}))}},X=function(){return E.createElement(mV,{ref:z,data:D,itemKey:"key",fullHeight:!1,itemHeight:g,height:v,virtual:!0,onVisibleChange:function(V,Z){var te=new Ul(V),J=ul(Z).call(Z,function(ne){return!te.has(ne)});J.some(function(ne){var re;return((re=ne?.data)===null||re===void 0?void 0:re.key)===nw})&&K()}},Y)};return h?X():E.createElement(E.Fragment,null,Cn(D,function(G,H){return Y(G,H)}))});const xot=mot;var bot=function(){function e(t){var r=t.treeRef,n=t.indent;Br(this,e),this.isDragging=!1,this.treeRef=r,this.indent=n}return jr(e,[{key:"clear",value:function(){this.clearDropOverNode(),this.clearDropContainer(),this.clearCustomizeDraggingNode(),this.isDragging=!1,this.dragStartPosition=null,this.draggingNode=null,this.dropPosition=null,this.dropNode=null,this.dropOverNodeKey=null,this.dropTargetKey=null}},{key:"handleDragStart",value:function(r,n,o){this.isDragging=!0,this.dragStartPosition={x:r.clientX,y:r.clientY},this.draggingNode=n,this.customizeDraggingNode=o,this.refreshCustomizeDraggingNode({x:r.clientX,y:r.clientY})}},{key:"handleDragLeave",value:function(r){this.handleDragOverPosition({dropAllowed:!1,dropContainerKey:null,dragOverNodeKey:null,dropPosition:0,dropLevelOffset:0,dropNode:{},dropTargetKey:null,event:r})}},{key:"handleDragOverPosition",value:function(r){var n=r.dropAllowed,o=r.dropContainerKey,a=r.dragOverNodeKey,i=r.dropPosition,l=r.dropLevelOffset,s=r.dropNode,c=r.dropTargetKey,d=r.event;n?(this.dropTargetKey=c,this.dropNode=s,this.setDropContainerNodeKey(o),this.setDropOverNodeKey(a,i,l)):(this.dropNode=null,this.dropTargetKey=null,this.setDropContainerNodeKey(null),this.setDropOverNodeKey(null,i,l)),this.refreshCustomizeDraggingNode({x:d.clientX,y:d.clientY})}},{key:"refreshCustomizeDraggingNode",value:function(r){var n=r.x,o=r.y;this.customizeDraggingNode&&(this.customizeDraggingNode.style.left="".concat(n,"px"),this.customizeDraggingNode.style.top="".concat(o,"px"))}},{key:"clearDropContainer",value:function(){if(!(!this.treeRef.current||!this.dropContainerNodeKey)){var r=this.getTreeNodeByKey(this.dropContainerNodeKey);if(r){var n;r.className=oT.apply(void 0,mt(n=ar(t1(r.className," "))).call(n,[{"drop-container":!1}]))}}}},{key:"clearCustomizeDraggingNode",value:function(){this.customizeDraggingNode&&(this.customizeDraggingNode.style.left="-500px",this.customizeDraggingNode.style.top="-500px",this.customizeDraggingNode=null)}},{key:"clearDropOverNode",value:function(){this.setDropOverNodeStyle({display:"none"}),this.dropPosition=null}},{key:"setDropOverNodeStyle",value:function(r){if(!(!this.treeRef.current||!this.dropOverNodeKey)){var n=this.getTreeNodeByKey(this.dropOverNodeKey);if(n){var o=n.getElementsByClassName("node-drop-indicator")[0]||null;if(!o)return;Cn(r,function(a,i){o.style[i]=a})}}}},{key:"setDropOverNodeKey",value:function(r,n,o){if(this.clearDropOverNode(),this.dropOverNodeKey=r,!Cs(r)){this.dropPosition=n;var a={left:"".concat(-o*this.indent,"px"),display:"block"};switch(n){case eo.TOP:a.top="0",a.bottom="unset";break;case eo.BOTTOM:a.bottom="0",a.top="unset";break;case eo.OVER:a.bottom="0",a.top="unset",a.left="".concat(this.indent,"px");break}this.setDropOverNodeStyle(a)}}},{key:"setDropContainerNodeKey",value:function(r){if(r!==this.dropContainerNodeKey&&(this.clearDropContainer(),this.dropContainerNodeKey=r,!Cs(r))){var n=this.getTreeNodeByKey(r);n&&(n.className=n.className+" drop-container")}}},{key:"getTreeNodeByKey",value:function(r){var n;if(!this.treeRef.current)return null;var o=this.treeRef.current.getElementsByClassName(mt(n="".concat(HV)).call(n,r));return o[0]||null}}]),e}();const yot=bot;var wot=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o1&&arguments[1]!==void 0?arguments[1]:[];return!t||!t.parent?r:(r.push(t.parent.key),e(t.parent,r))},Iot=m.forwardRef(function(e,t){var r=e.treeData,n=e.showIcon,o=n===void 0?!0:n,a=e.icon,i=a===void 0?function(wr){var Ot=wr.isLeaf,yt=wr.expanded;return Ot?null:yt?E.createElement(GWe,{className:"node-icon-group"}):E.createElement(YWe,{className:"node-icon-group"})}:a,l=e.showSwitcher,s=l===void 0?!0:l,c=e.switcherIcon,d=c===void 0?function(wr){var Ot=wr.isLeaf,yt=wr.expanded;return Ot?null:yt?E.createElement(EU,null):E.createElement(UWe,null)}:c,f=e.indent,v=f===void 0?20:f,g=e.titleRender,h=e.treeNodeRender,_=e.checkboxRender,b=e.disabled,x=e.expandedKeys,w=e.defaultExpandAll,D=w===void 0?!1:w,I=e.defaultExpandedKeys,$=e.selectable,F=e.allowDeselect,C=e.multipleSelect,R=e.selectedKeys,k=e.disableSelectKeys,P=e.defaultSelectedKeys,U=e.onSelect,B=e.checkable,z=e.checkedKeys,A=e.disableCheckKeys,M=e.defaultCheckedKeys,N=e.loadedKeys,T=e.onCheck,O=e.draggable,j=e.onExpand,K=e.checkPos,Q=K===void 0?"left":K,Y=e.allowDrop,X=Y===void 0?function(){return!0}:Y,G=e.allowExpandWhenDrag,H=G===void 0?function(){return!0}:G,V=e.onDropOutside,Z=e.onDragStart,te=e.onDragEnter,J=e.onDragOver,ne=e.onDragLeave,re=e.onDragEnd,ie=e.onDrop,ce=e.onClick,oe=e.virtual,fe=e.height,ve=e.nodeHeight,he=ve===void 0?32:ve,ge=e.draggingNodeRender,$e=e.contentEllipsis,ue=e.className,Me=e.style,Pe=e.id,Qe=e.autoExpand,it=e.expandArea,Je=it===void 0?"node":it,He=e.checkArea,Ce=He===void 0?"node":He,Le=e.leafCheckArea,ze=e.isCheckRelated,ft=ze===void 0?!1:ze,pt=e.checkStrictly,wt=pt===void 0?!1:pt,st=e.prefixCls,xt=e.onLoad,we=e.onLoadData,Yt=wot(e,["treeData","showIcon","icon","showSwitcher","switcherIcon","indent","titleRender","treeNodeRender","checkboxRender","disabled","expandedKeys","defaultExpandAll","defaultExpandedKeys","selectable","allowDeselect","multipleSelect","selectedKeys","disableSelectKeys","defaultSelectedKeys","onSelect","checkable","checkedKeys","disableCheckKeys","defaultCheckedKeys","loadedKeys","onCheck","draggable","onExpand","checkPos","allowDrop","allowExpandWhenDrag","onDropOutside","onDragStart","onDragEnter","onDragOver","onDragLeave","onDragEnd","onDrop","onClick","virtual","height","nodeHeight","draggingNodeRender","contentEllipsis","className","style","id","autoExpand","expandArea","checkArea","leafCheckArea","isCheckRelated","checkStrictly","prefixCls","onLoad","onLoadData"]),Ut=m.useMemo(function(){return ft&&!wt},[ft,wt]),Tt=m.useMemo(function(){return pot(z)},[z]),It=m.useState(I||[]),at=be(It,2),vt=at[0],et=at[1],qe=m.useState(P||[]),Ve=be(qe,2),Ke=Ve[0],Rt=Ve[1],xe=m.useState(Tt?.checked||M||[]),Te=be(xe,2),We=Te[0],Xe=Te[1],ot=m.useState(Tt?.halfChecked||[]),gt=be(ot,2),Et=gt[0],Qt=gt[1],Ft=xi([],{value:N}),ct=be(Ft,2),Bt=ct[0],Mt=ct[1],St=m.useState([]),zt=be(St,2),Jt=zt[0],vr=zt[1],fn=m.useState([]),Ae=be(fn,2),ke=Ae[0],ye=Ae[1],Ue=xi(oe?1:0,{value:fe}),ut=be(Ue,2),ir=ut[0],Rr=ut[1],Qr=m.useRef(null),gr=E.useRef(null),sr=m.useRef(),er=m.useRef(!1),Pr=m.useRef(null),Xt=m.useRef();Xt.current||(Xt.current=new yot({treeRef:Qr,indent:v}));var mr=To("tree"),mn=qt("list-tree",st);m.useEffect(function(){return function(){window.removeEventListener("dragend",VD),window.removeEventListener("dragover",hv)}},[]),m.useEffect(function(){I||et(D?Cn(xn,function(wr,Ot){return Ot}):[])},[D,I]);var Xo=m.useMemo(function(){return aot(r,x||vt)},[r,x,vt]),xn=m.useMemo(function(){var wr=cot(r);return Xt.current.keyEntities=wr,wr},[r]),Ya=m.useMemo(function(){return iot(r,Tt?.checked||We,Ut)},[r,Tt,We]),Ai=m.useMemo(function(){return Tt?.halfChecked||Et},[Tt,Et]);m.useEffect(function(){var wr,Ot;if(Qe){var yt=Rs(mt(wr=[]).call(wr,ar(R||Ke),ar(Ya))),At=uOe(Cn(yt,function(An){var Zo=xn[An];return Dot(Zo)})),cr=Rs(x||vt),Gr=Rs(mt(Ot=[]).call(Ot,ar(cr),ar(At)));(Wo(cr)!==Wo(Gr)||!Hn(Ss(cr,Gr))||!Hn(Ss(Gr,cr)))&&(x||et(Gr),j&&j(Gr))}},[R,P,Ya,xn,Qe]),m.useImperativeHandle(t,function(){return{scrollTo:function(Ot){var yt;(yt=gr.current)===null||yt===void 0||yt.scrollTo(Ot)}}});var su={expandedKeys:x||vt,selectedKeys:R||Ke,checkedKeys:Ya,halfCheckedKeys:wt?Ai:void 0,loadingKeys:Jt,loadedKeys:Bt,disableCheckKeys:A,disableSelectKeys:k},Js=function(Ot,yt,At){var cr=XV(xn,Ya,yt,At,Ut);Xe(cr),wt?(Qt(XV(xn,Ai,yt,!1,Ut)),T&&T({checked:cr,halfChecked:Ai},{node:yt,checked:At,event:Ot})):T&&T(cr,{node:yt,checked:At,event:Ot,halfCheckedKeys:fot(r,cr,ft)})},Qd=function(Ot,yt){var At=R||Ke,cr=yt.selected,Gr=yt.key,An=!cr;if(C)if(An){var Zo;At=mt(Zo=[]).call(Zo,ar(At),[Gr])}else At=Ml(At,function(Ga){return Ga!==Gr});else!F||F&&An?At=[Gr]:At=Ml(At,function(Ga){return Ga!==Gr});R||Rt(At),U&&U(At,{selected:An,node:yt,event:Ot})},WD=function(Ot,yt){ce&&ce(yt)},Jd=function(Ot){return we&&!rn(Jt,Ot)&&!rn(Bt,Ot)},ef=function(Ot){var yt=Ot.key,At=new xo(function(cr,Gr){we&&(vr(function(An){var Zo;return Rs(mt(Zo=[]).call(Zo,ar(An),[yt]))}),we(Ot).then(function(){var An=Es(Bt,[yt]);xt?.(An,{node:Ot}),Mt(An),cr()}).catch(function(){Gr()}).finally(function(){return vr(function(An){return Ss(An,[yt])})}))});return At.catch(function(){}),At},px=function(Ot,yt){if(!er.current){var At=x||vt,cr=yt.key,Gr=yt.expanded,An=!Gr;if(An){var Zo;At=Rs(mt(Zo=[]).call(Zo,ar(At),[cr]))}else At=Ml(At,function(uu){return uu!==cr});var Ga=function(){x||et(At),j&&j(At,{node:yt,expanded:An,event:Ot})};Jd(cr)&&An?ef(yt).then(Ga).catch(function(){et(Ss(At,[cr]))}):Ga()}},VD=function wr(){ye([]),Xt.current.clear(),V&&V(),window.removeEventListener("dragend",wr),window.removeEventListener("dragover",hv)},hv=function(Ot){sr.current&&clearTimeout(sr.current),Xt.current.refreshCustomizeDraggingNode({x:Ot.clientX,y:Ot.clientY})},KD=function(Ot,yt){var At,cr=yt.children,Gr=yt.key;ye(mt(At=[]).call(At,ar(dot(cr)),[Gr])),Xt.current.handleDragStart(Ot,yt,Pr.current),window.addEventListener("dragend",VD),window.addEventListener("dragover",hv),Z&&Z({node:yt,event:Ot})},vx=function(Ot,yt){sr.current&&clearTimeout(sr.current),yt.key!==Xt.current.draggingNode.key&&H({dragNode:Xt.current.draggingNode,dropNode:yt})&&(Ot.persist(),sr.current=window.setTimeout(function(){if(Xt.current.isDragging){var At=ar(x||vt),cr=xn[yt.key];if(cr&&(cr.children||[]).length){var Gr;At=Rs(mt(Gr=[]).call(Gr,ar(At),[yt.key])),x||et(At),j&&j(At,{node:yt,expanded:!0,event:Ot})}}},800))},MR=function(Ot,yt){if(!(!Qr.current||!Xt.current.isDragging)){var At=qV({event:Ot,targetNode:yt,draggingNode:Xt.current.draggingNode,indent:v,startMousePosition:Xt.current.dragStartPosition,allowDrop:X,flattenedNodes:Xo,keyEntities:xn,expandKeys:x||vt}),cr=At.dropAllowed,Gr=At.dropContainerKey,An=At.dragOverNodeKey,Zo=At.dropPosition,Ga=At.dropTargetKey,uu=At.dropLevelOffset;Xt.current.handleDragOverPosition({dropAllowed:cr,dropContainerKey:Gr,dragOverNodeKey:An,dropPosition:Zo,dropLevelOffset:uu,dropTargetKey:Ga,dropNode:yt,event:Ot}),!(!cr||!Xt.current.draggingNode||rn(ke,Ga))&&(vx(Ot,yt),te&&te({node:yt,event:Ot}))}},qD=function(Ot,yt){var At=Xt.current;if(!(!Qr.current||!At.isDragging)){var cr=qV({event:Ot,targetNode:yt,draggingNode:At.draggingNode,indent:v,startMousePosition:At.dragStartPosition,allowDrop:X,flattenedNodes:Xo,keyEntities:xn,expandKeys:x||vt}),Gr=cr.dropAllowed,An=cr.dropContainerKey,Zo=cr.dropTargetKey,Ga=cr.dragOverNodeKey,uu=cr.dropPosition,YD=cr.dropLevelOffset;At.handleDragOverPosition({dropAllowed:Gr,dropContainerKey:An,dragOverNodeKey:Ga,dropPosition:uu,dropLevelOffset:YD,dropTargetKey:Zo,dropNode:yt,event:Ot}),J&&J({node:yt,event:Ot})}},gx=function(Ot,yt){Xt.current.handleDragLeave(Ot),ne&&ne({node:yt,event:Ot})},hx=function(Ot,yt){var At=Xt.current;Qr.current&&(At.clear(),re&&re({node:yt,event:Ot}))},cu=function(Ot){if(!(!Qr.current||!Xt.current.isDragging)){ye([]);var yt=Xt.current,At=yt.dropTargetKey;if(At===null){yt.clear();return}var cr=rw(At,su),Gr=rw(yt.draggingNode.key,su);yt.dropPosition===eo.OVER&&px(null,{dropNode:cr,key:At}),ie&&ie({node:ae(ae(ae({},xn[cr.nodeKey]),cr),{key:cr.nodeKey}),dragNode:ae(ae({},xn[yt.draggingNode.key]),Gr),dropPosition:yt.dropPosition,event:Ot}),yt.clear()}};return E.createElement(lT.Provider,{value:{isCheckRelated:Ut,checkStrictly:wt,selectable:$,draggable:O,checkable:B,disabled:b,checkPos:Q,showIcon:o,icon:i,showSwitcher:s,switcherIcon:d,draggingKeys:ke,indent:v,keyEntities:xn,titleRender:g,treeNodeRender:h,checkboxRender:_,onNodeExpand:px,onNodeCheck:Js,onNodeSelect:Qd,onNodeClick:WD,onLoadData:we,onNodeLoad:ef,onNodeDragStart:KD,onNodeDragEnter:MR,onNodeDragOver:qD,onNodeDragLeave:gx,onNodeDragEnd:hx,onNodeDrop:cu,nodeHeight:he,customizeDraggingNode:!!ge,checkArea:Ce,expandArea:Je,leafCheckArea:Le}},E.createElement(yi,{onResize:function(Ot){oe&&!Wn(fe)&&Rr(Ot.height)}},E.createElement("div",Ee({className:_e(mn,ue,mr?.className,{"is-dragging":!Hn(ke),"is-virtual-list":oe,"content-ellipsis":$e}),style:ae(ae({},mr?.style),Me),id:Pe,ref:Qr},yo(Yt,{aria:!0,data:!0})),E.createElement(xot,Ee({ref:gr,virtual:oe,data:Xo},su,{dragging:!Hn(ke),height:ir,itemHeight:he,onListChangeEnd:function(){er.current=!1},onListChangeStart:function(){er.current=!0}})),ge&&E.createElement("div",{className:_e("customize-dragging-node",{show:!Hn(ke)}),ref:Pr},ge(Xt.current.draggingNode)))))});const tK=Iot;var cT={},Fot={get exports(){return cT},set exports(e){cT=e}},uT={},$ot={get exports(){return uT},set exports(e){uT=e}};(function(e){var t=Qf,r=Q0;function n(o){"@babel/helpers - typeof";return e.exports=n=typeof t=="function"&&typeof r=="symbol"?function(a){return typeof a}:function(a){return a&&typeof t=="function"&&a.constructor===t&&a!==t.prototype?"symbol":typeof a},e.exports.__esModule=!0,e.exports.default=e.exports,n(o)}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports})($ot);var dT={},Eot={get exports(){return dT},set exports(e){dT=e}},Sot=zc.forEach,Cot=HW,Tot=Cot("forEach"),Rot=Tot?[].forEach:function(t){return Sot(this,t,arguments.length>1?arguments[1]:void 0)},Oot=Ne,rK=Rot;Oot({target:"Array",proto:!0,forced:[].forEach!==rK},{forEach:rK});var Aot=_o,kot=Aot("Array","forEach"),Pot=kot,Not=Pot,Mot=ju,zot=Qn,Lot=Nn,Bot=Not,fT=Array.prototype,jot={DOMTokenList:!0,NodeList:!0},Uot=function(e){var t=e.forEach;return e===fT||Lot(fT,e)&&t===fT.forEach||zot(jot,Mot(e))?Bot:t},Hot=Uot,Wot=Hot,Vot=Wot,Kot=Vot;(function(e){e.exports=Kot})(Eot);var pT={},qot={get exports(){return pT},set exports(e){pT=e}},Yot=Ne,Got=Ir,Xot=kc,Zot=Got([].reverse),nK=[1,2];Yot({target:"Array",proto:!0,forced:String(nK)===String(nK.reverse())},{reverse:function(){return Xot(this)&&(this.length=this.length),Zot(this)}});var Qot=_o,Jot=Qot("Array","reverse"),eat=Nn,tat=Jot,vT=Array.prototype,rat=function(e){var t=e.reverse;return e===vT||eat(vT,e)&&t===vT.reverse?tat:t},nat=rat,oat=nat,aat=oat,iat=aat,lat=iat,sat=lat;(function(e){e.exports=sat})(qot),function(e){var t=uT.default,r=P0,n=Qf,o=J0,a=ty,i=dT,l=b1,s=ey,c=my,d=pT,f=Zg;function v(){e.exports=v=function(){return g},e.exports.__esModule=!0,e.exports.default=e.exports;var g={},h=Object.prototype,_=h.hasOwnProperty,b=r||function(G,H,V){G[H]=V.value},x=typeof n=="function"?n:{},w=x.iterator||"@@iterator",D=x.asyncIterator||"@@asyncIterator",I=x.toStringTag||"@@toStringTag";function $(G,H,V){return r(G,H,{value:V,enumerable:!0,configurable:!0,writable:!0}),G[H]}try{$({},"")}catch{$=function(V,Z,te){return V[Z]=te}}function F(G,H,V,Z){var te=H&&H.prototype instanceof k?H:k,J=o(te.prototype),ne=new Y(Z||[]);return b(J,"_invoke",{value:O(G,V,ne)}),J}function C(G,H,V){try{return{type:"normal",arg:G.call(H,V)}}catch(Z){return{type:"throw",arg:Z}}}g.wrap=F;var R={};function k(){}function P(){}function U(){}var B={};$(B,w,function(){return this});var z=a,A=z&&z(z(X([])));A&&A!==h&&_.call(A,w)&&(B=A);var M=U.prototype=k.prototype=o(B);function N(G){var H;i(H=["next","throw","return"]).call(H,function(V){$(G,V,function(Z){return this._invoke(V,Z)})})}function T(G,H){function V(te,J,ne,re){var ie=C(G[te],G,J);if(ie.type!=="throw"){var ce=ie.arg,oe=ce.value;return oe&&t(oe)=="object"&&_.call(oe,"__await")?H.resolve(oe.__await).then(function(fe){V("next",fe,ne,re)},function(fe){V("throw",fe,ne,re)}):H.resolve(oe).then(function(fe){ce.value=fe,ne(ce)},function(fe){return V("throw",fe,ne,re)})}re(ie.arg)}var Z;b(this,"_invoke",{value:function(J,ne){function re(){return new H(function(ie,ce){V(J,ne,ie,ce)})}return Z=Z?Z.then(re,re):re()}})}function O(G,H,V){var Z="suspendedStart";return function(te,J){if(Z==="executing")throw new Error("Generator is already running");if(Z==="completed"){if(te==="throw")throw J;return{value:void 0,done:!0}}for(V.method=te,V.arg=J;;){var ne=V.delegate;if(ne){var re=j(ne,V);if(re){if(re===R)continue;return re}}if(V.method==="next")V.sent=V._sent=V.arg;else if(V.method==="throw"){if(Z==="suspendedStart")throw Z="completed",V.arg;V.dispatchException(V.arg)}else V.method==="return"&&V.abrupt("return",V.arg);Z="executing";var ie=C(G,H,V);if(ie.type==="normal"){if(Z=V.done?"completed":"suspendedYield",ie.arg===R)continue;return{value:ie.arg,done:V.done}}ie.type==="throw"&&(Z="completed",V.method="throw",V.arg=ie.arg)}}}function j(G,H){var V=H.method,Z=G.iterator[V];if(Z===void 0)return H.delegate=null,V==="throw"&&G.iterator.return&&(H.method="return",H.arg=void 0,j(G,H),H.method==="throw")||V!=="return"&&(H.method="throw",H.arg=new TypeError("The iterator does not provide a '"+V+"' method")),R;var te=C(Z,G.iterator,H.arg);if(te.type==="throw")return H.method="throw",H.arg=te.arg,H.delegate=null,R;var J=te.arg;return J?J.done?(H[G.resultName]=J.value,H.next=G.nextLoc,H.method!=="return"&&(H.method="next",H.arg=void 0),H.delegate=null,R):J:(H.method="throw",H.arg=new TypeError("iterator result is not an object"),H.delegate=null,R)}function K(G){var H,V={tryLoc:G[0]};1 in G&&(V.catchLoc=G[1]),2 in G&&(V.finallyLoc=G[2],V.afterLoc=G[3]),l(H=this.tryEntries).call(H,V)}function Q(G){var H=G.completion||{};H.type="normal",delete H.arg,G.completion=H}function Y(G){this.tryEntries=[{tryLoc:"root"}],i(G).call(G,K,this),this.reset(!0)}function X(G){if(G||G===""){var H=G[w];if(H)return H.call(G);if(typeof G.next=="function")return G;if(!isNaN(G.length)){var V=-1,Z=function te(){for(;++V=0;--te){var J=this.tryEntries[te],ne=J.completion;if(J.tryLoc==="root")return Z("end");if(J.tryLoc<=this.prev){var re=_.call(J,"catchLoc"),ie=_.call(J,"finallyLoc");if(re&&ie){if(this.prev=0;--Z){var te=this.tryEntries[Z];if(te.tryLoc<=this.prev&&_.call(te,"finallyLoc")&&this.prev=0;--V){var Z=this.tryEntries[V];if(Z.finallyLoc===H)return this.complete(Z.completion,Z.afterLoc),Q(Z),R}},catch:function(H){for(var V=this.tryEntries.length-1;V>=0;--V){var Z=this.tryEntries[V];if(Z.tryLoc===H){var te=Z.completion;if(te.type==="throw"){var J=te.arg;Q(Z)}return J}}throw new Error("illegal catch attempt")},delegateYield:function(H,V,Z){return this.delegate={iterator:X(H),resultName:V,nextLoc:Z},this.method==="next"&&(this.arg=void 0),R}},g}e.exports=v,e.exports.__esModule=!0,e.exports.default=e.exports}(Fot);var ow=cT(),oK=ow;try{regeneratorRuntime=ow}catch{typeof globalThis=="object"?globalThis.regeneratorRuntime=ow:Function("r","regeneratorRuntime = r")(ow)}function cat(e){var t=uat();return function(){var n=Ur(e),o;if(t){var a=Ur(this).constructor;o=Lt(n,arguments,a)}else o=n.apply(this,arguments);return ba(this,o)}}function uat(){if(typeof Reflect>"u"||!Lt||Lt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Lt(Boolean,[],function(){})),!0}catch{return!1}}var aw=function(e){xa(r,e);var t=cat(r);function r(n){var o;return Br(this,r),o=t.call(this,n),o.handleOk=function(){var a=o.props.onOk;o.handleClose(),a&&a()},o.handleCloseBtnClick=function(){var a=o.props.onCloseBtnClick;o.handleClose(),a&&a()},o.handleClose=function(){o.stopTimer();var a=o.props.onClose;a&&a()},o.state={visible:o.props.visible},o}return jr(r,[{key:"componentDidMount",value:function(){var o=this.props,a=o.visible,i=o.onAfterClose,l=i===void 0?Gc:i;if(!a)return l();this.startTimer()}},{key:"stopTimer",value:function(){clearTimeout(this.timeout)}},{key:"startTimer",value:function(){var o=this,a=this.props.duration;a>0&&(this.timeout=window.setTimeout(function(){o.handleClose()},a))}},{key:"render",value:function(){var o,a=this.props,i=a.className,l=a.icon,s=a.style,c=a.title,d=a.content,f=a.text4Ok,v=a.onAfterClose,g=a.visible,h=a.type,_=this.context.notification,b=(o=this.props.prefixCls)!==null&&o!==void 0?o:this.context.getPrefixCls("msg-notification",this.props.prefixCls),x=_e(b,i,_?.className,{"has-icon":l||h!=="normal","only-title":!d&&!f}),w=ae(ae({},_?.style),s),D;switch(h){case"success":D=m.createElement($1,{className:_e("notification-icon","".concat(h))});break;case"error":D=m.createElement(id,{className:_e("notification-icon","".concat(h))});break;case"warning":D=m.createElement(Zc,{className:_e("notification-icon","".concat(h))});break;case"info":D=m.createElement(Zc,{className:_e("notification-icon","".concat(h))});break;default:D=null;break}return m.createElement(Ps,{classNames:b,appear:!0,exit:!0,in:g,onExited:v,timeout:{enter:Vo.SLOW,exit:Vo.NORMAL}},m.createElement("div",{className:x,style:w},m.createElement("div",{className:"".concat(b,"-wrapper")},m.createElement(Sh,{className:"close-btn",onClick:this.handleCloseBtnClick}),m.createElement("div",{className:"".concat(b,"-main")},l?m.cloneElement(l,{className:_e(Nt(l,"props.className"),"notification-icon")}):D,m.createElement("div",{className:"".concat(b,"-title")},c),d&&m.createElement("div",{className:"".concat(b,"-content")},d),f&&m.createElement("div",{className:"".concat(b,"-footer")},m.createElement(Ar,{className:"footer-btn",type:"primary",onClick:this.handleOk},f))))))}}]),r}(m.Component);aw.propTypes={className:Or.string,classNames:Or.object,style:Or.object,styles:Or.object,placement:Or.oneOf(["top-right","top-left","bottom-left","bottom-right"]),type:Or.oneOf(["success","error","warning","info","normal"]),content:Or.node,icon:Or.node,duration:Or.number,visible:Or.bool,title:Or.node,text4Ok:Or.string,onOk:Or.func,onClose:Or.func,onCloseBtnClick:Or.func},aw.contextType=Ko,aw.defaultProps={type:"normal",placement:"top-right",duration:4500};const dat=aw;function fat(e){var t=pat();return function(){var n=Ur(e),o;if(t){var a=Ur(this).constructor;o=Lt(n,arguments,a)}else o=n.apply(this,arguments);return ba(this,o)}}function pat(){if(typeof Reflect>"u"||!Lt||Lt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Lt(Boolean,[],function(){})),!0}catch{return!1}}var iw=function(e){xa(r,e);var t=fat(r);function r(n){var o;return Br(this,r),o=t.call(this,n),o.handleClose=function(){o.stopTimer();var a=o.props.onClose;a&&a()},o.state={visible:o.props.visible},o}return jr(r,[{key:"componentDidMount",value:function(){var o=this.props,a=o.visible,i=o.onAfterClose,l=i===void 0?Gc:i;if(!a)return l();this.startTimer()}},{key:"getDuration",value:function(){switch(this.props.type){case"success":return 2e3;case"loading":return 0;case"error":case"warning":case"info":default:return 4e3}}},{key:"startTimer",value:function(){var o=this,a=this.getDuration();a>0&&(this.timeout=window.setTimeout(function(){o.handleClose()},a))}},{key:"stopTimer",value:function(){clearTimeout(this.timeout)}},{key:"render",value:function(){var o,a=this.props,i=a.className,l=a.style,s=a.type,c=a.colorful,d=a.message,f=a.onAfterClose,v=a.visible,g=function(){if(!s)return null;var w={success:$1,warning:Zc,error:id,info:Zc,loading:function(){return m.createElement("i",null)}},D=w[s];return D&&m.createElement(D,null)},h=this.context.toast,_=(o=this.props.prefixCls)!==null&&o!==void 0?o:this.context.getPrefixCls("msg-toast",this.props.prefixCls),b=ae(ae({},h?.style),l);return m.createElement(Ps,{classNames:_,appear:!0,exit:!0,in:v,onExited:f,timeout:{enter:Vo.NORMAL,exit:Vo.FAST}},m.createElement("div",{className:_e(_,i,h?.className),style:b},m.createElement("div",{className:_e("".concat(_,"-content"),s,{colorful:c})},m.createElement("div",{className:"".concat(_,"-icon")},g()),m.createElement("div",{className:"".concat(_,"-text")},d))))}}]),r}(m.Component);iw.propTypes={className:Or.string,classNames:Or.object,style:Or.object,styles:Or.object,type:Or.oneOf(["error","warning","success","info","loading"]),visible:Or.bool,message:Or.string,onClose:Or.func},iw.contextType=Ko,iw.defaultProps={type:"success",colorful:!0};const vat=iw;function gat(e){var t=hat();return function(){var n=Ur(e),o;if(t){var a=Ur(this).constructor;o=Lt(n,arguments,a)}else o=n.apply(this,arguments);return ba(this,o)}}function hat(){if(typeof Reflect>"u"||!Lt||Lt.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Lt(Boolean,[],function(){})),!0}catch{return!1}}var lw=function(e){xa(r,e);var t=gat(r);function r(n){var o;return Br(this,r),o=t.call(this,n),o.state={messages:[]},o}return jr(r,[{key:"componentDidMount",value:function(){var o=this.props.onReady;o&&o(this)}},{key:"getUuid",value:function(){var o=Date.now();return"message_"+o}},{key:"getVisibleCount",value:function(o){return Wo(Ml(this.state.messages,function(a){return a.visible&&a.messageType===o}))}},{key:"add",value:function(o){var a=this;return new xo(function(i){o.key||hi(o,"key",a.getUuid());var l=o.key;a.setState(function(s){var c=s.messages;return Ju(c,function(d){return d.key!==l})?{messages:Es(c,ae(ae({},o),{visible:!0,onClose:function(){a.hide(l)},onAfterClose:function(){a.remove(l),o.onClose&&o.onClose()}}))}:{messages:c}},function(){return i()})})}},{key:"hide",value:function(o){var a=this,i=this.props.onClose;this.setState(function(l){var s=l.messages;return{messages:Cn(s,function(c){return c.key===o?ae(ae({},c),{visible:!1}):c})}},function(){var l=e6(a.state.messages,function(s){return o===s.key});l&&Fr(i)&&i(l.messageType,l.key)})}},{key:"remove",value:function(o){this.setState(function(a){var i=a.messages;return{messages:Ml(i,function(l){return l.key!==o})}})}},{key:"render",value:function(){var o,a,i=this.props,l=i.messageType,s=i.placement,c=this.state.messages,d=this.context.getPrefixCls(""),f=ol(new Ul(Cn(c,function(g){var h;return(h=g.classNames)===null||h===void 0?void 0:h.container}))),v=g6(c,function(g,h){var _;return ae(ae({},g),(_=h.styles)===null||_===void 0?void 0:_.container)},{});return m.createElement("div",{className:_e.apply(void 0,mt(o=[mt(a="".concat(d,"-msg-")).call(a,l,"-container"),s]).call(o,ar(f))),style:v},Cn(c,function(g){switch(l){case"toast":return m.createElement(vat,g);case"notification":return m.createElement(dat,g,g.content)}}))}}]),r}(m.Component);lw.propTypes={placement:Or.string,messageType:Or.string,onReady:Or.func},lw.defaultProps={placement:"top-right"},lw.contextType=Ko;const _at=lw;var mat=function(){function e(){Br(this,e),this.items=[]}return jr(e,[{key:"enqueue",value:function(r){this.items.push(r)}},{key:"dequeue",value:function(){if(!this.isEmpty())return this.items.shift()}},{key:"front",value:function(){return lOe(this.items)}},{key:"isEmpty",value:function(){return Hn(this.items)}},{key:"size",value:function(){return this.items.length}},{key:"clear",value:function(){this.items=[]}},{key:"remove",value:function(r){qj(this.items,r)}}]),e}();const xat=mat;var bat=globalThis&&globalThis.__awaiter||function(e,t,r,n){function o(a){return a instanceof r?a:new r(function(i){i(a)})}return new(r||(r=xo))(function(a,i){function l(d){try{c(n.next(d))}catch(f){i(f)}}function s(d){try{c(n.throw(d))}catch(f){i(f)}}function c(d){d.done?a(d.value):o(d.value).then(l,s)}c((n=n.apply(e,t||[])).next())})},aK={maxCount:{toast:null,notification:null}},yat=function(){function e(){Br(this,e),this.messageInstance={},this.messageQueue={},this.invokeLock={}}return jr(e,[{key:"add",value:function(r){var n=r.messageType;this.getQueueByMessageType(n).enqueue(r),this.invokeMessageInQueue(n)}},{key:"remove",value:function(r){yr(this.messageInstance,function(n){n.remove(r)}),yr(this.messageQueue,function(n){n.remove(function(o){return o.key===r})})}},{key:"typeOpen",value:function(r,n,o,a){var i={messageType:"toast",type:r};n&&Mn(n)==="object"&&"message"in n?i=ae(ae({},n),i):i=ae({message:n,duration:o,onClose:a},i),this.add(i)}},{key:"success",value:function(r,n,o){this.typeOpen("success",r,n,o)}},{key:"error",value:function(r,n,o){this.typeOpen("error",r,n,o)}},{key:"info",value:function(r,n,o){this.typeOpen("info",r,n,o)}},{key:"warning",value:function(r,n,o){this.typeOpen("warning",r,n,o)}},{key:"loading",value:function(r,n,o){this.typeOpen("loading",r,n,o)}},{key:"config",value:function(r){a6(aK,r)}},{key:"invokeMessageInQueue",value:function(r){return bat(this,void 0,void 0,oK.mark(function n(){var o,a,i,l,s;return oK.wrap(function(d){for(;;)switch(d.prev=d.next){case 0:if(!this.invokeLock[r]){d.next=2;break}return d.abrupt("return");case 2:this.invokeLock[r]=!0,o=Nt(aK,"maxCount.".concat(r)),a=this.getQueueByMessageType(r);case 5:if(a.isEmpty()){d.next=18;break}return d.next=8,this.getInstance(a.front());case 8:if(i=d.sent,l=this.getMessageCount(r),!(Wn(o)&&l>=o)){d.next=12;break}return d.abrupt("break",18);case 12:if(s=a.dequeue(),!s){d.next=16;break}return d.next=16,i.add(s);case 16:d.next=5;break;case 18:this.invokeLock[r]=!1;case 19:case"end":return d.stop()}},n,this)}))}},{key:"getMessageInstanceKey",value:function(r){var n=r.placement||"top-right";return r.messageType+n}},{key:"getInstance",value:function(r){var n=this.getMessageInstanceKey(r);return this.messageInstance[n]?xo.resolve(this.messageInstance[n]):this.createInstance(r)}},{key:"createInstance",value:function(r){var n=this,o=document.createElement("div"),a=this.getMessageInstanceKey(r);return document.body&&document.body.appendChild(o),new xo(function(i){Kr.render(m.createElement(wh,p3(),m.createElement(_at,Ee({},r,{onReady:function(s){n.messageInstance[a]={add:function(d){s.add(d)},remove:function(d){s.hide(d)},component:s,destroy:function(){Kr.unmountComponentAtNode(o),document.body.removeChild(o)}},i(n.messageInstance[a])},onClose:function(s){n.invokeMessageInQueue(s)}}))),o)})}},{key:"getQueueByMessageType",value:function(r){return this.messageQueue[r]||(this.messageQueue[r]=new xat),this.messageQueue[r]}},{key:"getMessageCount",value:function(r){var n=0;return yr(this.messageInstance,function(o){n+=o.component.getVisibleCount(r)}),n}}]),e}();const wat=new yat;var Dat=function(t){var r=t.className,n=t.direction,o=t.index,a=t.children,i=t.split,l=t.wrap,s=t.horizontalSize,c=t.verticalSize,d=t.latestIndex,f=t.supportFlexGap,v=t.prefixCls,g={};return f||(n==="vertical"?o0&&Rat(f)?(v=Oat(f),s=iK(e,t,f,v,s,a-1)-1):(Aat(s+1),e[s]=f),s++),c++;return s},Pat=iK,Nat=Ne,Mat=Pat,zat=Uo,Lat=ui,Bat=Uu,jat=L0;Nat({target:"Array",proto:!0},{flat:function(){var t=arguments.length?arguments[0]:void 0,r=zat(this),n=Lat(r),o=jat(r,0);return o.length=Mat(o,r,r,n,0,t===void 0?1:Bat(t)),o}});var Uat=_o,Hat=Uat("Array","flat"),Wat=Nn,Vat=Hat,mT=Array.prototype,Kat=function(e){var t=e.flat;return e===mT||Wat(mT,e)&&t===mT.flat?Vat:t},qat=Kat,Yat=qat,Gat=Yat,Xat=Gat,Zat=Xat,Qat=Zat;(function(e){e.exports=Qat})(Tat),function(e){e.exports=_T}(Cat);const Vl=Vt(hT);var Jat=function(t){var r=t.descriptors;return E.createElement("colgroup",null,$t(r).call(r,function(n){return n.type==="blank"?E.createElement("col",{key:n.blankSide,style:{width:n.width}}):E.createElement("col",{key:n.col.dataIndex,style:{width:n.col.width}})}))};const eit=Jat;var tit=function(){function e(){Br(this,e),this.rects=[]}return jr(e,[{key:"testSkip",value:function(r,n){return this.rects.some(function(o){var a=o.left,i=o.right,l=o.top,s=o.bottom;return a<=n&&nr})}},{key:"add",value:function(r,n,o,a){this.rects.push({left:n,right:n+o,top:r,bottom:r+a})}}]),e}(),rit=function(t){var r=t.getRowProps,n=t.renderInfo,o=t.dataSource,a=t.rowHeightManager,i=t.fixedLeftClassName,l=i===void 0?"":i;if(!n)return null;var s=n.verticalRenderRange,c=s.topIndex,d=s.bottomIndex,f={first:0,offset:c,limit:d,last:o.length-1},v=kt(o).call(o,c,d),g=Vl(n),h=n.horizontalRenderRange,_=new tit,b=g.full.length,x=g.left.length,w=g.right.length,D=function(F,C){var R,k=f.offset+C;_.stripUpwards(k);var P=r?r(F,k):{},U=_e("table-row",{first:k===f.first,last:k===f.last,even:k%2===0,odd:k%2===1},P.className),B=ae(ae({},P),{onClick:function(A){aLe()||P.onClick&&P.onClick(A)},className:U,"data-rowindex":k,children:$t(R=n.visible).call(R,function(z){if(z.type==="blank"){var A=a.cache[k];return E.createElement("td",{className:"table-cell",key:z.blankSide,style:{height:A}})}return I(F,k,z.col,z.colIndex)})});return E.createElement("tr",Ee({key:k},B))},I=function(F,C,R,k){if(_.testSkip(C,k))return null;var P=F[R.dataIndex||""],U=R.getCellProps?R.getCellProps(P,F,C):{},B=P;if(R.render&&(B=R.render(P,F,C)),U.rowSpan===0||U.colSpan===0)return null;var z=1,A=1;if(R.getSpanRect){var M=R.getSpanRect(P,F,C);z=M===null?1:M.right-k,A=M===null?1:M.bottom-C}else Wn(U.colSpan)&&(z=U.colSpan),Wn(U.rowSpan)&&(A=U.rowSpan);A=Math.min(A,f.limit-C),z=Math.min(z,x+h.rightIndex-k);var N=z>1||A>1;N&&_.add(C,k,z,A);var T={},O=k=b-w;l||(O?(T.position="sticky",T.left=n.stickyLeftMap.get(k)):K&&(T.position="sticky",T.right=n.stickyRightMap.get(k)));var Q=ae(ae(ae(ae({},U),{className:_e("table-cell",U.className,je({first:k===0,last:k+z===b,"fixed-left":O,"last-fixed-left":j,"fixed-right":K},l,O))}),N?{colSpan:z,rowSpan:A}:null),{style:ae(ae({textAlign:R.align},U.style),T),children:E.createElement("div",{className:"cell-content"},B)});return E.createElement("td",Ee({key:k},Q,{"data-index":R.dataIndex}))};return E.createElement("table",null,E.createElement(eit,{descriptors:n.visible}),E.createElement("tbody",null,$t(v).call(v,D)))},lK=20,nit=function(t){var r=t.leftFixedTotalWidth,n=t.rightFixedTotalWidth;return E.createElement(E.Fragment,null,!!r&&E.createElement("div",{className:"fixed-shadow-mask",style:{left:0,width:r+lK}},E.createElement("div",{className:"fixed-shadow left"})),!!n&&E.createElement("div",{className:"fixed-shadow-mask",style:{right:0,width:n+lK}},E.createElement("div",{className:"fixed-shadow right"})))};const oit=nit;function sK(e,t){var r=typeof qu<"u"&&Yu(e)||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=ait(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return a=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!a&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function ait(e,t){var r;if(e){if(typeof e=="string")return cK(e,t);var n=kt(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return ol(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return cK(e,t)}}function cK(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r1&&arguments[1]!==void 0?arguments[1]:"pre",n=function a(i){if(i){var l=sK(i),s;try{for(l.s();!(s=l.n()).done;){var c=s.value;Kl(c)?o.push(c):r==="pre"?(o.push(c),a(c.children)):r==="post"?(a(c.children),o.push(c)):a(c.children)}}catch(d){l.e(d)}finally{l.f()}}},o=[];return n(t),o},lit=function(t){var r=function o(a,i){var l=sK(a),s;try{for(l.s();!(s=l.n()).done;){var c=s.value;Kl(c)?n=Math.max(n,i):o(c.children||[],i+1)}}catch(d){l.e(d)}finally{l.f()}},n=-1;return r(t,0),n},wd=function(t,r,n){var o;return typeof t=="string"?o=r[t]:typeof t=="function"&&(o=t(r)),o||(o=String(n)),o},sit=function(t,r){return function(){for(var n=arguments.length,o=new Array(n),a=0;a=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return a=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!a&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function dit(e,t){var r;if(e){if(typeof e=="string")return uK(e,t);var n=kt(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return ol(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return uK(e,t)}}function uK(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return a=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!a&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function vit(e,t){var r;if(e){if(typeof e=="string")return dK(e,t);var n=kt(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return ol(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return dK(e,t)}}function dK(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&c.push({colIndex:g,col:v,children:h.filtered})}}}catch(_){d.e(_)}finally{d.f()}return{filtered:c,leafCount:s}};return o(t,n).filtered},sw=function(t,r){for(var n=function l(s,c){var d=0,f=yT(s),v;try{for(f.s();!(v=f.n()).done;){var g=v.value;if(Kl(g)){d+=1;var h={type:"normal",width:g.col.width,col:g.col,colIndex:g.colIndex,colSpan:1,isLeaf:!0};o[c].push(h),i.push(h)}else{var _=l(g.children||[],c+1);d+=_.leafCount,_.leafCount>0&&o[c].push({type:"normal",width:g.col.width,col:g.col,colIndex:g.colIndex,colSpan:_.leafCount,isLeaf:!1})}}}catch(b){f.e(b)}finally{f.f()}return{leafCount:d}},o=[],a=0;a0&&l.push({col:f,colIndex:v,children:g.result})}}}catch(h){c.e(h)}finally{c.f()}return{result:l,leafCount:s}};return n(t,r).result},hit=function(t,r){var n=Vl(t),o=t.nested,a=t.horizontalRenderRange,i=t.useVirtual;if(i.header){var l,s,c=sw(wT(o.left,0),r),d=git(o.center,a,n.left.length),f=sw(d,r),v=sw(wT(o.right,n.left.length+n.center.length),r);return{flat:mt(l=[]).call(l,ar(Vl(c)),[{type:"blank",width:a.leftBlank,blankSide:"left"}],ar(Vl(f)),[{type:"blank",width:a.rightBlank,blankSide:"right"}],ar(Vl(v))),leveled:$t(s=Kj(r)).call(s,function(g){var h;return mt(h=[]).call(h,ar(c.leveled[g]),[{type:"blank",width:a.leftBlank,blankSide:"left"}],ar(f.leveled[g]),[{type:"blank",width:a.rightBlank,blankSide:"right"}],ar(v.leveled[g]))})}}return sw(wT(o.full,0),r)},_it=function(t){var r,n,o=t.renderInfo,a=t.onColumnResizeStart,i=t.fixedLeftClassName,l=i===void 0?"fixedLeftClassName":i,s=t.resizable;if(!o)return null;var c=o.nested,d=Vl(o),f=o.stickyLeftMap,v=o.stickyRightMap,g=lit(c.full)+1,h=hit(o,g),_=d.full.length,b=d.left.length,x=d.right.length,w=$t(r=h.leveled).call(r,function(D,I){var $=$t(D).call(D,function(F){if(F.type==="normal"){var C=F.colIndex,R=F.colSpan,k=F.isLeaf,P=F.col,U=P.headerCellProps||{};if(U.rowSpan===0||U.colSpan===0)return null;var B={},z=C=_-x;l||(z?(B.position="sticky",B.left=f.get(C)):A&&(B.position="sticky",B.right=v.get(C+R-1)));var M="resizable"in P?P.resizable:s;return E.createElement("th",Ee({key:C},U,{className:_e("table-header-cell",U.className,je({first:C===0,last:C+R===_,"fixed-left":z,"fixed-right":A},l,z)),colSpan:U.colSpan||R,rowSpan:U.rowSpan||(k?g-I:void 0),style:ae(ae({},U.style),B)}),E.createElement("span",{className:"header-cell-wrapper"},m.isValidElement(P.title)?P.title:E.createElement("span",{className:"header-cell-content"},P.title)),k&&M&&E.createElement("span",{className:"resize-spanner",onMouseDown:function(T){return a(T,P.dataIndex,P.width)}}))}else return F.width>0?E.createElement("th",{key:F.blankSide}," "):null});return E.createElement("tr",{key:I,className:_e("table-header-row",{first:I===0,last:I===g-1})},$)});return E.createElement("table",null,E.createElement("colgroup",null,$t(n=Vl(h)).call(n,function(D){return D.type==="blank"?D.width>0?E.createElement("col",{key:D.blankSide,style:{width:D.width}}):null:E.createElement("col",{key:D.colIndex,style:{width:D.width}})})),E.createElement("thead",null,w))};const mit=_it;var fK=100,xit=3e3,bit=100,yit=100,wit=300,pK=Co.cssSupport("position","sticky"),Dit=function(t){var r;return mt(r="".concat(t,"-fixed-left-")).call(r,Math.floor(1e5+Math.random()*9e5))},Iit=function(t,r){var n=m.useRef(Dit(t)),o=m.useRef();m.useEffect(function(){return function(){var i=o.current;if(i){var l=i.parentElement;l&&l.removeChild(i)}}},[]);var a=function(l){var s,c;if(!pK){var d=n.current,f=mt(s=mt(c=".".concat(d," { transform: translate3d(")).call(c,l,"px, 0, ")).call(s,r||0,"px)}"),v=o.current;if(v)v.textContent!==f&&(v.innerHTML=f);else{var g=document.createElement("style");o.current=g,g.id=d,g.innerHTML=f,document.getElementsByTagName("HEAD").item(0).appendChild(g)}}};return[pK?"":n.current,a]};const vK=Iit;var gK=function(){function e(){Br(this,e),this._snapshots={},this._rowPropsGetters=[]}return jr(e,[{key:"appendRowPropsGetter",value:function(r){return this._rowPropsGetters.push(r),this}},{key:"getDataSource",value:function(r){return dt(r)?this._dataSource:this._snapshots[r].dataSource}},{key:"getColumns",value:function(r){return dt(r)?this._columns:this._snapshots[r].columns}},{key:"ensurePrimaryKey",value:function(r){if(this.primaryKey===null)throw new Error(r?"使用 ".concat(r," 之前必须先设置 primaryKey"):"必须先设置 primaryKey");return this.primaryKey}},{key:"setPrimaryKey",value:function(r){return this.primaryKey=r,this}},{key:"input",value:function(r){if(!dt(this._dataSource)||!dt(this._columns))throw new Error("input 不能调用两次");return this._dataSource=r.dataSource,this._columns=r.columns,this.snapshot("input"),this}},{key:"dataSource",value:function(r){return this._dataSource=r,this}},{key:"columns",value:function(r){return this._columns=r,this}},{key:"snapshot",value:function(r){var n;return this._snapshots[r]={dataSource:this._dataSource,columns:this._columns,rowPropsGetters:kt(n=this._rowPropsGetters).call(n)},this}},{key:"use",value:function(r){return r(this)}},{key:"mapDataSource",value:function(r){return this.dataSource(r(this.getDataSource()))}},{key:"mapColumns",value:function(r){return this.columns(r(this.getColumns()))}},{key:"getProps",value:function(r){var n=this;if(!r||!this._snapshots[r]){var o={dataSource:this._dataSource,columns:this._columns};return this._rowPropsGetters.length>0&&(o.getRowProps=function(d,f,v){return n._rowPropsGetters.reduce(function(g,h){return h?bT(g,h(d,f,v)):g},{})}),o}else{var a=this._snapshots[r],i=a.dataSource,l=a.columns,s=a.rowPropsGetters,c={dataSource:i,columns:l};return s.length>0&&(c.getRowProps=function(d,f,v){return s.reduce(function(g,h){return h?bT(g,h(d,f,v)):g},{})}),c}}}]),e}(),Fit=function(){return new gK},$it=function(t,r){return t===r},Eit=function(){return function(t){var r=t.getDataSource();return t.mapColumns(pit(function(n,o){var a=o.startIndex,i=o.endIndex;if(!n.autoRowSpan||!Kl(n))return n;for(var l=Fr(n.autoRowSpan)?n.autoRowSpan:$it,s=[],c=0,d=null,f=null,v=0;v tr[data-row-id="'.concat(v,'"]')):g=document.querySelectorAll('tbody > tr[data-row-id="'.concat(v,'"]')),yr(g,function(h){c?h.classList.add("hover"):h.classList.remove("hover")})};return o.appendRowPropsGetter(function(i,l,s){var c,d=s?"".concat(r(i,l)):mt(c="".concat(r(i,l),"-")).call(c,n);return{className:d===DT?"hover":"","data-row-id":d,onMouseEnter:function(){a(i,l,!0,s)},onMouseLeave:function(){a(i,l,!1,s)},onMouseOver:function(){a(i,l,!0,s)}}}),o}},IT,Cit=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return function(r){var n,o=r.ensurePrimaryKey("multiSelect"),a=t.isDisabled||function(){return!1},i=t.clickArea||"check",l=t.value||[],s=function(F,C,R){t.onChange&&t.onChange(F,C,R)},c=r.getDataSource(),d=i==="check",f=i==="cell",v=new Ul,g=[];c.forEach(function($,F){var C=wd(o,$,F);v.add(C),a($,F)||g.push(C)});var h=new Ul(l),_=g.length>0&&g.every(function($){return h.has($)}),b=function(F,C){var R=Nt(C,"nativeEvent.shiftKey")||Nt(C,"shiftKey"),k=F.value,P=F.isCheck,U=[k];if(R&&!dt(IT)){var B=n6(g,Nt(IT,"value")),z=n6(g,k);U=_6(g,Math.min(B,z),Math.max(B,z)+1)}return IT={value:k,isCheck:P},{checkValues:U,isCheck:P}},x=function(F,C,R){var k=b({value:C,isCheck:!F},R),P=k.checkValues,U=k.isCheck;U?s(y6(l,P),C,"check"):s(Ss(l,P),C,"uncheck")},w=function(){_?s(Ss(g,l),"","uncheck-all"):s(y6(l,g),"","check-all")},D=ae(ae({title:E.createElement(hd,{checked:_,onChange:d?w:void 0}),headerCellProps:{style:f?{cursor:"pointer"}:void 0,onClick:f?w:void 0},width:35,dataIndex:o,align:"center"},t.column),{getCellProps:function(F,C,R){var k=wd(o,C,R);if(v.has(k)&&f){var P=h.has(k),U=a(C,R);return{style:{cursor:U?"not-allowed":"pointer"},onClick:U?void 0:function(B){B.stopPropagation(),x(P,k,B)}}}return{}},render:function(F,C,R){var k=wd(o,C,R),P=h.has(k),U=a(C,R);return t.disableTooltip&&U?E.createElement(Bh,t.disableTooltip,E.createElement("span",null,E.createElement(hd,{checked:P,disabled:U}))):E.createElement("span",{onClick:d?function(B){return B.stopPropagation()}:void 0},E.createElement(hd,{checked:P,disabled:U,onChange:d?function(B,z){z&&z.stopPropagation(),x(P,k,z)}:void 0}))}}),I=kt(n=r.getColumns()).call(n);return I.unshift(D),r.columns(I),r.appendRowPropsGetter(function($,F){var C=wd(o,$,F);if(!v.has(C))return{};var R={},k="",P=h.has(C),U={className:k,style:R};if(i==="row"){var B=a($,F);B||(R.cursor="pointer",U.onClick=function(z){z.stopPropagation(),x(P,C,z)})}return U}),r}};function Tit(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return function(r){var n,o=e.clickArea||"radio",a=e.isDisabled||function(){return!1},i=r.ensurePrimaryKey("singleSelect"),l=e.value,s=function(v){v===l&&!e.cancel||e.onChange&&e.onChange(v)},c=ae(ae({width:35,dataIndex:i},e.column),{getCellProps:function(v,g,h){if(o==="cell"){var _=wd(i,g,h),b=a(g,h);return{style:{cursor:b?"not-allowed":"pointer"},onClick:b?void 0:function(x){x.stopPropagation(),s(_)}}}return{}},render:function(v,g,h){var _=wd(i,g,h);return E.createElement(fnt,{checked:l===_,disabled:a(g,h),onChange:o==="radio"?function(b,x){x&&x.stopPropagation(),s(_)}:void 0})}}),d=kt(n=r.getColumns()).call(n);return d.unshift(c),r.columns(d),r.appendRowPropsGetter(function(f,v){var g=wd(i,f,v),h={},_="",b;return o==="row"&&!a(f,v)&&(h.cursor="pointer",b=function(w){w.stopPropagation(),s(g)}),{className:_,style:h,onClick:b}}),r}}var Rit=function(t){var r=t.children,n=t.sortOrder,o=function(){if(n){var i={ascend:HWe,descend:EU},l=i[n];return l&&E.createElement(l,null)}return E.createElement(QWe,null)};return E.createElement(E.Fragment,null,r,E.createElement("div",{className:"sort-icon"},o()))},FT=["ascend","descend",null],Oit=function(t){var r=FT.indexOf(t);return FT[r===FT.length-1?0:r+1]},Ait=function(t){var r=t.onSortChange,n=t.SortHeaderCell,o=n===void 0?Rit:n;return function(a){var i=a.getColumns(),l=function(d){var f=d.sortOrder||null,v=Oit(f);r({field:d.dataIndex,order:v,column:d})},s=function(d){var f=function v(g){var h=ae({},g),_=g.sortable;if(_){var b=g.sortOrder;h.title=E.createElement(o,{onToggle:function(D){D.stopPropagation(),l(g)},sortOrder:b,column:g},m.isValidElement(g.title)?g.title:E.createElement("span",{className:"header-cell-content"},g.title)),h.headerCellProps=bT({onClick:function(D){D.stopPropagation(),l(g)},style:{cursor:"pointer",paddingRight:20}},h.headerCellProps||{})}if(!Kl(g)){var x;h.children=$t(x=g.children||[]).call(x,v)}return h};return $t(d).call(d,f)};return a.columns(s(i)),a}};const kit=Object.freeze(Object.defineProperty({__proto__:null,TablePipeline:gK,createTablePipeline:Fit,features:Object.freeze(Object.defineProperty({__proto__:null,autoRowSpan:Eit,mergeRowHover:Sit,multiSelect:Cit,singleSelect:Tit,sort:Ait},Symbol.toStringTag,{value:"Module"}))},Symbol.toStringTag,{value:"Module"}));var Pit=jr(function e(t){var r=this;Br(this,e),this.setBodyCursor=function(n){var o=document.querySelector("body");o&&(o.style.cursor=n)},this.startResize=function(){var n=r.props,o=n.startClientX,a=n.content,i=n.resizeLine;if(o){document.addEventListener("mousemove",r.onColumnResizing),document.addEventListener("mouseup",r.onColumnResizeEnd),r.setBodyCursor("ew-resize");var l=a.getBoundingClientRect(),s=l.x;i.style.height="".concat(a.scrollHeight,"px"),i.style.left="".concat(o-s,"px"),i.className="column-resize-line active",a.className=oT(a.className,"resizing")}},this.getWidth=function(n){var o=r.props,a=o.startClientX,i=o.columnWidth,l=o.minWidth;return r.width=n.clientX-a+i,r.width=Math.max(l,r.width),r.width},this.onColumnResizing=function(n){n.stopPropagation();var o=r.props,a=o.startClientX,i=o.columnWidth,l=o.minWidth,s=o.content,c=s.getBoundingClientRect(),d=c.x,f=n.clientX-d;i+n.clientX-a=r)break;o+=a,n+=1}return this.overscanUpwards(n,o)}},{key:"getEnd",value:function(r,n){for(var o=n.topIndex,a=n.topBlank;o .table-row")}},{key:"getTableBodyHtmlTable",value:function(){return this.table.querySelector(".table-body table")}},{key:"getLeftFixedShadow",value:function(){var r=".fixed-shadow-mask .left";return this.table.querySelector(r)}},{key:"getRightFixedShadow",value:function(){var r=".fixed-shadow-mask .right";return this.table.querySelector(r)}}]),e}();function hK(e,t){var r=typeof qu<"u"&&Yu(e)||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=zit(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(c){throw c},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,i=!1,l;return{s:function(){r=r.call(e)},n:function(){var c=r.next();return a=c.done,c},e:function(c){i=!0,l=c},f:function(){try{!a&&r.return!=null&&r.return()}finally{if(i)throw l}}}}function zit(e,t){var r;if(e){if(typeof e=="string")return _K(e,t);var n=kt(r=Object.prototype.toString.call(e)).call(r,8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return ol(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _K(e,t)}}function _K(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&i.push(ae(ae({},c),{children:d}))}}}catch(f){l.e(f)}finally{l.f()}return i};return n(t)},mK=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return r?Wn(t)?t>=r:!1:!!t},xK=function(t,r){var n=0,o=function s(c){return Kl(c)?mK(c.fixed,r):mK(c.fixed,r)||e1(c.children,s)},a=hK(t),i;try{for(a.s();!(i=a.n()).done;){var l=i.value;if(o(l))n+=1;else break}}catch(s){a.e(s)}finally{a.f()}return n},Bit=function(t){var r,n,o=t.offsetX,a=t.maxRenderWidth,i=Vl(t),l=t.useVirtual,s=t.overScan;if(!l.horizontal)return{leftIndex:0,leftBlank:0,rightIndex:i.full.length,rightBlank:0};for(var c=0,d=0,f=0,v=0,g=Math.max(0,o-s);c_)break}var x=i.center.length-c-d,w=Yc($t(r=kt(n=i.center).call(n,i.center.length-x)).call(r,function(D){return D.width}));return{leftIndex:c,leftBlank:f,rightIndex:c+d,rightBlank:w}},jit=function e(t){var r=t.maxRenderWidth,n=t.columns,o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=xK(n,o),i=kt(n).call(n,0,a),l=Yc(Cn(yd(i,"leaf-only"),function(s){return s.width}));return l>=r&&o<3?e({maxRenderWidth:r,columns:n},o+1):{leftNestedFixedCount:a,leftNested:i}},Uit=function(t){var r,n,o,a,i,l,s,c=t.columns,d=t.dataSource,f=t.defaultColumnWidth,v=t.useVirtual,g=t.offsetX,h=t.maxRenderWidth,_=t.getVerticalRenderRange,b=t.overScan,x=Lit(c,f),w=jit({columns:x,maxRenderWidth:h}),D=w.leftNestedFixedCount,I=w.leftNested,$=yd(x,"leaf-only"),F,C,R=Yc($t($).call($,function($e){return $e.width}));R=h?(F={left:[],right:[],full:$,center:$},C={left:[],right:[],full:x,center:x}):(F={left:yd(I,"leaf-only"),full:$,right:yd(B,"leaf-only"),center:yd(U,"leaf-only")},C={left:I,full:x,right:B,center:U});for(var z=$.length*d.length>xit,A=$.length>yit&&$.every(function($e){return Wn($e.width)}),M=d.length>bit,N=A||M,T=$.length>wit,O=En(v),j={horizontal:ET(O?v.horizontal:v,z||N),vertical:ET(O?v.vertical:v,z||N),header:ET(O?v.header:v,T)},K=Bit({maxRenderWidth:h,offsetX:g,useVirtual:j,flat:F,overScan:b}),Q=_(j),Y=K.leftBlank,X=K.leftIndex,G=K.rightBlank,H=K.rightIndex,V=BS(mt(r=[]).call(r,ar($t(n=F.left).call(n,function($e,ue){return{type:"normal",col:$e,colIndex:ue}})),[Y>0&&{type:"blank",blankSide:"left",width:Y}],ar($t(o=kt(a=F.center).call(a,X,H)).call(o,function($e,ue){return{type:"normal",col:$e,colIndex:F.left.length+X+ue}})),[G>0&&{type:"blank",blankSide:"right",width:G}],ar($t(i=F.right).call(i,function($e,ue){return{type:"normal",col:$e,colIndex:F.full.length-F.right.length+ue}})))),Z=ul(V).call(V,Boolean),te=F.full.length,J=F.left.length,ne=F.right.length,re=new so,ie=0,ce=0;ce0||C.right.length>0}},Hit=globalThis&&globalThis.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Ye=="function")for(var o=0,n=Ye(e);o0?{VERTICAL_OVER_SCAN_SIZE:t,HORIZONTAL_OVER_SCAN_SIZE:t}:En(t)?{VERTICAL_OVER_SCAN_SIZE:t.vertical,HORIZONTAL_OVER_SCAN_SIZE:t.horizontal}:{VERTICAL_OVER_SCAN_SIZE:fK,HORIZONTAL_OVER_SCAN_SIZE:fK}},Vit=function(t,r){return t||(r==="large"?46:34)},cw=Co.cssSupport("position","sticky"),bK=function(t){var r,n=t.className,o=t.id,a=t.style,i=t.size,l=t.estimatedRowHeight,s=t.getRowProps,c=t.dataSource,d=t.columns,f=t.useVirtual,v=f===void 0?"auto":f,g=t.defaultColumnWidth,h=g===void 0?100:g,_=t.overScanSize,b=t.fixedHeader,x=t.resize,w=t.scrollLeft,D=t.scrollTop,I=t.hasCellBorder,$=t.hasOutBorder,F=$===void 0?!0:$,C=t.striped,R=t.onTableScroll,k=t.blankAllowScroll,P=k===void 0?!0:k,U=t.rowHeightClearDeps,B=U===void 0?[]:U,z=t.noWrap,A=t.emptyContent,M=t.prefixCls,N=Hit(t,["className","id","style","size","estimatedRowHeight","getRowProps","dataSource","columns","useVirtual","defaultColumnWidth","overScanSize","fixedHeader","resize","scrollLeft","scrollTop","hasCellBorder","hasOutBorder","striped","onTableScroll","blankAllowScroll","rowHeightClearDeps","noWrap","emptyContent","prefixCls"]),T=m.useState(0),O=be(T,2),j=O[0],K=O[1],Q=m.useState(0),Y=be(Q,2),X=Y[0],G=Y[1],H=m.useState(400),V=be(H,2),Z=V[0],te=V[1],J=m.useState(0),ne=be(J,2),re=ne[0],ie=ne[1],ce=m.useState(!1),oe=be(ce,2),fe=oe[0],ve=oe[1],he=m.useRef(null),ge=m.useRef(),$e=m.useRef(),ue=m.useState(!0),Me=be(ue,2),Pe=Me[0],Qe=Me[1],it=m.useRef(),Je=m.useRef("first"),He=m.useRef(null),Ce=m.useState(0),Le=be(Ce,2),ze=Le[0],ft=Le[1],pt=m.useRef(!1),wt=Wit(_),st=wt.VERTICAL_OVER_SCAN_SIZE,xt=wt.HORIZONTAL_OVER_SCAN_SIZE,we=Ia(i),Yt=Vit(l,we),Ut=qt("virtual-table",M),Tt=qt("table",M),It=vK(Tt),at=be(It,2),vt=at[0],et=at[1],qe=vK(Tt,1),Ve=be(qe,2),Ke=Ve[0],Rt=Ve[1],xe=m.useRef({top:0,left:0}),Te=m.useRef(Cn(d,function(Ae){return Ae.width})),We=function(){ft(function(ke){return ke+1}),pt.current=!0};it.current||(it.current=new $T(c.length,Yt,st)),m.useEffect(function(){if(Je.current="first",ge.current){var Ae=ge.current,ke=Ae.tableWrapper,ye=Ae.tableBody;Je.current=ye,G(ke.scrollTop),K(ye.scrollLeft)}},[c,d]),m.useEffect(function(){if(ge.current&&P){var Ae=ge.current,ke=Ae.tableWrapper,ye=Ae.tableBody,Ue=Ae.tableHeader,ut=F?2:0;ye.style.minHeight="".concat(ke.offsetHeight-Ue.offsetHeight-ut,"px")}},[Z]),m.useEffect(function(){if(it.current=new $T(c.length,Yt,st),Je.current="first",xe.current&&xe.current.left&&St(xe.current.left),ge.current&&!cw){var Ae=ge.current,ke=Ae.tableHeader,ye=Ae.horizontalScroll;b&&(ke.style.transform="translateY(0)"),ye.style.bottom="0"}We()},mt(r=[c,Yt,st]).call(r,ar(B))),m.useEffect(function(){var Ae=Cn(d,function(ke){return ke.width});PAe(Te.current,Ae)||(Te.current=Ae,it.current=new $T(c.length,Yt,st),We())},[d]);var Xe=function(ke){var ye=c.length;return ke.vertical?it.current.getRenderRange(X,Z,ye):{topIndex:0,topBlank:0,bottomIndex:ye,bottomBlank:0}},ot=m.useMemo(function(){var Ae=Uit({columns:d,dataSource:c,defaultColumnWidth:h,useVirtual:v,offsetX:j,maxRenderWidth:re,getVerticalRenderRange:Xe,overScan:xt});return $e.current=Ae,Ae},[d,c,h,v,j,re,X,Z,ze]);m.useEffect(function(){gt(),Et(),Ft(),Qt()}),m.useEffect(function(){var Ae=ge.current.tableBody;Wn(w)&&Ae&&Ae.scrollLeft!==w&&setTimeout(function(){Je.current=Ae,Ae.scrollLeft=w})},[w]),m.useEffect(function(){var Ae=ge.current.tableWrapper;Wn(D)&&Ae&&Ae.scrollTop!==D&&setTimeout(function(){Ae.scrollTop=D})},[D]);var gt=function(){ge.current=new Mit(he.current)},Et=function(){if(pt.current){pt.current=!1;return}var ke=ge.current;ke.getTableRows().forEach(function(ye){var Ue=Number(ye.dataset.rowindex);if(!isNaN(Ue)){var ut=ye.offsetHeight;it.current.updateRow(Ue,ut)}})},Qt=function(){var ke=ge.current,ye=ke.table,Ue=ke.horizontalScrollItem,ut=ke.horizontalScroll;if(ye){var ir=ge.current.getTableBodyHtmlTable(),Rr=ir.offsetWidth,Qr=ye.offsetWidth,gr=iit().height;Ue.style.width="".concat(Rr,"px"),ut.style.marginTop="-".concat(gr+1,"px"),Qr>=Rr?fe&&ve(!1):gr>5&&(fe||ve(!0))}},Ft=function(){var ke=$e.current,ye=Vl(ke),Ue=ke.hasFixedColumn;if(Ue){var ut,ir=Yc($t(ut=ye.full).call(ut,function(Qr){return Qr.width})),Rr=ir>ge.current.table.clientWidth;Pe!==Rr&&Qe(Rr)}else Pe&&Qe(!1)},ct=function(ke){$e.current.useVirtual.horizontal&&Math.abs(ke-j)>=xt/2&&K(ke)},Bt=function(ke){var ye=ke.currentTarget.scrollTop;if(xe.current.top!==ye){if(xe.current.top=ye,R&&R(xe.current),!cw&&b){if(b){var Ue=ge.current.tableHeader;Ue.style.transform="translateY(".concat(ye,"px)")}var ut=ge.current.horizontalScroll;ut.style.bottom="-".concat(ye,"px")}ke.target===he.current&&$e.current.useVirtual.vertical&&Math.abs(ye-X)>st/2&&G(ye)}},Mt=function(ke){var ye=ke.currentTarget.scrollLeft;if(Je.current==="first")Je.current=ke.currentTarget;else if(ke.currentTarget!==Je.current||xe.current.left===ye)return;xe.current.left=ye,R&&R(xe.current),cw||(et(ye),Rt(ye));var Ue=ge.current,ut=Ue.tableHeader,ir=Ue.tableBody,Rr=Ue.horizontalScroll;ct(ye),St(ye),yr([ut,ir,Rr],function(Qr){ke.currentTarget===Qr||Qr.scrollLeft===ye||(Qr.scrollLeft=ye)})},St=function(ke){var ye=ge.current.tableBody,Ue=Vl($e.current),ut=ge.current.getLeftFixedShadow();if(ut){var ir=Ue.left.length>0&&Pe&&ke>0;ir?(he.current.classList.add("ping-left"),ut.classList.add("show-shadow")):(he.current.classList.remove("ping-left"),ut.classList.remove("show-shadow"))}var Rr=ge.current.getRightFixedShadow();if(Rr){var Qr=Ue.right.length>0&&Pe&&ke(e[e.NONE=0]="NONE",e[e.DATABASE=1]="DATABASE",e[e.SQL=2]="SQL",e[e.EXCEL=3]="EXCEL",e[e.ANALYSIS=4]="ANALYSIS",e[e.SERVER=5]="SERVER",e[e.JDY=8]="JDY",e[e.EXTERNAL=9]="EXTERNAL",e[e.OLD_FDL=16]="OLD_FDL",e))(co||{}),vl=(e=>(e.SPIDER="spider",e.DIRECT="direct",e))(vl||{}),uo=(e=>(e[e.NONE=0]="NONE",e[e.STRING=16]="STRING",e[e.NUMBER=32]="NUMBER",e[e.DATE=48]="DATE",e[e.DATE_TIME=49]="DATE_TIME",e))(uo||{}),tt=(e=>(e[e.FOLDER=100100]="FOLDER",e[e.MODEL_FOLDER=100101]="MODEL_FOLDER",e[e.INDICATOR_FOLDER=100102]="INDICATOR_FOLDER",e[e.DIMENSION_FOLDER=100103]="DIMENSION_FOLDER",e[e.BUSINESS_MODEL_FOLDER=100104]="BUSINESS_MODEL_FOLDER",e[e.TAG_FOLDER=2]="TAG_FOLDER",e[e.TABLE=200100]="TABLE",e[e.INDICATOR=200101]="INDICATOR",e[e.DIMENSION=200102]="DIMENSION",e[e.BUSINESS_MODEL=200103]="BUSINESS_MODEL",e[e.DATA_TABLE=200104]="DATA_TABLE",e[e.TAG=1]="TAG",e[e.FIELD=500100]="FIELD",e[e.SUBJECT=33]="SUBJECT",e))(tt||{}),Ms=(e=>(e.DATA_ROOT="__root_group__",e.TABLE_ROOT="__table_root__",e.INDICATOR_ROOT="__index_root__",e.DIMENSION_ROOT="__dimension_root__",e.BUSINESS_MODEL_ROOT="__biz_model_root__",e.TAG_ROOT="__tag_root__",e.ANALYSIS_ROOT="__my_analysis__",e))(Ms||{}),uw=(e=>(e.TABLE_UNGROUPED="__table_ungrouped__",e.COOP_GROUP="__coop_root_group__",e))(uw||{}),ST=(e=>(e.DATA_CATALOG="data_directory",e.MODEL="model_center",e))(ST||{}),fr=(e=>(e[e.REPORT=1]="REPORT",e[e.WIDGET=2]="WIDGET",e[e.TABLE=3]="TABLE",e[e.ANALYSIS_TABLE=4]="ANALYSIS_TABLE",e[e.DOC=5]="DOC",e[e.BI_BUSINESS_MODEL=16]="BI_BUSINESS_MODEL",e[e.SUBJECT=33]="SUBJECT",e[e.SUBJECT_GROUP=34]="SUBJECT_GROUP",e[e.PACKAGE=49]="PACKAGE",e[e.PACKAGE_GROUP=50]="PACKAGE_GROUP",e[e.INDICATOR=65]="INDICATOR",e[e.DIMENSION=66]="DIMENSION",e[e.BUSINESS_MODEL=67]="BUSINESS_MODEL",e[e.FIELD=145]="FIELD",e))(fr||{}),CT=(e=>(e[e.TIME=0]="TIME",e[e.NAME=1]="NAME",e))(CT||{}),ql=(e=>(e.COMMON="COMMON",e.MATH="MATH",e.DATETIME="DATETIME",e.TEXT="TEXT",e.LOGIC="LOGIC",e.AGG="AGG",e.TABLE_CAL="TABLE_CAL",e.ANALYSIS="ANALYSIS",e.OTHER="OTHER",e))(ql||{}),dw=(e=>(e[e.FIELD=0]="FIELD",e[e.INDICATOR=1]="INDICATOR",e[e.DIMENSION=2]="DIMENSION",e))(dw||{}),zs=(e=>(e[e.NORMAL=0]="NORMAL",e[e.PUBLISH=1]="PUBLISH",e[e.APPLYING=2]="APPLYING",e[e.CANCELING=3]="CANCELING",e))(zs||{}),ja=(e=>(e[e.SUCCESS=1]="SUCCESS",e[e.SUCCESS_AUTO=2]="SUCCESS_AUTO",e[e.FAIL_SAME_TYPE=3]="FAIL_SAME_TYPE",e[e.FAIL_STATUS_ERROR=4]="FAIL_STATUS_ERROR",e[e.FAIL=5]="FAIL",e[e.FAIL_REVIEWER_ERROR=6]="FAIL_REVIEWER_ERROR",e))(ja||{}),fw=(e=>(e.RELATION_ENABLE_ERROR="71310006",e.RELATION_DUPLICATE="71310015",e.RELATION_ANALYSIS_TABLE_DISABLE="71320001",e))(fw||{}),DK=(e=>(e.FORMULA_CALCULATION_ERROR="61310048",e))(DK||{}),to=(e=>(e[e.ALL=1]="ALL",e[e.SUBJECT=2]="SUBJECT",e[e.TABLE=3]="TABLE",e[e.FOLDER=6]="FOLDER",e[e.INDICATOR=65]="INDICATOR",e[e.DIMENSION=66]="DIMENSION",e[e.BUSINESS_MODEL=67]="BUSINESS_MODEL",e))(to||{}),TT=(e=>(e[e.LISTEN_EVENT=0]="LISTEN_EVENT",e[e.STOP_LISTEN_EVENT=1]="STOP_LISTEN_EVENT",e[e.EVENT_DATA=2]="EVENT_DATA",e))(TT||{}),RT=(e=>(e[e.DATA_CATALOG=0]="DATA_CATALOG",e[e.MODEL_CENTER=1]="MODEL_CENTER",e))(RT||{});const IK={[DK.FORMULA_CALCULATION_ERROR]:{type:"error",message:"FDI_Calculate_Error"},[fw.RELATION_ENABLE_ERROR]:{type:"error",message:"FDI_Relation_Enable_Error"},[fw.RELATION_DUPLICATE]:{type:"error",message:"FDI_Relation_Duplicate_Add"},[fw.RELATION_ANALYSIS_TABLE_DISABLE]:{type:"error",message:"FDI_Relation_Analysis_Table_Disable"}},FK={21300001:{title:"FDI_Operation_Failed",message:"FDI_Operation_Failed_Please_Refresh"},21300018:{title:"FDI_Operation_Failed",message:"FDI_Operation_Failed_Please_Refresh"},21300019:{title:"FDI_Operation_Failed",message:"FDI_Operation_Failed_Please_Refresh"},21300014:{title:"FDI_Operation_Failed",message:"FDI_Operation_Failed_Please_Refresh"}},$K={...FK,61310037:{type:"error",title:"FDI_Operation_Failed",message:"FDI_Model_No_Use_Permission"},71310014:{type:"error",title:"FDI_Operation_Failed",message:"FDI_Model_Not_Exist"},71311001:{type:"error",title:"FDI_Operation_Failed",message:"FDI_Model_No_Use_Permission"},71310001:{type:"error",title:"FDI_Operation_Failed",message:"FDI_Table_Not_Exist"},71310002:{type:"warning",title:"FDI_Rename_Failed",message:"FDI_Exist_Duplicate_Name"},7130003:{type:"warning",title:"FDI_Operation_Failed",message:"FDI_Folder_Not_Exist"},71310005:{type:"error",title:"FDI_Add_Failed",message:"FDI_Resource_Add_Error"},71310010:{type:"error",title:"FDI_Operation_Failed",message:"FDI_Indicator_Note_Exist"},71310011:{type:"warning",title:"FDI_Rename_Failed",message:"FDI_Exist_Duplicate_Name"},71310012:{type:"error",title:"FDI_Operation_Failed",message:"FDI_Dimension_Not_Exist"},71310013:{type:"warning",title:"FDI_Rename_Failed",message:"FDI_Exist_Duplicate_Name"},71310007:{type:"error",title:"FDI_Operation_Failed",message:"FDI_Business_Model_Not_Exit"},71310008:{type:"warning",title:"FDI_Rename_Failed",message:"FDI_Exist_Duplicate_Name"},71310030:{type:"warning",title:"FDI_Operation_Failed",message:"FDI_Data_No_Auth"},71310032:{type:"warning",title:"FDI_Operation_Failed",message:"FDI_Folder_Not_Exist"}},EK={71310004:{type:"warning",message:"FDI_Exist_Duplicate_Name"},71310009:{type:"warning",title:"FDI_Operation_Failed",message:"FDI_Folder_Levels_Over_limit"},71310016:{type:"error",message:"FDI_Folder_Not_Move"},71310031:{type:"warning",message:"FDI_Exist_Duplicate_Name"},71310033:{type:"warning",message:"FDI_Folder_Name_Duplicate"}},tlt={...IK,...$K,...EK},rlt=e=>De.includes(De.keys(IK),e),nlt=e=>De.includes(De.keys($K),e),olt=e=>De.includes(De.keys(EK),e),alt=({type:e,message:t})=>{wat.add({type:e,colorful:!1,messageType:"toast",message:t})};/*! js-cookie v3.0.5 | MIT */function pw(e){for(var t=1;t"u")){i=pw({},t,i),typeof i.expires=="number"&&(i.expires=new Date(Date.now()+i.expires*864e5)),i.expires&&(i.expires=i.expires.toUTCString()),o=encodeURIComponent(o).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var l="";for(var s in i)i[s]&&(l+="; "+s,i[s]!==!0&&(l+="="+i[s].split(";")[0]));return document.cookie=o+"="+e.write(a,o)+l}}function n(o){if(!(typeof document>"u"||arguments.length&&!o)){for(var a=document.cookie?document.cookie.split("; "):[],i={},l=0;lw$.create({baseURL:e,timeout:3e5,headers:{"X-Requested-With":"XMLHttpRequest"}}),clt=e=>(e.interceptors.request.use(t=>{const r=llt.get("fine_auth_token");return r&&(t.headers.Authorization=`Bearer ${r}`),t}),e),ult=(e,t)=>{e.interceptors.response.use(r=>r.status===200?t?r:r.data:Promise.reject("error"),r=>(w$.isCancel(r)&&console.log("Request was canceled:",r.message),Promise.reject(r)))},dlt=e=>{e.interceptors.response.use(t=>CK(t)?Promise.reject("error"):t)},SK=(e,t,r)=>{const n=slt(e);return clt(n),ult(n,r),t&&dlt(n),n},AT=(e,t)=>SK(VN(),e,t),flt=(e,t)=>SK(WN("fine_portal"),e,t),CK=e=>{if(e.errorCode){if(rlt(e.errorCode))return!1;const t=tlt[e.errorCode],{title:r,type:n="error",message:o=e.errorMsg}=t||{};return nlt(e.errorCode)?(K3.openAlert({type:n,title:rt(r),message:rt(o),text4Ok:rt("FDI_I_Know"),onOk:()=>{FK[e.errorCode]&&window.open(`${WN("fine_portal")}/login`,"_blank"),K3.closeAlert()}}),!0):olt(e.errorCode)?(alt({type:n,message:rt(o)}),!0):(K3.openAlert({title:e.errorCode,content:e.errorMsg,text4Ok:rt("FDI_I_Know")}),!0)}return!1},Ua=AT(!0);AT(!1),AT(!0,!0),flt(!0);let vw;const plt=new Uint8Array(16);function vlt(){if(!vw&&(vw=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!vw))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return vw(plt)}const Oo=[];for(let e=0;e<256;++e)Oo.push((e+256).toString(16).slice(1));function glt(e,t=0){return Oo[e[t+0]]+Oo[e[t+1]]+Oo[e[t+2]]+Oo[e[t+3]]+"-"+Oo[e[t+4]]+Oo[e[t+5]]+"-"+Oo[e[t+6]]+Oo[e[t+7]]+"-"+Oo[e[t+8]]+Oo[e[t+9]]+"-"+Oo[e[t+10]]+Oo[e[t+11]]+Oo[e[t+12]]+Oo[e[t+13]]+Oo[e[t+14]]+Oo[e[t+15]]}const TK={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function RK(e,t,r){if(TK.randomUUID&&!t&&!e)return TK.randomUUID();e=e||{};const n=e.random||(e.rng||vlt)();if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,t){r=r||0;for(let o=0;o<16;++o)t[r+o]=n[o];return t}return glt(n)}const OK={[Ms.DATA_ROOT]:"svg-resource_total",[Ms.INDICATOR_ROOT]:"svg-resource_total",[Ms.BUSINESS_MODEL_ROOT]:"svg-resource_total",[Ms.DIMENSION_ROOT]:"svg-resource_total",[Ms.TAG_ROOT]:"svg-tag_root"},AK={[tt.INDICATOR]:"icon-indicator-leaf",[tt.DIMENSION]:"icon-dimension-leaf",[tt.BUSINESS_MODEL]:"icon-business-model-leaf",[tt.TAG]:"svg-tag",[tt.SUBJECT]:"subject-icon"},gw={SMALL:14,NORMAL:16,LARGE:28,CARD:60,DETAIL:24,TABLE_DETAIL:38,PREVIEW:64},Ii={NAME:50,COMMENT:150,DESCRIPTION:200,MAX_DESCRIPTION:1e3,APPLY_REMARK:100};tt.FOLDER+"",tt.MODEL_FOLDER+"",tt.INDICATOR_FOLDER+"",tt.DIMENSION_FOLDER+"",tt.BUSINESS_MODEL_FOLDER+"",tt.TAG_FOLDER+"",tt.INDICATOR+"",tt.DIMENSION+"",tt.BUSINESS_MODEL+"",tt.TAG+"",tt.FOLDER+"",tt.TABLE+"",tt.DATA_TABLE+"",tt.INDICATOR+"",tt.DIMENSION+"",tt.BUSINESS_MODEL+"",ST.DATA_CATALOG,ST.MODEL;const hw=5e3,kT=100;vl.SPIDER+"",vl.DIRECT+"",fr.DOC+"",fr.WIDGET+"",fr.REPORT+"",fr.TABLE+"",fr.BI_BUSINESS_MODEL+"";const kK={[uo.NONE]:{iconName:"icon-text-string",localeKey:"FDI_Table_Field_String"},[uo.STRING]:{iconName:"icon-text-string",localeKey:"FDI_Table_Field_String"},[uo.NUMBER]:{iconName:"icon-text-number",localeKey:"FDI_Table_Field_Number"},[uo.DATE]:{iconName:"icon-text-datetime",localeKey:"FDI_Table_Field_Datetime"}},PK={[co.ANALYSIS]:"analysis-table",[co.DATABASE]:"database-table",[co.EXCEL]:"excel-table",[co.SQL]:"sql-table",[co.SERVER]:"database-table",[co.JDY]:"database-table",[co.OLD_FDL]:"database-table",[co.EXTERNAL]:"etl-table"};co.ANALYSIS+"",co.DATABASE+"",co.EXCEL+"",co.SQL+"",co.SERVER+"",co.JDY+"",co.OLD_FDL+"",co.EXTERNAL+"",vl.DIRECT+"",vl.SPIDER+"";const _n={token:{colorBrand1:"#F5FAFF",colorBrand2:"#E5EFFF",colorBrand3:"#B9D3FE",colorBrand4:"#87B0F7",colorBrand5:"#5285EA",colorBrand6:"#2C60DB",colorBrand7:"#1C4BBA",colorBrand8:"#0F3A9E",colorBrand9:"#062A7F",colorBrand10:"#042062",colorError1:"#FFF6F5",colorError2:"#FFE8E6",colorError3:"#FFDAD7",colorError4:"#FFBCB8",colorError5:"#F88581",colorError6:"#E65251",colorError7:"#BF393E",colorError8:"#93252F",colorError9:"#731720",colorError10:"#4D0F17",colorWarning1:"#FFFBEB",colorWarning2:"#FFF5D7",colorWarning3:"#FFEBBA",colorWarning4:"#FFDC91",colorWarning5:"#FCC868",colorWarning6:"#F0AC3C",colorWarning7:"#CF8926",colorWarning8:"#A06318",colorWarning9:"#74420B",colorWarning10:"#572E08",colorSuccess1:"#EFFBF0",colorSuccess2:"#DDF3DF",colorSuccess3:"#BEE4BF",colorSuccess4:"#95D097",colorSuccess5:"#57B25D",colorSuccess6:"#248F2E",colorSuccess7:"#177323",colorSuccess8:"#10561F",colorSuccess9:"#0A4213",colorSuccess10:"#042F0B",colorInfo1:"#F5FAFF",colorInfo2:"#E5EFFF",colorInfo3:"#B9D3FE",colorInfo4:"#87B0F7",colorInfo5:"#5285EA",colorInfo6:"#2C60DB",colorInfo7:"#1C4BBA",colorInfo8:"#0F3A9E",colorInfo9:"#062A7F",colorInfo10:"#042062",colorGrey1:"#FFFFFF",colorGrey2:"#F8F9FC",colorGrey3:"#EEF1F6",colorGrey4:"#E6E9EF",colorGrey5:"#DADEE7",colorGrey6:"#CFD4DC",colorGrey7:"#C0C7D0",colorGrey8:"#A3ADBD",colorGrey9:"#8A95A6",colorGrey10:"#5D6B81",colorGrey11:"#3F506A",colorGrey12:"#223553",colorGrey13:"#091E40",colorTransparent2:"rgba(9, 30, 64, .9)",colorTransparent3:"rgba(9, 30, 64, .78)",colorTransparent4:"rgba(9, 30, 64, .66)",colorTransparent5:"rgba(9, 30, 64, .47)",colorTransparent6:"rgba(9, 30, 64, .37)",colorTransparent7:"rgba(9, 30, 64, .29)",colorTransparent8:"rgba(9, 30, 64, .24)",colorTransparent9:"rgba(9, 30, 64, .19)",colorTransparent10:"rgba(9, 30, 64, .15)",colorTransparent11:"rgba(9, 30, 64, .11)",colorTransparent12:"rgba(9, 30, 64, .07)",colorTransparent13:"rgba(9, 30, 64, 0)",colorControlOutline:"rgba(44, 96, 219, 0.10)",colorPrimaryBg:"#EBF3FF",borderRadiusXs:"2px",borderRadiusSm:"3px",borderRadius:"4px",borderRadiusLg:"6px",borderRadiusXl:"8px",gapXs:"2px",gapSm:"6px",gap:"8px",gapLg:"10px",gapXl:"12px",gap2Xl:"16px",gap3Xl:"16px",gap4Xl:"32px",paddingLayout3Xs:"2px",paddingLayout2Xs:"4px",paddingLayoutXs:"8px",paddingLayoutSm:"12px",paddingLayout:"16px",paddingLayoutLg:"20px",paddingLayoutXl:"24px",paddingLayout2Xl:"32px",paddingLayout3Xl:"48px",paddingZero:"0",padding2Xs:"2px",paddingXs:"4px",paddingSm:"8px",padding:"8px",paddingLg:"8px",paddingXl:"12px",padding2Xl:"20px",padding3Xl:"24px",padding4Xl:"32px",controlHeightXs:"16px",controlHeightSm:"22px",controlHeight:"28px",controlHeightLg:"32px",fontSizeSm:"12px",fontSize:"12px",fontSizeLg:"14px",fontSizeXl:"16px",fontSize2Xl:"18px",fontSizeHeading1:"38px",fontSizeHeading2:"30px",fontSizeHeading3:"24px",fontSizeHeading4:"20px",fontSizeHeading5:"16px",controlItemFontWeightActive:"600",iconSize:"16px",iconSizeLg:"18px",iconSizeSm:"14px",iconSize2Sm:"12px",lineHeightSm:"20px",lineHeight:"20px",lineHeightLg:"22px",lineHeightXl:"24px",lineHeight2Xl:"26px",lineHeightHeading1:"46px",lineHeightHeading2:"38px",lineHeightHeading3:"32px",lineHeightHeading4:"28px",lineHeightHeading5:"24px",lineWidth:"1px",lineWidthBold:"2px",lineWidthFocus:"4px",controlOutlineWidth:"2px",boxShadow:"0 0 0 0 rgb(0, 0, 0), 0 6px 16px 0 rgba(0, 0, 0, .08), 0 3px 6px -4px rgba(0, 0, 0, .12), 0 9px 28px 8px rgb(0, 0, 0, .05)",boxShadowSecondary:"0 0 0 0 rgb(0, 0, 0), 0 6px 16px 0 rgba(0, 0, 0, .08), 0 3px 6px -4px rgba(0, 0, 0, .12), 0 9px 28px 8px rgb(0, 0, 0, .05)",boxShadowTertiary:"0 0 0 0 rgb(0, 0, 0), 0 1px 2px 0 rgba(0, 0, 0, .03), 0 1px 6px -1px rgba(0, 0, 0, .02), 0 2px 4px 0 rgb(0, 0, 0, .02)",controlOutline:"0 0 0 var(--fd-control-outline-width) rgba(22, 119, 255, .1)",controlWarningOutline:"0 0 0 var(--fd-control-outline-width) rgba(240, 172, 60, .1)",controlErrorOutline:"0 0 0 var(--fd-control-outline-width) rgba(230, 82, 81, .06)",controlItemBgActive:"#E5EFFF",controlItemBgHover:"#EEF1F6",colorBlue1:"var(--fd-color-info-1)",colorBlue3:"var(--fd-color-info-3)",colorBlue6:"var(--fd-color-info-6)",colorGreen6:"var(--fd-color-success-6)"},components:{Button:{marginBetween:"0",paddingText:"8px",paddingTextXl:"12px",heightTextSm:"22px",heightText:"28px",heightTextLg:"32px"},Radio:{defaultPadding:"0"},Check:{defaultPadding:"0"},Collapse:{panelPadding:"0"},Spin:{heightSm:"14px",height:"20px",heightLg:"32px"},Tooltip:{paddingLayout2xs:"6px",paddingLayoutXs:"8px"}}};function PT(){return PT=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&(r[o]=e[o]);return r}var hlt=typeof global=="object"&&global&&global.Object===Object&&global;const MK=hlt;var _lt=typeof self=="object"&&self&&self.Object===Object&&self,mlt=MK||_lt||Function("return this")();const Yl=mlt;var xlt=Yl.Symbol;const Fi=xlt;var zK=Object.prototype,blt=zK.hasOwnProperty,ylt=zK.toString,Vh=Fi?Fi.toStringTag:void 0;function wlt(e){var t=blt.call(e,Vh),r=e[Vh];try{e[Vh]=void 0;var n=!0}catch{}var o=ylt.call(e);return n&&(t?e[Vh]=r:delete e[Vh]),o}var Dlt=Object.prototype,Ilt=Dlt.toString;function Flt(e){return Ilt.call(e)}var $lt="[object Null]",Elt="[object Undefined]",LK=Fi?Fi.toStringTag:void 0;function nu(e){return e==null?e===void 0?Elt:$lt:LK&&LK in Object(e)?wlt(e):Flt(e)}function Gl(e){return e!=null&&typeof e=="object"}var Slt="[object Symbol]";function _w(e){return typeof e=="symbol"||Gl(e)&&nu(e)==Slt}function NT(e,t){for(var r=-1,n=e==null?0:e.length,o=Array(n);++r0){if(++t>=dst)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function gst(e){return function(){return e}}var hst=function(){try{var e=Id(Object,"defineProperty");return e({},"",{}),e}catch{}}();const xw=hst;var _st=xw?function(e,t){return xw(e,"toString",{configurable:!0,enumerable:!1,value:gst(t),writable:!0})}:mw,mst=vst(_st);const YK=mst;function GK(e,t){for(var r=-1,n=e==null?0:e.length;++r-1&&e%1==0&&e-1&&e%1==0&&e<=Fst}function Fd(e){return e!=null&&jT(e.length)&&!VK(e)}function $st(e,t,r){if(!Ls(r))return!1;var n=typeof t;return(n=="number"?Fd(r)&<(t,r.length):n=="string"&&t in r)?bw(r[t],e):!1}function Est(e){return Ist(function(t,r){var n=-1,o=r.length,a=o>1?r[o-1]:void 0,i=o>2?r[2]:void 0;for(a=e.length>3&&typeof a=="function"?(o--,a):void 0,i&&$st(r[0],r[1],i)&&(a=o<3?void 0:a,o=1),t=Object(t);++n-1}function qct(e,t){var r=this.__data__,n=Dw(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}function Bs(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t0&&r(l)?t>1?uq(l,t-1,r,n,o):GT(o,l):n||(o[o.length]=l)}return o}function fut(e){var t=e==null?0:e.length;return t?uq(e,1):[]}function put(e){return YK(QK(e,void 0,fut),e+"")}var vut=sq(Object.getPrototypeOf,Object);const XT=vut;var gut="[object Object]",hut=Function.prototype,_ut=Object.prototype,dq=hut.toString,mut=_ut.hasOwnProperty,xut=dq.call(Object);function but(e){if(!Gl(e)||nu(e)!=gut)return!1;var t=XT(e);if(t===null)return!0;var r=mut.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&dq.call(r)==xut}function yut(e,t,r){var n=-1,o=e.length;t<0&&(t=-t>o?0:o+t),r=r>o?o:r,r<0&&(r+=o),o=t>r?0:r-t>>>0,t>>>=0;for(var a=Array(o);++nl))return!1;var c=a.get(e),d=a.get(t);if(c&&d)return c==t&&d==e;var f=-1,v=!0,g=r&vft?new Ew:void 0;for(a.set(e,t),a.set(t,e);++f-1?o[a?t[i]:i]:void 0}}var ipt=Math.max;function s4(e,t,r){var n=e==null?0:e.length;if(!n)return-1;var o=r==null?0:Ult(r);return o<0&&(o=ipt(n+o,0)),xst(e,a4(t),o)}var lpt=apt(s4);const spt=lpt;function cpt(e,t){var r=-1,n=Fd(e)?Array(e.length):[];return Bq(e,function(o,a,i){n[++r]=t(o,a,i)}),n}function upt(e,t){var r=$a(e)?NT:cpt;return r(e,a4(t))}function dpt(e,t){return t.length<2?e:YT(e,yut(t,0,-1))}var fpt="[object Number]";function ppt(e){return typeof e=="number"||Gl(e)&&nu(e)==fpt}function ou(e){return e==null}function vpt(e){return e===void 0}function gpt(e,t){return t=Fw(t,e),e=dpt(e,t),e==null||delete e[Gh(i4(t))]}function hpt(e){return but(e)?void 0:e}var _pt=1,mpt=2,xpt=4,bpt=put(function(e,t){var r={};if(e==null)return r;var n=!1;t=NT(t,function(a){return a=Fw(a,e),n||(n=a.length>1),a}),Kp(e,bq(e),r),n&&(r=Zh(r,_pt|mpt|xpt,hpt));for(var o=t.length;o--;)gpt(r,t[o]);return r});const ypt=bpt,jq="x-svgicon",Uq={width:"1em",height:"1em",fill:"currentColor","aria-hidden":!0,focusable:!1},Hq=(e,t="",r)=>{const n=e.props||{},o={key:t,...ypt(n,"children")};let a=n.children||[];return $a(a)||(a=[a]),r&&wct(o,Uq,r),E.createElement(e.type,o,upt(a,(i,l)=>Hq(i,`${e.type}-${l}`)))},Yp=E.forwardRef((e,t)=>{const{className:r,component:n,icon:o,spin:a,name:i,onClick:l,onMouseDown:s,...c}=e,d=Gt(jq,{[`${jq}-${i}`]:i},r,{spin:!!a});return c.viewBox||delete c.viewBox,se("i",{ref:t,className:d,onClick:l,onMouseDown:s,children:n?se(n,{...Uq,...c,className:"fbiz-align-[-0.14em]"}):o?Hq(o,i,c):null})}),Wq=(e,t)=>se(Yp,{...e,ref:t,name:"AddOutlined",icon:se("svg",{viewBox:"0 0 1024 1024",children:se("path",{d:"M481.904 192a8.016 8.016 0 0 0-8.032 8v272h-273.08a8.016 8.016 0 0 0-8.032 8v64c0 4.42 3.6 8 8.032 8h273.08v272c0 4.42 3.596 8 8.032 8h64.256a8.016 8.016 0 0 0 8.032-8V552h273.076a8.016 8.016 0 0 0 8.032-8v-64c0-4.42-3.596-8-8.032-8H554.192V200c0-4.42-3.596-8-8.032-8h-64.256z",fillOpacity:.9})})});Wq.displayName="AddOutlined";const Vq=E.memo(E.forwardRef(Wq)),Kq=(e,t)=>se(Yp,{...e,ref:t,name:"ArrowlFilled",icon:se("svg",{viewBox:"0 0 16 17",children:se("path",{d:"M10.25 10.875v-4.75a.5.5 0 0 0-.8-.4L6.284 8.1a.5.5 0 0 0 0 .8l3.166 2.375a.5.5 0 0 0 .8-.4Z",fillOpacity:.78})})});Kq.displayName="ArrowlFilled";const wpt=E.memo(E.forwardRef(Kq)),qq=(e,t)=>se(Yp,{...e,ref:t,name:"ArrowrFilled",icon:se("svg",{viewBox:"0 0 17 17",children:se("path",{d:"M6.25 6.125v4.75a.5.5 0 0 0 .8.4L10.217 8.9a.5.5 0 0 0 0-.8L7.05 5.725a.5.5 0 0 0-.8.4Z",fillOpacity:.78})})});qq.displayName="ArrowrFilled";const Dpt=E.memo(E.forwardRef(qq)),Yq=(e,t)=>se(Yp,{...e,ref:t,name:"DraghalfOutlined",icon:$r("svg",{viewBox:"0 0 2 16",children:[se("g",{fillOpacity:.66,clipPath:"url(#a)",children:se("path",{d:"M0 3.125a.75.75 0 1 1 1.5 0 .75.75 0 0 1-1.5 0ZM0 8a.75.75 0 1 1 1.5 0A.75.75 0 0 1 0 8Zm.75 4.125a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Z"})}),se("defs",{children:se("clipPath",{id:"a",children:se("path",{d:"M0 0h1.5v16H0z"})})})]})});Yq.displayName="DraghalfOutlined";const Ipt=E.memo(E.forwardRef(Yq)),Gq=(e,t)=>se(Yp,{...e,ref:t,name:"RubbishOutlined",icon:se("svg",{viewBox:"0 0 1024 1024",children:se("path",{d:"M256 120a8 8 0 0 1 8-8h496a8 8 0 0 1 8 8v136h184a8 8 0 0 1 8 8v48a8 8 0 0 1-8 8H72a8 8 0 0 1-8-8v-48a8 8 0 0 1 8-8h184V120zm64 56v80h384v-80H320zM192 392a8 8 0 0 1 8-8h48a8 8 0 0 1 8 8v456h512V392a8 8 0 0 1 8-8h48a8 8 0 0 1 8 8v504a16 16 0 0 1-16 16H208a16 16 0 0 1-16-16V392zm192 0a8 8 0 0 1 8-8h48a8 8 0 0 1 8 8v384a8 8 0 0 1-8 8h-48a8 8 0 0 1-8-8V392zm256 0a8 8 0 0 0-8-8h-48a8 8 0 0 0-8 8v384a8 8 0 0 0 8 8h48a8 8 0 0 0 8-8V392z",fillOpacity:.9})})});Gq.displayName="RubbishOutlined";const Xq=E.memo(E.forwardRef(Gq)),Zq=(e,t)=>se(Yp,{...e,ref:t,name:"SwitchOutlined",icon:se("svg",{viewBox:"0 0 1024 1024",children:se("path",{d:"M722.344 474.912a8 8 0 0 0 11.312 0l173.256-173.256a8 8 0 0 0 0-11.312L733.656 117.088a8 8 0 0 0-11.312 0l-45.256 45.256a8 8 0 0 0 0 11.312l83.676 83.68H120a8 8 0 0 0-8 8v64a8 8 0 0 0 8 8h638.1l-81.012 81.008a8 8 0 0 0 0 11.312l45.256 45.256zM263.236 766.668l83.676 83.676a8 8 0 0 1 0 11.312l-45.256 45.256a8 8 0 0 1-11.312 0L117.088 733.656a8 8 0 0 1 0-11.312l173.256-173.256a8 8 0 0 1 11.312 0l45.256 45.256a8 8 0 0 1 0 11.312L265.9 686.668H904a8 8 0 0 1 8 8v64a8 8 0 0 1-8 8H263.236z",fillOpacity:.9})})});Zq.displayName="SwitchOutlined";const Qq=E.memo(E.forwardRef(Zq)),Fpt=typeof window<"u"?E.useInsertionEffect||E.useLayoutEffect:()=>{};function Jq(e){const t=E.useRef($pt);Fpt(()=>{t.current=e},[e]);const r=E.useRef(null);return r.current||(r.current=function(){return t.current.apply(this,arguments)}),r.current}function $pt(){throw new Error("INVALID_USEEVENT_INVOCATION: the callback from useEvent cannot be invoked before the component has mounted.")}function eY(e){const{onChange:t,defaultValue:r,value:n,defaultStateValue:o}=e,a=n!==void 0,i=m.useRef(a?void 0:vpt(r)?o:r),l=typeof n=="function"?n(i.current):n,[,s]=m.useState({});a&&(i.current=l);const c=Jq(d=>{const f=typeof d=="function"?d(i.current):d;f!==i.current&&(i.current=f,s({}),t&&t(f))});return[i.current,c]}const tY=m.createContext(void 0),Ept={locale:"en-us",dialog:{okText:"OK",cancelText:"Cancel",dragTip:"Long press to drag the window"},prompt:{okText:"OK",cancelText:"Cancel"},popConfirm:{okText:"OK",cancelText:"Cancel"},alert:{okText:"OK",cancelText:"Cancel"},check:{checkAll:"Select All"},combo:{searchEmpty:"No results",searchPlaceholder:"Search",searching:"Searching...",allCheck:"Select All",allCheckInSearch:"Select all results",emptyTip:"No data to select",loading:"Loading",clickToLoadMore:"Click to load more"},upload:{uploadText:"Select File"},datetime:{clear:"Clear",today:"Today",month:"This Month",now:"Now",ok:"OK",time:"Time",shortSun:"Su",shortMon:"Mo",shortTue:"Tu",shortWed:"We",shortThu:"Th",shortFri:"Fr",shortSat:"Sa",january:"Jan",february:"Feb",march:"Mar",april:"Apr",may:"May",june:"June",july:"July",august:"Aug",september:"Sept",october:"Oct",november:"Nov",december:"Dec",january_m:"Jan",february_m:"Feb",march_m:"Mar",april_m:"Apr",may_m:"May",june_m:"June",july_m:"July",august_m:"Aug",september_m:"Sept",october_m:"Oct",november_m:"Nov",december_m:"Dec",hour:"Hour",minute:"Minute",second:"Second"},cascader:{searchPlaceholder:"Search",searchEmpty:"No results",searching:"Searching..."},filePreview:{download:"Download",noSupportPreview:"This type of file does not support online preview",zoomIn:"Zoom In",zoomOut:"Zoom Out",rotateToRight:"Rotate Right",viewOrigin:"View Original",loading:"Loading..."},pagination:{currentPage:"Page {page}"},colorPicker:{recommendColor:"Recommended Color",customColor:"Custom Color",alpha:"alpha",noMessage:"None yet"},image:{preview:"Preview"},typography:{edit:"Edit",copy:"Copy",copied:"Copied",expand:"Expand"},select:{allCheck:"Select All",allCheckInSearch:"Select all results",emptyTip:"No data to select",searchPlaceholder:"Search"},treeSelect:{emptyTip:"No data to select",searchPlaceholder:"Search"}},rY={...Ept,LogicTree:{AND:"AND",OR:"OR",SWITCH:"S",ADD:"ADD",DELETE:"DEL"},FormulaPane:{FUNC:"Func",SEARCH:"Search",FUNC_DEF:"Func Def",PARAM_DEF:"Param Def",EXAMPLE:"Example",FIELD:"Field",INPUT:"Please Input",DESC_TIP:"Please enter or select a function to view its definition."},ResizeContainer:{COLLAPSE:"COLLAPSE",EXPAND:"EXPAND"}};function nY(e){const t=m.useContext(tY)??rY;return[m.useMemo(()=>({...t?.[e]||{}}),[e,t])]}function c4(e,t){return c4=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,n){return r.__proto__=n,r},c4(e,t)}function oY(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,c4(e,t)}var u4,aY;function Spt(){if(aY)return u4;aY=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return u4=e,u4}var d4,iY;function Cpt(){if(iY)return d4;iY=1;var e=Spt();function t(){}function r(){}return r.resetWarningCache=t,d4=function(){function n(i,l,s,c,d,f){if(f!==e){var v=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw v.name="Invariant Violation",v}}n.isRequired=n;function o(){return n}var a={array:n,bigint:n,bool:n,func:n,number:n,object:n,string:n,symbol:n,any:n,arrayOf:o,element:n,elementType:n,instanceOf:o,node:n,objectOf:o,oneOf:o,oneOfType:o,shape:o,exact:o,checkPropTypes:r,resetWarningCache:t};return a.PropTypes=a,a},d4}Cpt()();function Tpt(e,t){return e.classList?!!t&&e.classList.contains(t):(" "+(e.className.baseVal||e.className)+" ").indexOf(" "+t+" ")!==-1}function Rpt(e,t){e.classList?e.classList.add(t):Tpt(e,t)||(typeof e.className=="string"?e.className=e.className+" "+t:e.setAttribute("class",(e.className&&e.className.baseVal||"")+" "+t))}function lY(e,t){return e.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}function Opt(e,t){e.classList?e.classList.remove(t):typeof e.className=="string"?e.className=lY(e.className,t):e.setAttribute("class",lY(e.className&&e.className.baseVal||"",t))}const sY={disabled:!1},cY=E.createContext(null);var uY=function(e){return e.scrollTop},Qh="unmounted",Cd="exited",Td="entering",Gp="entered",f4="exiting",Us=function(e){oY(t,e);function t(n,o){var a;a=e.call(this,n,o)||this;var i=o,l=i&&!i.isMounting?n.enter:n.appear,s;return a.appearStatus=null,n.in?l?(s=Cd,a.appearStatus=Td):s=Gp:n.unmountOnExit||n.mountOnEnter?s=Qh:s=Cd,a.state={status:s},a.nextCallback=null,a}t.getDerivedStateFromProps=function(n,o){var a=n.in;return a&&o.status===Qh?{status:Cd}:null};var r=t.prototype;return r.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},r.componentDidUpdate=function(n){var o=null;if(n!==this.props){var a=this.state.status;this.props.in?a!==Td&&a!==Gp&&(o=Td):(a===Td||a===Gp)&&(o=f4)}this.updateStatus(!1,o)},r.componentWillUnmount=function(){this.cancelNextCallback()},r.getTimeouts=function(){var n=this.props.timeout,o,a,i;return o=a=i=n,n!=null&&typeof n!="number"&&(o=n.exit,a=n.enter,i=n.appear!==void 0?n.appear:a),{exit:o,enter:a,appear:i}},r.updateStatus=function(n,o){if(n===void 0&&(n=!1),o!==null)if(this.cancelNextCallback(),o===Td){if(this.props.unmountOnExit||this.props.mountOnEnter){var a=this.props.nodeRef?this.props.nodeRef.current:Rl.findDOMNode(this);a&&uY(a)}this.performEnter(n)}else this.performExit();else this.props.unmountOnExit&&this.state.status===Cd&&this.setState({status:Qh})},r.performEnter=function(n){var o=this,a=this.props.enter,i=this.context?this.context.isMounting:n,l=this.props.nodeRef?[i]:[Rl.findDOMNode(this),i],s=l[0],c=l[1],d=this.getTimeouts(),f=i?d.appear:d.enter;if(!n&&!a||sY.disabled){this.safeSetState({status:Gp},function(){o.props.onEntered(s)});return}this.props.onEnter(s,c),this.safeSetState({status:Td},function(){o.props.onEntering(s,c),o.onTransitionEnd(f,function(){o.safeSetState({status:Gp},function(){o.props.onEntered(s,c)})})})},r.performExit=function(){var n=this,o=this.props.exit,a=this.getTimeouts(),i=this.props.nodeRef?void 0:Rl.findDOMNode(this);if(!o||sY.disabled){this.safeSetState({status:Cd},function(){n.props.onExited(i)});return}this.props.onExit(i),this.safeSetState({status:f4},function(){n.props.onExiting(i),n.onTransitionEnd(a.exit,function(){n.safeSetState({status:Cd},function(){n.props.onExited(i)})})})},r.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},r.safeSetState=function(n,o){o=this.setNextCallback(o),this.setState(n,o)},r.setNextCallback=function(n){var o=this,a=!0;return this.nextCallback=function(i){a&&(a=!1,o.nextCallback=null,n(i))},this.nextCallback.cancel=function(){a=!1},this.nextCallback},r.onTransitionEnd=function(n,o){this.setNextCallback(o);var a=this.props.nodeRef?this.props.nodeRef.current:Rl.findDOMNode(this),i=n==null&&!this.props.addEndListener;if(!a||i){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var l=this.props.nodeRef?[this.nextCallback]:[a,this.nextCallback],s=l[0],c=l[1];this.props.addEndListener(s,c)}n!=null&&setTimeout(this.nextCallback,n)},r.render=function(){var n=this.state.status;if(n===Qh)return null;var o=this.props,a=o.children;o.in,o.mountOnEnter,o.unmountOnExit,o.appear,o.enter,o.exit,o.timeout,o.addEndListener,o.onEnter,o.onEntering,o.onEntered,o.onExit,o.onExiting,o.onExited,o.nodeRef;var i=NK(o,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return E.createElement(cY.Provider,{value:null},typeof a=="function"?a(n,i):E.cloneElement(E.Children.only(a),i))},t}(E.Component);Us.contextType=cY,Us.propTypes={};function Xp(){}Us.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:Xp,onEntering:Xp,onEntered:Xp,onExit:Xp,onExiting:Xp,onExited:Xp},Us.UNMOUNTED=Qh,Us.EXITED=Cd,Us.ENTERING=Td,Us.ENTERED=Gp,Us.EXITING=f4;const Apt=Us;var kpt=function(e,t){return e&&t&&t.split(" ").forEach(function(r){return Rpt(e,r)})},p4=function(e,t){return e&&t&&t.split(" ").forEach(function(r){return Opt(e,r)})},v4=function(e){oY(t,e);function t(){for(var n,o=arguments.length,a=new Array(o),i=0;i"u"?void 0:Number(n),maxHeight:typeof o>"u"?void 0:Number(o),minWidth:typeof a>"u"?void 0:Number(a),minHeight:typeof i>"u"?void 0:Number(i)}},Hpt=["as","style","className","grid","snap","bounds","boundsByDirection","size","defaultSize","minWidth","minHeight","maxWidth","maxHeight","lockAspectRatio","lockAspectRatioExtraWidth","lockAspectRatioExtraHeight","enable","handleStyles","handleClasses","handleWrapperStyle","handleWrapperClass","children","onResizeStart","onResize","onResizeStop","handleComponent","scale","resizeRatio","snapGap"],gY="__resizable_base__",Wpt=function(e){Lpt(t,e);function t(r){var n=e.call(this,r)||this;return n.ratio=1,n.resizable=null,n.parentLeft=0,n.parentTop=0,n.resizableLeft=0,n.resizableRight=0,n.resizableTop=0,n.resizableBottom=0,n.targetLeft=0,n.targetTop=0,n.appendBase=function(){if(!n.resizable||!n.window)return null;var o=n.parentNode;if(!o)return null;var a=n.window.document.createElement("div");return a.style.width="100%",a.style.height="100%",a.style.position="absolute",a.style.transform="scale(0, 0)",a.style.left="0",a.style.flex="0 0 100%",a.classList?a.classList.add(gY):a.className+=gY,o.appendChild(a),a},n.removeBase=function(o){var a=n.parentNode;a&&a.removeChild(o)},n.ref=function(o){o&&(n.resizable=o)},n.state={isResizing:!1,width:typeof(n.propsSize&&n.propsSize.width)>"u"?"auto":n.propsSize&&n.propsSize.width,height:typeof(n.propsSize&&n.propsSize.height)>"u"?"auto":n.propsSize&&n.propsSize.height,direction:"right",original:{x:0,y:0,width:0,height:0},backgroundStyle:{height:"100%",width:"100%",backgroundColor:"rgba(0,0,0,0)",cursor:"auto",opacity:0,position:"fixed",zIndex:9999,top:"0",left:"0",bottom:"0",right:"0"},flexBasis:void 0},n.onResizeStart=n.onResizeStart.bind(n),n.onMouseMove=n.onMouseMove.bind(n),n.onMouseUp=n.onMouseUp.bind(n),n}return Object.defineProperty(t.prototype,"parentNode",{get:function(){return this.resizable?this.resizable.parentNode:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"window",{get:function(){return!this.resizable||!this.resizable.ownerDocument?null:this.resizable.ownerDocument.defaultView},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"propsSize",{get:function(){return this.props.size||this.props.defaultSize||Bpt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"size",{get:function(){var r=0,n=0;if(this.resizable&&this.window){var o=this.resizable.offsetWidth,a=this.resizable.offsetHeight,i=this.resizable.style.position;i!=="relative"&&(this.resizable.style.position="relative"),r=this.resizable.style.width!=="auto"?this.resizable.offsetWidth:o,n=this.resizable.style.height!=="auto"?this.resizable.offsetHeight:a,this.resizable.style.position=i}return{width:r,height:n}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"sizeStyle",{get:function(){var r=this,n=this.props.size,o=function(l){if(typeof r.state[l]>"u"||r.state[l]==="auto")return"auto";if(r.propsSize&&r.propsSize[l]&&r.propsSize[l].toString().endsWith("%")){if(r.state[l].toString().endsWith("%"))return r.state[l].toString();var s=r.getParentSize(),c=Number(r.state[l].toString().replace("px","")),d=c/s[l]*100;return d+"%"}return g4(r.state[l])},a=n&&typeof n.width<"u"&&!this.state.isResizing?g4(n.width):o("width"),i=n&&typeof n.height<"u"&&!this.state.isResizing?g4(n.height):o("height");return{width:a,height:i}},enumerable:!1,configurable:!0}),t.prototype.getParentSize=function(){if(!this.parentNode)return this.window?{width:this.window.innerWidth,height:this.window.innerHeight}:{width:0,height:0};var r=this.appendBase();if(!r)return{width:0,height:0};var n=!1,o=this.parentNode.style.flexWrap;o!=="wrap"&&(n=!0,this.parentNode.style.flexWrap="wrap"),r.style.position="relative",r.style.minWidth="100%",r.style.minHeight="100%";var a={width:r.offsetWidth,height:r.offsetHeight};return n&&(this.parentNode.style.flexWrap=o),this.removeBase(r),a},t.prototype.bindEvents=function(){this.window&&(this.window.addEventListener("mouseup",this.onMouseUp),this.window.addEventListener("mousemove",this.onMouseMove),this.window.addEventListener("mouseleave",this.onMouseUp),this.window.addEventListener("touchmove",this.onMouseMove,{capture:!0,passive:!1}),this.window.addEventListener("touchend",this.onMouseUp))},t.prototype.unbindEvents=function(){this.window&&(this.window.removeEventListener("mouseup",this.onMouseUp),this.window.removeEventListener("mousemove",this.onMouseMove),this.window.removeEventListener("mouseleave",this.onMouseUp),this.window.removeEventListener("touchmove",this.onMouseMove,!0),this.window.removeEventListener("touchend",this.onMouseUp))},t.prototype.componentDidMount=function(){if(!(!this.resizable||!this.window)){var r=this.window.getComputedStyle(this.resizable);this.setState({width:this.state.width||this.size.width,height:this.state.height||this.size.height,flexBasis:r.flexBasis!=="auto"?r.flexBasis:void 0})}},t.prototype.componentWillUnmount=function(){this.window&&this.unbindEvents()},t.prototype.createSizeForCssProperty=function(r,n){var o=this.propsSize&&this.propsSize[n];return this.state[n]==="auto"&&this.state.original[n]===r&&(typeof o>"u"||o==="auto")?"auto":r},t.prototype.calculateNewMaxFromBoundary=function(r,n){var o=this.props.boundsByDirection,a=this.state.direction,i=o&&Zp("left",a),l=o&&Zp("top",a),s,c;if(this.props.bounds==="parent"){var d=this.parentNode;d&&(s=i?this.resizableRight-this.parentLeft:d.offsetWidth+(this.parentLeft-this.resizableLeft),c=l?this.resizableBottom-this.parentTop:d.offsetHeight+(this.parentTop-this.resizableTop))}else this.props.bounds==="window"?this.window&&(s=i?this.resizableRight:this.window.innerWidth-this.resizableLeft,c=l?this.resizableBottom:this.window.innerHeight-this.resizableTop):this.props.bounds&&(s=i?this.resizableRight-this.targetLeft:this.props.bounds.offsetWidth+(this.targetLeft-this.resizableLeft),c=l?this.resizableBottom-this.targetTop:this.props.bounds.offsetHeight+(this.targetTop-this.resizableTop));return s&&Number.isFinite(s)&&(r=r&&r"u"?10:a.width,f=typeof o.width>"u"||o.width<0?r:o.width,v=typeof a.height>"u"?10:a.height,g=typeof o.height>"u"||o.height<0?n:o.height,h=s||0,_=c||0;if(l){var b=(v-h)*this.ratio+_,x=(g-h)*this.ratio+_,w=(d-_)/this.ratio+h,D=(f-_)/this.ratio+h,I=Math.max(d,b),$=Math.min(f,x),F=Math.max(v,w),C=Math.min(g,D);r=Tw(r,I,$),n=Tw(n,F,C)}else r=Tw(r,d,f),n=Tw(n,v,g);return{newWidth:r,newHeight:n}},t.prototype.setBoundingClientRect=function(){if(this.props.bounds==="parent"){var r=this.parentNode;if(r){var n=r.getBoundingClientRect();this.parentLeft=n.left,this.parentTop=n.top}}if(this.props.bounds&&typeof this.props.bounds!="string"){var o=this.props.bounds.getBoundingClientRect();this.targetLeft=o.left,this.targetTop=o.top}if(this.resizable){var a=this.resizable.getBoundingClientRect(),i=a.left,l=a.top,s=a.right,c=a.bottom;this.resizableLeft=i,this.resizableRight=s,this.resizableTop=l,this.resizableBottom=c}},t.prototype.onResizeStart=function(r,n){if(!(!this.resizable||!this.window)){var o=0,a=0;if(r.nativeEvent&&jpt(r.nativeEvent)?(o=r.nativeEvent.clientX,a=r.nativeEvent.clientY):r.nativeEvent&&Rw(r.nativeEvent)&&(o=r.nativeEvent.touches[0].clientX,a=r.nativeEvent.touches[0].clientY),this.props.onResizeStart&&this.resizable){var i=this.props.onResizeStart(r,n,this.resizable);if(i===!1)return}this.props.size&&(typeof this.props.size.height<"u"&&this.props.size.height!==this.state.height&&this.setState({height:this.props.size.height}),typeof this.props.size.width<"u"&&this.props.size.width!==this.state.width&&this.setState({width:this.props.size.width})),this.ratio=typeof this.props.lockAspectRatio=="number"?this.props.lockAspectRatio:this.size.width/this.size.height;var l,s=this.window.getComputedStyle(this.resizable);if(s.flexBasis!=="auto"){var c=this.parentNode;if(c){var d=this.window.getComputedStyle(c).flexDirection;this.flexDir=d.startsWith("row")?"row":"column",l=s.flexBasis}}this.setBoundingClientRect(),this.bindEvents();var f={original:{x:o,y:a,width:this.size.width,height:this.size.height},isResizing:!0,backgroundStyle:Zl(Zl({},this.state.backgroundStyle),{cursor:this.window.getComputedStyle(r.target).cursor||"auto"}),direction:n,flexBasis:l};this.setState(f)}},t.prototype.onMouseMove=function(r){var n=this;if(!(!this.state.isResizing||!this.resizable||!this.window)){if(this.window.TouchEvent&&Rw(r))try{r.preventDefault(),r.stopPropagation()}catch{}var o=this.props,a=o.maxWidth,i=o.maxHeight,l=o.minWidth,s=o.minHeight,c=Rw(r)?r.touches[0].clientX:r.clientX,d=Rw(r)?r.touches[0].clientY:r.clientY,f=this.state,v=f.direction,g=f.original,h=f.width,_=f.height,b=this.getParentSize(),x=Upt(b,this.window.innerWidth,this.window.innerHeight,a,i,l,s);a=x.maxWidth,i=x.maxHeight,l=x.minWidth,s=x.minHeight;var w=this.calculateNewSizeFromDirection(c,d),D=w.newHeight,I=w.newWidth,$=this.calculateNewMaxFromBoundary(a,i);this.props.snap&&this.props.snap.x&&(I=vY(I,this.props.snap.x,this.props.snapGap)),this.props.snap&&this.props.snap.y&&(D=vY(D,this.props.snap.y,this.props.snapGap));var F=this.calculateNewSizeFromAspectRatio(I,D,{width:$.maxWidth,height:$.maxHeight},{width:l,height:s});if(I=F.newWidth,D=F.newHeight,this.props.grid){var C=pY(I,this.props.grid[0]),R=pY(D,this.props.grid[1]),k=this.props.snapGap||0;I=k===0||Math.abs(C-I)<=k?C:I,D=k===0||Math.abs(R-D)<=k?R:D}var P={width:I-g.width,height:D-g.height};if(h&&typeof h=="string"){if(h.endsWith("%")){var U=I/b.width*100;I=U+"%"}else if(h.endsWith("vw")){var B=I/this.window.innerWidth*100;I=B+"vw"}else if(h.endsWith("vh")){var z=I/this.window.innerHeight*100;I=z+"vh"}}if(_&&typeof _=="string"){if(_.endsWith("%")){var U=D/b.height*100;D=U+"%"}else if(_.endsWith("vw")){var B=D/this.window.innerWidth*100;D=B+"vw"}else if(_.endsWith("vh")){var z=D/this.window.innerHeight*100;D=z+"vh"}}var A={width:this.createSizeForCssProperty(I,"width"),height:this.createSizeForCssProperty(D,"height")};this.flexDir==="row"?A.flexBasis=A.width:this.flexDir==="column"&&(A.flexBasis=A.height),Kr.flushSync(function(){n.setState(A)}),this.props.onResize&&this.props.onResize(r,v,this.resizable,P)}},t.prototype.onMouseUp=function(r){var n=this.state,o=n.isResizing,a=n.direction,i=n.original;if(!(!o||!this.resizable)){var l={width:this.size.width-i.width,height:this.size.height-i.height};this.props.onResizeStop&&this.props.onResizeStop(r,a,this.resizable,l),this.props.size&&this.setState(this.props.size),this.unbindEvents(),this.setState({isResizing:!1,backgroundStyle:Zl(Zl({},this.state.backgroundStyle),{cursor:"auto"})})}},t.prototype.updateSize=function(r){this.setState({width:r.width,height:r.height})},t.prototype.renderResizer=function(){var r=this,n=this.props,o=n.enable,a=n.handleStyles,i=n.handleClasses,l=n.handleWrapperStyle,s=n.handleWrapperClass,c=n.handleComponent;if(!o)return null;var d=Object.keys(o).map(function(f){return o[f]!==!1?m.createElement(zpt,{key:f,direction:f,onResizeStart:r.onResizeStart,replaceStyles:a&&a[f],className:i&&i[f]},c&&c[f]?c[f]:null):null});return m.createElement("div",{className:s,style:l},d)},t.prototype.render=function(){var r=this,n=Object.keys(this.props).reduce(function(i,l){return Hpt.indexOf(l)!==-1||(i[l]=r.props[l]),i},{}),o=Zl(Zl(Zl({position:"relative",userSelect:this.state.isResizing?"none":"auto"},this.props.style),this.sizeStyle),{maxWidth:this.props.maxWidth,maxHeight:this.props.maxHeight,minWidth:this.props.minWidth,minHeight:this.props.minHeight,boxSizing:"border-box",flexShrink:0});this.state.flexBasis&&(o.flexBasis=this.state.flexBasis);var a=this.props.as||"div";return m.createElement(a,Zl({ref:this.ref,style:o,className:this.props.className},n),this.state.isResizing&&m.createElement("div",{style:this.state.backgroundStyle}),this.props.children,this.renderResizer())},t.defaultProps={as:"div",onResizeStart:function(){},onResize:function(){},onResizeStop:function(){},enable:{top:!0,right:!0,bottom:!0,left:!0,topRight:!0,bottomRight:!0,bottomLeft:!0,topLeft:!0},style:{},grid:[1,1],lockAspectRatio:!1,lockAspectRatioExtraWidth:0,lockAspectRatioExtraHeight:0,scale:1,resizeRatio:1,snapGap:0},t}(m.PureComponent);const hY=m.forwardRef((e,t)=>{const{children:r,activeContent:n,drivenContent:o,defaultSize:a=100,size:i,style:l,allowCollapse:s=!0,onResizeStop:c,defaultCollapse:d,collapse:f,onCollapseChange:v,isLazy:g,className:h,expandContent:_,drivenContentClassName:b,...x}=e,w="horizontal",[D,I]=eY({value:i,defaultStateValue:a}),[$,F]=eY({value:f,defaultValue:d,defaultStateValue:!1}),[C,R]=m.useState(!1),[k,P]=m.useState(!1),[U,B]=m.useState(!1),[z,A]=m.useState($),M=m.useRef(),N=m.useRef([]),T=m.useRef(!0),[O]=nY("ResizeContainer"),[j,K]=m.useState(!0);m.useEffect(()=>{v?.($)},[$,v]);const Q=w==="horizontal",Y=m.useMemo(()=>({width:D,height:"100%"}),[D,Q]),X=m.useMemo(()=>$?0:j?D:0,[D,$,j]),G={width:a,height:"100%"},H={top:!1,right:!0,bottom:!1,left:!1},V=Gt(h,{"fbiz-absolute fbiz-z-[1]":g}),Z=m.useCallback((ie,ce,oe,fe)=>{R(!1),I(ve=>ppt(ve)?ve+(ce==="right"?fe.width:fe.height):ce==="right"?oe.clientWidth:oe.clientHeight),c?.(ie,ce,oe,fe)},[c,I]),te=m.useCallback(()=>{R(!0)},[]),J=m.useCallback(ie=>{M.current.classList.remove(...N.current),N.current=[`!fbiz-w-[${ie.scrollWidth}px]`],M.current.classList.add(...N.current)},[]),ne=m.useCallback(()=>{M.current.classList.remove(...N.current),N.current=["!fbiz-w-0","!fbiz-min-w-0"],M.current.classList.add(...N.current)},[]),re=m.useCallback(()=>{M.current.classList.remove(...N.current),N.current=[]},[]);return m.useImperativeHandle(t,()=>({setCollapse:F,setPin:K,getPin:()=>j,getCollapse:()=>$})),m.useEffect(()=>{var ie;T.current&&(T.current=!1,$&&((ie=M.current)==null||ie.classList.add("fbiz-hidden")))},[$]),m.useEffect(()=>{var ie;$||(ie=M.current)==null||ie.classList.remove("fbiz-hidden")},[$]),$r("div",{style:l,className:Gt({"fbiz-flex fbiz-h-full fbiz-flex-col":!Q,"fbiz-relative fbiz-flex fbiz-w-full":Q}),children:[$&&z?_??se(Bh,{content:O.EXPAND,placement:"right",children:se("div",{className:"fbiz-solid-border-r fbiz-solid-border-t fbiz-solid-border-b fbiz-absolute fbiz-top-[23%] fbiz-z-[1] fbiz-flex fbiz-cursor-pointer fbiz-items-center fbiz-rounded-ee-[8px] fbiz-rounded-se-[8px] fbiz-bg-container fbiz-pb-[16px] fbiz-pt-[16px] fbiz-shadow-s hover:fbiz-border-primary hover:fbiz-text-primary",onClick:()=>{F(!1)},"aria-label":"expand-icon",children:se(Dpt,{className:"fbiz-inline-block fbiz-h-[16px] fbiz-text-[16px]"})})}):null,se(Ppt,{in:!$,classNames:{enter:"fbiz-opacity-0",enterActive:"fbiz-opacity-100 fbiz-transition-all fbiz-ease-linear fbiz-duration-200",exitActive:"fbiz-opacity-0 fbiz-transition-all fbiz-ease-linear fbiz-duration-200",exitDone:"fbiz-hidden"},onEnter:()=>{ne(),A(!1)},onEntering:J,onEntered:re,onExit:J,onExiting:ne,onExited:()=>{re(),A(!0)},enter:!0,exit:!0,timeout:200,children:$r(Wpt,{ref:ie=>{M.current=ie?.resizable},className:V,style:$?{...g?{transform:`translateX(${-D}px)`}:{}}:{...g?{position:"absolute"}:{}},handleStyles:{right:{width:10,right:-5}},handleComponent:{right:se("div",{className:"fbiz-absolute fbiz-inset-0",onMouseEnter:()=>P(!0),onMouseLeave:()=>P(!1),children:se(Ipt,{className:"fbiz-absolute fbiz-left-[-50%] fbiz-top-[50%]"})})},handleClasses:{right:'before:fbiz-absolute before:fbiz-left-[5px] before:fbiz-top-0 before:fbiz-bottom-0 before:fbiz-width-[1px] before:fbiz-solid-split-l before:fbiz-content-[""] hover:before:fbiz-border-primary active:before:fbiz-border-primary fbiz-z-[1]'},defaultSize:G,enable:H,size:Y,onResizeStop:Z,onResize:te,...x,children:[s&&!C?_??se(Bh,{content:O.COLLAPSE,placement:"right",children:se("div",{style:{display:k||U?"":"none"},className:"fbiz-solid-border fbiz-absolute fbiz-right-[-8px] fbiz-top-[23%] fbiz-z-[10] fbiz-box-border fbiz-flex fbiz-w-[16px] fbiz-cursor-pointer fbiz-items-center fbiz-justify-center fbiz-rounded-[29px] fbiz-bg-container fbiz-pb-[16px] fbiz-pt-[16px] fbiz-shadow-s hover:fbiz-border-primary hover:fbiz-text-primary",onClick:()=>{F(ie=>!ie)},onMouseEnter:()=>B(!0),onMouseLeave:()=>B(!1),children:se(wpt,{className:"fbiz-inline-block fbiz-h-[16px] fbiz-text-[16px]"})})}):null,n]})}),se("div",{className:Gt("fbiz-min-w-0 fbiz-flex-1","driven-wrapper",g?"fbiz-z[1] fbiz-absolute":"",b),style:{...g?{inset:0,left:X}:{}},children:o})]})});hY.displayName="ResizeContainer";const Vpt={locale:"ja",dialog:{okText:"OK",cancelText:"キャンセル",dragTip:"長押ししてウィンドウをドラッグする"},prompt:{okText:"OK",cancelText:"キャンセル"},popConfirm:{okText:"OK",cancelText:"キャンセル"},alert:{okText:"OK",cancelText:"キャンセル"},check:{checkAll:"すべて選択"},combo:{searchEmpty:"データが見つかりません",searchPlaceholder:"検索",searching:"検索中...",allCheck:"すべて選択",allCheckInSearch:"すべての結果を選択",emptyTip:"選択するデータがありません",loading:"読み込み中",clickToLoadMore:"クリックしてさらに読み込む"},upload:{uploadText:"ファイルを選択"},datetime:{clear:"クリア",today:"今日",month:"今月",now:"この瞬間",ok:"わかりました",time:"時間",shortSun:"日",shortMon:"1",shortTue:"2",shortWed:"3",shortThu:"4",shortFri:"5",shortSat:"6",january:"1月",february:"2月",march:"3月",april:"4月",may:"5月",june:"6月",july:"7月",august:"8月",september:"9月",october:"10月",november:"11月",december:"12月",january_m:"1月",february_m:"2月",march_m:"3月",april_m:"4月",may_m:"5月",june_m:"6月",july_m:"7月",august_m:"8月",september_m:"9月",october_m:"10月",november_m:"11月",december_m:"12月",hour:"時間",minute:"分",second:"秒"},cascader:{searchPlaceholder:"検索",searchEmpty:"データが見つかりません",searching:"検索中..."},filePreview:{download:"ダウンロード",noSupportPreview:"現在のファイルの種類はオンラインプレビューをサポートしていません",zoomIn:"増幅",zoomOut:"縮小",rotateToRight:"右に回転",viewOrigin:"元の画像を表示",loading:"読み込み中です。お待ちください..."},pagination:{currentPage:"ページ {page}"},colorPicker:{recommendColor:"推奨色",customColor:"カスタムカラー",alpha:"透明度",noMessage:"まだありません"},image:{preview:"プレビュー"},typography:{edit:"編集",copy:"コピー",copied:"レプリケーションに成功しました",expand:"展開"},select:{allCheck:"すべて選択",allCheckInSearch:"すべての結果を選択",emptyTip:"選択するデータがありません",searchPlaceholder:"検索"},treeSelect:{emptyTip:"選択するデータがありません",searchPlaceholder:"検索"}},Kpt={...Vpt,LogicTree:{AND:"そして",OR:"または",SWITCH:"スイッチ",ADD:"に追加",DELETE:"消去"},FormulaPane:{FUNC:"関数",SEARCH:"検索",FUNC_DEF:"関数の解釈",PARAM_DEF:"パラメータの説明",EXAMPLE:"例",FIELD:"分野",INPUT:"入ってください",DESC_TIP:"機能の説明を表示するには、機能を入力または選択してください"},ResizeContainer:{COLLAPSE:"近い",EXPAND:"拡大する"}},qpt={locale:"ko",dialog:{okText:"확인",cancelText:"취소",dragTip:"창을 드래그하려면 길게 누르기"},prompt:{okText:"확인",cancelText:"취소"},popConfirm:{okText:"확인",cancelText:"취소"},alert:{okText:"확인",cancelText:"취소"},check:{checkAll:"모두 선택"},combo:{searchEmpty:"데이터를 찾을 수 없음",searchPlaceholder:"검색",searching:"검색 중...",allCheck:"모두 선택",allCheckInSearch:"모든 결과 선택",emptyTip:"선택할 데이터가 없습니다.",loading:"불러오는 중",clickToLoadMore:"더 불러오려면 클릭"},upload:{uploadText:"파일 선택"},datetime:{clear:"비어 있음",today:"오늘",month:"이번 달",now:"현재",ok:"확인",time:"시간",shortSun:"일",shortMon:"하나",shortTue:"둘",shortWed:"셋",shortThu:"넷",shortFri:"다섯",shortSat:"여섯",january:"1월",february:"2월",march:"3월",april:"4월",may:"5월",june:"6월",july:"7월",august:"8월",september:"9월",october:"10월",november:"11월",december:"12월",january_m:"1월",february_m:"2월",march_m:"3월",april_m:"4월",may_m:"5월",june_m:"6월",july_m:"7월",august_m:"8월",september_m:"9월",october_m:"10월",november_m:"11월",december_m:"12월",hour:"시간",minute:"분",second:"초"},cascader:{searchPlaceholder:"검색",searchEmpty:"데이터를 찾을 수 없음",searching:"검색중..."},filePreview:{download:"다운로드",noSupportPreview:"현재 파일 형식은 온라인 미리보기를 지원하지 않습니다.",zoomIn:"증폭",zoomOut:"축소",rotateToRight:"Простовання",viewOrigin:"원본 이미지 보기",loading:"불러오는 중, 잠시만 기다려 주세요..."},pagination:{currentPage:"{page} 페이지"},colorPicker:{recommendColor:"추천 색상",customColor:"사용자 지정 색상",alpha:"투명도",noMessage:"아직 없음"},image:{preview:"미리보기"},typography:{edit:"편집",copy:"복사",copied:"복제 성공",expand:"펼치기"},select:{allCheck:"모두 선택",allCheckInSearch:"모든 결과 선택",emptyTip:"선택할 데이터가 없습니다.",searchPlaceholder:"검색"},treeSelect:{emptyTip:"선택할 데이터가 없습니다.",searchPlaceholder:"검색"}},Ypt={...qpt,LogicTree:{AND:"그리고",OR:"또는",SWITCH:"스위치",ADD:"다음에 추가",DELETE:"삭제"},FormulaPane:{FUNC:"기능",SEARCH:"찾다",FUNC_DEF:"함수 해석",PARAM_DEF:"매개변수 설명",EXAMPLE:"예",FIELD:"필드",INPUT:"들어 오세요",DESC_TIP:"기능 설명을 보려면 기능을 입력하거나 선택하세요."},ResizeContainer:{COLLAPSE:"닫다",EXPAND:"확장하다"}},Gpt={locale:"zh-cn",dialog:{okText:"确定",cancelText:"取消",dragTip:"长按可拖拽窗口"},prompt:{okText:"确定",cancelText:"取消"},popConfirm:{okText:"确定",cancelText:"取消"},alert:{okText:"确定",cancelText:"取消"},check:{checkAll:"全选"},combo:{searchEmpty:"未搜索到数据",searchPlaceholder:"搜索",searching:"搜索中...",allCheck:"全选",allCheckInSearch:"搜索结果全选",emptyTip:"没有可选择的数据",loading:"正在加载",clickToLoadMore:"点击加载更多"},upload:{uploadText:"选择文件"},datetime:{clear:"清空",today:"今天",month:"本月",now:"此刻",ok:"确定",time:"时间",shortSun:"日",shortMon:"一",shortTue:"二",shortWed:"三",shortThu:"四",shortFri:"五",shortSat:"六",january:"一月",february:"二月",march:"三月",april:"四月",may:"五月",june:"六月",july:"七月",august:"八月",september:"九月",october:"十月",november:"十一月",december:"十二月",january_m:"1月",february_m:"2月",march_m:"3月",april_m:"4月",may_m:"5月",june_m:"6月",july_m:"7月",august_m:"8月",september_m:"9月",october_m:"10月",november_m:"11月",december_m:"12月",hour:"时",minute:"分",second:"秒"},cascader:{searchPlaceholder:"搜索",searchEmpty:"未搜索到数据",searching:"搜索中..."},filePreview:{download:"下载",noSupportPreview:"当前文件类型不支持在线预览",zoomIn:"放大",zoomOut:"缩小",rotateToRight:"向右旋转",viewOrigin:"查看原图",loading:"加载中,请稍后..."},pagination:{currentPage:"第 {page} 页"},colorPicker:{recommendColor:"推荐颜色",customColor:"自定义颜色",alpha:"透明度",noMessage:"暂无"},image:{preview:"预览"},typography:{edit:"编辑",copy:"复制",copied:"复制成功",expand:"展开"},select:{allCheck:"全选",allCheckInSearch:"搜索结果全选",emptyTip:"没有可选择的数据",searchPlaceholder:"搜索"},treeSelect:{emptyTip:"没有可选择的数据",searchPlaceholder:"搜索"}},_Y={...Gpt,LogicTree:{AND:"且",OR:"或",SWITCH:"切换",ADD:"添加",DELETE:"删除"},FormulaPane:{FUNC:"函数",SEARCH:"搜索",FUNC_DEF:"函数释义",PARAM_DEF:"参数说明",EXAMPLE:"示例",FIELD:"字段",INPUT:"请输入",DESC_TIP:"请输入或选择函数来查看函数释义"},ResizeContainer:{COLLAPSE:"收起",EXPAND:"展开"}};function Xpt(e){const{initialItems:t=[],getKey:r=v=>v.id||v.key,getChildren:n=v=>v.children}=e,[o,a]=m.useState(()=>s(t,new Map)),{items:i,nodeMap:l}=o;function s(v=[],g,h){return{items:v.map(_=>{const b={key:r(_),parentKey:h,value:_,children:[]};return b.children=s(n(_),g,b.key).items,g.set(b.key,b),b}),nodeMap:g}}function c(v,g,h,_){var b,x;let w=_.get(g);if(!w)return{items:v,nodeMap:_};const D=new Map(_);let I=h(w);for(I==null?f(w,D):d(I,D);w!=null&&w.parentKey;){const $=D.get(w.parentKey),F={key:$.key,parentKey:$.parentKey,value:$.value,children:[]};let{children:C}=$;I==null&&(C=C.filter(R=>R!==w),$!=null&&$.value.children&&($.value.children=$?.value.children.filter(R=>R.key!==w?.key))),F.children=C.map(R=>R==w?I:R),F.value.children=(x=(b=$?.value)==null?void 0:b.children)==null?void 0:x.map(R=>R.key==w?.key?I?.value:R),D.set(F.key,F),I=F,w=$}return I==null&&(v=v.filter($=>$!==w)),{items:v.map($=>$==w?I:$),nodeMap:D}}function d(v,g){g.set(v.key,v);for(const h of v.children)d(h,g)}function f(v,g){g.delete(v.key);for(const h of v.children)f(h,g)}return{items:i,getItem(v){return l.get(v)},insert(v,g,...h){a(({items:_,nodeMap:b})=>{const{items:x,nodeMap:w}=s(h,b,v);return v==null?{items:[..._.slice(0,g),...x,..._.slice(g)],nodeMap:w}:c(_,v,D=>({key:D.key,parentKey:D.parentKey,value:{...D.value,children:[...D.children.slice(0,g).map(I=>I.value),...x.map(I=>I.value),...D.children.slice(g).map(I=>I.value)]},children:[...D.children.slice(0,g),...x,...D.children.slice(g)]}),w)})},insertBefore(v,...g){const h=l.get(v);if(!h)return;const _=l.get(h.parentKey),b=(_?_.children:i).indexOf(h);this.insert(_?.key,b,...g)},insertAfter(v,...g){const h=l.get(v);if(!h)return;const _=l.get(h.parentKey),b=(_?_.children:i).indexOf(h);this.insert(_?.key,b+1,...g)},prepend(v,...g){this.insert(v,0,...g)},append(v,...g){if(v==null)this.insert(null,i.length,...g);else{const h=l.get(v);if(!h)return;this.insert(v,h.children.length,...g)}},remove(...v){v.length!=0&&a(({items:g,nodeMap:h})=>{let _=g,b=h,x;for(const w of v)x=c(_,w,()=>null,b),b=x.nodeMap,_=x.items;return{items:_,nodeMap:b}})},move(v,g,h){a(({items:_,nodeMap:b})=>{const x=b.get(v);if(!x)return{items:_,nodeMap:b};const{items:w,nodeMap:D}=c(_,v,()=>null,b),I={...x,parentKey:g};return g==null?(d(I,D),{items:[...w.slice(0,h),I,...w.slice(h)],nodeMap:D}):c(w,g,$=>({key:$.key,parentKey:$.parentKey,value:{...$.value,children:[...$.children.slice(0,h).map(F=>F.value),I.value,...$.children.slice(h).map(F=>F.value)]},children:[...$.children.slice(0,h),I,...$.children.slice(h)]}),D)})},update(v,g){a(({items:h,nodeMap:_})=>c(h,v,b=>{const x={key:b.key,parentKey:b.parentKey,value:{key:b.key,...g},children:[]},w=s(n(g),_,x.key);return x.children=w.items,x},_))}}}var no=(e=>(e[e.AND=1]="AND",e[e.OR=2]="OR",e[e.LEAF=3]="LEAF",e))(no||{});const mY=({info:e,disabled:t=!1,itemRender:r,onRemove:n,onAdd:o,menu:a,id:i,onChange:l,onSwitch:s,canAddNode:c,parentType:d,addButtonProps:f,deleteButtonProps:v})=>{const{value:{type:g},children:h}=e,[_]=nY("LogicTree"),b=m.useMemo(()=>g===1||g===2,[g]),x=m.useMemo(()=>g===1?_.AND:_.OR,[_.AND,_.OR,g]),w=m.useCallback(()=>{i&&n?.(i)},[i,n]),D=m.useCallback(C=>{C.key&&o?.(i,C.key)},[i,o]),I=C=>{switch(C.key){case 3:n?.(i);break;case 1:s?.(i);break;default:o?.(i,C.key);break}},$=m.useCallback((C,R)=>{const k=r?.(C);return ou(k)?null:E.cloneElement(k,{value:C,onChange:P=>{var U,B;(B=(U=k.props).onChange)==null||B.call(U,P),l?.(R,{type:e.value.type,value:P})}})},[r,l,e.value.type]),F=m.useMemo(()=>a.map(C=>({...C,disabled:C.type!==d&&!c(i,C.type)})),[c,i,a,d]);return b?$r("div",{className:Gt("logic-wrapper","fbiz-solid-border fbiz-m-[4px_8px] fbiz-inline-flex fbiz-flex-1 fbiz-items-stretch fbiz-rounded-lg fbiz-bg-fill-quaternary"),children:[se(Wh,{trigger:"click",disabled:t,placement:"right-top",menu:{items:[{label:_.SWITCH,key:1,icon:se(Qq,{})},{label:_.ADD,key:2,icon:se(Vq,{}),children:F},{label:_.DELETE,key:3,icon:se(Xq,{}),danger:!0,className:"fbiz-text-error [&>.item-icon]:!fbiz-text-error"}],onAfterSelect:I},children:$r("div",{className:Gt("condition fbiz-solid-border-r fbiz-relative fbiz-flex fbiz-w-[24px] fbiz-cursor-pointer fbiz-flex-col fbiz-items-center fbiz-justify-center fbiz-rounded-es-lg fbiz-rounded-ss-lg",{"hover:fbiz-bg hover:fbiz-bg-text-hover active:fbiz-bg-text-active":!t,"fbiz-text-disabled":t}),children:[se("div",{className:"fbiz-switch fbiz-absolute fbiz-top-1/2 fbiz--mt-[12px] fbiz--translate-y-full",title:_.SWITCH,children:"..."}),x]})}),se("div",{className:Gt("children-wrapper","fbiz-flex fbiz-flex-1 fbiz-flex-col fbiz-p-[4px_0]"),children:h.map(C=>se(mY,{disabled:t,id:C.key,info:C,menu:a,addButtonProps:f,deleteButtonProps:v,canAddNode:c,parentType:g,itemRender:r,onAdd:o,onRemove:n,onChange:l,onSwitch:s},C.key))})]}):$r("div",{className:Gt("leaf-wrapper","leaf-node","fbiz-flex fbiz-h-control fbiz-p-[4px_8px]","fbiz-items-center",{"hover:fbiz-bg-fill-secondary":!t}),children:[se("div",{className:"leaf-render fbiz-flex-1",children:$(e.value.value,i)}),$r("div",{className:"fbiz-flex fbiz-items-center fbiz-gap-gapSm",children:[se(Wh,{disabled:t,trigger:"click",menu:{items:F,onAfterSelect:D},children:se(Ar,{disabled:t,className:"add-button",type:"text-normal",size:"small",icon:se(Vq,{}),...f})}),se(Ar,{disabled:t,className:"delete-button",type:"text-normal",size:"small",icon:se(Xq,{}),onClick:w,...v})]})]})},Zpt=e=>{const[t,r]=m.useState(e),[n,o]=m.useState(e);return n!==e&&(o(e),r(e)),[t,r]},Qpt=({value:e,onClick:t,disabled:r,items:n=[],operationButtonProps:o,canAddNode:a})=>{const[i,l]=Zpt(e),s=m.useMemo(()=>n.find(v=>v?.key===i),[i,n]),c=s?.label,d=m.useCallback(()=>{t(i,s.value)},[i,t,s]),f=m.useCallback(()=>{l(i===no.AND?no.OR:no.AND)},[i,l]);return $r(Ar.Group,{className:"switch-wrapper",...o,children:[se(Ar,{disabled:r||!a(null,i),onClick:d,children:c}),se(Ar,{disabled:r,icon:se(Qq,{}),onClick:f})]})};let Aw;const Jpt=new Uint8Array(16);function evt(){if(!Aw&&(Aw=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!Aw))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return Aw(Jpt)}const Ao=[];for(let e=0;e<256;++e)Ao.push((e+256).toString(16).slice(1));function tvt(e,t=0){return Ao[e[t+0]]+Ao[e[t+1]]+Ao[e[t+2]]+Ao[e[t+3]]+"-"+Ao[e[t+4]]+Ao[e[t+5]]+"-"+Ao[e[t+6]]+Ao[e[t+7]]+"-"+Ao[e[t+8]]+Ao[e[t+9]]+"-"+Ao[e[t+10]]+Ao[e[t+11]]+Ao[e[t+12]]+Ao[e[t+13]]+Ao[e[t+14]]+Ao[e[t+15]]}const rvt=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),xY={randomUUID:rvt};function Jh(e,t,r){if(xY.randomUUID&&!t&&!e)return xY.randomUUID();e=e||{};const n=e.random||(e.rng||evt)();if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,t){r=r||0;for(let o=0;o<16;++o)t[r+o]=n[o];return t}return tvt(n)}function bY(e){const t=[];return l4(e,r=>{r.value.type!==no.LEAF?t.push({type:r.value.type,children:bY(r.children)}):t.push({value:r.value.value})}),t}function kw(e){let t=0;return l4(e,r=>{let n=1;r.value.type!==no.LEAF&&(n+=kw(r.children)),t{t.key=t?.key??Jh(),t.children&&yY(t.children)})}const $i=[no.AND,no.OR],nvt=m.forwardRef(({defaultItems:e,itemRender:t,className:r,operations:n=[],maxLevel:o=5,paneStyle:a,paneClassName:i,disabled:l=!1,addButtonProps:s,deleteButtonProps:c,operationButtonProps:d,onAdd:f,onChange:v,onRemove:g},h)=>{const _=m.useMemo(()=>{const A=lft(e);return yY(A),A},[e]),b=Xpt({initialItems:_}),x=Jq(()=>{v?.()}),{items:w,getItem:D}=b;m.useImperativeHandle(h,()=>({getTreeValue:()=>bY(w)}));const I=m.useMemo(()=>{const A=new Map;return n.forEach((M,N)=>{M.forEach(T=>{A.set(`${N}-logic-${T.key}`,{...T})})}),A},[n]),$=m.useMemo(()=>kw(w),[w]),F=m.useMemo(()=>{const A=[];return n.forEach((M,N)=>{M.forEach(T=>{A.push({label:T.label,key:`${N}-logic-${T.key}`,type:T.key})})}),A},[n]),C=m.useCallback((A,M)=>{let N=0,T=M;const O=kw([A]);for(;T;)T=D(T.parentKey),N+=1;return N+O},[D]),R=m.useCallback((A,M,N)=>{const T=b.getItem(A),O=M===no.AND?0:1;if(!ou(T)){const j=T.value,K=b.getItem(T.parentKey),Q={key:Jh(),type:no.LEAF,value:N},Y=s4(K?.children,G=>G.key===T.key);if(j.type===$i[O]){b.append(A,Q);return}const X=K?.value;if(j.type===$i[1-O]&&X?.type===$i[O]){b.insert(K.key,Y+1,Q);return}if(j.type===$i[1-O]&&X?.type!==$i[O]||X?.type===$i[1-O]||!K){const G={key:Jh(),type:M,children:[Q]};K?b.insert(K.key,Y,G):b.append(null,G),b.move(A,G.key,0);return}b.insert(K?.key,Y+1,Q)}},[b]),k=m.useCallback((A,M,N)=>{if(!ou(N))R(N,A,M);else{const T={key:Jh(),type:no.LEAF,value:M},O=i4(w);if(ou(O))b.append(null,T);else if(O.value.type===A)b.append(O.key,T);else{const j={key:Jh(),type:A,children:[T]};b.append(null,j),b.move(O.key,j.key,0)}}f?.()},[R,w,f,b]),P=m.useCallback((A,M)=>{if(ou(A)){const N=i4(w);return ou(N)||N.value.type===M?!0:${const M=b.getItem(A);if(!ou(M)){const N=b.getItem(M.parentKey);if(N?.children.length<=2){const T=b.getItem(N.parentKey),O=s4(T?.children,j=>j.key===N.key);if(N.children.length===2){const j=spt(N.children,K=>K.key!==A);j!=null&&j.key&&b.move(j.key,T?.key,O<0?0:O)}b.remove(M.key,N.key)}else b.remove(M.key);g?.()}},[g,b]),B=m.useCallback((A,M)=>{b.update(A,M)},[b]),z=m.useCallback(A=>{const M=D(A),N=M.value.type===no.AND?no.OR:no.AND;b.update(A,{...M.value,type:N})},[D,b]);return m.useEffect(()=>{x?.()},[w]),$r("div",{className:r,children:[se("div",{className:Gt(i,"fbiz-overflow-auto"),style:a,children:se("div",{className:"inner-pane [&>.leaf-node]:fbiz-solid-border fbiz-flex [&>.leaf-node]:fbiz-flex-1 [&>.leaf-node]:fbiz-rounded-lg [&>.logic-wrapper]:fbiz-m-[0]",children:w.map(A=>se(mY,{disabled:l,id:A.key,info:A,menu:F,addButtonProps:s,deleteButtonProps:c,itemRender:t,onRemove:U,onAdd:(M,N)=>{const{key:T,value:O}=I.get(N);k(T,O,M)},canAddNode:P,onChange:B,onSwitch:z},A.key))})}),se(gT,{size:10,className:"header fbiz-mt-[10px]",children:n.map((A,M)=>se(Qpt,{operationButtonProps:d,disabled:l,items:A,value:A[0].key,onClick:k,canAddNode:P},M))})]})}),ovt=E.createContext({search:"match"}),avt=({locale:e,search:t="match",children:r,...n})=>{const o=m.useMemo(()=>({search:t}),[t]);return se(tY.Provider,{value:e,children:se(ovt.Provider,{value:o,children:se(wh,{locale:e,...n,children:r})})})},VYt="",ivt=()=>{const e=qN();return{zh_CN:_Y,en_US:rY,ja_JP:Kpt,ko_KR:Ypt}[e]||_Y},lvt=()=>({theme:_n,locale:ivt()}),svt=kW.add;kW.add=e=>svt({className:Gt(e.className,"fdi-global-adaptor"),...e});class cvt{constructor(){this.configs=new Map}inject(t){this.configs.has(t.type)||(this.configs.set(t.type,{...t,key:t.name+Math.abs(t.type)}),this.configAdd(this.configs.get(t.type)))}getCustomConfig(t){return typeof t=="number"?this.configs.get(t):Array.from(this.configs.values()).find(r=>r.key===t)}isCustomTable(t){return this.configs.has(t)}getAddCustomTableMenuKeys(){return[...Array.from(this.configs.values()).map(t=>t.key)]}getCustomTableIcon(t){return this.getIconCls(this.configs.get(t))}getCustomTables(){return Array.from(this.configs.values())}getIconCls(t){return t?`custom-${t.key}-table`:""}configAdd(t){const r=this.getIconCls(t),n=document.createElement("style");n.innerHTML=` .${r} .x-icon,.icon-${r}-spider .x-icon,.icon-${r}-spider-preview .x-icon { background: url('${t.spiderIcon}') no-repeat center center; background-size: contain; @@ -154,12 +151,12 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho background-size: contain; display: block; } - `,document.head.appendChild(n),BI.config("fdi.provider.editable.action",a=>{a.addAction({key:t.key,iconName:`icon-${r}-spider`,localeKey:t.displayName})})}}class Dft{constructor(){this.menus=new Map}addMenu(t){this.menus.set(t.value,t)}removeMenu(t){this.menus.delete(t)}}var Xr=(e=>(e.DIVIDER="divider",e.ADD_FOLDER="addFolder",e.RENAME="rename",e.MOVE="move",e.DELETE="delete",e.EDIT="edit",e.RESOURCE_INFO="resourceInfo",e.ADD_RELATION="addRelation",e.ADD_INDICATOR="addIndicator",e.ADD_DIMENSION="addDimension",e.ADD_BUSINESS_MODEL="addBusinessModel",e.ADD_TAG="addTag",e.ADD_DB="addDB",e.ADD_SQL="addSQL",e.ADD_EXCEL="addExcel",e.FOLDER_UPDATE="folderUpdate",e.UPDATE_PROGRESS="updateProgress",e.PUBLISH="publish",e.CANCEL_PUBLISH="cancelPublish",e.EDIT_SQL="editSQL",e.UPDATE_EXCEL="updateExcel",e.EDIT_CUSTOM_TABLE="editCustomTable",e.ENTER_ANALYSIS="enterAnalysis",e.ENTER_MODEL_CENTER="enterModelCenter",e.IMPORT_INDICATOR="importIndicator",e.IMPORT_DIMENSION="importDimension",e))(Xr||{});const Ift={[Xr.ADD_FOLDER]:{iconName:"svg-folder_close",localeKey:"FDI_Add_Folder"},[Xr.ADD_INDICATOR]:{iconName:"icon-add",localeKey:"FDI_Add_Indicator"},[Xr.ADD_DIMENSION]:{iconName:"icon-add",localeKey:"FDI_Add_Dimension"},[Xr.ADD_BUSINESS_MODEL]:{iconName:"icon-add",localeKey:"FDI_Add_Business_Model"},[Xr.IMPORT_INDICATOR]:{iconName:"icon-import",localeKey:"FDI_Import_Indicator"},[Xr.IMPORT_DIMENSION]:{iconName:"icon-import",localeKey:"FDI_Import_Dimension"},[Xr.RENAME]:{iconName:"icon-rename",localeKey:"FDI_Rename"},[Xr.MOVE]:{iconName:"icon-move",localeKey:"FDI_Move_To"},[Xr.DELETE]:{iconName:"icon-delete",localeKey:"FDI_Delete"},[Xr.EDIT]:{iconName:"icon-edit",localeKey:"FDI_Edit"},[Xr.ADD_RELATION]:{iconName:"icon-add",localeKey:"FDI_Add_Relation"},[Xr.ADD_DB]:{iconName:"icon-database-table-spider",localeKey:"FDI_DB_Table"},[Xr.ADD_SQL]:{iconName:"icon-sql-table-spider",localeKey:"FDI_Sql_Table"},[Xr.ADD_EXCEL]:{iconName:"icon-excel-table-spider",localeKey:"FDI_Excel_Table"},[Xr.UPDATE_PROGRESS]:{iconName:"icon-update-progress",localeKey:"FDI_Update_Progress"},[Xr.FOLDER_UPDATE]:{iconName:"icon-update",localeKey:"FDI_Folder_Update"},[Xr.PUBLISH]:{iconName:"icon-publish",localeKey:"FDI_Publish"},[Xr.CANCEL_PUBLISH]:{iconName:"icon-cancel-publish",localeKey:"FDI_Cancel_Publish"},[Xr.EDIT_SQL]:{iconName:"icon-edit",localeKey:"FDI_Modify_SQL"},[Xr.UPDATE_EXCEL]:{iconName:"icon-global-update",localeKey:"FDI_Update_Excel"},[Xr.EDIT_CUSTOM_TABLE]:{iconName:"icon-custom-edit",localeKey:"FDI_Modify_Config"},[Xr.ENTER_ANALYSIS]:{iconName:"icon-edit",localeKey:"FDI_Enter_Analysis"},[Xr.ENTER_MODEL_CENTER]:{iconName:"icon-edit",localeKey:"FDI_Enter_Model_Center"},[Xr.RESOURCE_INFO]:{iconName:"icon-resource-info",localeKey:"FDI_Resource_Info"}};class Fft{constructor(){this.actions=new Map}addAction(t){this.actions.set(t.key,t)}removeAction(t){this.actions.delete(t)}getActionProps(t){return Ift[t]??this.actions.get(t)}}const RT={"bi.provider.datacenter":new Dft,"bi.provider.custom.table":new wft,"fdi.provider.editable.action":new Fft},$ft=BI.config;BI.config=(...e)=>{const t=e[0];Object.keys(RT).includes(t)&&e[1]?.(RT[t]),$ft(...e)};const Sft=e=>RT[e];class Eft{constructor(){this.eventMap={}}on(t,r){return this.eventMap[t]?this.eventMap[t].add(r):this.eventMap[t]=new Set([r]),()=>{this.off(t,r)}}once(t,r){const n=(...a)=>{r(...a),this.off(t,n)};return this.eventMap[t]?this.eventMap[t].add(n):this.eventMap[t]=new Set([n]),()=>{this.off(t,n)}}off(t,r){return this.eventMap[t]&&this.eventMap[t].delete(r),r}emit(t,...r){this.eventMap[t]&&this.eventMap[t].forEach(n=>{try{n.call(this,...r)}catch(a){console.error(a)}})}}class Cft extends Eft{constructor(){super(),this.subscribeQueue=[]}initSocket(){let t=null,r=window;try{for(;r&&r.parent!==r&&!r.Dec;)r=r.parent;r&&r.Dec&&r.Dec.socket&&(t=r.Dec.socket)}catch{}return t}connect(){this.wire=this.initSocket()}shutdown(){this.wire?.disconnect()}on(t,r){return this.wire?.on(t,r),()=>{this.off(t,r)}}off(t,r){return this.wire?.off(t,r),r}emit(t,r,n,a){a?.subscribe&&this.subscribeQueue.push({key:t,data:r}),a?.subscribe===!1&&(this.subscribeQueue=this.subscribeQueue.filter(o=>o.key!==t)),this.wire?.emit(t,r,n)}}const Tft=new Cft;function Rft(e={engineType:el.SPIDER,type:ra.DATABASE}){const t=Sft("bi.provider.custom.table"),r=e?.engineType??el.SPIDER;return`icon-${t.isCustomTable(e.type)?t.getCustomTableIcon(e.type):NV[e.type]??NV[ra.DATABASE]}-${r}`}function bd(e){return PV[e]?.iconName}function vq(e){return PV[e]?.localeKey}const Oft=(e,t)=>{let r=0,n=!0;for(;n;){const a=`${t}${++r}`;n=e.some(o=>o===a)}return`${t}${r}`},hq=e=>{const{name:t,transferName:r}=e;return Te.isNil(r)||Te.isEmpty(r)?t:r},Aft=e=>{const{width:t,keys:r,ratios:n,minWidths:a}=e;let o=r.reduce((s,c)=>s+n[c],0),i=t-2;const l=new Map;return r.forEach(s=>{const c=Te.max([n[s]/o*i,a[s]]);i-=c,o-=n[s],l.set(s,c)}),l},gq=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⺀⺁⺂⺃⺄⺅⺆⺇⺈⺉⺊⺋⺌⺍⺎⺏⺐⺑⺒⺓⺔⺕⺖⺗⺘⺙⺚⺛⺜⺝⺞⺟⺠⺡⺢⺣⺤⺥⺦⺧⺨⺩⺪⺫⺬⺭⺮⺯⺰⺱⺲⺳⺴⺵⺶⺷⺸⺹⺺⺻⺼⺽⺾⺿⻀⻁⻂⻃⻄⻅⻆⻇⻈⻉⻊⻋⻌⻍⻎⻏⻐⻑⻒⻓⻔⻕⻖⻗⻘⻙⻚⻛⻜⻝⻞⻟⻠⻡⻢⻣⻤⻥⻦⻧⻨⻩⻪⻫⻬⻭⻮⻯⻰⻱⻲⻳⻴⻵⻶⻷⻸⻹⻺⻻⻼⻽⻾⻿⼀⼁⼂⼃⼄⼅⼆⼇⼈⼉⼊⼋⼌⼍⼎⼏⼐⼑⼒⼓⼔⼕⼖⼗⼘⼙⼚⼛⼜⼝⼞⼟⼠⼡⼢⼣⼤⼥⼦⼧⼨⼩⼪⼫⼬⼭⼮⼯⼰⼱⼲⼳⼴⼵⼶⼷⼸⼹⼺⼻⼼⼽⼾⼿⽀⽁⽂⽃⽄⽅⽆⽇⽈⽉⽊⽋⽌⽍⽎⽏⽐⽑⽒⽓⽔⽕⽖⽗⽘⽙⽚⽛⽜⽝⽞⽟⽠⽡⽢⽣⽤⽥⽦⽧⽨⽩⽪⽫⽬⽭⽮⽯⽰⽱⽲⽳⽴⽵⽶⽷⽸⽹⽺⽻⽼⽽⽾⽿⾀⾁⾂⾃⾄⾅⾆⾇⾈⾉⾊⾋⾌⾍⾎⾏⾐⾑⾒⾓⾔⾕⾖⾗⾘⾙⾚⾛⾜⾝⾞⾟⾠⾡⾢⾣⾤⾥⾦⾧⾨⾩⾪⾫⾬⾭⾮⾯⾰⾱⾲⾳⾴⾵⾶⾷⾸⾹⾺⾻⾼⾽⾾⾿⿀⿁⿂⿃⿄⿅⿆⿇⿈⿉⿊⿋⿌⿍⿎⿏⿐⿑⿒⿓⿔⿕⿖⿗⿘⿙⿚⿛⿜⿝⿞⿟⿠⿡⿢⿣⿤⿥⿦⿧⿨⿩⿪⿫⿬⿭⿮⿯⿰⿱⿲⿳⿴⿵⿶⿷⿸⿹⿺⿻⿼⿽⿾⿿ 、。〃〄々〆〇〈〉《》「」『』【】〒〓〔〕〖〗〘〙〚〛〜〝〞〟〠〡〢〣〤〥〦〧〨〩〪〭〮〯〫〬〰〱〲〳〴〵〶〷〸〹〺〻〼〽〾〿぀ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんゔゕゖ゗゘゙゚゛゜ゝゞゟ゠ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶヷヸヹヺ・ーヽヾヿ㄀㄁㄂㄃㄄ㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩㄪㄫㄬㄭㄮㄯ㄰ㄱㄲㄳㄴㄵㄶㄷㄸㄹㄺㄻㄼㄽㄾㄿㅀㅁㅂㅃㅄㅅㅆㅇㅈㅉㅊㅋㅌㅍㅎㅏㅐㅑㅒㅓㅔㅕㅖㅗㅘㅙㅚㅛㅜㅝㅞㅟㅠㅡㅢㅣㅤㅥㅦㅧㅨㅩㅪㅫㅬㅭㅮㅯㅰㅱㅲㅳㅴㅵㅶㅷㅸㅹㅺㅻㅼㅽㅾㅿㆀㆁㆂㆃㆄㆅㆆㆇㆈㆉㆊㆋㆌㆍㆎ㆏㆐㆑㆒㆓㆔㆕㆖㆗㆘㆙㆚㆛㆜㆝㆞㆟ㆠㆡㆢㆣㆤㆥㆦㆧㆨㆩㆪㆫㆬㆭㆮㆯㆰㆱㆲㆳㆴㆵㆶㆷㆸㆹㆺㆻㆼㆽㆾㆿ㇀㇁㇂㇃㇄㇅㇆㇇㇈㇉㇊㇋㇌㇍㇎㇏㇐㇑㇒㇓㇔㇕㇖㇗㇘㇙㇚㇛㇜㇝㇞㇟㇠㇡㇢㇣㇤㇥㇦㇧㇨㇩㇪㇫㇬㇭㇮㇯ㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ㈀㈁㈂㈃㈄㈅㈆㈇㈈㈉㈊㈋㈌㈍㈎㈏㈐㈑㈒㈓㈔㈕㈖㈗㈘㈙㈚㈛㈜㈝㈞㈟㈠㈡㈢㈣㈤㈥㈦㈧㈨㈩㈪㈫㈬㈭㈮㈯㈰㈱㈲㈳㈴㈵㈶㈷㈸㈹㈺㈻㈼㈽㈾㈿㉀㉁㉂㉃㉄㉅㉆㉇㉈㉉㉊㉋㉌㉍㉎㉏㉐㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㉠㉡㉢㉣㉤㉥㉦㉧㉨㉩㉪㉫㉬㉭㉮㉯㉰㉱㉲㉳㉴㉵㉶㉷㉸㉹㉺㉻㉼㉽㉾㉿㊀㊁㊂㊃㊄㊅㊆㊇㊈㊉㊊㊋㊌㊍㊎㊏㊐㊑㊒㊓㊔㊕㊖㊗㊘㊙㊚㊛㊜㊝㊞㊟㊠㊡㊢㊣㊤㊥㊦㊧㊨㊩㊪㊫㊬㊭㊮㊯㊰㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿㋀㋁㋂㋃㋄㋅㋆㋇㋈㋉㋊㋋㋌㋍㋎㋏㋐㋑㋒㋓㋔㋕㋖㋗㋘㋙㋚㋛㋜㋝㋞㋟㋠㋡㋢㋣㋤㋥㋦㋧㋨㋩㋪㋫㋬㋭㋮㋯㋰㋱㋲㋳㋴㋵㋶㋷㋸㋹㋺㋻㋼㋽㋾㋿㌀㌁㌂㌃㌄㌅㌆㌇㌈㌉㌊㌋㌌㌍㌎㌏㌐㌑㌒㌓㌔㌕㌖㌗㌘㌙㌚㌛㌜㌝㌞㌟㌠㌡㌢㌣㌤㌥㌦㌧㌨㌩㌪㌫㌬㌭㌮㌯㌰㌱㌲㌳㌴㌵㌶㌷㌸㌹㌺㌻㌼㌽㌾㌿㍀㍁㍂㍃㍄㍅㍆㍇㍈㍉㍊㍋㍌㍍㍎㍏㍐㍑㍒㍓㍔㍕㍖㍗㍘㍙㍚㍛㍜㍝㍞㍟㍠㍡㍢㍣㍤㍥㍦㍧㍨㍩㍪㍫㍬㍭㍮㍯㍰㍱㍲㍳㍴㍵㍶㍷㍸㍹㍺㍻㍼㍽㍾㍿㎀㎁㎂㎃㎄㎅㎆㎇㎈㎉㎊㎋㎌㎍㎎㎏㎐㎑㎒㎓㎔㎕㎖㎗㎘㎙㎚㎛㎜㎝㎞㎟㎠㎡㎢㎣㎤㎥㎦㎧㎨㎩㎪㎫㎬㎭㎮㎯㎰㎱㎲㎳㎴㎵㎶㎷㎸㎹㎺㎻㎼㎽㎾㎿㏀㏁㏂㏃㏄㏅㏆㏇㏈㏉㏊㏋㏌㏍㏎㏏㏐㏑㏒㏓㏔㏕㏖㏗㏘㏙㏚㏛㏜㏝㏞㏟㏠㏡㏢㏣㏤㏥㏦㏧㏨㏩㏪㏫㏬㏭㏮㏯㏰㏱㏲㏳㏴㏵㏶㏷㏸㏹㏺㏻㏼㏽㏾㏿㐀㐁㐂㐃㐄㐅㐆㐇㐈㐉㐊㐋㐌㐍㐎㐏㐐㐑㐒㐓㐔㐕㐖㐗㐘㐙㐚㐛㐜㐝㐞㐟㐠㐡㐢㐣㐤㐥㐦㐧㐨㐩㐪㐫㐬㐭㐮㐯㐰㐱㐲㐳㐴㐵㐶㐷㐸㐹㐺㐻㐼㐽㐾㐿㑀㑁㑂㑃㑄㑅㑆㑇㑈㑉㑊㑋㑌㑍㑎㑏㑐㑑㑒㑓㑔㑕㑖㑗㑘㑙㑚㑛㑜㑝㑞㑟㑠㑡㑢㑣㑤㑥㑦㑧㑨㑩㑪㑫㑬㑭㑮㑯㑰㑱㑲㑳㑴㑵㑶㑷㑸㑹㑺㑻㑼㑽㑾㑿㒀㒁㒂㒃㒄㒅㒆㒇㒈㒉㒊㒋㒌㒍㒎㒏㒐㒑㒒㒓㒔㒕㒖㒗㒘㒙㒚㒛㒜㒝㒞㒟㒠㒡㒢㒣㒤㒥㒦㒧㒨㒩㒪㒫㒬㒭㒮㒯㒰㒱㒲㒳㒴㒵㒶㒷㒸㒹㒺㒻㒼㒽㒾㒿㓀㓁㓂㓃㓄㓅㓆㓇㓈㓉㓊㓋㓌㓍㓎㓏㓐㓑㓒㓓㓔㓕㓖㓗㓘㓙㓚㓛㓜㓝㓞㓟㓠㓡㓢㓣㓤㓥㓦㓧㓨㓩㓪㓫㓬㓭㓮㓯㓰㓱㓲㓳㓴㓵㓶㓷㓸㓹㓺㓻㓼㓽㓾㓿㔀㔁㔂㔃㔄㔅㔆㔇㔈㔉㔊㔋㔌㔍㔎㔏㔐㔑㔒㔓㔔㔕㔖㔗㔘㔙㔚㔛㔜㔝㔞㔟㔠㔡㔢㔣㔤㔥㔦㔧㔨㔩㔪㔫㔬㔭㔮㔯㔰㔱㔲㔳㔴㔵㔶㔷㔸㔹㔺㔻㔼㔽㔾㔿㕀㕁㕂㕃㕄㕅㕆㕇㕈㕉㕊㕋㕌㕍㕎㕏㕐㕑㕒㕓㕔㕕㕖㕗㕘㕙㕚㕛㕜㕝㕞㕟㕠㕡㕢㕣㕤㕥㕦㕧㕨㕩㕪㕫㕬㕭㕮㕯㕰㕱㕲㕳㕴㕵㕶㕷㕸㕹㕺㕻㕼㕽㕾㕿㖀㖁㖂㖃㖄㖅㖆㖇㖈㖉㖊㖋㖌㖍㖎㖏㖐㖑㖒㖓㖔㖕㖖㖗㖘㖙㖚㖛㖜㖝㖞㖟㖠㖡㖢㖣㖤㖥㖦㖧㖨㖩㖪㖫㖬㖭㖮㖯㖰㖱㖲㖳㖴㖵㖶㖷㖸㖹㖺㖻㖼㖽㖾㖿㗀㗁㗂㗃㗄㗅㗆㗇㗈㗉㗊㗋㗌㗍㗎㗏㗐㗑㗒㗓㗔㗕㗖㗗㗘㗙㗚㗛㗜㗝㗞㗟㗠㗡㗢㗣㗤㗥㗦㗧㗨㗩㗪㗫㗬㗭㗮㗯㗰㗱㗲㗳㗴㗵㗶㗷㗸㗹㗺㗻㗼㗽㗾㗿㘀㘁㘂㘃㘄㘅㘆㘇㘈㘉㘊㘋㘌㘍㘎㘏㘐㘑㘒㘓㘔㘕㘖㘗㘘㘙㘚㘛㘜㘝㘞㘟㘠㘡㘢㘣㘤㘥㘦㘧㘨㘩㘪㘫㘬㘭㘮㘯㘰㘱㘲㘳㘴㘵㘶㘷㘸㘹㘺㘻㘼㘽㘾㘿㙀㙁㙂㙃㙄㙅㙆㙇㙈㙉㙊㙋㙌㙍㙎㙏㙐㙑㙒㙓㙔㙕㙖㙗㙘㙙㙚㙛㙜㙝㙞㙟㙠㙡㙢㙣㙤㙥㙦㙧㙨㙩㙪㙫㙬㙭㙮㙯㙰㙱㙲㙳㙴㙵㙶㙷㙸㙹㙺㙻㙼㙽㙾㙿㚀㚁㚂㚃㚄㚅㚆㚇㚈㚉㚊㚋㚌㚍㚎㚏㚐㚑㚒㚓㚔㚕㚖㚗㚘㚙㚚㚛㚜㚝㚞㚟㚠㚡㚢㚣㚤㚥㚦㚧㚨㚩㚪㚫㚬㚭㚮㚯㚰㚱㚲㚳㚴㚵㚶㚷㚸㚹㚺㚻㚼㚽㚾㚿㛀㛁㛂㛃㛄㛅㛆㛇㛈㛉㛊㛋㛌㛍㛎㛏㛐㛑㛒㛓㛔㛕㛖㛗㛘㛙㛚㛛㛜㛝㛞㛟㛠㛡㛢㛣㛤㛥㛦㛧㛨㛩㛪㛫㛬㛭㛮㛯㛰㛱㛲㛳㛴㛵㛶㛷㛸㛹㛺㛻㛼㛽㛾㛿㜀㜁㜂㜃㜄㜅㜆㜇㜈㜉㜊㜋㜌㜍㜎㜏㜐㜑㜒㜓㜔㜕㜖㜗㜘㜙㜚㜛㜜㜝㜞㜟㜠㜡㜢㜣㜤㜥㜦㜧㜨㜩㜪㜫㜬㜭㜮㜯㜰㜱㜲㜳㜴㜵㜶㜷㜸㜹㜺㜻㜼㜽㜾㜿㝀㝁㝂㝃㝄㝅㝆㝇㝈㝉㝊㝋㝌㝍㝎㝏㝐㝑㝒㝓㝔㝕㝖㝗㝘㝙㝚㝛㝜㝝㝞㝟㝠㝡㝢㝣㝤㝥㝦㝧㝨㝩㝪㝫㝬㝭㝮㝯㝰㝱㝲㝳㝴㝵㝶㝷㝸㝹㝺㝻㝼㝽㝾㝿㞀㞁㞂㞃㞄㞅㞆㞇㞈㞉㞊㞋㞌㞍㞎㞏㞐㞑㞒㞓㞔㞕㞖㞗㞘㞙㞚㞛㞜㞝㞞㞟㞠㞡㞢㞣㞤㞥㞦㞧㞨㞩㞪㞫㞬㞭㞮㞯㞰㞱㞲㞳㞴㞵㞶㞷㞸㞹㞺㞻㞼㞽㞾㞿㟀㟁㟂㟃㟄㟅㟆㟇㟈㟉㟊㟋㟌㟍㟎㟏㟐㟑㟒㟓㟔㟕㟖㟗㟘㟙㟚㟛㟜㟝㟞㟟㟠㟡㟢㟣㟤㟥㟦㟧㟨㟩㟪㟫㟬㟭㟮㟯㟰㟱㟲㟳㟴㟵㟶㟷㟸㟹㟺㟻㟼㟽㟾㟿㠀㠁㠂㠃㠄㠅㠆㠇㠈㠉㠊㠋㠌㠍㠎㠏㠐㠑㠒㠓㠔㠕㠖㠗㠘㠙㠚㠛㠜㠝㠞㠟㠠㠡㠢㠣㠤㠥㠦㠧㠨㠩㠪㠫㠬㠭㠮㠯㠰㠱㠲㠳㠴㠵㠶㠷㠸㠹㠺㠻㠼㠽㠾㠿㡀㡁㡂㡃㡄㡅㡆㡇㡈㡉㡊㡋㡌㡍㡎㡏㡐㡑㡒㡓㡔㡕㡖㡗㡘㡙㡚㡛㡜㡝㡞㡟㡠㡡㡢㡣㡤㡥㡦㡧㡨㡩㡪㡫㡬㡭㡮㡯㡰㡱㡲㡳㡴㡵㡶㡷㡸㡹㡺㡻㡼㡽㡾㡿㢀㢁㢂㢃㢄㢅㢆㢇㢈㢉㢊㢋㢌㢍㢎㢏㢐㢑㢒㢓㢔㢕㢖㢗㢘㢙㢚㢛㢜㢝㢞㢟㢠㢡㢢㢣㢤㢥㢦㢧㢨㢩㢪㢫㢬㢭㢮㢯㢰㢱㢲㢳㢴㢵㢶㢷㢸㢹㢺㢻㢼㢽㢾㢿㣀㣁㣂㣃㣄㣅㣆㣇㣈㣉㣊㣋㣌㣍㣎㣏㣐㣑㣒㣓㣔㣕㣖㣗㣘㣙㣚㣛㣜㣝㣞㣟㣠㣡㣢㣣㣤㣥㣦㣧㣨㣩㣪㣫㣬㣭㣮㣯㣰㣱㣲㣳㣴㣵㣶㣷㣸㣹㣺㣻㣼㣽㣾㣿㤀㤁㤂㤃㤄㤅㤆㤇㤈㤉㤊㤋㤌㤍㤎㤏㤐㤑㤒㤓㤔㤕㤖㤗㤘㤙㤚㤛㤜㤝㤞㤟㤠㤡㤢㤣㤤㤥㤦㤧㤨㤩㤪㤫㤬㤭㤮㤯㤰㤱㤲㤳㤴㤵㤶㤷㤸㤹㤺㤻㤼㤽㤾㤿㥀㥁㥂㥃㥄㥅㥆㥇㥈㥉㥊㥋㥌㥍㥎㥏㥐㥑㥒㥓㥔㥕㥖㥗㥘㥙㥚㥛㥜㥝㥞㥟㥠㥡㥢㥣㥤㥥㥦㥧㥨㥩㥪㥫㥬㥭㥮㥯㥰㥱㥲㥳㥴㥵㥶㥷㥸㥹㥺㥻㥼㥽㥾㥿㦀㦁㦂㦃㦄㦅㦆㦇㦈㦉㦊㦋㦌㦍㦎㦏㦐㦑㦒㦓㦔㦕㦖㦗㦘㦙㦚㦛㦜㦝㦞㦟㦠㦡㦢㦣㦤㦥㦦㦧㦨㦩㦪㦫㦬㦭㦮㦯㦰㦱㦲㦳㦴㦵㦶㦷㦸㦹㦺㦻㦼㦽㦾㦿㧀㧁㧂㧃㧄㧅㧆㧇㧈㧉㧊㧋㧌㧍㧎㧏㧐㧑㧒㧓㧔㧕㧖㧗㧘㧙㧚㧛㧜㧝㧞㧟㧠㧡㧢㧣㧤㧥㧦㧧㧨㧩㧪㧫㧬㧭㧮㧯㧰㧱㧲㧳㧴㧵㧶㧷㧸㧹㧺㧻㧼㧽㧾㧿㨀㨁㨂㨃㨄㨅㨆㨇㨈㨉㨊㨋㨌㨍㨎㨏㨐㨑㨒㨓㨔㨕㨖㨗㨘㨙㨚㨛㨜㨝㨞㨟㨠㨡㨢㨣㨤㨥㨦㨧㨨㨩㨪㨫㨬㨭㨮㨯㨰㨱㨲㨳㨴㨵㨶㨷㨸㨹㨺㨻㨼㨽㨾㨿㩀㩁㩂㩃㩄㩅㩆㩇㩈㩉㩊㩋㩌㩍㩎㩏㩐㩑㩒㩓㩔㩕㩖㩗㩘㩙㩚㩛㩜㩝㩞㩟㩠㩡㩢㩣㩤㩥㩦㩧㩨㩩㩪㩫㩬㩭㩮㩯㩰㩱㩲㩳㩴㩵㩶㩷㩸㩹㩺㩻㩼㩽㩾㩿㪀㪁㪂㪃㪄㪅㪆㪇㪈㪉㪊㪋㪌㪍㪎㪏㪐㪑㪒㪓㪔㪕㪖㪗㪘㪙㪚㪛㪜㪝㪞㪟㪠㪡㪢㪣㪤㪥㪦㪧㪨㪩㪪㪫㪬㪭㪮㪯㪰㪱㪲㪳㪴㪵㪶㪷㪸㪹㪺㪻㪼㪽㪾㪿㫀㫁㫂㫃㫄㫅㫆㫇㫈㫉㫊㫋㫌㫍㫎㫏㫐㫑㫒㫓㫔㫕㫖㫗㫘㫙㫚㫛㫜㫝㫞㫟㫠㫡㫢㫣㫤㫥㫦㫧㫨㫩㫪㫫㫬㫭㫮㫯㫰㫱㫲㫳㫴㫵㫶㫷㫸㫹㫺㫻㫼㫽㫾㫿㬀㬁㬂㬃㬄㬅㬆㬇㬈㬉㬊㬋㬌㬍㬎㬏㬐㬑㬒㬓㬔㬕㬖㬗㬘㬙㬚㬛㬜㬝㬞㬟㬠㬡㬢㬣㬤㬥㬦㬧㬨㬩㬪㬫㬬㬭㬮㬯㬰㬱㬲㬳㬴㬵㬶㬷㬸㬹㬺㬻㬼㬽㬾㬿㭀㭁㭂㭃㭄㭅㭆㭇㭈㭉㭊㭋㭌㭍㭎㭏㭐㭑㭒㭓㭔㭕㭖㭗㭘㭙㭚㭛㭜㭝㭞㭟㭠㭡㭢㭣㭤㭥㭦㭧㭨㭩㭪㭫㭬㭭㭮㭯㭰㭱㭲㭳㭴㭵㭶㭷㭸㭹㭺㭻㭼㭽㭾㭿㮀㮁㮂㮃㮄㮅㮆㮇㮈㮉㮊㮋㮌㮍㮎㮏㮐㮑㮒㮓㮔㮕㮖㮗㮘㮙㮚㮛㮜㮝㮞㮟㮠㮡㮢㮣㮤㮥㮦㮧㮨㮩㮪㮫㮬㮭㮮㮯㮰㮱㮲㮳㮴㮵㮶㮷㮸㮹㮺㮻㮼㮽㮾㮿㯀㯁㯂㯃㯄㯅㯆㯇㯈㯉㯊㯋㯌㯍㯎㯏㯐㯑㯒㯓㯔㯕㯖㯗㯘㯙㯚㯛㯜㯝㯞㯟㯠㯡㯢㯣㯤㯥㯦㯧㯨㯩㯪㯫㯬㯭㯮㯯㯰㯱㯲㯳㯴㯵㯶㯷㯸㯹㯺㯻㯼㯽㯾㯿㰀㰁㰂㰃㰄㰅㰆㰇㰈㰉㰊㰋㰌㰍㰎㰏㰐㰑㰒㰓㰔㰕㰖㰗㰘㰙㰚㰛㰜㰝㰞㰟㰠㰡㰢㰣㰤㰥㰦㰧㰨㰩㰪㰫㰬㰭㰮㰯㰰㰱㰲㰳㰴㰵㰶㰷㰸㰹㰺㰻㰼㰽㰾㰿㱀㱁㱂㱃㱄㱅㱆㱇㱈㱉㱊㱋㱌㱍㱎㱏㱐㱑㱒㱓㱔㱕㱖㱗㱘㱙㱚㱛㱜㱝㱞㱟㱠㱡㱢㱣㱤㱥㱦㱧㱨㱩㱪㱫㱬㱭㱮㱯㱰㱱㱲㱳㱴㱵㱶㱷㱸㱹㱺㱻㱼㱽㱾㱿㲀㲁㲂㲃㲄㲅㲆㲇㲈㲉㲊㲋㲌㲍㲎㲏㲐㲑㲒㲓㲔㲕㲖㲗㲘㲙㲚㲛㲜㲝㲞㲟㲠㲡㲢㲣㲤㲥㲦㲧㲨㲩㲪㲫㲬㲭㲮㲯㲰㲱㲲㲳㲴㲵㲶㲷㲸㲹㲺㲻㲼㲽㲾㲿㳀㳁㳂㳃㳄㳅㳆㳇㳈㳉㳊㳋㳌㳍㳎㳏㳐㳑㳒㳓㳔㳕㳖㳗㳘㳙㳚㳛㳜㳝㳞㳟㳠㳡㳢㳣㳤㳥㳦㳧㳨㳩㳪㳫㳬㳭㳮㳯㳰㳱㳲㳳㳴㳵㳶㳷㳸㳹㳺㳻㳼㳽㳾㳿㴀㴁㴂㴃㴄㴅㴆㴇㴈㴉㴊㴋㴌㴍㴎㴏㴐㴑㴒㴓㴔㴕㴖㴗㴘㴙㴚㴛㴜㴝㴞㴟㴠㴡㴢㴣㴤㴥㴦㴧㴨㴩㴪㴫㴬㴭㴮㴯㴰㴱㴲㴳㴴㴵㴶㴷㴸㴹㴺㴻㴼㴽㴾㴿㵀㵁㵂㵃㵄㵅㵆㵇㵈㵉㵊㵋㵌㵍㵎㵏㵐㵑㵒㵓㵔㵕㵖㵗㵘㵙㵚㵛㵜㵝㵞㵟㵠㵡㵢㵣㵤㵥㵦㵧㵨㵩㵪㵫㵬㵭㵮㵯㵰㵱㵲㵳㵴㵵㵶㵷㵸㵹㵺㵻㵼㵽㵾㵿㶀㶁㶂㶃㶄㶅㶆㶇㶈㶉㶊㶋㶌㶍㶎㶏㶐㶑㶒㶓㶔㶕㶖㶗㶘㶙㶚㶛㶜㶝㶞㶟㶠㶡㶢㶣㶤㶥㶦㶧㶨㶩㶪㶫㶬㶭㶮㶯㶰㶱㶲㶳㶴㶵㶶㶷㶸㶹㶺㶻㶼㶽㶾㶿㷀㷁㷂㷃㷄㷅㷆㷇㷈㷉㷊㷋㷌㷍㷎㷏㷐㷑㷒㷓㷔㷕㷖㷗㷘㷙㷚㷛㷜㷝㷞㷟㷠㷡㷢㷣㷤㷥㷦㷧㷨㷩㷪㷫㷬㷭㷮㷯㷰㷱㷲㷳㷴㷵㷶㷷㷸㷹㷺㷻㷼㷽㷾㷿㸀㸁㸂㸃㸄㸅㸆㸇㸈㸉㸊㸋㸌㸍㸎㸏㸐㸑㸒㸓㸔㸕㸖㸗㸘㸙㸚㸛㸜㸝㸞㸟㸠㸡㸢㸣㸤㸥㸦㸧㸨㸩㸪㸫㸬㸭㸮㸯㸰㸱㸲㸳㸴㸵㸶㸷㸸㸹㸺㸻㸼㸽㸾㸿㹀㹁㹂㹃㹄㹅㹆㹇㹈㹉㹊㹋㹌㹍㹎㹏㹐㹑㹒㹓㹔㹕㹖㹗㹘㹙㹚㹛㹜㹝㹞㹟㹠㹡㹢㹣㹤㹥㹦㹧㹨㹩㹪㹫㹬㹭㹮㹯㹰㹱㹲㹳㹴㹵㹶㹷㹸㹹㹺㹻㹼㹽㹾㹿㺀㺁㺂㺃㺄㺅㺆㺇㺈㺉㺊㺋㺌㺍㺎㺏㺐㺑㺒㺓㺔㺕㺖㺗㺘㺙㺚㺛㺜㺝㺞㺟㺠㺡㺢㺣㺤㺥㺦㺧㺨㺩㺪㺫㺬㺭㺮㺯㺰㺱㺲㺳㺴㺵㺶㺷㺸㺹㺺㺻㺼㺽㺾㺿㻀㻁㻂㻃㻄㻅㻆㻇㻈㻉㻊㻋㻌㻍㻎㻏㻐㻑㻒㻓㻔㻕㻖㻗㻘㻙㻚㻛㻜㻝㻞㻟㻠㻡㻢㻣㻤㻥㻦㻧㻨㻩㻪㻫㻬㻭㻮㻯㻰㻱㻲㻳㻴㻵㻶㻷㻸㻹㻺㻻㻼㻽㻾㻿㼀㼁㼂㼃㼄㼅㼆㼇㼈㼉㼊㼋㼌㼍㼎㼏㼐㼑㼒㼓㼔㼕㼖㼗㼘㼙㼚㼛㼜㼝㼞㼟㼠㼡㼢㼣㼤㼥㼦㼧㼨㼩㼪㼫㼬㼭㼮㼯㼰㼱㼲㼳㼴㼵㼶㼷㼸㼹㼺㼻㼼㼽㼾㼿㽀㽁㽂㽃㽄㽅㽆㽇㽈㽉㽊㽋㽌㽍㽎㽏㽐㽑㽒㽓㽔㽕㽖㽗㽘㽙㽚㽛㽜㽝㽞㽟㽠㽡㽢㽣㽤㽥㽦㽧㽨㽩㽪㽫㽬㽭㽮㽯㽰㽱㽲㽳㽴㽵㽶㽷㽸㽹㽺㽻㽼㽽㽾㽿㾀㾁㾂㾃㾄㾅㾆㾇㾈㾉㾊㾋㾌㾍㾎㾏㾐㾑㾒㾓㾔㾕㾖㾗㾘㾙㾚㾛㾜㾝㾞㾟㾠㾡㾢㾣㾤㾥㾦㾧㾨㾩㾪㾫㾬㾭㾮㾯㾰㾱㾲㾳㾴㾵㾶㾷㾸㾹㾺㾻㾼㾽㾾㾿㿀㿁㿂㿃㿄㿅㿆㿇㿈㿉㿊㿋㿌㿍㿎㿏㿐㿑㿒㿓㿔㿕㿖㿗㿘㿙㿚㿛㿜㿝㿞㿟㿠㿡㿢㿣㿤㿥㿦㿧㿨㿩㿪㿫㿬㿭㿮㿯㿰㿱㿲㿳㿴㿵㿶㿷㿸㿹㿺㿻㿼㿽㿾㿿䀀䀁䀂䀃䀄䀅䀆䀇䀈䀉䀊䀋䀌䀍䀎䀏䀐䀑䀒䀓䀔䀕䀖䀗䀘䀙䀚䀛䀜䀝䀞䀟䀠䀡䀢䀣䀤䀥䀦䀧䀨䀩䀪䀫䀬䀭䀮䀯䀰䀱䀲䀳䀴䀵䀶䀷䀸䀹䀺䀻䀼䀽䀾䀿䁀䁁䁂䁃䁄䁅䁆䁇䁈䁉䁊䁋䁌䁍䁎䁏䁐䁑䁒䁓䁔䁕䁖䁗䁘䁙䁚䁛䁜䁝䁞䁟䁠䁡䁢䁣䁤䁥䁦䁧䁨䁩䁪䁫䁬䁭䁮䁯䁰䁱䁲䁳䁴䁵䁶䁷䁸䁹䁺䁻䁼䁽䁾䁿䂀䂁䂂䂃䂄䂅䂆䂇䂈䂉䂊䂋䂌䂍䂎䂏䂐䂑䂒䂓䂔䂕䂖䂗䂘䂙䂚䂛䂜䂝䂞䂟䂠䂡䂢䂣䂤䂥䂦䂧䂨䂩䂪䂫䂬䂭䂮䂯䂰䂱䂲䂳䂴䂵䂶䂷䂸䂹䂺䂻䂼䂽䂾䂿䃀䃁䃂䃃䃄䃅䃆䃇䃈䃉䃊䃋䃌䃍䃎䃏䃐䃑䃒䃓䃔䃕䃖䃗䃘䃙䃚䃛䃜䃝䃞䃟䃠䃡䃢䃣䃤䃥䃦䃧䃨䃩䃪䃫䃬䃭䃮䃯䃰䃱䃲䃳䃴䃵䃶䃷䃸䃹䃺䃻䃼䃽䃾䃿䄀䄁䄂䄃䄄䄅䄆䄇䄈䄉䄊䄋䄌䄍䄎䄏䄐䄑䄒䄓䄔䄕䄖䄗䄘䄙䄚䄛䄜䄝䄞䄟䄠䄡䄢䄣䄤䄥䄦䄧䄨䄩䄪䄫䄬䄭䄮䄯䄰䄱䄲䄳䄴䄵䄶䄷䄸䄹䄺䄻䄼䄽䄾䄿䅀䅁䅂䅃䅄䅅䅆䅇䅈䅉䅊䅋䅌䅍䅎䅏䅐䅑䅒䅓䅔䅕䅖䅗䅘䅙䅚䅛䅜䅝䅞䅟䅠䅡䅢䅣䅤䅥䅦䅧䅨䅩䅪䅫䅬䅭䅮䅯䅰䅱䅲䅳䅴䅵䅶䅷䅸䅹䅺䅻䅼䅽䅾䅿䆀䆁䆂䆃䆄䆅䆆䆇䆈䆉䆊䆋䆌䆍䆎䆏䆐䆑䆒䆓䆔䆕䆖䆗䆘䆙䆚䆛䆜䆝䆞䆟䆠䆡䆢䆣䆤䆥䆦䆧䆨䆩䆪䆫䆬䆭䆮䆯䆰䆱䆲䆳䆴䆵䆶䆷䆸䆹䆺䆻䆼䆽䆾䆿䇀䇁䇂䇃䇄䇅䇆䇇䇈䇉䇊䇋䇌䇍䇎䇏䇐䇑䇒䇓䇔䇕䇖䇗䇘䇙䇚䇛䇜䇝䇞䇟䇠䇡䇢䇣䇤䇥䇦䇧䇨䇩䇪䇫䇬䇭䇮䇯䇰䇱䇲䇳䇴䇵䇶䇷䇸䇹䇺䇻䇼䇽䇾䇿䈀䈁䈂䈃䈄䈅䈆䈇䈈䈉䈊䈋䈌䈍䈎䈏䈐䈑䈒䈓䈔䈕䈖䈗䈘䈙䈚䈛䈜䈝䈞䈟䈠䈡䈢䈣䈤䈥䈦䈧䈨䈩䈪䈫䈬䈭䈮䈯䈰䈱䈲䈳䈴䈵䈶䈷䈸䈹䈺䈻䈼䈽䈾䈿䉀䉁䉂䉃䉄䉅䉆䉇䉈䉉䉊䉋䉌䉍䉎䉏䉐䉑䉒䉓䉔䉕䉖䉗䉘䉙䉚䉛䉜䉝䉞䉟䉠䉡䉢䉣䉤䉥䉦䉧䉨䉩䉪䉫䉬䉭䉮䉯䉰䉱䉲䉳䉴䉵䉶䉷䉸䉹䉺䉻䉼䉽䉾䉿䊀䊁䊂䊃䊄䊅䊆䊇䊈䊉䊊䊋䊌䊍䊎䊏䊐䊑䊒䊓䊔䊕䊖䊗䊘䊙䊚䊛䊜䊝䊞䊟䊠䊡䊢䊣䊤䊥䊦䊧䊨䊩䊪䊫䊬䊭䊮䊯䊰䊱䊲䊳䊴䊵䊶䊷䊸䊹䊺䊻䊼䊽䊾䊿䋀䋁䋂䋃䋄䋅䋆䋇䋈䋉䋊䋋䋌䋍䋎䋏䋐䋑䋒䋓䋔䋕䋖䋗䋘䋙䋚䋛䋜䋝䋞䋟䋠䋡䋢䋣䋤䋥䋦䋧䋨䋩䋪䋫䋬䋭䋮䋯䋰䋱䋲䋳䋴䋵䋶䋷䋸䋹䋺䋻䋼䋽䋾䋿䌀䌁䌂䌃䌄䌅䌆䌇䌈䌉䌊䌋䌌䌍䌎䌏䌐䌑䌒䌓䌔䌕䌖䌗䌘䌙䌚䌛䌜䌝䌞䌟䌠䌡䌢䌣䌤䌥䌦䌧䌨䌩䌪䌫䌬䌭䌮䌯䌰䌱䌲䌳䌴䌵䌶䌷䌸䌹䌺䌻䌼䌽䌾䌿䍀䍁䍂䍃䍄䍅䍆䍇䍈䍉䍊䍋䍌䍍䍎䍏䍐䍑䍒䍓䍔䍕䍖䍗䍘䍙䍚䍛䍜䍝䍞䍟䍠䍡䍢䍣䍤䍥䍦䍧䍨䍩䍪䍫䍬䍭䍮䍯䍰䍱䍲䍳䍴䍵䍶䍷䍸䍹䍺䍻䍼䍽䍾䍿䎀䎁䎂䎃䎄䎅䎆䎇䎈䎉䎊䎋䎌䎍䎎䎏䎐䎑䎒䎓䎔䎕䎖䎗䎘䎙䎚䎛䎜䎝䎞䎟䎠䎡䎢䎣䎤䎥䎦䎧䎨䎩䎪䎫䎬䎭䎮䎯䎰䎱䎲䎳䎴䎵䎶䎷䎸䎹䎺䎻䎼䎽䎾䎿䏀䏁䏂䏃䏄䏅䏆䏇䏈䏉䏊䏋䏌䏍䏎䏏䏐䏑䏒䏓䏔䏕䏖䏗䏘䏙䏚䏛䏜䏝䏞䏟䏠䏡䏢䏣䏤䏥䏦䏧䏨䏩䏪䏫䏬䏭䏮䏯䏰䏱䏲䏳䏴䏵䏶䏷䏸䏹䏺䏻䏼䏽䏾䏿䐀䐁䐂䐃䐄䐅䐆䐇䐈䐉䐊䐋䐌䐍䐎䐏䐐䐑䐒䐓䐔䐕䐖䐗䐘䐙䐚䐛䐜䐝䐞䐟䐠䐡䐢䐣䐤䐥䐦䐧䐨䐩䐪䐫䐬䐭䐮䐯䐰䐱䐲䐳䐴䐵䐶䐷䐸䐹䐺䐻䐼䐽䐾䐿䑀䑁䑂䑃䑄䑅䑆䑇䑈䑉䑊䑋䑌䑍䑎䑏䑐䑑䑒䑓䑔䑕䑖䑗䑘䑙䑚䑛䑜䑝䑞䑟䑠䑡䑢䑣䑤䑥䑦䑧䑨䑩䑪䑫䑬䑭䑮䑯䑰䑱䑲䑳䑴䑵䑶䑷䑸䑹䑺䑻䑼䑽䑾䑿䒀䒁䒂䒃䒄䒅䒆䒇䒈䒉䒊䒋䒌䒍䒎䒏䒐䒑䒒䒓䒔䒕䒖䒗䒘䒙䒚䒛䒜䒝䒞䒟䒠䒡䒢䒣䒤䒥䒦䒧䒨䒩䒪䒫䒬䒭䒮䒯䒰䒱䒲䒳䒴䒵䒶䒷䒸䒹䒺䒻䒼䒽䒾䒿䓀䓁䓂䓃䓄䓅䓆䓇䓈䓉䓊䓋䓌䓍䓎䓏䓐䓑䓒䓓䓔䓕䓖䓗䓘䓙䓚䓛䓜䓝䓞䓟䓠䓡䓢䓣䓤䓥䓦䓧䓨䓩䓪䓫䓬䓭䓮䓯䓰䓱䓲䓳䓴䓵䓶䓷䓸䓹䓺䓻䓼䓽䓾䓿䔀䔁䔂䔃䔄䔅䔆䔇䔈䔉䔊䔋䔌䔍䔎䔏䔐䔑䔒䔓䔔䔕䔖䔗䔘䔙䔚䔛䔜䔝䔞䔟䔠䔡䔢䔣䔤䔥䔦䔧䔨䔩䔪䔫䔬䔭䔮䔯䔰䔱䔲䔳䔴䔵䔶䔷䔸䔹䔺䔻䔼䔽䔾䔿䕀䕁䕂䕃䕄䕅䕆䕇䕈䕉䕊䕋䕌䕍䕎䕏䕐䕑䕒䕓䕔䕕䕖䕗䕘䕙䕚䕛䕜䕝䕞䕟䕠䕡䕢䕣䕤䕥䕦䕧䕨䕩䕪䕫䕬䕭䕮䕯䕰䕱䕲䕳䕴䕵䕶䕷䕸䕹䕺䕻䕼䕽䕾䕿䖀䖁䖂䖃䖄䖅䖆䖇䖈䖉䖊䖋䖌䖍䖎䖏䖐䖑䖒䖓䖔䖕䖖䖗䖘䖙䖚䖛䖜䖝䖞䖟䖠䖡䖢䖣䖤䖥䖦䖧䖨䖩䖪䖫䖬䖭䖮䖯䖰䖱䖲䖳䖴䖵䖶䖷䖸䖹䖺䖻䖼䖽䖾䖿䗀䗁䗂䗃䗄䗅䗆䗇䗈䗉䗊䗋䗌䗍䗎䗏䗐䗑䗒䗓䗔䗕䗖䗗䗘䗙䗚䗛䗜䗝䗞䗟䗠䗡䗢䗣䗤䗥䗦䗧䗨䗩䗪䗫䗬䗭䗮䗯䗰䗱䗲䗳䗴䗵䗶䗷䗸䗹䗺䗻䗼䗽䗾䗿䘀䘁䘂䘃䘄䘅䘆䘇䘈䘉䘊䘋䘌䘍䘎䘏䘐䘑䘒䘓䘔䘕䘖䘗䘘䘙䘚䘛䘜䘝䘞䘟䘠䘡䘢䘣䘤䘥䘦䘧䘨䘩䘪䘫䘬䘭䘮䘯䘰䘱䘲䘳䘴䘵䘶䘷䘸䘹䘺䘻䘼䘽䘾䘿䙀䙁䙂䙃䙄䙅䙆䙇䙈䙉䙊䙋䙌䙍䙎䙏䙐䙑䙒䙓䙔䙕䙖䙗䙘䙙䙚䙛䙜䙝䙞䙟䙠䙡䙢䙣䙤䙥䙦䙧䙨䙩䙪䙫䙬䙭䙮䙯䙰䙱䙲䙳䙴䙵䙶䙷䙸䙹䙺䙻䙼䙽䙾䙿䚀䚁䚂䚃䚄䚅䚆䚇䚈䚉䚊䚋䚌䚍䚎䚏䚐䚑䚒䚓䚔䚕䚖䚗䚘䚙䚚䚛䚜䚝䚞䚟䚠䚡䚢䚣䚤䚥䚦䚧䚨䚩䚪䚫䚬䚭䚮䚯䚰䚱䚲䚳䚴䚵䚶䚷䚸䚹䚺䚻䚼䚽䚾䚿䛀䛁䛂䛃䛄䛅䛆䛇䛈䛉䛊䛋䛌䛍䛎䛏䛐䛑䛒䛓䛔䛕䛖䛗䛘䛙䛚䛛䛜䛝䛞䛟䛠䛡䛢䛣䛤䛥䛦䛧䛨䛩䛪䛫䛬䛭䛮䛯䛰䛱䛲䛳䛴䛵䛶䛷䛸䛹䛺䛻䛼䛽䛾䛿䜀䜁䜂䜃䜄䜅䜆䜇䜈䜉䜊䜋䜌䜍䜎䜏䜐䜑䜒䜓䜔䜕䜖䜗䜘䜙䜚䜛䜜䜝䜞䜟䜠䜡䜢䜣䜤䜥䜦䜧䜨䜩䜪䜫䜬䜭䜮䜯䜰䜱䜲䜳䜴䜵䜶䜷䜸䜹䜺䜻䜼䜽䜾䜿䝀䝁䝂䝃䝄䝅䝆䝇䝈䝉䝊䝋䝌䝍䝎䝏䝐䝑䝒䝓䝔䝕䝖䝗䝘䝙䝚䝛䝜䝝䝞䝟䝠䝡䝢䝣䝤䝥䝦䝧䝨䝩䝪䝫䝬䝭䝮䝯䝰䝱䝲䝳䝴䝵䝶䝷䝸䝹䝺䝻䝼䝽䝾䝿䞀䞁䞂䞃䞄䞅䞆䞇䞈䞉䞊䞋䞌䞍䞎䞏䞐䞑䞒䞓䞔䞕䞖䞗䞘䞙䞚䞛䞜䞝䞞䞟䞠䞡䞢䞣䞤䞥䞦䞧䞨䞩䞪䞫䞬䞭䞮䞯䞰䞱䞲䞳䞴䞵䞶䞷䞸䞹䞺䞻䞼䞽䞾䞿䟀䟁䟂䟃䟄䟅䟆䟇䟈䟉䟊䟋䟌䟍䟎䟏䟐䟑䟒䟓䟔䟕䟖䟗䟘䟙䟚䟛䟜䟝䟞䟟䟠䟡䟢䟣䟤䟥䟦䟧䟨䟩䟪䟫䟬䟭䟮䟯䟰䟱䟲䟳䟴䟵䟶䟷䟸䟹䟺䟻䟼䟽䟾䟿䠀䠁䠂䠃䠄䠅䠆䠇䠈䠉䠊䠋䠌䠍䠎䠏䠐䠑䠒䠓䠔䠕䠖䠗䠘䠙䠚䠛䠜䠝䠞䠟䠠䠡䠢䠣䠤䠥䠦䠧䠨䠩䠪䠫䠬䠭䠮䠯䠰䠱䠲䠳䠴䠵䠶䠷䠸䠹䠺䠻䠼䠽䠾䠿䡀䡁䡂䡃䡄䡅䡆䡇䡈䡉䡊䡋䡌䡍䡎䡏䡐䡑䡒䡓䡔䡕䡖䡗䡘䡙䡚䡛䡜䡝䡞䡟䡠䡡䡢䡣䡤䡥䡦䡧䡨䡩䡪䡫䡬䡭䡮䡯䡰䡱䡲䡳䡴䡵䡶䡷䡸䡹䡺䡻䡼䡽䡾䡿䢀䢁䢂䢃䢄䢅䢆䢇䢈䢉䢊䢋䢌䢍䢎䢏䢐䢑䢒䢓䢔䢕䢖䢗䢘䢙䢚䢛䢜䢝䢞䢟䢠䢡䢢䢣䢤䢥䢦䢧䢨䢩䢪䢫䢬䢭䢮䢯䢰䢱䢲䢳䢴䢵䢶䢷䢸䢹䢺䢻䢼䢽䢾䢿䣀䣁䣂䣃䣄䣅䣆䣇䣈䣉䣊䣋䣌䣍䣎䣏䣐䣑䣒䣓䣔䣕䣖䣗䣘䣙䣚䣛䣜䣝䣞䣟䣠䣡䣢䣣䣤䣥䣦䣧䣨䣩䣪䣫䣬䣭䣮䣯䣰䣱䣲䣳䣴䣵䣶䣷䣸䣹䣺䣻䣼䣽䣾䣿䤀䤁䤂䤃䤄䤅䤆䤇䤈䤉䤊䤋䤌䤍䤎䤏䤐䤑䤒䤓䤔䤕䤖䤗䤘䤙䤚䤛䤜䤝䤞䤟䤠䤡䤢䤣䤤䤥䤦䤧䤨䤩䤪䤫䤬䤭䤮䤯䤰䤱䤲䤳䤴䤵䤶䤷䤸䤹䤺䤻䤼䤽䤾䤿䥀䥁䥂䥃䥄䥅䥆䥇䥈䥉䥊䥋䥌䥍䥎䥏䥐䥑䥒䥓䥔䥕䥖䥗䥘䥙䥚䥛䥜䥝䥞䥟䥠䥡䥢䥣䥤䥥䥦䥧䥨䥩䥪䥫䥬䥭䥮䥯䥰䥱䥲䥳䥴䥵䥶䥷䥸䥹䥺䥻䥼䥽䥾䥿䦀䦁䦂䦃䦄䦅䦆䦇䦈䦉䦊䦋䦌䦍䦎䦏䦐䦑䦒䦓䦔䦕䦖䦗䦘䦙䦚䦛䦜䦝䦞䦟䦠䦡䦢䦣䦤䦥䦦䦧䦨䦩䦪䦫䦬䦭䦮䦯䦰䦱䦲䦳䦴䦵䦶䦷䦸䦹䦺䦻䦼䦽䦾䦿䧀䧁䧂䧃䧄䧅䧆䧇䧈䧉䧊䧋䧌䧍䧎䧏䧐䧑䧒䧓䧔䧕䧖䧗䧘䧙䧚䧛䧜䧝䧞䧟䧠䧡䧢䧣䧤䧥䧦䧧䧨䧩䧪䧫䧬䧭䧮䧯䧰䧱䧲䧳䧴䧵䧶䧷䧸䧹䧺䧻䧼䧽䧾䧿䨀䨁䨂䨃䨄䨅䨆䨇䨈䨉䨊䨋䨌䨍䨎䨏䨐䨑䨒䨓䨔䨕䨖䨗䨘䨙䨚䨛䨜䨝䨞䨟䨠䨡䨢䨣䨤䨥䨦䨧䨨䨩䨪䨫䨬䨭䨮䨯䨰䨱䨲䨳䨴䨵䨶䨷䨸䨹䨺䨻䨼䨽䨾䨿䩀䩁䩂䩃䩄䩅䩆䩇䩈䩉䩊䩋䩌䩍䩎䩏䩐䩑䩒䩓䩔䩕䩖䩗䩘䩙䩚䩛䩜䩝䩞䩟䩠䩡䩢䩣䩤䩥䩦䩧䩨䩩䩪䩫䩬䩭䩮䩯䩰䩱䩲䩳䩴䩵䩶䩷䩸䩹䩺䩻䩼䩽䩾䩿䪀䪁䪂䪃䪄䪅䪆䪇䪈䪉䪊䪋䪌䪍䪎䪏䪐䪑䪒䪓䪔䪕䪖䪗䪘䪙䪚䪛䪜䪝䪞䪟䪠䪡䪢䪣䪤䪥䪦䪧䪨䪩䪪䪫䪬䪭䪮䪯䪰䪱䪲䪳䪴䪵䪶䪷䪸䪹䪺䪻䪼䪽䪾䪿䫀䫁䫂䫃䫄䫅䫆䫇䫈䫉䫊䫋䫌䫍䫎䫏䫐䫑䫒䫓䫔䫕䫖䫗䫘䫙䫚䫛䫜䫝䫞䫟䫠䫡䫢䫣䫤䫥䫦䫧䫨䫩䫪䫫䫬䫭䫮䫯䫰䫱䫲䫳䫴䫵䫶䫷䫸䫹䫺䫻䫼䫽䫾䫿䬀䬁䬂䬃䬄䬅䬆䬇䬈䬉䬊䬋䬌䬍䬎䬏䬐䬑䬒䬓䬔䬕䬖䬗䬘䬙䬚䬛䬜䬝䬞䬟䬠䬡䬢䬣䬤䬥䬦䬧䬨䬩䬪䬫䬬䬭䬮䬯䬰䬱䬲䬳䬴䬵䬶䬷䬸䬹䬺䬻䬼䬽䬾䬿䭀䭁䭂䭃䭄䭅䭆䭇䭈䭉䭊䭋䭌䭍䭎䭏䭐䭑䭒䭓䭔䭕䭖䭗䭘䭙䭚䭛䭜䭝䭞䭟䭠䭡䭢䭣䭤䭥䭦䭧䭨䭩䭪䭫䭬䭭䭮䭯䭰䭱䭲䭳䭴䭵䭶䭷䭸䭹䭺䭻䭼䭽䭾䭿䮀䮁䮂䮃䮄䮅䮆䮇䮈䮉䮊䮋䮌䮍䮎䮏䮐䮑䮒䮓䮔䮕䮖䮗䮘䮙䮚䮛䮜䮝䮞䮟䮠䮡䮢䮣䮤䮥䮦䮧䮨䮩䮪䮫䮬䮭䮮䮯䮰䮱䮲䮳䮴䮵䮶䮷䮸䮹䮺䮻䮼䮽䮾䮿䯀䯁䯂䯃䯄䯅䯆䯇䯈䯉䯊䯋䯌䯍䯎䯏䯐䯑䯒䯓䯔䯕䯖䯗䯘䯙䯚䯛䯜䯝䯞䯟䯠䯡䯢䯣䯤䯥䯦䯧䯨䯩䯪䯫䯬䯭䯮䯯䯰䯱䯲䯳䯴䯵䯶䯷䯸䯹䯺䯻䯼䯽䯾䯿䰀䰁䰂䰃䰄䰅䰆䰇䰈䰉䰊䰋䰌䰍䰎䰏䰐䰑䰒䰓䰔䰕䰖䰗䰘䰙䰚䰛䰜䰝䰞䰟䰠䰡䰢䰣䰤䰥䰦䰧䰨䰩䰪䰫䰬䰭䰮䰯䰰䰱䰲䰳䰴䰵䰶䰷䰸䰹䰺䰻䰼䰽䰾䰿䱀䱁䱂䱃䱄䱅䱆䱇䱈䱉䱊䱋䱌䱍䱎䱏䱐䱑䱒䱓䱔䱕䱖䱗䱘䱙䱚䱛䱜䱝䱞䱟䱠䱡䱢䱣䱤䱥䱦䱧䱨䱩䱪䱫䱬䱭䱮䱯䱰䱱䱲䱳䱴䱵䱶䱷䱸䱹䱺䱻䱼䱽䱾䱿䲀䲁䲂䲃䲄䲅䲆䲇䲈䲉䲊䲋䲌䲍䲎䲏䲐䲑䲒䲓䲔䲕䲖䲗䲘䲙䲚䲛䲜䲝䲞䲟䲠䲡䲢䲣䲤䲥䲦䲧䲨䲩䲪䲫䲬䲭䲮䲯䲰䲱䲲䲳䲴䲵䲶䲷䲸䲹䲺䲻䲼䲽䲾䲿䳀䳁䳂䳃䳄䳅䳆䳇䳈䳉䳊䳋䳌䳍䳎䳏䳐䳑䳒䳓䳔䳕䳖䳗䳘䳙䳚䳛䳜䳝䳞䳟䳠䳡䳢䳣䳤䳥䳦䳧䳨䳩䳪䳫䳬䳭䳮䳯䳰䳱䳲䳳䳴䳵䳶䳷䳸䳹䳺䳻䳼䳽䳾䳿䴀䴁䴂䴃䴄䴅䴆䴇䴈䴉䴊䴋䴌䴍䴎䴏䴐䴑䴒䴓䴔䴕䴖䴗䴘䴙䴚䴛䴜䴝䴞䴟䴠䴡䴢䴣䴤䴥䴦䴧䴨䴩䴪䴫䴬䴭䴮䴯䴰䴱䴲䴳䴴䴵䴶䴷䴸䴹䴺䴻䴼䴽䴾䴿䵀䵁䵂䵃䵄䵅䵆䵇䵈䵉䵊䵋䵌䵍䵎䵏䵐䵑䵒䵓䵔䵕䵖䵗䵘䵙䵚䵛䵜䵝䵞䵟䵠䵡䵢䵣䵤䵥䵦䵧䵨䵩䵪䵫䵬䵭䵮䵯䵰䵱䵲䵳䵴䵵䵶䵷䵸䵹䵺䵻䵼䵽䵾䵿䶀䶁䶂䶃䶄䶅䶆䶇䶈䶉䶊䶋䶌䶍䶎䶏䶐䶑䶒䶓䶔䶕䶖䶗䶘䶙䶚䶛䶜䶝䶞䶟䶠䶡䶢䶣䶤䶥䶦䶧䶨䶩䶪䶫䶬䶭䶮䶯䶰䶱䶲䶳䶴䶵䶶䶷䶸䶹䶺䶻䶼䶽䶾䶿䷀䷁䷂䷃䷄䷅䷆䷇䷈䷉䷊䷋䷌䷍䷎䷏䷐䷑䷒䷓䷔䷕䷖䷗䷘䷙䷚䷛䷜䷝䷞䷟䷠䷡䷢䷣䷤䷥䷦䷧䷨䷩䷪䷫䷬䷭䷮䷯䷰䷱䷲䷳䷴䷵䷶䷷䷸䷹䷺䷻䷼䷽䷾䷿乥乲兙兛兝兞兡兣兺匁厼叾哛唜唟喸嗧囕夞巼怾旕朩朰栍桛椧烪猠瓧瓩瓰瓱瓲瓼甅硛硳穒縇莻虄襨迲闏鞥啊腌錒锕阿哀哎唉埃挨溾銰鎄锿凒啀嘊捱敱敳溰癌皑皚磑娾昹毐濭矮蔼藹譪躷霭靄伌僾叆嗳噯塧壒嫒嬡愛懓懝暧曖爱瑷璦皧瞹砹硋碍礙艾薆譺賹鑀隘靉餲馤鱫鴱侒偣啽媕安峖庵桉氨痷盦盫腤菴萻葊蓭誝諳谙鞌鞍韽馣鮟鵪鶕鹌儑玵雸俺唵垵埯揞罯銨铵堓屵岸按晻暗案洝胺荌豻貋錌闇隌黯肮骯岇昂昻枊盎醠凹柪梎熬爊軪厫嗷嗸嶅廒慠摮敖滶獒獓璈磝翱翶翺聱蔜螯謷謸遨鏖隞骜鰲鳌鷔鼇媪媼抝艹芺袄襖镺傲坳垇墺奡奥奧嫯岙岰嶴懊拗擙澚澳鏊隩驁丷仈八叭吧哵夿岜巴扒扷捌朳柭玐疤笆粑羓芭蚆豝釟魞鲃叐妭抜拔炦癹胈茇菝詙跋軷颰魃鼥把鈀钯靶坝垻壩弝欛灞爸矲罢罷耙覇跁霸鮁鲅挀掰白佰捭摆擺柏栢瓸百竡粨絔襬庍拜拝敗猈稗粺薭贁败韛扳搬攽斑斒班瘢癍肦般螌褩辬頒颁鳻坂岅昄板版瓪粄舨蝂鈑钣闆阪魬伴办半坢姅怑扮拌湴瓣秚絆绊辦鉡靽垹帮幇幚幫捠梆浜縍邦邫鞤榜牓綁绑膀髈傍塝挷搒棒棓玤磅稖艕蒡蚌蜯謗谤鎊镑佨剝勹包孢枹煲笣胞苞蕔裦褒襃闁齙龅窇薄雹保堡堢媬宝宲寚寳寶怉珤緥葆藵褓賲靌飹飽饱駂鳵鴇鸨儤勽嚗報忁报抱暴曓爆犦菢虣蚫袌豹趵鉋鑤铇骲髱鮑鲍卑庳悲揹杯柸桮椑盃碑背藣陂鵯鹎北鉳俻倍偝偹備僃备孛悖惫愂憊昁梖焙牬犕狈狽珼琲碚禙糒苝蓓蛽被褙誖貝贝軰輩辈邶郥鄁鋇鐾钡鞁鞴骳呗唄喯奔栟泍漰犇錛锛奙本楍畚翉苯倴坋坌捹撪桳渀笨逩伻嗙嘣奟崩嵭痭祊絣綳繃绷閍甭甮埄埲琣琫菶鞛塴揼泵甏蹦迸逬鏰镚偪屄楅榌毴螕豍逼鎞鰏鲾鵖嬶荸鼻佊俾匕啚夶妣彼朼柀比毞沘疕秕笔筆粃聛舭貏鄙佖咇哔嗶坒堛壁奰妼婢嬖币幣幤庇廦弊弻弼彃必怭怶愊愎敝斃朇柲梐毕毖毙湢滗滭潷濞煏熚狴獘獙珌璧畀畁畢疪痹痺皕睤睥碧禆筚箅箆篦篳粊綼縪繴罼腷臂芘苾荜萆萞蓖蓽蔽薜蜌袐襅襞襣觱詖诐貱賁贔贲赑跸蹕躃躄避邲鄨鄪鉍鏎鐴铋閇閉閟闭陛鞸韠飶饆馝駜驆髀髲魓鮅鷝鷩鼊炞煸牑猵獱甂砭笾箯籩糄編编萹蝙边邉邊鍽鞕鞭鯾鯿鳊匾惼扁揙碥稨窆藊褊貶贬鴘便卞变変峅弁徧忭抃昪汳汴玣緶缏艑苄覍諚變辡辧辨辩辫辮辯遍釆閞儦墂幖彪标標檦淲滮瀌熛爂猋瘭磦穮脿膘臕蔈藨謤贆鏢鑣镖镳颩颮颷飆飇飈飊飑飙飚驫骉骠髟嫑婊表裱褾諘錶俵摽鳔憋瘪癟虌蟞鱉鳖鼈龞別别徶莂蛂襒蹩彆傧儐宾彬斌梹椕槟檳汃滨濒濱濵瀕玢瑸璸繽缤虨豩豳賓賔邠鑌镔霦頻顮摈擯殡殯膑臏髌髕髩鬂鬓鬢仌仒兵冫冰掤氷蛃鋲丙偋寎怲抦昞昺柄棅炳眪禀秉稟苪邴鈵鉼陃鞆鞞餅餠饼並併倂傡垪并幷庰摒栤病窉竝誁靐鮩僠剥嶓拨撥播波溊玻癶癷盋砵碆礡紴缽菠袰蹳鉢钵餑饽驋鱍亳仢伯侼僰勃博帛愽懪挬搏桲欂泊浡淿渤煿牔狛猼瓝瓟礴秡箔簙糪肑胉脖膊舶艊萡葧袯袹襏襮謈踣郣鈸鉑鋍鎛鑮钹铂镈餺馎馛馞駁駮驳髆髉鮊鲌鵓鹁跛孹擘檗簸蘗譒啵蔔峬庯晡誧逋鈽錻钸餔鵏轐醭鳪卜卟哺捕补補鸔不佈勏吥咘埗埠布廍怖悑抪捗柨步歨歩瓿篰簿荹蔀踄部郶鈈钚餢嚓擦攃礤礸遪偲猜才材纔裁財财倸啋埰婇寀彩採棌毝睬綵跴踩采縩菜蔡傪参參叄叅喰嬠湌爘飡餐驂骖惭慙慚残殘蚕蝅蠶蠺惨慘憯朁穇黪黲儏澯灿燦璨粲薒謲仓仺伧倉傖凔嵢沧滄濸獊舱艙苍蒼螥鶬鸧欌藏鑶賶撡操糙嘈嶆慒曹曺槽漕艚蓸螬褿鏪愺懆艸草騲肏襙鄵鼜侧側冊册厕厠夨廁恻惻憡拺敇测測畟笧策筞筴箣簎粣荝萗萴蓛嵾篸埁岑涔笒噌层層嶒曽曾竲驓蹭偛叉嗏扠挿插揷杈疀臿艖銟鍤锸餷馇垞察嵖搽查査槎檫猹碴秅茬茶詧靫蹅鑔镲侘刹剎奼姹岔差汊紁衩詫诧拆肞芆釵钗侪儕喍柴犲祡豺茝囆瘥虿蠆袃訍幨掺搀摻攙梴裧襜覘觇辿鋓儃儳劖嚵壥婵嬋孱巉廛棎欃毚湹潹潺澶瀍瀺煘獑磛禅緾纏纒缠艬苂蝉螹蟐蟬蟾誗讒谗躔鄽酁鋋鑱镵饞馋丳产冁刬剗剷囅嵼幝摌斺旵浐滻灛燀產産簅繟蒇蕆諂譂讇谄醦鏟铲閳闡阐骣忏懴懺摲硟羼韂顫颤伥倀娼昌椙淐猖琩菖裮錩锠閶阊鯧鲳鼚仧仩偿償兏嘗嚐塲嫦尝常徜瑺瓺甞肠腸膓苌萇裳長镸长鱨鲿僘厂厰场場廠惝敞昶氅鋹倡唱怅悵暢焻玚瑒畅畼誯韔鬯弨怊抄欩窼訬超鈔钞嘲巢巣晁朝樔漅潮牊窲罺謿轈鄛鼂鼌吵巐炒焣煼眧麨仦仯耖觘伡俥唓砗硨莗蛼車车偖扯撦勶坼屮彻徹掣撤澈烢爡瞮硩聅迠頙嗔抻捵棽琛瞋諃謓賝郴塵宸尘忱愖敐敶晨曟栕桭梣樄沉煁瘎臣茞莀莐蔯薼螴訦諶谌軙辰迧鈂陈陳霃鷐麎墋夦硶碜磣贂趻踸鍖儭嚫榇櫬疢衬襯讖谶趁趂齓齔龀偁僜憆摚撐撑晿柽棦橕檉泟浾爯牚琤瞠碀称稱穪竀緽罉蛏蟶赪赬鏿鐣阷靗頳饓丞乗乘呈城埕堘塍塖娍宬峸惩憕懲成承挰掁揨朾枨棖椉橙檙洆溗澂澄瀓珵珹畻程窚筬絾脭荿裎誠诚郕酲鋮铖騬鯎侱庱徎悜睈逞騁骋秤吃哧喫嗤噄妛媸彨彲摛攡殦瓻痴癡眵瞝笞粚絺胵蚩螭訵誺魑鴟鵄鸱黐齝匙墀弛持池漦竾筂箎篪茌荎蚳謘貾赿踟迟迡遅遟遲鍉馳驰伬侈卶叺呎垑尺恥欼歯耻肔胣蚇袲袳裭褫豉鉹齒齿侙傺勅勑叱啻彳恜慗憏懘抶敕斥杘湁灻炽烾熾痸瘛翄翅翤翨腟赤趩遫鉓銐雴飭饬鶒鷘麶充冲嘃忡憃憧摏沖浺珫罿翀舂艟茺衝蹖崇崈漴爞緟虫蝩蟲褈隀埫宠寵揰銃铳抽搊犨犫瘳篘紬仇俦儔嬦帱幬惆愁懤栦梼椆檮燽畴疇皗稠筹籌絒綢绸菗薵裯詶讎讐踌躊酧酬醻雔雠雦丑丒偢吜杽瞅矁醜魗殠臭臰遚鮘出初岀摴榋樗貙齣刍厨媰幮廚橱櫉櫥滁犓篨耡芻蒢蒭蜍蟵豠趎蹰躇躕鉏鋤锄除雏雛鶵储儲杵椘楚楮檚濋璴础礎禇處齭齼亍俶傗儊処埱处怵憷搐敊斶欪歜泏滀珿畜矗竌竐絀绌臅触觸諔豖鄐閦黜搋膗揣膪踹巛川氚瑏穿传傳剶圌暷椽篅舡舩船輲遄僢喘堾歂舛荈踳串汌猭玔賗釧钏鶨刅摐牎牕疮瘡窓窗窻噇幢床牀傸磢闖闯创刱剏剙創怆愴吹炊龡倕垂埀捶搥桘棰槌箠腄菙錘鎚锤陲顀媋旾春暙杶椿槆橁櫄瑃箺萅蝽輴鰆鶞唇浱淳湻滣漘犉純纯脣莼蒓蓴醇醕錞陙鯙鶉鹑偆惷睶萶蠢賰戳繛趠踔逴哾啜嚽娕娖婥惙擉歠涰磭綽绰踀輟辍辵辶酫鑡餟齪龊偨玼疵縒蠀趀跐骴髊齹垐嬨慈柌濨珁瓷甆磁礠祠糍茨薋詞词辝辞辤辭雌飺餈鴜鶿鷀鹚佌此泚皉鮆伺佽刺刾庛朿栨次絘茦莿蛓螆賜赐匆囪囱忩怱悤暰枞棇樅樬漗潨熜瑽璁瞛篵繱聡聦聪聰苁茐葱蓯蔥蟌鍯鏓鏦騘驄骢丛从叢婃孮従徔徖從悰樷欉淙漎潀潈灇爜琮藂誴賨賩錝愡憁謥凑楱湊腠輳辏怚橻粗觕麁麄麤徂殂促噈媨憱猝瘄瘯簇縬脨蔟誎趗踧踿蹙蹴蹵醋顣鼀撺攛汆蹿躥鑹镩巑櫕欑穳殩熶爨窜竄篡簒催凗墔崔嵟慛摧榱槯磪縗缞脺鏙漼璀皠趡伜倅啐啛忰悴毳淬濢焠琗疩瘁竁粋粹紣綷翆翠脃脆膬膵臎萃襊顇村澊皴竴膥邨侟壿存拵刌忖寸籿搓撮瑳磋蹉遳醝鎈嵯嵳痤睉矬蒫蔖虘酂酇鹺鹾脞剉剒厝夎庴挫措莝莡蓌逪銼錯锉错咑哒嗒噠墶搭撘笚耷褡鎉鎝剳匒呾垯妲怛溚炟燵畗畣瘩笪答羍荅荙薘蟽詚跶达迏迖迚逹達鐽靼鞑韃龖龘打亣大眔繨呆呔懛獃傣歹代侢叇垈埭岱帒带帯帶廗待怠戴曃柋殆瀻玳瑇甙簤紿緿绐艜蚮蝳袋襶貣貸贷跢蹛軑軚軩轪迨逮霴靆鴏黛黱丹儋勯匰单単單妉媅担擔殚殫甔眈砃箪簞耼耽聃聸褝襌躭郸鄲酖頕亶伔刐抌掸撢撣玬瓭疸紞胆膽衴賧赕馾黕黵但僤唌啖啗啿嘾噉嚪帎惮憚憺旦柦氮沊泹淡澹狚疍瘅癉癚禫窞繵腅萏蓞蛋蜑觛訑誕诞贉霮餤饏駳髧鴠黮儅噹当澢珰璫當筜簹艡蟷裆襠鐺铛闣党挡擋攩欓灙譡讜谠黨凼圵垱壋婸宕愓档檔氹潒璗瓽盪瞊砀碭礑簜荡菪蕩蘯趤逿雼刀刂叨忉朷氘舠螩釖魛鱽捯倒壔导導岛島嶋嶌嶹捣搗擣槝祷禂禱蹈陦隝隯到噵悼椡檤焘燾瓙盗盜稲稻纛翢翿艔菿衜衟軇辺道嘚得徳德恴悳惪棏淂鍀锝的扥扽噔嬁灯燈璒登竳簦艠豋蹬戥等凳墱嶝櫈瞪磴覴邓鄧鐙镫隥仾低啲埞堤奃岻彽樀氐滴磾秪羝袛趆隄鞮唙啇嘀嚁嫡廸敌敵梑涤滌狄笛籴糴翟苖荻蔋蔐藡覿觌豴蹢迪鏑镝靮頔馰髢鸐厎呧坘坻底弤抵拞掋柢牴砥聜菧觝詆诋軧邸阺骶鯳俤偙僀地坔埅埊墑墬娣媂嶳帝弟怟慸摕旳杕枤梊棣楴焍玓珶甋眱睇碲祶禘第締缔腣苐菂蒂蔕蝃蝭螮諦谛踶递逓遆遞遰釱鉪嗲傎厧嵮巅巓巔掂攧敁槇槙滇瘨癫癲蹎顚顛颠齻典嚸奌婰敟椣点碘蒧蕇跕踮點佃坫垫墊壂奠婝店惦扂橂殿淀澱玷琔电甸癜磹簟蜔鈿钿阽電靛驔凋刁刟叼奝弴彫汈琱瞗碉簓虭蛁貂錭雕鮉鯛鲷鳭鵰鼦屌扚伄吊弔掉瘹盄窎窵竨蓧藋訋調釣鈟銚銱鋽鑃钓铞铫雿魡爹褺跌叠咥喋垤堞峌嵽幉恎惵戜挕昳曡楪殜氎牃牒瓞畳疂疉疊眣眰碟絰绖耊耋胅臷艓苵蜨蝶螲褋詄諜谍趃跮蹀迭镻鰈鲽鴩哋丁仃叮帄玎疔盯耵虰酊釘钉靪奵嵿濎艼薡鐤頂顶鼎鼑啶定忊椗矴碇碠磸聢腚萣蝊訂订錠锭顁飣饤丟丢銩铥东倲冬咚埬娻岽崠崬徚昸東氡氭涷笗苳菄蝀鮗鯟鶇鶫鸫鼕嬞懂箽董蕫諌侗働冻凍动動垌姛恫戙挏栋棟洞湩硐胨胴腖迵霘駧兜兠吺唗枓橷篼蔸都唞乧抖蚪鈄钭阧陡吋斗斣梪毭浢痘窦竇脰荳豆逗郖酘閗闘餖饾鬥鬦鬪鬬鬭剢厾嘟督醏闍阇凟匵嬻椟櫝殰毒涜渎瀆牍牘犊犢独獨瓄皾裻読讀讟读豄贕錖鑟韇韣韥騳髑黩黷堵琽睹笃篤覩賭赌妒妬度杜殬渡秺肚芏荰螙蠧蠹鍍镀靯偳媏端耑褍鍴短塅断斷椴段毈煅瑖碫簖籪緞缎腶葮躖鍛锻垖堆塠痽磓鐓鐜镦鴭頧兊兌兑对対對怼憝憞懟濧瀩碓祋綐薱譈譵轛队陮隊吨噸墩墪惇撉撴敦犜獤礅蜳蹲蹾驐盹趸躉伅庉沌潡炖燉盾砘碷踲逇遁遯鈍钝頓顿剟咄哆嚉多夛掇敠敪毲畓裰凙剫喥夺奪敓敚痥踱鈬鐸铎亸哚嚲垛垜埵奲崜挆朵朶椯綞缍趓躱躲軃鬌刴剁堕墮墯尮惰憜挅柮桗舵跥跺陊陏飿饳鵽妸妿娿婀屙俄吪囮娥峉峨峩涐珴皒睋磀莪蛾訛誐譌讹迗鈋鋨锇頟額额魤鵝鵞鹅噁枙砨頋騀鵈偔僫匎卾厄呃呝咢咹噩垩堊堨堮姶岋崿廅恶悪惡愕戹扼搤搹擜櫮歞歺湂琧砈砐硆礘腭苊萼蕚蚅蝁覨諤讍谔豟軛軶轭遌遏遻鄂鈪鍔鑩锷閼阏阨阸頞顎颚餓餩饿鰐鰪鱷鳄鶚鹗齃齶誒诶欸奀恩煾蒽峎嗯摁侕儿児兒唲峏栭洏粫而耏聏胹荋袻輀轜陑隭髵鮞鲕鴯鸸尒尓尔栮毦洱爾珥耳薾衈趰迩邇鉺铒餌饵駬二佴刵咡弍弐樲誀貮貳贰髶冹发彂沷発發乏伐傠坺垡墢姂栰橃浌疺瞂笩筏罚罰罸茷藅閥阀佱峜法灋砝鍅珐琺蕟髪髮勫噃嬏帆幡忛憣旙旛畨番籓繙翻藩轓颿飜鱕凡凢凣匥墦杋柉棥樊瀿烦煩燔璠矾礬笲籵緐繁羳膰舤舧蕃薠蘩蠜襎蹯釩鐇鐢钒鷭仮反払橎返奿嬎梵氾汎泛滼瀪犯畈盕笵範范訉販贩軓軬輽飯飰饭匚坊堏方枋汸淓牥芳蚄趽邡鈁錺钫鴋妨房肪防魴鲂仿倣旊昉昘瓬眆紡纺舫訪访髣鶭放啡妃婓婔扉暃渄猆緋绯菲蜚裶霏非靟飛飝飞餥馡騑騛鯡鲱淝肥腓蜰匪奜悱斐朏棐榧篚翡胐蕜誹诽俷剕厞吠屝废廃廢昲曊杮櫠沸濷狒疿痱癈肺胇芾萉蟦費费鐨镄陫靅鼣分吩帉昐朆梤棻氛竕紛纷翂芬衯訜躮酚鈖雰餴饙馚坟墳妢岎幩朌枌棼橨汾濆炃焚燌燓獖羒羵蒶蕡蚠蚡豮豶轒鐼隫馩魵黂鼖鼢粉黺份偾僨奋奮弅忿愤憤瀵瞓秎粪糞膹鱝鲼丰仹偑僼凨凬凮堼妦寷封峯峰崶枫桻楓檒沣沨渢灃烽犎猦琒疯瘋盽砜碸篈葑蘴蜂蠭豐鄷酆鋒鎽鏠锋霻靊風飌风麷冯堸夆摓浲溄漨綘縫缝艂逢馮唪覂諷讽俸凤奉湗焨煈賵赗鳯鳳鴌覅仏佛坲梻紑否妚殕缶缹缻雬鴀伕呋夫妋姇娐孵尃怤懯敷旉柎玞砆稃筟粰糐紨綒肤胕膚荂荴衭趺跗邞鄜酜鈇鳺麩麬麱麸乀伏俘凫刜匐咈哹垘孚岪巿帗幅幞弗怫扶拂服枎柫栿桴棴榑氟泭洑浮涪澓炥烰玸琈甶畉畐癁砩祓福稪符笰箙紱紼絥綍绂绋罘罦翇艀艴芙芣苻茀茯莩菔葍虙蚨蜉蝠袚袱襆襥諨豧踾輻辐郛鉘鉜韍韨颫髴鮄鮲鳧鳬鴔鵩鶝黻乶俌俛俯呒嘸府弣抚拊捬撫斧椨滏焤甫盙簠脯腐腑蜅輔辅郙釜釡阝頫鬴黼付偩傅冨副咐坿复妇婏婦媍嬔富峊彿復椱父祔禣秿竎緮縛缚腹萯蕧蚥蚹蛗蝜蝮袝複褔覄覆訃詂讣負賦賻负赋赙赴輹鍑鍢阜附馥駙驸鮒鰒鲋鳆嘎嘠旮噶尜釓錷钆尕玍尬魀侅垓姟峐晐畡祴絯荄該该豥賅賌赅郂陔忋改絠丐乢匃匄戤摡概槩槪溉漑瓂盖葢蓋鈣钙凲坩尲尴尶尷干忓攼杆柑泔漧玕甘疳矸竿筸粓肝苷迀酐魐鳱仠感擀敢桿橄澉澸皯秆稈簳芉衦赶趕鱤鳡倝凎幹旰榦檊汵淦灨盰紺绀詌贑贛赣骭冈冮刚剛堈堽岡掆摃棡牨犅疘矼綱纲缸罁罡肛釭鋼鎠钢岗崗港戅戆戇杠槓焵焹筻槔槹橰櫜皋皐睾篙糕羔膏臯韟餻高髙鷎鷱鼛夰搞杲槀槁檺稁稾稿縞缟菒藁藳鎬镐勂吿告峼祮祰禞筶誥诰郜鋯锆割哥圪彁戈戓戨搁擱歌滒牫犵疙肐胳袼謌鎶饹鴚鴿鸽佫佮匌呄嗝塥愅挌搿敋格槅櫊滆獦膈臵葛蛒蛤裓觡諽輵轕鎘镉閣阁隔革鞈鞷韐韚騔骼鬲鮯哿嗰笴舸个亇個各箇茖虼鉻铬給给根跟哏亘亙揯搄艮茛刯庚椩浭焿畊絚緪縆羮羹耕菮賡赓鶊鹒哽埂峺挭梗綆绠耿莄郠骾鯁鲠堩更侊公功匑匔厷塨宫宮工幊弓恭愩慐攻杛碽篢糼糿肱蚣觥觵躬躳髸龏龔龚巩廾拱拲栱汞珙輁鞏供共唝嗊熕貢贡佝勾沟溝痀篝簼緱缑芶袧褠鈎鉤钩鞲韝岣枸狗玽笱耇耈耉苟蚼豿冓啂坸垢够夠姤媾彀搆撀构構煹覯觏訽詬诟購购遘雊估咕唂唃姑嫴孤巬巭杚柧橭沽泒稒笟箍箛篐罛苽菇菰蓇蛄觚軱軲轱辜酤鈲鮕鴣鸪傦古啒嘏夃尳愲扢榖毂汩淈濲瀔牯皷皼盬瞽穀糓縎罟羖股脵臌薣蛊蠱詁诂谷轂逧鈷钴餶馉骨鶻鹘鼓鼔僱凅固堌崓崮故梏棝榾牿痼祻錮锢雇顧顾鯝鲴刮劀呱栝桰歄煱瓜緺胍趏踻颪颳騧鴰鸹冎剐剮叧寡卦啩坬挂掛絓罣褂詿诖乖叏拐枴柺箉罫夬怪恠倌关官棺涫瘝癏窤蒄覌観觀观関闗關鰥鱞鳏琯璭痯筦管舘輨錧館馆鳤丱冠卝悹悺惯慣掼摜樌欟毌泴潅灌爟瓘盥矔礶祼罆罐貫贯躀遦鏆鑵雚鱹鸛鹳僙光咣垙姯桄洸灮炗炚炛烡珖胱茪輄銧黆广広廣犷獷臩俇臦逛亀圭妫媯嫢嬀嶲巂帰廆归摫椝槻槼櫷歸珪瑰璝瓌皈瞡硅胿茥蘬袿規规邽郌閨闺雟騩鬶鬹鮭鲑龜龟佹匦匭厬垝姽宄庋庪恑攱晷氿湀癸祪簋蛫蟡觤詭诡軌轨陒鬼刽刿劊劌撌攰昋柜桂桧椢槶樻檜櫃猤癐眭瞆瞶禬筀蓕螝襘貴贵跪鐀鑎鞼鱖鱥鳜丨惃滚滾磙緄緷绲蓘蔉衮袞輥辊鮌鯀鲧棍睔謴啯嘓埚堝墎崞彉彍懖楇濄猓瘑聒蝈蟈郭鈛鍋锅囯囶囻国圀國帼幗慖掴摑漍簂聝腘膕蔮虢馘惈果椁槨淉粿綶菓蜾裹褁輠餜馃腂过過鐹哈紦鉿铪咍嗨孩还骸塰海烸胲酼醢亥嗐妎害氦餀饚駭駴骇佄哻嫨憨犴蚶谽酣頇顸馠魽鼾函凾含唅圅娢寒崡嵅晗梒浛涵澏焓琀甝筨虷蜬邗邯鋡韓韩丆喊浫罕豃傼厈垾屽悍憾扞捍撖撼旱晘暵汉汗涆漢瀚焊熯猂皔睅翰莟菡蔊蛿蜭螒譀輚釬銲鋎閈闬雗頷顄颔馯駻鶾兯爳夯吭垳斻杭笐筕絎绗航苀蚢裄貥迒頏颃魧沆嚆茠蒿薅薧乚儫嗥嘷噑嚎壕椃毜毫濠獆獋獔竓籇蚝蠔譹豪好郝侴傐号哠恏悎昊昦晧暠暤暭曍浩淏滈澔灏灝皓皜皞皡皥秏耗聕薃號鄗顥颢鰝呵喝嗬抲欱蠚訶诃何劾合咊和啝姀峆惒敆曷朅柇核楁毼河涸渮澕熆狢皬盇盉盍盒礉禾篕籺粭紇纥翮荷菏萂螛覈訸詥貈貉郃釛鉌鑉閡閤闔阂阖鞨頜颌餄饸魺鲄鶡鹖麧齕龁龢哬嗃嚇垎壑寉焃煂熇燺爀癋碋翯袔褐謞賀贺赫靍靎靏鶮鶴鸖鹤嘿潶黑黒拫痕鞎佷很狠詪恨亨哼悙涥脝姮恆恒撗桁横橫烆珩胻蘅衡鑅鴴鵆鸻啈叿呍哄嚝揈渹灴烘焢硡薨訇谾軣輷轟轰鍧仜吰垬妅娂宏宖屸弘彋汯沗泓洪浤渱潂玒玜硔竑竤篊粠紅紘紭綋红纮羾翃翝耾苰荭葒葓虹谹谼鈜鉷鋐閎闳霐霟鞃魟鴻鸿黉黌晎撔澒蕻訌讧銾閧闀闂鬨齁侯喉帿猴瘊睺矦篌糇翭翵葔鄇銗鍭餱骺鯸吼吽犼候厚后垕堠後洉茩豞逅郈鮜鱟鲎鲘乎乯匢匫呼唿嘑垀寣幠忽恗惚昒曶歑泘淴滹烀糊膴苸虍虖謼軤轷雐雽喖嘝囫壶壷壺媩弧抇搰斛楜槲湖瀫焀煳狐猢瑚瓳箶絗縠胡葫蔛蝴螜衚觳醐鍸隺頶餬鬍魱鰗鵠鶘鶦鹄鹕乕俿唬汻浒滸琥萀虎虝錿鯱互冱嗀嚛婟嫭嫮岵帍弖怘怙戶户戸戽扈护摢昈枑槴沍沪滬熩瓠祜笏簄粐綔芐蔰護豰鄠鍙頀鱯鳠鳸鸌鹱埖婲椛硴糀花蒊蘤誮錵划劃华呚哗嘩姡搳撶滑猾磆華蕐螖譁釪釫鋘鏵铧驊骅鷨化夻婳嫿嬅崋摦杹枠桦槬樺澅画畫畵繣舙觟話諙諣譮话黊徊怀懐懷槐櫰淮瀤耲蘹褢褱踝咶坏壊壞蘾孉懽欢歓歡犿獾讙貛酄驩鴅鵍圜堚嬛寏寰峘桓洹澴狟獂环環瓛糫絙綄繯缳羦荁萈萑豲貆還鍰鐶锾镮闤阛雈鬟鹮睆緩缓唤喚喛嚾奂奐宦嵈幻患愌换換擐攌梙槵浣涣渙漶澣烉焕煥瑍痪瘓肒藧豢轘逭鯇鯶鰀鲩塃宺巟慌朚肓荒衁偟凰喤堭墴媓崲徨惶揘楻湟潢煌熿獚瑝璜癀皇磺穔篁簧艎葟蝗蟥諻趪遑鍠鐄锽隍韹餭騜鰉鱑鳇鷬黃黄兤奛幌怳恍晃晄櫎炾熀縨詤謊谎愰曂榥滉皝皩鎤咴噅噕婎媈幑徽恢拻挥揮撝晖暉楎洃瀈灰灳烣煇睢睳禈翚翬蘳袆褘詼诙豗輝辉隓隳鰴麾佪囘回囬廻廽恛洄烠痐茴蚘蛔蛕蜖迴逥鮰悔檓毀毁毇燬虺譭会僡儶匯卉喙嘒嚖圚嬒寭屶屷彗彙彚徻恚恵惠慧憓懳晦暳會槥橞檅櫘汇泋湏滙潓濊烩燴獩璤璯瘣瞺秽穢篲絵繢繪绘缋翙翽芔荟蔧蕙薈薉藱蟪詯誨諱譓譿讳诲賄贿鏸鐬闠阓靧頮顪颒餯婚惛昏昬棔殙涽睧睯荤葷蔒轋閽阍忶浑渾珲琿餛馄魂鼲俒倱圂婫尡慁掍混溷焝睴觨諢诨劐吙攉秴耠豁騞佸活秮秳伙夥漷火灬煷邩鈥钬俰剨咟喐嚄嚯嚿奯彟彠惑或捇掝擭旤曤檴沎湱濩瀖獲癨眓矆矐祸禍穫窢耯臛艧获蒦藿蠖謋貨货鍃鑊锪镬閄雘霍靃韄乩僟击刉刏剞叽咭唧喞嗘嘰圾基墼姬屐嵆嵇撃擊朞机枅槣樭機櫅毄激犄玑璣畸畿癪矶磯禨积稘稽積笄筓箕簊綨緁緝缉羁羇羈耭肌芨虀覉覊觭譏譤讥賫賷赍跻踑躋躸銈錤鐖鑇鑙隮雞鞿韲飢饑饥魕鳮鶏鶺鷄鸄鸡鹡齏齑亟亼亽伋佶偮卙即卽及叝吉堲塉姞嫉岌嶯彶忣急愱戢揤极棘楖楫極槉檝殛汲湒潗濈焏疾瘠皀皍磼笈箿籍級级耤膌艥蒺蕀蕺蝍螏襋觙谻趌踖蹐躤輯轚辑郆銡鍓鏶集雧霵齎丮几妀嵴己幾戟挤掎撠擠橶泲犱穖脊虮蟣魢鱾麂伎偈兾冀剂剤劑勣哜嚌坖垍塈妓季寂寄廭彐彑徛忌悸惎懻技旡既旣暨暩曁梞檕檵洎济済漃漈濟瀱璾痵癠祭禝稩稷穄穊穧紀紒継績繋繼纪继绩罽臮芰茍茤荠葪蓟蔇薊薺蘎蘮蘻裚襀覬觊計記誋諅计记跡跽蹟迹际際霁霽驥骥髻鬾魝魥鯚鯽鰶鰿鱀鱭鲚鲫鵋鷑齌乫伽佳傢加嘉家徍抸拁枷梜毠泇浃浹犌猳珈痂笳糘耞腵葭袈豭貑跏迦鉫鎵镓鴐麚唊圿夹夾忦恝戛戞扴脥荚莢蛱蛺袷裌郏郟鋏铗頬頰颊鴶鵊假叚婽岬徦斚斝椵榎槚檟玾甲瘕胛賈贾鉀钾价價嫁幏架榢稼駕驾兼冿囏坚堅奸姦姧尖幵惤戋戔搛椷椾樫櫼歼殱殲湔瀐瀸煎熞熸牋犍猏玪瑊监監睷碊礛礷笺箋緘縑缄缣肩艰艱菅菺葌蒹蔪蕑蕳虃譼豜豣鋻鑯間间雃靬鞯韀韉餰馢鰔鰜鰹鲣鳒鳽鵑鵳鶼鹣麉俭倹儉减剪囝堿帴弿彅戩戬拣挸捡揀揃撿暕枧柬梘检検檢減湕瀽瑐睑瞼硷碱礆笕筧简篯簡籛絸繭翦茧藆蠒裥襇襉襺詃謇謭譾谫趼蹇鐗鐧锏鬋鰎鹸鹻鹼件俴健僭剑剣剱劍劎劒劔墹寋建徤擶旔栫楗榗槛檻毽洊涧渐溅漸澗濺瀳牮珔瞷磵礀箭糋繝腱臶舰艦荐薦袸見覵覸见諓諫譛谏賎賤贱趝跈践踐踺轞鉴鍳鍵鏩鐱鑑鑒鑬鑳键鞬餞饯僵壃姜将將摪橿殭江浆漿畕畺疅疆礓繮缰翞茳葁薑螀螿豇韁鱂鳉傋塂奖奨奬桨槳獎耩膙蒋蔣講讲顜勥匞匠夅嵹弜弶摾櫤洚滰犟糡糨絳绛謽酱醤醬降交僬姣娇嬌峧嶕嶣憍椒浇澆焦燋礁穚簥胶膠膲艽茭茮蕉虠蛟蟭跤轇郊鐎驕骄鮫鲛鵁鷦鷮鹪嚼佼侥僥儌剿劋勦孂徺徼憿挢捁搅摷撟撹攪敫敽敿晈暞曒灚烄煍燞狡璬皎皦矫矯笅筊絞繳纐绞缴脚腳臫蟜角譑賋踋鉸铰餃饺鱎龣叫呌嘂嘄嘦噍噭嬓嶠挍敎教斠滘漖潐獥珓皭窌窖藠訆譥趭較轎轿较酵醮釂喈喼嗟堦媘嫅接掲揭擑椄楬湝煯疖痎癤皆秸稭脻菨蝔街謯阶階鞂鶛倢偼傑刦刧刼劫劼卩卪婕媫孑尐岊崨嵥嶻巀幯截拮捷掶搩擮昅杢杰桀桔桝楶榤洁滐潔狤疌睫碣礍竭節結结羯节莭蓵蛣蜐蠘蠞蠽衱袺訐詰誱讦诘跲踕迼鉣鍻镼鞊頡颉鮚鲒姐媎檞毑解觧飷丯介借吤唶堺屆届岕庎徣悈戒楐犗玠琾界畍疥砎芥藉蚧蛶衸褯誡诫鎅骱魪今仐堇堻巾惍斤津珒琎琻璡矜矝砛禁筋紟荕衿襟觔金釒釿钅鹶黅仅侭僅儘卺厪嫤巹廑慬槿漌瑾紧緊菫蓳謹谨錦锦饉馑伒僸凚劤劲勁唫噤嚍墐壗妗嬧尽搢晉晋枃歏殣浕浸溍濅濜烬煡燼瑨璶盡祲縉缙荩藎覲觐賮贐赆近进進靳齽京亰兢坕坙婛巠惊旌旍晶橸泾涇猄睛秔稉粳精経經綡经聙腈茎荆荊菁葏驚鯨鲸鶁鶄麖麠鼱丼井儆刭剄坓宑幜憬憼景暻殌汫汬澋璄璟璥穽肼蟼警阱頚頸颈俓傹净凈境妌婙婧弪弳径徑敬曔桱梷浄淨瀞獍痉痙竞竟竧竫競竸胫脛莖誩踁迳逕鏡镜靓靖静靚靜鵛冂冋坰埛扃絅蘏蘔駉駫侰僒冏囧泂浻澃炅炯烱煚煛熲燛窘綗褧迥逈顈颎丩勼啾揂揪揫摎朻樛牞究糺糾纠萛赳阄鬏鬮鳩鸠久乆九乣奺杦汣灸玖紤舏酒镹韭韮倃僦匓匛匶厩咎就廄廏廐慦捄救旧柩柾桕欍殧疚臼舅舊鯦鷲鹫麔齨凥匊娵婮居岨崌抅拘掬梮椐檋毩毱泃涺狙琚疽眗砠罝腒艍苴蜛裾諊跔跙踘躹鋦锔陱雎鞠鞫駒驹鮈鴡鶋侷啹婅局巈挶椈橘泦淗湨焗犑狊粷繘菊蘜趜跼蹫輂郹閰駶驧鵙鵴鶪鼰鼳举咀弆挙擧椇榉榘櫸欅沮矩筥聥舉莒蒟襷踽齟龃乬俱倨倶具剧劇勮句埧埾壉姖寠屦屨岠巨巪怇惧愳懅懼拒拠据據昛歫洰澽炬烥犋秬窭窶簴粔耟聚苣虡蚷袓詎讵豦貗距踞躆遽邭醵鉅鋸鐻钜锯颶飓駏鮔勬姢娟捐朘涓焆脧蠲裐鋑鎸鐫镌鹃卷呟埍巻捲臇菤錈锩倦劵勌奆婘帣弮惓慻桊淃狷獧瓹眷睊睠絭絹绢罥羂腃蔨讂鄄餋噘屩屫撅撧亅决刔劂匷厥噊噱孒孓崛崫嶡嶥弡彏憠憰戄抉挗捔掘攫斍桷橛橜櫭欮氒決泬灍焳熦爑爝爴爵獗玃玦玨珏瑴疦瘚矍矡砄絕絶绝臄芵蕝蕨虳蚗蟨蟩覐覚覺觉觖觮觼訣譎诀谲貜赽趉趹蹶蹷躩鈌鐍鐝钁镢駃鴂鴃鷢倔军君均桾汮皲皸皹碅莙菌蚐袀覠軍鈞銁銞鍕钧頵鮶鲪麇麏麕俊儁呁埈寯峻懏捃攈攟晙棞浚濬燇珺畯竣箘箟葰蜠賐郡陖隽雋餕馂駿骏鵔鵕鵘咖喀佧卡咔咯垰胩裃鉲奒开揩鐦锎開凯凱剀剴嘅垲塏嵦恺愷慨暟楷蒈輆鍇鎧铠锴闓闿颽勓忾愾欬炌烗鎎刊勘堪嵁戡栞龕龛侃偘冚凵坎惂欿歁砍竷莰輡轗顑墈崁看瞰矙磡衎闞阚鬫嫝嵻康忼慷槺漮砊穅粇糠躿鏮閌鱇扛亢伉匟囥抗炕犺邟鈧钪闶尻嵪髛丂拷攷栲洘烤考犒銬铐靠鮳鯌鲓匼嗑嵙搕柯棵榼樖牁牱犐珂疴痾瞌砢磕礚科稞窠苛萪薖蚵蝌趷軻轲醘鈳钶頦顆颏颗髁咳壳揢殻殼翗可坷岢嵑嶱敤渇渴炣克刻勀勊堁娔客尅峇恪愘愙氪溘碦礊緙缂艐衉課课錁锞騍骒剋啃垦墾恳懇肎肯肻豤貇錹掯硍裉褃劥坑妔挳摼牼硁硜硻誙銵鍞鏗铿阬倥埪崆悾涳硿空箜躻錓鵼孔恐控鞚剾彄抠摳眍瞘芤劶口冦叩宼寇怐扣敂滱瞉窛筘簆蔲蔻釦鷇刳哭圐堀枯桍矻窟跍郀骷鮬楛狜苦俈喾嚳库庫廤焅瘔秙絝绔袴裤褲酷咵夸姱舿誇侉垮銙挎胯趶跨骻擓蒯侩儈凷哙噲圦块塊墤巜廥快旝欳浍澮狯獪筷糩脍膾郐鄶鱠鲙宽寛寬臗鑧髋髖梡欵款歀窽窾劻匡匩哐恇洭硄筐筺誆诓軭邼忹抂狂狅誑诳軖軠鵟儣夼懭况圹壙岲懬旷昿曠框況爌眖眶矌矿砿礦穬絋絖纊纩貺贶軦邝鄺鉱鋛鑛黋亏刲岿巋悝盔窥窺聧虧闚顝喹夔奎巙戣揆晆暌楏楑櫆犪睽葵藈蘷虁蝰躨逵鄈鍨鍷頯馗騤骙魁傀煃磈跬蹞頍匮匱喟嘳媿嬇尯愦愧憒殨溃潰篑簣籄聩聭聵膭蒉蕢謉餽饋馈坤堃堒崐崑昆晜潉焜熴猑琨瑻菎蜫裈裩褌醌錕锟騉髠髡髨鯤鲲鵾鶤鹍壸壼悃捆梱硱祵稇稛綑裍閫閸阃困涃睏廓扩拡括挄擴濶筈萿葀蛞闊阔霩鞟鞹韕頢髺鬠啦垃拉搚柆菈邋嚹旯磖喇藞剌揦揧攋楋櫴溂爉瓎瘌翋腊臈臘蜡蝋蝲蠟辢辣鑞镴鬎鯻鞡來俫倈婡崃崍庲徕徠来梾棶涞淶猍琜筙箂莱萊逨郲錸铼騋鯠鶆麳襰唻濑瀨瀬癞癩睐睞籁籟藾賚賴赉赖頼顂鵣儖兰啉囒婪岚嵐幱惏懢拦攔斓斕栏欄欗澜瀾灆灡燣燷璼篮籃籣繿葻蓝藍蘫蘭褴襕襤襴襽譋讕谰躝鑭镧闌阑韊壈嬾孄孏懒懶揽擥攬榄欖浨漤灠爦纜缆罱覧覽览醂顲嚂滥濫烂燗爁爛爤瓓糷钄啷勆嫏廊斏桹榔樃欴狼琅瑯硠稂筤艆蓈蜋螂躴郎郒郞鋃鎯锒塱崀朖朗朤烺蓢誏埌浪莨蒗閬阆捞撈粩僗劳労勞哰崂嶗憥朥浶牢痨癆磱窂簩蟧醪鐒铹顟髝佬咾姥恅栳潦狫珯硓老耂荖蛯轑銠铑鮱唠嗠嘮嫪憦橯涝澇烙耢耮躼軂酪乐仂勒叻忇扐楽樂氻泐玏砳竻簕艻阞韷餎鰳鱳鳓了儽嫘擂攂樏檑櫑欙瓃畾礌礧累縲纍纝缧罍羸蔂蘲虆轠鐳鑘镭雷靁鱩鼺傫儡厽垒塁壘壨櫐洡灅癗矋磊磥礨絫耒蕌蕾藟蘽蠝誄讄诔鑸鸓泪涙淚禷类纇肋蘱酹銇錑頛頪類颣嘞唥塄棱楞碐稜薐冷倰堎愣睖踜刕剓剺劙厘喱嚟囄嫠孷廲悡斄梨梸棃樆漓灕犁犂狸琍璃瓈盠睝离穲竰筣篱籬糎縭纚缡罹艃荲菞蓠蔾藜蘺蟍蟸蠫褵謧貍邌醨釐鋫錅鏫鑗離驪骊鯏鯬鱺鲡鵹鸝鹂黎黧俚娌峛峢峲李欚浬澧理礼禮粴蠡裏裡豊逦邐醴里鋰锂鯉鱧鱱鲤鳢丽例俐俪傈儮儷凓利力励勵历厉厤厯厲叓吏呖唎唳嚦囇坜塛壢娳婯孋屴岦巁悧悷慄戾搮擽攊攦攭暦曆曞朸枥栃栎栗栛棙檪櫔櫟櫪欐歴歷沥沴浰涖溧濿瀝爄爏犡猁珕瑮瓅瓑瓥疠疬痢癘癧皪盭睙砅砬砺砾磿礪礫礰禲秝立笠篥粒粝糲綟脷苈苙茘荔莅莉蒚蒞藶蚸蛎蛠蜊蜧蝷蠇蠣觻詈讈赲跞躒轢轣轹郦酈鉝隶隷隸雳靂靋鬁鳨鴗鷅麗麜哩亷劆匲匳嗹噒奁奩嫾帘廉怜慩憐梿槤櫣涟溓漣濂濓瀮熑燫磏簾籢籨縺翴联聨聫聮聯臁莲蓮薕螊蠊裢褳覝謰蹥连連鎌鐮镰鬑鰱鲢嬚摙敛斂歛琏璉羷脸臉蔹蘝蘞裣襝鄻僆堜媡恋戀楝殓殮湅潋澰瀲炼煉瑓練纞练萰錬鍊鏈链鰊俍凉墚梁椋樑涼粮粱糧良踉輬辌駺両两俩倆兩唡啢掚緉脼蜽裲魉魎亮倞哴喨悢晾湸諒谅輌輛辆量鍄撩蹽僚嘹嫽寥寮尞屪嵺嶚嶛廫憀敹暸橑漻燎爎爒獠璙疗療竂簝繚缭聊膋膫藔蟟豂賿蹘辽遼飉髎鷯鹩憭曢瞭蓼鄝釕钌镽尥尦廖撂料炓窷鐐镣咧挘毟儠冽列劣劽哷埒埓姴巤挒捩擸栵洌浖烈烮煭犣猎猟獵聗脟茢蛚裂趔躐迾颲鬛鬣鮤鱲鴷拎临冧厸壣崊嶙斴晽暽林淋潾瀶燐獜琳璘疄瞵碄磷箖粦粼綝繗翷臨轔辚遴邻鄰鏻阾隣霖驎鱗鳞麐麟亃僯凛凜廩廪懍懔撛檁檩澟癛癝菻吝恡悋橉焛甐膦蔺藺賃赁蹸躏躙躪轥閵〇伶凌刢呤囹坽夌姈婈孁崚彾掕昤朎柃棂櫺欞泠淩澪灵燯爧狑玲琌瓴皊砱祾秢竛笭紷綾绫羐羚翎聆舲苓菱蓤蔆蕶蛉衑裬詅跉軨輘酃醽鈴錂铃閝陵零霊霗霛霝駖魿鯪鲮鴒鸰鹷麢齡齢龄龗岭岺嶺袊領领令另炩蘦靈溜澑熘蹓刘劉嚠媹嵧懰斿旈旒榴橊流浏瀏琉瑠瑬璢畄留畱疁瘤癅硫磂蒥蓅藰蟉裗鎏鎦鏐鐂镏镠飀飅飗駠駵騮驑骝鰡鶹鹠麍嬼柳栁桞桺橮熮珋綹绺罶羀鋶锍六塯廇磟翏遛雡霤飂餾馏鬸鷚鹨咙嚨尨嶐巃巄昽曨朧栊槞櫳泷湰滝漋瀧爖珑瓏癃眬矓砻礱礲窿竜笼篭籠聋聾胧茏蘢蠪蠬襱豅躘鏧鑨隆霳靇驡鸗龍龒龓龙儱垄垅壟壠拢攏竉陇隴哢徿梇贚剅喽嘍娄婁廔楼樓溇漊熡瞜耧耬艛蒌蔞蝼螻謱軁遱鞻髅髏鷜塿嵝嶁搂摟甊篓簍屚漏瘘瘺瘻鏤镂陋露噜嚕撸擼謢卢嚧垆壚庐廬攎曥枦栌櫨泸瀘炉爐獹玈璷瓐盧矑籚纑罏胪臚舮舻艫芦蘆蠦轤轳鈩鑪顱颅馿髗魲鱸鲈鸕鸬黸卤塷掳擄樐橹櫓氇氌滷澛瀂硵磠穞艣艪蓾虏虜鏀鐪鑥镥魯鲁鹵侓僇剹勎勠圥坴塶娽峍廘彔录戮摝椂樚淕淥渌漉潞熝琭璐甪盝睩硉碌祿禄稑穋箓簏簬簵簶籙粶膔菉蔍蕗虂螰賂赂趢路踛蹗輅轆辂辘逯醁錄録錴鏕鏴陆陸騄騼鯥鴼鵦鵱鷺鹭鹿麓圝圞奱娈孌孪孿峦巒挛攣曫栾欒滦灓灤癴癵羉脔臠虊銮鑾鵉鸞鸾卵乱亂釠抡掄仑伦侖倫囵圇婨崘崙棆沦淪碖磮綸纶耣腀芲菕蜦踚輪轮錀陯鯩埨惀稐溣論论啰囉捋頱儸囖攞椤欏猡玀箩籮罗羅脶腡萝蘿螺覶覼逻邏鏍鑼锣镙饠騾驘骡鸁倮剆曪瘰癳臝蓏蠃裸躶峈摞泺洛洜漯濼犖珞硌硦笿絡纙络荦落詻雒駱骆鮥鵅榈櫚氀膢藘閭闾驢驴侣侶偻僂儢吕呂屡屢履慺挔捛旅梠焒祣稆穭絽縷缕膂膐褛褸郘鋁铝勴垏嵂律慮櫖氯滤濾爈率箻綠緑繂绿膟葎虑鑢圙寽掠略畧稤鋝鋢锊妈媽嫲嘛犘痲痳蔴蟆蟇麻杩溤犸獁玛瑪码碼蚂螞遤鎷馬马鰢鷌傌嘜榪睰祃禡罵閁駡骂鬕吗嗎埋薶霾买嘪荬蕒買鷶佅劢勱卖唛売脈脉衇賣迈邁霡霢麥麦顢颟姏悗慲摱樠瞒瞞蛮蠻謾谩鞔饅馒鬗鬘鰻鳗娨屘満满滿矕螨蟎襔鏋僈墁嫚幔慢曼槾漫澷熳獌縵缦蔄蔓蘰鄤鏝镘牤厖吂哤娏忙恾杗杧汒浝牻狵痝盲盳硭笀芒茫蘉蛖邙釯鋩铓駹壾漭硥茻莽莾蟒蠎猫貓堥旄枆楙毛氂渵牦犛矛罞芼茅茆蝥蟊軞酕鉾錨锚髦髳鶜乮冇卯夘峁戼昴泖笷蓩鉚铆冃冐冒媢帽愗懋暓柕毷瑁皃眊瞀耄茂萺蝐袤覒貌貿贸鄚鄮嚒嚰濹么麼麽坆堳塺媒嵋徾攗枚栂梅楣楳槑沒没湄湈煤猸玫珻瑂眉睂禖脄脢腜苺莓葿郿酶鋂鎇镅霉鶥鹛黴凂媄媺嬍嵄挴毎每浼渼燘美羙躾鎂镁黣嚜妹媚寐抺旀昧沬煝痗眛睸祙篃蝞袂跊韎鬽魅椚们們扪捫玧璊穈菛虋鍆钔門閅门悶懑懣暪焖燜闷掹擝矇蒙儚幪懞曚朦橗檬氋氓溕濛獴甍甿盟瞢矒礞艨莔萌蕄虻蝱鄳鄸霿靀顭饛鯍鸏鹲冡勐懵猛艋蜢蠓錳锰鯭鼆夢夣孟懜梦癦霥咪眯瞇冞弥彌戂擟攠瀰爢猕獼瓕祢禰糜縻蒾藌蘪蘼袮詸謎谜迷醚醾醿釄镾靡鸍麊麋麛麿侎孊弭敉沵洣渳濔灖米粎羋脒芈葞蔝銤冖冪嘧塓宓宻密峚幂幎幦怽榓樒櫁汨沕泌淧滵漞濗熐祕秘簚糸羃蔤蜜覓覔覛觅謐谧鼏婂媔嬵宀杣棉檰櫋眠矈矊矏綿緜绵臱芇蝒丏偭免冕勉勔喕娩愐汅沔渑湎澠眄睌絻緬缅腼葂靦鮸糆面靣麪麫麵麺喵媌嫹描瞄緢苗鶓鹋劰杪淼渺眇秒篎緲缈藐邈妙庙庿廟玅竗乜吀咩哶孭幭懱搣櫗滅瀎灭烕礣篾蔑薎蠛衊鑖鱴鴓垊姄岷崏怋慜捪旻旼民玟珉琘琝瑉痻盿砇碈緍緡缗罠苠鈱錉鍲鴖僶冺刡勄忞忟悯惽愍憫抿敃敏敯暋泯湣潣皿笢笽簢蠠閔閩闵闽鰵鳘黽黾冥名嫇明暝朙榠洺溟猽眀眳瞑茗蓂螟覭詺鄍銘铭鳴鸣佲凕姳慏酩命掵謬谬嚤摸劘嫫嬤嬷尛庅摩摹擵模橅磨糢膜蘑謨謩谟饃饝馍髍魔魹懡抹嗼圽塻墨妺嫼寞帓帞昩末枺歾歿殁沫漠爅獏瘼皌眜眽眿瞐瞙砞礳秣絈纆耱茉莈莫蓦藦蛨蟔貃貊貘銆鏌镆陌靺驀魩默黙哞侔劺呣恈牟眸繆缪蛑謀谋踎鍪鴾麰某毪氁亩姆峔拇母牡牳畂畆畒畝畞畮砪胟踇鉧仫凩募坶墓幕幙慔慕暮暯木楘毣沐炑牧狇目睦穆縸艒苜莯蚞鉬钼雮霂鞪嗱拏拿搻鎿镎乸哪雫吶呐妠捺笝納纳肭蒳衲袦豽貀軜那郍鈉钠靹魶孻腉乃倷奶嬭廼氖疓艿迺釢奈柰渿耐萘螚褦錼鼐囡侽南喃娚抩暔枏柟楠男畘莮諵遖难難戁揇湳煵腩萳蝻赧婻囔乪嚢囊欜蠰饢馕擃攮曩灢儾齉孬呶夒峱嶩巎怓憹挠撓猱獶獿硇碙蛲蟯詉譊鐃铙匘垴堖嫐恼悩惱瑙碯脑脳腦淖臑閙闹鬧抐疒眲訥讷呢娞脮腇餒馁鮾鯘內内氝氞錗嫩嫰恁能妮倪坭埿婗尼屔怩棿泥淣猊秜籾聣臡蚭蜺觬貎跜輗郳鈮铌霓馜鯢鲵麑齯伱伲你儗儞妳孴抳拟掜擬旎晲柅檷狔聻苨薿隬匿堄嫟嬺屰惄愵昵暱氼溺眤睨縌胒腻膩誽逆拈蔫哖姩年秊秥粘鮎鯰鲇鲶鵇黏捻撚撵攆涊淰焾碾簐蹍蹨躎輦辇卄唸埝廿念惗艌娘嬢孃酿醸釀嫋嬝嬲樢茑蔦袅裊褭鳥鸟尿脲捏揑苶啮嗫噛嚙囁囓圼孼孽嵲嶭巕帇摰敜枿槷櫱涅湼痆篞籋糱糵聂聶臬臲菍蘖蠥讘踂踗踙蹑躡錜鎳鑈鑷钀镊镍闑陧隉顳颞齧囜您脌拰儜凝咛嚀嬣宁寍寕寗寜寧擰柠橣檸狞獰甯聍聹薴鑏鬡鸋拧矃佞侫倿泞澝濘妞汼牛牜忸扭杻炄狃紐纽莥鈕钮靵侬儂农哝噥檂欁浓濃燶禯秾穠脓膿蕽襛譨農辳醲鬞繷弄挊挵癑齈羺槈檽獳耨鎒鐞伮奴孥帑笯駑驽努弩砮胬傉怒搙奻暖渜煖煗餪黁傩儺娜挪梛橠喏愞懦懧掿搦榒稬穤糑糥糯諾诺蹃逽鍩锘女籹釹钕恧朒沑衂衄婩疟瘧硸虐喔噢哦筽塸櫙欧歐殴毆熰瓯甌膒藲謳讴鏂鴎鷗鸥偶吘呕嘔耦腢蕅藕怄慪沤漚啪妑皅舥苩葩趴掱杷潖爬琶筢帊帕怕袙拍俳徘排棑牌犤猅箄簰簲輫哌沠派渒湃蒎鎃攀潘眅萠丬媻幋搫柈槃洀瀊爿盘盤磐磻縏蒰蟠跘蹒蹣鎜鞶冸判叛沜泮溿炍牉畔盼聁袢襻詊鋬鑻頖鵥乓滂胮膖雱霶厐嫎庞庬彷徬旁舽螃逄鰟鳑龎龐耪覫炐眫肨胖抛拋脬萢刨匏咆垉庖炰爮狍袍褜軳鞄麃麅跑奅泡炮疱皰砲礟礮靤麭呸怌肧胚衃醅培婄毰裴裵賠赔錇锫阫陪俖伂佩姵帔斾旆沛浿犻珮蓜轡辔配霈馷喷噴歕湓瓫盆葐呠翸剻匉嘭怦恲抨梈泙烹砰硑磞軯閛駍倗傰堋塜塳弸彭憉捀朋棚椖樥澎熢硼稝竼篣篷纄膨芃莑蓬蘕蟚蟛袶輣錋鑝韸韼騯髼鬅鬔鵬鹏捧淎皏掽椪槰碰踫丕伓伾劈噼坯岯悂憵批披抷旇枈炋狉狓砒磇礔礕秛秠紕纰翍耚豾邳釽鈚鉟銔錃錍陴霹駓髬魾啤埤壀崥枇毗毘焷琵疲皮笓篺罴羆肶脾腗膍蚍蚽蚾蜱螷蠯裨豼貔郫鈹铍阰隦魮鮍鲏鵧鼙仳匹吡噽嚭圮嶏庀擗疋痞癖脴苉諀銢鴄僻媲嫓屁揊淠潎澼甓疈稫譬辟闢鷿鸊偏囨媥楄犏篇翩鍂鶣楩胼腁賆跰蹁駢騈骈骿覑諞谝貵片騗騙骗魸剽勡嘌彯慓旚漂犥翲螵飃飄飘魒嫖瓢薸闝殍皫瞟篻縹缥醥顠僄徱票驃鰾撆撇暼氕瞥覕丿苤鐅嫳姘拚拼砏礗穦馪驞嚬娦嫔嬪玭琕矉薲蘋蠙貧贫顰频颦品榀汖牝聘乒俜娉涄甹砯聠艵頩凭凴呯坪塀屏岼帡帲幈平慿憑枰檘洴淜焩玶瓶甁竮箳簈缾胓苹荓萍蓱蚲蛢評评軿輧郱鮃鲆屛坡岥泼溌潑酦醗醱釙鏺钋頗颇嘙嚩婆櫇皤蔢鄱叵尀笸箥鉕钷駊哱奤岶廹敀昢洦湐烞珀破砶粕蒪迫魄剖娝垺抔抙捊箁裒咅哣掊犃仆噗扑撲攴攵潽炇痡鋪铺陠鯆僕匍圤墣濮獛璞瞨穙纀莆菐菩葡蒱蒲贌酺鏷镤圃圑埔擈普暜朴樸檏氆浦溥烳諩譜谱蹼鐠镨曝瀑舖舗七倛傶僛凄嘁墄妻娸悽慼慽戚捿攲敧期柒栖桤桼棲榿欹欺沏淒漆紪緀萋褄諆踦蹊迉郪鏚霋魌鶈丌亓亝其剘圻埼奇岐岓崎嵜帺忯愭懠掑斉斊旂旗棊棋檱櫀歧淇濝猉玂琦琪璂畦疧碁碕祁祈祺禥竒簯簱籏粸綥綦耆肵脐臍艩芪萁萕蕲藄蘄蚑蚔蚚蛴蜝蜞螧蠐褀跂軝鄿釮錡锜陭隑頎颀騎騏騹骐骑鬐鬿鯕鰭鲯鳍鵸鶀麒麡齊齐乞企启呇唘啓啔啟婍屺岂晵杞棨玘盀綺绮芑諬豈起邔闙呮咠唭噐器夡契弃愒憇憩摖暣栔棄槭欫气気氣汔汽泣湆湇滊炁甈盵矵砌碛碶磜磧磩罊芞葺藒蟿訖讫迄鐑掐擖葜峠拤跒酠鞐冾圶帢恰殎洽硈胢髂仟佥僉千厱圱圲奷婜孯岍悭愆慳扦拪掔搴撁攐攑攓杄檶櫏欦汘汧牵牽竏签簽籖籤粁臤芊茾蚈褰諐謙谦谸迁遷釺鈆鉛鏲钎铅阡韆顅騫骞鬜鬝鵮鹐乹乾亁仱偂前墘媊岒忴扲拑掮揵榩橬歬潛潜濳灊箝羬荨葥蕁虔軡鈐鉗銭錢鎆钤钱钳騚騝鰬黔黚槏浅淺繾缱肷膁蜸譴谴遣鑓伣俔倩傔儙刋堑塹壍嬱嵌悓慊棈椠槧欠歉皘篏篟綪縴芡茜蒨蔳輤呛啌嗆嗴嶈戕戗戧搶摤斨枪椌槍溬牄猐獇玱瑲篬羌羗羫腔蜣謒跄蹌蹡鎗鏘锖锵墙墻嫱嬙廧強强彊樯檣漒牆艢蔃蔷薔蘠墏抢繈繦羟羥襁鏹镪唴炝熗羻劁勪墝墽帩幧悄敲橇毃燆硗磽繑繰缲趬跷踍蹺蹻郻鄡鄥鍫鍬鐰锹頝骹乔侨僑喬嘺墧嫶峤憔桥槗樵橋櫵犞癄睄瞧硚礄翘翹荍荞菬蕎藮譙谯趫鐈鞒鞽顦巧愀釥髜俏僺峭撬撽窍竅誚诮躈陗鞘鞩韒髚切苆癿聺茄且匧厒妾怯悏惬愜挈洯淁穕窃竊笡箧篋籡蛪趄踥郄鍥锲鯜亲侵兓媇寴嵚嵰嶔欽綅衾親誛钦顉駸骎鮼勤嗪噙埐嫀嶜庈懃懄捦擒斳檎澿珡琴琹瘽禽秦耹肣芩芹菦菳蚙螓蠄鈙鈫雂靲鳹鵭坅寑寖寝寢昑梫笉螼赾鋟锓吢吣唚抋揿搇撳沁瀙菣藽倾傾卿圊埥寈氢氫淸清蜻軽輕轻郬錆鑋靑青鯖鲭剠勍啨夝情擎擏晴暒棾樈檠殑氰甠硘葝黥庼廎檾漀苘請謦请頃顷儬凊庆慶掅櫦殸濪碃磬箐綮罄靘儝卭宆惸憌桏橩焪焭煢熍琼璚瓊瓗睘瞏穷穹窮竆笻筇舼茕藑藭蛩蛬赹跫邛銎丘丠坵媝恘恷楸湫湬秋秌穐篍緧萩蓲蘒蚯蝵蟗蠤趥邱鞦鞧鰌鰍鳅鶖鹙龝俅叴唒囚崷巯巰扏朹梂殏毬求汓泅浗渞湭煪犰玌球璆皳盚紌絿肍芁莍虬虯蛷蝤裘觓觩訄訅賕赇逎逑遒酋醔釚釻銶頄鮂鯄鰽鼽搝糗伹佉匤区區呿坥屈岖岴嶇憈抾敺浀焌煀祛筁粬紶胠蛆蛐袪覰詘誳诎趋趍趨躯軀阹駆駈驅驱髷魼鰸鱋鶌麯麴麹黢佢劬忂戵斪朐欋欔氍淭渠灈爠璖璩癯瞿磲籧絇翑胊臞菃葋蕖蘧螶蟝蠷蠼衐衢躣軥鑺鴝鸜鸲鼩取娶曲竘竬蝺詓齲龋刞厺去耝覷覻觑趣閴闃阒麮鼁圈圏奍悛棬椦箞鐉佺全啳埢姾峑巏恮拳搼权楾権權泉洤湶牷犈瑔痊硂筌絟縓荃葲蜷蠸觠詮诠跧踡輇辁醛銓铨闎顴颧駩騡鬈鰁鳈齤烇犬犭犮畎綣绻虇券劝勧勸牶韏炔缺缼蒛阙瘸傕却卻埆塙崅悫愨慤搉棤榷燩琷皵硞确碏確碻礐礭趞闋闕阕雀鵲鹊囷夋踆逡宭峮帬羣群裙裠呥嘫然燃繎肰蚦蚺衻袇袡髥髯冄冉姌媣染橪珃苒蒅儴勷瀼獽瓤禳穣穰蘘躟鬤嚷壌壤攘爙懹譲讓让娆嬈桡橈荛蕘襓饒饶扰擾隢繞绕遶惹热熱人亻仁壬忈忎朲秂芢銋魜鵀忍栠栣棯秹稔綛荏荵躵仞仭任刃刄妊姙屻岃扨杒梕牣祍紉紝絍纫纴肕腍衽袵訒認认讱軔轫鈓靭靱韌韧飪餁饪扔仍礽芿辸陾囸日衵釰釼鈤馹驲傛媶嫆嬫容峵嵘嵤嶸戎搈搑曧栄榕榮榵槦毧溶瀜烿熔爃狨瑢穁絨縙绒羢肜茙茸荣蓉蝾融螎蠑褣鎔镕駥傇冗坈宂氄軵穃厹媃揉柔楺渘煣瑈瓇禸粈糅脜腬葇蝚蹂輮鍒鞣騥鰇鶔韖宍肉譳嶿侞儒嚅如嬬孺帤挐曘桇渪濡筎繻茹蒘蕠薷蝡蠕袽襦邚醹銣铷顬颥鱬鴑鴽乳擩汝肗辱鄏入嗕媷扖杁洳溽縟缛蓐褥鳰堧壖撋偄媆朊瑌瓀碝礝緛耎腝軟輭软阮桵甤緌蕤壡惢橤繠蕊蕋蘂蘃叡枘汭瑞睿芮蚋蜹銳鋭锐瞤橍润潤膶閏閠闰挼捼偌叒婼嵶弱楉渃焫爇箬篛若蒻鄀鰙鰯鶸仨撒洒灑訯躠靸卅摋櫒脎萨蕯薩鈒钑隡颯飒馺嘥噻塞愢揌毢毸腮顋鰓鳃嗮僿簺賽赛三厁叁弎毵毶毿犙鬖伞傘糁糝糣糤繖鏒鏾饊馓俕散潵閐壭桑桒槡嗓搡磉褬鎟顙颡丧喪慅掻搔溞繅缫臊螦颾騒騷骚鰠鱢鳋嫂扫掃埽氉瘙矂髞閪啬嗇懎摵擌栜歮歰洓涩渋澀澁濇濏瀒瑟璱瘷穑穡穯繬色譅轖銫鏼铯雭飋森椮槮襂僧鬙乷唦杀桬榝樧殺毮沙煞猀痧砂硰粆紗繺纱蔱裟鎩铩閷髿魦鯊鯋鲨啥傻儍倽厦唼啑喢嗄帹廈歃箑翜翣萐閯霎筛篩簁簛籭晒曬傓删刪剼嘇圸姍姗山幓彡挻搧杉柵檆潸澘煽狦珊痁笘縿羴羶脠膻舢芟苫衫跚軕邖釤钐閊鯅晱炶煔熌睒覢閃闪陕陝僐善墠墡嬗扇掞擅敾椫樿歚汕灗疝磰禪繕缮膳蟮蟺訕謆譱讪贍赡赸鄯銏鐥饍騸骟鱓鱔鳝伤傷商墒慯殇殤滳漡熵禓蔏螪觞觴謪鬺垧扄晌樉賞贘赏鋿鏛鑜丄上尙尚恦緔绱鞝弰捎旓梢烧焼燒稍筲艄莦萷蕱輎髾鮹勺杓柖玿芍韶少劭卲哨娋潲紹綤绍袑邵奓奢檨猞畬畭畲賒賖赊輋佘揲舌虵蛇蛥捨舍厍厙射弽慑慴懾摂摄攝欇涉涻渉滠灄社舎蔎蠂設设赦韘騇麝伸侁兟呻堔妽姺娠屾峷扟敒曑柛氠深燊珅甡甧申眒砷穼籶籸糂紳绅罙罧莘葠蓡蔘薓裑訷詵诜身駪鯓鯵鰺鲹鵢什榊神鉮鰰哂婶嬸审宷審弞曋沈渖瀋瞫矤矧覾訠諗讅谂谉邥頣魫侺愼慎昚涁渗滲甚瘆瘮眘祳肾胂脤腎葚蜃蜄鋠升呏声斘昇曻枡殅泩湦焺牲狌珄生甥竔笙聲苼鉎鍟阩陞陹鵿鼪憴縄繉繩绳譝偗渻省眚剩剰勝圣墭嵊晟晠榺橳琞盛聖胜蕂貹賸呞失尸屍师師施浉湤湿溮溼濕狮獅瑡箷絁葹蒒蓍虱蝨褷襹詩诗邿酾釃釶鉇鍦鯴鰤鲺鳲鳾鶳鸤乭十埘塒姼实実寔實峕嵵拾时旹時榯湜溡炻石祏竍蚀蝕識识遈鉐食飠饣鮖鰣鲥鼫鼭乨使兘史始宩屎榁矢笶豕鉂駛驶世丗亊事仕侍冟势勢卋呩嗜噬士奭嬕室崼市式弑弒徥忕恀恃戺拭揓是昰枾柹柿栻氏澨烒煶眂眎眡睗示礻秲筮簭舐舓莳蒔螫襫視视觢試誓諟諡謚试谥貰贳軾轼适逝適遾釈释釋鈰鉃鉽銴铈飾餙餝饰鰘籂辻収收垨守手扌艏首兽受售嘼壽夀寿授涭狩獣獸痩瘦綬绶膄鏉书倏倐儵叔姝婌抒掓摅攄書杸枢梳樞橾殊殳毹毺淑瀭焂琡疎疏紓綀纾舒菽蔬跾踈軗輸输鄃陎鮛鵨塾孰尗熟璹秫贖赎属屬数數暏暑曙潻癙糬署薥薯藷蜀蠴襡襩鱪鱰黍鼠鼡侸咰墅尌庶庻怷恕戍捒朮术束树樹沭漱潄澍濖竖竪絉腧荗蒁虪術裋豎述鉥錰鏣霔鶐刷唰耍誜摔衰甩卛帅帥蟀拴栓閂闩涮腨双孀孇欆礵艭雙霜騻驦骦鷞鸘鹴塽慡漺爽縔鏯灀脽誰谁水氵氺閖帨涗涚睡祱稅税裞吮楯橓瞚瞬舜蕣順顺鬊說説说妁搠朔槊欶烁爍獡矟硕碩箾蒴鎙鑠铄丝俬凘厮厶司咝嘶噝媤廝思恖撕斯楒泀澌燍磃禗禠私糹絲緦纟缌罳蕬虒蛳蜤螄蟖蟴鉰銯鋖鍶鐁锶颸飔騦鷥鸶鼶死亖似佀価俟儩兕嗣四姒娰孠寺巳杫枱柶梩榹汜泗泤洍洠涘瀃牭祀禩竢笥耛耜肂肆蕼覗貄釲鈶鈻飤飼饲駟騃驷倯凇娀崧嵩庺忪憽松枀枩柗梥檧淞濍硹菘鬆傱嵷怂悚愯慫楤竦耸聳駷宋訟誦讼诵送鎹頌颂餸凁嗖廀廋捜搜摉摗溲獀艘蒐蓃螋鄋醙鎪锼颼飕餿馊騪傁叜叟嗾擻櫢瞍籔薮藪嗽擞瘶囌櫯甦稣穌窣苏蘇蘓酥鯂俗傃僳嗉塐塑夙嫊宿愫愬憟梀榡樎樕橚殐泝洬涑溯溸潚潥玊珟璛碿簌粛粟素縤肃肅膆莤蔌藗觫訴謖诉谡趚蹜速遡遬鋉餗驌骕鱐鷫鹔狻痠酸匴祘笇筭算蒜倠哸夊浽滖濉熣芕荽荾虽雖鞖瓍綏绥遀隋随隨髄瀡膸髓亗埣嬘岁嵗旞檖歲歳澻煫燧璲睟砕碎祟禭穂穗穟繀繐繸襚誶譢谇賥遂邃鐆鐩隧韢孙孫搎槂狲猻荪蓀蕵薞飧飱损損榫笋筍箰簨鎨隼鶽傞唆嗍嗦娑挱挲摍桫梭睃簑簔縮缩羧莎莏蓑趖鮻乺唢嗩所暛溑獕琐琑瑣索褨鎍鎖鎻鏁锁溹蜶逤他塌她它榙溻牠祂褟趿鉈铊闧塔墖獭獺鮙鰨鳎傝嚃嚺崉挞搨撻榻橽毾沓涾澾濌狧禢粏誻譶踏蹋蹹躂躢遝遢錔闒闥闼阘鞜鞳侤囼孡胎儓台坮嬯抬擡旲檯炱炲箈籉臺苔菭薹跆邰颱駘骀鮐鲐冭太夳忲态態汏汰汱泰溙燤肽舦酞鈦钛啴嘽坍怹摊擹攤滩潬灘痑瘫癱舑貪贪倓坛埮墰墵壇壜婒弹弾彈惔憛昙曇榃橝檀潭燂痰罈罎藫覃談譚譠谈谭貚郯醈醰錟锬顃僋嗿坦忐憳憻暺毯璮菼袒襢醓鉭钽叹嘆探歎湠炭碳舕劏嘡汤湯羰薚蝪蹚鏜镗鞺鼞傏唐啺坣堂塘嵣搪棠榶樘橖溏漟煻瑭磄禟篖糃糖糛膅膛蓎螗螳赯踼鄌醣鎕闛隚餹饄鶶伖倘偒傥儻戃曭淌爣矘耥躺鎲钂镋摥烫燙趟鐋铴夲嫍幍弢慆掏搯槄涛滔濤瑫絛縚縧绦詜謟轁鞱韜韬飸饕匋咷啕桃洮淘祹綯绹萄蜪裪迯逃醄鋾陶鞀鞉饀駣騊鼗討讨套忑忒慝特脦蟘鋱铽熥膯鼟儯幐滕漛疼痋籐籘縢腾藤虅螣誊謄邆駦騰驣鰧霯剔擿梯踢銻锑鷈鷉偍厗啼嗁媞崹徲惿提渧漽瑅睼碮禔禵稊綈緹绨缇罤蕛褆謕趧蹄蹏醍鍗題题騠鮷鯷鳀鵜鶗鶙鷤鹈体挮躰軆骵體倜剃嚏嚔屉屜悌悐惕惖戻掦揥替朑歒殢涕瓋笹籊薙褅趯逖逷髰鬀鬄兲天婖添酟靔靝黇塡填屇恬搷沺湉璳甛甜田畋畑碵磌窴緂胋菾闐阗鴫鷆鷏倎唺忝悿晪殄淟琠痶睓腆舔覥觍賟錪餂掭瑱舚佻庣恌挑旫祧聎岧岹条條樤祒笤芀苕萔蓚蓨蜩调迢鋚鎥鞗髫鯈鰷鲦齠龆嬥宨晀朓窕窱脁誂眺粜糶絩覜趒跳怗聑萜貼贴僣帖蛈鉄銕鐡鐵铁驖呫飻餮厅厛听庁廰廳桯汀烃烴綎耓聴聼聽鞓亭停婷嵉庭廷楟榳渟筳聤莛葶蜓蝏諪邒閮霆鼮侹圢娗挺梃涏烶珽町甼脡艇誔鋌铤頲颋嗵樋炵痌絧蓪通仝佟僮勭同哃峂峒峝庝彤晍曈朣桐橦氃浵潼烔燑犝狪獞眮瞳砼秱穜童粡膧茼蚒詷赨酮鉖鉵銅铜餇鮦鲖捅桶筒筩統綂统恸慟憅痛衕偷偸婾媮緰鋀鍮亠头投頭骰妵敨斢紏蘣黈透凸堗宊嶀怢捸涋湥痜禿秃突葖鋵鵚鼵凃図图圖圗塗屠峹嵞庩廜徒悇捈揬梌涂潳瑹瘏稌筡腯荼蒤跿途酴鈯鍎馟駼鵌鶟鷋鷵吐唋土圡釷钍兎兔堍莵菟迌鵵汢圕湍煓猯貒剸团団團慱抟摶槫檲漙篿糰鏄鷒鷻墥畽疃彖湪褖推蓷藬尵弚橔穨蘈蹪隤頹頺頽颓魋俀僓腿蹆骽娧煺蛻蜕螁褪退駾吞呑噋旽暾朜涒焞囤坉屯忳臀臋芚蛌豘豚軘霕飩饨魨鲀黗氽乇仛侂咃咜托扡拕拖挩捝杔汑沰涶脫脱莌袥託讬飥饦馲魠鮵佗侻坨堶媠岮柁槖橐沱沲狏砣砤碢紽袉詑跎酡阤陀陁馱駄駝駞騨驒驝驮驼鮀鴕鸵鼉鼍鼧妥嫷庹彵椭楕橢鰖鵎唾嶞拓柝毤毻箨籜萚蘀跅劸哇嗗娲媧屲挖搲攨洼溛漥瓾畖穵窊窐窪蛙韈鼃娃佤咓瓦砙邷嗢聉腽膃袜襪韤呙咼喎歪竵外顡剜塆壪婠帵弯彎湾潫灣睕蜿豌丸刓完岏忨抏捖汍烷玩琓笂紈纨翫芄貦頑顽倇唍埦婉宛惋挽晚晥晩晼梚椀涴琬畹皖盌碗箢綩綰绾脘莞菀萖踠輓鋔万卍卐妧捥杤澫瞣脕腕萬薍蟃贃贎輐鋄錽鎫尣尩尪尫汪亡亾仼兦王莣蚟彺往徃惘暀枉棢瀇網网罒罓罔罖菵蛧蝄誷輞辋魍妄忘旺望朢迋偎危厃喴威媙崴嵔嶶巍微愄揋揻椳楲溦烓煨燰癓縅葨葳薇蜲蝛覣詴逶隇隈霺鰃鰄鳂唯喡囗囲围圍壝媁峗峞嵬帏帷幃惟桅欈沩洈涠湋溈潍潙潿濰為爲犩琟矀硙維维蓶覹违違鄬醀鍏闈闱韋韦鮠亹伟伪偉偽僞儰委娓寪尾屗崣嶉徫愇捤撱斖暐梶椲洧浘渨濻瀢炜煒猥玮瑋痏痿硊碨緯纬腲艉芛苇荱萎葦蒍蔿諉诿踓鍡隗韑韙韡韪頠颹骩骪骫鮪鲔为位卫叞味喂墛媦尉慰懀未渭煟熭犚猬畏緭罻胃苿菋蔚藯蘶蜼蝟螱衛衞褽謂讆讏谓躗躛軎轊鏏霨餧餵饖魏鮇鳚塭昷榅榲殟温溫瑥瘟豱輼轀辒鎾鞰饂鰛鰮鳁彣文炆珳瘒紋繧纹聞芠蚉蚊螡蟁閺閿闅闦闻阌雯馼駇魰鳼鴍鼤伆刎吻呅呡抆桽稳穏穩紊肳脗問妏揾搵汶渂璺莬问顐嗡翁聬螉鎓鶲鹟勜塕奣嵡攚暡滃瞈蓊瓮甕罋蕹齆倭唩挝涡涹渦猧窝窩莴萵蜗蝸踒婐婑我捰仴偓卧媉幄捾握斡枂楃沃渥濣焥瓁瞃硪肟腛臒臥齷龌乌剭呜嗚圬屋巫弙杇歍汙汚污洿烏窏箼螐誈誣诬邬鄔鎢钨鰞鴮吳吴吾呉墲娪峿无梧橆毋洖浯無珸璑祦芜茣莁蕪蜈蟱譕郚鋙铻鯃鵐鷡鹀鼯乄五仵伍侮倵儛午啎妩娒娬嫵庑廡忤怃憮捂摀武潕熓牾玝珷瑦甒瞴碔舞躌迕逜陚鵡鹉俉兀务務勿卼唔坞塢奦婺寤屼岉嵍嵨忢悞悟悮戊扤敄旿晤杌溩焐熃物痦矹窹粅芴蘁誤误鋈阢隖雺雾霚霧靰騖骛鶩鹜鼿齀俙傒僖兮凞卥厀吸唏唽嘻噏嚱夕奚娭嬆嬉屖嵠巇希徆徯忚怸恓息悉悕惁惜扱扸昔晞晰晳暿曦析桸榽樨橀欷歙氥汐浠淅渓溪潝烯焁焈焟焬煕熄熈熙熹熺熻燨爔牺犀犠犧狶琋瘜皙睎瞦矽硒磎礂稀穸窸粞糦緆繥羲翕翖肸肹膝舾莃菥蒠蜥螅螇蟋蠵裼西覡觹觽觿譆谿豀豨豯貕赥邜郗鄎酅醯釸錫鏭鐊鑴锡隵餏饎饻鯑鵗鸂鼷习喺媳嶍席椺槢檄漝習蒵蓆薂袭襲觋謵趘郋鎴隰霫飁騱騽驨鰼鳛喜囍壐屣徙憘憙枲橲歖洗漇玺璽矖禧縰葈葸蓰蟢諰謑蹝躧鈢鉨鉩鱚係匸卌呬墍屃屓屭忥怬恄慀戏戯戱戲椞欯潟澙熂犔盻磶禊稧系細綌縘繫细绤舃舄蕮虩衋覤赩趇郤釳闟阋隙隟霼餼饩鬩黖傄呷煆瞎虲虾蝦谺閕颬鰕侠俠匣埉峡峽敮暇柙炠烚狎狭狹珨瑕硖硤碬磍祫筪縖翈舝舺蕸赮轄辖遐鍜鎋陜陿霞騢魻鶷黠閜丅下乤吓圷夏夓懗梺疜睱罅諕鎼鏬仙仚佡僊僲先嘕奾嬐孅屳廯忺憸掀攕暹杴枮氙珗祆秈籼繊纎纖纤苮莶薟褼襳跹蹮躚酰銛銽鍁铦锨韯韱馦鮮鱻鲜鶱伭咁咸啣嗛妶娴娹婱嫌嫺嫻弦憪挦撏涎湺澖甉痫癇癎盷瞯礥稴絃胘舷藖蚿蛝衔衘誸諴賢贒贤輱醎銜鑦閑閒闲鷳鷴鷼鹇鹹麙冼尟尠崄嶮幰搟攇显櫶毨灦烍燹狝猃獫獮玁禒筅箲藓蘚蚬蜆譣赻跣銑鍌铣险険險韅顕顯僩僴县咞哯垷埳塪壏姭娊宪岘峴憲撊晛橌橺涀瀗献獻现現県睍粯糮絤綫線縣线缐羡羨腺臔臽苋莧誢豏鋧錎限陥陷霰餡馅麲鼸乡厢廂忀楿欀湘瓖相稥箱緗纕缃膷芗萫葙薌襄郷鄉鄊鄕鑲镶香驤骧鱜麘佭庠栙瓨祥絴翔詳详跭享亯响想晑蚃蠁銄響飨餉饗饟饷鮝鯗鱶鲞像勨向嚮姠嶑巷曏橡珦缿蟓衖襐象鐌項项鱌侾削呺哓嘐嘵嚣嚻囂婋宯宵庨彇憢揱撨枭枵梟櫹歊毊消潇瀟灱灲烋焇猇獢痚痟硝硣穘窙箫簘簫綃绡翛肖膮萧蕭藃虈虓蛸蟂蟏蟰蠨踃逍銷销霄颵驍骁髇髐魈鴞鴵鷍鸮崤殽洨淆訤誵郩小晓暁曉皛皢筱筿篠謏俲傚効咲哮啸嘋嘨嘯孝恔效敩斅斆校歗涍熽笑詨誟些娎揳楔歇猲蝎蠍偕劦勰协協嗋嚡垥奊孈峫恊愶拹挟挾携撷擕擷攜斜旪熁燲瑎絜綊緳縀缬翓胁脅脇脋膎蝢衺襭諧讗谐邪鞋鞵龤写冩寫藛血亵伳偞偰僁卨卸噧塮夑媟屑屟屧嶰廨徢懈暬械榍榭泄泻洩渫澥瀉瀣灺炧炨烲焎燮爕獬祄禼糏紲絏絬緤繲纈绁缷薢薤蟹蠏褉褻謝谢躞邂靾鞢韰齂齘齛齥俽噷噺妡嬜廞心忄忻惞新昕杺欣歆盺芯薪訢辛邤鈊鋅鑫锌馨馫枔襑鐔镡伈伩信囟孞炘焮脪舋衅訫軐釁阠顖馸垶惺星曐煋猩瑆皨箵篂腥興觪觲謃騂骍鮏鯹侀刑哘型娙形洐滎硎荥蛵行邢郉鈃鉶銒鋞钘铏陉陘餳饧擤睲醒倖兴姓婞嬹幸性悻杏涬緈臖荇莕葕兄兇凶匂匈哅忷恟汹洶胷胸芎訩詾讻賯熊熋雄焸焽夐敻詗诇休俢修咻庥樇烌羞脙脩臹貅銝鎀鏅飍饈馐髤髹鮴鱃鵂鸺苬朽滫潃糔嗅嚊岫峀溴珛琇璓秀綉繍繡绣螑袖褎褏銹鏥鏽锈齅偦吁嘘噓圩墟媭嬃戌揟旴楈欨欻歔歘燸疞盱砉綇縃胥蕦虗虚虛蝑裇訏許諝譃谞鑐需須须顼驉鬚魆魖俆冔徐禑蒣呴喣姁暊栩湑珝盨稰糈詡諿许诩鄦醑伵侐勖勗卹叙垿壻婿序怴恤慉敍敘旭昫晇朂槒欰殈汿沀洫溆漵潊烅烼煦獝珬盢瞁稸絮続緒緖續绪续聓聟芧蓄蓿藇藚訹賉酗銊頊鱮儇吅喧塇媗宣弲愃愋懁揎昍晅暄梋煊瑄睻矎禤箮翧翾萱萲蓒蕿藼蘐蝖蠉諠諼譞谖軒轩鋗鍹鞙駽鰚嫙悬懸旋暶檈漩玄玹琁璇璿痃蜁咺暅烜癣癬选選怰昡楥楦泫渲炫琄眩眴碹絢縼繏绚蔙衒袨贙鉉鏇铉镟颴疶蒆薛辥辪靴鞾乴壆学學峃嶨斈泶澩燢穴茓袕觷踅鷽鸴樰膤艝轌雪鱈鳕吷坹岤桖瀥狘瞲謔谑趐勋勛勲勳嚑坃埙塤壎壦曛焄熏燻爋獯矄纁臐薫薰蘍醺偱噚姰寻尋峋巡廵循恂揗攳旬杊栒桪樳毥洵浔潯灥燅燖珣璕畃紃荀蟳詢询郇鄩駨鱏鱘鲟伨侚卂噀奞巺巽徇愻殉殾汛潠狥稄蕈訊訓訙训讯迅迿逊遜鑂顨馴驯丫压吖呀圧垭壓孲庘押枒桠椏錏鐚铔鴉鴨鵶鸦鸭伢厑厓堐岈崕崖涯漄牙猚琊睚笌芽蚜衙齖厊哑唖啞庌疨痖瘂蕥雅亚亜亞俹冴劜圔圠埡娅婭挜掗揠氩氬犽猰玡砑稏窫聐襾覀訝讶軋轧迓齾傿剦嫣嬮崦嶖恹懕懨樮歅淊淹渰湮漹烟焉焑煙珚硽篶胭臙菸鄢醃閹阉黫严厳啱喦嚴埏塩壛壧妍姸娫娮岩嵒嵓巌巖巗延揅昖楌檐櫩欕沿炎炏狿琂盐研硏碞礹筵簷綖莚蔅虤蜒言訁訮詽讠郔閆閻闫阎顏顔颜鹽麣乵俨偃儼兖兗剡匽厣厴噞夵奄孍嵃巘巚弇愝戭扊抁掩揜曮棪椼檿沇渷演琰甗眼縯罨萒蝘衍裺褗躽遃郾酓隒顩魇魘鰋鶠黡黤黬黭黶鼴鼹齴龑偐厌厭咽唁喭嚈嚥囐堰墕妟姲嬊嬿宴彥彦敥晏暥曕曣椻溎滟灎灔灧灩烻焔焰焱熖燄燕爓牪猒砚硯艳艶艷覎觃觾諺讌讞谚谳豓豔贋贗赝軅酀酽醶醼釅隁雁餍饜騐験騴驗驠验鬳鳫鴈鴳鷃鷰齞央姎抰殃泱眏秧胦鉠鍈雵鞅鴦鸯佯劷垟崵崸徉扬揚敭旸昜暘杨楊氜洋炀烊煬珜疡瘍眻羊羏蛘諹輰鍚钖阦阳陽霷颺飏鰑鴹鸉仰佒傟养卬咉坱岟慃懩攁柍楧氧氱瀁炴痒癢礢紻蝆軮飬養駚怏恙样様樣漾羕詇吆喓夭妖幺楆殀祅腰葽訞邀鴁鴢倄傜嗂垚堯姚媱尧尭峣嶢嶤徭愮揺搖摇摿暚榣滧烑爻猺珧瑤瑶磘窑窯窰繇肴蘨謠謡谣軺轺遙遥邎鎐顤颻飖餆餚鰩鱙鳐仸偠咬婹宎岆崾抭杳枖柼榚溔狕眑窅窈舀苭蓔闄騕鷕齩曜熎燿獟矅穾窔筄纅耀艞药葯薬藥袎要覞詏讑靿鷂鹞鼼倻吔噎擨暍椰歋潱蠮捓揶爷爺瑘耶釾鋣鎁铘也冶嘢埜壄漜野业亱僷叶墷夜嶪嶫抴捙掖擛擪擫晔曄曅曗曳曵枼枽業殗洂液澲烨煠燁爗璍皣瞱瞸礏腋葉謁谒邺鄴鍱鎑鐷靥靨頁页餣饁馌驜鵺鸈亪一乊伊依医吚咿噫壱壹夁嫛嬄弌悘揖撎檹毉洢渏漪猗瑿畩祎禕稦繄蛜衣衤譩辷郼醫銥铱鷖鹥黟黳乁仪侇儀冝匜咦圯夷姨媐宐宜宧寲峓嶬嶷巸彛彜彝彞怡恞扅拸暆杝柂栘桋椬椸沂沶洟熪狋珆瓵疑痍眙移簃籎羠胰荑萓蛦螔袘觺詒誃謻讉诒貽贻跠迻遗遺鏔頉頤頥顊颐飴饴鮧鴺乙乛以佁倚偯嬟崺已庡扆攺敼旑旖椅檥矣礒笖舣艤苡苢蚁螘蟻裿輢轙迆迤迱逘酏釔鈘鉯钇顗鳦齮乂义亄亦亿仡伇伿佚佾俋億兿刈劓劮勚勩匇呓呭呹唈嗌囈圛坄垼埶埸墿奕嫕嬑寱屹峄嶧帟帠幆廙异弈弋役忆忔怈怿悒悥意憶懌懿抑挹敡斁易晹曀曎杙枍枻栧棭榏槸檍欭歝殔殪殹毅泆浂浥浳湙溢潩澺瀷炈焲熠熤熼燚燡燱獈玴異疫痬瘗瘞瘱癔益睪瞖秇穓竩篒縊繶繹绎缢羛義羿翊翌翳翼耴肄肊膉臆艗艺芅苅萟蓺薏藙藝蘙虉蛡蜴螠衪袣裔裛褹襼訲訳詍詣誼譯議讛议译诣谊豙豛豷貖貤贀跇軼轶逸邑鄓醳醷釴鈠鎰鐿镒镱阣隿霬饐駅驛驿骮鮨鯣鶂鶃鶍鷁鷊鷧鷾鸃鹝鹢黓齸弬侌凐喑噾囙因垔堙姻婣愔慇栶殷氤洇溵濦瘖磤禋秵筃絪緸茵荫蒑蔭裀諲銦铟闉阥阴陰陻隂霒霠鞇音韾駰骃齗乑冘吟噖嚚圁垠夤婬寅峾崟崯斦檭殥泿淫滛烎犾狺珢璌碒荶蔩蟫訔訚訡誾鄞鈝銀银霪鷣齦龂龈吲尹嶾廴引朄檃檼櫽淾濥瘾癮粌蘟蚓螾讔赺趛輑鈏隐隠隱靷飮飲饮印垽堷廕慭憖憗懚洕湚猌癊窨胤茚酳鮣偀嘤噟嚶婴媖嫈嬰孆孾应応愥應撄攖朠桜樱櫻渶瀴煐珱瑛璎瓔甇甖碤礯緓纓绬缨罂罃罌膺英莺蘡蝧蠳褮譍譻賏軈鑍锳霙韺鴬鶑鶧鶯鷪鷹鸎鸚鹦鹰僌営塋嬴巆攍楹櫿溁溋滢潆濙濚濴瀅瀛瀠瀯灐灜熒營瑩盁盈禜籝籯縈茔荧莹萤营萦萾蓥藀蛍蝇蝿螢蠅覮謍贏赢迎鎣巊廮影摬梬浧潁瘿癭矨穎郢鐛頴颍颕颖媵映暎硬膡鱦哟唷喲佣傭嗈噰墉壅嫞庸廱慵拥擁滽澭灉牅痈癕癰臃邕郺鄘鏞镛雍雝饔鱅鳙鷛喁顒颙鰫俑勇勈咏埇塎嵱彮怺恿悀惥愑愹慂柡栐永泳涌湧甬硧蛹詠踊踴鯒鲬用砽苚蒏醟优優呦嚘峳幽忧怮悠憂懮攸櫌泑浟滺瀀纋羪耰逌鄾麀偤尢尤庮怞怣楢沋油游犹猶猷由甴疣秞肬莜莸蕕蚰蝣訧輏輶逰遊邮郵鈾铀駀魷鮋鱿鲉丣卣友有栯梄槱湵牖牗禉羑聈苃莠蜏酉銪铕黝亴佑佦侑又右哊唀囿姷孧宥峟幼柚櫾牰狖祐蚴誘诱貁迶酭釉鼬唹扜扝淤瘀盓穻箊紆纡込迂迃陓乻予于亐伃余俞兪堣堬妤娛娯娱媀嬩崳嵎嵛愉愚扵揄於旟杅桙楡楰榆欤歈歟歶渔渝湡漁澞牏狳玗玙瑜璵盂睮禺窬竽籅羭腴臾舁舆艅茰萮萸蕍蘛虞虶蝓螸衧褕覦觎諛謣谀踰輿轝逾邘酑鍝隃隅雓雩餘馀騟骬髃魚魣鮽鯲鰅鱼鷠鸆齵与伛俁俣偊傴匬噳圄圉宇寙屿嶼庾懙挧敔斔斞楀瑀瘐祤禹穥窳羽與萭語语貐鄅雨頨麌齬龉俼僪儥喅喩喻圫域堉妪嫗寓峪嶎庽彧御忬悆惐愈慾戫昱棛棜棫櫲欎欝欥欲毓浴淢淯滪潏澦灪焴煜燏燠爩狱獄玉琙瘉癒矞砡硢硲礇礖礜禦秗稢稶篽籞籲粖緎罭聿肀育艈芋芌茟蒮蓣蓹蕷薁蘌蜟蜮袬裕誉諭譽谕豫軉輍逳遇遹郁醧鈺銉鋊錥鐭钰閾阈雤霱預预飫饇饫馭驈驭鬰鬱鬻魊鱊鳿鴥鴧鴪鵒鷸鸒鹆鹬冤剈囦嬽寃悁惌棩淵渁渆渊渕灁眢肙葾蒬蜎蜵裷駌鳶鴛鵷鸢鸳鹓鼘鼝元円原厡厵员員园圆圎園圓垣塬媴嫄援杬榞榬橼櫞沅湲源溒爰猨猿笎緣縁缘羱芫茒蒝薗蚖蝝蝯螈袁褤謜貟贠轅辕邍邧酛鈨鎱騵魭鶢鶰黿鼋盶薳远逺遠鋺傆噮垸夗妴媛怨愿掾瑗禐苑衏裫褑院願啘曰曱矱箹約约哕噦刖妜嬳岄岳嶽恱悅悦戉抈捳月樾泧瀹爚玥礿禴篗籆籥籰粤粵蘥蚎蚏越跀跃躍軏鈅鉞鑰钥钺閱閲阅鸑鸙黦龠龥奫晕暈氲氳煴熅蒀蒕蝹贇赟馧云伝勻匀囩妘愪抣昀橒沄涢溳澐熉畇眃秐筠筼篔紜縜纭耘耺芸蒷蕓郧鄖鋆雲允喗夽抎殒殞狁磒荺賱鈗阭陨隕霣馻齫齳傊孕恽惲愠慍枟熨緼縕缊腪蕰蕴薀藴蘊褞运運郓鄆酝醖醞韗韞韫韵韻餫匝咂帀扎拶桚沞臜臢迊鉔魳囃杂沯砸襍雑雜雥韴咋哉栽渽溨災灾烖甾畠睵賳宰崽傤儎再在扗洅縡載载酨兂橵簪簮糌鐕鐟鵤偺咱喒儧儹噆寁揝撍攅攒攢昝趱趲囋暂暫濽灒瓉瓒瓚禶襸讃讚賛贊赞蹔鄼錾鏨饡匨牂羘臧賍賘贓贜赃髒駔驵塟奘弉脏臓臟葬蔵銺傮糟蹧遭醩凿鑿早枣栆棗澡璅璪薻藻蚤唕唣喿噪慥梍灶煰燥皁皂竃竈簉艁譟趮躁造则則啧啫嘖嫧帻幘択择擇樍歵沢泎泽溭滜澤皟瞔矠礋箦簀舴蔶蠌襗諎謮責賾责赜迮鸅齚齰仄崱庂捑昃昗汄戝蠈賊贼鰂鱡鲗怎譖谮増增憎橧璔矰磳繒缯罾譄鄫鱛囎熷甑贈赠鋥锃鬵偧劄哳喳抯挓揸摣柤楂樝渣皶皻紥紮觰譇齄齇札牐箚耫蚻譗鍘铡閘闸霅厏拃眨砟鮓鮺鲊鲝乍吒咤宱搾栅榨溠灹炸痄蚱詐诈醡夈捚摘斋斎榸粂齋宅檡窄鉙债債寨瘵砦噡岾嶦惉旃旜枬栴毡氈氊沾瞻薝蛅詀詹譫谵趈邅閚霑飦饘驙魙鱣鳣鸇鹯讝嫸展崭嶃嶄搌斩斬榐橏琖盏盞輾辗醆颭飐佔偡僝占嶘战戦戰栈桟棧湛站綻绽菚蘸虥虦覱譧轏驏傽嫜张張彰慞暲樟漳獐璋章粻蔁蟑遧鄣鏱餦騿鱆麞仉幥掌涨漲礃丈仗墇嶂帐帳幛扙杖涱痮瘬瘴瞕粀胀脹賬账障佋妱巶招昭皽釗鉊鍣钊駋找沼爪爫瑵兆召垗旐曌枛棹櫂炤照燳狣瞾笊箌罀罩羄肁肇肈詔诏赵趙鮡嗻嫬遮厇哲啠喆嚞埑悊折摺晢晣歽矺砓磔籷粍虴蛰蜇蟄袩詟謫謺讁讋谪輒輙轍辄辙銸鮿乽者褶襵赭踷鍺锗柘樜浙淛蔗蟅这這鷓鹧侦偵嫃寊帧帪幀搸斟桢椹楨榛樼殝浈湞溱潧澵獉珍珎瑧甄眞真砧碪祯禎禛箴籈胗臻葴蒖蓁薽貞贞轃遉酙針鉁錱鍼针鱵姫屒弫抮昣枕畛疹眕稹紾縝縥缜聄萙袗裖覙診诊軫轸辴駗鬒黰侲圳塦挋振揕朕栚甽眹紖絼纼誫賑赈鋴鎭鎮镇阵陣震鴆鸩争佂凧埩姃媜峥崝崢征徰徴徵怔掙揁炡烝爭狰猙癥眐睁睜筝箏篜糽聇脀蒸踭鉦錚鏳钲铮鬇愸抍拯掟撜整晸氶塣幁挣政正症証諍證证诤郑鄭靕鴊之倁卮吱巵憄搘支枝栀栺梔椥榰汁汥泜疷知祗祬秓稙綕織织肢胑胝脂臸芝蘵蜘衼隻馶鳷鴲鼅侄値值埴執妷姪嬂慹戠执摭植樴殖淔漐潪犆瓡直禃絷縶聀职職膱蟙跖踯蹠躑軄釞馽凪劧只咫址坁坧墌夂帋恉扺抧指旨枳止汦沚洔淽疻砋祇祉秖紙纸芷茋藢衹襧訨趾軹轵酯阯黹乿俧偫傂儨制剬劕厔垁墆娡寘峙崻帙帜幟庢庤廌彘徏徝志忮懥懫扻挃挚掷搱摨摯擲擳旘晊智柣栉桎梽櫍櫛歭治洷滍滞滯潌瀄炙熫狾猘璏瓆畤疐痓痔痣瘈礩祑秩秷稚稺穉窒筫紩緻置翐膣至致芖蛭袟袠製覟觗觯觶誌豑豒豸貭質贄质贽跱踬躓輊轾迣郅銍鋕鑕铚锧陟隲雉駤騭騺驇骘鯯鴙鷙鸷中伀刣妐幒彸忠柊汷泈炂盅籦終终舯蔠蜙螤螽衳衷蹱鈡銿鍾鐘钟锺鴤鼨冢喠塚尰徸歱煄瘇种種肿腫踵仲众偅堹妕媑狆眾祌筗茽蚛衆衶諥重侜周啁喌嚋婤州徟洲淍炿烐珘盩矪粥舟謅譸诌诪賙赒輈輖辀週郮銂霌駲騆鵃鸼妯碡軸轴帚晭疛睭箒肘菷鯞伷僽冑呪咒咮噣宙昼晝甃皱皺籀籒籕粙紂縐纣绉胄荮葤詋酎駎驟骤侏朱株槠橥櫧櫫洙潴瀦猪珠硃秼絑茱蕏藸蛛蝫蠩袾誅諸诛诸豬跦邾銖铢駯鮢鯺鴸鼄劚孎斸曯欘灟炢烛燭爥瘃窋竹竺笁笜篴舳茿蓫蠋蠾躅逐逫钃鱁丶主劯嘱囑宔帾拄渚濐煑煮燝瞩矚罜褚詝陼鸀麈乼伫佇住助坾墸壴嵀拀杼柱柷樦殶注炷疰眝砫祝祩竚筑筯箸築篫簗紵紸纻羜翥苎苧莇著蛀註貯贮跓軴迬鉒鋳鑄铸飳馵駐驻麆抓撾檛簻膼髽跩拽专叀塼嫥専專瑼甎砖磗磚膞蟤諯鄟顓颛鱄孨竱轉转僎啭囀堟撰灷瑑篆篹籑縳腞蒃襈譔賺赚転饌馔妆妝娤庄庒桩梉樁湷粧糚荘莊装裝壮壯壵撞焋状狀椎追錐锥隹騅骓鵻沝坠墜娷惴甀畷硾礈笍綴縋缀缒腏膇諈贅赘醊錣鑆啍宒窀肫衠諄谆迍准凖埻準綧稕訰倬拙捉桌梲棁棳槕涿炪焯穛穱窧鐯丵劅卓叕啄啅圴妰娺彴撯擆擢斀斫斮斱斲斵晫椓櫡汋浊浞濁濯灂灼烵犳琢琸着硺禚窡篧籗籱罬茁蠗蠿諁諑謶诼酌鋜鐲镯鵫鷟兹呲咨嗞姕姿孖孜孳孶崰嵫栥椔淄湽滋澬玆禌秶稵粢紎緇緕纃缁茊茲菑葘觜訾諮谘貲資赀资赼趑趦輜輺辎鄑鈭錙鍿鎡锱镃頾頿髭鯔鰦鲻鶅鼒齍齜龇蓻仔吇呰啙姉姊子杍梓榟橴滓矷秄秭笫籽紫耔胏茈虸訿釨倳剚字恣渍漬牸眥眦胔胾自芓茡荢嗭倧堫宗嵏嵕惾朡棕椶熧猣磫稯綜緃緵繌综翪腙葼蝬豵踨踪蹤鍐鑁騌騣骔鬃鬉鬷鯮鯼倊偬傯嵸总惣捴揔搃摠焧燪総緫縂總蓗昮猔疭瘲碂粽糉糭縦縱纵掫棷棸箃緅菆諏诹邹郰鄒鄹陬騶驺鯫鲰黀齱齺走赱鯐奏揍租菹葅蒩卆卒哫崒崪族椊箤足踤鏃镞俎唨爼珇祖組组詛诅鎺阻靻劗躜躦鉆鑚鑽钻籫繤纂纉纘缵攥厜嗺樶纗蟕嘴噿嶊璻冣嶵晬最栬槜檇檌祽稡絊罪蕞辠酔酻醉鋷錊噂墫尊嶟樽繜罇遵鐏鱒鳟鶎鷷僔撙譐捘銌嘬穝捽昨秨稓笮筰苲莋鈼佐左繓作侳做唑坐岝岞座怍柞祚糳胙葃葄蓙袏酢阼飵咗龦龧龨龩龪龫龬龭龮龯龰龱龲龳龴龵龶龷龸龹龺龻龼龽龾龿鿀鿁鿂鿃鿄鿅鿆鿇鿈鿉鿊鿋鿌鿍鿎鿏鿐",kg={};for(let e=0;e{const t=[et.FOLDER,et.MODEL_FOLDER,et.INDICATOR_FOLDER,et.DIMENSION_FOLDER,et.BUSINESS_MODEL_FOLDER,et.TAG_FOLDER];return!Te.includes(t,e)},Pft=e=>Te.some(Te.values(Cs),t=>e?.startsWith(t)),OT=(e=[],t,r)=>{e?.forEach((n,a)=>{t(n,a,r),n.children?.length&&OT(n.children,t,n.id)})},Nft=({nodeType:e,engineType:t})=>Te.includes([et.INDICATOR,et.DIMENSION,et.BUSINESS_MODEL],e)?`${kV[e]}-${t}`:kV[e],mq=(e,t)=>{const{nodeType:r,id:n,engineType:a}=t,o=n&&Te.find(Te.keys(AV),i=>n?.startsWith(i));return o?AV[o]:r===et.MODEL_FOLDER?"svg-model_folder":ja(r)?Te.includes([et.DATA_TABLE,et.TABLE],r)?Rft(t.value||t):r===et.FIELD?bd(t.type):Nft({nodeType:r,engineType:a}):e?"svg-folder_open":"svg-folder_close"},xq=(e,t,r)=>e.map(n=>n.id===t?{...n,children:r}:Te.isNil(n.children)?n:{...n,children:xq(n.children,t,r)}),Pg=(e,t)=>{const r=[];return OT(e,n=>{const{nodeType:a,id:o,children:i=[]}=n;ja(a)||(t?i.length>0&&r.push(o):r.push(o))}),r},AT=(e,t,r)=>t.map(n=>{if(n.id===e)return{...n,...r(n)};const{children:a}=n;return Te.isNil(a)?n:{...n,children:AT(e,a,r)}}),rl=(e,t)=>{let r;return OT(t,n=>{if(n.id===e){r=n;return}}),r};function bq(e,t){if(e)return e.sort((r,n)=>t(r,n)).map(r=>({...r,children:bq(r.children,t)}))}function kT(e,t){if(!t.children)return e;const r=Te.cloneDeep(e),n=rl(t.id,r);if(!n)return[t];const a=(o,i)=>{const{children:l,...s}=i;if(Object.assign(o,s),l){o.children=o.children??[];const c=l.map(d=>d.id);Te.remove(o.children,d=>!c.includes(d.id)),l.forEach((d,f)=>{const v=o.children.find(h=>h.id===d.id);v?a(v,d):o.children.splice(f,0,d)})}};return a(n,t),r}function PT(e,t=XC.TIME){return bq(e,(r,n)=>!ja(r.nodeType)&&r.nodeType!==n.nodeType?-1:!ja(n.nodeType)&&r.nodeType!==n.nodeType?1:r.id.startsWith(A1.COOP_GROUP)?-1:n.id.startsWith(A1.COOP_GROUP)?1:t===XC.TIME?n.value.initTime-r.value.initTime:kft(r.name,n.name))}function nl(e,t,r){let n=e.name;e.id.startsWith(Cs.DATA_ROOT)?n=at("FDI_Data_Root"):e.id.startsWith(Cs.ANALYSIS_ROOT)?n=at("FDI_My_Analysis"):e.id.startsWith(A1.COOP_GROUP)&&(n=at("FDI_Coop_Group"));const a={id:e.id,pId:e.parentId,name:n,nodeType:et.FOLDER,value:{...e,itemType:sr.PACKAGE},path:t?[...t.path??[],{id:e.id,name:n}]:[{id:e.id,name:n}]};if(Te.isEmpty(e.folders)&&(Te.isEmpty(e.tables)||Te.isEmpty(e.tables.availableTables))&&Te.isEmpty(e.subjects)&&(Te.isEmpty(e.indexes)||Te.isEmpty(e.indexes.availableIndexes))&&(Te.isEmpty(e.dimensions)||Te.isEmpty(e.dimensions.availableDimensions))&&(Te.isEmpty(e.businessModels)||Te.isEmpty(e.businessModels.availableModels)))return a;a.children=[],a.children.push(...e.folders.map(d=>nl(d,a,r)));const o=e.subjects??[];a.children.push(...o.map(d=>({id:d.id,pId:d.parentId,name:d.name,nodeType:et.SUBJECT,value:{...d,itemType:sr.SUBJECT},path:[...a.path??[],{id:d.id,name:d.name}]})));const i=e.tables?.availableTables?.concat(e.tables?.childTables??[],e.tables?.childTables??[])??[];a.children.push(...i.map(d=>({id:d.name,pId:d.parentId,name:d.transferName,nodeType:et.DATA_TABLE,value:{...d,itemType:sr.TABLE},path:[...a.path??[],{id:d.name,name:d.transferName}]})));const l=e.indexes?.availableIndexes??[];a.children.push(...l.map(d=>({id:d.id,pId:d.parentId??a.id,name:d.name,nodeType:et.INDICATOR,engineType:d.engineType,value:{...d,itemType:sr.INDICATOR},path:[...a.path??[],{id:d.id,name:d.name}]})));const s=e.dimensions?.availableDimensions??[];a.children.push(...s.map(d=>({id:d.id,pId:d.parentId??a.id,name:d.name,nodeType:et.DIMENSION,engineType:d.engineType,value:{...d,itemType:sr.DIMENSION},path:[...a.path??[],{id:d.id,name:d.name}]})));const c=e.businessModels?.availableModels??[];return a.children.push(...c.map(d=>({id:d.id,pId:d.parentId??a.id,name:d.name,nodeType:et.BUSINESS_MODEL,engineType:d.engineType,value:{...d,itemType:sr.BUSINESS_MODEL},path:[...a.path??[],{id:d.id,name:d.name}]}))),r?PT([a],r)[0]??a:a}zl.COMMON+"",zl.MATH+"",zl.DATETIME+"",zl.TEXT+"",zl.LOGIC+"",zl.AGG+"",zl.TABLE_CAL+"",zl.ANALYSIS+"",zl.OTHER+"",k1.FIELD+"",et.FIELD,k1.INDICATOR+"",et.INDICATOR,k1.DIMENSION+"",et.DIMENSION;const Mft={COMMON_CHARACTER:/^[0-9a-zA-Z_]+$/,CHINESE_CHARACTER_AND_PUNCTUATION:/[\u4e00-\u9fa5|\u3002|\uff1f|\uff01|\uff0c|\u3001|\uff1b|\uff1a|\u201c|\u201d|\u2018|\u2019|\uff08|\uff09|\u300a|\u300b|\u3008|\u3009|\u3010|\u3011|\u300e|\u300f|\u300c|\u300d|\ufe43|\ufe44|\u3014|\u3015|\u2026|\u2014|\uff5e|\ufe4f|\uffe5]/,SPECIAL_CHARACTER:/^[?*:"<>\\/|]/,INTEGER_NO_SIGN:/^[1-9][\d]*$/,NUMBER:/^[\d]+$/,LETTER:/^[a-zA-Z]+$/,LETTER_WIDTH_POINT:/^[a-zA-Z.]+$/,RGBA_FORNATE:/rgba?(\(\s*\d+\s*,\s*\d+\s*,\s*\d+)(?:\s*,.+?)?\)/,LETTER_CHINESE_NUMBER_UNDERLINE:/^[\w\u4e00-\u9fa5]+$/,LETTER_CHINESE_NUMBER_UNDERLINE_HYPHEN:/^([a-zA-Z0-9_-]|[\u4e00-\u9fa5])*$/,PARAM_PATTERN:/\${.*?}/,PHONE_GROUP:/^1[3456789]\d{9}(,1[3456789]\d{9})*,?$/,EMAIL_GROUP:/^(\w-*\.*)+@(\w-?)+(\.\w{2,})+(,(\w-*\.*)+@(\w-?)+(\.\w{2,}))*,?$/,WRAP_PARAM:/\$\{(.+?)\}/g},yq=e=>(e||"").length===0,NT=e=>(e||"").trim().length===0,Lft=e=>!Te.isNumber(e)&&NT(e),nw=e=>Mft.SPECIAL_CHARACTER.test(e),wq=(e,t)=>Te.includes(e,t),aw=(e,t)=>`${e||""}`.length>t,ow=(e,t,r)=>yq(e)||NT(e)||nw(e)||wq(t,e)||aw(e,r),iw=(e,t,r)=>yq(e)||NT(e)?at("FDI_Not_Empty"):nw(e)?at("FDI_Not_Special_Str"):wq(t,e)?at("FDI_Not_Same_Name"):aw(e,r)?at("FDI_Not_To_Exceed_Chars",r):"",zft=e=>nw(e)||aw(e,Bl.DESCRIPTION),Bft=(e,t=Bl.DESCRIPTION)=>nw(e)?at("FDI_Not_Special_Str"):aw(e,t)?at("FDI_Not_To_Exceed_Chars",t):"";function Dq(e){const{folderSearchResult:t,tableSearchResult:r,subjectSearchResult:n,indexSearchResult:a,dimensionSearchResult:o,businessModelSearchResult:i}=e,l=[];if(!Te.isNil(r)){const s=r.match.availableTables.concat(r.find.availableTables)??[];l.push({label:at("FDI_Table"),value:Yn.TABLE,nodes:s.map(c=>({id:c.name,name:c.transferName,pId:c.parentId,nodeType:et.DATA_TABLE,position:c.position,engineType:c.engineType,value:{...c,itemType:sr.TABLE}})),count:r.count,pageCount:r.pageCount})}if(!Te.isNil(n)){const s=n?.match.concat(n?.find)??[];l.push({label:at("FDI_Subject"),value:Yn.SUBJECT,nodes:s.map(c=>({id:c.id,name:c.name,pId:c.parentId,nodeType:et.SUBJECT,position:c.position,value:{...c,itemType:sr.SUBJECT}})),count:n.count,pageCount:n.pageCount})}if(!Te.isNil(a)){const s=a?.match.availableIndexes.concat(a?.find.availableIndexes)??[];l.push({label:at("FDI_Indicator"),value:Yn.INDICATOR,nodes:s.map(c=>({id:c.id,name:c.name,pId:c.parentId,nodeType:et.INDICATOR,position:c.position,engineType:c.engineType,value:{...c,itemType:sr.INDICATOR}})),count:a.count,pageCount:a.pageCount})}if(!Te.isNil(o)){const s=o?.match.availableDimensions.concat(o?.find.availableDimensions)??[];l.push({label:at("FDI_Dimension"),value:Yn.DIMENSION,nodes:s.map(c=>({id:c.id,name:c.name,pId:c.parentId,nodeType:et.DIMENSION,position:c.position,engineType:c.engineType,value:{...c,itemType:sr.DIMENSION}})),count:o.count,pageCount:o.pageCount})}if(!Te.isNil(i)){const s=i?.match.availableModels.concat(i?.find.availableModels)??[];l.push({label:at("FDI_Business_Model"),value:Yn.BUSINESS_MODEL,nodes:s.map(c=>({id:c.id,name:c.name,pId:c.parentId,nodeType:et.BUSINESS_MODEL,position:c.position,engineType:c.engineType,value:{...c,itemType:sr.BUSINESS_MODEL}})),count:i.count,pageCount:i.pageCount})}if(!Te.isNil(t)){const s=t.match.concat(t.find)??[];l.push({label:at("FDI_Folder"),value:Yn.FOLDER,nodes:s.map(c=>({id:c.id,name:c.name,pId:c.parentId,nodeType:et.FOLDER,position:c.position,value:{...c,itemType:sr.PACKAGE}})),count:t.count,pageCount:t.pageCount})}return l}et.INDICATOR+"",et.DIMENSION+"",et.BUSINESS_MODEL+"",sr.INDICATOR+"",et.INDICATOR,sr.DIMENSION+"",et.DIMENSION,sr.BUSINESS_MODEL+"",et.BUSINESS_MODEL,Ts.NORMAL+"",Ts.PUBLISH+"",Ts.APPLYING+"",Ts.CANCELING+"",Ts.NORMAL+"",Tn.token.colorTransparent2,Tn.token.colorGrey4,Ts.PUBLISH+"",Tn.token.colorSuccess6,Tn.token.colorSuccess2,Ts.APPLYING+"",Tn.token.colorBrand6,Tn.token.colorBrand2,Ts.CANCELING+"",Tn.token.colorBrand6,Tn.token.colorBrand2,et.DATA_TABLE+"",et.INDICATOR+"",et.DIMENSION+"",et.BUSINESS_MODEL+"",et.INDICATOR+"",et.DIMENSION+"",et.BUSINESS_MODEL+"",No.SUCCESS+"",No.SUCCESS_AUTO+"",No.FAIL+"",No.FAIL_SAME_TYPE+"",No.FAIL_REVIEWER_ERROR+"",No.FAIL_STATUS_ERROR+"",No.SUCCESS+"",No.SUCCESS_AUTO+"",No.FAIL+"",No.FAIL_SAME_TYPE+"",No.FAIL_REVIEWER_ERROR+"",No.FAIL_STATUS_ERROR+"",ZC.DATA_CATALOG+"",ZC.MODEL_CENTER+"";const MT={"svg-empty_widget1":"assets/images/empty_widget1.svg","svg-empty_widget2":"assets/images/empty_widget2.svg","svg-not_select":"assets/images/not_select.svg","svg-folder_open":"assets/images/folder_open.svg","svg-folder_close":"assets/images/folder_close.svg","svg-indicator_leaf":"assets/images/indicator_leaf.svg","png-card_background":"assets/images/card_background.png","svg-resource_total":"assets/images/resource_total.svg","svg-indicator_card_spider":"assets/images/indicator_card_spider.svg","svg-dimension_card_spider":"assets/images/dimension_card_spider.svg","svg-business_model_card_spider":"assets/images/business_model_card_spider.svg","svg-indicator_card_direct":"assets/images/indicator_card_direct.svg","svg-dimension_card_direct":"assets/images/dimension_card_direct.svg","svg-business_model_card_direct":"assets/images/business_model_card_direct.svg","svg-model_folder":"assets/images/model_folder.svg","svg-create_line_spider":"assets/images/create_line_spider.svg","svg-create_line_direct":"assets/images/create_line_direct.svg","svg-create_line_hover":"assets/images/create_line_hover.svg","svg-error_info":"assets/images/error_info.svg","svg-error_info_hover":"assets/images/error_info_hover.svg","svg-error_info_highlight":"assets/images/error_info_highlight.svg","svg-error_info_dim":"assets/images/error_info_dim.svg","svg-indicator_preview_card_spider":"assets/images/indicator_preview_card_spider.svg","svg-indicator_preview_card_direct":"assets/images/indicator_preview_card_direct.svg","svg-error_widget":"assets/images/error_widget.svg","svg-relation_marker":"assets/images/relation_marker.svg","svg-tag":"assets/images/tag.svg","svg-tag_group":"assets/images/tag_group.svg","svg-tag_root":"assets/images/resource_root.svg","svg-tag_card":"assets/images/tag_card.svg","svg-no_auth":"assets/images/no_auth.svg","svg-bi_widget":"assets/images/bi_widget.svg","svg-bi_widget_error":"assets/images/bi_widget_error.svg","svg-bi_report":"assets/images/bi_report.svg","svg-bi_report_error":"assets/images/bi_report_error.svg","svg-bi_doc":"assets/images/bi_doc.svg","svg-bi_doc_error":"assets/images/bi_doc_error.svg","svg-ai_tip":"assets/images/ai_tip.svg","svg-enhance_search_icon":"assets/images/enhance_search_icon.svg","svg-ai_search_icon":"assets/images/ai_search_icon.svg","svg-data_catalog_normal":"assets/images/data_catalog_normal.svg","svg-data_catalog_active":"assets/images/data_catalog_active.svg","svg-model_center_normal":"assets/images/model_center_normal.svg","svg-model_center_active":"assets/images/model_center_active.svg","svg-lineage_analysis_table_direct":"assets/images/lineage_analysis_table_direct.svg","svg-lineage_analysis_table_direct_error":"assets/images/lineage_analysis_table_direct_error.svg","svg-lineage_analysis_table_spider":"assets/images/lineage_analysis_table_spider.svg","svg-lineage_analysis_table_spider_error":"assets/images/lineage_analysis_table_spider_error.svg","svg-lineage_analysis_table_bi_direct":"assets/images/lineage_analysis_table_bi_direct.svg","svg-lineage_analysis_table_bi_direct_error":"assets/images/lineage_analysis_table_bi_direct_error.svg","svg-lineage_analysis_table_bi_spider":"assets/images/lineage_analysis_table_bi_spider.svg","svg-lineage_analysis_table_bi_spider_error":"assets/images/lineage_analysis_table_bi_spider_error.svg","svg-lineage_analysis_table_bi_published_direct":"assets/images/lineage_analysis_table_bi_published_direct.svg","svg-lineage_analysis_table_bi_published_direct_error":"assets/images/lineage_analysis_table_bi_published_direct_error.svg","svg-lineage_analysis_table_bi_published_spider":"assets/images/lineage_analysis_table_bi_published_spider.svg","svg-lineage_analysis_table_bi_published_spider_error":"assets/images/lineage_analysis_table_bi_published_spider_error.svg","svg-lineage_database_table_direct":"assets/images/lineage_database_table_direct.svg","svg-lineage_database_table_direct_error":"assets/images/lineage_database_table_direct_error.svg","svg-lineage_database_table_spider":"assets/images/lineage_database_table_spider.svg","svg-lineage_database_table_spider_error":"assets/images/lineage_database_table_spider_error.svg","svg-lineage_etl_table_direct":"assets/images/lineage_etl_table_direct.svg","svg-lineage_etl_table_direct_error":"assets/images/lineage_etl_table_direct_error.svg","svg-lineage_etl_table_spider":"assets/images/lineage_etl_table_spider.svg","svg-lineage_etl_table_spider_error":"assets/images/lineage_etl_table_spider_error.svg","svg-lineage_sql_table_direct":"assets/images/lineage_sql_table_direct.svg","svg-lineage_sql_table_direct_error":"assets/images/lineage_sql_table_direct_error.svg","svg-lineage_sql_table_spider":"assets/images/lineage_sql_table_spider.svg","svg-lineage_sql_table_spider_error":"assets/images/lineage_sql_table_spider_error.svg","svg-lineage_excel_table_direct":"assets/images/lineage_excel_table_direct.svg","svg-lineage_excel_table_direct_error":"assets/images/lineage_excel_table_direct_error.svg","svg-lineage_excel_table_spider":"assets/images/lineage_excel_table_spider.svg","svg-lineage_excel_table_spider_error":"assets/images/lineage_excel_table_spider_error.svg","svg-lineage_indicator_direct":"assets/images/lineage_indicator_direct.svg","svg-lineage_indicator_direct_error":"assets/images/lineage_indicator_direct_error.svg","svg-lineage_indicator_spider":"assets/images/lineage_indicator_spider.svg","svg-lineage_indicator_spider_error":"assets/images/lineage_indicator_spider_error.svg","svg-lineage_indicator_published_direct":"assets/images/lineage_indicator_published_direct.svg","svg-lineage_indicator_published_direct_error":"assets/images/lineage_indicator_published_direct_error.svg","svg-lineage_indicator_published_spider":"assets/images/lineage_indicator_published_spider.svg","svg-lineage_indicator_published_spider_error":"assets/images/lineage_indicator_published_spider_error.svg","svg-lineage_business_model_direct":"assets/images/lineage_business_model_direct.svg","svg-lineage_business_model_direct_error":"assets/images/lineage_business_model_direct_error.svg","svg-lineage_business_model_spider":"assets/images/lineage_business_model_spider.svg","svg-lineage_business_model_spider_error":"assets/images/lineage_business_model_spider_error.svg","svg-lineage_business_model_published_direct":"assets/images/lineage_business_model_published_direct.svg","svg-lineage_business_model_published_direct_error":"assets/images/lineage_business_model_published_direct_error.svg","svg-lineage_business_model_published_spider":"assets/images/lineage_business_model_published_spider.svg","svg-lineage_business_model_published_spider_error":"assets/images/lineage_business_model_published_spider_error.svg","svg-lineage_dimension_direct":"assets/images/lineage_dimension_direct.svg","svg-lineage_dimension_direct_error":"assets/images/lineage_dimension_direct_error.svg","svg-lineage_dimension_spider":"assets/images/lineage_dimension_spider.svg","svg-lineage_dimension_spider_error":"assets/images/lineage_dimension_spider_error.svg","svg-lineage_dimension_published_direct":"assets/images/lineage_dimension_published_direct.svg","svg-lineage_dimension_published_direct_error":"assets/images/lineage_dimension_published_direct_error.svg","svg-lineage_dimension_published_spider":"assets/images/lineage_dimension_published_spider.svg","svg-lineage_dimension_published_spider_error":"assets/images/lineage_dimension_published_spider_error.svg","svg-lineage_widget":"assets/images/lineage_widget.svg","svg-lineage_widget_error":"assets/images/lineage_widget_error.svg","svg-lineage_report":"assets/images/lineage_report.svg","svg-lineage_report_error":"assets/images/lineage_report_error.svg","svg-lineage_doc":"assets/images/lineage_doc.svg","svg-lineage_doc_error":"assets/images/lineage_doc_error.svg","svg-lineage_table_deleted":"assets/images/lineage_table_deleted.svg","svg-no_permission":"assets/images/no_permission.svg","svg-unavailable":"assets/images/unavailable.svg","icon-analysis-table-spider-preview":"assets/images/preview_analysis_table_spider.svg","icon-analysis-table-direct-preview":"assets/images/preview_analysis_table_direct.svg","icon-database-table-spider-preview":"assets/images/preview_database_table_spider.svg","icon-database-table-direct-preview":"assets/images/preview_database_table_direct.svg","icon-etl-table-spider-preview":"assets/images/preview_etl_table_spider.svg","icon-etl-table-direct-preview":"assets/images/preview_etl_table_direct.svg","icon-sql-table-spider-preview":"assets/images/preview_sql_table_spider.svg","icon-sql-table-direct-preview":"assets/images/preview_sql_table_direct.svg","icon-excel-table-spider-preview":"assets/images/preview_excel_table_spider.svg","icon-excel-table-direct-preview":"assets/images/preview_excel_table_direct.svg","icon-authorize-user":"assets/images/authorize_user.svg","icon-authorize-user-deleted":"assets/images/authorize_user_deleted.svg","png-execute-uploading":"assets/images/execute_uploading.png","png-data-over-limit":"assets/images/data_amount_over_limit.png","png-data-over-memory":"assets/images/cost_too_much_memory.png","png-preview-fail":"assets/images/preview_fail.png"},jft=window.FDI?.resourceURL??`${window.Dec.fineServletURL}/web/`,Uft=e=>window.isDevMode?`/${MT[e]}`:jft+MT[e],Hft=()=>Te.keys(MT).map(e=>({name:e,src:Uft(e)})),Wft={"icon-rename":["e6cc",16],"icon-move":["e73f",16],"icon-info":["e847",16],"icon-history":["ea60",16],"icon-filter":["e8a7",16],"icon-info-tip":["e63c",16,"rgba(9, 30, 64, 0.47)"],"icon-edit":["e6ba",16],"icon-custom-edit":["ea1b",16],"icon-refresh":["e6fb",16],"icon-delete":["e6c4",16,"rgba(9, 30, 64, 0.9)"],"icon-sort-time":["e731",16],"icon-sort-name":["e732",16],"icon-arrow-left":["e70d",16],"icon-model-management":["eac3",18],"icon-indicator-management":["eac5",18],"icon-dimension-management":["eac4",18],"icon-business-model":["eac6",18],"icon-folded":["ea42",18],"icon-unfold":["ea3b",18],"icon-search":["e6dc",16],"icon-add":["e6e1",16],"icon-subtract":["e6e2",16],"icon-position":["e860",16],"icon-filtered":["ea68",16,"#2C60DB"],"icon-unfiltered":["e9a9",16],"icon-more":["e6ce",16],"icon-setting":["e6cb",16],"icon-triangle-up":["e6d6",16],"icon-triangle-down":["e6d7",16],"icon-table-preview":["e6c2",16],"icon-table-structure":["e6bb",16],"icon-text-string":["e99b",16,"#537BC6"],"icon-text-number":["e998",16,"#3FB4AB"],"icon-text-datetime":["e996",16,"#F0AC3C"],"icon-analysis-table-spider":["e9a4",18,"#2C60DB"],"icon-analysis-table-direct":["e8b6",18,"#2C60DB"],"icon-database-table-spider":["e9a1",18,"#3FB4AB"],"icon-database-table-direct":["e8b8",18,"#3FB4AB"],"icon-excel-table-spider":["e9a3",18,"#248F2E"],"icon-excel-table-direct":["e8b9",18,"#248F2E"],"icon-sql-table-spider":["e9a2",18,"#F0AC3C"],"icon-sql-table-direct":["e8b7",18,"#F0AC3C"],"icon-etl-table-spider":["e8f4",18,"#3392DB"],"icon-etl-table-direct":["e8b5",18,"#3392DB"],"icon-indicator-leaf-spider":["eabf",16,"#13BFA8"],"icon-indicator-leaf-direct":["eadd",16,"#13BFA8"],"icon-indicator-leaf-spider-published":["eb07",16,"#13BFA8"],"icon-indicator-leaf-direct-published":["eb09",16,"#13BFA8"],"icon-dimension-leaf-spider":["eabc",16,"#537BC6"],"icon-dimension-leaf-direct":["eade",16,"#537BC6"],"icon-dimension-leaf-spider-published":["eb0b",16,"#717BEE"],"icon-dimension-leaf-direct-published":["eb0c",16,"#717BEE"],"icon-business-model-leaf-spider":["eac0",16,"#5545BA"],"icon-business-model-leaf-direct":["eada",16,"#5545BA"],"icon-business-model-leaf-spider-published":["eb08",16,"#8864FF"],"icon-business-model-leaf-direct-published":["eb0a",16,"#8864FF"],"icon-cancel":["e6d0",16],"icon-batch":["e891",16],"icon-tooltip":["e63c",16],"icon-data-detail":["e76f",16],"icon-add-folder":["eaeb",16],"icon-add-group":["eac8",16],"icon-view-global":["eabe",16],"icon-update":["e72c",16],"icon-update-progress":["e7a7",16],"icon-update-management":["e7e1",16],"icon-global-update":["e688",16],"icon-publish":["e942",16],"icon-cancel-publish":["e943",16],"icon-direct":["ead4",16],"icon-spider":["ead5",16],"icon-select":["ea73",16],"icon-import":["e68d",16],"icon-copy":["e6bd",16],"icon-auth-apply":["e773",16],"icon-error":["e757",14,"#E65251"],"icon-success":["e756",14,"#248F2E"],"icon-pending":["eae5",14,"#5D6B81"],"icon-use-authority":["ea2b",16,"#537BC6"],"icon-field-authority":["eae4",16,"#F0AC3C"],"icon-check-mark":["e1b0",24,"#248F2E"],"icon-error-mark":["e7fc",24,"#E65251"],"icon-help":["e851",16,"rgba(9, 30, 64, 0.66)"],"icon-multipath":["e766",16],"icon-exit":["e799",16],"icon-formula":["e951",16],"icon-enter":["e8ab",16],"icon-disable":["e9f4",14,"rgba(9, 30, 64, 0.66)"],"icon-applying":["eae5",14,"#2C60DB"],"icon-field-group":["e7d6",16],"icon-extend-field":["ead6",16],"icon-drag":["e8c4",16],"icon-jump":["e76b",16],"icon-collapsed":["e6e2",16],"icon-ascent":["e631",16],"icon-descent":["e9a7",16],"icon-tag":["ea5b",16],"icon-create":["e8f1",16],"icon-warning":["e755",16,"#FAA70D"],"icon-edit-string":["ea89",16],"icon-down-arrow":["e6d7",16],"icon-edit-integer":["ea86",16],"icon-edit-date":["ea85",16],"icon-edit-boolean":["ea87",16],"icon-edit-double":["ea88",16],"icon-edit-formula":["ea84",16],"icon-edit-parameter":["eab1",16],"icon-resource-info":["e748",16],"icon-analysis-table-bi-spider":["e8e2",18,"#2562FF"],"icon-analysis-table-bi-direct":["e8e3",18,"#2562FF"],"icon-analysis-table-bi-published-spider":["e9c8",18,"#2562FF"],"icon-analysis-table-bi-published-direct":["e9c9",18,"#2562FF"],"icon-table-deleted":["e8e2",18,"#EF5655"]},Vft={fontFamily:"dataIntegrationFont",fontStyle:"normal",WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"},Fa=({className:e,name:t="",width:r,size:n,color:a,disabled:o=!1,...i})=>{const l=Wft[t];if(l)return de("span",{className:ar("fdi-icon",e),style:{...Vft,width:r||n||l[1],textAlign:"center",fontSize:n||l[1],color:a||l[2],cursor:o?"not-allowed":""},...i,children:Oae.unescapeFromNumRef(`&#x${l[0]};`,16)});const s=Te.find(Hft(),["name",t]);return s?de("img",{className:ar("fdi-icon",e),alt:"",src:s.src,height:n,width:n,style:{cursor:o?"not-allowed":"",width:n,height:n},...i}):de("div",{className:ar(e,"fdi-icon",t),style:{width:n||16,height:n||16,fontSize:n||16,lineHeight:`${n||16}px`},children:de("i",{style:{width:n||16,height:n||16,fontSize:n||16},className:"b-font x-icon"})})},LT=({className:e,iconName:t="svg-empty_widget1",iconSize:r=130,...n})=>de(Htt,{className:ar("fdi-component-flex-col-layout fdi-justify-center fdi-items-center",e),image:de(Fa,{name:t,size:r}),...n}),lw=e=>de(r1,{loadingType:"roll",...e}),Xc=e=>de(tC,{mouseEnterDelay:.6,placement:"bottom-left",...e}),UKt="",Iq=m.forwardRef(({defaultValue:e,checkError:t,validateHelp:r,onSave:n,onInput:a,...o},i)=>{const[l,s]=m.useState(t(e)),[c,d]=m.useState(e),f=m.useRef(),v=h=>{const g=l?e:h;n?.(g),d(g),s(!1)};return m.useImperativeHandle(i,()=>({...f.current,validate:()=>{const h=t(c);return s(h),!h}})),de(Xc,{visible:l,content:r(c),arrow:!1,color:Tn.token.colorError6,placement:"bottom-left",children:de(Ss,{ref:f,autoFocus:!0,inputState:l?"error":void 0,value:c,onChange:h=>{d(h);const g=t(h);s(g),a?.(h,g)},onBlur:h=>{v(h)},onPressEnter:h=>{v(h.target.value)},onClick:h=>{h.stopPropagation()},...o})})});m.forwardRef(({defaultValue:e,checkError:t,validateHelp:r,onSave:n,...a},o)=>{const[i,l]=m.useState(!1),[s,c]=m.useState(e),d=f=>{const v=i?e:f;n(v),c(v),l(!1)};return de(Xc,{visible:i,content:r(s),arrow:!1,color:Tn.token.colorError6,placement:"bottom-left",children:de(Ss.TextArea,{ref:o,autoFocus:!0,inputState:i?"error":void 0,value:s,onChange:f=>{c(f),l(t(f))},onBlur:f=>{d(f)},onClick:f=>{f.stopPropagation()},...a})})});var zT={},Kft={get exports(){return zT},set exports(e){zT=e}};(function(e){e.exports=function(t){var r={};function n(a){if(r[a])return r[a].exports;var o=r[a]={exports:{},id:a,loaded:!1};return t[a].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}return n.m=t,n.c=r,n.p="",n(0)}([function(t,r,n){t.exports=n(1)},function(t,r,n){Object.defineProperty(r,"__esModule",{value:!0});function a(l){return l&&l.__esModule?l:{default:l}}var o=n(2),i=a(o);r.default=i.default,t.exports=r.default},function(t,r,n){Object.defineProperty(r,"__esModule",{value:!0});var a=Object.assign||function(g){for(var _=1;_=0||Object.prototype.hasOwnProperty.call(g,b)&&(w[b]=g[b]);return w}var l=n(3),s=n(4),c=o(s),d=n(14),f=n(15),v=o(f);h.propTypes={activeClassName:c.default.string,activeIndex:c.default.number,activeStyle:c.default.object,autoEscape:c.default.bool,className:c.default.string,findChunks:c.default.func,highlightClassName:c.default.oneOfType([c.default.object,c.default.string]),highlightStyle:c.default.object,highlightTag:c.default.oneOfType([c.default.node,c.default.func,c.default.string]),sanitize:c.default.func,searchWords:c.default.arrayOf(c.default.oneOfType([c.default.string,c.default.instanceOf(RegExp)])).isRequired,textToHighlight:c.default.string.isRequired,unhighlightTag:c.default.oneOfType([c.default.node,c.default.func,c.default.string]),unhighlightClassName:c.default.string,unhighlightStyle:c.default.object};function h(g){var _=g.activeClassName,w=_===void 0?"":_,b=g.activeIndex,y=b===void 0?-1:b,D=g.activeStyle,F=g.autoEscape,S=g.caseSensitive,I=S===void 0?!1:S,C=g.className,R=g.findChunks,P=g.highlightClassName,O=P===void 0?"":P,N=g.highlightStyle,A=N===void 0?{}:N,z=g.highlightTag,k=z===void 0?"mark":z,M=g.sanitize,T=g.searchWords,B=g.textToHighlight,L=g.unhighlightTag,K=L===void 0?"span":L,X=g.unhighlightClassName,ee=X===void 0?"":X,q=g.unhighlightStyle,G=i(g,["activeClassName","activeIndex","activeStyle","autoEscape","caseSensitive","className","findChunks","highlightClassName","highlightStyle","highlightTag","sanitize","searchWords","textToHighlight","unhighlightTag","unhighlightClassName","unhighlightStyle"]),W=(0,l.findAll)({autoEscape:F,caseSensitive:I,findChunks:R,sanitize:M,searchWords:T,textToHighlight:B}),V=k,Y=-1,Z="",te=void 0,J=function(ie){var ve={};for(var oe in ie)ve[oe.toLowerCase()]=ie[oe];return ve},ae=(0,v.default)(J);return(0,d.createElement)("span",a({className:C},G,{children:W.map(function(re,ie){var ve=B.substr(re.start,re.end-re.start);if(re.highlight){Y++;var oe=void 0;typeof O=="object"?I?oe=O[ve]:(O=ae(O),oe=O[ve.toLowerCase()]):oe=O;var fe=Y===+y;Z=oe+" "+(fe?w:""),te=fe===!0&&D!=null?Object.assign({},A,D):A;var ge={children:ve,className:Z,key:ie,style:te};return typeof V!="string"&&(ge.highlightIndex=Y),(0,d.createElement)(V,ge)}else return(0,d.createElement)(K,{children:ve,className:ee,key:ie,style:q})})}))}t.exports=r.default},function(t,r){t.exports=function(n){var a={};function o(i){if(a[i])return a[i].exports;var l=a[i]={exports:{},id:i,loaded:!1};return n[i].call(l.exports,l,l.exports,o),l.loaded=!0,l.exports}return o.m=n,o.c=a,o.p="",o(0)}([function(n,a,o){n.exports=o(1)},function(n,a,o){Object.defineProperty(a,"__esModule",{value:!0});var i=o(2);Object.defineProperty(a,"combineChunks",{enumerable:!0,get:function(){return i.combineChunks}}),Object.defineProperty(a,"fillInChunks",{enumerable:!0,get:function(){return i.fillInChunks}}),Object.defineProperty(a,"findAll",{enumerable:!0,get:function(){return i.findAll}}),Object.defineProperty(a,"findChunks",{enumerable:!0,get:function(){return i.findChunks}})},function(n,a){Object.defineProperty(a,"__esModule",{value:!0}),a.findAll=function(f){var v=f.autoEscape,h=f.caseSensitive,g=h===void 0?!1:h,_=f.findChunks,w=_===void 0?i:_,b=f.sanitize,y=f.searchWords,D=f.textToHighlight;return l({chunksToHighlight:o({chunks:w({autoEscape:v,caseSensitive:g,sanitize:b,searchWords:y,textToHighlight:D})}),totalLength:D?D.length:0})};var o=a.combineChunks=function(f){var v=f.chunks;return v=v.sort(function(h,g){return h.start-g.start}).reduce(function(h,g){if(h.length===0)return[g];var _=h.pop();if(g.start<=_.end){var w=Math.max(_.end,g.end);h.push({start:_.start,end:w})}else h.push(_,g);return h},[]),v},i=function(f){var v=f.autoEscape,h=f.caseSensitive,g=f.sanitize,_=g===void 0?s:g,w=f.searchWords,b=f.textToHighlight;return b=_(b),w.filter(function(y){return y}).reduce(function(y,D){D=_(D),v&&(D=c(D));for(var F=new RegExp(D,h?"g":"gi"),S=void 0;S=F.exec(b);){var I=S.index,C=F.lastIndex;C>I&&y.push({start:I,end:C}),S.index==F.lastIndex&&F.lastIndex++}return y},[])};a.findChunks=i;var l=a.fillInChunks=function(f){var v=f.chunksToHighlight,h=f.totalLength,g=[],_=function(y,D,F){D-y>0&&g.push({start:y,end:D,highlight:F})};if(v.length===0)_(0,h,!1);else{var w=0;v.forEach(function(b){_(w,b.start,!1),_(b.start,b.end,!0),w=b.end}),_(w,h,!1)}return g};function s(d){return d}function c(d){return d.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}}])},function(t,r,n){(function(a){t.exports=n(13)()}).call(r,n(5))},function(t,r){var n=t.exports={},a,o;function i(){throw new Error("setTimeout has not been defined")}function l(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?a=setTimeout:a=i}catch{a=i}try{typeof clearTimeout=="function"?o=clearTimeout:o=l}catch{o=l}})();function s(y){if(a===setTimeout)return setTimeout(y,0);if((a===i||!a)&&setTimeout)return a=setTimeout,setTimeout(y,0);try{return a(y,0)}catch{try{return a.call(null,y,0)}catch{return a.call(this,y,0)}}}function c(y){if(o===clearTimeout)return clearTimeout(y);if((o===l||!o)&&clearTimeout)return o=clearTimeout,clearTimeout(y);try{return o(y)}catch{try{return o.call(null,y)}catch{return o.call(this,y)}}}var d=[],f=!1,v,h=-1;function g(){!f||!v||(f=!1,v.length?d=v.concat(d):h=-1,d.length&&_())}function _(){if(!f){var y=s(g);f=!0;for(var D=d.length;D;){for(v=d,d=[];++h1)for(var F=1;F"u"||q===null)return""+q;var G=L(q);if(G==="object"){if(q instanceof Date)return"date";if(q instanceof RegExp)return"regexp"}return G}function X(q){var G=K(q);switch(G){case"array":case"object":return"an "+G;case"boolean":case"date":case"regexp":return"a "+G;default:return G}}function ee(q){return!q.constructor||!q.constructor.name?w:q.constructor.name}return b.checkPropTypes=d,b.PropTypes=b,b}}).call(r,n(5))},function(t,r){function n(o){return function(){return o}}var a=function(){};a.thatReturns=n,a.thatReturnsFalse=n(!1),a.thatReturnsTrue=n(!0),a.thatReturnsNull=n(null),a.thatReturnsThis=function(){return this},a.thatReturnsArgument=function(o){return o},t.exports=a},function(t,r,n){(function(a){function o(i,l,s,c,d,f,v,h){if(!i){var g;if(l===void 0)g=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var _=[s,c,d,f,v,h],w=0;g=new Error(l.replace(/%s/g,function(){return _[w++]})),g.name="Invariant Violation"}throw g.framesToPop=1,g}}t.exports=o}).call(r,n(5))},function(t,r,n){(function(a){var o=n(7),i=o;t.exports=i}).call(r,n(5))},function(t,r){var n=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;function i(s){if(s==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(s)}function l(){try{if(!Object.assign)return!1;var s=new String("abc");if(s[5]="de",Object.getOwnPropertyNames(s)[0]==="5")return!1;for(var c={},d=0;d<10;d++)c["_"+String.fromCharCode(d)]=d;var f=Object.getOwnPropertyNames(c).map(function(h){return c[h]});if(f.join("")!=="0123456789")return!1;var v={};return"abcdefghijklmnopqrst".split("").forEach(function(h){v[h]=h}),Object.keys(Object.assign({},v)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}t.exports=l()?Object.assign:function(s,c){for(var d,f=i(s),v,h=1;h1&&arguments[1]!==void 0?arguments[1]:n,l=void 0,s=[],c=void 0,d=!1,f=function(g,_){return i(g,s[_])},v=function(){for(var g=arguments.length,_=Array(g),w=0;w0&&o[o.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!o||c[1]>o[0]&&c[1]0)&&!(a=n.next()).done;)o.push(a.value)}catch(l){i={error:l}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(i)throw i.error}}return o}function Ha(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n{const[_,w]=m.useState(!1),[b,y]=m.useState(r||t||""),[D,F]=m.useState(!1),S=m.useRef(null),[I,{width:C}]=Lp(),R=h==="small"?Tn.token.controlHeightSm:h==="large"?Tn.token.controlHeightLg:Tn.token.controlHeight,P=()=>{const O=r??b;return O.includes(` -`)?`${O.split(` -`)[0]}...`:O};return de(b1,{hasPadding:!1,visible:_,arrow:!1,placement:"bottom",overlayClassName:ar("fdi-icon-extensible-input-popover",i),getPopupContainer:c,offset:[0,-parseInt(R)],content:de(Xc,{visible:D,content:f?.(r??b),arrow:!1,color:Tn.token.colorError6,placement:"bottom-left",children:e?de(Ss,{ref:S,size:h,style:{width:C},inputState:D?"error":void 0,placeholder:l,value:r??b,onChange:O=>{y(O),F(d?.(O)??!1),n?.(O)},onBlur:O=>{const N=D?t??O:O;y(N),w(!1),F(!1),a?.(N)},onPressEnter:O=>{const N=O.target.value,A=D?t??N:N;y(A),w(!1),F(!1),a?.(A)}}):de(Ss.ResizeTextArea,{ref:S,style:{width:C},autoSize:{minRows:g,maxRows:g},inputState:D?"error":void 0,placeholder:l,value:r??b,onChange:O=>{y(O),F(d?.(O)??!1),n?.(O)},onBlur:O=>{const N=D?t??O:O;y(N),w(!1),F(!1),a?.(N)}})}),children:de("div",{ref:I,style:{width:s},children:de(Xc,{content:r??b,className:"fdi-max-w-[200px]",placement:"bottom-left",children:tn("div",{className:"fdi-flex fdi-items-center fdi-group",style:{height:R},children:[de("span",{className:"fdi-truncate fdi-component-flex-w-fill-layout",children:P()}),de(jr,{className:"fdi-hidden group-hover:fdi-block",type:"text-normal",size:h,icon:de(Fa,{name:v??"icon-edit"}),onClick:()=>{w(!0),setTimeout(()=>{S.current.focus({cursor:"end"}),o?.()})}})]})})})})},WKt="",VKt="",KKt="",yd=({className:e,icon:t,text:r,onClick:n,fontBold:a,hasTitle:o=!0,tooltipText:i,...l})=>tn("span",{className:ar("fdi-flex fdi-w-full fdi-gap-md fdi-items-center fdi-truncate",e),onClick:n,...l,children:[de(Fa,{name:t.name,size:t.size||eT.NORMAL,color:t.color}),de(Xc,{content:o?i||r:void 0,placement:"bottom-left",children:de("span",{className:`fdi-label-text fdi-component-flex-w-fill-layout fdi-truncate ${a?"fdi-font-semibold":""}`,children:r})})]}),Ng=({className:e,text:t,tooltip:r})=>de(Xc,{placement:"bottom-left",content:t,...r,children:de("div",{className:ar("fdi-truncate",e),children:t})}),Tq=118,Rq=({className:e,tableData:t,renderColumn:r,...n})=>{const[a,{width:o,height:i}]=Lp(),l=c=>{const d=Math.max((o-2)/c.length,Tq);return c.map(f=>{const v=bd(f.type);return{dataIndex:f.id,title:de(yd,{className:"fdi-text-black-2",icon:{name:v},text:at(hq(f))}),width:d,render:h=>de(Ng,{text:h}),...r?.(f)}})},s=c=>{const{fields:d=[],data:f=[]}=c;return f.map(v=>{const h={};return d.forEach((g,_)=>{h[g.id]=Te.isNull(v[_])?"":at(v[_])}),h})};return de("div",{ref:a,className:e,children:de(Fg,{style:{width:o,height:i},defaultColumnWidth:Tq,columns:l(t.fields||[]),dataSource:s(t),noWrap:!0,fixedHeader:!0,hasCellBorder:!0,striped:!0,...n})})},qKt="",lpt=({direction:e="horizontal",allowCollapse:t=!0,maxWidth:r=580,minWidth:n=200,defaultSize:a=280,...o})=>de(pq,{allowCollapse:t,style:e==="horizontal"?{height:"100%"}:{width:"100%"},defaultSize:a,minWidth:n,maxWidth:r,...o});var Oq={};const Ur=oo(hhe);var Zr={},spt={get exports(){return Zr},set exports(e){Zr=e}},jT={},cpt={get exports(){return jT},set exports(e){jT=e}},upt=Dr,Aq=a6,cw=Vu.getWeakData,dpt=V0,fpt=xa,ppt=wc,UT=dn,vpt=ii,kq=Ec,Pq=Vn,Nq=$c,hpt=Nq.set,gpt=Nq.getterFor,_pt=kq.find,mpt=kq.findIndex,xpt=upt([].splice),bpt=0,uw=function(e){return e.frozen||(e.frozen=new Mq)},Mq=function(){this.entries=[]},HT=function(e,t){return _pt(e.entries,function(r){return r[0]===t})};Mq.prototype={get:function(e){var t=HT(this,e);if(t)return t[1]},has:function(e){return!!HT(this,e)},set:function(e,t){var r=HT(this,e);r?r[1]=t:this.entries.push([e,t])},delete:function(e){var t=mpt(this.entries,function(r){return r[0]===e});return~t&&xpt(this.entries,t,1),!!~t}};var ypt={getConstructor:function(e,t,r,n){var a=e(function(s,c){dpt(s,o),hpt(s,{type:t,id:bpt++,frozen:void 0}),ppt(c)||vpt(c,s[n],{that:s,AS_ENTRIES:r})}),o=a.prototype,i=gpt(t),l=function(s,c,d){var f=i(s),v=cw(fpt(c),!0);return v===!0?uw(f).set(c,d):v[f.id]=d,s};return Aq(o,{delete:function(s){var c=i(this);if(!UT(s))return!1;var d=cw(s);return d===!0?uw(c).delete(s):d&&Pq(d,c.id)&&delete d[c.id]},has:function(c){var d=i(this);if(!UT(c))return!1;var f=cw(c);return f===!0?uw(d).has(c):f&&Pq(f,d.id)}}),Aq(o,r?{get:function(c){var d=i(this);if(UT(c)){var f=cw(c);return f===!0?uw(d).get(c):f?f[d.id]:void 0}},set:function(c,d){return l(this,c,d)}}:{add:function(c){return l(this,c,!0)}}),a}},wpt=YE,Lq=_n,dw=Dr,zq=a6,Dpt=Vu,Ipt=n6,Bq=ypt,fw=dn,pw=$c.enforce,Fpt=vr,$pt=xM,Mg=Object,Spt=Array.isArray,vw=Mg.isExtensible,jq=Mg.isFrozen,Ept=Mg.isSealed,Uq=Mg.freeze,Cpt=Mg.seal,Tpt=!Lq.ActiveXObject&&"ActiveXObject"in Lq,Lg,Hq=function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}},Wq=Ipt("WeakMap",Hq,Bq),zp=Wq.prototype,hw=dw(zp.set),Rpt=function(){return wpt&&Fpt(function(){var e=Uq([]);return hw(new Wq,e,1),!jq(e)})};if($pt)if(Tpt){Lg=Bq.getConstructor(Hq,"WeakMap",!0),Dpt.enable();var Vq=dw(zp.delete),gw=dw(zp.has),Kq=dw(zp.get);zq(zp,{delete:function(e){if(fw(e)&&!vw(e)){var t=pw(this);return t.frozen||(t.frozen=new Lg),Vq(this,e)||t.frozen.delete(e)}return Vq(this,e)},has:function(t){if(fw(t)&&!vw(t)){var r=pw(this);return r.frozen||(r.frozen=new Lg),gw(this,t)||r.frozen.has(t)}return gw(this,t)},get:function(t){if(fw(t)&&!vw(t)){var r=pw(this);return r.frozen||(r.frozen=new Lg),gw(this,t)?Kq(this,t):r.frozen.get(t)}return Kq(this,t)},set:function(t,r){if(fw(t)&&!vw(t)){var n=pw(this);n.frozen||(n.frozen=new Lg),gw(this,t)?hw(this,t,r):n.frozen.set(t,r)}else hw(this,t,r);return this}})}else Rpt()&&zq(zp,{set:function(t,r){var n;return Spt(t)&&(jq(t)?n=Uq:Ept(t)&&(n=Cpt)),hw(this,t,r),n&&n(t),this}});var Opt=xn,Apt=Opt.WeakMap,kpt=Apt,Ppt=kpt,Npt=Ppt,Mpt=Npt,Lpt=gs,zpt=TypeError,qq=function(e){if(typeof e=="object"&&"has"in e&&"get"in e&&"set"in e)return e;throw new zpt(Lpt(e)+" is not a weakmap")},Bpt=ta,_w=i6,mw={WeakMap:Bpt("WeakMap"),set:_w("set",2),get:_w("get",1),has:_w("has",1),remove:_w("delete",1)},jpt=Re,Upt=qq,WT=mw,Hpt=WT.get,Wpt=WT.has,Yq=WT.set;jpt({target:"WeakMap",proto:!0,real:!0,forced:!0},{emplace:function(t,r){var n=Upt(this),a,o;return Wpt(n,t)?(a=Hpt(n,t),"update"in r&&(a=r.update(a,t,n),Yq(n,t,a)),a):(o=r.insert(t,n),Yq(n,t,o),o)}});var Vpt=Re,Gq=mw,Kpt=l6;Vpt({target:"WeakMap",stat:!0,forced:!0},{from:Kpt(Gq.WeakMap,Gq.set,!0)});var qpt=Re,Xq=mw,Ypt=s6;qpt({target:"WeakMap",stat:!0,forced:!0},{of:Ypt(Xq.WeakMap,Xq.set,!0)});var Gpt=Re,Xpt=qq,Zpt=mw.remove;Gpt({target:"WeakMap",proto:!0,real:!0,forced:!0},{deleteAll:function(){for(var t=Xpt(this),r=!0,n,a=0,o=arguments.length;a1&&arguments[1]!==void 0?arguments[1]:1;a+=1;var f=a;function v(h){if(h===0)i(f),c();else{var g=r(function(){v(h-1)});o.set(f,g)}}return v(d),f};return l.cancel=function(s){var c=o.get(s);return i(c),n(c)},Ug.default=l,Ug}var iY;function yvt(){if(iY)return jg;iY=1;var e=Ce;Object.defineProperty(jg,"__esModule",{value:!0}),jg.useBatcher=s,jg.useEffectState=c;var t=e(Mo),r=e(m),n=Kr,a=e(aY()),o=e(bvt()),i=ks();function l(d){if(typeof MessageChannel>"u")(0,o.default)(d);else{var f=new MessageChannel;f.port1.onmessage=function(){return d()},f.port2.postMessage(void 0)}}function s(){var d=r.default.useRef(null),f=function(h){d.current||(d.current=[],l(function(){(0,n.unstable_batchedUpdates)(function(){(0,i.each)(d.current,function(g){g()}),d.current=null})})),d.current.push(h)};return f}function c(d,f){var v=r.default.useState(f),h=(0,t.default)(v,2),g=h[0],_=h[1],w=(0,a.default)(function(b){d(function(){_(b)})});return[g,w]}return jg}var wd={},lY;function wvt(){if(lY)return wd;lY=1;var e=Ur,t=Zr,r=Qr;Object.defineProperty(wd,"__esModule",{value:!0}),wd.useLayoutUpdateEffect=wd.useLayoutEffect=void 0;var n=o(m);function a(s){if(typeof t!="function")return null;var c=new t,d=new t;return(a=function(v){return v?d:c})(s)}function o(s,c){if(!c&&s&&s.__esModule)return s;if(s===null||e(s)!="object"&&typeof s!="function")return{default:s};var d=a(c);if(d&&d.has(s))return d.get(s);var f={__proto__:null},v=Object.defineProperty&&r;for(var h in s)if(h!=="default"&&Object.prototype.hasOwnProperty.call(s,h)){var g=v?r(s,h):null;g&&(g.get||g.set)?Object.defineProperty(f,h,g):f[h]=s[h]}return f.default=s,d&&d.set(s,f),f}var i=n.useLayoutEffect,l=wd.useLayoutEffect=function(c,d){var f=n.useRef(!0);i(function(){return c(f.current)},d),i(function(){return f.current=!1,function(){f.current=!0}},[])};return wd.useLayoutUpdateEffect=function(c,d){l(function(f){if(!f)return c()},d)},wd}var Hg={},Wg={},Vg={},sY;function GT(){return sY||(sY=1,Object.defineProperty(Vg,"__esModule",{value:!0}),Vg.default=void 0,Vg.default={locale:"zh-cn",dialog:{okText:"确定",cancelText:"取消",dragTip:"长按可拖拽窗口"},prompt:{okText:"确定",cancelText:"取消"},popConfirm:{okText:"确定",cancelText:"取消"},alert:{okText:"确定",cancelText:"取消"},check:{checkAll:"全选"},combo:{searchEmpty:"未搜索到数据",searchPlaceholder:"搜索",searching:"搜索中...",allCheck:"全选",allCheckInSearch:"搜索结果全选",emptyTip:"没有可选择的数据",loading:"正在加载",clickToLoadMore:"点击加载更多"},upload:{uploadText:"选择文件"},datetime:{clear:"清空",today:"今天",month:"本月",now:"此刻",ok:"确定",time:"时间",shortSun:"日",shortMon:"一",shortTue:"二",shortWed:"三",shortThu:"四",shortFri:"五",shortSat:"六",january:"一月",february:"二月",march:"三月",april:"四月",may:"五月",june:"六月",july:"七月",august:"八月",september:"九月",october:"十月",november:"十一月",december:"十二月",january_m:"1月",february_m:"2月",march_m:"3月",april_m:"4月",may_m:"5月",june_m:"6月",july_m:"7月",august_m:"8月",september_m:"9月",october_m:"10月",november_m:"11月",december_m:"12月",hour:"时",minute:"分",second:"秒"},cascader:{searchPlaceholder:"搜索",searchEmpty:"未搜索到数据",searching:"搜索中..."},filePreview:{download:"下载",noSupportPreview:"当前文件类型不支持在线预览",zoomIn:"放大",zoomOut:"缩小",rotateToRight:"向右旋转",viewOrigin:"查看原图",loading:"加载中,请稍后..."},pagination:{currentPage:"第 {page} 页"},colorPicker:{recommendColor:"推荐颜色",customColor:"自定义颜色",alpha:"透明度",noMessage:"暂无"},image:{preview:"预览"},typography:{edit:"编辑",copy:"复制",copied:"复制成功",expand:"展开"},select:{allCheck:"全选",allCheckInSearch:"搜索结果全选",emptyTip:"没有可选择的数据",searchPlaceholder:"搜索"},treeSelect:{emptyTip:"没有可选择的数据",searchPlaceholder:"搜索"}}),Vg}var cY;function uY(){if(cY)return Wg;cY=1;var e=Ce;Object.defineProperty(Wg,"__esModule",{value:!0}),Wg.LocaleContext=void 0;var t=m,r=e(GT());return Wg.LocaleContext=(0,t.createContext)({locale:r.default}),Wg}var dY;function Dvt(){if(dY)return Hg;dY=1;var e=Ce;Object.defineProperty(Hg,"__esModule",{value:!0}),Hg.default=void 0;var t=e($l),r=e(m),n=uY(),a=e(GT()),o=function(l){var s=r.default.useContext(n.LocaleContext),c=s.locale,d=r.default.useMemo(function(){var f,v=a.default[l],h=(f=c?.[l])!==null&&f!==void 0?f:{};return(0,t.default)((0,t.default)({},v),h||{})},[l,c]);return[d]};return Hg.default=o,Hg}var yw={},fY;function Ivt(){if(fY)return yw;fY=1;var e=Ur,t=Zr,r=Qr;Object.defineProperty(yw,"__esModule",{value:!0}),yw.default=i;var n=o(m);function a(l){if(typeof t!="function")return null;var s=new t,c=new t;return(a=function(f){return f?c:s})(l)}function o(l,s){if(!s&&l&&l.__esModule)return l;if(l===null||e(l)!="object"&&typeof l!="function")return{default:l};var c=a(s);if(c&&c.has(l))return c.get(l);var d={__proto__:null},f=Object.defineProperty&&r;for(var v in l)if(v!=="default"&&Object.prototype.hasOwnProperty.call(l,v)){var h=f?r(l,v):null;h&&(h.get||h.set)?Object.defineProperty(d,v,h):d[v]=l[v]}return d.default=l,c&&c.set(l,d),d}function i(l,s,c){var d=n.useRef({});return(!("value"in d.current)||c(d.current.condition,s))&&(d.current.value=l(),d.current.condition=s),d.current.value}return yw}var Kg={},pY;function Fvt(){if(pY)return Kg;pY=1;var e=Ce;Object.defineProperty(Kg,"__esModule",{value:!0}),Kg.default=void 0;var t=e(Mo),r=m,n=function(o,i){var l=i||{},s=l.defaultValue,c=l.value,d=l.onChange,f=l.postState,v=(0,r.useState)(function(){return c!==void 0?c:s!==void 0?s:o}),h=(0,t.default)(v,2),g=h[0],_=h[1],w=c!==void 0?c:g;f&&(w=f(w));var b=function(F,S){var I=typeof F=="function"?F(g):F;_(F),S?.invokeChange!==!1&&w!==F&&d&&d(I,w)},y=(0,r.useRef)(!0);return(0,r.useEffect)(function(){if(y.current){y.current=!1;return}c===void 0&&_(c)},[c]),[w,b]};return Kg.default=n,Kg}var qg={},XT={},Lo={},ZT={},Yg={};const Dd=oo(pue),Id=oo(She),Gg=oo(Jhe),Xg=oo(tge),Zg=oo(gge);var Fd={},vY;function $vt(){if(vY)return Fd;vY=1;var e=Ce;Object.defineProperty(Fd,"__esModule",{value:!0}),Fd.setImperativeLocale=Fd.getImperativeLocale=void 0;var t=e($l),r=e(GT()),n=(0,t.default)({},r.default);return Fd.getImperativeLocale=function(){return n},Fd.setImperativeLocale=function(o){n=(0,t.default)((0,t.default)({},r.default),o)},Fd}var hY;function Svt(){if(hY)return Yg;hY=1;var e=Ur,t=yc,r=Zr,n=Qr,a=Ce;Object.defineProperty(Yg,"__esModule",{value:!0}),Yg.default=void 0;var o=a(Dd),i=a(Id),l=a(Gg),s=a(Xg),c=a(Zg),d=_(m),f=_($r),v=uY(),h=$vt();function g(D){if(typeof r!="function")return null;var F=new r,S=new r;return(g=function(C){return C?S:F})(D)}function _(D,F){if(!F&&D&&D.__esModule)return D;if(D===null||e(D)!="object"&&typeof D!="function")return{default:D};var S=g(F);if(S&&S.has(D))return S.get(D);var I={__proto__:null},C=Object.defineProperty&&n;for(var R in D)if(R!=="default"&&Object.prototype.hasOwnProperty.call(D,R)){var P=C?n(D,R):null;P&&(P.get||P.set)?Object.defineProperty(I,R,P):I[R]=D[R]}return I.default=D,S&&S.set(D,I),I}function w(D){var F=b();return function(){var I=(0,c.default)(D),C;if(F){var R=(0,c.default)(this).constructor;C=t(I,arguments,R)}else C=I.apply(this,arguments);return(0,s.default)(this,C)}}function b(){if(typeof Reflect>"u"||!t||t.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(t(Boolean,[],function(){})),!0}catch{return!1}}var y=function(D){(0,l.default)(S,D);var F=w(S);function S(I){var C;return(0,o.default)(this,S),C=F.call(this,I),(0,h.setImperativeLocale)(I.locale),C}return(0,i.default)(S,[{key:"componentDidUpdate",value:function(C){var R=this.props.locale;R!==C.locale&&(0,h.setImperativeLocale)(R)}},{key:"render",value:function(){var C=this.props,R=C.children,P=C.locale;return d.createElement(v.LocaleContext.Provider,{value:{locale:P}},R)}}]),S}(d.Component);return y.propTypes={locale:f.object},Yg.default=y,Yg}var gY;function Evt(){return gY||(gY=1,function(e){var t=Ur,r=Zr,n=Qr,a=Oo;Object.defineProperty(e,"__esModule",{value:!0});var o={};e.default=void 0;var i=s(Svt());a(i).forEach(function(c){c==="default"||c==="__esModule"||Object.prototype.hasOwnProperty.call(o,c)||c in e&&e[c]===i[c]||Object.defineProperty(e,c,{enumerable:!0,get:function(){return i[c]}})});function l(c){if(typeof r!="function")return null;var d=new r,f=new r;return(l=function(h){return h?f:d})(c)}function s(c,d){if(!d&&c&&c.__esModule)return c;if(c===null||t(c)!="object"&&typeof c!="function")return{default:c};var f=l(d);if(f&&f.has(c))return f.get(c);var v={__proto__:null},h=Object.defineProperty&&n;for(var g in c)if(g!=="default"&&Object.prototype.hasOwnProperty.call(c,g)){var _=h?n(c,g):null;_&&(_.get||_.set)?Object.defineProperty(v,g,_):v[g]=c[g]}return v.default=c,f&&f.set(c,v),v}e.default=i.default}(ZT)),ZT}var $d={},Qg={},_Y;function QT(){if(_Y)return Qg;_Y=1;var e=Ce;Object.defineProperty(Qg,"__esModule",{value:!0}),Qg.default=void 0;var t=e(m),r=e(xY()),n=function(o){var i=t.default.useContext(r.default),l=t.default.useMemo(function(){return o?typeof o=="string"||typeof o=="number"?o??i:o instanceof Function?o(i):i:i},[o,i]);return l};return Qg.default=n,Qg}var mY;function xY(){if(mY)return $d;mY=1;var e=Ce;Object.defineProperty($d,"__esModule",{value:!0}),$d.default=$d.SizeProvider=void 0;var t=e(m),r=e(QT()),n=t.default.createContext(void 0);return $d.SizeProvider=function(o){var i=o.children,l=o.size,s=(0,r.default)(l);return t.default.createElement(n.Provider,{value:s},i)},$d.default=n,$d}var Jg={},JT={},Bp={},bY;function Cvt(){if(bY)return Bp;bY=1;var e=Ce;Object.defineProperty(Bp,"__esModule",{value:!0}),Bp.isFireFox=void 0,Bp.isPlatformMac=r;var t=e(Ur);Bp.isFireFox=function(){return(typeof navigator>"u"?"undefined":(0,t.default)(navigator))==="object"&&/Firefox/i.test(navigator.userAgent)};function r(){return/(mac\sos|macintosh)/i.test(navigator.appVersion)}return Bp}var e_={},yY;function Tvt(){if(yY)return e_;yY=1;var e=Ce;Object.defineProperty(e_,"__esModule",{value:!0}),e_.toArray=void 0;var t=e(Wi),r=e(m),n=kh;return e_.toArray=function a(o){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},l=[];return r.default.Children.forEach(o,function(s){s==null&&!i.keepEmpty||(Array.isArray(s)?l=(0,t.default)(l).call(l,a(s)):(0,n.isFragment)(s)&&s.props?l=(0,t.default)(l).call(l,a(s.props.children,i)):l.push(s))}),l},e_}var Sr={};const Rvt=oo(wme);var zo={},wY;function DY(){if(wY)return zo;wY=1;var e=Ce;Object.defineProperty(zo,"__esModule",{value:!0}),zo.placements=zo.noTrianglePlacements=zo.getPlacements=zo.NO_ARROW_OFFSET=zo.ARROW_OFFSET=void 0;var t=e($l),r=$a(),n={"top-left":{points:["bl","tc"]},"left-top":{points:["tr","cl"]},"top-right":{points:["br","tc"]},"right-top":{points:["tl","cr"]},"bottom-right":{points:["tr","bc"]},"right-bottom":{points:["bl","cr"]},"bottom-left":{points:["tl","bc"]},"left-bottom":{points:["br","cl"]}},a=zo.getPlacements=function(s){var c=s.offset,d=s.arrowPointAtCenter,f=s.autoAdjustOverflow,v=f===void 0?!0:f,h=s.arrowWidth,g=h===void 0?12:h,_=s.dropdownArrowOffset,w=_===void 0?8:_,b={targetOffset:[0,0],overflow:v?{adjustX:!0,adjustY:!0,alwaysByViewport:!0}:{adjustX:!1,adjustY:!1,alwaysByViewport:!1}},y={left:(0,t.default)((0,t.default)({},b),{points:["cr","cl"],offset:[-c,0]}),right:(0,t.default)((0,t.default)({},b),{points:["cl","cr"],offset:[c,0]}),top:(0,t.default)((0,t.default)({},b),{points:["bc","tc"],offset:[0,-c]}),bottom:(0,t.default)((0,t.default)({},b),{points:["tc","bc"],offset:[0,c]}),"top-left":(0,t.default)((0,t.default)({},b),{points:["bl","tl"],offset:[0,-c]}),"left-top":(0,t.default)((0,t.default)({},b),{points:["tr","tl"],offset:[-c,0]}),"top-right":(0,t.default)((0,t.default)({},b),{points:["br","tr"],offset:[0,-c]}),"right-top":(0,t.default)((0,t.default)({},b),{points:["tl","tr"],offset:[c,0]}),"bottom-right":(0,t.default)((0,t.default)({},b),{points:["tr","br"],offset:[0,c]}),"right-bottom":(0,t.default)((0,t.default)({},b),{points:["bl","br"],offset:[c,0]}),"bottom-left":(0,t.default)((0,t.default)({},b),{points:["tl","bl"],offset:[0,c]}),"left-bottom":(0,t.default)((0,t.default)({},b),{points:["br","bl"],offset:[-c,0]})};return d&&(0,r.each)(y,function(D,F){n[F]&&(0,r.assign)(D,n[F]);var S=g/2;switch(F){case"top-left":case"bottom-left":(0,r.set)(D.offset,"0",-w-S);break;case"top-right":case"bottom-right":(0,r.set)(D.offset,"0",w+S);break;case"left-top":case"right-top":(0,r.set)(D.offset,"1",-w-S);break;case"left-bottom":case"right-bottom":(0,r.set)(D.offset,"1",w+S);break}}),y},o=zo.ARROW_OFFSET=10,i=zo.NO_ARROW_OFFSET=4;return zo.placements=a({offset:o}),zo.noTrianglePlacements=a({offset:i}),zo}var IY;function FY(){if(IY)return Sr;IY=1;var e=Mh,t=Ph,r=M0,n=L0,a=Ce;Object.defineProperty(Sr,"__esModule",{value:!0}),Sr.throttleByAnimationFrame=Sr.pickTriggerAttrs=Sr.matchOneOfKeywords=Sr.makeArray=Sr.isValueEmpty=Sr.isStringEmpty=Sr.isSearchedByKeyword=Sr.isReactNode=Sr.isPromise=Sr.isNumeric=Sr.getSelectionText=Sr.getSearchedByKeys=Sr.genRandomCode=Sr.default=void 0;var o=a(Oo),i=a(Mh),l=a(Kf),s=a(Wi),c=a(Rvt),d=a(Dd),f=a(Id),v=a(m),h=DY(),g=ks();function _(F,S){var I=typeof r<"u"&&n(F)||F["@@iterator"];if(!I){if(Array.isArray(F)||(I=w(F))||S&&F&&typeof F.length=="number"){I&&(F=I);var C=0,R=function(){};return{s:R,n:function(){return C>=F.length?{done:!0}:{done:!1,value:F[C++]}},e:function(z){throw z},f:R}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var P=!0,O=!1,N;return{s:function(){I=I.call(F)},n:function(){var z=I.next();return P=z.done,z},e:function(z){O=!0,N=z},f:function(){try{!P&&I.return!=null&&I.return()}finally{if(O)throw N}}}}function w(F,S){var I;if(F){if(typeof F=="string")return b(F,S);var C=e(I=Object.prototype.toString.call(F)).call(I,8,-1);if(C==="Object"&&F.constructor&&(C=F.constructor.name),C==="Map"||C==="Set")return t(F);if(C==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(C))return b(F,S)}}function b(F,S){(S==null||S>F.length)&&(S=F.length);for(var I=0,C=new Array(S);I0)return!1;if(I.length===0)return!0;for(var C in I)if((0,g.has)(I,C))return!1;return isNaN(I)}}]),F}(),Sr.throttleByAnimationFrame=function(S){var I=null,C=function(O){return function(){I=null,S.apply(void 0,(0,c.default)(O))}},R=function(){if(I===null){for(var O=arguments.length,N=new Array(O),A=0;A"&]/g,function(I){switch(I){case"<":return"<";case">":return">";case"&":return"&";case'"':return""";default:return""}})};Sr.matchOneOfKeywords=function(S,I){return(0,g.isEmpty)(I)?!0:(0,g.some)(I,function(C){return D(S,C)})};var D=Sr.isSearchedByKeyword=function(S,I){return(0,g.isEmpty)(I)?!0:new RegExp((0,g.escapeRegExp)(I),"i").test(S)};return Sr.getSearchedByKeys=function(S,I,C){var R=(0,g.toString)(S);if((0,g.isEmpty)(R)||(0,g.isEmpty)(I))return y(R);var P=(0,g.reduce)(I,function(A,z,k){if(k===0)return"(?:".concat((0,g.escapeRegExp)(z),")");var M;return(0,s.default)(M="".concat(A,"|(?:")).call(M,(0,g.escapeRegExp)(z),")")},"");if(!new RegExp(P,"i").test(R))return y(R);var O=(0,g.split)(R,new RegExp(P,"ig")),N=R.match(new RegExp(P,"ig"))||[];return(0,g.reduce)(O,function(A,z,k){if(k===0)return A+((0,g.isNumber)(C)&&z.length>C?"..."+y((0,i.default)(z).call(z,z.length-C)):y(z));var M;return A+(0,s.default)(M=''.concat(y(N[k-1]),"")).call(M,y(z))},"")},Sr.getSelectionText=function(){if(window&&window.getSelection){var S=window.getSelection();return S&&S.toString()}else if(document){var I=document;if(I.selection&&I.selection.createRange)return I.selection.createRange().text}return""},Sr.isReactNode=function(S){return v.default.isValidElement(S)||(0,g.isString)(S)||(0,g.isNumber)(S)||(0,g.isBoolean)(S)||(0,g.isNil)(S)},Sr.isStringEmpty=function(S){return S===""||(0,g.isNil)(S)},Sr.isValueEmpty=function(S){return!!((0,g.isNil)(S)||(0,g.isArray)(S)&&!S.length||(0,g.isString)(S)&&!S)},Sr.genRandomCode=function(S,I){for(var C=I||"1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",R="",P=S;P>0;){var O=Math.floor(Math.random()*C.length);R+=C[O],P--}return R},Sr.isNumeric=function(S){var I=S&&S.toString();return!(0,g.isArray)(S)&&I-parseFloat(I)+1>=0},Sr.makeArray=function(S){return(0,g.isNil)(S)?[]:(0,g.isArray)(S)?S:[S]},Sr.pickTriggerAttrs=function(S){var I=arguments.length>1&&arguments[1]!==void 0?arguments[1]:["onClick","onMouseEnter","onMouseLeave","onFocus","onBlur"];return(0,g.pick)(S,I)},Sr}var t_={},$Y;function SY(){if($Y)return t_;$Y=1;var e=Ce;Object.defineProperty(t_,"__esModule",{value:!0}),t_.default=void 0;var t=e($l),r=e(bp),n=e(Fy),a=e($y),o=e(Sy),i=e(Ey),l=e(Cy),s=e(Ty),c=ks(),d="YYYY-MM-DD HH:mm:ss";r.default.locale((0,t.default)((0,t.default)({},o.default),{weekStart:1})),r.default.extend(i.default),r.default.extend(n.default),r.default.extend(a.default),r.default.extend(s.default),r.default.extend(l.default),r.default.extend(i.default);var f=function(_,w){if(w){var b=r.default.tz(_,w).format(d);return(0,r.default)(b).toDate()}return _},v=function(_){var w=f((0,r.default)().toDate(),_);return(0,r.default)(w)},h={getNow:function(_){return v(_)},getFixedDate:function(_){return(0,r.default)(_,"YYYY-MM-DD")},getStart:function(_,w){return(0,r.default)(_).startOf(w)},getEnd:function(_,w){return(0,r.default)(_).endOf(w)},getEndDate:function(_){return _.endOf("month")},getWeekDay:function(_){return _.weekday()+_.localeData().firstDayOfWeek()},getYear:function(_){return _.year()},getMonth:function(_){return _.month()},getDate:function(_){return _.date()},getHour:function(_){return _.hour()},getMinute:function(_){return _.minute()},getSecond:function(_){return _.second()},addYear:function(_,w){return _.add(w,"year")},addMonth:function(_,w){return _.add(w,"month")},addDate:function(_,w){return _.add(w,"day")},setYear:function(_,w){return _.year(w)},setMonth:function(_,w){return _.month(w)},setDate:function(_,w){return _.date(w)},setHour:function(_,w,b,y){var D=_.hour(w);return(0,c.isNil)(b)||(D=D.minute(b)),(0,c.isNil)(y)||(D=D.second(y)),D},setMinute:function(_,w){return _.minute(w)},setSecond:function(_,w){return _.second(w)},setMillisecond:function(_,w){return _.millisecond(w)},isAfter:function(_,w){return _.isAfter(w)},isValidate:function(_){return _.isValid()},getWeekFirstDay:function(){return v().localeData().firstDayOfWeek()},getWeekFirstDate:function(_){return _.weekday(0)},getShortWeekDays:function(){return v().localeData().weekdaysMin()},format:function(_,w){return _.format(w)},parse:function(_,w){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,y=(0,r.default)(_,w,b);return y.isValid()?y:null},toDate:function(_){return _.toDate()},toDayjs:function(_){return(0,r.default)(_)},getRealTimeZoneDayjs:function(_,w){if(w){var b=(0,r.default)(_).format(d);return r.default.tz(b,w)}return(0,r.default)(_)},tz:function(_,w){return r.default.tz(_,w)},localDateToTimezoneDate:f,isDayjs:function(_){return r.default.isDayjs(_)}};return t_.default=h,t_}var Ps={},Ln={},EY;function eR(){if(EY)return Ln;EY=1;var e=Ce;Object.defineProperty(Ln,"__esModule",{value:!0}),Ln.SEP=Ln.KEY_CODE=Ln.KEYBOARD_KEY=Ln.EMPTY_OBJ=Ln.EMPTY_FN=Ln.EMPTY_ARRAY=Ln.DATE_MAP=Ln.DATA_VIEW_MODE=Ln.ANIMATION_DURATION=void 0;var t=e(Ry);return Ln.KEY_CODE={BACKSPACE:8,TAB:9,ENTER:13,SHIFT:16,CTRL:17,ALT:18,CAPS_LOCK:20,ESC:27,SPACE:32,LEFT:37,UP:38,RIGHT:39,DOWN:40,E:69,N:78,P:80,META:91,CONTEXT_MENU:93,WIN_KEY_RIGHT:92,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,SEMICOLON:186,EQUALS:187,WIN_KEY:224},Ln.KEYBOARD_KEY={BACKSPACE:"Backspace",ENTER:"Enter",ESC:"Escape",LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",DOWN:"ArrowDown",SHIFT:"Shift",HOME:"Home",END:"End",PAGE_UP:"PageUp",PAGE_DOWN:"PageDown"},Ln.ANIMATION_DURATION={FAST:100,NORMAL:200,SLOW:300},Ln.SEP={COMMA:", "},Ln.EMPTY_FN=function(){},Ln.EMPTY_ARRAY=(0,t.default)([]),Ln.EMPTY_OBJ=(0,t.default)({}),Ln.DATA_VIEW_MODE={YM:0,YMD:1,YMDHM:2,YMDHMS:3,HMS:4,HM:5},Ln.DATE_MAP={MINYEAR:1901,MAXYEAR:2999},Ln}var CY;function Ovt(){if(CY)return Ps;CY=1;var e=Ce;Object.defineProperty(Ps,"__esModule",{value:!0}),Ps.parseTimezoneDate=Ps.getMonthDays=Ps.fixDateByViewMode=void 0;var t=e(tg),r=ks(),n=FY(),a=e(SY()),o=eR(),i=e(bp),l=function(d){return a.default.toDayjs(d).isValid()?d:null};Ps.getMonthDays=function(d,f){var v=[31,28,31,30,31,30,31,31,30,31,30,31];return(d%4===0&&d%100!==0||d%400===0)&&f===1?29:v[f]};var s=function(d,f){var v=l(d);return(0,r.isNil)(v)?v:a.default.localDateToTimezoneDate(v,f)};return Ps.parseTimezoneDate=function(d,f){if((0,r.isNil)(d))return null;if(a.default.isDayjs(d))return(0,i.default)(d.format("YYYY-MM-DD HH:mm:ss")).toDate();if((0,n.isNumeric)(d))return s(new Date(d),f);if((0,r.isString)(d)){if(d.match(/^[\d-]+T[\d:.]+Z$/))return s(new Date(d),f);if(/^([0-1][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$/.test(d)){var v=d.split(":"),h=(0,n.isNumeric)(v[0])?v[0]:0,g=(0,n.isNumeric)(v[1])?v[1]:0,_=(0,n.isNumeric)(v[2])?v[2]:0,w=new Date;return new Date(w.getFullYear(),w.getMonth(),w.getDate(),h,g,_)}var b=(0,t.default)(d).call(d).split(" ");if(b){var y=b[0]&&b[0].split("-"),D=y[0];if(!(0,n.isNumeric)(D))return null;var F=(0,n.isNumeric)(y[1])?y[1]-1:0,S=(0,n.isNumeric)(y[2])?y[2]:1;if(b[1]){var I=b[1].split(":"),C=(0,n.isNumeric)(I[0])?I[0]:0,R=(0,n.isNumeric)(I[1])?I[1]:0,P=(0,n.isNumeric)(I[2])?I[2]:0,O=0;if(/\./.test(I[2])){var N=I[2].split(".");P=(0,n.isNumeric)(N[0])?N[0]:0,O=(0,n.isNumeric)(N[1])?N[1]:0}return new Date(D,F,S,C,R,P,O)}else return new Date(D,F,S)}else return null}return s(new Date(d),f)},Ps.fixDateByViewMode=function(d,f){var v=d;switch(f){case o.DATA_VIEW_MODE.YM:v=a.default.setDate(v,1),v=a.default.setHour(v,0,0,0);break;case o.DATA_VIEW_MODE.YMD:v=a.default.setHour(v,0,0,0);break;case o.DATA_VIEW_MODE.YMDHM:v=a.default.setSecond(v,0);break}return v=a.default.setMillisecond(v,0),v},Ps}var r_={},TY;function RY(){if(TY)return r_;TY=1;var e=Ce;Object.defineProperty(r_,"__esModule",{value:!0}),r_.default=void 0;var t=e(Wi),r=e(Dd),n=e(Id),a=ks(),o={};return r_.default=function(){function i(){(0,r.default)(this,i)}return(0,n.default)(i,null,[{key:"isDomElement",value:function(s){return s instanceof HTMLElement||s instanceof SVGElement}},{key:"isVisible",value:function(s){if(!s)return!1;if(s instanceof Element){if(s.offsetParent)return!0;if(s.getBBox){var c=s.getBBox(),d=c.width,f=c.height;if(d||f)return!0}if(s.getBoundingClientRect){var v=s.getBoundingClientRect(),h=v.width,g=v.height;if(h||g)return!0}}return!1}},{key:"getDomOffset",value:function(s,c){if(!(!i.isDomElement(s)||!i.isDomElement(c))){var d=s.getBoundingClientRect(),f=c.getBoundingClientRect();return{left:d.left-f.left,top:d.top-f.top}}}},{key:"removeClass",value:function(s,c){!i.isDomElement(s)||(0,a.isNil)(c)||((0,a.isArray)(c)?(0,a.forEach)(c,function(d){s.classList.remove(d)}):s.classList.remove(c))}},{key:"addClass",value:function(s,c){!i.isDomElement(s)||(0,a.isNil)(c)||((0,a.isArray)(c)?(0,a.forEach)(c,function(d){s.classList.add(d)}):s.classList.add(c))}},{key:"closest",value:function(s,c){if(!i.isDomElement(s))return null;if(s.closest)return s.closest(c);var d=s.matches||s.webkitMatchesSelector||s.mozMatchesSelector||s.msMatchesSelector;if(!d)return null;for(var f=s;f;){if(f.nodeType===1&&d.call(f,c))return f;f=f.parentElement||f.parentNode}return null}},{key:"isFirstElement",value:function(s){if(!i.isDomElement(s))return!1;var c=s.parentElement;return c&&c.firstChild===s}},{key:"isLastElement",value:function(s){if(!i.isDomElement(s))return!1;var c=s.parentElement;return c&&c.lastChild===s}},{key:"cssSupport",value:function(s,c){var d,f=(0,t.default)(d="".concat(s,": ")).call(d,c);if(!(0,a.isNil)(o[f]))return o[f];var v=document.createElement("div"),h=!1;return s in v.style&&(v.style[s]=c,h=v.style[s]===c),o[f]=h,h}},{key:"supportFlexGap",value:function(){var s="flexGap";if(!(0,a.isNil)(o[s]))return o[s];var c=!1,d=document.createElement("div");return d.style.display="flex",d.style.flexDirection="column",d.style.rowGap="1px",d.appendChild(document.createElement("div")),d.appendChild(document.createElement("div")),document.body.appendChild(d),c=d.scrollHeight===1,document.body.removeChild(d),o[s]=c,c}},{key:"contains",value:function(s){var c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!s)return!1;if(s.contains)return s.contains(c);for(var d=c;d;){if(d===s)return!0;d=d.parentNode}return!1}}]),i}(),r_}var jp={},OY;function Avt(){if(OY)return jp;OY=1;var e=Ce;Object.defineProperty(jp,"__esModule",{value:!0}),jp.removeCSS=c,jp.updateCSS=void 0;var t=e(rg),r=e(Ly),n=e(Ph),a="jdy-design-theme-key",o=function(){var f=document.querySelector("head");return f||document.body},i=function(f,v){var h=document.createElement("style");h.innerHTML=f;var g=v||o();return g.appendChild(h),h},l=new t.default,s=function(f,v){var h,g=v||o(),_=l.get(g);return _?(0,r.default)(h=(0,n.default)(_.children)).call(h,function(w){return w.tagName==="STYLE"&&w.getAttribute(a)===f}):null};jp.updateCSS=function(f,v,h){var g=h||o();if(!l.has(g)){var _=i("",g),w=_.parentNode;l.set(g,w),w.removeChild(_)}var b=s(v,g);if(b)return b.innerHTML!==f&&(b.innerHTML=f),b;var y=i(f,g);return y.setAttribute(a,v),y};function c(d,f){var v=f||o(),h=s(d,v);h&&v.removeChild(h)}return jp}var ww={},AY;function kvt(){if(AY)return ww;AY=1;var e=Ce;Object.defineProperty(ww,"__esModule",{value:!0}),ww.default=a;var t=e(m),r=Kr,n=e(RY());function a(o){return n.default.isDomElement(o)?o:o instanceof t.default.Component?(0,r.findDOMNode)(o):null}return ww}var n_={},kY;function Pvt(){if(kY)return n_;kY=1;var e=Ce;Object.defineProperty(n_,"__esModule",{value:!0}),n_.default=n,n_.getTargetScrollBarSize=o;var t=e(By),r;function n(i){if(typeof document>"u")return 0;if(i||r===void 0){var l=document.createElement("div");l.style.width="100%",l.style.height="200px";var s=document.createElement("div"),c=s.style;c.position="absolute",c.top="0",c.left="0",c.pointerEvents="none",c.visibility="hidden",c.width="200px",c.height="150px",c.overflow="hidden",s.appendChild(l),document.body.appendChild(s);var d=l.offsetWidth;s.style.overflow="scroll";var f=l.offsetWidth;d===f&&(f=s.clientWidth),document.body.removeChild(s),r=d-f}return r}function a(i){var l=i.match(/^(.*)px$/),s=Number(l?.[1]);return(0,t.default)(s)?n():s}function o(i){if(typeof document>"u"||!i||!(i instanceof Element))return{width:0,height:0};var l=getComputedStyle(i,"::-webkit-scrollbar"),s=l.width,c=l.height;return{width:a(s),height:a(c)}}return n_}var Sd={},PY;function Nvt(){if(PY)return Sd;PY=1;var e=Ur,t=Zr,r=Qr;Object.defineProperty(Sd,"__esModule",{value:!0}),Sd.cloneElement=s,Sd.isValidElement=void 0,Sd.replaceElement=l;var n=o(m);function a(c){if(typeof t!="function")return null;var d=new t,f=new t;return(a=function(h){return h?f:d})(c)}function o(c,d){if(!d&&c&&c.__esModule)return c;if(c===null||e(c)!="object"&&typeof c!="function")return{default:c};var f=a(d);if(f&&f.has(c))return f.get(c);var v={__proto__:null},h=Object.defineProperty&&r;for(var g in c)if(g!=="default"&&Object.prototype.hasOwnProperty.call(c,g)){var _=h?r(c,g):null;_&&(_.get||_.set)?Object.defineProperty(v,g,_):v[g]=c[g]}return v.default=c,f&&f.set(c,v),v}var i=Sd.isValidElement=n.isValidElement;function l(c,d,f){return i(c)?n.cloneElement(c,typeof f=="function"?f(c.props||{}):f):d}function s(c,d){return l(c,c,d)}return Sd}var Ed={},NY;function Mvt(){if(NY)return Ed;NY=1;var e=Ce;Object.defineProperty(Ed,"__esModule",{value:!0}),Ed.composeRef=o,Ed.fillRef=a,Ed.supportRef=l,Ed.useComposeRef=i;var t=e(jy),r=e(Ur),n=Up();function a(s,c){typeof s=="function"?s(c):(0,r.default)(s)==="object"&&s&&"current"in s&&(s.current=c)}function o(){for(var s=arguments.length,c=new Array(s),d=0;d1&&arguments[1]!==void 0?arguments[1]:"",y=arguments.length>2?arguments[2]:void 0,D=w.props||{},F=(0,o.default)({key:b},(0,d.omit)(D,"children")),S=D.children||[];return(0,d.isArray)(S)||(S=[S]),y&&(0,d.assign)(F,v,y),s.default.createElement(w.type,F,e(d)(S,function(I,C){var R;return _(I,(0,i.default)(R="".concat(w.type,"-")).call(R,C))}))},g=function(w,b){var y,D=w.className,F=w.component,S=w.icon,I=w.spin,C=w.name,R=w.onClick,P=w.viewBox,O=w.style,N=w.prefixCls,A=f(w,["className","component","icon","spin","name","onClick","viewBox","style","prefixCls"]),z=(0,c.usePrefixCls)("svgicon",N),k=(0,l.default)(z,(0,n.default)({},(0,i.default)(y="".concat(z,"-")).call(y,C),C),D,{spin:!!I}),M=function(){var B={style:O};return P&&(B.viewBox=P),F?s.default.createElement(F,(0,r.default)({},v,B)):S?h(S,C,B):null};return s.default.createElement("i",(0,r.default)({ref:b,className:k,onClick:R},A),M())};return l_.default=s.default.forwardRef(g),l_}var aR={},s_={},qY;function Uvt(){if(qY)return s_;qY=1;var e=Ce;Object.defineProperty(s_,"__esModule",{value:!0}),s_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CalendarOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M776 201.6H670.4v-52.8c0-22.4-17.6-40-40-40s-40 17.6-40 40v54.4h-160v-54.4c0-22.4-17.6-40-40-40s-40 17.6-40 40v54.4h-99.2c-33.6 0-67.2 14.4-91.2 38.4s-36.8 57.6-36.8 91.2V784c0 35.2 12.8 67.2 36.8 91.2 24 25.6 56 38.4 91.2 38.4h528c70.4 0 128-59.2 128-131.2V329.6c-3.2-68.8-60.8-128-131.2-128zM214.4 296c9.6-9.6 20.8-14.4 33.6-14.4h100.8V336c0 22.4 17.6 40 40 40s40-17.6 40-40v-54.4h160V336c0 22.4 17.6 40 40 40s40-17.6 40-40v-54.4h105.6c27.2 0 48 22.4 48 51.2v80h-624v-80c1.6-14.4 6.4-27.2 16-36.8zM776 835.2H248c-12.8 0-24-4.8-33.6-14.4-9.6-9.6-14.4-22.4-14.4-36.8V492.8h624V784c0 28.8-22.4 51.2-48 51.2z"}),r.default.createElement("path",{d:"M593.6 771.2c-3.2-1.6-9.6-4.8-28.8-4.8h-27.2V540.8c0-6.4-1.6-11.2-3.2-14.4-4.8-6.4-12.8-8-19.2-6.4-1.6 0-3.2 0-6.4 1.6l-64 17.6c-6.4 1.6-11.2 4.8-14.4 8-3.2 4.8-6.4 9.6-6.4 14.4 0 6.4 1.6 12.8 6.4 16 4.8 3.2 9.6 6.4 16 6.4h3.2l35.2-8v193.6h-27.2c-19.2 0-25.6 1.6-28.8 4.8-4.8 3.2-9.6 8-9.6 19.2 0 8 1.6 12.8 6.4 17.6 4.8 3.2 11.2 6.4 17.6 6.4H576c8 0 14.4-1.6 17.6-6.4 4.8-4.8 6.4-9.6 6.4-17.6 1.6-14.4-3.2-20.8-6.4-22.4z"}))}))};return a.displayName="CalendarOutlined",s_.default=r.default.memo(r.default.forwardRef(a)),s_}var c_={},YY;function Hvt(){if(YY)return c_;YY=1;var e=Ce;Object.defineProperty(c_,"__esModule",{value:!0}),c_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CaretDownFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M488 740.8 232 454.4c-19.2-20.8-3.2-52.8 24-52.8h512c27.2 0 41.6 32 24 52.8L536 740.8c-12.8 14.4-35.2 14.4-48 0z"}))}))};return a.displayName="CaretDownFilled",c_.default=r.default.memo(r.default.forwardRef(a)),c_}var u_={},GY;function Wvt(){if(GY)return u_;GY=1;var e=Ce;Object.defineProperty(u_,"__esModule",{value:!0}),u_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CaretRightFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M658.286 512q0 14.848-10.862 25.71l-256 256q-10.862 10.861-25.71 10.861t-25.71-10.861-10.86-25.71V256q0-14.848 10.862-25.71t25.71-10.861 25.709 10.861l256 256q10.862 10.862 10.862 25.71z"}))}))};return a.displayName="CaretRightFilled",u_.default=r.default.memo(r.default.forwardRef(a)),u_}var d_={},XY;function Vvt(){if(XY)return d_;XY=1;var e=Ce;Object.defineProperty(d_,"__esModule",{value:!0}),d_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CaretUpFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M488 123.2 232 409.6c-19.2 20.8-3.2 52.8 24 52.8h512c27.2 0 41.6-32 24-52.8L536 123.2c-12.8-14.4-35.2-14.4-48 0z"}))}))};return a.displayName="CaretUpFilled",d_.default=r.default.memo(r.default.forwardRef(a)),d_}var f_={},ZY;function Kvt(){if(ZY)return f_;ZY=1;var e=Ce;Object.defineProperty(f_,"__esModule",{value:!0}),f_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CheckCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm254.4 340.8L513.6 699.2c-6.4 8-17.6 12.8-28.8 14.4h-1.6c-9.6 0-19.2-3.2-27.2-11.2l-163.2-152c-16-14.4-17.6-40-1.6-56 14.4-16 40-17.6 56-1.6L480 616l224-262.4c14.4-16 40-19.2 56-4.8 17.6 14.4 20.8 38.4 6.4 56z"}))}))};return a.displayName="CheckCircleFilled",f_.default=r.default.memo(r.default.forwardRef(a)),f_}var p_={},QY;function qvt(){if(QY)return p_;QY=1;var e=Ce;Object.defineProperty(p_,"__esModule",{value:!0}),p_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CheckOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M384 792c-9.6 0-20.8-3.2-28.8-11.2l-224-224c-16-16-16-41.6 0-56 16-16 41.6-16 56 0L384 696l451.2-451.2c16-16 41.6-16 56 0 16 16 16 41.6 0 56l-480 480c-6.4 8-17.6 11.2-27.2 11.2z"}))}))};return a.displayName="CheckOutlined",p_.default=r.default.memo(r.default.forwardRef(a)),p_}var v_={},JY;function Yvt(){if(JY)return v_;JY=1;var e=Ce;Object.defineProperty(v_,"__esModule",{value:!0}),v_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CloseCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zM339.2 627.2 454.4 512 339.2 396.8c-16-16-16-41.6 0-56 8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2L512 456l115.2-115.2c8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2c16 16 16 41.6 0 56L568 512l115.2 115.2c16 16 16 41.6 0 56-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2L512 568 396.8 683.2c-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2c-14.4-14.4-14.4-40 0-56z"}))}))};return a.displayName="CloseCircleFilled",v_.default=r.default.memo(r.default.forwardRef(a)),v_}var h_={},eG;function Gvt(){if(eG)return h_;eG=1;var e=Ce;Object.defineProperty(h_,"__esModule",{value:!0}),h_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CloseOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"m568 512 291.2-291.2c16-16 16-41.6 0-56-16-16-41.6-16-56 0L512 456 220.8 163.2c-16-16-41.6-16-56 0-16 16-16 41.6 0 56L456 512 163.2 803.2c-16 16-16 41.6 0 56 8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2L512 568l291.2 291.2c8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2c16-16 16-41.6 0-56L568 512z"}))}))};return a.displayName="CloseOutlined",h_.default=r.default.memo(r.default.forwardRef(a)),h_}var g_={},tG;function Xvt(){if(tG)return g_;tG=1;var e=Ce;Object.defineProperty(g_,"__esModule",{value:!0}),g_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CompanyOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M904 832h-8V353.6c0-52.8-43.2-96-96-96H640V208c0-52.8-43.2-96-96-96H224c-52.8 0-96 43.2-96 96v624h-8c-22.4 0-40 17.6-40 40s17.6 40 40 40h784c22.4 0 40-17.6 40-40s-17.6-40-40-40zm-696 0V208c0-9.6 6.4-16 16-16h320c9.6 0 16 6.4 16 16v624H208zm432 0V622.4h96c17.6 0 32-14.4 32-32s-14.4-32-32-32h-96v-80h96c17.6 0 32-14.4 32-32s-14.4-32-32-32h-96v-76.8h160c9.6 0 16 6.4 16 16V832H640zM480 273.6H288c-17.6 0-32 14.4-32 32s14.4 32 32 32h192c17.6 0 32-14.4 32-32s-14.4-32-32-32zm0 144H288c-17.6 0-32 14.4-32 32s14.4 32 32 32h192c17.6 0 32-14.4 32-32s-14.4-32-32-32zm0 142.4H288c-17.6 0-32 14.4-32 32s14.4 32 32 32h192c17.6 0 32-14.4 32-32s-14.4-32-32-32z"}))}))};return a.displayName="CompanyOutlined",g_.default=r.default.memo(r.default.forwardRef(a)),g_}var __={},rG;function Zvt(){if(rG)return __;rG=1;var e=Ce;Object.defineProperty(__,"__esModule",{value:!0}),__.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CopyOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M546 184a8 8 0 0 0 8-8v-56a8 8 0 0 0-8-8H128a16 16 0 0 0-16 16v640.004a8 8 0 0 0 8 7.996h56a8 8 0 0 0 8-7.996V184h362z"}),r.default.createElement("path",{d:"M248 264a16 16 0 0 1 16-16h422.224a16 16 0 0 1 11.256 4.628l209.776 207.656A16.004 16.004 0 0 1 912 471.656V896a16 16 0 0 1-16 16H264a16 16 0 0 1-16-16V264zm72 56v520h520V536H636a16 16 0 0 1-16-16V320H320zm372 28.512V464h116.664L692 348.512z"}))}))};return a.displayName="CopyOutlined",__.default=r.default.memo(r.default.forwardRef(a)),__}var m_={},nG;function Qvt(){if(nG)return m_;nG=1;var e=Ce;Object.defineProperty(m_,"__esModule",{value:!0}),m_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"DepartmentFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M916.8 774.4c0 62.4-51.2 113.6-113.6 113.6-62.4 0-113.6-51.2-113.6-113.6 0-51.2 33.6-94.4 80-108.8V547.2h-224v118.4c46.4 14.4 80 57.6 80 108.8 0 62.4-51.2 113.6-113.6 113.6-62.4 0-113.6-51.2-113.6-113.6 0-51.2 33.6-94.4 80-108.8V547.2H256v118.4c46.4 14.4 80 57.6 80 108.8 0 62.4-51.2 113.6-113.6 113.6-62.4 0-113.6-51.2-113.6-113.6 0-51.2 33.6-94.4 80-108.8V512c0-19.2 16-33.6 33.6-33.6h256V360c-46.4-14.4-80-57.6-80-108.8 0-62.4 51.2-113.6 113.6-113.6 62.4 0 113.6 51.2 113.6 113.6 0 51.2-33.6 94.4-80 108.8v118.4h256c19.2 0 33.6 16 33.6 33.6v152c48 16 81.6 59.2 81.6 110.4z"}))}))};return a.displayName="DepartmentFilled",m_.default=r.default.memo(r.default.forwardRef(a)),m_}var x_={},aG;function Jvt(){if(aG)return x_;aG=1;var e=Ce;Object.defineProperty(x_,"__esModule",{value:!0}),x_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"DoubleLeftOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M819.2 776c16 16 16 41.6 0 56-16 16-41.6 16-56 0L478.4 547.2c-8-8-11.2-17.6-11.2-28.8s4.8-20.8 11.2-28.8l284.8-284.8c8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2c16 16 16 41.6 0 56L563.2 520l256 256zM289.6 520l257.6-257.6c16-16 16-41.6 0-56-8-8-17.6-11.2-28.8-11.2s-20.8 3.2-28.8 11.2L204.8 491.2c-8 8-11.2 17.6-11.2 28.8s4.8 20.8 11.2 28.8l284.8 284.8c16 16 41.6 16 56 0 16-16 16-41.6 0-56L289.6 520z"}))}))};return a.displayName="DoubleLeftOutlined",x_.default=r.default.memo(r.default.forwardRef(a)),x_}var b_={},oG;function eht(){if(oG)return b_;oG=1;var e=Ce;Object.defineProperty(b_,"__esModule",{value:!0}),b_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"DoubleRightOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M204.8 248c-16-16-16-41.6 0-56 16-16 41.6-16 56 0l284.8 284.8c8 8 11.2 17.6 11.2 28.8s-4.8 20.8-11.2 28.8L260.8 819.2c-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2c-16-16-16-41.6 0-56L460.8 504l-256-256zm529.6 256L476.8 761.6c-16 16-16 41.6 0 56 8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2l284.8-284.8c8-8 11.2-17.6 11.2-28.8s-4.8-20.8-11.2-28.8L534.4 190.4c-16-16-41.6-16-56 0-16 16-16 41.6 0 56l256 257.6z"}))}))};return a.displayName="DoubleRightOutlined",b_.default=r.default.memo(r.default.forwardRef(a)),b_}var y_={},iG;function tht(){if(iG)return y_;iG=1;var e=Ce;Object.defineProperty(y_,"__esModule",{value:!0}),y_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"DownOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M867.2 387.2c0 9.6-3.2 20.8-11.2 28.8L540.8 729.6c-16 16-41.6 16-56 0L169.6 414.4c-16-16-16-41.6 0-56 16-16 41.6-16 56 0L512 644.8l286.4-286.4c16-16 41.6-16 56 0 8 8 12.8 17.6 12.8 28.8z"}))}))};return a.displayName="DownOutlined",y_.default=r.default.memo(r.default.forwardRef(a)),y_}var w_={},lG;function rht(){if(lG)return w_;lG=1;var e=Ce;Object.defineProperty(w_,"__esModule",{value:!0}),w_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"DownloadOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M880 534.4c-22.4 0-40 17.6-40 40v184c0 35.2-28.8 65.6-65.6 65.6H249.6c-35.2 0-65.6-28.8-65.6-65.6v-184c0-22.4-17.6-40-40-40s-40 17.6-40 40v184c0 80 65.6 145.6 145.6 145.6H776c80 0 145.6-65.6 145.6-145.6v-184c-1.6-22.4-19.2-40-41.6-40z"}),r.default.createElement("path",{d:"M486.4 694.4c1.6 1.6 4.8 3.2 6.4 4.8 1.6 0 1.6 1.6 3.2 1.6s1.6 1.6 3.2 1.6 3.2 1.6 4.8 1.6c1.6 0 1.6 0 3.2 1.6h16c1.6 0 1.6 0 3.2-1.6 1.6 0 3.2-1.6 4.8-1.6 1.6 0 1.6-1.6 3.2-1.6s3.2-1.6 3.2-1.6c1.6-1.6 3.2-1.6 3.2-3.2l1.6-1.6L756.8 480c16-16 16-41.6 0-56-16-16-41.6-16-56 0L555.2 569.6V128c0-22.4-17.6-40-40-40s-40 17.6-40 40v441.6L329.6 424c-16-16-41.6-16-56 0-16 16-16 41.6 0 56l212.8 214.4z"}))}))};return a.displayName="DownloadOutlined",w_.default=r.default.memo(r.default.forwardRef(a)),w_}var D_={},sG;function nht(){if(sG)return D_;sG=1;var e=Ce;Object.defineProperty(D_,"__esModule",{value:!0}),D_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"EditOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M604.144 148.568a8 8 0 0 1 0-11.312l39.6-39.6a8 8 0 0 1 11.312 0l271.532 271.528a8 8 0 0 1 0 11.316l-39.6 39.596a8 8 0 0 1-11.312 0L604.144 148.568zM399.528 907.556a15.988 15.988 0 0 1-11.312 4.688H128a16 16 0 0 1-16-16V636.028c0-4.244 1.684-8.312 4.688-11.312l408.264-408.264a15.996 15.996 0 0 1 22.624 0l260.216 260.216a16 16 0 0 1 0 22.624L399.528 907.556zM186.344 656.88l-2.828 183.848 183.848-2.828 349.92-349.92-181.02-181.02-349.92 349.92zM584 840a8 8 0 0 0-8 8v56a8 8 0 0 0 8 8h336a8 8 0 0 0 8-8v-56a8 8 0 0 0-8-8H584z"}))}))};return a.displayName="EditOutlined",D_.default=r.default.memo(r.default.forwardRef(a)),D_}var I_={},cG;function aht(){if(cG)return I_;cG=1;var e=Ce;Object.defineProperty(I_,"__esModule",{value:!0}),I_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"EllipsisOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M104 512a80 80 0 1 0 160 0 80 80 0 1 0-160 0Zm328 0a80 80 0 1 0 160 0 80 80 0 1 0-160 0Zm328 0a80 80 0 1 0 160 0 80 80 0 1 0-160 0Z"}))}))};return a.displayName="EllipsisOutlined",I_.default=r.default.memo(r.default.forwardRef(a)),I_}var F_={},uG;function oht(){if(uG)return F_;uG=1;var e=Ce;Object.defineProperty(F_,"__esModule",{value:!0}),F_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"EnterOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"m270.7 536 243.456-235-55.56-57.56L112 578l346.596 334.56 55.56-57.56-247.6-239H913.6V200h-80v336H270.7zm562.9-336h80v-40h-80v40z",fillOpacity:.25}))}))};return a.displayName="EnterOutlined",F_.default=r.default.memo(r.default.forwardRef(a)),F_}var $_={},dG;function iht(){if(dG)return $_;dG=1;var e=Ce;Object.defineProperty($_,"__esModule",{value:!0}),$_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"ExclamationCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm-40 232c0-22.4 17.6-40 40-40s40 17.6 40 40v240c0 22.4-17.6 40-40 40s-40-17.6-40-40V296zm40 472c-30.4 0-56-25.6-56-56s25.6-56 56-56 56 25.6 56 56c0 32-25.6 57.6-56 56z"}))}))};return a.displayName="ExclamationCircleFilled",$_.default=r.default.memo(r.default.forwardRef(a)),$_}var S_={},fG;function lht(){if(fG)return S_;fG=1;var e=Ce;Object.defineProperty(S_,"__esModule",{value:!0}),S_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"EyeInvisibleOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 16 16"},r.default.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14.625 6.8c-.7-.75-1.475-1.4-2.325-1.95l1-1c.25-.25.25-.65 0-.9a.634.634 0 0 0-.9 0l-9.175 9.2c-.25.25-.25.65 0 .9s.65.25.9 0l1.45-1.45c.775.3 1.6.45 2.45.475 3.075 0 5.65-2.375 6.625-3.4a1.385 1.385 0 0 0-.025-1.875ZM13.7 7.825c-.85.9-3.125 2.975-5.7 2.975-.475 0-.975-.075-1.425-.2l.575-.575c.275.1.55.15.85.15a2.427 2.427 0 0 0 2.425-2.425c0-.3-.05-.575-.15-.85L11.4 5.775c.85.525 1.625 1.15 2.325 1.9.025.05.025.1-.025.15Zm-8.075-.55c-.025.15-.05.3-.05.475 0 .15.025.3.05.45L8.45 5.375c-1.3-.25-2.575.6-2.825 1.9ZM4.3 9.525c-.725-.5-1.4-1.075-2-1.7-.05-.05-.05-.1 0-.15.875-.9 3.125-3 5.7-3 .35 0 .7.025 1.025.1l1.025-1.05a6.573 6.573 0 0 0-2.075-.35c-3.05 0-5.65 2.375-6.625 3.4a1.39 1.39 0 0 0 0 1.9c.625.65 1.3 1.225 2.025 1.75l.925-.9Z"}))}))};return a.displayName="EyeInvisibleOutlined",S_.default=r.default.memo(r.default.forwardRef(a)),S_}var E_={},pG;function sht(){if(pG)return E_;pG=1;var e=Ce;Object.defineProperty(E_,"__esModule",{value:!0}),E_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"EyeOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 16 16"},r.default.createElement("path",{d:"M8 5.375a2.625 2.625 0 1 0 0 5.25 2.625 2.625 0 0 0 0-5.25ZM6.625 8a1.375 1.375 0 1 1 2.75 0 1.375 1.375 0 0 1-2.75 0Z"}),r.default.createElement("path",{d:"M14.877 7.732 14.312 8l.565.268v.002l-.003.004-.006.013a2.911 2.911 0 0 1-.098.187 7.572 7.572 0 0 1-.3.494 9.008 9.008 0 0 1-1.22 1.48c-1.107 1.078-2.834 2.177-5.25 2.177-2.417 0-4.143-1.099-5.25-2.178a8.956 8.956 0 0 1-1.22-1.479 7.564 7.564 0 0 1-.404-.694l-.002-.004-.001-.001L1.687 8a62.44 62.44 0 0 1-.564-.268V7.73l.003-.004a1.843 1.843 0 0 1 .027-.055l.077-.145c.068-.122.167-.292.3-.494a9.008 9.008 0 0 1 1.22-1.48C3.857 4.474 5.583 3.375 8 3.375c2.416 0 4.143 1.099 5.25 2.177a8.957 8.957 0 0 1 1.22 1.48 7.572 7.572 0 0 1 .398.681l.004.008.002.005.002.004v.001l.001.001ZM2.575 7.718c-.07.107-.129.202-.176.282a7.707 7.707 0 0 0 1.224 1.552c.945.922 2.375 1.823 4.377 1.823s3.432-.901 4.377-1.823A7.708 7.708 0 0 0 13.601 8a7.708 7.708 0 0 0-1.224-1.552C11.432 5.526 10.002 4.625 8 4.625s-3.432.901-4.377 1.823a7.68 7.68 0 0 0-1.048 1.27Zm11.173.013Z"}),r.default.createElement("path",{d:"m14.313 8 .564-.267.127.267-.127.267L14.312 8Zm-13.19-.267L1.687 8l-.564.267L.996 8l.127-.267Z"}))}))};return a.displayName="EyeOutlined",E_.default=r.default.memo(r.default.forwardRef(a)),E_}var C_={},vG;function cht(){if(vG)return C_;vG=1;var e=Ce;Object.defineProperty(C_,"__esModule",{value:!0}),C_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"FolderFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M832 272H512l-80-80H193.6c-44.8 0-81.6 36.8-81.6 81.6v476.8c0 44.8 36.8 81.6 81.6 81.6h636.8c44.8 0 81.6-36.8 81.6-81.6V352c0-43.2-35.2-80-80-80zm80 160H112v-43.2h800V432z"}))}))};return a.displayName="FolderFilled",C_.default=r.default.memo(r.default.forwardRef(a)),C_}var T_={},hG;function uht(){if(hG)return T_;hG=1;var e=Ce;Object.defineProperty(T_,"__esModule",{value:!0}),T_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"FolderOpenFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M880 449.6H227.2c-8 0-16 3.2-20.8 6.4-6.4 4.8-9.6 11.2-9.6 17.6l-62.4 320v3.2c0 8 14.4 19.2 32 19.2h652.8c16 0 27.2-11.2 30.4-22.4L872 678.4l40-209.6c1.6-11.2-14.4-19.2-32-19.2z"}),r.default.createElement("path",{d:"M227.2 406.4h643.2V360c0-41.6-33.6-76.8-75.2-76.8h-304L416 206.4H187.2c-41.6 0-75.2 33.6-75.2 76.8v393.6l40-206.4c6.4-38.4 33.6-64 75.2-64z"}))}))};return a.displayName="FolderOpenFilled",T_.default=r.default.memo(r.default.forwardRef(a)),T_}var R_={},gG;function dht(){if(gG)return R_;gG=1;var e=Ce;Object.defineProperty(R_,"__esModule",{value:!0}),R_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"ImageOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M808 660.8c4.8 6.4 6.4 14.4 6.4 20.8v91.2c0 20.8-14.4 36.8-33.6 36.8H243.2c-17.6 0-33.6-16-33.6-36.8V752c0-8 1.6-14.4 6.4-20.8l64-100.8c9.6-16 30.4-20.8 44.8-9.6l89.6 67.2c14.4 11.2 33.6 8 43.2-6.4L624 462.4c14.4-17.6 40-17.6 52.8 1.6L808 660.8zm-564.8-344c0-40 32-72 72-72s72 32 72 72-32 72-72 72-72-32-72-72z"}),r.default.createElement("path",{d:"M784 192c27.2 0 48 20.8 48 48v544c0 27.2-20.8 48-48 48H240c-27.2 0-48-20.8-48-48V240c0-27.2 20.8-48 48-48h544m0-80H240c-70.4 0-128 57.6-128 128v544c0 70.4 57.6 128 128 128h544c70.4 0 128-57.6 128-128V240c0-70.4-57.6-128-128-128z"}))}))};return a.displayName="ImageOutlined",R_.default=r.default.memo(r.default.forwardRef(a)),R_}var O_={},_G;function fht(){if(_G)return O_;_G=1;var e=Ce;Object.defineProperty(O_,"__esModule",{value:!0}),O_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"LabelFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M800 112.96H224a64 64 0 0 0-64 64v746.4a32 32 0 0 0 52.64 24.48L512 760.16l299.36 187.68A32 32 0 0 0 864 923.36v-746.4a64 64 0 0 0-64-64zM587.68 552H308.32a40 40 0 1 1 0-80h279.36a40 40 0 0 1 0 80zm128-199.68H308.32a40 40 0 0 1 0-80h407.36a40 40 0 0 1 0 80z"}))}))};return a.displayName="LabelFilled",O_.default=r.default.memo(r.default.forwardRef(a)),O_}var A_={},mG;function pht(){if(mG)return A_;mG=1;var e=Ce;Object.defineProperty(A_,"__esModule",{value:!0}),A_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"LeftCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M64 512c0 248 200 448 448 448s448-200 448-448S760 64 512 64 64 264 64 512zm256 0c0-11.2 4.8-20.8 11.2-28.8L552 262.4c16-16 41.6-16 56 0 16 16 16 41.6 0 56L416 512l193.6 193.6c16 16 16 41.6 0 56-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2L331.2 540.8c-8-8-11.2-17.6-11.2-28.8z"}))}))};return a.displayName="LeftCircleFilled",A_.default=r.default.memo(r.default.forwardRef(a)),A_}var k_={},xG;function vht(){if(xG)return k_;xG=1;var e=Ce;Object.defineProperty(k_,"__esModule",{value:!0}),k_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"LeftOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M636.8 867.2c-9.6 0-20.8-3.2-28.8-11.2L294.4 540.8c-16-16-16-41.6 0-56l315.2-315.2c16-16 41.6-16 56 0 16 16 16 41.6 0 56L379.2 512l286.4 286.4c16 16 16 41.6 0 56-8 8-17.6 12.8-28.8 12.8z"}))}))};return a.displayName="LeftOutlined",k_.default=r.default.memo(r.default.forwardRef(a)),k_}var P_={},bG;function hht(){if(bG)return P_;bG=1;var e=Ce;Object.defineProperty(P_,"__esModule",{value:!0}),P_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"MinusOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M864 560H160c-27.2 0-48-20.8-48-48s20.8-48 48-48h704c27.2 0 48 20.8 48 48s-20.8 48-48 48z"}))}))};return a.displayName="MinusOutlined",P_.default=r.default.memo(r.default.forwardRef(a)),P_}var N_={},yG;function ght(){if(yG)return N_;yG=1;var e=Ce;Object.defineProperty(N_,"__esModule",{value:!0}),N_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"PlusOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 913.6c-20.8 0-38.4-17.6-38.4-38.4V550.4H148.8c-20.8 0-38.4-17.6-38.4-38.4 0-20.8 17.6-38.4 38.4-38.4h326.4V148.8c0-20.8 17.6-38.4 38.4-38.4 20.8 0 38.4 17.6 38.4 38.4v326.4h326.4c20.8 0 38.4 17.6 38.4 38.4 0 20.8-17.6 38.4-38.4 38.4h-328v326.4c0 17.6-17.6 35.2-38.4 35.2z"}),r.default.createElement("path",{d:"M512 112c20.8 0 36.8 16 36.8 36.8v328h328c20.8 0 36.8 16 36.8 36.8 0 20.8-16 36.8-36.8 36.8h-328v328c0 20.8-16 36.8-36.8 36.8-20.8 0-36.8-16-36.8-36.8V548.8H148.8c-20.8 0-36.8-16-36.8-36.8 0-20.8 16-36.8 36.8-36.8h328V148.8C475.2 128 491.2 112 512 112m0-3.2c-22.4 0-40 17.6-40 40v324.8H148.8c-22.4 0-40 17.6-40 40s17.6 40 40 40h324.8v324.8c0 22.4 17.6 40 40 40s40-17.6 40-40V552h324.8c22.4 0 40-17.6 40-40s-17.6-40-40-40H552V148.8c0-22.4-17.6-40-40-40z"}))}))};return a.displayName="PlusOutlined",N_.default=r.default.memo(r.default.forwardRef(a)),N_}var M_={},wG;function _ht(){if(wG)return M_;wG=1;var e=Ce;Object.defineProperty(M_,"__esModule",{value:!0}),M_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"QuestionCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm40 696c-6.4 12.8-16 24-30.4 30.4-14.4 6.4-28.8 6.4-43.2 0-12.8-6.4-24-16-30.4-30.4-6.4-14.4-6.4-28.8 0-43.2 6.4-12.8 16-24 30.4-30.4 14.4-6.4 28.8-6.4 43.2 0 12.8 6.4 24 16 30.4 30.4 6.4 14.4 6.4 28.8 0 43.2zm89.6-320c-12.8 20.8-28.8 40-46.4 57.6-12.8 12.8-22.4 22.4-28.8 30.4-6.4 6.4-11.2 14.4-16 22.4-3.2 6.4-6.4 12.8-6.4 19.2-1.6 8-1.6 14.4-1.6 22.4 0 27.2-11.2 41.6-35.2 41.6-6.4 0-14.4 0-20.8-1.6-4.8-1.6-8-3.2-12.8-6.4-3.2-3.2-4.8-8-4.8-12.8-1.6-6.4-1.6-12.8-1.6-19.2 0-43.2 22.4-88 67.2-131.2 11.2-9.6 19.2-17.6 25.6-24 6.4-6.4 11.2-11.2 16-19.2 3.2-4.8 4.8-11.2 6.4-17.6 1.6-6.4 1.6-14.4 1.6-20.8 1.6-16-4.8-33.6-17.6-44.8-12.8-11.2-30.4-16-48-16-17.6-1.6-36.8 4.8-49.6 17.6-12.8 11.2-19.2 27.2-19.2 43.2-1.6 25.6-14.4 38.4-36.8 38.4-17.6 3.2-33.6-8-36.8-25.6v-11.2c0-35.2 16-68.8 41.6-92.8 27.2-27.2 65.6-41.6 105.6-40 36.8-1.6 73.6 11.2 100.8 35.2 25.6 27.2 40 64 36.8 100.8-4.8 17.6-9.6 38.4-19.2 54.4z"}))}))};return a.displayName="QuestionCircleFilled",M_.default=r.default.memo(r.default.forwardRef(a)),M_}var L_={},DG;function mht(){if(DG)return L_;DG=1;var e=Ce;Object.defineProperty(L_,"__esModule",{value:!0}),L_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"RecursiveDepartmentFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M540.64 576v-24H349.92L352 752h188.8v-24a32 32 0 0 1 32-32h288a32 32 0 0 1 32 32v128a32 32 0 0 1-32 32h-288a32 32 0 0 1-32-32v-24H312.16a43.68 43.68 0 0 1-8 0 24.32 24.32 0 0 1-3.2-.96l-4.32-1.44a18.88 18.88 0 0 1-3.04-1.6l-3.68-1.92a17.12 17.12 0 0 1-2.56-2.24 27.68 27.68 0 0 1-3.36-2.72 16 16 0 0 1-2.08-2.56 32 32 0 0 1-2.88-3.36l-1.44-2.72a32 32 0 0 1-2.24-4l-.96-3.2a34.08 34.08 0 0 1-1.28-4.32 26.56 26.56 0 0 1 0-3.52 39.68 39.68 0 0 1 0-4.32l-4.32-464H163.36a32 32 0 0 1-32-32v-128a32 32 0 0 1 32-32h288a32 32 0 0 1 32 32v128a32 32 0 0 1-32 32H347.84l1.44 144h192V448a32 32 0 0 1 32-32h288a32 32 0 0 1 32 32v128a32 32 0 0 1-32 32h-288a32 32 0 0 1-32.64-32z"}))}))};return a.displayName="RecursiveDepartmentFilled",L_.default=r.default.memo(r.default.forwardRef(a)),L_}var z_={},IG;function xht(){if(IG)return z_;IG=1;var e=Ce;Object.defineProperty(z_,"__esModule",{value:!0}),z_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"RightCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm180.8 476.8L472 761.6c-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2c-16-16-16-41.6 0-56L608 512 414.4 318.4c-16-16-16-41.6 0-56 16-16 41.6-16 56 0l220.8 220.8c8 8 11.2 17.6 11.2 28.8s-1.6 20.8-9.6 28.8z"}))}))};return a.displayName="RightCircleFilled",z_.default=r.default.memo(r.default.forwardRef(a)),z_}var B_={},FG;function bht(){if(FG)return B_;FG=1;var e=Ce;Object.defineProperty(B_,"__esModule",{value:!0}),B_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"RightOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M387.2 867.2c-9.6 0-20.8-3.2-28.8-11.2-16-16-16-41.6 0-56l286.4-288-286.4-286.4c-16-16-16-41.6 0-56 16-16 41.6-16 56 0l315.2 315.2c16 16 16 41.6 0 56L414.4 854.4c-8 8-17.6 12.8-27.2 12.8z"}))}))};return a.displayName="RightOutlined",B_.default=r.default.memo(r.default.forwardRef(a)),B_}var j_={},$G;function yht(){if($G)return j_;$G=1;var e=Ce;Object.defineProperty(j_,"__esModule",{value:!0}),j_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"RotateOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M905.6 590.4c-20.8-6.4-43.2 4.8-49.6 25.6-17.6 54.4-48 104-88 145.6-137.6 137.6-363.2 137.6-500.8 0-137.6-137.6-137.6-361.6 0-500.8C392 136 587.2 124.8 724.8 224l-48 48c-12.8 12.8-6.4 36.8 12.8 40L872 348.8c16 3.2 32-11.2 28.8-28.8L864 139.2c-3.2-19.2-27.2-25.6-40-12.8L782.4 168c-169.6-131.2-416-118.4-571.2 36.8-169.6 169.6-169.6 444.8 0 614.4C296 904 406.4 945.6 518.4 945.6S740.8 904 825.6 819.2c49.6-49.6 86.4-112 107.2-177.6 6.4-20.8-6.4-44.8-27.2-51.2z"}))}))};return a.displayName="RotateOutlined",j_.default=r.default.memo(r.default.forwardRef(a)),j_}var U_={},SG;function wht(){if(SG)return U_;SG=1;var e=Ce;Object.defineProperty(U_,"__esModule",{value:!0}),U_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"SearchOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M892.8 835.2 726.4 668.8C772.8 609.6 800 536 800 456c0-190.4-153.6-344-344-344S112 265.6 112 456s153.6 344 344 344c80 0 155.2-27.2 212.8-73.6l166.4 166.4c8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2c14.4-16 14.4-41.6 0-57.6zM456 720c-145.6 0-264-118.4-264-264s118.4-264 264-264 264 118.4 264 264-118.4 264-264 264z"}))}))};return a.displayName="SearchOutlined",U_.default=r.default.memo(r.default.forwardRef(a)),U_}var H_={},EG;function Dht(){if(EG)return H_;EG=1;var e=Ce;Object.defineProperty(H_,"__esModule",{value:!0}),H_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"SortFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M488 123.2 232 409.6c-19.2 20.8-3.2 52.8 24 52.8h512c27.2 0 41.6-32 24-52.8L536 123.2c-12.8-14.4-35.2-14.4-48 0zm0 777.6L232 614.4c-19.2-20.8-3.2-52.8 24-52.8h512c27.2 0 41.6 32 24 52.8L536 900.8c-12.8 14.4-35.2 14.4-48 0z"}))}))};return a.displayName="SortFilled",H_.default=r.default.memo(r.default.forwardRef(a)),H_}var W_={},CG;function Iht(){if(CG)return W_;CG=1;var e=Ce;Object.defineProperty(W_,"__esModule",{value:!0}),W_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"SyncOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M115.2 467.2 57.6 345.6c-8-16 0-35.2 16-43.2s35.2 0 43.2 16l17.6 38.4c68.8-152 217.6-249.6 387.2-249.6 184 0 347.2 118.4 404.8 292.8 6.4 20.8-4.8 43.2-25.6 51.2-4.8 1.6-8 1.6-12.8 1.6-17.6 0-32-11.2-38.4-27.2-46.4-142.4-179.2-238.4-328-238.4-136 0-257.6 80-313.6 201.6l44.8-20.8c16-8 35.2 0 43.2 16s0 35.2-16 43.2l-121.6 57.6c-4.8 1.6-9.6 3.2-12.8 3.2-12.8-3.2-25.6-9.6-30.4-20.8zm849.6 211.2-57.6-121.6c-8-16-27.2-22.4-43.2-16l-121.6 57.6c-16 8-22.4 27.2-16 43.2 8 16 27.2 22.4 43.2 16l44.8-20.8c-54.4 120-174.4 200-312 200-150.4 0-281.6-96-328-238.4-6.4-20.8-28.8-32-51.2-25.6-20.8 6.4-32 28.8-25.6 51.2 57.6 176 219.2 292.8 404.8 292.8 168 0 318.4-99.2 387.2-249.6l17.6 38.4c4.8 11.2 17.6 19.2 28.8 19.2 4.8 0 9.6-1.6 12.8-3.2 17.6-8 24-27.2 16-43.2z"}))}))};return a.displayName="SyncOutlined",W_.default=r.default.memo(r.default.forwardRef(a)),W_}var V_={},TG;function Fht(){if(TG)return V_;TG=1;var e=Ce;Object.defineProperty(V_,"__esModule",{value:!0}),V_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"TimeOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1100 1024"},r.default.createElement("path",{d:"M512 144c203.2 0 368 164.8 368 368S715.2 880 512 880 144 715.2 144 512s164.8-368 368-368m0-80C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm318.4 464c0-22.4-17.6-40-40-40h-248V241.6c0-22.4-17.6-40-40-40s-40 17.6-40 40V528c0 22.4 17.6 40 40 40h286.4c24 0 41.6-17.6 41.6-40z"}))}))};return a.displayName="TimeOutlined",V_.default=r.default.memo(r.default.forwardRef(a)),V_}var K_={},RG;function $ht(){if(RG)return K_;RG=1;var e=Ce;Object.defineProperty(K_,"__esModule",{value:!0}),K_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"ToTopFilled",icon:r.default.createElement("svg",{viewBox:"0 0 64 64"},r.default.createElement("path",{d:"M32 4a28 28 0 1 0 28 28A28 28 0 0 0 32 4Zm9.19 33.85H34.5V48.4a.6.6 0 0 1-.6.6h-3.8a.6.6 0 0 1-.6-.6V37.85h-6.69a.78.78 0 0 1-.81-.75.81.81 0 0 1 .24-.59l8.89-8.67a1.27 1.27 0 0 1 1.74 0l8.89 8.67a.78.78 0 0 1 0 1.1.78.78 0 0 1-.57.24ZM48 22.5a.5.5 0 0 1-.5.5h-31a.5.5 0 0 1-.5-.5v-3a.5.5 0 0 1 .5-.5h31a.5.5 0 0 1 .5.5Z","data-name":"\\u56FE\\u5C42 4"}))}))};return a.displayName="ToTopFilled",K_.default=r.default.memo(r.default.forwardRef(a)),K_}var q_={},OG;function Sht(){if(OG)return q_;OG=1;var e=Ce;Object.defineProperty(q_,"__esModule",{value:!0}),q_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UpOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M788.8 694.4c-9.6 0-20.8-3.2-28.8-11.2L504 425.6 246.4 683.2c-16 16-41.6 16-56 0-16-16-16-41.6 0-56l284.8-284.8c14.4-14.4 41.6-14.4 56 0L816 627.2c16 16 16 41.6 0 56-6.4 8-17.6 11.2-27.2 11.2z"}))}))};return a.displayName="UpOutlined",q_.default=r.default.memo(r.default.forwardRef(a)),q_}var Y_={},AG;function Eht(){if(AG)return Y_;AG=1;var e=Ce;Object.defineProperty(Y_,"__esModule",{value:!0}),Y_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UploadOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M880 534.4c-22.4 0-40 17.6-40 40v184c0 35.2-28.8 65.6-65.6 65.6H249.6c-35.2 0-65.6-28.8-65.6-65.6v-184c0-22.4-17.6-40-40-40s-40 17.6-40 40v184c0 80 65.6 145.6 145.6 145.6H776c80 0 145.6-65.6 145.6-145.6v-184c-1.6-22.4-19.2-40-41.6-40z"}),r.default.createElement("path",{d:"M300.8 382.4c9.6 0 20.8-3.2 28.8-11.2l145.6-145.6v441.6c0 22.4 17.6 40 40 40s40-17.6 40-40V224l145.6 145.6c8 8 17.6 11.2 28.8 11.2 9.6 0 20.8-3.2 28.8-11.2 16-16 16-41.6 0-56l-216-214.4-1.6-1.6-3.2-3.2c-1.6-1.6-3.2-1.6-3.2-1.6-1.6 0-1.6-1.6-3.2-1.6s-3.2-1.6-4.8-1.6c-1.6 0-1.6 0-3.2-1.6h-16c-1.6 0-1.6 0-3.2 1.6-1.6 0-3.2 0-4.8 1.6-1.6 0-1.6 1.6-3.2 1.6s-1.6 1.6-3.2 1.6l-4.8 4.8-216 214.4c-16 16-16 41.6 0 56 8 8 19.2 12.8 28.8 12.8z"}))}))};return a.displayName="UploadOutlined",Y_.default=r.default.memo(r.default.forwardRef(a)),Y_}var G_={},kG;function Cht(){if(kG)return G_;kG=1;var e=Ce;Object.defineProperty(G_,"__esModule",{value:!0}),G_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UserCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 64a448 448 0 1 0 448 448A448 448 0 0 0 512 64zm222.88 636.64H290.24a56 56 0 0 1 20-60.64 267.68 267.68 0 0 1 49.92-24.48 227.04 227.04 0 0 0 59.36-30.4 59.2 59.2 0 0 0 9.92-85.76c-34.88-45.12-39.2-114.24-30.08-168.32a116 116 0 0 1 226.4 0c9.12 54.08 6.24 124.16-30.08 168.32S576 561.6 576 561.6c32 41.28 52.32 44.16 96.8 61.6a227.84 227.84 0 0 1 43.04 16c27.2 20.8 19.04 61.28 19.04 61.44z"}))}))};return a.displayName="UserCircleFilled",G_.default=r.default.memo(r.default.forwardRef(a)),G_}var X_={},PG;function Tht(){if(PG)return X_;PG=1;var e=Ce;Object.defineProperty(X_,"__esModule",{value:!0}),X_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UserExternalFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M661.92 461.28a468.64 468.64 0 0 0 5.6-192C651.52 176 560.8 112 466.4 112s-185.12 64-201.12 156.96-9.28 214.4 53.6 293.12a101.28 101.28 0 0 1-17.6 149.12c-32 23.84-44.96 26.72-106.08 52.64a486.88 486.88 0 0 0-89.12 42.72A96 96 0 0 0 70.4 912H444a336 336 0 0 1 217.92-450.72zm148.48 140a98.4 98.4 0 0 0-83.52 46.88l-97.12 160a18.08 18.08 0 0 1-16 8.48 67.36 67.36 0 1 1 0-134.72 40 40 0 0 0 0-80 147.36 147.36 0 1 0 0 294.72 97.92 97.92 0 0 0 83.36-46.88l97.28-160a17.76 17.76 0 0 1 15.2-8.48 67.36 67.36 0 0 1 0 134.72 40 40 0 0 0 0 80 147.36 147.36 0 0 0 0-294.72z"}))}))};return a.displayName="UserExternalFilled",X_.default=r.default.memo(r.default.forwardRef(a)),X_}var Z_={},NG;function Rht(){if(NG)return Z_;NG=1;var e=Ce;Object.defineProperty(Z_,"__esModule",{value:!0}),Z_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UserFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M872 806.4c-22.4-16-62.4-32-89.6-43.2-60.8-25.6-73.6-28.8-105.6-52.8-28.8-20.8-70.4-83.2-17.6-148.8 62.4-78.4 70.4-198.4 54.4-292.8C697.6 176 606.4 112 512 112c-94.4 0-185.6 64-201.6 156.8-16 94.4-8 214.4 54.4 292.8 52.8 67.2 11.2 128-17.6 148.8-32 24-44.8 27.2-105.6 52.8-25.6 11.2-67.2 25.6-89.6 43.2C94.4 849.6 116.8 912 116.8 912h792c-1.6 0 20.8-62.4-36.8-105.6z"}))}))};return a.displayName="UserFilled",Z_.default=r.default.memo(r.default.forwardRef(a)),Z_}var Q_={},MG;function Oht(){if(MG)return Q_;MG=1;var e=Ce;Object.defineProperty(Q_,"__esModule",{value:!0}),Q_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UserRightFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M662.4 427.2c12.8-59.2 11.2-121.6 1.6-177.6-16-94.4-107.2-156.8-201.6-156.8-94.4 0-185.6 64-201.6 156.8-16 94.4-8 214.4 54.4 292.8 52.8 67.2 11.2 128-17.6 148.8-32 24-44.8 27.2-105.6 52.8-25.6 11.2-67.2 25.6-89.6 43.2-57.6 43.2-35.2 105.6-35.2 105.6h451.2C475.2 841.6 448 777.6 448 705.6c0-132.8 91.2-244.8 214.4-278.4z"}),r.default.createElement("path",{d:"M736 481.6c-123.2 0-224 100.8-224 224s100.8 224 224 224 224-100.8 224-224-100.8-224-224-224zm108.8 185.6-102.4 120c-6.4 6.4-14.4 11.2-22.4 11.2h-1.6c-8 0-16-3.2-22.4-8L628.8 728c-12.8-12.8-14.4-32-1.6-44.8 12.8-12.8 32-14.4 44.8-1.6l43.2 40 81.6-94.4c11.2-12.8 32-14.4 44.8-3.2 14.4 9.6 14.4 28.8 3.2 43.2z"}))}))};return a.displayName="UserRightFilled",Q_.default=r.default.memo(r.default.forwardRef(a)),Q_}var J_={},LG;function Aht(){if(LG)return J_;LG=1;var e=Ce;Object.defineProperty(J_,"__esModule",{value:!0}),J_.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UserSyncFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M662.4 427.2c12.8-59.2 11.2-121.6 1.6-177.6-16-94.4-107.2-156.8-201.6-156.8-94.4 0-185.6 64-201.6 156.8-16 94.4-8 214.4 54.4 292.8 52.8 67.2 11.2 128-17.6 148.8-32 24-44.8 27.2-105.6 52.8-25.6 11.2-67.2 25.6-89.6 43.2-57.6 43.2-35.2 105.6-35.2 105.6h451.2C475.2 841.6 448 777.6 448 705.6c0-132.8 91.2-244.8 214.4-278.4z"}),r.default.createElement("path",{d:"M736 481.6c-123.2 0-224 100.8-224 224s100.8 224 224 224 224-100.8 224-224-100.8-224-224-224zM628.8 627.2c6.4-3.2 14.4-3.2 20.8 0 22.4-28.8 56-44.8 92.8-44.8 51.2 0 96 32 112 81.6 4.8 14.4-3.2 28.8-17.6 33.6-3.2 1.6-4.8 1.6-8 1.6-11.2 0-20.8-6.4-25.6-17.6-8-27.2-33.6-44.8-60.8-44.8-16 0-30.4 4.8-41.6 14.4 1.6 1.6 3.2 3.2 4.8 6.4 6.4 12.8 0 28.8-12.8 35.2L664 704c-3.2 1.6-8 3.2-11.2 3.2-9.6 0-19.2-6.4-24-14.4L616 664c-6.4-14.4-1.6-30.4 12.8-36.8zM851.2 792c-3.2 1.6-8 3.2-11.2 3.2-3.2 0-6.4-1.6-9.6-1.6-22.4 28.8-56 46.4-92.8 46.4-51.2 0-96-32-112-81.6-4.8-14.4 3.2-28.8 17.6-33.6 14.4-4.8 28.8 3.2 33.6 17.6 8 27.2 33.6 44.8 60.8 44.8 16 0 30.4-4.8 41.6-14.4-1.6-1.6-3.2-3.2-4.8-6.4-6.4-12.8 0-28.8 12.8-35.2l28.8-12.8c12.8-6.4 28.8 0 35.2 12.8L864 760c6.4 9.6 0 25.6-12.8 32z"}))}))};return a.displayName="UserSyncFilled",J_.default=r.default.memo(r.default.forwardRef(a)),J_}var em={},zG;function kht(){if(zG)return em;zG=1;var e=Ce;Object.defineProperty(em,"__esModule",{value:!0}),em.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"VerticalLeftOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M763.2 769.6c16 16 16 41.6 0 56-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2L420.8 540.8c-8-8-11.2-17.6-11.2-28.8s4.8-20.8 11.2-28.8l284.8-284.8c16-16 41.6-16 56 0 16 16 16 41.6 0 56L505.6 512l257.6 257.6zM321.6 172.8c-22.4 0-40 17.6-40 40v598.4c0 22.4 17.6 40 40 40s40-17.6 40-40V212.8c0-22.4-17.6-40-40-40z"}))}))};return a.displayName="VerticalLeftOutlined",em.default=r.default.memo(r.default.forwardRef(a)),em}var tm={},BG;function Pht(){if(BG)return tm;BG=1;var e=Ce;Object.defineProperty(tm,"__esModule",{value:!0}),tm.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"VerticalRightOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M260.8 254.4c-16-16-16-41.6 0-56 8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2l284.8 284.8c8 8 11.2 17.6 11.2 28.8s-4.8 20.8-11.2 28.8L318.4 825.6c-16 16-41.6 16-56 0-16-16-16-41.6 0-56l256-257.6-257.6-257.6zm441.6 596.8c22.4 0 40-17.6 40-40V212.8c0-22.4-17.6-40-40-40s-40 17.6-40 40v598.4c0 22.4 17.6 40 40 40z"}))}))};return a.displayName="VerticalRightOutlined",tm.default=r.default.memo(r.default.forwardRef(a)),tm}var rm={},jG;function Nht(){if(jG)return rm;jG=1;var e=Ce;Object.defineProperty(rm,"__esModule",{value:!0}),rm.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"WarningFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M952 817.6 568 115.2c-6.4-11.2-12.8-19.2-24-25.6-9.6-6.4-20.8-9.6-32-9.6s-22.4 3.2-32 9.6c-9.6 6.4-17.6 14.4-24 24L72 816c-11.2 20.8-11.2 41.6 1.6 62.4 6.4 9.6 12.8 17.6 24 22.4 9.6 8 19.2 11.2 30.4 11.2h768c11.2 0 22.4-3.2 32-8 9.6-6.4 17.6-12.8 24-22.4 11.2-22.4 11.2-43.2 0-64zM472 328c0-22.4 17.6-40 40-40s40 17.6 40 40v240c0 22.4-17.6 40-40 40s-40-17.6-40-40V328zm40 472c-30.4 0-56-25.6-56-56s25.6-56 56-56 56 25.6 56 56c0 32-25.6 57.6-56 56z"}))}))};return a.displayName="WarningFilled",rm.default=r.default.memo(r.default.forwardRef(a)),rm}var nm={},UG;function Mht(){if(UG)return nm;UG=1;var e=Ce;Object.defineProperty(nm,"__esModule",{value:!0}),nm.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"ZoomInOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M600 416H496V312c0-22.4-17.6-40-40-40s-40 17.6-40 40v104H312c-22.4 0-40 17.6-40 40s17.6 40 40 40h104v104c0 22.4 17.6 40 40 40s40-17.6 40-40V496h104c22.4 0 40-17.6 40-40s-17.6-40-40-40z"}),r.default.createElement("path",{d:"M892.8 835.2 726.4 668.8C772.8 609.6 800 536 800 456c0-190.4-153.6-344-344-344S112 265.6 112 456s153.6 344 344 344c80 0 155.2-27.2 212.8-73.6l166.4 166.4c8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2c14.4-16 14.4-41.6 0-57.6zM456 720c-145.6 0-264-118.4-264-264s118.4-264 264-264 264 118.4 264 264-118.4 264-264 264z"}))}))};return a.displayName="ZoomInOutlined",nm.default=r.default.memo(r.default.forwardRef(a)),nm}var am={},HG;function Lht(){if(HG)return am;HG=1;var e=Ce;Object.defineProperty(am,"__esModule",{value:!0}),am.default=void 0;var t=e(yt),r=e(m),n=e(Nt()),a=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"ZoomOutOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M600 496H312c-22.4 0-40-17.6-40-40s17.6-40 40-40h288c22.4 0 40 17.6 40 40s-17.6 40-40 40z"}),r.default.createElement("path",{d:"M864 904c-9.6 0-20.8-3.2-28.8-11.2L668.8 726.4C609.6 772.8 536 800 456 800c-190.4 0-344-153.6-344-344s153.6-344 344-344 344 153.6 344 344c0 80-27.2 155.2-73.6 212.8l166.4 166.4c16 16 16 41.6 0 56-8 9.6-19.2 12.8-28.8 12.8zM456 192c-145.6 0-264 118.4-264 264s118.4 264 264 264 264-118.4 264-264-118.4-264-264-264z"}))}))};return a.displayName="ZoomOutOutlined",am.default=r.default.memo(r.default.forwardRef(a)),am}var WG;function zht(){return WG||(WG=1,function(e){var t=Ce;Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"CalendarOutlined",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"CaretDownFilled",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"CaretRightFilled",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"CaretUpFilled",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"CheckCircleFilled",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"CheckOutlined",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"CloseCircleFilled",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"CloseOutlined",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(e,"CompanyOutlined",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(e,"CopyOutlined",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(e,"DepartmentFilled",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(e,"DoubleLeftOutlined",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(e,"DoubleRightOutlined",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(e,"DownOutlined",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(e,"DownloadOutlined",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(e,"EditOutlined",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(e,"EllipsisOutlined",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(e,"EnterOutlined",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(e,"ExclamationCircleFilled",{enumerable:!0,get:function(){return F.default}}),Object.defineProperty(e,"EyeInvisibleOutlined",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(e,"EyeOutlined",{enumerable:!0,get:function(){return I.default}}),Object.defineProperty(e,"FolderFilled",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(e,"FolderOpenFilled",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(e,"ImageOutlined",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(e,"LabelFilled",{enumerable:!0,get:function(){return O.default}}),Object.defineProperty(e,"LeftCircleFilled",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(e,"LeftOutlined",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(e,"MinusOutlined",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(e,"PlusOutlined",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(e,"QuestionCircleFilled",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(e,"RecursiveDepartmentFilled",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(e,"RightCircleFilled",{enumerable:!0,get:function(){return B.default}}),Object.defineProperty(e,"RightOutlined",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(e,"RotateOutlined",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(e,"SearchOutlined",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(e,"SortFilled",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(e,"SyncOutlined",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(e,"TimeOutlined",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(e,"ToTopFilled",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(e,"UpOutlined",{enumerable:!0,get:function(){return V.default}}),Object.defineProperty(e,"UploadOutlined",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(e,"UserCircleFilled",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(e,"UserExternalFilled",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(e,"UserFilled",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(e,"UserRightFilled",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(e,"UserSyncFilled",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(e,"VerticalLeftOutlined",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(e,"VerticalRightOutlined",{enumerable:!0,get:function(){return ve.default}}),Object.defineProperty(e,"WarningFilled",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(e,"ZoomInOutlined",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(e,"ZoomOutOutlined",{enumerable:!0,get:function(){return ge.default}});var r=t(Uvt()),n=t(Hvt()),a=t(Wvt()),o=t(Vvt()),i=t(Kvt()),l=t(qvt()),s=t(Yvt()),c=t(Gvt()),d=t(Xvt()),f=t(Zvt()),v=t(Qvt()),h=t(Jvt()),g=t(eht()),_=t(tht()),w=t(rht()),b=t(nht()),y=t(aht()),D=t(oht()),F=t(iht()),S=t(lht()),I=t(sht()),C=t(cht()),R=t(uht()),P=t(dht()),O=t(fht()),N=t(pht()),A=t(vht()),z=t(hht()),k=t(ght()),M=t(_ht()),T=t(mht()),B=t(xht()),L=t(bht()),K=t(yht()),X=t(wht()),ee=t(Dht()),q=t(Iht()),G=t(Fht()),W=t($ht()),V=t(Sht()),Y=t(Eht()),Z=t(Cht()),te=t(Tht()),J=t(Rht()),ae=t(Oht()),re=t(Aht()),ie=t(kht()),ve=t(Pht()),oe=t(Nht()),fe=t(Mht()),ge=t(Lht())}(aR)),aR}var VG;function Bht(){return VG||(VG=1,function(e){var t=Oo,r=Ce;Object.defineProperty(e,"__esModule",{value:!0});var n={};Object.defineProperty(e,"default",{enumerable:!0,get:function(){return a.default}});var a=r(Nt()),o=zht();t(o).forEach(function(i){i==="default"||i==="__esModule"||Object.prototype.hasOwnProperty.call(n,i)||i in e&&e[i]===o[i]||Object.defineProperty(e,i,{enumerable:!0,get:function(){return o[i]}})})}(nR)),nR}var Iw={},KG;function Fw(){if(KG)return Iw;KG=1;var e=Ce;Object.defineProperty(Iw,"__esModule",{value:!0}),Iw.default=v;var t=e(Dw),r=e($l),n=e(Oo),a=e(Sp),o=ks(),i=`accept acceptCharset accessKey action allowFullScreen allowTransparency + `,document.head.appendChild(n),BI.config("fdi.provider.editable.action",o=>{o.addAction({key:t.key,iconName:`icon-${r}-spider`,localeKey:t.displayName})})}}class uvt{constructor(){this.menus=new Map}addMenu(t){this.menus.set(t.value,t)}removeMenu(t){this.menus.delete(t)}}var Wr=(e=>(e.DIVIDER="divider",e.ADD_FOLDER="addFolder",e.RENAME="rename",e.MOVE="move",e.DELETE="delete",e.EDIT="edit",e.RESOURCE_INFO="resourceInfo",e.ADD_RELATION="addRelation",e.ADD_INDICATOR="addIndicator",e.ADD_DIMENSION="addDimension",e.ADD_BUSINESS_MODEL="addBusinessModel",e.ADD_TAG="addTag",e.ADD_DB="addDB",e.ADD_SQL="addSQL",e.ADD_EXCEL="addExcel",e.FOLDER_UPDATE="folderUpdate",e.UPDATE_PROGRESS="updateProgress",e.PUBLISH="publish",e.CANCEL_PUBLISH="cancelPublish",e.EDIT_SQL="editSQL",e.UPDATE_EXCEL="updateExcel",e.EDIT_CUSTOM_TABLE="editCustomTable",e.ENTER_ANALYSIS="enterAnalysis",e.ENTER_MODEL_CENTER="enterModelCenter",e.IMPORT_INDICATOR="importIndicator",e.IMPORT_DIMENSION="importDimension",e))(Wr||{});const dvt={[Wr.ADD_FOLDER]:{iconName:"svg-folder_close",localeKey:"FDI_Add_Folder"},[Wr.ADD_INDICATOR]:{iconName:"icon-add",localeKey:"FDI_Add_Indicator"},[Wr.ADD_DIMENSION]:{iconName:"icon-add",localeKey:"FDI_Add_Dimension"},[Wr.ADD_BUSINESS_MODEL]:{iconName:"icon-add",localeKey:"FDI_Add_Business_Model"},[Wr.IMPORT_INDICATOR]:{iconName:"icon-import",localeKey:"FDI_Import_Indicator"},[Wr.IMPORT_DIMENSION]:{iconName:"icon-import",localeKey:"FDI_Import_Dimension"},[Wr.RENAME]:{iconName:"icon-rename",localeKey:"FDI_Rename"},[Wr.MOVE]:{iconName:"icon-move",localeKey:"FDI_Move_To"},[Wr.DELETE]:{iconName:"icon-delete",localeKey:"FDI_Delete"},[Wr.EDIT]:{iconName:"icon-edit",localeKey:"FDI_Edit"},[Wr.ADD_RELATION]:{iconName:"icon-add",localeKey:"FDI_Add_Relation"},[Wr.ADD_DB]:{iconName:"icon-database-table-spider",localeKey:"FDI_DB_Table"},[Wr.ADD_SQL]:{iconName:"icon-sql-table-spider",localeKey:"FDI_Sql_Table"},[Wr.ADD_EXCEL]:{iconName:"icon-excel-table-spider",localeKey:"FDI_Excel_Table"},[Wr.UPDATE_PROGRESS]:{iconName:"icon-update-progress",localeKey:"FDI_Update_Progress"},[Wr.FOLDER_UPDATE]:{iconName:"icon-update",localeKey:"FDI_Folder_Update"},[Wr.PUBLISH]:{iconName:"icon-publish",localeKey:"FDI_Publish"},[Wr.CANCEL_PUBLISH]:{iconName:"icon-cancel-publish",localeKey:"FDI_Cancel_Publish"},[Wr.EDIT_SQL]:{iconName:"icon-edit",localeKey:"FDI_Modify_SQL"},[Wr.UPDATE_EXCEL]:{iconName:"icon-global-update",localeKey:"FDI_Update_Excel"},[Wr.EDIT_CUSTOM_TABLE]:{iconName:"icon-custom-edit",localeKey:"FDI_Modify_Config"},[Wr.ENTER_ANALYSIS]:{iconName:"icon-edit",localeKey:"FDI_Enter_Analysis"},[Wr.ENTER_MODEL_CENTER]:{iconName:"icon-edit",localeKey:"FDI_Enter_Model_Center"},[Wr.RESOURCE_INFO]:{iconName:"icon-resource-info",localeKey:"FDI_Resource_Info"}};class fvt{constructor(){this.actions=new Map}addAction(t){this.actions.set(t.key,t)}removeAction(t){this.actions.delete(t)}getActionProps(t){return dvt[t]??this.actions.get(t)}}const h4={"bi.provider.datacenter":new uvt,"bi.provider.custom.table":new cvt,"fdi.provider.editable.action":new fvt},pvt=BI.config;BI.config=(...e)=>{const t=e[0];Object.keys(h4).includes(t)&&e[1]?.(h4[t]),pvt(...e)};const vvt=e=>h4[e],_4=typeof Buffer=="function";typeof TextDecoder=="function"&&new TextDecoder;const wY=typeof TextEncoder=="function"?new TextEncoder:void 0,gvt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",e_=Array.prototype.slice.call(gvt);(e=>{let t={};return e.forEach((r,n)=>t[r]=n),t})(e_);const Ql=String.fromCharCode.bind(String);typeof Uint8Array.from=="function"&&Uint8Array.from.bind(Uint8Array);const hvt=e=>e.replace(/=/g,"").replace(/[+\/]/g,t=>t=="+"?"-":"_"),DY=typeof btoa=="function"?e=>btoa(e):_4?e=>Buffer.from(e,"binary").toString("base64"):e=>{let t,r,n,o,a="";const i=e.length%3;for(let l=0;l255||(n=e.charCodeAt(l++))>255||(o=e.charCodeAt(l++))>255)throw new TypeError("invalid character found");t=r<<16|n<<8|o,a+=e_[t>>18&63]+e_[t>>12&63]+e_[t>>6&63]+e_[t&63]}return i?a.slice(0,i-3)+"===".substring(i):a},_vt=_4?e=>Buffer.from(e).toString("base64"):e=>{let r=[];for(let n=0,o=e.length;n{if(e.length<2){var t=e.charCodeAt(0);return t<128?e:t<2048?Ql(192|t>>>6)+Ql(128|t&63):Ql(224|t>>>12&15)+Ql(128|t>>>6&63)+Ql(128|t&63)}else{var t=65536+(e.charCodeAt(0)-55296)*1024+(e.charCodeAt(1)-56320);return Ql(240|t>>>18&7)+Ql(128|t>>>12&63)+Ql(128|t>>>6&63)+Ql(128|t&63)}},xvt=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,bvt=e=>e.replace(xvt,mvt),IY=_4?e=>Buffer.from(e,"utf8").toString("base64"):wY?e=>_vt(wY.encode(e)):e=>DY(bvt(e)),yvt=(e,t=!1)=>t?hvt(IY(e)):IY(e);class wvt{constructor(){this.eventMap={}}on(t,r){return this.eventMap[t]?this.eventMap[t].add(r):this.eventMap[t]=new Set([r]),()=>{this.off(t,r)}}once(t,r){const n=(...o)=>{r(...o),this.off(t,n)};return this.eventMap[t]?this.eventMap[t].add(n):this.eventMap[t]=new Set([n]),()=>{this.off(t,n)}}off(t,r){return this.eventMap[t]&&this.eventMap[t].delete(r),r}emit(t,...r){this.eventMap[t]&&this.eventMap[t].forEach(n=>{try{n.call(this,...r)}catch(o){console.error(o)}})}}class Dvt extends wvt{constructor(){super(),this.handlers={}}initSocket(){let t=null,r=window;try{for(;r&&r.parent!==r&&!r.Dec;)r=r.parent;r&&r.Dec&&r.Dec.socket&&(t=r.Dec.socket),r&&r.BI&&r.BI.socket&&(t=r.BI.socket)}catch{}return t}connect(){this.wire=this.initSocket()?.wire,this.initCombinedListeners()}shutdown(){this.wire?.disconnect()}listen(t,r){return this.emit(t,{resourceName:r,dataType:TT.LISTEN_EVENT}),()=>{this.emit(t,{resourceName:r,dataType:TT.STOP_LISTEN_EVENT})}}on(t,r){return this.handlers[t]=this.handlers[t]||[],this.handlers[t].push(r),()=>{this.off(t,r)}}off(t,r){return this.wire?.off("event",r),De.forEach(this.handlers[t],(n,o)=>{if(De.isEqual(r,n)){this.handlers[t].splice(o,1);return}}),r}emit(t,r,n){this.wire?.emit("event",{name:t,data:r?.data?JSON.stringify(r?.data):"",resourceName:r?.resourceName?yvt(r.resourceName):"",dataType:r?.dataType,domain:"bi",token:""},n)}initCombinedListeners(){this.wire.on("event",t=>{De.forEach(this.handlers,(r,n)=>{if(t.name===n){let o={};try{o=De.isEmpty(t.data)?{}:JSON.parse(t.data)}catch(a){console.error("JSON parse error:",a)}De.forEach(r,a=>{a(o)})}})})}}const Ivt=new Dvt;function Fvt(e={engineType:vl.SPIDER,type:co.DATABASE}){const t=vvt("bi.provider.custom.table"),r=e?.engineType??vl.SPIDER;return`icon-${t.isCustomTable(e.type)?t.getCustomTableIcon(e.type):PK[e.type]??PK[co.DATABASE]}-${r}`}function Rd(e){return kK[e]?.iconName}function FY(e){return kK[e]?.localeKey}const $vt=(e,t)=>{let r=-1,n=!0;for(;n;){r++;const o=r===0?t:`${t}${r}`;n=e.some(a=>a===o)}return r===0?t:`${t}${r}`},$Y=e=>{const{name:t,transferName:r}=e;return De.isNil(r)||De.isEmpty(r)?t:r},Evt=e=>{const{width:t,keys:r,ratios:n,minWidths:o}=e;let a=r.reduce((s,c)=>s+n[c],0),i=t-2;const l=new Map;return r.forEach(s=>{const c=De.max([n[s]/a*i,o[s]]);i-=c,a-=n[s],l.set(s,c)}),l},EY=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⺀⺁⺂⺃⺄⺅⺆⺇⺈⺉⺊⺋⺌⺍⺎⺏⺐⺑⺒⺓⺔⺕⺖⺗⺘⺙⺚⺛⺜⺝⺞⺟⺠⺡⺢⺣⺤⺥⺦⺧⺨⺩⺪⺫⺬⺭⺮⺯⺰⺱⺲⺳⺴⺵⺶⺷⺸⺹⺺⺻⺼⺽⺾⺿⻀⻁⻂⻃⻄⻅⻆⻇⻈⻉⻊⻋⻌⻍⻎⻏⻐⻑⻒⻓⻔⻕⻖⻗⻘⻙⻚⻛⻜⻝⻞⻟⻠⻡⻢⻣⻤⻥⻦⻧⻨⻩⻪⻫⻬⻭⻮⻯⻰⻱⻲⻳⻴⻵⻶⻷⻸⻹⻺⻻⻼⻽⻾⻿⼀⼁⼂⼃⼄⼅⼆⼇⼈⼉⼊⼋⼌⼍⼎⼏⼐⼑⼒⼓⼔⼕⼖⼗⼘⼙⼚⼛⼜⼝⼞⼟⼠⼡⼢⼣⼤⼥⼦⼧⼨⼩⼪⼫⼬⼭⼮⼯⼰⼱⼲⼳⼴⼵⼶⼷⼸⼹⼺⼻⼼⼽⼾⼿⽀⽁⽂⽃⽄⽅⽆⽇⽈⽉⽊⽋⽌⽍⽎⽏⽐⽑⽒⽓⽔⽕⽖⽗⽘⽙⽚⽛⽜⽝⽞⽟⽠⽡⽢⽣⽤⽥⽦⽧⽨⽩⽪⽫⽬⽭⽮⽯⽰⽱⽲⽳⽴⽵⽶⽷⽸⽹⽺⽻⽼⽽⽾⽿⾀⾁⾂⾃⾄⾅⾆⾇⾈⾉⾊⾋⾌⾍⾎⾏⾐⾑⾒⾓⾔⾕⾖⾗⾘⾙⾚⾛⾜⾝⾞⾟⾠⾡⾢⾣⾤⾥⾦⾧⾨⾩⾪⾫⾬⾭⾮⾯⾰⾱⾲⾳⾴⾵⾶⾷⾸⾹⾺⾻⾼⾽⾾⾿⿀⿁⿂⿃⿄⿅⿆⿇⿈⿉⿊⿋⿌⿍⿎⿏⿐⿑⿒⿓⿔⿕⿖⿗⿘⿙⿚⿛⿜⿝⿞⿟⿠⿡⿢⿣⿤⿥⿦⿧⿨⿩⿪⿫⿬⿭⿮⿯⿰⿱⿲⿳⿴⿵⿶⿷⿸⿹⿺⿻⿼⿽⿾⿿ 、。〃〄々〆〇〈〉《》「」『』【】〒〓〔〕〖〗〘〙〚〛〜〝〞〟〠〡〢〣〤〥〦〧〨〩〪〭〮〯〫〬〰〱〲〳〴〵〶〷〸〹〺〻〼〽〾〿぀ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをんゔゕゖ゗゘゙゚゛゜ゝゞゟ゠ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶヷヸヹヺ・ーヽヾヿ㄀㄁㄂㄃㄄ㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩㄪㄫㄬㄭㄮㄯ㄰ㄱㄲㄳㄴㄵㄶㄷㄸㄹㄺㄻㄼㄽㄾㄿㅀㅁㅂㅃㅄㅅㅆㅇㅈㅉㅊㅋㅌㅍㅎㅏㅐㅑㅒㅓㅔㅕㅖㅗㅘㅙㅚㅛㅜㅝㅞㅟㅠㅡㅢㅣㅤㅥㅦㅧㅨㅩㅪㅫㅬㅭㅮㅯㅰㅱㅲㅳㅴㅵㅶㅷㅸㅹㅺㅻㅼㅽㅾㅿㆀㆁㆂㆃㆄㆅㆆㆇㆈㆉㆊㆋㆌㆍㆎ㆏㆐㆑㆒㆓㆔㆕㆖㆗㆘㆙㆚㆛㆜㆝㆞㆟ㆠㆡㆢㆣㆤㆥㆦㆧㆨㆩㆪㆫㆬㆭㆮㆯㆰㆱㆲㆳㆴㆵㆶㆷㆸㆹㆺㆻㆼㆽㆾㆿ㇀㇁㇂㇃㇄㇅㇆㇇㇈㇉㇊㇋㇌㇍㇎㇏㇐㇑㇒㇓㇔㇕㇖㇗㇘㇙㇚㇛㇜㇝㇞㇟㇠㇡㇢㇣㇤㇥㇦㇧㇨㇩㇪㇫㇬㇭㇮㇯ㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ㈀㈁㈂㈃㈄㈅㈆㈇㈈㈉㈊㈋㈌㈍㈎㈏㈐㈑㈒㈓㈔㈕㈖㈗㈘㈙㈚㈛㈜㈝㈞㈟㈠㈡㈢㈣㈤㈥㈦㈧㈨㈩㈪㈫㈬㈭㈮㈯㈰㈱㈲㈳㈴㈵㈶㈷㈸㈹㈺㈻㈼㈽㈾㈿㉀㉁㉂㉃㉄㉅㉆㉇㉈㉉㉊㉋㉌㉍㉎㉏㉐㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㉠㉡㉢㉣㉤㉥㉦㉧㉨㉩㉪㉫㉬㉭㉮㉯㉰㉱㉲㉳㉴㉵㉶㉷㉸㉹㉺㉻㉼㉽㉾㉿㊀㊁㊂㊃㊄㊅㊆㊇㊈㊉㊊㊋㊌㊍㊎㊏㊐㊑㊒㊓㊔㊕㊖㊗㊘㊙㊚㊛㊜㊝㊞㊟㊠㊡㊢㊣㊤㊥㊦㊧㊨㊩㊪㊫㊬㊭㊮㊯㊰㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿㋀㋁㋂㋃㋄㋅㋆㋇㋈㋉㋊㋋㋌㋍㋎㋏㋐㋑㋒㋓㋔㋕㋖㋗㋘㋙㋚㋛㋜㋝㋞㋟㋠㋡㋢㋣㋤㋥㋦㋧㋨㋩㋪㋫㋬㋭㋮㋯㋰㋱㋲㋳㋴㋵㋶㋷㋸㋹㋺㋻㋼㋽㋾㋿㌀㌁㌂㌃㌄㌅㌆㌇㌈㌉㌊㌋㌌㌍㌎㌏㌐㌑㌒㌓㌔㌕㌖㌗㌘㌙㌚㌛㌜㌝㌞㌟㌠㌡㌢㌣㌤㌥㌦㌧㌨㌩㌪㌫㌬㌭㌮㌯㌰㌱㌲㌳㌴㌵㌶㌷㌸㌹㌺㌻㌼㌽㌾㌿㍀㍁㍂㍃㍄㍅㍆㍇㍈㍉㍊㍋㍌㍍㍎㍏㍐㍑㍒㍓㍔㍕㍖㍗㍘㍙㍚㍛㍜㍝㍞㍟㍠㍡㍢㍣㍤㍥㍦㍧㍨㍩㍪㍫㍬㍭㍮㍯㍰㍱㍲㍳㍴㍵㍶㍷㍸㍹㍺㍻㍼㍽㍾㍿㎀㎁㎂㎃㎄㎅㎆㎇㎈㎉㎊㎋㎌㎍㎎㎏㎐㎑㎒㎓㎔㎕㎖㎗㎘㎙㎚㎛㎜㎝㎞㎟㎠㎡㎢㎣㎤㎥㎦㎧㎨㎩㎪㎫㎬㎭㎮㎯㎰㎱㎲㎳㎴㎵㎶㎷㎸㎹㎺㎻㎼㎽㎾㎿㏀㏁㏂㏃㏄㏅㏆㏇㏈㏉㏊㏋㏌㏍㏎㏏㏐㏑㏒㏓㏔㏕㏖㏗㏘㏙㏚㏛㏜㏝㏞㏟㏠㏡㏢㏣㏤㏥㏦㏧㏨㏩㏪㏫㏬㏭㏮㏯㏰㏱㏲㏳㏴㏵㏶㏷㏸㏹㏺㏻㏼㏽㏾㏿㐀㐁㐂㐃㐄㐅㐆㐇㐈㐉㐊㐋㐌㐍㐎㐏㐐㐑㐒㐓㐔㐕㐖㐗㐘㐙㐚㐛㐜㐝㐞㐟㐠㐡㐢㐣㐤㐥㐦㐧㐨㐩㐪㐫㐬㐭㐮㐯㐰㐱㐲㐳㐴㐵㐶㐷㐸㐹㐺㐻㐼㐽㐾㐿㑀㑁㑂㑃㑄㑅㑆㑇㑈㑉㑊㑋㑌㑍㑎㑏㑐㑑㑒㑓㑔㑕㑖㑗㑘㑙㑚㑛㑜㑝㑞㑟㑠㑡㑢㑣㑤㑥㑦㑧㑨㑩㑪㑫㑬㑭㑮㑯㑰㑱㑲㑳㑴㑵㑶㑷㑸㑹㑺㑻㑼㑽㑾㑿㒀㒁㒂㒃㒄㒅㒆㒇㒈㒉㒊㒋㒌㒍㒎㒏㒐㒑㒒㒓㒔㒕㒖㒗㒘㒙㒚㒛㒜㒝㒞㒟㒠㒡㒢㒣㒤㒥㒦㒧㒨㒩㒪㒫㒬㒭㒮㒯㒰㒱㒲㒳㒴㒵㒶㒷㒸㒹㒺㒻㒼㒽㒾㒿㓀㓁㓂㓃㓄㓅㓆㓇㓈㓉㓊㓋㓌㓍㓎㓏㓐㓑㓒㓓㓔㓕㓖㓗㓘㓙㓚㓛㓜㓝㓞㓟㓠㓡㓢㓣㓤㓥㓦㓧㓨㓩㓪㓫㓬㓭㓮㓯㓰㓱㓲㓳㓴㓵㓶㓷㓸㓹㓺㓻㓼㓽㓾㓿㔀㔁㔂㔃㔄㔅㔆㔇㔈㔉㔊㔋㔌㔍㔎㔏㔐㔑㔒㔓㔔㔕㔖㔗㔘㔙㔚㔛㔜㔝㔞㔟㔠㔡㔢㔣㔤㔥㔦㔧㔨㔩㔪㔫㔬㔭㔮㔯㔰㔱㔲㔳㔴㔵㔶㔷㔸㔹㔺㔻㔼㔽㔾㔿㕀㕁㕂㕃㕄㕅㕆㕇㕈㕉㕊㕋㕌㕍㕎㕏㕐㕑㕒㕓㕔㕕㕖㕗㕘㕙㕚㕛㕜㕝㕞㕟㕠㕡㕢㕣㕤㕥㕦㕧㕨㕩㕪㕫㕬㕭㕮㕯㕰㕱㕲㕳㕴㕵㕶㕷㕸㕹㕺㕻㕼㕽㕾㕿㖀㖁㖂㖃㖄㖅㖆㖇㖈㖉㖊㖋㖌㖍㖎㖏㖐㖑㖒㖓㖔㖕㖖㖗㖘㖙㖚㖛㖜㖝㖞㖟㖠㖡㖢㖣㖤㖥㖦㖧㖨㖩㖪㖫㖬㖭㖮㖯㖰㖱㖲㖳㖴㖵㖶㖷㖸㖹㖺㖻㖼㖽㖾㖿㗀㗁㗂㗃㗄㗅㗆㗇㗈㗉㗊㗋㗌㗍㗎㗏㗐㗑㗒㗓㗔㗕㗖㗗㗘㗙㗚㗛㗜㗝㗞㗟㗠㗡㗢㗣㗤㗥㗦㗧㗨㗩㗪㗫㗬㗭㗮㗯㗰㗱㗲㗳㗴㗵㗶㗷㗸㗹㗺㗻㗼㗽㗾㗿㘀㘁㘂㘃㘄㘅㘆㘇㘈㘉㘊㘋㘌㘍㘎㘏㘐㘑㘒㘓㘔㘕㘖㘗㘘㘙㘚㘛㘜㘝㘞㘟㘠㘡㘢㘣㘤㘥㘦㘧㘨㘩㘪㘫㘬㘭㘮㘯㘰㘱㘲㘳㘴㘵㘶㘷㘸㘹㘺㘻㘼㘽㘾㘿㙀㙁㙂㙃㙄㙅㙆㙇㙈㙉㙊㙋㙌㙍㙎㙏㙐㙑㙒㙓㙔㙕㙖㙗㙘㙙㙚㙛㙜㙝㙞㙟㙠㙡㙢㙣㙤㙥㙦㙧㙨㙩㙪㙫㙬㙭㙮㙯㙰㙱㙲㙳㙴㙵㙶㙷㙸㙹㙺㙻㙼㙽㙾㙿㚀㚁㚂㚃㚄㚅㚆㚇㚈㚉㚊㚋㚌㚍㚎㚏㚐㚑㚒㚓㚔㚕㚖㚗㚘㚙㚚㚛㚜㚝㚞㚟㚠㚡㚢㚣㚤㚥㚦㚧㚨㚩㚪㚫㚬㚭㚮㚯㚰㚱㚲㚳㚴㚵㚶㚷㚸㚹㚺㚻㚼㚽㚾㚿㛀㛁㛂㛃㛄㛅㛆㛇㛈㛉㛊㛋㛌㛍㛎㛏㛐㛑㛒㛓㛔㛕㛖㛗㛘㛙㛚㛛㛜㛝㛞㛟㛠㛡㛢㛣㛤㛥㛦㛧㛨㛩㛪㛫㛬㛭㛮㛯㛰㛱㛲㛳㛴㛵㛶㛷㛸㛹㛺㛻㛼㛽㛾㛿㜀㜁㜂㜃㜄㜅㜆㜇㜈㜉㜊㜋㜌㜍㜎㜏㜐㜑㜒㜓㜔㜕㜖㜗㜘㜙㜚㜛㜜㜝㜞㜟㜠㜡㜢㜣㜤㜥㜦㜧㜨㜩㜪㜫㜬㜭㜮㜯㜰㜱㜲㜳㜴㜵㜶㜷㜸㜹㜺㜻㜼㜽㜾㜿㝀㝁㝂㝃㝄㝅㝆㝇㝈㝉㝊㝋㝌㝍㝎㝏㝐㝑㝒㝓㝔㝕㝖㝗㝘㝙㝚㝛㝜㝝㝞㝟㝠㝡㝢㝣㝤㝥㝦㝧㝨㝩㝪㝫㝬㝭㝮㝯㝰㝱㝲㝳㝴㝵㝶㝷㝸㝹㝺㝻㝼㝽㝾㝿㞀㞁㞂㞃㞄㞅㞆㞇㞈㞉㞊㞋㞌㞍㞎㞏㞐㞑㞒㞓㞔㞕㞖㞗㞘㞙㞚㞛㞜㞝㞞㞟㞠㞡㞢㞣㞤㞥㞦㞧㞨㞩㞪㞫㞬㞭㞮㞯㞰㞱㞲㞳㞴㞵㞶㞷㞸㞹㞺㞻㞼㞽㞾㞿㟀㟁㟂㟃㟄㟅㟆㟇㟈㟉㟊㟋㟌㟍㟎㟏㟐㟑㟒㟓㟔㟕㟖㟗㟘㟙㟚㟛㟜㟝㟞㟟㟠㟡㟢㟣㟤㟥㟦㟧㟨㟩㟪㟫㟬㟭㟮㟯㟰㟱㟲㟳㟴㟵㟶㟷㟸㟹㟺㟻㟼㟽㟾㟿㠀㠁㠂㠃㠄㠅㠆㠇㠈㠉㠊㠋㠌㠍㠎㠏㠐㠑㠒㠓㠔㠕㠖㠗㠘㠙㠚㠛㠜㠝㠞㠟㠠㠡㠢㠣㠤㠥㠦㠧㠨㠩㠪㠫㠬㠭㠮㠯㠰㠱㠲㠳㠴㠵㠶㠷㠸㠹㠺㠻㠼㠽㠾㠿㡀㡁㡂㡃㡄㡅㡆㡇㡈㡉㡊㡋㡌㡍㡎㡏㡐㡑㡒㡓㡔㡕㡖㡗㡘㡙㡚㡛㡜㡝㡞㡟㡠㡡㡢㡣㡤㡥㡦㡧㡨㡩㡪㡫㡬㡭㡮㡯㡰㡱㡲㡳㡴㡵㡶㡷㡸㡹㡺㡻㡼㡽㡾㡿㢀㢁㢂㢃㢄㢅㢆㢇㢈㢉㢊㢋㢌㢍㢎㢏㢐㢑㢒㢓㢔㢕㢖㢗㢘㢙㢚㢛㢜㢝㢞㢟㢠㢡㢢㢣㢤㢥㢦㢧㢨㢩㢪㢫㢬㢭㢮㢯㢰㢱㢲㢳㢴㢵㢶㢷㢸㢹㢺㢻㢼㢽㢾㢿㣀㣁㣂㣃㣄㣅㣆㣇㣈㣉㣊㣋㣌㣍㣎㣏㣐㣑㣒㣓㣔㣕㣖㣗㣘㣙㣚㣛㣜㣝㣞㣟㣠㣡㣢㣣㣤㣥㣦㣧㣨㣩㣪㣫㣬㣭㣮㣯㣰㣱㣲㣳㣴㣵㣶㣷㣸㣹㣺㣻㣼㣽㣾㣿㤀㤁㤂㤃㤄㤅㤆㤇㤈㤉㤊㤋㤌㤍㤎㤏㤐㤑㤒㤓㤔㤕㤖㤗㤘㤙㤚㤛㤜㤝㤞㤟㤠㤡㤢㤣㤤㤥㤦㤧㤨㤩㤪㤫㤬㤭㤮㤯㤰㤱㤲㤳㤴㤵㤶㤷㤸㤹㤺㤻㤼㤽㤾㤿㥀㥁㥂㥃㥄㥅㥆㥇㥈㥉㥊㥋㥌㥍㥎㥏㥐㥑㥒㥓㥔㥕㥖㥗㥘㥙㥚㥛㥜㥝㥞㥟㥠㥡㥢㥣㥤㥥㥦㥧㥨㥩㥪㥫㥬㥭㥮㥯㥰㥱㥲㥳㥴㥵㥶㥷㥸㥹㥺㥻㥼㥽㥾㥿㦀㦁㦂㦃㦄㦅㦆㦇㦈㦉㦊㦋㦌㦍㦎㦏㦐㦑㦒㦓㦔㦕㦖㦗㦘㦙㦚㦛㦜㦝㦞㦟㦠㦡㦢㦣㦤㦥㦦㦧㦨㦩㦪㦫㦬㦭㦮㦯㦰㦱㦲㦳㦴㦵㦶㦷㦸㦹㦺㦻㦼㦽㦾㦿㧀㧁㧂㧃㧄㧅㧆㧇㧈㧉㧊㧋㧌㧍㧎㧏㧐㧑㧒㧓㧔㧕㧖㧗㧘㧙㧚㧛㧜㧝㧞㧟㧠㧡㧢㧣㧤㧥㧦㧧㧨㧩㧪㧫㧬㧭㧮㧯㧰㧱㧲㧳㧴㧵㧶㧷㧸㧹㧺㧻㧼㧽㧾㧿㨀㨁㨂㨃㨄㨅㨆㨇㨈㨉㨊㨋㨌㨍㨎㨏㨐㨑㨒㨓㨔㨕㨖㨗㨘㨙㨚㨛㨜㨝㨞㨟㨠㨡㨢㨣㨤㨥㨦㨧㨨㨩㨪㨫㨬㨭㨮㨯㨰㨱㨲㨳㨴㨵㨶㨷㨸㨹㨺㨻㨼㨽㨾㨿㩀㩁㩂㩃㩄㩅㩆㩇㩈㩉㩊㩋㩌㩍㩎㩏㩐㩑㩒㩓㩔㩕㩖㩗㩘㩙㩚㩛㩜㩝㩞㩟㩠㩡㩢㩣㩤㩥㩦㩧㩨㩩㩪㩫㩬㩭㩮㩯㩰㩱㩲㩳㩴㩵㩶㩷㩸㩹㩺㩻㩼㩽㩾㩿㪀㪁㪂㪃㪄㪅㪆㪇㪈㪉㪊㪋㪌㪍㪎㪏㪐㪑㪒㪓㪔㪕㪖㪗㪘㪙㪚㪛㪜㪝㪞㪟㪠㪡㪢㪣㪤㪥㪦㪧㪨㪩㪪㪫㪬㪭㪮㪯㪰㪱㪲㪳㪴㪵㪶㪷㪸㪹㪺㪻㪼㪽㪾㪿㫀㫁㫂㫃㫄㫅㫆㫇㫈㫉㫊㫋㫌㫍㫎㫏㫐㫑㫒㫓㫔㫕㫖㫗㫘㫙㫚㫛㫜㫝㫞㫟㫠㫡㫢㫣㫤㫥㫦㫧㫨㫩㫪㫫㫬㫭㫮㫯㫰㫱㫲㫳㫴㫵㫶㫷㫸㫹㫺㫻㫼㫽㫾㫿㬀㬁㬂㬃㬄㬅㬆㬇㬈㬉㬊㬋㬌㬍㬎㬏㬐㬑㬒㬓㬔㬕㬖㬗㬘㬙㬚㬛㬜㬝㬞㬟㬠㬡㬢㬣㬤㬥㬦㬧㬨㬩㬪㬫㬬㬭㬮㬯㬰㬱㬲㬳㬴㬵㬶㬷㬸㬹㬺㬻㬼㬽㬾㬿㭀㭁㭂㭃㭄㭅㭆㭇㭈㭉㭊㭋㭌㭍㭎㭏㭐㭑㭒㭓㭔㭕㭖㭗㭘㭙㭚㭛㭜㭝㭞㭟㭠㭡㭢㭣㭤㭥㭦㭧㭨㭩㭪㭫㭬㭭㭮㭯㭰㭱㭲㭳㭴㭵㭶㭷㭸㭹㭺㭻㭼㭽㭾㭿㮀㮁㮂㮃㮄㮅㮆㮇㮈㮉㮊㮋㮌㮍㮎㮏㮐㮑㮒㮓㮔㮕㮖㮗㮘㮙㮚㮛㮜㮝㮞㮟㮠㮡㮢㮣㮤㮥㮦㮧㮨㮩㮪㮫㮬㮭㮮㮯㮰㮱㮲㮳㮴㮵㮶㮷㮸㮹㮺㮻㮼㮽㮾㮿㯀㯁㯂㯃㯄㯅㯆㯇㯈㯉㯊㯋㯌㯍㯎㯏㯐㯑㯒㯓㯔㯕㯖㯗㯘㯙㯚㯛㯜㯝㯞㯟㯠㯡㯢㯣㯤㯥㯦㯧㯨㯩㯪㯫㯬㯭㯮㯯㯰㯱㯲㯳㯴㯵㯶㯷㯸㯹㯺㯻㯼㯽㯾㯿㰀㰁㰂㰃㰄㰅㰆㰇㰈㰉㰊㰋㰌㰍㰎㰏㰐㰑㰒㰓㰔㰕㰖㰗㰘㰙㰚㰛㰜㰝㰞㰟㰠㰡㰢㰣㰤㰥㰦㰧㰨㰩㰪㰫㰬㰭㰮㰯㰰㰱㰲㰳㰴㰵㰶㰷㰸㰹㰺㰻㰼㰽㰾㰿㱀㱁㱂㱃㱄㱅㱆㱇㱈㱉㱊㱋㱌㱍㱎㱏㱐㱑㱒㱓㱔㱕㱖㱗㱘㱙㱚㱛㱜㱝㱞㱟㱠㱡㱢㱣㱤㱥㱦㱧㱨㱩㱪㱫㱬㱭㱮㱯㱰㱱㱲㱳㱴㱵㱶㱷㱸㱹㱺㱻㱼㱽㱾㱿㲀㲁㲂㲃㲄㲅㲆㲇㲈㲉㲊㲋㲌㲍㲎㲏㲐㲑㲒㲓㲔㲕㲖㲗㲘㲙㲚㲛㲜㲝㲞㲟㲠㲡㲢㲣㲤㲥㲦㲧㲨㲩㲪㲫㲬㲭㲮㲯㲰㲱㲲㲳㲴㲵㲶㲷㲸㲹㲺㲻㲼㲽㲾㲿㳀㳁㳂㳃㳄㳅㳆㳇㳈㳉㳊㳋㳌㳍㳎㳏㳐㳑㳒㳓㳔㳕㳖㳗㳘㳙㳚㳛㳜㳝㳞㳟㳠㳡㳢㳣㳤㳥㳦㳧㳨㳩㳪㳫㳬㳭㳮㳯㳰㳱㳲㳳㳴㳵㳶㳷㳸㳹㳺㳻㳼㳽㳾㳿㴀㴁㴂㴃㴄㴅㴆㴇㴈㴉㴊㴋㴌㴍㴎㴏㴐㴑㴒㴓㴔㴕㴖㴗㴘㴙㴚㴛㴜㴝㴞㴟㴠㴡㴢㴣㴤㴥㴦㴧㴨㴩㴪㴫㴬㴭㴮㴯㴰㴱㴲㴳㴴㴵㴶㴷㴸㴹㴺㴻㴼㴽㴾㴿㵀㵁㵂㵃㵄㵅㵆㵇㵈㵉㵊㵋㵌㵍㵎㵏㵐㵑㵒㵓㵔㵕㵖㵗㵘㵙㵚㵛㵜㵝㵞㵟㵠㵡㵢㵣㵤㵥㵦㵧㵨㵩㵪㵫㵬㵭㵮㵯㵰㵱㵲㵳㵴㵵㵶㵷㵸㵹㵺㵻㵼㵽㵾㵿㶀㶁㶂㶃㶄㶅㶆㶇㶈㶉㶊㶋㶌㶍㶎㶏㶐㶑㶒㶓㶔㶕㶖㶗㶘㶙㶚㶛㶜㶝㶞㶟㶠㶡㶢㶣㶤㶥㶦㶧㶨㶩㶪㶫㶬㶭㶮㶯㶰㶱㶲㶳㶴㶵㶶㶷㶸㶹㶺㶻㶼㶽㶾㶿㷀㷁㷂㷃㷄㷅㷆㷇㷈㷉㷊㷋㷌㷍㷎㷏㷐㷑㷒㷓㷔㷕㷖㷗㷘㷙㷚㷛㷜㷝㷞㷟㷠㷡㷢㷣㷤㷥㷦㷧㷨㷩㷪㷫㷬㷭㷮㷯㷰㷱㷲㷳㷴㷵㷶㷷㷸㷹㷺㷻㷼㷽㷾㷿㸀㸁㸂㸃㸄㸅㸆㸇㸈㸉㸊㸋㸌㸍㸎㸏㸐㸑㸒㸓㸔㸕㸖㸗㸘㸙㸚㸛㸜㸝㸞㸟㸠㸡㸢㸣㸤㸥㸦㸧㸨㸩㸪㸫㸬㸭㸮㸯㸰㸱㸲㸳㸴㸵㸶㸷㸸㸹㸺㸻㸼㸽㸾㸿㹀㹁㹂㹃㹄㹅㹆㹇㹈㹉㹊㹋㹌㹍㹎㹏㹐㹑㹒㹓㹔㹕㹖㹗㹘㹙㹚㹛㹜㹝㹞㹟㹠㹡㹢㹣㹤㹥㹦㹧㹨㹩㹪㹫㹬㹭㹮㹯㹰㹱㹲㹳㹴㹵㹶㹷㹸㹹㹺㹻㹼㹽㹾㹿㺀㺁㺂㺃㺄㺅㺆㺇㺈㺉㺊㺋㺌㺍㺎㺏㺐㺑㺒㺓㺔㺕㺖㺗㺘㺙㺚㺛㺜㺝㺞㺟㺠㺡㺢㺣㺤㺥㺦㺧㺨㺩㺪㺫㺬㺭㺮㺯㺰㺱㺲㺳㺴㺵㺶㺷㺸㺹㺺㺻㺼㺽㺾㺿㻀㻁㻂㻃㻄㻅㻆㻇㻈㻉㻊㻋㻌㻍㻎㻏㻐㻑㻒㻓㻔㻕㻖㻗㻘㻙㻚㻛㻜㻝㻞㻟㻠㻡㻢㻣㻤㻥㻦㻧㻨㻩㻪㻫㻬㻭㻮㻯㻰㻱㻲㻳㻴㻵㻶㻷㻸㻹㻺㻻㻼㻽㻾㻿㼀㼁㼂㼃㼄㼅㼆㼇㼈㼉㼊㼋㼌㼍㼎㼏㼐㼑㼒㼓㼔㼕㼖㼗㼘㼙㼚㼛㼜㼝㼞㼟㼠㼡㼢㼣㼤㼥㼦㼧㼨㼩㼪㼫㼬㼭㼮㼯㼰㼱㼲㼳㼴㼵㼶㼷㼸㼹㼺㼻㼼㼽㼾㼿㽀㽁㽂㽃㽄㽅㽆㽇㽈㽉㽊㽋㽌㽍㽎㽏㽐㽑㽒㽓㽔㽕㽖㽗㽘㽙㽚㽛㽜㽝㽞㽟㽠㽡㽢㽣㽤㽥㽦㽧㽨㽩㽪㽫㽬㽭㽮㽯㽰㽱㽲㽳㽴㽵㽶㽷㽸㽹㽺㽻㽼㽽㽾㽿㾀㾁㾂㾃㾄㾅㾆㾇㾈㾉㾊㾋㾌㾍㾎㾏㾐㾑㾒㾓㾔㾕㾖㾗㾘㾙㾚㾛㾜㾝㾞㾟㾠㾡㾢㾣㾤㾥㾦㾧㾨㾩㾪㾫㾬㾭㾮㾯㾰㾱㾲㾳㾴㾵㾶㾷㾸㾹㾺㾻㾼㾽㾾㾿㿀㿁㿂㿃㿄㿅㿆㿇㿈㿉㿊㿋㿌㿍㿎㿏㿐㿑㿒㿓㿔㿕㿖㿗㿘㿙㿚㿛㿜㿝㿞㿟㿠㿡㿢㿣㿤㿥㿦㿧㿨㿩㿪㿫㿬㿭㿮㿯㿰㿱㿲㿳㿴㿵㿶㿷㿸㿹㿺㿻㿼㿽㿾㿿䀀䀁䀂䀃䀄䀅䀆䀇䀈䀉䀊䀋䀌䀍䀎䀏䀐䀑䀒䀓䀔䀕䀖䀗䀘䀙䀚䀛䀜䀝䀞䀟䀠䀡䀢䀣䀤䀥䀦䀧䀨䀩䀪䀫䀬䀭䀮䀯䀰䀱䀲䀳䀴䀵䀶䀷䀸䀹䀺䀻䀼䀽䀾䀿䁀䁁䁂䁃䁄䁅䁆䁇䁈䁉䁊䁋䁌䁍䁎䁏䁐䁑䁒䁓䁔䁕䁖䁗䁘䁙䁚䁛䁜䁝䁞䁟䁠䁡䁢䁣䁤䁥䁦䁧䁨䁩䁪䁫䁬䁭䁮䁯䁰䁱䁲䁳䁴䁵䁶䁷䁸䁹䁺䁻䁼䁽䁾䁿䂀䂁䂂䂃䂄䂅䂆䂇䂈䂉䂊䂋䂌䂍䂎䂏䂐䂑䂒䂓䂔䂕䂖䂗䂘䂙䂚䂛䂜䂝䂞䂟䂠䂡䂢䂣䂤䂥䂦䂧䂨䂩䂪䂫䂬䂭䂮䂯䂰䂱䂲䂳䂴䂵䂶䂷䂸䂹䂺䂻䂼䂽䂾䂿䃀䃁䃂䃃䃄䃅䃆䃇䃈䃉䃊䃋䃌䃍䃎䃏䃐䃑䃒䃓䃔䃕䃖䃗䃘䃙䃚䃛䃜䃝䃞䃟䃠䃡䃢䃣䃤䃥䃦䃧䃨䃩䃪䃫䃬䃭䃮䃯䃰䃱䃲䃳䃴䃵䃶䃷䃸䃹䃺䃻䃼䃽䃾䃿䄀䄁䄂䄃䄄䄅䄆䄇䄈䄉䄊䄋䄌䄍䄎䄏䄐䄑䄒䄓䄔䄕䄖䄗䄘䄙䄚䄛䄜䄝䄞䄟䄠䄡䄢䄣䄤䄥䄦䄧䄨䄩䄪䄫䄬䄭䄮䄯䄰䄱䄲䄳䄴䄵䄶䄷䄸䄹䄺䄻䄼䄽䄾䄿䅀䅁䅂䅃䅄䅅䅆䅇䅈䅉䅊䅋䅌䅍䅎䅏䅐䅑䅒䅓䅔䅕䅖䅗䅘䅙䅚䅛䅜䅝䅞䅟䅠䅡䅢䅣䅤䅥䅦䅧䅨䅩䅪䅫䅬䅭䅮䅯䅰䅱䅲䅳䅴䅵䅶䅷䅸䅹䅺䅻䅼䅽䅾䅿䆀䆁䆂䆃䆄䆅䆆䆇䆈䆉䆊䆋䆌䆍䆎䆏䆐䆑䆒䆓䆔䆕䆖䆗䆘䆙䆚䆛䆜䆝䆞䆟䆠䆡䆢䆣䆤䆥䆦䆧䆨䆩䆪䆫䆬䆭䆮䆯䆰䆱䆲䆳䆴䆵䆶䆷䆸䆹䆺䆻䆼䆽䆾䆿䇀䇁䇂䇃䇄䇅䇆䇇䇈䇉䇊䇋䇌䇍䇎䇏䇐䇑䇒䇓䇔䇕䇖䇗䇘䇙䇚䇛䇜䇝䇞䇟䇠䇡䇢䇣䇤䇥䇦䇧䇨䇩䇪䇫䇬䇭䇮䇯䇰䇱䇲䇳䇴䇵䇶䇷䇸䇹䇺䇻䇼䇽䇾䇿䈀䈁䈂䈃䈄䈅䈆䈇䈈䈉䈊䈋䈌䈍䈎䈏䈐䈑䈒䈓䈔䈕䈖䈗䈘䈙䈚䈛䈜䈝䈞䈟䈠䈡䈢䈣䈤䈥䈦䈧䈨䈩䈪䈫䈬䈭䈮䈯䈰䈱䈲䈳䈴䈵䈶䈷䈸䈹䈺䈻䈼䈽䈾䈿䉀䉁䉂䉃䉄䉅䉆䉇䉈䉉䉊䉋䉌䉍䉎䉏䉐䉑䉒䉓䉔䉕䉖䉗䉘䉙䉚䉛䉜䉝䉞䉟䉠䉡䉢䉣䉤䉥䉦䉧䉨䉩䉪䉫䉬䉭䉮䉯䉰䉱䉲䉳䉴䉵䉶䉷䉸䉹䉺䉻䉼䉽䉾䉿䊀䊁䊂䊃䊄䊅䊆䊇䊈䊉䊊䊋䊌䊍䊎䊏䊐䊑䊒䊓䊔䊕䊖䊗䊘䊙䊚䊛䊜䊝䊞䊟䊠䊡䊢䊣䊤䊥䊦䊧䊨䊩䊪䊫䊬䊭䊮䊯䊰䊱䊲䊳䊴䊵䊶䊷䊸䊹䊺䊻䊼䊽䊾䊿䋀䋁䋂䋃䋄䋅䋆䋇䋈䋉䋊䋋䋌䋍䋎䋏䋐䋑䋒䋓䋔䋕䋖䋗䋘䋙䋚䋛䋜䋝䋞䋟䋠䋡䋢䋣䋤䋥䋦䋧䋨䋩䋪䋫䋬䋭䋮䋯䋰䋱䋲䋳䋴䋵䋶䋷䋸䋹䋺䋻䋼䋽䋾䋿䌀䌁䌂䌃䌄䌅䌆䌇䌈䌉䌊䌋䌌䌍䌎䌏䌐䌑䌒䌓䌔䌕䌖䌗䌘䌙䌚䌛䌜䌝䌞䌟䌠䌡䌢䌣䌤䌥䌦䌧䌨䌩䌪䌫䌬䌭䌮䌯䌰䌱䌲䌳䌴䌵䌶䌷䌸䌹䌺䌻䌼䌽䌾䌿䍀䍁䍂䍃䍄䍅䍆䍇䍈䍉䍊䍋䍌䍍䍎䍏䍐䍑䍒䍓䍔䍕䍖䍗䍘䍙䍚䍛䍜䍝䍞䍟䍠䍡䍢䍣䍤䍥䍦䍧䍨䍩䍪䍫䍬䍭䍮䍯䍰䍱䍲䍳䍴䍵䍶䍷䍸䍹䍺䍻䍼䍽䍾䍿䎀䎁䎂䎃䎄䎅䎆䎇䎈䎉䎊䎋䎌䎍䎎䎏䎐䎑䎒䎓䎔䎕䎖䎗䎘䎙䎚䎛䎜䎝䎞䎟䎠䎡䎢䎣䎤䎥䎦䎧䎨䎩䎪䎫䎬䎭䎮䎯䎰䎱䎲䎳䎴䎵䎶䎷䎸䎹䎺䎻䎼䎽䎾䎿䏀䏁䏂䏃䏄䏅䏆䏇䏈䏉䏊䏋䏌䏍䏎䏏䏐䏑䏒䏓䏔䏕䏖䏗䏘䏙䏚䏛䏜䏝䏞䏟䏠䏡䏢䏣䏤䏥䏦䏧䏨䏩䏪䏫䏬䏭䏮䏯䏰䏱䏲䏳䏴䏵䏶䏷䏸䏹䏺䏻䏼䏽䏾䏿䐀䐁䐂䐃䐄䐅䐆䐇䐈䐉䐊䐋䐌䐍䐎䐏䐐䐑䐒䐓䐔䐕䐖䐗䐘䐙䐚䐛䐜䐝䐞䐟䐠䐡䐢䐣䐤䐥䐦䐧䐨䐩䐪䐫䐬䐭䐮䐯䐰䐱䐲䐳䐴䐵䐶䐷䐸䐹䐺䐻䐼䐽䐾䐿䑀䑁䑂䑃䑄䑅䑆䑇䑈䑉䑊䑋䑌䑍䑎䑏䑐䑑䑒䑓䑔䑕䑖䑗䑘䑙䑚䑛䑜䑝䑞䑟䑠䑡䑢䑣䑤䑥䑦䑧䑨䑩䑪䑫䑬䑭䑮䑯䑰䑱䑲䑳䑴䑵䑶䑷䑸䑹䑺䑻䑼䑽䑾䑿䒀䒁䒂䒃䒄䒅䒆䒇䒈䒉䒊䒋䒌䒍䒎䒏䒐䒑䒒䒓䒔䒕䒖䒗䒘䒙䒚䒛䒜䒝䒞䒟䒠䒡䒢䒣䒤䒥䒦䒧䒨䒩䒪䒫䒬䒭䒮䒯䒰䒱䒲䒳䒴䒵䒶䒷䒸䒹䒺䒻䒼䒽䒾䒿䓀䓁䓂䓃䓄䓅䓆䓇䓈䓉䓊䓋䓌䓍䓎䓏䓐䓑䓒䓓䓔䓕䓖䓗䓘䓙䓚䓛䓜䓝䓞䓟䓠䓡䓢䓣䓤䓥䓦䓧䓨䓩䓪䓫䓬䓭䓮䓯䓰䓱䓲䓳䓴䓵䓶䓷䓸䓹䓺䓻䓼䓽䓾䓿䔀䔁䔂䔃䔄䔅䔆䔇䔈䔉䔊䔋䔌䔍䔎䔏䔐䔑䔒䔓䔔䔕䔖䔗䔘䔙䔚䔛䔜䔝䔞䔟䔠䔡䔢䔣䔤䔥䔦䔧䔨䔩䔪䔫䔬䔭䔮䔯䔰䔱䔲䔳䔴䔵䔶䔷䔸䔹䔺䔻䔼䔽䔾䔿䕀䕁䕂䕃䕄䕅䕆䕇䕈䕉䕊䕋䕌䕍䕎䕏䕐䕑䕒䕓䕔䕕䕖䕗䕘䕙䕚䕛䕜䕝䕞䕟䕠䕡䕢䕣䕤䕥䕦䕧䕨䕩䕪䕫䕬䕭䕮䕯䕰䕱䕲䕳䕴䕵䕶䕷䕸䕹䕺䕻䕼䕽䕾䕿䖀䖁䖂䖃䖄䖅䖆䖇䖈䖉䖊䖋䖌䖍䖎䖏䖐䖑䖒䖓䖔䖕䖖䖗䖘䖙䖚䖛䖜䖝䖞䖟䖠䖡䖢䖣䖤䖥䖦䖧䖨䖩䖪䖫䖬䖭䖮䖯䖰䖱䖲䖳䖴䖵䖶䖷䖸䖹䖺䖻䖼䖽䖾䖿䗀䗁䗂䗃䗄䗅䗆䗇䗈䗉䗊䗋䗌䗍䗎䗏䗐䗑䗒䗓䗔䗕䗖䗗䗘䗙䗚䗛䗜䗝䗞䗟䗠䗡䗢䗣䗤䗥䗦䗧䗨䗩䗪䗫䗬䗭䗮䗯䗰䗱䗲䗳䗴䗵䗶䗷䗸䗹䗺䗻䗼䗽䗾䗿䘀䘁䘂䘃䘄䘅䘆䘇䘈䘉䘊䘋䘌䘍䘎䘏䘐䘑䘒䘓䘔䘕䘖䘗䘘䘙䘚䘛䘜䘝䘞䘟䘠䘡䘢䘣䘤䘥䘦䘧䘨䘩䘪䘫䘬䘭䘮䘯䘰䘱䘲䘳䘴䘵䘶䘷䘸䘹䘺䘻䘼䘽䘾䘿䙀䙁䙂䙃䙄䙅䙆䙇䙈䙉䙊䙋䙌䙍䙎䙏䙐䙑䙒䙓䙔䙕䙖䙗䙘䙙䙚䙛䙜䙝䙞䙟䙠䙡䙢䙣䙤䙥䙦䙧䙨䙩䙪䙫䙬䙭䙮䙯䙰䙱䙲䙳䙴䙵䙶䙷䙸䙹䙺䙻䙼䙽䙾䙿䚀䚁䚂䚃䚄䚅䚆䚇䚈䚉䚊䚋䚌䚍䚎䚏䚐䚑䚒䚓䚔䚕䚖䚗䚘䚙䚚䚛䚜䚝䚞䚟䚠䚡䚢䚣䚤䚥䚦䚧䚨䚩䚪䚫䚬䚭䚮䚯䚰䚱䚲䚳䚴䚵䚶䚷䚸䚹䚺䚻䚼䚽䚾䚿䛀䛁䛂䛃䛄䛅䛆䛇䛈䛉䛊䛋䛌䛍䛎䛏䛐䛑䛒䛓䛔䛕䛖䛗䛘䛙䛚䛛䛜䛝䛞䛟䛠䛡䛢䛣䛤䛥䛦䛧䛨䛩䛪䛫䛬䛭䛮䛯䛰䛱䛲䛳䛴䛵䛶䛷䛸䛹䛺䛻䛼䛽䛾䛿䜀䜁䜂䜃䜄䜅䜆䜇䜈䜉䜊䜋䜌䜍䜎䜏䜐䜑䜒䜓䜔䜕䜖䜗䜘䜙䜚䜛䜜䜝䜞䜟䜠䜡䜢䜣䜤䜥䜦䜧䜨䜩䜪䜫䜬䜭䜮䜯䜰䜱䜲䜳䜴䜵䜶䜷䜸䜹䜺䜻䜼䜽䜾䜿䝀䝁䝂䝃䝄䝅䝆䝇䝈䝉䝊䝋䝌䝍䝎䝏䝐䝑䝒䝓䝔䝕䝖䝗䝘䝙䝚䝛䝜䝝䝞䝟䝠䝡䝢䝣䝤䝥䝦䝧䝨䝩䝪䝫䝬䝭䝮䝯䝰䝱䝲䝳䝴䝵䝶䝷䝸䝹䝺䝻䝼䝽䝾䝿䞀䞁䞂䞃䞄䞅䞆䞇䞈䞉䞊䞋䞌䞍䞎䞏䞐䞑䞒䞓䞔䞕䞖䞗䞘䞙䞚䞛䞜䞝䞞䞟䞠䞡䞢䞣䞤䞥䞦䞧䞨䞩䞪䞫䞬䞭䞮䞯䞰䞱䞲䞳䞴䞵䞶䞷䞸䞹䞺䞻䞼䞽䞾䞿䟀䟁䟂䟃䟄䟅䟆䟇䟈䟉䟊䟋䟌䟍䟎䟏䟐䟑䟒䟓䟔䟕䟖䟗䟘䟙䟚䟛䟜䟝䟞䟟䟠䟡䟢䟣䟤䟥䟦䟧䟨䟩䟪䟫䟬䟭䟮䟯䟰䟱䟲䟳䟴䟵䟶䟷䟸䟹䟺䟻䟼䟽䟾䟿䠀䠁䠂䠃䠄䠅䠆䠇䠈䠉䠊䠋䠌䠍䠎䠏䠐䠑䠒䠓䠔䠕䠖䠗䠘䠙䠚䠛䠜䠝䠞䠟䠠䠡䠢䠣䠤䠥䠦䠧䠨䠩䠪䠫䠬䠭䠮䠯䠰䠱䠲䠳䠴䠵䠶䠷䠸䠹䠺䠻䠼䠽䠾䠿䡀䡁䡂䡃䡄䡅䡆䡇䡈䡉䡊䡋䡌䡍䡎䡏䡐䡑䡒䡓䡔䡕䡖䡗䡘䡙䡚䡛䡜䡝䡞䡟䡠䡡䡢䡣䡤䡥䡦䡧䡨䡩䡪䡫䡬䡭䡮䡯䡰䡱䡲䡳䡴䡵䡶䡷䡸䡹䡺䡻䡼䡽䡾䡿䢀䢁䢂䢃䢄䢅䢆䢇䢈䢉䢊䢋䢌䢍䢎䢏䢐䢑䢒䢓䢔䢕䢖䢗䢘䢙䢚䢛䢜䢝䢞䢟䢠䢡䢢䢣䢤䢥䢦䢧䢨䢩䢪䢫䢬䢭䢮䢯䢰䢱䢲䢳䢴䢵䢶䢷䢸䢹䢺䢻䢼䢽䢾䢿䣀䣁䣂䣃䣄䣅䣆䣇䣈䣉䣊䣋䣌䣍䣎䣏䣐䣑䣒䣓䣔䣕䣖䣗䣘䣙䣚䣛䣜䣝䣞䣟䣠䣡䣢䣣䣤䣥䣦䣧䣨䣩䣪䣫䣬䣭䣮䣯䣰䣱䣲䣳䣴䣵䣶䣷䣸䣹䣺䣻䣼䣽䣾䣿䤀䤁䤂䤃䤄䤅䤆䤇䤈䤉䤊䤋䤌䤍䤎䤏䤐䤑䤒䤓䤔䤕䤖䤗䤘䤙䤚䤛䤜䤝䤞䤟䤠䤡䤢䤣䤤䤥䤦䤧䤨䤩䤪䤫䤬䤭䤮䤯䤰䤱䤲䤳䤴䤵䤶䤷䤸䤹䤺䤻䤼䤽䤾䤿䥀䥁䥂䥃䥄䥅䥆䥇䥈䥉䥊䥋䥌䥍䥎䥏䥐䥑䥒䥓䥔䥕䥖䥗䥘䥙䥚䥛䥜䥝䥞䥟䥠䥡䥢䥣䥤䥥䥦䥧䥨䥩䥪䥫䥬䥭䥮䥯䥰䥱䥲䥳䥴䥵䥶䥷䥸䥹䥺䥻䥼䥽䥾䥿䦀䦁䦂䦃䦄䦅䦆䦇䦈䦉䦊䦋䦌䦍䦎䦏䦐䦑䦒䦓䦔䦕䦖䦗䦘䦙䦚䦛䦜䦝䦞䦟䦠䦡䦢䦣䦤䦥䦦䦧䦨䦩䦪䦫䦬䦭䦮䦯䦰䦱䦲䦳䦴䦵䦶䦷䦸䦹䦺䦻䦼䦽䦾䦿䧀䧁䧂䧃䧄䧅䧆䧇䧈䧉䧊䧋䧌䧍䧎䧏䧐䧑䧒䧓䧔䧕䧖䧗䧘䧙䧚䧛䧜䧝䧞䧟䧠䧡䧢䧣䧤䧥䧦䧧䧨䧩䧪䧫䧬䧭䧮䧯䧰䧱䧲䧳䧴䧵䧶䧷䧸䧹䧺䧻䧼䧽䧾䧿䨀䨁䨂䨃䨄䨅䨆䨇䨈䨉䨊䨋䨌䨍䨎䨏䨐䨑䨒䨓䨔䨕䨖䨗䨘䨙䨚䨛䨜䨝䨞䨟䨠䨡䨢䨣䨤䨥䨦䨧䨨䨩䨪䨫䨬䨭䨮䨯䨰䨱䨲䨳䨴䨵䨶䨷䨸䨹䨺䨻䨼䨽䨾䨿䩀䩁䩂䩃䩄䩅䩆䩇䩈䩉䩊䩋䩌䩍䩎䩏䩐䩑䩒䩓䩔䩕䩖䩗䩘䩙䩚䩛䩜䩝䩞䩟䩠䩡䩢䩣䩤䩥䩦䩧䩨䩩䩪䩫䩬䩭䩮䩯䩰䩱䩲䩳䩴䩵䩶䩷䩸䩹䩺䩻䩼䩽䩾䩿䪀䪁䪂䪃䪄䪅䪆䪇䪈䪉䪊䪋䪌䪍䪎䪏䪐䪑䪒䪓䪔䪕䪖䪗䪘䪙䪚䪛䪜䪝䪞䪟䪠䪡䪢䪣䪤䪥䪦䪧䪨䪩䪪䪫䪬䪭䪮䪯䪰䪱䪲䪳䪴䪵䪶䪷䪸䪹䪺䪻䪼䪽䪾䪿䫀䫁䫂䫃䫄䫅䫆䫇䫈䫉䫊䫋䫌䫍䫎䫏䫐䫑䫒䫓䫔䫕䫖䫗䫘䫙䫚䫛䫜䫝䫞䫟䫠䫡䫢䫣䫤䫥䫦䫧䫨䫩䫪䫫䫬䫭䫮䫯䫰䫱䫲䫳䫴䫵䫶䫷䫸䫹䫺䫻䫼䫽䫾䫿䬀䬁䬂䬃䬄䬅䬆䬇䬈䬉䬊䬋䬌䬍䬎䬏䬐䬑䬒䬓䬔䬕䬖䬗䬘䬙䬚䬛䬜䬝䬞䬟䬠䬡䬢䬣䬤䬥䬦䬧䬨䬩䬪䬫䬬䬭䬮䬯䬰䬱䬲䬳䬴䬵䬶䬷䬸䬹䬺䬻䬼䬽䬾䬿䭀䭁䭂䭃䭄䭅䭆䭇䭈䭉䭊䭋䭌䭍䭎䭏䭐䭑䭒䭓䭔䭕䭖䭗䭘䭙䭚䭛䭜䭝䭞䭟䭠䭡䭢䭣䭤䭥䭦䭧䭨䭩䭪䭫䭬䭭䭮䭯䭰䭱䭲䭳䭴䭵䭶䭷䭸䭹䭺䭻䭼䭽䭾䭿䮀䮁䮂䮃䮄䮅䮆䮇䮈䮉䮊䮋䮌䮍䮎䮏䮐䮑䮒䮓䮔䮕䮖䮗䮘䮙䮚䮛䮜䮝䮞䮟䮠䮡䮢䮣䮤䮥䮦䮧䮨䮩䮪䮫䮬䮭䮮䮯䮰䮱䮲䮳䮴䮵䮶䮷䮸䮹䮺䮻䮼䮽䮾䮿䯀䯁䯂䯃䯄䯅䯆䯇䯈䯉䯊䯋䯌䯍䯎䯏䯐䯑䯒䯓䯔䯕䯖䯗䯘䯙䯚䯛䯜䯝䯞䯟䯠䯡䯢䯣䯤䯥䯦䯧䯨䯩䯪䯫䯬䯭䯮䯯䯰䯱䯲䯳䯴䯵䯶䯷䯸䯹䯺䯻䯼䯽䯾䯿䰀䰁䰂䰃䰄䰅䰆䰇䰈䰉䰊䰋䰌䰍䰎䰏䰐䰑䰒䰓䰔䰕䰖䰗䰘䰙䰚䰛䰜䰝䰞䰟䰠䰡䰢䰣䰤䰥䰦䰧䰨䰩䰪䰫䰬䰭䰮䰯䰰䰱䰲䰳䰴䰵䰶䰷䰸䰹䰺䰻䰼䰽䰾䰿䱀䱁䱂䱃䱄䱅䱆䱇䱈䱉䱊䱋䱌䱍䱎䱏䱐䱑䱒䱓䱔䱕䱖䱗䱘䱙䱚䱛䱜䱝䱞䱟䱠䱡䱢䱣䱤䱥䱦䱧䱨䱩䱪䱫䱬䱭䱮䱯䱰䱱䱲䱳䱴䱵䱶䱷䱸䱹䱺䱻䱼䱽䱾䱿䲀䲁䲂䲃䲄䲅䲆䲇䲈䲉䲊䲋䲌䲍䲎䲏䲐䲑䲒䲓䲔䲕䲖䲗䲘䲙䲚䲛䲜䲝䲞䲟䲠䲡䲢䲣䲤䲥䲦䲧䲨䲩䲪䲫䲬䲭䲮䲯䲰䲱䲲䲳䲴䲵䲶䲷䲸䲹䲺䲻䲼䲽䲾䲿䳀䳁䳂䳃䳄䳅䳆䳇䳈䳉䳊䳋䳌䳍䳎䳏䳐䳑䳒䳓䳔䳕䳖䳗䳘䳙䳚䳛䳜䳝䳞䳟䳠䳡䳢䳣䳤䳥䳦䳧䳨䳩䳪䳫䳬䳭䳮䳯䳰䳱䳲䳳䳴䳵䳶䳷䳸䳹䳺䳻䳼䳽䳾䳿䴀䴁䴂䴃䴄䴅䴆䴇䴈䴉䴊䴋䴌䴍䴎䴏䴐䴑䴒䴓䴔䴕䴖䴗䴘䴙䴚䴛䴜䴝䴞䴟䴠䴡䴢䴣䴤䴥䴦䴧䴨䴩䴪䴫䴬䴭䴮䴯䴰䴱䴲䴳䴴䴵䴶䴷䴸䴹䴺䴻䴼䴽䴾䴿䵀䵁䵂䵃䵄䵅䵆䵇䵈䵉䵊䵋䵌䵍䵎䵏䵐䵑䵒䵓䵔䵕䵖䵗䵘䵙䵚䵛䵜䵝䵞䵟䵠䵡䵢䵣䵤䵥䵦䵧䵨䵩䵪䵫䵬䵭䵮䵯䵰䵱䵲䵳䵴䵵䵶䵷䵸䵹䵺䵻䵼䵽䵾䵿䶀䶁䶂䶃䶄䶅䶆䶇䶈䶉䶊䶋䶌䶍䶎䶏䶐䶑䶒䶓䶔䶕䶖䶗䶘䶙䶚䶛䶜䶝䶞䶟䶠䶡䶢䶣䶤䶥䶦䶧䶨䶩䶪䶫䶬䶭䶮䶯䶰䶱䶲䶳䶴䶵䶶䶷䶸䶹䶺䶻䶼䶽䶾䶿䷀䷁䷂䷃䷄䷅䷆䷇䷈䷉䷊䷋䷌䷍䷎䷏䷐䷑䷒䷓䷔䷕䷖䷗䷘䷙䷚䷛䷜䷝䷞䷟䷠䷡䷢䷣䷤䷥䷦䷧䷨䷩䷪䷫䷬䷭䷮䷯䷰䷱䷲䷳䷴䷵䷶䷷䷸䷹䷺䷻䷼䷽䷾䷿乥乲兙兛兝兞兡兣兺匁厼叾哛唜唟喸嗧囕夞巼怾旕朩朰栍桛椧烪猠瓧瓩瓰瓱瓲瓼甅硛硳穒縇莻虄襨迲闏鞥啊腌錒锕阿哀哎唉埃挨溾銰鎄锿凒啀嘊捱敱敳溰癌皑皚磑娾昹毐濭矮蔼藹譪躷霭靄伌僾叆嗳噯塧壒嫒嬡愛懓懝暧曖爱瑷璦皧瞹砹硋碍礙艾薆譺賹鑀隘靉餲馤鱫鴱侒偣啽媕安峖庵桉氨痷盦盫腤菴萻葊蓭誝諳谙鞌鞍韽馣鮟鵪鶕鹌儑玵雸俺唵垵埯揞罯銨铵堓屵岸按晻暗案洝胺荌豻貋錌闇隌黯肮骯岇昂昻枊盎醠凹柪梎熬爊軪厫嗷嗸嶅廒慠摮敖滶獒獓璈磝翱翶翺聱蔜螯謷謸遨鏖隞骜鰲鳌鷔鼇媪媼抝艹芺袄襖镺傲坳垇墺奡奥奧嫯岙岰嶴懊拗擙澚澳鏊隩驁丷仈八叭吧哵夿岜巴扒扷捌朳柭玐疤笆粑羓芭蚆豝釟魞鲃叐妭抜拔炦癹胈茇菝詙跋軷颰魃鼥把鈀钯靶坝垻壩弝欛灞爸矲罢罷耙覇跁霸鮁鲅挀掰白佰捭摆擺柏栢瓸百竡粨絔襬庍拜拝敗猈稗粺薭贁败韛扳搬攽斑斒班瘢癍肦般螌褩辬頒颁鳻坂岅昄板版瓪粄舨蝂鈑钣闆阪魬伴办半坢姅怑扮拌湴瓣秚絆绊辦鉡靽垹帮幇幚幫捠梆浜縍邦邫鞤榜牓綁绑膀髈傍塝挷搒棒棓玤磅稖艕蒡蚌蜯謗谤鎊镑佨剝勹包孢枹煲笣胞苞蕔裦褒襃闁齙龅窇薄雹保堡堢媬宝宲寚寳寶怉珤緥葆藵褓賲靌飹飽饱駂鳵鴇鸨儤勽嚗報忁报抱暴曓爆犦菢虣蚫袌豹趵鉋鑤铇骲髱鮑鲍卑庳悲揹杯柸桮椑盃碑背藣陂鵯鹎北鉳俻倍偝偹備僃备孛悖惫愂憊昁梖焙牬犕狈狽珼琲碚禙糒苝蓓蛽被褙誖貝贝軰輩辈邶郥鄁鋇鐾钡鞁鞴骳呗唄喯奔栟泍漰犇錛锛奙本楍畚翉苯倴坋坌捹撪桳渀笨逩伻嗙嘣奟崩嵭痭祊絣綳繃绷閍甭甮埄埲琣琫菶鞛塴揼泵甏蹦迸逬鏰镚偪屄楅榌毴螕豍逼鎞鰏鲾鵖嬶荸鼻佊俾匕啚夶妣彼朼柀比毞沘疕秕笔筆粃聛舭貏鄙佖咇哔嗶坒堛壁奰妼婢嬖币幣幤庇廦弊弻弼彃必怭怶愊愎敝斃朇柲梐毕毖毙湢滗滭潷濞煏熚狴獘獙珌璧畀畁畢疪痹痺皕睤睥碧禆筚箅箆篦篳粊綼縪繴罼腷臂芘苾荜萆萞蓖蓽蔽薜蜌袐襅襞襣觱詖诐貱賁贔贲赑跸蹕躃躄避邲鄨鄪鉍鏎鐴铋閇閉閟闭陛鞸韠飶饆馝駜驆髀髲魓鮅鷝鷩鼊炞煸牑猵獱甂砭笾箯籩糄編编萹蝙边邉邊鍽鞕鞭鯾鯿鳊匾惼扁揙碥稨窆藊褊貶贬鴘便卞变変峅弁徧忭抃昪汳汴玣緶缏艑苄覍諚變辡辧辨辩辫辮辯遍釆閞儦墂幖彪标標檦淲滮瀌熛爂猋瘭磦穮脿膘臕蔈藨謤贆鏢鑣镖镳颩颮颷飆飇飈飊飑飙飚驫骉骠髟嫑婊表裱褾諘錶俵摽鳔憋瘪癟虌蟞鱉鳖鼈龞別别徶莂蛂襒蹩彆傧儐宾彬斌梹椕槟檳汃滨濒濱濵瀕玢瑸璸繽缤虨豩豳賓賔邠鑌镔霦頻顮摈擯殡殯膑臏髌髕髩鬂鬓鬢仌仒兵冫冰掤氷蛃鋲丙偋寎怲抦昞昺柄棅炳眪禀秉稟苪邴鈵鉼陃鞆鞞餅餠饼並併倂傡垪并幷庰摒栤病窉竝誁靐鮩僠剥嶓拨撥播波溊玻癶癷盋砵碆礡紴缽菠袰蹳鉢钵餑饽驋鱍亳仢伯侼僰勃博帛愽懪挬搏桲欂泊浡淿渤煿牔狛猼瓝瓟礴秡箔簙糪肑胉脖膊舶艊萡葧袯袹襏襮謈踣郣鈸鉑鋍鎛鑮钹铂镈餺馎馛馞駁駮驳髆髉鮊鲌鵓鹁跛孹擘檗簸蘗譒啵蔔峬庯晡誧逋鈽錻钸餔鵏轐醭鳪卜卟哺捕补補鸔不佈勏吥咘埗埠布廍怖悑抪捗柨步歨歩瓿篰簿荹蔀踄部郶鈈钚餢嚓擦攃礤礸遪偲猜才材纔裁財财倸啋埰婇寀彩採棌毝睬綵跴踩采縩菜蔡傪参參叄叅喰嬠湌爘飡餐驂骖惭慙慚残殘蚕蝅蠶蠺惨慘憯朁穇黪黲儏澯灿燦璨粲薒謲仓仺伧倉傖凔嵢沧滄濸獊舱艙苍蒼螥鶬鸧欌藏鑶賶撡操糙嘈嶆慒曹曺槽漕艚蓸螬褿鏪愺懆艸草騲肏襙鄵鼜侧側冊册厕厠夨廁恻惻憡拺敇测測畟笧策筞筴箣簎粣荝萗萴蓛嵾篸埁岑涔笒噌层層嶒曽曾竲驓蹭偛叉嗏扠挿插揷杈疀臿艖銟鍤锸餷馇垞察嵖搽查査槎檫猹碴秅茬茶詧靫蹅鑔镲侘刹剎奼姹岔差汊紁衩詫诧拆肞芆釵钗侪儕喍柴犲祡豺茝囆瘥虿蠆袃訍幨掺搀摻攙梴裧襜覘觇辿鋓儃儳劖嚵壥婵嬋孱巉廛棎欃毚湹潹潺澶瀍瀺煘獑磛禅緾纏纒缠艬苂蝉螹蟐蟬蟾誗讒谗躔鄽酁鋋鑱镵饞馋丳产冁刬剗剷囅嵼幝摌斺旵浐滻灛燀產産簅繟蒇蕆諂譂讇谄醦鏟铲閳闡阐骣忏懴懺摲硟羼韂顫颤伥倀娼昌椙淐猖琩菖裮錩锠閶阊鯧鲳鼚仧仩偿償兏嘗嚐塲嫦尝常徜瑺瓺甞肠腸膓苌萇裳長镸长鱨鲿僘厂厰场場廠惝敞昶氅鋹倡唱怅悵暢焻玚瑒畅畼誯韔鬯弨怊抄欩窼訬超鈔钞嘲巢巣晁朝樔漅潮牊窲罺謿轈鄛鼂鼌吵巐炒焣煼眧麨仦仯耖觘伡俥唓砗硨莗蛼車车偖扯撦勶坼屮彻徹掣撤澈烢爡瞮硩聅迠頙嗔抻捵棽琛瞋諃謓賝郴塵宸尘忱愖敐敶晨曟栕桭梣樄沉煁瘎臣茞莀莐蔯薼螴訦諶谌軙辰迧鈂陈陳霃鷐麎墋夦硶碜磣贂趻踸鍖儭嚫榇櫬疢衬襯讖谶趁趂齓齔龀偁僜憆摚撐撑晿柽棦橕檉泟浾爯牚琤瞠碀称稱穪竀緽罉蛏蟶赪赬鏿鐣阷靗頳饓丞乗乘呈城埕堘塍塖娍宬峸惩憕懲成承挰掁揨朾枨棖椉橙檙洆溗澂澄瀓珵珹畻程窚筬絾脭荿裎誠诚郕酲鋮铖騬鯎侱庱徎悜睈逞騁骋秤吃哧喫嗤噄妛媸彨彲摛攡殦瓻痴癡眵瞝笞粚絺胵蚩螭訵誺魑鴟鵄鸱黐齝匙墀弛持池漦竾筂箎篪茌荎蚳謘貾赿踟迟迡遅遟遲鍉馳驰伬侈卶叺呎垑尺恥欼歯耻肔胣蚇袲袳裭褫豉鉹齒齿侙傺勅勑叱啻彳恜慗憏懘抶敕斥杘湁灻炽烾熾痸瘛翄翅翤翨腟赤趩遫鉓銐雴飭饬鶒鷘麶充冲嘃忡憃憧摏沖浺珫罿翀舂艟茺衝蹖崇崈漴爞緟虫蝩蟲褈隀埫宠寵揰銃铳抽搊犨犫瘳篘紬仇俦儔嬦帱幬惆愁懤栦梼椆檮燽畴疇皗稠筹籌絒綢绸菗薵裯詶讎讐踌躊酧酬醻雔雠雦丑丒偢吜杽瞅矁醜魗殠臭臰遚鮘出初岀摴榋樗貙齣刍厨媰幮廚橱櫉櫥滁犓篨耡芻蒢蒭蜍蟵豠趎蹰躇躕鉏鋤锄除雏雛鶵储儲杵椘楚楮檚濋璴础礎禇處齭齼亍俶傗儊処埱处怵憷搐敊斶欪歜泏滀珿畜矗竌竐絀绌臅触觸諔豖鄐閦黜搋膗揣膪踹巛川氚瑏穿传傳剶圌暷椽篅舡舩船輲遄僢喘堾歂舛荈踳串汌猭玔賗釧钏鶨刅摐牎牕疮瘡窓窗窻噇幢床牀傸磢闖闯创刱剏剙創怆愴吹炊龡倕垂埀捶搥桘棰槌箠腄菙錘鎚锤陲顀媋旾春暙杶椿槆橁櫄瑃箺萅蝽輴鰆鶞唇浱淳湻滣漘犉純纯脣莼蒓蓴醇醕錞陙鯙鶉鹑偆惷睶萶蠢賰戳繛趠踔逴哾啜嚽娕娖婥惙擉歠涰磭綽绰踀輟辍辵辶酫鑡餟齪龊偨玼疵縒蠀趀跐骴髊齹垐嬨慈柌濨珁瓷甆磁礠祠糍茨薋詞词辝辞辤辭雌飺餈鴜鶿鷀鹚佌此泚皉鮆伺佽刺刾庛朿栨次絘茦莿蛓螆賜赐匆囪囱忩怱悤暰枞棇樅樬漗潨熜瑽璁瞛篵繱聡聦聪聰苁茐葱蓯蔥蟌鍯鏓鏦騘驄骢丛从叢婃孮従徔徖從悰樷欉淙漎潀潈灇爜琮藂誴賨賩錝愡憁謥凑楱湊腠輳辏怚橻粗觕麁麄麤徂殂促噈媨憱猝瘄瘯簇縬脨蔟誎趗踧踿蹙蹴蹵醋顣鼀撺攛汆蹿躥鑹镩巑櫕欑穳殩熶爨窜竄篡簒催凗墔崔嵟慛摧榱槯磪縗缞脺鏙漼璀皠趡伜倅啐啛忰悴毳淬濢焠琗疩瘁竁粋粹紣綷翆翠脃脆膬膵臎萃襊顇村澊皴竴膥邨侟壿存拵刌忖寸籿搓撮瑳磋蹉遳醝鎈嵯嵳痤睉矬蒫蔖虘酂酇鹺鹾脞剉剒厝夎庴挫措莝莡蓌逪銼錯锉错咑哒嗒噠墶搭撘笚耷褡鎉鎝剳匒呾垯妲怛溚炟燵畗畣瘩笪答羍荅荙薘蟽詚跶达迏迖迚逹達鐽靼鞑韃龖龘打亣大眔繨呆呔懛獃傣歹代侢叇垈埭岱帒带帯帶廗待怠戴曃柋殆瀻玳瑇甙簤紿緿绐艜蚮蝳袋襶貣貸贷跢蹛軑軚軩轪迨逮霴靆鴏黛黱丹儋勯匰单単單妉媅担擔殚殫甔眈砃箪簞耼耽聃聸褝襌躭郸鄲酖頕亶伔刐抌掸撢撣玬瓭疸紞胆膽衴賧赕馾黕黵但僤唌啖啗啿嘾噉嚪帎惮憚憺旦柦氮沊泹淡澹狚疍瘅癉癚禫窞繵腅萏蓞蛋蜑觛訑誕诞贉霮餤饏駳髧鴠黮儅噹当澢珰璫當筜簹艡蟷裆襠鐺铛闣党挡擋攩欓灙譡讜谠黨凼圵垱壋婸宕愓档檔氹潒璗瓽盪瞊砀碭礑簜荡菪蕩蘯趤逿雼刀刂叨忉朷氘舠螩釖魛鱽捯倒壔导導岛島嶋嶌嶹捣搗擣槝祷禂禱蹈陦隝隯到噵悼椡檤焘燾瓙盗盜稲稻纛翢翿艔菿衜衟軇辺道嘚得徳德恴悳惪棏淂鍀锝的扥扽噔嬁灯燈璒登竳簦艠豋蹬戥等凳墱嶝櫈瞪磴覴邓鄧鐙镫隥仾低啲埞堤奃岻彽樀氐滴磾秪羝袛趆隄鞮唙啇嘀嚁嫡廸敌敵梑涤滌狄笛籴糴翟苖荻蔋蔐藡覿觌豴蹢迪鏑镝靮頔馰髢鸐厎呧坘坻底弤抵拞掋柢牴砥聜菧觝詆诋軧邸阺骶鯳俤偙僀地坔埅埊墑墬娣媂嶳帝弟怟慸摕旳杕枤梊棣楴焍玓珶甋眱睇碲祶禘第締缔腣苐菂蒂蔕蝃蝭螮諦谛踶递逓遆遞遰釱鉪嗲傎厧嵮巅巓巔掂攧敁槇槙滇瘨癫癲蹎顚顛颠齻典嚸奌婰敟椣点碘蒧蕇跕踮點佃坫垫墊壂奠婝店惦扂橂殿淀澱玷琔电甸癜磹簟蜔鈿钿阽電靛驔凋刁刟叼奝弴彫汈琱瞗碉簓虭蛁貂錭雕鮉鯛鲷鳭鵰鼦屌扚伄吊弔掉瘹盄窎窵竨蓧藋訋調釣鈟銚銱鋽鑃钓铞铫雿魡爹褺跌叠咥喋垤堞峌嵽幉恎惵戜挕昳曡楪殜氎牃牒瓞畳疂疉疊眣眰碟絰绖耊耋胅臷艓苵蜨蝶螲褋詄諜谍趃跮蹀迭镻鰈鲽鴩哋丁仃叮帄玎疔盯耵虰酊釘钉靪奵嵿濎艼薡鐤頂顶鼎鼑啶定忊椗矴碇碠磸聢腚萣蝊訂订錠锭顁飣饤丟丢銩铥东倲冬咚埬娻岽崠崬徚昸東氡氭涷笗苳菄蝀鮗鯟鶇鶫鸫鼕嬞懂箽董蕫諌侗働冻凍动動垌姛恫戙挏栋棟洞湩硐胨胴腖迵霘駧兜兠吺唗枓橷篼蔸都唞乧抖蚪鈄钭阧陡吋斗斣梪毭浢痘窦竇脰荳豆逗郖酘閗闘餖饾鬥鬦鬪鬬鬭剢厾嘟督醏闍阇凟匵嬻椟櫝殰毒涜渎瀆牍牘犊犢独獨瓄皾裻読讀讟读豄贕錖鑟韇韣韥騳髑黩黷堵琽睹笃篤覩賭赌妒妬度杜殬渡秺肚芏荰螙蠧蠹鍍镀靯偳媏端耑褍鍴短塅断斷椴段毈煅瑖碫簖籪緞缎腶葮躖鍛锻垖堆塠痽磓鐓鐜镦鴭頧兊兌兑对対對怼憝憞懟濧瀩碓祋綐薱譈譵轛队陮隊吨噸墩墪惇撉撴敦犜獤礅蜳蹲蹾驐盹趸躉伅庉沌潡炖燉盾砘碷踲逇遁遯鈍钝頓顿剟咄哆嚉多夛掇敠敪毲畓裰凙剫喥夺奪敓敚痥踱鈬鐸铎亸哚嚲垛垜埵奲崜挆朵朶椯綞缍趓躱躲軃鬌刴剁堕墮墯尮惰憜挅柮桗舵跥跺陊陏飿饳鵽妸妿娿婀屙俄吪囮娥峉峨峩涐珴皒睋磀莪蛾訛誐譌讹迗鈋鋨锇頟額额魤鵝鵞鹅噁枙砨頋騀鵈偔僫匎卾厄呃呝咢咹噩垩堊堨堮姶岋崿廅恶悪惡愕戹扼搤搹擜櫮歞歺湂琧砈砐硆礘腭苊萼蕚蚅蝁覨諤讍谔豟軛軶轭遌遏遻鄂鈪鍔鑩锷閼阏阨阸頞顎颚餓餩饿鰐鰪鱷鳄鶚鹗齃齶誒诶欸奀恩煾蒽峎嗯摁侕儿児兒唲峏栭洏粫而耏聏胹荋袻輀轜陑隭髵鮞鲕鴯鸸尒尓尔栮毦洱爾珥耳薾衈趰迩邇鉺铒餌饵駬二佴刵咡弍弐樲誀貮貳贰髶冹发彂沷発發乏伐傠坺垡墢姂栰橃浌疺瞂笩筏罚罰罸茷藅閥阀佱峜法灋砝鍅珐琺蕟髪髮勫噃嬏帆幡忛憣旙旛畨番籓繙翻藩轓颿飜鱕凡凢凣匥墦杋柉棥樊瀿烦煩燔璠矾礬笲籵緐繁羳膰舤舧蕃薠蘩蠜襎蹯釩鐇鐢钒鷭仮反払橎返奿嬎梵氾汎泛滼瀪犯畈盕笵範范訉販贩軓軬輽飯飰饭匚坊堏方枋汸淓牥芳蚄趽邡鈁錺钫鴋妨房肪防魴鲂仿倣旊昉昘瓬眆紡纺舫訪访髣鶭放啡妃婓婔扉暃渄猆緋绯菲蜚裶霏非靟飛飝飞餥馡騑騛鯡鲱淝肥腓蜰匪奜悱斐朏棐榧篚翡胐蕜誹诽俷剕厞吠屝废廃廢昲曊杮櫠沸濷狒疿痱癈肺胇芾萉蟦費费鐨镄陫靅鼣分吩帉昐朆梤棻氛竕紛纷翂芬衯訜躮酚鈖雰餴饙馚坟墳妢岎幩朌枌棼橨汾濆炃焚燌燓獖羒羵蒶蕡蚠蚡豮豶轒鐼隫馩魵黂鼖鼢粉黺份偾僨奋奮弅忿愤憤瀵瞓秎粪糞膹鱝鲼丰仹偑僼凨凬凮堼妦寷封峯峰崶枫桻楓檒沣沨渢灃烽犎猦琒疯瘋盽砜碸篈葑蘴蜂蠭豐鄷酆鋒鎽鏠锋霻靊風飌风麷冯堸夆摓浲溄漨綘縫缝艂逢馮唪覂諷讽俸凤奉湗焨煈賵赗鳯鳳鴌覅仏佛坲梻紑否妚殕缶缹缻雬鴀伕呋夫妋姇娐孵尃怤懯敷旉柎玞砆稃筟粰糐紨綒肤胕膚荂荴衭趺跗邞鄜酜鈇鳺麩麬麱麸乀伏俘凫刜匐咈哹垘孚岪巿帗幅幞弗怫扶拂服枎柫栿桴棴榑氟泭洑浮涪澓炥烰玸琈甶畉畐癁砩祓福稪符笰箙紱紼絥綍绂绋罘罦翇艀艴芙芣苻茀茯莩菔葍虙蚨蜉蝠袚袱襆襥諨豧踾輻辐郛鉘鉜韍韨颫髴鮄鮲鳧鳬鴔鵩鶝黻乶俌俛俯呒嘸府弣抚拊捬撫斧椨滏焤甫盙簠脯腐腑蜅輔辅郙釜釡阝頫鬴黼付偩傅冨副咐坿复妇婏婦媍嬔富峊彿復椱父祔禣秿竎緮縛缚腹萯蕧蚥蚹蛗蝜蝮袝複褔覄覆訃詂讣負賦賻负赋赙赴輹鍑鍢阜附馥駙驸鮒鰒鲋鳆嘎嘠旮噶尜釓錷钆尕玍尬魀侅垓姟峐晐畡祴絯荄該该豥賅賌赅郂陔忋改絠丐乢匃匄戤摡概槩槪溉漑瓂盖葢蓋鈣钙凲坩尲尴尶尷干忓攼杆柑泔漧玕甘疳矸竿筸粓肝苷迀酐魐鳱仠感擀敢桿橄澉澸皯秆稈簳芉衦赶趕鱤鳡倝凎幹旰榦檊汵淦灨盰紺绀詌贑贛赣骭冈冮刚剛堈堽岡掆摃棡牨犅疘矼綱纲缸罁罡肛釭鋼鎠钢岗崗港戅戆戇杠槓焵焹筻槔槹橰櫜皋皐睾篙糕羔膏臯韟餻高髙鷎鷱鼛夰搞杲槀槁檺稁稾稿縞缟菒藁藳鎬镐勂吿告峼祮祰禞筶誥诰郜鋯锆割哥圪彁戈戓戨搁擱歌滒牫犵疙肐胳袼謌鎶饹鴚鴿鸽佫佮匌呄嗝塥愅挌搿敋格槅櫊滆獦膈臵葛蛒蛤裓觡諽輵轕鎘镉閣阁隔革鞈鞷韐韚騔骼鬲鮯哿嗰笴舸个亇個各箇茖虼鉻铬給给根跟哏亘亙揯搄艮茛刯庚椩浭焿畊絚緪縆羮羹耕菮賡赓鶊鹒哽埂峺挭梗綆绠耿莄郠骾鯁鲠堩更侊公功匑匔厷塨宫宮工幊弓恭愩慐攻杛碽篢糼糿肱蚣觥觵躬躳髸龏龔龚巩廾拱拲栱汞珙輁鞏供共唝嗊熕貢贡佝勾沟溝痀篝簼緱缑芶袧褠鈎鉤钩鞲韝岣枸狗玽笱耇耈耉苟蚼豿冓啂坸垢够夠姤媾彀搆撀构構煹覯觏訽詬诟購购遘雊估咕唂唃姑嫴孤巬巭杚柧橭沽泒稒笟箍箛篐罛苽菇菰蓇蛄觚軱軲轱辜酤鈲鮕鴣鸪傦古啒嘏夃尳愲扢榖毂汩淈濲瀔牯皷皼盬瞽穀糓縎罟羖股脵臌薣蛊蠱詁诂谷轂逧鈷钴餶馉骨鶻鹘鼓鼔僱凅固堌崓崮故梏棝榾牿痼祻錮锢雇顧顾鯝鲴刮劀呱栝桰歄煱瓜緺胍趏踻颪颳騧鴰鸹冎剐剮叧寡卦啩坬挂掛絓罣褂詿诖乖叏拐枴柺箉罫夬怪恠倌关官棺涫瘝癏窤蒄覌観觀观関闗關鰥鱞鳏琯璭痯筦管舘輨錧館馆鳤丱冠卝悹悺惯慣掼摜樌欟毌泴潅灌爟瓘盥矔礶祼罆罐貫贯躀遦鏆鑵雚鱹鸛鹳僙光咣垙姯桄洸灮炗炚炛烡珖胱茪輄銧黆广広廣犷獷臩俇臦逛亀圭妫媯嫢嬀嶲巂帰廆归摫椝槻槼櫷歸珪瑰璝瓌皈瞡硅胿茥蘬袿規规邽郌閨闺雟騩鬶鬹鮭鲑龜龟佹匦匭厬垝姽宄庋庪恑攱晷氿湀癸祪簋蛫蟡觤詭诡軌轨陒鬼刽刿劊劌撌攰昋柜桂桧椢槶樻檜櫃猤癐眭瞆瞶禬筀蓕螝襘貴贵跪鐀鑎鞼鱖鱥鳜丨惃滚滾磙緄緷绲蓘蔉衮袞輥辊鮌鯀鲧棍睔謴啯嘓埚堝墎崞彉彍懖楇濄猓瘑聒蝈蟈郭鈛鍋锅囯囶囻国圀國帼幗慖掴摑漍簂聝腘膕蔮虢馘惈果椁槨淉粿綶菓蜾裹褁輠餜馃腂过過鐹哈紦鉿铪咍嗨孩还骸塰海烸胲酼醢亥嗐妎害氦餀饚駭駴骇佄哻嫨憨犴蚶谽酣頇顸馠魽鼾函凾含唅圅娢寒崡嵅晗梒浛涵澏焓琀甝筨虷蜬邗邯鋡韓韩丆喊浫罕豃傼厈垾屽悍憾扞捍撖撼旱晘暵汉汗涆漢瀚焊熯猂皔睅翰莟菡蔊蛿蜭螒譀輚釬銲鋎閈闬雗頷顄颔馯駻鶾兯爳夯吭垳斻杭笐筕絎绗航苀蚢裄貥迒頏颃魧沆嚆茠蒿薅薧乚儫嗥嘷噑嚎壕椃毜毫濠獆獋獔竓籇蚝蠔譹豪好郝侴傐号哠恏悎昊昦晧暠暤暭曍浩淏滈澔灏灝皓皜皞皡皥秏耗聕薃號鄗顥颢鰝呵喝嗬抲欱蠚訶诃何劾合咊和啝姀峆惒敆曷朅柇核楁毼河涸渮澕熆狢皬盇盉盍盒礉禾篕籺粭紇纥翮荷菏萂螛覈訸詥貈貉郃釛鉌鑉閡閤闔阂阖鞨頜颌餄饸魺鲄鶡鹖麧齕龁龢哬嗃嚇垎壑寉焃煂熇燺爀癋碋翯袔褐謞賀贺赫靍靎靏鶮鶴鸖鹤嘿潶黑黒拫痕鞎佷很狠詪恨亨哼悙涥脝姮恆恒撗桁横橫烆珩胻蘅衡鑅鴴鵆鸻啈叿呍哄嚝揈渹灴烘焢硡薨訇谾軣輷轟轰鍧仜吰垬妅娂宏宖屸弘彋汯沗泓洪浤渱潂玒玜硔竑竤篊粠紅紘紭綋红纮羾翃翝耾苰荭葒葓虹谹谼鈜鉷鋐閎闳霐霟鞃魟鴻鸿黉黌晎撔澒蕻訌讧銾閧闀闂鬨齁侯喉帿猴瘊睺矦篌糇翭翵葔鄇銗鍭餱骺鯸吼吽犼候厚后垕堠後洉茩豞逅郈鮜鱟鲎鲘乎乯匢匫呼唿嘑垀寣幠忽恗惚昒曶歑泘淴滹烀糊膴苸虍虖謼軤轷雐雽喖嘝囫壶壷壺媩弧抇搰斛楜槲湖瀫焀煳狐猢瑚瓳箶絗縠胡葫蔛蝴螜衚觳醐鍸隺頶餬鬍魱鰗鵠鶘鶦鹄鹕乕俿唬汻浒滸琥萀虎虝錿鯱互冱嗀嚛婟嫭嫮岵帍弖怘怙戶户戸戽扈护摢昈枑槴沍沪滬熩瓠祜笏簄粐綔芐蔰護豰鄠鍙頀鱯鳠鳸鸌鹱埖婲椛硴糀花蒊蘤誮錵划劃华呚哗嘩姡搳撶滑猾磆華蕐螖譁釪釫鋘鏵铧驊骅鷨化夻婳嫿嬅崋摦杹枠桦槬樺澅画畫畵繣舙觟話諙諣譮话黊徊怀懐懷槐櫰淮瀤耲蘹褢褱踝咶坏壊壞蘾孉懽欢歓歡犿獾讙貛酄驩鴅鵍圜堚嬛寏寰峘桓洹澴狟獂环環瓛糫絙綄繯缳羦荁萈萑豲貆還鍰鐶锾镮闤阛雈鬟鹮睆緩缓唤喚喛嚾奂奐宦嵈幻患愌换換擐攌梙槵浣涣渙漶澣烉焕煥瑍痪瘓肒藧豢轘逭鯇鯶鰀鲩塃宺巟慌朚肓荒衁偟凰喤堭墴媓崲徨惶揘楻湟潢煌熿獚瑝璜癀皇磺穔篁簧艎葟蝗蟥諻趪遑鍠鐄锽隍韹餭騜鰉鱑鳇鷬黃黄兤奛幌怳恍晃晄櫎炾熀縨詤謊谎愰曂榥滉皝皩鎤咴噅噕婎媈幑徽恢拻挥揮撝晖暉楎洃瀈灰灳烣煇睢睳禈翚翬蘳袆褘詼诙豗輝辉隓隳鰴麾佪囘回囬廻廽恛洄烠痐茴蚘蛔蛕蜖迴逥鮰悔檓毀毁毇燬虺譭会僡儶匯卉喙嘒嚖圚嬒寭屶屷彗彙彚徻恚恵惠慧憓懳晦暳會槥橞檅櫘汇泋湏滙潓濊烩燴獩璤璯瘣瞺秽穢篲絵繢繪绘缋翙翽芔荟蔧蕙薈薉藱蟪詯誨諱譓譿讳诲賄贿鏸鐬闠阓靧頮顪颒餯婚惛昏昬棔殙涽睧睯荤葷蔒轋閽阍忶浑渾珲琿餛馄魂鼲俒倱圂婫尡慁掍混溷焝睴觨諢诨劐吙攉秴耠豁騞佸活秮秳伙夥漷火灬煷邩鈥钬俰剨咟喐嚄嚯嚿奯彟彠惑或捇掝擭旤曤檴沎湱濩瀖獲癨眓矆矐祸禍穫窢耯臛艧获蒦藿蠖謋貨货鍃鑊锪镬閄雘霍靃韄乩僟击刉刏剞叽咭唧喞嗘嘰圾基墼姬屐嵆嵇撃擊朞机枅槣樭機櫅毄激犄玑璣畸畿癪矶磯禨积稘稽積笄筓箕簊綨緁緝缉羁羇羈耭肌芨虀覉覊觭譏譤讥賫賷赍跻踑躋躸銈錤鐖鑇鑙隮雞鞿韲飢饑饥魕鳮鶏鶺鷄鸄鸡鹡齏齑亟亼亽伋佶偮卙即卽及叝吉堲塉姞嫉岌嶯彶忣急愱戢揤极棘楖楫極槉檝殛汲湒潗濈焏疾瘠皀皍磼笈箿籍級级耤膌艥蒺蕀蕺蝍螏襋觙谻趌踖蹐躤輯轚辑郆銡鍓鏶集雧霵齎丮几妀嵴己幾戟挤掎撠擠橶泲犱穖脊虮蟣魢鱾麂伎偈兾冀剂剤劑勣哜嚌坖垍塈妓季寂寄廭彐彑徛忌悸惎懻技旡既旣暨暩曁梞檕檵洎济済漃漈濟瀱璾痵癠祭禝稩稷穄穊穧紀紒継績繋繼纪继绩罽臮芰茍茤荠葪蓟蔇薊薺蘎蘮蘻裚襀覬觊計記誋諅计记跡跽蹟迹际際霁霽驥骥髻鬾魝魥鯚鯽鰶鰿鱀鱭鲚鲫鵋鷑齌乫伽佳傢加嘉家徍抸拁枷梜毠泇浃浹犌猳珈痂笳糘耞腵葭袈豭貑跏迦鉫鎵镓鴐麚唊圿夹夾忦恝戛戞扴脥荚莢蛱蛺袷裌郏郟鋏铗頬頰颊鴶鵊假叚婽岬徦斚斝椵榎槚檟玾甲瘕胛賈贾鉀钾价價嫁幏架榢稼駕驾兼冿囏坚堅奸姦姧尖幵惤戋戔搛椷椾樫櫼歼殱殲湔瀐瀸煎熞熸牋犍猏玪瑊监監睷碊礛礷笺箋緘縑缄缣肩艰艱菅菺葌蒹蔪蕑蕳虃譼豜豣鋻鑯間间雃靬鞯韀韉餰馢鰔鰜鰹鲣鳒鳽鵑鵳鶼鹣麉俭倹儉减剪囝堿帴弿彅戩戬拣挸捡揀揃撿暕枧柬梘检検檢減湕瀽瑐睑瞼硷碱礆笕筧简篯簡籛絸繭翦茧藆蠒裥襇襉襺詃謇謭譾谫趼蹇鐗鐧锏鬋鰎鹸鹻鹼件俴健僭剑剣剱劍劎劒劔墹寋建徤擶旔栫楗榗槛檻毽洊涧渐溅漸澗濺瀳牮珔瞷磵礀箭糋繝腱臶舰艦荐薦袸見覵覸见諓諫譛谏賎賤贱趝跈践踐踺轞鉴鍳鍵鏩鐱鑑鑒鑬鑳键鞬餞饯僵壃姜将將摪橿殭江浆漿畕畺疅疆礓繮缰翞茳葁薑螀螿豇韁鱂鳉傋塂奖奨奬桨槳獎耩膙蒋蔣講讲顜勥匞匠夅嵹弜弶摾櫤洚滰犟糡糨絳绛謽酱醤醬降交僬姣娇嬌峧嶕嶣憍椒浇澆焦燋礁穚簥胶膠膲艽茭茮蕉虠蛟蟭跤轇郊鐎驕骄鮫鲛鵁鷦鷮鹪嚼佼侥僥儌剿劋勦孂徺徼憿挢捁搅摷撟撹攪敫敽敿晈暞曒灚烄煍燞狡璬皎皦矫矯笅筊絞繳纐绞缴脚腳臫蟜角譑賋踋鉸铰餃饺鱎龣叫呌嘂嘄嘦噍噭嬓嶠挍敎教斠滘漖潐獥珓皭窌窖藠訆譥趭較轎轿较酵醮釂喈喼嗟堦媘嫅接掲揭擑椄楬湝煯疖痎癤皆秸稭脻菨蝔街謯阶階鞂鶛倢偼傑刦刧刼劫劼卩卪婕媫孑尐岊崨嵥嶻巀幯截拮捷掶搩擮昅杢杰桀桔桝楶榤洁滐潔狤疌睫碣礍竭節結结羯节莭蓵蛣蜐蠘蠞蠽衱袺訐詰誱讦诘跲踕迼鉣鍻镼鞊頡颉鮚鲒姐媎檞毑解觧飷丯介借吤唶堺屆届岕庎徣悈戒楐犗玠琾界畍疥砎芥藉蚧蛶衸褯誡诫鎅骱魪今仐堇堻巾惍斤津珒琎琻璡矜矝砛禁筋紟荕衿襟觔金釒釿钅鹶黅仅侭僅儘卺厪嫤巹廑慬槿漌瑾紧緊菫蓳謹谨錦锦饉馑伒僸凚劤劲勁唫噤嚍墐壗妗嬧尽搢晉晋枃歏殣浕浸溍濅濜烬煡燼瑨璶盡祲縉缙荩藎覲觐賮贐赆近进進靳齽京亰兢坕坙婛巠惊旌旍晶橸泾涇猄睛秔稉粳精経經綡经聙腈茎荆荊菁葏驚鯨鲸鶁鶄麖麠鼱丼井儆刭剄坓宑幜憬憼景暻殌汫汬澋璄璟璥穽肼蟼警阱頚頸颈俓傹净凈境妌婙婧弪弳径徑敬曔桱梷浄淨瀞獍痉痙竞竟竧竫競竸胫脛莖誩踁迳逕鏡镜靓靖静靚靜鵛冂冋坰埛扃絅蘏蘔駉駫侰僒冏囧泂浻澃炅炯烱煚煛熲燛窘綗褧迥逈顈颎丩勼啾揂揪揫摎朻樛牞究糺糾纠萛赳阄鬏鬮鳩鸠久乆九乣奺杦汣灸玖紤舏酒镹韭韮倃僦匓匛匶厩咎就廄廏廐慦捄救旧柩柾桕欍殧疚臼舅舊鯦鷲鹫麔齨凥匊娵婮居岨崌抅拘掬梮椐檋毩毱泃涺狙琚疽眗砠罝腒艍苴蜛裾諊跔跙踘躹鋦锔陱雎鞠鞫駒驹鮈鴡鶋侷啹婅局巈挶椈橘泦淗湨焗犑狊粷繘菊蘜趜跼蹫輂郹閰駶驧鵙鵴鶪鼰鼳举咀弆挙擧椇榉榘櫸欅沮矩筥聥舉莒蒟襷踽齟龃乬俱倨倶具剧劇勮句埧埾壉姖寠屦屨岠巨巪怇惧愳懅懼拒拠据據昛歫洰澽炬烥犋秬窭窶簴粔耟聚苣虡蚷袓詎讵豦貗距踞躆遽邭醵鉅鋸鐻钜锯颶飓駏鮔勬姢娟捐朘涓焆脧蠲裐鋑鎸鐫镌鹃卷呟埍巻捲臇菤錈锩倦劵勌奆婘帣弮惓慻桊淃狷獧瓹眷睊睠絭絹绢罥羂腃蔨讂鄄餋噘屩屫撅撧亅决刔劂匷厥噊噱孒孓崛崫嶡嶥弡彏憠憰戄抉挗捔掘攫斍桷橛橜櫭欮氒決泬灍焳熦爑爝爴爵獗玃玦玨珏瑴疦瘚矍矡砄絕絶绝臄芵蕝蕨虳蚗蟨蟩覐覚覺觉觖觮觼訣譎诀谲貜赽趉趹蹶蹷躩鈌鐍鐝钁镢駃鴂鴃鷢倔军君均桾汮皲皸皹碅莙菌蚐袀覠軍鈞銁銞鍕钧頵鮶鲪麇麏麕俊儁呁埈寯峻懏捃攈攟晙棞浚濬燇珺畯竣箘箟葰蜠賐郡陖隽雋餕馂駿骏鵔鵕鵘咖喀佧卡咔咯垰胩裃鉲奒开揩鐦锎開凯凱剀剴嘅垲塏嵦恺愷慨暟楷蒈輆鍇鎧铠锴闓闿颽勓忾愾欬炌烗鎎刊勘堪嵁戡栞龕龛侃偘冚凵坎惂欿歁砍竷莰輡轗顑墈崁看瞰矙磡衎闞阚鬫嫝嵻康忼慷槺漮砊穅粇糠躿鏮閌鱇扛亢伉匟囥抗炕犺邟鈧钪闶尻嵪髛丂拷攷栲洘烤考犒銬铐靠鮳鯌鲓匼嗑嵙搕柯棵榼樖牁牱犐珂疴痾瞌砢磕礚科稞窠苛萪薖蚵蝌趷軻轲醘鈳钶頦顆颏颗髁咳壳揢殻殼翗可坷岢嵑嶱敤渇渴炣克刻勀勊堁娔客尅峇恪愘愙氪溘碦礊緙缂艐衉課课錁锞騍骒剋啃垦墾恳懇肎肯肻豤貇錹掯硍裉褃劥坑妔挳摼牼硁硜硻誙銵鍞鏗铿阬倥埪崆悾涳硿空箜躻錓鵼孔恐控鞚剾彄抠摳眍瞘芤劶口冦叩宼寇怐扣敂滱瞉窛筘簆蔲蔻釦鷇刳哭圐堀枯桍矻窟跍郀骷鮬楛狜苦俈喾嚳库庫廤焅瘔秙絝绔袴裤褲酷咵夸姱舿誇侉垮銙挎胯趶跨骻擓蒯侩儈凷哙噲圦块塊墤巜廥快旝欳浍澮狯獪筷糩脍膾郐鄶鱠鲙宽寛寬臗鑧髋髖梡欵款歀窽窾劻匡匩哐恇洭硄筐筺誆诓軭邼忹抂狂狅誑诳軖軠鵟儣夼懭况圹壙岲懬旷昿曠框況爌眖眶矌矿砿礦穬絋絖纊纩貺贶軦邝鄺鉱鋛鑛黋亏刲岿巋悝盔窥窺聧虧闚顝喹夔奎巙戣揆晆暌楏楑櫆犪睽葵藈蘷虁蝰躨逵鄈鍨鍷頯馗騤骙魁傀煃磈跬蹞頍匮匱喟嘳媿嬇尯愦愧憒殨溃潰篑簣籄聩聭聵膭蒉蕢謉餽饋馈坤堃堒崐崑昆晜潉焜熴猑琨瑻菎蜫裈裩褌醌錕锟騉髠髡髨鯤鲲鵾鶤鹍壸壼悃捆梱硱祵稇稛綑裍閫閸阃困涃睏廓扩拡括挄擴濶筈萿葀蛞闊阔霩鞟鞹韕頢髺鬠啦垃拉搚柆菈邋嚹旯磖喇藞剌揦揧攋楋櫴溂爉瓎瘌翋腊臈臘蜡蝋蝲蠟辢辣鑞镴鬎鯻鞡來俫倈婡崃崍庲徕徠来梾棶涞淶猍琜筙箂莱萊逨郲錸铼騋鯠鶆麳襰唻濑瀨瀬癞癩睐睞籁籟藾賚賴赉赖頼顂鵣儖兰啉囒婪岚嵐幱惏懢拦攔斓斕栏欄欗澜瀾灆灡燣燷璼篮籃籣繿葻蓝藍蘫蘭褴襕襤襴襽譋讕谰躝鑭镧闌阑韊壈嬾孄孏懒懶揽擥攬榄欖浨漤灠爦纜缆罱覧覽览醂顲嚂滥濫烂燗爁爛爤瓓糷钄啷勆嫏廊斏桹榔樃欴狼琅瑯硠稂筤艆蓈蜋螂躴郎郒郞鋃鎯锒塱崀朖朗朤烺蓢誏埌浪莨蒗閬阆捞撈粩僗劳労勞哰崂嶗憥朥浶牢痨癆磱窂簩蟧醪鐒铹顟髝佬咾姥恅栳潦狫珯硓老耂荖蛯轑銠铑鮱唠嗠嘮嫪憦橯涝澇烙耢耮躼軂酪乐仂勒叻忇扐楽樂氻泐玏砳竻簕艻阞韷餎鰳鱳鳓了儽嫘擂攂樏檑櫑欙瓃畾礌礧累縲纍纝缧罍羸蔂蘲虆轠鐳鑘镭雷靁鱩鼺傫儡厽垒塁壘壨櫐洡灅癗矋磊磥礨絫耒蕌蕾藟蘽蠝誄讄诔鑸鸓泪涙淚禷类纇肋蘱酹銇錑頛頪類颣嘞唥塄棱楞碐稜薐冷倰堎愣睖踜刕剓剺劙厘喱嚟囄嫠孷廲悡斄梨梸棃樆漓灕犁犂狸琍璃瓈盠睝离穲竰筣篱籬糎縭纚缡罹艃荲菞蓠蔾藜蘺蟍蟸蠫褵謧貍邌醨釐鋫錅鏫鑗離驪骊鯏鯬鱺鲡鵹鸝鹂黎黧俚娌峛峢峲李欚浬澧理礼禮粴蠡裏裡豊逦邐醴里鋰锂鯉鱧鱱鲤鳢丽例俐俪傈儮儷凓利力励勵历厉厤厯厲叓吏呖唎唳嚦囇坜塛壢娳婯孋屴岦巁悧悷慄戾搮擽攊攦攭暦曆曞朸枥栃栎栗栛棙檪櫔櫟櫪欐歴歷沥沴浰涖溧濿瀝爄爏犡猁珕瑮瓅瓑瓥疠疬痢癘癧皪盭睙砅砬砺砾磿礪礫礰禲秝立笠篥粒粝糲綟脷苈苙茘荔莅莉蒚蒞藶蚸蛎蛠蜊蜧蝷蠇蠣觻詈讈赲跞躒轢轣轹郦酈鉝隶隷隸雳靂靋鬁鳨鴗鷅麗麜哩亷劆匲匳嗹噒奁奩嫾帘廉怜慩憐梿槤櫣涟溓漣濂濓瀮熑燫磏簾籢籨縺翴联聨聫聮聯臁莲蓮薕螊蠊裢褳覝謰蹥连連鎌鐮镰鬑鰱鲢嬚摙敛斂歛琏璉羷脸臉蔹蘝蘞裣襝鄻僆堜媡恋戀楝殓殮湅潋澰瀲炼煉瑓練纞练萰錬鍊鏈链鰊俍凉墚梁椋樑涼粮粱糧良踉輬辌駺両两俩倆兩唡啢掚緉脼蜽裲魉魎亮倞哴喨悢晾湸諒谅輌輛辆量鍄撩蹽僚嘹嫽寥寮尞屪嵺嶚嶛廫憀敹暸橑漻燎爎爒獠璙疗療竂簝繚缭聊膋膫藔蟟豂賿蹘辽遼飉髎鷯鹩憭曢瞭蓼鄝釕钌镽尥尦廖撂料炓窷鐐镣咧挘毟儠冽列劣劽哷埒埓姴巤挒捩擸栵洌浖烈烮煭犣猎猟獵聗脟茢蛚裂趔躐迾颲鬛鬣鮤鱲鴷拎临冧厸壣崊嶙斴晽暽林淋潾瀶燐獜琳璘疄瞵碄磷箖粦粼綝繗翷臨轔辚遴邻鄰鏻阾隣霖驎鱗鳞麐麟亃僯凛凜廩廪懍懔撛檁檩澟癛癝菻吝恡悋橉焛甐膦蔺藺賃赁蹸躏躙躪轥閵〇伶凌刢呤囹坽夌姈婈孁崚彾掕昤朎柃棂櫺欞泠淩澪灵燯爧狑玲琌瓴皊砱祾秢竛笭紷綾绫羐羚翎聆舲苓菱蓤蔆蕶蛉衑裬詅跉軨輘酃醽鈴錂铃閝陵零霊霗霛霝駖魿鯪鲮鴒鸰鹷麢齡齢龄龗岭岺嶺袊領领令另炩蘦靈溜澑熘蹓刘劉嚠媹嵧懰斿旈旒榴橊流浏瀏琉瑠瑬璢畄留畱疁瘤癅硫磂蒥蓅藰蟉裗鎏鎦鏐鐂镏镠飀飅飗駠駵騮驑骝鰡鶹鹠麍嬼柳栁桞桺橮熮珋綹绺罶羀鋶锍六塯廇磟翏遛雡霤飂餾馏鬸鷚鹨咙嚨尨嶐巃巄昽曨朧栊槞櫳泷湰滝漋瀧爖珑瓏癃眬矓砻礱礲窿竜笼篭籠聋聾胧茏蘢蠪蠬襱豅躘鏧鑨隆霳靇驡鸗龍龒龓龙儱垄垅壟壠拢攏竉陇隴哢徿梇贚剅喽嘍娄婁廔楼樓溇漊熡瞜耧耬艛蒌蔞蝼螻謱軁遱鞻髅髏鷜塿嵝嶁搂摟甊篓簍屚漏瘘瘺瘻鏤镂陋露噜嚕撸擼謢卢嚧垆壚庐廬攎曥枦栌櫨泸瀘炉爐獹玈璷瓐盧矑籚纑罏胪臚舮舻艫芦蘆蠦轤轳鈩鑪顱颅馿髗魲鱸鲈鸕鸬黸卤塷掳擄樐橹櫓氇氌滷澛瀂硵磠穞艣艪蓾虏虜鏀鐪鑥镥魯鲁鹵侓僇剹勎勠圥坴塶娽峍廘彔录戮摝椂樚淕淥渌漉潞熝琭璐甪盝睩硉碌祿禄稑穋箓簏簬簵簶籙粶膔菉蔍蕗虂螰賂赂趢路踛蹗輅轆辂辘逯醁錄録錴鏕鏴陆陸騄騼鯥鴼鵦鵱鷺鹭鹿麓圝圞奱娈孌孪孿峦巒挛攣曫栾欒滦灓灤癴癵羉脔臠虊銮鑾鵉鸞鸾卵乱亂釠抡掄仑伦侖倫囵圇婨崘崙棆沦淪碖磮綸纶耣腀芲菕蜦踚輪轮錀陯鯩埨惀稐溣論论啰囉捋頱儸囖攞椤欏猡玀箩籮罗羅脶腡萝蘿螺覶覼逻邏鏍鑼锣镙饠騾驘骡鸁倮剆曪瘰癳臝蓏蠃裸躶峈摞泺洛洜漯濼犖珞硌硦笿絡纙络荦落詻雒駱骆鮥鵅榈櫚氀膢藘閭闾驢驴侣侶偻僂儢吕呂屡屢履慺挔捛旅梠焒祣稆穭絽縷缕膂膐褛褸郘鋁铝勴垏嵂律慮櫖氯滤濾爈率箻綠緑繂绿膟葎虑鑢圙寽掠略畧稤鋝鋢锊妈媽嫲嘛犘痲痳蔴蟆蟇麻杩溤犸獁玛瑪码碼蚂螞遤鎷馬马鰢鷌傌嘜榪睰祃禡罵閁駡骂鬕吗嗎埋薶霾买嘪荬蕒買鷶佅劢勱卖唛売脈脉衇賣迈邁霡霢麥麦顢颟姏悗慲摱樠瞒瞞蛮蠻謾谩鞔饅馒鬗鬘鰻鳗娨屘満满滿矕螨蟎襔鏋僈墁嫚幔慢曼槾漫澷熳獌縵缦蔄蔓蘰鄤鏝镘牤厖吂哤娏忙恾杗杧汒浝牻狵痝盲盳硭笀芒茫蘉蛖邙釯鋩铓駹壾漭硥茻莽莾蟒蠎猫貓堥旄枆楙毛氂渵牦犛矛罞芼茅茆蝥蟊軞酕鉾錨锚髦髳鶜乮冇卯夘峁戼昴泖笷蓩鉚铆冃冐冒媢帽愗懋暓柕毷瑁皃眊瞀耄茂萺蝐袤覒貌貿贸鄚鄮嚒嚰濹么麼麽坆堳塺媒嵋徾攗枚栂梅楣楳槑沒没湄湈煤猸玫珻瑂眉睂禖脄脢腜苺莓葿郿酶鋂鎇镅霉鶥鹛黴凂媄媺嬍嵄挴毎每浼渼燘美羙躾鎂镁黣嚜妹媚寐抺旀昧沬煝痗眛睸祙篃蝞袂跊韎鬽魅椚们們扪捫玧璊穈菛虋鍆钔門閅门悶懑懣暪焖燜闷掹擝矇蒙儚幪懞曚朦橗檬氋氓溕濛獴甍甿盟瞢矒礞艨莔萌蕄虻蝱鄳鄸霿靀顭饛鯍鸏鹲冡勐懵猛艋蜢蠓錳锰鯭鼆夢夣孟懜梦癦霥咪眯瞇冞弥彌戂擟攠瀰爢猕獼瓕祢禰糜縻蒾藌蘪蘼袮詸謎谜迷醚醾醿釄镾靡鸍麊麋麛麿侎孊弭敉沵洣渳濔灖米粎羋脒芈葞蔝銤冖冪嘧塓宓宻密峚幂幎幦怽榓樒櫁汨沕泌淧滵漞濗熐祕秘簚糸羃蔤蜜覓覔覛觅謐谧鼏婂媔嬵宀杣棉檰櫋眠矈矊矏綿緜绵臱芇蝒丏偭免冕勉勔喕娩愐汅沔渑湎澠眄睌絻緬缅腼葂靦鮸糆面靣麪麫麵麺喵媌嫹描瞄緢苗鶓鹋劰杪淼渺眇秒篎緲缈藐邈妙庙庿廟玅竗乜吀咩哶孭幭懱搣櫗滅瀎灭烕礣篾蔑薎蠛衊鑖鱴鴓垊姄岷崏怋慜捪旻旼民玟珉琘琝瑉痻盿砇碈緍緡缗罠苠鈱錉鍲鴖僶冺刡勄忞忟悯惽愍憫抿敃敏敯暋泯湣潣皿笢笽簢蠠閔閩闵闽鰵鳘黽黾冥名嫇明暝朙榠洺溟猽眀眳瞑茗蓂螟覭詺鄍銘铭鳴鸣佲凕姳慏酩命掵謬谬嚤摸劘嫫嬤嬷尛庅摩摹擵模橅磨糢膜蘑謨謩谟饃饝馍髍魔魹懡抹嗼圽塻墨妺嫼寞帓帞昩末枺歾歿殁沫漠爅獏瘼皌眜眽眿瞐瞙砞礳秣絈纆耱茉莈莫蓦藦蛨蟔貃貊貘銆鏌镆陌靺驀魩默黙哞侔劺呣恈牟眸繆缪蛑謀谋踎鍪鴾麰某毪氁亩姆峔拇母牡牳畂畆畒畝畞畮砪胟踇鉧仫凩募坶墓幕幙慔慕暮暯木楘毣沐炑牧狇目睦穆縸艒苜莯蚞鉬钼雮霂鞪嗱拏拿搻鎿镎乸哪雫吶呐妠捺笝納纳肭蒳衲袦豽貀軜那郍鈉钠靹魶孻腉乃倷奶嬭廼氖疓艿迺釢奈柰渿耐萘螚褦錼鼐囡侽南喃娚抩暔枏柟楠男畘莮諵遖难難戁揇湳煵腩萳蝻赧婻囔乪嚢囊欜蠰饢馕擃攮曩灢儾齉孬呶夒峱嶩巎怓憹挠撓猱獶獿硇碙蛲蟯詉譊鐃铙匘垴堖嫐恼悩惱瑙碯脑脳腦淖臑閙闹鬧抐疒眲訥讷呢娞脮腇餒馁鮾鯘內内氝氞錗嫩嫰恁能妮倪坭埿婗尼屔怩棿泥淣猊秜籾聣臡蚭蜺觬貎跜輗郳鈮铌霓馜鯢鲵麑齯伱伲你儗儞妳孴抳拟掜擬旎晲柅檷狔聻苨薿隬匿堄嫟嬺屰惄愵昵暱氼溺眤睨縌胒腻膩誽逆拈蔫哖姩年秊秥粘鮎鯰鲇鲶鵇黏捻撚撵攆涊淰焾碾簐蹍蹨躎輦辇卄唸埝廿念惗艌娘嬢孃酿醸釀嫋嬝嬲樢茑蔦袅裊褭鳥鸟尿脲捏揑苶啮嗫噛嚙囁囓圼孼孽嵲嶭巕帇摰敜枿槷櫱涅湼痆篞籋糱糵聂聶臬臲菍蘖蠥讘踂踗踙蹑躡錜鎳鑈鑷钀镊镍闑陧隉顳颞齧囜您脌拰儜凝咛嚀嬣宁寍寕寗寜寧擰柠橣檸狞獰甯聍聹薴鑏鬡鸋拧矃佞侫倿泞澝濘妞汼牛牜忸扭杻炄狃紐纽莥鈕钮靵侬儂农哝噥檂欁浓濃燶禯秾穠脓膿蕽襛譨農辳醲鬞繷弄挊挵癑齈羺槈檽獳耨鎒鐞伮奴孥帑笯駑驽努弩砮胬傉怒搙奻暖渜煖煗餪黁傩儺娜挪梛橠喏愞懦懧掿搦榒稬穤糑糥糯諾诺蹃逽鍩锘女籹釹钕恧朒沑衂衄婩疟瘧硸虐喔噢哦筽塸櫙欧歐殴毆熰瓯甌膒藲謳讴鏂鴎鷗鸥偶吘呕嘔耦腢蕅藕怄慪沤漚啪妑皅舥苩葩趴掱杷潖爬琶筢帊帕怕袙拍俳徘排棑牌犤猅箄簰簲輫哌沠派渒湃蒎鎃攀潘眅萠丬媻幋搫柈槃洀瀊爿盘盤磐磻縏蒰蟠跘蹒蹣鎜鞶冸判叛沜泮溿炍牉畔盼聁袢襻詊鋬鑻頖鵥乓滂胮膖雱霶厐嫎庞庬彷徬旁舽螃逄鰟鳑龎龐耪覫炐眫肨胖抛拋脬萢刨匏咆垉庖炰爮狍袍褜軳鞄麃麅跑奅泡炮疱皰砲礟礮靤麭呸怌肧胚衃醅培婄毰裴裵賠赔錇锫阫陪俖伂佩姵帔斾旆沛浿犻珮蓜轡辔配霈馷喷噴歕湓瓫盆葐呠翸剻匉嘭怦恲抨梈泙烹砰硑磞軯閛駍倗傰堋塜塳弸彭憉捀朋棚椖樥澎熢硼稝竼篣篷纄膨芃莑蓬蘕蟚蟛袶輣錋鑝韸韼騯髼鬅鬔鵬鹏捧淎皏掽椪槰碰踫丕伓伾劈噼坯岯悂憵批披抷旇枈炋狉狓砒磇礔礕秛秠紕纰翍耚豾邳釽鈚鉟銔錃錍陴霹駓髬魾啤埤壀崥枇毗毘焷琵疲皮笓篺罴羆肶脾腗膍蚍蚽蚾蜱螷蠯裨豼貔郫鈹铍阰隦魮鮍鲏鵧鼙仳匹吡噽嚭圮嶏庀擗疋痞癖脴苉諀銢鴄僻媲嫓屁揊淠潎澼甓疈稫譬辟闢鷿鸊偏囨媥楄犏篇翩鍂鶣楩胼腁賆跰蹁駢騈骈骿覑諞谝貵片騗騙骗魸剽勡嘌彯慓旚漂犥翲螵飃飄飘魒嫖瓢薸闝殍皫瞟篻縹缥醥顠僄徱票驃鰾撆撇暼氕瞥覕丿苤鐅嫳姘拚拼砏礗穦馪驞嚬娦嫔嬪玭琕矉薲蘋蠙貧贫顰频颦品榀汖牝聘乒俜娉涄甹砯聠艵頩凭凴呯坪塀屏岼帡帲幈平慿憑枰檘洴淜焩玶瓶甁竮箳簈缾胓苹荓萍蓱蚲蛢評评軿輧郱鮃鲆屛坡岥泼溌潑酦醗醱釙鏺钋頗颇嘙嚩婆櫇皤蔢鄱叵尀笸箥鉕钷駊哱奤岶廹敀昢洦湐烞珀破砶粕蒪迫魄剖娝垺抔抙捊箁裒咅哣掊犃仆噗扑撲攴攵潽炇痡鋪铺陠鯆僕匍圤墣濮獛璞瞨穙纀莆菐菩葡蒱蒲贌酺鏷镤圃圑埔擈普暜朴樸檏氆浦溥烳諩譜谱蹼鐠镨曝瀑舖舗七倛傶僛凄嘁墄妻娸悽慼慽戚捿攲敧期柒栖桤桼棲榿欹欺沏淒漆紪緀萋褄諆踦蹊迉郪鏚霋魌鶈丌亓亝其剘圻埼奇岐岓崎嵜帺忯愭懠掑斉斊旂旗棊棋檱櫀歧淇濝猉玂琦琪璂畦疧碁碕祁祈祺禥竒簯簱籏粸綥綦耆肵脐臍艩芪萁萕蕲藄蘄蚑蚔蚚蛴蜝蜞螧蠐褀跂軝鄿釮錡锜陭隑頎颀騎騏騹骐骑鬐鬿鯕鰭鲯鳍鵸鶀麒麡齊齐乞企启呇唘啓啔啟婍屺岂晵杞棨玘盀綺绮芑諬豈起邔闙呮咠唭噐器夡契弃愒憇憩摖暣栔棄槭欫气気氣汔汽泣湆湇滊炁甈盵矵砌碛碶磜磧磩罊芞葺藒蟿訖讫迄鐑掐擖葜峠拤跒酠鞐冾圶帢恰殎洽硈胢髂仟佥僉千厱圱圲奷婜孯岍悭愆慳扦拪掔搴撁攐攑攓杄檶櫏欦汘汧牵牽竏签簽籖籤粁臤芊茾蚈褰諐謙谦谸迁遷釺鈆鉛鏲钎铅阡韆顅騫骞鬜鬝鵮鹐乹乾亁仱偂前墘媊岒忴扲拑掮揵榩橬歬潛潜濳灊箝羬荨葥蕁虔軡鈐鉗銭錢鎆钤钱钳騚騝鰬黔黚槏浅淺繾缱肷膁蜸譴谴遣鑓伣俔倩傔儙刋堑塹壍嬱嵌悓慊棈椠槧欠歉皘篏篟綪縴芡茜蒨蔳輤呛啌嗆嗴嶈戕戗戧搶摤斨枪椌槍溬牄猐獇玱瑲篬羌羗羫腔蜣謒跄蹌蹡鎗鏘锖锵墙墻嫱嬙廧強强彊樯檣漒牆艢蔃蔷薔蘠墏抢繈繦羟羥襁鏹镪唴炝熗羻劁勪墝墽帩幧悄敲橇毃燆硗磽繑繰缲趬跷踍蹺蹻郻鄡鄥鍫鍬鐰锹頝骹乔侨僑喬嘺墧嫶峤憔桥槗樵橋櫵犞癄睄瞧硚礄翘翹荍荞菬蕎藮譙谯趫鐈鞒鞽顦巧愀釥髜俏僺峭撬撽窍竅誚诮躈陗鞘鞩韒髚切苆癿聺茄且匧厒妾怯悏惬愜挈洯淁穕窃竊笡箧篋籡蛪趄踥郄鍥锲鯜亲侵兓媇寴嵚嵰嶔欽綅衾親誛钦顉駸骎鮼勤嗪噙埐嫀嶜庈懃懄捦擒斳檎澿珡琴琹瘽禽秦耹肣芩芹菦菳蚙螓蠄鈙鈫雂靲鳹鵭坅寑寖寝寢昑梫笉螼赾鋟锓吢吣唚抋揿搇撳沁瀙菣藽倾傾卿圊埥寈氢氫淸清蜻軽輕轻郬錆鑋靑青鯖鲭剠勍啨夝情擎擏晴暒棾樈檠殑氰甠硘葝黥庼廎檾漀苘請謦请頃顷儬凊庆慶掅櫦殸濪碃磬箐綮罄靘儝卭宆惸憌桏橩焪焭煢熍琼璚瓊瓗睘瞏穷穹窮竆笻筇舼茕藑藭蛩蛬赹跫邛銎丘丠坵媝恘恷楸湫湬秋秌穐篍緧萩蓲蘒蚯蝵蟗蠤趥邱鞦鞧鰌鰍鳅鶖鹙龝俅叴唒囚崷巯巰扏朹梂殏毬求汓泅浗渞湭煪犰玌球璆皳盚紌絿肍芁莍虬虯蛷蝤裘觓觩訄訅賕赇逎逑遒酋醔釚釻銶頄鮂鯄鰽鼽搝糗伹佉匤区區呿坥屈岖岴嶇憈抾敺浀焌煀祛筁粬紶胠蛆蛐袪覰詘誳诎趋趍趨躯軀阹駆駈驅驱髷魼鰸鱋鶌麯麴麹黢佢劬忂戵斪朐欋欔氍淭渠灈爠璖璩癯瞿磲籧絇翑胊臞菃葋蕖蘧螶蟝蠷蠼衐衢躣軥鑺鴝鸜鸲鼩取娶曲竘竬蝺詓齲龋刞厺去耝覷覻觑趣閴闃阒麮鼁圈圏奍悛棬椦箞鐉佺全啳埢姾峑巏恮拳搼权楾権權泉洤湶牷犈瑔痊硂筌絟縓荃葲蜷蠸觠詮诠跧踡輇辁醛銓铨闎顴颧駩騡鬈鰁鳈齤烇犬犭犮畎綣绻虇券劝勧勸牶韏炔缺缼蒛阙瘸傕却卻埆塙崅悫愨慤搉棤榷燩琷皵硞确碏確碻礐礭趞闋闕阕雀鵲鹊囷夋踆逡宭峮帬羣群裙裠呥嘫然燃繎肰蚦蚺衻袇袡髥髯冄冉姌媣染橪珃苒蒅儴勷瀼獽瓤禳穣穰蘘躟鬤嚷壌壤攘爙懹譲讓让娆嬈桡橈荛蕘襓饒饶扰擾隢繞绕遶惹热熱人亻仁壬忈忎朲秂芢銋魜鵀忍栠栣棯秹稔綛荏荵躵仞仭任刃刄妊姙屻岃扨杒梕牣祍紉紝絍纫纴肕腍衽袵訒認认讱軔轫鈓靭靱韌韧飪餁饪扔仍礽芿辸陾囸日衵釰釼鈤馹驲傛媶嫆嬫容峵嵘嵤嶸戎搈搑曧栄榕榮榵槦毧溶瀜烿熔爃狨瑢穁絨縙绒羢肜茙茸荣蓉蝾融螎蠑褣鎔镕駥傇冗坈宂氄軵穃厹媃揉柔楺渘煣瑈瓇禸粈糅脜腬葇蝚蹂輮鍒鞣騥鰇鶔韖宍肉譳嶿侞儒嚅如嬬孺帤挐曘桇渪濡筎繻茹蒘蕠薷蝡蠕袽襦邚醹銣铷顬颥鱬鴑鴽乳擩汝肗辱鄏入嗕媷扖杁洳溽縟缛蓐褥鳰堧壖撋偄媆朊瑌瓀碝礝緛耎腝軟輭软阮桵甤緌蕤壡惢橤繠蕊蕋蘂蘃叡枘汭瑞睿芮蚋蜹銳鋭锐瞤橍润潤膶閏閠闰挼捼偌叒婼嵶弱楉渃焫爇箬篛若蒻鄀鰙鰯鶸仨撒洒灑訯躠靸卅摋櫒脎萨蕯薩鈒钑隡颯飒馺嘥噻塞愢揌毢毸腮顋鰓鳃嗮僿簺賽赛三厁叁弎毵毶毿犙鬖伞傘糁糝糣糤繖鏒鏾饊馓俕散潵閐壭桑桒槡嗓搡磉褬鎟顙颡丧喪慅掻搔溞繅缫臊螦颾騒騷骚鰠鱢鳋嫂扫掃埽氉瘙矂髞閪啬嗇懎摵擌栜歮歰洓涩渋澀澁濇濏瀒瑟璱瘷穑穡穯繬色譅轖銫鏼铯雭飋森椮槮襂僧鬙乷唦杀桬榝樧殺毮沙煞猀痧砂硰粆紗繺纱蔱裟鎩铩閷髿魦鯊鯋鲨啥傻儍倽厦唼啑喢嗄帹廈歃箑翜翣萐閯霎筛篩簁簛籭晒曬傓删刪剼嘇圸姍姗山幓彡挻搧杉柵檆潸澘煽狦珊痁笘縿羴羶脠膻舢芟苫衫跚軕邖釤钐閊鯅晱炶煔熌睒覢閃闪陕陝僐善墠墡嬗扇掞擅敾椫樿歚汕灗疝磰禪繕缮膳蟮蟺訕謆譱讪贍赡赸鄯銏鐥饍騸骟鱓鱔鳝伤傷商墒慯殇殤滳漡熵禓蔏螪觞觴謪鬺垧扄晌樉賞贘赏鋿鏛鑜丄上尙尚恦緔绱鞝弰捎旓梢烧焼燒稍筲艄莦萷蕱輎髾鮹勺杓柖玿芍韶少劭卲哨娋潲紹綤绍袑邵奓奢檨猞畬畭畲賒賖赊輋佘揲舌虵蛇蛥捨舍厍厙射弽慑慴懾摂摄攝欇涉涻渉滠灄社舎蔎蠂設设赦韘騇麝伸侁兟呻堔妽姺娠屾峷扟敒曑柛氠深燊珅甡甧申眒砷穼籶籸糂紳绅罙罧莘葠蓡蔘薓裑訷詵诜身駪鯓鯵鰺鲹鵢什榊神鉮鰰哂婶嬸审宷審弞曋沈渖瀋瞫矤矧覾訠諗讅谂谉邥頣魫侺愼慎昚涁渗滲甚瘆瘮眘祳肾胂脤腎葚蜃蜄鋠升呏声斘昇曻枡殅泩湦焺牲狌珄生甥竔笙聲苼鉎鍟阩陞陹鵿鼪憴縄繉繩绳譝偗渻省眚剩剰勝圣墭嵊晟晠榺橳琞盛聖胜蕂貹賸呞失尸屍师師施浉湤湿溮溼濕狮獅瑡箷絁葹蒒蓍虱蝨褷襹詩诗邿酾釃釶鉇鍦鯴鰤鲺鳲鳾鶳鸤乭十埘塒姼实実寔實峕嵵拾时旹時榯湜溡炻石祏竍蚀蝕識识遈鉐食飠饣鮖鰣鲥鼫鼭乨使兘史始宩屎榁矢笶豕鉂駛驶世丗亊事仕侍冟势勢卋呩嗜噬士奭嬕室崼市式弑弒徥忕恀恃戺拭揓是昰枾柹柿栻氏澨烒煶眂眎眡睗示礻秲筮簭舐舓莳蒔螫襫視视觢試誓諟諡謚试谥貰贳軾轼适逝適遾釈释釋鈰鉃鉽銴铈飾餙餝饰鰘籂辻収收垨守手扌艏首兽受售嘼壽夀寿授涭狩獣獸痩瘦綬绶膄鏉书倏倐儵叔姝婌抒掓摅攄書杸枢梳樞橾殊殳毹毺淑瀭焂琡疎疏紓綀纾舒菽蔬跾踈軗輸输鄃陎鮛鵨塾孰尗熟璹秫贖赎属屬数數暏暑曙潻癙糬署薥薯藷蜀蠴襡襩鱪鱰黍鼠鼡侸咰墅尌庶庻怷恕戍捒朮术束树樹沭漱潄澍濖竖竪絉腧荗蒁虪術裋豎述鉥錰鏣霔鶐刷唰耍誜摔衰甩卛帅帥蟀拴栓閂闩涮腨双孀孇欆礵艭雙霜騻驦骦鷞鸘鹴塽慡漺爽縔鏯灀脽誰谁水氵氺閖帨涗涚睡祱稅税裞吮楯橓瞚瞬舜蕣順顺鬊說説说妁搠朔槊欶烁爍獡矟硕碩箾蒴鎙鑠铄丝俬凘厮厶司咝嘶噝媤廝思恖撕斯楒泀澌燍磃禗禠私糹絲緦纟缌罳蕬虒蛳蜤螄蟖蟴鉰銯鋖鍶鐁锶颸飔騦鷥鸶鼶死亖似佀価俟儩兕嗣四姒娰孠寺巳杫枱柶梩榹汜泗泤洍洠涘瀃牭祀禩竢笥耛耜肂肆蕼覗貄釲鈶鈻飤飼饲駟騃驷倯凇娀崧嵩庺忪憽松枀枩柗梥檧淞濍硹菘鬆傱嵷怂悚愯慫楤竦耸聳駷宋訟誦讼诵送鎹頌颂餸凁嗖廀廋捜搜摉摗溲獀艘蒐蓃螋鄋醙鎪锼颼飕餿馊騪傁叜叟嗾擻櫢瞍籔薮藪嗽擞瘶囌櫯甦稣穌窣苏蘇蘓酥鯂俗傃僳嗉塐塑夙嫊宿愫愬憟梀榡樎樕橚殐泝洬涑溯溸潚潥玊珟璛碿簌粛粟素縤肃肅膆莤蔌藗觫訴謖诉谡趚蹜速遡遬鋉餗驌骕鱐鷫鹔狻痠酸匴祘笇筭算蒜倠哸夊浽滖濉熣芕荽荾虽雖鞖瓍綏绥遀隋随隨髄瀡膸髓亗埣嬘岁嵗旞檖歲歳澻煫燧璲睟砕碎祟禭穂穗穟繀繐繸襚誶譢谇賥遂邃鐆鐩隧韢孙孫搎槂狲猻荪蓀蕵薞飧飱损損榫笋筍箰簨鎨隼鶽傞唆嗍嗦娑挱挲摍桫梭睃簑簔縮缩羧莎莏蓑趖鮻乺唢嗩所暛溑獕琐琑瑣索褨鎍鎖鎻鏁锁溹蜶逤他塌她它榙溻牠祂褟趿鉈铊闧塔墖獭獺鮙鰨鳎傝嚃嚺崉挞搨撻榻橽毾沓涾澾濌狧禢粏誻譶踏蹋蹹躂躢遝遢錔闒闥闼阘鞜鞳侤囼孡胎儓台坮嬯抬擡旲檯炱炲箈籉臺苔菭薹跆邰颱駘骀鮐鲐冭太夳忲态態汏汰汱泰溙燤肽舦酞鈦钛啴嘽坍怹摊擹攤滩潬灘痑瘫癱舑貪贪倓坛埮墰墵壇壜婒弹弾彈惔憛昙曇榃橝檀潭燂痰罈罎藫覃談譚譠谈谭貚郯醈醰錟锬顃僋嗿坦忐憳憻暺毯璮菼袒襢醓鉭钽叹嘆探歎湠炭碳舕劏嘡汤湯羰薚蝪蹚鏜镗鞺鼞傏唐啺坣堂塘嵣搪棠榶樘橖溏漟煻瑭磄禟篖糃糖糛膅膛蓎螗螳赯踼鄌醣鎕闛隚餹饄鶶伖倘偒傥儻戃曭淌爣矘耥躺鎲钂镋摥烫燙趟鐋铴夲嫍幍弢慆掏搯槄涛滔濤瑫絛縚縧绦詜謟轁鞱韜韬飸饕匋咷啕桃洮淘祹綯绹萄蜪裪迯逃醄鋾陶鞀鞉饀駣騊鼗討讨套忑忒慝特脦蟘鋱铽熥膯鼟儯幐滕漛疼痋籐籘縢腾藤虅螣誊謄邆駦騰驣鰧霯剔擿梯踢銻锑鷈鷉偍厗啼嗁媞崹徲惿提渧漽瑅睼碮禔禵稊綈緹绨缇罤蕛褆謕趧蹄蹏醍鍗題题騠鮷鯷鳀鵜鶗鶙鷤鹈体挮躰軆骵體倜剃嚏嚔屉屜悌悐惕惖戻掦揥替朑歒殢涕瓋笹籊薙褅趯逖逷髰鬀鬄兲天婖添酟靔靝黇塡填屇恬搷沺湉璳甛甜田畋畑碵磌窴緂胋菾闐阗鴫鷆鷏倎唺忝悿晪殄淟琠痶睓腆舔覥觍賟錪餂掭瑱舚佻庣恌挑旫祧聎岧岹条條樤祒笤芀苕萔蓚蓨蜩调迢鋚鎥鞗髫鯈鰷鲦齠龆嬥宨晀朓窕窱脁誂眺粜糶絩覜趒跳怗聑萜貼贴僣帖蛈鉄銕鐡鐵铁驖呫飻餮厅厛听庁廰廳桯汀烃烴綎耓聴聼聽鞓亭停婷嵉庭廷楟榳渟筳聤莛葶蜓蝏諪邒閮霆鼮侹圢娗挺梃涏烶珽町甼脡艇誔鋌铤頲颋嗵樋炵痌絧蓪通仝佟僮勭同哃峂峒峝庝彤晍曈朣桐橦氃浵潼烔燑犝狪獞眮瞳砼秱穜童粡膧茼蚒詷赨酮鉖鉵銅铜餇鮦鲖捅桶筒筩統綂统恸慟憅痛衕偷偸婾媮緰鋀鍮亠头投頭骰妵敨斢紏蘣黈透凸堗宊嶀怢捸涋湥痜禿秃突葖鋵鵚鼵凃図图圖圗塗屠峹嵞庩廜徒悇捈揬梌涂潳瑹瘏稌筡腯荼蒤跿途酴鈯鍎馟駼鵌鶟鷋鷵吐唋土圡釷钍兎兔堍莵菟迌鵵汢圕湍煓猯貒剸团団團慱抟摶槫檲漙篿糰鏄鷒鷻墥畽疃彖湪褖推蓷藬尵弚橔穨蘈蹪隤頹頺頽颓魋俀僓腿蹆骽娧煺蛻蜕螁褪退駾吞呑噋旽暾朜涒焞囤坉屯忳臀臋芚蛌豘豚軘霕飩饨魨鲀黗氽乇仛侂咃咜托扡拕拖挩捝杔汑沰涶脫脱莌袥託讬飥饦馲魠鮵佗侻坨堶媠岮柁槖橐沱沲狏砣砤碢紽袉詑跎酡阤陀陁馱駄駝駞騨驒驝驮驼鮀鴕鸵鼉鼍鼧妥嫷庹彵椭楕橢鰖鵎唾嶞拓柝毤毻箨籜萚蘀跅劸哇嗗娲媧屲挖搲攨洼溛漥瓾畖穵窊窐窪蛙韈鼃娃佤咓瓦砙邷嗢聉腽膃袜襪韤呙咼喎歪竵外顡剜塆壪婠帵弯彎湾潫灣睕蜿豌丸刓完岏忨抏捖汍烷玩琓笂紈纨翫芄貦頑顽倇唍埦婉宛惋挽晚晥晩晼梚椀涴琬畹皖盌碗箢綩綰绾脘莞菀萖踠輓鋔万卍卐妧捥杤澫瞣脕腕萬薍蟃贃贎輐鋄錽鎫尣尩尪尫汪亡亾仼兦王莣蚟彺往徃惘暀枉棢瀇網网罒罓罔罖菵蛧蝄誷輞辋魍妄忘旺望朢迋偎危厃喴威媙崴嵔嶶巍微愄揋揻椳楲溦烓煨燰癓縅葨葳薇蜲蝛覣詴逶隇隈霺鰃鰄鳂唯喡囗囲围圍壝媁峗峞嵬帏帷幃惟桅欈沩洈涠湋溈潍潙潿濰為爲犩琟矀硙維维蓶覹违違鄬醀鍏闈闱韋韦鮠亹伟伪偉偽僞儰委娓寪尾屗崣嶉徫愇捤撱斖暐梶椲洧浘渨濻瀢炜煒猥玮瑋痏痿硊碨緯纬腲艉芛苇荱萎葦蒍蔿諉诿踓鍡隗韑韙韡韪頠颹骩骪骫鮪鲔为位卫叞味喂墛媦尉慰懀未渭煟熭犚猬畏緭罻胃苿菋蔚藯蘶蜼蝟螱衛衞褽謂讆讏谓躗躛軎轊鏏霨餧餵饖魏鮇鳚塭昷榅榲殟温溫瑥瘟豱輼轀辒鎾鞰饂鰛鰮鳁彣文炆珳瘒紋繧纹聞芠蚉蚊螡蟁閺閿闅闦闻阌雯馼駇魰鳼鴍鼤伆刎吻呅呡抆桽稳穏穩紊肳脗問妏揾搵汶渂璺莬问顐嗡翁聬螉鎓鶲鹟勜塕奣嵡攚暡滃瞈蓊瓮甕罋蕹齆倭唩挝涡涹渦猧窝窩莴萵蜗蝸踒婐婑我捰仴偓卧媉幄捾握斡枂楃沃渥濣焥瓁瞃硪肟腛臒臥齷龌乌剭呜嗚圬屋巫弙杇歍汙汚污洿烏窏箼螐誈誣诬邬鄔鎢钨鰞鴮吳吴吾呉墲娪峿无梧橆毋洖浯無珸璑祦芜茣莁蕪蜈蟱譕郚鋙铻鯃鵐鷡鹀鼯乄五仵伍侮倵儛午啎妩娒娬嫵庑廡忤怃憮捂摀武潕熓牾玝珷瑦甒瞴碔舞躌迕逜陚鵡鹉俉兀务務勿卼唔坞塢奦婺寤屼岉嵍嵨忢悞悟悮戊扤敄旿晤杌溩焐熃物痦矹窹粅芴蘁誤误鋈阢隖雺雾霚霧靰騖骛鶩鹜鼿齀俙傒僖兮凞卥厀吸唏唽嘻噏嚱夕奚娭嬆嬉屖嵠巇希徆徯忚怸恓息悉悕惁惜扱扸昔晞晰晳暿曦析桸榽樨橀欷歙氥汐浠淅渓溪潝烯焁焈焟焬煕熄熈熙熹熺熻燨爔牺犀犠犧狶琋瘜皙睎瞦矽硒磎礂稀穸窸粞糦緆繥羲翕翖肸肹膝舾莃菥蒠蜥螅螇蟋蠵裼西覡觹觽觿譆谿豀豨豯貕赥邜郗鄎酅醯釸錫鏭鐊鑴锡隵餏饎饻鯑鵗鸂鼷习喺媳嶍席椺槢檄漝習蒵蓆薂袭襲觋謵趘郋鎴隰霫飁騱騽驨鰼鳛喜囍壐屣徙憘憙枲橲歖洗漇玺璽矖禧縰葈葸蓰蟢諰謑蹝躧鈢鉨鉩鱚係匸卌呬墍屃屓屭忥怬恄慀戏戯戱戲椞欯潟澙熂犔盻磶禊稧系細綌縘繫细绤舃舄蕮虩衋覤赩趇郤釳闟阋隙隟霼餼饩鬩黖傄呷煆瞎虲虾蝦谺閕颬鰕侠俠匣埉峡峽敮暇柙炠烚狎狭狹珨瑕硖硤碬磍祫筪縖翈舝舺蕸赮轄辖遐鍜鎋陜陿霞騢魻鶷黠閜丅下乤吓圷夏夓懗梺疜睱罅諕鎼鏬仙仚佡僊僲先嘕奾嬐孅屳廯忺憸掀攕暹杴枮氙珗祆秈籼繊纎纖纤苮莶薟褼襳跹蹮躚酰銛銽鍁铦锨韯韱馦鮮鱻鲜鶱伭咁咸啣嗛妶娴娹婱嫌嫺嫻弦憪挦撏涎湺澖甉痫癇癎盷瞯礥稴絃胘舷藖蚿蛝衔衘誸諴賢贒贤輱醎銜鑦閑閒闲鷳鷴鷼鹇鹹麙冼尟尠崄嶮幰搟攇显櫶毨灦烍燹狝猃獫獮玁禒筅箲藓蘚蚬蜆譣赻跣銑鍌铣险険險韅顕顯僩僴县咞哯垷埳塪壏姭娊宪岘峴憲撊晛橌橺涀瀗献獻现現県睍粯糮絤綫線縣线缐羡羨腺臔臽苋莧誢豏鋧錎限陥陷霰餡馅麲鼸乡厢廂忀楿欀湘瓖相稥箱緗纕缃膷芗萫葙薌襄郷鄉鄊鄕鑲镶香驤骧鱜麘佭庠栙瓨祥絴翔詳详跭享亯响想晑蚃蠁銄響飨餉饗饟饷鮝鯗鱶鲞像勨向嚮姠嶑巷曏橡珦缿蟓衖襐象鐌項项鱌侾削呺哓嘐嘵嚣嚻囂婋宯宵庨彇憢揱撨枭枵梟櫹歊毊消潇瀟灱灲烋焇猇獢痚痟硝硣穘窙箫簘簫綃绡翛肖膮萧蕭藃虈虓蛸蟂蟏蟰蠨踃逍銷销霄颵驍骁髇髐魈鴞鴵鷍鸮崤殽洨淆訤誵郩小晓暁曉皛皢筱筿篠謏俲傚効咲哮啸嘋嘨嘯孝恔效敩斅斆校歗涍熽笑詨誟些娎揳楔歇猲蝎蠍偕劦勰协協嗋嚡垥奊孈峫恊愶拹挟挾携撷擕擷攜斜旪熁燲瑎絜綊緳縀缬翓胁脅脇脋膎蝢衺襭諧讗谐邪鞋鞵龤写冩寫藛血亵伳偞偰僁卨卸噧塮夑媟屑屟屧嶰廨徢懈暬械榍榭泄泻洩渫澥瀉瀣灺炧炨烲焎燮爕獬祄禼糏紲絏絬緤繲纈绁缷薢薤蟹蠏褉褻謝谢躞邂靾鞢韰齂齘齛齥俽噷噺妡嬜廞心忄忻惞新昕杺欣歆盺芯薪訢辛邤鈊鋅鑫锌馨馫枔襑鐔镡伈伩信囟孞炘焮脪舋衅訫軐釁阠顖馸垶惺星曐煋猩瑆皨箵篂腥興觪觲謃騂骍鮏鯹侀刑哘型娙形洐滎硎荥蛵行邢郉鈃鉶銒鋞钘铏陉陘餳饧擤睲醒倖兴姓婞嬹幸性悻杏涬緈臖荇莕葕兄兇凶匂匈哅忷恟汹洶胷胸芎訩詾讻賯熊熋雄焸焽夐敻詗诇休俢修咻庥樇烌羞脙脩臹貅銝鎀鏅飍饈馐髤髹鮴鱃鵂鸺苬朽滫潃糔嗅嚊岫峀溴珛琇璓秀綉繍繡绣螑袖褎褏銹鏥鏽锈齅偦吁嘘噓圩墟媭嬃戌揟旴楈欨欻歔歘燸疞盱砉綇縃胥蕦虗虚虛蝑裇訏許諝譃谞鑐需須须顼驉鬚魆魖俆冔徐禑蒣呴喣姁暊栩湑珝盨稰糈詡諿许诩鄦醑伵侐勖勗卹叙垿壻婿序怴恤慉敍敘旭昫晇朂槒欰殈汿沀洫溆漵潊烅烼煦獝珬盢瞁稸絮続緒緖續绪续聓聟芧蓄蓿藇藚訹賉酗銊頊鱮儇吅喧塇媗宣弲愃愋懁揎昍晅暄梋煊瑄睻矎禤箮翧翾萱萲蓒蕿藼蘐蝖蠉諠諼譞谖軒轩鋗鍹鞙駽鰚嫙悬懸旋暶檈漩玄玹琁璇璿痃蜁咺暅烜癣癬选選怰昡楥楦泫渲炫琄眩眴碹絢縼繏绚蔙衒袨贙鉉鏇铉镟颴疶蒆薛辥辪靴鞾乴壆学學峃嶨斈泶澩燢穴茓袕觷踅鷽鸴樰膤艝轌雪鱈鳕吷坹岤桖瀥狘瞲謔谑趐勋勛勲勳嚑坃埙塤壎壦曛焄熏燻爋獯矄纁臐薫薰蘍醺偱噚姰寻尋峋巡廵循恂揗攳旬杊栒桪樳毥洵浔潯灥燅燖珣璕畃紃荀蟳詢询郇鄩駨鱏鱘鲟伨侚卂噀奞巺巽徇愻殉殾汛潠狥稄蕈訊訓訙训讯迅迿逊遜鑂顨馴驯丫压吖呀圧垭壓孲庘押枒桠椏錏鐚铔鴉鴨鵶鸦鸭伢厑厓堐岈崕崖涯漄牙猚琊睚笌芽蚜衙齖厊哑唖啞庌疨痖瘂蕥雅亚亜亞俹冴劜圔圠埡娅婭挜掗揠氩氬犽猰玡砑稏窫聐襾覀訝讶軋轧迓齾傿剦嫣嬮崦嶖恹懕懨樮歅淊淹渰湮漹烟焉焑煙珚硽篶胭臙菸鄢醃閹阉黫严厳啱喦嚴埏塩壛壧妍姸娫娮岩嵒嵓巌巖巗延揅昖楌檐櫩欕沿炎炏狿琂盐研硏碞礹筵簷綖莚蔅虤蜒言訁訮詽讠郔閆閻闫阎顏顔颜鹽麣乵俨偃儼兖兗剡匽厣厴噞夵奄孍嵃巘巚弇愝戭扊抁掩揜曮棪椼檿沇渷演琰甗眼縯罨萒蝘衍裺褗躽遃郾酓隒顩魇魘鰋鶠黡黤黬黭黶鼴鼹齴龑偐厌厭咽唁喭嚈嚥囐堰墕妟姲嬊嬿宴彥彦敥晏暥曕曣椻溎滟灎灔灧灩烻焔焰焱熖燄燕爓牪猒砚硯艳艶艷覎觃觾諺讌讞谚谳豓豔贋贗赝軅酀酽醶醼釅隁雁餍饜騐験騴驗驠验鬳鳫鴈鴳鷃鷰齞央姎抰殃泱眏秧胦鉠鍈雵鞅鴦鸯佯劷垟崵崸徉扬揚敭旸昜暘杨楊氜洋炀烊煬珜疡瘍眻羊羏蛘諹輰鍚钖阦阳陽霷颺飏鰑鴹鸉仰佒傟养卬咉坱岟慃懩攁柍楧氧氱瀁炴痒癢礢紻蝆軮飬養駚怏恙样様樣漾羕詇吆喓夭妖幺楆殀祅腰葽訞邀鴁鴢倄傜嗂垚堯姚媱尧尭峣嶢嶤徭愮揺搖摇摿暚榣滧烑爻猺珧瑤瑶磘窑窯窰繇肴蘨謠謡谣軺轺遙遥邎鎐顤颻飖餆餚鰩鱙鳐仸偠咬婹宎岆崾抭杳枖柼榚溔狕眑窅窈舀苭蓔闄騕鷕齩曜熎燿獟矅穾窔筄纅耀艞药葯薬藥袎要覞詏讑靿鷂鹞鼼倻吔噎擨暍椰歋潱蠮捓揶爷爺瑘耶釾鋣鎁铘也冶嘢埜壄漜野业亱僷叶墷夜嶪嶫抴捙掖擛擪擫晔曄曅曗曳曵枼枽業殗洂液澲烨煠燁爗璍皣瞱瞸礏腋葉謁谒邺鄴鍱鎑鐷靥靨頁页餣饁馌驜鵺鸈亪一乊伊依医吚咿噫壱壹夁嫛嬄弌悘揖撎檹毉洢渏漪猗瑿畩祎禕稦繄蛜衣衤譩辷郼醫銥铱鷖鹥黟黳乁仪侇儀冝匜咦圯夷姨媐宐宜宧寲峓嶬嶷巸彛彜彝彞怡恞扅拸暆杝柂栘桋椬椸沂沶洟熪狋珆瓵疑痍眙移簃籎羠胰荑萓蛦螔袘觺詒誃謻讉诒貽贻跠迻遗遺鏔頉頤頥顊颐飴饴鮧鴺乙乛以佁倚偯嬟崺已庡扆攺敼旑旖椅檥矣礒笖舣艤苡苢蚁螘蟻裿輢轙迆迤迱逘酏釔鈘鉯钇顗鳦齮乂义亄亦亿仡伇伿佚佾俋億兿刈劓劮勚勩匇呓呭呹唈嗌囈圛坄垼埶埸墿奕嫕嬑寱屹峄嶧帟帠幆廙异弈弋役忆忔怈怿悒悥意憶懌懿抑挹敡斁易晹曀曎杙枍枻栧棭榏槸檍欭歝殔殪殹毅泆浂浥浳湙溢潩澺瀷炈焲熠熤熼燚燡燱獈玴異疫痬瘗瘞瘱癔益睪瞖秇穓竩篒縊繶繹绎缢羛義羿翊翌翳翼耴肄肊膉臆艗艺芅苅萟蓺薏藙藝蘙虉蛡蜴螠衪袣裔裛褹襼訲訳詍詣誼譯議讛议译诣谊豙豛豷貖貤贀跇軼轶逸邑鄓醳醷釴鈠鎰鐿镒镱阣隿霬饐駅驛驿骮鮨鯣鶂鶃鶍鷁鷊鷧鷾鸃鹝鹢黓齸弬侌凐喑噾囙因垔堙姻婣愔慇栶殷氤洇溵濦瘖磤禋秵筃絪緸茵荫蒑蔭裀諲銦铟闉阥阴陰陻隂霒霠鞇音韾駰骃齗乑冘吟噖嚚圁垠夤婬寅峾崟崯斦檭殥泿淫滛烎犾狺珢璌碒荶蔩蟫訔訚訡誾鄞鈝銀银霪鷣齦龂龈吲尹嶾廴引朄檃檼櫽淾濥瘾癮粌蘟蚓螾讔赺趛輑鈏隐隠隱靷飮飲饮印垽堷廕慭憖憗懚洕湚猌癊窨胤茚酳鮣偀嘤噟嚶婴媖嫈嬰孆孾应応愥應撄攖朠桜樱櫻渶瀴煐珱瑛璎瓔甇甖碤礯緓纓绬缨罂罃罌膺英莺蘡蝧蠳褮譍譻賏軈鑍锳霙韺鴬鶑鶧鶯鷪鷹鸎鸚鹦鹰僌営塋嬴巆攍楹櫿溁溋滢潆濙濚濴瀅瀛瀠瀯灐灜熒營瑩盁盈禜籝籯縈茔荧莹萤营萦萾蓥藀蛍蝇蝿螢蠅覮謍贏赢迎鎣巊廮影摬梬浧潁瘿癭矨穎郢鐛頴颍颕颖媵映暎硬膡鱦哟唷喲佣傭嗈噰墉壅嫞庸廱慵拥擁滽澭灉牅痈癕癰臃邕郺鄘鏞镛雍雝饔鱅鳙鷛喁顒颙鰫俑勇勈咏埇塎嵱彮怺恿悀惥愑愹慂柡栐永泳涌湧甬硧蛹詠踊踴鯒鲬用砽苚蒏醟优優呦嚘峳幽忧怮悠憂懮攸櫌泑浟滺瀀纋羪耰逌鄾麀偤尢尤庮怞怣楢沋油游犹猶猷由甴疣秞肬莜莸蕕蚰蝣訧輏輶逰遊邮郵鈾铀駀魷鮋鱿鲉丣卣友有栯梄槱湵牖牗禉羑聈苃莠蜏酉銪铕黝亴佑佦侑又右哊唀囿姷孧宥峟幼柚櫾牰狖祐蚴誘诱貁迶酭釉鼬唹扜扝淤瘀盓穻箊紆纡込迂迃陓乻予于亐伃余俞兪堣堬妤娛娯娱媀嬩崳嵎嵛愉愚扵揄於旟杅桙楡楰榆欤歈歟歶渔渝湡漁澞牏狳玗玙瑜璵盂睮禺窬竽籅羭腴臾舁舆艅茰萮萸蕍蘛虞虶蝓螸衧褕覦觎諛謣谀踰輿轝逾邘酑鍝隃隅雓雩餘馀騟骬髃魚魣鮽鯲鰅鱼鷠鸆齵与伛俁俣偊傴匬噳圄圉宇寙屿嶼庾懙挧敔斔斞楀瑀瘐祤禹穥窳羽與萭語语貐鄅雨頨麌齬龉俼僪儥喅喩喻圫域堉妪嫗寓峪嶎庽彧御忬悆惐愈慾戫昱棛棜棫櫲欎欝欥欲毓浴淢淯滪潏澦灪焴煜燏燠爩狱獄玉琙瘉癒矞砡硢硲礇礖礜禦秗稢稶篽籞籲粖緎罭聿肀育艈芋芌茟蒮蓣蓹蕷薁蘌蜟蜮袬裕誉諭譽谕豫軉輍逳遇遹郁醧鈺銉鋊錥鐭钰閾阈雤霱預预飫饇饫馭驈驭鬰鬱鬻魊鱊鳿鴥鴧鴪鵒鷸鸒鹆鹬冤剈囦嬽寃悁惌棩淵渁渆渊渕灁眢肙葾蒬蜎蜵裷駌鳶鴛鵷鸢鸳鹓鼘鼝元円原厡厵员員园圆圎園圓垣塬媴嫄援杬榞榬橼櫞沅湲源溒爰猨猿笎緣縁缘羱芫茒蒝薗蚖蝝蝯螈袁褤謜貟贠轅辕邍邧酛鈨鎱騵魭鶢鶰黿鼋盶薳远逺遠鋺傆噮垸夗妴媛怨愿掾瑗禐苑衏裫褑院願啘曰曱矱箹約约哕噦刖妜嬳岄岳嶽恱悅悦戉抈捳月樾泧瀹爚玥礿禴篗籆籥籰粤粵蘥蚎蚏越跀跃躍軏鈅鉞鑰钥钺閱閲阅鸑鸙黦龠龥奫晕暈氲氳煴熅蒀蒕蝹贇赟馧云伝勻匀囩妘愪抣昀橒沄涢溳澐熉畇眃秐筠筼篔紜縜纭耘耺芸蒷蕓郧鄖鋆雲允喗夽抎殒殞狁磒荺賱鈗阭陨隕霣馻齫齳傊孕恽惲愠慍枟熨緼縕缊腪蕰蕴薀藴蘊褞运運郓鄆酝醖醞韗韞韫韵韻餫匝咂帀扎拶桚沞臜臢迊鉔魳囃杂沯砸襍雑雜雥韴咋哉栽渽溨災灾烖甾畠睵賳宰崽傤儎再在扗洅縡載载酨兂橵簪簮糌鐕鐟鵤偺咱喒儧儹噆寁揝撍攅攒攢昝趱趲囋暂暫濽灒瓉瓒瓚禶襸讃讚賛贊赞蹔鄼錾鏨饡匨牂羘臧賍賘贓贜赃髒駔驵塟奘弉脏臓臟葬蔵銺傮糟蹧遭醩凿鑿早枣栆棗澡璅璪薻藻蚤唕唣喿噪慥梍灶煰燥皁皂竃竈簉艁譟趮躁造则則啧啫嘖嫧帻幘択择擇樍歵沢泎泽溭滜澤皟瞔矠礋箦簀舴蔶蠌襗諎謮責賾责赜迮鸅齚齰仄崱庂捑昃昗汄戝蠈賊贼鰂鱡鲗怎譖谮増增憎橧璔矰磳繒缯罾譄鄫鱛囎熷甑贈赠鋥锃鬵偧劄哳喳抯挓揸摣柤楂樝渣皶皻紥紮觰譇齄齇札牐箚耫蚻譗鍘铡閘闸霅厏拃眨砟鮓鮺鲊鲝乍吒咤宱搾栅榨溠灹炸痄蚱詐诈醡夈捚摘斋斎榸粂齋宅檡窄鉙债債寨瘵砦噡岾嶦惉旃旜枬栴毡氈氊沾瞻薝蛅詀詹譫谵趈邅閚霑飦饘驙魙鱣鳣鸇鹯讝嫸展崭嶃嶄搌斩斬榐橏琖盏盞輾辗醆颭飐佔偡僝占嶘战戦戰栈桟棧湛站綻绽菚蘸虥虦覱譧轏驏傽嫜张張彰慞暲樟漳獐璋章粻蔁蟑遧鄣鏱餦騿鱆麞仉幥掌涨漲礃丈仗墇嶂帐帳幛扙杖涱痮瘬瘴瞕粀胀脹賬账障佋妱巶招昭皽釗鉊鍣钊駋找沼爪爫瑵兆召垗旐曌枛棹櫂炤照燳狣瞾笊箌罀罩羄肁肇肈詔诏赵趙鮡嗻嫬遮厇哲啠喆嚞埑悊折摺晢晣歽矺砓磔籷粍虴蛰蜇蟄袩詟謫謺讁讋谪輒輙轍辄辙銸鮿乽者褶襵赭踷鍺锗柘樜浙淛蔗蟅这這鷓鹧侦偵嫃寊帧帪幀搸斟桢椹楨榛樼殝浈湞溱潧澵獉珍珎瑧甄眞真砧碪祯禎禛箴籈胗臻葴蒖蓁薽貞贞轃遉酙針鉁錱鍼针鱵姫屒弫抮昣枕畛疹眕稹紾縝縥缜聄萙袗裖覙診诊軫轸辴駗鬒黰侲圳塦挋振揕朕栚甽眹紖絼纼誫賑赈鋴鎭鎮镇阵陣震鴆鸩争佂凧埩姃媜峥崝崢征徰徴徵怔掙揁炡烝爭狰猙癥眐睁睜筝箏篜糽聇脀蒸踭鉦錚鏳钲铮鬇愸抍拯掟撜整晸氶塣幁挣政正症証諍證证诤郑鄭靕鴊之倁卮吱巵憄搘支枝栀栺梔椥榰汁汥泜疷知祗祬秓稙綕織织肢胑胝脂臸芝蘵蜘衼隻馶鳷鴲鼅侄値值埴執妷姪嬂慹戠执摭植樴殖淔漐潪犆瓡直禃絷縶聀职職膱蟙跖踯蹠躑軄釞馽凪劧只咫址坁坧墌夂帋恉扺抧指旨枳止汦沚洔淽疻砋祇祉秖紙纸芷茋藢衹襧訨趾軹轵酯阯黹乿俧偫傂儨制剬劕厔垁墆娡寘峙崻帙帜幟庢庤廌彘徏徝志忮懥懫扻挃挚掷搱摨摯擲擳旘晊智柣栉桎梽櫍櫛歭治洷滍滞滯潌瀄炙熫狾猘璏瓆畤疐痓痔痣瘈礩祑秩秷稚稺穉窒筫紩緻置翐膣至致芖蛭袟袠製覟觗觯觶誌豑豒豸貭質贄质贽跱踬躓輊轾迣郅銍鋕鑕铚锧陟隲雉駤騭騺驇骘鯯鴙鷙鸷中伀刣妐幒彸忠柊汷泈炂盅籦終终舯蔠蜙螤螽衳衷蹱鈡銿鍾鐘钟锺鴤鼨冢喠塚尰徸歱煄瘇种種肿腫踵仲众偅堹妕媑狆眾祌筗茽蚛衆衶諥重侜周啁喌嚋婤州徟洲淍炿烐珘盩矪粥舟謅譸诌诪賙赒輈輖辀週郮銂霌駲騆鵃鸼妯碡軸轴帚晭疛睭箒肘菷鯞伷僽冑呪咒咮噣宙昼晝甃皱皺籀籒籕粙紂縐纣绉胄荮葤詋酎駎驟骤侏朱株槠橥櫧櫫洙潴瀦猪珠硃秼絑茱蕏藸蛛蝫蠩袾誅諸诛诸豬跦邾銖铢駯鮢鯺鴸鼄劚孎斸曯欘灟炢烛燭爥瘃窋竹竺笁笜篴舳茿蓫蠋蠾躅逐逫钃鱁丶主劯嘱囑宔帾拄渚濐煑煮燝瞩矚罜褚詝陼鸀麈乼伫佇住助坾墸壴嵀拀杼柱柷樦殶注炷疰眝砫祝祩竚筑筯箸築篫簗紵紸纻羜翥苎苧莇著蛀註貯贮跓軴迬鉒鋳鑄铸飳馵駐驻麆抓撾檛簻膼髽跩拽专叀塼嫥専專瑼甎砖磗磚膞蟤諯鄟顓颛鱄孨竱轉转僎啭囀堟撰灷瑑篆篹籑縳腞蒃襈譔賺赚転饌馔妆妝娤庄庒桩梉樁湷粧糚荘莊装裝壮壯壵撞焋状狀椎追錐锥隹騅骓鵻沝坠墜娷惴甀畷硾礈笍綴縋缀缒腏膇諈贅赘醊錣鑆啍宒窀肫衠諄谆迍准凖埻準綧稕訰倬拙捉桌梲棁棳槕涿炪焯穛穱窧鐯丵劅卓叕啄啅圴妰娺彴撯擆擢斀斫斮斱斲斵晫椓櫡汋浊浞濁濯灂灼烵犳琢琸着硺禚窡篧籗籱罬茁蠗蠿諁諑謶诼酌鋜鐲镯鵫鷟兹呲咨嗞姕姿孖孜孳孶崰嵫栥椔淄湽滋澬玆禌秶稵粢紎緇緕纃缁茊茲菑葘觜訾諮谘貲資赀资赼趑趦輜輺辎鄑鈭錙鍿鎡锱镃頾頿髭鯔鰦鲻鶅鼒齍齜龇蓻仔吇呰啙姉姊子杍梓榟橴滓矷秄秭笫籽紫耔胏茈虸訿釨倳剚字恣渍漬牸眥眦胔胾自芓茡荢嗭倧堫宗嵏嵕惾朡棕椶熧猣磫稯綜緃緵繌综翪腙葼蝬豵踨踪蹤鍐鑁騌騣骔鬃鬉鬷鯮鯼倊偬傯嵸总惣捴揔搃摠焧燪総緫縂總蓗昮猔疭瘲碂粽糉糭縦縱纵掫棷棸箃緅菆諏诹邹郰鄒鄹陬騶驺鯫鲰黀齱齺走赱鯐奏揍租菹葅蒩卆卒哫崒崪族椊箤足踤鏃镞俎唨爼珇祖組组詛诅鎺阻靻劗躜躦鉆鑚鑽钻籫繤纂纉纘缵攥厜嗺樶纗蟕嘴噿嶊璻冣嶵晬最栬槜檇檌祽稡絊罪蕞辠酔酻醉鋷錊噂墫尊嶟樽繜罇遵鐏鱒鳟鶎鷷僔撙譐捘銌嘬穝捽昨秨稓笮筰苲莋鈼佐左繓作侳做唑坐岝岞座怍柞祚糳胙葃葄蓙袏酢阼飵咗龦龧龨龩龪龫龬龭龮龯龰龱龲龳龴龵龶龷龸龹龺龻龼龽龾龿鿀鿁鿂鿃鿄鿅鿆鿇鿈鿉鿊鿋鿌鿍鿎鿏鿐",t_={};for(let e=0;e{const t=[tt.FOLDER,tt.MODEL_FOLDER,tt.INDICATOR_FOLDER,tt.DIMENSION_FOLDER,tt.BUSINESS_MODEL_FOLDER,tt.TAG_FOLDER];return!De.includes(t,e)},m4=e=>De.some(De.values(Ms),t=>e?.startsWith(t)),Pw=(e=[],t,r)=>{e?.forEach((n,o)=>{t(n,o,r),n.children?.length&&Pw(n.children,t,n.id)})},Cvt=({nodeType:e,engineType:t})=>De.includes([tt.INDICATOR,tt.DIMENSION,tt.BUSINESS_MODEL],e)?`${AK[e]}-${t}`:AK[e],Nw=(e,t)=>{const{nodeType:r,id:n,engineType:o}=t,a=n&&De.find(De.keys(OK),i=>n?.startsWith(i));return a?OK[a]:r===tt.MODEL_FOLDER?"svg-model_folder":fo(r)?De.includes([tt.DATA_TABLE,tt.TABLE],r)?Fvt(t.value||t):r===tt.FIELD?Rd(t.type):Cvt({nodeType:r,engineType:o}):e?"svg-folder_open":"svg-folder_close"},CY=(e,t,r)=>e.map(n=>n.id===t?{...n,children:r}:De.isNil(n.children)?n:{...n,children:CY(n.children,t,r)}),r_=(e,t)=>{const r=[];return Pw(e,n=>{const{nodeType:o,id:a,children:i=[]}=n;fo(o)||(t?i.length>0&&r.push(a):r.push(a))}),r},x4=(e,t,r)=>t.map(n=>{if(n.id===e)return{...n,...r(n)};const{children:o}=n;return De.isNil(o)?n:{...n,children:x4(e,o,r)}}),Ha=(e,t)=>{let r;return Pw(t,n=>{if(n.id===e){r=n;return}}),r};function TY(e,t){if(e)return e.sort((r,n)=>t(r,n)).map(r=>({...r,children:TY(r.children,t)}))}function b4(e,t){if(!t.children)return e;const r=De.cloneDeep(e),n=Ha(t.id,r);if(!n)return[t];const o=(a,i)=>{const{children:l,...s}=i;if(Object.assign(a,s),l){a.children=a.children??[];const c=l.map(d=>d.id);De.remove(a.children,d=>!c.includes(d.id)),l.forEach((d,f)=>{const v=a.children.find(g=>g.id===d.id);v?o(v,d):a.children.splice(f,0,d)})}};return o(n,t),r}function y4(e,t=CT.TIME){return TY(e,(r,n)=>!fo(r.nodeType)&&r.nodeType!==n.nodeType?-1:!fo(n.nodeType)&&r.nodeType!==n.nodeType?1:r.id.startsWith(uw.COOP_GROUP)?-1:n.id.startsWith(uw.COOP_GROUP)?1:t===CT.TIME?n.value.initTime-r.value.initTime:Svt(r.name,n.name))}function Od(e,t){return{...e,folders:e.folders?.map(r=>Od(r,t))??[],tables:t.includes(fr.TABLE)?e.tables:void 0,subjects:t.includes(fr.SUBJECT)?e.subjects:void 0,indexes:t.includes(fr.INDICATOR)?e.indexes:void 0,dimensions:t.includes(fr.DIMENSION)?e.dimensions:void 0,businessModels:t.includes(fr.BUSINESS_MODEL)?e.businessModels:void 0}}function gl(e,t,r){let n=e.name;e.id.startsWith(Ms.DATA_ROOT)?n=rt("FDI_Data_Root"):e.id.startsWith(Ms.ANALYSIS_ROOT)?n=rt("FDI_My_Analysis"):e.id.startsWith(uw.COOP_GROUP)&&(n=rt("FDI_Coop_Group"));const o={id:e.id,pId:e.parentId,name:n,nodeType:tt.FOLDER,value:{...e,itemType:fr.PACKAGE},path:t?[...t.path??[],{id:e.id,name:n}]:[{id:e.id,name:n}]};if(De.isEmpty(e.folders)&&(De.isEmpty(e.tables)||De.isEmpty(e.tables.availableTables))&&De.isEmpty(e.subjects)&&(De.isEmpty(e.indexes)||De.isEmpty(e.indexes.availableIndexes))&&(De.isEmpty(e.dimensions)||De.isEmpty(e.dimensions.availableDimensions))&&(De.isEmpty(e.businessModels)||De.isEmpty(e.businessModels.availableModels)))return o;o.children=[],o.children.push(...e.folders.map(d=>gl(d,o,r)));const a=e.subjects??[];o.children.push(...a.map(d=>({id:d.id,pId:d.parentId,name:d.name,nodeType:tt.SUBJECT,value:{...d,itemType:fr.SUBJECT},path:[...o.path??[],{id:d.id,name:d.name}]})));const i=e.tables?.availableTables?.concat(e.tables?.childTables??[],e.tables?.childTables??[])??[];o.children.push(...i.map(d=>({id:d.name,pId:d.parentId,name:d.transferName,nodeType:tt.DATA_TABLE,value:{...d,itemType:fr.TABLE},path:[...o.path??[],{id:d.name,name:d.transferName}]})));const l=e.indexes?.availableIndexes??[];o.children.push(...l.map(d=>({id:d.id,pId:d.parentId??o.id,name:d.name,nodeType:tt.INDICATOR,engineType:d.engineType,value:{...d,itemType:fr.INDICATOR},path:[...o.path??[],{id:d.id,name:d.name}]})));const s=e.dimensions?.availableDimensions??[];o.children.push(...s.map(d=>({id:d.id,pId:d.parentId??o.id,name:d.name,nodeType:tt.DIMENSION,engineType:d.engineType,value:{...d,itemType:fr.DIMENSION},path:[...o.path??[],{id:d.id,name:d.name}]})));const c=e.businessModels?.availableModels??[];return o.children.push(...c.map(d=>({id:d.id,pId:d.parentId??o.id,name:d.name,nodeType:tt.BUSINESS_MODEL,engineType:d.engineType,value:{...d,itemType:fr.BUSINESS_MODEL},path:[...o.path??[],{id:d.id,name:d.name}]}))),r?y4([o],r)[0]??o:o}ql.COMMON+"",ql.MATH+"",ql.DATETIME+"",ql.TEXT+"",ql.LOGIC+"",ql.AGG+"",ql.TABLE_CAL+"",ql.ANALYSIS+"",ql.OTHER+"",dw.FIELD+"",tt.FIELD,dw.INDICATOR+"",tt.INDICATOR,dw.DIMENSION+"",tt.DIMENSION;const Tvt={COMMON_CHARACTER:/^[0-9a-zA-Z_]+$/,CHINESE_CHARACTER_AND_PUNCTUATION:/[\u4e00-\u9fa5|\u3002|\uff1f|\uff01|\uff0c|\u3001|\uff1b|\uff1a|\u201c|\u201d|\u2018|\u2019|\uff08|\uff09|\u300a|\u300b|\u3008|\u3009|\u3010|\u3011|\u300e|\u300f|\u300c|\u300d|\ufe43|\ufe44|\u3014|\u3015|\u2026|\u2014|\uff5e|\ufe4f|\uffe5]/,SPECIAL_CHARACTER:/^[?*:"<>\\/|]/,INTEGER_NO_SIGN:/^[1-9][\d]*$/,NUMBER:/^[\d]+$/,LETTER:/^[a-zA-Z]+$/,LETTER_WIDTH_POINT:/^[a-zA-Z.]+$/,RGBA_FORNATE:/rgba?(\(\s*\d+\s*,\s*\d+\s*,\s*\d+)(?:\s*,.+?)?\)/,LETTER_CHINESE_NUMBER_UNDERLINE:/^[\w\u4e00-\u9fa5]+$/,LETTER_CHINESE_NUMBER_UNDERLINE_HYPHEN:/^([a-zA-Z0-9_-]|[\u4e00-\u9fa5])*$/,PARAM_PATTERN:/\${.*?}/,PHONE_GROUP:/^1[3456789]\d{9}(,1[3456789]\d{9})*,?$/,EMAIL_GROUP:/^(\w-*\.*)+@(\w-?)+(\.\w{2,})+(,(\w-*\.*)+@(\w-?)+(\.\w{2,}))*,?$/,WRAP_PARAM:/\$\{(.+?)\}/g},RY=e=>(e||"").length===0,w4=e=>(e||"").trim().length===0,Rvt=e=>!De.isNumber(e)&&w4(e),Mw=e=>Tvt.SPECIAL_CHARACTER.test(e),OY=(e,t)=>De.includes(e,t),zw=(e,t)=>`${e||""}`.length>t,n_=(e,t,r)=>RY(e)||w4(e)||Mw(e)||OY(t,e)||zw(e,r),o_=(e,t,r)=>RY(e)||w4(e)?rt("FDI_Not_Empty"):Mw(e)?rt("FDI_Not_Special_Str"):OY(t,e)?rt("FDI_Not_Same_Name"):zw(e,r)?rt("FDI_Not_To_Exceed_Chars",r):"",Ovt=e=>Mw(e)||zw(e,Ii.DESCRIPTION),Avt=(e,t=Ii.DESCRIPTION)=>Mw(e)?rt("FDI_Not_Special_Str"):zw(e,t)?rt("FDI_Not_To_Exceed_Chars",t):"";function AY(e){const{folderSearchResult:t,tableSearchResult:r,subjectSearchResult:n,indexSearchResult:o,dimensionSearchResult:a,businessModelSearchResult:i}=e,l=[];if(!De.isNil(r)){const s=r.match.availableTables.concat(r.find.availableTables)??[];l.push({label:rt("FDI_Table"),value:to.TABLE,nodes:s.map(c=>({id:c.name,name:c.transferName,pId:c.parentId,nodeType:tt.DATA_TABLE,position:c.position,engineType:c.engineType,value:{...c,itemType:fr.TABLE}})),count:r.count,pageCount:r.pageCount})}if(!De.isNil(n)){const s=n?.match.concat(n?.find)??[];l.push({label:rt("FDI_Subject"),value:to.SUBJECT,nodes:s.map(c=>({id:c.id,name:c.name,pId:c.parentId,nodeType:tt.SUBJECT,position:c.position,value:{...c,itemType:fr.SUBJECT}})),count:n.count,pageCount:n.pageCount})}if(!De.isNil(o)){const s=o?.match.availableIndexes.concat(o?.find.availableIndexes)??[];l.push({label:rt("FDI_Indicator"),value:to.INDICATOR,nodes:s.map(c=>({id:c.id,name:c.name,pId:c.parentId,nodeType:tt.INDICATOR,position:c.position,engineType:c.engineType,value:{...c,itemType:fr.INDICATOR}})),count:o.count,pageCount:o.pageCount})}if(!De.isNil(a)){const s=a?.match.availableDimensions.concat(a?.find.availableDimensions)??[];l.push({label:rt("FDI_Dimension"),value:to.DIMENSION,nodes:s.map(c=>({id:c.id,name:c.name,pId:c.parentId,nodeType:tt.DIMENSION,position:c.position,engineType:c.engineType,value:{...c,itemType:fr.DIMENSION}})),count:a.count,pageCount:a.pageCount})}if(!De.isNil(i)){const s=i?.match.availableModels.concat(i?.find.availableModels)??[];l.push({label:rt("FDI_Business_Model"),value:to.BUSINESS_MODEL,nodes:s.map(c=>({id:c.id,name:c.name,pId:c.parentId,nodeType:tt.BUSINESS_MODEL,position:c.position,engineType:c.engineType,value:{...c,itemType:fr.BUSINESS_MODEL}})),count:i.count,pageCount:i.pageCount})}if(!De.isNil(t)){const s=t.match.concat(t.find)??[];l.push({label:rt("FDI_Folder"),value:to.FOLDER,nodes:s.map(c=>({id:c.id,name:c.name,pId:c.parentId,nodeType:tt.FOLDER,position:c.position,value:{...c,itemType:fr.PACKAGE}})),count:t.count,pageCount:t.pageCount})}return l}tt.INDICATOR+"",tt.DIMENSION+"",tt.BUSINESS_MODEL+"",fr.INDICATOR+"",tt.INDICATOR,fr.DIMENSION+"",tt.DIMENSION,fr.BUSINESS_MODEL+"",tt.BUSINESS_MODEL,zs.NORMAL+"",zs.PUBLISH+"",zs.APPLYING+"",zs.CANCELING+"",zs.NORMAL+"",_n.token.colorTransparent2,_n.token.colorGrey4,zs.PUBLISH+"",_n.token.colorSuccess6,_n.token.colorSuccess2,zs.APPLYING+"",_n.token.colorBrand6,_n.token.colorBrand2,zs.CANCELING+"",_n.token.colorBrand6,_n.token.colorBrand2,tt.DATA_TABLE+"",tt.INDICATOR+"",tt.DIMENSION+"",tt.BUSINESS_MODEL+"",tt.INDICATOR+"",tt.DIMENSION+"",tt.BUSINESS_MODEL+"",ja.SUCCESS+"",ja.SUCCESS_AUTO+"",ja.FAIL+"",ja.FAIL_SAME_TYPE+"",ja.FAIL_REVIEWER_ERROR+"",ja.FAIL_STATUS_ERROR+"",ja.SUCCESS+"",ja.SUCCESS_AUTO+"",ja.FAIL+"",ja.FAIL_SAME_TYPE+"",ja.FAIL_REVIEWER_ERROR+"",ja.FAIL_STATUS_ERROR+"",RT.DATA_CATALOG+"",RT.MODEL_CENTER+"";const Lw=e=>se(P1,{loadingType:"roll",...e}),Hs=e=>se(Bh,{mouseEnterDelay:.6,placement:"bottom-left",...e}),qYt="",D4={"svg-empty_widget1":"assets/images/empty_widget1.svg","svg-empty_widget2":"assets/images/empty_widget2.svg","svg-not_select":"assets/images/not_select.svg","svg-folder_open":"assets/images/folder_open.svg","svg-folder_close":"assets/images/folder_close.svg","svg-indicator_leaf":"assets/images/indicator_leaf.svg","png-card_background":"assets/images/card_background.png","svg-resource_total":"assets/images/resource_total.svg","svg-indicator_card_spider":"assets/images/indicator_card_spider.svg","svg-dimension_card_spider":"assets/images/dimension_card_spider.svg","svg-business_model_card_spider":"assets/images/business_model_card_spider.svg","svg-indicator_card_direct":"assets/images/indicator_card_direct.svg","svg-dimension_card_direct":"assets/images/dimension_card_direct.svg","svg-business_model_card_direct":"assets/images/business_model_card_direct.svg","svg-model_folder":"assets/images/model_folder.svg","svg-create_line_spider":"assets/images/create_line_spider.svg","svg-create_line_direct":"assets/images/create_line_direct.svg","svg-create_line_hover":"assets/images/create_line_hover.svg","svg-error_info":"assets/images/error_info.svg","svg-error_info_hover":"assets/images/error_info_hover.svg","svg-error_info_highlight":"assets/images/error_info_highlight.svg","svg-error_info_dim":"assets/images/error_info_dim.svg","svg-indicator_preview_card_spider":"assets/images/indicator_preview_card_spider.svg","svg-indicator_preview_card_direct":"assets/images/indicator_preview_card_direct.svg","svg-error_widget":"assets/images/error_widget.svg","svg-relation_marker":"assets/images/relation_marker.svg","svg-tag":"assets/images/tag.svg","svg-tag_group":"assets/images/tag_group.svg","svg-tag_root":"assets/images/resource_root.svg","svg-tag_card":"assets/images/tag_card.svg","svg-no_auth":"assets/images/no_auth.svg","svg-bi_widget":"assets/images/bi_widget.svg","svg-bi_widget_error":"assets/images/bi_widget_error.svg","svg-bi_report":"assets/images/bi_report.svg","svg-bi_report_error":"assets/images/bi_report_error.svg","svg-bi_doc":"assets/images/bi_doc.svg","svg-bi_doc_error":"assets/images/bi_doc_error.svg","svg-ai_tip":"assets/images/ai_tip.svg","svg-ai_error_empty":"assets/images/ai_error_empty.svg","svg-enhance_search_icon":"assets/images/enhance_search_icon.svg","svg-ai_search_icon":"assets/images/ai_search_icon.svg","svg-data_catalog_normal":"assets/images/data_catalog_normal.svg","svg-data_catalog_active":"assets/images/data_catalog_active.svg","svg-model_center_normal":"assets/images/model_center_normal.svg","svg-model_center_active":"assets/images/model_center_active.svg","svg-lineage_analysis_table_direct":"assets/images/lineage_analysis_table_direct.svg","svg-lineage_analysis_table_direct_error":"assets/images/lineage_analysis_table_direct_error.svg","svg-lineage_analysis_table_spider":"assets/images/lineage_analysis_table_spider.svg","svg-lineage_analysis_table_spider_error":"assets/images/lineage_analysis_table_spider_error.svg","svg-lineage_analysis_table_bi_direct":"assets/images/lineage_analysis_table_bi_direct.svg","svg-lineage_analysis_table_bi_direct_error":"assets/images/lineage_analysis_table_bi_direct_error.svg","svg-lineage_analysis_table_bi_spider":"assets/images/lineage_analysis_table_bi_spider.svg","svg-lineage_analysis_table_bi_spider_error":"assets/images/lineage_analysis_table_bi_spider_error.svg","svg-lineage_analysis_table_bi_published_direct":"assets/images/lineage_analysis_table_bi_published_direct.svg","svg-lineage_analysis_table_bi_published_direct_error":"assets/images/lineage_analysis_table_bi_published_direct_error.svg","svg-lineage_analysis_table_bi_published_spider":"assets/images/lineage_analysis_table_bi_published_spider.svg","svg-lineage_analysis_table_bi_published_spider_error":"assets/images/lineage_analysis_table_bi_published_spider_error.svg","svg-lineage_database_table_direct":"assets/images/lineage_database_table_direct.svg","svg-lineage_database_table_direct_error":"assets/images/lineage_database_table_direct_error.svg","svg-lineage_database_table_spider":"assets/images/lineage_database_table_spider.svg","svg-lineage_database_table_spider_error":"assets/images/lineage_database_table_spider_error.svg","svg-lineage_etl_table_direct":"assets/images/lineage_etl_table_direct.svg","svg-lineage_etl_table_direct_error":"assets/images/lineage_etl_table_direct_error.svg","svg-lineage_etl_table_spider":"assets/images/lineage_etl_table_spider.svg","svg-lineage_etl_table_spider_error":"assets/images/lineage_etl_table_spider_error.svg","svg-lineage_sql_table_direct":"assets/images/lineage_sql_table_direct.svg","svg-lineage_sql_table_direct_error":"assets/images/lineage_sql_table_direct_error.svg","svg-lineage_sql_table_spider":"assets/images/lineage_sql_table_spider.svg","svg-lineage_sql_table_spider_error":"assets/images/lineage_sql_table_spider_error.svg","svg-lineage_excel_table_direct":"assets/images/lineage_excel_table_direct.svg","svg-lineage_excel_table_direct_error":"assets/images/lineage_excel_table_direct_error.svg","svg-lineage_excel_table_spider":"assets/images/lineage_excel_table_spider.svg","svg-lineage_excel_table_spider_error":"assets/images/lineage_excel_table_spider_error.svg","svg-lineage_indicator_direct":"assets/images/lineage_indicator_direct.svg","svg-lineage_indicator_direct_error":"assets/images/lineage_indicator_direct_error.svg","svg-lineage_indicator_spider":"assets/images/lineage_indicator_spider.svg","svg-lineage_indicator_spider_error":"assets/images/lineage_indicator_spider_error.svg","svg-lineage_indicator_published_direct":"assets/images/lineage_indicator_published_direct.svg","svg-lineage_indicator_published_direct_error":"assets/images/lineage_indicator_published_direct_error.svg","svg-lineage_indicator_published_spider":"assets/images/lineage_indicator_published_spider.svg","svg-lineage_indicator_published_spider_error":"assets/images/lineage_indicator_published_spider_error.svg","svg-lineage_business_model_direct":"assets/images/lineage_business_model_direct.svg","svg-lineage_business_model_direct_error":"assets/images/lineage_business_model_direct_error.svg","svg-lineage_business_model_spider":"assets/images/lineage_business_model_spider.svg","svg-lineage_business_model_spider_error":"assets/images/lineage_business_model_spider_error.svg","svg-lineage_business_model_published_direct":"assets/images/lineage_business_model_published_direct.svg","svg-lineage_business_model_published_direct_error":"assets/images/lineage_business_model_published_direct_error.svg","svg-lineage_business_model_published_spider":"assets/images/lineage_business_model_published_spider.svg","svg-lineage_business_model_published_spider_error":"assets/images/lineage_business_model_published_spider_error.svg","svg-lineage_dimension_direct":"assets/images/lineage_dimension_direct.svg","svg-lineage_dimension_direct_error":"assets/images/lineage_dimension_direct_error.svg","svg-lineage_dimension_spider":"assets/images/lineage_dimension_spider.svg","svg-lineage_dimension_spider_error":"assets/images/lineage_dimension_spider_error.svg","svg-lineage_dimension_published_direct":"assets/images/lineage_dimension_published_direct.svg","svg-lineage_dimension_published_direct_error":"assets/images/lineage_dimension_published_direct_error.svg","svg-lineage_dimension_published_spider":"assets/images/lineage_dimension_published_spider.svg","svg-lineage_dimension_published_spider_error":"assets/images/lineage_dimension_published_spider_error.svg","svg-lineage_widget":"assets/images/lineage_widget.svg","svg-lineage_widget_error":"assets/images/lineage_widget_error.svg","svg-lineage_report":"assets/images/lineage_report.svg","svg-lineage_report_error":"assets/images/lineage_report_error.svg","svg-lineage_doc":"assets/images/lineage_doc.svg","svg-lineage_doc_error":"assets/images/lineage_doc_error.svg","svg-lineage_table_deleted":"assets/images/lineage_table_deleted.svg","svg-no_permission":"assets/images/no_permission.svg","svg-unavailable":"assets/images/unavailable.svg","icon-analysis-table-spider-preview":"assets/images/preview_analysis_table_spider.svg","icon-analysis-table-direct-preview":"assets/images/preview_analysis_table_direct.svg","icon-database-table-spider-preview":"assets/images/preview_database_table_spider.svg","icon-database-table-direct-preview":"assets/images/preview_database_table_direct.svg","icon-etl-table-spider-preview":"assets/images/preview_etl_table_spider.svg","icon-etl-table-direct-preview":"assets/images/preview_etl_table_direct.svg","icon-sql-table-spider-preview":"assets/images/preview_sql_table_spider.svg","icon-sql-table-direct-preview":"assets/images/preview_sql_table_direct.svg","icon-excel-table-spider-preview":"assets/images/preview_excel_table_spider.svg","icon-excel-table-direct-preview":"assets/images/preview_excel_table_direct.svg","icon-authorize-user":"assets/images/authorize_user.svg","icon-authorize-user-deleted":"assets/images/authorize_user_deleted.svg","png-execute-uploading":"assets/images/execute_uploading.png","png-data-over-limit":"assets/images/data_amount_over_limit.png","png-data-over-memory":"assets/images/cost_too_much_memory.png","png-preview-fail":"assets/images/preview_fail.png"},kvt=window.FDI?.resourceURL??`${VN()}/web/`,Pvt=e=>window.isDevMode?`/${D4[e]}`:kvt+D4[e],Nvt=()=>De.keys(D4).map(e=>({name:e,src:Pvt(e)})),Mvt={"icon-rename":["e6cc",16],"icon-move":["e73f",16],"icon-info":["e847",16],"icon-history":["ea60",16],"icon-filter":["e8a7",16],"icon-info-tip":["e63c",16,"rgba(9, 30, 64, 0.47)"],"icon-edit":["e6ba",16],"icon-custom-edit":["ea1b",16],"icon-refresh":["e6fb",16],"icon-delete":["e6c4",16,"rgba(9, 30, 64, 0.9)"],"icon-sort-time":["e731",16],"icon-sort-name":["e732",16],"icon-arrow-left":["e70d",16],"icon-model-management":["eac3",18],"icon-indicator-management":["eac5",18],"icon-dimension-management":["eac4",18],"icon-business-model":["eac6",18],"icon-folded":["ea42",18],"icon-unfold":["ea3b",18],"icon-search":["e6dc",16],"icon-add":["e6e1",16],"icon-subtract":["e6e2",16],"icon-position":["e860",16],"icon-filtered":["ea68",16,"#2C60DB"],"icon-unfiltered":["e9a9",16],"icon-more":["e6ce",16],"icon-setting":["e6cb",16],"icon-triangle-up":["e6d6",16],"icon-triangle-down":["e6d7",16],"icon-table-preview":["e6c2",16],"icon-table-structure":["e6bb",16],"icon-text-string":["e99b",16,"#537BC6"],"icon-text-number":["e998",16,"#3FB4AB"],"icon-text-datetime":["e996",16,"#F0AC3C"],"icon-analysis-table-spider":["e9a4",18,"#2C60DB"],"icon-analysis-table-direct":["e8b6",18,"#2C60DB"],"icon-database-table-spider":["e9a1",18,"#3FB4AB"],"icon-database-table-direct":["e8b8",18,"#3FB4AB"],"icon-excel-table-spider":["e9a3",18,"#248F2E"],"icon-excel-table-direct":["e8b9",18,"#248F2E"],"icon-sql-table-spider":["e9a2",18,"#F0AC3C"],"icon-sql-table-direct":["e8b7",18,"#F0AC3C"],"icon-etl-table-spider":["e8f4",18,"#3392DB"],"icon-etl-table-direct":["e8b5",18,"#3392DB"],"icon-indicator-leaf-spider":["eabf",16,"#13BFA8"],"icon-indicator-leaf-direct":["eadd",16,"#13BFA8"],"icon-indicator-leaf-spider-published":["eb07",16,"#13BFA8"],"icon-indicator-leaf-direct-published":["eb09",16,"#13BFA8"],"icon-dimension-leaf-spider":["eabc",16,"#537BC6"],"icon-dimension-leaf-direct":["eade",16,"#537BC6"],"icon-dimension-leaf-spider-published":["eb0b",16,"#717BEE"],"icon-dimension-leaf-direct-published":["eb0c",16,"#717BEE"],"icon-business-model-leaf-spider":["eac0",16,"#5545BA"],"icon-business-model-leaf-direct":["eada",16,"#5545BA"],"icon-business-model-leaf-spider-published":["eb08",16,"#8864FF"],"icon-business-model-leaf-direct-published":["eb0a",16,"#8864FF"],"icon-cancel":["e6d0",16],"icon-view":["e7da",16],"icon-batch":["e891",16],"icon-tooltip":["e63c",16],"icon-data-detail":["e76f",16],"icon-add-folder":["eaeb",16],"icon-add-group":["eac8",16],"icon-view-global":["eabe",16],"icon-update":["e72c",16],"icon-update-progress":["e7a7",16],"icon-update-management":["e7e1",16],"icon-global-update":["e688",16],"icon-publish":["e942",16],"icon-cancel-publish":["e943",16],"icon-direct":["ead4",16],"icon-spider":["ead5",16],"icon-select":["ea73",16],"icon-import":["e68d",16],"icon-copy":["e6bd",16],"icon-auth-apply":["e773",16],"icon-error":["e757",14,"#E65251"],"icon-success":["e756",14,"#248F2E"],"icon-pending":["eae5",14,"#5D6B81"],"icon-use-authority":["ea2b",16,"#537BC6"],"icon-field-authority":["eae4",16,"#F0AC3C"],"icon-check-mark":["e1b0",24,"#248F2E"],"icon-error-mark":["e7fc",24,"#E65251"],"icon-help":["e851",16,"rgba(9, 30, 64, 0.66)"],"icon-multipath":["e766",16],"icon-exit":["e799",16],"icon-formula":["e951",16],"icon-enter":["e8ab",16],"icon-disable":["e9f4",14,"rgba(9, 30, 64, 0.66)"],"icon-applying":["eae5",14,"#2C60DB"],"icon-field-group":["e7d6",16],"icon-extend-field":["ead6",16],"icon-drag":["e8c4",16],"icon-jump":["e76b",16],"icon-collapsed":["e6e2",16],"icon-ascent":["e631",16],"icon-descent":["e9a7",16],"icon-tag":["ea5b",16],"icon-create":["e8f1",16],"icon-warning":["e755",16,"#FAA70D"],"icon-edit-string":["ea89",16],"icon-down-arrow":["e6d7",16],"icon-edit-integer":["ea86",16],"icon-edit-date":["ea85",16],"icon-edit-boolean":["ea87",16],"icon-edit-double":["ea88",16],"icon-edit-formula":["ea84",16],"icon-edit-parameter":["eab1",16],"icon-resource-info":["e748",16],"icon-analysis-table-bi-spider":["e8e2",18,"#2562FF"],"icon-analysis-table-bi-direct":["e8e3",18,"#2562FF"],"icon-analysis-table-bi-published-spider":["e9c8",18,"#2562FF"],"icon-analysis-table-bi-published-direct":["e9c9",18,"#2562FF"],"icon-table-deleted":["e8e2",18,"#EF5655"]},zvt={fontFamily:"dataIntegrationFont",fontStyle:"normal",WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"},Rn=({className:e,name:t="",size:r,width:n=r,height:o=r,color:a,disabled:i=!1,...l})=>{const s=Mvt[t];if(s)return se("span",{className:Gt("fdi-icon",e),style:{...zvt,width:n||r||s[1],textAlign:"center",fontSize:r||s[1],color:a||s[2],cursor:i?"not-allowed":""},...l,children:Hae.unescapeFromNumRef(`&#x${s[0]};`,16)});const c=De.find(Nvt(),["name",t]);return c?se("img",{className:Gt("fdi-icon",e),alt:"",src:c.src,height:o,width:n,style:{cursor:i?"not-allowed":"",width:n,height:o},...l}):se("div",{className:Gt(e,"fdi-icon",t),style:{width:r||16,height:r||16,fontSize:r||16,lineHeight:`${r||16}px`},children:se("i",{style:{width:r||16,height:r||16,fontSize:r||16},className:"b-font x-icon"})})};var I4={},Lvt={get exports(){return I4},set exports(e){I4=e}};(function(e){e.exports=function(t){var r={};function n(o){if(r[o])return r[o].exports;var a=r[o]={exports:{},id:o,loaded:!1};return t[o].call(a.exports,a,a.exports,n),a.loaded=!0,a.exports}return n.m=t,n.c=r,n.p="",n(0)}([function(t,r,n){t.exports=n(1)},function(t,r,n){Object.defineProperty(r,"__esModule",{value:!0});function o(l){return l&&l.__esModule?l:{default:l}}var a=n(2),i=o(a);r.default=i.default,t.exports=r.default},function(t,r,n){Object.defineProperty(r,"__esModule",{value:!0});var o=Object.assign||function(h){for(var _=1;_=0||Object.prototype.hasOwnProperty.call(h,x)&&(b[x]=h[x]);return b}var l=n(3),s=n(4),c=a(s),d=n(14),f=n(15),v=a(f);g.propTypes={activeClassName:c.default.string,activeIndex:c.default.number,activeStyle:c.default.object,autoEscape:c.default.bool,className:c.default.string,findChunks:c.default.func,highlightClassName:c.default.oneOfType([c.default.object,c.default.string]),highlightStyle:c.default.object,highlightTag:c.default.oneOfType([c.default.node,c.default.func,c.default.string]),sanitize:c.default.func,searchWords:c.default.arrayOf(c.default.oneOfType([c.default.string,c.default.instanceOf(RegExp)])).isRequired,textToHighlight:c.default.string.isRequired,unhighlightTag:c.default.oneOfType([c.default.node,c.default.func,c.default.string]),unhighlightClassName:c.default.string,unhighlightStyle:c.default.object};function g(h){var _=h.activeClassName,b=_===void 0?"":_,x=h.activeIndex,w=x===void 0?-1:x,D=h.activeStyle,I=h.autoEscape,$=h.caseSensitive,F=$===void 0?!1:$,C=h.className,R=h.findChunks,k=h.highlightClassName,P=k===void 0?"":k,U=h.highlightStyle,B=U===void 0?{}:U,z=h.highlightTag,A=z===void 0?"mark":z,M=h.sanitize,N=h.searchWords,T=h.textToHighlight,O=h.unhighlightTag,j=O===void 0?"span":O,K=h.unhighlightClassName,Q=K===void 0?"":K,Y=h.unhighlightStyle,X=i(h,["activeClassName","activeIndex","activeStyle","autoEscape","caseSensitive","className","findChunks","highlightClassName","highlightStyle","highlightTag","sanitize","searchWords","textToHighlight","unhighlightTag","unhighlightClassName","unhighlightStyle"]),G=(0,l.findAll)({autoEscape:I,caseSensitive:F,findChunks:R,sanitize:M,searchWords:N,textToHighlight:T}),H=A,V=-1,Z="",te=void 0,J=function(ie){var ce={};for(var oe in ie)ce[oe.toLowerCase()]=ie[oe];return ce},ne=(0,v.default)(J);return(0,d.createElement)("span",o({className:C},X,{children:G.map(function(re,ie){var ce=T.substr(re.start,re.end-re.start);if(re.highlight){V++;var oe=void 0;typeof P=="object"?F?oe=P[ce]:(P=ne(P),oe=P[ce.toLowerCase()]):oe=P;var fe=V===+w;Z=oe+" "+(fe?b:""),te=fe===!0&&D!=null?Object.assign({},B,D):B;var ve={children:ce,className:Z,key:ie,style:te};return typeof H!="string"&&(ve.highlightIndex=V),(0,d.createElement)(H,ve)}else return(0,d.createElement)(j,{children:ce,className:Q,key:ie,style:Y})})}))}t.exports=r.default},function(t,r){t.exports=function(n){var o={};function a(i){if(o[i])return o[i].exports;var l=o[i]={exports:{},id:i,loaded:!1};return n[i].call(l.exports,l,l.exports,a),l.loaded=!0,l.exports}return a.m=n,a.c=o,a.p="",a(0)}([function(n,o,a){n.exports=a(1)},function(n,o,a){Object.defineProperty(o,"__esModule",{value:!0});var i=a(2);Object.defineProperty(o,"combineChunks",{enumerable:!0,get:function(){return i.combineChunks}}),Object.defineProperty(o,"fillInChunks",{enumerable:!0,get:function(){return i.fillInChunks}}),Object.defineProperty(o,"findAll",{enumerable:!0,get:function(){return i.findAll}}),Object.defineProperty(o,"findChunks",{enumerable:!0,get:function(){return i.findChunks}})},function(n,o){Object.defineProperty(o,"__esModule",{value:!0}),o.findAll=function(f){var v=f.autoEscape,g=f.caseSensitive,h=g===void 0?!1:g,_=f.findChunks,b=_===void 0?i:_,x=f.sanitize,w=f.searchWords,D=f.textToHighlight;return l({chunksToHighlight:a({chunks:b({autoEscape:v,caseSensitive:h,sanitize:x,searchWords:w,textToHighlight:D})}),totalLength:D?D.length:0})};var a=o.combineChunks=function(f){var v=f.chunks;return v=v.sort(function(g,h){return g.start-h.start}).reduce(function(g,h){if(g.length===0)return[h];var _=g.pop();if(h.start<=_.end){var b=Math.max(_.end,h.end);g.push({start:_.start,end:b})}else g.push(_,h);return g},[]),v},i=function(f){var v=f.autoEscape,g=f.caseSensitive,h=f.sanitize,_=h===void 0?s:h,b=f.searchWords,x=f.textToHighlight;return x=_(x),b.filter(function(w){return w}).reduce(function(w,D){D=_(D),v&&(D=c(D));for(var I=new RegExp(D,g?"g":"gi"),$=void 0;$=I.exec(x);){var F=$.index,C=I.lastIndex;C>F&&w.push({start:F,end:C}),$.index==I.lastIndex&&I.lastIndex++}return w},[])};o.findChunks=i;var l=o.fillInChunks=function(f){var v=f.chunksToHighlight,g=f.totalLength,h=[],_=function(w,D,I){D-w>0&&h.push({start:w,end:D,highlight:I})};if(v.length===0)_(0,g,!1);else{var b=0;v.forEach(function(x){_(b,x.start,!1),_(x.start,x.end,!0),b=x.end}),_(b,g,!1)}return h};function s(d){return d}function c(d){return d.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}}])},function(t,r,n){(function(o){t.exports=n(13)()}).call(r,n(5))},function(t,r){var n=t.exports={},o,a;function i(){throw new Error("setTimeout has not been defined")}function l(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?o=setTimeout:o=i}catch{o=i}try{typeof clearTimeout=="function"?a=clearTimeout:a=l}catch{a=l}})();function s(w){if(o===setTimeout)return setTimeout(w,0);if((o===i||!o)&&setTimeout)return o=setTimeout,setTimeout(w,0);try{return o(w,0)}catch{try{return o.call(null,w,0)}catch{return o.call(this,w,0)}}}function c(w){if(a===clearTimeout)return clearTimeout(w);if((a===l||!a)&&clearTimeout)return a=clearTimeout,clearTimeout(w);try{return a(w)}catch{try{return a.call(null,w)}catch{return a.call(this,w)}}}var d=[],f=!1,v,g=-1;function h(){!f||!v||(f=!1,v.length?d=v.concat(d):g=-1,d.length&&_())}function _(){if(!f){var w=s(h);f=!0;for(var D=d.length;D;){for(v=d,d=[];++g1)for(var I=1;I"u"||Y===null)return""+Y;var X=O(Y);if(X==="object"){if(Y instanceof Date)return"date";if(Y instanceof RegExp)return"regexp"}return X}function K(Y){var X=j(Y);switch(X){case"array":case"object":return"an "+X;case"boolean":case"date":case"regexp":return"a "+X;default:return X}}function Q(Y){return!Y.constructor||!Y.constructor.name?b:Y.constructor.name}return x.checkPropTypes=d,x.PropTypes=x,x}}).call(r,n(5))},function(t,r){function n(a){return function(){return a}}var o=function(){};o.thatReturns=n,o.thatReturnsFalse=n(!1),o.thatReturnsTrue=n(!0),o.thatReturnsNull=n(null),o.thatReturnsThis=function(){return this},o.thatReturnsArgument=function(a){return a},t.exports=o},function(t,r,n){(function(o){function a(i,l,s,c,d,f,v,g){if(!i){var h;if(l===void 0)h=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var _=[s,c,d,f,v,g],b=0;h=new Error(l.replace(/%s/g,function(){return _[b++]})),h.name="Invariant Violation"}throw h.framesToPop=1,h}}t.exports=a}).call(r,n(5))},function(t,r,n){(function(o){var a=n(7),i=a;t.exports=i}).call(r,n(5))},function(t,r){var n=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;function i(s){if(s==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(s)}function l(){try{if(!Object.assign)return!1;var s=new String("abc");if(s[5]="de",Object.getOwnPropertyNames(s)[0]==="5")return!1;for(var c={},d=0;d<10;d++)c["_"+String.fromCharCode(d)]=d;var f=Object.getOwnPropertyNames(c).map(function(g){return c[g]});if(f.join("")!=="0123456789")return!1;var v={};return"abcdefghijklmnopqrst".split("").forEach(function(g){v[g]=g}),Object.keys(Object.assign({},v)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}t.exports=l()?Object.assign:function(s,c){for(var d,f=i(s),v,g=1;g1&&arguments[1]!==void 0?arguments[1]:n,l=void 0,s=[],c=void 0,d=!1,f=function(h,_){return i(h,s[_])},v=function(){for(var h=arguments.length,_=Array(h),b=0;b0&&a[a.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!a||c[1]>a[0]&&c[1]0)&&!(o=n.next()).done;)a.push(o.value)}catch(l){i={error:l}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(i)throw i.error}}return a}function Go(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,a;n{const[h,_]=m.useState(""),[,b]=NY(()=>{a?.(h)},300,[h]);a_(()=>{b()}),Ei(()=>{_(c??"")},[c]);const x=(D=[])=>D.map(I=>{const{id:$,nodeType:F,name:C,imported:R,disabled:k,children:P=[]}=I,U=rt(C);return{key:$,isLeaf:fo(F),disabled:k,disableCheckbox:R,icon:({expanded:B})=>se(Rn,{name:l?l(B,I):Nw(B,I),size:gw.NORMAL}),title:se(Hs,{content:s?s(I):U,placement:"bottom-left",children:se(F4,{highlightClassName:"fdi-component-keyword-highlight",autoEscape:!0,textToHighlight:U,searchWords:[h]})}),children:De.isEmpty(P)?null:x(P),extraData:I,...i?.(I,h)||{}}}),w=m.useMemo(()=>x(e?r:r[0]?.children),[e,r,h,i]);return $r("div",{className:Gt("fdi-component-flex-col-layout fdi-gap-md",t),children:[n&&se(jl,{bordered:!o,className:Gt("fdi-w-full",o&&"fdi-component-border-b",d),value:h,prefix:se(Rn,{name:"icon-search"}),placeholder:rt("FDI_Search"),onChange:D=>{_(D)},onPressEnter:D=>{const I=D.target.value;_(I)},onBlur:D=>{_(D)}}),se(tK,{className:Gt("fdi-component-flex-h-fill-layout",f),ref:g,virtual:!0,...v,contentEllipsis:!0,treeData:w})]})}),BY=({treeData:e,updateTreeData:t,autoExpand:r=!0,autoExpandFolderInit:n=!1,getRootData:o,getChildrenDataById:a,getNavigationDataById:i,getSearchedData:l,selectedKey:s,setSelectedKey:c=()=>{}})=>{const d=m.useRef(e),f=m.useRef([]),v=m.useRef([]),[g,h]=m.useState([]),[_,b]=m.useState([]),[x,w]=m.useState(!1),[D,I]=m.useState(!1),$=m.useRef();Ei(()=>{!D&&(f.current=_)},[_]),Ei(()=>{!D&&(d.current=e)},[e]),Ei(()=>{!D&&(v.current=g)},[g]),a_(()=>{F()});const F=()=>{s&&!m4(s)?i(s).then(N=>{const T=r_([N],!0);t([N]);const O=Ha(s,[N]),j=fo(O.nodeType)?T:[...T,s];b(j),c(s)}).catch(()=>{C()}):C()},C=()=>{o().then(N=>{if(t([N]),n){const T=r_([N],!0);b(T)}else b([N.id]);c(N.id)})},R=N=>{const{key:T,isLeaf:O}=N,j=Ha(N.key,e);return new Promise(K=>{if(O||j.children){K();return}a(T).then(Q=>{const Y=CY(e,T,Q.children||[]);t(Y),K()})})},k=N=>{h(N)},P=N=>{N?(I(!0),l?.(N).then(T=>{w(!0),t([T]),b(N?r_([T],!0):[T.id]),h([]),c(T.id)})):(I(!1),w(!1),t(d.current),b(f.current),h(v.current))},U=(N,T)=>{const O=Ha(N,T?.newTreeData??e);if(x||!O){I(!1),i(N,T).then(j=>{const Q=Ha(N,[j])?.nodeType===tt.FIELD,Y=r_([j],!0),X=b4(d.current,j);t(X);const G=Q?De.compact([...Y,O?.pId]):Y,H=De.uniq([...f.current,...G]);b(H),c(N),w(!1),z(N)});return}b(j=>{const K=O.path?.map(Y=>Y.id),Q=fo(O.nodeType)||!r?De.dropRight(K):K;return De.union(j,Q)}),c(N),z(N)},B=(N,T)=>{const O=Ha(N,e);if(!O){i(N,T).then(j=>{const Q=Ha(N,[j])?.nodeType===tt.FIELD,Y=r_([j],!0),X=b4(d.current,j);t(X);const G=Q?[...Y,O.pId]:Y,H=De.uniq([...f.current,...G]);b(H),z(N)});return}b(j=>{const K=O.path?.map(Y=>Y.id),Q=fo(O.nodeType)?De.dropRight(K):K;return De.union(j,Q)}),z(N)},z=N=>{De.defer(()=>{$.current?.scrollTo({key:N,align:"auto"})})};return{onLoad:k,onLoadData:R,onSearch:P,handleSelect:U,handleJump:B,refreshData:N=>{const T=Ha(N,e);if(!T)return;const O=!fo(T.nodeType);if(O&&De.isNil(T.children))return;const j=O?T.id:T.pId;a(j).then(K=>{const Q=b4(d.current,K);t(Q)})},refreshTree:()=>{h([]),F()},loadedKeys:g,expandedKeys:_,isSearchedTree:x,handleExpand:b,treeRef:$}},i_=({className:e,text:t,tooltip:r})=>se(Hs,{placement:"bottom-left",content:t,...r,children:se("div",{className:Gt("fdi-truncate",e),children:t})});var Jvt=function(e){return function(t,r){var n=m.useRef(!1);e(function(){return function(){n.current=!1}},[]),e(function(){if(!n.current)n.current=!0;else return t()},r)}},Bw=function(e){return typeof e=="function"},egt=!1;const jw=egt;function Qp(e){jw&&(Bw(e)||console.error("useMemoizedFn expected parameter is a function, got ".concat(typeof e)));var t=m.useRef(e);t.current=m.useMemo(function(){return e},[e]);var r=m.useRef();return r.current||(r.current=function(){for(var n=[],o=0;o-1&&(o=setTimeout(function(){Uw.delete(e)},t)),Uw.set(e,hl(hl({},r),{timer:o}))},agt=function(e){return Uw.get(e)},Hw=new Map,igt=function(e){return Hw.get(e)},lgt=function(e,t){Hw.set(e,t),t.then(function(r){return Hw.delete(e),r}).catch(function(){Hw.delete(e)})},kd={},sgt=function(e,t){kd[e]&&kd[e].forEach(function(r){return r(t)})},S4=function(e,t){return kd[e]||(kd[e]=[]),kd[e].push(t),function(){var n=kd[e].indexOf(t);kd[e].splice(n,1)}},cgt=function(e,t){var r=t.cacheKey,n=t.cacheTime,o=n===void 0?5*60*1e3:n,a=t.staleTime,i=a===void 0?0:a,l=t.setCache,s=t.getCache,c=m.useRef(),d=m.useRef(),f=function(g,h){l?l(h):ogt(g,o,h),sgt(g,h.data)},v=function(g,h){return h===void 0&&(h=[]),s?s(h):agt(g)};return UY(function(){if(r){var g=v(r);g&&Object.hasOwnProperty.call(g,"data")&&(e.state.data=g.data,e.state.params=g.params,(i===-1||new Date().getTime()-g.time<=i)&&(e.state.loading=!1)),c.current=S4(r,function(h){e.setState({data:h})})}},[]),E4(function(){var g;(g=c.current)===null||g===void 0||g.call(c)}),r?{onBefore:function(g){var h=v(r,g);return!h||!Object.hasOwnProperty.call(h,"data")?{}:i===-1||new Date().getTime()-h.time<=i?{loading:!1,data:h?.data,error:void 0,returnNow:!0}:{data:h?.data,error:void 0}},onRequest:function(g,h){var _=igt(r);return _&&_!==d.current?{servicePromise:_}:(_=g.apply(void 0,Go([],Yo(h),!1)),d.current=_,lgt(r,_),{servicePromise:_})},onSuccess:function(g,h){var _;r&&((_=c.current)===null||_===void 0||_.call(c),f(r,{data:g,params:h,time:new Date().getTime()}),c.current=S4(r,function(b){e.setState({data:b})}))},onMutate:function(g){var h;r&&((h=c.current)===null||h===void 0||h.call(c),f(r,{data:g,params:e.state.params,time:new Date().getTime()}),c.current=S4(r,function(_){e.setState({data:_})}))}}:{}};const ugt=cgt;var dgt=function(e,t){var r=t.debounceWait,n=t.debounceLeading,o=t.debounceTrailing,a=t.debounceMaxWait,i=m.useRef(),l=m.useMemo(function(){var s={};return n!==void 0&&(s.leading=n),o!==void 0&&(s.trailing=o),a!==void 0&&(s.maxWait=a),s},[n,o,a]);return m.useEffect(function(){if(r){var s=e.runAsync.bind(e);return i.current=Fp(function(c){c()},r,l),e.runAsync=function(){for(var c=[],d=0;d-1&&s_.splice(r,1)}}if(Ww){var WY=function(){if(!(!C4()||!ygt()))for(var e=0;e{const{id:a,nodeType:i}=e;let l=null,s=null;const c=t?.(e);c&&!De.isEmpty(c?.items)&&(l=se(Wh,{menu:{items:t?.(e)?.items||[],onAfterSelect:f=>{n(f.key,e)}},trigger:"click",children:se(Ar,{className:"fdi-hidden group-hover:fdi-block",size:"small",type:"text-normal",icon:se(Rn,{name:"icon-add"}),onClick:f=>f.stopPropagation()})},"node-add"));const d=r?.(e);if(d&&!De.isEmpty(d?.items)){const f=r?.(e)?.items||[];s=se(Wh,{menu:{items:f,onAfterSelect:v=>{if(v.key===Wr.RENAME){o(e.id,!0);return}r?.(e)?.onClick?.(v.key,e)}},trigger:"click",children:se(Ar,{className:"fdi-hidden group-hover:fdi-block",size:"small",type:"text-normal",icon:se(Rn,{name:"icon-more"}),onClick:v=>v.stopPropagation()})},"node-more")}return m4(a)?se(ua,{children:De.compact([l])}):fo(i)?se(ua,{children:De.compact([s])}):se(ua,{children:De.compact([l,s])})},Jp=({className:e,iconName:t="svg-empty_widget1",iconSize:r=130,...n})=>se(Cnt,{className:Gt("fdi-component-flex-col-layout fdi-justify-center fdi-items-center",e),image:se(Rn,{name:t,size:r}),...n}),T4=m.forwardRef(({defaultValue:e,checkError:t,validateHelp:r,onSave:n,onInput:o,...a},i)=>{const[l,s]=m.useState(t(e)),[c,d]=m.useState(e),f=m.useRef(),v=g=>{const h=l?e:g;n?.(h),d(h),s(!1)};return m.useImperativeHandle(i,()=>({...f.current,validate:()=>{const g=t(c);return s(g),!g}})),se(Hs,{visible:l,content:r(c),arrow:!1,color:_n.token.colorError6,placement:"bottom-left",children:se(jl,{ref:f,autoFocus:!0,inputState:l?"error":void 0,value:c,onChange:g=>{d(g);const h=t(g);s(h),o?.(g,h)},onBlur:g=>{v(g)},onPressEnter:g=>{v(g.target.value)},onClick:g=>{g.stopPropagation()},...a})})});m.forwardRef(({defaultValue:e,checkError:t,validateHelp:r,onSave:n,...o},a)=>{const[i,l]=m.useState(!1),[s,c]=m.useState(e),d=f=>{const v=i?e:f;n(v),c(v),l(!1)};return se(Hs,{visible:i,content:r(s),arrow:!1,color:_n.token.colorError6,placement:"bottom-left",children:se(jl.TextArea,{ref:a,autoFocus:!0,inputState:i?"error":void 0,value:s,onChange:f=>{c(f),l(t(f))},onBlur:f=>{d(f)},onClick:f=>{f.stopPropagation()},...o})})});const YYt="";m.forwardRef(({data:e=[],showRoot:t=!0,showVirtualRoot:r=!1,showAddFolder:n=!0,disableAddFolder:o=!1,addFolderIconName:a="icon-add-folder",emptyText:i,addButtonMenu:l,moreButtonMenu:s,onRename:c,onSearch:d,namesGetter:f,iconNameGetter:v,toolTipGetter:g,selectedKeys:h,onSelect:_,extractContent:b,fixTreeNodeFunc:x,searchable:w=!0,...D},I)=>{const[$,F]=m.useState(""),[C,R]=m.useState(!1),[k,P]=m.useState(!1),[U,B]=m.useState([]),[z,A]=m.useState(e),[M,{width:N}]=Ad(),T=h?.[0]===z[0]?.id,O=z[0]?.name,j=z[0]?Nw(!1,z[0]):"",[K,Q]=m.useState(!1),[,Y]=NY(()=>{d?.($),De.isEmpty($)||R(!0)},300,[$]);a_(()=>{Y()}),Ei(()=>{A(e)},[e]);const X=(ce,oe)=>{const fe=ve=>ve?.map(he=>({...he,isEdit:he.id===ce?oe:!1,children:fe(he.children)}));A(fe(z)),P(oe)},G=(ce,oe)=>{ce===Wr.ADD_FOLDER&&P(!0),l?.(oe)?.onClick?.(ce,oe)},H=()=>{const ce=h?.[0]&&Ha(h[0],z);let oe=z[0];ce&&(oe=fo(ce.nodeType)?Ha(ce.pId,z):ce),G(Wr.ADD_FOLDER,oe)},V=(ce,oe)=>{X(ce.id,!1),c?.(ce.id,oe,z)},Z=ce=>ce.isEdit?se(T4,{className:"fdi-w-full",defaultValue:ce.name,size:"small",onSave:oe=>V(ce,oe),onFocus:()=>{f?.(ce).then(oe=>{B(oe.filter(fe=>fe.id!==ce.id).map(fe=>fe.name))})},checkError:oe=>oe===ce.name?!1:n_(oe,U,Ii.NAME),validateHelp:oe=>o_(oe,U,Ii.NAME)}):$r("div",{className:"fdi-editable-tree-node",children:[se(Hs,{placement:"bottom-left",content:g?g(ce):ce.name,children:se(F4,{className:"fdi-editable-tree-node-title",highlightClassName:"fdi-component-keyword-highlight",autoEscape:!0,textToHighlight:ce.name,searchWords:[$]})}),!k&&se("div",{className:"fdi-flex",children:se(Ngt,{nodeData:ce,addButtonMenu:l,moreButtonMenu:s,handleLeafCreate:G,toggleEditState:X})})]}),te=ce=>ce?.map(oe=>{const fe={...oe,name:rt(oe.name)},{id:ve,nodeType:he,children:ge=[]}=fe,{className:$e,...ue}=x?.(fe)||{};return{key:ve,isLeaf:fo(he),icon:({expanded:Me})=>se(Rn,{name:v?v(Me,fe):Nw(Me,fe),size:gw.NORMAL}),title:Z(fe),children:te(ge),className:Gt("fdi-group",$e),...ue}}),J=ce=>{const oe=t?ce:ce[0]?.children||[];return m4(oe[0]?.id)?(oe[0]?.children||[]).length===0:oe.length===0},ne=()=>{_?.([z[0]?.id])},re=se("div",{className:"x-list-tree",style:{height:_n.token.controlHeightLg},children:se("div",{className:`fdi-flex fdi-items-center fdi-justify-between tree-node !fdi-pl-[11px] ${T?"node-selected":""}`,style:{height:_n.token.controlHeightLg},onClick:ne,children:$r("div",{className:"fdi-flex fdi-items-center fdi-gap-x-[6px]",children:[se(Rn,{name:j,size:16}),se("div",{children:O})]})})}),ie=m.useMemo(()=>te(t?z:z[0]?.children),[t,z,$]);return $r("div",{className:"fdi-component-flex-col-layout fdi-component-flex-h-fill-layout fdi-justify-start fdi-gap-xl",children:[w&&$r("div",{className:"fdi-flex fdi-w-full fdi-gap-sm",children:[se("div",{className:"fdi-component-flex-w-fill-layout fdi-z-10",ref:M,children:se(jl,{className:Gt(K&&"fdi-transition-[width] fdi-duration-300"),style:{width:N||"100%"},prefix:se(Rn,{name:"icon-search"}),placeholder:rt("FDI_Search"),value:$,onFocus:()=>{Q(!0),R(!0)},onChange:ce=>{F(ce)},onPressEnter:ce=>{const oe=ce.target.value;F(oe),De.isEmpty(oe)||R(!0)},onBlur:ce=>{Q(!1),F(ce),R(!De.isEmpty(ce))},allowClear:!0,onClearBtnClick:()=>{F(""),R(!1)}})}),!C&&$r(ua,{children:[n&&se(Ar,{type:"negative",disabled:o||k,className:Gt({"fdi-pointer-none":k}),icon:se(Rn,{name:a}),onClick:H}),b]})]}),$r("div",{className:Gt("fdi-component-flex-col-layout",J(e)?t?"fdi-h-[36px]":"fdi-h-auto":"fdi-component-flex-h-fill-layout"),children:[r&&re,se(tK,{className:"fdi-editable-tree fdi-component-flex-h-fill-layout",treeData:ie,selectable:!k,expandArea:k?"icon":"node",selectedKeys:h,onSelect:_,ref:I,virtual:!0,...D})]}),J(e)&&se(Jp,{description:i})]})});const R4=({isInput:e,defaultValue:t,value:r,onChange:n,onBlur:o,onFocus:a,className:i="",placeHolder:l="",width:s=250,getPopupContainer:c,checkError:d,validateHelp:f,iconName:v,size:g="normal",rows:h=3})=>{const[_,b]=m.useState(!1),[x,w]=m.useState(r||t||""),[D,I]=m.useState(!1),$=m.useRef(null),[F,{width:C}]=Ad(),R=g==="small"?_n.token.controlHeightSm:g==="large"?_n.token.controlHeightLg:_n.token.controlHeight,k=()=>{const P=r??x;return P.includes(` +`)?`${P.split(` +`)[0]}...`:P};return se(J1,{hasPadding:!1,visible:_,arrow:!1,placement:"bottom",overlayClassName:Gt("fdi-icon-extensible-input-popover",i),getPopupContainer:c,offset:[0,-parseInt(R)],content:se(Hs,{visible:D,content:f?.(r??x),arrow:!1,color:_n.token.colorError6,placement:"bottom-left",children:e?se(jl,{ref:$,size:g,style:{width:C},inputState:D?"error":void 0,placeholder:l,value:r??x,onChange:P=>{w(P),I(d?.(P)??!1),n?.(P)},onBlur:P=>{const U=D?t??P:P;w(U),b(!1),I(!1),o?.(U)},onPressEnter:P=>{const U=P.target.value,B=D?t??U:U;w(B),b(!1),I(!1),o?.(B)}}):se(jl.ResizeTextArea,{ref:$,style:{width:C},autoSize:{minRows:h,maxRows:h},inputState:D?"error":void 0,placeholder:l,value:r??x,onChange:P=>{w(P),I(d?.(P)??!1),n?.(P)},onBlur:P=>{const U=D?t??P:P;w(U),b(!1),I(!1),o?.(U)}})}),children:se("div",{ref:F,style:{width:s},children:se(Hs,{content:r??x,className:"fdi-max-w-[200px]",placement:"bottom-left",children:$r("div",{className:"fdi-flex fdi-items-center fdi-group",style:{height:R},children:[se("span",{className:"fdi-truncate fdi-component-flex-w-fill-layout",children:k()}),se(Ar,{className:"fdi-hidden group-hover:fdi-block",type:"text-normal",size:g,icon:se(Rn,{name:v??"icon-edit"}),onClick:()=>{b(!0),setTimeout(()=>{$.current.focus({cursor:"end"}),a?.()})}})]})})})})},GYt="",XYt="",ZYt="",Pd=({className:e,icon:t,text:r,onClick:n,fontBold:o,hasTitle:a=!0,tooltipText:i,...l})=>$r("span",{className:Gt("fdi-flex fdi-w-full fdi-gap-md fdi-items-center fdi-truncate",e),onClick:n,...l,children:[se(Rn,{name:t.name,size:t.size||gw.NORMAL,color:t.color}),se(Hs,{content:a?i||r:void 0,placement:"bottom-left",children:se("span",{className:`fdi-label-text fdi-component-flex-w-fill-layout fdi-truncate ${o?"fdi-font-semibold":""}`,children:r})})]}),VY=118,KY=({className:e,tableData:t,renderColumn:r,...n})=>{const[o,{width:a,height:i}]=Ad(),l=c=>{const d=Math.max((a-2)/c.length,VY);return c.map(f=>{const v=Rd(f.type);return{dataIndex:f.id,title:se(Pd,{className:"fdi-text-black-2",icon:{name:v},text:rt($Y(f))}),width:d,render:g=>se(i_,{text:g}),...r?.(f)}})},s=c=>{const{fields:d=[],data:f=[]}=c;return f.map(v=>{const g={};return d.forEach((h,_)=>{g[h.id]=De.isNull(v[_])?"":rt(v[_])}),g})};return se("div",{ref:o,className:e,children:se(Hh,{style:{width:a,height:i},defaultColumnWidth:VY,columns:l(t.fields||[]),dataSource:s(t),noWrap:!0,fixedHeader:!0,hasCellBorder:!0,striped:!0,...n})})},QYt="",Mgt=({direction:e="horizontal",allowCollapse:t=!0,maxWidth:r=580,minWidth:n=200,defaultSize:o=280,...a})=>se(hY,{allowCollapse:t,style:e==="horizontal"?{height:"100%"}:{width:"100%"},defaultSize:o,minWidth:n,maxWidth:r,...a});var qY={};const Yr=ca($he);var Xr={},zgt={get exports(){return Xr},set exports(e){Xr=e}},O4={},Lgt={get exports(){return O4},set exports(e){O4=e}},Bgt=Ir,YY=U6,Vw=td.getWeakData,jgt=Dy,Ugt=So,Hgt=Oc,A4=gn,Wgt=vi,GY=zc,XY=Qn,ZY=Nc,Vgt=ZY.set,Kgt=ZY.getterFor,qgt=GY.find,Ygt=GY.findIndex,Ggt=Bgt([].splice),Xgt=0,Kw=function(e){return e.frozen||(e.frozen=new QY)},QY=function(){this.entries=[]},k4=function(e,t){return qgt(e.entries,function(r){return r[0]===t})};QY.prototype={get:function(e){var t=k4(this,e);if(t)return t[1]},has:function(e){return!!k4(this,e)},set:function(e,t){var r=k4(this,e);r?r[1]=t:this.entries.push([e,t])},delete:function(e){var t=Ygt(this.entries,function(r){return r[0]===e});return~t&&Ggt(this.entries,t,1),!!~t}};var Zgt={getConstructor:function(e,t,r,n){var o=e(function(s,c){jgt(s,a),Vgt(s,{type:t,id:Xgt++,frozen:void 0}),Hgt(c)||Wgt(c,s[n],{that:s,AS_ENTRIES:r})}),a=o.prototype,i=Kgt(t),l=function(s,c,d){var f=i(s),v=Vw(Ugt(c),!0);return v===!0?Kw(f).set(c,d):v[f.id]=d,s};return YY(a,{delete:function(s){var c=i(this);if(!A4(s))return!1;var d=Vw(s);return d===!0?Kw(c).delete(s):d&&XY(d,c.id)&&delete d[c.id]},has:function(c){var d=i(this);if(!A4(c))return!1;var f=Vw(c);return f===!0?Kw(d).has(c):f&&XY(f,d.id)}}),YY(a,r?{get:function(c){var d=i(this);if(A4(c)){var f=Vw(c);return f===!0?Kw(d).get(c):f?f[d.id]:void 0}},set:function(c,d){return l(this,c,d)}}:{add:function(c){return l(this,c,!0)}}),o}},Qgt=C6,JY=In,qw=Ir,eG=U6,Jgt=td,eht=j6,tG=Zgt,Yw=gn,Gw=Nc.enforce,tht=_r,rht=d5,u_=Object,nht=Array.isArray,Xw=u_.isExtensible,rG=u_.isFrozen,oht=u_.isSealed,nG=u_.freeze,aht=u_.seal,iht=!JY.ActiveXObject&&"ActiveXObject"in JY,d_,oG=function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}},aG=eht("WeakMap",oG,tG),ev=aG.prototype,Zw=qw(ev.set),lht=function(){return Qgt&&tht(function(){var e=nG([]);return Zw(new aG,e,1),!rG(e)})};if(rht)if(iht){d_=tG.getConstructor(oG,"WeakMap",!0),Jgt.enable();var iG=qw(ev.delete),Qw=qw(ev.has),lG=qw(ev.get);eG(ev,{delete:function(e){if(Yw(e)&&!Xw(e)){var t=Gw(this);return t.frozen||(t.frozen=new d_),iG(this,e)||t.frozen.delete(e)}return iG(this,e)},has:function(t){if(Yw(t)&&!Xw(t)){var r=Gw(this);return r.frozen||(r.frozen=new d_),Qw(this,t)||r.frozen.has(t)}return Qw(this,t)},get:function(t){if(Yw(t)&&!Xw(t)){var r=Gw(this);return r.frozen||(r.frozen=new d_),Qw(this,t)?lG(this,t):r.frozen.get(t)}return lG(this,t)},set:function(t,r){if(Yw(t)&&!Xw(t)){var n=Gw(this);n.frozen||(n.frozen=new d_),Qw(this,t)?Zw(this,t,r):n.frozen.set(t,r)}else Zw(this,t,r);return this}})}else lht()&&eG(ev,{set:function(t,r){var n;return nht(t)&&(rG(t)?n=nG:oht(t)&&(n=aht)),Zw(this,t,r),n&&n(t),this}});var sht=hn,cht=sht.WeakMap,uht=cht,dht=uht,fht=dht,pht=fht,vht=Ds,ght=TypeError,sG=function(e){if(typeof e=="object"&&"has"in e&&"get"in e&&"set"in e)return e;throw new ght(vht(e)+" is not a weakmap")},hht=lo,Jw=W6,eD={WeakMap:hht("WeakMap"),set:Jw("set",2),get:Jw("get",1),has:Jw("has",1),remove:Jw("delete",1)},_ht=Ne,mht=sG,P4=eD,xht=P4.get,bht=P4.has,cG=P4.set;_ht({target:"WeakMap",proto:!0,real:!0,forced:!0},{emplace:function(t,r){var n=mht(this),o,a;return bht(n,t)?(o=xht(n,t),"update"in r&&(o=r.update(o,t,n),cG(n,t,o)),o):(a=r.insert(t,n),cG(n,t,a),a)}});var yht=Ne,uG=eD,wht=V6;yht({target:"WeakMap",stat:!0,forced:!0},{from:wht(uG.WeakMap,uG.set,!0)});var Dht=Ne,dG=eD,Iht=K6;Dht({target:"WeakMap",stat:!0,forced:!0},{of:Iht(dG.WeakMap,dG.set,!0)});var Fht=Ne,$ht=sG,Eht=eD.remove;Fht({target:"WeakMap",proto:!0,real:!0,forced:!0},{deleteAll:function(){for(var t=$ht(this),r=!0,n,o=0,a=arguments.length;o1&&arguments[1]!==void 0?arguments[1]:1;o+=1;var f=o;function v(g){if(g===0)i(f),c();else{var h=r(function(){v(g-1)});a.set(f,h)}}return v(d),f};return l.cancel=function(s){var c=a.get(s);return i(c),n(c)},g_.default=l,g_}var yG;function Zht(){if(yG)return v_;yG=1;var e=Se;Object.defineProperty(v_,"__esModule",{value:!0}),v_.useBatcher=s,v_.useEffectState=c;var t=e(Ea),r=e(m),n=Kr,o=e(xG()),a=e(Xht()),i=Ws();function l(d){if(typeof MessageChannel>"u")(0,a.default)(d);else{var f=new MessageChannel;f.port1.onmessage=function(){return d()},f.port2.postMessage(void 0)}}function s(){var d=r.default.useRef(null),f=function(g){d.current||(d.current=[],l(function(){(0,n.unstable_batchedUpdates)(function(){(0,i.each)(d.current,function(h){h()}),d.current=null})})),d.current.push(g)};return f}function c(d,f){var v=r.default.useState(f),g=(0,t.default)(v,2),h=g[0],_=g[1],b=(0,o.default)(function(x){d(function(){_(x)})});return[h,b]}return v_}var Nd={},wG;function Qht(){if(wG)return Nd;wG=1;var e=Yr,t=Xr,r=Zr;Object.defineProperty(Nd,"__esModule",{value:!0}),Nd.useLayoutUpdateEffect=Nd.useLayoutEffect=void 0;var n=a(m);function o(s){if(typeof t!="function")return null;var c=new t,d=new t;return(o=function(v){return v?d:c})(s)}function a(s,c){if(!c&&s&&s.__esModule)return s;if(s===null||e(s)!="object"&&typeof s!="function")return{default:s};var d=o(c);if(d&&d.has(s))return d.get(s);var f={__proto__:null},v=Object.defineProperty&&r;for(var g in s)if(g!=="default"&&Object.prototype.hasOwnProperty.call(s,g)){var h=v?r(s,g):null;h&&(h.get||h.set)?Object.defineProperty(f,g,h):f[g]=s[g]}return f.default=s,d&&d.set(s,f),f}var i=n.useLayoutEffect,l=Nd.useLayoutEffect=function(c,d){var f=n.useRef(!0);i(function(){return c(f.current)},d),i(function(){return f.current=!1,function(){f.current=!0}},[])};return Nd.useLayoutUpdateEffect=function(c,d){l(function(f){if(!f)return c()},d)},Nd}var h_={},__={},m_={},DG;function B4(){return DG||(DG=1,Object.defineProperty(m_,"__esModule",{value:!0}),m_.default=void 0,m_.default={locale:"zh-cn",dialog:{okText:"确定",cancelText:"取消",dragTip:"长按可拖拽窗口"},prompt:{okText:"确定",cancelText:"取消"},popConfirm:{okText:"确定",cancelText:"取消"},alert:{okText:"确定",cancelText:"取消"},check:{checkAll:"全选"},combo:{searchEmpty:"未搜索到数据",searchPlaceholder:"搜索",searching:"搜索中...",allCheck:"全选",allCheckInSearch:"搜索结果全选",emptyTip:"没有可选择的数据",loading:"正在加载",clickToLoadMore:"点击加载更多"},upload:{uploadText:"选择文件"},datetime:{clear:"清空",today:"今天",month:"本月",now:"此刻",ok:"确定",time:"时间",shortSun:"日",shortMon:"一",shortTue:"二",shortWed:"三",shortThu:"四",shortFri:"五",shortSat:"六",january:"一月",february:"二月",march:"三月",april:"四月",may:"五月",june:"六月",july:"七月",august:"八月",september:"九月",october:"十月",november:"十一月",december:"十二月",january_m:"1月",february_m:"2月",march_m:"3月",april_m:"4月",may_m:"5月",june_m:"6月",july_m:"7月",august_m:"8月",september_m:"9月",october_m:"10月",november_m:"11月",december_m:"12月",hour:"时",minute:"分",second:"秒"},cascader:{searchPlaceholder:"搜索",searchEmpty:"未搜索到数据",searching:"搜索中..."},filePreview:{download:"下载",noSupportPreview:"当前文件类型不支持在线预览",zoomIn:"放大",zoomOut:"缩小",rotateToRight:"向右旋转",viewOrigin:"查看原图",loading:"加载中,请稍后..."},pagination:{currentPage:"第 {page} 页"},colorPicker:{recommendColor:"推荐颜色",customColor:"自定义颜色",alpha:"透明度",noMessage:"暂无"},image:{preview:"预览"},typography:{edit:"编辑",copy:"复制",copied:"复制成功",expand:"展开"},select:{allCheck:"全选",allCheckInSearch:"搜索结果全选",emptyTip:"没有可选择的数据",searchPlaceholder:"搜索"},treeSelect:{emptyTip:"没有可选择的数据",searchPlaceholder:"搜索"}}),m_}var IG;function FG(){if(IG)return __;IG=1;var e=Se;Object.defineProperty(__,"__esModule",{value:!0}),__.LocaleContext=void 0;var t=m,r=e(B4());return __.LocaleContext=(0,t.createContext)({locale:r.default}),__}var $G;function Jht(){if($G)return h_;$G=1;var e=Se;Object.defineProperty(h_,"__esModule",{value:!0}),h_.default=void 0;var t=e(tl),r=e(m),n=FG(),o=e(B4()),a=function(l){var s=r.default.useContext(n.LocaleContext),c=s.locale,d=r.default.useMemo(function(){var f,v=o.default[l],g=(f=c?.[l])!==null&&f!==void 0?f:{};return(0,t.default)((0,t.default)({},v),g||{})},[l,c]);return[d]};return h_.default=a,h_}var nD={},EG;function e_t(){if(EG)return nD;EG=1;var e=Yr,t=Xr,r=Zr;Object.defineProperty(nD,"__esModule",{value:!0}),nD.default=i;var n=a(m);function o(l){if(typeof t!="function")return null;var s=new t,c=new t;return(o=function(f){return f?c:s})(l)}function a(l,s){if(!s&&l&&l.__esModule)return l;if(l===null||e(l)!="object"&&typeof l!="function")return{default:l};var c=o(s);if(c&&c.has(l))return c.get(l);var d={__proto__:null},f=Object.defineProperty&&r;for(var v in l)if(v!=="default"&&Object.prototype.hasOwnProperty.call(l,v)){var g=f?r(l,v):null;g&&(g.get||g.set)?Object.defineProperty(d,v,g):d[v]=l[v]}return d.default=l,c&&c.set(l,d),d}function i(l,s,c){var d=n.useRef({});return(!("value"in d.current)||c(d.current.condition,s))&&(d.current.value=l(),d.current.condition=s),d.current.value}return nD}var x_={},SG;function t_t(){if(SG)return x_;SG=1;var e=Se;Object.defineProperty(x_,"__esModule",{value:!0}),x_.default=void 0;var t=e(Ea),r=m,n=function(a,i){var l=i||{},s=l.defaultValue,c=l.value,d=l.onChange,f=l.postState,v=(0,r.useState)(function(){return c!==void 0?c:s!==void 0?s:a}),g=(0,t.default)(v,2),h=g[0],_=g[1],b=c!==void 0?c:h;f&&(b=f(b));var x=function(I,$){var F=typeof I=="function"?I(h):I;_(I),$?.invokeChange!==!1&&b!==I&&d&&d(F,b)},w=(0,r.useRef)(!0);return(0,r.useEffect)(function(){if(w.current){w.current=!1;return}c===void 0&&_(c)},[c]),[b,x]};return x_.default=n,x_}var b_={},j4={},Wa={},U4={},y_={};const Md=ca(Ide),zd=ca(zhe),w_=ca(u_e),D_=ca(f_e),I_=ca(E_e);var Ld={},CG;function r_t(){if(CG)return Ld;CG=1;var e=Se;Object.defineProperty(Ld,"__esModule",{value:!0}),Ld.setImperativeLocale=Ld.getImperativeLocale=void 0;var t=e(tl),r=e(B4()),n=(0,t.default)({},r.default);return Ld.getImperativeLocale=function(){return n},Ld.setImperativeLocale=function(a){n=(0,t.default)((0,t.default)({},r.default),a)},Ld}var TG;function n_t(){if(TG)return y_;TG=1;var e=Yr,t=Rc,r=Xr,n=Zr,o=Se;Object.defineProperty(y_,"__esModule",{value:!0}),y_.default=void 0;var a=o(Md),i=o(zd),l=o(w_),s=o(D_),c=o(I_),d=_(m),f=_(Or),v=FG(),g=r_t();function h(D){if(typeof r!="function")return null;var I=new r,$=new r;return(h=function(C){return C?$:I})(D)}function _(D,I){if(!I&&D&&D.__esModule)return D;if(D===null||e(D)!="object"&&typeof D!="function")return{default:D};var $=h(I);if($&&$.has(D))return $.get(D);var F={__proto__:null},C=Object.defineProperty&&n;for(var R in D)if(R!=="default"&&Object.prototype.hasOwnProperty.call(D,R)){var k=C?n(D,R):null;k&&(k.get||k.set)?Object.defineProperty(F,R,k):F[R]=D[R]}return F.default=D,$&&$.set(D,F),F}function b(D){var I=x();return function(){var F=(0,c.default)(D),C;if(I){var R=(0,c.default)(this).constructor;C=t(F,arguments,R)}else C=F.apply(this,arguments);return(0,s.default)(this,C)}}function x(){if(typeof Reflect>"u"||!t||t.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(t(Boolean,[],function(){})),!0}catch{return!1}}var w=function(D){(0,l.default)($,D);var I=b($);function $(F){var C;return(0,a.default)(this,$),C=I.call(this,F),(0,g.setImperativeLocale)(F.locale),C}return(0,i.default)($,[{key:"componentDidUpdate",value:function(C){var R=this.props.locale;R!==C.locale&&(0,g.setImperativeLocale)(R)}},{key:"render",value:function(){var C=this.props,R=C.children,k=C.locale;return d.createElement(v.LocaleContext.Provider,{value:{locale:k}},R)}}]),$}(d.Component);return w.propTypes={locale:f.object},y_.default=w,y_}var RG;function o_t(){return RG||(RG=1,function(e){var t=Yr,r=Xr,n=Zr,o=ya;Object.defineProperty(e,"__esModule",{value:!0});var a={};e.default=void 0;var i=s(n_t());o(i).forEach(function(c){c==="default"||c==="__esModule"||Object.prototype.hasOwnProperty.call(a,c)||c in e&&e[c]===i[c]||Object.defineProperty(e,c,{enumerable:!0,get:function(){return i[c]}})});function l(c){if(typeof r!="function")return null;var d=new r,f=new r;return(l=function(g){return g?f:d})(c)}function s(c,d){if(!d&&c&&c.__esModule)return c;if(c===null||t(c)!="object"&&typeof c!="function")return{default:c};var f=l(d);if(f&&f.has(c))return f.get(c);var v={__proto__:null},g=Object.defineProperty&&n;for(var h in c)if(h!=="default"&&Object.prototype.hasOwnProperty.call(c,h)){var _=g?n(c,h):null;_&&(_.get||_.set)?Object.defineProperty(v,h,_):v[h]=c[h]}return v.default=c,f&&f.set(c,v),v}e.default=i.default}(U4)),U4}var Bd={},F_={},OG;function AG(){if(OG)return F_;OG=1;var e=Se;Object.defineProperty(F_,"__esModule",{value:!0}),F_.default=void 0;var t=e(m),r=e(PG()),n=function(a){var i=t.default.useContext(r.default),l=t.default.useMemo(function(){return a?typeof a=="string"||typeof a=="number"?a??i:a instanceof Function?a(i):i:i},[a,i]);return l};return F_.default=n,F_}var kG;function PG(){if(kG)return Bd;kG=1;var e=Se;Object.defineProperty(Bd,"__esModule",{value:!0}),Bd.default=Bd.SizeProvider=void 0;var t=e(m),r=e(AG()),n=t.default.createContext(void 0);return Bd.SizeProvider=function(a){var i=a.children,l=a.size,s=(0,r.default)(l);return t.default.createElement(n.Provider,{value:s},i)},Bd.default=n,Bd}var $_={},E_={},NG;function a_t(){return NG||(NG=1,Object.defineProperty(E_,"__esModule",{value:!0}),E_.default=void 0,E_.default={global:["--fd-color-red-1: #fdeeee;","--fd-color-red-2: #f9cbcb;","--fd-color-red-3: #f7b9b9;","--fd-color-red-4: #f5a8a8;","--fd-color-red-5: #f18585;","--fd-color-red-6: #EB5050;","--fd-color-red-7: #bc4040;","--fd-color-red-8: #8d3030;","--fd-color-red-9: #5e2020;","--fd-color-red-10: #471818;","--fd-color-yellow-1: #fef6e6;","--fd-color-yellow-2: #fbe5b3;","--fd-color-yellow-3: #f9dc99;","--fd-color-yellow-4: #f8d480;","--fd-color-yellow-5: #f5c24d;","--fd-color-yellow-6: #F0A800;","--fd-color-yellow-7: #c08600;","--fd-color-yellow-8: #906500;","--fd-color-yellow-9: #604300;","--fd-color-yellow-10: #483200;","--fd-color-green-1: #edf9f1;","--fd-color-green-2: #c8edd4;","--fd-color-green-3: #b5e7c5;","--fd-color-green-4: #a3e1b7;","--fd-color-green-5: #7ed49a;","--fd-color-green-6: #46C26F;","--fd-color-green-7: #389b59;","--fd-color-green-8: #2a7443;","--fd-color-green-9: #1c4e2c;","--fd-color-green-10: #153a21;","--fd-color-blue-1: #eaf2fd;","--fd-color-blue-2: #c1d8f9;","--fd-color-blue-3: #accbf7;","--fd-color-blue-4: #97bef5;","--fd-color-blue-5: #6da4f1;","--fd-color-blue-6: #2F7DEB;","--fd-color-blue-7: #2664bc;","--fd-color-blue-8: #1c4b8d;","--fd-color-blue-9: #13325e;","--fd-color-blue-10: #0e2647;","--fd-color-brand-1: #e6f8f5;","--fd-color-brand-2: #b3eae0;","--fd-color-brand-3: #99e3d6;","--fd-color-brand-4: #80dccc;","--fd-color-brand-5: #4dcdb8;","--fd-color-brand-6: #00B899;","--fd-color-brand-7: #00937a;","--fd-color-brand-8: #006e5c;","--fd-color-brand-9: #004a3d;","--fd-color-brand-10: #00372e;","--fd-color-error-1: var(--fd-color-red-1);","--fd-color-error-2: var(--fd-color-red-2);","--fd-color-error-3: var(--fd-color-red-3);","--fd-color-error-4: var(--fd-color-red-4);","--fd-color-error-5: var(--fd-color-red-5);","--fd-color-error-6: var(--fd-color-red-6);","--fd-color-error-7: var(--fd-color-red-7);","--fd-color-error-8: var(--fd-color-red-8);","--fd-color-error-9: var(--fd-color-red-9);","--fd-color-error-10: var(--fd-color-red-10);","--fd-color-warning-1: var(--fd-color-yellow-1);","--fd-color-warning-2: var(--fd-color-yellow-2);","--fd-color-warning-3: var(--fd-color-yellow-3);","--fd-color-warning-4: var(--fd-color-yellow-4);","--fd-color-warning-5: var(--fd-color-yellow-5);","--fd-color-warning-6: var(--fd-color-yellow-6);","--fd-color-warning-7: var(--fd-color-yellow-7);","--fd-color-warning-8: var(--fd-color-yellow-8);","--fd-color-warning-9: var(--fd-color-yellow-9);","--fd-color-warning-10: var(--fd-color-yellow-10);","--fd-color-success-1: var(--fd-color-green-1);","--fd-color-success-2: var(--fd-color-green-2);","--fd-color-success-3: var(--fd-color-green-3);","--fd-color-success-4: var(--fd-color-green-4);","--fd-color-success-5: var(--fd-color-green-5);","--fd-color-success-6: var(--fd-color-green-6);","--fd-color-success-7: var(--fd-color-green-7);","--fd-color-success-8: var(--fd-color-green-8);","--fd-color-success-9: var(--fd-color-green-9);","--fd-color-success-10: var(--fd-color-green-10);","--fd-color-info-1: var(--fd-color-blue-1);","--fd-color-info-2: var(--fd-color-blue-2);","--fd-color-info-3: var(--fd-color-blue-3);","--fd-color-info-4: var(--fd-color-blue-4);","--fd-color-info-5: var(--fd-color-blue-5);","--fd-color-info-6: var(--fd-color-blue-6);","--fd-color-info-7: var(--fd-color-blue-7);","--fd-color-info-8: var(--fd-color-blue-8);","--fd-color-info-9: var(--fd-color-blue-9);","--fd-color-info-10: var(--fd-color-blue-10);","--fd-color-grey-1: #FFFFFF;","--fd-color-grey-2: #F5F6F8;","--fd-color-grey-3: #F0F1F4;","--fd-color-grey-4: #EDEFF3;","--fd-color-grey-5: #E6E8ED;","--fd-color-grey-6: #EBECEE;","--fd-color-grey-7: #E1E3E5;","--fd-color-grey-8: #D7D9DC;","--fd-color-grey-9: #B5B8BE;","--fd-color-grey-10: #838892;","--fd-color-grey-11: #525967;","--fd-color-grey-12: #141E31;","--fd-color-grey-13: #000000;","--fd-color-transparent-1: #000000;","--fd-color-transparent-2: rgba(0, 10, 31, 0.92);","--fd-color-transparent-3: rgba(1, 11, 31, 0.68);","--fd-color-transparent-4: rgba(2, 12, 33, 0.49);","--fd-color-transparent-5: rgba(0, 10, 31, 0.29);","--fd-color-transparent-6: rgba(5, 18, 36, 0.16);","--fd-color-transparent-7: rgba(5, 22, 38, 0.12);","--fd-color-transparent-8: rgba(5, 17, 42, 0.08);","--fd-color-transparent-9: rgba(5, 25, 75, 0.1);","--fd-color-transparent-10: rgba(30, 55, 105, 0.08);","--fd-color-transparent-11: rgba(5, 22, 72, 0.06);","--fd-color-transparent-12: rgba(5, 30, 80, 0.04);","--fd-color-transparent-13: transparent;","--fd-border-radius-xs: 2px;","--fd-border-radius-sm: 3px;","--fd-border-radius: 4px;","--fd-border-radius-lg: 6px;","--fd-border-radius-xl: 8px;","--fd-gap-xs: 2px;","--fd-gap-sm: 4px;","--fd-gap: 8px;","--fd-gap-lg: 10px;","--fd-gap-xl: 12px;","--fd-gap-2xl: 16px;","--fd-gap-3xl: 20px;","--fd-gap-4xl: 24px;","--fd-gap-5xl: 32px;","--fd-padding-layout-3xs: 2px;","--fd-padding-layout-2xs: 4px;","--fd-padding-layout-xs: 8px;","--fd-padding-layout-sm: 12px;","--fd-padding-layout: 16px;","--fd-padding-layout-lg: 20px;","--fd-padding-layout-xl: 24px;","--fd-padding-layout-2xl: 32px;","--fd-padding-layout-3xl: 48px;","--fd-padding-zero: 0;","--fd-padding-2xs: 2px;","--fd-padding-xs: 4px;","--fd-padding-sm: 6px;","--fd-padding: 8px;","--fd-padding-lg: 12px;","--fd-padding-xl: 16px;","--fd-padding-2xl: 20px;","--fd-padding-3xl: 24px;","--fd-padding-4xl: 32px;","--fd-control-height-xs: 16px;","--fd-control-height-sm: 24px;","--fd-control-height: 32px;","--fd-control-height-lg: 40px;","--fd-font-size-sm: 12px;","--fd-font-size: 14px;","--fd-font-size-lg: 16px;","--fd-font-size-xl: 18px;","--fd-font-size-2xl: 20px;","--fd-font-size-heading-1: 38px;","--fd-font-size-heading-2: 30px;","--fd-font-size-heading-3: 24px;","--fd-font-size-heading-4: 20px;","--fd-font-size-heading-5: 16px;","--fd-control-item-font-weight-active: 400;","--fd-icon-size-2sm: 12px;","--fd-icon-size-sm: 14px;","--fd-icon-size: 16px;","--fd-icon-size-lg: 18px;","--fd-line-height-sm: 20px;","--fd-line-height: 22px;","--fd-line-height-lg: 24px;","--fd-line-height-xl: 26px;","--fd-line-height-2xl: 28px;","--fd-line-height-heading-1: 46px;","--fd-line-height-heading-2: 38px;","--fd-line-height-heading-3: 32px;","--fd-line-height-heading-4: 28px;","--fd-line-height-heading-5: 24px;","--fd-line-width: 1px;","--fd-line-width-bold: 2px;","--fd-line-width-focus: 4px;","--fd-control-outline-width: 2px;","--fd-color-primary: var(--fd-color-brand-6);","--fd-color-primary-active: var(--fd-color-brand-7);","--fd-color-primary-hover: var(--fd-color-brand-5);","--fd-color-primary-bg: var(--fd-color-brand-1);","--fd-color-primary-bg-active: var(--fd-color-brand-3);","--fd-color-primary-bg-hover: var(--fd-color-brand-2);","--fd-color-primary-border: var(--fd-color-brand-3);","--fd-color-primary-border-hover: var(--fd-color-brand-4);","--fd-color-primary-text: var(--fd-color-brand-6);","--fd-color-primary-text-active: var(--fd-color-brand-7);","--fd-color-primary-text-hover: var(--fd-color-brand-5);","--fd-color-link: var(--fd-color-brand-6);","--fd-color-link-active: var(--fd-color-brand-7);","--fd-color-link-hover: var(--fd-color-brand-4);","--fd-color-control-outline: rgba(0, 184, 153, 0.1);","--fd-color-info: var(--fd-color-info-6);","--fd-color-info-active: var(--fd-color-info-7);","--fd-color-info-hover: var(--fd-color-info-4);","--fd-color-info-bg: var(--fd-color-info-1);","--fd-color-info-bg-hover: var(--fd-color-info-2);","--fd-color-info-border: var(--fd-color-info-3);","--fd-color-info-border-hover: var(--fd-color-info-4);","--fd-color-info-text: var(--fd-color-info-6);","--fd-color-info-text-active: var(--fd-color-info-7);","--fd-color-info-text-hover: var(--fd-color-info-5);","--fd-color-success: var(--fd-color-success-6);","--fd-color-success-active: var(--fd-color-success-7);","--fd-color-success-hover: var(--fd-color-success-4);","--fd-color-success-bg: var(--fd-color-success-1);","--fd-color-success-bg-hover: var(--fd-color-success-2);","--fd-color-success-border: var(--fd-color-success-3);","--fd-color-success-border-hover: var(--fd-color-success-4);","--fd-color-success-text: var(--fd-color-success-6);","--fd-color-success-text-active: var(--fd-color-success-7);","--fd-color-success-text-hover: var(--fd-color-success-5);","--fd-color-warning: var(--fd-color-warning-6);","--fd-color-warning-active: var(--fd-color-warning-7);","--fd-color-warning-hover: var(--fd-color-warning-4);","--fd-color-warning-bg: var(--fd-color-warning-1);","--fd-color-warning-bg-hover: var(--fd-color-warning-2);","--fd-color-warning-border: var(--fd-color-warning-3);","--fd-color-warning-border-hover: var(--fd-color-warning-4);","--fd-color-warning-text: var(--fd-color-warning-6);","--fd-color-warning-text-active: var(--fd-color-warning-7);","--fd-color-warning-text-hover: var(--fd-color-warning-5);","--fd-color-warning-outline: rgba(240, 168, 0, 0.1);","--fd-color-error: var(--fd-color-error-6);","--fd-color-error-active: var(--fd-color-error-7);","--fd-color-error-hover: var(--fd-color-error-5);","--fd-color-error-bg: var(--fd-color-error-1);","--fd-color-error-bg-hover: var(--fd-color-error-2);","--fd-color-error-bg-active: var(--fd-color-error-3);","--fd-color-error-border: var(--fd-color-error-3);","--fd-color-error-border-hover: var(--fd-color-error-4);","--fd-color-error-text: var(--fd-color-error-6);","--fd-color-error-text-active: var(--fd-color-error-7);","--fd-color-error-text-hover: var(--fd-color-error-5);","--fd-color-error-outline: rgba(235, 80, 80, 0.06);","--fd-color-white: #FFFFFF;","--fd-color-black: #000000;","--fd-color-transparent: var(--fd-color-transparent-13);","--fd-color-text: var(--fd-color-transparent-2);","--fd-color-text-secondary: var(--fd-color-transparent-3);","--fd-color-text-tertiary: var(--fd-color-transparent-4);","--fd-color-text-quaternary: var(--fd-color-transparent-5);","--fd-color-text-placeholder: var(--fd-color-text-quaternary);","--fd-color-text-description: var(--fd-color-text-tertiary);","--fd-color-text-disabled: var(--fd-color-text-quaternary);","--fd-color-text-data-disabled: var(--fd-color-text-disabled);","--fd-color-text-heading: var(--fd-color-text);","--fd-color-text-light-solid: #FFFFFF;","--fd-color-text-label: var(--fd-color-text-secondary);","--fd-color-text-active: var(--fd-color-fill);","--fd-color-fill: var(--fd-color-transparent-7);","--fd-color-fill-secondary: var(--fd-color-transparent-9);","--fd-color-fill-tertiary: var(--fd-color-transparent-11);","--fd-color-fill-quaternary: var(--fd-color-transparent-12);","--fd-color-bg-container: var(--fd-color-white);","--fd-color-bg-container-disabled: var(--fd-color-fill-quaternary);","--fd-color-bg-elevated: #FFFFFF;","--fd-color-bg-spotlight: var(--fd-color-transparent-3);","--fd-color-bg-mask: var(--fd-color-transparent-5);","--fd-control-item-bg-hover: var(--fd-color-fill-tertiary);","--fd-control-item-bg-active: var(--fd-color-primary-bg);","--fd-control-item-bg-active-hover: var(--fd-color-primary-bg-hover);","--fd-control-item-bg-active-disabled: var(--fd-color-fill-secondary);","--fd-color-bg-text-hover: var(--fd-color-fill-quaternary);","--fd-color-bg-text-active: var(--fd-color-fill-tertiary);","--fd-color-fill-alter: var(--fd-color-fill-quaternary);","--fd-color-fill-content: var(--fd-color-fill-secondary);","--fd-color-icon: var(--fd-color-text-tertiary);","--fd-color-icon-hover: var(--fd-color-text-secondary);","--fd-color-icon-active: var(--fd-color-text);","--fd-color-icon-normal: var(--fd-color-text-secondary);","--fd-color-icon-disabled: var(--fd-color-transparent-7);","--fd-color-border: var(--fd-color-grey-5);","--fd-color-border-secondary: var(--fd-color-grey-4);","--fd-color-split: var(--fd-color-border-secondary);","--fd-box-shadow: 0 0 2px 0 rgba(9, 30, 64, 0.02), 0 4px 8px 0 rgba(9, 30, 64, .06), 0 4px 24px 6px rgba(9, 30, 64, .04);","--fd-box-shadow-secondary: 0 0 4px 0 rgba(9, 30, 64, 0.05), 0 6px 16px -1px rgba(9, 30, 64, .06), 0 6px 32px 8px rgba(9, 30, 64, .04);","--fd-box-shadow-tertiary: 0 0 5px 0 rgba(9, 30, 64, 0.06), 0 10px 24px -2px rgba(9, 30, 64, .1), 0 10px 48px 12px rgba(9, 30, 64, .04);"]}),E_}var H4={},tv={},MG;function i_t(){if(MG)return tv;MG=1;var e=Se;Object.defineProperty(tv,"__esModule",{value:!0}),tv.isFireFox=void 0,tv.isPlatformMac=r;var t=e(Yr);tv.isFireFox=function(){return(typeof navigator>"u"?"undefined":(0,t.default)(navigator))==="object"&&/Firefox/i.test(navigator.userAgent)};function r(){return/(mac\sos|macintosh)/i.test(navigator.appVersion)}return tv}var S_={},zG;function l_t(){if(zG)return S_;zG=1;var e=Se;Object.defineProperty(S_,"__esModule",{value:!0}),S_.toArray=void 0;var t=e(nl),r=e(m),n=Gg;return S_.toArray=function o(a){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},l=[];return r.default.Children.forEach(a,function(s){s==null&&!i.keepEmpty||(Array.isArray(s)?l=(0,t.default)(l).call(l,o(s)):(0,n.isFragment)(s)&&s.props?l=(0,t.default)(l).call(l,o(s.props.children,i)):l.push(s))}),l},S_}var Sr={};const LG=ca(Pxe);var Va={},BG;function jG(){if(BG)return Va;BG=1;var e=Se;Object.defineProperty(Va,"__esModule",{value:!0}),Va.placements=Va.noTrianglePlacements=Va.getPlacements=Va.NO_ARROW_OFFSET=Va.ARROW_OFFSET=void 0;var t=e(tl),r=wo(),n={"top-left":{points:["bl","tc"]},"left-top":{points:["tr","cl"]},"top-right":{points:["br","tc"]},"right-top":{points:["tl","cr"]},"bottom-right":{points:["tr","bc"]},"right-bottom":{points:["bl","cr"]},"bottom-left":{points:["tl","bc"]},"left-bottom":{points:["br","cl"]}},o=Va.getPlacements=function(s){var c=s.offset,d=s.arrowPointAtCenter,f=s.autoAdjustOverflow,v=f===void 0?!0:f,g=s.arrowWidth,h=g===void 0?12:g,_=s.dropdownArrowOffset,b=_===void 0?8:_,x={targetOffset:[0,0],overflow:v?{adjustX:!0,adjustY:!0,alwaysByViewport:!0}:{adjustX:!1,adjustY:!1,alwaysByViewport:!1}},w={left:(0,t.default)((0,t.default)({},x),{points:["cr","cl"],offset:[-c,0]}),right:(0,t.default)((0,t.default)({},x),{points:["cl","cr"],offset:[c,0]}),top:(0,t.default)((0,t.default)({},x),{points:["bc","tc"],offset:[0,-c]}),bottom:(0,t.default)((0,t.default)({},x),{points:["tc","bc"],offset:[0,c]}),"top-left":(0,t.default)((0,t.default)({},x),{points:["bl","tl"],offset:[0,-c]}),"left-top":(0,t.default)((0,t.default)({},x),{points:["tr","tl"],offset:[-c,0]}),"top-right":(0,t.default)((0,t.default)({},x),{points:["br","tr"],offset:[0,-c]}),"right-top":(0,t.default)((0,t.default)({},x),{points:["tl","tr"],offset:[c,0]}),"bottom-right":(0,t.default)((0,t.default)({},x),{points:["tr","br"],offset:[0,c]}),"right-bottom":(0,t.default)((0,t.default)({},x),{points:["bl","br"],offset:[c,0]}),"bottom-left":(0,t.default)((0,t.default)({},x),{points:["tl","bl"],offset:[0,c]}),"left-bottom":(0,t.default)((0,t.default)({},x),{points:["br","bl"],offset:[-c,0]})};return d&&(0,r.each)(w,function(D,I){n[I]&&(0,r.assign)(D,n[I]);var $=h/2;switch(I){case"top-left":case"bottom-left":(0,r.set)(D.offset,"0",-b-$);break;case"top-right":case"bottom-right":(0,r.set)(D.offset,"0",b+$);break;case"left-top":case"right-top":(0,r.set)(D.offset,"1",-b-$);break;case"left-bottom":case"right-bottom":(0,r.set)(D.offset,"1",b+$);break}}),w},a=Va.ARROW_OFFSET=10,i=Va.NO_ARROW_OFFSET=4;return Va.placements=o({offset:a}),Va.noTrianglePlacements=o({offset:i}),Va}var UG;function HG(){if(UG)return Sr;UG=1;var e=Qg,t=Xg,r=gy,n=hy,o=Se;Object.defineProperty(Sr,"__esModule",{value:!0}),Sr.throttleByAnimationFrame=Sr.pickTriggerAttrs=Sr.matchOneOfKeywords=Sr.makeArray=Sr.isValueEmpty=Sr.isStringEmpty=Sr.isSearchedByKeyword=Sr.isReactNode=Sr.isPromise=Sr.isNumeric=Sr.getSelectionText=Sr.getSearchedByKeys=Sr.getMergedComponentProps=Sr.genRandomCode=Sr.default=void 0;var a=o(ya),i=o(Qg),l=o(ap),s=o(nl),c=o(LG),d=o(Md),f=o(zd),v=o(m),g=jG(),h=Ws();function _(I,$){var F=typeof r<"u"&&n(I)||I["@@iterator"];if(!F){if(Array.isArray(I)||(F=b(I))||$&&I&&typeof I.length=="number"){F&&(I=F);var C=0,R=function(){};return{s:R,n:function(){return C>=I.length?{done:!0}:{done:!1,value:I[C++]}},e:function(z){throw z},f:R}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var k=!0,P=!1,U;return{s:function(){F=F.call(I)},n:function(){var z=F.next();return k=z.done,z},e:function(z){P=!0,U=z},f:function(){try{!k&&F.return!=null&&F.return()}finally{if(P)throw U}}}}function b(I,$){var F;if(I){if(typeof I=="string")return x(I,$);var C=e(F=Object.prototype.toString.call(I)).call(F,8,-1);if(C==="Object"&&I.constructor&&(C=I.constructor.name),C==="Map"||C==="Set")return t(I);if(C==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(C))return x(I,$)}}function x(I,$){($==null||$>I.length)&&($=I.length);for(var F=0,C=new Array($);F<$;F++)C[F]=I[F];return C}Sr.default=function(){function I(){(0,d.default)(this,I)}return(0,f.default)(I,null,[{key:"getPlacementTransitionName",value:function(F,C){if(!F)return"";switch(C){case"top-left":case"top":case"top-right":return"".concat(F,"-top");case"right-top":case"right":case"right-bottom":return"".concat(F,"-right");case"bottom-right":case"bottom":case"bottom-left":return"".concat(F,"-bottom");case"left-bottom":case"left":case"left-top":return"".concat(F,"-left");default:return""}}},{key:"isPointsEq",value:function(F,C){return F[0]===C[0]&&F[1]===C[1]}},{key:"getPlacementFromAlign",value:function(F,C){if(!F)return"bottom";var R=F.points,k=C||g.placements,P=(0,a.default)(k),U=_(P),B;try{for(U.s();!(B=U.n()).done;){var z=B.value;if(this.isPointsEq(k[z].points,R))return z}}catch(A){U.e(A)}finally{U.f()}return"bottom"}},{key:"is0xColor",value:function(F){return/^#[0-9A-F]{6}$/i.test(F)}},{key:"isDarkColor",value:function(F,C,R){return F*.299+C*.578+R*.114<192}},{key:"hexToRgbJson",value:function(F){if(!this.is0xColor(F))return{};for(var C=[],R=1;R<7;R+=2)C.push(parseInt("0x"+(0,i.default)(F).call(F,R,R+2),16));return{r:C[0],g:C[1],b:C[2]}}},{key:"isObjectEmpty",value:function(F){if((0,h.isNil)(F))return!0;if(F.length>0)return!1;if(F.length===0)return!0;for(var C in F)if((0,h.has)(F,C))return!1;return isNaN(F)}}]),I}(),Sr.throttleByAnimationFrame=function($){var F=null,C=function(P){return function(){F=null,$.apply(void 0,(0,c.default)(P))}},R=function(){if(F===null){for(var P=arguments.length,U=new Array(P),B=0;B"&]/g,function(F){switch(F){case"<":return"<";case">":return">";case"&":return"&";case'"':return""";default:return""}})};Sr.matchOneOfKeywords=function($,F){return(0,h.isEmpty)(F)?!0:(0,h.some)(F,function(C){return D($,C)})};var D=Sr.isSearchedByKeyword=function($,F){return(0,h.isEmpty)(F)?!0:new RegExp((0,h.escapeRegExp)(F),"i").test($)};return Sr.getSearchedByKeys=function($,F,C){var R=(0,h.toString)($);if((0,h.isEmpty)(R)||(0,h.isEmpty)(F))return w(R);var k=(0,h.reduce)(F,function(B,z,A){if(A===0)return"(?:".concat((0,h.escapeRegExp)(z),")");var M;return(0,s.default)(M="".concat(B,"|(?:")).call(M,(0,h.escapeRegExp)(z),")")},"");if(!new RegExp(k,"i").test(R))return w(R);var P=(0,h.split)(R,new RegExp(k,"ig")),U=R.match(new RegExp(k,"ig"))||[];return(0,h.reduce)(P,function(B,z,A){if(A===0)return B+((0,h.isNumber)(C)&&z.length>C?"..."+w((0,i.default)(z).call(z,z.length-C)):w(z));var M;return B+(0,s.default)(M=''.concat(w(U[A-1]),"")).call(M,w(z))},"")},Sr.getSelectionText=function(){if(window&&window.getSelection){var $=window.getSelection();return $&&$.toString()}else if(document){var F=document;if(F.selection&&F.selection.createRange)return F.selection.createRange().text}return""},Sr.isReactNode=function($){return v.default.isValidElement($)||(0,h.isString)($)||(0,h.isNumber)($)||(0,h.isBoolean)($)||(0,h.isNil)($)},Sr.isStringEmpty=function($){return $===""||(0,h.isNil)($)},Sr.isValueEmpty=function($){return!!((0,h.isNil)($)||(0,h.isArray)($)&&!$.length||(0,h.isString)($)&&!$)},Sr.genRandomCode=function($,F){for(var C=F||"1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",R="",k=$;k>0;){var P=Math.floor(Math.random()*C.length);R+=C[P],k--}return R},Sr.isNumeric=function($){var F=$&&$.toString();return!(0,h.isArray)($)&&F-parseFloat(F)+1>=0},Sr.makeArray=function($){return(0,h.isNil)($)?[]:(0,h.isArray)($)?$:[$]},Sr.pickTriggerAttrs=function($){var F=arguments.length>1&&arguments[1]!==void 0?arguments[1]:["onClick","onMouseEnter","onMouseLeave","onFocus","onBlur"];return(0,h.pick)($,F)},Sr.getMergedComponentProps=function($,F,C){return $!==void 0?$:F!==void 0?F:C},Sr}var C_={},WG;function VG(){if(WG)return C_;WG=1;var e=Se;Object.defineProperty(C_,"__esModule",{value:!0}),C_.default=void 0;var t=e(tl),r=e(Ap),n=e(n1),o=e(o1),a=e(a1),i=e(i1),l=e(l1),s=e(s1),c=Ws(),d="YYYY-MM-DD HH:mm:ss";r.default.locale((0,t.default)((0,t.default)({},a.default),{weekStart:1})),r.default.extend(i.default),r.default.extend(n.default),r.default.extend(o.default),r.default.extend(s.default),r.default.extend(l.default),r.default.extend(i.default);var f=function(_,b){if(b){var x=r.default.tz(_,b).format(d);return(0,r.default)(x).toDate()}return _},v=function(_){var b=f((0,r.default)().toDate(),_);return(0,r.default)(b)},g={getNow:function(_){return v(_)},getFixedDate:function(_){return(0,r.default)(_,"YYYY-MM-DD")},getStart:function(_,b){return(0,r.default)(_).startOf(b)},getEnd:function(_,b){return(0,r.default)(_).endOf(b)},getEndDate:function(_){return _.endOf("month")},getWeekDay:function(_){return _.weekday()+_.localeData().firstDayOfWeek()},getYear:function(_){return _.year()},getMonth:function(_){return _.month()},getDate:function(_){return _.date()},getHour:function(_){return _.hour()},getMinute:function(_){return _.minute()},getSecond:function(_){return _.second()},addYear:function(_,b){return _.add(b,"year")},addMonth:function(_,b){return _.add(b,"month")},addDate:function(_,b){return _.add(b,"day")},setYear:function(_,b){return _.year(b)},setMonth:function(_,b){return _.month(b)},setDate:function(_,b){return _.date(b)},setHour:function(_,b,x,w){var D=_.hour(b);return(0,c.isNil)(x)||(D=D.minute(x)),(0,c.isNil)(w)||(D=D.second(w)),D},setMinute:function(_,b){return _.minute(b)},setSecond:function(_,b){return _.second(b)},setMillisecond:function(_,b){return _.millisecond(b)},isAfter:function(_,b){return _.isAfter(b)},isValidate:function(_){return _.isValid()},getWeekFirstDay:function(){return v().localeData().firstDayOfWeek()},getWeekFirstDate:function(_){return _.weekday(0)},getShortWeekDays:function(){return v().localeData().weekdaysMin()},format:function(_,b){return _.format(b)},parse:function(_,b){var x=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,w=(0,r.default)(_,b,x);return w.isValid()?w:null},toDate:function(_){return _.toDate()},toDayjs:function(_){return(0,r.default)(_)},getRealTimeZoneDayjs:function(_,b){if(b){var x=(0,r.default)(_).format(d);return r.default.tz(x,b)}return(0,r.default)(_)},tz:function(_,b){return r.default.tz(_,b)},localDateToTimezoneDate:f,isDayjs:function(_){return r.default.isDayjs(_)}};return C_.default=g,C_}var Vs={},Kn={},KG;function W4(){if(KG)return Kn;KG=1;var e=Se;Object.defineProperty(Kn,"__esModule",{value:!0}),Kn.SEP=Kn.KEY_CODE=Kn.KEYBOARD_KEY=Kn.EMPTY_OBJ=Kn.EMPTY_FN=Kn.EMPTY_ARRAY=Kn.DATE_MAP=Kn.DATA_VIEW_MODE=Kn.ANIMATION_DURATION=void 0;var t=e(c1);return Kn.KEY_CODE={BACKSPACE:8,TAB:9,ENTER:13,SHIFT:16,CTRL:17,ALT:18,CAPS_LOCK:20,ESC:27,SPACE:32,LEFT:37,UP:38,RIGHT:39,DOWN:40,E:69,N:78,P:80,META:91,CONTEXT_MENU:93,WIN_KEY_RIGHT:92,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,SEMICOLON:186,EQUALS:187,WIN_KEY:224},Kn.KEYBOARD_KEY={BACKSPACE:"Backspace",ENTER:"Enter",ESC:"Escape",LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",DOWN:"ArrowDown",SHIFT:"Shift",HOME:"Home",END:"End",PAGE_UP:"PageUp",PAGE_DOWN:"PageDown"},Kn.ANIMATION_DURATION={FAST:100,NORMAL:200,SLOW:300},Kn.SEP={COMMA:", "},Kn.EMPTY_FN=function(){},Kn.EMPTY_ARRAY=(0,t.default)([]),Kn.EMPTY_OBJ=(0,t.default)({}),Kn.DATA_VIEW_MODE={YM:0,YMD:1,YMDHM:2,YMDHMS:3,HMS:4,HM:5},Kn.DATE_MAP={MINYEAR:1901,MAXYEAR:2999},Kn}var qG;function s_t(){if(qG)return Vs;qG=1;var e=Se;Object.defineProperty(Vs,"__esModule",{value:!0}),Vs.parseTimezoneDate=Vs.getMonthDays=Vs.fixDateByViewMode=void 0;var t=e(hh),r=Ws(),n=HG(),o=e(VG()),a=W4(),i=e(Ap),l=function(d){return o.default.toDayjs(d).isValid()?d:null};Vs.getMonthDays=function(d,f){var v=[31,28,31,30,31,30,31,31,30,31,30,31];return(d%4===0&&d%100!==0||d%400===0)&&f===1?29:v[f]};var s=function(d,f){var v=l(d);return(0,r.isNil)(v)?v:o.default.localDateToTimezoneDate(v,f)};return Vs.parseTimezoneDate=function(d,f){if((0,r.isNil)(d))return null;if(o.default.isDayjs(d))return(0,i.default)(d.format("YYYY-MM-DD HH:mm:ss")).toDate();if((0,n.isNumeric)(d))return s(new Date(d),f);if((0,r.isString)(d)){if(d.match(/^[\d-]+T[\d:.]+Z$/))return s(new Date(d),f);if(/^([0-1][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$/.test(d)){var v=d.split(":"),g=(0,n.isNumeric)(v[0])?v[0]:0,h=(0,n.isNumeric)(v[1])?v[1]:0,_=(0,n.isNumeric)(v[2])?v[2]:0,b=new Date;return new Date(b.getFullYear(),b.getMonth(),b.getDate(),g,h,_)}var x=(0,t.default)(d).call(d).split(" ");if(x){var w=x[0]&&x[0].split("-"),D=w[0];if(!(0,n.isNumeric)(D))return null;var I=(0,n.isNumeric)(w[1])?w[1]-1:0,$=(0,n.isNumeric)(w[2])?w[2]:1;if(x[1]){var F=x[1].split(":"),C=(0,n.isNumeric)(F[0])?F[0]:0,R=(0,n.isNumeric)(F[1])?F[1]:0,k=(0,n.isNumeric)(F[2])?F[2]:0,P=0;if(/\./.test(F[2])){var U=F[2].split(".");k=(0,n.isNumeric)(U[0])?U[0]:0,P=(0,n.isNumeric)(U[1])?U[1]:0}return new Date(D,I,$,C,R,k,P)}else return new Date(D,I,$)}else return null}return s(new Date(d),f)},Vs.fixDateByViewMode=function(d,f){var v=d;switch(f){case a.DATA_VIEW_MODE.YM:v=o.default.setDate(v,1),v=o.default.setHour(v,0,0,0);break;case a.DATA_VIEW_MODE.YMD:v=o.default.setHour(v,0,0,0);break;case a.DATA_VIEW_MODE.YMDHM:v=o.default.setSecond(v,0);break}return v=o.default.setMillisecond(v,0),v},Vs}var T_={},YG;function GG(){if(YG)return T_;YG=1;var e=Se;Object.defineProperty(T_,"__esModule",{value:!0}),T_.default=void 0;var t=e(nl),r=e(rd),n=e(Md),o=e(zd),a=Ws(),i={};return T_.default=function(){function l(){(0,n.default)(this,l)}return(0,o.default)(l,null,[{key:"isDomElement",value:function(c){return c instanceof HTMLElement||c instanceof SVGElement}},{key:"isVisible",value:function(c){if(!c)return!1;if(c instanceof Element){if(c.offsetParent)return!0;if(c.getBBox){var d=c.getBBox(),f=d.width,v=d.height;if(f||v)return!0}if(c.getBoundingClientRect){var g=c.getBoundingClientRect(),h=g.width,_=g.height;if(h||_)return!0}}return!1}},{key:"getDomOffset",value:function(c,d){if(!(!l.isDomElement(c)||!l.isDomElement(d))){var f=c.getBoundingClientRect(),v=d.getBoundingClientRect();return{left:f.left-v.left,top:f.top-v.top}}}},{key:"removeClass",value:function(c,d){!l.isDomElement(c)||(0,a.isNil)(d)||((0,a.isArray)(d)?(0,a.forEach)(d,function(f){c.classList.remove(f)}):c.classList.remove(d))}},{key:"addClass",value:function(c,d){!l.isDomElement(c)||(0,a.isNil)(d)||((0,a.isArray)(d)?(0,a.forEach)(d,function(f){c.classList.add(f)}):c.classList.add(d))}},{key:"closest",value:function(c,d){if(!l.isDomElement(c))return null;if(c.closest)return c.closest(d);var f=c.matches||c.webkitMatchesSelector||c.mozMatchesSelector||c.msMatchesSelector;if(!f)return null;for(var v=c;v;){if(v.nodeType===1&&f.call(v,d))return v;v=v.parentElement||v.parentNode}return null}},{key:"isFirstElement",value:function(c){if(!l.isDomElement(c))return!1;var d=c.parentElement;return d&&d.firstChild===c}},{key:"isLastElement",value:function(c){if(!l.isDomElement(c))return!1;var d=c.parentElement;return d&&d.lastChild===c}},{key:"cssSupport",value:function(c,d){var f,v=(0,t.default)(f="".concat(c,": ")).call(f,d);if(!(0,a.isNil)(i[v]))return i[v];var g=document.createElement("div"),h=!1;return c in g.style&&(g.style[c]=d,h=g.style[c]===d),i[v]=h,h}},{key:"supportFlexGap",value:function(){var c="flexGap";if(!(0,a.isNil)(i[c]))return i[c];var d=!1,f=document.createElement("div");return f.style.display="flex",f.style.flexDirection="column",f.style.rowGap="1px",f.appendChild(document.createElement("div")),f.appendChild(document.createElement("div")),document.body.appendChild(f),d=f.scrollHeight===1,document.body.removeChild(f),i[c]=d,d}},{key:"contains",value:function(c){var d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!c)return!1;if(c.contains)return c.contains(d);for(var f=d;f;){if(f===c)return!0;f=f.parentNode}return!1}},{key:"getWin",value:function(c){return c.ownerDocument.defaultView}},{key:"collectScroller",value:function(c){for(var d=[],f=c?.parentElement,v=["hidden","scroll","clip","auto"];f;){var g=l.getWin(f);if(g){var h=g.getComputedStyle(f),_=h.overflowX,b=h.overflowY,x=h.overflow;[_,b,x].some(function(w){return(0,r.default)(v).call(v,w)})&&d.push(f)}f=f.parentElement}return d}}]),l}(),T_}var rv={},XG;function c_t(){if(XG)return rv;XG=1;var e=Se;Object.defineProperty(rv,"__esModule",{value:!0}),rv.removeCSS=c,rv.updateCSS=void 0;var t=e(_h),r=e(h1),n=e(Xg),o="jdy-design-theme-key",a=function(){var f=document.querySelector("head");return f||document.body},i=function(f,v){var g=document.createElement("style");g.innerHTML=f;var h=v||a();return h.appendChild(g),g},l=new t.default,s=function(f,v){var g,h=v||a(),_=l.get(h);return _?(0,r.default)(g=(0,n.default)(_.children)).call(g,function(b){return b.tagName==="STYLE"&&b.getAttribute(o)===f}):null};rv.updateCSS=function(f,v,g){var h=g||a();if(!l.has(h)){var _=i("",h),b=_.parentNode;l.set(h,b),b.removeChild(_)}var x=s(v,h);if(x)return x.innerHTML!==f&&(x.innerHTML=f),x;var w=i(f,h);return w.setAttribute(o,v),w};function c(d,f){var v=f||a(),g=s(d,v);g&&v.removeChild(g)}return rv}var oD={},ZG;function u_t(){if(ZG)return oD;ZG=1;var e=Se;Object.defineProperty(oD,"__esModule",{value:!0}),oD.default=o;var t=e(m),r=Kr,n=e(GG());function o(a){return n.default.isDomElement(a)?a:a instanceof t.default.Component?(0,r.findDOMNode)(a):null}return oD}var R_={},QG;function d_t(){if(QG)return R_;QG=1;var e=Se;Object.defineProperty(R_,"__esModule",{value:!0}),R_.default=n,R_.getTargetScrollBarSize=a;var t=e(m1),r;function n(i){if(typeof document>"u")return 0;if(i||r===void 0){var l=document.createElement("div");l.style.width="100%",l.style.height="200px";var s=document.createElement("div"),c=s.style;c.position="absolute",c.top="0",c.left="0",c.pointerEvents="none",c.visibility="hidden",c.width="200px",c.height="150px",c.overflow="hidden",s.appendChild(l),document.body.appendChild(s);var d=l.offsetWidth;s.style.overflow="scroll";var f=l.offsetWidth;d===f&&(f=s.clientWidth),document.body.removeChild(s),r=d-f}return r}function o(i){var l=i.match(/^(.*)px$/),s=Number(l?.[1]);return(0,t.default)(s)?n():s}function a(i){if(typeof document>"u"||!i||!(i instanceof Element))return{width:0,height:0};var l=getComputedStyle(i,"::-webkit-scrollbar"),s=l.width,c=l.height;return{width:o(s),height:o(c)}}return R_}var jd={},JG;function f_t(){if(JG)return jd;JG=1;var e=Yr,t=Xr,r=Zr;Object.defineProperty(jd,"__esModule",{value:!0}),jd.cloneElement=s,jd.isValidElement=void 0,jd.replaceElement=l;var n=a(m);function o(c){if(typeof t!="function")return null;var d=new t,f=new t;return(o=function(g){return g?f:d})(c)}function a(c,d){if(!d&&c&&c.__esModule)return c;if(c===null||e(c)!="object"&&typeof c!="function")return{default:c};var f=o(d);if(f&&f.has(c))return f.get(c);var v={__proto__:null},g=Object.defineProperty&&r;for(var h in c)if(h!=="default"&&Object.prototype.hasOwnProperty.call(c,h)){var _=g?r(c,h):null;_&&(_.get||_.set)?Object.defineProperty(v,h,_):v[h]=c[h]}return v.default=c,f&&f.set(c,v),v}var i=jd.isValidElement=n.isValidElement;function l(c,d,f){return i(c)?n.cloneElement(c,typeof f=="function"?f(c.props||{}):f):d}function s(c,d){return l(c,c,d)}return jd}var Ud={},eX;function p_t(){if(eX)return Ud;eX=1;var e=Se;Object.defineProperty(Ud,"__esModule",{value:!0}),Ud.composeRef=a,Ud.fillRef=o,Ud.supportRef=l,Ud.useComposeRef=i;var t=e(x1),r=e(Yr),n=Ks();function o(s,c){typeof s=="function"?s(c):(0,r.default)(s)==="object"&&s&&"current"in s&&(s.current=c)}function a(){for(var s=arguments.length,c=new Array(s),d=0;d1&&arguments[1]!==void 0?arguments[1]:"",w=arguments.length>2?arguments[2]:void 0,D=b.props||{},I=(0,a.default)({key:x},(0,d.omit)(D,"children")),$=D.children||[];return(0,d.isArray)($)||($=[$]),w&&(0,d.assign)(I,v,w),s.default.createElement(b.type,I,e(d)($,function(F,C){var R;return _(F,(0,i.default)(R="".concat(b.type,"-")).call(R,C))}))},h=function(b,x){var w,D=b.className,I=b.component,$=b.icon,F=b.spin,C=b.name,R=b.onClick,k=b.viewBox,P=b.style,U=b.prefixCls,B=f(b,["className","component","icon","spin","name","onClick","viewBox","style","prefixCls"]),z=(0,c.usePrefixCls)("svgicon",U),A=(0,l.default)(z,(0,n.default)({},(0,i.default)(w="".concat(z,"-")).call(w,C),C),D,{spin:!!F}),M=function(){var T={style:P};return k&&(T.viewBox=k),I?s.default.createElement(I,(0,r.default)({},v,T)):$?g($,C,T):null};return s.default.createElement("i",(0,r.default)({ref:x,className:A,onClick:R},B),M())};return P_.default=s.default.forwardRef(h),P_}var G4={},N_={},uX;function m_t(){if(uX)return N_;uX=1;var e=Se;Object.defineProperty(N_,"__esModule",{value:!0}),N_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"BugFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M304 280h416c4.4 0 8-3.6 8-8 0-40-8.8-76.7-25.9-108.1-17.2-31.5-42.5-56.8-74-74C596.7 72.8 560 64 520 64h-16c-40 0-76.7 8.8-108.1 25.9-31.5 17.2-56.8 42.5-74 74C304.8 195.3 296 232 296 272c0 4.4 3.6 8 8 8z"}),r.default.createElement("path",{d:"M940 512H792V412c76.8 0 139-62.2 139-139 0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8 0 34.8-28.2 63-63 63H232c-34.8 0-63-28.2-63-63 0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8 0 76.8 62.2 139 139 139v100H84c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h148v96c0 6.5.2 13 .7 19.3C164.1 728.6 116 796.7 116 876c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8 0-44.2 23.9-82.9 59.6-103.7 6 17.2 13.6 33.6 22.7 49 24.3 41.5 59 76.2 100.5 100.5 28.9 16.9 61 28.8 95.3 34.5 4.4 0 8-3.6 8-8V484c0-4.4 3.6-8 8-8h60c4.4 0 8 3.6 8 8v464.2c0 4.4 3.6 8 8 8 34.3-5.7 66.4-17.6 95.3-34.5 41.5-24.3 76.2-59 100.5-100.5 9.1-15.5 16.7-31.9 22.7-49C812.1 793.1 836 831.8 836 876c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8 0-79.3-48.1-147.4-116.7-176.7.4-6.4.7-12.8.7-19.3v-96h148c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8z"}))}))};return o.displayName="BugFilled",N_.default=r.default.memo(r.default.forwardRef(o)),N_}var M_={},dX;function x_t(){if(dX)return M_;dX=1;var e=Se;Object.defineProperty(M_,"__esModule",{value:!0}),M_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CalendarOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M776 201.6H670.4v-52.8c0-22.4-17.6-40-40-40s-40 17.6-40 40v54.4h-160v-54.4c0-22.4-17.6-40-40-40s-40 17.6-40 40v54.4h-99.2c-33.6 0-67.2 14.4-91.2 38.4s-36.8 57.6-36.8 91.2V784c0 35.2 12.8 67.2 36.8 91.2 24 25.6 56 38.4 91.2 38.4h528c70.4 0 128-59.2 128-131.2V329.6c-3.2-68.8-60.8-128-131.2-128zM214.4 296c9.6-9.6 20.8-14.4 33.6-14.4h100.8V336c0 22.4 17.6 40 40 40s40-17.6 40-40v-54.4h160V336c0 22.4 17.6 40 40 40s40-17.6 40-40v-54.4h105.6c27.2 0 48 22.4 48 51.2v80h-624v-80c1.6-14.4 6.4-27.2 16-36.8zM776 835.2H248c-12.8 0-24-4.8-33.6-14.4-9.6-9.6-14.4-22.4-14.4-36.8V492.8h624V784c0 28.8-22.4 51.2-48 51.2z"}),r.default.createElement("path",{d:"M593.6 771.2c-3.2-1.6-9.6-4.8-28.8-4.8h-27.2V540.8c0-6.4-1.6-11.2-3.2-14.4-4.8-6.4-12.8-8-19.2-6.4-1.6 0-3.2 0-6.4 1.6l-64 17.6c-6.4 1.6-11.2 4.8-14.4 8-3.2 4.8-6.4 9.6-6.4 14.4 0 6.4 1.6 12.8 6.4 16 4.8 3.2 9.6 6.4 16 6.4h3.2l35.2-8v193.6h-27.2c-19.2 0-25.6 1.6-28.8 4.8-4.8 3.2-9.6 8-9.6 19.2 0 8 1.6 12.8 6.4 17.6 4.8 3.2 11.2 6.4 17.6 6.4H576c8 0 14.4-1.6 17.6-6.4 4.8-4.8 6.4-9.6 6.4-17.6 1.6-14.4-3.2-20.8-6.4-22.4z"}))}))};return o.displayName="CalendarOutlined",M_.default=r.default.memo(r.default.forwardRef(o)),M_}var z_={},fX;function b_t(){if(fX)return z_;fX=1;var e=Se;Object.defineProperty(z_,"__esModule",{value:!0}),z_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CaretDownFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M488 740.8 232 454.4c-19.2-20.8-3.2-52.8 24-52.8h512c27.2 0 41.6 32 24 52.8L536 740.8c-12.8 14.4-35.2 14.4-48 0z"}))}))};return o.displayName="CaretDownFilled",z_.default=r.default.memo(r.default.forwardRef(o)),z_}var L_={},pX;function y_t(){if(pX)return L_;pX=1;var e=Se;Object.defineProperty(L_,"__esModule",{value:!0}),L_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CaretRightFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M658.286 512q0 14.848-10.862 25.71l-256 256q-10.862 10.861-25.71 10.861t-25.71-10.861-10.86-25.71V256q0-14.848 10.862-25.71t25.71-10.861 25.709 10.861l256 256q10.862 10.862 10.862 25.71z"}))}))};return o.displayName="CaretRightFilled",L_.default=r.default.memo(r.default.forwardRef(o)),L_}var B_={},vX;function w_t(){if(vX)return B_;vX=1;var e=Se;Object.defineProperty(B_,"__esModule",{value:!0}),B_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CaretUpFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M488 123.2 232 409.6c-19.2 20.8-3.2 52.8 24 52.8h512c27.2 0 41.6-32 24-52.8L536 123.2c-12.8-14.4-35.2-14.4-48 0z"}))}))};return o.displayName="CaretUpFilled",B_.default=r.default.memo(r.default.forwardRef(o)),B_}var j_={},gX;function D_t(){if(gX)return j_;gX=1;var e=Se;Object.defineProperty(j_,"__esModule",{value:!0}),j_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CheckCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm254.4 340.8L513.6 699.2c-6.4 8-17.6 12.8-28.8 14.4h-1.6c-9.6 0-19.2-3.2-27.2-11.2l-163.2-152c-16-14.4-17.6-40-1.6-56 14.4-16 40-17.6 56-1.6L480 616l224-262.4c14.4-16 40-19.2 56-4.8 17.6 14.4 20.8 38.4 6.4 56z"}))}))};return o.displayName="CheckCircleFilled",j_.default=r.default.memo(r.default.forwardRef(o)),j_}var U_={},hX;function I_t(){if(hX)return U_;hX=1;var e=Se;Object.defineProperty(U_,"__esModule",{value:!0}),U_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CheckOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M384 792c-9.6 0-20.8-3.2-28.8-11.2l-224-224c-16-16-16-41.6 0-56 16-16 41.6-16 56 0L384 696l451.2-451.2c16-16 41.6-16 56 0 16 16 16 41.6 0 56l-480 480c-6.4 8-17.6 11.2-27.2 11.2z"}))}))};return o.displayName="CheckOutlined",U_.default=r.default.memo(r.default.forwardRef(o)),U_}var H_={},_X;function F_t(){if(_X)return H_;_X=1;var e=Se;Object.defineProperty(H_,"__esModule",{value:!0}),H_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CloseCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zM339.2 627.2 454.4 512 339.2 396.8c-16-16-16-41.6 0-56 8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2L512 456l115.2-115.2c8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2c16 16 16 41.6 0 56L568 512l115.2 115.2c16 16 16 41.6 0 56-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2L512 568 396.8 683.2c-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2c-14.4-14.4-14.4-40 0-56z"}))}))};return o.displayName="CloseCircleFilled",H_.default=r.default.memo(r.default.forwardRef(o)),H_}var W_={},mX;function $_t(){if(mX)return W_;mX=1;var e=Se;Object.defineProperty(W_,"__esModule",{value:!0}),W_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CloseOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"m568 512 291.2-291.2c16-16 16-41.6 0-56-16-16-41.6-16-56 0L512 456 220.8 163.2c-16-16-41.6-16-56 0-16 16-16 41.6 0 56L456 512 163.2 803.2c-16 16-16 41.6 0 56 8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2L512 568l291.2 291.2c8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2c16-16 16-41.6 0-56L568 512z"}))}))};return o.displayName="CloseOutlined",W_.default=r.default.memo(r.default.forwardRef(o)),W_}var V_={},xX;function E_t(){if(xX)return V_;xX=1;var e=Se;Object.defineProperty(V_,"__esModule",{value:!0}),V_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CodeOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M1018.645 531.298c8.635-18.61 4.601-41.42-11.442-55.864l-205.108-184.68c-19.7-17.739-50.05-16.148-67.789 3.552-17.738 19.7-16.148 50.051 3.553 67.79l166.28 149.718-167.28 150.62c-19.7 17.738-21.291 48.088-3.553 67.789 17.739 19.7 48.089 21.291 67.79 3.553l205.107-184.68a47.805 47.805 0 0 0 12.442-17.798zM119.947 511.39l166.28-149.719c19.7-17.738 21.29-48.088 3.552-67.789-17.738-19.7-48.088-21.291-67.789-3.553L16.882 475.01C.84 489.456-3.194 512.264 5.44 530.874a47.805 47.805 0 0 0 12.442 17.798l205.108 184.68c19.7 17.739 50.05 16.148 67.79-3.552 17.738-19.7 16.147-50.051-3.553-67.79l-167.28-150.62z",fillRule:"evenodd",opacity:.78}))}))};return o.displayName="CodeOutlined",V_.default=r.default.memo(r.default.forwardRef(o)),V_}var K_={},bX;function S_t(){if(bX)return K_;bX=1;var e=Se;Object.defineProperty(K_,"__esModule",{value:!0}),K_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CompanyOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M904 832h-8V353.6c0-52.8-43.2-96-96-96H640V208c0-52.8-43.2-96-96-96H224c-52.8 0-96 43.2-96 96v624h-8c-22.4 0-40 17.6-40 40s17.6 40 40 40h784c22.4 0 40-17.6 40-40s-17.6-40-40-40zm-696 0V208c0-9.6 6.4-16 16-16h320c9.6 0 16 6.4 16 16v624H208zm432 0V622.4h96c17.6 0 32-14.4 32-32s-14.4-32-32-32h-96v-80h96c17.6 0 32-14.4 32-32s-14.4-32-32-32h-96v-76.8h160c9.6 0 16 6.4 16 16V832H640zM480 273.6H288c-17.6 0-32 14.4-32 32s14.4 32 32 32h192c17.6 0 32-14.4 32-32s-14.4-32-32-32zm0 144H288c-17.6 0-32 14.4-32 32s14.4 32 32 32h192c17.6 0 32-14.4 32-32s-14.4-32-32-32zm0 142.4H288c-17.6 0-32 14.4-32 32s14.4 32 32 32h192c17.6 0 32-14.4 32-32s-14.4-32-32-32z"}))}))};return o.displayName="CompanyOutlined",K_.default=r.default.memo(r.default.forwardRef(o)),K_}var q_={},yX;function C_t(){if(yX)return q_;yX=1;var e=Se;Object.defineProperty(q_,"__esModule",{value:!0}),q_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"CopyOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M546 184a8 8 0 0 0 8-8v-56a8 8 0 0 0-8-8H128a16 16 0 0 0-16 16v640.004a8 8 0 0 0 8 7.996h56a8 8 0 0 0 8-7.996V184h362z"}),r.default.createElement("path",{d:"M248 264a16 16 0 0 1 16-16h422.224a16 16 0 0 1 11.256 4.628l209.776 207.656A16.004 16.004 0 0 1 912 471.656V896a16 16 0 0 1-16 16H264a16 16 0 0 1-16-16V264zm72 56v520h520V536H636a16 16 0 0 1-16-16V320H320zm372 28.512V464h116.664L692 348.512z"}))}))};return o.displayName="CopyOutlined",q_.default=r.default.memo(r.default.forwardRef(o)),q_}var Y_={},wX;function T_t(){if(wX)return Y_;wX=1;var e=Se;Object.defineProperty(Y_,"__esModule",{value:!0}),Y_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"DepartmentFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M916.8 774.4c0 62.4-51.2 113.6-113.6 113.6-62.4 0-113.6-51.2-113.6-113.6 0-51.2 33.6-94.4 80-108.8V547.2h-224v118.4c46.4 14.4 80 57.6 80 108.8 0 62.4-51.2 113.6-113.6 113.6-62.4 0-113.6-51.2-113.6-113.6 0-51.2 33.6-94.4 80-108.8V547.2H256v118.4c46.4 14.4 80 57.6 80 108.8 0 62.4-51.2 113.6-113.6 113.6-62.4 0-113.6-51.2-113.6-113.6 0-51.2 33.6-94.4 80-108.8V512c0-19.2 16-33.6 33.6-33.6h256V360c-46.4-14.4-80-57.6-80-108.8 0-62.4 51.2-113.6 113.6-113.6 62.4 0 113.6 51.2 113.6 113.6 0 51.2-33.6 94.4-80 108.8v118.4h256c19.2 0 33.6 16 33.6 33.6v152c48 16 81.6 59.2 81.6 110.4z"}))}))};return o.displayName="DepartmentFilled",Y_.default=r.default.memo(r.default.forwardRef(o)),Y_}var G_={},DX;function R_t(){if(DX)return G_;DX=1;var e=Se;Object.defineProperty(G_,"__esModule",{value:!0}),G_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"DoubleLeftOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M819.2 776c16 16 16 41.6 0 56-16 16-41.6 16-56 0L478.4 547.2c-8-8-11.2-17.6-11.2-28.8s4.8-20.8 11.2-28.8l284.8-284.8c8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2c16 16 16 41.6 0 56L563.2 520l256 256zM289.6 520l257.6-257.6c16-16 16-41.6 0-56-8-8-17.6-11.2-28.8-11.2s-20.8 3.2-28.8 11.2L204.8 491.2c-8 8-11.2 17.6-11.2 28.8s4.8 20.8 11.2 28.8l284.8 284.8c16 16 41.6 16 56 0 16-16 16-41.6 0-56L289.6 520z"}))}))};return o.displayName="DoubleLeftOutlined",G_.default=r.default.memo(r.default.forwardRef(o)),G_}var X_={},IX;function O_t(){if(IX)return X_;IX=1;var e=Se;Object.defineProperty(X_,"__esModule",{value:!0}),X_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"DoubleRightOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M204.8 248c-16-16-16-41.6 0-56 16-16 41.6-16 56 0l284.8 284.8c8 8 11.2 17.6 11.2 28.8s-4.8 20.8-11.2 28.8L260.8 819.2c-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2c-16-16-16-41.6 0-56L460.8 504l-256-256zm529.6 256L476.8 761.6c-16 16-16 41.6 0 56 8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2l284.8-284.8c8-8 11.2-17.6 11.2-28.8s-4.8-20.8-11.2-28.8L534.4 190.4c-16-16-41.6-16-56 0-16 16-16 41.6 0 56l256 257.6z"}))}))};return o.displayName="DoubleRightOutlined",X_.default=r.default.memo(r.default.forwardRef(o)),X_}var Z_={},FX;function A_t(){if(FX)return Z_;FX=1;var e=Se;Object.defineProperty(Z_,"__esModule",{value:!0}),Z_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"DownOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M867.2 387.2c0 9.6-3.2 20.8-11.2 28.8L540.8 729.6c-16 16-41.6 16-56 0L169.6 414.4c-16-16-16-41.6 0-56 16-16 41.6-16 56 0L512 644.8l286.4-286.4c16-16 41.6-16 56 0 8 8 12.8 17.6 12.8 28.8z"}))}))};return o.displayName="DownOutlined",Z_.default=r.default.memo(r.default.forwardRef(o)),Z_}var Q_={},$X;function k_t(){if($X)return Q_;$X=1;var e=Se;Object.defineProperty(Q_,"__esModule",{value:!0}),Q_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"DownloadOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M880 534.4c-22.4 0-40 17.6-40 40v184c0 35.2-28.8 65.6-65.6 65.6H249.6c-35.2 0-65.6-28.8-65.6-65.6v-184c0-22.4-17.6-40-40-40s-40 17.6-40 40v184c0 80 65.6 145.6 145.6 145.6H776c80 0 145.6-65.6 145.6-145.6v-184c-1.6-22.4-19.2-40-41.6-40z"}),r.default.createElement("path",{d:"M486.4 694.4c1.6 1.6 4.8 3.2 6.4 4.8 1.6 0 1.6 1.6 3.2 1.6s1.6 1.6 3.2 1.6 3.2 1.6 4.8 1.6c1.6 0 1.6 0 3.2 1.6h16c1.6 0 1.6 0 3.2-1.6 1.6 0 3.2-1.6 4.8-1.6 1.6 0 1.6-1.6 3.2-1.6s3.2-1.6 3.2-1.6c1.6-1.6 3.2-1.6 3.2-3.2l1.6-1.6L756.8 480c16-16 16-41.6 0-56-16-16-41.6-16-56 0L555.2 569.6V128c0-22.4-17.6-40-40-40s-40 17.6-40 40v441.6L329.6 424c-16-16-41.6-16-56 0-16 16-16 41.6 0 56l212.8 214.4z"}))}))};return o.displayName="DownloadOutlined",Q_.default=r.default.memo(r.default.forwardRef(o)),Q_}var J_={},EX;function P_t(){if(EX)return J_;EX=1;var e=Se;Object.defineProperty(J_,"__esModule",{value:!0}),J_.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"EditOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M604.144 148.568a8 8 0 0 1 0-11.312l39.6-39.6a8 8 0 0 1 11.312 0l271.532 271.528a8 8 0 0 1 0 11.316l-39.6 39.596a8 8 0 0 1-11.312 0L604.144 148.568zM399.528 907.556a15.988 15.988 0 0 1-11.312 4.688H128a16 16 0 0 1-16-16V636.028c0-4.244 1.684-8.312 4.688-11.312l408.264-408.264a15.996 15.996 0 0 1 22.624 0l260.216 260.216a16 16 0 0 1 0 22.624L399.528 907.556zM186.344 656.88l-2.828 183.848 183.848-2.828 349.92-349.92-181.02-181.02-349.92 349.92zM584 840a8 8 0 0 0-8 8v56a8 8 0 0 0 8 8h336a8 8 0 0 0 8-8v-56a8 8 0 0 0-8-8H584z"}))}))};return o.displayName="EditOutlined",J_.default=r.default.memo(r.default.forwardRef(o)),J_}var em={},SX;function N_t(){if(SX)return em;SX=1;var e=Se;Object.defineProperty(em,"__esModule",{value:!0}),em.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"EllipsisOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M104 512a80 80 0 1 0 160 0 80 80 0 1 0-160 0Zm328 0a80 80 0 1 0 160 0 80 80 0 1 0-160 0Zm328 0a80 80 0 1 0 160 0 80 80 0 1 0-160 0Z"}))}))};return o.displayName="EllipsisOutlined",em.default=r.default.memo(r.default.forwardRef(o)),em}var tm={},CX;function M_t(){if(CX)return tm;CX=1;var e=Se;Object.defineProperty(tm,"__esModule",{value:!0}),tm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"EnterOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"m270.7 536 243.456-235-55.56-57.56L112 578l346.596 334.56 55.56-57.56-247.6-239H913.6V200h-80v336H270.7zm562.9-336h80v-40h-80v40z",fillOpacity:.25}))}))};return o.displayName="EnterOutlined",tm.default=r.default.memo(r.default.forwardRef(o)),tm}var rm={},TX;function z_t(){if(TX)return rm;TX=1;var e=Se;Object.defineProperty(rm,"__esModule",{value:!0}),rm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"ExclamationCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm-40 232c0-22.4 17.6-40 40-40s40 17.6 40 40v240c0 22.4-17.6 40-40 40s-40-17.6-40-40V296zm40 472c-30.4 0-56-25.6-56-56s25.6-56 56-56 56 25.6 56 56c0 32-25.6 57.6-56 56z"}))}))};return o.displayName="ExclamationCircleFilled",rm.default=r.default.memo(r.default.forwardRef(o)),rm}var nm={},RX;function L_t(){if(RX)return nm;RX=1;var e=Se;Object.defineProperty(nm,"__esModule",{value:!0}),nm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"EyeInvisibleOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 16 16"},r.default.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14.625 6.8c-.7-.75-1.475-1.4-2.325-1.95l1-1c.25-.25.25-.65 0-.9a.634.634 0 0 0-.9 0l-9.175 9.2c-.25.25-.25.65 0 .9s.65.25.9 0l1.45-1.45c.775.3 1.6.45 2.45.475 3.075 0 5.65-2.375 6.625-3.4a1.385 1.385 0 0 0-.025-1.875ZM13.7 7.825c-.85.9-3.125 2.975-5.7 2.975-.475 0-.975-.075-1.425-.2l.575-.575c.275.1.55.15.85.15a2.427 2.427 0 0 0 2.425-2.425c0-.3-.05-.575-.15-.85L11.4 5.775c.85.525 1.625 1.15 2.325 1.9.025.05.025.1-.025.15Zm-8.075-.55c-.025.15-.05.3-.05.475 0 .15.025.3.05.45L8.45 5.375c-1.3-.25-2.575.6-2.825 1.9ZM4.3 9.525c-.725-.5-1.4-1.075-2-1.7-.05-.05-.05-.1 0-.15.875-.9 3.125-3 5.7-3 .35 0 .7.025 1.025.1l1.025-1.05a6.573 6.573 0 0 0-2.075-.35c-3.05 0-5.65 2.375-6.625 3.4a1.39 1.39 0 0 0 0 1.9c.625.65 1.3 1.225 2.025 1.75l.925-.9Z"}))}))};return o.displayName="EyeInvisibleOutlined",nm.default=r.default.memo(r.default.forwardRef(o)),nm}var om={},OX;function B_t(){if(OX)return om;OX=1;var e=Se;Object.defineProperty(om,"__esModule",{value:!0}),om.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"EyeOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 16 16"},r.default.createElement("path",{d:"M8 5.375a2.625 2.625 0 1 0 0 5.25 2.625 2.625 0 0 0 0-5.25ZM6.625 8a1.375 1.375 0 1 1 2.75 0 1.375 1.375 0 0 1-2.75 0Z"}),r.default.createElement("path",{d:"M14.877 7.732 14.312 8l.565.268v.002l-.003.004-.006.013a2.911 2.911 0 0 1-.098.187 7.572 7.572 0 0 1-.3.494 9.008 9.008 0 0 1-1.22 1.48c-1.107 1.078-2.834 2.177-5.25 2.177-2.417 0-4.143-1.099-5.25-2.178a8.956 8.956 0 0 1-1.22-1.479 7.564 7.564 0 0 1-.404-.694l-.002-.004-.001-.001L1.687 8a62.44 62.44 0 0 1-.564-.268V7.73l.003-.004a1.843 1.843 0 0 1 .027-.055l.077-.145c.068-.122.167-.292.3-.494a9.008 9.008 0 0 1 1.22-1.48C3.857 4.474 5.583 3.375 8 3.375c2.416 0 4.143 1.099 5.25 2.177a8.957 8.957 0 0 1 1.22 1.48 7.572 7.572 0 0 1 .398.681l.004.008.002.005.002.004v.001l.001.001ZM2.575 7.718c-.07.107-.129.202-.176.282a7.707 7.707 0 0 0 1.224 1.552c.945.922 2.375 1.823 4.377 1.823s3.432-.901 4.377-1.823A7.708 7.708 0 0 0 13.601 8a7.708 7.708 0 0 0-1.224-1.552C11.432 5.526 10.002 4.625 8 4.625s-3.432.901-4.377 1.823a7.68 7.68 0 0 0-1.048 1.27Zm11.173.013Z"}),r.default.createElement("path",{d:"m14.313 8 .564-.267.127.267-.127.267L14.312 8Zm-13.19-.267L1.687 8l-.564.267L.996 8l.127-.267Z"}))}))};return o.displayName="EyeOutlined",om.default=r.default.memo(r.default.forwardRef(o)),om}var am={},AX;function j_t(){if(AX)return am;AX=1;var e=Se;Object.defineProperty(am,"__esModule",{value:!0}),am.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"FolderFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M832 272H512l-80-80H193.6c-44.8 0-81.6 36.8-81.6 81.6v476.8c0 44.8 36.8 81.6 81.6 81.6h636.8c44.8 0 81.6-36.8 81.6-81.6V352c0-43.2-35.2-80-80-80zm80 160H112v-43.2h800V432z"}))}))};return o.displayName="FolderFilled",am.default=r.default.memo(r.default.forwardRef(o)),am}var im={},kX;function U_t(){if(kX)return im;kX=1;var e=Se;Object.defineProperty(im,"__esModule",{value:!0}),im.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"FolderOpenFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M880 449.6H227.2c-8 0-16 3.2-20.8 6.4-6.4 4.8-9.6 11.2-9.6 17.6l-62.4 320v3.2c0 8 14.4 19.2 32 19.2h652.8c16 0 27.2-11.2 30.4-22.4L872 678.4l40-209.6c1.6-11.2-14.4-19.2-32-19.2z"}),r.default.createElement("path",{d:"M227.2 406.4h643.2V360c0-41.6-33.6-76.8-75.2-76.8h-304L416 206.4H187.2c-41.6 0-75.2 33.6-75.2 76.8v393.6l40-206.4c6.4-38.4 33.6-64 75.2-64z"}))}))};return o.displayName="FolderOpenFilled",im.default=r.default.memo(r.default.forwardRef(o)),im}var lm={},PX;function H_t(){if(PX)return lm;PX=1;var e=Se;Object.defineProperty(lm,"__esModule",{value:!0}),lm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"ImageOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M808 660.8c4.8 6.4 6.4 14.4 6.4 20.8v91.2c0 20.8-14.4 36.8-33.6 36.8H243.2c-17.6 0-33.6-16-33.6-36.8V752c0-8 1.6-14.4 6.4-20.8l64-100.8c9.6-16 30.4-20.8 44.8-9.6l89.6 67.2c14.4 11.2 33.6 8 43.2-6.4L624 462.4c14.4-17.6 40-17.6 52.8 1.6L808 660.8zm-564.8-344c0-40 32-72 72-72s72 32 72 72-32 72-72 72-72-32-72-72z"}),r.default.createElement("path",{d:"M784 192c27.2 0 48 20.8 48 48v544c0 27.2-20.8 48-48 48H240c-27.2 0-48-20.8-48-48V240c0-27.2 20.8-48 48-48h544m0-80H240c-70.4 0-128 57.6-128 128v544c0 70.4 57.6 128 128 128h544c70.4 0 128-57.6 128-128V240c0-70.4-57.6-128-128-128z"}))}))};return o.displayName="ImageOutlined",lm.default=r.default.memo(r.default.forwardRef(o)),lm}var sm={},NX;function W_t(){if(NX)return sm;NX=1;var e=Se;Object.defineProperty(sm,"__esModule",{value:!0}),sm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"LabelFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M800 112.96H224a64 64 0 0 0-64 64v746.4a32 32 0 0 0 52.64 24.48L512 760.16l299.36 187.68A32 32 0 0 0 864 923.36v-746.4a64 64 0 0 0-64-64zM587.68 552H308.32a40 40 0 1 1 0-80h279.36a40 40 0 0 1 0 80zm128-199.68H308.32a40 40 0 0 1 0-80h407.36a40 40 0 0 1 0 80z"}))}))};return o.displayName="LabelFilled",sm.default=r.default.memo(r.default.forwardRef(o)),sm}var cm={},MX;function V_t(){if(MX)return cm;MX=1;var e=Se;Object.defineProperty(cm,"__esModule",{value:!0}),cm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"LeftCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M64 512c0 248 200 448 448 448s448-200 448-448S760 64 512 64 64 264 64 512zm256 0c0-11.2 4.8-20.8 11.2-28.8L552 262.4c16-16 41.6-16 56 0 16 16 16 41.6 0 56L416 512l193.6 193.6c16 16 16 41.6 0 56-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2L331.2 540.8c-8-8-11.2-17.6-11.2-28.8z"}))}))};return o.displayName="LeftCircleFilled",cm.default=r.default.memo(r.default.forwardRef(o)),cm}var um={},zX;function K_t(){if(zX)return um;zX=1;var e=Se;Object.defineProperty(um,"__esModule",{value:!0}),um.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"LeftOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M636.8 867.2c-9.6 0-20.8-3.2-28.8-11.2L294.4 540.8c-16-16-16-41.6 0-56l315.2-315.2c16-16 41.6-16 56 0 16 16 16 41.6 0 56L379.2 512l286.4 286.4c16 16 16 41.6 0 56-8 8-17.6 12.8-28.8 12.8z"}))}))};return o.displayName="LeftOutlined",um.default=r.default.memo(r.default.forwardRef(o)),um}var dm={},LX;function q_t(){if(LX)return dm;LX=1;var e=Se;Object.defineProperty(dm,"__esModule",{value:!0}),dm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"MinusOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M864 560H160c-27.2 0-48-20.8-48-48s20.8-48 48-48h704c27.2 0 48 20.8 48 48s-20.8 48-48 48z"}))}))};return o.displayName="MinusOutlined",dm.default=r.default.memo(r.default.forwardRef(o)),dm}var fm={},BX;function Y_t(){if(BX)return fm;BX=1;var e=Se;Object.defineProperty(fm,"__esModule",{value:!0}),fm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"PlusOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 913.6c-20.8 0-38.4-17.6-38.4-38.4V550.4H148.8c-20.8 0-38.4-17.6-38.4-38.4 0-20.8 17.6-38.4 38.4-38.4h326.4V148.8c0-20.8 17.6-38.4 38.4-38.4 20.8 0 38.4 17.6 38.4 38.4v326.4h326.4c20.8 0 38.4 17.6 38.4 38.4 0 20.8-17.6 38.4-38.4 38.4h-328v326.4c0 17.6-17.6 35.2-38.4 35.2z"}),r.default.createElement("path",{d:"M512 112c20.8 0 36.8 16 36.8 36.8v328h328c20.8 0 36.8 16 36.8 36.8 0 20.8-16 36.8-36.8 36.8h-328v328c0 20.8-16 36.8-36.8 36.8-20.8 0-36.8-16-36.8-36.8V548.8H148.8c-20.8 0-36.8-16-36.8-36.8 0-20.8 16-36.8 36.8-36.8h328V148.8C475.2 128 491.2 112 512 112m0-3.2c-22.4 0-40 17.6-40 40v324.8H148.8c-22.4 0-40 17.6-40 40s17.6 40 40 40h324.8v324.8c0 22.4 17.6 40 40 40s40-17.6 40-40V552h324.8c22.4 0 40-17.6 40-40s-17.6-40-40-40H552V148.8c0-22.4-17.6-40-40-40z"}))}))};return o.displayName="PlusOutlined",fm.default=r.default.memo(r.default.forwardRef(o)),fm}var pm={},jX;function G_t(){if(jX)return pm;jX=1;var e=Se;Object.defineProperty(pm,"__esModule",{value:!0}),pm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"QuestionCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm40 696c-6.4 12.8-16 24-30.4 30.4-14.4 6.4-28.8 6.4-43.2 0-12.8-6.4-24-16-30.4-30.4-6.4-14.4-6.4-28.8 0-43.2 6.4-12.8 16-24 30.4-30.4 14.4-6.4 28.8-6.4 43.2 0 12.8 6.4 24 16 30.4 30.4 6.4 14.4 6.4 28.8 0 43.2zm89.6-320c-12.8 20.8-28.8 40-46.4 57.6-12.8 12.8-22.4 22.4-28.8 30.4-6.4 6.4-11.2 14.4-16 22.4-3.2 6.4-6.4 12.8-6.4 19.2-1.6 8-1.6 14.4-1.6 22.4 0 27.2-11.2 41.6-35.2 41.6-6.4 0-14.4 0-20.8-1.6-4.8-1.6-8-3.2-12.8-6.4-3.2-3.2-4.8-8-4.8-12.8-1.6-6.4-1.6-12.8-1.6-19.2 0-43.2 22.4-88 67.2-131.2 11.2-9.6 19.2-17.6 25.6-24 6.4-6.4 11.2-11.2 16-19.2 3.2-4.8 4.8-11.2 6.4-17.6 1.6-6.4 1.6-14.4 1.6-20.8 1.6-16-4.8-33.6-17.6-44.8-12.8-11.2-30.4-16-48-16-17.6-1.6-36.8 4.8-49.6 17.6-12.8 11.2-19.2 27.2-19.2 43.2-1.6 25.6-14.4 38.4-36.8 38.4-17.6 3.2-33.6-8-36.8-25.6v-11.2c0-35.2 16-68.8 41.6-92.8 27.2-27.2 65.6-41.6 105.6-40 36.8-1.6 73.6 11.2 100.8 35.2 25.6 27.2 40 64 36.8 100.8-4.8 17.6-9.6 38.4-19.2 54.4z"}))}))};return o.displayName="QuestionCircleFilled",pm.default=r.default.memo(r.default.forwardRef(o)),pm}var vm={},UX;function X_t(){if(UX)return vm;UX=1;var e=Se;Object.defineProperty(vm,"__esModule",{value:!0}),vm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"RecursiveDepartmentFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M540.64 576v-24H349.92L352 752h188.8v-24a32 32 0 0 1 32-32h288a32 32 0 0 1 32 32v128a32 32 0 0 1-32 32h-288a32 32 0 0 1-32-32v-24H312.16a43.68 43.68 0 0 1-8 0 24.32 24.32 0 0 1-3.2-.96l-4.32-1.44a18.88 18.88 0 0 1-3.04-1.6l-3.68-1.92a17.12 17.12 0 0 1-2.56-2.24 27.68 27.68 0 0 1-3.36-2.72 16 16 0 0 1-2.08-2.56 32 32 0 0 1-2.88-3.36l-1.44-2.72a32 32 0 0 1-2.24-4l-.96-3.2a34.08 34.08 0 0 1-1.28-4.32 26.56 26.56 0 0 1 0-3.52 39.68 39.68 0 0 1 0-4.32l-4.32-464H163.36a32 32 0 0 1-32-32v-128a32 32 0 0 1 32-32h288a32 32 0 0 1 32 32v128a32 32 0 0 1-32 32H347.84l1.44 144h192V448a32 32 0 0 1 32-32h288a32 32 0 0 1 32 32v128a32 32 0 0 1-32 32h-288a32 32 0 0 1-32.64-32z"}))}))};return o.displayName="RecursiveDepartmentFilled",vm.default=r.default.memo(r.default.forwardRef(o)),vm}var gm={},HX;function Z_t(){if(HX)return gm;HX=1;var e=Se;Object.defineProperty(gm,"__esModule",{value:!0}),gm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"RightCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 64C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm180.8 476.8L472 761.6c-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2c-16-16-16-41.6 0-56L608 512 414.4 318.4c-16-16-16-41.6 0-56 16-16 41.6-16 56 0l220.8 220.8c8 8 11.2 17.6 11.2 28.8s-1.6 20.8-9.6 28.8z"}))}))};return o.displayName="RightCircleFilled",gm.default=r.default.memo(r.default.forwardRef(o)),gm}var hm={},WX;function Q_t(){if(WX)return hm;WX=1;var e=Se;Object.defineProperty(hm,"__esModule",{value:!0}),hm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"RightOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M387.2 867.2c-9.6 0-20.8-3.2-28.8-11.2-16-16-16-41.6 0-56l286.4-288-286.4-286.4c-16-16-16-41.6 0-56 16-16 41.6-16 56 0l315.2 315.2c16 16 16 41.6 0 56L414.4 854.4c-8 8-17.6 12.8-27.2 12.8z"}))}))};return o.displayName="RightOutlined",hm.default=r.default.memo(r.default.forwardRef(o)),hm}var _m={},VX;function J_t(){if(VX)return _m;VX=1;var e=Se;Object.defineProperty(_m,"__esModule",{value:!0}),_m.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"RotateOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M905.6 590.4c-20.8-6.4-43.2 4.8-49.6 25.6-17.6 54.4-48 104-88 145.6-137.6 137.6-363.2 137.6-500.8 0-137.6-137.6-137.6-361.6 0-500.8C392 136 587.2 124.8 724.8 224l-48 48c-12.8 12.8-6.4 36.8 12.8 40L872 348.8c16 3.2 32-11.2 28.8-28.8L864 139.2c-3.2-19.2-27.2-25.6-40-12.8L782.4 168c-169.6-131.2-416-118.4-571.2 36.8-169.6 169.6-169.6 444.8 0 614.4C296 904 406.4 945.6 518.4 945.6S740.8 904 825.6 819.2c49.6-49.6 86.4-112 107.2-177.6 6.4-20.8-6.4-44.8-27.2-51.2z"}))}))};return o.displayName="RotateOutlined",_m.default=r.default.memo(r.default.forwardRef(o)),_m}var mm={},KX;function emt(){if(KX)return mm;KX=1;var e=Se;Object.defineProperty(mm,"__esModule",{value:!0}),mm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"SearchOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M892.8 835.2 726.4 668.8C772.8 609.6 800 536 800 456c0-190.4-153.6-344-344-344S112 265.6 112 456s153.6 344 344 344c80 0 155.2-27.2 212.8-73.6l166.4 166.4c8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2c14.4-16 14.4-41.6 0-57.6zM456 720c-145.6 0-264-118.4-264-264s118.4-264 264-264 264 118.4 264 264-118.4 264-264 264z"}))}))};return o.displayName="SearchOutlined",mm.default=r.default.memo(r.default.forwardRef(o)),mm}var xm={},qX;function tmt(){if(qX)return xm;qX=1;var e=Se;Object.defineProperty(xm,"__esModule",{value:!0}),xm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"SeparateOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M853.333 469.333A42.667 42.667 0 0 0 810.667 512v256A42.667 42.667 0 0 1 768 810.667H256A42.667 42.667 0 0 1 213.333 768V256A42.667 42.667 0 0 1 256 213.333h256A42.667 42.667 0 0 0 512 128H256a128 128 0 0 0-128 128v512a128 128 0 0 0 128 128h512a128 128 0 0 0 128-128V512a42.667 42.667 0 0 0-42.667-42.667z"}),r.default.createElement("path",{d:"M682.667 213.333h67.413L481.707 481.28a42.667 42.667 0 0 0 0 60.587 42.667 42.667 0 0 0 60.586 0L810.667 273.92v67.413A42.667 42.667 0 0 0 853.333 384 42.667 42.667 0 0 0 896 341.333V170.667A42.667 42.667 0 0 0 853.333 128H682.667a42.667 42.667 0 0 0 0 85.333z"}))}))};return o.displayName="SeparateOutlined",xm.default=r.default.memo(r.default.forwardRef(o)),xm}var bm={},YX;function rmt(){if(YX)return bm;YX=1;var e=Se;Object.defineProperty(bm,"__esModule",{value:!0}),bm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"SortFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M488 123.2 232 409.6c-19.2 20.8-3.2 52.8 24 52.8h512c27.2 0 41.6-32 24-52.8L536 123.2c-12.8-14.4-35.2-14.4-48 0zm0 777.6L232 614.4c-19.2-20.8-3.2-52.8 24-52.8h512c27.2 0 41.6 32 24 52.8L536 900.8c-12.8 14.4-35.2 14.4-48 0z"}))}))};return o.displayName="SortFilled",bm.default=r.default.memo(r.default.forwardRef(o)),bm}var ym={},GX;function nmt(){if(GX)return ym;GX=1;var e=Se;Object.defineProperty(ym,"__esModule",{value:!0}),ym.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"SyncOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M115.2 467.2 57.6 345.6c-8-16 0-35.2 16-43.2s35.2 0 43.2 16l17.6 38.4c68.8-152 217.6-249.6 387.2-249.6 184 0 347.2 118.4 404.8 292.8 6.4 20.8-4.8 43.2-25.6 51.2-4.8 1.6-8 1.6-12.8 1.6-17.6 0-32-11.2-38.4-27.2-46.4-142.4-179.2-238.4-328-238.4-136 0-257.6 80-313.6 201.6l44.8-20.8c16-8 35.2 0 43.2 16s0 35.2-16 43.2l-121.6 57.6c-4.8 1.6-9.6 3.2-12.8 3.2-12.8-3.2-25.6-9.6-30.4-20.8zm849.6 211.2-57.6-121.6c-8-16-27.2-22.4-43.2-16l-121.6 57.6c-16 8-22.4 27.2-16 43.2 8 16 27.2 22.4 43.2 16l44.8-20.8c-54.4 120-174.4 200-312 200-150.4 0-281.6-96-328-238.4-6.4-20.8-28.8-32-51.2-25.6-20.8 6.4-32 28.8-25.6 51.2 57.6 176 219.2 292.8 404.8 292.8 168 0 318.4-99.2 387.2-249.6l17.6 38.4c4.8 11.2 17.6 19.2 28.8 19.2 4.8 0 9.6-1.6 12.8-3.2 17.6-8 24-27.2 16-43.2z"}))}))};return o.displayName="SyncOutlined",ym.default=r.default.memo(r.default.forwardRef(o)),ym}var wm={},XX;function omt(){if(XX)return wm;XX=1;var e=Se;Object.defineProperty(wm,"__esModule",{value:!0}),wm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"TimeOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1100 1024"},r.default.createElement("path",{d:"M512 144c203.2 0 368 164.8 368 368S715.2 880 512 880 144 715.2 144 512s164.8-368 368-368m0-80C264 64 64 264 64 512s200 448 448 448 448-200 448-448S760 64 512 64zm318.4 464c0-22.4-17.6-40-40-40h-248V241.6c0-22.4-17.6-40-40-40s-40 17.6-40 40V528c0 22.4 17.6 40 40 40h286.4c24 0 41.6-17.6 41.6-40z"}))}))};return o.displayName="TimeOutlined",wm.default=r.default.memo(r.default.forwardRef(o)),wm}var Dm={},ZX;function amt(){if(ZX)return Dm;ZX=1;var e=Se;Object.defineProperty(Dm,"__esModule",{value:!0}),Dm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"ToTopFilled",icon:r.default.createElement("svg",{viewBox:"0 0 64 64"},r.default.createElement("path",{d:"M32 4a28 28 0 1 0 28 28A28 28 0 0 0 32 4Zm9.19 33.85H34.5V48.4a.6.6 0 0 1-.6.6h-3.8a.6.6 0 0 1-.6-.6V37.85h-6.69a.78.78 0 0 1-.81-.75.81.81 0 0 1 .24-.59l8.89-8.67a1.27 1.27 0 0 1 1.74 0l8.89 8.67a.78.78 0 0 1 0 1.1.78.78 0 0 1-.57.24ZM48 22.5a.5.5 0 0 1-.5.5h-31a.5.5 0 0 1-.5-.5v-3a.5.5 0 0 1 .5-.5h31a.5.5 0 0 1 .5.5Z","data-name":"\\u56FE\\u5C42 4"}))}))};return o.displayName="ToTopFilled",Dm.default=r.default.memo(r.default.forwardRef(o)),Dm}var Im={},QX;function imt(){if(QX)return Im;QX=1;var e=Se;Object.defineProperty(Im,"__esModule",{value:!0}),Im.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UpOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M788.8 694.4c-9.6 0-20.8-3.2-28.8-11.2L504 425.6 246.4 683.2c-16 16-41.6 16-56 0-16-16-16-41.6 0-56l284.8-284.8c14.4-14.4 41.6-14.4 56 0L816 627.2c16 16 16 41.6 0 56-6.4 8-17.6 11.2-27.2 11.2z"}))}))};return o.displayName="UpOutlined",Im.default=r.default.memo(r.default.forwardRef(o)),Im}var Fm={},JX;function lmt(){if(JX)return Fm;JX=1;var e=Se;Object.defineProperty(Fm,"__esModule",{value:!0}),Fm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UploadOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M880 534.4c-22.4 0-40 17.6-40 40v184c0 35.2-28.8 65.6-65.6 65.6H249.6c-35.2 0-65.6-28.8-65.6-65.6v-184c0-22.4-17.6-40-40-40s-40 17.6-40 40v184c0 80 65.6 145.6 145.6 145.6H776c80 0 145.6-65.6 145.6-145.6v-184c-1.6-22.4-19.2-40-41.6-40z"}),r.default.createElement("path",{d:"M300.8 382.4c9.6 0 20.8-3.2 28.8-11.2l145.6-145.6v441.6c0 22.4 17.6 40 40 40s40-17.6 40-40V224l145.6 145.6c8 8 17.6 11.2 28.8 11.2 9.6 0 20.8-3.2 28.8-11.2 16-16 16-41.6 0-56l-216-214.4-1.6-1.6-3.2-3.2c-1.6-1.6-3.2-1.6-3.2-1.6-1.6 0-1.6-1.6-3.2-1.6s-3.2-1.6-4.8-1.6c-1.6 0-1.6 0-3.2-1.6h-16c-1.6 0-1.6 0-3.2 1.6-1.6 0-3.2 0-4.8 1.6-1.6 0-1.6 1.6-3.2 1.6s-1.6 1.6-3.2 1.6l-4.8 4.8-216 214.4c-16 16-16 41.6 0 56 8 8 19.2 12.8 28.8 12.8z"}))}))};return o.displayName="UploadOutlined",Fm.default=r.default.memo(r.default.forwardRef(o)),Fm}var $m={},eZ;function smt(){if(eZ)return $m;eZ=1;var e=Se;Object.defineProperty($m,"__esModule",{value:!0}),$m.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UserCircleFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M512 64a448 448 0 1 0 448 448A448 448 0 0 0 512 64zm222.88 636.64H290.24a56 56 0 0 1 20-60.64 267.68 267.68 0 0 1 49.92-24.48 227.04 227.04 0 0 0 59.36-30.4 59.2 59.2 0 0 0 9.92-85.76c-34.88-45.12-39.2-114.24-30.08-168.32a116 116 0 0 1 226.4 0c9.12 54.08 6.24 124.16-30.08 168.32S576 561.6 576 561.6c32 41.28 52.32 44.16 96.8 61.6a227.84 227.84 0 0 1 43.04 16c27.2 20.8 19.04 61.28 19.04 61.44z"}))}))};return o.displayName="UserCircleFilled",$m.default=r.default.memo(r.default.forwardRef(o)),$m}var Em={},tZ;function cmt(){if(tZ)return Em;tZ=1;var e=Se;Object.defineProperty(Em,"__esModule",{value:!0}),Em.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UserExternalFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M661.92 461.28a468.64 468.64 0 0 0 5.6-192C651.52 176 560.8 112 466.4 112s-185.12 64-201.12 156.96-9.28 214.4 53.6 293.12a101.28 101.28 0 0 1-17.6 149.12c-32 23.84-44.96 26.72-106.08 52.64a486.88 486.88 0 0 0-89.12 42.72A96 96 0 0 0 70.4 912H444a336 336 0 0 1 217.92-450.72zm148.48 140a98.4 98.4 0 0 0-83.52 46.88l-97.12 160a18.08 18.08 0 0 1-16 8.48 67.36 67.36 0 1 1 0-134.72 40 40 0 0 0 0-80 147.36 147.36 0 1 0 0 294.72 97.92 97.92 0 0 0 83.36-46.88l97.28-160a17.76 17.76 0 0 1 15.2-8.48 67.36 67.36 0 0 1 0 134.72 40 40 0 0 0 0 80 147.36 147.36 0 0 0 0-294.72z"}))}))};return o.displayName="UserExternalFilled",Em.default=r.default.memo(r.default.forwardRef(o)),Em}var Sm={},rZ;function umt(){if(rZ)return Sm;rZ=1;var e=Se;Object.defineProperty(Sm,"__esModule",{value:!0}),Sm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UserFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M872 806.4c-22.4-16-62.4-32-89.6-43.2-60.8-25.6-73.6-28.8-105.6-52.8-28.8-20.8-70.4-83.2-17.6-148.8 62.4-78.4 70.4-198.4 54.4-292.8C697.6 176 606.4 112 512 112c-94.4 0-185.6 64-201.6 156.8-16 94.4-8 214.4 54.4 292.8 52.8 67.2 11.2 128-17.6 148.8-32 24-44.8 27.2-105.6 52.8-25.6 11.2-67.2 25.6-89.6 43.2C94.4 849.6 116.8 912 116.8 912h792c-1.6 0 20.8-62.4-36.8-105.6z"}))}))};return o.displayName="UserFilled",Sm.default=r.default.memo(r.default.forwardRef(o)),Sm}var Cm={},nZ;function dmt(){if(nZ)return Cm;nZ=1;var e=Se;Object.defineProperty(Cm,"__esModule",{value:!0}),Cm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UserRightFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M662.4 427.2c12.8-59.2 11.2-121.6 1.6-177.6-16-94.4-107.2-156.8-201.6-156.8-94.4 0-185.6 64-201.6 156.8-16 94.4-8 214.4 54.4 292.8 52.8 67.2 11.2 128-17.6 148.8-32 24-44.8 27.2-105.6 52.8-25.6 11.2-67.2 25.6-89.6 43.2-57.6 43.2-35.2 105.6-35.2 105.6h451.2C475.2 841.6 448 777.6 448 705.6c0-132.8 91.2-244.8 214.4-278.4z"}),r.default.createElement("path",{d:"M736 481.6c-123.2 0-224 100.8-224 224s100.8 224 224 224 224-100.8 224-224-100.8-224-224-224zm108.8 185.6-102.4 120c-6.4 6.4-14.4 11.2-22.4 11.2h-1.6c-8 0-16-3.2-22.4-8L628.8 728c-12.8-12.8-14.4-32-1.6-44.8 12.8-12.8 32-14.4 44.8-1.6l43.2 40 81.6-94.4c11.2-12.8 32-14.4 44.8-3.2 14.4 9.6 14.4 28.8 3.2 43.2z"}))}))};return o.displayName="UserRightFilled",Cm.default=r.default.memo(r.default.forwardRef(o)),Cm}var Tm={},oZ;function fmt(){if(oZ)return Tm;oZ=1;var e=Se;Object.defineProperty(Tm,"__esModule",{value:!0}),Tm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"UserSyncFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M662.4 427.2c12.8-59.2 11.2-121.6 1.6-177.6-16-94.4-107.2-156.8-201.6-156.8-94.4 0-185.6 64-201.6 156.8-16 94.4-8 214.4 54.4 292.8 52.8 67.2 11.2 128-17.6 148.8-32 24-44.8 27.2-105.6 52.8-25.6 11.2-67.2 25.6-89.6 43.2-57.6 43.2-35.2 105.6-35.2 105.6h451.2C475.2 841.6 448 777.6 448 705.6c0-132.8 91.2-244.8 214.4-278.4z"}),r.default.createElement("path",{d:"M736 481.6c-123.2 0-224 100.8-224 224s100.8 224 224 224 224-100.8 224-224-100.8-224-224-224zM628.8 627.2c6.4-3.2 14.4-3.2 20.8 0 22.4-28.8 56-44.8 92.8-44.8 51.2 0 96 32 112 81.6 4.8 14.4-3.2 28.8-17.6 33.6-3.2 1.6-4.8 1.6-8 1.6-11.2 0-20.8-6.4-25.6-17.6-8-27.2-33.6-44.8-60.8-44.8-16 0-30.4 4.8-41.6 14.4 1.6 1.6 3.2 3.2 4.8 6.4 6.4 12.8 0 28.8-12.8 35.2L664 704c-3.2 1.6-8 3.2-11.2 3.2-9.6 0-19.2-6.4-24-14.4L616 664c-6.4-14.4-1.6-30.4 12.8-36.8zM851.2 792c-3.2 1.6-8 3.2-11.2 3.2-3.2 0-6.4-1.6-9.6-1.6-22.4 28.8-56 46.4-92.8 46.4-51.2 0-96-32-112-81.6-4.8-14.4 3.2-28.8 17.6-33.6 14.4-4.8 28.8 3.2 33.6 17.6 8 27.2 33.6 44.8 60.8 44.8 16 0 30.4-4.8 41.6-14.4-1.6-1.6-3.2-3.2-4.8-6.4-6.4-12.8 0-28.8 12.8-35.2l28.8-12.8c12.8-6.4 28.8 0 35.2 12.8L864 760c6.4 9.6 0 25.6-12.8 32z"}))}))};return o.displayName="UserSyncFilled",Tm.default=r.default.memo(r.default.forwardRef(o)),Tm}var Rm={},aZ;function pmt(){if(aZ)return Rm;aZ=1;var e=Se;Object.defineProperty(Rm,"__esModule",{value:!0}),Rm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"VerticalLeftOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M763.2 769.6c16 16 16 41.6 0 56-8 8-17.6 11.2-28.8 11.2s-20.8-3.2-28.8-11.2L420.8 540.8c-8-8-11.2-17.6-11.2-28.8s4.8-20.8 11.2-28.8l284.8-284.8c16-16 41.6-16 56 0 16 16 16 41.6 0 56L505.6 512l257.6 257.6zM321.6 172.8c-22.4 0-40 17.6-40 40v598.4c0 22.4 17.6 40 40 40s40-17.6 40-40V212.8c0-22.4-17.6-40-40-40z"}))}))};return o.displayName="VerticalLeftOutlined",Rm.default=r.default.memo(r.default.forwardRef(o)),Rm}var Om={},iZ;function vmt(){if(iZ)return Om;iZ=1;var e=Se;Object.defineProperty(Om,"__esModule",{value:!0}),Om.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"VerticalRightOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M260.8 254.4c-16-16-16-41.6 0-56 8-8 17.6-11.2 28.8-11.2s20.8 3.2 28.8 11.2l284.8 284.8c8 8 11.2 17.6 11.2 28.8s-4.8 20.8-11.2 28.8L318.4 825.6c-16 16-41.6 16-56 0-16-16-16-41.6 0-56l256-257.6-257.6-257.6zm441.6 596.8c22.4 0 40-17.6 40-40V212.8c0-22.4-17.6-40-40-40s-40 17.6-40 40v598.4c0 22.4 17.6 40 40 40z"}))}))};return o.displayName="VerticalRightOutlined",Om.default=r.default.memo(r.default.forwardRef(o)),Om}var Am={},lZ;function gmt(){if(lZ)return Am;lZ=1;var e=Se;Object.defineProperty(Am,"__esModule",{value:!0}),Am.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"WarningFilled",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M952 817.6 568 115.2c-6.4-11.2-12.8-19.2-24-25.6-9.6-6.4-20.8-9.6-32-9.6s-22.4 3.2-32 9.6c-9.6 6.4-17.6 14.4-24 24L72 816c-11.2 20.8-11.2 41.6 1.6 62.4 6.4 9.6 12.8 17.6 24 22.4 9.6 8 19.2 11.2 30.4 11.2h768c11.2 0 22.4-3.2 32-8 9.6-6.4 17.6-12.8 24-22.4 11.2-22.4 11.2-43.2 0-64zM472 328c0-22.4 17.6-40 40-40s40 17.6 40 40v240c0 22.4-17.6 40-40 40s-40-17.6-40-40V328zm40 472c-30.4 0-56-25.6-56-56s25.6-56 56-56 56 25.6 56 56c0 32-25.6 57.6-56 56z"}))}))};return o.displayName="WarningFilled",Am.default=r.default.memo(r.default.forwardRef(o)),Am}var km={},sZ;function hmt(){if(sZ)return km;sZ=1;var e=Se;Object.defineProperty(km,"__esModule",{value:!0}),km.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"ZoomInOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M600 416H496V312c0-22.4-17.6-40-40-40s-40 17.6-40 40v104H312c-22.4 0-40 17.6-40 40s17.6 40 40 40h104v104c0 22.4 17.6 40 40 40s40-17.6 40-40V496h104c22.4 0 40-17.6 40-40s-17.6-40-40-40z"}),r.default.createElement("path",{d:"M892.8 835.2 726.4 668.8C772.8 609.6 800 536 800 456c0-190.4-153.6-344-344-344S112 265.6 112 456s153.6 344 344 344c80 0 155.2-27.2 212.8-73.6l166.4 166.4c8 8 17.6 11.2 28.8 11.2s20.8-3.2 28.8-11.2c14.4-16 14.4-41.6 0-57.6zM456 720c-145.6 0-264-118.4-264-264s118.4-264 264-264 264 118.4 264 264-118.4 264-264 264z"}))}))};return o.displayName="ZoomInOutlined",km.default=r.default.memo(r.default.forwardRef(o)),km}var Pm={},cZ;function _mt(){if(cZ)return Pm;cZ=1;var e=Se;Object.defineProperty(Pm,"__esModule",{value:!0}),Pm.default=void 0;var t=e(bt),r=e(m),n=e(Ct()),o=function(i,l){return r.default.createElement(n.default,(0,t.default)({},i,{ref:l,name:"ZoomOutOutlined",icon:r.default.createElement("svg",{viewBox:"0 0 1024 1024"},r.default.createElement("path",{d:"M600 496H312c-22.4 0-40-17.6-40-40s17.6-40 40-40h288c22.4 0 40 17.6 40 40s-17.6 40-40 40z"}),r.default.createElement("path",{d:"M864 904c-9.6 0-20.8-3.2-28.8-11.2L668.8 726.4C609.6 772.8 536 800 456 800c-190.4 0-344-153.6-344-344s153.6-344 344-344 344 153.6 344 344c0 80-27.2 155.2-73.6 212.8l166.4 166.4c16 16 16 41.6 0 56-8 9.6-19.2 12.8-28.8 12.8zM456 192c-145.6 0-264 118.4-264 264s118.4 264 264 264 264-118.4 264-264-118.4-264-264-264z"}))}))};return o.displayName="ZoomOutOutlined",Pm.default=r.default.memo(r.default.forwardRef(o)),Pm}var uZ;function mmt(){return uZ||(uZ=1,function(e){var t=Se;Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"BugFilled",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"CalendarOutlined",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"CaretDownFilled",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"CaretRightFilled",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"CaretUpFilled",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"CheckCircleFilled",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"CheckOutlined",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"CloseCircleFilled",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(e,"CloseOutlined",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(e,"CodeOutlined",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(e,"CompanyOutlined",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(e,"CopyOutlined",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(e,"DepartmentFilled",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(e,"DoubleLeftOutlined",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(e,"DoubleRightOutlined",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(e,"DownOutlined",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(e,"DownloadOutlined",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(e,"EditOutlined",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(e,"EllipsisOutlined",{enumerable:!0,get:function(){return I.default}}),Object.defineProperty(e,"EnterOutlined",{enumerable:!0,get:function(){return $.default}}),Object.defineProperty(e,"ExclamationCircleFilled",{enumerable:!0,get:function(){return F.default}}),Object.defineProperty(e,"EyeInvisibleOutlined",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(e,"EyeOutlined",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(e,"FolderFilled",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(e,"FolderOpenFilled",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(e,"ImageOutlined",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(e,"LabelFilled",{enumerable:!0,get:function(){return B.default}}),Object.defineProperty(e,"LeftCircleFilled",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(e,"LeftOutlined",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(e,"MinusOutlined",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(e,"PlusOutlined",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(e,"QuestionCircleFilled",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(e,"RecursiveDepartmentFilled",{enumerable:!0,get:function(){return O.default}}),Object.defineProperty(e,"RightCircleFilled",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(e,"RightOutlined",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(e,"RotateOutlined",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(e,"SearchOutlined",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(e,"SeparateOutlined",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(e,"SortFilled",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(e,"SyncOutlined",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(e,"TimeOutlined",{enumerable:!0,get:function(){return V.default}}),Object.defineProperty(e,"ToTopFilled",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(e,"UpOutlined",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(e,"UploadOutlined",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(e,"UserCircleFilled",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(e,"UserExternalFilled",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(e,"UserFilled",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(e,"UserRightFilled",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(e,"UserSyncFilled",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(e,"VerticalLeftOutlined",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(e,"VerticalRightOutlined",{enumerable:!0,get:function(){return ve.default}}),Object.defineProperty(e,"WarningFilled",{enumerable:!0,get:function(){return he.default}}),Object.defineProperty(e,"ZoomInOutlined",{enumerable:!0,get:function(){return ge.default}}),Object.defineProperty(e,"ZoomOutOutlined",{enumerable:!0,get:function(){return $e.default}});var r=t(m_t()),n=t(x_t()),o=t(b_t()),a=t(y_t()),i=t(w_t()),l=t(D_t()),s=t(I_t()),c=t(F_t()),d=t($_t()),f=t(E_t()),v=t(S_t()),g=t(C_t()),h=t(T_t()),_=t(R_t()),b=t(O_t()),x=t(A_t()),w=t(k_t()),D=t(P_t()),I=t(N_t()),$=t(M_t()),F=t(z_t()),C=t(L_t()),R=t(B_t()),k=t(j_t()),P=t(U_t()),U=t(H_t()),B=t(W_t()),z=t(V_t()),A=t(K_t()),M=t(q_t()),N=t(Y_t()),T=t(G_t()),O=t(X_t()),j=t(Z_t()),K=t(Q_t()),Q=t(J_t()),Y=t(emt()),X=t(tmt()),G=t(rmt()),H=t(nmt()),V=t(omt()),Z=t(amt()),te=t(imt()),J=t(lmt()),ne=t(smt()),re=t(cmt()),ie=t(umt()),ce=t(dmt()),oe=t(fmt()),fe=t(pmt()),ve=t(vmt()),he=t(gmt()),ge=t(hmt()),$e=t(_mt())}(G4)),G4}var dZ;function xmt(){return dZ||(dZ=1,function(e){var t=ya,r=Se;Object.defineProperty(e,"__esModule",{value:!0});var n={};Object.defineProperty(e,"default",{enumerable:!0,get:function(){return o.default}});var o=r(Ct()),a=mmt();t(a).forEach(function(i){i==="default"||i==="__esModule"||Object.prototype.hasOwnProperty.call(n,i)||i in e&&e[i]===a[i]||Object.defineProperty(e,i,{enumerable:!0,get:function(){return a[i]}})})}(Y4)),Y4}var iD={},fZ;function lD(){if(fZ)return iD;fZ=1;var e=Se;Object.defineProperty(iD,"__esModule",{value:!0}),iD.default=v;var t=e(aD),r=e(tl),n=e(ya),o=e(rd),a=Ws(),i=`accept acceptCharset accessKey action allowFullScreen allowTransparency alt async autoComplete autoFocus autoPlay capture cellPadding cellSpacing challenge charSet checked classID className colSpan cols content contentEditable contextMenu controls coords crossOrigin data dateTime default defer dir disabled download draggable @@ -176,13 +173,13 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho onMouseEnter onMouseLeave onMouseMove onMouseOut onMouseOver onMouseUp onSelect onTouchCancel onTouchEnd onTouchMove onTouchStart onScroll onWheel onAbort onCanPlay onCanPlayThrough onDurationChange onEmptied onEncrypted onEnded onError onLoadedData onLoadedMetadata - onLoadStart onPause onPlay onPlaying onProgress onRateChange onSeeked onSeeking onStalled onSuspend onTimeUpdate onVolumeChange onWaiting onLoad onError`,s="".concat(i," ").concat(l).split(/[\s\n]+/),c="aria-",d="data-";function f(h,g){return h.indexOf(g)===0}function v(h){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,_;g===!1?_={aria:!0,data:!0,attr:!0}:g===!0?_={aria:!0}:_=(0,r.default)({},g);var w={};return(0,n.default)(h).forEach(function(b){(_.aria&&(b==="role"||f(b,c))||_.data&&f(b,d)||_.attr&&(0,a.default)(s).call(s,b))&&(0,o.assign)(w,(0,t.default)({},b,(0,o.get)(h,b)))}),w}return Iw}var oR={},om={},iR={},im={};const jht=oo(ege);var lm={},sm={},$w={},qG;function Uht(){if(qG)return $w;qG=1;var e=Ur,t=Zr,r=Qr,n=Ce;Object.defineProperty($w,"__esModule",{value:!0}),$w.default=s;var a=n(Mo),o=l(m);function i(c){if(typeof t!="function")return null;var d=new t,f=new t;return(i=function(h){return h?f:d})(c)}function l(c,d){if(!d&&c&&c.__esModule)return c;if(c===null||e(c)!="object"&&typeof c!="function")return{default:c};var f=i(d);if(f&&f.has(c))return f.get(c);var v={__proto__:null},h=Object.defineProperty&&r;for(var g in c)if(g!=="default"&&Object.prototype.hasOwnProperty.call(c,g)){var _=h?r(c,g):null;_&&(_.get||_.set)?Object.defineProperty(v,g,_):v[g]=c[g]}return v.default=c,f&&f.set(c,v),v}function s(c){var d=o.default.useState(function(){return document.createElement("div")}),f=(0,a.default)(d,1),v=f[0],h=o.default.useRef(!1);c&&!h.current&&g(),(0,o.useEffect)(function(){return _},[]),(0,o.useEffect)(function(){c||_()},[c]);function g(){v.parentElement||document.body.appendChild(v),h.current=!0}function _(){var w;v.parentElement&&((w=v.parentElement)===null||w===void 0||w.removeChild(v)),h.current=!1}return[v]}return $w}var Sw={},Ew={},YG;function Hht(){if(YG)return Ew;YG=1,Object.defineProperty(Ew,"__esModule",{value:!0}),Ew.isBodyOverflowing=e;function e(){return document.body.scrollHeight>(window.innerHeight||document.documentElement.clientHeight)&&window.innerWidth>document.body.offsetWidth}return Ew}var GG;function Wht(){if(GG)return Sw;GG=1;var e=Ur,t=Zr,r=Qr,n=Ce;Object.defineProperty(Sw,"__esModule",{value:!0}),Sw.default=g;var a=n(Wi),o=n(Mo),i=f(m),l=Up(),s=$a(),c=Hht();function d(_){if(typeof t!="function")return null;var w=new t,b=new t;return(d=function(D){return D?b:w})(_)}function f(_,w){if(!w&&_&&_.__esModule)return _;if(_===null||e(_)!="object"&&typeof _!="function")return{default:_};var b=d(w);if(b&&b.has(_))return b.get(_);var y={__proto__:null},D=Object.defineProperty&&r;for(var F in _)if(F!=="default"&&Object.prototype.hasOwnProperty.call(_,F)){var S=D?r(_,F):null;S&&(S.get||S.set)?Object.defineProperty(y,F,S):y[F]=_[F]}return y.default=_,b&&b.set(_,y),y}var v="x-util-locker-".concat(Date.now()),h=0;function g(_){var w=!!_,b=i.useState(function(){var F;return h+=1,(0,a.default)(F="".concat(v,"_")).call(F,h)}),y=(0,o.default)(b,1),D=y[0];(0,l.useLayoutEffect)(function(){if(w){var F=(0,s.getTargetScrollBarSize)(document.body).width,S=(0,c.isBodyOverflowing)();(0,s.updateCSS)(` + onLoadStart onPause onPlay onPlaying onProgress onRateChange onSeeked onSeeking onStalled onSuspend onTimeUpdate onVolumeChange onWaiting onLoad onError`,s="".concat(i," ").concat(l).split(/[\s\n]+/),c="aria-",d="data-";function f(g,h){return g.indexOf(h)===0}function v(g){var h=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,_;h===!1?_={aria:!0,data:!0,attr:!0}:h===!0?_={aria:!0}:_=(0,r.default)({},h);var b={};return(0,n.default)(g).forEach(function(x){(_.aria&&(x==="role"||f(x,c))||_.data&&f(x,d)||_.attr&&(0,o.default)(s).call(s,x))&&(0,a.assign)(b,(0,t.default)({},x,(0,a.get)(g,x)))}),b}return iD}var X4={},Nm={},pZ;function bmt(){if(pZ)return Nm;pZ=1;var e=Se;Object.defineProperty(Nm,"__esModule",{value:!0}),Nm.default=void 0;var t=e(m),r=V4(),n=function(a){var i;return(i=t.default.useContext(r.ConfigProviderContext))===null||i===void 0?void 0:i[a]};return Nm.default=n,Nm}var vZ;function Z4(){return vZ||(vZ=1,function(e){var t=Se;Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"useGlobalComponentConfig",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"useSize",{enumerable:!0,get:function(){return n.default}});var r=t(bmt()),n=t(AG())}(X4)),X4}var Q4={},Mm={},J4={},zm={};const ymt=ca(d_e);var Lm={},Bm={},sD={},gZ;function wmt(){if(gZ)return sD;gZ=1;var e=Yr,t=Xr,r=Zr,n=Se;Object.defineProperty(sD,"__esModule",{value:!0}),sD.default=s;var o=n(Ea),a=l(m);function i(c){if(typeof t!="function")return null;var d=new t,f=new t;return(i=function(g){return g?f:d})(c)}function l(c,d){if(!d&&c&&c.__esModule)return c;if(c===null||e(c)!="object"&&typeof c!="function")return{default:c};var f=i(d);if(f&&f.has(c))return f.get(c);var v={__proto__:null},g=Object.defineProperty&&r;for(var h in c)if(h!=="default"&&Object.prototype.hasOwnProperty.call(c,h)){var _=g?r(c,h):null;_&&(_.get||_.set)?Object.defineProperty(v,h,_):v[h]=c[h]}return v.default=c,f&&f.set(c,v),v}function s(c){var d=a.default.useState(function(){return document.createElement("div")}),f=(0,o.default)(d,1),v=f[0],g=a.default.useRef(!1);c&&!g.current&&h(),(0,a.useEffect)(function(){return _},[]),(0,a.useEffect)(function(){c||_()},[c]);function h(){v.parentElement||document.body.appendChild(v),g.current=!0}function _(){var b;v.parentElement&&((b=v.parentElement)===null||b===void 0||b.removeChild(v)),g.current=!1}return[v]}return sD}var cD={},uD={},hZ;function Dmt(){if(hZ)return uD;hZ=1,Object.defineProperty(uD,"__esModule",{value:!0}),uD.isBodyOverflowing=e;function e(){return document.body.scrollHeight>(window.innerHeight||document.documentElement.clientHeight)&&window.innerWidth>document.body.offsetWidth}return uD}var _Z;function Imt(){if(_Z)return cD;_Z=1;var e=Yr,t=Xr,r=Zr,n=Se;Object.defineProperty(cD,"__esModule",{value:!0}),cD.default=h;var o=n(nl),a=n(Ea),i=f(m),l=Ks(),s=wo(),c=Dmt();function d(_){if(typeof t!="function")return null;var b=new t,x=new t;return(d=function(D){return D?x:b})(_)}function f(_,b){if(!b&&_&&_.__esModule)return _;if(_===null||e(_)!="object"&&typeof _!="function")return{default:_};var x=d(b);if(x&&x.has(_))return x.get(_);var w={__proto__:null},D=Object.defineProperty&&r;for(var I in _)if(I!=="default"&&Object.prototype.hasOwnProperty.call(_,I)){var $=D?r(_,I):null;$&&($.get||$.set)?Object.defineProperty(w,I,$):w[I]=_[I]}return w.default=_,x&&x.set(_,w),w}var v="x-util-locker-".concat(Date.now()),g=0;function h(_){var b=!!_,x=i.useState(function(){var I;return g+=1,(0,o.default)(I="".concat(v,"_")).call(I,g)}),w=(0,a.default)(x,1),D=w[0];(0,l.useLayoutEffect)(function(){if(b){var I=(0,s.getTargetScrollBarSize)(document.body).width,$=(0,c.isBodyOverflowing)();(0,s.updateCSS)(` html body { overflow-y: hidden; - `.concat(S?"width: calc(100% - ".concat(F,"px);"):"",` -}`),D)}else(0,s.removeCSS)(D);return function(){(0,s.removeCSS)(D)}},[w,D])}return Sw}var XG;function Vht(){if(XG)return sm;XG=1;var e=Ur,t=Zr,r=Qr,n=Ce;Object.defineProperty(sm,"__esModule",{value:!0}),sm.default=void 0;var a=n(Mo),o=f(m),i=Kr,l=$a(),s=n(Uht()),c=n(Wht());function d(g){if(typeof t!="function")return null;var _=new t,w=new t;return(d=function(y){return y?w:_})(g)}function f(g,_){if(!_&&g&&g.__esModule)return g;if(g===null||e(g)!="object"&&typeof g!="function")return{default:g};var w=d(_);if(w&&w.has(g))return w.get(g);var b={__proto__:null},y=Object.defineProperty&&r;for(var D in g)if(D!=="default"&&Object.prototype.hasOwnProperty.call(g,D)){var F=y?r(g,D):null;F&&(F.get||F.set)?Object.defineProperty(b,D,F):b[D]=g[D]}return b.default=g,w&&w.set(g,b),b}var v=function(_){return _===!1?!1:_?typeof _=="string"?document.querySelector(_):typeof _=="function"?_():_:null},h=o.forwardRef(function(g,_){var w=g.open,b=g.autoLock,y=g.getContainer,D=g.autoDestroy,F=D===void 0?!0:D,S=g.children,I=o.useState(w),C=(0,a.default)(I,2),R=C[0],P=C[1],O=R||w;o.useEffect(function(){(F||w)&&P(w)},[w,F]);var N=o.useState(function(){return v(y)}),A=(0,a.default)(N,2),z=A[0],k=A[1];o.useEffect(function(){var G=v(y);k(G??null)});var M=(0,s.default)(!!O&&!z),T=(0,a.default)(M,1),B=T[0],L=z??B;(0,c.default)(b&&w&&(L===B||L===document.body));var K=null;S&&(0,l.supportRef)(S)&&_&&(K=S.ref);var X=(0,l.useComposeRef)(K,_);if(!O||z===void 0)return null;var ee=L===!1,q=S;return _&&(q=o.cloneElement(S,{ref:X})),o.createElement(o.Fragment,null,ee?q:(0,i.createPortal)(q,L))});return sm.default=h,sm}var ZG;function Kht(){if(ZG)return lm;ZG=1;var e=Ce;Object.defineProperty(lm,"__esModule",{value:!0}),lm.default=void 0;var t=e(Vht());return lm.default=t.default,lm}var cm={};const qht=oo(DHe);var lR={},Cw={},QG;function Yht(){if(QG)return Cw;QG=1;var e=Ur,t=yc,r=Zr,n=Qr,a=Ce;Object.defineProperty(Cw,"__esModule",{value:!0}),Cw.default=y;var o=a(yt),i=a(Dd),l=a(Id),s=a(Gg),c=a(Xg),d=a(Zg),f=_(m),v=Kr,h=a(n1);function g(D){if(typeof r!="function")return null;var F=new r,S=new r;return(g=function(C){return C?S:F})(D)}function _(D,F){if(!F&&D&&D.__esModule)return D;if(D===null||e(D)!="object"&&typeof D!="function")return{default:D};var S=g(F);if(S&&S.has(D))return S.get(D);var I={__proto__:null},C=Object.defineProperty&&n;for(var R in D)if(R!=="default"&&Object.prototype.hasOwnProperty.call(D,R)){var P=C?n(D,R):null;P&&(P.get||P.set)?Object.defineProperty(I,R,P):I[R]=D[R]}return I.default=D,S&&S.set(D,I),I}function w(D){var F=b();return function(){var I=(0,d.default)(D),C;if(F){var R=(0,d.default)(this).constructor;C=t(I,arguments,R)}else C=I.apply(this,arguments);return(0,c.default)(this,C)}}function b(){if(typeof Reflect>"u"||!t||t.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(t(Boolean,[],function(){})),!0}catch{return!1}}function y(D){var F=function(S){(0,s.default)(C,S);var I=w(C);function C(R){var P;return(0,i.default)(this,C),P=I.call(this,R),P.handleMouseDown=function(O){var N=P.instanceRef.current,A=(0,v.findDOMNode)(N),z=P.clickStartEl;A&&z&&!A.contains(z)&&P.props.onClickOutside(O)},P.instanceRef=R.forwaredRef||f.createRef(),P}return(0,l.default)(C,[{key:"render",value:function(){var P=this;return f.createElement(f.Fragment,null,f.createElement(h.default,{target:document.body,onMouseDown:function(N){P.clickStartEl=N.target,P.handleMouseDown(N)}}),f.createElement(D,(0,o.default)({},this.props,{ref:this.instanceRef})))}}]),C}(f.Component);return F.displayName="withClickOutside(".concat(D.displayName||D.name||"Component",")"),f.forwardRef(function(S,I){return f.createElement(F,(0,o.default)({},S,{forwaredRef:I}))})}return Cw}var JG;function Ght(){return JG||(JG=1,function(e){var t=Ce;Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"withClickOutside",{enumerable:!0,get:function(){return r.default}});var r=t(Yht())}(lR)),lR}var um={};const Xht=oo(CZe);var eX;function Zht(){if(eX)return um;eX=1;var e=Ur,t=Xi,r=yc,n=Zr,a=Qr,o=Ce;Object.defineProperty(um,"__esModule",{value:!0}),um.default=void 0;var i=o(Dd),l=o(Id),s=o(Gg),c=o(Xg),d=o(Zg),f=o(Xi),v=o(Kf),h=b(m),g=Xht,_=$a();function w(C){if(typeof n!="function")return null;var R=new n,P=new n;return(w=function(N){return N?P:R})(C)}function b(C,R){if(!R&&C&&C.__esModule)return C;if(C===null||e(C)!="object"&&typeof C!="function")return{default:C};var P=w(R);if(P&&P.has(C))return P.get(C);var O={__proto__:null},N=Object.defineProperty&&a;for(var A in C)if(A!=="default"&&Object.prototype.hasOwnProperty.call(C,A)){var z=N?a(C,A):null;z&&(z.get||z.set)?Object.defineProperty(O,A,z):O[A]=C[A]}return O.default=C,P&&P.set(C,O),O}function y(C){var R=D();return function(){var O=(0,d.default)(C),N;if(R){var A=(0,d.default)(this).constructor;N=r(O,arguments,A)}else N=O.apply(this,arguments);return(0,c.default)(this,N)}}function D(){if(typeof Reflect>"u"||!r||r.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(r(Boolean,[],function(){})),!0}catch{return!1}}var F=function(R,P){var O={t:"b",b:"t",l:"r",r:"l"};return t(_)(R,function(N){return(0,_.replace)(N,new RegExp(P,"gi"),function(A){return O[A]})})},S=function(R,P){return(0,f.default)(R).call(R,function(O,N){return N===P?-O:O})},I=function(C){(0,s.default)(P,C);var R=y(P);function P(O){var N;return(0,i.default)(this,P),N=R.call(this,O),N.align=function(){N.waitSourceElShow().then(function(){var A,z=N.props,k=z.align,M=z.builtinPlacements,T=z.target,B=z.onAfterAdjustDirection,L=z.useCssTransform,K=N.el.current,X=T();if(!(!K||!X)){var ee=_.CommonUtils.getPlacementFromAlign(k,M),q=(0,g.alignElement)(K,X,(0,_.assign)({},k,{useCssTransform:L}));if(!((A=k.overflow)===null||A===void 0)&&A.alwaysByViewport){var G=K.getBoundingClientRect(),W=!1;(G.bottom>window.innerHeight||G.top<0)&&(q.points=F(q.points,"[tb]"),q.offset=S(q.offset,1),q.targetOffset=S(q.targetOffset,1),W=!0),(G.right>window.innerWidth||G.left<0)&&(q.points=F(q.points,"[lr]"),q.offset=S(q.offset,0),q.targetOffset=S(q.targetOffset,0),W=!0),W&&(0,g.alignElement)(K,X,(0,_.assign)({},q,{useCssTransform:L}))}var V=_.CommonUtils.getPlacementFromAlign(q,M);V!==ee&&B&&B(V,{points:q.points,offset:q.offset,targetOffset:q.targetOffset,overflow:k.overflow})}})},N.waitSourceElShow=function(){var A=N.el.current;return new v.default(function(z){var k=function M(){var T=A&&(A.clientWidth>0||A.clientHeight>0);T?z(!0):requestAnimationFrame(M)};k()})},N.el=h.createRef(),N}return(0,l.default)(P,[{key:"componentDidMount",value:function(){this.align()}},{key:"render",value:function(){return h.cloneElement(h.Children.only(this.props.children),{ref:this.el})}}]),P}(h.Component);return um.default=I,um}var tX;function Qht(){if(tX)return cm;tX=1;var e=Ur,t=yc,r=Zr,n=Qr,a=Ce;Object.defineProperty(cm,"__esModule",{value:!0}),cm.default=void 0;var o=a(Kf),i=a(Sp),l=a(Dd),s=a(Id),c=a(Gg),d=a(Xg),f=a(Zg),v=a(Zi),h=a(rR),g=S(m),_=qht,w=Ght(),b=$a(),y=tR(),D=a(Zht());function F(P){if(typeof r!="function")return null;var O=new r,N=new r;return(F=function(z){return z?N:O})(P)}function S(P,O){if(!O&&P&&P.__esModule)return P;if(P===null||e(P)!="object"&&typeof P!="function")return{default:P};var N=F(O);if(N&&N.has(P))return N.get(P);var A={__proto__:null},z=Object.defineProperty&&n;for(var k in P)if(k!=="default"&&Object.prototype.hasOwnProperty.call(P,k)){var M=z?n(P,k):null;M&&(M.get||M.set)?Object.defineProperty(A,k,M):A[k]=P[k]}return A.default=P,N&&N.set(P,A),A}function I(P){var O=C();return function(){var A=(0,f.default)(P),z;if(O){var k=(0,f.default)(this).constructor;z=t(A,arguments,k)}else z=A.apply(this,arguments);return(0,d.default)(this,z)}}function C(){if(typeof Reflect>"u"||!t||t.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(t(Boolean,[],function(){})),!0}catch{return!1}}var R=function(P){(0,c.default)(N,P);var O=I(N);function N(A){var z;return(0,l.default)(this,N),z=O.call(this,A),z.getTarget=function(){return z.props.getRootDomNode()},z.align=function(){z.alignCount+=1;var k=z.alignCount;o.default.resolve().then(function(){k===z.alignCount&&z.alignRef.current&&z.alignRef.current.align()})},z.getMiscStyle=function(){var k={position:"absolute"},M=z.props,T=M.stretch,B=M.targetWidth,L=M.targetHeight;return T&&((0,i.default)(T).call(T,"height")&&L?k.height=L:(0,i.default)(T).call(T,"minHeight")&&L&&(k.minHeight=L),(0,i.default)(T).call(T,"width")&&B?k.width=B:(0,i.default)(T).call(T,"minWidth")&&B&&(k.minWidth=B)),k},z.alignRef=g.createRef(),z.alignCount=0,z}return(0,s.default)(N,[{key:"render",value:function(){var z=this,k=this.props,M=k.className,T=k.style,B=k.align,L=k.builtinPlacements,K=k.visible,X=k.prefixCls,ee=k.transitionName,q=k.transitionTime,G=k.children,W=k.autoDestroy,V=W===void 0?!0:W,Y=k.zIndex,Z=k.onMouseEnter,te=k.onMouseLeave,J=k.onShow,ae=k.onHide,re=k.onAfterShow,ie=k.onAfterHide,ve=k.onAfterAdjustDirection,oe=k.useCssTransform,fe=this.context.getPrefixCls("popup"),ge=(0,v.default)(fe,M,X,"".concat(X,"-content")),le=g.Children.only(G);return g.createElement(h.default,{onResize:function(){z.alignRef.current&&z.alignRef.current.align()}},g.createElement(D.default,{target:this.getTarget,key:"popup",align:B,builtinPlacements:L,onAfterAdjustDirection:ve,useCssTransform:oe,ref:this.alignRef},g.createElement("div",{className:ge,onMouseEnter:Z,onMouseLeave:te,style:(0,b.assign)(this.getMiscStyle(),{zIndex:Y},T),onClick:function(De){return De.stopPropagation()}},g.createElement(_.CSSTransition,{classNames:ee,timeout:q,appear:!0,enter:!0,exit:!0,in:K,unmountOnExit:V,onEnter:J,onExit:ae,onEntered:re,onExited:ie},le))))}}]),N}(g.Component);return R.contextType=y.ConfigProviderContext,cm.default=(0,w.withClickOutside)(R),cm}var dm={},rX;function Jht(){if(rX)return dm;rX=1;var e=Ur,t=Zr,r=Qr;Object.defineProperty(dm,"__esModule",{value:!0}),dm.default=void 0;var n=i(m),a=$a();function o(s){if(typeof t!="function")return null;var c=new t,d=new t;return(o=function(v){return v?d:c})(s)}function i(s,c){if(!c&&s&&s.__esModule)return s;if(s===null||e(s)!="object"&&typeof s!="function")return{default:s};var d=o(c);if(d&&d.has(s))return d.get(s);var f={__proto__:null},v=Object.defineProperty&&r;for(var h in s)if(h!=="default"&&Object.prototype.hasOwnProperty.call(s,h)){var g=v?r(s,h):null;g&&(g.get||g.set)?Object.defineProperty(f,h,g):f[h]=s[h]}return f.default=s,d&&d.set(s,f),f}var l=n.forwardRef(function(s,c){var d=s.children,f=s.getTriggerDOMNode,v=(0,a.supportRef)(d),h=n.useCallback(function(_){(0,a.fillRef)(c,f?f(_):_)},[f]),g=(0,a.useComposeRef)(h,d.ref);return v?n.cloneElement(d,{ref:g}):d});return dm.default=l,dm}var nX;function egt(){if(nX)return im;nX=1;var e=Ur,t=yc,r=Zr,n=Qr,a=Ce;Object.defineProperty(im,"__esModule",{value:!0}),im.default=void 0;var o=a(yt),i=a(Dw),l=a(Dd),s=a(Id),c=a(jht),d=a(Gg),f=a(Xg),v=a(Zg),h=a(Zi),g=a(rR),_=R(m),w=Kr,b=eR(),y=$a(),D=tR(),F=a(Kht()),S=a(Qht()),I=a(Jht());function C(A){if(typeof r!="function")return null;var z=new r,k=new r;return(C=function(T){return T?k:z})(A)}function R(A,z){if(!z&&A&&A.__esModule)return A;if(A===null||e(A)!="object"&&typeof A!="function")return{default:A};var k=C(z);if(k&&k.has(A))return k.get(A);var M={__proto__:null},T=Object.defineProperty&&n;for(var B in A)if(B!=="default"&&Object.prototype.hasOwnProperty.call(A,B)){var L=T?n(A,B):null;L&&(L.get||L.set)?Object.defineProperty(M,B,L):M[B]=A[B]}return M.default=A,k&&k.set(A,M),M}function P(A){var z=O();return function(){var M=(0,v.default)(A),T;if(z){var B=(0,v.default)(this).constructor;T=t(M,arguments,B)}else T=M.apply(this,arguments);return(0,f.default)(this,T)}}function O(){if(typeof Reflect>"u"||!t||t.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(t(Boolean,[],function(){})),!0}catch{return!1}}var N=function(A){(0,d.default)(k,A);var z=P(k);function k(M){var T;return(0,l.default)(this,k),T=z.call(this,M),T.setTargetRef=function(B){y.DomUtils.isDomElement(B)&&T.targetEle!==B&&(T.targetEle=B)},T.handleAfterAdjustDirection=function(B,L){T.setState({placement:B,prevAlign:L})},T.getRootDomNode=function(){try{var B=(0,w.findDOMNode)(T.el.current);if(B)return B}catch{}try{return(0,w.findDOMNode)((0,c.default)(T))}catch{}},T.getPopupEdgeStyle=function(){var B=T.props.popupEdge;if(!(!(0,y.isNumber)(B)||B<=0)){var L={top:["paddingTop"],"top-left":["paddingTop","paddingRight"],"top-right":["paddingTop","paddingLeft"],right:["paddingRight"],"right-top":["paddingRight","paddingBottom"],"right-bottom":["paddingRight","paddingTop"],left:["paddingLeft"],"left-top":["paddingLeft","paddingBottom"],"left-bottom":["paddingLeft","paddingTop"],bottom:["paddingBottom"],"bottom-left":["paddingBottom","paddingRight"],"bottom-right":["paddingBottom","paddingLeft"]},K=T.state.placement,X=L[K];if(X){var ee={};return(0,y.forEach)(X,function(q){ee[q]=B}),ee}}},T.align=function(){y.DomUtils.isDomElement(T.targetEle)&&!y.DomUtils.isVisible(T.targetEle)||T.alignRef.current&&T.alignRef.current.align()},T.handleAfterHide=function(){T.setState({forceKeepDom:!1,prevAlign:void 0,placement:T.defaultPlacement},function(){var B=T.props.onAfterPopupHide;B&&B()})},T.getComponent=function(B){var L=T.props,K=L.prefixCls,X=L.popup,ee=L.popupAlign,q=L.builtinPlacements,G=L.transitionTime,W=L.stretch,V=L.autoDestroy,Y=L.onPopupShow,Z=L.onPopupHide,te=L.disabled,J=L.useCssTransform,ae=L.overlayClassName,re=L.overlayStyle,ie=L.zIndex,ve=T.state,oe=ve.prevAlign,fe=ve.placement,ge=ve.targetWidth,le=ve.targetHeight,_e=T.context.getPrefixCls("popup"),De=(0,y.get)(T.props,"popupVisible",T.state.popupVisible),Oe={};te||(T.isMouseEnterToShow()&&(Oe.onMouseEnter=T.onPopupMouseEnter),T.isMouseLeaveToHide()&&(Oe.onMouseLeave=T.onPopupMouseLeave));var Be=X;(0,y.isFunction)(X)&&(Be=X()),Be=_.Children.only(Be);var Pe="placement-".concat(fe),Ge=(0,y.isNil)(oe)?ee:oe;return _.createElement(S.default,(0,o.default)({ref:T.alignRef,style:(0,y.assign)(T.getPopupEdgeStyle(),re),className:(0,h.default)(ae,Pe,(0,i.default)({},"".concat(_e,"-hidden"),!B)),zIndex:ie,prefixCls:K,visible:De,align:Ge,autoDestroy:V,builtinPlacements:q,stretch:W,targetWidth:ge,targetHeight:le,transitionName:y.CommonUtils.getPlacementTransitionName(K,fe),transitionTime:G},Oe,{getRootDomNode:T.getRootDomNode,onClickOutside:T.handleClickOutside,onAfterHide:T.handleAfterHide,onAfterShow:T.props.onAfterPopupShow,onShow:Y,onHide:Z,onAfterAdjustDirection:T.handleAfterAdjustDirection,useCssTransform:J}),Be)},T.getContainer=function(){var B=T.props.getPopupContainer;return B&&function(){return B(T.getRootDomNode())}},T.handleClickOutside=function(B){var L=T.props,K=L.autoClose,X=L.shouldTriggerEvent,ee=X===void 0?function(){return!1}:X,q=T.context.getPrefixCls("popup"),G=K;if(T.isClickToHide()){var W=T.getRootDomNode();W&&W.contains(B.target)&&!ee(B.target)&&(G=!1);var V=y.DomUtils.closest(B.target,".".concat(q));V&&(V.contains(W)||(G=!1))}G&&T.setPopupVisible(!1,!0)},T.hasPopupVisibleProp=function(){return"popupVisible"in T.props},T.onChildEventHandler=function(B,L){var K=_.Children.only(T.props.children);if(_.isValidElement(K)){var X=(0,y.get)(K.props,B);(0,y.isFunction)(X)&&X(L)}},T.onPropsEventHandler=function(B,L){var K=(0,y.get)(T.props,B);(0,y.isFunction)(K)&&K(L)},T.onTargetResize=function(B){T.props.stretch&&T.setState({targetWidth:B.width,targetHeight:B.height}),T.align()},T.onMouseEnter=function(B){T.isMouseEnterToShow()&&T.delaySetPopupVisible(!0,T.props.mouseEnterDelay),T.onChildEventHandler("onMouseEnter",B),T.onPropsEventHandler("onMouseEnter",B)},T.onMouseLeave=function(B){T.isMouseLeaveToHide()&&T.delaySetPopupVisible(!1,T.props.mouseLeaveDelay),T.onChildEventHandler("onMouseLeave",B),T.onPropsEventHandler("onMouseLeave",B)},T.onFocus=function(B){T.isFocusToShow()&&T.delaySetPopupVisible(!0,T.props.focusDelay),T.onChildEventHandler("onFocus",B),T.onPropsEventHandler("onFocus",B)},T.onBlur=function(B){T.isBlurToHide()&&T.delaySetPopupVisible(!1,T.props.blurDelay),T.onChildEventHandler("onBlur",B),T.onPropsEventHandler("onBlur",B)},T.onPopupMouseEnter=function(){T.clearDelayTimer()},T.onPopupMouseLeave=function(){T.delaySetPopupVisible(!1,T.props.mouseLeaveDelay)},T.onClick=function(B){if(T.isClickToHide()||T.isClickToShow()){B&&B.preventDefault&&B.preventDefault();var L=T.hasPopupVisibleProp()?!T.props.popupVisible:!T.state.popupVisible;(T.isClickToHide()&&!L||L&&T.isClickToShow())&&T.setPopupVisible(L)}T.onChildEventHandler("onClick",B),T.onPropsEventHandler("onClick",B)},T.el=_.createRef(),T.alignRef=_.createRef(),T.targetEle=null,T.defaultPlacement=y.CommonUtils.getPlacementFromAlign(M.popupAlign,M.builtinPlacements),T.state={targetWidth:0,targetHeight:0,placement:T.defaultPlacement,popupVisible:!1,forceKeepDom:!1},T}return(0,s.default)(k,[{key:"close",value:function(){this.setPopupVisible(!1)}},{key:"delaySetPopupVisible",value:function(T){var B=this,L=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,K=L*1e3;this.clearDelayTimer(),K?this.delayTimer=window.setTimeout(function(){B.setPopupVisible(T),B.clearDelayTimer()},K):this.setPopupVisible(T)}},{key:"clearDelayTimer",value:function(){this.delayTimer&&(clearTimeout(this.delayTimer),this.delayTimer=0)}},{key:"setPopupVisible",value:function(T,B){this.clearDelayTimer();var L=this.props.onPopupVisibleChange,K=L===void 0?b.EMPTY_FN:L;this.hasPopupVisibleProp()?T!==this.props.popupVisible&&K(T,B):this.setState({popupVisible:T},function(){K(T,B)})}},{key:"isClickToShow",value:function(){var T=this.props,B=T.action,L=T.showAction;return B.indexOf("click")!==-1||L&&L.indexOf("click")!==-1}},{key:"isClickToHide",value:function(){var T=this.props,B=T.action,L=T.hideAction;return B.indexOf("click")!==-1||L&&L.indexOf("click")!==-1}},{key:"isFocusToShow",value:function(){var T=this.props,B=T.action,L=T.showAction;return B.indexOf("focus")!==-1||L&&L.indexOf("focus")!==-1}},{key:"isBlurToHide",value:function(){var T=this.props,B=T.action,L=T.hideAction;return B.indexOf("focus")!==-1||L&&L.indexOf("focus")!==-1}},{key:"isMouseEnterToShow",value:function(){var T=this.props,B=T.action,L=T.showAction;return B.indexOf("hover")!==-1||L&&L.indexOf("mouseEnter")!==-1}},{key:"isMouseLeaveToHide",value:function(){var T=this.props,B=T.action,L=T.hideAction;return B.indexOf("hover")!==-1||L&&L.indexOf("mouseLeave")!==-1}},{key:"needMountPopup",value:function(){var T=this.state.popupVisible;return"popupVisible"in this.props&&(T=this.props.popupVisible),T||this.state.forceKeepDom}},{key:"render",value:function(){var T=this.props,B=T.children,L=T.disabled,K=T.autoDestroy,X=T.getTriggerDOMNode,ee=_.Children.only(B),q={key:"trigger"};(0,y.supportRef)(ee)&&(q.ref=(0,y.composeRef)(this.el,ee.ref)),L||(q.onClick=this.onClick,q.onMouseEnter=this.onMouseEnter,q.onMouseLeave=this.onMouseLeave,q.onFocus=this.onFocus,q.onBlur=this.onBlur);var G=this.needMountPopup(),W=_.cloneElement(ee,q);return _.createElement(_.Fragment,null,_.createElement(g.default,{disabled:!G,onResize:this.onTargetResize,ref:this.setTargetRef},_.createElement(I.default,{getTriggerDOMNode:X},W)),_.createElement(F.default,{open:G,getContainer:this.getContainer(),autoDestroy:K},this.getComponent(G)))}}],[{key:"getDerivedStateFromProps",value:function(T,B){return T.popupVisible||B.popupVisible?{forceKeepDom:!0}:null}}]),k}(_.Component);return N.defaultProps={popupAlign:{},popupEdge:0,showAction:[],hideAction:[],mouseEnterDelay:.1,mouseLeaveDelay:.1,autoClose:!0,disabled:!1,autoDestroy:!0,transitionTime:{enter:b.ANIMATION_DURATION.NORMAL,exit:b.ANIMATION_DURATION.FAST},useCssTransform:!1,shouldTriggerEvent:function(){return!1}},N.contextType=D.ConfigProviderContext,im.default=N,im}var aX;function tgt(){return aX||(aX=1,function(e){var t=Ur,r=Zr,n=Qr,a=Oo;Object.defineProperty(e,"__esModule",{value:!0});var o={};e.default=void 0;var i=s(egt());a(i).forEach(function(c){c==="default"||c==="__esModule"||Object.prototype.hasOwnProperty.call(o,c)||c in e&&e[c]===i[c]||Object.defineProperty(e,c,{enumerable:!0,get:function(){return i[c]}})});function l(c){if(typeof r!="function")return null;var d=new r,f=new r;return(l=function(h){return h?f:d})(c)}function s(c,d){if(!d&&c&&c.__esModule)return c;if(c===null||t(c)!="object"&&typeof c!="function")return{default:c};var f=l(d);if(f&&f.has(c))return f.get(c);var v={__proto__:null},h=Object.defineProperty&&n;for(var g in c)if(g!=="default"&&Object.prototype.hasOwnProperty.call(c,g)){var _=h?n(c,g):null;_&&(_.get||_.set)?Object.defineProperty(v,g,_):v[g]=c[g]}return v.default=c,f&&f.set(c,v),v}e.default=i.default}(iR)),iR}var oX;function rgt(){if(oX)return om;oX=1;var e=Ur,t=Zr,r=Qr,n=Ce;Object.defineProperty(om,"__esModule",{value:!0}),om.default=void 0;var a=n(yt),o=n(Ur),i=n(Al),l=n(Zi),s=g(m),c=Up(),d=$a(),f=n(tgt()),v=DY();function h(b){if(typeof t!="function")return null;var y=new t,D=new t;return(h=function(S){return S?D:y})(b)}function g(b,y){if(!y&&b&&b.__esModule)return b;if(b===null||e(b)!="object"&&typeof b!="function")return{default:b};var D=h(y);if(D&&D.has(b))return D.get(b);var F={__proto__:null},S=Object.defineProperty&&r;for(var I in b)if(I!=="default"&&Object.prototype.hasOwnProperty.call(b,I)){var C=S?r(b,I):null;C&&(C.get||C.set)?Object.defineProperty(F,I,C):F[I]=b[I]}return F.default=b,D&&D.set(b,F),F}var _=function(b,y){var D={};for(var F in b)Object.prototype.hasOwnProperty.call(b,F)&&y.indexOf(F)<0&&(D[F]=b[F]);if(b!=null&&typeof i.default=="function")for(var S=0,F=(0,i.default)(b);Ste?(Y=W,X.current="x"):(Y=V,X.current="y"),_(-Y,-Y)&&G.preventDefault()}var q=(0,o.useRef)({onTouchStart:B,onTouchMove:L,onTouchEnd:K,onWheel:ee});i.useEffect(function(){var G,W;function V(J){var ae;(ae=q.current)===null||ae===void 0||ae.onTouchStart(J)}function Y(J){var ae;(ae=q.current)===null||ae===void 0||ae.onTouchMove(J)}function Z(J){var ae;(ae=q.current)===null||ae===void 0||ae.onTouchEnd(J)}function te(J){var ae;(ae=q.current)===null||ae===void 0||ae.onWheel(J)}return document.addEventListener("touchmove",Y,{passive:!1}),document.addEventListener("touchend",Z,{passive:!0}),(G=g.current)===null||G===void 0||G.addEventListener("touchstart",V,{passive:!0}),(W=g.current)===null||W===void 0||W.addEventListener("wheel",te,{passive:!1}),function(){document.removeEventListener("touchmove",Y),document.removeEventListener("touchend",Z)}},[])}return Tw}var hm={},vX;function ogt(){if(vX)return hm;vX=1;var e=Ur,t=Zr,r=Qr,n=Ce;Object.defineProperty(hm,"__esModule",{value:!0}),hm.default=void 0;var a=n(Mo),o=s(m),i=$a();function l(d){if(typeof t!="function")return null;var f=new t,v=new t;return(l=function(g){return g?v:f})(d)}function s(d,f){if(!f&&d&&d.__esModule)return d;if(d===null||e(d)!="object"&&typeof d!="function")return{default:d};var v=l(f);if(v&&v.has(d))return v.get(d);var h={__proto__:null},g=Object.defineProperty&&r;for(var _ in d)if(_!=="default"&&Object.prototype.hasOwnProperty.call(d,_)){var w=g?r(d,_):null;w&&(w.get||w.set)?Object.defineProperty(h,_,w):h[_]=d[_]}return h.default=d,v&&v.set(d,h),h}var c=function(f){var v=f.enable,h=f.headerRef,g=f.activeKey,_=f.theme,w=(0,o.useState)({}),b=(0,a.default)(w,2),y=b[0],D=b[1],F=function(){if(!h.current)return{};var R=h.current.querySelector(".tab-header-active"),P=h.current.querySelector(".tab-header-item")||{},O=i.DomUtils.getDomOffset(R,P)||{left:0},N=O.left,A=(0,i.get)(R,"offsetWidth",0);D({width:A,left:"".concat(N,"px")})};(0,o.useEffect)(function(){v&&setTimeout(function(){F()})},[g,_]);var S=function(){return v?o.default.createElement("div",{className:"segment-animate-dot",style:y}):null},I=(0,i.debounce)(function(){v&&F()},200);return[S(),I]};return hm.default=c,hm}var gm={},hX;function gX(){if(hX)return gm;hX=1;var e=Ur,t=Zr,r=Qr,n=Ce;Object.defineProperty(gm,"__esModule",{value:!0}),gm.default=void 0;var a=n(Mo),o=s(m),i=$a();function l(f){if(typeof t!="function")return null;var v=new t,h=new t;return(l=function(_){return _?h:v})(f)}function s(f,v){if(!v&&f&&f.__esModule)return f;if(f===null||e(f)!="object"&&typeof f!="function")return{default:f};var h=l(v);if(h&&h.has(f))return h.get(f);var g={__proto__:null},_=Object.defineProperty&&r;for(var w in f)if(w!=="default"&&Object.prototype.hasOwnProperty.call(f,w)){var b=_?r(f,w):null;b&&(b.get||b.set)?Object.defineProperty(g,w,b):g[w]=f[w]}return g.default=f,h&&h.set(f,g),g}var c=function(v,h){var g="";return o.default.Children.forEach(v,function(_){(0,i.get)(_,"props.disable")||(0,i.isNil)(_?.key)||(_?.key===h?g=h:!g&&_?.key&&(g=_.key))}),g},d=function(v){var h=v.defaultActiveKey,g=v.activeKey,_=v.onTabClick,w=v.onTabActive,b=v.children,y=(0,o.useState)(function(){return c(b,h)}),D=(0,a.default)(y,2),F=D[0],S=D[1];(0,o.useEffect)(function(){S(g||c(b,F))},[g,b]);var I=function(R,P){var O=P.props.disable;if(!O){var N=P.key,A=!1;if(_){var z=_(N,R);z!==!1&&(A=!0)}else A=!0;N!==F&&A&&(S(N),w&&w(N,R))}};return[F,I]};return gm.default=d,gm}var _X;function igt(){if(_X)return i_;_X=1;var e=Ur,t=Xi,r=Zr,n=Qr,a=Ce;Object.defineProperty(i_,"__esModule",{value:!0}),i_.default=void 0;var o=a(Dw),i=a(yt),l=a(Mo),s=a(Al),c=a($l),d=a(Xi),f=a(Zi),v=a(rR),h=O(m),g=Bht(),_=$a(),w=a(Fw()),b=a(QT()),y=a(ngt()),D=a(sX()),F=a(fX()),S=a(uX()),I=a(agt()),C=a(ogt()),R=a(gX());function P(k){if(typeof r!="function")return null;var M=new r,T=new r;return(P=function(L){return L?T:M})(k)}function O(k,M){if(!M&&k&&k.__esModule)return k;if(k===null||e(k)!="object"&&typeof k!="function")return{default:k};var T=P(M);if(T&&T.has(k))return T.get(k);var B={__proto__:null},L=Object.defineProperty&&n;for(var K in k)if(K!=="default"&&Object.prototype.hasOwnProperty.call(k,K)){var X=L?n(k,K):null;X&&(X.get||X.set)?Object.defineProperty(B,K,X):B[K]=k[K]}return B.default=k,T&&T.set(k,B),B}var N=function(k,M){var T={};for(var B in k)Object.prototype.hasOwnProperty.call(k,B)&&M.indexOf(B)<0&&(T[B]=k[B]);if(k!=null&&typeof s.default=="function")for(var L=0,B=(0,s.default)(k);L=Zt)return!1;var Hr=Kt-Zt;return ot(function(In){var mr=In+Et;return Math.min(Math.max(mr,Hr),0)}),!0});var Ve=function(){return(0,_.isNil)(Oe.current)?0:Oe.current.scrollWidth},Ae=function(){return(0,_.isNil)(Oe.current)?0:Oe.current.clientWidth},Fe=function(){if(De.current){var Kt=De.current.querySelector(".next"),Zt=(0,_.last)(De.current.querySelectorAll(".tab-header-item"));if(!(!Kt||!Zt)){var Hr=Zt.offsetWidth,In=_.DomUtils.getDomOffset(Zt,Kt);if(-In.left>Hr){var mr=Ae(),Mr=Ve();ot(mr-Mr)}}}},st=function(){return G&&!q&&!ke},$t=function(){return Xe<0},Je=function(){if(Xe===0)return!0;var Kt=Ae()-Ve();return Xe>Kt},ht=function(){if(!q){var Kt=De.current?De.current.offsetWidth:0,Zt=Ve()>Kt;if(Ze(Zt),Zt){sn(),Fe();return}ot(0)}},Vt=(0,_.debounce)(function(){ht()},200),Mt=function(Kt,Zt){if((0,_.isNil)(Kt)||!De.current)return null;var Hr=De.current.querySelector(".prev"),In=De.current.querySelector(".next");if(!(!Hr||!In)){var mr=_.DomUtils.getDomOffset(Kt,Hr),Mr=_.DomUtils.getDomOffset(Kt,In);if(!mr||!Mr)return null;var Ja=K!=="default"?4:0,eo=Kt.offsetWidth+Ja*2,dl=Hr.offsetWidth;mr.left=Math.round(mr.left-Ja)-dl,Mr.left=Math.round(Mr.left-Ja);var es={prevOffset:mr,nextOffset:Mr,elWidth:eo};return Mr.left<0&&Mr.left+eo>0||Mr.left>=0&&Zt===A.RIGHT||Mr.left>0&&(0,_.isNil)(Zt)?(0,c.default)((0,c.default)({},es),{offset:A.RIGHT}):mr.left<0&&mr.left+eo>0||mr.left<0&&Zt===A.LEFT||mr.left+eo<0&&(0,_.isNil)(Zt)?(0,c.default)((0,c.default)({},es),{offset:A.LEFT}):null}},_r=function(Kt,Zt){if(!ke||!De.current)return!1;var Hr=Mt(Kt,Zt);if(!(0,_.isNil)(Hr)){var In=Hr.prevOffset,mr=Hr.nextOffset,Mr=Hr.offset,Ja=Hr.elWidth;Mr===A.RIGHT&&ot(function(eo){return eo-(Ja+mr.left)}),Mr===A.LEFT&&ot(function(eo){return eo-In.left})}},Ca=function(Kt){var Zt=Math.min(Xe+Ae(),0);ot(Zt),ie&&ie(Kt),xt()},Zn=function(Kt){var Zt=Ae(),Hr=Ve(),In=Xe-Zt,mr=Zt-Hr;In=Math.max(In,mr),ot(In),ve&&ve(Kt),xt()},sn=function(){gt(!$t()),ft(!Je())},It=function(Kt){var Zt;if(De.current){var Hr=De.current.querySelectorAll(".tab-header-item")||[],In={};return(0,d.default)(Zt=h.default.Children).call(Zt,W,function(mr,Mr){if(mr){var Ja=mr.key||Mr;In[Ja]=mr}}),(0,_.compact)(t(_)(Hr,function(mr,Mr){var Ja=Mt(mr,Kt),eo=mr.getAttribute("data-tab-id")||Mr,dl=In[eo];if(Ja&&Ja.offset===Kt&&dl){var es=dl.props,Bd=es.disable,Hs=es.tab;if((0,_.isEmpty)(Hs))return;var nv=(0,_.isReactNode)(Hs)?Hs:h.default.createElement(S.default,Hs);return h.default.createElement("span",{onClick:function(eu){xt(),_e(eu,dl),_r(mr||eu.currentTarget,Kt)},key:dl.key,className:(0,f.default)("tab-hide-popover-item",{disabled:Bd})},nv)}}))}},xt=function(){Ie(!1),Rt(!1)},Me=function(Kt,Zt,Hr,In){var mr=It(Zt),Mr=Hr;return(0,_.isEmpty)(mr)&&(Mr=!1),h.default.createElement(y.default,{visible:Mr,arrow:!1,onVisibleChange:In,content:h.default.createElement("div",{className:"tab-hide-popover-list"},mr),placement:"bottom",className:(0,f.default)("tab-hide-popover-wrapper",re)},Kt)},Le=function(){return h.default.createElement(v.default,{onResize:function(Zt){(Zt.offsetWidth!==0||Zt.offsetHeight!==0)&&(Vt(),je())}},h.default.createElement(F.default,(0,i.default)({},M,{tabHeaderClassName:(0,f.default)(J,{"has-arrow":ke}),activeKey:le,onItemClick:_e,headerRef:De,headerListRef:Oe,headerListStyle:{transform:"translate(".concat(Xe,"px, 0)")},prefixEle:ke&&Me(h.default.createElement("div",{className:(0,f.default)("tab-arrow","prev",{disabled:Bt}),onClick:Ca},h.default.createElement(g.LeftOutlined,{className:"arrow-icon"})),A.LEFT,lt,Ie),suffixEle:h.default.createElement(h.default.Fragment,null,ke&&Me(h.default.createElement("div",{className:(0,f.default)("tab-arrow","next",{disabled:er}),onClick:Zn},h.default.createElement(g.RightOutlined,{className:"arrow-icon"})),A.RIGHT,mt,Rt),st()&&h.default.createElement("div",{className:(0,f.default)("tab-extra-content",ae)},G)),lastItemEle:He}),W))};if(!le)return null;var St=ze,fr=(0,f.default)("".concat(Y," horizontal-tab"),V,(T={},(0,o.default)(T,"size-".concat(St),St),(0,o.default)(T,"theme-".concat(K),K),(0,o.default)(T,"is-stretch",q),T));return h.default.createElement("div",(0,i.default)({className:fr,style:te,id:Z},(0,w.default)(oe,{aria:!0,data:!0})),Le(),h.default.createElement(D.default,{destroyInactive:ee,activeKey:le},W))};return i_.default=z,i_}var _m={},mX;function xX(){if(mX)return _m;mX=1;var e=Ur,t=Zr,r=Qr,n=Ce;Object.defineProperty(_m,"__esModule",{value:!0}),_m.default=void 0;var a=n(Mo),o=n(Zi),i=d(m),l=Up(),s=$a();function c(v){if(typeof t!="function")return null;var h=new t,g=new t;return(c=function(w){return w?g:h})(v)}function d(v,h){if(!h&&v&&v.__esModule)return v;if(v===null||e(v)!="object"&&typeof v!="function")return{default:v};var g=c(h);if(g&&g.has(v))return g.get(v);var _={__proto__:null},w=Object.defineProperty&&r;for(var b in v)if(b!=="default"&&Object.prototype.hasOwnProperty.call(v,b)){var y=w?r(v,b):null;y&&(y.get||y.set)?Object.defineProperty(_,b,y):_[b]=v[b]}return _.default=v,g&&g.set(v,_),_}var f=function(h){var g=h.className,_=h.children,w=h.style,b=h.active,y=b===void 0?!1:b,D=h.forceRender,F=D===void 0?!1:D,S=h.destroyInactive,I=S===void 0?!0:S,C=h.prefixCls,R=(0,l.usePrefixCls)("tab",C),P=(0,o.default)("".concat(R,"-content"),g),O=(0,i.useState)(F),N=(0,a.default)(O,2),A=N[0],z=N[1];if((0,i.useEffect)(function(){y?z(!0):I&&z(!1)},[y,I]),I&&!y)return null;var k={};return y||(k.display="none"),i.default.createElement("div",{className:P,style:(0,s.assign)(k,w)},(y||A||F)&&_)};return _m.default=f,_m}var mm={},bX;function lgt(){if(bX)return mm;bX=1;var e=Ce;Object.defineProperty(mm,"__esModule",{value:!0}),mm.default=void 0;var t=e(yt),r=e(Mo),n=e(Al),a=e(Zi),o=e(m),i=e(Fw()),l=e(QT()),s=e(sX()),c=e(fX()),d=e(gX()),f=function(h,g){var _={};for(var w in h)Object.prototype.hasOwnProperty.call(h,w)&&g.indexOf(w)<0&&(_[w]=h[w]);if(h!=null&&typeof n.default=="function")for(var b=0,w=(0,n.default)(h);bde(w1,{theme:"segment",...t,children:e.map(r=>de(Oq.TabItem,{tab:r.tab},r.key))});var IX=(e=>(e.PREVIEW="preview",e.STRUCTURE="structure",e))(IX||{});const vgt=118,hgt={type:1,name:2,transferName:2,label:2,remark:3},ggt={type:80,name:100,transferName:100,label:100,remark:100},_gt=({fields:e,data:t=[],fieldsLabel:r=[],allFields:n,pageInfo:a={limit:L1,pageIndex:1,pageSize:tT,totalRows:0},onLoadData:o,onFieldNameChange:i,onFieldRemarkChange:l,defaultActiveTab:s="structure",direction:c="right",hasSegment:d=!0,editable:f=!0,headerEditable:v=!1,extraContent:h,emptyContent:g,structureColumnKeys:_=["type","transferName","remark"]})=>{const[w,b]=m.useState(s),[y,D]=m.useState(!1),[F,{width:S}]=Lp(),I=m.useRef(!1),C=[];n?.forEach((A,z)=>{e?.some(k=>k.id===A.id)||C.push(z)}),m.useEffect(()=>{n&&e&&C.forEach(A=>{const z=document.querySelector(`.fdi-preview-table-structure tr[data-rowindex="${A}"]`);z&&(z.classList.add("fdi-bg-orange-light-1"),z.classList.add("hover:fdi-bg-orange-light-2"),document.querySelectorAll(`.fdi-preview-table-structure tr[data-rowindex="${A}"] .table-cell`).forEach(M=>{M.classList.add("!fdi-bg-transparent")}))})}),sw(()=>{w==="preview"&&R()}),Vl(()=>{w!=="structure"&&(I.current||R().then(()=>{I.current=!0}))},[w]);const R=A=>o?(D(!0),o?.({limit:a.limit??L1,pageSize:a.pageSize,pageIndex:A??a.pageIndex}).finally(()=>{D(!1)})):Promise.resolve(),P=A=>{switch(A){case"type":return{dataIndex:"type",title:at("FDI_Field_Type"),render:z=>de(yd,{icon:{name:bd(z)},text:at(vq(z))})};case"name":return{dataIndex:"name",title:at("FDI_Field_Name"),render:z=>de(Ng,{text:z})};case"transferName":return{dataIndex:"transferName",title:at("FDI_Field_Transfer_Name"),render:(z,k,M)=>{const T=e?.find(B=>B.id===k.id)??k;return f&&!C.includes(M)?de(BT,{isInput:!0,width:"100%",iconName:"icon-rename",defaultValue:T.transferName,checkError:B=>ow(B,e?.filter(L=>L.id!==k.id).map(L=>L.transferName)??[],Bl.NAME),validateHelp:B=>iw(B,e?.filter(L=>L.id!==k.id).map(L=>L.transferName)??[],Bl.NAME),onBlur:B=>{T.transferName!==B&&i?.({fieldId:k.id,name:B})}}):de(Ng,{text:T.transferName})}};case"label":return{dataIndex:"label",title:at("FDI_Field_Label"),render:(z,k)=>{const M=r.find(T=>T.content.some(B=>B.id===k.id));return de(Ng,{text:M?.value??""})}};case"remark":return{dataIndex:"remark",title:at("FDI_Field_Description"),render:(z,k,M)=>{const T=e?.find(B=>B.id===k.id)??k;return f&&!C.includes(M)?de(BT,{width:"100%",iconName:"icon-rename",defaultValue:T.remark,onBlur:B=>{l?.({fieldId:k.id,remark:B})},checkError:B=>zft(B),validateHelp:B=>Bft(B)}):de(Ng,{text:T.remark})}}}},O=()=>{const A=Aft({width:S,minWidths:ggt,ratios:hgt,keys:_});return _.map(z=>({...P(z),width:A.get(z)}))};return tn("div",{className:"fdi-preview-table fdi-component-flex-col-layout fdi-items-stretch",children:[(()=>{const A=de("div",{className:"fdi-component-flex-w-fill-layout",style:{lineHeight:Tn.token.controlHeight},children:h}),z=d&&de(pgt,{items:[{key:"preview",tab:{icon:de(Fa,{name:"icon-table-preview"})}},{key:"structure",tab:{icon:de(Fa,{name:"icon-table-structure"})}}],activeKey:w,onTabActive:M=>{b(M)}}),k=[];return c==="left"?k.push(z,A):k.push(A,z),de("div",{className:"fdi-flex fdi-mb-md",children:k})})(),de("div",{className:"fdi-component-flex-col-layout fdi-component-flex-h-fill-layout fdi-gap-lg",children:w==="preview"?tn(gl,{children:[tn("div",{className:"fdi-relative fdi-component-flex-h-fill-layout",children:[de(Rq,{className:"fdi-w-full fdi-h-full",tableData:{fields:e??[],data:t},renderColumn:A=>{if(!v)return{};const z=bd(A.type);return{title:tn("div",{className:"fdi-flex fdi-items-center fdi-gap-md",children:[de(Fa,{name:z,size:eT.NORMAL}),de("div",{className:"fdi-component-flex-w-fill-layout",children:de(BT,{isInput:!0,width:"100%",size:"small",iconName:"icon-rename",defaultValue:A.transferName,checkError:k=>ow(k,e?.filter(M=>M.id!==A.id).map(M=>M.transferName)??[],Bl.NAME),validateHelp:k=>iw(k,e?.filter(M=>M.id!==A.id).map(M=>M.transferName)??[],Bl.NAME),onBlur:k=>{A.transferName!==k&&i?.({fieldId:A.id,name:k})}},A.transferName)})]})}}}),Te.isEmpty(t)&&de("div",{className:"fdi-absolute fdi-left-0 fdi-right-0 fdi-top-[34px] fdi-bottom-0",children:g})]}),de(TW,{size:a.pageSize,count:a.totalRows,page:a.pageIndex,onPageChange:A=>{R(A)},showTotal:A=>{const z=A??0;return a.totalRowSize&&a.totalRowSize>z?at("FDI_Show_{R1}_Rows_Total_{R2}",A,a.totalRowSize):at("FDI_Total_Rows",z)}}),de(lw,{loading:y})]}):de("div",{ref:F,className:"fdi-component-flex-h-fill-layout",children:de(Fg,{className:"fdi-preview-table-structure",defaultColumnWidth:vgt,columns:O(),dataSource:n??e??[],noWrap:!0,fixedHeader:!0,hasCellBorder:!1,striped:!1})})})]})},mgt=1e6,xgt=({className:e,value:t,lineHeight:r=20,maxRowNumber:n=2,popoverContent:a})=>{const[o,{height:i}]=Lp(),[l,s]=m.useState(!1);return Vl(()=>{i>r*n&&s(!0)},[i]),tn("div",{className:ar("fdi-w-full",e),children:[de("div",{ref:o,className:ar("fdi-break-all fdi-whitespace-break-spaces",l&&"fdi-line-clamp-2"),style:{WebkitLineClamp:l?n:void 0},children:t}),l&&de(b1,{className:"fdi-break-all fdi-whitespace-break-spaces",placement:"left-top",arrow:!0,trigger:"click",overlayInnerStyle:{width:280,maxHeight:400,overflow:"auto"},content:a||t,zIndex:mgt,children:de(jr,{size:"small",type:"link",className:"fdi-mt-xs",children:at("FDI_View_All")})})]})},bgt=({className:e,value:t,isEllipsis:r,maxRowNumber:n})=>Lft(t)?de("span",{className:"fdi-text-black-3",children:at("FDI_None")}):r?de(xgt,{value:t,maxRowNumber:n}):de("span",{className:ar("fdi-break-all fdi-whitespace-break-spaces",e),children:t}),FX=({showRoot:e=!0,className:t,sourceData:r,searchable:n,isSimpleSearch:a,onSearch:o,fixTreeNodeFunc:i,iconNameGetter:l,toolTipGetter:s,keyword:c,searchInputClassName:d,treeClassName:f,...v})=>{const[h,g]=m.useState(""),[,_]=tpt(()=>{o?.(h)},300,[h]);sw(()=>{_()}),Vl(()=>{g(c??"")},[c]);const w=(b=[])=>b.map(y=>{const{id:D,nodeType:F,name:S,imported:I,disabled:C,children:R=[]}=y,P=at(S);return{key:D,isLeaf:ja(F),disabled:C,disableCheckbox:I,icon:({expanded:O})=>de(Fa,{name:l?l(O,y):mq(O,y),size:eT.NORMAL}),title:de(Xc,{content:s?s(y):P,placement:"bottom-left",children:de(Fq,{highlightClassName:"fdi-component-keyword-highlight",autoEscape:!0,textToHighlight:P,searchWords:[h]})}),children:Te.isEmpty(R)?null:w(R),extraData:y,...i?.(y,h)||{}}});return tn("div",{className:ar("fdi-component-flex-col-layout fdi-gap-md",t),children:[n&&de(Ss,{bordered:!a,className:ar("fdi-w-full",a&&"fdi-component-border-b",d),value:h,prefix:de(Fa,{name:"icon-search"}),placeholder:at("FDI_Search"),onChange:b=>{g(b)},onPressEnter:b=>{const y=b.target.value;g(y)},onBlur:b=>{g(b)}}),de(Hrt,{className:ar("fdi-component-flex-h-fill-layout",f),...v,contentEllipsis:!0,treeData:w(e?r:r[0]?.children)})]})},YKt="",ygt=({className:e,dataSource:t,defaultActiveIndex:r=-1,reverseSelectable:n=!0,onClick:a})=>{const[o,i]=m.useState(r);return de("div",{className:ar("fdi-exhibit-list",e),children:t.map((l,s)=>{const{iconName:c,value:d,iconSize:f,id:v}=l;return de("div",{className:ar("fdi-exhibit-list-item fdi-component-list-item",{selected:o===s}),onClick:()=>{a(d,v),i(n&&o===s?-1:s)},children:c?tn(gl,{children:[de(Fa,{className:"fdi-exhibit-list-item-icon",name:c,size:f}),de("span",{className:"fdi-exhibit-list-item-text",children:d})]}):de("span",{className:"fdi-exhibit-list-item-text",children:d})},s)})})},wgt=({className:e,header:{rowProps:t,columns:r},content:n})=>{const{className:a,...o}=t||{};return tn("div",{className:ar("fdi-col-layout fdi-flex fdi-flex-col fdi-rounded fdi-bg-netr-light-1 fdi-p-xl",e),children:[de(fg,{className:ar("fdi-col-layout-head",a),wrap:!1,...o,children:r.map(i=>{const{colProps:l,name:s,className:c}=i;return de(Hc,{...l,children:de(bgt,{className:c,isEllipsis:!0,value:s})})})}),n]})},$X=({treeData:e,updateTreeData:t,autoExpand:r=!0,autoExpandFolderInit:n=!1,getRootData:a,getChildrenDataById:o,getNavigationDataById:i,getSearchedData:l,selectedKey:s,setSelectedKey:c=()=>{}})=>{const d=m.useRef(e),f=m.useRef([]),[v,h]=m.useState([]),[g,_]=m.useState(!1),[w,b]=m.useState(!1);Vl(()=>{!w&&(f.current=v)},[v]),Vl(()=>{!w&&(d.current=e)},[e]),sw(()=>{y()});const y=()=>{s&&!Pft(s)?i(s).then(O=>{const N=Pg([O],!0);t([O]);const A=rl(s,[O]),z=ja(A.nodeType)?N:[...N,s];h(z),c(s)}).catch(()=>{D()}):D()},D=()=>{a().then(O=>{if(t([O]),n){const N=Pg([O],!0);h(N)}else h([O.id]);c(O.id)})};return{onLoadData:O=>{const{key:N,isLeaf:A}=O,z=rl(O.key,e);return new Promise(k=>{if(A||z.children){k();return}o(N).then(M=>{const T=xq(e,N,M.children||[]);t(T),k()})})},onSearch:O=>{O?(b(!0),l?.(O).then(N=>{_(!0),t([N]),h(O?Pg([N],!0):[N.id]),c(N.id)})):(b(!1),_(!1),t(d.current),h(f.current))},handleSelect:(O,N)=>{const A=rl(O,N?.newTreeData??e);if(g||!A){b(!1),i(O,N).then(z=>{const M=rl(O,[z])?.nodeType===et.FIELD,T=Pg([z],!0),B=kT(d.current,z);t(B);const L=M?Te.compact([...T,A?.pId]):T,K=Te.uniq([...f.current,...L]);h(K),c(O),_(!1)});return}h(z=>{const k=A.path?.map(T=>T.id),M=ja(A.nodeType)||!r?Te.dropRight(k):k;return Te.union(z,M)}),c(O)},handleJump:(O,N)=>{const A=rl(O,e);if(!A){i(O,N).then(z=>{const M=rl(O,[z])?.nodeType===et.FIELD,T=Pg([z],!0),B=kT(d.current,z);t(B);const L=M?[...T,A.pId]:T,K=Te.uniq([...f.current,...L]);h(K)});return}h(z=>{const k=A.path?.map(T=>T.id),M=ja(A.nodeType)?Te.dropRight(k):k;return Te.union(z,M)})},refreshData:O=>{const N=rl(O,e);if(!N)return;const A=!ja(N.nodeType);if(A&&Te.isNil(N.children))return;const z=A?N.id:N.pId;o(z).then(k=>{const M=kT(d.current,k);t(M)})},refreshTree:()=>{y()},expandedKeys:v,isSearchedTree:g,handleExpand:h}},GKt="";m.forwardRef(({className:e,paginationProps:t={},dataSource:r,...n},a)=>{const[o,i]=m.useState(1),{size:l=20,...s}=t,c=m.useMemo(()=>r.slice((o-1)*l,o*l),[o,r]);return tn("div",{className:ar("fdi-component-flex-col-layout fdi-justify-between fdi-gap-lg",e),children:[de("div",{ref:a,className:"fdi-component-flex-h-fill-layout",children:de(Fg,{className:"fdi-w-full fdi-h-full",dataSource:c,...n})}),de(TW,{controlSize:"small",size:l,count:r.length,page:o,onPageChange:d=>i(d),showTotal:d=>at("FDI_Total_Rows",d),...s})]})});const XKt="",SX=m.forwardRef(({type:e,...t},r)=>{const n=m.useRef(null),a=m.useRef(null);return opt(()=>{a.current?.destroy(),a.current=null}),m.useLayoutEffect(()=>(BI.createWidget({type:e,element:n.current,...t,ref:o=>{r&&(r.current=o),a.current=o}}),()=>{n.current=null}),[]),de("div",{className:"fdi-w-ful fdi-h-full fdi-relative",ref:n})}),ZKt="";var Dgt=function(e){return function(t,r){var n=m.useRef(!1);e(function(){return function(){n.current=!1}},[]),e(function(){if(!n.current)n.current=!0;else return t()},r)}},Rw=function(e){return typeof e=="function"},Igt=!1;const Ow=Igt;function Hp(e){Ow&&(Rw(e)||console.error("useMemoizedFn expected parameter is a function, got ".concat(typeof e)));var t=m.useRef(e);t.current=m.useMemo(function(){return e},[e]);var r=m.useRef();return r.current||(r.current=function(){for(var n=[],a=0;a-1&&(a=setTimeout(function(){Aw.delete(e)},t)),Aw.set(e,al(al({},r),{timer:a}))},Cgt=function(e){return Aw.get(e)},kw=new Map,Tgt=function(e){return kw.get(e)},Rgt=function(e,t){kw.set(e,t),t.then(function(r){return kw.delete(e),r}).catch(function(){kw.delete(e)})},Cd={},Ogt=function(e,t){Cd[e]&&Cd[e].forEach(function(r){return r(t)})},uR=function(e,t){return Cd[e]||(Cd[e]=[]),Cd[e].push(t),function(){var n=Cd[e].indexOf(t);Cd[e].splice(n,1)}},Agt=function(e,t){var r=t.cacheKey,n=t.cacheTime,a=n===void 0?5*60*1e3:n,o=t.staleTime,i=o===void 0?0:o,l=t.setCache,s=t.getCache,c=m.useRef(),d=m.useRef(),f=function(h,g){l?l(g):Egt(h,a,g),Ogt(h,g.data)},v=function(h,g){return g===void 0&&(g=[]),s?s(g):Cgt(h)};return CX(function(){if(r){var h=v(r);h&&Object.hasOwnProperty.call(h,"data")&&(e.state.data=h.data,e.state.params=h.params,(i===-1||new Date().getTime()-h.time<=i)&&(e.state.loading=!1)),c.current=uR(r,function(g){e.setState({data:g})})}},[]),cR(function(){var h;(h=c.current)===null||h===void 0||h.call(c)}),r?{onBefore:function(h){var g=v(r,h);return!g||!Object.hasOwnProperty.call(g,"data")?{}:i===-1||new Date().getTime()-g.time<=i?{loading:!1,data:g?.data,error:void 0,returnNow:!0}:{data:g?.data,error:void 0}},onRequest:function(h,g){var _=Tgt(r);return _&&_!==d.current?{servicePromise:_}:(_=h.apply(void 0,Ha([],Ua(g),!1)),d.current=_,Rgt(r,_),{servicePromise:_})},onSuccess:function(h,g){var _;r&&((_=c.current)===null||_===void 0||_.call(c),f(r,{data:h,params:g,time:new Date().getTime()}),c.current=uR(r,function(w){e.setState({data:w})}))},onMutate:function(h){var g;r&&((g=c.current)===null||g===void 0||g.call(c),f(r,{data:h,params:e.state.params,time:new Date().getTime()}),c.current=uR(r,function(_){e.setState({data:_})}))}}:{}};const kgt=Agt;var Pgt=function(e,t){var r=t.debounceWait,n=t.debounceLeading,a=t.debounceTrailing,o=t.debounceMaxWait,i=m.useRef(),l=m.useMemo(function(){var s={};return n!==void 0&&(s.leading=n),a!==void 0&&(s.trailing=a),o!==void 0&&(s.maxWait=o),s},[n,a,o]);return m.useEffect(function(){if(r){var s=e.runAsync.bind(e);return i.current=fp(function(c){c()},r,l),e.runAsync=function(){for(var c=[],d=0;d-1&&ym.splice(r,1)}}if(Pw){var RX=function(){if(!(!dR()||!Vgt()))for(var e=0;e1?t-1:0),n=1;ne.length)&&(t=e.length);for(var r=0,n=Array(t);r=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Od(){return Od=Object.assign?Object.assign.bind():function(e){for(var t=1;tn&&(n=l.dependenciesState_)}for(r.length=a,e.newObserving_=null,o=t.length;o--;){var s=t[o];s.diffValue_===0&&oZ(s,e),s.diffValue_=0}for(;a--;){var c=r[a];c.diffValue_===1&&(c.diffValue_=0,umt(c,e))}n!==Fr.UP_TO_DATE_&&(e.dependenciesState_=n,e.onBecomeStale_())}function wR(e){var t=e.observing_;e.observing_=[];for(var r=t.length;r--;)oZ(t[r],e);e.dependenciesState_=Fr.NOT_TRACKING_}function rZ(e){var t=Nd();try{return e()}finally{zs(t)}}function Nd(){var e=rt.trackingDerivation;return rt.trackingDerivation=null,e}function zs(e){rt.trackingDerivation=e}function DR(e){var t=rt.allowStateReads;return rt.allowStateReads=e,t}function Sm(e){rt.allowStateReads=e}function nZ(e){if(e.dependenciesState_!==Fr.UP_TO_DATE_){e.dependenciesState_=Fr.UP_TO_DATE_;for(var t=e.observing_,r=t.length;r--;)t[r].lowestObserverState_=Fr.UP_TO_DATE_}}var Qw=function(){this.version=6,this.UNCHANGED={},this.trackingDerivation=null,this.trackingContext=null,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!1,this.allowStateReads=!0,this.enforceActions=!0,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1,this.useProxies=!0,this.verifyProxies=!1,this.safeDescriptors=!0},Jw=!0,aZ=!1,rt=function(){var e=fR();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(Jw=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==new Qw().version&&(Jw=!1),Jw?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new Qw):(setTimeout(function(){aZ||Ir(35)},1),new Qw)}();function cmt(){if((rt.pendingReactions.length||rt.inBatch||rt.isRunningReactions)&&Ir(36),aZ=!0,Jw){var e=fR();--e.__mobxInstanceCount===0&&(e.__mobxGlobals=void 0),rt=new Qw}}function umt(e,t){e.observers_.add(t),e.lowestObserverState_>t.dependenciesState_&&(e.lowestObserverState_=t.dependenciesState_)}function oZ(e,t){e.observers_.delete(t),e.observers_.size===0&&iZ(e)}function iZ(e){e.isPendingUnobservation===!1&&(e.isPendingUnobservation=!0,rt.pendingUnobservations.push(e))}function xi(){rt.inBatch++}function bi(){if(--rt.inBatch===0){cZ();for(var e=rt.pendingUnobservations,t=0;t0&&iZ(e),!1)}function sZ(e){e.lowestObserverState_!==Fr.STALE_&&(e.lowestObserverState_=Fr.STALE_,e.observers_.forEach(function(t){t.dependenciesState_===Fr.UP_TO_DATE_&&t.onBecomeStale_(),t.dependenciesState_=Fr.STALE_}))}function dmt(e){e.lowestObserverState_!==Fr.STALE_&&(e.lowestObserverState_=Fr.STALE_,e.observers_.forEach(function(t){t.dependenciesState_===Fr.POSSIBLY_STALE_?t.dependenciesState_=Fr.STALE_:t.dependenciesState_===Fr.UP_TO_DATE_&&(e.lowestObserverState_=Fr.UP_TO_DATE_)}))}function fmt(e){e.lowestObserverState_===Fr.UP_TO_DATE_&&(e.lowestObserverState_=Fr.POSSIBLY_STALE_,e.observers_.forEach(function(t){t.dependenciesState_===Fr.UP_TO_DATE_&&(t.dependenciesState_=Fr.POSSIBLY_STALE_,t.onBecomeStale_())}))}var eD=function(){function e(r,n,a,o){r===void 0&&(r="Reaction"),this.name_=void 0,this.onInvalidate_=void 0,this.errorHandler_=void 0,this.requiresObservable_=void 0,this.observing_=[],this.newObserving_=[],this.dependenciesState_=Fr.NOT_TRACKING_,this.diffValue_=0,this.runId_=0,this.unboundDepsCount_=0,this.isDisposed_=!1,this.isScheduled_=!1,this.isTrackPending_=!1,this.isRunning_=!1,this.isTracing_=Gw.NONE,this.name_=r,this.onInvalidate_=n,this.errorHandler_=a,this.requiresObservable_=o}var t=e.prototype;return t.onBecomeStale_=function(){this.schedule_()},t.schedule_=function(){this.isScheduled_||(this.isScheduled_=!0,rt.pendingReactions.push(this),cZ())},t.isScheduled=function(){return this.isScheduled_},t.runReaction_=function(){if(!this.isDisposed_){xi(),this.isScheduled_=!1;var n=rt.trackingContext;if(rt.trackingContext=this,yR(this)){this.isTrackPending_=!0;try{this.onInvalidate_()}catch(a){this.reportExceptionInDerivation_(a)}}rt.trackingContext=n,bi()}},t.track=function(n){if(!this.isDisposed_){xi(),this.isRunning_=!0;var a=rt.trackingContext;rt.trackingContext=this;var o=tZ(this,n,void 0);rt.trackingContext=a,this.isRunning_=!1,this.isTrackPending_=!1,this.isDisposed_&&wR(this),Zw(o)&&this.reportExceptionInDerivation_(o.cause),bi()}},t.reportExceptionInDerivation_=function(n){var a=this;if(this.errorHandler_){this.errorHandler_(n,this);return}if(rt.disableErrorBoundaries)throw n;var o="[mobx] uncaught error in '"+this+"'";rt.suppressReactionErrors||console.error(o,n),rt.globalReactionErrorHandlers.forEach(function(i){return i(n,a)})},t.dispose=function(){this.isDisposed_||(this.isDisposed_=!0,this.isRunning_||(xi(),wR(this),bi()))},t.getDisposer_=function(n){var a=this,o=function i(){a.dispose(),n==null||n.removeEventListener==null||n.removeEventListener("abort",i)};return n==null||n.addEventListener==null||n.addEventListener("abort",o),o[Wt]=this,o},t.toString=function(){return"Reaction["+this.name_+"]"},t.trace=function(n){},e}(),pmt=100,IR=function(t){return t()};function cZ(){rt.inBatch>0||rt.isRunningReactions||IR(vmt)}function vmt(){rt.isRunningReactions=!0;for(var e=rt.pendingReactions,t=0;e.length>0;){++t===pmt&&(console.error("[mobx] cycle in reaction: "+e[0]),e.splice(0));for(var r=e.splice(0),n=0,a=r.length;n0&&(t.dependencies=Omt(e.observing_).map(gZ)),t}function Omt(e){return Array.from(new Set(e))}var Amt=0;function _Z(){this.message="FLOW_CANCELLED"}_Z.prototype=Object.create(Error.prototype);var SR=VX("flow"),kmt=VX("flow.bound",{bound:!0}),Xp=Object.assign(function(t,r){if(Im(r))return SR.decorate_20223_(t,r);if(Td(r))return Yp(t,r,SR);var n=t,a=n.name||"",o=function(){var l=this,s=arguments,c=++Amt,d=Gp(a+" - runid: "+c+" - init",n).apply(l,s),f,v=void 0,h=new Promise(function(g,_){var w=0;f=_;function b(F){v=void 0;var S;try{S=Gp(a+" - runid: "+c+" - yield "+w++,d.next).call(d,F)}catch(I){return _(I)}D(S)}function y(F){v=void 0;var S;try{S=Gp(a+" - runid: "+c+" - yield "+w++,d.throw).call(d,F)}catch(I){return _(I)}D(S)}function D(F){if(ol(F?.then)){F.then(D,_);return}return F.done?g(F.value):(v=Promise.resolve(F.value),v.then(b,y))}b(void 0)});return h.cancel=Gp(a+" - runid: "+c+" - cancel",function(){try{v&&mZ(v);var g=d.return(void 0),_=Promise.resolve(g.value);_.then(Wp,Wp),mZ(_),f(new _Z)}catch(w){f(w)}}),h};return o.isMobXFlow=!0,o},SR);Xp.bound=Yl(kmt);function mZ(e){ol(e.cancel)&&e.cancel()}function Tm(e){return e?.isMobXFlow===!0}function Pmt(e,t){return e?t!==void 0?Am(e)?e[Wt].values_.has(t):!1:Am(e)||!!e[Wt]||hR(e)||tD(e)||Yw(e):!1}function xZ(e){return Pmt(e)}function Bs(e,t){t===void 0&&(t=void 0),xi();try{return e.apply(t)}finally{bi()}}function Zp(e){return e[Wt]}var Nmt={has:function(t,r){return Zp(t).has_(r)},get:function(t,r){return Zp(t).get_(r)},set:function(t,r,n){var a;return Td(r)?(a=Zp(t).set_(r,n,!0))!=null?a:!0:!1},deleteProperty:function(t,r){var n;return Td(r)?(n=Zp(t).delete_(r,!0))!=null?n:!0:!1},defineProperty:function(t,r,n){var a;return(a=Zp(t).defineProperty_(r,n))!=null?a:!0},ownKeys:function(t){return Zp(t).ownKeys_()},preventExtensions:function(t){Ir(13)}};function Mmt(e,t){var r,n;return kX(),e=Ld(e,t),(n=(r=e[Wt]).proxy_)!=null?n:r.proxy_=new Proxy(e,Nmt)}function yi(e){return e.interceptors_!==void 0&&e.interceptors_.length>0}function Rm(e,t){var r=e.interceptors_||(e.interceptors_=[]);return r.push(t),PX(function(){var n=r.indexOf(t);n!==-1&&r.splice(n,1)})}function wi(e,t){var r=Nd();try{for(var n=[].concat(e.interceptors_||[]),a=0,o=n.length;a0}function Om(e,t){var r=e.changeListeners_||(e.changeListeners_=[]);return r.push(t),PX(function(){var n=r.indexOf(t);n!==-1&&r.splice(n,1)})}function ll(e,t){var r=Nd(),n=e.changeListeners_;if(n){n=n.slice();for(var a=0,o=n.length;a0?n.map(this.dehancer):n},t.intercept_=function(n){return Rm(this,n)},t.observe_=function(n,a){return a===void 0&&(a=!1),a&&n({observableKind:"array",object:this.proxy_,debugObjectName:this.atom_.name_,type:"splice",index:0,added:this.values_.slice(),addedCount:this.values_.length,removed:[],removedCount:0}),Om(this,n)},t.getArrayLength_=function(){return this.atom_.reportObserved(),this.values_.length},t.setArrayLength_=function(n){(typeof n!="number"||isNaN(n)||n<0)&&Ir("Out of range: "+n);var a=this.values_.length;if(n!==a)if(n>a){for(var o=new Array(n-a),i=0;i0&&OZ(n+a+1)},t.spliceWithArray_=function(n,a,o){var i=this;this.atom_;var l=this.values_.length;if(n===void 0?n=0:n>l?n=l:n<0&&(n=Math.max(0,l+n)),arguments.length===1?a=l-n:a==null?a=0:a=Math.max(0,Math.min(a,l-n)),o===void 0&&(o=pR),yi(this)){var s=wi(this,{object:this.proxy_,type:yZ,index:n,removedCount:a,added:o});if(!s)return pR;a=s.removedCount,o=s.added}if(o=o.length===0?o:o.map(function(f){return i.enhancer_(f,void 0)}),this.legacyMode_){var c=o.length-a;this.updateArrayLength_(l,c)}var d=this.spliceItemsIntoValues_(n,a,o);return(a!==0||o.length!==0)&&this.notifyArraySplice_(n,o,d),this.dehanceValues_(d)},t.spliceItemsIntoValues_=function(n,a,o){if(o.length=this.values_.length){console.warn("[mobx] Out of bounds read: "+n);return}return this.atom_.reportObserved(),this.dehanceValue_(this.values_[n])},t.set_=function(n,a){var o=this.values_;if(this.legacyMode_&&n>o.length&&Ir(17,n,o.length),n2?n-2:0),o=2;o-1?(this.splice(n,1),!0):!1}};Jr("at",jo),Jr("concat",jo),Jr("flat",jo),Jr("includes",jo),Jr("indexOf",jo),Jr("join",jo),Jr("lastIndexOf",jo),Jr("slice",jo),Jr("toString",jo),Jr("toLocaleString",jo),Jr("toSorted",jo),Jr("toSpliced",jo),Jr("with",jo),Jr("every",sl),Jr("filter",sl),Jr("find",sl),Jr("findIndex",sl),Jr("findLast",sl),Jr("findLastIndex",sl),Jr("flatMap",sl),Jr("forEach",sl),Jr("map",sl),Jr("some",sl),Jr("toReversed",sl),Jr("reduce",wZ),Jr("reduceRight",wZ);function Jr(e,t){typeof Array.prototype[e]=="function"&&(aD[e]=t(e))}function jo(e){return function(){var t=this[Wt];t.atom_.reportObserved();var r=t.dehanceValues_(t.values_);return r[e].apply(r,arguments)}}function sl(e){return function(t,r){var n=this,a=this[Wt];a.atom_.reportObserved();var o=a.dehanceValues_(a.values_);return o[e](function(i,l){return t.call(r,i,l,n)})}}function wZ(e){return function(){var t=this,r=this[Wt];r.atom_.reportObserved();var n=r.dehanceValues_(r.values_),a=arguments[0];return arguments[0]=function(o,i,l){return a(o,i,l,t)},n[e].apply(n,arguments)}}var Umt=Rd("ObservableArrayAdministration",CR);function oD(e){return Lw(e)&&Umt(e[Wt])}var Hmt={},Zc="add",iD="delete",DZ=function(){function e(r,n,a){var o=this;n===void 0&&(n=Ad),a===void 0&&(a="ObservableMap"),this.enhancer_=void 0,this.name_=void 0,this[Wt]=Hmt,this.data_=void 0,this.hasMap_=void 0,this.keysAtom_=void 0,this.interceptors_=void 0,this.changeListeners_=void 0,this.dehancer=void 0,this.enhancer_=n,this.name_=a,ol(Map)||Ir(18),Qc(function(){o.keysAtom_=HX("ObservableMap.keys()"),o.data_=new Map,o.hasMap_=new Map,r&&o.merge(r)})}var t=e.prototype;return t.has_=function(n){return this.data_.has(n)},t.has=function(n){var a=this;if(!rt.trackingDerivation)return this.has_(n);var o=this.hasMap_.get(n);if(!o){var i=o=new Pd(this.has_(n),jw,"ObservableMap.key?",!1);this.hasMap_.set(n,i),pZ(i,function(){return a.hasMap_.delete(n)})}return o.get()},t.set=function(n,a){var o=this.has_(n);if(yi(this)){var i=wi(this,{type:o?Xl:Zc,object:this,newValue:a,name:n});if(!i)return this;a=i.newValue}return o?this.updateValue_(n,a):this.addValue_(n,a),this},t.delete=function(n){var a=this;if(this.keysAtom_,yi(this)){var o=wi(this,{type:iD,object:this,name:n});if(!o)return!1}if(this.has_(n)){var i=Em(),l=il(this),s=l||i?{observableKind:"map",debugObjectName:this.name_,type:iD,object:this,oldValue:this.data_.get(n).value_,name:n}:null;return Bs(function(){var c;a.keysAtom_.reportChanged(),(c=a.hasMap_.get(n))==null||c.setNewValue_(!1);var d=a.data_.get(n);d.setNewValue_(void 0),a.data_.delete(n)}),l&&ll(this,s),!0}return!1},t.updateValue_=function(n,a){var o=this.data_.get(n);if(a=o.prepareNewValue_(a),a!==rt.UNCHANGED){var i=Em(),l=il(this),s=l||i?{observableKind:"map",debugObjectName:this.name_,type:Xl,object:this,oldValue:o.value_,name:n,newValue:a}:null;o.setNewValue_(a),l&&ll(this,s)}},t.addValue_=function(n,a){var o=this;this.keysAtom_,Bs(function(){var c,d=new Pd(a,o.enhancer_,"ObservableMap.key",!1);o.data_.set(n,d),a=d.value_,(c=o.hasMap_.get(n))==null||c.setNewValue_(!0),o.keysAtom_.reportChanged()});var i=Em(),l=il(this),s=l||i?{observableKind:"map",debugObjectName:this.name_,type:Zc,object:this,name:n,newValue:a}:null;l&&ll(this,s)},t.get=function(n){return this.has(n)?this.dehanceValue_(this.data_.get(n).get()):this.dehanceValue_(void 0)},t.dehanceValue_=function(n){return this.dehancer!==void 0?this.dehancer(n):n},t.keys=function(){return this.keysAtom_.reportObserved(),this.data_.keys()},t.values=function(){var n=this,a=this.keys();return km({next:function(){var i=a.next(),l=i.done,s=i.value;return{done:l,value:l?void 0:n.get(s)}}})},t.entries=function(){var n=this,a=this.keys();return km({next:function(){var i=a.next(),l=i.done,s=i.value;return{done:l,value:l?void 0:[s,n.get(s)]}}})},t[Symbol.iterator]=function(){return this.entries()},t.forEach=function(n,a){for(var o=qp(this),i;!(i=o()).done;){var l=i.value,s=l[0],c=l[1];n.call(a,c,s,this)}},t.merge=function(n){var a=this;return Md(n)&&(n=new Map(n)),Bs(function(){Ns(n)?u_t(n).forEach(function(o){return a.set(o,n[o])}):Array.isArray(n)?n.forEach(function(o){var i=o[0],l=o[1];return a.set(i,l)}):Vp(n)?(c_t(n)||Ir(19,n),n.forEach(function(o,i){return a.set(i,o)})):n!=null&&Ir(20,n)}),this},t.clear=function(){var n=this;Bs(function(){rZ(function(){for(var a=qp(n.keys()),o;!(o=a()).done;){var i=o.value;n.delete(i)}})})},t.replace=function(n){var a=this;return Bs(function(){for(var o=Wmt(n),i=new Map,l=!1,s=qp(a.data_.keys()),c;!(c=s()).done;){var d=c.value;if(!o.has(d)){var f=a.delete(d);if(f)l=!0;else{var v=a.data_.get(d);i.set(d,v)}}}for(var h=qp(o.entries()),g;!(g=h()).done;){var _=g.value,w=_[0],b=_[1],y=a.data_.has(w);if(a.set(w,b),a.data_.has(w)){var D=a.data_.get(w);i.set(w,D),y||(l=!0)}}if(!l)if(a.data_.size!==i.size)a.keysAtom_.reportChanged();else for(var F=a.data_.keys(),S=i.keys(),I=F.next(),C=S.next();!I.done;){if(I.value!==C.value){a.keysAtom_.reportChanged();break}I=F.next(),C=S.next()}a.data_=i}),this},t.toString=function(){return"[object ObservableMap]"},t.toJSON=function(){return Array.from(this)},t.observe_=function(n,a){return Om(this,n)},t.intercept_=function(n){return Rm(this,n)},zw(e,[{key:"size",get:function(){return this.keysAtom_.reportObserved(),this.data_.size}},{key:Symbol.toStringTag,get:function(){return"Map"}}])}(),Md=Rd("ObservableMap",DZ);function Wmt(e){if(Vp(e)||Md(e))return e;if(Array.isArray(e))return new Map(e);if(Ns(e)){var t=new Map;for(var r in e)t.set(r,e[r]);return t}else return Ir(21,e)}var Vmt={},IZ=function(){function e(r,n,a){var o=this;n===void 0&&(n=Ad),a===void 0&&(a="ObservableSet"),this.name_=void 0,this[Wt]=Vmt,this.data_=new Set,this.atom_=void 0,this.changeListeners_=void 0,this.interceptors_=void 0,this.dehancer=void 0,this.enhancer_=void 0,this.name_=a,ol(Set)||Ir(22),this.enhancer_=function(i,l){return n(i,l,a)},Qc(function(){o.atom_=HX(o.name_),r&&o.replace(r)})}var t=e.prototype;return t.dehanceValue_=function(n){return this.dehancer!==void 0?this.dehancer(n):n},t.clear=function(){var n=this;Bs(function(){rZ(function(){for(var a=qp(n.data_.values()),o;!(o=a()).done;){var i=o.value;n.delete(i)}})})},t.forEach=function(n,a){for(var o=qp(this),i;!(i=o()).done;){var l=i.value;n.call(a,l,l,this)}},t.add=function(n){var a=this;if(this.atom_,yi(this)){var o=wi(this,{type:Zc,object:this,newValue:n});if(!o)return this}if(!this.has(n)){Bs(function(){a.data_.add(a.enhancer_(n,void 0)),a.atom_.reportChanged()});var i=!1,l=il(this),s=l||i?{observableKind:"set",debugObjectName:this.name_,type:Zc,object:this,newValue:n}:null;l&&ll(this,s)}return this},t.delete=function(n){var a=this;if(yi(this)){var o=wi(this,{type:iD,object:this,oldValue:n});if(!o)return!1}if(this.has(n)){var i=!1,l=il(this),s=l||i?{observableKind:"set",debugObjectName:this.name_,type:iD,object:this,oldValue:n}:null;return Bs(function(){a.atom_.reportChanged(),a.data_.delete(n)}),l&&ll(this,s),!0}return!1},t.has=function(n){return this.atom_.reportObserved(),this.data_.has(this.dehanceValue_(n))},t.entries=function(){var n=0,a=Array.from(this.keys()),o=Array.from(this.values());return km({next:function(){var l=n;return n+=1,lTR){for(var t=TR;t=0&&r++;break}e=PZ(e),t=PZ(t);var l=i==="[object Array]";if(!l){if(typeof e!="object"||typeof t!="object")return!1;var s=e.constructor,c=t.constructor;if(s!==c&&!(ol(s)&&s instanceof s&&ol(c)&&c instanceof c)&&"constructor"in e&&"constructor"in t)return!1}if(r===0)return!1;r<0&&(r=-1),n=n||[],a=a||[];for(var d=n.length;d--;)if(n[d]===e)return a[d]===t;if(n.push(e),a.push(t),l){if(d=e.length,d!==t.length)return!1;for(;d--;)if(!kR(e[d],t[d],r-1,n,a))return!1}else{var f=Object.keys(e),v;if(d=f.length,Object.keys(t).length!==d)return!1;for(;d--;)if(v=f[d],!(Ls(t,v)&&kR(e[v],t[v],r-1,n,a)))return!1}return n.pop(),a.pop(),!0}function PZ(e){return oD(e)?e.slice():Vp(e)||Md(e)||Ms(e)||Qp(e)?Array.from(e.entries()):e}function km(e){return e[Symbol.iterator]=Qmt,e}function Qmt(){return this}if(["Symbol","Map","Set"].forEach(function(e){var t=fR();typeof t[e]>"u"&&Ir("MobX requires global '"+e+"' to be available or polyfilled")}),typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__=="object"&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:gmt,extras:{getDebugName:OR},$mobx:Wt}),!m.useState)throw new Error("mobx-react-lite requires React with Hooks support");if(!Lmt)throw new Error("mobx-react-lite@3 requires mobx at least version 6 to be available");function Jmt(e){e()}function ext(e){e||(e=Jmt),Tmt({reactionScheduler:e})}function txt(e){return Rmt(e)}var rxt=1e4,nxt=1e4,axt=function(){function e(t){var r=this;Object.defineProperty(this,"finalize",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"registrations",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),Object.defineProperty(this,"sweepTimeout",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"sweep",{enumerable:!0,configurable:!0,writable:!0,value:function(n){n===void 0&&(n=rxt),clearTimeout(r.sweepTimeout),r.sweepTimeout=void 0;var a=Date.now();r.registrations.forEach(function(o,i){a-o.registeredAt>=n&&(r.finalize(o.value),r.registrations.delete(i))}),r.registrations.size>0&&r.scheduleSweep()}}),Object.defineProperty(this,"finalizeAllImmediately",{enumerable:!0,configurable:!0,writable:!0,value:function(){r.sweep(0)}})}return Object.defineProperty(e.prototype,"register",{enumerable:!1,configurable:!0,writable:!0,value:function(t,r,n){this.registrations.set(n,{value:r,registeredAt:Date.now()}),this.scheduleSweep()}}),Object.defineProperty(e.prototype,"unregister",{enumerable:!1,configurable:!0,writable:!0,value:function(t){this.registrations.delete(t)}}),Object.defineProperty(e.prototype,"scheduleSweep",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.sweepTimeout===void 0&&(this.sweepTimeout=setTimeout(this.sweep,nxt))}}),e}(),oxt=typeof FinalizationRegistry<"u"?FinalizationRegistry:axt,PR=new oxt(function(e){var t;(t=e.reaction)===null||t===void 0||t.dispose(),e.reaction=null}),NR={},ixt={get exports(){return NR},set exports(e){NR=e}},NZ={};/** + `.concat($?"width: calc(100% - ".concat(I,"px);"):"",` +}`),D)}else(0,s.removeCSS)(D);return function(){(0,s.removeCSS)(D)}},[b,D])}return cD}var mZ;function Fmt(){if(mZ)return Bm;mZ=1;var e=Yr,t=Xr,r=Zr,n=Se;Object.defineProperty(Bm,"__esModule",{value:!0}),Bm.default=void 0;var o=n(Ea),a=f(m),i=Kr,l=wo(),s=n(wmt()),c=n(Imt());function d(h){if(typeof t!="function")return null;var _=new t,b=new t;return(d=function(w){return w?b:_})(h)}function f(h,_){if(!_&&h&&h.__esModule)return h;if(h===null||e(h)!="object"&&typeof h!="function")return{default:h};var b=d(_);if(b&&b.has(h))return b.get(h);var x={__proto__:null},w=Object.defineProperty&&r;for(var D in h)if(D!=="default"&&Object.prototype.hasOwnProperty.call(h,D)){var I=w?r(h,D):null;I&&(I.get||I.set)?Object.defineProperty(x,D,I):x[D]=h[D]}return x.default=h,b&&b.set(h,x),x}var v=function(_){return _===!1?!1:_?typeof _=="string"?document.querySelector(_):typeof _=="function"?_():_:null},g=a.forwardRef(function(h,_){var b=h.open,x=h.autoLock,w=h.getContainer,D=h.autoDestroy,I=D===void 0?!0:D,$=h.children,F=a.useState(b),C=(0,o.default)(F,2),R=C[0],k=C[1],P=R||b;a.useEffect(function(){(I||b)&&k(b)},[b,I]);var U=a.useState(function(){return v(w)}),B=(0,o.default)(U,2),z=B[0],A=B[1];a.useEffect(function(){var X=v(w);A(X??null)});var M=(0,s.default)(!!P&&!z),N=(0,o.default)(M,1),T=N[0],O=z??T;(0,c.default)(x&&b&&(O===T||O===document.body));var j=null;$&&(0,l.supportRef)($)&&_&&(j=$.ref);var K=(0,l.useComposeRef)(j,_);if(!P||z===void 0)return null;var Q=O===!1,Y=$;return _&&(Y=a.cloneElement($,{ref:K})),a.createElement(a.Fragment,null,Q?Y:(0,i.createPortal)(Y,O))});return Bm.default=g,Bm}var xZ;function $mt(){if(xZ)return Lm;xZ=1;var e=Se;Object.defineProperty(Lm,"__esModule",{value:!0}),Lm.default=void 0;var t=e(Fmt());return Lm.default=t.default,Lm}var jm={},Um={},bZ;function Emt(){if(bZ)return Um;bZ=1;var e=Se;Object.defineProperty(Um,"__esModule",{value:!0}),Um.default=void 0;var t=e(LG),r=e(A1),n=Ks(),o=wo(),a=function(l,s,c){var d=(0,n.useEvent)(c);(0,n.useLayoutEffect)(function(){if(l&&s){var f=o.DomUtils.collectScroller(s),v=new r.default((0,t.default)(f)),g=o.DomUtils.getWin(s),h=function(){d()};return v.forEach(function(_){_.addEventListener("scroll",h,{passive:!0})}),g?.addEventListener("resize",h,{passive:!0}),function(){v.forEach(function(_){_.removeEventListener("scroll",h),g?.removeEventListener("resize",h)})}}},[l,s])};return Um.default=a,Um}var yZ;function Smt(){if(yZ)return jm;yZ=1;var e=Yr,t=Xr,r=Zr,n=Se;Object.defineProperty(jm,"__esModule",{value:!0}),jm.default=void 0;var o=n(Ea),a=s(m),i=n(Emt());function l(d){if(typeof t!="function")return null;var f=new t,v=new t;return(l=function(h){return h?v:f})(d)}function s(d,f){if(!f&&d&&d.__esModule)return d;if(d===null||e(d)!="object"&&typeof d!="function")return{default:d};var v=l(f);if(v&&v.has(d))return v.get(d);var g={__proto__:null},h=Object.defineProperty&&r;for(var _ in d)if(_!=="default"&&Object.prototype.hasOwnProperty.call(d,_)){var b=h?r(d,_):null;b&&(b.get||b.set)?Object.defineProperty(g,_,b):g[_]=d[_]}return g.default=d,v&&v.set(d,g),g}var c=function(f,v){var g=f.visible,h=f.onAlign,_=(0,a.useState)(null),b=(0,o.default)(_,2),x=b[0],w=b[1];return(0,a.useImperativeHandle)(v,function(){return{setTargetEle:w}}),(0,i.default)(g,x,h),null};return jm.default=a.default.forwardRef(c),jm}var Hm={};const Cmt=ca(PWe);var eR={},dD={},wZ;function Tmt(){if(wZ)return dD;wZ=1;var e=Yr,t=Rc,r=Xr,n=Zr,o=Se;Object.defineProperty(dD,"__esModule",{value:!0}),dD.default=w;var a=o(bt),i=o(Md),l=o(zd),s=o(w_),c=o(D_),d=o(I_),f=_(m),v=Kr,g=o(N1);function h(D){if(typeof r!="function")return null;var I=new r,$=new r;return(h=function(C){return C?$:I})(D)}function _(D,I){if(!I&&D&&D.__esModule)return D;if(D===null||e(D)!="object"&&typeof D!="function")return{default:D};var $=h(I);if($&&$.has(D))return $.get(D);var F={__proto__:null},C=Object.defineProperty&&n;for(var R in D)if(R!=="default"&&Object.prototype.hasOwnProperty.call(D,R)){var k=C?n(D,R):null;k&&(k.get||k.set)?Object.defineProperty(F,R,k):F[R]=D[R]}return F.default=D,$&&$.set(D,F),F}function b(D){var I=x();return function(){var F=(0,d.default)(D),C;if(I){var R=(0,d.default)(this).constructor;C=t(F,arguments,R)}else C=F.apply(this,arguments);return(0,c.default)(this,C)}}function x(){if(typeof Reflect>"u"||!t||t.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(t(Boolean,[],function(){})),!0}catch{return!1}}function w(D){var I=function($){(0,s.default)(C,$);var F=b(C);function C(R){var k;return(0,i.default)(this,C),k=F.call(this,R),k.handleMouseDown=function(P){var U=k.instanceRef.current,B=(0,v.findDOMNode)(U),z=k.clickStartEl;B&&z&&!B.contains(z)&&k.props.onClickOutside(P)},k.instanceRef=R.forwaredRef||f.createRef(),k}return(0,l.default)(C,[{key:"render",value:function(){var k=this;return f.createElement(f.Fragment,null,f.createElement(g.default,{target:document.body,onMouseDown:function(U){k.clickStartEl=U.target,k.handleMouseDown(U)}}),f.createElement(D,(0,a.default)({},this.props,{ref:this.instanceRef})))}}]),C}(f.Component);return I.displayName="withClickOutside(".concat(D.displayName||D.name||"Component",")"),f.forwardRef(function($,F){return f.createElement(I,(0,a.default)({},$,{forwaredRef:F}))})}return dD}var DZ;function Rmt(){return DZ||(DZ=1,function(e){var t=Se;Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"withClickOutside",{enumerable:!0,get:function(){return r.default}});var r=t(Tmt())}(eR)),eR}var Wm={};const Omt=ca(KQe);var IZ;function Amt(){if(IZ)return Wm;IZ=1;var e=Yr,t=fl,r=Rc,n=Xr,o=Zr,a=Se;Object.defineProperty(Wm,"__esModule",{value:!0}),Wm.default=void 0;var i=a(Md),l=a(zd),s=a(w_),c=a(D_),d=a(I_),f=a(fl),v=a(ap),g=Omt,h=x(m),_=wo();function b(R){if(typeof n!="function")return null;var k=new n,P=new n;return(b=function(B){return B?P:k})(R)}function x(R,k){if(!k&&R&&R.__esModule)return R;if(R===null||e(R)!="object"&&typeof R!="function")return{default:R};var P=b(k);if(P&&P.has(R))return P.get(R);var U={__proto__:null},B=Object.defineProperty&&o;for(var z in R)if(z!=="default"&&Object.prototype.hasOwnProperty.call(R,z)){var A=B?o(R,z):null;A&&(A.get||A.set)?Object.defineProperty(U,z,A):U[z]=R[z]}return U.default=R,P&&P.set(R,U),U}function w(R){var k=D();return function(){var U=(0,d.default)(R),B;if(k){var z=(0,d.default)(this).constructor;B=r(U,arguments,z)}else B=U.apply(this,arguments);return(0,c.default)(this,B)}}function D(){if(typeof Reflect>"u"||!r||r.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(r(Boolean,[],function(){})),!0}catch{return!1}}var I=function(k,P){var U={t:"b",b:"t",l:"r",r:"l"};return t(_)(k,function(B){return(0,_.replace)(B,new RegExp(P,"gi"),function(z){return U[z]})})},$=function(k,P){return(0,f.default)(k).call(k,function(U,B){return B===P?-U:U})},F=function(k){var P=k.getBoundingClientRect(),U=P.top,B=P.bottom,z=P.left,A=P.right;return B<0||U>window.innerHeight||A<0||z>window.innerWidth},C=function(R){(0,s.default)(P,R);var k=w(P);function P(U){var B;return(0,i.default)(this,P),B=k.call(this,U),B.align=function(){B.waitSourceElShow().then(function(){var z,A=B.props,M=A.align,N=A.builtinPlacements,T=A.target,O=A.onAfterAdjustDirection,j=A.useCssTransform,K=B.el.current,Q=T();if(!(!K||!Q)){var Y=_.CommonUtils.getPlacementFromAlign(M,N),X=(0,g.alignElement)(K,Q,(0,_.assign)({},M,{useCssTransform:j})),G=F(Q);if(!G&&(!((z=M.overflow)===null||z===void 0)&&z.alwaysByViewport)){var H=K.getBoundingClientRect(),V=!1;(H.bottom>window.innerHeight||H.top<0)&&(X.points=I(X.points,"[tb]"),X.offset=$(X.offset,1),X.targetOffset=$(X.targetOffset,1),V=!0),(H.right>window.innerWidth||H.left<0)&&(X.points=I(X.points,"[lr]"),X.offset=$(X.offset,0),X.targetOffset=$(X.targetOffset,0),V=!0),V&&(0,g.alignElement)(K,Q,(0,_.assign)({},X,{useCssTransform:j}))}var Z=_.CommonUtils.getPlacementFromAlign(X,N);Z!==Y&&O&&O(Z,{points:X.points,offset:X.offset,targetOffset:X.targetOffset,overflow:M.overflow})}})},B.waitSourceElShow=function(){var z=B.el.current;return new v.default(function(A){var M=function N(){var T=z&&(z.clientWidth>0||z.clientHeight>0);T?A(!0):requestAnimationFrame(N)};M()})},B.el=h.createRef(),B}return(0,l.default)(P,[{key:"componentDidMount",value:function(){this.align()}},{key:"render",value:function(){return h.cloneElement(h.Children.only(this.props.children),{ref:this.el})}}]),P}(h.Component);return Wm.default=C,Wm}var FZ;function kmt(){if(FZ)return Hm;FZ=1;var e=Yr,t=Rc,r=Xr,n=Zr,o=Se;Object.defineProperty(Hm,"__esModule",{value:!0}),Hm.default=void 0;var a=o(ap),i=o(rd),l=o(Md),s=o(zd),c=o(w_),d=o(D_),f=o(I_),v=o(rl),g=o(q4),h=$(m),_=Cmt,b=Rmt(),x=wo(),w=K4(),D=o(Amt());function I(k){if(typeof r!="function")return null;var P=new r,U=new r;return(I=function(z){return z?U:P})(k)}function $(k,P){if(!P&&k&&k.__esModule)return k;if(k===null||e(k)!="object"&&typeof k!="function")return{default:k};var U=I(P);if(U&&U.has(k))return U.get(k);var B={__proto__:null},z=Object.defineProperty&&n;for(var A in k)if(A!=="default"&&Object.prototype.hasOwnProperty.call(k,A)){var M=z?n(k,A):null;M&&(M.get||M.set)?Object.defineProperty(B,A,M):B[A]=k[A]}return B.default=k,U&&U.set(k,B),B}function F(k){var P=C();return function(){var B=(0,f.default)(k),z;if(P){var A=(0,f.default)(this).constructor;z=t(B,arguments,A)}else z=B.apply(this,arguments);return(0,d.default)(this,z)}}function C(){if(typeof Reflect>"u"||!t||t.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(t(Boolean,[],function(){})),!0}catch{return!1}}var R=function(k){(0,c.default)(U,k);var P=F(U);function U(B){var z;return(0,l.default)(this,U),z=P.call(this,B),z.getTarget=function(){return z.props.getRootDomNode()},z.align=function(){z.alignCount+=1;var A=z.alignCount;a.default.resolve().then(function(){A===z.alignCount&&z.alignRef.current&&z.alignRef.current.align()})},z.getMiscStyle=function(){var A={position:"absolute"},M=z.props,N=M.stretch,T=M.targetWidth,O=M.targetHeight;return N&&((0,i.default)(N).call(N,"height")&&O?A.height=O:(0,i.default)(N).call(N,"minHeight")&&O&&(A.minHeight=O),(0,i.default)(N).call(N,"width")&&T?A.width=T:(0,i.default)(N).call(N,"minWidth")&&T&&(A.minWidth=T)),A},z.alignRef=h.createRef(),z.alignCount=0,z}return(0,s.default)(U,[{key:"render",value:function(){var z=this,A=this.props,M=A.className,N=A.style,T=A.align,O=A.builtinPlacements,j=A.visible,K=A.prefixCls,Q=A.transitionName,Y=A.transitionTime,X=A.children,G=A.autoDestroy,H=G===void 0?!0:G,V=A.zIndex,Z=A.onMouseEnter,te=A.onMouseLeave,J=A.onShow,ne=A.onHide,re=A.onAfterShow,ie=A.onAfterHide,ce=A.onAfterAdjustDirection,oe=A.useCssTransform,fe=this.context.getPrefixCls("popup"),ve=(0,v.default)(fe,M,K,"".concat(K,"-content")),he=h.Children.only(X);return h.createElement(g.default,{onResize:function(){z.alignRef.current&&z.alignRef.current.align()}},h.createElement(D.default,{target:this.getTarget,key:"popup",align:T,builtinPlacements:O,onAfterAdjustDirection:ce,useCssTransform:oe,ref:this.alignRef},h.createElement("div",{className:ve,onMouseEnter:Z,onMouseLeave:te,style:(0,x.assign)(this.getMiscStyle(),{zIndex:V},N),onClick:function($e){return $e.stopPropagation()}},h.createElement(_.CSSTransition,{classNames:Q,timeout:Y,appear:!0,enter:!0,exit:!0,in:j,unmountOnExit:H,onEnter:J,onExit:ne,onEntered:re,onExited:ie},he))))}}]),U}(h.Component);return R.contextType=w.ConfigProviderContext,Hm.default=(0,b.withClickOutside)(R),Hm}var Vm={},$Z;function Pmt(){if($Z)return Vm;$Z=1;var e=Yr,t=Xr,r=Zr;Object.defineProperty(Vm,"__esModule",{value:!0}),Vm.default=void 0;var n=i(m),o=wo();function a(s){if(typeof t!="function")return null;var c=new t,d=new t;return(a=function(v){return v?d:c})(s)}function i(s,c){if(!c&&s&&s.__esModule)return s;if(s===null||e(s)!="object"&&typeof s!="function")return{default:s};var d=a(c);if(d&&d.has(s))return d.get(s);var f={__proto__:null},v=Object.defineProperty&&r;for(var g in s)if(g!=="default"&&Object.prototype.hasOwnProperty.call(s,g)){var h=v?r(s,g):null;h&&(h.get||h.set)?Object.defineProperty(f,g,h):f[g]=s[g]}return f.default=s,d&&d.set(s,f),f}var l=n.forwardRef(function(s,c){var d=s.children,f=s.getTriggerDOMNode,v=(0,o.supportRef)(d),g=n.useCallback(function(_){(0,o.fillRef)(c,f?f(_):_)},[f]),h=(0,o.useComposeRef)(g,d.ref);return v?n.cloneElement(d,{ref:h}):d});return Vm.default=l,Vm}var EZ;function Nmt(){if(EZ)return zm;EZ=1;var e=Yr,t=Rc,r=Xr,n=Zr,o=Se;Object.defineProperty(zm,"__esModule",{value:!0}),zm.default=void 0;var a=o(bt),i=o(aD),l=o(Md),s=o(zd),c=o(ymt),d=o(w_),f=o(D_),v=o(I_),g=o(rl),h=o(q4),_=k(m),b=Kr,x=W4(),w=wo(),D=K4(),I=o($mt()),$=o(Smt()),F=o(kmt()),C=o(Pmt());function R(z){if(typeof r!="function")return null;var A=new r,M=new r;return(R=function(T){return T?M:A})(z)}function k(z,A){if(!A&&z&&z.__esModule)return z;if(z===null||e(z)!="object"&&typeof z!="function")return{default:z};var M=R(A);if(M&&M.has(z))return M.get(z);var N={__proto__:null},T=Object.defineProperty&&n;for(var O in z)if(O!=="default"&&Object.prototype.hasOwnProperty.call(z,O)){var j=T?n(z,O):null;j&&(j.get||j.set)?Object.defineProperty(N,O,j):N[O]=z[O]}return N.default=z,M&&M.set(z,N),N}function P(z){var A=U();return function(){var N=(0,v.default)(z),T;if(A){var O=(0,v.default)(this).constructor;T=t(N,arguments,O)}else T=N.apply(this,arguments);return(0,f.default)(this,T)}}function U(){if(typeof Reflect>"u"||!t||t.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(t(Boolean,[],function(){})),!0}catch{return!1}}var B=function(z){(0,d.default)(M,z);var A=P(M);function M(N){var T;return(0,l.default)(this,M),T=A.call(this,N),T.setTargetRef=function(O){var j;w.DomUtils.isDomElement(O)&&T.targetEle!==O&&(T.targetEle=O,(j=T.watch)===null||j===void 0||j.setTargetEle(O))},T.setWatchRef=function(O){var j;T.watch=O,T.targetEle&&((j=T.watch)===null||j===void 0||j.setTargetEle(T.targetEle))},T.handleAfterAdjustDirection=function(O,j){T.setState({placement:O,prevAlign:j})},T.getRootDomNode=function(){try{var O=(0,b.findDOMNode)(T.el.current);if(O)return O}catch{}try{return(0,b.findDOMNode)((0,c.default)(T))}catch{}},T.getTargetSize=function(){var O=T.state,j=O.targetWidth,K=O.targetHeight,Q=T.targetEle||{},Y=Q.offsetWidth,X=Y===void 0?0:Y,G=Q.offsetHeight,H=G===void 0?0:G;return{targetWidth:j!==null?j:X,targetHeight:K!==null?K:H}},T.getPopupEdgeStyle=function(){var O=T.props.popupEdge;if(!(!(0,w.isNumber)(O)||O<=0)){var j={top:["paddingTop"],"top-left":["paddingTop","paddingRight"],"top-right":["paddingTop","paddingLeft"],right:["paddingRight"],"right-top":["paddingRight","paddingBottom"],"right-bottom":["paddingRight","paddingTop"],left:["paddingLeft"],"left-top":["paddingLeft","paddingBottom"],"left-bottom":["paddingLeft","paddingTop"],bottom:["paddingBottom"],"bottom-left":["paddingBottom","paddingRight"],"bottom-right":["paddingBottom","paddingLeft"]},K=T.state.placement,Q=j[K];if(Q){var Y={};return(0,w.forEach)(Q,function(X){Y[X]=O}),Y}}},T.align=function(){w.DomUtils.isDomElement(T.targetEle)&&!w.DomUtils.isVisible(T.targetEle)||T.alignRef.current&&T.alignRef.current.align()},T.handleAfterHide=function(){T.setState({forceKeepDom:!1,targetWidth:null,targetHeight:null,prevAlign:void 0,placement:T.defaultPlacement},function(){var O=T.props.onAfterPopupHide;O&&O()})},T.getComponent=function(O){var j=T.props,K=j.prefixCls,Q=j.popup,Y=j.popupAlign,X=j.builtinPlacements,G=j.transitionTime,H=j.stretch,V=j.autoDestroy,Z=j.onPopupShow,te=j.onPopupHide,J=j.disabled,ne=j.useCssTransform,re=j.overlayClassName,ie=j.overlayStyle,ce=j.zIndex,oe=T.state,fe=oe.prevAlign,ve=oe.placement,he=T.context.getPrefixCls("popup"),ge=(0,w.get)(T.props,"popupVisible",T.state.popupVisible),$e={};J||(T.isMouseEnterToShow()&&($e.onMouseEnter=T.onPopupMouseEnter),T.isMouseLeaveToHide()&&($e.onMouseLeave=T.onPopupMouseLeave));var ue=Q;(0,w.isFunction)(Q)&&(ue=Q()),ue=_.Children.only(ue);var Me="placement-".concat(ve),Pe=(0,w.isNil)(fe)?Y:fe,Qe=T.getTargetSize(),it=Qe.targetWidth,Je=Qe.targetHeight;return _.createElement(F.default,(0,a.default)({ref:T.alignRef,style:(0,w.assign)(T.getPopupEdgeStyle(),ie),className:(0,g.default)(re,Me,(0,i.default)({},"".concat(he,"-hidden"),!O)),zIndex:ce,prefixCls:K,visible:ge,align:Pe,autoDestroy:V,builtinPlacements:X,stretch:H,targetWidth:it,targetHeight:Je,transitionName:w.CommonUtils.getPlacementTransitionName(K,ve),transitionTime:G},$e,{getRootDomNode:T.getRootDomNode,onClickOutside:T.handleClickOutside,onAfterHide:T.handleAfterHide,onAfterShow:T.props.onAfterPopupShow,onShow:Z,onHide:te,onAfterAdjustDirection:T.handleAfterAdjustDirection,useCssTransform:ne}),ue)},T.getContainer=function(){var O=T.props.getPopupContainer;return O&&function(){return O(T.getRootDomNode())}},T.handleClickOutside=function(O){var j=T.props,K=j.autoClose,Q=j.shouldTriggerEvent,Y=Q===void 0?function(){return!1}:Q,X=T.context.getPrefixCls("popup"),G=K;if(T.isClickToHide()){var H=T.getRootDomNode();H&&H.contains(O.target)&&!Y(O.target)&&(G=!1);var V=w.DomUtils.closest(O.target,".".concat(X));V&&(V.contains(H)||(G=!1))}G&&T.setPopupVisible(!1,!0)},T.hasPopupVisibleProp=function(){return"popupVisible"in T.props},T.onChildEventHandler=function(O,j){var K=_.Children.only(T.props.children);if(_.isValidElement(K)){var Q=(0,w.get)(K.props,O);(0,w.isFunction)(Q)&&Q(j)}},T.onPropsEventHandler=function(O,j){var K=(0,w.get)(T.props,O);(0,w.isFunction)(K)&&K(j)},T.onTargetResize=function(O){T.props.stretch&&T.setState({targetWidth:O.width,targetHeight:O.height}),T.align()},T.onMouseEnter=function(O){T.isMouseEnterToShow()&&T.delaySetPopupVisible(!0,T.props.mouseEnterDelay),T.onChildEventHandler("onMouseEnter",O),T.onPropsEventHandler("onMouseEnter",O)},T.onMouseLeave=function(O){T.isMouseLeaveToHide()&&T.delaySetPopupVisible(!1,T.props.mouseLeaveDelay),T.onChildEventHandler("onMouseLeave",O),T.onPropsEventHandler("onMouseLeave",O)},T.onFocus=function(O){T.isFocusToShow()&&T.delaySetPopupVisible(!0,T.props.focusDelay),T.onChildEventHandler("onFocus",O),T.onPropsEventHandler("onFocus",O)},T.onBlur=function(O){T.isBlurToHide()&&T.delaySetPopupVisible(!1,T.props.blurDelay),T.onChildEventHandler("onBlur",O),T.onPropsEventHandler("onBlur",O)},T.onPopupMouseEnter=function(){T.clearDelayTimer()},T.onPopupMouseLeave=function(){T.delaySetPopupVisible(!1,T.props.mouseLeaveDelay)},T.onClick=function(O){if(T.isClickToHide()||T.isClickToShow()){O&&O.preventDefault&&O.preventDefault();var j=T.hasPopupVisibleProp()?!T.props.popupVisible:!T.state.popupVisible;(T.isClickToHide()&&!j||j&&T.isClickToShow())&&T.setPopupVisible(j)}T.onChildEventHandler("onClick",O),T.onPropsEventHandler("onClick",O)},T.el=_.createRef(),T.alignRef=_.createRef(),T.targetEle=null,T.watch=null,T.defaultPlacement=w.CommonUtils.getPlacementFromAlign(N.popupAlign,N.builtinPlacements),T.state={targetWidth:null,targetHeight:null,placement:T.defaultPlacement,popupVisible:!1,forceKeepDom:!1},T}return(0,s.default)(M,[{key:"close",value:function(){this.setPopupVisible(!1)}},{key:"delaySetPopupVisible",value:function(T){var O=this,j=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,K=j*1e3;this.clearDelayTimer(),K?this.delayTimer=window.setTimeout(function(){O.setPopupVisible(T),O.clearDelayTimer()},K):this.setPopupVisible(T)}},{key:"clearDelayTimer",value:function(){this.delayTimer&&(clearTimeout(this.delayTimer),this.delayTimer=0)}},{key:"setPopupVisible",value:function(T,O){this.clearDelayTimer();var j=this.props.onPopupVisibleChange,K=j===void 0?x.EMPTY_FN:j;this.hasPopupVisibleProp()?T!==this.props.popupVisible&&K(T,O):this.setState({popupVisible:T},function(){K(T,O)})}},{key:"isClickToShow",value:function(){var T=this.props,O=T.action,j=T.showAction;return O.indexOf("click")!==-1||j&&j.indexOf("click")!==-1}},{key:"isClickToHide",value:function(){var T=this.props,O=T.action,j=T.hideAction;return O.indexOf("click")!==-1||j&&j.indexOf("click")!==-1}},{key:"isFocusToShow",value:function(){var T=this.props,O=T.action,j=T.showAction;return O.indexOf("focus")!==-1||j&&j.indexOf("focus")!==-1}},{key:"isBlurToHide",value:function(){var T=this.props,O=T.action,j=T.hideAction;return O.indexOf("focus")!==-1||j&&j.indexOf("focus")!==-1}},{key:"isMouseEnterToShow",value:function(){var T=this.props,O=T.action,j=T.showAction;return O.indexOf("hover")!==-1||j&&j.indexOf("mouseEnter")!==-1}},{key:"isMouseLeaveToHide",value:function(){var T=this.props,O=T.action,j=T.hideAction;return O.indexOf("hover")!==-1||j&&j.indexOf("mouseLeave")!==-1}},{key:"needMountPopup",value:function(){var T=this.state.popupVisible;return"popupVisible"in this.props&&(T=this.props.popupVisible),T||this.state.forceKeepDom}},{key:"render",value:function(){var T=this.props,O=T.children,j=T.disabled,K=T.autoDestroy,Q=T.getTriggerDOMNode,Y=_.Children.only(O),X={key:"trigger"};(0,w.supportRef)(Y)&&(X.ref=(0,w.composeRef)(this.el,Y.ref)),j||(X.onClick=this.onClick,X.onMouseEnter=this.onMouseEnter,X.onMouseLeave=this.onMouseLeave,X.onFocus=this.onFocus,X.onBlur=this.onBlur);var G=this.needMountPopup(),H=_.cloneElement(Y,X);return _.createElement(_.Fragment,null,_.createElement(h.default,{disabled:!G,onResize:this.onTargetResize,ref:this.setTargetRef},_.createElement(C.default,{getTriggerDOMNode:Q},H)),_.createElement(I.default,{open:G,getContainer:this.getContainer(),autoDestroy:K},this.getComponent(G)),_.createElement($.default,{visible:G,ref:this.setWatchRef,onAlign:this.align}))}}],[{key:"getDerivedStateFromProps",value:function(T,O){return T.popupVisible||O.popupVisible?{forceKeepDom:!0}:null}}]),M}(_.Component);return B.defaultProps={popupAlign:{},popupEdge:0,showAction:[],hideAction:[],mouseEnterDelay:.1,mouseLeaveDelay:.1,autoClose:!0,disabled:!1,autoDestroy:!0,transitionTime:{enter:x.ANIMATION_DURATION.NORMAL,exit:x.ANIMATION_DURATION.FAST},useCssTransform:!1,shouldTriggerEvent:function(){return!1}},B.contextType=D.ConfigProviderContext,zm.default=B,zm}var SZ;function Mmt(){return SZ||(SZ=1,function(e){var t=Yr,r=Xr,n=Zr,o=ya;Object.defineProperty(e,"__esModule",{value:!0});var a={};e.default=void 0;var i=s(Nmt());o(i).forEach(function(c){c==="default"||c==="__esModule"||Object.prototype.hasOwnProperty.call(a,c)||c in e&&e[c]===i[c]||Object.defineProperty(e,c,{enumerable:!0,get:function(){return i[c]}})});function l(c){if(typeof r!="function")return null;var d=new r,f=new r;return(l=function(g){return g?f:d})(c)}function s(c,d){if(!d&&c&&c.__esModule)return c;if(c===null||t(c)!="object"&&typeof c!="function")return{default:c};var f=l(d);if(f&&f.has(c))return f.get(c);var v={__proto__:null},g=Object.defineProperty&&n;for(var h in c)if(h!=="default"&&Object.prototype.hasOwnProperty.call(c,h)){var _=g?n(c,h):null;_&&(_.get||_.set)?Object.defineProperty(v,h,_):v[h]=c[h]}return v.default=c,f&&f.set(c,v),v}e.default=i.default}(J4)),J4}var CZ;function zmt(){if(CZ)return Mm;CZ=1;var e=Yr,t=Xr,r=Zr,n=Se;Object.defineProperty(Mm,"__esModule",{value:!0}),Mm.default=void 0;var o=n(bt),a=n(Yr),i=n(Ll),l=n(rl),s=_(m),c=Ks(),d=wo(),f=Z4(),v=n(Mmt()),g=jG();function h(w){if(typeof t!="function")return null;var D=new t,I=new t;return(h=function(F){return F?I:D})(w)}function _(w,D){if(!D&&w&&w.__esModule)return w;if(w===null||e(w)!="object"&&typeof w!="function")return{default:w};var I=h(D);if(I&&I.has(w))return I.get(w);var $={__proto__:null},F=Object.defineProperty&&r;for(var C in w)if(C!=="default"&&Object.prototype.hasOwnProperty.call(w,C)){var R=F?r(w,C):null;R&&(R.get||R.set)?Object.defineProperty($,C,R):$[C]=w[C]}return $.default=w,I&&I.set(w,$),$}var b=function(w,D){var I={};for(var $ in w)Object.prototype.hasOwnProperty.call(w,$)&&D.indexOf($)<0&&(I[$]=w[$]);if(w!=null&&typeof i.default=="function")for(var F=0,$=(0,i.default)(w);F<$.length;F++)D.indexOf($[F])<0&&Object.prototype.propertyIsEnumerable.call(w,$[F])&&(I[$[F]]=w[$[F]]);return I},x=function(D){var I=D.className,$=D.style,F=D.arrow,C=F===void 0?!0:F,R=D.autoAdjustOverflow,k=R===void 0?!0:R,P=D.hasPadding,U=P===void 0?!0:P,B=D.popupMatchTriggerWidth,z=D.offset,A=D.edge,M=A===void 0?0:A,N=D.trigger,T=N===void 0?"hover":N,O=D.content,j=D.placement,K=j===void 0?"bottom":j,Q=D.mouseEnterDelay,Y=Q===void 0?.1:Q,X=D.mouseLeaveDelay,G=X===void 0?.1:X,H=D.destroyTooltipOnHide,V=H===void 0?!0:H,Z=D.color,te=D.zIndex,J=D.getPopupContainer,ne=D.overlayClassName,re=D.overlayStyle,ie=D.overlayInnerStyle,ce=D.useCssTransform,oe=D.onVisibleChange,fe=D.onAfterPopupShow,ve=D.onAfterPopupHide,he=D.children,ge=D.prefixCls,$e=b(D,["className","style","arrow","autoAdjustOverflow","hasPadding","popupMatchTriggerWidth","offset","edge","trigger","content","placement","mouseEnterDelay","mouseLeaveDelay","destroyTooltipOnHide","color","zIndex","getPopupContainer","overlayClassName","overlayStyle","overlayInnerStyle","useCssTransform","onVisibleChange","onAfterPopupShow","onAfterPopupHide","children","prefixCls"]),ue=(0,f.useGlobalComponentConfig)("popover"),Me=(0,c.usePrefixCls)("popover",ge),Pe={onAfterPopupShow:fe,onAfterPopupHide:ve};(0,d.has)(D,"visible")&&(0,d.assign)(Pe,{popupVisible:D.visible}),(0,d.has)(D,"onVisibleChange")&&(0,d.assign)(Pe,{onPopupVisibleChange:oe});var Qe=s.default.useMemo(function(){if((0,d.isBoolean)(B))return B?"width":"minWidth"},[B]),it=(0,s.useMemo)(function(){return(0,g.getPlacements)({offset:C?g.ARROW_OFFSET:g.NO_ARROW_OFFSET,autoAdjustOverflow:k,arrowPointAtCenter:(0,a.default)(C)==="object"&&C.pointAtCenter})},[C,k]),Je=(0,s.useMemo)(function(){var ze=it[K];return(0,d.isEmpty)(z)||(0,d.assign)(ze,{offset:z}),ze},[it,K,z]),He=(0,l.default)("".concat(Me,"-wrapper"),I,ue?.className,{"no-padding":!U,color:Z}),Ce=(0,d.assign)({background:Z,"--fd-tooltip-color-arrow":Z},ue?.style,$),Le=!O;return s.default.createElement(v.default,(0,o.default)({action:[T],prefixCls:Me,popup:s.default.createElement("div",{className:He,style:Ce},s.default.createElement("div",{className:(0,l.default)("popover-arrow",{"no-arrow":!C})}),s.default.createElement("div",{className:"popover-content",style:ie},O)),zIndex:te,stretch:Qe,autoClose:T==="click",autoDestroy:V,popupEdge:M,mouseEnterDelay:Y,mouseLeaveDelay:G,getPopupContainer:J,overlayClassName:ne,overlayStyle:re,popupAlign:Je,builtinPlacements:it,useCssTransform:ce,disabled:Le},Pe,(0,d.pickTriggerAttrs)($e)),he)};return Mm.default=x,Mm}var TZ;function Lmt(){return TZ||(TZ=1,function(e){var t=Yr,r=Xr,n=Zr,o=ya;Object.defineProperty(e,"__esModule",{value:!0});var a={};e.default=void 0;var i=s(zmt());o(i).forEach(function(c){c==="default"||c==="__esModule"||Object.prototype.hasOwnProperty.call(a,c)||c in e&&e[c]===i[c]||Object.defineProperty(e,c,{enumerable:!0,get:function(){return i[c]}})});function l(c){if(typeof r!="function")return null;var d=new r,f=new r;return(l=function(g){return g?f:d})(c)}function s(c,d){if(!d&&c&&c.__esModule)return c;if(c===null||t(c)!="object"&&typeof c!="function")return{default:c};var f=l(d);if(f&&f.has(c))return f.get(c);var v={__proto__:null},g=Object.defineProperty&&n;for(var h in c)if(h!=="default"&&Object.prototype.hasOwnProperty.call(c,h)){var _=g?n(c,h):null;_&&(_.get||_.set)?Object.defineProperty(v,h,_):v[h]=c[h]}return v.default=c,f&&f.set(c,v),v}e.default=i.default}(Q4)),Q4}var Km={},RZ;function OZ(){if(RZ)return Km;RZ=1;var e=Se;Object.defineProperty(Km,"__esModule",{value:!0}),Km.default=void 0;var t=e(fl),r=e(m),n=wo(),o=function(i){var l,s=i.activeKey,c=i.destroyInactive,d=c===void 0?!0:c,f=i.children;return r.default.createElement(r.default.Fragment,null,(0,t.default)(l=r.default.Children).call(l,f,function(v){return(0,n.isNil)(v)||(0,n.isNil)(v.props)?null:r.default.cloneElement(v,{active:v.key===s,destroyInactive:d})}))};return Km.default=o,Km}var qm={},Ym={},AZ;function kZ(){if(AZ)return Ym;AZ=1;var e=Se;Object.defineProperty(Ym,"__esModule",{value:!0}),Ym.default=void 0;var t=e(bt),r=e(Ll),n=e(m),o=wo(),a=e(lD()),i=function(s,c){var d={};for(var f in s)Object.prototype.hasOwnProperty.call(s,f)&&c.indexOf(f)<0&&(d[f]=s[f]);if(s!=null&&typeof r.default=="function")for(var v=0,f=(0,r.default)(s);vte?(V=G,K.current="x"):(V=H,K.current="y"),_(-V,-V)&&X.preventDefault()}var Y=(0,a.useRef)({onTouchStart:T,onTouchMove:O,onTouchEnd:j,onWheel:Q});i.useEffect(function(){var X,G;function H(J){var ne;(ne=Y.current)===null||ne===void 0||ne.onTouchStart(J)}function V(J){var ne;(ne=Y.current)===null||ne===void 0||ne.onTouchMove(J)}function Z(J){var ne;(ne=Y.current)===null||ne===void 0||ne.onTouchEnd(J)}function te(J){var ne;(ne=Y.current)===null||ne===void 0||ne.onWheel(J)}return document.addEventListener("touchmove",V,{passive:!1}),document.addEventListener("touchend",Z,{passive:!0}),(X=h.current)===null||X===void 0||X.addEventListener("touchstart",H,{passive:!0}),(G=h.current)===null||G===void 0||G.addEventListener("wheel",te,{passive:!1}),function(){document.removeEventListener("touchmove",V),document.removeEventListener("touchend",Z)}},[])}return fD}var Gm={},zZ;function jmt(){if(zZ)return Gm;zZ=1;var e=Yr,t=Xr,r=Zr,n=Se;Object.defineProperty(Gm,"__esModule",{value:!0}),Gm.default=void 0;var o=n(Ea),a=s(m),i=wo();function l(d){if(typeof t!="function")return null;var f=new t,v=new t;return(l=function(h){return h?v:f})(d)}function s(d,f){if(!f&&d&&d.__esModule)return d;if(d===null||e(d)!="object"&&typeof d!="function")return{default:d};var v=l(f);if(v&&v.has(d))return v.get(d);var g={__proto__:null},h=Object.defineProperty&&r;for(var _ in d)if(_!=="default"&&Object.prototype.hasOwnProperty.call(d,_)){var b=h?r(d,_):null;b&&(b.get||b.set)?Object.defineProperty(g,_,b):g[_]=d[_]}return g.default=d,v&&v.set(d,g),g}var c=function(f){var v=f.enable,g=f.headerRef,h=f.activeKey,_=f.theme,b=(0,a.useState)({}),x=(0,o.default)(b,2),w=x[0],D=x[1],I=function(){if(!g.current)return{};var R=g.current.querySelector(".tab-header-active"),k=g.current.querySelector(".tab-header-item")||{},P=i.DomUtils.getDomOffset(R,k)||{left:0},U=P.left,B=(0,i.get)(R,"offsetWidth",0);D({width:B,left:"".concat(U,"px")})};(0,a.useEffect)(function(){v&&setTimeout(function(){I()})},[h,_]);var $=function(){return v?a.default.createElement("div",{className:"segment-animate-dot",style:w}):null},F=(0,i.debounce)(function(){v&&I()},200);return[$(),F]};return Gm.default=c,Gm}var Xm={},LZ;function BZ(){if(LZ)return Xm;LZ=1;var e=Yr,t=Xr,r=Zr,n=Se;Object.defineProperty(Xm,"__esModule",{value:!0}),Xm.default=void 0;var o=n(Ea),a=c(m),i=Ks(),l=wo();function s(v){if(typeof t!="function")return null;var g=new t,h=new t;return(s=function(b){return b?h:g})(v)}function c(v,g){if(!g&&v&&v.__esModule)return v;if(v===null||e(v)!="object"&&typeof v!="function")return{default:v};var h=s(g);if(h&&h.has(v))return h.get(v);var _={__proto__:null},b=Object.defineProperty&&r;for(var x in v)if(x!=="default"&&Object.prototype.hasOwnProperty.call(v,x)){var w=b?r(v,x):null;w&&(w.get||w.set)?Object.defineProperty(_,x,w):_[x]=v[x]}return _.default=v,h&&h.set(v,_),_}var d=function(g,h){var _="";return a.default.Children.forEach(g,function(b){(0,l.get)(b,"props.disable")||(0,l.isNil)(b?.key)||(b?.key===h?_=h:!_&&b?.key&&(_=b.key))}),_},f=function(g){var h=g.defaultActiveKey,_=g.activeKey,b=g.onTabClick,x=g.onTabActive,w=g.children,D=(0,i.useMergedState)(d(w,h),{value:_}),I=(0,o.default)(D,2),$=I[0],F=I[1];(0,a.useEffect)(function(){_||F(d(w,$))},[w]);var C=function(k,P){var U=P.props.disable;if(!U){var B=P.key,z=!1;if(b){var A=b(B,k);A!==!1&&(z=!0)}else z=!0;B!==$&&z&&(F(B),x&&x(B,k))}};return[$,C]};return Xm.default=f,Xm}var jZ;function Umt(){if(jZ)return k_;jZ=1;var e=Yr,t=fl,r=Xr,n=Zr,o=Se;Object.defineProperty(k_,"__esModule",{value:!0}),k_.default=void 0;var a=o(aD),i=o(bt),l=o(Ea),s=o(Ll),c=o(tl),d=o(fl),f=o(rl),v=o(q4),g=P(m),h=xmt(),_=wo(),b=o(lD()),x=Z4(),w=o(Lmt()),D=o(OZ()),I=o(NZ()),$=o(kZ()),F=o(Bmt()),C=o(jmt()),R=o(BZ());function k(A){if(typeof r!="function")return null;var M=new r,N=new r;return(k=function(O){return O?N:M})(A)}function P(A,M){if(!M&&A&&A.__esModule)return A;if(A===null||e(A)!="object"&&typeof A!="function")return{default:A};var N=k(M);if(N&&N.has(A))return N.get(A);var T={__proto__:null},O=Object.defineProperty&&n;for(var j in A)if(j!=="default"&&Object.prototype.hasOwnProperty.call(A,j)){var K=O?n(A,j):null;K&&(K.get||K.set)?Object.defineProperty(T,j,K):T[j]=A[j]}return T.default=A,N&&N.set(A,T),T}var U=function(A,M){var N={};for(var T in A)Object.prototype.hasOwnProperty.call(A,T)&&M.indexOf(T)<0&&(N[T]=A[T]);if(A!=null&&typeof s.default=="function")for(var O=0,T=(0,s.default)(A);O=er)return!1;var Pr=sr-er;return ze(function(Xt){var mr=Xt+gr;return Math.min(Math.max(mr,Pr),0)}),!0});var gt=function(){return(0,_.isNil)(ue.current)?0:ue.current.scrollWidth},Et=function(){return(0,_.isNil)(ue.current)?0:ue.current.clientWidth},Qt=function(){if($e.current){var sr=$e.current.querySelector(".next"),er=(0,_.last)($e.current.querySelectorAll(".tab-header-item"));if(!(!sr||!er)){var Pr=er.offsetWidth,Xt=_.DomUtils.getDomOffset(er,sr);if(-Xt.left>Pr){var mr=Et(),mn=gt();ze(mr-mn)}}}},Ft=(0,g.useMemo)(function(){return X&&!Y},[X,Y]),ct=function(){return Le<0},Bt=function(){if(Le===0)return!0;var sr=Et()-gt();return Le>sr},Mt=function(){if(!Y){var sr=$e.current?$e.current.offsetWidth:0,er=gt()>sr;if(Je(er),er){Ae(),Qt();return}ze(0)}},St=(0,_.debounce)(function(){Mt()},200),zt=function(sr,er){if((0,_.isNil)(sr)||!$e.current)return null;var Pr=$e.current.querySelector(".prev"),Xt=$e.current.querySelector(".next");if(!(!Pr||!Xt)){var mr=_.DomUtils.getDomOffset(sr,Pr),mn=_.DomUtils.getDomOffset(sr,Xt);if(!mr||!mn)return null;var Xo=j!=="default"?4:0,xn=sr.offsetWidth+Xo*2,Ya=Pr.offsetWidth;mr.left=Math.round(mr.left-Xo)-Ya,mn.left=Math.round(mn.left-Xo);var Ai={prevOffset:mr,nextOffset:mn,elWidth:xn};return mn.left<0&&mn.left+xn>0||mn.left>=0&&er===B.RIGHT||mn.left>0&&(0,_.isNil)(er)?(0,c.default)((0,c.default)({},Ai),{offset:B.RIGHT}):mr.left<0&&mr.left+xn>0||mr.left<0&&er===B.LEFT||mr.left+xn<0&&(0,_.isNil)(er)?(0,c.default)((0,c.default)({},Ai),{offset:B.LEFT}):null}},Jt=function(sr,er){if(!it||!$e.current)return!1;var Pr=zt(sr,er);if(!(0,_.isNil)(Pr)){var Xt=Pr.prevOffset,mr=Pr.nextOffset,mn=Pr.offset,Xo=Pr.elWidth;mn===B.RIGHT&&ze(function(xn){return xn-(Xo+mr.left)}),mn===B.LEFT&&ze(function(xn){return xn-Xt.left})}},vr=function(sr){var er=Math.min(Le+Et(),0);ze(er),ie&&ie(sr),ye()},fn=function(sr){var er=Et(),Pr=gt(),Xt=Le-er,mr=er-Pr;Xt=Math.max(Xt,mr),ze(Xt),ce&&ce(sr),ye()},Ae=function(){st(!ct()),Ut(!Bt())},ke=function(sr){var er;if($e.current){var Pr=$e.current.querySelectorAll(".tab-header-item")||[],Xt={};return(0,d.default)(er=g.default.Children).call(er,G,function(mr,mn){if(mr){var Xo=mr.key||mn;Xt[Xo]=mr}}),(0,_.compact)(t(_)(Pr,function(mr,mn){var Xo=zt(mr,sr),xn=mr.getAttribute("data-tab-id")||mn,Ya=Xt[xn];if(Xo&&Xo.offset===sr&&Ya){var Ai=Ya.props,su=Ai.disable,Js=Ai.tab;if((0,_.isEmpty)(Js))return;var Qd=(0,_.isReactNode)(Js)?Js:g.default.createElement($.default,Js);return g.default.createElement("span",{onClick:function(Jd){ye(),ge(Jd,Ya),Jt(mr||Jd.currentTarget,sr)},key:Ya.key,className:(0,f.default)("tab-hide-popover-item",{disabled:su})},Qd)}}))}},ye=function(){vt(!1),Ke(!1)},Ue=function(sr,er,Pr,Xt){var mr=ke(er),mn=Pr;return(0,_.isEmpty)(mr)&&(mn=!1),g.default.createElement(w.default,{visible:mn,arrow:!1,onVisibleChange:Xt,content:g.default.createElement("div",{className:"tab-hide-popover-list"},mr),placement:"bottom",className:(0,f.default)("tab-hide-popover-wrapper",re)},sr)},ut=function(){return g.default.createElement(v.default,{onResize:function(er){(er.offsetWidth!==0||er.offsetHeight!==0)&&(St(),We())}},g.default.createElement(I.default,(0,i.default)({},M,{tabHeaderClassName:(0,f.default)(J,{"has-arrow":it}),activeKey:he,onItemClick:function(er,Pr){ge(er,Pr),Jt(er.currentTarget)},headerRef:$e,headerListRef:ue,headerListStyle:{transform:"translate(".concat(Le,"px, 0)")},prefixEle:it&&Ue(g.default.createElement("div",{className:(0,f.default)("tab-arrow","prev",{disabled:wt}),onClick:vr},g.default.createElement(h.LeftOutlined,{className:"arrow-icon"})),B.LEFT,at,vt),suffixEle:g.default.createElement(g.default.Fragment,null,it&&Ue(g.default.createElement("div",{className:(0,f.default)("tab-arrow","next",{disabled:Yt}),onClick:fn},g.default.createElement(h.RightOutlined,{className:"arrow-icon"})),B.RIGHT,Ve,Ke),Ft&&g.default.createElement("div",{className:(0,f.default)("tab-extra-content",ne)},X)),lastItemEle:Te}),G))};if(!he)return null;var ir=ot,Rr=(0,f.default)("".concat(V," horizontal-tab"),H,Xe?.className,(N={},(0,a.default)(N,"size-".concat(ir),ir),(0,a.default)(N,"theme-".concat(j),j),(0,a.default)(N,"is-stretch",Y),N)),Qr=(0,c.default)((0,c.default)({},Xe?.style),te);return g.default.createElement("div",(0,i.default)({className:Rr,style:Qr,id:Z},(0,b.default)(oe,{aria:!0,data:!0})),ut(),g.default.createElement(D.default,{destroyInactive:Q,activeKey:he},G))};return k_.default=z,k_}var Zm={},UZ;function HZ(){if(UZ)return Zm;UZ=1;var e=Yr,t=Xr,r=Zr,n=Se;Object.defineProperty(Zm,"__esModule",{value:!0}),Zm.default=void 0;var o=n(Ea),a=n(rl),i=d(m),l=Ks(),s=wo();function c(v){if(typeof t!="function")return null;var g=new t,h=new t;return(c=function(b){return b?h:g})(v)}function d(v,g){if(!g&&v&&v.__esModule)return v;if(v===null||e(v)!="object"&&typeof v!="function")return{default:v};var h=c(g);if(h&&h.has(v))return h.get(v);var _={__proto__:null},b=Object.defineProperty&&r;for(var x in v)if(x!=="default"&&Object.prototype.hasOwnProperty.call(v,x)){var w=b?r(v,x):null;w&&(w.get||w.set)?Object.defineProperty(_,x,w):_[x]=v[x]}return _.default=v,h&&h.set(v,_),_}var f=function(g){var h=g.className,_=g.children,b=g.style,x=g.active,w=x===void 0?!1:x,D=g.forceRender,I=D===void 0?!1:D,$=g.destroyInactive,F=$===void 0?!0:$,C=g.prefixCls,R=(0,l.usePrefixCls)("tab",C),k=(0,a.default)("".concat(R,"-content"),h),P=(0,i.useState)(I),U=(0,o.default)(P,2),B=U[0],z=U[1];if((0,i.useEffect)(function(){w?z(!0):F&&z(!1)},[w,F]),F&&!w)return null;var A={};return w||(A.display="none"),i.default.createElement("div",{className:k,style:(0,s.assign)(A,b)},(w||B||I)&&_)};return Zm.default=f,Zm}var Qm={},WZ;function Hmt(){if(WZ)return Qm;WZ=1;var e=Se;Object.defineProperty(Qm,"__esModule",{value:!0}),Qm.default=void 0;var t=e(bt),r=e(Ea),n=e(Ll),o=e(tl),a=e(rl),i=e(m),l=e(lD()),s=e(OZ()),c=e(NZ()),d=e(BZ()),f=Z4(),v=function(h,_){var b={};for(var x in h)Object.prototype.hasOwnProperty.call(h,x)&&_.indexOf(x)<0&&(b[x]=h[x]);if(h!=null&&typeof n.default=="function")for(var w=0,x=(0,n.default)(h);wse(tw,{theme:"segment",...t,children:e.map(r=>se(qY.TabItem,{tab:r.tab},r.key))});var YZ=(e=>(e.PREVIEW="preview",e.STRUCTURE="structure",e))(YZ||{});const Xmt=118,Zmt={type:1,name:2,transferName:2,label:2,remark:3},Qmt={type:80,name:100,transferName:100,label:100,remark:100},Jmt=({fields:e,data:t=[],fieldsLabel:r=[],allFields:n,pageInfo:o={limit:hw,pageIndex:1,pageSize:kT,totalRows:0},onLoadData:a,onFieldNameChange:i,onFieldRemarkChange:l,defaultActiveTab:s="structure",direction:c="right",hasSegment:d=!0,editable:f=!0,headerEditable:v=!1,extraContent:g,emptyContent:h,structureColumnKeys:_=["type","transferName","remark"]})=>{const[b,x]=m.useState(s),[w,D]=m.useState(!1),[I,{width:$}]=Ad(),F=m.useRef(!1),C=[];n?.forEach((B,z)=>{e?.some(A=>A.id===B.id)||C.push(z)}),m.useEffect(()=>{n&&e&&C.forEach(B=>{const z=document.querySelector(`.fdi-preview-table-structure tr[data-rowindex="${B}"]`);z&&(z.classList.add("fdi-bg-orange-light-1"),z.classList.add("hover:fdi-bg-orange-light-2"),document.querySelectorAll(`.fdi-preview-table-structure tr[data-rowindex="${B}"] .table-cell`).forEach(M=>{M.classList.add("!fdi-bg-transparent")}))})}),a_(()=>{b==="preview"&&R()}),Ei(()=>{b!=="structure"&&(F.current||R().then(()=>{F.current=!0}))},[b]);const R=B=>a?(D(!0),a?.({limit:o.limit??hw,pageSize:o.pageSize,pageIndex:B??o.pageIndex}).finally(()=>{D(!1)})):Promise.resolve(),k=B=>{switch(B){case"type":return{dataIndex:"type",title:rt("FDI_Field_Type"),render:z=>se(Pd,{icon:{name:Rd(z)},text:rt(FY(z))})};case"name":return{dataIndex:"name",title:rt("FDI_Field_Name"),render:z=>se(i_,{text:z})};case"transferName":return{dataIndex:"transferName",title:rt("FDI_Field_Transfer_Name"),render:(z,A,M)=>{const N=e?.find(T=>T.id===A.id)??A;return f&&!C.includes(M)?se(R4,{isInput:!0,width:"100%",iconName:"icon-rename",defaultValue:N.transferName,checkError:T=>n_(T,e?.filter(O=>O.id!==A.id).map(O=>O.transferName)??[],Ii.NAME),validateHelp:T=>o_(T,e?.filter(O=>O.id!==A.id).map(O=>O.transferName)??[],Ii.NAME),onBlur:T=>{N.transferName!==T&&i?.({fieldId:A.id,name:T})}}):se(i_,{text:N.transferName})}};case"label":return{dataIndex:"label",title:rt("FDI_Field_Label"),render:(z,A)=>{const M=r.find(N=>N.content.some(T=>T.id===A.id));return se(i_,{text:M?.value??""})}};case"remark":return{dataIndex:"remark",title:rt("FDI_Field_Description"),render:(z,A,M)=>{const N=e?.find(T=>T.id===A.id)??A;return f&&!C.includes(M)?se(R4,{width:"100%",iconName:"icon-rename",defaultValue:N.remark,onBlur:T=>{l?.({fieldId:A.id,remark:T})},checkError:T=>Ovt(T),validateHelp:T=>Avt(T)}):se(i_,{text:N.remark})}}}},P=()=>{const B=Evt({width:$,minWidths:Qmt,ratios:Zmt,keys:_});return _.map(z=>({...k(z),width:B.get(z)}))};return $r("div",{className:"fdi-preview-table fdi-component-flex-col-layout fdi-items-stretch",children:[(()=>{const B=se("div",{className:"fdi-component-flex-w-fill-layout",style:{lineHeight:_n.token.controlHeight},children:g}),z=d&&se(Gmt,{items:[{key:"preview",tab:{icon:se(Rn,{name:"icon-table-preview"})}},{key:"structure",tab:{icon:se(Rn,{name:"icon-table-structure"})}}],activeKey:b,onTabActive:M=>{x(M)}}),A=[];return c==="left"?A.push(z,B):A.push(B,z),se("div",{className:"fdi-flex fdi-mb-md",children:A})})(),se("div",{className:"fdi-component-flex-col-layout fdi-component-flex-h-fill-layout fdi-gap-lg",children:b==="preview"?$r(ua,{children:[$r("div",{className:"fdi-relative fdi-component-flex-h-fill-layout",children:[se(KY,{className:"fdi-w-full fdi-h-full",tableData:{fields:e??[],data:t},renderColumn:B=>{if(!v)return{};const z=Rd(B.type);return{title:$r("div",{className:"fdi-flex fdi-items-center fdi-gap-md",children:[se(Rn,{name:z,size:gw.NORMAL}),se("div",{className:"fdi-component-flex-w-fill-layout",children:se(R4,{isInput:!0,width:"100%",size:"small",iconName:"icon-rename",defaultValue:B.transferName,checkError:A=>n_(A,e?.filter(M=>M.id!==B.id).map(M=>M.transferName)??[],Ii.NAME),validateHelp:A=>o_(A,e?.filter(M=>M.id!==B.id).map(M=>M.transferName)??[],Ii.NAME),onBlur:A=>{B.transferName!==A&&i?.({fieldId:B.id,name:A})}},B.transferName)})]})}}}),De.isEmpty(t)&&se("div",{className:"fdi-absolute fdi-left-0 fdi-right-0 fdi-top-[34px] fdi-bottom-0",children:h})]}),se(CV,{size:o.pageSize,count:o.totalRows,page:o.pageIndex,onPageChange:B=>{R(B)},showTotal:B=>{const z=B??0;return o.totalRowSize&&o.totalRowSize>z?rt("FDI_Show_{R1}_Rows_Total_{R2}",B,o.totalRowSize):rt("FDI_Total_Rows",z)}}),se(Lw,{loading:w})]}):se("div",{ref:I,className:"fdi-component-flex-h-fill-layout",children:se(Hh,{className:"fdi-preview-table-structure",defaultColumnWidth:Xmt,columns:P(),dataSource:n??e??[],noWrap:!0,fixedHeader:!0,hasCellBorder:!1,striped:!1})})})]})},ext=1e6,txt=({className:e,value:t,lineHeight:r=20,maxRowNumber:n=2,popoverContent:o})=>{const[a,{height:i}]=Ad(),[l,s]=m.useState(!1);return Ei(()=>{i>r*n&&s(!0)},[i]),$r("div",{className:Gt("fdi-w-full",e),children:[se("div",{ref:a,className:Gt("fdi-break-all fdi-whitespace-break-spaces",l&&"fdi-line-clamp-2"),style:{WebkitLineClamp:l?n:void 0},children:t}),l&&se(J1,{className:"fdi-break-all fdi-whitespace-break-spaces",placement:"left-top",arrow:!0,trigger:"click",overlayInnerStyle:{width:280,maxHeight:400,overflow:"auto"},content:o||t,zIndex:ext,children:se(Ar,{size:"small",type:"link",className:"fdi-mt-xs",children:rt("FDI_View_All")})})]})},rxt=({className:e,value:t,isEllipsis:r,maxRowNumber:n})=>Rvt(t)?se("span",{className:"fdi-text-black-3",children:rt("FDI_None")}):r?se(txt,{value:t,maxRowNumber:n}):se("span",{className:Gt("fdi-break-all fdi-whitespace-break-spaces",e),children:t}),JYt="",nxt=({className:e,dataSource:t,defaultActiveIndex:r=-1,reverseSelectable:n=!0,onClick:o})=>{const[a,i]=m.useState(r);return se("div",{className:Gt("fdi-exhibit-list",e),children:t.map((l,s)=>{const{iconName:c,value:d,iconSize:f,id:v}=l;return se("div",{className:Gt("fdi-exhibit-list-item fdi-component-list-item",{selected:a===s}),onClick:()=>{o(d,v),i(n&&a===s?-1:s)},children:c?$r(ua,{children:[se(Rn,{className:"fdi-exhibit-list-item-icon",name:c,size:f}),se("span",{className:"fdi-exhibit-list-item-text",children:d})]}):se("span",{className:"fdi-exhibit-list-item-text",children:d})},s)})})},oxt=({className:e,header:{rowProps:t,columns:r},content:n})=>{const{className:o,...a}=t||{};return $r("div",{className:Gt("fdi-col-layout fdi-flex fdi-flex-col fdi-rounded fdi-bg-netr-light-1 fdi-p-xl",e),children:[se(Ch,{className:Gt("fdi-col-layout-head",o),wrap:!1,...a,children:r.map(i=>{const{colProps:l,name:s,className:c}=i;return se(Qc,{...l,children:se(rxt,{className:c,isEllipsis:!0,value:s})})})}),n]})},eGt="";m.forwardRef(({className:e,paginationProps:t={},dataSource:r,...n},o)=>{const[a,i]=m.useState(1),{size:l=20,...s}=t,c=m.useMemo(()=>r.slice((a-1)*l,a*l),[a,r]);return $r("div",{className:Gt("fdi-component-flex-col-layout fdi-justify-between fdi-gap-lg",e),children:[se("div",{ref:o,className:"fdi-component-flex-h-fill-layout",children:se(Hh,{className:"fdi-w-full fdi-h-full",dataSource:c,...n})}),se(CV,{controlSize:"small",size:l,count:r.length,page:a,onPageChange:d=>i(d),showTotal:d=>rt("FDI_Total_Rows",d),...s})]})});const tGt="",GZ=m.forwardRef(({type:e,...t},r)=>{const n=m.useRef(null),o=m.useRef(null);return Zvt(()=>{o.current?.destroy(),o.current=null}),m.useLayoutEffect(()=>(BI.createWidget({type:e,element:n.current,...t,ref:a=>{r&&(r.current=a),o.current=a}}),()=>{n.current=null}),[]),se("div",{className:"fdi-w-ful fdi-h-full fdi-relative",ref:n})}),rGt="";function Cr(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;ne.length)&&(t=e.length);for(var r=0,n=Array(t);r=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Vd(){return Vd=Object.assign?Object.assign.bind():function(e){for(var t=1;tn&&(n=l.dependenciesState_)}for(r.length=o,e.newObserving_=null,a=t.length;a--;){var s=t[a];s.diffValue_===0&&DQ(s,e),s.diffValue_=0}for(;o--;){var c=r[o];c.diffValue_===1&&(c.diffValue_=0,cbt(c,e))}n!==Tr.UP_TO_DATE_&&(e.dependenciesState_=n,e.onBecomeStale_())}function dR(e){var t=e.observing_;e.observing_=[];for(var r=t.length;r--;)DQ(t[r],e);e.dependenciesState_=Tr.NOT_TRACKING_}function bQ(e){var t=Gd();try{return e()}finally{Xs(t)}}function Gd(){var e=nt.trackingDerivation;return nt.trackingDerivation=null,e}function Xs(e){nt.trackingDerivation=e}function fR(e){var t=nt.allowStateReads;return nt.allowStateReads=e,t}function ox(e){nt.allowStateReads=e}function yQ(e){if(e.dependenciesState_!==Tr.UP_TO_DATE_){e.dependenciesState_=Tr.UP_TO_DATE_;for(var t=e.observing_,r=t.length;r--;)t[r].lowestObserverState_=Tr.UP_TO_DATE_}}var CD=function(){this.version=6,this.UNCHANGED={},this.trackingDerivation=null,this.trackingContext=null,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!1,this.allowStateReads=!0,this.enforceActions=!0,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1,this.useProxies=!0,this.verifyProxies=!1,this.safeDescriptors=!0},TD=!0,wQ=!1,nt=function(){var e=tR();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(TD=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==new CD().version&&(TD=!1),TD?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new CD):(setTimeout(function(){wQ||Cr(35)},1),new CD)}();function sbt(){if((nt.pendingReactions.length||nt.inBatch||nt.isRunningReactions)&&Cr(36),wQ=!0,TD){var e=tR();--e.__mobxInstanceCount===0&&(e.__mobxGlobals=void 0),nt=new CD}}function cbt(e,t){e.observers_.add(t),e.lowestObserverState_>t.dependenciesState_&&(e.lowestObserverState_=t.dependenciesState_)}function DQ(e,t){e.observers_.delete(t),e.observers_.size===0&&IQ(e)}function IQ(e){e.isPendingUnobservation===!1&&(e.isPendingUnobservation=!0,nt.pendingUnobservations.push(e))}function Si(){nt.inBatch++}function Ci(){if(--nt.inBatch===0){EQ();for(var e=nt.pendingUnobservations,t=0;t0&&IQ(e),!1)}function $Q(e){e.lowestObserverState_!==Tr.STALE_&&(e.lowestObserverState_=Tr.STALE_,e.observers_.forEach(function(t){t.dependenciesState_===Tr.UP_TO_DATE_&&t.onBecomeStale_(),t.dependenciesState_=Tr.STALE_}))}function ubt(e){e.lowestObserverState_!==Tr.STALE_&&(e.lowestObserverState_=Tr.STALE_,e.observers_.forEach(function(t){t.dependenciesState_===Tr.POSSIBLY_STALE_?t.dependenciesState_=Tr.STALE_:t.dependenciesState_===Tr.UP_TO_DATE_&&(e.lowestObserverState_=Tr.UP_TO_DATE_)}))}function dbt(e){e.lowestObserverState_===Tr.UP_TO_DATE_&&(e.lowestObserverState_=Tr.POSSIBLY_STALE_,e.observers_.forEach(function(t){t.dependenciesState_===Tr.UP_TO_DATE_&&(t.dependenciesState_=Tr.POSSIBLY_STALE_,t.onBecomeStale_())}))}var RD=function(){function e(r,n,o,a){r===void 0&&(r="Reaction"),this.name_=void 0,this.onInvalidate_=void 0,this.errorHandler_=void 0,this.requiresObservable_=void 0,this.observing_=[],this.newObserving_=[],this.dependenciesState_=Tr.NOT_TRACKING_,this.diffValue_=0,this.runId_=0,this.unboundDepsCount_=0,this.isDisposed_=!1,this.isScheduled_=!1,this.isTrackPending_=!1,this.isRunning_=!1,this.isTracing_=$D.NONE,this.name_=r,this.onInvalidate_=n,this.errorHandler_=o,this.requiresObservable_=a}var t=e.prototype;return t.onBecomeStale_=function(){this.schedule_()},t.schedule_=function(){this.isScheduled_||(this.isScheduled_=!0,nt.pendingReactions.push(this),EQ())},t.isScheduled=function(){return this.isScheduled_},t.runReaction_=function(){if(!this.isDisposed_){Si(),this.isScheduled_=!1;var n=nt.trackingContext;if(nt.trackingContext=this,uR(this)){this.isTrackPending_=!0;try{this.onInvalidate_()}catch(o){this.reportExceptionInDerivation_(o)}}nt.trackingContext=n,Ci()}},t.track=function(n){if(!this.isDisposed_){Si(),this.isRunning_=!0;var o=nt.trackingContext;nt.trackingContext=this;var a=xQ(this,n,void 0);nt.trackingContext=o,this.isRunning_=!1,this.isTrackPending_=!1,this.isDisposed_&&dR(this),SD(a)&&this.reportExceptionInDerivation_(a.cause),Ci()}},t.reportExceptionInDerivation_=function(n){var o=this;if(this.errorHandler_){this.errorHandler_(n,this);return}if(nt.disableErrorBoundaries)throw n;var a="[mobx] uncaught error in '"+this+"'";nt.suppressReactionErrors||console.error(a,n),nt.globalReactionErrorHandlers.forEach(function(i){return i(n,o)})},t.dispose=function(){this.isDisposed_||(this.isDisposed_=!0,this.isRunning_||(Si(),dR(this),Ci()))},t.getDisposer_=function(n){var o=this,a=function i(){o.dispose(),n==null||n.removeEventListener==null||n.removeEventListener("abort",i)};return n==null||n.addEventListener==null||n.addEventListener("abort",a),a[Kt]=this,a},t.toString=function(){return"Reaction["+this.name_+"]"},t.trace=function(n){},e}(),fbt=100,pR=function(t){return t()};function EQ(){nt.inBatch>0||nt.isRunningReactions||pR(pbt)}function pbt(){nt.isRunningReactions=!0;for(var e=nt.pendingReactions,t=0;e.length>0;){++t===fbt&&(console.error("[mobx] cycle in reaction: "+e[0]),e.splice(0));for(var r=e.splice(0),n=0,o=r.length;n0&&(t.dependencies=Rbt(e.observing_).map(kQ)),t}function Rbt(e){return Array.from(new Set(e))}var Obt=0;function PQ(){this.message="FLOW_CANCELLED"}PQ.prototype=Object.create(Error.prototype);var hR=cQ("flow"),Abt=cQ("flow.bound",{bound:!0}),cv=Object.assign(function(t,r){if(tx(r))return hR.decorate_20223_(t,r);if(Hd(r))return lv(t,r,hR);var n=t,o=n.name||"",a=function(){var l=this,s=arguments,c=++Obt,d=sv(o+" - runid: "+c+" - init",n).apply(l,s),f,v=void 0,g=new Promise(function(h,_){var b=0;f=_;function x(I){v=void 0;var $;try{$=sv(o+" - runid: "+c+" - yield "+b++,d.next).call(d,I)}catch(F){return _(F)}D($)}function w(I){v=void 0;var $;try{$=sv(o+" - runid: "+c+" - yield "+b++,d.throw).call(d,I)}catch(F){return _(F)}D($)}function D(I){if(_l(I?.then)){I.then(D,_);return}return I.done?h(I.value):(v=Promise.resolve(I.value),v.then(x,w))}x(void 0)});return g.cancel=sv(o+" - runid: "+c+" - cancel",function(){try{v&&NQ(v);var h=d.return(void 0),_=Promise.resolve(h.value);_.then(nv,nv),NQ(_),f(new PQ)}catch(b){f(b)}}),g};return a.isMobXFlow=!0,a},hR);cv.bound=ts(Abt);function NQ(e){_l(e.cancel)&&e.cancel()}function lx(e){return e?.isMobXFlow===!0}function kbt(e,t){return e?t!==void 0?ux(e)?e[Kt].values_.has(t):!1:ux(e)||!!e[Kt]||oR(e)||OD(e)||FD(e):!1}function MQ(e){return kbt(e)}function Zs(e,t){t===void 0&&(t=void 0),Si();try{return e.apply(t)}finally{Ci()}}function uv(e){return e[Kt]}var Pbt={has:function(t,r){return uv(t).has_(r)},get:function(t,r){return uv(t).get_(r)},set:function(t,r,n){var o;return Hd(r)?(o=uv(t).set_(r,n,!0))!=null?o:!0:!1},deleteProperty:function(t,r){var n;return Hd(r)?(n=uv(t).delete_(r,!0))!=null?n:!0:!1},defineProperty:function(t,r,n){var o;return(o=uv(t).defineProperty_(r,n))!=null?o:!0},ownKeys:function(t){return uv(t).ownKeys_()},preventExtensions:function(t){Cr(13)}};function Nbt(e,t){var r,n;return QZ(),e=Zd(e,t),(n=(r=e[Kt]).proxy_)!=null?n:r.proxy_=new Proxy(e,Pbt)}function Ti(e){return e.interceptors_!==void 0&&e.interceptors_.length>0}function sx(e,t){var r=e.interceptors_||(e.interceptors_=[]);return r.push(t),JZ(function(){var n=r.indexOf(t);n!==-1&&r.splice(n,1)})}function Ri(e,t){var r=Gd();try{for(var n=[].concat(e.interceptors_||[]),o=0,a=n.length;o0}function cx(e,t){var r=e.changeListeners_||(e.changeListeners_=[]);return r.push(t),JZ(function(){var n=r.indexOf(t);n!==-1&&r.splice(n,1)})}function xl(e,t){var r=Gd(),n=e.changeListeners_;if(n){n=n.slice();for(var o=0,a=n.length;o0?n.map(this.dehancer):n},t.intercept_=function(n){return sx(this,n)},t.observe_=function(n,o){return o===void 0&&(o=!1),o&&n({observableKind:"array",object:this.proxy_,debugObjectName:this.atom_.name_,type:"splice",index:0,added:this.values_.slice(),addedCount:this.values_.length,removed:[],removedCount:0}),cx(this,n)},t.getArrayLength_=function(){return this.atom_.reportObserved(),this.values_.length},t.setArrayLength_=function(n){(typeof n!="number"||isNaN(n)||n<0)&&Cr("Out of range: "+n);var o=this.values_.length;if(n!==o)if(n>o){for(var a=new Array(n-o),i=0;i0&&XQ(n+o+1)},t.spliceWithArray_=function(n,o,a){var i=this;this.atom_;var l=this.values_.length;if(n===void 0?n=0:n>l?n=l:n<0&&(n=Math.max(0,l+n)),arguments.length===1?o=l-n:o==null?o=0:o=Math.max(0,Math.min(o,l-n)),a===void 0&&(a=rR),Ti(this)){var s=Ri(this,{object:this.proxy_,type:LQ,index:n,removedCount:o,added:a});if(!s)return rR;o=s.removedCount,a=s.added}if(a=a.length===0?a:a.map(function(f){return i.enhancer_(f,void 0)}),this.legacyMode_){var c=a.length-o;this.updateArrayLength_(l,c)}var d=this.spliceItemsIntoValues_(n,o,a);return(o!==0||a.length!==0)&&this.notifyArraySplice_(n,a,d),this.dehanceValues_(d)},t.spliceItemsIntoValues_=function(n,o,a){if(a.length=this.values_.length){console.warn("[mobx] Out of bounds read: "+n);return}return this.atom_.reportObserved(),this.dehanceValue_(this.values_[n])},t.set_=function(n,o){var a=this.values_;if(this.legacyMode_&&n>a.length&&Cr(17,n,a.length),n2?n-2:0),a=2;a-1?(this.splice(n,1),!0):!1}};on("at",qa),on("concat",qa),on("flat",qa),on("includes",qa),on("indexOf",qa),on("join",qa),on("lastIndexOf",qa),on("slice",qa),on("toString",qa),on("toLocaleString",qa),on("toSorted",qa),on("toSpliced",qa),on("with",qa),on("every",bl),on("filter",bl),on("find",bl),on("findIndex",bl),on("findLast",bl),on("findLastIndex",bl),on("flatMap",bl),on("forEach",bl),on("map",bl),on("some",bl),on("toReversed",bl),on("reduce",BQ),on("reduceRight",BQ);function on(e,t){typeof Array.prototype[e]=="function"&&(PD[e]=t(e))}function qa(e){return function(){var t=this[Kt];t.atom_.reportObserved();var r=t.dehanceValues_(t.values_);return r[e].apply(r,arguments)}}function bl(e){return function(t,r){var n=this,o=this[Kt];o.atom_.reportObserved();var a=o.dehanceValues_(o.values_);return a[e](function(i,l){return t.call(r,i,l,n)})}}function BQ(e){return function(){var t=this,r=this[Kt];r.atom_.reportObserved();var n=r.dehanceValues_(r.values_),o=arguments[0];return arguments[0]=function(a,i,l){return o(a,i,l,t)},n[e].apply(n,arguments)}}var jbt=Wd("ObservableArrayAdministration",mR);function ND(e){return gD(e)&&jbt(e[Kt])}var Ubt={},au="add",MD="delete",jQ=function(){function e(r,n,o){var a=this;n===void 0&&(n=Kd),o===void 0&&(o="ObservableMap"),this.enhancer_=void 0,this.name_=void 0,this[Kt]=Ubt,this.data_=void 0,this.hasMap_=void 0,this.keysAtom_=void 0,this.interceptors_=void 0,this.changeListeners_=void 0,this.dehancer=void 0,this.enhancer_=n,this.name_=o,_l(Map)||Cr(18),iu(function(){a.keysAtom_=lQ("ObservableMap.keys()"),a.data_=new Map,a.hasMap_=new Map,r&&a.merge(r)})}var t=e.prototype;return t.has_=function(n){return this.data_.has(n)},t.has=function(n){var o=this;if(!nt.trackingDerivation)return this.has_(n);var a=this.hasMap_.get(n);if(!a){var i=a=new Yd(this.has_(n),mD,"ObservableMap.key?",!1);this.hasMap_.set(n,i),RQ(i,function(){return o.hasMap_.delete(n)})}return a.get()},t.set=function(n,o){var a=this.has_(n);if(Ti(this)){var i=Ri(this,{type:a?ns:au,object:this,newValue:o,name:n});if(!i)return this;o=i.newValue}return a?this.updateValue_(n,o):this.addValue_(n,o),this},t.delete=function(n){var o=this;if(this.keysAtom_,Ti(this)){var a=Ri(this,{type:MD,object:this,name:n});if(!a)return!1}if(this.has_(n)){var i=ax(),l=ml(this),s=l||i?{observableKind:"map",debugObjectName:this.name_,type:MD,object:this,oldValue:this.data_.get(n).value_,name:n}:null;return Zs(function(){var c;o.keysAtom_.reportChanged(),(c=o.hasMap_.get(n))==null||c.setNewValue_(!1);var d=o.data_.get(n);d.setNewValue_(void 0),o.data_.delete(n)}),l&&xl(this,s),!0}return!1},t.updateValue_=function(n,o){var a=this.data_.get(n);if(o=a.prepareNewValue_(o),o!==nt.UNCHANGED){var i=ax(),l=ml(this),s=l||i?{observableKind:"map",debugObjectName:this.name_,type:ns,object:this,oldValue:a.value_,name:n,newValue:o}:null;a.setNewValue_(o),l&&xl(this,s)}},t.addValue_=function(n,o){var a=this;this.keysAtom_,Zs(function(){var c,d=new Yd(o,a.enhancer_,"ObservableMap.key",!1);a.data_.set(n,d),o=d.value_,(c=a.hasMap_.get(n))==null||c.setNewValue_(!0),a.keysAtom_.reportChanged()});var i=ax(),l=ml(this),s=l||i?{observableKind:"map",debugObjectName:this.name_,type:au,object:this,name:n,newValue:o}:null;l&&xl(this,s)},t.get=function(n){return this.has(n)?this.dehanceValue_(this.data_.get(n).get()):this.dehanceValue_(void 0)},t.dehanceValue_=function(n){return this.dehancer!==void 0?this.dehancer(n):n},t.keys=function(){return this.keysAtom_.reportObserved(),this.data_.keys()},t.values=function(){var n=this,o=this.keys();return dx({next:function(){var i=o.next(),l=i.done,s=i.value;return{done:l,value:l?void 0:n.get(s)}}})},t.entries=function(){var n=this,o=this.keys();return dx({next:function(){var i=o.next(),l=i.done,s=i.value;return{done:l,value:l?void 0:[s,n.get(s)]}}})},t[Symbol.iterator]=function(){return this.entries()},t.forEach=function(n,o){for(var a=iv(this),i;!(i=a()).done;){var l=i.value,s=l[0],c=l[1];n.call(o,c,s,this)}},t.merge=function(n){var o=this;return Xd(n)&&(n=new Map(n)),Zs(function(){qs(n)?cxt(n).forEach(function(a){return o.set(a,n[a])}):Array.isArray(n)?n.forEach(function(a){var i=a[0],l=a[1];return o.set(i,l)}):ov(n)?(sxt(n)||Cr(19,n),n.forEach(function(a,i){return o.set(i,a)})):n!=null&&Cr(20,n)}),this},t.clear=function(){var n=this;Zs(function(){bQ(function(){for(var o=iv(n.keys()),a;!(a=o()).done;){var i=a.value;n.delete(i)}})})},t.replace=function(n){var o=this;return Zs(function(){for(var a=Hbt(n),i=new Map,l=!1,s=iv(o.data_.keys()),c;!(c=s()).done;){var d=c.value;if(!a.has(d)){var f=o.delete(d);if(f)l=!0;else{var v=o.data_.get(d);i.set(d,v)}}}for(var g=iv(a.entries()),h;!(h=g()).done;){var _=h.value,b=_[0],x=_[1],w=o.data_.has(b);if(o.set(b,x),o.data_.has(b)){var D=o.data_.get(b);i.set(b,D),w||(l=!0)}}if(!l)if(o.data_.size!==i.size)o.keysAtom_.reportChanged();else for(var I=o.data_.keys(),$=i.keys(),F=I.next(),C=$.next();!F.done;){if(F.value!==C.value){o.keysAtom_.reportChanged();break}F=I.next(),C=$.next()}o.data_=i}),this},t.toString=function(){return"[object ObservableMap]"},t.toJSON=function(){return Array.from(this)},t.observe_=function(n,o){return cx(this,n)},t.intercept_=function(n){return sx(this,n)},hD(e,[{key:"size",get:function(){return this.keysAtom_.reportObserved(),this.data_.size}},{key:Symbol.toStringTag,get:function(){return"Map"}}])}(),Xd=Wd("ObservableMap",jQ);function Hbt(e){if(ov(e)||Xd(e))return e;if(Array.isArray(e))return new Map(e);if(qs(e)){var t=new Map;for(var r in e)t.set(r,e[r]);return t}else return Cr(21,e)}var Wbt={},UQ=function(){function e(r,n,o){var a=this;n===void 0&&(n=Kd),o===void 0&&(o="ObservableSet"),this.name_=void 0,this[Kt]=Wbt,this.data_=new Set,this.atom_=void 0,this.changeListeners_=void 0,this.interceptors_=void 0,this.dehancer=void 0,this.enhancer_=void 0,this.name_=o,_l(Set)||Cr(22),this.enhancer_=function(i,l){return n(i,l,o)},iu(function(){a.atom_=lQ(a.name_),r&&a.replace(r)})}var t=e.prototype;return t.dehanceValue_=function(n){return this.dehancer!==void 0?this.dehancer(n):n},t.clear=function(){var n=this;Zs(function(){bQ(function(){for(var o=iv(n.data_.values()),a;!(a=o()).done;){var i=a.value;n.delete(i)}})})},t.forEach=function(n,o){for(var a=iv(this),i;!(i=a()).done;){var l=i.value;n.call(o,l,l,this)}},t.add=function(n){var o=this;if(this.atom_,Ti(this)){var a=Ri(this,{type:au,object:this,newValue:n});if(!a)return this}if(!this.has(n)){Zs(function(){o.data_.add(o.enhancer_(n,void 0)),o.atom_.reportChanged()});var i=!1,l=ml(this),s=l||i?{observableKind:"set",debugObjectName:this.name_,type:au,object:this,newValue:n}:null;l&&xl(this,s)}return this},t.delete=function(n){var o=this;if(Ti(this)){var a=Ri(this,{type:MD,object:this,oldValue:n});if(!a)return!1}if(this.has(n)){var i=!1,l=ml(this),s=l||i?{observableKind:"set",debugObjectName:this.name_,type:MD,object:this,oldValue:n}:null;return Zs(function(){o.atom_.reportChanged(),o.data_.delete(n)}),l&&xl(this,s),!0}return!1},t.has=function(n){return this.atom_.reportObserved(),this.data_.has(this.dehanceValue_(n))},t.entries=function(){var n=0,o=Array.from(this.keys()),a=Array.from(this.values());return dx({next:function(){var l=n;return n+=1,lxR){for(var t=xR;t=0&&r++;break}e=JQ(e),t=JQ(t);var l=i==="[object Array]";if(!l){if(typeof e!="object"||typeof t!="object")return!1;var s=e.constructor,c=t.constructor;if(s!==c&&!(_l(s)&&s instanceof s&&_l(c)&&c instanceof c)&&"constructor"in e&&"constructor"in t)return!1}if(r===0)return!1;r<0&&(r=-1),n=n||[],o=o||[];for(var d=n.length;d--;)if(n[d]===e)return o[d]===t;if(n.push(e),o.push(t),l){if(d=e.length,d!==t.length)return!1;for(;d--;)if(!DR(e[d],t[d],r-1,n,o))return!1}else{var f=Object.keys(e),v;if(d=f.length,Object.keys(t).length!==d)return!1;for(;d--;)if(v=f[d],!(Gs(t,v)&&DR(e[v],t[v],r-1,n,o)))return!1}return n.pop(),o.pop(),!0}function JQ(e){return ND(e)?e.slice():ov(e)||Xd(e)||Ys(e)||dv(e)?Array.from(e.entries()):e}function dx(e){return e[Symbol.iterator]=Zbt,e}function Zbt(){return this}if(["Symbol","Map","Set"].forEach(function(e){var t=tR();typeof t[e]>"u"&&Cr("MobX requires global '"+e+"' to be available or polyfilled")}),typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__=="object"&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:gbt,extras:{getDebugName:yR},$mobx:Kt}),!m.useState)throw new Error("mobx-react-lite requires React with Hooks support");if(!Mbt)throw new Error("mobx-react-lite@3 requires mobx at least version 6 to be available");function Qbt(e){e()}function Jbt(e){e||(e=Qbt),Cbt({reactionScheduler:e})}function e0t(e){return Tbt(e)}var t0t=1e4,r0t=1e4,n0t=function(){function e(t){var r=this;Object.defineProperty(this,"finalize",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"registrations",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),Object.defineProperty(this,"sweepTimeout",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"sweep",{enumerable:!0,configurable:!0,writable:!0,value:function(n){n===void 0&&(n=t0t),clearTimeout(r.sweepTimeout),r.sweepTimeout=void 0;var o=Date.now();r.registrations.forEach(function(a,i){o-a.registeredAt>=n&&(r.finalize(a.value),r.registrations.delete(i))}),r.registrations.size>0&&r.scheduleSweep()}}),Object.defineProperty(this,"finalizeAllImmediately",{enumerable:!0,configurable:!0,writable:!0,value:function(){r.sweep(0)}})}return Object.defineProperty(e.prototype,"register",{enumerable:!1,configurable:!0,writable:!0,value:function(t,r,n){this.registrations.set(n,{value:r,registeredAt:Date.now()}),this.scheduleSweep()}}),Object.defineProperty(e.prototype,"unregister",{enumerable:!1,configurable:!0,writable:!0,value:function(t){this.registrations.delete(t)}}),Object.defineProperty(e.prototype,"scheduleSweep",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.sweepTimeout===void 0&&(this.sweepTimeout=setTimeout(this.sweep,r0t))}}),e}(),o0t=typeof FinalizationRegistry<"u"?FinalizationRegistry:n0t,IR=new o0t(function(e){var t;(t=e.reaction)===null||t===void 0||t.dispose(),e.reaction=null}),FR={},a0t={get exports(){return FR},set exports(e){FR=e}},eJ={};/** * @license React * use-sync-external-store-shim.production.min.js * @@ -190,7 +187,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var ev=m;function lxt(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var sxt=typeof Object.is=="function"?Object.is:lxt,cxt=ev.useState,uxt=ev.useEffect,dxt=ev.useLayoutEffect,fxt=ev.useDebugValue;function pxt(e,t){var r=t(),n=cxt({inst:{value:r,getSnapshot:t}}),a=n[0].inst,o=n[1];return dxt(function(){a.value=r,a.getSnapshot=t,MR(a)&&o({inst:a})},[e,r,t]),uxt(function(){return MR(a)&&o({inst:a}),e(function(){MR(a)&&o({inst:a})})},[e]),fxt(r),r}function MR(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!sxt(e,r)}catch{return!0}}function vxt(e,t){return t()}var hxt=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?vxt:pxt;NZ.useSyncExternalStore=ev.useSyncExternalStore!==void 0?ev.useSyncExternalStore:hxt,function(e){e.exports=NZ}(ixt);function MZ(e){e.reaction=new eD("observer".concat(e.name),function(){var t;e.stateVersion=Symbol(),(t=e.onStoreChange)===null||t===void 0||t.call(e)})}function gxt(e,t){t===void 0&&(t="observed");var r=$.useRef(null);if(!r.current){var n={reaction:null,onStoreChange:null,stateVersion:Symbol(),name:t,subscribe:function(l){return PR.unregister(n),n.onStoreChange=l,n.reaction||(MZ(n),n.stateVersion=Symbol()),function(){var s;n.onStoreChange=null,(s=n.reaction)===null||s===void 0||s.dispose(),n.reaction=null}},getSnapshot:function(){return n.stateVersion}};r.current=n}var a=r.current;a.reaction||(MZ(a),PR.register(r,a,a)),$.useDebugValue(a.reaction,txt),NR.useSyncExternalStore(a.subscribe,a.getSnapshot,a.getSnapshot);var o,i;if(a.reaction.track(function(){try{o=e()}catch(l){i=l}}),i)throw i;return o}var LR,zR,LZ=typeof Symbol=="function"&&Symbol.for,_xt=(zR=(LR=Object.getOwnPropertyDescriptor(function(){},"name"))===null||LR===void 0?void 0:LR.configurable)!==null&&zR!==void 0?zR:!1,zZ=LZ?Symbol.for("react.forward_ref"):typeof m.forwardRef=="function"&&m.forwardRef(function(e){return null}).$$typeof,BZ=LZ?Symbol.for("react.memo"):typeof m.memo=="function"&&m.memo(function(e){return null}).$$typeof;function Zl(e,t){var r;if(BZ&&e.$$typeof===BZ)throw new Error("[mobx-react-lite] You are trying to use `observer` on a function component wrapped in either another `observer` or `React.memo`. The observer already applies 'React.memo' for you.");var n=(r=t?.forwardRef)!==null&&r!==void 0?r:!1,a=e,o=e.displayName||e.name;if(zZ&&e.$$typeof===zZ&&(n=!0,a=e.render,typeof a!="function"))throw new Error("[mobx-react-lite] `render` property of ForwardRef was not a function");var i=function(l,s){return gxt(function(){return a(l,s)},o)};return i.displayName=e.displayName,_xt&&Object.defineProperty(i,"name",{value:e.name,writable:!0,configurable:!0}),e.contextTypes&&(i.contextTypes=e.contextTypes),n&&(i=m.forwardRef(i)),i=m.memo(i),xxt(e,i),i}var mxt={$$typeof:!0,render:!0,compare:!0,type:!0,displayName:!0};function xxt(e,t){Object.keys(e).forEach(function(r){mxt[r]||Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))})}var BR;ext(Kr.unstable_batchedUpdates),BR=PR.finalizeAllImmediately;const bxt=Zl(({className:e,style:t,node:r,hasCheck:n=!1,checked:a,checkArea:o="node",hasJump:i=!1,selected:l,keywords:s,handleMore:c,handleRename:d,namesGetter:f,iconNameGetter:v,tooltipGetter:h,moreButtonMenuItems:g,onClick:_,onCheck:w,onJump:b,disabledCheck:y,tooltipProps:D={}})=>{const[F,S]=m.useState(!1),[I,C]=m.useState([]),[R,P]=m.useState(r.name),[O,N]=m.useState(a??!1),A=(Te.isFunction(g)?g(r):g)??[],z=M=>{d?.({id:r.id,name:M}).then(()=>{P(M)})},k=M=>h?.(M)??tn(gl,{children:[de("div",{children:M.name}),de("div",{children:at("FDI_Position_With_Colon")+M.position})]});return de("div",{style:t,className:ar(e,l&&"selected"),onClick:()=>{_?.(),o==="node"&&n&&(N(!O),w?.(!O))},children:tn("div",{className:"fdi-flex fdi-group",children:[n&&de(id,{disabled:y,className:"fdi-pt-xxs fdi-pr-xs",checked:a??O,onChange:()=>{o==="check"&&(N(!O),w?.(!O))}}),de("div",{className:"node-icon",children:de(Fa,{name:v?v(r):mq(!1,r),size:16})}),de(Xc,{...D,content:de("div",{children:k(r)}),children:tn("div",{className:"fdi-component-flex-w-fill-layout fdi-flex fdi-flex-col fdi-px-lg",children:[F?de(Iq,{className:"fdi-w-full",defaultValue:R,size:"small",onSave:M=>{S(!1),z(M)},onFocus:()=>{f?.(r).then(C)},checkError:M=>ow(M,I,Bl.NAME),validateHelp:M=>iw(M,I,Bl.NAME)}):de(Fq,{className:"fdi-catalog-search-title fdi-truncate",highlightClassName:"fdi-component-keyword-highlight",autoEscape:!0,textToHighlight:R,searchWords:s}),de("span",{className:"fdi-component-text-secondary fdi-truncate",children:r.position})]})}),A.length>0&&de(YC,{menu:{items:A,onAfterSelect:M=>{M.key===Xr.RENAME?S(!0):c?.(M.key,r)}},trigger:"click",children:de(jr,{className:"fdi-hidden group-hover:fdi-block",size:"small",type:"text-normal",icon:de(Fa,{name:"icon-more"}),onClick:M=>M.stopPropagation()})}),i&&de(jr,{className:"fdi-hidden group-hover:fdi-block",type:"text-normal",size:"small",icon:de(Fa,{name:"icon-enter"}),onClick:M=>{M.stopPropagation(),b?.()}})]})})}),yxt=[{label:"FDI_All",value:Yn.ALL},{label:"FDI_Table",value:Yn.TABLE},{label:"FDI_Folder",value:Yn.FOLDER},{label:"FDI_Indicator",value:Yn.INDICATOR},{label:"FDI_Dimension",value:Yn.DIMENSION},{label:"FDI_Business_Model",value:Yn.BUSINESS_MODEL}];function wxt(e){const t=[];let r=!1,n=0,a=0;return e.forEach(i=>{i.forEach(l=>{l.pageCount>0&&(t.push({key:"label",label:l.label}),l.nodes.forEach(s=>{t.push({key:l.value,node:s,nodeIndex:a++})}),n+=l.pageCount)})}),(Te.last(e)?.reduce((i,l)=>i+l.count,0)||0)!==n&&(r=!0),r&&t.push({key:"next"}),t}const jZ=({searchTypes:e,searchResults:t,showFilter:r=!0,onLoadData:n,keyword:a,refreshKey:o,searchNodeProps:i,emptyContent:l})=>{const[s,c]=m.useState(Yn.ALL),[d,f]=m.useState(1),v=m.useMemo(()=>wxt(t),[t]),[h,g]=m.useState(0);Vl(()=>{g(h+1)},[v]),m.useEffect(()=>{f(1)},[a,s,o]);const{loading:_}=wm(()=>n({keyword:a??"",pageIndex:d,searchType:s}),{refreshDeps:[a,d,s,o],loadingDelay:300});return tn("div",{className:"fdi-search-result fdi-list fdi-component-flex-col-layout fdi-pt-xs",children:[r&&tn(gl,{children:[de("div",{children:yxt.filter(({value:w})=>e.includes(w)).map(({value:w,label:b})=>de("span",{onClick:()=>c(w),children:de(frt,{className:ar("fdi-mr-md fdi-mt-md",s===w&&"fdi-component-active-tag"),shape:"roundedRec",children:at(b)})},w))}),de(kW,{direction:"horizontal",style:{marginTop:Tn.token.gap,marginBottom:Tn.token.gap}})]}),tn("div",{className:"fdi-component-flex-h-fill-layout fdi-relative fdi-flex fdi-flex-col fdi-items-stretch",children:[de(lw,{loading:d===1&&_}),!v.length&&l,de(kQe,{items:v,renderItem:w=>{const b={paddingRight:Tn.token.paddingXs,paddingLeft:Tn.token.paddingXs};switch(w.key){case"label":return r?de("div",{style:b,className:"fdi-component-text-secondary",children:at(w.label)}):de(gl,{});case"next":return de("div",{style:b,children:d!==1&&_?de("div",{style:{height:Tn.token.controlHeight},className:"fdi-relative",children:de(lw,{})}):de(jr,{style:{height:Tn.token.controlHeight,width:"100%"},type:"text",onClick:()=>{f(d+1)},children:at("FDI_Load_More")})});default:return de(bxt,{style:b,className:"fdi-component-list-item",node:w.node,keywords:[a??""],...i?.(w.node,w.nodeIndex,s)},w.node.id)}}},h)]})]})};function Dxt(e){const t=Object.prototype.toString.call(e);return t==="[object Window]"||t==="[object global]"}function Ixt(e){return"nodeType"in e}function Fxt(e){var t,r;return e?Dxt(e)?e:Ixt(e)&&(t=(r=e.ownerDocument)==null?void 0:r.defaultView)!=null?t:window:window}var UZ;(function(e){e.DragStart="dragStart",e.DragMove="dragMove",e.DragEnd="dragEnd",e.DragCancel="dragCancel",e.DragOver="dragOver",e.RegisterDroppable="registerDroppable",e.SetDroppableDisabled="setDroppableDisabled",e.UnregisterDroppable="unregisterDroppable"})(UZ||(UZ={}));const $xt=Object.freeze({x:0,y:0});function Sxt(e){if(e.startsWith("matrix3d(")){const t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}else if(e.startsWith("matrix(")){const t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function Ext(e,t,r){const n=Sxt(t);if(!n)return e;const{scaleX:a,scaleY:o,x:i,y:l}=n,s=e.left-i-(1-a)*parseFloat(r),c=e.top-l-(1-o)*parseFloat(r.slice(r.indexOf(" ")+1)),d=a?e.width/a:e.width,f=o?e.height/o:e.height;return{width:d,height:f,top:c,right:s+d,bottom:c+f,left:s}}const Cxt={ignoreTransform:!1};function HZ(e,t){t===void 0&&(t=Cxt);let r=e.getBoundingClientRect();if(t.ignoreTransform){const{transform:c,transformOrigin:d}=Fxt(e).getComputedStyle(e);c&&(r=Ext(r,c,d))}const{top:n,left:a,width:o,height:i,bottom:l,right:s}=r;return{top:n,left:a,width:o,height:i,bottom:l,right:s}}function WZ(e){return HZ(e,{ignoreTransform:!0})}var tv;(function(e){e[e.Forward=1]="Forward",e[e.Backward=-1]="Backward"})(tv||(tv={}));var VZ;(function(e){e.Click="click",e.DragStart="dragstart",e.Keydown="keydown",e.ContextMenu="contextmenu",e.Resize="resize",e.SelectionChange="selectionchange",e.VisibilityChange="visibilitychange"})(VZ||(VZ={}));var cl;(function(e){e.Space="Space",e.Down="ArrowDown",e.Right="ArrowRight",e.Left="ArrowLeft",e.Up="ArrowUp",e.Esc="Escape",e.Enter="Enter"})(cl||(cl={})),cl.Space,cl.Enter,cl.Esc,cl.Space,cl.Enter;var KZ;(function(e){e[e.RightClick=2]="RightClick"})(KZ||(KZ={}));var qZ;(function(e){e[e.Pointer=0]="Pointer",e[e.DraggableRect=1]="DraggableRect"})(qZ||(qZ={}));var YZ;(function(e){e[e.TreeOrder=0]="TreeOrder",e[e.ReversedTreeOrder=1]="ReversedTreeOrder"})(YZ||(YZ={})),tv.Backward+"",tv.Forward+"",tv.Backward+"",tv.Forward+"";var jR;(function(e){e[e.Always=0]="Always",e[e.BeforeDragging=1]="BeforeDragging",e[e.WhileDragging=2]="WhileDragging"})(jR||(jR={}));var UR;(function(e){e.Optimized="optimized"})(UR||(UR={})),jR.WhileDragging,UR.Optimized,{...$xt};var GZ;(function(e){e[e.Uninitialized=0]="Uninitialized",e[e.Initializing=1]="Initializing",e[e.Initialized=2]="Initialized"})(GZ||(GZ={})),cl.Down,cl.Right,cl.Up,cl.Left;var Txt=Object.defineProperty,Rxt=Object.getOwnPropertyDescriptor,Oxt=(e,t,r,n)=>{for(var a=n>1?void 0:n?Rxt(t,r):t,o=e.length-1,i;o>=0;o--)(i=e[o])&&(a=(n?i(t,r,a):i(a))||a);return n&&a&&Txt(t,r,a),a};class Axt{constructor(t=""){this.loading=!1,this.treeData=[],this.selectedKey="",this.refreshKey=0,this.refreshTreeKey=0,bZ(this),this.selectedKey=t}setTreeData(t){this.treeData=t}setSelectedKey(t){this.selectedKey=t}setRefreshKey(){this.refreshKey+=1}refreshSelectedKey(t){t===this.selectedKey&&this.setRefreshKey(),this.setSelectedKey(t)}setRefreshTreeKey(){this.refreshTreeKey+=1}get selectedNode(){return rl(this.selectedKey,this.treeData)}}Oxt([Bo],Axt.prototype,"selectedNode",1),m.createContext(null),m.createContext(null);const kxt=e=>e==null,XZ=e=>(...t)=>(Pxt(t[1]),e(...t)),ZZ=(e,t)=>{const{trigger:r}=e;return r||(["onClick","onChange"].find(o=>!kxt(t[o]))??"onClick")},QZ=(e,t)=>{if(!e)return;const r=ZZ(e,t),n=t[r];t[r]=(...a)=>{console.log("trigger:",ZZ(e,t)),console.log("payload:",e.payload),Tft.emit("trackPoint",e.payload),n?.(...a)}},Pxt=e=>{const t=e?.["data-track-point"];t&&(Array.isArray(t)?t.forEach(r=>QZ(r,e)):QZ(t,e))},{jsx:Nxt,jsxs:Mxt}=Xee,Ye=XZ(Nxt),zn=XZ(Mxt);var JZ,eQ=Kr;JZ=eQ.createRoot,eQ.hydrateRoot;const rqt="",nqt="",aqt="",oqt="",ul="v1";function tQ(){return tl.get(`api/dc/${ul}/folders`).then(e=>e.data)}function lD(e){return tl.get(`api/dc/${ul}/folders/tree/${e}`).then(t=>t.data)}function sD(e){return tl.post(`api/dc/${ul}/folders/${e.folderId}/structure`,e).then(t=>t.data)}function Lxt(e){return tl.post(`api/dc/${ul}/folders/table/search`,e).then(t=>t.data)}function zxt(e){return tl.post(`api/dc/${ul}/folders/field/search`,e).then(t=>t.data)}function Bxt(e){return tl.get(`api/dc/${ul}/tables/${e}/data`).then(t=>t.data)}function rQ(e){return tl.get(`api/dc/${ul}/model/${e}/structure`).then(t=>t.data)}function jxt(e){return tl.get(`api/dc/${ul}/tables/${e}/structure`).then(t=>t.data)}function Uxt(e){return tl.post(`api/dc/${ul}/sql/params`,e).then(t=>t.data)}function Hxt(e){return tl.post(`/api/dc/${ul}/preview/page`,e).then(t=>t.data)}async function Wxt(e){return tl.post(`/api/dc/${ul}/model/fields/structure`,e).then(t=>t.data)}var Ea=(e=>(e[e.TABLE=1]="TABLE",e[e.BUSINESS_MODEL=2]="BUSINESS_MODEL",e[e.DIMENSION_INDICATOR=3]="DIMENSION_INDICATOR",e))(Ea||{}),cD=(e=>(e[e.GROUP=1]="GROUP",e[e.DETAIL=2]="DETAIL",e))(cD||{}),Ql=(e=>(e.DIMENSION1="10000",e.TARGET1="30000",e))(Ql||{}),js=(e=>(e[e.SINGLE=1]="SINGLE",e[e.DOUBLE=2]="DOUBLE",e[e.GROUP=3]="GROUP",e))(js||{}),HR=(e=>(e[e.GROUP_BY_VALUE=1]="GROUP_BY_VALUE",e[e.GROUP_BY_CUSTOM=2]="GROUP_BY_CUSTOM",e[e.COUNT=3]="COUNT",e[e.RECORD_COUNT=4]="RECORD_COUNT",e[e.APPEND=5]="APPEND",e[e.RENAME=6]="RENAME",e[e.DELETE=7]="DELETE",e[e.APPROXIMATE_DISTINCT_COUNT=27]="APPROXIMATE_DISTINCT_COUNT",e[e.GROUP_FORMULA=40]="GROUP_FORMULA",e))(HR||{}),uD=(e=>(e[e.GROUP_BY_VALUE=1]="GROUP_BY_VALUE",e[e.CUSTOM_NUMBER_GROUP=2]="CUSTOM_NUMBER_GROUP",e[e.SUM=8]="SUM",e[e.AVG=9]="AVG",e[e.MEDIAN=10]="MEDIAN",e[e.MAX=11]="MAX",e[e.MIN=12]="MIN",e[e.STANDARD_DEVIATION=13]="STANDARD_DEVIATION",e[e.VARIANCE=14]="VARIANCE",e[e.COUNT=15]="COUNT",e[e.RECORD_COUNT=16]="RECORD_COUNT",e[e.NONE=17]="NONE",e[e.PERIOD=18]="PERIOD",e[e.RING=19]="RING",e[e.PERIOD_RATE=20]="PERIOD_RATE",e[e.RING_RATE=21]="RING_RATE",e[e.PERIOD_INCREMENT=36]="PERIOD_INCREMENT",e[e.RING_INCREMENT=37]="RING_INCREMENT",e[e.PERIOD_OR_RING=38]="PERIOD_OR_RING",e[e.YEAR=22]="YEAR",e[e.QUARTER=23]="QUARTER",e[e.MONTH=24]="MONTH",e[e.WEEK=25]="WEEK",e[e.WEEKDAY=26]="WEEKDAY",e[e.APPROXIMATE_DISTINCT_COUNT=33]="APPROXIMATE_DISTINCT_COUNT",e[e.RENAME=27]="RENAME",e[e.DELETE=28]="DELETE",e[e.GROUP_FORMULA=40]="GROUP_FORMULA",e))(uD||{}),WR=(e=>(e[e.DATE=5]="DATE",e[e.YEAR=6]="YEAR",e[e.QUARTER=7]="QUARTER",e[e.MONTH=8]="MONTH",e[e.WEEKDAY=9]="WEEKDAY",e[e.DAY=10]="DAY",e[e.MORE_GROUP=11]="MORE_GROUP",e[e.WEEK_COUNT=12]="WEEK_COUNT",e[e.HOUR=13]="HOUR",e[e.MINUTE=14]="MINUTE",e[e.SECOND=15]="SECOND",e[e.YQ=16]="YQ",e[e.YM=17]="YM",e[e.YW=18]="YW",e[e.YMDH=19]="YMDH",e[e.YMDHM=20]="YMDHM",e[e.YMDHMS=21]="YMDHMS",e[e.MONTH_DAY=48]="MONTH_DAY",e[e.COUNT=29]="COUNT",e[e.RECORD_COUNT=30]="RECORD_COUNT",e[e.ET=31]="ET",e[e.LT=32]="LT",e[e.APPROXIMATE_DISTINCT_COUNT=35]="APPROXIMATE_DISTINCT_COUNT",e[e.RANK=36]="RANK",e[e.ASC=37]="ASC",e[e.DESC=38]="DESC",e[e.RENAME=33]="RENAME",e[e.DELETE=34]="DELETE",e[e.GROUP_FORMULA=40]="GROUP_FORMULA",e))(WR||{}),Lt=(e=>(e.String="String",e.Integer="Integer",e.Double="Double",e.Date="Date",e.Boolean="Boolean",e.Formula="Formula",e.Parameter="Parameter",e.TableColumn="TableColumn",e))(Lt||{}),VR=(e=>(e[e.And=1]="And",e[e.Or=2]="Or",e[e.Leaf=0]="Leaf",e))(VR||{}),Us=(e=>(e[e.Sql=1]="Sql",e[e.Filter=2]="Filter",e))(Us||{}),Jt=(e=>(e[e.Equal=0]="Equal",e[e.NotEqual=1]="NotEqual",e[e.More=2]="More",e[e.MoreEqual=3]="MoreEqual",e[e.Less=4]="Less",e[e.LessEqual=5]="LessEqual",e[e.Beginning=6]="Beginning",e[e.BeginningNot=7]="BeginningNot",e[e.End=8]="End",e[e.EndNot=9]="EndNot",e[e.Include=10]="Include",e[e.NotInclude=11]="NotInclude",e[e.IncludeIn=12]="IncludeIn",e[e.NotIncludeIn=13]="NotIncludeIn",e))(Jt||{});const dD={RESOURCE_TYPE:96,FIELD_TYPE:96},Vxt=({selectedNode:e})=>{const[t,{width:r}]=Lp(),{data:n,loading:a}=wm(()=>Bxt(e.id),{ready:!Te.isNil(e)&&e.nodeType===et.DATA_TABLE,refreshDeps:[e]}),{data:o}=wm(()=>rQ(e.id),{ready:!Te.isNil(e)&&e.nodeType===et.BUSINESS_MODEL,refreshDeps:[e]}),i=()=>[{dataIndex:"resourceType",title:at("FDI_Resource_Type"),width:dD.RESOURCE_TYPE,render:l=>l===sr.DIMENSION?at("FDI_Dimension"):at("FDI_Indicator")},{dataIndex:"fieldType",title:at("FDI_Field_Type"),width:dD.FIELD_TYPE,render:l=>Ye(yd,{text:at(vq(l)),icon:{name:bd(l)}})},{dataIndex:"name",title:at("FDI_Field_Transfer_Name"),width:r-dD.RESOURCE_TYPE-dD.FIELD_TYPE-2}];return zn(gl,{children:[e?.nodeType===et.DATA_TABLE&&Ye(Rq,{className:"fdi-w-full fdi-h-full",tableData:n??{fields:[],data:[]}}),e?.nodeType===et.BUSINESS_MODEL&&Ye("div",{className:"fdi-w-full fdi-h-full",ref:t,children:Ye(Fg,{style:{width:"100%",height:"100%"},dataSource:o?.itemInfos??[],columns:i()})}),!e&&Ye(LT,{className:"fdi-w-full fdi-h-full",description:at("FDI_Please_Choose_Resource")}),Ye(lw,{loading:a})]})},fD={TYPE:96,OPERATE:42},Kxt=({checkedNodes:e,onCheck:t})=>{const[r,{width:n}]=Lp();return Ye("div",{className:"fdi-w-full fdi-h-full",ref:r,children:Ye(Fg,{style:{width:"100%",height:"100%"},dataSource:e,columns:(()=>[{dataIndex:"nodeType",title:at("FDI_Resource_Type"),width:fD.TYPE,render:o=>o===et.DIMENSION?at("FDI_Dimension"):at("FDI_Indicator")},{dataIndex:"_name",title:at("FDI_Field_Transfer_Name"),width:n-fD.OPERATE-fD.TYPE-2,render:(o,i)=>{const l=i.value;return Ye(yd,{text:i.name,icon:{name:bd(l.type)}})}},{dataIndex:"_operate",title:"",width:fD.OPERATE,render:(o,i)=>Ye(jr,{type:"text-normal",icon:Ye(Fa,{name:"icon-delete",onClick:()=>{t?.(e.filter(l=>l.id!==i.id))}})})}])()})})},qxt=({keyword:e,onSelect:t,onJump:r})=>{const[n,a]=m.useState([]),o=m.useMemo(()=>n.map(l=>Dq(l).map(s=>({...s,nodes:s.nodes}))),[n]),i=l=>(l.pageIndex===1&&a([]),Lxt(l).then(s=>{a(c=>[...c,s])}));return Ye(jZ,{searchTypes:[Yn.FOLDER,Yn.TABLE,Yn.BUSINESS_MODEL],keyword:e,showFilter:!1,searchResults:o,onLoadData:i,searchNodeProps:l=>{const s=ja(l.nodeType);return{hasJump:s,onClick:()=>{s?t?.(l):r?.(l)},onJump:()=>{r?.(l)}}}})},Yxt=({checkedKeys:e,keyword:t,onCheck:r,onJump:n})=>{const[a,o]=m.useState([]),i=m.useMemo(()=>a.map(s=>Dq(s).map(c=>({...c,nodes:c.nodes}))),[a]),l=s=>(s.pageIndex===1&&o([]),zxt(s).then(c=>{o(d=>[...d,c])}));return Ye(jZ,{searchTypes:[Yn.FOLDER,Yn.INDICATOR,Yn.DIMENSION],keyword:t,showFilter:!1,searchResults:i,onLoadData:l,searchNodeProps:s=>{const c=ja(s.nodeType);return{hasCheck:c,checked:e?.includes(s.id),hasJump:c,onCheck:d=>{r?.(d,s)},onClick:()=>{!c&&n?.(s)},onJump:()=>{n?.(s)}}}})},Gxt=({selectedNode:e,onSelect:t})=>{const[r,n]=m.useState([]),[a,o]=m.useState(""),[i,l]=m.useState(e?e.id:""),{onLoadData:s,expandedKeys:c,handleExpand:d,handleSelect:f,handleJump:v}=$X({selectedKey:i,setSelectedKey:l,treeData:r,updateTreeData:h=>n(PT(h)),getRootData:()=>tQ().then(nl),getNavigationDataById:(h,g)=>{const _=g??e;return ja(_.nodeType)?_.pId?lD(_.pId).then(w=>sD({folderId:_.pId,resourceTypes:[sr.TABLE,sr.BUSINESS_MODEL,sr.PACKAGE]}).then(b=>AT(_.pId,[nl(w)],()=>({...nl(b)}))[0])):Promise.resolve():lD(h).then(nl)},getChildrenDataById:h=>sD({folderId:h,resourceTypes:[sr.TABLE,sr.BUSINESS_MODEL,sr.PACKAGE]}).then(nl)});return Vl(()=>{const h=rl(i,r);h&&ja(h.nodeType)&&t?.(h)},[i]),zn("div",{className:"fdi-relative fdi-w-full fdi-h-full",children:[Ye(FX,{searchable:!0,selectable:!0,keyword:a,sourceData:r,onLoadData:s,selectedKeys:i?[i]:void 0,expandedKeys:c,onExpand:d,onSearch:o,onSelect:h=>{f(h[0])},fixTreeNodeFunc:h=>({selectable:ja(h.nodeType)})}),a&&Ye("div",{className:"fdi-absolute fdi-bg-neutral-light-0 fdi-top-[32px] fdi-left-0 fdi-right-0 fdi-bottom-0",children:Ye(qxt,{keyword:a,onSelect:h=>f(h.id,h),onJump:h=>{v(h.id,h),Te.delay(()=>{o("")},100)}})})]})},Xxt=({checkedNodes:e,onCheck:t})=>{const[r,n]=m.useState([]),[a,o]=m.useState(""),i=e.map(f=>f.id),{onLoadData:l,expandedKeys:s,handleExpand:c,handleJump:d}=$X({treeData:r,updateTreeData:f=>n(PT(f)),getRootData:()=>tQ().then(nl),getNavigationDataById:(f,v)=>ja(v.nodeType)?lD(v.pId).then(h=>sD({folderId:v.pId,resourceTypes:[sr.INDICATOR,sr.DIMENSION,sr.PACKAGE]}).then(g=>AT(v.pId,[nl(h)],()=>({...nl(g)}))[0])):lD(f).then(nl),getChildrenDataById:f=>sD({folderId:f,resourceTypes:[sr.INDICATOR,sr.DIMENSION,sr.PACKAGE]}).then(nl)});return zn("div",{className:"fdi-relative fdi-w-full fdi-h-full",children:[Ye(FX,{searchable:!0,selectable:!0,checkable:!0,keyword:a,checkPos:"middle",sourceData:r,onLoadData:l,expandedKeys:s,checkedKeys:i,onExpand:c,onSearch:o,onCheck:f=>{const v=f.map(h=>rl(h,r));t?.(v)},fixTreeNodeFunc:f=>({selectable:ja(f.nodeType),hasCheck:f.nodeType!==et.FOLDER})}),a&&Ye("div",{className:"fdi-absolute fdi-bg-neutral-light-0 fdi-top-[32px] fdi-left-0 fdi-right-0 fdi-bottom-0",children:Ye(Yxt,{checkedKeys:i,keyword:a,onCheck:(f,v)=>{const h=f?Te.uniq([...e,v]):e.filter(g=>g.id!==v.id);t?.(h)},onJump:f=>{d(f.id,f),Te.delay(()=>{o("")},100)}})})]})},Zxt=({data:e,onChange:t})=>{const[r,n]=m.useState(e?.type===Ea.DIMENSION_INDICATOR?"field":"table"),[a,o]=m.useState(e?.type===Ea.TABLE||e?.type===Ea.BUSINESS_MODEL?e.nodes[0]:void 0),[i,l]=m.useState(e?.type===Ea.DIMENSION_INDICATOR?e.nodes:[]);Vl(()=>{r==="table"?t?.(a?{type:a.nodeType===et.DATA_TABLE?Ea.TABLE:Ea.BUSINESS_MODEL,nodes:[a]}:void 0):i.length>0?t?.({type:Ea.DIMENSION_INDICATOR,nodes:i}):t?.(void 0)},[r,a,i]);const s=()=>zn(w1,{activeKey:r,onTabActive:n,className:"fdi-p-lg fdi-flex fdi-flex-col fdi-h-full",theme:"segment",children:[Ye(w1.Item,{tab:at("FDI_Table_And_Model"),className:"fdi-py-lg fdi-component-flex-h-fill-layout",children:Ye(Gxt,{selectedNode:a,onSelect:o})},"table"),Ye(w1.Item,{tab:at("FDI_Indicator_And_Dimension"),className:"fdi-py-lg fdi-component-flex-h-fill-layout",children:Ye(Xxt,{checkedNodes:i,onCheck:l})},"field")]}),c=()=>r==="table"?Ye(Vxt,{selectedNode:a}):Ye(Kxt,{checkedNodes:i,onCheck:l});return Ye("div",{className:"fdi-w-full fdi-h-full",children:Ye(lpt,{allowCollapse:!1,activeContent:s(),drivenContent:Ye("div",{className:"fdi-h-full fdi-p-lg fdi-relative",children:c()})})})},nQ=2147483647,aQ=-2147483648,Qxt={authority:!0,parameters:[]},oQ={[Lt.String]:"icon-edit-string",[Lt.Integer]:"icon-edit-integer",[Lt.Double]:"icon-edit-double",[Lt.Date]:"icon-edit-date",[Lt.Boolean]:"icon-edit-boolean",[Lt.Formula]:"icon-edit-formula",[Lt.Parameter]:"icon-edit-parameter"},Jxt={[Lt.String]:"STRING",[Lt.Integer]:"INT",[Lt.Double]:"DOUBLE",[Lt.Date]:"DATE",[Lt.Boolean]:"BOOLEAN",[Lt.Formula]:"FORMULA",[Lt.Parameter]:"PARAMETER"},iQ=[Lt.String,Lt.Integer,Lt.Double,Lt.Date,Lt.Boolean,Lt.Formula],ebt=[...iQ,Lt.Parameter],tbt={[Jt.Equal]:"EQUAL",[Jt.NotEqual]:"NOT_EQUAL",[Jt.More]:"MORE",[Jt.MoreEqual]:"MORE_EQUAL",[Jt.Less]:"LESS",[Jt.LessEqual]:"LESS_EQUAL",[Jt.Beginning]:"BEGINNING_IS",[Jt.BeginningNot]:"BEGINNING_IS_NOT",[Jt.End]:"END_IS",[Jt.EndNot]:"END_IS_NOT",[Jt.Include]:"INCLUDE",[Jt.NotInclude]:"NOT_INCLUDE",[Jt.IncludeIn]:"INCLUDE_IN",[Jt.NotIncludeIn]:"NOT_INCLUDE_IN"},rbt={[Gn.AND]:"ADD_FILTER_CONDITION_AND",[Gn.OR]:"ADD_FILTER_CONDITION_OR"},lQ={compare:Jt.Equal,valueType:Lt.String},nbt={[Us.Sql]:"icon-sql",[Us.Filter]:"icon-filter"},abt=[Jt.Equal,Jt.NotEqual,Jt.Beginning,Jt.BeginningNot,Jt.End,Jt.EndNot,Jt.Include,Jt.NotInclude,Jt.IncludeIn,Jt.NotIncludeIn],obt=[Jt.Equal,Jt.NotEqual,Jt.More,Jt.MoreEqual,Jt.Less,Jt.LessEqual,Jt.IncludeIn,Jt.NotIncludeIn],ibt=[Jt.Equal,Jt.NotEqual,Jt.More,Jt.Less],lbt={[Jt.Equal]:"EQUAL",[Jt.NotEqual]:"NOT_EQUAL",[Jt.More]:"AFTER_DATE",[Jt.Less]:"BEFORE_DATE"};function sbt(e,t){const r=Te.map(e,"name");return Oft(r,t.name)}function cbt(e,t,r){return{name:t,id:e.id,fieldType:e.fieldType,resourceType:e.resourceType,valid:!0,used:!0,value:r}}function ubt(e){return e===Ql.DIMENSION1}function sQ(e,t){const r=ubt(t);switch(e){case na.NUMBER:return r?[{type:js.SINGLE,value:uD.GROUP_BY_VALUE}]:[{type:js.SINGLE,value:uD.SUM},{type:js.SINGLE,value:uD.NONE}];case na.DATE:return r?[{type:js.SINGLE,value:WR.DATE}]:[{type:js.SINGLE,value:WR.COUNT}];default:return r?[{type:js.SINGLE,value:HR.GROUP_BY_VALUE}]:[{type:js.SINGLE,value:HR.COUNT}]}}var dbt=Object.defineProperty,fbt=Object.getOwnPropertyDescriptor,Jc=(e,t,r,n)=>{for(var a=n>1?void 0:n?fbt(t,r):t,o=e.length-1,i;o>=0;o--)(i=e[o])&&(a=(n?i(t,r,a):i(a))||a);return n&&a&&dbt(t,r,a),a};class Jl{constructor(){this.dsName="",this.originSourceInfo=void 0,this.engineType=el.SPIDER,this.fields=[],this.view={[Ql.DIMENSION1]:[],[Ql.TARGET1]:[]},this.dimensions={},this.filter={},this.parameters=[],this.originSqlParameters=[],bZ(this)}get source(){const t=[],r=[],n=[],a=[];return this.originSourceInfo?.nodes.forEach(o=>{switch(o.nodeType){case et.DATA_TABLE:t.push(o.id);break;case et.BUSINESS_MODEL:r.push(o.id);break;case et.INDICATOR:n.push(o.id);break;case et.DIMENSION:a.push(o.id);break}}),{engineType:this.engineType,type:this.originSourceInfo?.type??Ea.TABLE,tableNames:t,businessModelIds:r,indicatorIds:n,dimensionIds:a}}get queryView(){const t=this.view[Ql.DIMENSION1].concat(this.view[Ql.TARGET1]);return Te.isEmpty(t)?{type:cD.DETAIL,fields:this.fields}:{type:cD.GROUP,view:this.view,dimensions:this.dimensions}}get fieldsTypeMap(){const t={};return Te.each(this.fields,r=>{t[r.id]=r.fieldType}),t}get dateTypeInGroup(){return Te.filter(this.view[Ql.DIMENSION1],t=>this.dimensions[t]?.fieldType===na.DATE)??[]}get allDateGroupTypes(){const t=[],r=this.view[Ql.DIMENSION1],n=this.dimensions[this.dateTypeInGroup[0]];return Te.each(r,a=>{const o=this.dimensions[a];if(o?.fieldType!==na.DATE||o.id!==n?.id)return;const i=Te.first(o.value);i?.type===js.SINGLE?t.push(i.value):i?.childValue&&t.push(i.childValue)}),t}get firstDateDimensionName(){return this.dimensions[this.dateTypeInGroup[0]]?.name}get sqlParameters(){const t={};return this.parameters.forEach(r=>{if(r.group===Us.Sql){const n=this.originSqlParameters.find(a=>a.tableName===r.tableName).values.find(a=>a.name===r.name);t[r.name]={name:r.name,tableName:r.tableName,parameterType:n?.type??na.STRING,value:{value:r.value,type:r.type===Lt.Date?na.DATE:na.STRING}}}}),t}get dataChooseSaveInfo(){return{dsName:this.dsName,source:this.source,parameters:this.parameters,filter:this.filter,queryView:this.queryView}}setOriginSourceInfo(t){this.originSourceInfo=t}setOriginSqlParameters(t){this.originSqlParameters=t}setFields(t){this.fields=t}setDsName(t){this.dsName=t}setDimensions(t){this.dimensions=t}setView(t){this.view=t}setEngineType(t){this.engineType=t}setFilterCondition(t){this.filter=t}setParameters(t){this.parameters=t}reset(){this.engineType=el.SPIDER,this.fields=[],this.view={[Ql.DIMENSION1]:[],[Ql.TARGET1]:[]},this.dimensions={},this.filter={},this.parameters=[]}addDimension(t,r,n,a){this.dimensions={...this.dimensions,[t]:r},this.view={...this.view,[n]:[...this.view[n].slice(0,a),t,...this.view[n].slice(a)]}}setDimension(t,r){this.dimensions={...this.dimensions,[t]:{...this.dimensions[t],value:r}}}setDimensionName(t,r){this.dimensions={...this.dimensions,[t]:{...this.dimensions[t],name:r}}}setSortBySortInfo(t){const{regionTypes:r}=t,n=t.dimensions,{regionType:a}=t,o=Te.cloneDeep(this.dimensions),i=Te.cloneDeep(this.view);Te.each(r,(l,s)=>{if(l===a)return;const c=o[n[s]];c.value=sQ(c.fieldType,a)}),i[t.regionType]=n,this.dimensions=o,this.view=i}addDimensionByField(t,r,n){Te.each(t,(a,o)=>{const i=OV(),l=sbt(this.dimensions,a),s=sQ(a.fieldType,r);this.addDimension(i,cbt(a,l,s),r,n+o)})}deleteDimension(t){const r=Te.cloneDeep(this.dimensions),n=Te.cloneDeep(this.view);delete r[t],Te.each(n,(a,o)=>{const i=Te.findIndex(a,l=>l===t);i!==-1&&n[o].splice(i,1)}),this.dimensions=r,this.view=n}}Jc([Bo],Jl.prototype,"source",1),Jc([Bo],Jl.prototype,"queryView",1),Jc([Bo],Jl.prototype,"fieldsTypeMap",1),Jc([Bo],Jl.prototype,"dateTypeInGroup",1),Jc([Bo],Jl.prototype,"allDateGroupTypes",1),Jc([Bo],Jl.prototype,"firstDateDimensionName",1),Jc([Bo],Jl.prototype,"sqlParameters",1),Jc([Bo],Jl.prototype,"dataChooseSaveInfo",1);let KR=new Jl;const rv=()=>(KR||(KR=new Jl),KR);async function pbt(e){return new Promise(t=>{if(window.dcHelper?.parseFormulaParameters)return window.dcHelper.parseFormulaParameters(e,r=>{TV(r),t(JSON.parse(r))});t([])})}async function vbt(e){return new Promise(t=>{if(window.dcHelper?.transFilter4Query)return window.dcHelper.transFilter4Query(JSON.stringify(e),r=>{t(JSON.parse(r))});t({})})}async function cQ(e){return new Promise(t=>{if(window.dcHelper?.showFormulaPane)return window.dcHelper.showFormulaPane(e||"",(r,n)=>{t({action:r,content:n})});t({action:"OK",content:""})})}const zd=(e,t)=>{switch(e){case Lt.Parameter:case Lt.String:return typeof t=="string"?t:typeof t=="object"?void 0:t?.toString();case Lt.Integer:return isNaN(parseInt(t))?0:Te.clamp(parseInt(t),aQ,nQ);case Lt.Double:return isNaN(parseInt(t))?0:parseFloat(t);case Lt.Date:return typeof t=="number"&&Number.isInteger(t)?t:null;case Lt.Boolean:return!1;case Lt.Formula:return typeof t=="string"?t:typeof t!="object"&&t?t.toString():"";default:return t}},uQ=Zl(({value:{value:e,type:t},onChange:r,onValueChange:n,columns:a,isFilter:o})=>{const[i,l]=m.useState(!1),[s,c]=m.useState(e),d=h=>{r({type:t,value:h}),n?.(!0)},f=m.useMemo(()=>o?ebt:iQ,[o]),v=h=>{switch(h){case Lt.Parameter:case Lt.String:return Ye(Ss,{placeholder:at("FDI_Please_Input"),value:s,onChange:g=>{c(g)},onBlur:g=>{d(g)},onPressEnter:g=>{d(g.target.value)}});case Lt.Integer:return Ye("div",{className:"fdi-parameter-edit-number fdi-w-full",children:Ye(rC,{value:zd(Lt.Integer,s),onChange:g=>{c(g||0),d(zd(Lt.Integer,g||0))},precision:0,min:aQ,max:nQ})});case Lt.Double:return Ye("div",{className:"fdi-parameter-edit-number",children:Ye(rC,{value:zd(Lt.Double,s),onChange:g=>{c(g||0)},onBlur:g=>{d(zd(Lt.Double,g))},onPressEnter:g=>{d(zd(Lt.Double,g.target.value))}})});case Lt.Date:return Ye(pQe,{value:typeof e=="number"?Dn(e):null,format:"yyyy-MM-dd",onChange:g=>{g&&d(g?.valueOf())}});case Lt.Boolean:return Ye(id,{checked:typeof e=="boolean"?e:e==="true",onChange:(g,_)=>{d(_.target.checked)},children:e?.toString()});case Lt.Formula:return Ye(Ss,{onClick:()=>cQ(e||"").then(({action:g,content:_})=>{g==="OK"&&d(_)}),value:e,onChange:(g,_)=>{_.preventDefault()}});default:return zn("div",{children:[" ",e]})}};return zn("div",{className:ar("fdi-parameter-edit fdi-flex fdi-justify-start fdi-items-center fdi-flex-1 fdi-gap-sm",{"fdi-filter-condition-edit fdi-w-[240px] fdi-flex-none":o}),children:[Ye(b1,{visible:i,arrow:!1,trigger:"click",placement:"bottom-left",overlayClassName:"fdi-description-with-show-list-popover",onVisibleChange:h=>l(h),destroyTooltipOnHide:!0,content:Ye(ygt,{className:"fdi-parameter-value-type-list",reverseSelectable:!1,defaultActiveIndex:Te.findIndex(f,h=>h===t),dataSource:f.map(h=>({id:h,value:at(Jxt[h]),iconName:oQ[h]})),onClick:(h,g)=>{if(g===Lt.Formula){const _=zd(Lt.Formula,e);cQ(_).then(({action:w,content:b})=>{w==="OK"?(c(b),r({type:g,value:b}),n?.(!0)):(c(_),r({type:g,value:_}))})}else r({type:g,value:zd(g,e)});g!==t&&n?.(!0),l(!1)}}),children:zn("div",{className:ar("fdi-parameter-edit-icon fdi-flex fdi-leading-[28px] fdi-px-lg fdi-gap-sm fdi-component-list-item",{selected:i}),children:[Ye(Fa,{name:oQ[t]}),Ye(Fa,{name:"icon-down-arrow"})]})}),v(t)]})}),hbt=({columns:e,value:{value:t},onChange:r})=>{const n=typeof t=="object"?t:lQ,{column:a,compare:o,valueType:i,value:l}=n,s=c=>c===na.DATE?ibt:c===na.NUMBER?obt:abt;return zn("div",{className:"fdi-filter-condition-pane-item fdi-flex fdi-items-center fdi-gap-md fdi-w-full",children:[Ye(_C,{className:"fdi-filter-condition-pane-select fdi-w-[200px]",placeholder:at("PLEASE_SELECT_DATA_COLUMN"),value:a?.id,options:e.map(c=>{const{id:d,type:f}=c;return{value:d,label:Ye(yd,{text:hq(c),icon:{name:bd(f)}})}}),onChange:c=>{const d=Te.find(e,f=>f.id===c);r({...n,column:d,compare:Te.includes(s(d.type),o)?o:Jt.Equal})}}),Ye(_C,{className:"fdi-filter-condition-pane-select condition-types fdi-w-[120px]",placeholder:at("FDI_Please_Select"),value:o,options:s(a?.type).map(c=>({value:+c,label:at(a?.type===na.DATE?lbt[c]:tbt[c])})),onChange:c=>{r({...n,compare:c})}}),Ye(uQ,{isFilter:!0,columns:e,value:{type:i,value:l},onChange:c=>{r({...n,valueType:c.type,value:c.value})}})]})},iqt="",dQ=e=>e?.map(t=>{const{filterType:r,conditions:n,...a}=t;return{type:r===VR.Leaf?Gn.LEAF:r,value:{value:a},children:dQ(n)}}),fQ=e=>e?.map(t=>{const{type:r,value:n={},children:a}=t,o=typeof n=="object"?n.value:lQ;return{filterType:r||VR.Leaf,conditions:fQ(a),...o||{}}}),pQ=async(e,t,r)=>{const n=c=>Te.find(t,d=>d.name===c),a=c=>{!c||Te.isEmpty(c)||c.forEach(d=>{const f=n(d);e.push({name:d,type:f?.type||Lt.String,value:f?f.value:"",group:Us.Filter})})},o=[],i=r?.map(async c=>{const{conditions:d,value:f,valueType:v}=c;v===Lt.Parameter&&f&&a([f]),v===Lt.Formula&&f&&o.push(f),d?.length!==0&&await pQ(e,t,d)});await Promise.all(Te.compact(i));const l=o.map(async c=>await pbt(c));(await Promise.all(l)).forEach(c=>{a(c)})},gbt=Zl(({className:e,onChange:t})=>{const r=rv(),n=m.useRef(null),a=r.fields,o=m.useMemo(()=>{const{filter:l}=r;return!l||Te.isEmpty(l)?[]:dQ([l])},[r.filter,r.originSourceInfo]),i=async()=>{const l=n.current?.getTreeValue(),s=fQ(l),c=r.parameters.filter(f=>f.group===Us.Filter),d=r.parameters.filter(f=>f.group===Us.Sql);await pQ(d,c,s),s?.[0]&&r.setFilterCondition(s[0]),r.setParameters(d),t?.(!0)};return zn(PC,{className:ar("fdi-filter-condition-pane fdi-mb-xxl",e),direction:"vertical",size:4,children:[Ye("span",{className:"fdi-filter-condition-pane-head-text fdi-leading-[28px] fdi-font-600",children:at("FILTER_CONDITION")}),Ye(ift,{ref:n,className:"fdi-filter-condition-pane-content",defaultItems:o,operations:[[Gn.AND,Gn.OR].map(l=>({key:l,value:l,label:at(rbt[l])}))],itemRender:()=>Ye(hbt,{columns:a}),onChange:i})]})}),_bt=(e,t)=>{const r=Object.getOwnPropertyNames(e),n=m.useRef(),a={};Te.each(r,s=>{a[s]=Te.cloneDeep(e[s])});const o=OV(),i=BI.inherit(Fix.Model,{state(){return a},childContext:r});BI.model(o,i);const l=s=>()=>{m.useEffect(()=>{n.current&&Fix.set(n.current.store.model,s,Te.cloneDeep(e[s]))},[e[s]])};return r.forEach(s=>{l(s)()}),Ye(SX,{type:"fdi.fix.context",ref:n,_store:()=>BI.Models.getModel(o),children:{...t}})},mbt=Zl(({className:e})=>{const t=rv(),r=_bt(t,{type:"fdi.group.operator.regions",settingStore:t});return Ye("div",{className:ar(e,"fdi-data-group"),children:r})}),xbt=Zl(({className:e})=>{const t=rv(),[r,n]=m.useState([]),[a,o]=m.useState([]),[i,l]=m.useState({limit:L1,pageIndex:1,pageSize:tT,totalRows:0}),[s,c]=m.useState(!1);Vl(()=>{c(!0)},[t.queryView,t.filter,t.parameters]);const{runAsync:d}=wm(async f=>{l({...i,pageIndex:f?.pageIndex??1});const v=await vbt(t.dataChooseSaveInfo);return Hxt({queryView:t.queryView,source:t.source,limit:{rowCount:f?.limit??L1,pageInfo:{pageIndex:f?.pageIndex??1,pageSize:f?.pageSize??tT}},filter:v,parameters:t.sqlParameters})},{manual:!0,onSuccess:f=>{n(f.fields),o(f.data)}});return zn("div",{className:ar("fdi-data-preview fdi-flex fdi-flex-col",e),children:[zn("div",{className:"fdi-h-[32px] fdi-flex fdi-justify-between fdi-items-center",children:[Ye("div",{className:"fdi-component-title-sm",children:at("FDI_Data_Preview")}),zn("div",{children:[s&&Ye("span",{children:at("FDI_Data_Update_Please_Refresh")}),Ye(jr,{type:"text",icon:Ye(Fa,{name:"icon-refresh"}),onClick:()=>{d(),c(!1)},children:at("FDI_Refresh")})]})]}),Ye("div",{className:"fdi-component-flex-h-fill-layout",children:!Te.isNil(t.fields)&&!Te.isEmpty(t.fields)&&Ye(_gt,{hasSegment:!1,defaultActiveTab:IX.PREVIEW,editable:!1,emptyContent:Ye(LT,{description:at("BI-Conf_Calculate_Result_Is_Empty"),image:Ye(Fa,{size:130,name:"svg-empty_widget1"})}),fields:r,data:a,pageInfo:i,onLoadData:f=>d(f)})})]})}),bbt=Zl(({data:e,onChange:t,onValueChange:r})=>{const{name:n,value:a,type:o,group:i}=e;return zn(fg,{className:"fdi-parameter-table-column fdi-component-border-1 fdi-bg-neutral-light-0 fdi-rounded fdi-py-[6px]",gutter:16,children:[Ye(Hc,{span:12,children:Ye(yd,{className:"fdi-parameter-table-column-name fdi-leading-[28px]",text:n,icon:{name:nbt[i]}})}),Ye(Hc,{span:12,children:Ye(uQ,{onChange:l=>{t(l)},value:{value:a,type:o},onValueChange:l=>{r?.(l)}})})]})}),ybt=()=>({rowProps:{gutter:16},columns:[{name:at("PARAMETER_NAME"),colProps:{span:12}},{name:at("PARAMETER_VALUE"),colProps:{span:12}}]}),wbt=Zl(({parameters:e,onChange:t,onValueChange:r})=>Ye(gl,{children:e?.length>0?Ye(wgt,{className:"fdi-parameter-table fdi-component-border-1 fdi-pt-xs fdi-px-[16px] fdi-pb-lg",header:ybt(),content:Ye(PC,{direction:"vertical",size:6,children:e.map((n,a)=>{const{name:o,value:i}=n;return Ye(bbt,{data:n,onChange:l=>{t(e.map(s=>s.name===o?{...s,type:l.type,value:l.value}:s))},onValueChange:l=>{r(l)}},i+a)})})}):Ye(LT,{className:"fdi-parameter-table-empty fdi-bg-neutral-light-1 fdi-rounded fdi-component-border-1 fdi-h-[40px]",iconName:"",text:at("SEARCH_RESULT_NONE")})})),Dbt=Zl(({onChange:e})=>{const t=rv(),[r,n]=m.useState(Te.isEmpty(t.parameters)?Qxt:{authority:!0,parameters:t.parameters}),[a,o]=m.useState(0),i=s=>{const{parameters:c}=s;n(s),t.setParameters(c)},l=()=>{if(!Te.isEmpty(t.parameters))return Promise.resolve([]);const s=t.originSourceInfo?.nodes;return Te.isEmpty(s)||Te.isNil(s)?Promise.resolve([]):Uxt({items:s.map(c=>({id:c.id,resourceType:c.value.itemType}))}).then(c=>{t.setOriginSqlParameters(c);const d=[];return c.forEach(f=>{f.values?.forEach(v=>{let h;switch(v.type){case na.DATE:case na.DATE_TIME:h=Lt.Date;break;case na.NUMBER:h=Lt.Integer;break;case na.STRING:default:h=Lt.String;break}d.push({name:v.name,value:v.value,type:h,group:Us.Sql,tableName:f.tableName})})}),d})};return m.useEffect(()=>{l().then(s=>{const c=t.parameters?.filter(f=>f.group===Us.Filter)||[],d={...s,parameters:[...s,...c]};i(d),e?.(!1)})},[a]),zn(gl,{children:[zn("div",{className:"fdi-preview-head fdi-flex fdi-justify-between fdi-items-center fdi-leading-[28px]",children:[Ye("span",{className:"fdi-preview-head-title fdi-leading-sm",children:at("PARAMETER")}),Ye(jr,{type:"text",className:"fdi-preview-head-refresh fdi-text-brand-light-6 fdi-py-[3px] fdi-px-xl",onClick:()=>o(a+1),children:Ye(yd,{text:at("FDI_Refresh"),icon:{name:"icon-refresh"}})})]}),Ye("div",{className:"fdi-parameter-container fdi-mt-sm",children:Ye(wbt,{parameters:t.parameters,onChange:s=>{i({...r,parameters:s})},onValueChange:s=>{s&&e?.(!0)}},a)})]})}),Ibt=Zl(({data:e})=>{const t=rv();return m.useEffect(()=>{!window.dc&&(window.dc={}),window.dc.update=()=>JSON.stringify(t.dataChooseSaveInfo)},[t.dataChooseSaveInfo]),wm(()=>e.type===Ea.DIMENSION_INDICATOR?Promise.resolve(e.nodes.map(r=>({id:r.id,name:r.name,type:r.value.type,fieldType:r.value.type,resourceType:r.value.itemType}))):e.type===Ea.BUSINESS_MODEL?rQ(e.nodes[0].id).then(r=>r.itemInfos.map(n=>({...n,type:n.fieldType}))):jxt(e.nodes[0].id).then(r=>r.fields.map(n=>({id:n.id,name:n.name,type:n.type,fieldType:n.type,resourceType:sr.FIELD}))),{onSuccess:r=>{t.setFields(r),t.setEngineType(e.nodes[0].value.engineType??el.SPIDER)}}),zn("div",{className:"fdi-component-flex-col-layout fdi-p-lg fdi-gap-xl",children:[zn("div",{className:"fdi-flex fdi-items-center fdi-gap-xl",children:[Ye("div",{children:at("FDI_Name")}),Ye(Iq,{className:"fdi-component-flex-w-fill-layout",defaultValue:t.dsName,checkError:r=>ow(r,[],Bl.NAME),validateHelp:r=>iw(r,[],Bl.NAME),placeholder:at("FDI_Please_Input"),onSave:r=>{t.setDsName(r)}})]}),!Te.isNil(t.fields)&&Ye(gl,{children:zn("div",{className:"fdi-component-flex-h-fill-layout fdi-flex fdi-gap-xl",children:[Ye("div",{className:"fdi-w-[160px]",children:!Te.isEmpty(t.fields)&&Ye(SX,{type:"fdi.data.group.table.field",fields:Te.cloneDeep(t.fields)})}),zn("div",{className:"fdi-component-flex-w-fill-layout fdi-overflow-auto",children:[Ye(mbt,{className:"fdi-w-full fdi-h-[120px]"}),Ye(xbt,{className:"fdi-h-[420px]"}),Ye(gbt,{className:"fdi-w-full"}),Ye(Dbt,{})]})]})})]})}),Fbt=Zl(()=>{const e=rv(),t=["choose","processing"],[r,n]=m.useState(0),a=t[r],o=m.useRef(!1);sw(()=>{i()}),Vl(()=>{if(o.current){o.current=!1;return}e.reset()},[e.originSourceInfo]);const i=async()=>{const{data:s}=window.dc;if(s){const c=JSON.parse(s);if(e.setDsName(c.dsName??""),Te.isNil(c.source))return;e.setEngineType(c.source.engineType??el.SPIDER),e.setFilterCondition(c.filter??{}),e.setParameters(c.parameters??[]);const{queryView:d}=c;if(d.type===cD.DETAIL?e.setFields(d.fields??[]):(d.dimensions&&e.setDimensions(d.dimensions),d.view&&e.setView(d.view)),c.source.type===Ea.TABLE&&e.setOriginSourceInfo({type:Ea.TABLE,nodes:[{id:c.source.tableNames[0],nodeType:et.DATA_TABLE,engineType:c.source.engineType,value:{engineType:c.source.engineType,itemType:sr.TABLE}}]}),c.source.type===Ea.BUSINESS_MODEL&&e.setOriginSourceInfo({type:Ea.BUSINESS_MODEL,nodes:[{id:c.source.businessModelIds[0],nodeType:et.BUSINESS_MODEL,engineType:c.source.engineType,value:{engineType:c.source.engineType,itemType:sr.BUSINESS_MODEL}}]}),c.source.type===Ea.DIMENSION_INDICATOR){const{dimensionIds:f,indicatorIds:v}=c.source,g=(await Wxt({items:v.map(_=>({id:_,resourceType:sr.INDICATOR})).concat(f.map(_=>({id:_,resourceType:sr.DIMENSION})))})).itemInfos.map(_=>({id:_.id,name:_.name,nodeType:_.resourceType===sr.INDICATOR?et.INDICATOR:et.DIMENSION,engineType:c.source.engineType,value:{engineType:c.source.engineType,type:_.fieldType,itemType:_.resourceType}}));e.setOriginSourceInfo({type:Ea.DIMENSION_INDICATOR,nodes:g})}n(1),o.current=!0}};return zn("div",{className:"fdi-data-choose-page fdi-component-flex-col-layout",children:[Ye("div",{className:"fdi-component-flex-h-fill-layout",children:(()=>{switch(a){case"choose":return Ye(Zxt,{data:e.originSourceInfo,onChange:s=>{e.setOriginSourceInfo(s)}});case"processing":return Ye(Ibt,{data:e.originSourceInfo})}})()}),zn("div",{className:"fdi-flex fdi-justify-end fdi-gap-md fdi-p-lg",children:[Ye(jr,{size:"small",type:"negative",onClick:()=>{window.dcHelper.cancelAction()},children:at("FDI_Cancel")}),r{n(r+1)},children:at("FDI_Next_Step")}),r!==0&&Ye(jr,{size:"small",type:r===t.length-1?"normal":"primary",onClick:()=>{n(r-1)},children:at("FDI_Previous_Step")}),r===t.length-1&&Ye(jr,{disabled:Te.isEmpty(e.dsName)||Te.isNil(e.dsName),size:"small",type:"primary",onClick:()=>{window.dcHelper.okAction()},children:at("FDI_Finish")})]})]})});Fae(),wae(),(()=>{const e=document.getElementById("fdi-data-choose");e&&JZ(e).render(Ye(sft,{...bft(),children:Ye(Fbt,{})}))})()}); + */var pv=m;function i0t(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var l0t=typeof Object.is=="function"?Object.is:i0t,s0t=pv.useState,c0t=pv.useEffect,u0t=pv.useLayoutEffect,d0t=pv.useDebugValue;function f0t(e,t){var r=t(),n=s0t({inst:{value:r,getSnapshot:t}}),o=n[0].inst,a=n[1];return u0t(function(){o.value=r,o.getSnapshot=t,$R(o)&&a({inst:o})},[e,r,t]),c0t(function(){return $R(o)&&a({inst:o}),e(function(){$R(o)&&a({inst:o})})},[e]),d0t(r),r}function $R(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!l0t(e,r)}catch{return!0}}function p0t(e,t){return t()}var v0t=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?p0t:f0t;eJ.useSyncExternalStore=pv.useSyncExternalStore!==void 0?pv.useSyncExternalStore:v0t,function(e){e.exports=eJ}(a0t);function tJ(e){e.reaction=new RD("observer".concat(e.name),function(){var t;e.stateVersion=Symbol(),(t=e.onStoreChange)===null||t===void 0||t.call(e)})}function g0t(e,t){t===void 0&&(t="observed");var r=E.useRef(null);if(!r.current){var n={reaction:null,onStoreChange:null,stateVersion:Symbol(),name:t,subscribe:function(l){return IR.unregister(n),n.onStoreChange=l,n.reaction||(tJ(n),n.stateVersion=Symbol()),function(){var s;n.onStoreChange=null,(s=n.reaction)===null||s===void 0||s.dispose(),n.reaction=null}},getSnapshot:function(){return n.stateVersion}};r.current=n}var o=r.current;o.reaction||(tJ(o),IR.register(r,o,o)),E.useDebugValue(o.reaction,e0t),FR.useSyncExternalStore(o.subscribe,o.getSnapshot,o.getSnapshot);var a,i;if(o.reaction.track(function(){try{a=e()}catch(l){i=l}}),i)throw i;return a}var ER,SR,rJ=typeof Symbol=="function"&&Symbol.for,h0t=(SR=(ER=Object.getOwnPropertyDescriptor(function(){},"name"))===null||ER===void 0?void 0:ER.configurable)!==null&&SR!==void 0?SR:!1,nJ=rJ?Symbol.for("react.forward_ref"):typeof m.forwardRef=="function"&&m.forwardRef(function(e){return null}).$$typeof,oJ=rJ?Symbol.for("react.memo"):typeof m.memo=="function"&&m.memo(function(e){return null}).$$typeof;function os(e,t){var r;if(oJ&&e.$$typeof===oJ)throw new Error("[mobx-react-lite] You are trying to use `observer` on a function component wrapped in either another `observer` or `React.memo`. The observer already applies 'React.memo' for you.");var n=(r=t?.forwardRef)!==null&&r!==void 0?r:!1,o=e,a=e.displayName||e.name;if(nJ&&e.$$typeof===nJ&&(n=!0,o=e.render,typeof o!="function"))throw new Error("[mobx-react-lite] `render` property of ForwardRef was not a function");var i=function(l,s){return g0t(function(){return o(l,s)},a)};return i.displayName=e.displayName,h0t&&Object.defineProperty(i,"name",{value:e.name,writable:!0,configurable:!0}),e.contextTypes&&(i.contextTypes=e.contextTypes),n&&(i=m.forwardRef(i)),i=m.memo(i),m0t(e,i),i}var _0t={$$typeof:!0,render:!0,compare:!0,type:!0,displayName:!0};function m0t(e,t){Object.keys(e).forEach(function(r){_0t[r]||Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))})}var CR;Jbt(Kr.unstable_batchedUpdates),CR=IR.finalizeAllImmediately;const x0t=os(({className:e,style:t,node:r,hasCheck:n=!1,checked:o,checkArea:a="node",hasJump:i=!1,selected:l,keywords:s,handleMore:c,handleRename:d,namesGetter:f,icon:v,tooltipGetter:g,moreButtonMenuItems:h,onClick:_,onCheck:b,onJump:x,disabledCheck:w,tooltipProps:D={}})=>{const[I,$]=m.useState(!1),[F,C]=m.useState([]),[R,k]=m.useState(r.name),[P,U]=m.useState(o??!1),B=(De.isFunction(h)?h(r):h)??[],z=M=>{d?.({id:r.id,name:M}).then(()=>{k(M)})},A=M=>g?.(M)??$r(ua,{children:[se("div",{children:M.name}),se("div",{children:rt("FDI_Position_With_Colon")+M.position})]});return se("div",{style:t,className:Gt(e,l&&"selected"),onClick:()=>{_?.(),a==="node"&&n&&(U(!P),b?.(!P))},children:$r("div",{className:"fdi-flex fdi-group",children:[n&&se(hd,{disabled:w,className:"fdi-pt-xxs fdi-pr-xs",checked:o??P,onChange:()=>{a==="check"&&(U(!P),b?.(!P))}}),v??se(Rn,{name:Nw(!1,r),size:16}),se(Hs,{...D,content:se("div",{children:A(r)}),children:$r("div",{className:"fdi-component-flex-w-fill-layout fdi-flex fdi-flex-col fdi-px-lg",children:[I?se(T4,{className:"fdi-w-full",defaultValue:R,size:"small",onSave:M=>{$(!1),z(M)},onFocus:()=>{f?.(r).then(C)},checkError:M=>n_(M,F,Ii.NAME),validateHelp:M=>o_(M,F,Ii.NAME)}):se(F4,{className:"fdi-catalog-search-title fdi-truncate",highlightClassName:"fdi-component-keyword-highlight",autoEscape:!0,textToHighlight:R,searchWords:s}),se("span",{className:"fdi-component-text-secondary fdi-truncate",children:r.position})]})}),B.length>0&&se(Wh,{menu:{items:B,onAfterSelect:M=>{M.key===Wr.RENAME?$(!0):c?.(M.key,r)}},trigger:"click",children:se(Ar,{className:"fdi-hidden group-hover:fdi-block",size:"small",type:"text-normal",icon:se(Rn,{name:"icon-more"}),onClick:M=>M.stopPropagation()})}),i&&se(Ar,{className:"fdi-hidden group-hover:fdi-block",type:"text-normal",size:"small",icon:se(Rn,{name:"icon-enter"}),onClick:M=>{M.stopPropagation(),x?.()}})]})})}),b0t=[{label:"FDI_All",value:to.ALL},{label:"FDI_Table",value:to.TABLE},{label:"FDI_Folder",value:to.FOLDER},{label:"FDI_Indicator",value:to.INDICATOR},{label:"FDI_Dimension",value:to.DIMENSION},{label:"FDI_Business_Model",value:to.BUSINESS_MODEL}];function y0t(e){const t=[];let r=!1,n=0,o=0;return e.forEach(i=>{i.forEach(l=>{l.pageCount>0&&(t.push({key:"label",label:l.label}),l.nodes.forEach(s=>{t.push({key:l.value,node:s,nodeIndex:o++})}),n+=l.pageCount)})}),(De.last(e)?.reduce((i,l)=>i+l.count,0)||0)!==n&&(r=!0),r&&t.push({key:"next"}),t}const aJ=({searchTypes:e,searchResults:t,showFilter:r=!0,onLoadData:n,keyword:o,refreshKey:a,searchNodeProps:i,emptyContent:l})=>{const[s,c]=m.useState(to.ALL),[d,f]=m.useState(1),v=m.useMemo(()=>y0t(t),[t]),[g,h]=m.useState(0);Ei(()=>{h(g+1)},[v]),m.useEffect(()=>{f(1)},[o,s,a]);const{loading:_}=c_(()=>n({keyword:o??"",pageIndex:d,searchType:s}),{refreshDeps:[o,d,s,a],loadingDelay:300});return $r("div",{className:"fdi-search-result fdi-list fdi-component-flex-col-layout fdi-pt-xs",children:[r&&$r(ua,{children:[se("div",{children:b0t.filter(({value:b})=>e.includes(b)).map(({value:b,label:x})=>se("span",{onClick:()=>c(b),children:se(Qnt,{className:Gt("fdi-mr-md fdi-mt-md",s===b&&"fdi-component-active-tag"),shape:"roundedRec",children:rt(x)})},b))}),se(AV,{direction:"horizontal",style:{marginTop:_n.token.gap,marginBottom:_n.token.gap}})]}),$r("div",{className:"fdi-component-flex-h-fill-layout fdi-relative fdi-flex fdi-flex-col fdi-items-stretch",children:[se(Lw,{loading:d===1&&_}),!v.length&&l,se(QJe,{items:v,renderItem:b=>{const x={paddingRight:_n.token.paddingXs,paddingLeft:_n.token.paddingXs};switch(b.key){case"label":return r?se("div",{style:x,className:"fdi-component-text-secondary",children:rt(b.label)}):se(ua,{});case"next":return se("div",{style:x,children:d!==1&&_?se("div",{style:{height:_n.token.controlHeight},className:"fdi-relative",children:se(Lw,{})}):se(Ar,{style:{height:_n.token.controlHeight,width:"100%"},type:"text",onClick:()=>{f(d+1)},children:rt("FDI_Load_More")})});default:return se(x0t,{style:x,className:"fdi-component-list-item",node:b.node,keywords:[o??""],...i?.(b.node,b.nodeIndex,s)},b.node.id)}}},g)]})]})};function w0t(e){const t=Object.prototype.toString.call(e);return t==="[object Window]"||t==="[object global]"}function D0t(e){return"nodeType"in e}function I0t(e){var t,r;return e?w0t(e)?e:D0t(e)&&(t=(r=e.ownerDocument)==null?void 0:r.defaultView)!=null?t:window:window}var iJ;(function(e){e.DragStart="dragStart",e.DragMove="dragMove",e.DragEnd="dragEnd",e.DragCancel="dragCancel",e.DragOver="dragOver",e.RegisterDroppable="registerDroppable",e.SetDroppableDisabled="setDroppableDisabled",e.UnregisterDroppable="unregisterDroppable"})(iJ||(iJ={}));const F0t=Object.freeze({x:0,y:0});function $0t(e){if(e.startsWith("matrix3d(")){const t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}else if(e.startsWith("matrix(")){const t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function E0t(e,t,r){const n=$0t(t);if(!n)return e;const{scaleX:o,scaleY:a,x:i,y:l}=n,s=e.left-i-(1-o)*parseFloat(r),c=e.top-l-(1-a)*parseFloat(r.slice(r.indexOf(" ")+1)),d=o?e.width/o:e.width,f=a?e.height/a:e.height;return{width:d,height:f,top:c,right:s+d,bottom:c+f,left:s}}const S0t={ignoreTransform:!1};function lJ(e,t){t===void 0&&(t=S0t);let r=e.getBoundingClientRect();if(t.ignoreTransform){const{transform:c,transformOrigin:d}=I0t(e).getComputedStyle(e);c&&(r=E0t(r,c,d))}const{top:n,left:o,width:a,height:i,bottom:l,right:s}=r;return{top:n,left:o,width:a,height:i,bottom:l,right:s}}function sJ(e){return lJ(e,{ignoreTransform:!0})}var vv;(function(e){e[e.Forward=1]="Forward",e[e.Backward=-1]="Backward"})(vv||(vv={}));var cJ;(function(e){e.Click="click",e.DragStart="dragstart",e.Keydown="keydown",e.ContextMenu="contextmenu",e.Resize="resize",e.SelectionChange="selectionchange",e.VisibilityChange="visibilitychange"})(cJ||(cJ={}));var yl;(function(e){e.Space="Space",e.Down="ArrowDown",e.Right="ArrowRight",e.Left="ArrowLeft",e.Up="ArrowUp",e.Esc="Escape",e.Enter="Enter"})(yl||(yl={})),yl.Space,yl.Enter,yl.Esc,yl.Space,yl.Enter;var uJ;(function(e){e[e.RightClick=2]="RightClick"})(uJ||(uJ={}));var dJ;(function(e){e[e.Pointer=0]="Pointer",e[e.DraggableRect=1]="DraggableRect"})(dJ||(dJ={}));var fJ;(function(e){e[e.TreeOrder=0]="TreeOrder",e[e.ReversedTreeOrder=1]="ReversedTreeOrder"})(fJ||(fJ={})),vv.Backward+"",vv.Forward+"",vv.Backward+"",vv.Forward+"";var TR;(function(e){e[e.Always=0]="Always",e[e.BeforeDragging=1]="BeforeDragging",e[e.WhileDragging=2]="WhileDragging"})(TR||(TR={}));var RR;(function(e){e.Optimized="optimized"})(RR||(RR={})),TR.WhileDragging,RR.Optimized,{...F0t};var pJ;(function(e){e[e.Uninitialized=0]="Uninitialized",e[e.Initializing=1]="Initializing",e[e.Initialized=2]="Initialized"})(pJ||(pJ={})),yl.Down,yl.Right,yl.Up,yl.Left;var C0t=Object.defineProperty,T0t=Object.getOwnPropertyDescriptor,R0t=(e,t,r,n)=>{for(var o=n>1?void 0:n?T0t(t,r):t,a=e.length-1,i;a>=0;a--)(i=e[a])&&(o=(n?i(t,r,o):i(o))||o);return n&&o&&C0t(t,r,o),o};class O0t{constructor(t=""){this.loading=!1,this.treeData=[],this.selectedKey="",this.refreshKey=0,this.refreshTreeKey=0,zQ(this),this.selectedKey=t}setTreeData(t){this.treeData=t}setSelectedKey(t){this.selectedKey=t}setRefreshKey(){this.refreshKey+=1}refreshSelectedKey(t){t===this.selectedKey&&this.setRefreshKey(),this.setSelectedKey(t)}setRefreshTreeKey(){this.refreshTreeKey+=1}get selectedNode(){return Ha(this.selectedKey,this.treeData)}}R0t([Ka],O0t.prototype,"selectedNode",1),m.createContext(null),m.createContext(null);const A0t=e=>e==null,vJ=e=>(...t)=>(k0t(t[1]),e(...t)),gJ=(e,t)=>{const{trigger:r}=e;return r||(["onClick","onChange"].find(a=>!A0t(t[a]))??"onClick")},hJ=(e,t)=>{if(!e)return;const r=gJ(e,t),n=t[r];t[r]=(...o)=>{console.log("trigger:",gJ(e,t)),console.log("payload:",e.payload),Ivt.emit("trackPoint",e.payload),n?.(...o)}},k0t=e=>{const t=e?.["data-track-point"];t&&(Array.isArray(t)?t.forEach(r=>hJ(r,e)):hJ(t,e))},{jsx:P0t,jsxs:N0t}=lre,Ze=vJ(P0t),On=vJ(N0t);var _J,mJ=Kr;_J=mJ.createRoot,mJ.hydrateRoot;const lGt="",sGt="",cGt="",uGt="",Oi="v1";function xJ(){return Ua.get(`api/dc/${Oi}/folders`).then(e=>e.data)}function zD(e){return Ua.get(`api/dc/${Oi}/folders/tree/${e}`).then(t=>t.data)}function LD(e){return Ua.post(`api/dc/${Oi}/folders/${e.folderId}/structure`,e).then(t=>t.data)}function M0t(e){return Ua.post(`api/dc/${Oi}/folders/table/search`,e).then(t=>t.data)}function z0t(e){return Ua.post(`api/dc/${Oi}/folders/field/search`,e).then(t=>t.data)}function L0t(e){return Ua.get(`api/dc/${Oi}/tables/${e}/data`).then(t=>t.data)}function bJ(e){return Ua.get(`api/dc/${Oi}/model/${e}/structure`).then(t=>t.data)}function B0t(e){return Ua.get(`api/dc/${Oi}/tables/${e}/structure`).then(t=>t.data)}function j0t(e){return Ua.post(`api/dc/${Oi}/sql/params`,e).then(t=>t.data)}function U0t(e){return Ua.post(`/api/dc/${Oi}/preview/page`,e).then(t=>t.data)}async function H0t(e){return Ua.post(`/api/dc/${Oi}/model/fields/structure`,e).then(t=>t.data)}function W0t(e){return Ua.post(`/api/dc/${Oi}/model/field/relations`,e).then(t=>t.data)}var Do=(e=>(e[e.TABLE=1]="TABLE",e[e.BUSINESS_MODEL=2]="BUSINESS_MODEL",e[e.DIMENSION_INDICATOR=3]="DIMENSION_INDICATOR",e))(Do||{}),fx=(e=>(e[e.GROUP=1]="GROUP",e[e.DETAIL=2]="DETAIL",e))(fx||{}),as=(e=>(e.DIMENSION1="10000",e.TARGET1="30000",e))(as||{}),Qs=(e=>(e[e.SINGLE=1]="SINGLE",e[e.DOUBLE=2]="DOUBLE",e[e.GROUP=3]="GROUP",e))(Qs||{}),OR=(e=>(e[e.GROUP_BY_VALUE=1]="GROUP_BY_VALUE",e[e.GROUP_BY_CUSTOM=2]="GROUP_BY_CUSTOM",e[e.COUNT=3]="COUNT",e[e.RECORD_COUNT=4]="RECORD_COUNT",e[e.APPEND=5]="APPEND",e[e.RENAME=6]="RENAME",e[e.DELETE=7]="DELETE",e[e.APPROXIMATE_DISTINCT_COUNT=27]="APPROXIMATE_DISTINCT_COUNT",e[e.GROUP_FORMULA=40]="GROUP_FORMULA",e))(OR||{}),BD=(e=>(e[e.GROUP_BY_VALUE=1]="GROUP_BY_VALUE",e[e.CUSTOM_NUMBER_GROUP=2]="CUSTOM_NUMBER_GROUP",e[e.SUM=8]="SUM",e[e.AVG=9]="AVG",e[e.MEDIAN=10]="MEDIAN",e[e.MAX=11]="MAX",e[e.MIN=12]="MIN",e[e.STANDARD_DEVIATION=13]="STANDARD_DEVIATION",e[e.VARIANCE=14]="VARIANCE",e[e.COUNT=15]="COUNT",e[e.RECORD_COUNT=16]="RECORD_COUNT",e[e.NONE=17]="NONE",e[e.PERIOD=18]="PERIOD",e[e.RING=19]="RING",e[e.PERIOD_RATE=20]="PERIOD_RATE",e[e.RING_RATE=21]="RING_RATE",e[e.PERIOD_INCREMENT=36]="PERIOD_INCREMENT",e[e.RING_INCREMENT=37]="RING_INCREMENT",e[e.PERIOD_OR_RING=38]="PERIOD_OR_RING",e[e.YEAR=22]="YEAR",e[e.QUARTER=23]="QUARTER",e[e.MONTH=24]="MONTH",e[e.WEEK=25]="WEEK",e[e.WEEKDAY=26]="WEEKDAY",e[e.APPROXIMATE_DISTINCT_COUNT=33]="APPROXIMATE_DISTINCT_COUNT",e[e.RENAME=27]="RENAME",e[e.DELETE=28]="DELETE",e[e.GROUP_FORMULA=40]="GROUP_FORMULA",e))(BD||{}),AR=(e=>(e[e.DATE=5]="DATE",e[e.YEAR=6]="YEAR",e[e.QUARTER=7]="QUARTER",e[e.MONTH=8]="MONTH",e[e.WEEKDAY=9]="WEEKDAY",e[e.DAY=10]="DAY",e[e.MORE_GROUP=11]="MORE_GROUP",e[e.WEEK_COUNT=12]="WEEK_COUNT",e[e.HOUR=13]="HOUR",e[e.MINUTE=14]="MINUTE",e[e.SECOND=15]="SECOND",e[e.YQ=16]="YQ",e[e.YM=17]="YM",e[e.YW=18]="YW",e[e.YMDH=19]="YMDH",e[e.YMDHM=20]="YMDHM",e[e.YMDHMS=21]="YMDHMS",e[e.MONTH_DAY=48]="MONTH_DAY",e[e.COUNT=29]="COUNT",e[e.RECORD_COUNT=30]="RECORD_COUNT",e[e.ET=31]="ET",e[e.LT=32]="LT",e[e.APPROXIMATE_DISTINCT_COUNT=35]="APPROXIMATE_DISTINCT_COUNT",e[e.RANK=36]="RANK",e[e.ASC=37]="ASC",e[e.DESC=38]="DESC",e[e.RENAME=33]="RENAME",e[e.DELETE=34]="DELETE",e[e.GROUP_FORMULA=40]="GROUP_FORMULA",e))(AR||{}),Pt=(e=>(e.String="String",e.Integer="Integer",e.Double="Double",e.Date="Date",e.Boolean="Boolean",e.Formula="Formula",e.Parameter="Parameter",e.TableColumn="TableColumn",e))(Pt||{}),jD=(e=>(e[e.None=-1]="None",e[e.And=1]="And",e[e.Or=2]="Or",e[e.Leaf=0]="Leaf",e))(jD||{}),is=(e=>(e[e.Sql=1]="Sql",e[e.Filter=2]="Filter",e))(is||{}),rr=(e=>(e[e.Equal=0]="Equal",e[e.NotEqual=1]="NotEqual",e[e.More=2]="More",e[e.MoreEqual=3]="MoreEqual",e[e.Less=4]="Less",e[e.LessEqual=5]="LessEqual",e[e.Beginning=6]="Beginning",e[e.BeginningNot=7]="BeginningNot",e[e.End=8]="End",e[e.EndNot=9]="EndNot",e[e.Include=10]="Include",e[e.NotInclude=11]="NotInclude",e[e.IncludeIn=12]="IncludeIn",e[e.NotIncludeIn=13]="NotIncludeIn",e))(rr||{});const UD={RESOURCE_TYPE:96,FIELD_TYPE:96},V0t=({selectedNode:e})=>{const[t,{width:r}]=Ad(),{data:n,loading:o}=c_(()=>L0t(e.id),{ready:!De.isNil(e)&&e.nodeType===tt.DATA_TABLE,refreshDeps:[e]}),{data:a}=c_(()=>bJ(e.id),{ready:!De.isNil(e)&&e.nodeType===tt.BUSINESS_MODEL,refreshDeps:[e]}),i=()=>[{dataIndex:"resourceType",title:rt("FDI_Resource_Type"),width:UD.RESOURCE_TYPE,render:l=>l===fr.DIMENSION?rt("FDI_Dimension"):rt("FDI_Indicator")},{dataIndex:"fieldType",title:rt("FDI_Field_Type"),width:UD.FIELD_TYPE,render:l=>Ze(Pd,{text:rt(FY(l)),icon:{name:Rd(l)}})},{dataIndex:"name",title:rt("FDI_Field_Transfer_Name"),width:r-UD.RESOURCE_TYPE-UD.FIELD_TYPE-2}];return On(ua,{children:[e?.nodeType===tt.DATA_TABLE&&Ze(KY,{className:"fdi-w-full fdi-h-full",tableData:n??{fields:[],data:[]}}),e?.nodeType===tt.BUSINESS_MODEL&&Ze("div",{className:"fdi-w-full fdi-h-full",ref:t,children:Ze(Hh,{style:{width:"100%",height:"100%"},dataSource:a?.itemInfos??[],columns:i()})}),!e&&Ze(Jp,{className:"fdi-w-full fdi-h-full",description:rt("FDI_Please_Choose_Resource")}),Ze(Lw,{loading:o})]})},HD={TYPE:96,OPERATE:42},K0t=({checkedNodes:e,onCheck:t})=>{const[r,{width:n}]=Ad(),o=()=>[{dataIndex:"nodeType",title:rt("FDI_Resource_Type"),width:HD.TYPE,render:a=>a===tt.DIMENSION?rt("FDI_Dimension"):rt("FDI_Indicator")},{dataIndex:"_name",title:rt("FDI_Field_Transfer_Name"),width:n-HD.OPERATE-HD.TYPE-2,render:(a,i)=>{const l=i.value;return Ze(Pd,{text:i.name,icon:{name:Rd(l.type)}})}},{dataIndex:"_operate",title:"",width:HD.OPERATE,render:(a,i)=>Ze(Ar,{type:"text-normal",icon:Ze(Rn,{name:"icon-delete",onClick:()=>{t?.(e.filter(l=>l.id!==i.id))}})})}];return Ze("div",{className:"fdi-w-full fdi-h-full",ref:r,children:De.isEmpty(e)?Ze(Jp,{className:"fdi-w-full fdi-h-full",description:rt("FDI_Please_Choose_Resource")}):Ze(Hh,{style:{width:"100%",height:"100%"},dataSource:e,columns:o()})})},q0t=({keyword:e,onSelect:t,onJump:r})=>{const[n,o]=m.useState([]),a=m.useMemo(()=>n.map(l=>AY(l).map(s=>({...s,nodes:s.nodes}))),[n]),i=l=>(l.pageIndex===1&&o([]),M0t(l).then(s=>{o(c=>[...c,s])}));return Ze(aJ,{searchTypes:[to.FOLDER,to.TABLE,to.BUSINESS_MODEL],keyword:e,showFilter:!1,searchResults:a,onLoadData:i,searchNodeProps:l=>{const s=fo(l.nodeType);return{hasJump:s,onClick:()=>{s?t?.(l):r?.(l)},onJump:()=>{r?.(l)}}}})},Y0t=({checkedKeys:e,relationFieldIds:t,keyword:r,onCheck:n,onJump:o})=>{const[a,i]=m.useState([]),l=m.useMemo(()=>a.map(c=>AY(c).map(d=>({...d,nodes:d.nodes}))),[a]),s=c=>(c.pageIndex===1&&i([]),z0t(c).then(d=>{i(f=>[...f,d])}));return Ze(aJ,{searchTypes:[to.FOLDER,to.INDICATOR,to.DIMENSION],keyword:r,showFilter:!1,searchResults:l,onLoadData:s,searchNodeProps:c=>{const d=fo(c.nodeType);return{hasCheck:d,checked:e?.includes(c.id),disabledCheck:!De.isNil(t)&&!t.includes(c.id),hasJump:d,onCheck:f=>{n?.(f,c)},onClick:()=>{!d&&o?.(c)},onJump:()=>{o?.(c)}}}})},G0t=({selectedNode:e,onSelect:t})=>{const[r,n]=m.useState([]),[o,a]=m.useState(""),[i,l]=m.useState(e?e.id:""),s=[fr.TABLE,fr.BUSINESS_MODEL,fr.PACKAGE],{onLoadData:c,onLoad:d,loadedKeys:f,expandedKeys:v,handleExpand:g,handleSelect:h,handleJump:_,treeRef:b}=BY({selectedKey:i,setSelectedKey:l,treeData:r,updateTreeData:x=>n(y4(x)),getRootData:()=>xJ().then(gl),getNavigationDataById:(x,w)=>{const D=w??e;return fo(D.nodeType)?D.pId?zD(D.pId).then(I=>LD({folderId:D.pId,resourceTypes:s}).then($=>x4(D.pId,[gl(Od(I,s))],()=>({...gl(Od($,s))}))[0])):Promise.resolve():zD(x).then(I=>gl(Od(I,s)))},getChildrenDataById:x=>LD({folderId:x,resourceTypes:s}).then(gl)});return Ei(()=>{const x=Ha(i,r);x&&fo(x.nodeType)&&t?.(x)},[i]),On("div",{className:"fdi-relative fdi-w-full fdi-h-full",children:[Ze(LY,{virtual:!0,searchable:!0,selectable:!0,showRoot:!1,keyword:o,sourceData:r,ref:b,onLoadData:c,onLoad:d,loadedKeys:f,selectedKeys:i?[i]:void 0,expandedKeys:v,onExpand:g,onSearch:a,onSelect:x=>{h(x[0])},fixTreeNodeFunc:x=>({selectable:fo(x.nodeType)})}),o&&Ze("div",{className:"fdi-absolute fdi-bg-neutral-light-0 fdi-top-[32px] fdi-left-0 fdi-right-0 fdi-bottom-0",children:Ze(q0t,{keyword:o,onSelect:x=>h(x.id,x),onJump:x=>{_(x.id,x),De.delay(()=>{a("")},100)}})})]})},X0t=({checkedNodes:e,onCheck:t})=>{const[r,n]=m.useState([]),[o,a]=m.useState(""),i=e.map(D=>D.id),[l,s]=m.useState(),c=[fr.INDICATOR,fr.DIMENSION,fr.PACKAGE];m.useEffect(()=>{x(e)},[e]);const{onLoadData:d,expandedKeys:f,onLoad:v,loadedKeys:g,handleExpand:h,handleJump:_,treeRef:b}=BY({treeData:r,updateTreeData:D=>n(y4(D)),getRootData:()=>xJ().then(gl),getNavigationDataById:(D,I)=>fo(I.nodeType)?zD(I.pId).then($=>LD({folderId:I.pId,resourceTypes:c}).then(F=>x4(I.pId,[gl(Od($,c))],()=>({...gl(Od(F,c))}))[0])):zD(D).then($=>gl(Od($,c))),getChildrenDataById:D=>LD({folderId:D,resourceTypes:c}).then(gl)}),x=D=>{const I=D.slice().reverse().find($=>!$.value.constant);if(!I){s(void 0);return}De.isNil(l)&&W0t({id:I.id,resourceType:I.value.itemType}).then($=>{s(De.uniq($.map(F=>F.id)))})};return On("div",{className:"fdi-relative fdi-w-full fdi-h-full",children:[Ze(LY,{virtual:!0,searchable:!0,selectable:!0,checkable:!0,showRoot:!1,ref:b,keyword:o,checkPos:"middle",sourceData:r,onLoadData:d,onLoad:v,loadedKeys:g,expandedKeys:f,checkedKeys:i,disableCheckKeys:(()=>{if(!l)return[];const D=[];return Pw(r,I=>{l.includes(I.id)||I.value.constant||D.push(I.id)}),D})(),onExpand:h,onSearch:a,onCheck:D=>{const I=D.map($=>Ha($,r)??e.find(F=>F.id===$));t?.(I)},fixTreeNodeFunc:D=>({selectable:fo(D.nodeType),hasCheck:D.nodeType!==tt.FOLDER})}),o&&Ze("div",{className:"fdi-absolute fdi-bg-neutral-light-0 fdi-top-[32px] fdi-left-0 fdi-right-0 fdi-bottom-0",children:Ze(Y0t,{checkedKeys:i,relationFieldIds:l,keyword:o,onCheck:(D,I)=>{const $=D?De.uniq([...e,I]):e.filter(F=>F.id!==I.id);t?.($)},onJump:D=>{_(D.id,D),De.delay(()=>{a("")},100)}})})]})},Z0t=({className:e,data:t,onChange:r})=>{const[n,o]=m.useState(t?.type===Do.DIMENSION_INDICATOR?"field":"table"),[a,i]=m.useState(t?.type===Do.TABLE||t?.type===Do.BUSINESS_MODEL?t.nodes[0]:void 0),[l,s]=m.useState(t?.type===Do.DIMENSION_INDICATOR?t.nodes:[]);Ei(()=>{n==="table"?r?.(a?{type:a.nodeType===tt.DATA_TABLE?Do.TABLE:Do.BUSINESS_MODEL,nodes:[a]}:void 0):l.length>0?r?.({type:Do.DIMENSION_INDICATOR,nodes:l}):r?.(void 0)},[n,a,l]);const c=()=>On(tw,{activeKey:n,onTabActive:o,className:"fdi-p-lg fdi-flex fdi-flex-col fdi-h-full",theme:"segment",children:[Ze(tw.Item,{tab:rt("FDI_Table_And_Model"),className:"fdi-py-lg fdi-component-flex-h-fill-layout",children:Ze(G0t,{selectedNode:a,onSelect:i})},"table"),Ze(tw.Item,{tab:rt("FDI_Indicator_And_Dimension"),className:"fdi-py-lg fdi-component-flex-h-fill-layout",children:Ze(X0t,{checkedNodes:l,onCheck:s})},"field")]}),d=()=>n==="table"?Ze(V0t,{selectedNode:a}):Ze(K0t,{checkedNodes:l,onCheck:s});return Ze("div",{className:Gt("fdi-w-full fdi-h-full",e),children:Ze(Mgt,{allowCollapse:!1,activeContent:c(),drivenContent:Ze("div",{className:"fdi-h-full fdi-p-lg fdi-relative",children:d()})})})},yJ=2147483647,wJ=-2147483648,Q0t={parameters:[],mergeParameters:[]},DJ={[Pt.String]:"icon-edit-string",[Pt.Integer]:"icon-edit-integer",[Pt.Double]:"icon-edit-double",[Pt.Date]:"icon-edit-date",[Pt.Boolean]:"icon-edit-boolean",[Pt.Formula]:"icon-edit-formula",[Pt.Parameter]:"icon-edit-parameter"},J0t={[Pt.String]:"STRING",[Pt.Integer]:"INT",[Pt.Double]:"DOUBLE",[Pt.Date]:"DATE",[Pt.Boolean]:"BOOLEAN",[Pt.Formula]:"FORMULA",[Pt.Parameter]:"PARAMETER"},IJ=[Pt.String,Pt.Integer,Pt.Double,Pt.Date,Pt.Boolean,Pt.Formula],eyt=[...IJ,Pt.Parameter],tyt={[rr.Equal]:"EQUAL",[rr.NotEqual]:"NOT_EQUAL",[rr.More]:"MORE",[rr.MoreEqual]:"MORE_EQUAL",[rr.Less]:"LESS",[rr.LessEqual]:"LESS_EQUAL",[rr.Beginning]:"BEGINNING_IS",[rr.BeginningNot]:"BEGINNING_IS_NOT",[rr.End]:"END_IS",[rr.EndNot]:"END_IS_NOT",[rr.Include]:"INCLUDE",[rr.NotInclude]:"NOT_INCLUDE",[rr.IncludeIn]:"INCLUDE_IN",[rr.NotIncludeIn]:"NOT_INCLUDE_IN"},ryt={[no.AND]:"ADD_FILTER_CONDITION_AND",[no.OR]:"ADD_FILTER_CONDITION_OR"},kR={compare:rr.Equal,valueType:Pt.String};is.Sql+"",is.Filter+"";const nyt=[rr.Equal,rr.NotEqual,rr.Beginning,rr.BeginningNot,rr.End,rr.EndNot,rr.Include,rr.NotInclude,rr.IncludeIn,rr.NotIncludeIn],oyt=[rr.Equal,rr.NotEqual,rr.More,rr.MoreEqual,rr.Less,rr.LessEqual,rr.IncludeIn,rr.NotIncludeIn],ayt=[rr.Equal,rr.NotEqual,rr.More,rr.Less],iyt={[rr.Equal]:"EQUAL",[rr.NotEqual]:"NOT_EQUAL",[rr.More]:"AFTER_DATE",[rr.Less]:"BEFORE_DATE"};function lyt(e,t){const r=De.map(e,"name");return $vt(r,t.name)}function syt(e,t,r){return{name:t,id:e.id,fieldType:e.fieldType,resourceType:e.resourceType,valid:!0,used:!0,value:r}}function cyt(e){return e===as.DIMENSION1}function FJ(e,t){const r=cyt(t);switch(e){case uo.NUMBER:return r?[{type:Qs.SINGLE,value:BD.GROUP_BY_VALUE}]:[{type:Qs.SINGLE,value:BD.SUM},{type:Qs.SINGLE,value:BD.NONE}];case uo.DATE:return r?[{type:Qs.SINGLE,value:AR.DATE}]:[{type:Qs.SINGLE,value:AR.COUNT}];default:return r?[{type:Qs.SINGLE,value:OR.GROUP_BY_VALUE}]:[{type:Qs.SINGLE,value:OR.COUNT}]}}var uyt=Object.defineProperty,dyt=Object.getOwnPropertyDescriptor,lu=(e,t,r,n)=>{for(var o=n>1?void 0:n?dyt(t,r):t,a=e.length-1,i;a>=0;a--)(i=e[a])&&(o=(n?i(t,r,o):i(o))||o);return n&&o&&uyt(t,r,o),o};class ls{constructor(){this.dsNames=[],this.dsName="",this.originSourceInfo=void 0,this.engineType=vl.SPIDER,this.fields=[],this.view={[as.DIMENSION1]:[],[as.TARGET1]:[]},this.dimensions={},this.filter={},this.parameters=[],this.originSqlParameters=[],zQ(this)}get source(){const t=[],r=[],n=[],o=[];return this.originSourceInfo?.nodes.forEach(a=>{switch(a.nodeType){case tt.DATA_TABLE:t.push(a.id);break;case tt.BUSINESS_MODEL:r.push(a.id);break;case tt.INDICATOR:n.push(a.id);break;case tt.DIMENSION:o.push(a.id);break}}),{engineType:this.engineType,type:this.originSourceInfo?.type??Do.TABLE,tableNames:t,businessModelIds:r,indicatorIds:n,dimensionIds:o}}get queryView(){const t=this.view[as.DIMENSION1].concat(this.view[as.TARGET1]);return De.isEmpty(t)?{type:fx.DETAIL,fields:this.fields}:{type:fx.GROUP,view:this.view,dimensions:this.dimensions}}get fieldsTypeMap(){const t={};return De.each(this.fields,r=>{t[r.id]=r.fieldType}),t}get dateTypeInGroup(){return De.filter(this.view[as.DIMENSION1],t=>this.dimensions[t]?.fieldType===uo.DATE)??[]}get allDateGroupTypes(){const t=[],r=this.view[as.DIMENSION1],n=this.dimensions[this.dateTypeInGroup[0]];return De.each(r,o=>{const a=this.dimensions[o];if(a?.fieldType!==uo.DATE||a.id!==n?.id)return;const i=De.first(a.value);i?.type===Qs.SINGLE?t.push(i.value):i?.childValue&&t.push(i.childValue)}),t}get firstDateDimensionName(){return this.dimensions[this.dateTypeInGroup[0]]?.name}get sqlParameters(){const t={};return this.parameters.forEach(r=>{if(r.group===is.Sql){const n=this.originSqlParameters.find(o=>o.tableName===r.tableName)?.values.find(o=>o.name===r.name);t[r.name]={name:r.name,tableName:r.tableName,parameterType:n?.type??uo.STRING,value:{value:r.value,type:r.type===Pt.Date?uo.DATE:uo.STRING}}}}),t}get dataChooseSaveInfo(){return{dsName:this.dsName,source:this.source,parameters:this.parameters,filter:this.filter,queryView:this.queryView}}setOriginSourceInfo(t){this.originSourceInfo=t}setOriginSqlParameters(t){this.originSqlParameters=t}setFields(t){this.fields=t}setDsNames(t){this.dsNames=t}setDsName(t){this.dsName=t}setDimensions(t){this.dimensions=t}setView(t){this.view=t}setEngineType(t){this.engineType=t}setFilterCondition(t){t.filterType===jD.None?this.filter={}:this.filter=t}setParameters(t){const r=new Map,n=t.map(o=>{if(r.has(o.name)){const a=r.get(o.name);return{...o,value:a.value,type:a.type}}return r.set(o.name,o),o});this.parameters=n}reset(){this.engineType=vl.SPIDER,this.fields=[],this.view={[as.DIMENSION1]:[],[as.TARGET1]:[]},this.dimensions={},this.filter={},this.parameters=[]}addDimension(t,r,n,o){this.dimensions={...this.dimensions,[t]:r},this.view={...this.view,[n]:[...this.view[n].slice(0,o),t,...this.view[n].slice(o)]}}setDimension(t,r){this.dimensions={...this.dimensions,[t]:{...this.dimensions[t],value:r}}}setDimensionName(t,r){this.dimensions={...this.dimensions,[t]:{...this.dimensions[t],name:r}}}setSortBySortInfo(t){const{regionTypes:r}=t,n=t.dimensions,{regionType:o}=t,a=De.cloneDeep(this.dimensions),i=De.cloneDeep(this.view);De.each(r,(l,s)=>{if(l===o)return;const c=a[n[s]];c.value=FJ(c.fieldType,o)}),i[t.regionType]=n,this.dimensions=a,this.view=i}addDimensionByField(t,r,n){De.each(t,(o,a)=>{const i=RK(),l=lyt(this.dimensions,o),s=FJ(o.fieldType,r);this.addDimension(i,syt(o,l,s),r,n+a)})}deleteDimension(t){const r=De.cloneDeep(this.dimensions),n=De.cloneDeep(this.view);delete r[t],De.each(n,(o,a)=>{const i=De.findIndex(o,l=>l===t);i!==-1&&n[a].splice(i,1)}),this.dimensions=r,this.view=n}}lu([Ka],ls.prototype,"source",1),lu([Ka],ls.prototype,"queryView",1),lu([Ka],ls.prototype,"fieldsTypeMap",1),lu([Ka],ls.prototype,"dateTypeInGroup",1),lu([Ka],ls.prototype,"allDateGroupTypes",1),lu([Ka],ls.prototype,"firstDateDimensionName",1),lu([Ka],ls.prototype,"sqlParameters",1),lu([Ka],ls.prototype,"dataChooseSaveInfo",1);let PR=new ls;const gv=()=>(PR||(PR=new ls),PR);async function fyt(e){return new Promise(t=>{if(window.dcHelper?.parseFormulaParameters)return window.dcHelper.parseFormulaParameters(e,r=>{CK(r),t(JSON.parse(r))});t([])})}async function pyt(e){return new Promise(t=>{if(window.dcHelper?.transFilter4Query)return window.dcHelper.transFilter4Query(JSON.stringify(e),r=>{t(JSON.parse(r))});t({})})}async function $J(e){return new Promise(t=>{if(window.dcHelper?.showFormulaPane)return window.dcHelper.showFormulaPane(e||"",(r,n)=>{t({action:r,content:n})});t({action:"OK",content:""})})}const ss=(e,t)=>{switch(e){case Pt.Parameter:case Pt.String:return typeof t=="string"?t:typeof t=="object"?void 0:t?.toString();case Pt.Integer:return isNaN(parseInt(t))?0:De.clamp(parseInt(t),wJ,yJ);case Pt.Double:return isNaN(parseInt(t))?0:parseFloat(t);case Pt.Date:return typeof t=="number"&&Number.isInteger(t)?t:null;case Pt.Boolean:return!1;case Pt.Formula:return typeof t=="string"?t:typeof t!="object"&&t?t.toString():"";default:return t}},EJ=os(({value:{value:e,type:t},onChange:r,onValueChange:n,columns:o,isFilter:a})=>{const[i,l]=m.useState(!1),[s,c]=m.useState(e),d=g=>{r({type:t,value:g}),n?.(!0)},f=m.useMemo(()=>a?eyt:IJ,[a]),v=g=>{switch(g){case Pt.Parameter:case Pt.String:return Ze(jl,{placeholder:rt("FDI_Please_Input"),value:s,onChange:h=>{c(h)},onBlur:h=>{d(h)},onPressEnter:h=>{d(h.target.value)}});case Pt.Integer:return Ze("div",{className:"fdi-parameter-edit-number fdi-w-full",children:Ze(PC,{controlPosition:"right",value:ss(Pt.Integer,s),onChange:h=>{c(h||0)},onStep:h=>{d(ss(Pt.Integer,h||0))},onBlur:h=>{d(ss(Pt.Integer,h||0))},onPressEnter:h=>{d(ss(Pt.Integer,h.target.value||0))},precision:0,min:wJ,max:yJ})});case Pt.Double:return Ze("div",{className:"fdi-parameter-edit-number",children:Ze(PC,{controlPosition:"right",maxPrecision:20,value:ss(Pt.Double,s),onChange:h=>{c(h||0)},onStep:h=>{d(ss(Pt.Double,h))},onBlur:h=>{d(ss(Pt.Double,h))},onPressEnter:h=>{d(ss(Pt.Double,h.target.value))}})});case Pt.Date:return Ze(RJe,{value:typeof e=="number"?Tn(e):null,format:"yyyy-MM-dd",onAfterChange:h=>{h&&d(h?.valueOf())}});case Pt.Boolean:return Ze(hd,{checked:typeof e=="boolean"?e:e==="true",onChange:(h,_)=>{d(_.target.checked)},children:e?.toString()});case Pt.Formula:return Ze(jl,{onClick:()=>$J(e||"").then(({action:h,content:_})=>{h==="OK"&&d(_)}),value:e,onChange:(h,_)=>{_.preventDefault()}});default:return On("div",{children:[" ",e]})}};return On("div",{className:Gt("fdi-parameter-edit fdi-flex fdi-justify-start fdi-items-center fdi-flex-1 fdi-gap-sm",{"fdi-filter-condition-edit fdi-w-[240px] fdi-flex-none":a}),children:[Ze(J1,{visible:i,arrow:!1,trigger:"click",placement:"bottom-left",overlayClassName:"fdi-description-with-show-list-popover",onVisibleChange:g=>l(g),destroyTooltipOnHide:!0,content:Ze(nxt,{className:"fdi-parameter-value-type-list",reverseSelectable:!1,defaultActiveIndex:De.findIndex(f,g=>g===t),dataSource:f.map(g=>({id:g,value:rt(J0t[g]),iconName:DJ[g]})),onClick:(g,h)=>{if(h===Pt.Formula){const _=ss(Pt.Formula,e);$J(_).then(({action:b,content:x})=>{b==="OK"?(c(x),r({type:h,value:x}),n?.(!0)):(c(_),r({type:h,value:_}))})}else r({type:h,value:ss(h,e)});h!==t&&n?.(!0),l(!1)}}),children:On("div",{className:Gt("fdi-parameter-edit-icon fdi-flex fdi-leading-[28px] fdi-px-lg fdi-gap-sm fdi-component-list-item",{selected:i}),children:[Ze(Rn,{name:DJ[t]}),Ze(Rn,{name:"icon-down-arrow"})]})}),v(t)]})}),vyt=({columns:e,value:{value:t},onChange:r})=>{const n=typeof t=="object"?t:kR,{column:o,compare:a,valueType:i,value:l}=n,s=d=>d===uo.DATE?ayt:d===uo.NUMBER?oyt:nyt,c=d=>{r({value:d})};return On("div",{className:"fdi-filter-condition-pane-item fdi-flex fdi-items-center fdi-gap-md fdi-w-full",children:[Ze(QC,{className:"fdi-filter-condition-pane-select fdi-w-[200px]",placeholder:rt("PLEASE_SELECT_DATA_COLUMN"),value:o?.id,options:e.map(d=>{const{id:f,type:v}=d;return{value:f,label:Ze(Pd,{text:$Y(d),icon:{name:Rd(v)}})}}),onChange:d=>{const f=De.find(e,v=>v.id===d);c({...n,column:f,compare:De.includes(s(f.type),a)?a:rr.Equal})}}),Ze(QC,{className:"fdi-filter-condition-pane-select condition-types fdi-w-[120px]",placeholder:rt("FDI_Please_Select"),value:a,options:s(o?.type).map(d=>({value:+d,label:rt(o?.type===uo.DATE?iyt[d]:tyt[d])})),onChange:d=>{c({...n,compare:d})}}),Ze(EJ,{isFilter:!0,columns:e,value:{type:i,value:l},onChange:d=>{c({...n,valueType:d.type,value:d.value})}})]})},dGt="",SJ=e=>e?.map(t=>{const{filterType:r,conditions:n,...o}=t;return{type:r===jD.Leaf?no.LEAF:r,value:{value:o},children:SJ(n)}}),CJ=e=>e?.map(t=>{const{type:r,value:n={},children:o}=t,a=typeof n=="object"?n.value:kR;return{filterType:r||jD.Leaf,conditions:CJ(o),...a||{}}}),TJ=async(e,t,r)=>{const n=c=>De.find(t,d=>d.name===c),o=c=>{!c||De.isEmpty(c)||c.forEach(d=>{const f=n(d);e.push({name:d,type:f?.type||Pt.String,value:f?f.value:"",group:is.Filter})})},a=[],i=r?.map(async c=>{const{conditions:d,value:f,valueType:v}=c;v===Pt.Parameter&&f&&o([f]),v===Pt.Formula&&f&&a.push(f),d?.length!==0&&await TJ(e,t,d)});await Promise.all(De.compact(i));const l=a.map(async c=>await fyt(c));(await Promise.all(l)).forEach(c=>{o(c)})},gyt=os(({className:e,onChange:t})=>{const r=gv(),n=m.useRef(null),o=r.fields,a=m.useMemo(()=>{const{filter:l}=r;return!l||De.isEmpty(l)?[]:SJ([l])},[r.filter,r.originSourceInfo]),i=async()=>{const l=n.current?.getTreeValue(),s=CJ(l),c=r.parameters.filter(f=>f.group===is.Filter),d=r.parameters.filter(f=>f.group===is.Sql);await TJ(d,c,s),r.setFilterCondition(s?.[0]??{}),r.setParameters(d),t?.(!0)};return On(gT,{className:Gt("fdi-filter-condition-pane fdi-mb-xxl",e),direction:"vertical",size:4,children:[Ze("span",{className:"fdi-filter-condition-pane-head-text fdi-leading-[28px] fdi-font-600",children:rt("FILTER_CONDITION")}),Ze(nvt,{ref:n,className:"fdi-filter-condition-pane-content",defaultItems:a,operations:[[no.AND,no.OR].map(l=>({key:l,value:{value:kR},label:rt(ryt[l])}))],itemRender:()=>Ze(vyt,{columns:o}),onChange:i})]})}),hyt=(e,t)=>{const r=Object.getOwnPropertyNames(e),n=m.useRef(),o={};De.each(r,s=>{o[s]=De.cloneDeep(e[s])});const a=RK(),i=BI.inherit(Fix.Model,{state(){return o},childContext:r});BI.model(a,i);const l=s=>()=>{m.useEffect(()=>{n.current&&Fix.set(n.current.store.model,s,De.cloneDeep(e[s]))},[e[s]])};return r.forEach(s=>{l(s)()}),Ze(GZ,{type:"fdi.fix.context",ref:n,_store:()=>BI.Models.getModel(a),children:{...t}})},_yt=os(({className:e})=>{const t=gv(),r=hyt(t,{type:"fdi.group.operator.regions",settingStore:t});return Ze("div",{className:Gt(e,"fdi-data-group"),children:r})}),myt=os(({className:e})=>{const t=gv(),[r,n]=m.useState([]),[o,a]=m.useState([]),[i,l]=m.useState({limit:hw,pageIndex:1,pageSize:kT,totalRows:0}),[s,c]=m.useState(!1),d=t.source.type!==Do.TABLE&&t.queryView.type===fx.DETAIL;Ei(()=>{c(!0)},[t.queryView,t.filter,t.parameters]);const{runAsync:f}=c_(async v=>{if(d)return Promise.reject();l({...i,pageIndex:v?.pageIndex??1});const g=await pyt(t.dataChooseSaveInfo);return U0t({queryView:t.queryView,source:t.source,limit:{rowCount:v?.limit??hw,pageInfo:{pageIndex:v?.pageIndex??1,pageSize:v?.pageSize??kT}},filter:g,parameters:t.sqlParameters})},{manual:!0,onSuccess:v=>{n(v.fields),a(v.data),l(v.pageInfo)}});return On("div",{className:Gt("fdi-data-preview fdi-flex fdi-flex-col",e),children:[On("div",{className:"fdi-h-[32px] fdi-flex fdi-justify-between fdi-items-center",children:[Ze("div",{className:"fdi-component-title-sm",children:rt("FDI_Data_Preview")}),On("div",{children:[s&&Ze("span",{children:rt("FDI_Data_Update_Please_Refresh")}),Ze(Ar,{type:"text",icon:Ze(Rn,{name:"icon-refresh"}),onClick:()=>{f(),c(!1)},children:rt("FDI_Refresh")})]})]}),On("div",{className:"fdi-component-flex-h-fill-layout",children:[!d&&!De.isNil(t.fields)&&!De.isEmpty(t.fields)&&Ze(Jmt,{hasSegment:!1,defaultActiveTab:YZ.PREVIEW,editable:!1,emptyContent:Ze(Jp,{description:rt("FDI_Calculate_Result_Is_Empty"),image:Ze(Rn,{size:130,name:"svg-empty_widget1"})}),fields:r,data:o,pageInfo:i,onLoadData:v=>f(v)}),d&&Ze(Jp,{description:rt("FDI_Please_Set_Group_Config_Tip")})]})]})}),xyt=os(({data:e,onChange:t,onValueChange:r})=>{const{name:n,value:o,type:a}=e;return On(Ch,{className:"fdi-parameter-table-column fdi-component-border-1 fdi-bg-neutral-light-0 fdi-rounded fdi-py-[6px]",gutter:16,children:[Ze(Qc,{span:12,children:Ze(Pd,{className:"fdi-parameter-table-column-name fdi-leading-[28px]",text:n,icon:{name:"icon-filter"}})}),Ze(Qc,{span:12,children:Ze(EJ,{onChange:i=>{t(i)},value:{value:o,type:a},onValueChange:i=>{r?.(i)}})})]})}),byt=()=>({rowProps:{gutter:16},columns:[{name:rt("PARAMETER_NAME"),colProps:{span:12}},{name:rt("PARAMETER_VALUE"),colProps:{span:12}}]}),yyt=os(({parameterInfo:{parameters:e,mergeParameters:t},onChange:r,onValueChange:n})=>Ze(ua,{children:t?.length>0?Ze(oxt,{className:"fdi-parameter-table fdi-component-border-1 fdi-pt-xs fdi-px-[16px] fdi-pb-lg",header:byt(),content:Ze(gT,{direction:"vertical",size:6,children:t.map((o,a)=>{const{name:i,value:l}=o;return Ze(xyt,{data:o,onChange:s=>{r(e.map(c=>c.name===i?{...c,type:s.type,value:s.value}:c))},onValueChange:s=>{n(s)}},l+a)})})}):Ze(Jp,{className:"fdi-parameter-table-empty fdi-bg-neutral-light-1 fdi-rounded fdi-component-border-1 fdi-h-[40px]",iconName:"",text:rt("SEARCH_RESULT_NONE")})}));function NR(e){const t=De.uniqBy(e.map(r=>({name:r.name,value:r.value,type:r.type})),"name");return{parameters:e.map(r=>{const n=t.find(o=>o.name===r.name);return{...r,value:n.value,type:n.type}}),mergeParameters:t}}const wyt=os(({onChange:e})=>{const t=gv(),[r,n]=m.useState(De.isEmpty(t.parameters)?Q0t:NR(t.parameters)),[o,a]=m.useState(0),i=s=>{const{parameters:c}=s;n(s),t.setParameters(c)},l=()=>{if(!De.isEmpty(t.parameters)){const c=t.parameters?.filter(d=>d.group===is.Sql)||[];return Promise.resolve(c)}const s=t.originSourceInfo?.nodes;return De.isEmpty(s)||De.isNil(s)?Promise.resolve([]):j0t({items:s.map(c=>({id:c.id,resourceType:c.value.itemType}))}).then(c=>{t.setOriginSqlParameters(c);const d=[];return c.forEach(f=>{f.values?.forEach(v=>{let g;switch(v.type){case uo.DATE:case uo.DATE_TIME:g=Pt.Date;break;case uo.NUMBER:g=Pt.Integer;break;case uo.STRING:default:g=Pt.String;break}d.push({name:v.name,value:v.value,type:g,group:is.Sql,tableName:f.tableName})})}),d})};return m.useEffect(()=>{l().then(s=>{const c=t.parameters?.filter(f=>f.group===is.Filter)||[],d={...s,...NR([...s,...c])};i(d),e?.(!1)})},[o]),On(ua,{children:[On("div",{className:"fdi-preview-head fdi-flex fdi-justify-between fdi-items-center fdi-leading-[28px]",children:[Ze("span",{className:"fdi-preview-head-title fdi-leading-sm",children:rt("PARAMETER")}),Ze(Ar,{type:"text",className:"fdi-preview-head-refresh fdi-text-brand-light-6 fdi-py-[3px] fdi-px-xl",onClick:()=>a(o+1),children:Ze(Pd,{text:rt("FDI_Refresh"),icon:{name:"icon-refresh"}})})]}),Ze("div",{className:"fdi-parameter-container fdi-mt-sm",children:Ze(yyt,{parameterInfo:r,onChange:s=>{i({...r,...NR(s)})},onValueChange:s=>{s&&e?.(!0)}},o)})]})}),Dyt=os(({className:e,data:t,isEdit:r,onClickChangeButton:n})=>{const o=gv();return m.useEffect(()=>{!window.dc&&(window.dc={}),window.dc.update=()=>JSON.stringify(o.dataChooseSaveInfo)},[o.dataChooseSaveInfo]),c_(()=>t.type===Do.DIMENSION_INDICATOR?Promise.resolve(t.nodes.map(a=>({id:a.id,name:a.name,type:a.value.type,fieldType:a.value.type,resourceType:a.value.itemType}))):t.type===Do.BUSINESS_MODEL?bJ(t.nodes[0].id).then(a=>a.itemInfos.map(i=>({...i,type:i.fieldType}))):B0t(t.nodes[0].id).then(a=>a.fields.map(i=>({id:i.id,name:i.name,type:i.type,fieldType:i.type,resourceType:fr.FIELD}))),{onSuccess:a=>{o.setFields(a),o.setEngineType(t.nodes[0].value.engineType??vl.SPIDER)}}),On("div",{className:Gt("fdi-component-flex-col-layout fdi-p-lg fdi-gap-xl",e),children:[On("div",{className:"fdi-flex fdi-items-center fdi-gap-xl",children:[Ze("div",{children:rt("FDI_Name")}),Ze(T4,{className:"fdi-component-flex-w-fill-layout",defaultValue:o.dsName,checkError:a=>n_(a,o.dsNames,Ii.NAME),validateHelp:a=>o_(a,o.dsNames,Ii.NAME),placeholder:rt("FDI_Please_Input"),onSave:a=>{o.setDsName(a)}})]}),!De.isNil(o.fields)&&Ze(ua,{children:On("div",{className:"fdi-component-flex-h-fill-layout fdi-flex fdi-gap-xl",children:[Ze("div",{className:"fdi-w-[160px]",children:!De.isEmpty(o.fields)&&Ze(GZ,{type:"fdi.data.group.table.field",hasChange:r,fields:De.cloneDeep(o.fields),onClickChangeButton:n})}),On("div",{className:"fdi-component-flex-w-fill-layout fdi-overflow-auto",children:[Ze(_yt,{className:"fdi-w-full fdi-h-[120px]"}),Ze(myt,{className:"fdi-h-[420px]"}),Ze(gyt,{className:"fdi-w-full"}),Ze(wyt,{})]})]})})]})}),Iyt=os(()=>{const e=gv(),t=["choose","processing"],[r,n]=m.useState(0),[o,a]=m.useState(!1),i=t[r],[l,s]=m.useState({}),c=m.useRef(!1);a_(()=>{d()}),m.useEffect(()=>{const f=De.cloneDeep(l);De.forEach(f,(v,g)=>{f[g]=!1}),f[i]=!0,s(f)},[i]),Ei(()=>{if(c.current){c.current=!1;return}e.reset()},[e.originSourceInfo]);const d=async()=>{const{data:f,datasetNames:v=[]}=window.dc;if(f){const g=JSON.parse(f);if(e.setDsName(g.dsName??""),De.isNil(g.source)){e.setDsNames(v);return}e.setDsNames(v.filter(_=>_!==g.dsName)),a(!0),e.setEngineType(g.source.engineType??vl.SPIDER),e.setFilterCondition(g.filter??{}),e.setParameters(g.parameters??[]);const{queryView:h}=g;if(h.type===fx.DETAIL?e.setFields(h.fields??[]):(h.dimensions&&e.setDimensions(h.dimensions),h.view&&e.setView(h.view)),g.source.type===Do.TABLE&&e.setOriginSourceInfo({type:Do.TABLE,nodes:[{id:g.source.tableNames[0],nodeType:tt.DATA_TABLE,engineType:g.source.engineType,value:{engineType:g.source.engineType,itemType:fr.TABLE}}]}),g.source.type===Do.BUSINESS_MODEL&&e.setOriginSourceInfo({type:Do.BUSINESS_MODEL,nodes:[{id:g.source.businessModelIds[0],nodeType:tt.BUSINESS_MODEL,engineType:g.source.engineType,value:{engineType:g.source.engineType,itemType:fr.BUSINESS_MODEL}}]}),g.source.type===Do.DIMENSION_INDICATOR){const{dimensionIds:_,indicatorIds:b}=g.source,w=(await H0t({items:b.map(D=>({id:D,resourceType:fr.INDICATOR})).concat(_.map(D=>({id:D,resourceType:fr.DIMENSION})))})).itemInfos.map(D=>({id:D.id,name:D.name,nodeType:D.resourceType===fr.INDICATOR?tt.INDICATOR:tt.DIMENSION,engineType:g.source.engineType,value:{engineType:g.source.engineType,type:D.fieldType,itemType:D.resourceType}}));e.setOriginSourceInfo({type:Do.DIMENSION_INDICATOR,nodes:w})}n(1),c.current=!0}};return On("div",{className:"fdi-data-choose-page fdi-component-flex-col-layout",children:[On("div",{className:"fdi-component-flex-h-fill-layout",children:[!De.isNil(l.choose)&&Ze(Z0t,{className:l.choose?"":"fdi-hidden",data:e.originSourceInfo,onChange:f=>{e.setOriginSourceInfo(f)}}),i==="processing"&&Ze(Dyt,{isEdit:o,data:e.originSourceInfo,onClickChangeButton:()=>{e.setOriginSourceInfo(void 0),n(0),a(!1)}})]}),On("div",{className:"fdi-flex fdi-justify-end fdi-gap-md fdi-p-lg",children:[Ze(Ar,{size:"small",type:"negative",onClick:()=>{window.dcHelper.cancelAction()},children:rt("FDI_Cancel")}),r{n(r+1)},children:rt("FDI_Next_Step")}),r!==0&&!o&&Ze(Ar,{size:"small",type:r===t.length-1?"normal":"primary",onClick:()=>{n(r-1)},children:rt("FDI_Previous_Step")}),r===t.length-1&&Ze(Ar,{disabled:De.isEmpty(e.dsName)||De.isNil(e.dsName),size:"small",type:"primary",onClick:()=>{window.dcHelper.okAction()},children:rt("FDI_Finish")})]})]})}),Fyt=()=>{const e=document.getElementById("fdi-data-choose");e&&_J(e).render(Ze(avt,{...lvt(),children:Ze(Iyt,{})}))};(()=>{window.FDI=window.FDI||{},window.FDI.request=Ua})(),Nae(),Aae(),Fyt()}); -/*! time: 2024/8/19 11:20:20; branch: research/fbp-1.0 commit: e7217f506a */ -window.FineDataIntegrationJs=window.FineDataIntegrationJs||{},window.FineDataIntegrationJs.datachoose=function(e){var t={};function n(o){if(t[o])return t[o].exports;var a=t[o]={i:o,l:!1,exports:{}};return e[o].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)n.d(o,a,function(t){return e[t]}.bind(null,a));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=7)}([function(e,t){e.exports=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){"use strict";n.d(t,"e",(function(){return a})),n.d(t,"d",(function(){return i})),n.d(t,"f",(function(){return r})),n.d(t,"a",(function(){return s})),n.d(t,"c",(function(){return c})),n.d(t,"b",(function(){return l}));var o=BI.Decorators,a=o.shortcut,i=o.model,r=o.store,s=o.Model,c=o.mixins,l=o.mixin;o.provider},function(e,t,n){var o=n(4);e.exports=function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,o(e,t)},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t){function n(t,o){return e.exports=n=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},e.exports.__esModule=!0,e.exports.default=e.exports,n(t,o)}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){},,function(e,t,n){e.exports=n(19)},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){"use strict";n.r(t);n(5);var o,a,i,r,s=n(1),c=n.n(s),l=n(3),u=n.n(l),d=n(0),p=n.n(d),I=(n(8),n(2)),f=function(e){return e[e.NONE=0]="NONE",e[e.STRING=16]="STRING",e[e.NUMBER=32]="NUMBER",e[e.DATE=48]="DATE",e}({}),g=function(e){return e.SPIDER="spider",e.DIRECT="direct",e}({}),m=function(e){return e[e.CLICK=0]="CLICK",e[e.CONTROL_CLICK=1]="CONTROL_CLICK",e[e.SHIFT_CLICK=2]="SHIFT_CLICK",e}({}),h=function(e){return e.DIMENSION1="10000",e.DIMENSION2="20000",e.TARGET1="30000",e}({}),E=function(e){return e[e.EMPTY=0]="EMPTY",e[e.CONTENT=1]="CONTENT",e[e.LOADING=2]="LOADING",e}({}),B={STYLE:{AUTO:1,DIGIT:2,PERCENT:3},LEVEL:{NORMAL:1,TEN_THOUSAND:2,MILLION:3,BILLION:4,PERCENT:5,THOUSAND:6},DECIMAL:{NORMAL:-1,ZERO2POINT:0,ONE2POINT:1,TWO2POINT:2},DEFAULT_FORMAT_DECIMAL:2,DEMO_NUMBER:2e7},v=function(e){return e[e.DATA_CATALOG=1]="DATA_CATALOG",e[e.MODEL_CENTER=2]="MODEL_CENTER",e}({}),y=(p()(p()({},v.DATA_CATALOG,"FDI_Data_Catalog"),v.MODEL_CENTER,"FDI_Model_Center"),n(9),Object(I.e)()((a=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),a=0;a1&&(a=IntegrationI18n.getLocale("BI-Conf_Total")+r+IntegrationI18n.getLocale("BI-Conf_Number_Of_Fields"));var s=BI.createWidget(BI.h(y,{extraCls:"dimension-capsule-helper bi-capsule-border bi-field-drag-helper field-draggable bi-card ".concat(o.getFieldCls(t)),width:120,height:20,data:{fields:i},text:a,textAlign:"left"}));return BI.createWidget(BI.h(BI.DefaultLayout,{element:"body"},s)),s.element}}},n.getFieldCls=function(e){switch(e){case f.STRING:return"string-field-helper";case f.NUMBER:return"number-field-helper";case f.DATE:return"date-field-helper";default:return""}},n.mapItems=function(e){var t=this,n=BI.map(e,"value"),o=[];return BI.map(e,(function(e,a){var i=a.text;return BI.extend(a,{drag:t.createDrag(i,a.fieldType,a.value),listeners:[{eventName:x.EVENT.CHANGE,action:function(e,a){var i=t.getMouseHotKey(a),r=t.list.getValue();switch(i){case m.CLICK:o=[e],t.list.setValue(e);break;case m.CONTROL_CLICK:BI.remove(o,e),BI.contains(r,e)&&o.push(e);break;case m.SHIFT_CLICK:var s=BI.indexOf(n,BI.last(o)||0),c=BI.indexOf(n,e),l=BI.filter(n,(function(e){return e>=s&&e<=c||e>=c&&e<=s}));t.list.setValue(BI.concat(o,l))}}}]})}))},n.search=function(){var e=this.searcher.getValue();this.store.search(e)},n.getMouseHotKey=function(e){return null!=e&&e.ctrlKey||null!=e&&e.metaKey?m.CONTROL_CLICK:null!=e&&e.shiftKey?m.SHIFT_CLICK:m.CLICK},t}(BI.Widget),p()(L,"xtype","fdi.data.group.table.field"),R=L))||R)||R,D=Object(I.e)()((V=function(e){function t(){return e.apply(this,arguments)||this}return u()(t,e),t.prototype.render=function(){return BI.h(BI.AbsoluteLayout,null,BI.h("el",{top:0,right:0,bottom:0,left:0},this.options.children))},t}(BI.Widget),p()(V,"xtype","fdi.fix.context"),A=V))||A;n(10),n(11),n(12);function G(e,t){if(!BI.isNumeric(e))return e;var n=t,o={formatStyle:B.STYLE.AUTO,formatDecimal:B.DECIMAL.NORMAL,numLevel:B.LEVEL.NORMAL,numSeparators:!0,unit:""};BI.isNull(n)?n=o:BI.each(o,(function(e){BI.isNull(n[e])&&(n[e]=o[e])}));var a,i,r,s=parseFloat(e),c="";switch(n.formatStyle){case B.STYLE.AUTO:a=B.DECIMAL.NORMAL,i=n.numLevel,r=n.numSeparators;break;case B.STYLE.PERCENT:a=n.formatDecimal,i=B.LEVEL.PERCENT,r=n.numSeparators,c="%";break;case B.STYLE.DIGIT:default:a=n.formatDecimal,i=n.numLevel,r=n.numSeparators}s=BI.div(s,function(e){var t=1;switch(e){case B.LEVEL.THOUSAND:t=1e3;break;case B.LEVEL.TEN_THOUSAND:t=1e4;break;case B.LEVEL.MILLION:t=1e6;break;case B.LEVEL.BILLION:t=1e8;break;case B.LEVEL.PERCENT:t=.01;break;case B.LEVEL.NORMAL:default:t=1}return t}(i));var l="",u=-1,d="".concat(s);if((u=d.indexOf("e"))>-1||(u=d.indexOf("E"))>-1){l=d.slice(u);var p=BI.startWith(d,"-");d=d.slice(p?1:0,u);var I=parseInt(l.slice(1));if(I<0)for(l="",d=d.replace(".","");I++<0;)d=0===I?"0.".concat(d):"0".concat(d);p&&(d="-".concat(d))}var f=function(e,t){var n=t?"#,###.":"#0.",o=[];switch(e){case B.DECIMAL.NORMAL:return t?"#,###.##":"#.##";case B.DECIMAL.ZERO2POINT:return t?"#,###":"#0";default:for(var a=0;a-.01&&g<.01)return function(e){var t="".concat(e),n=BI.startWith(t,"-"),o=n?-1*e:e;if(t.indexOf("e")>-1||t.indexOf("E")>-1){var a="".concat(o),i="",r="";return a.indexOf("e")>-1&&(i=a.slice(0,a.indexOf("e")),r=a.slice(a.indexOf("e"))),a.indexOf("E")>-1&&(i=a.slice(0,a.indexOf("E")),r=a.slice(a.indexOf("E"))),(n?"-":"")+G(i,{})+r}if(0===o)return t;Math.log10=Math.log10||function(e){return Math.log(e)*Math.LOG10E};var s=Math.floor(Math.log10(o)),c=o*Math.pow(10,-s);return"".concat((n?"-":"")+G(c,{}),"e").concat(s)}(g);var m=BI.contentFormat(d,f);return n.formatStyle===B.STYLE.AUTO&&m.indexOf(".")>-1&&"0"===m[m.length-1]&&(m=m.substring(0,m.length-1)),"".concat(m).concat(l).concat(c)}function w(e,t){for(var n=BI.size(e),o=BI.size(t),a={},i=0;i=parseFloat(t.min):parseFloat(e.max)>parseFloat(t.min):""!==e.min&&""===e.max&&""!==t.min&&""!==t.max?e.closeMin&&t.closeMax?parseFloat(e.min)<=parseFloat(t.max):parseFloat(e.min)=parseFloat(t.min):parseFloat(e.max)>parseFloat(t.min):""===e.min&&""===e.max)}var k=function(e){return e[e.SINGLE=1]="SINGLE",e[e.DOUBLE=2]="DOUBLE",e[e.GROUP=3]="GROUP",e}({}),P=function(e){return e[e.AUTO=1]="AUTO",e[e.CUSTOM=2]="CUSTOM",e[e.CUSTOM_STRING=3]="CUSTOM_STRING",e}({}),H=function(e){return e[e.GROUP_BY_VALUE=1]="GROUP_BY_VALUE",e[e.GROUP_BY_CUSTOM=2]="GROUP_BY_CUSTOM",e[e.COUNT=3]="COUNT",e[e.RECORD_COUNT=4]="RECORD_COUNT",e[e.APPEND=5]="APPEND",e[e.RENAME=6]="RENAME",e[e.DELETE=7]="DELETE",e[e.APPROXIMATE_DISTINCT_COUNT=27]="APPROXIMATE_DISTINCT_COUNT",e[e.GROUP_FORMULA=40]="GROUP_FORMULA",e}({}),F=function(e){return e[e.GROUP_BY_VALUE=1]="GROUP_BY_VALUE",e[e.CUSTOM_NUMBER_GROUP=2]="CUSTOM_NUMBER_GROUP",e[e.SUM=8]="SUM",e[e.AVG=9]="AVG",e[e.MEDIAN=10]="MEDIAN",e[e.MAX=11]="MAX",e[e.MIN=12]="MIN",e[e.STANDARD_DEVIATION=13]="STANDARD_DEVIATION",e[e.VARIANCE=14]="VARIANCE",e[e.COUNT=15]="COUNT",e[e.RECORD_COUNT=16]="RECORD_COUNT",e[e.NONE=17]="NONE",e[e.PERIOD=18]="PERIOD",e[e.RING=19]="RING",e[e.PERIOD_RATE=20]="PERIOD_RATE",e[e.RING_RATE=21]="RING_RATE",e[e.PERIOD_INCREMENT=36]="PERIOD_INCREMENT",e[e.RING_INCREMENT=37]="RING_INCREMENT",e[e.PERIOD_OR_RING=38]="PERIOD_OR_RING",e[e.YEAR=22]="YEAR",e[e.QUARTER=23]="QUARTER",e[e.MONTH=24]="MONTH",e[e.WEEK=25]="WEEK",e[e.WEEKDAY=26]="WEEKDAY",e[e.APPROXIMATE_DISTINCT_COUNT=33]="APPROXIMATE_DISTINCT_COUNT",e[e.RENAME=27]="RENAME",e[e.DELETE=28]="DELETE",e[e.GROUP_FORMULA=40]="GROUP_FORMULA",e}({}),Y=function(e){return e[e.DATE=5]="DATE",e[e.YEAR=6]="YEAR",e[e.QUARTER=7]="QUARTER",e[e.MONTH=8]="MONTH",e[e.WEEKDAY=9]="WEEKDAY",e[e.DAY=10]="DAY",e[e.MORE_GROUP=11]="MORE_GROUP",e[e.WEEK_COUNT=12]="WEEK_COUNT",e[e.HOUR=13]="HOUR",e[e.MINUTE=14]="MINUTE",e[e.SECOND=15]="SECOND",e[e.YQ=16]="YQ",e[e.YM=17]="YM",e[e.YW=18]="YW",e[e.YMDH=19]="YMDH",e[e.YMDHM=20]="YMDHM",e[e.YMDHMS=21]="YMDHMS",e[e.MONTH_DAY=48]="MONTH_DAY",e[e.COUNT=29]="COUNT",e[e.RECORD_COUNT=30]="RECORD_COUNT",e[e.ET=31]="ET",e[e.LT=32]="LT",e[e.APPROXIMATE_DISTINCT_COUNT=35]="APPROXIMATE_DISTINCT_COUNT",e[e.RANK=36]="RANK",e[e.ASC=37]="ASC",e[e.DESC=38]="DESC",e[e.RENAME=33]="RENAME",e[e.DELETE=34]="DELETE",e[e.GROUP_FORMULA=40]="GROUP_FORMULA",e}({}),j=function(e){return e[e.GROUP=0]="GROUP",e[e.SUMMARY=1]="SUMMARY",e}({}),W={},K={};function q(){return W=p()(p()(p()({},f.STRING,[[{text:IntegrationI18n.getLocale("BI-Basic_Same_Value_A_Group"),value:H.GROUP_BY_VALUE,$testId:"bi-conf-pack-analysis-group-string-same",bubble:IntegrationI18n.getLocale("BI-Basic_Ensure_Group_By_Value"),cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Custom_Grouping_Dot"),$testId:"bi-conf-pack-analysis-group-string-custom",value:H.GROUP_BY_CUSTOM,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-group-string-rename",value:H.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-group-string-delete",value:H.DELETE,cls:"delete-font"}]]),f.NUMBER,[[{text:IntegrationI18n.getLocale("BI-Basic_Same_Value_A_Group"),$testId:"bi-conf-pack-analysis-analysis-number-group-by-value",value:F.GROUP_BY_VALUE,bubble:IntegrationI18n.getLocale("BI-Conf_Move_To_Same_Value_Info_Missing"),cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Grouping_Setting"),$testId:"bi-conf-pack-analysis-analysis-number-custom-number-group",value:F.CUSTOM_NUMBER_GROUP,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-number-rename",value:F.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-number-delete",value:F.DELETE,cls:"delete-font"}]]),f.DATE,[[{text:IntegrationI18n.getLocale("BI-Basic_YMD_Date"),$testId:"bi-conf-pack-analysis-group-date-tmd",value:Y.DATE,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Year_Week"),$testId:"bi-conf-pack-analysis-group-date-year-week",value:Y.YW,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Year_Month"),$testId:"bi-conf-pack-analysis-group-date-year-month",value:Y.YM,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Year_Quarter"),$testId:"bi-conf-pack-analysis-group-date-year-quarter",value:Y.YQ,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Multi_Date_Year"),value:Y.YEAR,$testId:"bi-conf-pack-analysis-group-date-year",cls:"dot-e-font"},{el:{text:IntegrationI18n.getLocale("BI-Basic_More_Group"),$testId:"bi-conf-pack-analysis-group-date-more-group",value:Y.MORE_GROUP,iconCls1:"dot-e-font"},children:[{text:IntegrationI18n.getLocale("BI-Basic_Quarter"),$testId:"bi-conf-pack-analysis-group-date-quarter",value:Y.QUARTER,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Month_Fen"),$testId:"bi-conf-pack-analysis-group-date-month",value:Y.MONTH,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Month_Day"),$testId:"bi-conf-pack-analysis-group-date-month-day",value:Y.MONTH_DAY,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Week_Count"),$testId:"bi-conf-pack-analysis-group-date-week-count",value:Y.WEEK_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Week_XingQi"),$testId:"bi-conf-pack-analysis-group-date-week",value:Y.WEEKDAY,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Date_Day"),$testId:"bi-conf-pack-analysis-group-date-day",value:Y.DAY,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Hour_Sin"),$testId:"bi-conf-pack-analysis-group-date-hour",value:Y.HOUR,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Minute"),$testId:"bi-conf-pack-analysis-group-date-minute",value:Y.MINUTE,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Seconds"),$testId:"bi-conf-pack-analysis-group-date-second",value:Y.SECOND,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_YMDH"),$testId:"bi-conf-pack-analysis-group-date-ymdh",value:Y.YMDH,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_YMDHM"),$testId:"bi-conf-pack-analysis-group-date-ymdhm",value:Y.YMDHM,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Detail_Date"),$testId:"bi-conf-pack-analysis-group-date-ymdhms",value:Y.YMDHMS,cls:"dot-e-font"}]}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),value:Y.RENAME,$testId:"bi-conf-pack-analysis-group-date-rename",cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),value:Y.DELETE,$testId:"bi-conf-pack-analysis-group-date-delete",cls:"delete-font"}]]),K=p()(p()(p()({},f.STRING,[[{text:IntegrationI18n.getLocale("BI-Basic_No_Repeat_Count"),$testId:"bi-conf-pack-analysis-analysis-string-count",value:H.COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Record_Count"),$testId:"bi-conf-pack-analysis-analysis-string-record-count",value:H.RECORD_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_String_Summary_By_Connection"),$testId:"bi-conf-pack-analysis-analysis-string-append",value:H.APPEND,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI_Add_Group_Condition"),value:H.GROUP_FORMULA,cls:"dimension-combo-summary-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-string-rename",value:H.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-string-delete",value:H.DELETE,cls:"delete-font"}]]),f.NUMBER,[[{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Sum"),$testId:"bi-conf-pack-analysis-analysis-number-sum",value:F.SUM,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Avg"),$testId:"bi-conf-pack-analysis-analysis-number-avg",value:F.AVG,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Median"),$testId:"bi-conf-pack-analysis-analysis-number-median",value:F.MEDIAN,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Max"),$testId:"bi-conf-pack-analysis-analysis-number-max",value:F.MAX,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Min"),$testId:"bi-conf-pack-analysis-analysis-number-min",value:F.MIN,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Standard_Deviation"),$testId:"bi-conf-pack-analysis-analysis-number-standard-deviation",value:F.STANDARD_DEVIATION,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Variance"),$testId:"bi-conf-pack-analysis-analysis-number-variance",value:F.VARIANCE,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_No_Repeat_Count"),$testId:"bi-conf-pack-analysis-analysis-number-count",value:F.COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Record_Count"),$testId:"bi-conf-pack-analysis-analysis-number-record-count",value:F.RECORD_COUNT,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_None"),$testId:"bi-conf-pack-analysis-analysis-number-none",value:F.NONE,cls:"dot-e-font"},{el:{text:"".concat(IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Period_Rate"),"/").concat(IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Ring_Rate")),value:F.PERIOD_OR_RING},children:[{el:{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Period"),$testId:"bi-conf-pack-analysis-analysis-number-same-period",value:F.PERIOD},children:Q()},{el:{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Period_Growth_Value"),value:F.PERIOD_INCREMENT},children:Q()},{el:{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Period_Growth_Rate"),$testId:"bi-conf-pack-analysis-analysis-number-period-rate",value:F.PERIOD_RATE},children:Q()},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Ring"),value:F.RING,$testId:"bi-conf-pack-analysis-analysis-number-same-ring",cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Ring_Growth_Value"),value:F.RING_INCREMENT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Ring_Growth_Rate"),$testId:"bi-conf-pack-analysis-analysis-number-ring-rate",value:F.RING_RATE,cls:"dot-e-font"}]}],[{text:IntegrationI18n.getLocale("BI_Add_Group_Condition"),value:F.GROUP_FORMULA,cls:"dimension-combo-summary-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-number-rename",value:F.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-number-delete",value:F.DELETE,cls:"delete-font"}]]),f.DATE,[[{text:IntegrationI18n.getLocale("BI-Basic_No_Repeat_Count"),$testId:"bi-conf-pack-analysis-analysis-date-count",value:Y.COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Record_Count"),$testId:"bi-conf-pack-analysis-analysis-date-record-count",value:Y.RECORD_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Earliest_Time"),$testId:"bi-conf-pack-analysis-analysis-date-et",value:Y.ET,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Latest_Time"),$testId:"bi-conf-pack-analysis-analysis-date-lt",value:Y.LT,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI_Add_Group_Condition"),value:Y.GROUP_FORMULA,cls:"dimension-combo-summary-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-date-rename",value:Y.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-date-delete",value:Y.DELETE,cls:"delete-font"}]]),[W,K]}function Q(){return[{text:IntegrationI18n.getLocale("BI-Basic_Multi_Date_Year"),$testId:"bi-conf-pack-analysis-analysis-number-year",value:F.YEAR,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Quarter"),$testId:"bi-conf-pack-analysis-analysis-number-quarter",value:F.QUARTER,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Multi_Date_Month"),$testId:"bi-conf-pack-analysis-analysis-number-month",value:F.MONTH,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Multi_Date_Week"),$testId:"bi-conf-pack-analysis-analysis-number-week",value:F.WEEK,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Week_XingQi"),$testId:"bi-conf-pack-analysis-analysis-number-weekday",value:F.WEEKDAY,cls:"dot-e-font"}]}p()(p()(p()({},f.STRING,p()(p()(p()({},H.GROUP_BY_VALUE,p()({},f.NUMBER,F.GROUP_BY_VALUE)),H.COUNT,p()(p()({},f.NUMBER,F.COUNT),f.DATE,Y.COUNT)),H.RECORD_COUNT,p()(p()({},f.NUMBER,F.RECORD_COUNT),f.DATE,Y.RECORD_COUNT))),f.NUMBER,p()(p()(p()({},F.GROUP_BY_VALUE,p()({},f.STRING,H.GROUP_BY_VALUE)),F.COUNT,p()(p()({},f.STRING,H.COUNT),f.DATE,Y.COUNT)),F.RECORD_COUNT,p()(p()({},f.STRING,H.RECORD_COUNT),f.DATE,Y.RECORD_COUNT))),f.DATE,p()(p()({},Y.COUNT,p()(p()({},f.STRING,H.COUNT),f.NUMBER,F.COUNT)),Y.RECORD_COUNT,p()(p()({},f.STRING,H.RECORD_COUNT),f.NUMBER,F.RECORD_COUNT)));var z="YEAR",X="MONTH",J="WEEK",Z="QUARTER",ee="DAY";function te(e,t){return BI.some(e,(function(e,n){return!BI.contains(t,n)}))}function ne(e,t){var n=!0;return BI.each(t,(function(t,o){n=n&&BI.contains(e,o)})),n}function oe(e,t){return BI.some(t,(function(t,n){return BI.contains(e,n)}))}function ae(e){return!te(BI.uniq(e),[Y.YW])}function ie(e){var t=BI.uniq(e);return!te(e,[Y.YQ,Y.YEAR,Y.QUARTER])&&(!!BI.contains(t,Y.YQ)||ne(t,[Y.YEAR,Y.QUARTER]))}function re(e){var t=BI.uniq(e);return ne(t,[Y.YW,Y.WEEKDAY])||ne(t,[Y.YEAR,Y.WEEK_COUNT,Y.WEEKDAY])}function se(e){return ae(e)||ie(e)||function(e){var t=BI.uniq(e);return!te(e,[Y.YQ,Y.YEAR,Y.QUARTER,Y.YM,Y.MONTH])&&(!!BI.contains(t,Y.YM)||oe(t,[Y.YEAR,Y.YQ])&&BI.contains(t,Y.MONTH))}(e)?[z]:oe(e,[Y.DAY,Y.DATE,Y.MONTH_DAY])?function(e){var t=BI.uniq(e);return ne(t,[Y.YM,Y.DAY])||ne(t,[Y.DATE])||ne(t,[Y.YEAR,Y.MONTH,Y.DAY])}(e)?[z,Z,X,J]:[]:re(e)?[z,J]:[]}function ce(e){return function(e){return!te(BI.uniq(e),[Y.YEAR])}(e)?[z]:ie(e)?[Z]:ae(e)?[J]:function(e){var t=BI.uniq(e);return!te(t,[Y.YEAR,Y.MONTH,Y.YQ,Y.YM,Y.QUARTER])&&(ne(t,[Y.YEAR,Y.MONTH,Y.QUARTER])||ne(t,[Y.YM,Y.QUARTER])||ne(t,[Y.YQ,Y.MONTH])||ne(t,[Y.YM])||ne(t,[Y.YEAR,Y.MONTH]))}(e)?[X]:oe(e,[Y.DATE,Y.YEAR,Y.YM,Y.YQ])&&oe(e,[Y.DATE,Y.YM,Y.MONTH])&&oe(e,[Y.DATE,Y.DAY])||re(e)?[ee]:[]}var le,ue,de={},pe={};function Ie(){return de[f.STRING]=[[{text:IntegrationI18n.getLocale("BI-Basic_Same_Value_A_Group"),value:H.GROUP_BY_VALUE,$testId:"bi-conf-pack-analysis-group-string-same",bubble:IntegrationI18n.getLocale("BI-Basic_Ensure_Group_By_Value"),cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Custom_Grouping_Dot"),$testId:"bi-conf-pack-analysis-group-string-custom",value:H.GROUP_BY_CUSTOM,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-group-string-rename",value:H.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-group-string-delete",value:H.DELETE,cls:"delete-font"}]],de[f.NUMBER]=[[{text:IntegrationI18n.getLocale("BI-Basic_Same_Value_A_Group"),$testId:"bi-conf-pack-analysis-analysis-number-group-by-value",value:F.GROUP_BY_VALUE,bubble:IntegrationI18n.getLocale("BI-Conf_Move_To_Same_Value_Info_Missing"),cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Grouping_Setting"),$testId:"bi-conf-pack-analysis-analysis-number-custom-number-group",value:F.CUSTOM_NUMBER_GROUP,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-number-rename",value:F.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-number-delete",value:F.DELETE,cls:"delete-font"}]],de[f.DATE]=[[{text:IntegrationI18n.getLocale("BI-Basic_YMD_Date"),$testId:"bi-conf-pack-analysis-group-date-tmd",value:Y.DATE,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Year_Week"),$testId:"bi-conf-pack-analysis-group-date-year-week",value:Y.YW,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Year_Month"),$testId:"bi-conf-pack-analysis-group-date-year-month",value:Y.YM,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Year_Quarter"),$testId:"bi-conf-pack-analysis-group-date-year-quarter",value:Y.YQ,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Multi_Date_Year"),value:Y.YEAR,$testId:"bi-conf-pack-analysis-group-date-year",cls:"dot-e-font"},{el:{text:IntegrationI18n.getLocale("BI-Basic_More_Group"),$testId:"bi-conf-pack-analysis-group-date-more-group",value:Y.MORE_GROUP,cls:"dot-e-font"},children:[{text:IntegrationI18n.getLocale("BI-Basic_Quarter"),$testId:"bi-conf-pack-analysis-group-date-quarter",value:Y.QUARTER,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Month_Fen"),$testId:"bi-conf-pack-analysis-group-date-month",value:Y.MONTH,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Month_Day"),$testId:"bi-conf-pack-analysis-group-date-month-day",value:Y.MONTH_DAY,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Week_Count"),$testId:"bi-conf-pack-analysis-group-date-week-count",value:Y.WEEK_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Week_XingQi"),$testId:"bi-conf-pack-analysis-group-date-week",value:Y.WEEKDAY,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Date_Day"),$testId:"bi-conf-pack-analysis-group-date-day",value:Y.DAY,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Hour_Sin"),$testId:"bi-conf-pack-analysis-group-date-hour",value:Y.HOUR,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Minute"),$testId:"bi-conf-pack-analysis-group-date-minute",value:Y.MINUTE,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Seconds"),$testId:"bi-conf-pack-analysis-group-date-second",value:Y.SECOND,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_YMDH"),$testId:"bi-conf-pack-analysis-group-date-ymdh",value:Y.YMDH,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_YMDHM"),$testId:"bi-conf-pack-analysis-group-date-ymdhm",value:Y.YMDHM,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Detail_Date"),$testId:"bi-conf-pack-analysis-group-date-ymdhms",value:Y.YMDHMS,cls:"dot-e-font"}]}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),value:Y.RENAME,$testId:"bi-conf-pack-analysis-group-date-rename",cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),value:Y.DELETE,$testId:"bi-conf-pack-analysis-group-date-delete",cls:"delete-font"}]],pe[f.STRING]=[[{text:IntegrationI18n.getLocale("BI-Basic_No_Repeat_Count"),$testId:"bi-conf-pack-analysis-analysis-string-count",value:H.COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Approximate_Distinct_Count"),$testId:"bi-conf-pack-analysis-analysis-string-distinct-count",value:H.APPROXIMATE_DISTINCT_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Record_Count"),$testId:"bi-conf-pack-analysis-analysis-string-record-count",value:H.RECORD_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_String_Summary_By_Connection"),$testId:"bi-conf-pack-analysis-analysis-string-append",value:H.APPEND,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI_Add_Group_Condition"),$testId:"bi-conf-pack-analysis-analysis-string-formula",value:H.GROUP_FORMULA,cls:"dimension-combo-summary-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-string-rename",value:H.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-string-delete",value:H.DELETE,cls:"delete-font"}]],pe[f.NUMBER]=[[{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Sum"),$testId:"bi-conf-pack-analysis-analysis-number-sum",value:F.SUM,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Avg"),$testId:"bi-conf-pack-analysis-analysis-number-avg",value:F.AVG,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Median"),$testId:"bi-conf-pack-analysis-analysis-number-median",value:F.MEDIAN,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Max"),$testId:"bi-conf-pack-analysis-analysis-number-max",value:F.MAX,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Min"),$testId:"bi-conf-pack-analysis-analysis-number-min",value:F.MIN,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Standard_Deviation"),$testId:"bi-conf-pack-analysis-analysis-number-standard-deviation",value:F.STANDARD_DEVIATION,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Variance"),$testId:"bi-conf-pack-analysis-analysis-number-variance",value:F.VARIANCE,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_No_Repeat_Count"),$testId:"bi-conf-pack-analysis-analysis-number-count",value:F.COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Approximate_Distinct_Count"),title:IntegrationI18n.getLocale("BI-Conf_Approximate_Distinct_Count_Tooltip"),$testId:"bi-conf-pack-analysis-analysis-number-distinct-count",value:F.APPROXIMATE_DISTINCT_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Record_Count"),$testId:"bi-conf-pack-analysis-analysis-number-record-count",value:F.RECORD_COUNT,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI_Add_Group_Condition"),$testId:"bi-conf-pack-analysis-analysis-number-group",value:F.GROUP_FORMULA,cls:"dimension-combo-summary-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-number-rename",value:F.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-number-delete",value:F.DELETE,cls:"delete-font"}]],pe[f.DATE]=[[{text:IntegrationI18n.getLocale("BI-Basic_No_Repeat_Count"),$testId:"bi-conf-pack-analysis-analysis-date-count",value:Y.COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Approximate_Distinct_Count"),$testId:"bi-conf-pack-analysis-analysis-date-distinct-count",value:Y.APPROXIMATE_DISTINCT_COUNT,title:IntegrationI18n.getLocale("BI-Conf_Approximate_Distinct_Count_Tooltip"),cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Record_Count"),$testId:"bi-conf-pack-analysis-analysis-date-record-count",value:Y.RECORD_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Earliest_Time"),$testId:"bi-conf-pack-analysis-analysis-date-et",value:Y.ET,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Latest_Time"),$testId:"bi-conf-pack-analysis-analysis-date-lt",value:Y.LT,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI_Add_Group_Condition"),$testId:"bi-conf-pack-analysis-analysis-date-formula",value:Y.GROUP_FORMULA,cls:"dimension-combo-summary-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-date-rename",value:Y.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-date-delete",value:Y.DELETE,cls:"delete-font"}]],[de,pe]}function fe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function ge(e){for(var t=1;t0},sameYearItems:function(){var e=BI.deepClone(t.comboList[j.SUMMARY][f.NUMBER]),n=[];return BI.some(e,(function(e,t){return BI.some(t,(function(e,t){var o;if((t.value||(null===(o=t.el)||void 0===o?void 0:o.value))===F.PERIOD_OR_RING)return n=t.children,!0}))})),BI.isEmptyArray(n)?[]:t.getItems(n,t.model.hasDateTypeInGroup,t.model.allDateGroupTypes,t.model.firstDateDimensionName)},listItems:function(){var e=t.options,n=e.handleType,o=e.fieldType,a=BI.deepClone(t.comboList[n][o]);if(t.model.labelValid){if(n!==j.SUMMARY||o!==f.NUMBER||!BI.isNotEmptyArray(t.model.sameYearItems))return a;var i=BI.deepClone(t.model.sameYearItems),r=BI.some(t.model.fields,(function(e,t){return t.type===f.DATE})),s=BI.every(i,(function(e,t){return BI.has(t,"el")?t.el.disabled:t.disabled}));return BI.some(a,(function(e,n){return BI.some(n,(function(e,n){if((n.value||n.el.value)===F.PERIOD_OR_RING)return n.children=i,n.el.disabled=s,n.el.iconCls1=s?"":"dot-e-font",n.el.warningTitle=function(){return r?t.model.hasDateTypeInGroup?IntegrationI18n.getLocale("BI-Basic_Calculate_{R1}_is_Not_Supported_To_Calculate_{R2}",t.model.firstDateDimensionName,n.el.text):IntegrationI18n.getLocale("BI-Basic_Calculate_Group_Is_Missing_Date_Fields"):IntegrationI18n.getLocale("BI-Basic_Calculate_To_Be_Analyzed_Area_Is_Missing_Date_Fields")},!0}))})),a}return BI.each(a,(function(e,t){BI.each(t,(function(n,o){e===BI.size(a)-1&&n===BI.size(t)-1||(BI.has(o,"el")?o.el.disabled=!0:o.disabled=!0)}))})),a}}),p()(c()(t),"actions",{checkPeriodValid:function(){var e=t.options,n=e.handleType,o=e.fieldType,a=t.model.sameYearItems;if(t.model.labelValid&&n===j.SUMMARY&&o===f.NUMBER){var i=!1,r=BI.deepClone(t.model.selectedValue),s=r&&r[1];if(!BI.contains(Ue,BI.get(s,"value")))return void(t.model.numberPeriodError=i);var c={};BI.each(a,(function(e,t){BI.has(t,"el")?c[t.el.value]=!t.el.disabled:c[t.value]=!t.disabled}));var l=c[s.value];l&&BI.has(s,"childValue")&&(l=BI.contains(BI.map(a[0].children,"value"),s.childValue)),l||(i=!0),t.model.numberPeriodError=i}}}),t}u()(t,e);var n=t.prototype;return n.init=function(){this.comboList=this.model.engineType===g.SPIDER?q():Ie()},n.getItems=function(e,t,n,o){var a=function(){return BI.each(e,(function(e,t){BI.has(t,"el")?(t.el.disabled=!0,t.el.iconCls1=""):(t.disabled=!0,t.cls="")})),e};if(!t)return a();var i=[Y.HOUR,Y.MINUTE,Y.SECOND,Y.YMDH,Y.YMDHM,Y.YMDHMS];if(BI.some(n,(function(e,t){return BI.contains(i,t)})))return a();var r,s=(r=n,0===BI.size(r)?[]:se(r)),c=function(e){return 0===BI.size(e)?[]:ce(e)}(n),l=Q(),u=BI.filter(l,(function(e,t){return BI.contains(BI.reduce(s,(function(e,t){return BI.concat(t,F[e])}),[]),t.value)}));return BI.each(e,(function(e,t){BI.contains(Ge,t.value||t.el.value)?0===u.length?(t.el.disabled=!0,t.el.iconCls1="",t.el.warningTitle=IntegrationI18n.getLocale("BI-Basic_Calculate_{R1}_is_Not_Supported_To_Calculate_{R2}",o,t.el.text)):t.children=BI.deepClone(u):0===BI.size(c)&&(t.disabled=!0,t.cls="",t.warningTitle=IntegrationI18n.getLocale("BI-Basic_Calculate_{R1}_is_Not_Supported_To_Calculate_{R2}",o,t.text))})),e},t}(I.a),p()(ue,"xtype","bi.model.conf.group.operator.dimension.combo"),le=ue))||le,Pe=Object(I.e)()(me=Object(I.f)(ke,{props:function(){var e=this.options;return{handleType:e.handleType,fieldType:e.fieldType,value:e.value}}})((he=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),a=0;a1e3?t.lengthLabel.element.removeClass("group-count-success").addClass("group-count-failure"):t.lengthLabel.element.removeClass("group-count-failure").addClass("group-count-success")}}),t}u()(t,e);var n=t.prototype;return n.render=function(){var e=this;return{type:BI.VerticalLayout.xtype,vgap:$e,items:[{type:BI.HTapeLayout.xtype,height:Fe,items:[{el:{type:BI.VerticalAdaptLayout.xtype,items:[{type:BI.Label.xtype,text:IntegrationI18n.getLocale("BI-Basic_Group_Space"),textAlign:"left"}]},width:Ye},{type:BI.Editor.xtype,simple:!0,value:this.model.groupInterval,ref:function(t){e.spaceEditor=t},validationChecker:function(t){var n=parseFloat(t);if(!BI.isNumeric(t)||n<=0)return e.groupLengthTemp=0,!1;var o=parseFloat("".concat(e.model.gen.genMax))-parseFloat("".concat(e.model.gen.genMin));return e.groupLengthTemp=n?Math.ceil(o/n):0,e.groupLengthTemp<=1e6},errorText:function(){return e.groupLengthTemp<=1e6?IntegrationI18n.getLocale("BI-Conf_Please_Input_Positive_Number"):IntegrationI18n.getLocale("BI-Design_Current_Group_Num_Out_Of_Limit",100)},listeners:[{eventName:BI.Editor.EVENT_CHANGE,action:function(){e.store.setGroupInterval(e.getValue())}}],cls:"bi-border-bottom",height:Fe}]},{type:BI.FloatLeftLayout.xtype,vgap:$e,items:[{type:BI.Layout.xtype,width:Ye,height:Fe},{type:BI.Label.xtype,width:450,whiteSpace:"normal",$testId:"bi-component-custom-group-number-auto-group-count",cls:function(){return e.model.groupLength>1e3?"group-count-failure":"group-count-success"},textAlign:"left",ref:function(t){e.lengthLabel=t},text:this.model.lengthText}]}]}},n.getValue=function(){return this.spaceEditor.getValue()},t}(BI.Widget),p()(ye,"xtype","fdi.component.custom_group.number.auto"),ve=ye))||ve)||ve,We=(n(14),Object(I.e)()((be=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),a=0;a1e3&&(e+=",".concat(IntegrationI18n.getLocale("BI-Design_Current_Group_Num_Suggest",1e3))),e},showIndex:function(){return t.model.numberGroupLoading?E.LOADING:E.CONTENT},displayMin:function(){return G(t.model.min,{numSeparators:!1})},displayMax:function(){return G(t.model.max,{numSeparators:!1})}}),p()(c()(t),"actions",{getData:function(){var e=t.options.reqFuncOrVal;return t.model.numberGroupLoading=!0,new Promise((function(n){var o=function(e){t.model.numberGroupLoading=!1,t.setMax(e.max),t.setMin(e.min),t.model.gen={interval:e.interval,step:parseFloat(e.step),genMin:e.interval[0],genMax:e.interval[e.interval.length-1]},n()};BI.isFunction(e)?e(o):o(e)}))},setMax:function(e){t.model.max=e},setMin:function(e){t.model.min=e},setType:function(e){t.model.type=e}}),t}return u()(t,e),t.prototype.state=function(){var e=this.options,t=e.value,n=e.type,o=t||{},a=o.useOther,i=o.nodes,r=o.groupInterval,s=IntegrationI18n.getLocale("BI-Basic_Others");return BI.isEmptyString(a)?s=!1:BI.isNotEmptyString(a)&&(s=a),{type:n,max:void 0,min:void 0,useOther:s,nodes:i||null,interval:void 0,groupInterval:parseFloat(r)||void 0,gen:{genMax:0,genMin:0,interval:[]},validText:"",numberGroupLoading:!0}},t}(I.a),p()(Me,"xtype","fdi.model.custom_group.number"),Ve=Me))||Ve;function Ze(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function et(e){for(var t=1;t0?" - ":"",BI.has(n,"childValue"))if(t.model.fieldType===f.NUMBER&&n.value!==F.PERIOD_OR_RING){var i=o[n.value];i=o[n.childValue]+i,a+=i}else a+=o[n.childValue];else a+=o[n.value]})),a},correctFieldType:function(){return t.model.fieldsTypeMap[t.model.dimension.id]},fieldInvalidType:function(){return null},tipTitle:function(){var e=t.model.selectedText.split("-");if(2===e.length){if(!t.model.tipValid&&t.model.fieldInvalidType)return IntegrationI18n.getLocale("BI-Conf_FieldType_Change_Summary_Missing",t.model.fieldName);var n="".concat(IntegrationI18n.getLocale("BI-Basic_Rapid_Calculation{R1}",BI.trim(e[1])),"(");return t.model.tipValid?n+=IntegrationI18n.getLocale("BI-Basic_Calculate_Depend_Date_Field{R1}",t.model.firstDateDimensionName):n+=BI.isNull(t.model.firstDateDimensionName)?IntegrationI18n.getLocale("BI-Basic_Calculate_Depend_Date_Field_Missed"):IntegrationI18n.getLocale("BI-Basic_Calculate_{R1}_is_Not_Supported_To_Calculate_{R2}",t.model.firstDateDimensionName,BI.trim(e[1])),[IntegrationI18n.getLocale("BI-Basic_Group_Type{R1}",e[0]),"".concat(n,")")].join("\n")}return t.model.selectedText},labelValid:function(){return!0},labelTipType:function(){return t.model.labelValid?"success":"warning"},labelMarkCls:function(){return t.model.labelValid?"":" marked-red"},tipValid:function(){return!0},tipMarkCls:function(){return t.model.tipValid?"":" marked-red"},tipTipType:function(){return t.model.tipValid?"success":"warning"}}),p()(c()(t),"actions",{updateCustomGroupPopup:function(e,n){t.model.customGroupSelected=n||null,t.model.customGroupPopupType=e},requestNumberRange:function(e,n,o){var a=t.model.fields.find((function(t){return t.id===e}));return new Promise((function(e){Dec.reqPost("/api/dc/v1/field/range",{field:a,source:n},(function(n){t.model.numberRange=n.data,o(n.data),e()}))}))},stringDataGetter:function(e,n){var o=t.model.fields.find((function(t){return t.id===e}));return new Promise((function(e){return o?Dec.reqPost("/api/dc/v1/field/data",{field:o,source:n},(function(t){e({data:{fields:BI.map(t.data.value||[],(function(e,t){return{transferName:t}})),fieldsLabel:[]}})})):e({data:{fields:[],fieldsLabel:[]}})}))},searchDataGetter:function(e,n,o,a){var i=t.model.fields.find((function(t){return t.id===e}));return Dec.reqPost("/api/dc/v1/field/data/search",{keyword:o,field:i,source:n},(function(e){a(e.data,o)}))},validationChecker:function(e){if(e===t.model.fieldName)return!0;var n=BI.map(t.model.dimensions,"name");return!BI.contains(n,e)},setDimensionSelectedById:function(e,n){n&&t.updateCustomGroupPopup(it.NONE)},setFromPopup:function(e){t.model.fromPopup=e}}),t}u()(t,e);var n=t.prototype;return n.state=function(){return{fieldInvalid:!1,numberPeriodError:!1,fromPopup:!1,customGroupSelected:null,customGroupPopupType:it.NONE,numberRange:{},operatorTypeError:!1}},n.init=function(){var e=this.model.engineType===g.SPIDER?q():Ie();this.comboList=e[this.options.handleType]},t}(I.a),p()(nt,"xtype","fdi.model.data.group.dimension"),tt=nt))||tt,xt=(n(15),Object(I.d)()((ct=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),a=0;a1&&void 0!==arguments[1]?arguments[1]:" ";return BI.isString(e)?e.replace(/[\r\n]+/g,t):e}(s);return{type:BI.FloatLeftLayout.xtype,items:[{el:{type:BI.Label.xtype,cls:"".concat(d," button-label"),textAlign:o,whiteSpace:a,textHeight:i,height:r,text:BI.isEmptyString(BI.trim(p))?IntegrationI18n.getLocale("BI-Basic_(Empty)"):p,value:s,py:c,ref:function(t){e.textLeft=t}},hgap:5},{type:BI.Label.xtype,cls:"button-label bi-tips right-text-proportion-width",invisible:!u,textAlign:o,whiteSpace:a,textHeight:i,height:r,text:l,value:n,ref:function(t){e.textRight=t}}]}},n.mounted=function(){var e=this.options,t=e.keywords,n=e.valueRight,o=e.visible;this.doRedMark(t),""!==n&&this.doHighLight(),this.setVisible(o)},n.doRedMark=function(){var e;(e=this.textLeft).doRedMark.apply(e,arguments)},n.unRedMark=function(){var e;(e=this.textLeft).unRedMark.apply(e,arguments)},n.doHighLight=function(){var e;(e=this.textLeft).doHighLight.apply(e,arguments)},n.unHighLight=function(){var e;(e=this.textLeft).unHighLight.apply(e,arguments)},n.getValueLeft=function(){return this.textLeft.getValue()},n.getValueRight=function(){return this.textRight.getValue()},n.getValue=function(){return this.getValueLeft()},t}(BI.BasicButton),p()(Ht,"xtype","fdi.component.custom_group.string.group_expander.button"),Pt=Ht))||Pt,fn=Object(I.d)()(($t=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),a=0;a=1e3)return!0;var a=o.value,i=o.valueRight||"";return n.push({type:In.xtype,title:r?IntegrationI18n.getLocale("BI-Basic_Click_Cancel_Choose_Field"):a+i,valueLeft:a,valueRight:i,selected:o.selected,cls:"item-custom-group bi-card bi-list-item-select bi-border-radius",visible:!!BI.isNull(o.visible)||o.visible,keywords:s?t.model.keywords:"",tgap:5,rgap:5}),!1})),n}}),t}return u()(t,e),t.prototype._init=function(){this.gId=this.options.gId},t}(I.a),p()($t,"xtype","bi.model.component.custom_group.string.group_expander"),Ft=$t))||Ft,gn=Object(I.d)()((jt=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),a=0;a1||a.push(n)}));var i=t.model.groups[0];t.model.groups.splice(0,1,{id:i.id,selected:i.selected,content:i.content.concat(a),value:i.value}),t.model.groups.splice(n,1)}}}),t}return u()(t,e),t}(I.a),p()(Zt,"xtype","bi.model.component.custom_group.string.pane"),Jt=Zt))||Jt)||Jt,vn=Object(I.e)()(en=Object(I.f)(Bn)((tn=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),a=0;a0},checkboxSelected:function(){return!1!==t.model.useOther},copy2ComboAbility:function(){var e=!1;if(BI.isEmptyArray(t.model.groups))e=!0;else{var n=t.model.groups[0];e=BI.isEmptyArray(n.selected)}return t.model.selectsLength>0&&e},copyGroupValues:function(){var e=BI.deepClone(t.model.groupValues);return e.shift(),BI.map(e,(function(e,t){return BI.extend(t,{$testId:"bi-custom-group-string-copy-group-items"})}))},triggerButtonValue:function(){return IntegrationI18n.getLocale("BI-Basic_Has_Selected_{R1}_Item",t.model.selectsLength)},allGroupNames:function(){var e=BI.map(t.model.groups,(function(e,t){return t.value}));return e.push(t.model.useOtherValue),e},unAvailableNames:function(){var e=t.model.groups[0],n=BI.map(e.content,(function(e,t){return t}));return t.model.allGroupNames.concat(n)},groupValues:function(){return BI.map(t.model.groups,(function(e,t){return{id:t.id,value:t.value,title:t.value,$testId:"bi-custom-group-string-move-group-items"}}))},valueMaps:function(){var e={};return BI.each(t.model.groups,(function(t,n){0!==t&&BI.each(n.content,(function(t,o){BI.isArray(e[o])?e[o].push(n.value):e[o]=[n.value]}))})),e},searchCheckboxDisabled:function(){return""===t.model.keywords},allFieldNames:function(){return BI.map(t.model.allFields,"transferName")},allFieldsLabel:function(){return BI.map(t.model.fieldsLabel,(function(e,n){var o=[];return BI.each(n.content,(function(e,n){var a=BI.find(t.model.allFields,(function(e,t){return t.id===n.id}));BI.isNotNull(a)&&o.push({value:a.transferName})})),xn(xn({},n),{},{content:o})}))}}),p()(c()(t),"childContext",["groups","valueMaps","selects","searchCheckboxSelected","unAvailableNames","keywords","allSelected","move2ComboAbility","copy2ComboAbility"]),p()(c()(t),"actions",{initData:function(){return t.options.reqFunc().then((function(e){t.model.allFields=e.data.fields,t.model.fieldsLabel=e.data.fieldsLabel,t.model.allFieldNames&&t.reformat(t.model.allFieldNames.slice(0,1e3))}))},setUseOther:function(e){t.model.useOther=e,!1!==e&&(t.model.useOtherValue=e)},reformat:function(e){var n=t.options,o=BI.deepClone(e);BI.each(BI.isEmptyArray(t.model.allFieldsLabel)?n.group.details:t.model.allFieldsLabel,(function(n,a){var i=BI.map(a.content,"value");BI.each(i,(function(t,n){BI.contains(e,n)&&BI.remove(o,n)})),t.model.groups.push({content:i,id:a.id,value:a.value,selected:[]})})),t.model.groups.unshift({content:o,id:BI.UUID(),value:n.noGroupName,selected:[]})},createGroup:function(e){var n=BI.UUID(),o=e;BI.isNull(o)&&(o=BI.Func.createDistinctName(BI.map(t.model.unAvailableNames,(function(e,t){return{name:t}})),t.options.baseGroupName));var a={content:[],id:n,value:o,selected:[]};return t.model.groups.push(a),a},moveSelectsTo:function(e,n){var o=BI.findIndex(t.model.groups,(function(t,n){return e===n.value})),a=t.model.groups[o];if(0===o){var i=[];BI.each(t.model.groups,(function(e,t){i=i.concat(t.selected)}));var r=BI.any(i,(function(e,n){return-1!==BI.indexOf(t.model.allGroupNames,n)}));if(t.setShowBubble(r),r)return!1}if(!BI.isNull(a)){var s=[];BI.each(t.model.groups,(function(e,n){BI.isEmptyArray(n.selected)||(s=s.concat(n.selected),BI.remove(t.model.groups[e].content,n.selected),t.model.groups[e].selected=[])}));var c=BI.uniq(a.content.concat(s)),l=[];return 0===o&&BI.each(t.model.groups,(function(e,t){0!==e&&BI.each(t.content,(function(e,t){BI.contains(s,t)&&l.push(t)}))})),BI.remove(c,(function(e,t){return BI.contains(l,t)})),t.model.groups.splice(o,1,{id:a.id,value:a.value,selected:[],content:c}),t.resetAllSelected(),!0}},copySelectsToGroup:function(e){var n=BI.deepClone(t.model.selects);BI.each(t.model.groups,(function(o,a){if(-1!==BI.indexOf(e,a.value)){var i=[];BI.each(n,(function(e,t){BI.each(t.content,(function(e,t){i.push(t)}))})),t.model.groups.splice(o,1,{id:a.id,value:a.value,content:BI.uniq(a.content.concat(i)),selected:[]})}})),BI.each(t.model.groups,(function(e,t){t.selected=[]})),t.resetAllSelected()},setShowBubble:function(e){t.model.showBubble=e},setKeywords:function(e){t.model.keywords=e},setAllSelected:function(e){t.model.allSelected=e},resetAllSelected:function(){var e=BI.Constants.getConstant(wt);t.model.allSelected=e.NORMAL_STATE},getValue:function(){var e=BI.map(t.model.groups,(function(e,t){return{content:BI.map(t.content,(function(e,t){return{value:t}})),id:t.id,value:t.value}}));return e.shift(),{details:e,useOther:t.model.useOther||""}}}),t}return u()(t,e),t.prototype.state=function(){var e=this.options;return e.group=BI.deepClone(e.group)||{},BI.isEmptyString(e.group.useOther)&&(e.group.useOther=!1),{useOther:e.group.useOther||!1,groups:[],searchCheckboxSelected:"NONE",useOtherValue:e.group.useOther||IntegrationI18n.getLocale("BI-Basic_Other"),showBubble:!1,keywords:"",allSelected:BI.Constants.getConstant(wt).NORMAL_STATE,allFields:[],fieldsLabel:[]}},t}(I.a),p()(pn,"xtype","bi.model.component.custom_group.string"),dn=pn))||dn,Un=(n(18),26),kn=580,Pn=350,Hn=10,Fn=28,$n=28,Yn=Object(I.e)()(On=Object(I.f)(wn,{props:function(){return this.options}})((Cn=function(e){function t(){for(var n,o=arguments.length,a=new Array(o),i=0;i0&&void 0!==arguments[0]?arguments[0]:[];return e=this.options.regionType===h.DIMENSION1?IntegrationI18n.getLocale("BI-Basic_Group"):IntegrationI18n.getLocale("BI-Basic_Statistic"),n.push(BI.h(BI.Label,{cls:"bi-region-comment bi-tips",text:IntegrationI18n.getLocale("BI-Conf_Drop_Fields_From_Left",e),height:24,key:"tip".concat(this.options.regionType),invisible:!BI.isEmptyArray(n),ref:function(e){t.watermark=e}})),n},n.getDropFieldOption=function(e){var t,n=this,o=this.createPlaceholder(),a=e.getRegionType(),i=!1,r=this.options.settingStore;return{accept:".group-select-fields-item-button",cursorAt:{left:55,top:10},tolerance:"pointer",drop:function(i,s){t&&$(document).unbind("mousemove",t),t=null;var c=s.helper.data("fields"),l=n.getDropIdx(e,o);r.addDimensionByField(c,a,l),$(o).remove()},over:function(){i=!1,n.hideWatermark(),t&&$(document).unbind("mousemove",t),t=function(t){i||n.insertPlaceholder(e.getRegion(),t,o)},$(document).bind("mousemove",t)},out:function(){i=!0,$(o).remove(),t&&$(document).unbind("mousemove",t),t=null,n.showWatermark(BI.get(n.model.view,a))}}},n.getDropIdx=function(e,t){var n=e.getRegionType();if(0===t.next(":not(.bi-region-comment)").length)return this.model.view[n].length;var o=t.next().attr("dimensionId");return BI.indexOf(this.model.view[n],o)},n.insertPlaceholder=function(e,t,n){var o=e.element,a=o.find(".bi-conf-share-group-operator-dimension");!BI.some(a,(function(e,o){if($(o).__isMouseInBounds__(t)){var a=$(o);n.css({width:a.width()});var i=a.offset().left,r=a.width();return t.pageX-i>r/2?a.after(n):a.before(n),!0}}))&&o.__isMouseInBounds__(t)&&0===n.parent().length&&o.append(n)},n.createPlaceholder=function(){var e=BI.createWidget(BI.h(BI.Label,{cls:"ui-sortable-place-holder-region",height:24,width:118}));return e.element.css({margin:"5px 0px 5px 5px",float:"left"}),e.element},n.getSortFieldOption=function(e){var t,n,o=this,a=e.getRegionType(),i=this.options.settingStore,r=function(e){return BI.$(".group-region-container").__isMouseInBounds__(e)};return{connectWith:".group-region-container",cursorAt:{left:55,top:10},tolerance:"pointer",items:".bi-string-dimension-container, .bi-data-dimension-container, .bi-number-dimension-container",placeholder:{element:function(){return o.createPlaceholder()},update:function(){}},helper:function(e,n){t=n.attr("dimensionId");var a=BI.createWidget(BI.h(y,{width:120,height:20,attributes:{dimensionId:t},cls:"dimension-capsule-helper bi-capsule-border field-draggable bi-card",text:o.model.dimensions[t].name,textAlign:"left"}));return BI.createWidget(BI.h(BI.AbsoluteLayout,{element:o.element},BI.h("el",null,a))),a.element},start:function(e,o){t=o.helper.attr("dimensionId"),n&&$(document).unbind("mousemove",n),n=function(e){t&&!r(e)?o.helper.addClass("delete-draggable"):o.helper.removeClass("delete-draggable")},$(document).bind("mousemove",n)},stop:function(e){n&&$(document).unbind("mousemove",n),r(e)||i.deleteDimension(t),t=null,n=null},update:function(){var t=e.getAllDimensions(),n=e.getAllRegionTyeps();i.setSortBySortInfo({dimensions:t,regionType:a,regionTypes:n})},over:function(e,t){o.hideWatermark(),t.placeholder.show()},out:function(e,t){BI.isNotNull(t.helper)&&(o.showWatermark(BI.get(o.model.view,a)),t.placeholder.hide())}}},n.showWatermark=function(e){var t;BI.isEmpty(e)&&(null===(t=this.watermark)||void 0===t||t.setVisible(!0))},n.hideWatermark=function(){var e;null===(e=this.watermark)||void 0===e||e.setVisible(!1)},n.getAllDimensions=function(){return this.center.element.sortable("toArray",{attribute:"dimensionId"})},n.getAllRegionTyeps=function(){return this.center.element.sortable("toArray",{attribute:"regionType"})},n.getRegion=function(){return this.center},n.getWrapper=function(){return this.wrapper},n.getRegionType=function(){return this.options.regionType},n.populate=function(e){var t,n=BI.isEmptyArray(e);this.center.populate(this.createDimensionItems(e)),null===(t=this.watermark)||void 0===t||t.setVisible(n)},n.createStructures=function(e,t){var n=this,o=this.options.settingStore;return BI.map(e,(function(e,a){var i=n.model.dimensions[a].id,r=n.model.fieldsTypeMap[i],s=n.getDimensionCls(r);return BI.h(Qn,{cls:"".concat(s," sign-style-editor"),attributes:{dimensionId:a,regionType:t},dId:a,key:a,handleType:n.switchHandleType(t),source:o.source,listeners:[{eventName:Qn.EVENT.RENAME,action:function(e,t){o.setDimensionName(e,t)}},{eventName:Qn.EVENT.CHANGE,action:function(e,t){o.setDimension(e,Fix.toJSON(t))}},{eventName:Qn.EVENT.DELETE,action:function(e){o.deleteDimension(e)}}]})}))},n.getDimensionCls=function(e){switch(e){case f.NUMBER:return"bi-number-dimension-container";case f.DATE:return"bi-data-dimension-container";case f.STRING:default:return"bi-string-dimension-container"}},n.switchHandleType=function(e){return this.isDimensionRegion1ByRegionType(e)?j.GROUP:j.SUMMARY},n.isDimensionRegion1ByRegionType=function(e){return e===h.DIMENSION1},t}(BI.Widget),p()(Sn,"xtype","fdi.group.operator.region"),Mn=Sn))||Mn)||Mn,eo=Object(I.e)()((Gn=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),a=0;a1&&(i=IntegrationI18n.getLocale("BI-Conf_Total")+r+IntegrationI18n.getLocale("BI-Conf_Number_Of_Fields"));var s=BI.createWidget(BI.h(y,{extraCls:"dimension-capsule-helper bi-capsule-border bi-field-drag-helper field-draggable bi-card ".concat(o.getFieldCls(t)),width:120,height:20,data:{fields:a},text:i,textAlign:"left"}));return BI.createWidget(BI.h(BI.DefaultLayout,{element:"body"},s)),s.element}}},n.getFieldCls=function(e){switch(e){case f.STRING:return"string-field-helper";case f.NUMBER:return"number-field-helper";case f.DATE:return"date-field-helper";default:return""}},n.mapItems=function(e){var t=this,n=BI.map(e,"value"),o=[];return BI.map(e,(function(e,i){var a=i.text;return BI.extend(i,{drag:t.createDrag(a,i.fieldType,i.value),listeners:[{eventName:x.EVENT.CHANGE,action:function(e,i){var a=t.getMouseHotKey(i),r=t.list.getValue();switch(a){case m.CLICK:o=[e],t.list.setValue(e);break;case m.CONTROL_CLICK:BI.remove(o,e),BI.contains(r,e)&&o.push(e);break;case m.SHIFT_CLICK:var s=BI.indexOf(n,BI.last(o)||0),l=BI.indexOf(n,e),c=BI.filter(n,(function(e){return e>=s&&e<=l||e>=l&&e<=s}));t.list.setValue(BI.concat(o,c))}}}]})}))},n.search=function(){var e=this.searcher.getValue();this.store.search(e)},n.getMouseHotKey=function(e){return null!=e&&e.ctrlKey||null!=e&&e.metaKey?m.CONTROL_CLICK:null!=e&&e.shiftKey?m.SHIFT_CLICK:m.CLICK},t}(BI.Widget),p()(L,"xtype","fdi.data.group.table.field"),R=L))||R)||R,D=Object(I.e)()((V=function(e){function t(){return e.apply(this,arguments)||this}return u()(t,e),t.prototype.render=function(){return BI.h(BI.AbsoluteLayout,null,BI.h("el",{top:0,right:0,bottom:0,left:0},this.options.children))},t}(BI.Widget),p()(V,"xtype","fdi.fix.context"),A=V))||A;n(10),n(11),n(12);function G(e,t){if(!BI.isNumeric(e))return e;var n=t,o={formatStyle:B.STYLE.AUTO,formatDecimal:B.DECIMAL.NORMAL,numLevel:B.LEVEL.NORMAL,numSeparators:!0,unit:""};BI.isNull(n)?n=o:BI.each(o,(function(e){BI.isNull(n[e])&&(n[e]=o[e])}));var i,a,r,s=parseFloat(e),l="";switch(n.formatStyle){case B.STYLE.AUTO:i=B.DECIMAL.NORMAL,a=n.numLevel,r=n.numSeparators;break;case B.STYLE.PERCENT:i=n.formatDecimal,a=B.LEVEL.PERCENT,r=n.numSeparators,l="%";break;case B.STYLE.DIGIT:default:i=n.formatDecimal,a=n.numLevel,r=n.numSeparators}s=BI.div(s,function(e){var t=1;switch(e){case B.LEVEL.THOUSAND:t=1e3;break;case B.LEVEL.TEN_THOUSAND:t=1e4;break;case B.LEVEL.MILLION:t=1e6;break;case B.LEVEL.BILLION:t=1e8;break;case B.LEVEL.PERCENT:t=.01;break;case B.LEVEL.NORMAL:default:t=1}return t}(a));var c="",u=-1,d="".concat(s);if((u=d.indexOf("e"))>-1||(u=d.indexOf("E"))>-1){c=d.slice(u);var p=BI.startWith(d,"-");d=d.slice(p?1:0,u);var I=parseInt(c.slice(1));if(I<0)for(c="",d=d.replace(".","");I++<0;)d=0===I?"0.".concat(d):"0".concat(d);p&&(d="-".concat(d))}var f=function(e,t){var n=t?"#,###.":"#0.",o=[];switch(e){case B.DECIMAL.NORMAL:return t?"#,###.##":"#.##";case B.DECIMAL.ZERO2POINT:return t?"#,###":"#0";default:for(var i=0;i-.01&&g<.01)return function(e){var t="".concat(e),n=BI.startWith(t,"-"),o=n?-1*e:e;if(t.indexOf("e")>-1||t.indexOf("E")>-1){var i="".concat(o),a="",r="";return i.indexOf("e")>-1&&(a=i.slice(0,i.indexOf("e")),r=i.slice(i.indexOf("e"))),i.indexOf("E")>-1&&(a=i.slice(0,i.indexOf("E")),r=i.slice(i.indexOf("E"))),(n?"-":"")+G(a,{})+r}if(0===o)return t;Math.log10=Math.log10||function(e){return Math.log(e)*Math.LOG10E};var s=Math.floor(Math.log10(o)),l=o*Math.pow(10,-s);return"".concat((n?"-":"")+G(l,{}),"e").concat(s)}(g);var m=BI.contentFormat(d,f);return n.formatStyle===B.STYLE.AUTO&&m.indexOf(".")>-1&&"0"===m[m.length-1]&&(m=m.substring(0,m.length-1)),"".concat(m).concat(c).concat(l)}function w(e,t){for(var n=BI.size(e),o=BI.size(t),i={},a=0;a=parseFloat(t.min):parseFloat(e.max)>parseFloat(t.min):""!==e.min&&""===e.max&&""!==t.min&&""!==t.max?e.closeMin&&t.closeMax?parseFloat(e.min)<=parseFloat(t.max):parseFloat(e.min)=parseFloat(t.min):parseFloat(e.max)>parseFloat(t.min):""===e.min&&""===e.max)}var U=function(e){return e[e.SINGLE=1]="SINGLE",e[e.DOUBLE=2]="DOUBLE",e[e.GROUP=3]="GROUP",e}({}),P=function(e){return e[e.AUTO=1]="AUTO",e[e.CUSTOM=2]="CUSTOM",e[e.CUSTOM_STRING=3]="CUSTOM_STRING",e}({}),H=function(e){return e[e.GROUP_BY_VALUE=1]="GROUP_BY_VALUE",e[e.GROUP_BY_CUSTOM=2]="GROUP_BY_CUSTOM",e[e.COUNT=3]="COUNT",e[e.RECORD_COUNT=4]="RECORD_COUNT",e[e.APPEND=5]="APPEND",e[e.RENAME=6]="RENAME",e[e.DELETE=7]="DELETE",e[e.APPROXIMATE_DISTINCT_COUNT=27]="APPROXIMATE_DISTINCT_COUNT",e[e.GROUP_FORMULA=40]="GROUP_FORMULA",e}({}),F=function(e){return e[e.GROUP_BY_VALUE=1]="GROUP_BY_VALUE",e[e.CUSTOM_NUMBER_GROUP=2]="CUSTOM_NUMBER_GROUP",e[e.SUM=8]="SUM",e[e.AVG=9]="AVG",e[e.MEDIAN=10]="MEDIAN",e[e.MAX=11]="MAX",e[e.MIN=12]="MIN",e[e.STANDARD_DEVIATION=13]="STANDARD_DEVIATION",e[e.VARIANCE=14]="VARIANCE",e[e.COUNT=15]="COUNT",e[e.RECORD_COUNT=16]="RECORD_COUNT",e[e.NONE=17]="NONE",e[e.PERIOD=18]="PERIOD",e[e.RING=19]="RING",e[e.PERIOD_RATE=20]="PERIOD_RATE",e[e.RING_RATE=21]="RING_RATE",e[e.PERIOD_INCREMENT=36]="PERIOD_INCREMENT",e[e.RING_INCREMENT=37]="RING_INCREMENT",e[e.PERIOD_OR_RING=38]="PERIOD_OR_RING",e[e.YEAR=22]="YEAR",e[e.QUARTER=23]="QUARTER",e[e.MONTH=24]="MONTH",e[e.WEEK=25]="WEEK",e[e.WEEKDAY=26]="WEEKDAY",e[e.APPROXIMATE_DISTINCT_COUNT=33]="APPROXIMATE_DISTINCT_COUNT",e[e.RENAME=27]="RENAME",e[e.DELETE=28]="DELETE",e[e.GROUP_FORMULA=40]="GROUP_FORMULA",e}({}),Y=function(e){return e[e.DATE=5]="DATE",e[e.YEAR=6]="YEAR",e[e.QUARTER=7]="QUARTER",e[e.MONTH=8]="MONTH",e[e.WEEKDAY=9]="WEEKDAY",e[e.DAY=10]="DAY",e[e.MORE_GROUP=11]="MORE_GROUP",e[e.WEEK_COUNT=12]="WEEK_COUNT",e[e.HOUR=13]="HOUR",e[e.MINUTE=14]="MINUTE",e[e.SECOND=15]="SECOND",e[e.YQ=16]="YQ",e[e.YM=17]="YM",e[e.YW=18]="YW",e[e.YMDH=19]="YMDH",e[e.YMDHM=20]="YMDHM",e[e.YMDHMS=21]="YMDHMS",e[e.MONTH_DAY=48]="MONTH_DAY",e[e.COUNT=29]="COUNT",e[e.RECORD_COUNT=30]="RECORD_COUNT",e[e.ET=31]="ET",e[e.LT=32]="LT",e[e.APPROXIMATE_DISTINCT_COUNT=35]="APPROXIMATE_DISTINCT_COUNT",e[e.RANK=36]="RANK",e[e.ASC=37]="ASC",e[e.DESC=38]="DESC",e[e.RENAME=33]="RENAME",e[e.DELETE=34]="DELETE",e[e.GROUP_FORMULA=40]="GROUP_FORMULA",e}({}),j=function(e){return e[e.GROUP=0]="GROUP",e[e.SUMMARY=1]="SUMMARY",e}({}),W={},K={};function q(){return W=p()(p()(p()({},f.STRING,[[{text:IntegrationI18n.getLocale("BI-Basic_Same_Value_A_Group"),value:H.GROUP_BY_VALUE,$testId:"bi-conf-pack-analysis-group-string-same",bubble:IntegrationI18n.getLocale("BI-Basic_Ensure_Group_By_Value"),cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Custom_Grouping_Dot"),$testId:"bi-conf-pack-analysis-group-string-custom",value:H.GROUP_BY_CUSTOM,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-group-string-rename",value:H.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-group-string-delete",value:H.DELETE,cls:"delete-font"}]]),f.NUMBER,[[{text:IntegrationI18n.getLocale("BI-Basic_Same_Value_A_Group"),$testId:"bi-conf-pack-analysis-analysis-number-group-by-value",value:F.GROUP_BY_VALUE,bubble:IntegrationI18n.getLocale("BI-Conf_Move_To_Same_Value_Info_Missing"),cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Grouping_Setting"),$testId:"bi-conf-pack-analysis-analysis-number-custom-number-group",value:F.CUSTOM_NUMBER_GROUP,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-number-rename",value:F.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-number-delete",value:F.DELETE,cls:"delete-font"}]]),f.DATE,[[{text:IntegrationI18n.getLocale("BI-Basic_YMD_Date"),$testId:"bi-conf-pack-analysis-group-date-tmd",value:Y.DATE,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Year_Week"),$testId:"bi-conf-pack-analysis-group-date-year-week",value:Y.YW,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Year_Month"),$testId:"bi-conf-pack-analysis-group-date-year-month",value:Y.YM,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Year_Quarter"),$testId:"bi-conf-pack-analysis-group-date-year-quarter",value:Y.YQ,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Multi_Date_Year"),value:Y.YEAR,$testId:"bi-conf-pack-analysis-group-date-year",cls:"dot-e-font"},{el:{text:IntegrationI18n.getLocale("BI-Basic_More_Group"),$testId:"bi-conf-pack-analysis-group-date-more-group",value:Y.MORE_GROUP,iconCls1:"dot-e-font"},children:[{text:IntegrationI18n.getLocale("BI-Basic_Quarter"),$testId:"bi-conf-pack-analysis-group-date-quarter",value:Y.QUARTER,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Month_Fen"),$testId:"bi-conf-pack-analysis-group-date-month",value:Y.MONTH,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Month_Day"),$testId:"bi-conf-pack-analysis-group-date-month-day",value:Y.MONTH_DAY,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Week_Count"),$testId:"bi-conf-pack-analysis-group-date-week-count",value:Y.WEEK_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Week_XingQi"),$testId:"bi-conf-pack-analysis-group-date-week",value:Y.WEEKDAY,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Date_Day"),$testId:"bi-conf-pack-analysis-group-date-day",value:Y.DAY,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Hour_Sin"),$testId:"bi-conf-pack-analysis-group-date-hour",value:Y.HOUR,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Minute"),$testId:"bi-conf-pack-analysis-group-date-minute",value:Y.MINUTE,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Seconds"),$testId:"bi-conf-pack-analysis-group-date-second",value:Y.SECOND,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_YMDH"),$testId:"bi-conf-pack-analysis-group-date-ymdh",value:Y.YMDH,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_YMDHM"),$testId:"bi-conf-pack-analysis-group-date-ymdhm",value:Y.YMDHM,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Detail_Date"),$testId:"bi-conf-pack-analysis-group-date-ymdhms",value:Y.YMDHMS,cls:"dot-e-font"}]}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),value:Y.RENAME,$testId:"bi-conf-pack-analysis-group-date-rename",cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),value:Y.DELETE,$testId:"bi-conf-pack-analysis-group-date-delete",cls:"delete-font"}]]),K=p()(p()(p()({},f.STRING,[[{text:IntegrationI18n.getLocale("BI-Basic_No_Repeat_Count"),$testId:"bi-conf-pack-analysis-analysis-string-count",value:H.COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Record_Count"),$testId:"bi-conf-pack-analysis-analysis-string-record-count",value:H.RECORD_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_String_Summary_By_Connection"),$testId:"bi-conf-pack-analysis-analysis-string-append",value:H.APPEND,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-string-rename",value:H.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-string-delete",value:H.DELETE,cls:"delete-font"}]]),f.NUMBER,[[{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Sum"),$testId:"bi-conf-pack-analysis-analysis-number-sum",value:F.SUM,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Avg"),$testId:"bi-conf-pack-analysis-analysis-number-avg",value:F.AVG,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Median"),$testId:"bi-conf-pack-analysis-analysis-number-median",value:F.MEDIAN,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Max"),$testId:"bi-conf-pack-analysis-analysis-number-max",value:F.MAX,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Min"),$testId:"bi-conf-pack-analysis-analysis-number-min",value:F.MIN,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Standard_Deviation"),$testId:"bi-conf-pack-analysis-analysis-number-standard-deviation",value:F.STANDARD_DEVIATION,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Variance"),$testId:"bi-conf-pack-analysis-analysis-number-variance",value:F.VARIANCE,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_No_Repeat_Count"),$testId:"bi-conf-pack-analysis-analysis-number-count",value:F.COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Record_Count"),$testId:"bi-conf-pack-analysis-analysis-number-record-count",value:F.RECORD_COUNT,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_None"),$testId:"bi-conf-pack-analysis-analysis-number-none",value:F.NONE,cls:"dot-e-font"},{el:{text:"".concat(IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Period_Rate"),"/").concat(IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Ring_Rate")),value:F.PERIOD_OR_RING},children:[{el:{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Period"),$testId:"bi-conf-pack-analysis-analysis-number-same-period",value:F.PERIOD},children:z()},{el:{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Period_Growth_Value"),value:F.PERIOD_INCREMENT},children:z()},{el:{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Period_Growth_Rate"),$testId:"bi-conf-pack-analysis-analysis-number-period-rate",value:F.PERIOD_RATE},children:z()},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Ring"),value:F.RING,$testId:"bi-conf-pack-analysis-analysis-number-same-ring",cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Ring_Growth_Value"),value:F.RING_INCREMENT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Same_Ring_Growth_Rate"),$testId:"bi-conf-pack-analysis-analysis-number-ring-rate",value:F.RING_RATE,cls:"dot-e-font"}]}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-number-rename",value:F.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-number-delete",value:F.DELETE,cls:"delete-font"}]]),f.DATE,[[{text:IntegrationI18n.getLocale("BI-Basic_No_Repeat_Count"),$testId:"bi-conf-pack-analysis-analysis-date-count",value:Y.COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Record_Count"),$testId:"bi-conf-pack-analysis-analysis-date-record-count",value:Y.RECORD_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Earliest_Time"),$testId:"bi-conf-pack-analysis-analysis-date-et",value:Y.ET,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Latest_Time"),$testId:"bi-conf-pack-analysis-analysis-date-lt",value:Y.LT,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-date-rename",value:Y.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-date-delete",value:Y.DELETE,cls:"delete-font"}]]),[W,K]}function z(){return[{text:IntegrationI18n.getLocale("BI-Basic_Multi_Date_Year"),$testId:"bi-conf-pack-analysis-analysis-number-year",value:F.YEAR,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Quarter"),$testId:"bi-conf-pack-analysis-analysis-number-quarter",value:F.QUARTER,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Multi_Date_Month"),$testId:"bi-conf-pack-analysis-analysis-number-month",value:F.MONTH,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Multi_Date_Week"),$testId:"bi-conf-pack-analysis-analysis-number-week",value:F.WEEK,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Week_XingQi"),$testId:"bi-conf-pack-analysis-analysis-number-weekday",value:F.WEEKDAY,cls:"dot-e-font"}]}p()(p()(p()({},f.STRING,p()(p()(p()({},H.GROUP_BY_VALUE,p()({},f.NUMBER,F.GROUP_BY_VALUE)),H.COUNT,p()(p()({},f.NUMBER,F.COUNT),f.DATE,Y.COUNT)),H.RECORD_COUNT,p()(p()({},f.NUMBER,F.RECORD_COUNT),f.DATE,Y.RECORD_COUNT))),f.NUMBER,p()(p()(p()({},F.GROUP_BY_VALUE,p()({},f.STRING,H.GROUP_BY_VALUE)),F.COUNT,p()(p()({},f.STRING,H.COUNT),f.DATE,Y.COUNT)),F.RECORD_COUNT,p()(p()({},f.STRING,H.RECORD_COUNT),f.DATE,Y.RECORD_COUNT))),f.DATE,p()(p()({},Y.COUNT,p()(p()({},f.STRING,H.COUNT),f.NUMBER,F.COUNT)),Y.RECORD_COUNT,p()(p()({},f.STRING,H.RECORD_COUNT),f.NUMBER,F.RECORD_COUNT)));var Q="YEAR",X="MONTH",J="WEEK",Z="QUARTER",ee="DAY";function te(e,t){return BI.some(e,(function(e,n){return!BI.contains(t,n)}))}function ne(e,t){var n=!0;return BI.each(t,(function(t,o){n=n&&BI.contains(e,o)})),n}function oe(e,t){return BI.some(t,(function(t,n){return BI.contains(e,n)}))}function ie(e){return!te(BI.uniq(e),[Y.YW])}function ae(e){var t=BI.uniq(e);return!te(e,[Y.YQ,Y.YEAR,Y.QUARTER])&&(!!BI.contains(t,Y.YQ)||ne(t,[Y.YEAR,Y.QUARTER]))}function re(e){var t=BI.uniq(e);return ne(t,[Y.YW,Y.WEEKDAY])||ne(t,[Y.YEAR,Y.WEEK_COUNT,Y.WEEKDAY])}function se(e){return ie(e)||ae(e)||function(e){var t=BI.uniq(e);return!te(e,[Y.YQ,Y.YEAR,Y.QUARTER,Y.YM,Y.MONTH])&&(!!BI.contains(t,Y.YM)||oe(t,[Y.YEAR,Y.YQ])&&BI.contains(t,Y.MONTH))}(e)?[Q]:oe(e,[Y.DAY,Y.DATE,Y.MONTH_DAY])?function(e){var t=BI.uniq(e);return ne(t,[Y.YM,Y.DAY])||ne(t,[Y.DATE])||ne(t,[Y.YEAR,Y.MONTH,Y.DAY])}(e)?[Q,Z,X,J]:[]:re(e)?[Q,J]:[]}function le(e){return function(e){return!te(BI.uniq(e),[Y.YEAR])}(e)?[Q]:ae(e)?[Z]:ie(e)?[J]:function(e){var t=BI.uniq(e);return!te(t,[Y.YEAR,Y.MONTH,Y.YQ,Y.YM,Y.QUARTER])&&(ne(t,[Y.YEAR,Y.MONTH,Y.QUARTER])||ne(t,[Y.YM,Y.QUARTER])||ne(t,[Y.YQ,Y.MONTH])||ne(t,[Y.YM])||ne(t,[Y.YEAR,Y.MONTH]))}(e)?[X]:oe(e,[Y.DATE,Y.YEAR,Y.YM,Y.YQ])&&oe(e,[Y.DATE,Y.YM,Y.MONTH])&&oe(e,[Y.DATE,Y.DAY])||re(e)?[ee]:[]}var ce,ue,de={},pe={};function Ie(){return de[f.STRING]=[[{text:IntegrationI18n.getLocale("BI-Basic_Same_Value_A_Group"),value:H.GROUP_BY_VALUE,$testId:"bi-conf-pack-analysis-group-string-same",bubble:IntegrationI18n.getLocale("BI-Basic_Ensure_Group_By_Value"),cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Custom_Grouping_Dot"),$testId:"bi-conf-pack-analysis-group-string-custom",value:H.GROUP_BY_CUSTOM,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-group-string-rename",value:H.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-group-string-delete",value:H.DELETE,cls:"delete-font"}]],de[f.NUMBER]=[[{text:IntegrationI18n.getLocale("BI-Basic_Same_Value_A_Group"),$testId:"bi-conf-pack-analysis-analysis-number-group-by-value",value:F.GROUP_BY_VALUE,bubble:IntegrationI18n.getLocale("BI-Conf_Move_To_Same_Value_Info_Missing"),cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Grouping_Setting"),$testId:"bi-conf-pack-analysis-analysis-number-custom-number-group",value:F.CUSTOM_NUMBER_GROUP,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-number-rename",value:F.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-number-delete",value:F.DELETE,cls:"delete-font"}]],de[f.DATE]=[[{text:IntegrationI18n.getLocale("BI-Basic_YMD_Date"),$testId:"bi-conf-pack-analysis-group-date-tmd",value:Y.DATE,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Year_Week"),$testId:"bi-conf-pack-analysis-group-date-year-week",value:Y.YW,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Year_Month"),$testId:"bi-conf-pack-analysis-group-date-year-month",value:Y.YM,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Year_Quarter"),$testId:"bi-conf-pack-analysis-group-date-year-quarter",value:Y.YQ,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Multi_Date_Year"),value:Y.YEAR,$testId:"bi-conf-pack-analysis-group-date-year",cls:"dot-e-font"},{el:{text:IntegrationI18n.getLocale("BI-Basic_More_Group"),$testId:"bi-conf-pack-analysis-group-date-more-group",value:Y.MORE_GROUP,cls:"dot-e-font"},children:[{text:IntegrationI18n.getLocale("BI-Basic_Quarter"),$testId:"bi-conf-pack-analysis-group-date-quarter",value:Y.QUARTER,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Month_Fen"),$testId:"bi-conf-pack-analysis-group-date-month",value:Y.MONTH,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Month_Day"),$testId:"bi-conf-pack-analysis-group-date-month-day",value:Y.MONTH_DAY,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Week_Count"),$testId:"bi-conf-pack-analysis-group-date-week-count",value:Y.WEEK_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Week_XingQi"),$testId:"bi-conf-pack-analysis-group-date-week",value:Y.WEEKDAY,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Date_Day"),$testId:"bi-conf-pack-analysis-group-date-day",value:Y.DAY,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Hour_Sin"),$testId:"bi-conf-pack-analysis-group-date-hour",value:Y.HOUR,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Minute"),$testId:"bi-conf-pack-analysis-group-date-minute",value:Y.MINUTE,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Seconds"),$testId:"bi-conf-pack-analysis-group-date-second",value:Y.SECOND,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_YMDH"),$testId:"bi-conf-pack-analysis-group-date-ymdh",value:Y.YMDH,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_YMDHM"),$testId:"bi-conf-pack-analysis-group-date-ymdhm",value:Y.YMDHM,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Detail_Date"),$testId:"bi-conf-pack-analysis-group-date-ymdhms",value:Y.YMDHMS,cls:"dot-e-font"}]}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),value:Y.RENAME,$testId:"bi-conf-pack-analysis-group-date-rename",cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),value:Y.DELETE,$testId:"bi-conf-pack-analysis-group-date-delete",cls:"delete-font"}]],pe[f.STRING]=[[{text:IntegrationI18n.getLocale("BI-Basic_No_Repeat_Count"),$testId:"bi-conf-pack-analysis-analysis-string-count",value:H.COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Approximate_Distinct_Count"),$testId:"bi-conf-pack-analysis-analysis-string-distinct-count",value:H.APPROXIMATE_DISTINCT_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Record_Count"),$testId:"bi-conf-pack-analysis-analysis-string-record-count",value:H.RECORD_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_String_Summary_By_Connection"),$testId:"bi-conf-pack-analysis-analysis-string-append",value:H.APPEND,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-string-rename",value:H.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-string-delete",value:H.DELETE,cls:"delete-font"}]],pe[f.NUMBER]=[[{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Sum"),$testId:"bi-conf-pack-analysis-analysis-number-sum",value:F.SUM,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Avg"),$testId:"bi-conf-pack-analysis-analysis-number-avg",value:F.AVG,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Median"),$testId:"bi-conf-pack-analysis-analysis-number-median",value:F.MEDIAN,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Max"),$testId:"bi-conf-pack-analysis-analysis-number-max",value:F.MAX,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Min"),$testId:"bi-conf-pack-analysis-analysis-number-min",value:F.MIN,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Standard_Deviation"),$testId:"bi-conf-pack-analysis-analysis-number-standard-deviation",value:F.STANDARD_DEVIATION,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Calculate_Variance"),$testId:"bi-conf-pack-analysis-analysis-number-variance",value:F.VARIANCE,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_No_Repeat_Count"),$testId:"bi-conf-pack-analysis-analysis-number-count",value:F.COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Approximate_Distinct_Count"),title:IntegrationI18n.getLocale("BI-Conf_Approximate_Distinct_Count_Tooltip"),$testId:"bi-conf-pack-analysis-analysis-number-distinct-count",value:F.APPROXIMATE_DISTINCT_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Record_Count"),$testId:"bi-conf-pack-analysis-analysis-number-record-count",value:F.RECORD_COUNT,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-number-rename",value:F.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-number-delete",value:F.DELETE,cls:"delete-font"}]],pe[f.DATE]=[[{text:IntegrationI18n.getLocale("BI-Basic_No_Repeat_Count"),$testId:"bi-conf-pack-analysis-analysis-date-count",value:Y.COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Approximate_Distinct_Count"),$testId:"bi-conf-pack-analysis-analysis-date-distinct-count",value:Y.APPROXIMATE_DISTINCT_COUNT,title:IntegrationI18n.getLocale("BI-Conf_Approximate_Distinct_Count_Tooltip"),cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Record_Count"),$testId:"bi-conf-pack-analysis-analysis-date-record-count",value:Y.RECORD_COUNT,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Earliest_Time"),$testId:"bi-conf-pack-analysis-analysis-date-et",value:Y.ET,cls:"dot-e-font"},{text:IntegrationI18n.getLocale("BI-Basic_Latest_Time"),$testId:"bi-conf-pack-analysis-analysis-date-lt",value:Y.LT,cls:"dot-e-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Rename"),$testId:"bi-conf-pack-analysis-analysis-date-rename",value:Y.RENAME,cls:"rename-font"}],[{text:IntegrationI18n.getLocale("BI-Basic_Remove"),$testId:"bi-conf-pack-analysis-analysis-date-delete",value:Y.DELETE,cls:"delete-font"}]],[de,pe]}function fe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function ge(e){for(var t=1;t0},sameYearItems:function(){var e=BI.deepClone(t.comboList[j.SUMMARY][f.NUMBER]),n=[];return BI.some(e,(function(e,t){return BI.some(t,(function(e,t){var o;if((t.value||(null===(o=t.el)||void 0===o?void 0:o.value))===F.PERIOD_OR_RING)return n=t.children,!0}))})),BI.isEmptyArray(n)?[]:t.getItems(n,t.model.hasDateTypeInGroup,t.model.allDateGroupTypes,t.model.firstDateDimensionName)},listItems:function(){var e=t.options,n=e.handleType,o=e.fieldType,i=BI.deepClone(t.comboList[n][o]);if(t.model.labelValid){if(n!==j.SUMMARY||o!==f.NUMBER||!BI.isNotEmptyArray(t.model.sameYearItems))return i;var a=BI.deepClone(t.model.sameYearItems),r=BI.some(t.model.fields,(function(e,t){return t.type===f.DATE})),s=BI.every(a,(function(e,t){return BI.has(t,"el")?t.el.disabled:t.disabled}));return BI.some(i,(function(e,n){return BI.some(n,(function(e,n){if((n.value||n.el.value)===F.PERIOD_OR_RING)return n.children=a,n.el.disabled=s,n.el.iconCls1=s?"":"dot-e-font",n.el.warningTitle=function(){return r?t.model.hasDateTypeInGroup?IntegrationI18n.getLocale("BI-Basic_Calculate_{R1}_is_Not_Supported_To_Calculate_{R2}",t.model.firstDateDimensionName,n.el.text):IntegrationI18n.getLocale("BI-Basic_Calculate_Group_Is_Missing_Date_Fields"):IntegrationI18n.getLocale("BI-Basic_Calculate_To_Be_Analyzed_Area_Is_Missing_Date_Fields")},!0}))})),i}return BI.each(i,(function(e,t){BI.each(t,(function(n,o){e===BI.size(i)-1&&n===BI.size(t)-1||(BI.has(o,"el")?o.el.disabled=!0:o.disabled=!0)}))})),i}}),p()(l()(t),"actions",{checkPeriodValid:function(){var e=t.options,n=e.handleType,o=e.fieldType,i=t.model.sameYearItems;if(t.model.labelValid&&n===j.SUMMARY&&o===f.NUMBER){var a=!1,r=BI.deepClone(t.model.selectedValue),s=r&&r[1];if(!BI.contains(ke,BI.get(s,"value")))return void(t.model.numberPeriodError=a);var l={};BI.each(i,(function(e,t){BI.has(t,"el")?l[t.el.value]=!t.el.disabled:l[t.value]=!t.disabled}));var c=l[s.value];c&&BI.has(s,"childValue")&&(c=BI.contains(BI.map(i[0].children,"value"),s.childValue)),c||(a=!0),t.model.numberPeriodError=a}}}),t}u()(t,e);var n=t.prototype;return n.init=function(){this.comboList=this.model.engineType===g.SPIDER?q():Ie()},n.getItems=function(e,t,n,o){var i=function(){return BI.each(e,(function(e,t){BI.has(t,"el")?(t.el.disabled=!0,t.el.iconCls1=""):(t.disabled=!0,t.cls="")})),e};if(!t)return i();var a=[Y.HOUR,Y.MINUTE,Y.SECOND,Y.YMDH,Y.YMDHM,Y.YMDHMS];if(BI.some(n,(function(e,t){return BI.contains(a,t)})))return i();var r,s=(r=n,0===BI.size(r)?[]:se(r)),l=function(e){return 0===BI.size(e)?[]:le(e)}(n),c=z(),u=BI.filter(c,(function(e,t){return BI.contains(BI.reduce(s,(function(e,t){return BI.concat(t,F[e])}),[]),t.value)}));return BI.each(e,(function(e,t){BI.contains(Ge,t.value||t.el.value)?0===u.length?(t.el.disabled=!0,t.el.iconCls1="",t.el.warningTitle=IntegrationI18n.getLocale("BI-Basic_Calculate_{R1}_is_Not_Supported_To_Calculate_{R2}",o,t.el.text)):t.children=BI.deepClone(u):0===BI.size(l)&&(t.disabled=!0,t.cls="",t.warningTitle=IntegrationI18n.getLocale("BI-Basic_Calculate_{R1}_is_Not_Supported_To_Calculate_{R2}",o,t.text))})),e},t}(I.a),p()(ue,"xtype","bi.model.conf.group.operator.dimension.combo"),ce=ue))||ce,Pe=Object(I.e)()(me=Object(I.f)(Ue,{props:function(){var e=this.options;return{handleType:e.handleType,fieldType:e.fieldType,value:e.value}}})((he=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),i=0;i1e3?t.lengthLabel.element.removeClass("group-count-success").addClass("group-count-failure"):t.lengthLabel.element.removeClass("group-count-failure").addClass("group-count-success")}}),t}u()(t,e);var n=t.prototype;return n.render=function(){var e=this;return{type:BI.VerticalLayout.xtype,vgap:$e,items:[{type:BI.HTapeLayout.xtype,height:Fe,items:[{el:{type:BI.VerticalAdaptLayout.xtype,items:[{type:BI.Label.xtype,text:IntegrationI18n.getLocale("BI-Basic_Group_Space"),textAlign:"left"}]},width:Ye},{type:BI.Editor.xtype,simple:!0,value:this.model.groupInterval,ref:function(t){e.spaceEditor=t},validationChecker:function(t){var n=parseFloat(t);if(!BI.isNumeric(t)||n<=0)return e.groupLengthTemp=0,!1;var o=parseFloat("".concat(e.model.gen.genMax))-parseFloat("".concat(e.model.gen.genMin));return e.groupLengthTemp=n?Math.ceil(o/n):0,e.groupLengthTemp<=1e6},errorText:function(){return e.groupLengthTemp<=1e6?IntegrationI18n.getLocale("BI-Conf_Please_Input_Positive_Number"):IntegrationI18n.getLocale("BI-Design_Current_Group_Num_Out_Of_Limit",100)},listeners:[{eventName:BI.Editor.EVENT_CHANGE,action:function(){e.store.setGroupInterval(e.getValue())}}],cls:"bi-border-bottom",height:Fe}]},{type:BI.FloatLeftLayout.xtype,vgap:$e,items:[{type:BI.Layout.xtype,width:Ye,height:Fe},{type:BI.Label.xtype,width:450,whiteSpace:"normal",$testId:"bi-component-custom-group-number-auto-group-count",cls:function(){return e.model.groupLength>1e3?"group-count-failure":"group-count-success"},textAlign:"left",ref:function(t){e.lengthLabel=t},text:this.model.lengthText}]}]}},n.getValue=function(){return this.spaceEditor.getValue()},t}(BI.Widget),p()(ye,"xtype","fdi.component.custom_group.number.auto"),ve=ye))||ve)||ve,We=(n(14),Object(I.e)()((_e=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),i=0;i1e3&&(e+=",".concat(IntegrationI18n.getLocale("BI-Design_Current_Group_Num_Suggest",1e3))),e},showIndex:function(){return t.model.numberGroupLoading?E.LOADING:E.CONTENT},displayMin:function(){return G(t.model.min,{numSeparators:!1})},displayMax:function(){return G(t.model.max,{numSeparators:!1})}}),p()(l()(t),"actions",{getData:function(){var e=t.options.reqFuncOrVal;return t.model.numberGroupLoading=!0,new Promise((function(n){var o=function(e){t.model.numberGroupLoading=!1,t.setMax(e.max),t.setMin(e.min),t.model.gen={interval:e.interval,step:parseFloat(e.step),genMin:e.interval[0],genMax:e.interval[e.interval.length-1]},n()};BI.isFunction(e)?e(o):o(e)}))},setMax:function(e){t.model.max=e},setMin:function(e){t.model.min=e},setType:function(e){t.model.type=e}}),t}return u()(t,e),t.prototype.state=function(){var e=this.options,t=e.value,n=e.type,o=t||{},i=o.useOther,a=o.nodes,r=o.groupInterval,s=IntegrationI18n.getLocale("BI-Basic_Others");return BI.isEmptyString(i)?s=!1:BI.isNotEmptyString(i)&&(s=i),{type:n,max:void 0,min:void 0,useOther:s,nodes:a||null,interval:void 0,groupInterval:parseFloat(r)||void 0,gen:{genMax:0,genMin:0,interval:[]},validText:"",numberGroupLoading:!0}},t}(I.a),p()(Me,"xtype","fdi.model.custom_group.number"),Ve=Me))||Ve;function Ze(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function et(e){for(var t=1;t0?" - ":"",BI.has(n,"childValue"))if(t.model.fieldType===f.NUMBER&&n.value!==F.PERIOD_OR_RING){var a=o[n.value];a=o[n.childValue]+a,i+=a}else i+=o[n.childValue];else i+=o[n.value]})),i},correctFieldType:function(){return t.model.fieldsTypeMap[t.model.dimension.id]},fieldInvalidType:function(){return null},tipTitle:function(){var e=t.model.selectedText.split("-");if(2===e.length){if(!t.model.tipValid&&t.model.fieldInvalidType)return IntegrationI18n.getLocale("BI-Conf_FieldType_Change_Summary_Missing",t.model.fieldName);var n="".concat(IntegrationI18n.getLocale("BI-Basic_Rapid_Calculation{R1}",BI.trim(e[1])),"(");return t.model.tipValid?n+=IntegrationI18n.getLocale("BI-Basic_Calculate_Depend_Date_Field{R1}",t.model.firstDateDimensionName):n+=BI.isNull(t.model.firstDateDimensionName)?IntegrationI18n.getLocale("BI-Basic_Calculate_Depend_Date_Field_Missed"):IntegrationI18n.getLocale("BI-Basic_Calculate_{R1}_is_Not_Supported_To_Calculate_{R2}",t.model.firstDateDimensionName,BI.trim(e[1])),[IntegrationI18n.getLocale("BI-Basic_Group_Type{R1}",e[0]),"".concat(n,")")].join("\n")}return t.model.selectedText},labelValid:function(){return!0},labelTipType:function(){return t.model.labelValid?"success":"warning"},labelMarkCls:function(){return t.model.labelValid?"":" marked-red"},tipValid:function(){return!0},tipMarkCls:function(){return t.model.tipValid?"":" marked-red"},tipTipType:function(){return t.model.tipValid?"success":"warning"}}),p()(l()(t),"actions",{updateCustomGroupPopup:function(e,n){t.model.customGroupSelected=n||null,t.model.customGroupPopupType=e},requestNumberRange:function(e,n,o){var i=t.model.fields.find((function(t){return t.id===e}));return FDI.request.post("/api/dc/v1/field/range",{field:i,source:n}).then((function(e){return t.model.numberRange=e.data,o(e.data),e.data}))},stringDataGetter:function(e,n){var o=t.model.fields.find((function(t){return t.id===e}));return o?FDI.request.post("/api/dc/v1/field/data",{field:o,source:n}).then((function(e){return{data:{fields:BI.map(e.data.value||[],(function(e,t){return{transferName:t}})),fieldsLabel:[]}}})):Promise.resolve({data:{fields:[],fieldsLabel:[]}})},searchDataGetter:function(e,n,o,i){var a=t.model.fields.find((function(t){return t.id===e}));return window.FDI.request.post("/api/dc/v1/field/data/search",{keyword:o,field:a,source:n}).then((function(e){i(e.data,o)}))},validationChecker:function(e){if(e===t.model.fieldName)return!0;var n=BI.map(t.model.dimensions,"name");return!BI.contains(n,e)},setDimensionSelectedById:function(e,n){n&&t.updateCustomGroupPopup(at.NONE)},setFromPopup:function(e){t.model.fromPopup=e}}),t}u()(t,e);var n=t.prototype;return n.state=function(){return{fieldInvalid:!1,numberPeriodError:!1,fromPopup:!1,customGroupSelected:null,customGroupPopupType:at.NONE,numberRange:{},operatorTypeError:!1}},n.init=function(){var e=this.model.engineType===g.SPIDER?q():Ie();this.comboList=e[this.options.handleType]},t}(I.a),p()(nt,"xtype","fdi.model.data.group.dimension"),tt=nt))||tt,xt=(n(15),Object(I.d)()((lt=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),i=0;i1&&void 0!==arguments[1]?arguments[1]:" ";return BI.isString(e)?e.replace(/[\r\n]+/g,t):e}(s);return{type:BI.FloatLeftLayout.xtype,items:[{el:{type:BI.Label.xtype,cls:"".concat(d," button-label"),textAlign:o,whiteSpace:i,textHeight:a,height:r,text:BI.isEmptyString(BI.trim(p))?IntegrationI18n.getLocale("BI-Basic_(Empty)"):p,value:s,py:l,ref:function(t){e.textLeft=t}},hgap:5},{type:BI.Label.xtype,cls:"button-label bi-tips right-text-proportion-width",invisible:!u,textAlign:o,whiteSpace:i,textHeight:a,height:r,text:c,value:n,ref:function(t){e.textRight=t}}]}},n.mounted=function(){var e=this.options,t=e.keywords,n=e.valueRight,o=e.visible;this.doRedMark(t),""!==n&&this.doHighLight(),this.setVisible(o)},n.doRedMark=function(){var e;(e=this.textLeft).doRedMark.apply(e,arguments)},n.unRedMark=function(){var e;(e=this.textLeft).unRedMark.apply(e,arguments)},n.doHighLight=function(){var e;(e=this.textLeft).doHighLight.apply(e,arguments)},n.unHighLight=function(){var e;(e=this.textLeft).unHighLight.apply(e,arguments)},n.getValueLeft=function(){return this.textLeft.getValue()},n.getValueRight=function(){return this.textRight.getValue()},n.getValue=function(){return this.getValueLeft()},t}(BI.BasicButton),p()(Ht,"xtype","fdi.component.custom_group.string.group_expander.button"),Pt=Ht))||Pt,fn=Object(I.d)()(($t=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),i=0;i=1e3)return!0;var i=o.value,a=o.valueRight||"";return n.push({type:In.xtype,title:r?IntegrationI18n.getLocale("BI-Basic_Click_Cancel_Choose_Field"):i+a,valueLeft:i,valueRight:a,selected:o.selected,cls:"item-custom-group bi-card bi-list-item-select bi-border-radius",visible:!!BI.isNull(o.visible)||o.visible,keywords:s?t.model.keywords:"",tgap:5,rgap:5}),!1})),n}}),t}return u()(t,e),t.prototype._init=function(){this.gId=this.options.gId},t}(I.a),p()($t,"xtype","bi.model.component.custom_group.string.group_expander"),Ft=$t))||Ft,gn=Object(I.d)()((jt=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),i=0;i1||i.push(n)}));var a=t.model.groups[0];t.model.groups.splice(0,1,{id:a.id,selected:a.selected,content:a.content.concat(i),value:a.value}),t.model.groups.splice(n,1)}}}),t}return u()(t,e),t}(I.a),p()(Zt,"xtype","bi.model.component.custom_group.string.pane"),Jt=Zt))||Jt)||Jt,vn=Object(I.e)()(en=Object(I.f)(Bn)((tn=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),i=0;i0},checkboxSelected:function(){return!1!==t.model.useOther},copy2ComboAbility:function(){var e=!1;if(BI.isEmptyArray(t.model.groups))e=!0;else{var n=t.model.groups[0];e=BI.isEmptyArray(n.selected)}return t.model.selectsLength>0&&e},copyGroupValues:function(){var e=BI.deepClone(t.model.groupValues);return e.shift(),BI.map(e,(function(e,t){return BI.extend(t,{$testId:"bi-custom-group-string-copy-group-items"})}))},triggerButtonValue:function(){return IntegrationI18n.getLocale("BI-Basic_Has_Selected_{R1}_Item",t.model.selectsLength)},allGroupNames:function(){var e=BI.map(t.model.groups,(function(e,t){return t.value}));return e.push(t.model.useOtherValue),e},unAvailableNames:function(){var e=t.model.groups[0],n=BI.map(e.content,(function(e,t){return t}));return t.model.allGroupNames.concat(n)},groupValues:function(){return BI.map(t.model.groups,(function(e,t){return{id:t.id,value:t.value,title:t.value,$testId:"bi-custom-group-string-move-group-items"}}))},valueMaps:function(){var e={};return BI.each(t.model.groups,(function(t,n){0!==t&&BI.each(n.content,(function(t,o){BI.isArray(e[o])?e[o].push(n.value):e[o]=[n.value]}))})),e},searchCheckboxDisabled:function(){return""===t.model.keywords},allFieldNames:function(){return BI.map(t.model.allFields,"transferName")},allFieldsLabel:function(){return BI.map(t.model.fieldsLabel,(function(e,n){var o=[];return BI.each(n.content,(function(e,n){var i=BI.find(t.model.allFields,(function(e,t){return t.id===n.id}));BI.isNotNull(i)&&o.push({value:i.transferName})})),xn(xn({},n),{},{content:o})}))}}),p()(l()(t),"childContext",["groups","valueMaps","selects","searchCheckboxSelected","unAvailableNames","keywords","allSelected","move2ComboAbility","copy2ComboAbility"]),p()(l()(t),"actions",{initData:function(){return t.options.reqFunc().then((function(e){t.model.allFields=e.data.fields,t.model.fieldsLabel=e.data.fieldsLabel,t.model.allFieldNames&&t.reformat(t.model.allFieldNames.slice(0,1e3))}))},setUseOther:function(e){t.model.useOther=e,!1!==e&&(t.model.useOtherValue=e)},reformat:function(e){var n=t.options,o=BI.deepClone(e);BI.each(BI.isEmptyArray(t.model.allFieldsLabel)?n.group.details:t.model.allFieldsLabel,(function(n,i){var a=BI.map(i.content,"value");BI.each(a,(function(t,n){BI.contains(e,n)&&BI.remove(o,n)})),t.model.groups.push({content:a,id:i.id,value:i.value,selected:[]})})),t.model.groups.unshift({content:o,id:BI.UUID(),value:n.noGroupName,selected:[]})},createGroup:function(e){var n=BI.UUID(),o=e;BI.isNull(o)&&(o=BI.Func.createDistinctName(BI.map(t.model.unAvailableNames,(function(e,t){return{name:t}})),t.options.baseGroupName));var i={content:[],id:n,value:o,selected:[]};return t.model.groups.push(i),i},moveSelectsTo:function(e,n){var o=BI.findIndex(t.model.groups,(function(t,n){return e===n.value})),i=t.model.groups[o];if(0===o){var a=[];BI.each(t.model.groups,(function(e,t){a=a.concat(t.selected)}));var r=BI.any(a,(function(e,n){return-1!==BI.indexOf(t.model.allGroupNames,n)}));if(t.setShowBubble(r),r)return!1}if(!BI.isNull(i)){var s=[];BI.each(t.model.groups,(function(e,n){BI.isEmptyArray(n.selected)||(s=s.concat(n.selected),BI.remove(t.model.groups[e].content,n.selected),t.model.groups[e].selected=[])}));var l=BI.uniq(i.content.concat(s)),c=[];return 0===o&&BI.each(t.model.groups,(function(e,t){0!==e&&BI.each(t.content,(function(e,t){BI.contains(s,t)&&c.push(t)}))})),BI.remove(l,(function(e,t){return BI.contains(c,t)})),t.model.groups.splice(o,1,{id:i.id,value:i.value,selected:[],content:l}),t.resetAllSelected(),!0}},copySelectsToGroup:function(e){var n=BI.deepClone(t.model.selects);BI.each(t.model.groups,(function(o,i){if(-1!==BI.indexOf(e,i.value)){var a=[];BI.each(n,(function(e,t){BI.each(t.content,(function(e,t){a.push(t)}))})),t.model.groups.splice(o,1,{id:i.id,value:i.value,content:BI.uniq(i.content.concat(a)),selected:[]})}})),BI.each(t.model.groups,(function(e,t){t.selected=[]})),t.resetAllSelected()},setShowBubble:function(e){t.model.showBubble=e},setKeywords:function(e){t.model.keywords=e},setAllSelected:function(e){t.model.allSelected=e},resetAllSelected:function(){var e=BI.Constants.getConstant(wt);t.model.allSelected=e.NORMAL_STATE},getValue:function(){var e=BI.map(t.model.groups,(function(e,t){return{content:BI.map(t.content,(function(e,t){return{value:t}})),id:t.id,value:t.value}}));return e.shift(),{details:e,useOther:t.model.useOther||""}}}),t}return u()(t,e),t.prototype.state=function(){var e=this.options;return e.group=BI.deepClone(e.group)||{},BI.isEmptyString(e.group.useOther)&&(e.group.useOther=!1),{useOther:e.group.useOther||!1,groups:[],searchCheckboxSelected:"NONE",useOtherValue:e.group.useOther||IntegrationI18n.getLocale("BI-Basic_Other"),showBubble:!1,keywords:"",allSelected:BI.Constants.getConstant(wt).NORMAL_STATE,allFields:[],fieldsLabel:[]}},t}(I.a),p()(pn,"xtype","bi.model.component.custom_group.string"),dn=pn))||dn,kn=(n(18),26),Un=580,Pn=350,Hn=10,Fn=28,$n=28,Yn=Object(I.e)()(Cn=Object(I.f)(wn,{props:function(){return this.options}})((On=function(e){function t(){for(var n,o=arguments.length,i=new Array(o),a=0;a0&&void 0!==arguments[0]?arguments[0]:[];return e=this.options.regionType===h.DIMENSION1?IntegrationI18n.getLocale("BI-Basic_Group"):IntegrationI18n.getLocale("BI-Basic_Statistic"),n.push(BI.h(BI.Label,{cls:"bi-region-comment bi-tips",text:IntegrationI18n.getLocale("BI-Conf_Drop_Fields_From_Left",e),height:24,key:"tip".concat(this.options.regionType),invisible:!BI.isEmptyArray(n),ref:function(e){t.watermark=e}})),n},n.getDropFieldOption=function(e){var t,n=this,o=this.createPlaceholder(),i=e.getRegionType(),a=!1,r=this.options.settingStore;return{accept:".group-select-fields-item-button",cursorAt:{left:55,top:10},tolerance:"pointer",drop:function(a,s){t&&$(document).unbind("mousemove",t),t=null;var l=s.helper.data("fields"),c=n.getDropIdx(e,o);r.addDimensionByField(l,i,c),$(o).remove()},over:function(){a=!1,n.hideWatermark(),t&&$(document).unbind("mousemove",t),t=function(t){a||n.insertPlaceholder(e.getRegion(),t,o)},$(document).bind("mousemove",t)},out:function(){a=!0,$(o).remove(),t&&$(document).unbind("mousemove",t),t=null,n.showWatermark(BI.get(n.model.view,i))}}},n.getDropIdx=function(e,t){var n=e.getRegionType();if(0===t.next(":not(.bi-region-comment)").length)return this.model.view[n].length;var o=t.next().attr("dimensionId");return BI.indexOf(this.model.view[n],o)},n.insertPlaceholder=function(e,t,n){var o=e.element,i=o.find(".bi-conf-share-group-operator-dimension");!BI.some(i,(function(e,o){if($(o).__isMouseInBounds__(t)){var i=$(o);n.css({width:i.width()});var a=i.offset().left,r=i.width();return t.pageX-a>r/2?i.after(n):i.before(n),!0}}))&&o.__isMouseInBounds__(t)&&0===n.parent().length&&o.append(n)},n.createPlaceholder=function(){var e=BI.createWidget(BI.h(BI.Label,{cls:"ui-sortable-place-holder-region",height:24,width:118}));return e.element.css({margin:"5px 0px 5px 5px",float:"left"}),e.element},n.getSortFieldOption=function(e){var t,n,o=this,i=e.getRegionType(),a=this.options.settingStore,r=function(e){return BI.$(".group-region-container-".concat(h.DIMENSION1)).__isMouseInBounds__(e)||BI.$(".group-region-container-".concat(h.TARGET1)).__isMouseInBounds__(e)};return{connectWith:".group-region-container",cursorAt:{left:55,top:10},tolerance:"pointer",items:".bi-string-dimension-container, .bi-data-dimension-container, .bi-number-dimension-container",placeholder:{element:function(){return o.createPlaceholder()},update:function(){}},helper:function(e,n){t=n.attr("dimensionId");var i=BI.createWidget(BI.h(y,{width:120,height:20,attributes:{dimensionId:t},cls:"dimension-capsule-helper bi-capsule-border field-draggable bi-card",text:o.model.dimensions[t].name,textAlign:"left"}));return BI.createWidget(BI.h(BI.AbsoluteLayout,{element:o.element},BI.h("el",null,i))),i.element},start:function(e,o){t=o.helper.attr("dimensionId"),n&&$(document).unbind("mousemove",n),n=function(e){t&&!r(e)?o.helper.addClass("delete-draggable"):o.helper.removeClass("delete-draggable")},$(document).bind("mousemove",n)},stop:function(e){n&&$(document).unbind("mousemove",n),r(e)||a.deleteDimension(t),t=null,n=null},update:function(){var t=e.getAllDimensions(),n=e.getAllRegionTyeps();a.setSortBySortInfo({dimensions:t,regionType:i,regionTypes:n})},over:function(e,t){o.hideWatermark(),t.placeholder.show()},out:function(e,t){BI.isNotNull(t.helper)&&(o.showWatermark(BI.get(o.model.view,i)),t.placeholder.hide())}}},n.showWatermark=function(e){var t;BI.isEmpty(e)&&(null===(t=this.watermark)||void 0===t||t.setVisible(!0))},n.hideWatermark=function(){var e;null===(e=this.watermark)||void 0===e||e.setVisible(!1)},n.getAllDimensions=function(){return this.center.element.sortable("toArray",{attribute:"dimensionId"})},n.getAllRegionTyeps=function(){return this.center.element.sortable("toArray",{attribute:"regionType"})},n.getRegion=function(){return this.center},n.getWrapper=function(){return this.wrapper},n.getRegionType=function(){return this.options.regionType},n.populate=function(e){var t,n=BI.isEmptyArray(e);this.center.populate(this.createDimensionItems(e)),null===(t=this.watermark)||void 0===t||t.setVisible(n)},n.createStructures=function(e,t){var n=this,o=this.options.settingStore;return BI.map(e,(function(e,i){var a=n.model.dimensions[i].id,r=n.model.fieldsTypeMap[a],s=n.getDimensionCls(r);return BI.h(zn,{cls:"".concat(s," sign-style-editor"),attributes:{dimensionId:i,regionType:t},dId:i,key:i,handleType:n.switchHandleType(t),source:o.source,listeners:[{eventName:zn.EVENT.RENAME,action:function(e,t){o.setDimensionName(e,t)}},{eventName:zn.EVENT.CHANGE,action:function(e,t){o.setDimension(e,Fix.toJSON(t))}},{eventName:zn.EVENT.DELETE,action:function(e){o.deleteDimension(e)}}]})}))},n.getDimensionCls=function(e){switch(e){case f.NUMBER:return"bi-number-dimension-container";case f.DATE:return"bi-data-dimension-container";case f.STRING:default:return"bi-string-dimension-container"}},n.switchHandleType=function(e){return this.isDimensionRegion1ByRegionType(e)?j.GROUP:j.SUMMARY},n.isDimensionRegion1ByRegionType=function(e){return e===h.DIMENSION1},t}(BI.Widget),p()(Sn,"xtype","fdi.group.operator.region"),Mn=Sn))||Mn)||Mn,eo=Object(I.e)()((Gn=function(e){function t(){for(var t,n=arguments.length,o=new Array(n),i=0;i setStyle(it, STYLE_PRIMARY)), cell(new UICombinationButton("按钮2", new LazyIcon("triangle_down"))), cell(new JButton("按钮", new LazyIcon("add"))), - cell(new JButton(new LazyIcon("multi"))) + cell(new UICombinationButton( + new UISaveForbiddenButton(Toolkit.i18nText("Fine-Design_Basic_Preview"), new LazyIcon("run").white()), + new UISaveForbiddenButton(new LazyIcon("triangle_down").white()))).with(UICombinationButton::setPrimary) ), row(20, cell(new UIToolbarColorButton(new LazyIcon("foreground"))), @@ -189,7 +193,7 @@ public class ButtonStoryBoard extends StoryBoard { ); } - public JComponent toolbar(){ + public JComponent toolbar() { JToolBar bar = new JToolBar(); UIToolbarColorButton foreground = new UIToolbarColorButton(new LazyIcon("foreground")); bar.add(foreground); diff --git a/designer-base/src/test/java/com/fr/design/gui/storybook/components/ComboCheckBoxStoryBoard.java b/designer-base/src/test/java/com/fr/design/gui/storybook/components/ComboCheckBoxStoryBoard.java new file mode 100644 index 0000000000..21a2bc7e28 --- /dev/null +++ b/designer-base/src/test/java/com/fr/design/gui/storybook/components/ComboCheckBoxStoryBoard.java @@ -0,0 +1,46 @@ +package com.fr.design.gui.storybook.components; + +import com.fr.design.gui.icombocheckbox.UIComboCheckBox; +import com.fr.design.gui.ilable.UILabel; +import com.fr.design.gui.storybook.StoryBoard; +import com.fr.design.layout.FRGUIPaneFactory; +import com.fr.stable.ArrayUtils; + +import javax.swing.JPanel; +import java.awt.BorderLayout; + +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.flex; + +public class ComboCheckBoxStoryBoard extends StoryBoard { + public ComboCheckBoxStoryBoard() { + super("下拉多选框"); + + + add( + cell(new UILabel("普通状态")).with(this::h3), + cell(getComboCheckBox(ArrayUtils.toArray("测试1", "测试2", "测试3", "测试4"))), + + cell(new UILabel("长文字状态")).with(this::h3), + cell(getComboCheckBox(ArrayUtils.toArray("测试长文字1测试长文字1测试长文字1测试长文字1测试长文字1测试长文字1测试长文字1", + "测试长文字2测试长文字2测试长文字2测试长文字2测试长文字2测试长文字2测试长文字2", + "测试长文字3测试长文字3测试长文字3测试长文字3测试长文字3测试长文字3测试长文字3", + "测试长文字4测试长文字4测试长文字4测试长文字4测试长文字4测试长文字4测试长文字4"))), + + flex() + ); + } + + private UIComboCheckBox getComboCheckBox(Object[] array) { + return new UIComboCheckBox(array, true) { + protected void setLayoutAndAddComponents() { + // 使用BorderLayout,否则默认使用的FlowLayout会让整个下拉选框使用最小Size,然后TableCell这边会出现空白 + this.setLayout(FRGUIPaneFactory.createBorderLayout()); + JPanel pane = getClickPane(); + pane.setOpaque(false); + this.add(pane, BorderLayout.CENTER); + } + }; + } + +} diff --git a/designer-base/src/test/java/com/fr/design/gui/storybook/components/UICalendarPaneStoryBoard.java b/designer-base/src/test/java/com/fr/design/gui/storybook/components/UICalendarPaneStoryBoard.java new file mode 100644 index 0000000000..072b8e2eec --- /dev/null +++ b/designer-base/src/test/java/com/fr/design/gui/storybook/components/UICalendarPaneStoryBoard.java @@ -0,0 +1,32 @@ +package com.fr.design.gui.storybook.components; + +import com.fine.theme.light.ui.FineRoundBorder; +import com.fr.design.gui.date.UICalendarPanel; +import com.fr.design.gui.date.UIDatePicker; +import com.fr.design.gui.ilable.UILabel; +import com.fr.design.gui.storybook.StoryBoard; + +import javax.swing.*; +import java.awt.*; +import java.util.Date; + +import static com.fine.swing.ui.layout.Layouts.*; + +public class UICalendarPaneStoryBoard extends StoryBoard { + public UICalendarPaneStoryBoard() { + super("日期控件"); + UICalendarPanel calendarPanel = new UICalendarPanel(true); + calendarPanel.setSelectedDate(new Date()); + add( + cell(new UILabel("日期下拉框")).with(this::h3), + row(cell(new UIDatePicker(2)).with(this::setFixSize), flex()), + cell(new UILabel("日期")).with(this::h3), + row(cell(calendarPanel), flex()) + ); + } + + private void setFixSize(JComponent component) { + component.setPreferredSize(new Dimension(240, component.getHeight())); + component.setBorder(new FineRoundBorder()); + } +} diff --git a/designer-base/src/test/java/com/fr/design/mainframe/template/info/TemplateInfoTestHelper.java b/designer-base/src/test/java/com/fr/design/mainframe/template/info/TemplateInfoTestHelper.java index 8ba0278729..c812a0e971 100644 --- a/designer-base/src/test/java/com/fr/design/mainframe/template/info/TemplateInfoTestHelper.java +++ b/designer-base/src/test/java/com/fr/design/mainframe/template/info/TemplateInfoTestHelper.java @@ -1,12 +1,7 @@ package com.fr.design.mainframe.template.info; -import com.fr.config.BBSAttr; -import com.fr.config.MarketConfig; -import com.fr.design.DesignerEnvManager; import com.fr.general.ComparatorUtils; import com.fr.json.JSONObject; -import org.easymock.EasyMock; -import org.powermock.api.easymock.PowerMock; import java.lang.reflect.Field; import java.lang.reflect.Modifier; @@ -31,23 +26,4 @@ class TemplateInfoTestHelper { field.set(null, newValue); } - static void setUpMockForNewInstance() throws Exception { - MarketConfig mockMarketConfig = EasyMock.mock(MarketConfig.class); - BBSAttr bbsAttr = EasyMock.mock(BBSAttr.class); - EasyMock.expect(bbsAttr.getBbsUid()).andReturn(71113).anyTimes(); - EasyMock.expect(mockMarketConfig.getBBSAttr()).andReturn(bbsAttr).anyTimes(); - - PowerMock.mockStatic(MarketConfig.class); - EasyMock.expect(MarketConfig.getInstance()).andReturn(mockMarketConfig).anyTimes(); - - PowerMock.mockStatic(DesignerEnvManager.class); - DesignerEnvManager envManager = EasyMock.mock( DesignerEnvManager.class); - EasyMock.expect(envManager.getUUID()).andReturn("6b6699ff-ec63-43b0-9deb-b580a5f10411").anyTimes(); - EasyMock.expect(envManager.isJoinProductImprove()).andReturn(true).anyTimes(); - EasyMock.expect(DesignerEnvManager.getEnvManager()).andReturn(envManager).anyTimes(); - EasyMock.replay(mockMarketConfig, bbsAttr, envManager); - - - PowerMock.replayAll(); - } } diff --git a/designer-base/src/test/java/com/fr/design/menu/SnapChatMenuDefTest.java b/designer-base/src/test/java/com/fr/design/menu/SnapChatMenuDefTest.java index 277e7101bc..81984c7304 100644 --- a/designer-base/src/test/java/com/fr/design/menu/SnapChatMenuDefTest.java +++ b/designer-base/src/test/java/com/fr/design/menu/SnapChatMenuDefTest.java @@ -9,9 +9,6 @@ import com.fr.design.i18n.Toolkit; import com.fr.design.notification.SnapChatAllTypes; import com.fr.design.notification.SnapChatConfig; import com.fr.stable.xml.XMLableReader; -import com.fr.store.StateHubManager; -import com.fr.store.impl.MemoryLock; -import com.fr.store.impl.MemoryStore; import com.fr.transaction.Configurations; import com.fr.transaction.LocalConfigurationHelper; import org.easymock.EasyMock; @@ -41,8 +38,6 @@ public class SnapChatMenuDefTest { DaoContext.setXmlEntityDao(new LocalXmlEntityDao()); DaoContext.setClassHelperDao(new LocalClassHelperDao()); DaoContext.setEntityDao(new LocalEntityDao()); - StateHubManager.setLock(new MemoryLock()); - StateHubManager.setStorage(new MemoryStore()); Configurations.setHelper(new LocalConfigurationHelper()); } diff --git a/designer-base/src/test/java/com/fr/design/os/impl/SupportOSImplTest.java b/designer-base/src/test/java/com/fr/design/os/impl/SupportOSImplTest.java index d49ab5e073..e78e7812e1 100644 --- a/designer-base/src/test/java/com/fr/design/os/impl/SupportOSImplTest.java +++ b/designer-base/src/test/java/com/fr/design/os/impl/SupportOSImplTest.java @@ -1,16 +1,13 @@ package com.fr.design.os.impl; import com.fr.general.GeneralContext; -import com.fr.third.org.apache.commons.math3.analysis.function.Pow; import junit.framework.TestCase; import org.junit.Assert; import org.junit.Test; - -import java.util.Locale; - import org.junit.runner.RunWith; import org.powermock.modules.junit4.PowerMockRunner; -import org.powermock.reflect.Whitebox; + +import java.util.Locale; /** * @author hades @@ -27,13 +24,4 @@ public class SupportOSImplTest extends TestCase { Assert.assertFalse(SupportOSImpl.AUTOPUSHUPDATE.support()); } - @Test - public void testGetMacOsVersion() throws Exception { - String backUp = System.getProperty("os.version"); - System.setProperty("os.version", "10.16"); - int number = Whitebox.invokeMethod(SupportOSImpl.MACOS_WEB_PLUGIN_MANAGEMENT, "getMacOsVersion"); - Assert.assertEquals(16, number); - System.setProperty("os.version", backUp); - } - } \ No newline at end of file diff --git a/designer-base/src/test/java/com/fr/design/ui/FineUIDemo.java b/designer-base/src/test/java/com/fr/design/ui/FineUIDemo.java index 23ac04a05c..e124b3eded 100644 --- a/designer-base/src/test/java/com/fr/design/ui/FineUIDemo.java +++ b/designer-base/src/test/java/com/fr/design/ui/FineUIDemo.java @@ -20,7 +20,7 @@ public class FineUIDemo { // 是否需要开启调试窗口 DesignerEnvManager.getEnvManager().setOpenDebug(true); - final JxUIPane pane = new JxUIPane.Builder() + final JxUIPane pane = new JxUIPane.Builder() .withComponent(StartComponent.KEY).build(); contentPane.add(pane, BorderLayout.CENTER); frame.setVisible(true); diff --git a/designer-base/src/test/java/com/fr/design/ui/Model.java b/designer-base/src/test/java/com/fr/design/ui/Model.java new file mode 100644 index 0000000000..7ea42d830b --- /dev/null +++ b/designer-base/src/test/java/com/fr/design/ui/Model.java @@ -0,0 +1,34 @@ +package com.fr.design.ui; + +/** + * 测试用 + * + * @author vito + * @since 11.0 + * Created on 2024/9/11 + */ +public class Model { + private String name; + private int age; + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public int getAge() { + return age; + } + + public void setAge(int age) { + this.age = age; + } + + public void print(String message) { + System.out.println(message); + } + +} \ No newline at end of file diff --git a/designer-base/src/test/java/com/fr/design/ui/ModernUIPaneTest.java b/designer-base/src/test/java/com/fr/design/ui/ModernUIPaneTest.java deleted file mode 100644 index 9676ee998a..0000000000 --- a/designer-base/src/test/java/com/fr/design/ui/ModernUIPaneTest.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.fr.design.ui; - -import com.fr.design.DesignerEnvManager; - -import javax.swing.*; -import java.awt.*; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; - -/** - * @author richie - * @version 10.0 - * Created by richie on 2019-03-05 - */ -public class ModernUIPaneTest { - - public static void main(String... args) { - final JFrame frame = new JFrame(); - frame.setSize(1200, 800); - JPanel contentPane = (JPanel) frame.getContentPane(); - // 是否需要开启调试窗口 - DesignerEnvManager.getEnvManager().setOpenDebug(true); - final ModernUIPane pane = new ModernUIPane.Builder() - .withEMB("/com/fr/design/ui/demo.html").namespace("Pool").build(); - contentPane.add(pane, BorderLayout.CENTER); - - Model model = new Model(); - model.setAge(20); - model.setName("Pick"); - pane.populate(model); - - JPanel panel = new JPanel(new FlowLayout()); - contentPane.add(panel, BorderLayout.SOUTH); - JButton button = new JButton("点击我可以看到Swing的弹框,输出填写的信息"); - panel.add(button); - button.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - Model returnValue = pane.update(); - if (returnValue != null) { - JOptionPane.showMessageDialog(frame, String.format("姓名为:%s,年龄为:%d", returnValue.getName(), returnValue.getAge())); - } - } - }); - frame.setVisible(true); - frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - } - - public static class Model { - private String name; - private int age; - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public int getAge() { - return age; - } - - public void setAge(int age) { - this.age = age; - } - - public void print(String message) { - System.out.println(message); - } - - } - -} \ No newline at end of file diff --git a/designer-base/src/test/java/com/fr/design/ui/report/ReportServerParamDemo.java b/designer-base/src/test/java/com/fr/design/ui/report/ReportServerParamDemo.java deleted file mode 100644 index 42199134dc..0000000000 --- a/designer-base/src/test/java/com/fr/design/ui/report/ReportServerParamDemo.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.fr.design.ui.report; - -import com.fr.design.DesignerEnvManager; -import com.fr.design.ui.ModernUIPane; -import com.fr.design.ui.ModernUIPaneTest; - -import javax.swing.*; -import java.awt.*; - -/** - * Created by windy on 2019/3/25. - * 报表服务器参数demo - */ -public class ReportServerParamDemo { - - public static void main(String... args) { - final JFrame frame = new JFrame(); - frame.setSize(660, 600); - JPanel contentPane = (JPanel) frame.getContentPane(); - // 是否需要开启调试窗口 - DesignerEnvManager.getEnvManager().setOpenDebug(true); - - final ModernUIPane pane = new ModernUIPane.Builder() - .withComponent(ReportServerParamComponent.KEY).build(); - contentPane.add(pane, BorderLayout.CENTER); - frame.setVisible(true); - frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); - } -} diff --git a/designer-base/src/test/java/com/fr/design/ui/report/TemplateWebSettingDemo.java b/designer-base/src/test/java/com/fr/design/ui/report/TemplateWebSettingDemo.java index d1067c4e79..6a77c98f77 100644 --- a/designer-base/src/test/java/com/fr/design/ui/report/TemplateWebSettingDemo.java +++ b/designer-base/src/test/java/com/fr/design/ui/report/TemplateWebSettingDemo.java @@ -2,7 +2,7 @@ package com.fr.design.ui.report; import com.fr.design.DesignerEnvManager; import com.fr.design.jxbrowser.JxUIPane; -import com.fr.design.ui.ModernUIPaneTest; +import com.fr.design.ui.Model; import javax.swing.JFrame; import javax.swing.JPanel; @@ -21,7 +21,7 @@ public class TemplateWebSettingDemo { // 是否需要开启调试窗口 DesignerEnvManager.getEnvManager().setOpenDebug(true); - final JxUIPane pane = new JxUIPane.Builder() + final JxUIPane pane = new JxUIPane.Builder() .withComponent(TemplateWebSettingComponent.KEY).build(); contentPane.add(pane, BorderLayout.CENTER); frame.setVisible(true); diff --git a/designer-chart/src/main/java/com/fr/design/chart/ChartIcon.java b/designer-chart/src/main/java/com/fr/design/chart/ChartIcon.java index 2b51b3b9e4..dee0ee5708 100644 --- a/designer-chart/src/main/java/com/fr/design/chart/ChartIcon.java +++ b/designer-chart/src/main/java/com/fr/design/chart/ChartIcon.java @@ -24,7 +24,7 @@ import java.awt.Graphics2D; * 图表的缩略图Icon, 在选择图表类型界面 用到. */ public class ChartIcon implements Icon, XMLable { - private static final int WIDTH = FineUIScale.scale(215); + private static final int WIDTH = FineUIScale.scale(210); private static final int HEIGHT = FineUIScale.scale(100); diff --git a/designer-chart/src/main/java/com/fr/design/chart/ChartTypePane.java b/designer-chart/src/main/java/com/fr/design/chart/ChartTypePane.java index 1cfdde0a19..dd773eea1d 100644 --- a/designer-chart/src/main/java/com/fr/design/chart/ChartTypePane.java +++ b/designer-chart/src/main/java/com/fr/design/chart/ChartTypePane.java @@ -7,6 +7,7 @@ import com.fine.swing.ui.layout.Column; import com.fine.theme.utils.FineLayoutBuilder; import com.fine.theme.utils.FineUIStyle; import com.fine.theme.utils.FineUIUtils; +import com.formdev.flatlaf.ui.FlatUIUtils; import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.chart.chartdata.CallbackEvent; import com.fr.chart.chartattr.ChartCollection; @@ -24,7 +25,6 @@ import com.fr.log.FineLoggerFactory; import com.fr.stable.ArrayUtils; import com.fr.van.chart.config.DefaultStyleHelper4Van; -import javax.swing.BorderFactory; import javax.swing.DefaultListCellRenderer; import javax.swing.DefaultListModel; import javax.swing.JLayer; @@ -74,6 +74,7 @@ public class ChartTypePane extends ChartCommonWizardPane implements CallbackEven JLayer typeScrollPane = FineUIUtils.createCollapsibleScrollBarLayer(mainTypeList); iconViewList = new JList(); + iconViewList.setBorder(null); iconListModel = new DefaultListModel(); iconViewList.setModel(iconListModel); @@ -104,20 +105,20 @@ public class ChartTypePane extends ChartCommonWizardPane implements CallbackEven ChartIcon chartIcon = (ChartIcon) value; UILabel centerImg = new UILabel(chartIcon); UILabel text = new UILabel(getChartName(chartIcon), SwingConstants.CENTER); - - Column component = column( - fix(5), - cell(centerImg), cell(text), - fix(5) - ).getComponent(); - Color borderColor = isSelected ? FineUIUtils.getUIColor("defaultHighlightBorderColor", "Component.focusedBorderColor") - : FineUIUtils.getUIColor("defaultBorderColor", "Component.borderColor"); + Color borderColor = isSelected ? FineUIUtils.getUIColor("defaultHighlightBorderColor", "Component.focusedBorderColor") : + FineUIUtils.getUIColor("defaultBorderColor", "Component.borderColor"); + Color fillColor = FlatUIUtils.getUIColor("fill.normal", Color.WHITE); UIRoundedBorder roundedBorder = new UIRoundedBorder(borderColor, 1, 5); - component.setBorder(BorderFactory.createCompoundBorder( - new ScaledEmptyBorder(0, 10, 10, 0), roundedBorder)); - component.setBackground(Color.WHITE); - return component; - + Column component = column( + fix(5), cell(centerImg), cell(text), fix(5) + ).with(it -> { + it.setOpaque(true); + it.setBorder(roundedBorder); + it.setBackground(fillColor); + }).getComponent(); + JPanel pane = FineLayoutBuilder.asBorderLayoutWrapped(component); + pane.setBorder(new ScaledEmptyBorder(0, 10, 10, 0)); + return pane; } return this; } diff --git a/designer-chart/src/main/java/com/fr/design/chart/axis/ChartAlertValuePane.java b/designer-chart/src/main/java/com/fr/design/chart/axis/ChartAlertValuePane.java index 59250c9725..465d146677 100644 --- a/designer-chart/src/main/java/com/fr/design/chart/axis/ChartAlertValuePane.java +++ b/designer-chart/src/main/java/com/fr/design/chart/axis/ChartAlertValuePane.java @@ -1,5 +1,6 @@ package com.fr.design.chart.axis; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.base.BaseFormula; import com.fr.base.Utils; import com.fr.chart.chartattr.ChartAlertValue; @@ -13,25 +14,31 @@ import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.layout.FRGUIPaneFactory; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.style.AlphaPane; import com.fr.design.style.FRFontPane; import com.fr.design.style.color.ColorSelectBox; import com.fr.design.utils.DesignUtils; -import com.fr.design.utils.gui.GUICoreUtils; import com.fr.general.FRFont; import com.fr.stable.Constants; import com.fr.stable.CoreConstants; -import javax.swing.*; -import java.awt.*; +import javax.swing.ButtonGroup; +import javax.swing.JPanel; +import javax.swing.SwingUtilities; +import java.awt.BorderLayout; +import java.awt.Component; +import java.awt.Font; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.column; +import static com.fine.swing.ui.layout.Layouts.row; +import static com.fine.theme.utils.FineUIUtils.wrapComponentWithTitle; + /** * 图表 坐标轴 警戒线值 编辑界面. (默认 位置居左居右) * @author kunsnat E-mail:kunsnat@gmail.com @@ -55,30 +62,14 @@ public class ChartAlertValuePane extends BasicBeanPane { public ChartAlertValuePane() { this.setLayout(FRGUIPaneFactory.createBorderLayout()); - - JPanel pane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); - this.add(pane, BorderLayout.CENTER); - - JPanel alertLinePane =FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); - pane.add(alertLinePane); - - alertLinePane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alert_Line_Setting"))); - - JPanel valuePane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); - alertLinePane.add(valuePane); - - valuePane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alert_Value") + ":")); - + + // 警戒线 textField = new UITextField(); - textField.setColumns(4); - valuePane.add(textField); - textField.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { showFormulaPane(); } }); - textField.addKeyListener(new KeyAdapter() { public void keyTyped(KeyEvent e) { e.consume(); @@ -86,34 +77,29 @@ public class ChartAlertValuePane extends BasicBeanPane { } }); - JPanel lineStylePane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); - alertLinePane.add(lineStylePane); - - lineStylePane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Line_Style") + ":")); lineCombo = new LineComboBox(CoreConstants.STRIKE_LINE_STYLE_ARRAY_4_CHART); - lineStylePane.add(lineCombo); - - JPanel lineColorPane =FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); - alertLinePane.add(lineColorPane); - - lineColorPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alert_Line_Color") + ":")); colorBox = new ColorSelectBox(80); - lineColorPane.add(colorBox); - alphaPane = new AlphaPane(); - alertLinePane.add(alphaPane); - - JPanel tipPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); - pane.add(tipPane); - - tipPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alert_Tip") + ":", null)); - - JPanel centerPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); - tipPane.add(centerPane); - + + JPanel alertLinePane = column(10, + row( + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alert_Value"))).weight(1), + cell(textField).weight(4) + ), + row( + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Line_Style"))).weight(1), + cell(lineCombo).weight(4) + ), + row( + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alert_Line_Color"))).weight(1), + cell(colorBox).weight(4) + ), + cell(alphaPane) + ).getComponent(); + + // 提示文字 fontNameBox = new UIComboBox(); - fontNameBox.setPreferredSize(new Dimension(80,20)); - + fontNameBox.addItem("SimSun"); // TODO 这边字体中没有在列表内 String[] names = DesignUtils.getAvailableFontFamilyNames4Report(); for(int i = 0; i < names.length; i++) { @@ -121,25 +107,31 @@ public class ChartAlertValuePane extends BasicBeanPane { } fontSizeBox = new UIComboBox(); - fontSizeBox.setPreferredSize(new Dimension(80,20)); Integer[] sizes = FRFontPane.Font_Sizes; for(int i = 0; i < sizes.length; i++) { fontSizeBox.addItem(sizes[i]); } - - double t = TableLayout.FILL; - double[] rowSize = {t, t, t, t, t}; - double[] columnSize = {0.1, 0.2, 0.5, 0.2}; - Component[][] components= { - {null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Content") + ":"), contentField = new UITextField(3)}, - {null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Font") + ":"), fontNameBox}, - {null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Font_Size") + ":"), fontSizeBox}, - {null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Layout") + ": "), leftButton = new UIRadioButton(getLeftName())}, - {null, null, rightButton = new UIRadioButton(getRightName())}, - + leftButton = new UIRadioButton(getLeftName()); + rightButton = new UIRadioButton(getRightName()); + Component[][] components = { + {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Content") ), contentField = new UITextField()}, + {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Font")), fontNameBox}, + {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Font_Size") ), fontSizeBox}, + {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Layout")), + FineLayoutBuilder.createHorizontalLayout(10, leftButton, rightButton)}, + }; - JPanel tablePane = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); - centerPane.add(tablePane); + + JPanel tipPane = FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1, 4}); + + JPanel pane = column(10, + cell(wrapComponentWithTitle(alertLinePane, + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alert_Line_Setting") + )), + cell(wrapComponentWithTitle(tipPane, + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alert_Tip"))) + ).getComponent(); + this.add(pane, BorderLayout.CENTER); ButtonGroup bg = new ButtonGroup(); bg.add(leftButton); diff --git a/designer-chart/src/main/java/com/fr/design/chart/comp/BorderAttriPane.java b/designer-chart/src/main/java/com/fr/design/chart/comp/BorderAttriPane.java index 0625a3e1fa..b9a88140d7 100644 --- a/designer-chart/src/main/java/com/fr/design/chart/comp/BorderAttriPane.java +++ b/designer-chart/src/main/java/com/fr/design/chart/comp/BorderAttriPane.java @@ -27,11 +27,11 @@ public class BorderAttriPane extends BasicPane { this.setLayout(new BorderLayout()); lineCombo = new LineComboBox(CoreConstants.STRIKE_LINE_STYLE_ARRAY_4_CHART); colorSelectBox = new ColorSelectBox(80); - colorSelectBox.setPreferredSize(FineUIScale.scale(new Dimension(60, 24))); + colorSelectBox.setPreferredSize(FineUIScale.scale(new Dimension(80, 24))); colorSelectBox.setSelectObject(null); this.add(row(10, row(cell(new UILabel(lineString + ":")), cell(lineCombo)), - row(cell(new UILabel(colorSting + ":"))), cell(colorSelectBox)).getComponent(), BorderLayout.WEST); + row(cell(new UILabel(colorSting + ":")), cell(colorSelectBox))).getComponent(), BorderLayout.WEST); } public void setLineColor(Color color) { diff --git a/designer-chart/src/main/java/com/fr/design/chart/report/GisMapDataPane.java b/designer-chart/src/main/java/com/fr/design/chart/report/GisMapDataPane.java index ae46f709e6..a503cea781 100644 --- a/designer-chart/src/main/java/com/fr/design/chart/report/GisMapDataPane.java +++ b/designer-chart/src/main/java/com/fr/design/chart/report/GisMapDataPane.java @@ -1,5 +1,7 @@ package com.fr.design.chart.report; +import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.chart.chartdata.TopDefinitionProvider; import com.fr.chart.chartattr.Chart; import com.fr.chart.chartattr.ChartCollection; @@ -7,18 +9,17 @@ import com.fr.chart.chartdata.GisMapReportDefinition; import com.fr.chart.chartdata.GisMapTableDefinition; import com.fr.chart.chartdata.TopDefinition; import com.fr.design.beans.FurtherBasicBeanPane; -import com.fr.design.constants.LayoutConstants; import com.fr.design.dialog.BasicScrollPane; import com.fr.design.gui.frpane.AttributeChangeListener; import com.fr.design.gui.frpane.UIComboBoxPane; import com.fr.design.gui.ilable.BoldFontTextLabel; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.chart.gui.data.DataContentsPane; -import javax.swing.*; -import java.awt.*; +import javax.swing.JPanel; +import java.awt.BorderLayout; +import java.awt.Component; import java.util.ArrayList; import java.util.List; @@ -102,17 +103,13 @@ public class GisMapDataPane extends DataContentsPane{ contentPane.add(dataFromPane = new UIComboBoxPane() { protected void initLayout() { - this.setLayout(new BorderLayout(LayoutConstants.HGAP_LARGE,6)); + this.setLayout(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = { p,f }; - double[] rowSize = { p}; Component[][] components = new Component[][]{ - new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Source") + ":"), jcb}, + new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Source")), jcb}, } ; - JPanel northPane = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, 0, 0); + JPanel northPane = FineLayoutBuilder.commonLeftRightLayout(components); this.add(northPane, BorderLayout.NORTH); this.add(cardPane, BorderLayout.CENTER); @@ -134,7 +131,7 @@ public class GisMapDataPane extends DataContentsPane{ } }, BorderLayout.CENTER); - dataFromPane.setBorder(BorderFactory.createEmptyBorder(10 ,0, 0, 0)); + dataFromPane.setBorder(new ScaledEmptyBorder(10 ,0, 0, 0)); return contentPane; } diff --git a/designer-chart/src/main/java/com/fr/design/chart/report/GisMapReportDataContentPane.java b/designer-chart/src/main/java/com/fr/design/chart/report/GisMapReportDataContentPane.java index 583b0a54fc..7d904136b2 100644 --- a/designer-chart/src/main/java/com/fr/design/chart/report/GisMapReportDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/design/chart/report/GisMapReportDataContentPane.java @@ -1,12 +1,12 @@ package com.fr.design.chart.report; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.base.BaseFormula; import com.fr.base.Utils; import com.fr.chart.chartdata.BaseSeriesDefinition; import com.fr.chart.chartdata.GisMapReportDefinition; import com.fr.chart.chartdata.SeriesDefinition; import com.fr.design.beans.FurtherBasicBeanPane; -import com.fr.design.constants.LayoutConstants; import com.fr.design.constants.UIConstants; import com.fr.design.event.UIObserver; import com.fr.design.event.UIObserverListener; @@ -17,25 +17,26 @@ import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itable.UITableEditor; import com.fr.design.gui.itextfield.UITextField; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.stable.StableUtils; import com.fr.stable.StringUtils; import javax.swing.JComponent; import javax.swing.JPanel; import javax.swing.JTable; -import javax.swing.SwingConstants; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import java.awt.BorderLayout; import java.awt.Component; -import java.awt.Dimension; import java.awt.event.FocusAdapter; import java.awt.event.FocusEvent; import java.util.ArrayList; import java.util.List; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.column; +import static com.fine.swing.ui.layout.Layouts.row; + /** * 属性表gis地图单元格数据源设置界面 * @@ -55,37 +56,25 @@ public class GisMapReportDataContentPane extends FurtherBasicBeanPane(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Address"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_LatLng")}); lnglatOrder = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Longitude_First"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Latitude_First")}); addressPane = new DefaultTinyFormulaPane(); addressNamePane = new DefaultTinyFormulaPane(); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = new double[]{p, f}; - double[] rowSize = new double[]{p, p, p}; - - orderPane = new JPanel(new BorderLayout(LayoutConstants.VGAP_MEDIUM, 0)) { - @Override - public Dimension getPreferredSize() { - if (this.isVisible()) { - return super.getPreferredSize(); - } else { - return new Dimension(0, 0); - } - } - }; - orderPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_LatLng_Order")), BorderLayout.WEST); - orderPane.add(lnglatOrder, BorderLayout.CENTER); + orderPane = FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, + new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_LatLng_Order")), lnglatOrder); orderPane.setVisible(false); lnglatOrder.setSelectedIndex(0); addressType.setSelectedIndex(0); - Component[][] components = new Component[][]{ - new Component[]{addressType, addressPane}, - new Component[]{orderPane, null}, - new Component[]{new UILabel(" " +com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Address_Name")+":", SwingConstants.RIGHT), addressNamePane}, - }; - JPanel northPane = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + JPanel northPane = column(10, + row(10, + cell(addressType).weight(1), cell(addressPane).weight(1) + ), + cell(orderPane), + row( + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Address_Name"))).weight(1.2), cell(addressNamePane).weight(3) + ) + ).getComponent(); this.add(northPane, BorderLayout.NORTH); diff --git a/designer-chart/src/main/java/com/fr/design/chart/report/GisMapTableDataContentPane.java b/designer-chart/src/main/java/com/fr/design/chart/report/GisMapTableDataContentPane.java index 723a91f880..532f9e6b5b 100644 --- a/designer-chart/src/main/java/com/fr/design/chart/report/GisMapTableDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/design/chart/report/GisMapTableDataContentPane.java @@ -1,10 +1,10 @@ package com.fr.design.chart.report; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.base.Utils; import com.fr.chart.base.ChartConstants; import com.fr.chart.chartdata.GisMapTableDefinition; import com.fr.chart.chartdata.SeriesDefinition; -import com.fr.design.constants.LayoutConstants; import com.fr.data.impl.NameTableData; import com.fr.design.data.tabledata.wrapper.TableDataWrapper; import com.fr.design.beans.FurtherBasicBeanPane; @@ -16,17 +16,20 @@ import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itable.UITableEditor; import com.fr.design.gui.itextfield.UITextField; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.chart.gui.data.DatabaseTableDataPane; import com.fr.stable.ArrayUtils; import com.fr.stable.StringUtils; -import javax.swing.*; +import javax.swing.JComponent; +import javax.swing.JPanel; +import javax.swing.JTable; +import javax.swing.SwingConstants; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; -import java.awt.*; +import java.awt.BorderLayout; +import java.awt.Component; import java.awt.event.FocusAdapter; import java.awt.event.FocusEvent; import java.awt.event.ItemEvent; @@ -34,6 +37,10 @@ import java.awt.event.ItemListener; import java.util.ArrayList; import java.util.List; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.column; +import static com.fine.swing.ui.layout.Layouts.row; + /** * 属性表gis地图数据集数据源定义面板 * @author eason @@ -54,26 +61,20 @@ public class GisMapTableDataContentPane extends FurtherBasicBeanPane(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_GIS_Address"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_LatLng")}); - lnglatOrder = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Longitude_First"),com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Latitude_First")}); + addressType = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_GIS_Address"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_LatLng")}); + lnglatOrder = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Longitude_First"),com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Latitude_First")}); addressType.addChangeListener(new ChangeListener() { @Override public void stateChanged(ChangeEvent e) { @@ -82,22 +83,8 @@ public class GisMapTableDataContentPane extends FurtherBasicBeanPane { initButtonGroup(); initRefreshLabel(); areaNameBox = new UIComboBox(); - this.setLayout(new BorderLayout(5, 5)); + this.setLayout(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); this.add(createContentPane(), BorderLayout.NORTH); initTable(treeNodeAndItems); JPanel tablePane = new JPanel(); - tablePane.setLayout(new BorderLayout(5, 10)); - tablePane.setBorder(BorderFactory.createEmptyBorder(0, 10, 0, 10)); + tablePane.setLayout(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); JScrollPane matchAreaScroll = new JScrollPane(matchAreaTable) { @Override public Dimension getPreferredSize() { - return new Dimension(400, 290); + return scale(new Dimension(400, 290)); } }; tablePane.add(matchAreaScroll, BorderLayout.CENTER); - JScrollPane matchResultScroll = new JScrollPane(matchResultTable) { + JScrollPane matchResultScroll = new JScrollPane(matchResultTable){ @Override public Dimension getPreferredSize() { - return new Dimension(400, 200); + return scale(new Dimension(400, 200)); } }; - matchResultScroll.setBorder(BorderFactory.createTitledBorder(Toolkit.i18nText("Fine-Design_Chart_Custom_Match_List"))); - tablePane.add(matchResultScroll, BorderLayout.SOUTH); + Component matchResult = FineUIUtils.wrapComponentWithTitle(matchResultScroll, Toolkit.i18nText("Fine-Design_Chart_Custom_Match_List")); + tablePane.add(matchResult, BorderLayout.SOUTH); - this.setBorder(BorderFactory.createEmptyBorder(5, 10, 5, 10)); + this.setBorder(new ScaledEmptyBorder(10, 10, 10, 10)); this.add(tablePane, BorderLayout.CENTER); } private JPanel createContentPane() { - JPanel panel = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); - - JPanel tableDataPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); - panel.add(tableDataPane); - tableDataPane.add(new UILabel(Toolkit.i18nText("Fine-Design_Chart_Table_Data") + ":")); - tableNameCombox.setPreferredSize(new Dimension(96, 20)); - tableDataPane.add(tableNameCombox); - - JPanel areaNamePane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); - panel.add(areaNamePane); - areaNamePane.add(new UILabel(Toolkit.i18nText("Fine-Design_Chart_Area_Name") + ":")); - areaNamePane.add(areaNameBox); - areaNameBox.setPreferredSize(new Dimension(96, 20)); - panel.add(refreshLabel); - return panel; + tableNameCombox.putClientProperty(COMBO_BOX_TYPE, ADAPTIVE_COMBO_BOX); + areaNameBox.putClientProperty(COMBO_BOX_TYPE, ADAPTIVE_COMBO_BOX); + return FineLayoutBuilder.createHorizontalLayout(10, + new UILabel(Toolkit.i18nText("Fine-Design_Chart_Table_Data") + ":"), tableNameCombox, + new UILabel(Toolkit.i18nText("Fine-Design_Chart_Area_Name") + ":"), areaNameBox, + refreshLabel); } private void initTable(TwoTuple> treeNodeAndItems) { diff --git a/designer-chart/src/main/java/com/fr/design/chartx/component/correlation/AbstractCorrelationPane.java b/designer-chart/src/main/java/com/fr/design/chartx/component/correlation/AbstractCorrelationPane.java index 2cb52f4542..b29146223b 100644 --- a/designer-chart/src/main/java/com/fr/design/chartx/component/correlation/AbstractCorrelationPane.java +++ b/designer-chart/src/main/java/com/fr/design/chartx/component/correlation/AbstractCorrelationPane.java @@ -81,6 +81,7 @@ public abstract class AbstractCorrelationPane extends BasicBeanPane { @Override public void actionPerformed(ActionEvent e) { tablePane.addLine(createLine()); + tablePane.doParentRepaintEvent(); fireTargetChanged(); } }; diff --git a/designer-chart/src/main/java/com/fr/design/chartx/data/DataLayoutHelper.java b/designer-chart/src/main/java/com/fr/design/chartx/data/DataLayoutHelper.java index 98ae28085c..9ac16b486b 100644 --- a/designer-chart/src/main/java/com/fr/design/chartx/data/DataLayoutHelper.java +++ b/designer-chart/src/main/java/com/fr/design/chartx/data/DataLayoutHelper.java @@ -1,15 +1,13 @@ package com.fr.design.chartx.data; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.design.gui.ilable.UILabel; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import javax.swing.BorderFactory; import javax.swing.JComponent; import javax.swing.JPanel; import javax.swing.SwingConstants; import java.awt.Component; -import java.util.Arrays; /** * @author shine @@ -46,13 +44,7 @@ public class DataLayoutHelper { } public static JPanel createDataLayoutPane(Component[][] components) { - int len = components.length; - double p = TableLayout.PREFERRED; - double[] columnSize = {DataLayoutHelper.LABEL_WIDTH, DataLayoutHelper.WIDTH}; - double[] rowSize = new double[len]; - Arrays.fill(rowSize, p); - - return TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[] {1.2, 3}); } public static JPanel createDataLayoutPane(String label, Component component) { diff --git a/designer-chart/src/main/java/com/fr/design/chartx/single/CellDataPane.java b/designer-chart/src/main/java/com/fr/design/chartx/single/CellDataPane.java index 37c45d0416..b4bb2672b0 100644 --- a/designer-chart/src/main/java/com/fr/design/chartx/single/CellDataPane.java +++ b/designer-chart/src/main/java/com/fr/design/chartx/single/CellDataPane.java @@ -2,7 +2,6 @@ package com.fr.design.chartx.single; import com.fr.chartx.data.CellDataDefinition; import com.fr.design.beans.FurtherBasicBeanPane; -import com.fr.design.chartx.data.DataLayoutHelper; import com.fr.design.chartx.fields.AbstractCellDataFieldsPane; import com.fr.design.i18n.Toolkit; @@ -24,7 +23,6 @@ public class CellDataPane extends FurtherBasicBeanPane { this.setLayout(new BorderLayout()); this.add(cellDataFieldsPane, BorderLayout.CENTER); - DataLayoutHelper.addNormalBorder(this); } @Override diff --git a/designer-chart/src/main/java/com/fr/design/chartx/single/DataSetPane.java b/designer-chart/src/main/java/com/fr/design/chartx/single/DataSetPane.java index dab74e15a4..699784cc73 100644 --- a/designer-chart/src/main/java/com/fr/design/chartx/single/DataSetPane.java +++ b/designer-chart/src/main/java/com/fr/design/chartx/single/DataSetPane.java @@ -48,7 +48,6 @@ public class DataSetPane extends FurtherBasicBeanPane { this.setLayout(new BorderLayout(0, 6)); this.add(northPane, BorderLayout.NORTH); this.add(dataSetFieldsPane, BorderLayout.CENTER); - DataLayoutHelper.addNormalBorder(this); checkBoxUse(); } diff --git a/designer-chart/src/main/java/com/fr/design/chartx/single/SingleDataPane.java b/designer-chart/src/main/java/com/fr/design/chartx/single/SingleDataPane.java index 06ed06649b..00873cadd1 100644 --- a/designer-chart/src/main/java/com/fr/design/chartx/single/SingleDataPane.java +++ b/designer-chart/src/main/java/com/fr/design/chartx/single/SingleDataPane.java @@ -46,7 +46,6 @@ public class SingleDataPane extends BasicBeanPane { protected void initLayout() { this.setLayout(new BorderLayout(0, 6)); JPanel northPane = DataLayoutHelper.createDataLayoutPane(Toolkit.i18nText("Fine-Design_Chart_Data_Source"), jcb); - DataLayoutHelper.addNormalBorder(northPane); this.add(northPane, BorderLayout.NORTH); this.add(cardPane, BorderLayout.CENTER); diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/ChartPropertyPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/ChartPropertyPane.java index 48ba6f2d5e..e84a6def42 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/ChartPropertyPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/ChartPropertyPane.java @@ -3,15 +3,12 @@ */ package com.fr.design.mainframe; - -import com.fine.theme.utils.FineUIScale; import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.BaseUtils; import com.fr.base.chart.BaseChartCollection; import com.fr.chart.chartattr.ChartCollection; import com.fr.chart.charttypes.ChartTypeManager; import com.fr.chartx.attr.ChartProvider; -import com.fr.decision.webservice.v10.map.geojson.helper.GEOJSONHelper; import com.fr.design.ChartTypeInterfaceManager; import com.fr.design.designer.TargetComponent; import com.fr.design.gui.chart.BaseChartPropertyPane; @@ -20,10 +17,9 @@ import com.fr.design.gui.frpane.UITitlePanel; import com.fr.design.mainframe.chart.ChartEditPane; import com.fr.design.utils.gui.GUICoreUtils; -import javax.swing.BorderFactory; import javax.swing.Icon; -import javax.swing.SwingWorker; -import java.awt.*; +import java.awt.BorderLayout; +import java.awt.Component; public class ChartPropertyPane extends BaseChartPropertyPane { @@ -44,9 +40,7 @@ public class ChartPropertyPane extends BaseChartPropertyPane { protected void initComponent() { this.setLayout(new BorderLayout()); - this.setBorder(new ScaledEmptyBorder(10, 0, 0, 0)); - // 外部轮廓大小固定,适配滚动面板 - this.setPreferredSize(new Dimension(getWidth(), FineUIScale.scale(900))); + this.setBorder(new ScaledEmptyBorder(10, 4, 0, 4)); } @Override diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/ChartTypeButtonPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/ChartTypeButtonPane.java index 57ad71a50d..ef4a4d788f 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/ChartTypeButtonPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/ChartTypeButtonPane.java @@ -4,7 +4,6 @@ import com.fine.theme.icon.LazyIcon; import com.fine.theme.utils.FineLayoutBuilder; import com.fine.theme.utils.FineUIConstants; import com.fine.theme.utils.FineUIStyle; -import com.fr.base.BaseUtils; import com.fr.chart.base.AttrChangeConfig; import com.fr.chart.chartattr.ChartCollection; import com.fr.chart.charttypes.ChartTypeManager; @@ -29,12 +28,12 @@ import com.fr.stable.StringUtils; import com.fr.van.chart.config.DefaultStyleHelper4Van; import javax.swing.JPanel; +import javax.swing.Icon; import javax.swing.SwingUtilities; import java.awt.BorderLayout; import java.awt.Component; import java.awt.Dimension; import java.awt.Graphics; -import java.awt.Image; import java.awt.Rectangle; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -44,7 +43,6 @@ import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.geom.Rectangle2D; -import java.awt.image.BufferedImage; import java.util.ArrayList; import java.util.HashSet; import java.util.List; @@ -56,6 +54,7 @@ import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.column; import static com.fine.swing.ui.layout.Layouts.flex; import static com.fine.swing.ui.layout.Layouts.row; +import static com.fine.theme.utils.FineUIScale.scale; /** * 图表 类型 增删 控制按钮界面. @@ -458,8 +457,9 @@ public class ChartTypeButtonPane extends BasicBeanPane implemen private class ChartChangeButton extends UIToggleButton { - private static final double DEL_WIDTH = 10; - private BufferedImage closeIcon = BaseUtils.readImageWithCache("com/fr/design/images/toolbarbtn/chartChangeClose.png"); + private final double DEL_WIDTH = scale(9); + private final double DOWN_HEIGHT = scale(1); + private final Icon closeIcon = new LazyIcon("closeTag", 8); private boolean isMoveOn = false; private String buttonName = ""; @@ -506,11 +506,9 @@ public class ChartTypeButtonPane extends BasicBeanPane implemen private void paintDeleteButton(Graphics g2d) { Rectangle2D bounds = this.getBounds(); - int x = (int) (bounds.getWidth() - DEL_WIDTH); - int y = (int) (1); - - g2d.drawImage((Image) closeIcon, x, y, closeIcon.getWidth(), closeIcon.getHeight(), null); + int y = (int) DOWN_HEIGHT; + closeIcon.paintIcon(this, g2d, x, y); } @Override diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/ChartDataFilterPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/ChartDataFilterPane.java index d4b98adb5e..b3f0969909 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/ChartDataFilterPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/ChartDataFilterPane.java @@ -1,12 +1,12 @@ package com.fr.design.mainframe.chart.gui.data; -import com.fine.theme.utils.FineUIScale; import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.Utils; import com.fr.base.chart.chartdata.TopDefinitionProvider; import com.fr.chart.chartattr.ChartCollection; import com.fr.chart.chartattr.Plot; import com.fr.chart.chartdata.TopDefinition; +import com.fr.design.constants.LayoutConstants; import com.fr.design.gui.frpane.AbstractAttrNoScrollPane; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.ilable.UILabel; @@ -26,6 +26,7 @@ import java.awt.Dimension; import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.column; import static com.fine.swing.ui.layout.Layouts.row; +import static com.fine.theme.utils.FineUIScale.scale; /** * 图表数据 分类 系列 过滤界面. @@ -60,7 +61,7 @@ public class ChartDataFilterPane extends ThirdTabPane { } protected void initLayout() { - this.setLayout(new BorderLayout()); + this.setLayout(new BorderLayout(0, scale(10))); if (!paneList.isEmpty()) { if (nameArray.length > 1) { this.add(tabPane, BorderLayout.NORTH); @@ -226,9 +227,9 @@ public class ChartDataFilterPane extends ThirdTabPane { combineOther = new UICheckBox(Toolkit.i18nText("Fine-Design_Chart_Data_CombineOther")); combineOther.setSelected(true); //默认不显示 - preDataNumPane = column(10, - row(cell(label).weight(1.2), cell(preDataNum).weight(3)), - cell(combineOther) + preDataNumPane = column(LayoutConstants.VERTICAL_GAP, + row(cell(label).weight(LayoutConstants.LEFT_WEIGHT), cell(preDataNum).weight(LayoutConstants.RIGHT_WEIGHT)), + row(cell(combineOther)) ).with(it -> it.setBorder(new ScaledEmptyBorder(0, 10, 0, 0))).getComponent(); preDataNumPane.setVisible(false); notShowNull = new UICheckBox(Toolkit.i18nText("Fine-Design_Chart_Data_Not_Show_Cate")); @@ -243,15 +244,15 @@ public class ChartDataFilterPane extends ThirdTabPane { presentPane = row( cell( new UILabel(Toolkit.i18nText("Fine-Design_Chart_Style_Present")) - ).weight(1.2), cell(present).weight(3) + ).weight(LayoutConstants.LEFT_WEIGHT), cell(present).weight(LayoutConstants.RIGHT_WEIGHT) ).getComponent(); - return column(10, - cell(onlyPreData), + return column(LayoutConstants.VERTICAL_GAP, + row(cell(onlyPreData)), cell(preDataNumPane), - cell(notShowNull), + row(cell(notShowNull)), cell(presentPane) - ).with(it -> it.setBorder(new ScaledEmptyBorder(10, 0, 0, 0))).getComponent(); + ).getComponent(); } @@ -356,7 +357,7 @@ public class ChartDataFilterPane extends ThirdTabPane { @Override public Dimension getPreferredSize() { Dimension dim = super.getPreferredSize(); - dim.height = FineUIScale.scale(FIL_HEIGHT); + dim.height = scale(FIL_HEIGHT); return dim; } @@ -385,9 +386,9 @@ public class ChartDataFilterPane extends ThirdTabPane { combineOther = new UICheckBox(Toolkit.i18nText("Fine-Design_Chart_Data_CombineOther")); combineOther.setSelected(true); //默认不显示 - preDataNumPane = column(10, - row(cell(label).weight(1.2), cell(preDataNum).weight(3)), - cell(combineOther) + preDataNumPane = column(LayoutConstants.VERTICAL_GAP, + row(cell(label).weight(LayoutConstants.LEFT_WEIGHT), cell(preDataNum).weight(LayoutConstants.RIGHT_WEIGHT)), + row(cell(combineOther)) ).with(it -> it.setBorder(new ScaledEmptyBorder(0, 10, 0, 0))).getComponent(); preDataNumPane.setVisible(false); notShowNull = new UICheckBox(Toolkit.i18nText("Fine-Design_Chart_Data_Not_Show_Series")); @@ -402,15 +403,15 @@ public class ChartDataFilterPane extends ThirdTabPane { presentPane = row( cell( new UILabel(Toolkit.i18nText("Fine-Design_Chart_Style_Present")) - ).weight(1.2), cell(present).weight(3) + ).weight(LayoutConstants.LEFT_WEIGHT), cell(present).weight(LayoutConstants.RIGHT_WEIGHT) ).getComponent(); - return column(10, - cell(onlyPreData), + return column(LayoutConstants.VERTICAL_GAP, + row(cell(onlyPreData)), cell(preDataNumPane), - cell(notShowNull), + row(cell(notShowNull)), cell(presentPane) - ).with(it -> it.setBorder(new ScaledEmptyBorder(10, 0, 0, 0))).getComponent(); + ).getComponent(); } diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/BubblePlotReportDataContentPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/BubblePlotReportDataContentPane.java index 01c412d314..9aafe20192 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/BubblePlotReportDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/BubblePlotReportDataContentPane.java @@ -5,11 +5,10 @@ import com.fr.chart.chartattr.BubblePlot; import com.fr.chart.chartattr.ChartCollection; import com.fr.chart.chartdata.BubbleReportDefinition; import com.fr.chart.chartdata.BubbleSeriesValue; +import com.fr.design.foldablepane.UIExpandablePane; import com.fr.design.mainframe.chart.gui.ChartDataPane; import com.fr.design.mainframe.chart.gui.data.ChartDataFilterPane; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; - import javax.swing.JPanel; import java.util.ArrayList; import java.util.List; @@ -26,9 +25,7 @@ public class BubblePlotReportDataContentPane extends AbstractReportDataContentPa public BubblePlotReportDataContentPane(ChartDataPane parent) { initEveryPane(); filterPane = new ChartDataFilterPane(new BubblePlot(), parent); - JPanel panel = TableLayout4VanChartHelper.createExpandablePaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Filter"),filterPane); - panel.setBorder(getSidesBorder()); - filterPane.setBorder(getFilterPaneBorder()); + JPanel panel = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Filter"), filterPane); this.add(panel, "0,6,2,4"); } diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/CategoryPlotReportDataContentPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/CategoryPlotReportDataContentPane.java index 944f7d2825..020433d28e 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/CategoryPlotReportDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/CategoryPlotReportDataContentPane.java @@ -41,6 +41,8 @@ public class CategoryPlotReportDataContentPane extends AbstractReportDataContent filterPane = new ChartDataFilterPane(new Bar2DPlot(), parent); this.add(column( cell(categoryName), + fix(10), + cell(getSeriesPane()), fix(10).with(it -> it.setBorder(FineBorderFactory.createDefaultUnderlineBorder())), cell(new UIExpandablePane(Toolkit.i18nText("Fine-Design_Chart_Data_Filter"),filterPane)) ).getComponent()); @@ -53,7 +55,7 @@ public class CategoryPlotReportDataContentPane extends AbstractReportDataContent UILabel label = new UILabel(leftLabel); this.setLayout(new BorderLayout()); this.add(row( - cell(label).weight(1.2), cell(formulaTextField).weight(2), flex(0.1), cell(formulaTextFieldButton).weight(0.4) + cell(label).weight(1.2), row(cell(formulaTextField).weight(2), flex(0.1), cell(formulaTextFieldButton).weight(0.4)).weight(3) ).getComponent()); } diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/MeterPlotReportDataContentPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/MeterPlotReportDataContentPane.java index 0eec72c37e..afc424bd88 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/MeterPlotReportDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/MeterPlotReportDataContentPane.java @@ -1,18 +1,20 @@ package com.fr.design.mainframe.chart.gui.data.report; +import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.chart.chartdata.TopDefinitionProvider; import com.fr.chart.chartattr.ChartCollection; import com.fr.chart.chartattr.MeterPlot; import com.fr.chart.chartdata.MeterReportDefinition; +import com.fr.design.border.FineBorderFactory; +import com.fr.design.foldablepane.UIExpandablePane; import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.chart.gui.ChartDataPane; import com.fr.design.mainframe.chart.gui.data.ChartDataFilterPane; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import javax.swing.BorderFactory; import javax.swing.JPanel; @@ -37,31 +39,15 @@ public class MeterPlotReportDataContentPane extends AbstractReportDataContentPan private ChartDataFilterPane filterPane; public MeterPlotReportDataContentPane(ChartDataPane parent) { -// initEveryPane(); -// -// List list = new ArrayList(); -// list.add(new Object[] { singCateName, "" }); -// list.add(new Object[] { singNeedleValue, "" }); -// seriesPane.populateBean(list); -// -// seriesPane.noAddUse(); - - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {p, f}; - double[] rowSize = getRowSize(); - Component[][] components = getShowComponents(); - JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, 24, 6); - panel.setBorder(BorderFactory.createEmptyBorder(0, 24, 5, 8)); - + JPanel panel = FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); + panel.setBorder(BorderFactory.createCompoundBorder(FineBorderFactory.createDefaultUnderlineBorder(), + new ScaledEmptyBorder(0, 0, 10, 0))); this.setLayout(new BorderLayout()); this.add(panel, BorderLayout.NORTH); filterPane = new ChartDataFilterPane(new MeterPlot(), parent); - JPanel pane = TableLayout4VanChartHelper.createExpandablePaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Filter"), filterPane); - pane.setBorder(getSidesBorder()); - filterPane.setBorder(getFilterPaneBorder()); + JPanel pane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Filter"), filterPane); this.add(pane, BorderLayout.CENTER); } diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/table/MeterPlotTableDataContentPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/table/MeterPlotTableDataContentPane.java index 9224674924..2a8722c2fb 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/table/MeterPlotTableDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/table/MeterPlotTableDataContentPane.java @@ -48,7 +48,7 @@ public class MeterPlotTableDataContentPane extends AbstractTableDataContentPane private Column boxPane; public MeterPlotTableDataContentPane(ChartDataPane parent) { - this.setLayout(new BorderLayout(0, FineUIScale.scale(10))); + this.setLayout(new BorderLayout()); nameBox = new UIComboBoxWithNone(); nameBox.setSelectedIndex(nameBox.getItemCount() -1); @@ -59,6 +59,7 @@ public class MeterPlotTableDataContentPane extends AbstractTableDataContentPane boxPane = new Column(); boxPane.setSpacing(10); + boxPane.add(getJSeparator()); JPanel namePane = createPaneWithLabel(Toolkit.i18nText(METER_NAME), getNameComponent()); boxPane.add(namePane); @@ -71,6 +72,7 @@ public class MeterPlotTableDataContentPane extends AbstractTableDataContentPane final JPanel customPane = createPaneWithLabel(StringUtils.EMPTY, custom); boxPane.add(customPane); + boxPane.add(getJSeparator()); customPane.setVisible(false); @@ -86,9 +88,8 @@ public class MeterPlotTableDataContentPane extends AbstractTableDataContentPane } }); - JPanel jPanel = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Filter"), filterPane, true); + JPanel jPanel = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Filter"), filterPane); - this.add(getJSeparator(), BorderLayout.NORTH); this.add(boxPane, BorderLayout.CENTER); this.add(jPanel, BorderLayout.SOUTH); diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/table/SeriesNameUseFieldNamePane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/table/SeriesNameUseFieldNamePane.java index ec63cda9b9..8e87202b42 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/table/SeriesNameUseFieldNamePane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/table/SeriesNameUseFieldNamePane.java @@ -1,5 +1,6 @@ package com.fr.design.mainframe.chart.gui.data.table; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.base.Utils; import com.fr.base.chart.chartdata.TopDefinitionProvider; import com.fr.chart.chartattr.ChartCollection; @@ -92,12 +93,8 @@ public class SeriesNameUseFieldNamePane extends FurtherBasicBeanPane it.setBorder(FineBorderFactory.createDefaultUnderlineBorder())) ).getComponent(); diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/other/ChartInteractivePane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/other/ChartInteractivePane.java index 8af8ad92d2..33323cf8bc 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/other/ChartInteractivePane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/other/ChartInteractivePane.java @@ -1,5 +1,6 @@ package com.fr.design.mainframe.chart.gui.other; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.base.BaseFormula; import com.fr.base.CoreDecimalFormat; import com.fr.base.Style; @@ -407,11 +408,11 @@ public class ChartInteractivePane extends BasicScrollPane implements UIOb Component[][] components = new Component[][]{ new Component[]{isAutoRefresh, null}, - new Component[]{GUICoreUtils.createFlowPane(new Component[]{ + new Component[]{FineLayoutBuilder.createHorizontalLayout(10, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Time_Interval")), autoRefreshTime, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Time_Seconds")) - }, 1)}, + )}, new Component[]{new UILabel("" + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Not_Support_Img_And_Cell") + ""), null}, }; autoRefreshPane = TableLayoutHelper.createTableLayoutPane4Chart(new String[]{"Fine-Design_Chart_Data_Check"}, components, rowSize, columnSize); diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisLabelPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisLabelPane.java index 390ff1004c..0beb5a3d50 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisLabelPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisLabelPane.java @@ -1,12 +1,14 @@ package com.fr.design.mainframe.chart.gui.style; +import com.fine.swing.ui.layout.Row; +import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.BaseFormula; import com.fr.base.Style; import com.fr.base.Utils; import com.fr.chart.base.ChartBaseUtils; import com.fr.chart.base.TextAttr; import com.fr.chart.chartattr.Axis; -import com.fr.design.constants.LayoutConstants; import com.fr.design.dialog.BasicPane; import com.fr.design.event.UIObserver; import com.fr.design.event.UIObserverListener; @@ -16,14 +18,16 @@ import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ispinner.UIBasicSpinner; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.gui.style.NumberDragBar; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; -import javax.swing.*; +import javax.swing.JPanel; +import javax.swing.SpinnerNumberModel; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; -import java.awt.*; +import java.awt.BorderLayout; +import java.awt.Component; +import java.awt.Container; +import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ItemEvent; @@ -155,33 +159,26 @@ public class ChartAxisLabelPane extends BasicPane implements UIObserver{ } private JPanel getWrapShowWayPane() { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {LayoutConstants.CHART_ATTR_TOMARGIN, p, p, f}; - double[] rowSize = {p, p, p, p}; - Component[][] components = new Component[][]{ - new Component[]{null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Axis_Label_Show")), showWay, null}, - new Component[]{null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation")), labelOrientationChoose, null}, - new Component[]{null, orientationSpinner, orientationBar, null}, - new Component[]{null, textAttrPane, null, null}, + new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Axis_Label_Show")), showWay}, + new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation")), labelOrientationChoose}, + new Component[]{null, createorientionRow()}, + new Component[]{textAttrPane, null, null}, }; - return TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, components,new double[]{1.2, 3}); } - private JPanel getIntervalShowWayPane() { - - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {f}; - double[] rowSize = {p, p, p}; + private Row createorientionRow() { + return FineLayoutBuilder.createHorizontalLayout(10, new double[]{1, 1.5}, orientationSpinner, orientationBar); + } + private JPanel getIntervalShowWayPane() { Component[][] components = new Component[][]{ new Component[]{getCombox()}, new Component[]{getTowChoose()}, new Component[]{getOther()} }; - return TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1}); } private JPanel getTowChoose() { @@ -192,46 +189,30 @@ public class ChartAxisLabelPane extends BasicPane implements UIObserver{ custom.setSelected(false); customLabelSamleTime.setVisible(true); customLabelSamleTime.setEnabled(false); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {LayoutConstants.CHART_ATTR_TOMARGIN, f}; - double[] rowSize = {p, p}; - JPanel customPane = TableLayoutHelper.createTableLayoutPane(new Component[][]{ - new Component[]{custom, customLabelSamleTime, null}, - }, new double[]{p}, new double[]{p, p, f}); + JPanel customPane = FineLayoutBuilder.createHorizontalLayout(10, custom, customLabelSamleTime); Component[][] components = new Component[][]{ - new Component[]{null, auto,}, - new Component[]{null, customPane} + new Component[]{auto,}, + new Component[]{customPane} }; - return TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1}); } private JPanel getCombox() { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {LayoutConstants.CHART_ATTR_TOMARGIN, p, p, f}; - double[] rowSize = {p}; - Component[][] components = new Component[][]{ - new Component[]{null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Axis_Label_Show")), showWay, null} + new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Axis_Label_Show")), showWay} }; - return TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + return FineLayoutBuilder.commonLeftRightLayout(components); } private JPanel getOther() { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {LayoutConstants.CHART_ATTR_TOMARGIN, p, p, f}; - double[] rowSize = {p, p, p}; - Component[][] components = new Component[][]{ - new Component[]{null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation")), labelOrientationChoose, null}, - new Component[]{null, orientationSpinner, orientationBar, null}, - new Component[]{null, textAttrPane, null, null}, + new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation")), labelOrientationChoose}, + new Component[]{null, createorientionRow()}, + new Component[]{textAttrPane, null, null}, }; - return TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); } private void checkShowWay() { @@ -246,18 +227,13 @@ public class ChartAxisLabelPane extends BasicPane implements UIObserver{ } else { labelPane = getWrapShowWayPane(); } - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] row = {p, p}; - double[] col = {f}; - showWayPane = TableLayoutHelper.createTableLayoutPane(new Component[][]{ - new Component[]{isLabelShow}, new Component[]{labelPane}}, row, col); + labelPane.setBorder(new ScaledEmptyBorder(0, 10, 0, 0)); + showWayPane = FineLayoutBuilder.createVerticalLayout(10, isLabelShow, labelPane); + this.add(showWayPane, BorderLayout.CENTER); this.validate(); } - - private void checkOrientationField() { if (labelOrientationChoose.getSelectedIndex() != 2) { orientationBar.setVisible(false); @@ -283,23 +259,17 @@ public class ChartAxisLabelPane extends BasicPane implements UIObserver{ customLabelSamleTime.registerChangeListener(this.observerListener); orientationSpinner.registerChangeListener(this.observerListener); labelOrientationChoose.registerChangeListener(this.observerListener); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {LayoutConstants.CHART_ATTR_TOMARGIN, p, p, f}; - double[] rowSize = {p, p, p, p}; Component[][] components = new Component[][]{ - new Component[]{null,new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Label_Interval")), labelSampleChoose, customLabelSamleTime}, - new Component[]{null,new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation")), labelOrientationChoose, null}, - new Component[]{null,orientationSpinner, orientationBar, null}, - new Component[]{null,textAttrPane, null, null}, + new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Label_Interval")), + FineLayoutBuilder.createHorizontalLayout(10,labelSampleChoose, customLabelSamleTime)}, + new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation")), labelOrientationChoose}, + new Component[]{null, createorientionRow()}, + new Component[]{textAttrPane, null}, }; - labelPane = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); - - double[] row = {p,p}; - double[] col = {f}; - return TableLayoutHelper.createTableLayoutPane(new Component[][]{ - new Component[]{isLabelShow}, new Component[]{labelPane}}, row, col); + labelPane = FineLayoutBuilder.commonLeftRightLayout(components); + labelPane.setBorder(new ScaledEmptyBorder(0, 10, 0, 0)); + return FineLayoutBuilder.createVerticalLayout(10, isLabelShow, labelPane); } private void checkCustomSampleField() { diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisTitlePane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisTitlePane.java index f2d9446297..59ede28610 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisTitlePane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisTitlePane.java @@ -1,25 +1,23 @@ package com.fr.design.mainframe.chart.gui.style; +import com.fine.theme.utils.FineComponentsFactory; +import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.BaseFormula; -import com.fr.base.BaseUtils; import com.fr.base.Style; import com.fr.base.Utils; import com.fr.chart.chartattr.Axis; import com.fr.chart.chartattr.Title; -import com.fr.design.constants.LayoutConstants; import com.fr.design.dialog.BasicPane; import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.ilable.UILabel; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.general.FRFont; import com.fr.stable.Constants; import com.fr.stable.StableUtils; -import javax.swing.Icon; import javax.swing.JPanel; import java.awt.BorderLayout; import java.awt.Component; @@ -46,36 +44,26 @@ public class ChartAxisTitlePane extends BasicPane{ axisTitleContentPane = new DefaultTinyFormulaPane(); axisTitleAttrPane = new ChartTextAttrPane(); axisTitleAttrPane.populate(FRFont.getInstance("Microsoft YaHei", Font.PLAIN, 9)); - Icon[] alignmentIconArray = {BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_left_normal.png"), - BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_center_normal.png"), - BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_right_normal.png")}; - Integer[] alignment = new Integer[] { Constants.LEFT, Constants.CENTER, Constants.RIGHT }; - titleAlignmentPane = new UIButtonGroup(alignmentIconArray, alignment); + titleAlignmentPane = FineComponentsFactory.createHorizontalAlignmentButtonGroup(); titleAlignmentPane.setSelectedItem(Constants.CENTER); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = { LayoutConstants.CHART_ATTR_TOMARGIN, f }; - double[] rowSize = { p, p, p, p}; Component[][] components = new Component[][]{ - new Component[]{null,axisTitleContentPane}, - new Component[]{null,axisTitleAttrPane}, - new Component[]{null,new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alignment_Style"))}, - new Component[]{null,titleAlignmentPane,}, + new Component[]{axisTitleContentPane}, + new Component[]{axisTitleAttrPane}, + new Component[]{FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, + new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alignment_Style")), titleAlignmentPane)}, }; - titlePane = TableLayoutHelper.createTableLayoutPane(components,rowSize,columnSize); - + titlePane = FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1}); + titlePane.setBorder(new ScaledEmptyBorder(0, 10, 0, 0)); + isAxisTitleVisable.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { checkTitleUse(); } }); - double[] row = {p,p}; - double[] col = {f}; this.setLayout(new BorderLayout()); - JPanel panel = TableLayoutHelper.createTableLayoutPane(new Component[][]{ - new Component[]{isAxisTitleVisable}, new Component[]{titlePane}}, row, col); + JPanel panel = FineLayoutBuilder.createVerticalLayout(10, isAxisTitleVisable, titlePane); this.add(panel, BorderLayout.CENTER); } diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartDataPointLabel4GisPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartDataPointLabel4GisPane.java index 6b22c287f5..83caf2986d 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartDataPointLabel4GisPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartDataPointLabel4GisPane.java @@ -1,23 +1,24 @@ package com.fr.design.mainframe.chart.gui.style; +import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.Utils; import com.fr.chart.base.AttrContents; import com.fr.chart.base.ChartConstants; import com.fr.chart.base.DataSeriesCondition; -import com.fr.design.constants.LayoutConstants; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.BoldFontTextLabel; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.chart.gui.ChartStylePane; import com.fr.general.FRFont; import com.fr.stable.StringUtils; -import javax.swing.*; -import java.awt.*; +import javax.swing.JPanel; +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.Component; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -49,31 +50,18 @@ public class ChartDataPointLabel4GisPane extends ChartDatapointLabelPane{ initFormatListener(); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - - double[] columnSize = { p, f }; - double[] rowSize = { p,p,p,p,p,p}; - - JPanel delimiterPane = new JPanel(new BorderLayout(LayoutConstants.VGAP_MEDIUM, LayoutConstants.VGAP_MEDIUM)); - delimiterPane.add(new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Delimiter_Symbol")), BorderLayout.WEST); - delimiterPane.add(divideComoBox, BorderLayout.CENTER); - Component[][] components = new Component[][]{ new Component[]{isAddress, null}, new Component[]{isAddressName, null}, new Component[]{isAddressTittle, null}, new Component[]{isDatapointValue, valueFormatButton}, - new Component[]{delimiterPane, null}, + new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Delimiter_Symbol")), divideComoBox}, new Component[]{textFontPane, null} }; - labelPane = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); - - double[] row = {p,p}; - double[] col = {LayoutConstants.CHART_ATTR_TOMARGIN, f}; - JPanel panel = TableLayoutHelper.createTableLayoutPane(new Component[][]{ - new Component[]{isLabelShow,null},new Component[]{null, labelPane}}, row, col); + labelPane = FineLayoutBuilder.commonLeftRightLayout(components); + labelPane.setBorder(new ScaledEmptyBorder(0, 10, 0, 0)); + JPanel panel = FineLayoutBuilder.createVerticalLayout(10, isLabelShow, labelPane); this.setLayout(new BorderLayout()); this.add(panel, BorderLayout.CENTER) ; diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartDatapointLabelPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartDatapointLabelPane.java index 8e198ea6c5..65cf34c868 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartDatapointLabelPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartDatapointLabelPane.java @@ -1,5 +1,7 @@ package com.fr.design.mainframe.chart.gui.style; +import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.CoreDecimalFormat; import com.fr.base.FRContext; import com.fr.base.Style; @@ -180,11 +182,8 @@ public class ChartDatapointLabelPane extends BasicPane{ components[6] = new Component[]{textFontPane,null}; labelPane = TableLayoutHelper.createTableLayoutPane(components,rowSize2,columnSize); } - - double[] row = {p,p}; - double[] col = {LayoutConstants.CHART_ATTR_TOMARGIN, f}; - panel = TableLayoutHelper.createTableLayoutPane(new Component[][]{ - new Component[]{isLabelShow,null},new Component[]{null, labelPane}}, row, col); + labelPane.setBorder(new ScaledEmptyBorder(0, 10, 0, 0)); + panel = FineLayoutBuilder.createVerticalLayout(10, isLabelShow, labelPane ); this.setLayout(new BorderLayout()); this.add(panel,BorderLayout.CENTER) ; diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartTextAttrPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartTextAttrPane.java index 89281390d0..78ab582038 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartTextAttrPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartTextAttrPane.java @@ -4,18 +4,17 @@ import com.fine.theme.icon.LazyIcon; import com.fine.theme.utils.FineLayoutBuilder; import com.fr.base.FRContext; import com.fr.chart.base.TextAttr; -import com.fr.design.constants.LayoutConstants; import com.fr.design.dialog.BasicPane; import com.fr.design.event.UIObserverListener; import com.fr.design.gui.ibutton.UIColorButton; import com.fr.design.gui.ibutton.UIToggleButton; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.UILabel; +import com.fr.design.gui.itoolbar.UIToolbar; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.TableLayout; import com.fr.design.mainframe.chart.mode.ChartEditContext; import com.fr.design.utils.DesignUtils; -import com.fr.design.utils.gui.GUICoreUtils; import com.fr.general.FRFont; import com.fr.general.GeneralUtils; @@ -23,9 +22,10 @@ import javax.swing.JPanel; import javax.swing.SwingConstants; import java.awt.BorderLayout; import java.awt.Component; -import java.awt.FlowLayout; import java.awt.Font; +import static com.fine.theme.utils.FineUIScale.scale; + public class ChartTextAttrPane extends BasicPane { private static final long serialVersionUID = 6731679928019436869L; public static final int FONT_START = 6; @@ -202,12 +202,13 @@ public class ChartTextAttrPane extends BasicPane { } protected void initComponents() { - Component[] components1 = new Component[]{ - fontColor, italic, bold - }; - JPanel buttonPane = new JPanel(new BorderLayout()); + JPanel buttonPane = new JPanel(new BorderLayout(scale(10), 0)); buttonPane.add(fontSizeComboBox, BorderLayout.CENTER); - buttonPane.add(GUICoreUtils.createFlowPane(components1, FlowLayout.LEFT, LayoutConstants.HGAP_LARGE), BorderLayout.EAST); + UIToolbar toolbar = new UIToolbar(); + toolbar.add(fontColor); + toolbar.add(italic); + toolbar.add(bold); + buttonPane.add(toolbar, BorderLayout.EAST); this.setLayout(new BorderLayout()); this.add(getContentPane(buttonPane), BorderLayout.CENTER); diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/axis/ChartAxisPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/axis/ChartAxisPane.java index af1af8af31..8c83565d17 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/axis/ChartAxisPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/axis/ChartAxisPane.java @@ -6,6 +6,7 @@ import com.fr.design.chart.ChartPlotFactory; import com.fr.design.chart.axis.AxisStyleObject; import com.fr.design.chart.axis.ChartStyleAxisPane; import com.fr.design.gui.frpane.AbstractAttrNoScrollPane; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.chart.PaneTitleConstants; import com.fr.design.mainframe.chart.gui.ChartStylePane; import com.fr.design.mainframe.chart.gui.style.ThirdTabPane; @@ -13,6 +14,7 @@ import com.fr.design.mainframe.chart.gui.style.legend.AutoSelectedPane; import com.fr.design.utils.gui.GUICoreUtils; import com.fr.general.ComparatorUtils; +import java.awt.BorderLayout; import java.util.ArrayList; import java.util.List; @@ -28,6 +30,15 @@ public class ChartAxisPane extends ThirdTabPane implements AutoSelectedPa super(plot, parent); } + @Override + protected void initLayout() { + this.setLayout(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); + if (!paneList.isEmpty()) { + this.add(tabPane, BorderLayout.NORTH); + } + this.add(centerPane, BorderLayout.CENTER); + } + @Override protected List initPaneList(Plot plot, AbstractAttrNoScrollPane parent) { List paneList = new ArrayList(); diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/axis/ChartValuePane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/axis/ChartValuePane.java index 35b57d09d7..80e626d661 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/axis/ChartValuePane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/axis/ChartValuePane.java @@ -1,5 +1,6 @@ package com.fr.design.mainframe.chart.gui.style.axis; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.base.BaseFormula; import com.fr.base.Utils; import com.fr.chart.base.AxisUnitType; @@ -10,13 +11,11 @@ import com.fr.chart.chartattr.NumberAxis; import com.fr.chart.chartattr.Plot; import com.fr.design.chart.ChartSwingUtils; import com.fr.design.chart.axis.MinMaxValuePane; -import com.fr.design.constants.LayoutConstants; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextfield.UITextField; import com.fr.design.gui.style.FormatPane; -import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.chart.gui.style.ChartAxisLabelPane; @@ -34,7 +33,6 @@ import javax.swing.JPanel; import javax.swing.JSeparator; import java.awt.BorderLayout; import java.awt.Component; -import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -153,15 +151,11 @@ public class ChartValuePane extends ChartAxisUsePane{ //构造数据定义界面 private JPanel createDataDefinePane(){ - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = { LayoutConstants.CHART_ATTR_TOMARGIN,p,f}; - double[] rowSize = { p, p}; Component[][] component = new Component[][]{ - new Component[]{null,initMinMaxValue(),null}, - new Component[]{null, addLogarithmicPane2ValuePane(), addLogText()}, + new Component[]{initMinMaxValue(),null}, + new Component[]{addLogarithmicPane2ValuePane(), addLogText()}, }; - return TableLayoutHelper.createTableLayoutPane(component, rowSize, columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, component, new double[]{1, 1}); } // 返回最大最小值界面. 雷达轴 有切换按钮. @@ -175,15 +169,13 @@ public class ChartValuePane extends ChartAxisUsePane{ // 返回对数相关界面. 百分比 没有此界面. protected JPanel addLogarithmicPane2ValuePane() { - JPanel labelLogPane = FRGUIPaneFactory.createLeftFlowZeroGapBorderPane(); - labelLogPane.add(logBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Logarithmic")+":")); - labelLogPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Log_Base"))); - + logBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Logarithmic")); logBaseField = new UITextField(4); logBaseField.setText("10"); - logBaseField.setPreferredSize(new Dimension(55, 20)); + JPanel labelLogPane = FineLayoutBuilder.createHorizontalLayout(10, logBox, + new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Log_Base"))); - logBox.addActionListener(new ActionListener() { + logBox.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { checkLogUse(); } @@ -195,13 +187,7 @@ public class ChartValuePane extends ChartAxisUsePane{ } private JPanel addLogText() { - JPanel labelLogPane = FRGUIPaneFactory.createLeftFlowZeroGapBorderPane(); - - if(logBaseField != null) { - labelLogPane.add(logBaseField); - } - - return labelLogPane; + return FineLayoutBuilder.createHorizontalLayout(10, logBaseField); } protected JPanel getAxisTitlePane(){ diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/legend/ChartLegendPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/legend/ChartLegendPane.java index 4c5a7b6e42..9ec2b0e947 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/legend/ChartLegendPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/legend/ChartLegendPane.java @@ -1,15 +1,14 @@ package com.fr.design.mainframe.chart.gui.style.legend; +import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.BaseUtils; import com.fr.chart.chartattr.Chart; import com.fr.chart.chartattr.Legend; import com.fr.chart.chartattr.Plot; -import com.fr.design.constants.LayoutConstants; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.ilable.BoldFontTextLabel; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.chart.PaneTitleConstants; import com.fr.design.mainframe.chart.gui.style.ChartBackgroundNoImagePane; import com.fr.design.mainframe.chart.gui.style.ChartBorderPane; @@ -18,8 +17,11 @@ import com.fr.design.dialog.BasicScrollPane; import com.fr.stable.Constants; -import javax.swing.*; -import java.awt.*; +import javax.swing.Icon; +import javax.swing.JPanel; +import javax.swing.JSeparator; +import java.awt.BorderLayout; +import java.awt.Component; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -70,24 +72,17 @@ public class ChartLegendPane extends BasicScrollPane{ location.setAllToolTips(textArray); backgroundPane = new ChartBackgroundNoImagePane(); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = { LayoutConstants.CHART_ATTR_TOMARGIN, f }; - double[] rowSize = { p,p,p,p,p,p}; - Component[][] components = new Component[][]{ - new Component[]{null,textAttrPane}, + new Component[]{textAttrPane}, new Component[]{new JSeparator(),null}, new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Layout")),location} , new Component[]{new JSeparator(),null}, new Component[]{borderPane,null}, new Component[]{backgroundPane,null} }; - legendPane = TableLayoutHelper.createTableLayoutPane(components,rowSize,columnSize); - double[] col = {f}; - double[] row = {p, p}; - JPanel panel = TableLayoutHelper.createTableLayoutPane(new Component[][]{ - new Component[]{isLegendVisible},new Component[]{legendPane},},row,col); + legendPane = FineLayoutBuilder.commonLeftRightLayout(components); + legendPane.setBorder(new ScaledEmptyBorder(0, 10, 0, 0)); + JPanel panel = FineLayoutBuilder.createVerticalLayout(10, isLegendVisible, legendPane); this.setLayout(new BorderLayout()); this.add(panel,BorderLayout.CENTER); isLegendVisible.addActionListener(new ActionListener() { diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/UIColorPickerPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/UIColorPickerPane.java index 7a8dc38e65..ff86054a96 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/UIColorPickerPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/UIColorPickerPane.java @@ -47,16 +47,15 @@ import java.util.List; import static com.fine.theme.utils.FineUIScale.scale; public class UIColorPickerPane extends BasicPane implements UIObserver { - private static final int MARGIN_TOP = scale(7); - private static final int MARGIN_LEFT = scale(5); - private static final int COLORGROUP_MARGIN_LEFT = scale(20); - private static final int OFF_HEIGHT = scale(6); + private static final int MARGIN_TOP = scale(10); + private static final int COLORGROUP_MARGIN_LEFT = scale(15); + private static final int OFF_HEIGHT = scale(10); private static final int COLOR_REC_HEIGHT = scale(40); private static final int COLOR_REC_WIDTH = scale(30); protected static final int TEXTFIELD_HEIGHT = scale(20); protected static final int TEXTFIELD_WIDTH = scale(130); - protected static final int UPCONTROLPANE_WIDTH = scale(230); - private static final int LAYOUR_DET = 6; + protected static final int UPCONTROLPANE_WIDTH = scale(224); + private static final int LAYOUR_DET = scale(10); public static final double VALUE = 100; @@ -610,10 +609,14 @@ public class UIColorPickerPane extends BasicPane implements UIObserver { @Override public void layoutContainer(Container parent) { - upControlPane.setBounds(getBoundX(), getBoundY(), UPCONTROLPANE_WIDTH, upControlPane.getPreferredSize().height + MARGIN_TOP); - stagePanel.setBounds(getBoundX(), upControlPane.getPreferredSize().height + LAYOUR_DET + getBoundY(), UPCONTROLPANE_WIDTH, stagePanel.getPreferredSize().height); - colorGroup.setBounds( getColorgroupMarginLeft (), 2 * getBoundY() + upControlPane.getPreferredSize().height + stagePanel.getPreferredSize().height + 2 * LAYOUR_DET, colorGroup.getPreferredSize().width, colorGroup.getPreferredSize().height + upControlPane.getPreferredSize().height); - textGroup.setBounds(colorGroup.getPreferredSize().width + getColorgroupMarginLeft (), upControlPane.getPreferredSize().height + stagePanel.getPreferredSize().height + 2 * LAYOUR_DET + getBoundY(), textGroup.getPreferredSize().width, textGroup.getPreferredSize().height); + upControlPane.setBounds(getBoundX(), getBoundY(), + getParent().getWidth(), upControlPane.getPreferredSize().height + LAYOUR_DET); + stagePanel.setBounds(getBoundX(), upControlPane.getPreferredSize().height + LAYOUR_DET + getBoundY(), + getParent().getWidth(), stagePanel.getPreferredSize().height); + colorGroup.setBounds( getColorgroupMarginLeft(), 2 * getBoundY() + upControlPane.getPreferredSize().height + stagePanel.getPreferredSize().height + 2 * LAYOUR_DET, + colorGroup.getPreferredSize().width, colorGroup.getPreferredSize().height + upControlPane.getPreferredSize().height); + textGroup.setBounds(colorGroup.getPreferredSize().width + getColorgroupMarginLeft(), upControlPane.getPreferredSize().height + stagePanel.getPreferredSize().height + 2 * LAYOUR_DET + getBoundY(), + textGroup.getPreferredSize().width, textGroup.getPreferredSize().height); } @Override @@ -640,9 +643,12 @@ public class UIColorPickerPane extends BasicPane implements UIObserver { @Override public void layoutContainer(Container parent) { - upControlPane.setBounds(getBoundX(), getBoundY(), getBoundWidth(), upControlPane.getPreferredSize().height); - colorGroup.setBounds(COLORGROUP_MARGIN_LEFT, 2 * MARGIN_TOP + upControlPane.getPreferredSize().height + LAYOUR_DET, colorGroup.getPreferredSize().width, colorGroup.getPreferredSize().height + upControlPane.getPreferredSize().height); - textGroup.setBounds(colorGroup.getPreferredSize().width + COLORGROUP_MARGIN_LEFT, MARGIN_TOP + upControlPane.getPreferredSize().height + LAYOUR_DET, textGroup.getPreferredSize().width, textGroup.getPreferredSize().height); + upControlPane.setBounds(getBoundX(), getBoundY(), getParent().getWidth(), + upControlPane.getPreferredSize().height); + colorGroup.setBounds(COLORGROUP_MARGIN_LEFT, 2 * MARGIN_TOP + upControlPane.getPreferredSize().height + LAYOUR_DET, + colorGroup.getPreferredSize().width, colorGroup.getPreferredSize().height + upControlPane.getPreferredSize().height); + textGroup.setBounds(colorGroup.getPreferredSize().width + COLORGROUP_MARGIN_LEFT, MARGIN_TOP + upControlPane.getPreferredSize().height + LAYOUR_DET, + textGroup.getPreferredSize().width, textGroup.getPreferredSize().height); } @Override @@ -652,7 +658,7 @@ public class UIColorPickerPane extends BasicPane implements UIObserver { }; protected int getBoundX() { - return MARGIN_LEFT; + return 0; } protected int getBoundY() { diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/title/ChartTitlePane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/title/ChartTitlePane.java index cc3f828098..a76cf5c2f3 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/title/ChartTitlePane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/title/ChartTitlePane.java @@ -1,30 +1,27 @@ package com.fr.design.mainframe.chart.gui.style.title; +import com.fine.theme.utils.FineComponentsFactory; +import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.BaseFormula; -import com.fr.base.BaseUtils; import com.fr.base.Utils; import com.fr.chart.base.TextAttr; import com.fr.chart.chartattr.Chart; import com.fr.chart.chartattr.Title; -import com.fr.design.constants.LayoutConstants; import com.fr.design.dialog.BasicScrollPane; import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.ilable.BoldFontTextLabel; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.chart.PaneTitleConstants; import com.fr.design.mainframe.chart.gui.style.ChartBackgroundNoImagePane; import com.fr.design.mainframe.chart.gui.style.ChartBorderPane; import com.fr.design.mainframe.chart.gui.style.ChartTextAttrPane; -import com.fr.stable.Constants; import com.fr.stable.StableUtils; import com.fr.stable.StringUtils; -import javax.swing.Icon; import javax.swing.JPanel; import javax.swing.JSeparator; import java.awt.BorderLayout; @@ -57,16 +54,12 @@ public class ChartTitlePane extends BasicScrollPane { isTitleVisable = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Title_Visible")); titlePane = createTitlePane(); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {f}; - double[] rowSize = {p, p}; Component[][] components = new Component[][]{ new Component[]{isTitleVisable}, new Component[]{titlePane} } ; - JPanel panel = TableLayoutHelper.createTableLayoutPane(components,rowSize,columnSize); + JPanel panel = FineLayoutBuilder.compatibleTableLayout(10, components,new double[]{1}); this.setLayout(new BorderLayout()); this.add(panel,BorderLayout.CENTER); @@ -83,10 +76,6 @@ public class ChartTitlePane extends BasicScrollPane { backgroundPane = new ChartBackgroundNoImagePane(); chartDefaultAttrPane = createDefaultAttrPane(); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {p, f}; - double[] rowSize = {p,p,p,p,p}; Component[][] components = new Component[][]{ new Component[]{chartDefaultAttrPane,null}, new Component[]{new JSeparator(),null}, @@ -94,29 +83,22 @@ public class ChartTitlePane extends BasicScrollPane { new Component[]{backgroundPane,null} } ; - return TableLayoutHelper.createTableLayoutPane(components,rowSize,columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1, 0}); } private JPanel createDefaultAttrPane(){ titleContent = new DefaultTinyFormulaPane(); textAttrPane = new ChartTextAttrPane(); - Icon[] alignmentIconArray = {BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_left_normal.png"), - BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_center_normal.png"), - BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_right_normal.png")}; - Integer[] alignment = new Integer[]{Constants.LEFT, Constants.CENTER, Constants.RIGHT}; - alignmentPane = new UIButtonGroup(alignmentIconArray, alignment); + alignmentPane = FineComponentsFactory.createHorizontalAlignmentButtonGroup(); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {LayoutConstants.CHART_ATTR_TOMARGIN, p, f}; - double[] rowSize = {p, p,p}; Component[][] components = new Component[][]{ - new Component[]{null,titleContent,null}, - new Component[]{null,textAttrPane,null}, - new Component[]{null,new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alignment_Style") + ":"),alignmentPane} , + new Component[]{titleContent,null}, + new Component[]{textAttrPane,null}, + new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alignment_Style")), alignmentPane} , } ; - - return TableLayoutHelper.createTableLayoutPane(components,rowSize,columnSize); + JPanel attrPane = FineLayoutBuilder.commonLeftRightLayout(components); + attrPane.setBorder(new ScaledEmptyBorder(0, 10, 0, 0)); + return attrPane; } // 检查标题界面是否可用. diff --git a/designer-chart/src/main/java/com/fr/design/module/ChartPreFillStylePane.java b/designer-chart/src/main/java/com/fr/design/module/ChartPreFillStylePane.java index 7368ea951d..24a31be407 100644 --- a/designer-chart/src/main/java/com/fr/design/module/ChartPreFillStylePane.java +++ b/designer-chart/src/main/java/com/fr/design/module/ChartPreFillStylePane.java @@ -3,17 +3,13 @@ package com.fr.design.module; import com.fine.theme.utils.FineUIScale; import com.fr.base.ChartColorMatching; import com.fr.design.beans.BasicBeanPane; -import com.fr.design.gui.ibutton.UIButtonGroup; +import com.fr.design.gui.ibutton.FitUIButtonGroup; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; -import com.fr.design.layout.FRGUIPaneFactory; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.style.background.gradient.FixedGradientBarNoTheme; import com.fr.design.style.color.ColorAdjustPane; import com.fr.design.style.background.gradient.FixedGradientBar; -import javax.swing.BorderFactory; import javax.swing.JPanel; import java.util.ArrayList; import java.util.Collections; @@ -21,7 +17,6 @@ import java.util.List; import java.awt.BorderLayout; import java.awt.CardLayout; import java.awt.Color; -import java.awt.Component; import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -43,13 +38,14 @@ public class ChartPreFillStylePane extends BasicBeanPane { private JPanel changeColorSetPane; private CardLayout cardLayout; - private UIButtonGroup groupButton; + private FitUIButtonGroup groupButton; private ColorAdjustPane colorAdjustPane; private FixedGradientBar colorGradient; private final Integer COLOR_ADJUST_PANE_WIDTH = 240; private final Integer COLOR_ADJUST_PANE_HEIGHT = 88; + private final Integer MAX_COLOR_COUNT_OF_ROW = 12; public ChartPreFillStylePane() { initComponents(); @@ -58,11 +54,11 @@ public class ChartPreFillStylePane extends BasicBeanPane { } private void initComponents() { - groupButton = new UIButtonGroup<>(new String[]{Toolkit.i18nText("Fine-Design_Chart_Custom_Color"), Toolkit.i18nText("Fine-Design_Chart_Gradient_Color")}); + groupButton = new FitUIButtonGroup<>(new String[]{Toolkit.i18nText("Fine-Design_Chart_Custom_Color"), Toolkit.i18nText("Fine-Design_Chart_Gradient_Color")}); groupButton.setSelectedIndex(0); changeColorSetPane = new JPanel(cardLayout = new CardLayout()); changeColorSetPane.add(colorGradient = new FixedGradientBarNoTheme(4, 150), "gradient"); - changeColorSetPane.add(colorAdjustPane = new ColorAdjustPane(), "acc"); + changeColorSetPane.add(colorAdjustPane = new ColorAdjustPane(MAX_COLOR_COUNT_OF_ROW), "acc"); cardLayout.show(changeColorSetPane, "acc"); colorGradient.getSelectColorPointBtnP1().setColorInner(Color.WHITE); @@ -75,8 +71,8 @@ public class ChartPreFillStylePane extends BasicBeanPane { 10, cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Color_Match"))), row( - cell(groupButton).weight(0.1), - flex(0.2) + cell(groupButton), + flex() ), row( cell(changeColorSetPane).with(it -> it.setPreferredSize(FineUIScale.scale(new Dimension(COLOR_ADJUST_PANE_WIDTH, COLOR_ADJUST_PANE_HEIGHT)))), diff --git a/designer-chart/src/main/java/com/fr/van/chart/box/data/report/BoxPlotReportDataContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/box/data/report/BoxPlotReportDataContentPane.java index 037c0aa70b..583d6d8936 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/box/data/report/BoxPlotReportDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/box/data/report/BoxPlotReportDataContentPane.java @@ -1,24 +1,25 @@ package com.fr.van.chart.box.data.report; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.chartattr.ChartCollection; import com.fr.chart.chartattr.Plot; +import com.fr.design.constants.LayoutConstants; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; import com.fr.design.mainframe.chart.gui.ChartDataPane; import com.fr.design.mainframe.chart.gui.data.report.AbstractReportDataContentPane; -import com.fr.design.utils.gui.GUICoreUtils; import com.fr.plugin.chart.box.VanChartBoxPlot; import com.fr.plugin.chart.box.data.VanBoxReportDefinition; -import javax.swing.BorderFactory; import javax.swing.JPanel; import java.awt.BorderLayout; -import java.awt.Component; -import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.column; + public class BoxPlotReportDataContentPane extends AbstractReportDataContentPane { private UIButtonGroup dataType; @@ -30,37 +31,20 @@ public class BoxPlotReportDataContentPane extends AbstractReportDataContentPane public BoxPlotReportDataContentPane(Plot plot, ChartDataPane parent) { this.initplot = plot; - this.setLayout(new BorderLayout()); - - this.add(createDataTypePane(), BorderLayout.NORTH); - this.add(createSeriesPane(parent), BorderLayout.CENTER); - + this.add(column(LayoutConstants.VERTICAL_GAP, cell(createDataTypePane()), cell(createSeriesPane(parent))).getComponent()); initDataTypeListener(); checkDataPaneVisible(); } private JPanel createDataTypePane() { - JPanel pane = new JPanel(new BorderLayout(4, 0)); - pane.setBorder(BorderFactory.createMatteBorder(0, 0, 6, 1, getBackground())); - - UILabel label = new UILabel(Toolkit.i18nText("Fine-Design_Chart_Data_Form")); - label.setPreferredSize(new Dimension(ChartDataPane.LABEL_WIDTH, ChartDataPane.LABEL_HEIGHT)); - String[] names = new String[]{ Toolkit.i18nText("Fine-Design_Chart_Detailed_Data"), Toolkit.i18nText("Fine-Design_Chart_Result_Data") }; - dataType = new UIButtonGroup(names); dataType.setSelectedIndex(0); - dataType.setPreferredSize(new Dimension(100, 20)); - - pane.add(GUICoreUtils.createBorderLayoutPane(new Component[]{dataType, null, null, label, null})); - pane.setPreferredSize(new Dimension(246, 30)); - pane.setBorder(BorderFactory.createEmptyBorder(0, 18, 10, 15)); - - return pane; + return FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, new UILabel(Toolkit.i18nText("Fine-Design_Chart_Data_Form")), dataType); } private JPanel createSeriesPane(ChartDataPane parent) { diff --git a/designer-chart/src/main/java/com/fr/van/chart/box/data/report/BoxPlotReportResultDataSeriesPane.java b/designer-chart/src/main/java/com/fr/van/chart/box/data/report/BoxPlotReportResultDataSeriesPane.java index 6bf2a9ef28..9f5f3e4ec5 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/box/data/report/BoxPlotReportResultDataSeriesPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/box/data/report/BoxPlotReportResultDataSeriesPane.java @@ -3,7 +3,6 @@ package com.fr.van.chart.box.data.report; import com.fr.chart.chartattr.ChartCollection; import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; -import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; @@ -11,11 +10,9 @@ import com.fr.design.mainframe.chart.gui.data.report.AbstractReportDataContentPa import com.fr.plugin.chart.box.data.VanBoxReportDefinition; import com.fr.plugin.chart.box.data.VanBoxReportResultDefinition; -import javax.swing.BorderFactory; import javax.swing.JPanel; import java.awt.BorderLayout; import java.awt.Component; -import java.awt.Dimension; public class BoxPlotReportResultDataSeriesPane extends AbstractReportDataContentPane { @@ -34,16 +31,13 @@ public class BoxPlotReportResultDataSeriesPane extends AbstractReportDataContent initContentComponents(); JPanel panel = createContentPane(); - - panel.setBorder(BorderFactory.createEmptyBorder(0, 24, 0, 15)); - this.add(panel, BorderLayout.CENTER); } private void initContentComponents() { - category = createTinyFormulaPaneWithTitle(Toolkit.i18nText("Fine-Design_Chart_Category")); - seriesName = createTinyFormulaPaneWithTitle(Toolkit.i18nText("Fine-Design_Chart_Series_Name")); + category = new DefaultTinyFormulaPane(Toolkit.i18nText("Fine-Design_Chart_Category")); + seriesName = new DefaultTinyFormulaPane(Toolkit.i18nText("Fine-Design_Chart_Series_Name")); max = createTinyFormulaWithEditLabel(Toolkit.i18nText("Fine-Design_Chart_Data_Max")); q3 = createTinyFormulaWithEditLabel(Toolkit.i18nText("Fine-Design_Chart_Data_Q3")); @@ -71,23 +65,6 @@ public class BoxPlotReportResultDataSeriesPane extends AbstractReportDataContent return TableLayoutHelper.createTableLayoutPane(components, row, col); } - private TinyFormulaPane createTinyFormulaPaneWithTitle(final String title) { - - return new DefaultTinyFormulaPane() { - protected void initLayout() { - this.setLayout(new BorderLayout(4, 0)); - - UILabel label = new UILabel(title); - label.setPreferredSize(new Dimension(75, 20)); - this.add(label, BorderLayout.WEST); - - formulaTextField.setPreferredSize(new Dimension(100, 20)); - this.add(formulaTextField, BorderLayout.CENTER); - this.add(formulaTextFieldButton, BorderLayout.EAST); - } - }; - } - private TinyFormulaWithEditLabel createTinyFormulaWithEditLabel(String title) { return new TinyFormulaWithEditLabel(title) { diff --git a/designer-chart/src/main/java/com/fr/van/chart/box/data/report/TinyFormulaWithEditLabel.java b/designer-chart/src/main/java/com/fr/van/chart/box/data/report/TinyFormulaWithEditLabel.java index 300de5f618..f48a3c1c09 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/box/data/report/TinyFormulaWithEditLabel.java +++ b/designer-chart/src/main/java/com/fr/van/chart/box/data/report/TinyFormulaWithEditLabel.java @@ -9,7 +9,9 @@ import com.fr.design.mainframe.chart.gui.UIEditLabel; import javax.swing.JPanel; import javax.swing.SwingConstants; import java.awt.BorderLayout; -import java.awt.Dimension; + +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.row; public abstract class TinyFormulaWithEditLabel extends JPanel implements UIObserver { @@ -23,18 +25,13 @@ public abstract class TinyFormulaWithEditLabel extends JPanel implements UIObser protected void doAfterMousePress() { clearAllBackground(); } - protected boolean appendOriginalLabel() { return false; } }; - - editLabel.setPreferredSize(new Dimension(75, 20)); tinyFormulaPane = new DefaultTinyFormulaPane(); - - this.setLayout(new BorderLayout(4, 0)); - this.add(editLabel, BorderLayout.WEST); - this.add(tinyFormulaPane, BorderLayout.CENTER); + this.setLayout(new BorderLayout(0, 10)); + this.add(row(cell(editLabel).weight(1.2), cell(tinyFormulaPane).weight(3)).getComponent()); } protected abstract void clearAllBackground(); diff --git a/designer-chart/src/main/java/com/fr/van/chart/box/data/table/BoxPlotTableDataContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/box/data/table/BoxPlotTableDataContentPane.java index 4fa2296aa0..da7ab243d9 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/box/data/table/BoxPlotTableDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/box/data/table/BoxPlotTableDataContentPane.java @@ -1,5 +1,8 @@ package com.fr.van.chart.box.data.table; +import com.fine.swing.ui.layout.Column; +import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.chart.chartattr.ChartCollection; import com.fr.chart.chartattr.Plot; import com.fr.chart.chartdata.NormalTableDataDefinition; @@ -23,6 +26,8 @@ import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.List; +import static com.fine.swing.ui.layout.Layouts.column; + public class BoxPlotTableDataContentPane extends AbstractTableDataContentPane { private UIButtonGroup dataType; @@ -51,47 +56,30 @@ public class BoxPlotTableDataContentPane extends AbstractTableDataContentPane { } private JPanel createDataTypePane() { - JPanel pane = new JPanel(new BorderLayout(4, 0)); - pane.setBorder(BorderFactory.createMatteBorder(0, 0, 6, 1, getBackground())); - UILabel label = new UILabel(Toolkit.i18nText("Fine-Design_Chart_Data_Form")); - label.setPreferredSize(new Dimension(ChartDataPane.LABEL_WIDTH, ChartDataPane.LABEL_HEIGHT)); - String[] names = new String[]{ Toolkit.i18nText("Fine-Design_Chart_Detailed_Data"), Toolkit.i18nText("Fine-Design_Chart_Result_Data") }; - dataType = new UIButtonGroup(names); dataType.setSelectedIndex(0); - dataType.setPreferredSize(new Dimension(100, 20)); - - pane.add(GUICoreUtils.createBorderLayoutPane(new Component[]{dataType, null, null, label, null})); - pane.setPreferredSize(new Dimension(246, 30)); - pane.setBorder(BorderFactory.createEmptyBorder(0, 24, 10, 15)); - - return pane; + return FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, label, dataType); } private JPanel createSeriesPane() { seriesTypeComboxPane = new BoxPlotTableSeriesTypeUsePane(); resultDataSeriesPane = new BoxPlotTableResultDataSeriesPane(); - - JPanel pane = new JPanel(new BorderLayout(4, 0)); - - pane.add(seriesTypeComboxPane, BorderLayout.CENTER); - pane.add(resultDataSeriesPane, BorderLayout.SOUTH); - - return pane; + Column column = new Column(); + column.setBorder(new ScaledEmptyBorder(10, 0, 0, 0)); + column.setSpacing(10); + column.add(seriesTypeComboxPane); + column.add(resultDataSeriesPane); + return column; } private JPanel createFilterPane() { dataScreeningPane = new ChartDataFilterPane(initplot, parent, false); - dataScreeningPane.setBorder(BorderFactory.createEmptyBorder(10, 24, 10, 15)); - filterPane = new UIExpandablePane(Toolkit.i18nText("Fine-Design_Chart_Data_Filter"), 290, 24, dataScreeningPane); - filterPane.setBorder(BorderFactory.createEmptyBorder(0, 5, 0, 5)); - return filterPane; } diff --git a/designer-chart/src/main/java/com/fr/van/chart/box/data/table/BoxPlotTableResultDataSeriesPane.java b/designer-chart/src/main/java/com/fr/van/chart/box/data/table/BoxPlotTableResultDataSeriesPane.java index 434eff452a..ae4f1ececf 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/box/data/table/BoxPlotTableResultDataSeriesPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/box/data/table/BoxPlotTableResultDataSeriesPane.java @@ -1,5 +1,6 @@ package com.fr.van.chart.box.data.table; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.base.ChartConstants; import com.fr.chart.chartattr.ChartCollection; import com.fr.design.gui.icombobox.UIComboBox; @@ -66,16 +67,7 @@ public class BoxPlotTableResultDataSeriesPane extends AbstractTableDataContentPa private JPanel createUIComboBoxPane(UIComboBox comboBox, String title) { UILabel label = new UILabel(title); - label.setPreferredSize(new Dimension(80, 20)); - comboBox.setPreferredSize(new Dimension(100, 20)); - - JPanel panel = new JPanel(); - - panel.setLayout(new BorderLayout(4, 0)); - panel.add(label, BorderLayout.WEST); - panel.add(comboBox, BorderLayout.CENTER); - - return panel; + return FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, label, comboBox); } private UIComboBoxWithEditLabel createUIComboBoxWithEditLabel(String title) { @@ -108,11 +100,6 @@ public class BoxPlotTableResultDataSeriesPane extends AbstractTableDataContentPa } private JPanel createDataSeriesPane() { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] row = {p, p, p, p, p, p, p}; - double[] col = {f}; - Component[][] components = new Component[][]{ new Component[]{categoryPane}, new Component[]{seriesNamePane}, @@ -123,10 +110,7 @@ public class BoxPlotTableResultDataSeriesPane extends AbstractTableDataContentPa new Component[]{min} }; - JPanel panel = TableLayoutHelper.createTableLayoutPane(components, row, col); - panel.setBorder(BorderFactory.createEmptyBorder(0, 24, 0, 15)); - - return panel; + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1}); } public void checkBoxUse(boolean hasUse) { diff --git a/designer-chart/src/main/java/com/fr/van/chart/box/data/table/BoxPlotTableSeriesTypeUsePane.java b/designer-chart/src/main/java/com/fr/van/chart/box/data/table/BoxPlotTableSeriesTypeUsePane.java index ab0bcfae31..6791c49618 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/box/data/table/BoxPlotTableSeriesTypeUsePane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/box/data/table/BoxPlotTableSeriesTypeUsePane.java @@ -1,5 +1,6 @@ package com.fr.van.chart.box.data.table; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.base.ChartConstants; import com.fr.chart.chartattr.ChartCollection; import com.fr.chart.chartdata.MoreNameCDDefinition; @@ -69,7 +70,6 @@ public class BoxPlotTableSeriesTypeUsePane extends BasicBeanPane { } protected JPanel getContentPane () { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] row = {p, p, p, p, p}; - double[] col = {p, f}; - - return TableLayoutHelper.createTableLayoutPane(getComponent(), row, col); + return FineLayoutBuilder.compatibleTableLayout(10, getComponent(), new double[]{1.2, 3}); } protected Component[][] getComponent () { return new Component[][]{ - new Component[]{null, null}, new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Min_Diameter")), minDiameter}, new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Max_Diameter")), maxDiameter}, new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Shadow")), shadow}, diff --git a/designer-chart/src/main/java/com/fr/van/chart/column/ColumnBorderAttriPane.java b/designer-chart/src/main/java/com/fr/van/chart/column/ColumnBorderAttriPane.java index af4be834ae..df211f716e 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/column/ColumnBorderAttriPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/column/ColumnBorderAttriPane.java @@ -1,12 +1,13 @@ package com.fr.van.chart.column; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.chart.comp.BorderAttriPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ispinner.UISpinner; import com.fr.design.gui.ispinner.chart.UISpinnerWithPx; - -import java.awt.Dimension; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.row; /** * Created by hufan on 2016/8/11. @@ -19,10 +20,9 @@ public class ColumnBorderAttriPane extends BorderAttriPane { } public ColumnBorderAttriPane(String radiusString) { - this.add(new UILabel(radiusString + ":")); radius = new UISpinnerWithPx(0,1000,1,0); - this.add(radius); - radius.setPreferredSize(new Dimension(60, 18)); + this.add(row(cell(new UILabel(radiusString + ":")), cell(radius).weight(1)) + .weight(1).with(it -> it.setBorder(new ScaledEmptyBorder(0, 10, 0, 0))).getComponent()); } public void setRadius(int value) { diff --git a/designer-chart/src/main/java/com/fr/van/chart/column/VanChartColumnConditionPane.java b/designer-chart/src/main/java/com/fr/van/chart/column/VanChartColumnConditionPane.java index c4184f3b17..0a1fa3118a 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/column/VanChartColumnConditionPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/column/VanChartColumnConditionPane.java @@ -1,5 +1,6 @@ package com.fr.van.chart.column; +import com.fine.theme.utils.FineUIScale; import com.fr.chart.base.AttrAlpha; import com.fr.chart.base.AttrBackground; import com.fr.chart.base.AttrBorder; @@ -41,7 +42,7 @@ public class VanChartColumnConditionPane extends DataSeriesConditionPane{ protected void initComponents() { super.initComponents(); //添加全部条件属性后被遮挡 - liteConditionPane.setPreferredSize(new Dimension(300, 400)); + liteConditionPane.setPreferredSize(FineUIScale.scale(new Dimension(300, 400))); } @Override diff --git a/designer-chart/src/main/java/com/fr/van/chart/column/VanChartColumnSeriesPane.java b/designer-chart/src/main/java/com/fr/van/chart/column/VanChartColumnSeriesPane.java index 57176c256c..a8b039c77b 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/column/VanChartColumnSeriesPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/column/VanChartColumnSeriesPane.java @@ -79,7 +79,7 @@ public class VanChartColumnSeriesPane extends VanChartAbstractPlotSeriesPane { isFixedWidth.addActionListener(e -> checkColumnWidth()); isFillWithImage.addActionListener(e -> checkImagePane()); - return new UIExpandablePane(Toolkit.i18nText("Fine-Design_Chart_Filled_With_Image"), borderPane); + return new UIExpandablePane(Toolkit.i18nText("Fine-Design_Chart_Widget_Style"), borderPane, true); } private void checkAll() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/column/VanChartCustomStackAndAxisConditionPane.java b/designer-chart/src/main/java/com/fr/van/chart/column/VanChartCustomStackAndAxisConditionPane.java index 86766676b4..6ff6f35b67 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/column/VanChartCustomStackAndAxisConditionPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/column/VanChartCustomStackAndAxisConditionPane.java @@ -1,29 +1,26 @@ package com.fr.van.chart.column; +import com.fine.theme.utils.FineLayoutBuilder; +import com.fine.theme.utils.FineUIUtils; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.chart.chartglyph.ConditionAttr; import com.fr.data.condition.AbstractCondition; import com.fr.data.condition.ListCondition; import com.fr.design.beans.BasicBeanPane; import com.fr.design.condition.LiteConditionPane; import com.fr.design.gui.ibutton.UIButtonGroup; -import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.layout.FRGUIPaneFactory; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; -import com.fr.design.utils.gui.GUICoreUtils; import com.fr.plugin.chart.base.AttrSeriesStackAndAxis; import com.fr.van.chart.designer.style.series.VanChartSeriesConditionPane; -import javax.swing.BorderFactory; -import javax.swing.BoxLayout; import javax.swing.JPanel; -import javax.swing.ScrollPaneConstants; +import java.awt.BorderLayout; import java.awt.Component; -import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; + /** * 堆积和坐标轴设置 */ @@ -42,36 +39,26 @@ public class VanChartCustomStackAndAxisConditionPane extends BasicBeanPane(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_YES"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_NO")}); isPercentStacked = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_YES"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_NO")}); - double p = TableLayout.PREFERRED; - double[] columnSize = {p, p}; - double[] rowSize = {p, p, p, p}; - return TableLayoutHelper.createTableLayoutPane(getDeployComponents(), rowSize, columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, getDeployComponents(), new double[]{1.2, 3}); } protected Component[][] getDeployComponents() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/custom/VanChartCustomPlotPane.java b/designer-chart/src/main/java/com/fr/van/chart/custom/VanChartCustomPlotPane.java index c3dcf73909..9a41401b0b 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/custom/VanChartCustomPlotPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/custom/VanChartCustomPlotPane.java @@ -3,7 +3,6 @@ package com.fr.van.chart.custom; import com.fr.base.chart.chartdata.TopDefinitionProvider; import com.fr.chart.base.DataSeriesCondition; import com.fr.chart.chartattr.Chart; -import com.fr.chart.chartattr.ChartCollection; import com.fr.chart.chartattr.Plot; import com.fr.chart.chartglyph.ConditionAttr; import com.fr.chart.chartglyph.ConditionCollection; @@ -11,9 +10,7 @@ import com.fr.chartx.attr.ChartProvider; import com.fr.chartx.data.AbstractDataDefinition; import com.fr.chartx.data.ChartDataDefinitionProvider; import com.fr.chartx.data.CustomChartDataDefinition; -import com.fr.design.ChartTypeInterfaceManager; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; +import com.fr.design.constants.LayoutConstants; import com.fr.design.mainframe.chart.gui.type.ChartImagePane; import com.fr.design.mainframe.chart.mode.ChartEditContext; import com.fr.log.FineLoggerFactory; @@ -39,6 +36,9 @@ import java.util.HashMap; import java.util.LinkedHashMap; import java.util.Map; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.column; + /** * Created by Mitisky on 16/2/16. */ @@ -88,22 +88,9 @@ public class VanChartCustomPlotPane extends AbstractVanChartTypePane { private void initContent() { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - autoPane = new JPanel(); - customSelectPane = new VanChartCustomPlotSelectPane(); - - Component[][] components = new Component[][]{ - new Component[]{new JSeparator()}, - new Component[]{customSelectPane} - }; - - double[] columnSize = {p, f}; - double[] rowSize = {p, p}; - customPane = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); - + customPane = column(LayoutConstants.VERTICAL_GAP, cell(new JSeparator()), cell(customSelectPane)).getComponent(); contentPane = new JPanel(new CardLayout()) { @Override public Dimension getPreferredSize() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/custom/component/ChartImageCheckOutPane.java b/designer-chart/src/main/java/com/fr/van/chart/custom/component/ChartImageCheckOutPane.java index 74bf668f8b..960d19f9b6 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/custom/component/ChartImageCheckOutPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/custom/component/ChartImageCheckOutPane.java @@ -1,5 +1,6 @@ package com.fr.van.chart.custom.component; +import com.fine.theme.icon.LazyIcon; import com.fr.design.constants.UIConstants; import com.fr.design.dialog.BasicPane; import com.fr.design.event.UIObserver; @@ -8,21 +9,31 @@ import com.fr.plugin.chart.custom.CustomPlotFactory; import com.fr.plugin.chart.custom.type.CustomPlotType; import javax.swing.BorderFactory; -import javax.swing.ImageIcon; +import javax.swing.Icon; import javax.swing.JCheckBox; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import java.awt.BorderLayout; +import java.awt.Graphics; +import java.awt.Dimension; import java.util.ArrayList; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.row; +import static com.fine.swing.ui.layout.Layouts.flex; + /** * Created by Fangjie on 2016/4/19. */ public class ChartImageCheckOutPane extends BasicPane implements UIObserver { private JCheckBox checkBox; - private CustomPlotType customPlotType; - private ArrayList changeListeners = new ArrayList(); + private Icon backgroundIcon; + private final CustomPlotType customPlotType; + private static final int ICON_WIDTH = 56; + private static final int ICON_HEIGHT = 50; + private final ArrayList changeListeners = new ArrayList(); + private static final String CHART_ICON_PREFIX = "icon_"; public ChartImageCheckOutPane(CustomPlotType type){ this(type, false); @@ -30,40 +41,45 @@ public class ChartImageCheckOutPane extends BasicPane implements UIObserver { public ChartImageCheckOutPane( CustomPlotType type, boolean isSelected){ this.customPlotType = type; + initComponent(isSelected); + } - initCheckBox(isSelected); - - this.add(checkBox, BorderLayout.CENTER); + @Override + protected void paintComponent(Graphics g) { + super.paintComponent(g); + if (backgroundIcon != null) { + backgroundIcon.paintIcon(this, g, 0, 0); + } } public CustomPlotType getCustomPlotType() { return customPlotType; } - private void initCheckBox(boolean isSelected) { + private void initComponent(boolean isSelected) { this.checkBox = new JCheckBox(); this.checkBox.setSelected(isSelected); //设置提示 this.checkBox.setToolTipText(CustomPlotFactory.getTooltipText(this.customPlotType)); - //背景 - checkBox.setIcon(new ImageIcon(getClass().getResource(getIconPath(customPlotType,isSelected)))); - + //设置背景图标 + this.backgroundIcon = new LazyIcon(getIconId(this.customPlotType), new Dimension(ICON_WIDTH, ICON_HEIGHT)); this.setLayout(new BorderLayout()); + this.add(row(flex(), cell(checkBox)).getComponent(), BorderLayout.NORTH); } - private String getIconPath(CustomPlotType customPlotType, boolean isSelected) { - return isSelected ? CustomPlotFactory.getTypeIconPath(customPlotType)[0] : CustomPlotFactory.getTypeIconPath(customPlotType)[1]; + /** + * 图表iconId注册时设置为"icon_" + 图表类型 + * @param customPlotType + * @return + */ + private String getIconId(CustomPlotType customPlotType) { + return CHART_ICON_PREFIX + customPlotType.getType(); } - public JCheckBox getCheckBox() { return checkBox; } - public void checkIconImage(){ - checkBox.setIcon(new ImageIcon(getClass().getResource(getIconPath(customPlotType, checkBox.isSelected())))); - } - public void setPaneBorder(boolean isRightLine, boolean isBottomLine){ this.setBorder(BorderFactory.createMatteBorder(1, 1, isBottomLine ? 1 : 0, isRightLine ? 1 : 0, UIConstants.LINE_COLOR)); } @@ -77,7 +93,6 @@ public class ChartImageCheckOutPane extends BasicPane implements UIObserver { } - @Override protected String title4PopupWindow() { return null; diff --git a/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartCustomPlotSelectPane.java b/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartCustomPlotSelectPane.java index 589b03cad3..296abc5601 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartCustomPlotSelectPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartCustomPlotSelectPane.java @@ -1,5 +1,6 @@ package com.fr.van.chart.custom.component; +import com.fine.theme.utils.FineUIScale; import com.fr.chart.base.ChartThemeStyleProvider; import com.fr.chart.chartattr.Chart; import com.fr.design.beans.BasicBeanPane; @@ -20,7 +21,6 @@ import com.fr.van.chart.custom.CustomPlotDesignerPaneFactory; import javax.swing.JOptionPane; import javax.swing.JPanel; import java.awt.BorderLayout; -import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.ArrayList; @@ -65,8 +65,6 @@ public class VanChartCustomPlotSelectPane extends BasicBeanPane { updateOldSelectedList(); addCheckBoxListener(); - - checkoutSelected(); } private void updateOldSelectedList() { @@ -76,18 +74,11 @@ public class VanChartCustomPlotSelectPane extends BasicBeanPane { } } - private void checkoutSelected() { - for (int i = 0; i < customTypeList.size(); i++){ - //根据是否选中重置背景 - customTypeList.get(i).checkIconImage(); - } - } - private void initContentPane() { content = FRGUIPaneFactory.createNColumnGridInnerContainer_Pane(CUSTOM_TYPE_NUM, 0, 0); for (int i = 0; i < customTypeList.size(); i++){ - customTypeList.get(i).setPreferredSize(new Dimension(REC_WIDTH,REC_HEIGHT)); + customTypeList.get(i).setPreferredSize(FineUIScale.createScaleDimension(REC_WIDTH, REC_HEIGHT)); //是否画右边线 boolean isRightLine = (i == customTypeList.size() - 1) ? true : ((i + 1)%CUSTOM_TYPE_NUM == 0) ? true : false; @@ -124,9 +115,6 @@ public class VanChartCustomPlotSelectPane extends BasicBeanPane { //点击后更新已选顺序 checkoutSelectedPlotTypeList(); - //点击后,更新背景 - checkoutSelected(); - //响应观察者事件,以便更新chart fireDirty(); } @@ -169,8 +157,6 @@ public class VanChartCustomPlotSelectPane extends BasicBeanPane { populateCustomTypeList(customPlot); populateSelectedPlotTypeList(customPlot); - - checkoutSelected(); } private void populateSelectedPlotTypeList(VanChartCustomPlot customPlot) { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/AbstractVanChartScrollPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/AbstractVanChartScrollPane.java index 9949862884..01458cb612 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/AbstractVanChartScrollPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/AbstractVanChartScrollPane.java @@ -1,11 +1,9 @@ package com.fr.van.chart.designer; import com.fr.design.dialog.BasicScrollPane; -import com.fr.design.gui.iscrollbar.UIScrollBar; import javax.swing.BorderFactory; import javax.swing.JPanel; -import java.awt.Container; /** * Created by mengao on 2017/8/11. @@ -21,4 +19,13 @@ public abstract class AbstractVanChartScrollPane extends BasicScrollPane { super.reloaPane(pane); leftcontentPane.setBorder(BorderFactory.createEmptyBorder()); } + + /** + * 获取可视窗口高度 + * @return height + */ + @Override + protected int getMaxHeight() { + return getVisibleRect().height; + } } diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartAreaSeriesFillColorPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartAreaSeriesFillColorPane.java index 241798bef3..7d4ad238f6 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartAreaSeriesFillColorPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartAreaSeriesFillColorPane.java @@ -1,14 +1,14 @@ package com.fr.van.chart.designer.component; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.design.dialog.BasicPane; import com.fr.design.gui.frpane.UINumberDragPane; import com.fr.design.gui.frpane.UINumberDragPaneWithPercent; import com.fr.design.gui.ilable.UILabel; -import com.fr.design.layout.TableLayout; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.plugin.chart.VanChartAttrHelper; import com.fr.plugin.chart.base.AttrAreaSeriesFillColorBackground; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.designer.component.background.VanChartMarkerBackgroundPane; import javax.swing.JPanel; @@ -24,14 +24,9 @@ public class VanChartAreaSeriesFillColorPane extends BasicPane { private UINumberDragPane transparent; public VanChartAreaSeriesFillColorPane() { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] row = {p,p}; - double[] col = {f}; fillColorPane = new VanChartMarkerBackgroundPane(){ protected Component[][] getPaneComponents() { return new Component[][]{ - new Component[]{null, null}, new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Fill_Color")), typeComboBox}, new Component[]{null, centerPane}, }; @@ -39,9 +34,10 @@ public class VanChartAreaSeriesFillColorPane extends BasicPane { }; transparent = new UINumberDragPaneWithPercent(0, 100); - JPanel transparentPane = TableLayout4VanChartHelper.createGapTableLayoutPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Alpha"), transparent); + JPanel transparentPane = FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, + new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Alpha")), transparent); - this.setLayout(new BorderLayout()); + this.setLayout(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); this.add(fillColorPane, BorderLayout.NORTH); this.add(transparentPane, BorderLayout.CENTER); } diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartBeautyPaneWithGradientBar.java b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartBeautyPaneWithGradientBar.java index 9c811d04c0..cdfd92aea5 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartBeautyPaneWithGradientBar.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartBeautyPaneWithGradientBar.java @@ -1,11 +1,11 @@ package com.fr.van.chart.designer.component; +import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.chart.base.GradientStyle; import com.fr.design.i18n.Toolkit; -import com.fr.design.layout.TableLayout; import com.fr.design.style.background.gradient.FixedGradientBar; import com.fr.plugin.chart.type.GradientType; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import javax.swing.JPanel; import java.awt.BorderLayout; @@ -29,18 +29,12 @@ public class VanChartBeautyPaneWithGradientBar extends VanChartBeautyPane { private JPanel initGradientBarPane() { colorGradient = new FixedGradientBar(4, 140); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH; - double[] columnSize = {f, e}; - double[] rowSize = {p, p}; Component[][] components = new Component[][]{ - new Component[]{null, null}, new Component[]{null, colorGradient}, }; - gradientBarPane = TableLayout4VanChartHelper.createGapTableLayoutPane(components, rowSize, columnSize); - + gradientBarPane = FineLayoutBuilder.commonLeftRightLayout(components); + gradientBarPane.setBorder(new ScaledEmptyBorder(10, 0, 0, 0)); return gradientBarPane; } diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartFloatPositionPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartFloatPositionPane.java index 4276be541e..cd3c02540a 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartFloatPositionPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartFloatPositionPane.java @@ -1,11 +1,11 @@ package com.fr.van.chart.designer.component; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.chartattr.Chart; import com.fr.design.beans.BasicBeanPane; +import com.fr.design.constants.LayoutConstants; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ispinner.UISpinner; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.stable.StringUtils; @@ -13,11 +13,15 @@ import javax.swing.JPanel; import java.awt.BorderLayout; import java.awt.Component; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.column; + /** * 悬浮位置 标题和图例用到 */ public class VanChartFloatPositionPane extends BasicBeanPane { private static final long serialVersionUID = -4773313488161065678L; + private static final int VERTICAL_GAP = 8; private UISpinner floatPosition_x; private UISpinner floatPosition_y; @@ -25,24 +29,21 @@ public class VanChartFloatPositionPane extends BasicBeanPane { this.setLayout(new BorderLayout()); - this.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_XY_From_UpLeft")), BorderLayout.CENTER); - - this.add(createCustomFloatPositionPane(), BorderLayout.SOUTH); + this.add(column(VERTICAL_GAP, + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_XY_From_UpLeft"))), + cell(createCustomFloatPositionPane())).getComponent()); } private JPanel createCustomFloatPositionPane(){ floatPosition_x = new UISpinner(0,100,1,0); floatPosition_y = new UISpinner(0,100,1,0); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {p, f}; - double[] rowSize = {p,p}; + Component[][] components = new Component[][]{ new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_positionX")+": "),floatPosition_x}, new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_positionY")+": "),floatPosition_y} }; - return TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + return FineLayoutBuilder.compatibleTableLayout(VERTICAL_GAP, components, new double[]{LayoutConstants.LEFT_WEIGHT, LayoutConstants.RIGHT_WEIGHT}); } public void setFloatPosition_x(double floatPosition_x) { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartHeatValueColorPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartHeatValueColorPane.java index 527c50f3ae..e75726b3c5 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartHeatValueColorPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartHeatValueColorPane.java @@ -51,7 +51,7 @@ public class VanChartHeatValueColorPane extends VanChartValueColorPane { @Override protected MapColorPickerPaneWithFormula createSectionIntervalConfigPane(AbstractAttrNoScrollPane parent) { return new SectionIntervalConfigPaneWithOutNum(parent) { - private final int WIDTH = FineUIScale.scale(227); + private final int WIDTH = FineUIScale.scale(218); @Override protected int getBoundX() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartHtmlLabelPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartHtmlLabelPane.java index ebff936c1c..373fc412d9 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartHtmlLabelPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartHtmlLabelPane.java @@ -1,5 +1,6 @@ package com.fr.van.chart.designer.component; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.design.DesignerEnvManager; import com.fr.design.constants.KeyWords; import com.fr.design.gui.autocomplete.AutoCompletion; @@ -13,11 +14,9 @@ import com.fr.design.gui.itextfield.UITextField; import com.fr.design.gui.syntax.ui.rsyntaxtextarea.RSyntaxTextArea; import com.fr.design.gui.syntax.ui.rsyntaxtextarea.SyntaxConstants; import com.fr.design.i18n.Toolkit; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.utils.gui.UIComponentUtils; import com.fr.plugin.chart.base.VanChartHtmlLabel; -import com.fr.van.chart.designer.style.VanChartStylePane; import javax.swing.JComponent; import javax.swing.JPanel; @@ -63,20 +62,15 @@ public class VanChartHtmlLabelPane extends JPanel { UIComponentUtils.setLineWrap(useHtml); useHtml.addChangeListener(e -> checkWidthAndHeightPane()); widthAndHeightPane = createWidthAndHeightPane(); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {f}; - double[] rowSize = {p, p, p, p}; Component[][] components = new Component[][]{ new Component[]{createJSContentPane()}, new Component[]{useHtml}, - new Component[]{null, null}, }; - JPanel contentPane = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + JPanel contentPane = FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1}); - this.setLayout(new BorderLayout()); + this.setLayout(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); this.add(contentPane, BorderLayout.NORTH); if (widthAndHeightPane != null) { this.add(widthAndHeightPane, BorderLayout.CENTER); @@ -152,17 +146,12 @@ public class VanChartHtmlLabelPane extends JPanel { checkHeight(); } }); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {p, f}; - double[] rowSize = {p, p, p}; Component[][] components = new Component[][]{ new Component[]{isCustomWidth, customWidth}, new Component[]{isCustomHeight, customHeight}, - new Component[]{null, null} }; - return TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.4, 0.6}); } private void checkWidth() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartHtmlLabelPaneWithBackGroundLabel.java b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartHtmlLabelPaneWithBackGroundLabel.java index 4e29e3c827..6125ed1ed3 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartHtmlLabelPaneWithBackGroundLabel.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartHtmlLabelPaneWithBackGroundLabel.java @@ -1,10 +1,8 @@ package com.fr.van.chart.designer.component; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import javax.swing.JPanel; import java.awt.Component; @@ -12,16 +10,12 @@ import java.awt.Component; public class VanChartHtmlLabelPaneWithBackGroundLabel extends VanChartHtmlLabelPane { protected JPanel createWidthAndHeightPane() { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double d = TableLayout4VanChartHelper.DESCRIPTION_AREA_WIDTH; - JPanel panel = super.createWidthAndHeightPane(); Component[][] components = new Component[][]{ new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Background")), panel}, }; - return TableLayoutHelper.createTableLayoutPane(components, new double[]{p, p}, new double[]{d, f}); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); } } diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartLabelContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartLabelContentPane.java index 54200fcdee..0002b3aceb 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartLabelContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartLabelContentPane.java @@ -35,7 +35,6 @@ public class VanChartLabelContentPane extends VanChartTooltipContentPane { return super.createCommonStylePane(); } setTextAttrPane(new LabelAttrPaneWithThemeStyle()); - JPanel stylePanel = new JPanel(new BorderLayout()); stylePanel.add(getTextAttrPane(), BorderLayout.CENTER); diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartTooltipContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartTooltipContentPane.java index ce4a6492b5..b7ac9a7265 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartTooltipContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartTooltipContentPane.java @@ -1,7 +1,9 @@ package com.fr.van.chart.designer.component; +import com.fine.swing.ui.layout.Layouts; import com.fine.theme.utils.FineLayoutBuilder; import com.fine.theme.utils.FineUIScale; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.beans.BasicBeanPane; import com.fr.design.dialog.BasicDialog; import com.fr.design.dialog.DialogActionAdapter; @@ -52,10 +54,6 @@ import java.util.LinkedHashMap; import java.util.List; import java.util.Map; -import static com.fine.swing.ui.layout.Layouts.cell; -import static com.fine.swing.ui.layout.Layouts.column; -import static com.fine.swing.ui.layout.Layouts.row; - /** * 数据点提示内容界面,含有通用设置、富文本编辑器、自定义JS界面 */ @@ -300,7 +298,8 @@ public class VanChartTooltipContentPane extends BasicBeanPaneit.setBorder(new ScaledEmptyBorder(0, 0, 10, 0))).getComponent(); } public JPanel createCommonStylePane() { @@ -310,11 +309,11 @@ public class VanChartTooltipContentPane extends BasicBeanPane { initTooltipSet(); - JPanel jPanel = new JPanel(); - jPanel.add(autoTooltip, BorderLayout.CENTER); - jPanel.add(tooltipSet, BorderLayout.EAST); - - JPanel moreLabelPane = FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, - new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_More_Label")), moreLabel); - + JPanel tipPane = getTooltipPane(); + UILabel backgroundDetectionLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_More_Label")); + backgroundDetectionLabel.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_More_Label")); + JPanel moreLabelPane = FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, backgroundDetectionLabel, moreLabel); - Component[][] components = initComponent(jPanel); - JPanel panel1 = FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 1.2, 1.2, 0.6}); + Component[][] components = initComponent(tipPane); contentPane = new JPanel(new BorderLayout()); - contentPane.add(panel1, BorderLayout.CENTER); + contentPane.add(FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}), BorderLayout.CENTER); - Component[][] AutoTooltipComponent = initAutoTooltipComponent(); - JPanel panel2 = FineLayoutBuilder.compatibleTableLayout(10, AutoTooltipComponent, new double[]{1.2, 2, 1}); - contentPane.add(panel2, BorderLayout.SOUTH); return FineLayoutBuilder.createVerticalLayout(10, moreLabelPane, contentPane); } protected Component[][] initComponent(JPanel autoTooltipPane){ + Column centerPane = column(10, + row( + cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Time_Interval"))), + flex(), + cell(autoRefreshTime), + cell(new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Time_Seconds"))) + ), + cell(autoTooltipPane) + ).getComponent(); + return new Component[][]{ - new Component[]{null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Time_Interval")), - autoRefreshTime, new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Time_Seconds"))}, - new Component[]{null, autoTooltip, null, tooltipSet}, + new Component[]{null, centerPane} }; } + @Nullable + protected JPanel getTooltipPane() { + JPanel tipPane = new JPanel(new BorderLayout()); + tipPane.add(autoTooltip, BorderLayout.CENTER); + tipPane.add(tooltipSet, BorderLayout.EAST); + return tipPane; + } + + @Deprecated protected Component[][] initAutoTooltipComponent () { return new Component[][]{ diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/other/AutoRefreshPaneWithoutTooltip.java b/designer-chart/src/main/java/com/fr/van/chart/designer/other/AutoRefreshPaneWithoutTooltip.java index 21cfe6443f..845c15dbc4 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/other/AutoRefreshPaneWithoutTooltip.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/other/AutoRefreshPaneWithoutTooltip.java @@ -3,7 +3,7 @@ package com.fr.van.chart.designer.other; import com.fr.plugin.chart.base.RefreshMoreLabel; import com.fr.plugin.chart.vanchart.VanChart; -import java.awt.Component; +import javax.swing.JPanel; /** * Created by mengao on 2017/6/21. @@ -14,10 +14,9 @@ public class AutoRefreshPaneWithoutTooltip extends AutoRefreshPane { super(chart, isLargeModel); } - protected Component[][] initAutoTooltipComponent () { - return new Component[][]{ - new Component[]{null, null}, - }; + @Override + protected JPanel getTooltipPane() { + return null; } protected void updateAutoTooltip(RefreshMoreLabel refreshMoreLabel) { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/other/VanChartInteractivePane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/other/VanChartInteractivePane.java index 334104128c..c0018a5919 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/other/VanChartInteractivePane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/other/VanChartInteractivePane.java @@ -281,7 +281,8 @@ public class VanChartInteractivePane extends AbstractVanChartScrollPane { //图表缩放新设计 恢复用注释。删除下面八个方法getzoomTypePane createZoomPaneContent // checkZoomEnabled getNameArray getValueArray checkZoomPane populateChartZoom updateChartZoom。 protected JPanel getZoomTypePane(UIButtonGroup zoomType) { - return TableLayout4VanChartHelper.createGapTableLayoutPaneWithoutTop(Toolkit.i18nText("Fine-Design_Chart_Zoom_Direction"), zoomType); + return FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, + new UILabel(Toolkit.i18nText("Fine-Design_Chart_Zoom_Direction")), zoomType); } protected JPanel createZoomPaneContent(JPanel zoomWidgetPane, JPanel zoomGesturePane, VanChartPlot plot) { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/other/condition/item/AbstractNormalMultiLineConditionPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/other/condition/item/AbstractNormalMultiLineConditionPane.java index 3c2734bba8..f48f4ef061 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/other/condition/item/AbstractNormalMultiLineConditionPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/other/condition/item/AbstractNormalMultiLineConditionPane.java @@ -45,15 +45,17 @@ public abstract class AbstractNormalMultiLineConditionPane extends ConditionAttr JPanel pane = FRGUIPaneFactory.createBorderLayout_S_Pane(); pane.add(initContentPane()); - this.add(row(column(cell(nameLabel), flex()).weight(0.2), - row(cell(initContentPane()).weight(1), flex()).weight(0.8)).with(it -> it.setBorder(new ScaledEmptyBorder(5, 5, 5, 0))).getComponent()); - + this.add(row( + column(cell(nameLabel), flex()).weight(0.2), + cell(initContentPane()).weight(0.8) + ).with(it -> it.setBorder(new ScaledEmptyBorder(5, 5, 5, 5)) + ).getComponent(), BorderLayout.CENTER); } /** * 添加删除按钮 */ public void addCancel() { - this.add(column(fix(5), cell(cancel), flex()).getComponent(), BorderLayout.EAST); + this.add(column(cell(cancel), flex()).getComponent(), BorderLayout.EAST); } } diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/other/condition/item/VanChartLabelConditionPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/other/condition/item/VanChartLabelConditionPane.java index 9640662456..115bdb9480 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/other/condition/item/VanChartLabelConditionPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/other/condition/item/VanChartLabelConditionPane.java @@ -3,14 +3,11 @@ package com.fr.van.chart.designer.other.condition.item; import com.fr.chart.base.DataSeriesCondition; import com.fr.chart.chartattr.Plot; import com.fr.design.condition.ConditionAttributesPane; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.plugin.chart.base.AttrLabel; import com.fr.van.chart.designer.PlotFactory; import com.fr.van.chart.designer.style.label.VanChartPlotLabelPane; import javax.swing.JPanel; -import java.awt.Component; public class VanChartLabelConditionPane extends AbstractNormalMultiLineConditionPane { @@ -25,15 +22,7 @@ public class VanChartLabelConditionPane extends AbstractNormalMultiLineCondition @Override protected JPanel initContentPane() { dataLabelContentsPane = createLabelPane(); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double e = 220; - - Component[][] components = new Component[][]{ - new Component[]{dataLabelContentsPane} - }; - - return TableLayoutHelper.createTableLayoutPane(components, new double[]{p}, new double[]{e}); + return dataLabelContentsPane; } protected VanChartPlotLabelPane createLabelPane() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartPlotLegendPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartPlotLegendPane.java index 57923b1ee8..3321769c9f 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartPlotLegendPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartPlotLegendPane.java @@ -32,6 +32,7 @@ import com.fr.van.chart.designer.component.border.VanChartBorderWithRadiusPane; import javax.swing.Icon; import javax.swing.JPanel; +import javax.swing.SwingUtilities; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import java.awt.BorderLayout; @@ -153,7 +154,7 @@ public class VanChartPlotLegendPane extends BasicPane { return FineLayoutBuilder.asBorderLayoutWrapped(column); } - protected VanChartBackgroundPane creatBackgroundPane(){ + protected VanChartBackgroundPane creatBackgroundPane() { return new VanChartBackgroundWithOutImagePane(); } @@ -252,21 +253,22 @@ public class VanChartPlotLegendPane extends BasicPane { customFloatPositionButton.setSelected(true); checkLayoutPaneVisible(); checkDisplayStrategyUse(); - - if (customFloatPositionPane == null) { - customFloatPositionPane = new VanChartFloatPositionPane(); - } - if (uiBubbleFloatPane == null) { - Point comPoint = customFloatPositionButton.getLocationOnScreen(); - Point arrowPoint = new Point(comPoint.x + customFloatPositionButton.getWidth() / 2 - GAP, comPoint.y + customFloatPositionButton.getHeight()); - uiBubbleFloatPane = new UIBubbleFloatPane(Constants.TOP, arrowPoint, customFloatPositionPane, WIDTH, HEIGHT) { - @Override - public void updateContentPane() { - parent.attributeChanged(); - } - }; - } - uiBubbleFloatPane.show(VanChartPlotLegendPane.this, null); + SwingUtilities.invokeLater(() -> { + if (customFloatPositionPane == null) { + customFloatPositionPane = new VanChartFloatPositionPane(); + } + if (uiBubbleFloatPane == null) { + Point comPoint = customFloatPositionButton.getLocationOnScreen(); + Point arrowPoint = new Point(comPoint.x + customFloatPositionButton.getWidth() / 2 - GAP, comPoint.y + customFloatPositionButton.getHeight()); + uiBubbleFloatPane = new UIBubbleFloatPane(Constants.TOP, arrowPoint, customFloatPositionPane, WIDTH, HEIGHT) { + @Override + public void updateContentPane() { + parent.attributeChanged(); + } + }; + } + uiBubbleFloatPane.show(VanChartPlotLegendPane.this, null); + }); } }); } diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartTitlePane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartTitlePane.java index 9b1adec3ec..441e3d36e1 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartTitlePane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartTitlePane.java @@ -1,7 +1,6 @@ package com.fr.van.chart.designer.style; import com.fine.theme.utils.FineComponentsFactory; -import com.fine.theme.utils.FineUIScale; import com.fine.theme.utils.FineUIStyle; import com.fr.base.BaseFormula; import com.fr.base.Utils; @@ -36,6 +35,7 @@ import com.fr.van.chart.designer.component.background.VanChartBackgroundWithOutS import javax.swing.JPanel; import javax.swing.SwingConstants; +import javax.swing.SwingUtilities; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import java.awt.BorderLayout; @@ -46,6 +46,7 @@ import java.awt.event.MouseEvent; import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.column; import static com.fine.swing.ui.layout.Layouts.fix; +import static com.fine.swing.ui.layout.Layouts.flex; import static com.fine.swing.ui.layout.Layouts.row; import static com.fine.theme.utils.FineUIScale.scale; @@ -139,7 +140,12 @@ public class VanChartTitlePane extends AbstractVanChartScrollPane { row( cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Text"), SwingConstants.LEFT)).weight(1.2), cell(titleContent).weight(3) - )).getComponent(); + ), + row( + flex(1.2), + cell(useHtml).weight(3) + ) + ).getComponent(); return new UIExpandablePane( com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Content"), titleContentPane); } @@ -215,21 +221,22 @@ public class VanChartTitlePane extends AbstractVanChartScrollPane { alignmentPane.setSelectedIndex(-1); customFloatPositionButton.setSelected(true); checkDisplayStrategyUse(); - - if (customFloatPositionPane == null) { - customFloatPositionPane = new VanChartFloatPositionPane(); - } - if (uiBubbleFloatPane == null) { - Point comPoint = customFloatPositionButton.getLocationOnScreen(); - Point arrowPoint = new Point(comPoint.x + customFloatPositionButton.getWidth() / 2 - GAP, comPoint.y + customFloatPositionButton.getHeight()); - uiBubbleFloatPane = new UIBubbleFloatPane(Constants.TOP, arrowPoint, customFloatPositionPane, WIDTH, HEIGHT) { - @Override - public void updateContentPane() { - parent.attributeChanged(); - } - }; - } - uiBubbleFloatPane.show(VanChartTitlePane.this, null); + SwingUtilities.invokeLater(() -> { + if (customFloatPositionPane == null) { + customFloatPositionPane = new VanChartFloatPositionPane(); + } + if (uiBubbleFloatPane == null) { + Point comPoint = customFloatPositionButton.getLocationOnScreen(); + Point arrowPoint = new Point(comPoint.x + customFloatPositionButton.getWidth() / 2 - GAP, comPoint.y + customFloatPositionButton.getHeight()); + uiBubbleFloatPane = new UIBubbleFloatPane(Constants.TOP, arrowPoint, customFloatPositionPane, WIDTH, HEIGHT) { + @Override + public void updateContentPane() { + parent.attributeChanged(); + } + }; + } + uiBubbleFloatPane.show(VanChartTitlePane.this, null); + }); } }); } diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartAxisPaneHelper.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartAxisPaneHelper.java index 770043af9c..5f7b3779bc 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartAxisPaneHelper.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartAxisPaneHelper.java @@ -1,30 +1,16 @@ package com.fr.van.chart.designer.style.axis; -import com.fr.design.layout.TableLayout; import com.fr.design.mainframe.chart.gui.style.ChartTextAttrPane; import com.fr.design.mainframe.chart.gui.style.ChartTextAttrPaneWithThemeStyle; import com.fr.design.mainframe.chart.mode.ChartEditContext; import com.fr.van.chart.designer.TableLayout4VanChartHelper; -import javax.swing.JPanel; - public class VanChartAxisPaneHelper { public static ChartTextAttrPane createAxisTextAttrPane() { return ChartEditContext.supportTheme() ? new ChartTextAttrPaneWithThemeStyle() { protected double getEdithAreaWidth() { return TableLayout4VanChartHelper.SECOND_EDIT_AREA_WIDTH; } - } : new ChartTextAttrPane() { - @Override - protected JPanel getContentPane(JPanel buttonPane) { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double e = TableLayout4VanChartHelper.SECOND_EDIT_AREA_WIDTH; - double[] columnSize = {f, e}; - double[] rowSize = {p, p, p}; - - return TableLayout4VanChartHelper.createGapTableLayoutPane(getComponents(buttonPane), rowSize, columnSize); - } - }; + } : new ChartTextAttrPane(); } } diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartBaseAxisPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartBaseAxisPane.java index 7a7d767eec..54445cceab 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartBaseAxisPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartBaseAxisPane.java @@ -10,6 +10,7 @@ import com.fr.chart.base.TextAttr; import com.fr.chart.chartattr.Chart; import com.fr.chart.chartattr.Title; import com.fr.design.beans.FurtherBasicBeanPane; +import com.fr.design.constants.LayoutConstants; import com.fr.design.foldablepane.UIExpandablePane; import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; @@ -37,7 +38,6 @@ import com.fr.stable.Constants; import com.fr.stable.CoreConstants; import com.fr.stable.StableUtils; import com.fr.van.chart.config.DefaultStyleHelper4Van; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.designer.component.VanChartHtmlLabelPane; import com.fr.van.chart.designer.style.VanChartStylePane; import com.fr.van.chart.designer.style.axis.component.VanChartCategoryStylePaneWithCheckBox; @@ -269,10 +269,15 @@ public class VanChartBaseAxisPane extends FurtherBasicBeanPane { } } }; + // 显示逻辑-整体显示 labelStylePane.add(wholeDisplayLabelPanel, WHOLE_DISPLAY); + // 显示逻辑-分层显示 labelStylePane.add(createCategoryStylePane(), LAYER_DISPLAY); - showLogicPane.add(TableLayout4VanChartHelper.createGapTableLayoutPane(Toolkit.i18nText("Fine-Design_Chart_Axis_Label_Show_Logic"), showLogic), BorderLayout.NORTH); - showLogicPane.add(labelStylePane, BorderLayout.CENTER); + showLogicPane.add(column(LayoutConstants.VERTICAL_GAP, + cell(FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, new UILabel(Toolkit.i18nText("Fine-Design_Chart_Axis_Label_Show_Logic")), showLogic)), + cell(labelStylePane) + ).getComponent()); + showLogicPane.setVisible(false); labelContentPane.add(labelPane, BorderLayout.NORTH); labelContentPane.add(showLogicPane, BorderLayout.CENTER); @@ -366,19 +371,15 @@ public class VanChartBaseAxisPane extends FurtherBasicBeanPane { maxProportion = new UINumberDragPaneWithPercent(0, 100, 1); axisLimitSize = new UIButtonGroup(new String[]{Toolkit.i18nText("Fine-Design_Chart_Limit"), Toolkit.i18nText("Fine-Design_Chart_Not_Limit")}); - JPanel limitSizePane = TableLayout4VanChartHelper.createGapTableLayoutPane(Toolkit.i18nText("Fine-Design_Chart_Area_Size"), axisLimitSize); - maxProportionPane = TableLayout4VanChartHelper.createGapTableLayoutPane(Toolkit.i18nText("Fine-Design_Chart_Max_Proportion"), maxProportion, TableLayout4VanChartHelper.SECOND_EDIT_AREA_WIDTH); - maxProportionPane.setBorder(BorderFactory.createEmptyBorder(0, 12, 0, 0)); - JPanel panel = new JPanel(new BorderLayout()); - panel.add(limitSizePane, BorderLayout.NORTH); - panel.add(maxProportionPane, BorderLayout.CENTER); + JPanel limitSizePane = FineLayoutBuilder.createHorizontalLayout(10, new double[]{1.2, 3}, + new UILabel(Toolkit.i18nText("Fine-Design_Chart_Area_Size")), axisLimitSize); + maxProportionPane = FineLayoutBuilder.createHorizontalLayout(10, new double[]{1.2, 3}, + new UILabel(Toolkit.i18nText("Fine-Design_Chart_Max_Proportion")), maxProportion); + JPanel panel = column(10, + cell(limitSizePane), cell(maxProportionPane) + ).getComponent(); - axisLimitSize.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - checkMaxProPortionUse(); - } - }); + axisLimitSize.addActionListener(e -> checkMaxProPortionUse()); return new UIExpandablePane(Toolkit.i18nText("Fine-Design_Chart_Display_Strategy"), panel, true); @@ -654,18 +655,11 @@ public class VanChartBaseAxisPane extends FurtherBasicBeanPane { private JPanel createCateLableStylePanel() { double p = TableLayout.PREFERRED; double f = TableLayout.FILL; - double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH; double[] row = getCateLableStylePaneRow(); double[] column = {f, p}; JPanel content = TableLayoutHelper.createTableLayoutPane(getCateLabelStyleComponents(), row, column); - - Component[][] components = new Component[][]{ - new Component[]{null, null}, - new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Style_Category")), content} - }; - - return TableLayoutHelper.createTableLayoutPane(components, new double[]{p, p}, new double[]{f, e}); + return FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, new UILabel(Toolkit.i18nText("Fine-Design_Chart_Style_Category")), content); } private Component[][] getCateLabelStyleComponents() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/component/VanChartAxisButtonPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/component/VanChartAxisButtonPane.java index 1664b21ecf..368c9bfddf 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/component/VanChartAxisButtonPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/component/VanChartAxisButtonPane.java @@ -10,6 +10,7 @@ import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.ibutton.UIToggleButton; import com.fr.design.gui.imenu.UIMenuItem; import com.fr.design.gui.imenu.UIPopupMenu; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.utils.gui.GUICoreUtils; import com.fr.general.ComparatorUtils; import com.fr.plugin.chart.VanChartAttrHelper; @@ -56,7 +57,7 @@ public class VanChartAxisButtonPane extends BasicBeanPane { public VanChartAxisButtonPane(VanChartAxisPane vanChartAxisPane) { this.parent = vanChartAxisPane; - this.setLayout(new BorderLayout()); + this.setLayout(FRGUIPaneFactory.createScaledBorderLayout(10, 0)); addButton = new AddButton(new LazyIcon("add_popup")); JPanel eastPane = new JPanel(new BorderLayout()); diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/component/VanChartCategoryStylePaneWithCheckBox.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/component/VanChartCategoryStylePaneWithCheckBox.java index 79e4aad9bd..7c865bd052 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/component/VanChartCategoryStylePaneWithCheckBox.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/component/VanChartCategoryStylePaneWithCheckBox.java @@ -1,5 +1,6 @@ package com.fr.van.chart.designer.style.axis.component; +import com.fine.theme.utils.FineUIScale; import com.fr.design.gui.frpane.AbstractAttrNoScrollPane; import com.fr.design.gui.frpane.ClosableBubbleFloatPane; import com.fr.design.gui.ibutton.UIButton; @@ -68,7 +69,7 @@ public class VanChartCategoryStylePaneWithCheckBox extends JPanel { Point comPoint = settingButton.getLocationOnScreen(); Point arrowPoint = new Point(comPoint.x +settingButton.getWidth() - 25, comPoint.y + settingButton.getHeight()); Dimension size = settingPane.getPreferredSize(); - ClosableBubbleFloatPane pane = new ClosableBubbleFloatPane(Constants.LEFT, arrowPoint, settingPane, size.width, 240) { + ClosableBubbleFloatPane pane = new ClosableBubbleFloatPane(Constants.LEFT, arrowPoint, settingPane, size.width, FineUIScale.scale(260)) { @Override public void updateContentPane() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/radar/RadarTableContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/radar/RadarTableContentPane.java index fa77258537..07645e3251 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/radar/RadarTableContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/radar/RadarTableContentPane.java @@ -1,19 +1,16 @@ package com.fr.van.chart.designer.style.axis.radar; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.chartattr.ChartCollection; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.UILabel; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.chart.gui.data.table.AbstractTableDataContentPane; import com.fr.plugin.chart.radar.data.RadarYAxisTableDefinition; import javax.swing.JPanel; -import javax.swing.SwingConstants; import java.awt.BorderLayout; import java.awt.Component; -import java.awt.Dimension; import java.util.List; public class RadarTableContentPane extends AbstractTableDataContentPane { @@ -29,13 +26,10 @@ public class RadarTableContentPane extends AbstractTableDataContentPane { private void initAllComponent() { categoryNameComboBox = new UIComboBox(); - categoryNameComboBox.setPreferredSize(new Dimension(100, 20)); minValueComboBox = new UIComboBox(); - minValueComboBox.setPreferredSize(new Dimension(100, 20)); maxValueComboBox = new UIComboBox(); - maxValueComboBox.setPreferredSize(new Dimension(100, 20)); addAutoItem(); @@ -47,18 +41,13 @@ public class RadarTableContentPane extends AbstractTableDataContentPane { } private JPanel getContentPane() { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] row = {p, p, p}; - double[] col = {p, f}; - Component[][] components = new Component[][]{ - new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Category") + ":", SwingConstants.RIGHT), categoryNameComboBox}, - new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Min_Value") + ":", SwingConstants.RIGHT), minValueComboBox}, - new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Max_Value") + ":", SwingConstants.RIGHT), maxValueComboBox} + new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Category")), categoryNameComboBox}, + new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Min_Value")), minValueComboBox}, + new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Max_Value")), maxValueComboBox} }; - return TableLayoutHelper.createTableLayoutPane(components, row, col); + return FineLayoutBuilder.commonLeftRightLayout(components); } @Override diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/radar/VanChartRadarYAxisPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/radar/VanChartRadarYAxisPane.java index 635d04fa40..694f2de372 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/radar/VanChartRadarYAxisPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/radar/VanChartRadarYAxisPane.java @@ -6,6 +6,7 @@ import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.icombobox.LineComboBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.plugin.chart.attr.axis.VanChartAxis; import com.fr.plugin.chart.attr.axis.VanChartValueAxis; import com.fr.stable.CoreConstants; @@ -38,7 +39,7 @@ public class VanChartRadarYAxisPane extends VanChartValueAxisPane { new Component[]{createValueStylePane(), null}, }; - return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); + return FineLayoutBuilder.compatibleTableLayout(0, components, new double[]{1, 0}); } protected LineComboBox createLineComboBox() { @@ -57,7 +58,7 @@ public class VanChartRadarYAxisPane extends VanChartValueAxisPane { centerPane.add(commenPane, Toolkit.i18nText("Fine-Design_Chart_Axis_Unified_Count")); centerPane.add(tableDataPane, Toolkit.i18nText("Fine-Design_Chart_Respectively_Specified")); - JPanel contentPane = new JPanel(new BorderLayout()); + JPanel contentPane = new JPanel(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); contentPane.add(valueStyle, BorderLayout.NORTH); contentPane.add(centerPane, BorderLayout.CENTER); valueStyle.addActionListener(new ActionListener() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartAlertValuePane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartAlertValuePane.java index e4ceae7fa9..62afe15d2e 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartAlertValuePane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartAlertValuePane.java @@ -1,5 +1,8 @@ package com.fr.van.chart.designer.style.background; +import com.fine.swing.ui.layout.Column; +import com.fine.theme.utils.FineLayoutBuilder; +import com.fine.theme.utils.FineUIUtils; import com.fr.base.BaseFormula; import com.fr.base.Utils; import com.fr.chart.base.AttrColor; @@ -14,12 +17,8 @@ import com.fr.design.gui.ispinner.UISpinner; import com.fr.design.gui.ispinner.chart.UISpinnerWithPx; import com.fr.design.gui.style.FRFontPane; import com.fr.design.i18n.Toolkit; -import com.fr.design.layout.FRGUIPaneFactory; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.style.color.ColorSelectBox; import com.fr.design.utils.DesignUtils; -import com.fr.design.utils.gui.GUICoreUtils; import com.fr.general.FRFont; import com.fr.general.GeneralUtils; import com.fr.plugin.chart.VanChartAttrHelper; @@ -29,10 +28,10 @@ import com.fr.stable.Constants; import com.fr.stable.StableUtils; import com.fr.van.chart.designer.component.LineTypeComboBox; -import javax.swing.BoxLayout; import javax.swing.JPanel; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; +import java.awt.BorderLayout; import java.awt.Color; import java.awt.Component; import java.awt.Dimension; @@ -108,26 +107,24 @@ public class VanChartAlertValuePane extends BasicBeanPane { private void doLayoutPane() { this.removeAll(); - this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS)); + this.setLayout(new BorderLayout()); + Column column = new Column(); + column.setSpacing(10); + this.add(column, BorderLayout.CENTER); + //警戒线设置 - JPanel top = FRGUIPaneFactory.createBorderLayout_L_Pane(); - this.add(top); - top.setBorder(GUICoreUtils.createTitledBorder(Toolkit.i18nText("Fine-Design_Chart_Alert_Set") + ":", null)); - top.add(createTopPane()); + Component top = FineUIUtils.wrapComponentWithTitle(createTopPane(), Toolkit.i18nText("Fine-Design_Chart_Alert_Set")); + column.add(top); + //提示文字 - JPanel bottom = FRGUIPaneFactory.createBorderLayout_L_Pane(); - this.add(bottom); - bottom.setBorder(GUICoreUtils.createTitledBorder(Toolkit.i18nText("Fine-Design_Chart_Alert_Text") + ":", null)); - bottom.add(createBottomPane()); + Component bottom = FineUIUtils.wrapComponentWithTitle(createBottomPane(), Toolkit.i18nText("Fine-Design_Chart_Alert_Text")); + column.add(bottom); } protected JPanel createTopPane() { - double p = TableLayout.PREFERRED; - double[] columnSize = {p, p}; - double[] rowSize = {p, p, p, p, p}; Component[][] components = getTopPaneComponents(); - return TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); } protected Component[][] getTopPaneComponents() { @@ -141,10 +138,6 @@ public class VanChartAlertValuePane extends BasicBeanPane { } private JPanel createBottomPane() { - alertTextPosition.setSelectedIndex(0); - double p = TableLayout.PREFERRED; - double[] columnSize = {p, p}; - double[] rowSize = {p, p, p, p, p}; Component[][] components = new Component[][]{ new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Layout_Position")), alertTextPosition}, new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Content")), alertText}, @@ -153,7 +146,7 @@ public class VanChartAlertValuePane extends BasicBeanPane { new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Color")), fontColor}, }; - return TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); } private void checkPositionPane() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartAreaBackgroundPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartAreaBackgroundPane.java index 9c332c3e5e..70049a4422 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartAreaBackgroundPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartAreaBackgroundPane.java @@ -1,12 +1,14 @@ package com.fr.van.chart.designer.style.background; import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.chart.chartattr.Chart; import com.fr.chart.chartattr.Plot; import com.fr.design.foldablepane.UIExpandablePane; import com.fr.design.gui.frpane.AbstractAttrNoScrollPane; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.chart.PaneTitleConstants; import com.fr.design.mainframe.chart.mode.ChartEditContext; import com.fr.van.chart.designer.AbstractVanChartScrollPane; @@ -15,7 +17,6 @@ import com.fr.van.chart.designer.component.background.VanChartBackgroundPaneWith import com.fr.van.chart.designer.component.border.VanChartBorderWithRadiusPane; import com.fr.van.chart.designer.style.background.radar.VanChartRadarAxisAreaPane; -import javax.swing.BorderFactory; import javax.swing.JPanel; import java.awt.BorderLayout; import java.awt.Color; @@ -44,7 +45,7 @@ public class VanChartAreaBackgroundPane extends AbstractVanChartScrollPane" + Toolkit.i18nText("Fine-Design_Chart_Background_Tooltip") + ""); tooltipLabel.setForeground(Color.gray); - tooltipLabel.setBorder(BorderFactory.createEmptyBorder(0, 10, 5, 10)); contentPane.add(tooltipLabel, BorderLayout.NORTH); tooltipLabel.setVisible(false); } @@ -87,7 +87,8 @@ public class VanChartAreaBackgroundPane extends AbstractVanChartScrollPane { checkCardPane(); } }); - JPanel intervalPane = new JPanel(new BorderLayout(0, 6)); + JPanel intervalPane = new JPanel(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); JPanel panel1 = FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, new UILabel(Toolkit.i18nText("Fine-Design_Chart_Interval_Background")), isDefaultIntervalBackground); intervalPane.add(panel1, BorderLayout.NORTH); diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartCustomIntervalBackgroundPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartCustomIntervalBackgroundPane.java index 42fcdad8eb..f561ce2626 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartCustomIntervalBackgroundPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartCustomIntervalBackgroundPane.java @@ -1,5 +1,7 @@ package com.fr.van.chart.designer.style.background; +import com.fine.theme.utils.FineLayoutBuilder; +import com.fine.theme.utils.FineUIUtils; import com.fr.base.BaseFormula; import com.fr.base.Utils; import com.fr.design.beans.BasicBeanPane; @@ -9,19 +11,14 @@ import com.fr.design.gui.frpane.UINumberDragPane; import com.fr.design.gui.frpane.UINumberDragPaneWithPercent; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ilable.UILabel; -import com.fr.design.layout.FRGUIPaneFactory; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.style.color.ColorSelectBox; -import com.fr.design.utils.gui.GUICoreUtils; import com.fr.plugin.chart.VanChartAttrHelper; import com.fr.plugin.chart.attr.axis.VanChartCustomIntervalBackground; import com.fr.van.chart.designer.TableLayout4VanChartHelper; -import javax.swing.BoxLayout; import javax.swing.JPanel; +import java.awt.BorderLayout; import java.awt.Component; -import java.awt.Dimension; /** * 自定义间隔背景设置 @@ -38,25 +35,17 @@ public class VanChartCustomIntervalBackgroundPane extends BasicBeanPane align; private JPanel alignPane; @@ -63,7 +61,7 @@ public class VanChartGaugeLabelDetailPane extends VanChartPlotLabelDetailPane { initStyleListener(); - return FineLayoutBuilder.compatibleTableLayout(10, getLabelStyleComponents(plot),new double[]{1.2, 3}); + return FineLayoutBuilder.commonLeftRightLayout(getLabelStyleComponents(plot)); } protected void initStyleListener() { @@ -119,7 +117,7 @@ public class VanChartGaugeLabelDetailPane extends VanChartPlotLabelDetailPane { } protected JPanel createTableLayoutPaneWithTitle(String title, JPanel panel) { - return TableLayout4VanChartHelper.createGapTableLayoutPane(title, panel); + return FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, new UILabel(title), panel); } protected Component[][] getLabelPaneComponents(Plot plot, double p, double[] columnSize) { @@ -210,7 +208,6 @@ public class VanChartGaugeLabelDetailPane extends VanChartPlotLabelDetailPane { protected void checkStyleUse() { textFontPane.setVisible(true); - textFontPane.setPreferredSize(new Dimension(0, TEXT_FONT_PANE_HEIGHT)); } protected boolean hasLabelAlign() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/label/VanChartPieCategoryLabelDetailPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/label/VanChartPieCategoryLabelDetailPane.java index 4c28c78b08..f6fc9b8b06 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/label/VanChartPieCategoryLabelDetailPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/label/VanChartPieCategoryLabelDetailPane.java @@ -1,13 +1,11 @@ package com.fr.van.chart.designer.style.label; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.chartattr.Plot; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.stable.Constants; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.designer.style.VanChartStylePane; import com.fr.van.chart.pie.style.VanChartPieCategoryLabelContentPane; @@ -40,18 +38,12 @@ public class VanChartPieCategoryLabelDetailPane extends VanChartPlotLabelDetailP UIButtonGroup position = new UIButtonGroup<>(positionName, positionValue); setPosition(position); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH; - double[] row = {p, p}; - double[] col = {f, e}; Component[][] components = new Component[][]{ - new Component[]{null, null}, new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Layout_Position")), position}, }; - return TableLayoutHelper.createTableLayoutPane(components, row, col); + return FineLayoutBuilder.commonLeftRightLayout(components); } protected void checkPositionPane(String title) { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/label/VanChartPieValueLabelDetailPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/label/VanChartPieValueLabelDetailPane.java index bd705b0e06..1923776980 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/label/VanChartPieValueLabelDetailPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/label/VanChartPieValueLabelDetailPane.java @@ -1,5 +1,6 @@ package com.fr.van.chart.designer.style.label; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.chartattr.Plot; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; @@ -47,18 +48,12 @@ public class VanChartPieValueLabelDetailPane extends VanChartPlotLabelDetailPane VanChartBorderWithShapePane borderPane = new VanChartBorderWithShapePane() { @Override protected JPanel createLineTypePane() { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH; - - double[] columnSize = {f, e}; - double[] rowSize = {p}; Component[][] components = new Component[][]{ new Component[]{FRWidgetFactory.createLineWrapLabel(Toolkit.i18nText("Fine-Design_Chart_Border")), UIComponentUtils.wrapWithBorderLayoutPane(getLineTypeBox())}}; - return TableLayout4VanChartHelper.createGapTableLayoutPane(components, rowSize, columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); } }; setBorderPane(borderPane); diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/label/VanChartPlotLabelDetailPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/label/VanChartPlotLabelDetailPane.java index deb4779e4b..3f1f248a0b 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/label/VanChartPlotLabelDetailPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/label/VanChartPlotLabelDetailPane.java @@ -1,5 +1,6 @@ package com.fr.van.chart.designer.style.label; +import com.fine.swing.ui.layout.Column; import com.fine.theme.utils.FineLayoutBuilder; import com.fine.theme.utils.FineUIScale; import com.fr.chart.chartattr.Plot; @@ -8,12 +9,10 @@ import com.fr.design.beans.BasicBeanPane; import com.fr.design.dialog.BasicPane; import com.fr.design.foldablepane.UIExpandablePane; import com.fr.design.gui.ibutton.UIButtonGroup; -import com.fr.design.gui.ibutton.UIToggleButton; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.chart.gui.style.ChartTextAttrPane; import com.fr.design.style.color.ColorSelectBox; import com.fr.general.ComparatorUtils; @@ -127,7 +126,7 @@ public class VanChartPlotLabelDetailPane extends BasicPane { double[] rowSize = getLabelPaneRowSize(plot, p); Component[][] components = getLabelPaneComponents(plot, p, columnSize); - return FineLayoutBuilder.compatibleTableLayout(0, components, new double[]{1, 0}); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1, 0}); } protected Component[][] getLabelPaneComponents(Plot plot, double p, double[] columnSize) { @@ -230,19 +229,22 @@ public class VanChartPlotLabelDetailPane extends BasicPane { return new JPanel(); } - autoAdjust = new UIButtonGroup(new String[]{Toolkit.i18nText("Fine-Design_Chart_On"), Toolkit.i18nText("Fine-Design_Chart_Off")}, new Boolean[]{true, false}); + autoAdjust = new UIButtonGroup<>(new String[]{Toolkit.i18nText("Fine-Design_Chart_On"), Toolkit.i18nText("Fine-Design_Chart_Off")}, new Boolean[]{true, false}); - JPanel panel = new JPanel(new BorderLayout()); + Column column = new Column(); + column.setSpacing(10); positionPane = new JPanel(); checkPositionPane(title); - panel.add(positionPane, BorderLayout.NORTH); + column.add(positionPane); if (hasLabelOrientationPane()) { - panel.add(createLabelOrientationPane(), BorderLayout.CENTER); + // 文本方向 + column.add(createLabelOrientationPane()); } if (plot.isSupportLeadLine()) { + // 牵引线 tractionLine = new UICheckBox(Toolkit.i18nText("Fine-Design_Chart_Show_Guideline")); Component[][] comps = new Component[1][2]; comps[0] = new Component[]{new UILabel(), tractionLine}; @@ -250,14 +252,15 @@ public class VanChartPlotLabelDetailPane extends BasicPane { double[] row = new double[]{TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.PREFERRED}; double[] col = new double[]{TableLayout.FILL, TableLayout4VanChartHelper.EDIT_AREA_WIDTH}; getLabelPositionPane(comps, row, col); - panel.add(getLabelPositionPane(comps, row, col), BorderLayout.SOUTH); + column.add(getLabelPositionPane(comps, row, col)); initPositionListener(); } else if (PlotFactory.plotAutoAdjustLabelPosition(plot)) { - panel.add(FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, - new UILabel(Toolkit.i18nText("Fine-Design_Chart_Auto_Adjust")), autoAdjust), BorderLayout.SOUTH); + // 重叠调整 + column.add(FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, + new UILabel(Toolkit.i18nText("Fine-Design_Chart_Auto_Adjust")), autoAdjust)); } - return getLabelLayoutPane(panel, Toolkit.i18nText("Fine-Design_Form_Attr_Layout")); + return getLabelLayoutPane(column, Toolkit.i18nText("Fine-Design_Form_Attr_Layout")); } protected JPanel getLabelLayoutPane(JPanel panel, String title) { @@ -279,8 +282,8 @@ public class VanChartPlotLabelDetailPane extends BasicPane { checkOrientation(); } }); - - return TableLayout4VanChartHelper.createGapTableLayoutPane(Toolkit.i18nText("Fine-Design_Chart_Text_Orientation"), orientation); + return FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, + new UILabel(Toolkit.i18nText("Fine-Design_Chart_Text_Orientation")), orientation); } protected void checkPositionPane(String title) { @@ -318,7 +321,7 @@ public class VanChartPlotLabelDetailPane extends BasicPane { } protected JPanel getLabelPositionPane(Component[][] comps, double[] row, double[] col) { - return TableLayoutHelper.createTableLayoutPane(comps, row, col); + return FineLayoutBuilder.compatibleTableLayout(10, comps, new double[]{1.2, 3}); } protected void initPositionListener() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/series/VanChartAbstractPlotSeriesPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/series/VanChartAbstractPlotSeriesPane.java index df6c0415d0..0fd9fe4a2c 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/series/VanChartAbstractPlotSeriesPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/series/VanChartAbstractPlotSeriesPane.java @@ -152,7 +152,7 @@ public abstract class VanChartAbstractPlotSeriesPane extends AbstractPlotSeriesP //趋势线 protected JPanel createTrendLinePane() { trendLinePane = new VanChartTrendLinePane(); - return new UIExpandablePane(Toolkit.i18nText("Fine-Design_Chart_TrendLine"), trendLinePane, true); + return new UIExpandablePane(Toolkit.i18nText("Fine-Design_Chart_TrendLine"), trendLinePane); } //线 @@ -181,7 +181,7 @@ public abstract class VanChartAbstractPlotSeriesPane extends AbstractPlotSeriesP protected JPanel createBorderPane() { borderPane = createDiffBorderPane(); borderPane.setBorder(new ScaledEmptyBorder(0, 0, 10, 0)); - return new UIExpandablePane(Toolkit.i18nText("Fine-Design_Chart_Border"), borderPane); + return new UIExpandablePane(Toolkit.i18nText("Fine-Design_Chart_Border"), borderPane, true); } @@ -190,7 +190,8 @@ public abstract class VanChartAbstractPlotSeriesPane extends AbstractPlotSeriesP radiusPane = initRadiusPane(); UILabel label = FRWidgetFactory.createLineWrapLabel(title); Component[][] components = new Component[][]{ - new Component[]{label, radiusPane}, + new Component[]{label, radiusPane.getRadiusType()}, + new Component[]{null, radiusPane.getCardPane()}, }; radiusPaneWithTitle = FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); return ((VanChartPlot) plot).isInCustom() ? null : radiusPaneWithTitle; @@ -278,13 +279,13 @@ public abstract class VanChartAbstractPlotSeriesPane extends AbstractPlotSeriesP protected JPanel createStackedAndAxisPane() { stackAndAxisEditPane = new VanChartStackedAndAxisListControlPane(); stackAndAxisEditExpandablePane = new UIExpandablePane(stackAndAxisEditPane.getPaneTitle(), stackAndAxisEditPane, true); + stackAndAxisEditExpandablePane.setVisible(true); return stackAndAxisEditExpandablePane; } //界面上删除堆积和坐标轴设置 protected void removeStackWholePane() { - contentPane.remove(stackAndAxisEditExpandablePane); - contentPane.repaint(); + stackAndAxisEditExpandablePane.setVisible(false); } /** diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/series/VanChartEffectPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/series/VanChartEffectPane.java index c3bf0bc159..d9b70d38d1 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/series/VanChartEffectPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/series/VanChartEffectPane.java @@ -1,19 +1,23 @@ package com.fr.van.chart.designer.style.series; +import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.beans.BasicBeanPane; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ispinner.UISpinner; +import com.fr.design.i18n.Toolkit; import com.fr.plugin.chart.base.AttrEffect; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; -import javax.swing.BorderFactory; import javax.swing.JPanel; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import java.awt.BorderLayout; -import java.awt.Dimension; + +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.fix; +import static com.fine.swing.ui.layout.Layouts.row; /** * Created by shine on 2016/12/13. @@ -40,33 +44,32 @@ public class VanChartEffectPane extends BasicBeanPane { period = new UISpinner(0, Double.MAX_VALUE, 0.1, 0); content = createContentPane(); - JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Flash_Animation"),enabledButton); - this.setLayout(new BorderLayout(0, 5)); + JPanel panel = FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, new UILabel(Toolkit.i18nText("Fine-Design_Chart_Flash_Animation")), enabledButton); + panel.setBorder(new ScaledEmptyBorder(0, 0, 10,0)); + this.setLayout(new BorderLayout()); if(hasEnabledChoose) { this.add(panel, BorderLayout.NORTH); - setContentPaneBorder(); } this.add(content, BorderLayout.CENTER); } - protected void setContentPaneBorder() { - content.setBorder(BorderFactory.createEmptyBorder(10,25,0,15)); - } - + /** + * 闪烁动画 + * @return contentPane + */ protected JPanel createContentPane() { - JPanel panel = createPeriodPane(); - return panel; + return createPeriodPane(); } + /** + * 运动周期 + * @return periodPane + */ protected JPanel createPeriodPane(){ - JPanel periodPane = new JPanel(); - periodPane.setLayout(new BorderLayout(5, 0)); - UILabel label1= new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Flash_Period")); - label1.setPreferredSize(new Dimension((int)TableLayout4VanChartHelper.DESCRIPTION_AREA_WIDTH, 20)); - periodPane.add(label1, BorderLayout.WEST); - periodPane.add(period, BorderLayout.CENTER); - periodPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Time_Second")), BorderLayout.EAST); - return periodPane; + JPanel panel = new JPanel(new BorderLayout()); + panel.add(row(cell(period).weight(1), fix(4),cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Time_Second")))).getComponent()); + return FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, + new UILabel(Toolkit.i18nText("Fine-Design_Chart_Flash_Period")), panel); } @Override diff --git a/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/data/comp/DrillMapLayerPane.java b/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/data/comp/DrillMapLayerPane.java index 2f6f6a905a..97a095a76c 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/data/comp/DrillMapLayerPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/data/comp/DrillMapLayerPane.java @@ -2,12 +2,12 @@ package com.fr.van.chart.drillmap.designer.data.comp; import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.chartattr.ChartCollection; +import com.fr.design.border.FineBorderFactory; import com.fr.design.dialog.BasicScrollPane; import com.fr.design.foldablepane.UIExpandablePane; import com.fr.design.gui.icombobox.UIComboBox; +import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.ilable.UILabel; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.general.ComparatorUtils; import com.fr.plugin.chart.drillmap.DrillMapHelper; import com.fr.plugin.chart.drillmap.VanChartDrillMapPlot; @@ -15,10 +15,8 @@ import com.fr.plugin.chart.map.data.MapMatchResult; import com.fr.plugin.chart.map.server.CompatibleGeoJSONTreeHelper; import com.fr.plugin.chart.type.MapType; import com.fr.plugin.chart.type.ZoomLevel; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.map.designer.type.MapStatusPane; -import javax.swing.BorderFactory; import javax.swing.JPanel; import javax.swing.tree.DefaultMutableTreeNode; import java.util.ArrayList; @@ -66,7 +64,9 @@ public class DrillMapLayerPane extends BasicScrollPane { } JPanel mapDataTreePanel = new JPanel(new BorderLayout()); - mapDataTreePanel.add(mapDataTree); + UIScrollPane treeScrollPane = new UIScrollPane(mapDataTree); + treeScrollPane.setBorder(FineBorderFactory.createWrappedRoundBorder()); + mapDataTreePanel.add(treeScrollPane, BorderLayout.CENTER); Component[][] components = new Component[][]{ new Component[]{new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Layer_Tree"), mapDataTreePanel, true)}, @@ -78,28 +78,23 @@ public class DrillMapLayerPane extends BasicScrollPane { } private JPanel createLayerDetailPane() { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {f, p, p}; - double[] rowSize = new double[depth + 1]; detailComps = new Component[depth + 1][3]; - rowSize[0] = p; detailComps[0] = new Component[]{ new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Descriptor")), new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Zoom_Layer")), + null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Layer_Map_Type")) }; for (int i = 0; i < depth; i++) { - rowSize[i + 1] = p; int d = i + 1; UILabel label = new UILabel(String.format("%s%d%s", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Index_Article"), d, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Index_Layer"))); UIComboBox level = new UIComboBox(MapStatusPane.ZOOM_LEVELS); level.setEnabled(i != 0); UIComboBox type = new UIComboBox(TEMP.get(oldMapType)); - detailComps[i + 1] = new Component[]{label, level, type}; + detailComps[i + 1] = new Component[]{label, level, null, type}; } - return TableLayoutHelper.createGapTableLayoutPane(detailComps, rowSize, columnSize, 5, 6); + return FineLayoutBuilder.compatibleTableLayout(10, detailComps, new double[]{1.2, 1.4, 0.2, 1.4}); } /** diff --git a/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/data/comp/MapDataTree.java b/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/data/comp/MapDataTree.java index 5ebfea2320..1ce78b7e70 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/data/comp/MapDataTree.java +++ b/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/data/comp/MapDataTree.java @@ -1,7 +1,6 @@ package com.fr.van.chart.drillmap.designer.data.comp; import com.fine.theme.icon.LazyIcon; -import com.fr.design.border.FineBorderFactory; import com.fr.general.ComparatorUtils; import com.fr.plugin.chart.map.designer.type.GEOJSONTreeHelper; import com.fr.plugin.chart.map.server.ChartGEOJSONHelper; @@ -35,7 +34,6 @@ public class MapDataTree extends JTree { this.setShowsRootHandles(true); this.setInvokesStopCellEditing(true); this.setCellRenderer(treeCellRenderer); - setBorder(FineBorderFactory.createWrappedRoundBorder()); setStyle(this, PURE_TREE); } diff --git a/designer-chart/src/main/java/com/fr/van/chart/funnel/designer/style/VanChartFunnelSeriesPane.java b/designer-chart/src/main/java/com/fr/van/chart/funnel/designer/style/VanChartFunnelSeriesPane.java index 5d8c896072..f08d81a636 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/funnel/designer/style/VanChartFunnelSeriesPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/funnel/designer/style/VanChartFunnelSeriesPane.java @@ -1,15 +1,14 @@ package com.fr.van.chart.funnel.designer.style; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.chartattr.Plot; +import com.fr.design.foldablepane.UIExpandablePane; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.chart.gui.ChartStylePane; import com.fr.plugin.chart.funnel.FunnelSortType; import com.fr.plugin.chart.funnel.VanChartFunnelPlot; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.designer.style.series.VanChartAbstractPlotSeriesPane; import javax.swing.JPanel; @@ -27,16 +26,12 @@ public class VanChartFunnelSeriesPane extends VanChartAbstractPlotSeriesPane { } protected JPanel getContentInPlotType() { - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] columnSize = {f}; - double[] rowSize = {p,p,p,p,p,p,p,p,p,p}; Component[][] components = new Component[][]{ new Component[]{createFunnelStylePane()}, new Component[]{createBorderPane()}, }; - contentPane = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + contentPane = FineLayoutBuilder.compatibleTableLayout(0, components, new double[]{1}); return contentPane; } @@ -57,20 +52,14 @@ public class VanChartFunnelSeriesPane extends VanChartAbstractPlotSeriesPane { Toolkit.i18nText("Fine-Design_Chart_Origin_Sort") }); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH; - double[] columnSize = {f, e}; - double[] rowSize = {p,p,p}; Component[][] components = new Component[][]{ - new Component[]{null, null}, new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Continuity")), useSameSlantAngle}, new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Sort")), sort}, }; - JPanel panel = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + JPanel panel = FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); - return TableLayout4VanChartHelper.createExpandablePaneWithTitle(Toolkit.i18nText("Fine-Design_Chart_Style_Name"), panel); + return new UIExpandablePane(Toolkit.i18nText("Fine-Design_Chart_Style_Name"), panel, true); } public void populateBean(Plot plot) { diff --git a/designer-chart/src/main/java/com/fr/van/chart/gantt/designer/data/data/component/GanttReportDataContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/gantt/designer/data/data/component/GanttReportDataContentPane.java index 398e59fbed..2533c9d3e9 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/gantt/designer/data/data/component/GanttReportDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/gantt/designer/data/data/component/GanttReportDataContentPane.java @@ -6,7 +6,6 @@ import com.fr.base.chart.chartdata.TopDefinitionProvider; import com.fr.chart.chartattr.ChartCollection; import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; -import com.fr.design.gui.ilable.UILabel; import com.fr.design.mainframe.chart.gui.data.report.AbstractReportDataContentPane; import com.fr.plugin.chart.gantt.data.VanGanttReportDefinition; import com.fr.van.chart.gantt.designer.data.data.GanttDataPaneHelper; @@ -15,10 +14,6 @@ import javax.swing.JPanel; import java.awt.BorderLayout; import java.awt.Component; -import static com.fine.swing.ui.layout.Layouts.cell; -import static com.fine.swing.ui.layout.Layouts.flex; -import static com.fine.swing.ui.layout.Layouts.row; - /** * Created by hufan on 2017/1/11. */ @@ -40,30 +35,12 @@ public class GanttReportDataContentPane extends AbstractReportDataContentPane{ } private void initAllComponent() { - seriesName = createTinyFormulaPaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Series_Name")); - - startTime = createTinyFormulaPaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Time")); - - endTime = createTinyFormulaPaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Time")); - - markerTime = createTinyFormulaPaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Marker_Time")); - - progress = createTinyFormulaPaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Process")); - - linkID = createTinyFormulaPaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Task_ID")); - } - - private TinyFormulaPane createTinyFormulaPaneWithTitle(final String title) { - return new DefaultTinyFormulaPane() { - @Override - protected void initLayout() { - this.setLayout(new BorderLayout()); - UILabel label = new UILabel(title); - this.add(row( - cell(label).weight(1.2), cell(formulaTextField).weight(2.4), flex(0.1), cell(formulaTextFieldButton).weight(0.5) - ).getComponent()); - } - }; + seriesName = new DefaultTinyFormulaPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Series_Name")); + startTime = new DefaultTinyFormulaPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Time")); + endTime = new DefaultTinyFormulaPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Time")); + markerTime = new DefaultTinyFormulaPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Marker_Time")); + progress = new DefaultTinyFormulaPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Process")); + linkID = new DefaultTinyFormulaPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Task_ID")); } private JPanel getContentPane(){ diff --git a/designer-chart/src/main/java/com/fr/van/chart/gantt/designer/data/link/GanttLinkReportDataContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/gantt/designer/data/link/GanttLinkReportDataContentPane.java index d254e15997..1e5efb7cfd 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/gantt/designer/data/link/GanttLinkReportDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/gantt/designer/data/link/GanttLinkReportDataContentPane.java @@ -5,7 +5,6 @@ import com.fr.base.chart.chartdata.TopDefinitionProvider; import com.fr.chart.chartattr.ChartCollection; import com.fr.design.formula.DefaultTinyFormulaPane; import com.fr.design.formula.TinyFormulaPane; -import com.fr.design.gui.ilable.UILabel; import com.fr.design.mainframe.chart.gui.data.report.AbstractReportDataContentPane; import com.fr.plugin.chart.gantt.data.VanGanttLinkReportDefinition; import com.fr.van.chart.gantt.designer.data.data.GanttDataPaneHelper; @@ -14,10 +13,6 @@ import javax.swing.JPanel; import java.awt.BorderLayout; import java.awt.Component; -import static com.fine.swing.ui.layout.Layouts.cell; -import static com.fine.swing.ui.layout.Layouts.flex; -import static com.fine.swing.ui.layout.Layouts.row; - /** * Created by hufan on 2017/1/12. */ @@ -33,24 +28,9 @@ public class GanttLinkReportDataContentPane extends AbstractReportDataContentPan this.add(panel, BorderLayout.CENTER); } private void initAllComponent() { - startTaskID = createTinyFormulaPaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Task_ID")); - - endTaskID = createTinyFormulaPaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Task_ID")); - - linkType = createTinyFormulaPaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Link_Type")); - } - - private TinyFormulaPane createTinyFormulaPaneWithTitle(final String title) { - return new DefaultTinyFormulaPane() { - @Override - protected void initLayout() { - this.setLayout(new BorderLayout()); - UILabel label = new UILabel(title); - this.add(row( - cell(label).weight(1.2), cell(formulaTextField).weight(2.4), flex(0.1), cell(formulaTextFieldButton).weight(0.5) - ).getComponent()); - } - }; + startTaskID = new DefaultTinyFormulaPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Task_ID")); + endTaskID = new DefaultTinyFormulaPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Task_ID")); + linkType = new DefaultTinyFormulaPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Link_Type")); } private JPanel getContentPane(){ diff --git a/designer-chart/src/main/java/com/fr/van/chart/gantt/designer/style/series/VanChartGanttSeriesPane.java b/designer-chart/src/main/java/com/fr/van/chart/gantt/designer/style/series/VanChartGanttSeriesPane.java index 380047194b..63fd3a7209 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/gantt/designer/style/series/VanChartGanttSeriesPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/gantt/designer/style/series/VanChartGanttSeriesPane.java @@ -42,6 +42,7 @@ public class VanChartGanttSeriesPane extends VanChartAbstractPlotSeriesPane { contentPane = FineLayoutBuilder.createVerticalLayout(0, createGanntStylePane(), createLinkLinePane(), + createMarkerPane(), createLargeDataModelPane(), createGuideLinePane() ); diff --git a/designer-chart/src/main/java/com/fr/van/chart/gauge/VanChartGaugeBeautyPane.java b/designer-chart/src/main/java/com/fr/van/chart/gauge/VanChartGaugeBeautyPane.java index 61a1fc5e31..347e700747 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/gauge/VanChartGaugeBeautyPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/gauge/VanChartGaugeBeautyPane.java @@ -1,16 +1,16 @@ package com.fr.van.chart.gauge; +import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.chart.base.ChartConstants; import com.fr.chart.base.GradientStyle; import com.fr.design.i18n.Toolkit; -import com.fr.design.layout.TableLayout; import com.fr.design.style.background.gradient.FixedGradientBar; import com.fr.plugin.chart.type.GradientType; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.designer.component.VanChartBeautyPane; -import javax.swing.BorderFactory; import javax.swing.JPanel; +import javax.swing.SwingUtilities; import java.awt.BorderLayout; import java.awt.Component; import java.awt.event.ActionEvent; @@ -29,24 +29,18 @@ public class VanChartGaugeBeautyPane extends VanChartBeautyPane { public VanChartGaugeBeautyPane() { super(); this.add(initGradientBarPane(), BorderLayout.SOUTH); - this.setBorder(BorderFactory.createEmptyBorder(0, 0, 5, 0)); initListener(); } private JPanel initGradientBarPane() { colorGradient = new FixedGradientBar(4, 140); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH; - double[] columnSize = {f, e}; - double[] rowSize = {p, p}; Component[][] components = new Component[][]{ - new Component[]{null, null}, new Component[]{null, colorGradient}, }; - gradientBarPane = TableLayout4VanChartHelper.createGapTableLayoutPane(components, rowSize, columnSize); + gradientBarPane = FineLayoutBuilder.commonLeftRightLayout(components); + gradientBarPane.setBorder(new ScaledEmptyBorder(10, 0, 0, 0)); colorGradient.updateColor(ChartConstants.GRADIENT_END, ChartConstants.GRADIENT_START); return gradientBarPane; } @@ -64,7 +58,9 @@ public class VanChartGaugeBeautyPane extends VanChartBeautyPane { } private void checkGradientBarVisible() { - gradientBarPane.setVisible(getGradientTypeBox().getSelectedIndex() == 1); + SwingUtilities.invokeLater(() -> { + gradientBarPane.setVisible(getGradientTypeBox().getSelectedIndex() == 1); + }); } protected String[] getNameArray() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/gauge/VanChartGaugeSeriesPane.java b/designer-chart/src/main/java/com/fr/van/chart/gauge/VanChartGaugeSeriesPane.java index 1b32d2fbf9..79b4d5b9c3 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/gauge/VanChartGaugeSeriesPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/gauge/VanChartGaugeSeriesPane.java @@ -27,7 +27,6 @@ import com.fr.plugin.chart.gauge.VanChartGaugePlot; import com.fr.plugin.chart.type.GaugeStyle; import com.fr.plugin.chart.type.GradientType; import com.fr.stable.Constants; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.designer.component.VanChartFillStylePane; import com.fr.van.chart.designer.style.series.VanChartMultiColorSeriesPane; @@ -115,22 +114,11 @@ public class VanChartGaugeSeriesPane extends VanChartMultiColorSeriesPane { } protected JPanel createColorDividePane() { - JPanel panel = new JPanel(new BorderLayout(0, 0)); + JPanel panel = new JPanel(new BorderLayout(0, FineUIScale.scale(10))); valueFillStylePane = getVanChartFillStylePane(); JPanel stylePane = valueFillStylePane == null ? new JPanel() : valueFillStylePane; colorPickerPane = new ColorPickerPaneWithMaxMin(parentPane, "meterString", valueFillStylePane) { - protected int getBoundX() { - return 0; - } - - protected int getBoundY() { - return 10; - } - - protected int getPreferredMarginY() { - return 10; - } protected double getDescriptionWidth() { double descriptionWidth = super.getDescriptionWidth(); @@ -172,7 +160,7 @@ public class VanChartGaugeSeriesPane extends VanChartMultiColorSeriesPane { } } - JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(title, gaugeLayout); + JPanel panel = FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, new UILabel(title), gaugeLayout); gaugeLayout.addChangeListener(new ChangeListener() { @Override public void stateChanged(ChangeEvent e) { @@ -211,7 +199,7 @@ public class VanChartGaugeSeriesPane extends VanChartMultiColorSeriesPane { private JPanel createGaugeStylePane() { JPanel panel = new JPanel(new BorderLayout(0, FineUIScale.scale(10))); - JPanel centerPanel = FineLayoutBuilder.compatibleTableLayout(10, getDiffComponentsWithGaugeStyle(), new double[]{1.2, 3}); + JPanel centerPanel = FineLayoutBuilder.commonLeftRightLayout(getDiffComponentsWithGaugeStyle()); panel.add(centerPanel, BorderLayout.CENTER); if (rotate != null) { JPanel panel1 = FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, diff --git a/designer-chart/src/main/java/com/fr/van/chart/map/VanChartMapSeriesPane.java b/designer-chart/src/main/java/com/fr/van/chart/map/VanChartMapSeriesPane.java index ad553d7b9c..b31055edca 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/map/VanChartMapSeriesPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/map/VanChartMapSeriesPane.java @@ -11,6 +11,7 @@ import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.chart.gui.ChartStylePane; import com.fr.design.style.color.ColorSelectBox; import com.fr.design.utils.gui.GUICoreUtils; @@ -273,7 +274,7 @@ public class VanChartMapSeriesPane extends VanChartColorValueSeriesPane { //获取颜色面板 private JPanel getColorPane(MapType paneType) { - JPanel panel = new JPanel(new BorderLayout()); + JPanel panel = new JPanel(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); stylePane = createStylePane(); mapType = ((VanChartMapPlot) plot).getAllLayersMapType(); if (mapType != MapType.CUSTOM && mapType != MapType.DRILL_CUSTOM) { diff --git a/designer-chart/src/main/java/com/fr/van/chart/map/designer/style/label/VanChartMapLabelContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/map/designer/style/label/VanChartMapLabelContentPane.java index 1afffc8964..0b7716faa2 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/map/designer/style/label/VanChartMapLabelContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/map/designer/style/label/VanChartMapLabelContentPane.java @@ -1,10 +1,11 @@ package com.fr.van.chart.map.designer.style.label; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; import com.fr.design.jxbrowser.JxUIPane; -import com.fr.design.layout.TableLayout; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.plugin.chart.base.AttrTooltipContent; import com.fr.plugin.chart.base.format.AttrTooltipAreaNameFormat; import com.fr.plugin.chart.base.format.AttrTooltipFormat; @@ -13,7 +14,6 @@ import com.fr.plugin.chart.base.format.AttrTooltipPercentFormat; import com.fr.plugin.chart.base.format.AttrTooltipSeriesFormat; import com.fr.plugin.chart.base.format.AttrTooltipValueFormat; import com.fr.plugin.chart.type.TextAlign; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.designer.component.VanChartLabelContentPane; import com.fr.van.chart.designer.component.format.MapAreaNameFormatPaneWithCheckBox; import com.fr.van.chart.designer.component.format.PercentFormatPaneWithCheckBox; @@ -67,18 +67,12 @@ public class VanChartMapLabelContentPane extends VanChartLabelContentPane { protected JPanel getLabelContentPane(JPanel contentPane) { showAllSeries = new UICheckBox(Toolkit.i18nText("Fine-Design_Chart_Show_All_Series")); - double f = TableLayout.FILL; - double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH; - double[] columnSize = {f, e}; - double p = TableLayout.PREFERRED; - double[] row = {p, p}; Component[][] components = { - new Component[]{null, null}, new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Display_Strategy")), showAllSeries} }; - checkPane = TableLayout4VanChartHelper.createGapTableLayoutPane(components, row, columnSize); + checkPane = FineLayoutBuilder.compatibleTableLayout(0, components, new double[]{1.2, 3}); - JPanel panel = new JPanel(new BorderLayout()); + JPanel panel = new JPanel(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); panel.add(contentPane, BorderLayout.CENTER); panel.add(checkPane, BorderLayout.SOUTH); return createTableLayoutPaneWithTitle(Toolkit.i18nText("Fine-Design_Chart_Content"), panel); diff --git a/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/WMSLayerPane.java b/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/WMSLayerPane.java index 218dd02294..cac695bf17 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/WMSLayerPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/WMSLayerPane.java @@ -1,6 +1,7 @@ package com.fr.van.chart.map.designer.type; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.design.dialog.FineJOptionPane; import com.fr.design.event.UIObserver; import com.fr.design.event.UIObserverListener; @@ -9,11 +10,10 @@ import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.itextarea.UITextArea; import com.fr.design.i18n.Toolkit; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.plugin.chart.base.GisLayer; import com.fr.plugin.chart.map.layer.WMSLayer; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import javax.swing.JPanel; import javax.swing.SwingConstants; @@ -55,24 +55,19 @@ public class WMSLayerPane extends JPanel implements UIObserver { public WMSLayerPane() { - final double p = TableLayout.PREFERRED; - double[] rowSize = {p}; - double[] COLUMN_SIZE = {TableLayout4VanChartHelper.DESCRIPTION_AREA_WIDTH, 84, 44}; - wmsUrl = new UITextArea(); connectButton = new UIButton(Toolkit.i18nText("Fine-Design_Chart_Connect_WMP")); Component[][] comps = new Component[][]{ - new Component[]{new UILabel("url"), wmsUrl, connectButton} + new Component[]{new UILabel("url"), wmsUrl, null, connectButton} }; - JPanel northPane = TableLayout4VanChartHelper.createGapTableLayoutPane(comps, rowSize, COLUMN_SIZE); - northPane.setBorder(TableLayout4VanChartHelper.SECOND_EDIT_AREA_BORDER); + JPanel northPane = FineLayoutBuilder.compatibleTableLayout(10, comps, new double[]{1.2, 1.4, 0.2, 1.4}); wmsLayerPane = new JPanel(new BorderLayout()); resetWMSLayerPane(new ArrayList<>()); - this.setLayout(new BorderLayout(0, 6)); + this.setLayout(FRGUIPaneFactory.createScaledBorderLayout(0, 10)); this.add(northPane, BorderLayout.NORTH); this.add(wmsLayerPane, BorderLayout.CENTER); addListener(); @@ -136,7 +131,7 @@ public class WMSLayerPane extends JPanel implements UIObserver { wmsLayerCheckBoxs.add(checkBox); } - wmsLayerPane.add(TableLayoutHelper.createCommonTableLayoutPane(comps, rowSize, COLUMN_SIZE, 0), BorderLayout.CENTER); + wmsLayerPane.add(FineLayoutBuilder.compatibleTableLayout(10, comps, new double[]{1.2, 3}), BorderLayout.CENTER); updateUI(); } diff --git a/designer-chart/src/main/java/com/fr/van/chart/map/line/VanChartLineMapEffectPane.java b/designer-chart/src/main/java/com/fr/van/chart/map/line/VanChartLineMapEffectPane.java index ee6368917b..395388b2bb 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/map/line/VanChartLineMapEffectPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/map/line/VanChartLineMapEffectPane.java @@ -1,7 +1,11 @@ package com.fr.van.chart.map.line; +import com.fine.theme.utils.FineLayoutBuilder; +import com.formdev.flatlaf.util.ScaledEmptyBorder; +import com.fr.design.constants.LayoutConstants; import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.ilable.UILabel; +import com.fr.design.i18n.Toolkit; import com.fr.general.ComparatorUtils; import com.fr.plugin.chart.base.AttrEffect; @@ -11,7 +15,6 @@ import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.designer.component.marker.VanChartImageMarkerPane; import com.fr.van.chart.designer.style.series.VanChartEffectPane; -import javax.swing.BorderFactory; import javax.swing.JPanel; import java.awt.BorderLayout; import java.awt.CardLayout; @@ -20,6 +23,9 @@ import java.awt.Dimension; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.column; + /** * Created by hufan on 2016/12/20. */ @@ -32,39 +38,34 @@ public class VanChartLineMapEffectPane extends VanChartEffectPane { public VanChartLineMapEffectPane() { super(true); - this.add(TableLayout4VanChartHelper.createGapTableLayoutPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Line_Map_Animation"), enabledButton), BorderLayout.NORTH); + JPanel panel = FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, + new UILabel(Toolkit.i18nText("Fine-Design_Chart_Line_Map_Animation")), enabledButton); + panel.setBorder(new ScaledEmptyBorder(0, 0, 10,0)); + this.add(panel, BorderLayout.NORTH); } + /** + * 流向动画 + * @return contentPane + */ protected JPanel createContentPane() { - JPanel panel = new JPanel(new BorderLayout(0, 5)); + JPanel panel = new JPanel(new BorderLayout()); + // 运动周期 JPanel periodPane = createPeriodPane(); - + // 运动方式 animationType = new UIComboBox(LineMapAnimationType.getTypes()); initTypeContentPane(); - - JPanel animationTypePane = new JPanel(new BorderLayout(0, 5)); - - animationTypePane.add(createAnimationSelectPane(), BorderLayout.NORTH); - animationTypePane.add(typeContentPane, BorderLayout.CENTER); - - panel.add(periodPane, BorderLayout.CENTER); - panel.add(animationTypePane, BorderLayout.SOUTH); - panel.setBorder(BorderFactory.createEmptyBorder(0, 12, 0, 0)); - + panel.add(column(LayoutConstants.VERTICAL_GAP, cell(periodPane), cell(createAnimationSelectPane()), cell(typeContentPane)).getComponent()); return panel; } - protected void setContentPaneBorder() { - return; - } - + /** + * 运动方式 + * @return animationSelectPane + */ private Component createAnimationSelectPane() { - JPanel panel = new JPanel(new BorderLayout(5, 0)); - UILabel label1 = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Animation_Type")); - label1.setPreferredSize(new Dimension((int) TableLayout4VanChartHelper.DESCRIPTION_AREA_WIDTH, 20)); - panel.add(label1, BorderLayout.WEST); - panel.add(animationType, BorderLayout.CENTER); - return panel; + return FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, + new UILabel(Toolkit.i18nText("Fine-Design_Chart_Animation_Type")), animationType); } private void initTypeContentPane() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/multilayer/style/VanChartMultiPieSeriesPane.java b/designer-chart/src/main/java/com/fr/van/chart/multilayer/style/VanChartMultiPieSeriesPane.java index 6c1575cfdf..dd3923bc9d 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/multilayer/style/VanChartMultiPieSeriesPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/multilayer/style/VanChartMultiPieSeriesPane.java @@ -1,15 +1,15 @@ package com.fr.van.chart.multilayer.style; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.chartattr.Plot; +import com.fr.design.foldablepane.UIExpandablePane; import com.fr.design.gui.frpane.UINumberDragPaneWithPercent; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ispinner.UISpinner; import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.chart.gui.ChartStylePane; import com.fr.plugin.chart.multilayer.VanChartMultiPiePlot; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.designer.component.VanChartBeautyPane; import com.fr.van.chart.pie.VanChartPieSeriesPane; @@ -39,7 +39,7 @@ public class VanChartMultiPieSeriesPane extends VanChartPieSeriesPane { new Component[]{createBorderPane()}, }; - return TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1}); } protected JPanel createSeriesStylePane(double[] row, double[] col) { @@ -54,7 +54,6 @@ public class VanChartMultiPieSeriesPane extends VanChartPieSeriesPane { com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Close")}); Component[][] components = new Component[][]{ - new Component[]{null,null}, new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Gradual_Level") ),gradualLevel}, new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Angle") ),startAngle}, new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Angle")),endAngle}, @@ -63,8 +62,8 @@ public class VanChartMultiPieSeriesPane extends VanChartPieSeriesPane { new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Rotation")),supportRotation} }; - JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(components, row, col); - return TableLayout4VanChartHelper.createExpandablePaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Widget_Style"), panel); + JPanel panel = FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); + return new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Widget_Style"), panel, true); } protected void populatePieAttr() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/pie/RadiusCardLayoutPane.java b/designer-chart/src/main/java/com/fr/van/chart/pie/RadiusCardLayoutPane.java index db13b28061..6e4f293520 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/pie/RadiusCardLayoutPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/pie/RadiusCardLayoutPane.java @@ -83,6 +83,14 @@ public class RadiusCardLayoutPane extends BasicBeanPane { } + public UIButtonGroup getRadiusType() { + return radiusType; + } + + public VanChartCardLayoutPane getCardPane() { + return cardPane; + } + @Override protected String title4PopupWindow() { return null; @@ -97,6 +105,7 @@ public class RadiusCardLayoutPane extends BasicBeanPane { radius.setValue(vanChartRadius.getRadius()); //设置card显示界面 cardPane.updatePane(radiusType.getSelectedIndex() == 0 ? "auto" : "fixed"); + cardPane.setVisible(radiusType.getSelectedIndex() != 0); } } @@ -108,6 +117,7 @@ public class RadiusCardLayoutPane extends BasicBeanPane { vanChartRadius.setRadiusType(radiusType.getSelectedIndex() == 0 ? RadiusType.AUTO : RadiusType.FIXED); vanChartRadius.setRadius((int) radius.getValue()); cardPane.updatePane(radiusType.getSelectedIndex() == 0 ? "auto" : "fixed"); + cardPane.setVisible(radiusType.getSelectedIndex() != 0); } } diff --git a/designer-chart/src/main/java/com/fr/van/chart/pie/VanChartPieSeriesPane.java b/designer-chart/src/main/java/com/fr/van/chart/pie/VanChartPieSeriesPane.java index 52f865356d..f17cb9bcde 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/pie/VanChartPieSeriesPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/pie/VanChartPieSeriesPane.java @@ -1,6 +1,7 @@ package com.fr.van.chart.pie; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.chartattr.Plot; import com.fr.design.foldablepane.UIExpandablePane; import com.fr.design.gui.frpane.UINumberDragPane; @@ -9,7 +10,6 @@ import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ispinner.UISpinner; import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.chart.gui.ChartStylePane; import com.fr.design.i18n.Toolkit; @@ -48,7 +48,7 @@ public class VanChartPieSeriesPane extends VanChartAbstractPlotSeriesPane { new Component[]{createBorderPane()}, }; - return TableLayoutHelper.createTableLayoutPane(components,rowSize,columnSize); + return FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1}); } @@ -60,7 +60,6 @@ public class VanChartPieSeriesPane extends VanChartAbstractPlotSeriesPane { Component[][] components = new Component[][]{ - new Component[]{null,null}, new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Start_Angle")),startAngle}, new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_End_Angle")),endAngle}, new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Inner_Radius")),innerRadius}, @@ -69,7 +68,7 @@ public class VanChartPieSeriesPane extends VanChartAbstractPlotSeriesPane { }; - JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(components, row, col); + JPanel panel = FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); return new UIExpandablePane(Toolkit.i18nText("Fine-Design_Chart_Widget_Style"), panel, true); } diff --git a/designer-chart/src/main/java/com/fr/van/chart/radar/VanChartRadarSeriesPane.java b/designer-chart/src/main/java/com/fr/van/chart/radar/VanChartRadarSeriesPane.java index 1026b99367..ffe75a7d58 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/radar/VanChartRadarSeriesPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/radar/VanChartRadarSeriesPane.java @@ -1,15 +1,15 @@ package com.fr.van.chart.radar; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.chartattr.Plot; +import com.fr.design.foldablepane.UIExpandablePane; +import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; import com.fr.design.gui.ibutton.UIButtonGroup; -import com.fr.design.layout.TableLayout; -import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.chart.gui.ChartStylePane; import com.fr.plugin.chart.radar.VanChartRadarPlot; import com.fr.plugin.chart.type.RadarType; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.designer.component.VanChartLineTypePane; import com.fr.van.chart.designer.component.VanChartLineWidthPane; import com.fr.van.chart.designer.style.series.VanChartAbstractPlotSeriesPane; @@ -32,12 +32,8 @@ public class VanChartRadarSeriesPane extends VanChartAbstractPlotSeriesPane { } protected JPanel getContentInPlotType(){ - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double[] row = {p,p,p,p,p,p,p}; - double[] col = {f}; - contentPane = TableLayoutHelper.createTableLayoutPane(getPaneComponents(), row, col); + contentPane = FineLayoutBuilder.compatibleTableLayout(10, getPaneComponents(), new double[]{1}); return contentPane; } @@ -67,8 +63,9 @@ public class VanChartRadarSeriesPane extends VanChartAbstractPlotSeriesPane { private JPanel createRadarTypePane() { radarType = new UIButtonGroup(new String[]{Toolkit.i18nText("Fine-Design_Chart_Circle"), Toolkit.i18nText("Fine-Design_Chart_Polygonal")}, new String[]{RadarType.CIRCLE.getType(), RadarType.POLYGON.getType()}); - JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(Toolkit.i18nText("Fine-Design_Chart_Shape"), radarType); - return TableLayout4VanChartHelper.createExpandablePaneWithTitle(Toolkit.i18nText("Fine-Design_Chart_Style_Present"), panel); + JPanel panel = FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, + new UILabel(Toolkit.i18nText("Fine-Design_Chart_Shape")), radarType); + return new UIExpandablePane(Toolkit.i18nText("Fine-Design_Chart_Style_Present"), panel, true); } protected VanChartLineTypePane getLineTypePane() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/range/component/GradualIntervalConfigPane.java b/designer-chart/src/main/java/com/fr/van/chart/range/component/GradualIntervalConfigPane.java index f1cdc5b62e..5fdf0d5a0f 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/range/component/GradualIntervalConfigPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/range/component/GradualIntervalConfigPane.java @@ -1,11 +1,10 @@ package com.fr.van.chart.range.component; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.design.gui.frpane.UINumberDragPane; import com.fr.design.gui.ilable.BoldFontTextLabel; -import com.fr.design.layout.TableLayout; import com.fr.design.mainframe.chart.gui.ColorSelectBoxWithOutTransparent; import com.fr.plugin.chart.range.GradualIntervalConfig; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.designer.style.axis.component.MinMaxValuePaneWithOutTick; import javax.swing.JPanel; @@ -51,16 +50,10 @@ public class GradualIntervalConfigPane extends JPanel { legendGradientBar = createLegendGradientBar(); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH; - double[] col = new double[]{f, e}; - double[] row = new double[]{p, p, p, p}; - Component[][] components = getPaneComponents(minMaxValuePane, colorSelectBox, numberDragPane, legendGradientBar); //控件承载面板 - JPanel contentPane = TableLayout4VanChartHelper.createGapTableLayoutPane(components, row, col); + JPanel contentPane = FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); this.setLayout(new BorderLayout()); this.add(contentPane, BorderLayout.CENTER); } diff --git a/designer-chart/src/main/java/com/fr/van/chart/range/component/LegendLabelFormatPane.java b/designer-chart/src/main/java/com/fr/van/chart/range/component/LegendLabelFormatPane.java index eec9225f58..478d7d13d1 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/range/component/LegendLabelFormatPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/range/component/LegendLabelFormatPane.java @@ -1,12 +1,12 @@ package com.fr.van.chart.range.component; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.base.LegendLabelFormat; +import com.fr.design.foldablepane.UIExpandablePane; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.style.FormatPane; -import com.fr.design.layout.TableLayout; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.designer.component.VanChartHtmlLabelPaneWithOutWidthAndHeight; import com.fr.van.chart.designer.component.format.FormatPaneWithOutFont; import com.fr.van.chart.designer.style.VanChartStylePane; @@ -47,7 +47,6 @@ public class LegendLabelFormatPane extends JPanel { } }; htmlLabelPane = new VanChartHtmlLabelPaneWithOutWidthAndHeight(); - htmlLabelPane.setBorder(BorderFactory.createEmptyBorder(0, (int) TableLayout4VanChartHelper.DESCRIPTION_AREA_WIDTH + TableLayout4VanChartHelper.COMPONENT_INTERVAL, 0, 0)); centerPane = new JPanel(new CardLayout()) { @Override @@ -63,17 +62,11 @@ public class LegendLabelFormatPane extends JPanel { centerPane.add(htmlLabelPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Custom")); - double p = TableLayout.PREFERRED; - double f = TableLayout.FILL; - double e = TableLayout4VanChartHelper.EDIT_AREA_WIDTH; - double[] columnSize = {f, e}; - double[] rowSize = {p, p, p}; Component[][] components = new Component[][]{ - new Component[]{null, null}, new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Label_Format"), SwingConstants.LEFT), labelFormatStyle}, new Component[]{centerPane, null}, }; - JPanel contentPane = TableLayout4VanChartHelper.createGapTableLayoutPane(components, rowSize, columnSize); + JPanel contentPane = FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); labelFormatStyle.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { @@ -82,7 +75,7 @@ public class LegendLabelFormatPane extends JPanel { }); labelFormatStyle.setSelectedIndex(0); - JPanel panel = TableLayout4VanChartHelper.createExpandablePaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Use_Format"), contentPane); + JPanel panel = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Use_Format"), contentPane, true); this.setLayout(new BorderLayout()); this.add(panel, BorderLayout.CENTER); } diff --git a/designer-chart/src/main/java/com/fr/van/chart/range/component/SectionIntervalConfigPaneWithOutNum.java b/designer-chart/src/main/java/com/fr/van/chart/range/component/SectionIntervalConfigPaneWithOutNum.java index a6fc4cfbe8..044945d63e 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/range/component/SectionIntervalConfigPaneWithOutNum.java +++ b/designer-chart/src/main/java/com/fr/van/chart/range/component/SectionIntervalConfigPaneWithOutNum.java @@ -9,7 +9,6 @@ import com.fr.design.mainframe.chart.gui.style.series.MapColorPickerPaneWithForm import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import java.awt.Component; -import java.awt.Dimension; /** * Created by Mitisky on 16/10/20. @@ -44,21 +43,12 @@ public class SectionIntervalConfigPaneWithOutNum extends MapColorPickerPaneWithF @Override protected Component[][] createComponents() { numLabel = new BoldFontTextLabel(Toolkit.i18nText("Fine-Design_Chart_Value_Divided_Stage")); - - setRegionVisible(false); - return new Component[][]{ new Component[]{new BoldFontTextLabel(getNameOfSubRange()), getDesignTypeButtonGroup()}, new Component[]{numLabel, getRegionNumPane()}, }; } - @Override - public Dimension getPreferredSize() { - Dimension dim = super.getPreferredSize(); - return new Dimension((int) dim.getWidth(), (int) dim.getHeight() - (numLabel.isVisible() ? 0 : 30)); - } - @Override public void populateBean(MapHotAreaColor hotAreaColor) { super.populateBean(hotAreaColor); diff --git a/designer-chart/src/main/java/com/fr/van/chart/structure/desinger/style/StructureNodeStylePane.java b/designer-chart/src/main/java/com/fr/van/chart/structure/desinger/style/StructureNodeStylePane.java index be2f5ff3e3..b16924c591 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/structure/desinger/style/StructureNodeStylePane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/structure/desinger/style/StructureNodeStylePane.java @@ -1,5 +1,6 @@ package com.fr.van.chart.structure.desinger.style; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.base.background.ImageBackground; import com.fr.design.beans.BasicBeanPane; import com.fr.design.gui.frpane.UINumberDragPane; @@ -9,6 +10,7 @@ import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ispinner.UISpinner; import com.fr.design.gui.ispinner.chart.UISpinnerWithPx; import com.fr.design.i18n.Toolkit; +import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayoutHelper; import com.fr.design.mainframe.backgroundpane.ImageBackgroundQuickPane; @@ -59,10 +61,12 @@ public class StructureNodeStylePane extends BasicBeanPane { }; nodeOpacity = new UINumberDragPaneWithPercent(0, 100); - JPanel jPanel = new JPanel(new BorderLayout()); - jPanel.add(TableLayout4VanChartHelper.createGapTableLayoutPane(Toolkit.i18nText("Fine-Design_Chart_Node_Radius"), nodeRadiusType), BorderLayout.NORTH); - nodeRadiusPane = TableLayout4VanChartHelper.createGapTableLayoutPane("", nodeRadius); - jPanel.add(nodeRadiusPane, BorderLayout.CENTER); + Component[][] nodeRadiusTypeCom = new Component[][]{ + new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Node_Radius")), nodeRadiusType}, + new Component[]{null, nodeRadius}, + + }; + JPanel jPanel = FineLayoutBuilder.compatibleTableLayout(10, nodeRadiusTypeCom, new double[]{1.2, 3}); Component[][] components1 = new Component[][]{ new Component[]{null, null}, @@ -72,7 +76,7 @@ public class StructureNodeStylePane extends BasicBeanPane { new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Report_Alpha")), nodeOpacity} }; - JPanel panel1 = TableLayout4VanChartHelper.createGapTableLayoutPane(components1, rowSize, columnSize); + JPanel panel1 = FineLayoutBuilder.compatibleTableLayout(10, components1, new double[]{1.2, 3}); useImage = new UIButtonGroup<>(new String[]{Toolkit.i18nText("Fine-Design_Chart_YES"), Toolkit.i18nText("Fine-Design_Chart_NO")}); @@ -81,9 +85,9 @@ public class StructureNodeStylePane extends BasicBeanPane { Component[][] components = new Component[][]{ new Component[]{new UILabel(Toolkit.i18nText("Fine-Design_Chart_Filled_With_Image")), useImage}, }; - JPanel useImagePane = TableLayoutHelper.createTableLayoutPane(components, new double[]{p}, columnSize); + JPanel useImagePane = FineLayoutBuilder.compatibleTableLayout(10, components, new double[]{1.2, 3}); - JPanel panel2 = new JPanel(new BorderLayout(0, 6)); + JPanel panel2 = FRGUIPaneFactory.createScaledBorderLayout_S_Pane(0, 6); panel2.add(useImagePane, BorderLayout.NORTH); panel2.add(imagePane, BorderLayout.CENTER); @@ -101,13 +105,13 @@ public class StructureNodeStylePane extends BasicBeanPane { } }); - this.setLayout(new BorderLayout(0, 6)); + this.setLayout(FRGUIPaneFactory.createScaledBorderLayout(0, 6)); this.add(panel1, BorderLayout.NORTH); this.add(panel2, BorderLayout.CENTER); } private void checkRadius() { - nodeRadiusPane.setVisible(nodeRadiusType.getSelectedIndex() == 1); + nodeRadius.getParent().setVisible(nodeRadiusType.getSelectedIndex() == 1); } private void checkImagePane() { diff --git a/designer-chart/src/main/java/com/fr/van/chart/treemap/style/VanChartTreeMapSeriesPane.java b/designer-chart/src/main/java/com/fr/van/chart/treemap/style/VanChartTreeMapSeriesPane.java index db8bfa94b1..7998a088e7 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/treemap/style/VanChartTreeMapSeriesPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/treemap/style/VanChartTreeMapSeriesPane.java @@ -1,11 +1,13 @@ package com.fr.van.chart.treemap.style; +import com.fine.theme.utils.FineLayoutBuilder; import com.fr.chart.chartattr.Plot; +import com.fr.design.foldablepane.UIExpandablePane; import com.fr.design.gui.ibutton.UIButtonGroup; +import com.fr.design.gui.ilable.UILabel; import com.fr.design.mainframe.chart.gui.ChartStylePane; import com.fr.plugin.chart.treemap.VanChartTreeMapPlot; -import com.fr.van.chart.designer.TableLayout4VanChartHelper; import com.fr.van.chart.multilayer.style.VanChartMultiPieSeriesPane; import javax.swing.JPanel; @@ -22,8 +24,9 @@ public class VanChartTreeMapSeriesPane extends VanChartMultiPieSeriesPane { protected JPanel createSeriesStylePane(double[] row, double[] col) { supportDrill = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Open"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Close")}); - JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Drill"), supportDrill); - return TableLayout4VanChartHelper.createExpandablePaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Widget_Style"), panel); + JPanel panel = FineLayoutBuilder.createHorizontalLayout(0, new double[]{1.2, 3}, + new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Drill")), supportDrill); + return new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Widget_Style"), panel, true); } protected void populatePieAttr() { diff --git a/designer-form/src/main/java/com/fr/design/actions/TemplateParameterAction.java b/designer-form/src/main/java/com/fr/design/actions/TemplateParameterAction.java index 99e432eee1..3514ffd29b 100644 --- a/designer-form/src/main/java/com/fr/design/actions/TemplateParameterAction.java +++ b/designer-form/src/main/java/com/fr/design/actions/TemplateParameterAction.java @@ -1,6 +1,6 @@ package com.fr.design.actions; -import com.fr.base.BaseUtils; +import com.fine.theme.icon.LazyIcon; import com.fr.base.Parameter; import com.fr.design.DesignModelAdapter; import com.fr.design.dialog.BasicDialog; @@ -22,7 +22,7 @@ public class TemplateParameterAction extends JTemplateAction { this.setMenuKeySet(KeySetUtils.REPORT_PARAMETER_ATTR); this.setName(getMenuKeySet().getMenuKeySetName() + "..."); this.setMnemonic(getMenuKeySet().getMnemonic()); - this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_report/p.png")); + this.setSmallIcon(new LazyIcon("param")); } @Override diff --git a/designer-form/src/main/java/com/fr/design/actions/file/export/EmbeddedFormExportExportAction.java b/designer-form/src/main/java/com/fr/design/actions/file/export/EmbeddedFormExportExportAction.java index 6d0fe9aa52..8b8f1c723d 100644 --- a/designer-form/src/main/java/com/fr/design/actions/file/export/EmbeddedFormExportExportAction.java +++ b/designer-form/src/main/java/com/fr/design/actions/file/export/EmbeddedFormExportExportAction.java @@ -1,5 +1,6 @@ package com.fr.design.actions.file.export; +import com.fine.theme.icon.LazyIcon; import com.fr.base.BaseUtils; import com.fr.base.Parameter; import com.fr.base.extension.FileExtension; @@ -30,7 +31,7 @@ public class EmbeddedFormExportExportAction extends AbstractExportAction this.setMenuKeySet(KeySetUtils.EMBEDDED_EXPORT); this.setName(getMenuKeySet().getMenuKeySetName() + "..."); this.setMnemonic(getMenuKeySet().getMnemonic()); - this.setSmallIcon(BaseUtils.readIcon("/com/fr/base/images/oem/logo.png")); + this.setSmallIcon(new LazyIcon("logo")); } @Override diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/TabMoveCustomAction.java b/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/TabMoveCustomAction.java index 8930c686c4..44f7646530 100644 --- a/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/TabMoveCustomAction.java +++ b/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/TabMoveCustomAction.java @@ -1,7 +1,7 @@ package com.fr.design.designer.creator.cardlayout; +import com.fine.theme.icon.LazyIcon; import com.fr.design.mainframe.FormDesigner; -import com.fr.general.IOUtils; /** * Created by zhouping on 2017/2/9. @@ -11,7 +11,7 @@ public class TabMoveCustomAction extends TabMoveAction { public TabMoveCustomAction(FormDesigner t, XCardSwitchButton xCardSwitchButton) { super(t, xCardSwitchButton); this.setName(""); - this.setSmallIcon(IOUtils.readIcon("/com/fr/design/images/control/refresh.png")); + this.setSmallIcon(new LazyIcon("refresh")); } } diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/TabMoveNextAction.java b/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/TabMoveNextAction.java index 6dfae2ddd7..b802fa1602 100644 --- a/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/TabMoveNextAction.java +++ b/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/TabMoveNextAction.java @@ -1,9 +1,9 @@ package com.fr.design.designer.creator.cardlayout; +import com.fine.theme.icon.LazyIcon; import com.fr.design.mainframe.FormDesigner; import com.fr.form.ui.CardSwitchButton; import com.fr.form.ui.container.cardlayout.WTabFitLayout; -import com.fr.general.IOUtils; /** @@ -14,7 +14,7 @@ public class TabMoveNextAction extends TabMoveAction { public TabMoveNextAction(FormDesigner t, XCardSwitchButton xCardSwitchButton) { super(t, xCardSwitchButton); this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Move_Tab_Next")); - this.setSmallIcon(IOUtils.readIcon("com/fr/design/images/control/tab/next.png")); + this.setSmallIcon(new LazyIcon("triangle_right")); } @Override diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/EventPropertyTable.java b/designer-form/src/main/java/com/fr/design/designer/properties/EventPropertyTable.java index 2a3ab3dac2..143b7ee024 100644 --- a/designer-form/src/main/java/com/fr/design/designer/properties/EventPropertyTable.java +++ b/designer-form/src/main/java/com/fr/design/designer/properties/EventPropertyTable.java @@ -7,6 +7,7 @@ import com.fr.design.javascript.EmailPane; import com.fr.design.javascript.JavaScriptActionPane; import com.fr.design.mainframe.FormDesigner; import com.fr.design.widget.EventCreator; +import com.fr.design.write.submit.DBManipulationInWdigetEventNoCellPane; import com.fr.design.write.submit.DBManipulationPane; import com.fr.design.editor.ValueEditorPaneFactory; import com.fr.design.designer.creator.XCreator; @@ -44,7 +45,7 @@ public class EventPropertyTable extends UIListControlPane { return new JavaScriptActionPane() { @Override protected DBManipulationPane createDBManipulationPane() { - return new DBManipulationPane(ValueEditorPaneFactory.formEditors()); + return new DBManipulationInWdigetEventNoCellPane(ValueEditorPaneFactory.formEditors()); } @Override diff --git a/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java b/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java index aa6f5f6642..36b8fa138d 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java @@ -114,6 +114,7 @@ public class WidgetPropertyPane extends FormDockView implements BaseWidgetProper this.createTabPane(); this.initTables(); + revalidate(); } /** diff --git a/designer-form/src/main/java/com/fr/design/mainframe/share/generate/task/ComponentCreator.java b/designer-form/src/main/java/com/fr/design/mainframe/share/generate/task/ComponentCreator.java index ed1c2a91db..75f7def2d9 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/share/generate/task/ComponentCreator.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/share/generate/task/ComponentCreator.java @@ -5,13 +5,13 @@ import com.fr.base.iofile.attr.ExtendSharableAttrMark; import com.fr.base.iofile.attr.SharableAttrMark; import com.fr.base.theme.TemplateTheme; import com.fr.base.theme.TemplateThemeConfig; +import com.fr.data.TableDataSource; import com.fr.design.i18n.Toolkit; import com.fr.design.mainframe.JTemplate; import com.fr.design.mainframe.share.generate.impl.AbstractComponentCreatorProcessor; import com.fr.form.main.Form; import com.fr.form.main.WidgetGatherAdapter; import com.fr.form.share.DefaultSharableWidget; -import com.fr.form.share.ShareEmbeddedConverter; import com.fr.form.share.bean.ComponentReuBean; import com.fr.form.share.editor.DefaultSharableEditor; import com.fr.form.share.editor.PlainSharableEditor; @@ -21,11 +21,14 @@ import com.fr.form.ui.Widget; import com.fr.log.FineLoggerFactory; import com.fr.stable.StringUtils; import com.fr.stable.fun.IOFileAttrMark; -import com.fr.workspace.WorkContext; +import com.fr.workspace.server.entity.tabledata.PreviewSourceBean; +import com.fr.workspace.server.entity.tabledata.TableDataBean; +import com.fr.workspace.server.repository.tabledata.TableDataRepository; import org.jetbrains.annotations.NotNull; import java.util.HashMap; import java.util.Iterator; +import java.util.List; import java.util.Map; /** @@ -112,8 +115,7 @@ public class ComponentCreator extends AbstractComponentCreatorProcessor { //内置数据集 if (tpl != null) { - ShareEmbeddedConverter embeddedConverter = WorkContext.getCurrent().get(ShareEmbeddedConverter.class); - Map map = embeddedConverter.convertToEmbeddedTableData(tpl, paraMap); + Map map = convertToEmbeddedTableData(tpl, paraMap); Iterator> iterator = map.entrySet().iterator(); while (iterator.hasNext()) { Map.Entry entry = iterator.next(); @@ -123,6 +125,16 @@ public class ComponentCreator extends AbstractComponentCreatorProcessor { return tpl; } + private Map convertToEmbeddedTableData(TableDataSource tableDataSource, Map parameterMap) throws Exception { + PreviewSourceBean bean = new PreviewSourceBean(tableDataSource, StringUtils.EMPTY, parameterMap , -1, -1 ,new String[0], new int[0]); + List beanList = TableDataRepository.getInstance().convertToEmbeddedTableData(bean); + Map ans = new HashMap<>(); + for (TableDataBean tableDataBean : beanList) { + ans.put(tableDataBean.getName(), tableDataBean.getTableData()); + } + return ans; + } + @NotNull protected DefaultSharableEditor createSharableEditor(Form form, Map paraMap, Widget widget, DefaultSharableWidget info) { diff --git a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/ComposedNativeBridges.java b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/ComposedNativeBridges.java index 3a09774c53..4f76ce2846 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/ComposedNativeBridges.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/ComposedNativeBridges.java @@ -1,6 +1,5 @@ package com.fr.design.mainframe.share.ui.online.mini.bridge; -import com.teamdev.jxbrowser.chromium.JSAccessible; import com.teamdev.jxbrowser.js.JsAccessible; /** @@ -9,15 +8,12 @@ import com.teamdev.jxbrowser.js.JsAccessible; * Created by Starryi on 2021/12/20 */ public class ComposedNativeBridges { - @JSAccessible @JsAccessible public final Object Browser; - @JSAccessible @JsAccessible public final Object Auth; - @JSAccessible @JsAccessible public final Object Product; diff --git a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeAuthBridge.java b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeAuthBridge.java index 42f3a6c655..03f181c4ed 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeAuthBridge.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeAuthBridge.java @@ -5,7 +5,6 @@ import com.fr.design.bridge.exec.JSBridge; import com.fr.design.login.DesignerLoginHelper; import com.fr.design.login.DesignerLoginSource; import com.fr.design.mainframe.share.ui.online.mini.MiniComponentShopDialog; -import com.teamdev.jxbrowser.chromium.JSAccessible; import com.teamdev.jxbrowser.js.JsAccessible; import java.awt.Window; @@ -17,14 +16,12 @@ import java.util.HashMap; * Created by Starryi on 2021/12/20 */ public class NativeAuthBridge { - @JSAccessible @JsAccessible @JSBridge public String getLoginUsername() { return DesignerEnvManager.getEnvManager().getDesignerLoginUsername(); } - @JSAccessible @JsAccessible @JSBridge public void goLogin() { diff --git a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeBrowserBridge.java b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeBrowserBridge.java index ee77a8b95a..0d0c823afa 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeBrowserBridge.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeBrowserBridge.java @@ -2,7 +2,6 @@ package com.fr.design.mainframe.share.ui.online.mini.bridge; import com.fr.design.bridge.exec.JSBridge; import com.fr.design.mainframe.share.ui.online.mini.MiniComponentShopDialog; -import com.teamdev.jxbrowser.chromium.JSAccessible; import com.teamdev.jxbrowser.js.JsAccessible; import java.awt.Window; @@ -14,7 +13,6 @@ import java.awt.Window; */ public class NativeBrowserBridge { - @JSAccessible @JsAccessible @JSBridge public void dispose() { diff --git a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeProductBridge.java b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeProductBridge.java index 4cb985b5af..8313329954 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeProductBridge.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeProductBridge.java @@ -20,7 +20,6 @@ import com.fr.form.share.bean.OnlineShareWidget; import com.fr.form.share.group.DefaultShareGroupManager; import com.fr.json.JSONObject; import com.fr.stable.StringUtils; -import com.teamdev.jxbrowser.chromium.JSAccessible; import com.teamdev.jxbrowser.js.JsAccessible; import javax.swing.JOptionPane; @@ -55,13 +54,12 @@ public class NativeProductBridge { this.window = window; } - @JSAccessible @JsAccessible @JSBridge public boolean isProductDownloaded(String uuid) { for (Group group : DefaultShareGroupManager.getInstance().getAllGroup()) { SharableWidgetProvider[] widgetProviderList = group.getAllBindInfoList(); - for (SharableWidgetProvider widget: widgetProviderList) { + for (SharableWidgetProvider widget : widgetProviderList) { if (StringUtils.equals(uuid, widget.getId())) { return true; } @@ -70,7 +68,6 @@ public class NativeProductBridge { return false; } - @JSAccessible @JsAccessible @JSBridge public void addProductDownloadTaskStartListener(String json, Object function) { @@ -91,7 +88,6 @@ public class NativeProductBridge { } - @JSAccessible @JsAccessible @JSBridge public void removeProductDownloadTaskStartListener(String json, Object function) { @@ -110,7 +106,6 @@ public class NativeProductBridge { downloadTaskGetters.put(uuid, startListeners); } - @JSAccessible @JsAccessible @JSBridge public Object getExecutingProductDownloadTask(String json) { @@ -128,7 +123,6 @@ public class NativeProductBridge { return task; } - @JSAccessible @JsAccessible @JSBridge public Object createProductDownloadTask(String json) { @@ -155,7 +149,6 @@ public class NativeProductBridge { } } - @JSAccessible @JsAccessible @JSBridge public void addThemeDownloadTaskStartListener(String themePath, Object function) { @@ -167,7 +160,6 @@ public class NativeProductBridge { themeDownloadTaskStartListeners.put(themePath, startListeners); } - @JSAccessible @JsAccessible @JSBridge public void removeThemeDownloadTaskStartListener(String themePath, Object function) { @@ -179,7 +171,6 @@ public class NativeProductBridge { themeDownloadTaskStartListeners.put(themePath, startListeners); } - @JSAccessible @JsAccessible @JSBridge public Object getExecutingThemeDownloadTask(String themePath) { @@ -190,7 +181,6 @@ public class NativeProductBridge { return task; } - @JSAccessible @JsAccessible @JSBridge public Object createTemplateThemeDownloadTask(String themePath) { @@ -236,7 +226,6 @@ public class NativeProductBridge { }); } - @JSAccessible @JsAccessible @JSBridge @Override @@ -256,7 +245,7 @@ public class NativeProductBridge { "", FineJOptionPane.OK_CANCEL_OPTION ); - allowedDownload = result == JOptionPane.OK_OPTION; + allowedDownload = result == JOptionPane.OK_OPTION; } if (allowedDownload) { fireStartEvent(null); @@ -268,7 +257,6 @@ public class NativeProductBridge { }); } - @JSAccessible @JsAccessible @JSBridge @Override @@ -341,7 +329,6 @@ public class NativeProductBridge { }); } - @JSAccessible @JsAccessible @JSBridge @Override @@ -370,7 +357,6 @@ public class NativeProductBridge { }); } - @JSAccessible @JsAccessible @JSBridge @Override @@ -412,6 +398,7 @@ public class NativeProductBridge { private final NativeProductBridge env; private final String themePath; private final TemplateThemeInstallation action; + public TemplateThemeInstallationTask(NativeProductBridge env, Object window, String themePath) { super(window); this.env = env; @@ -436,7 +423,6 @@ public class NativeProductBridge { }); } - @JSAccessible @JsAccessible @JSBridge @Override @@ -454,7 +440,6 @@ public class NativeProductBridge { }); } - @JSAccessible @JsAccessible @JSBridge @Override diff --git a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeTaskBridge.java b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeTaskBridge.java index 2929a35408..1b013d06b8 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeTaskBridge.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/NativeTaskBridge.java @@ -3,7 +3,6 @@ package com.fr.design.mainframe.share.ui.online.mini.bridge; import com.fr.design.bridge.exec.JSBridge; import com.fr.design.mainframe.share.mini.MiniShopNativeTask; import com.fr.design.mainframe.share.mini.MiniShopNativeTaskManager; -import com.teamdev.jxbrowser.chromium.JSAccessible; import com.teamdev.jxbrowser.js.JsAccessible; import java.util.HashSet; @@ -32,21 +31,18 @@ public class NativeTaskBridge implements MiniShopNativeTask { } @JSBridge - @JSAccessible @JsAccessible public void addStatusCallback(Object cb) { this.statusCbs.add(cb); } @JSBridge - @JSAccessible @JsAccessible public void removeStatusCallback(Object cb) { this.statusCbs.remove(cb); } @JSBridge - @JSAccessible @JsAccessible @Override public void execute() { @@ -56,7 +52,6 @@ public class NativeTaskBridge implements MiniShopNativeTask { } @JSBridge - @JSAccessible @JsAccessible @Override public void cancel() { diff --git a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/SafeJSFunctionInvoker.java b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/SafeJSFunctionInvoker.java index e5bf71da87..31ae0477a5 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/SafeJSFunctionInvoker.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/mini/bridge/SafeJSFunctionInvoker.java @@ -1,7 +1,5 @@ package com.fr.design.mainframe.share.ui.online.mini.bridge; -import com.teamdev.jxbrowser.chromium.JSFunction; -import com.teamdev.jxbrowser.chromium.JSObject; import com.teamdev.jxbrowser.js.JsFunction; import com.teamdev.jxbrowser.js.JsObject; @@ -16,29 +14,15 @@ public class SafeJSFunctionInvoker { public static void invoke(Collection functions, Object instance, Object... args) { if (functions != null) { - for (Object function: functions) { + for (Object function : functions) { invoke(function, instance, args); } } } public static void invoke(Object function, Object instance, Object... args) { - if (function != null) { - if (function instanceof JSFunction && instance instanceof JSObject) { - invokeV6((JSFunction) function, (JSObject) instance, args); - } else if (function instanceof JsFunction && instance instanceof JsObject) { - invokeV7((JsFunction) function, (JsObject) instance, args); - } - } - } - - private static void invokeV6(JSFunction function, JSObject instance, Object... args) { - if (!function.getContext().isDisposed()) { - function.invoke(instance, args); + if (function instanceof JsFunction && instance instanceof JsObject) { + ((JsFunction) function).invoke((JsObject) instance, args); } } - - private static void invokeV7(JsFunction function, JsObject instance, Object... args) { - function.invoke(instance, args); - } } diff --git a/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/BasicSetVisiblePropertyPane.java b/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/BasicSetVisiblePropertyPane.java index 05dd7923e7..4613437e3a 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/BasicSetVisiblePropertyPane.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/BasicSetVisiblePropertyPane.java @@ -3,6 +3,9 @@ package com.fr.design.mainframe.widget.ui; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.form.ui.Widget; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.row; + /** * Created by kerry on 2017/9/30. @@ -17,12 +20,12 @@ public class BasicSetVisiblePropertyPane extends FormBasicPropertyPane { protected void initComponent() { UICheckBox otherOtherConfig = createOtherConfig(); if(otherOtherConfig != null){ - corePane.add(otherOtherConfig); + corePane.add(row(cell(otherOtherConfig)).getComponent()); } visibleCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget_Visible"), true); visibleCheckBox.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic")); - corePane.add(visibleCheckBox); + corePane.add(row(cell(visibleCheckBox)).getComponent()); } public UICheckBox createOtherConfig(){ diff --git a/designer-form/src/main/java/com/fr/design/parameter/ParameterPropertyPane.java b/designer-form/src/main/java/com/fr/design/parameter/ParameterPropertyPane.java index 16c0e91d65..75257c0b01 100644 --- a/designer-form/src/main/java/com/fr/design/parameter/ParameterPropertyPane.java +++ b/designer-form/src/main/java/com/fr/design/parameter/ParameterPropertyPane.java @@ -1,5 +1,6 @@ package com.fr.design.parameter; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.base.Parameter; import com.fr.design.border.FineBorderFactory; import com.fr.design.constants.UIConstants; @@ -23,6 +24,8 @@ import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; +import static com.fine.theme.utils.FineUIScale.scale; + public class ParameterPropertyPane extends JPanel{ private ParameterToolBarPane toolbarPane; private ParaDefinitePane paraPane; @@ -32,8 +35,7 @@ public class ParameterPropertyPane extends JPanel{ private static ParameterPropertyPane THIS; private boolean isEditing = false; - private static final int PADDING_MIDDLE = 10; - private static final int ADD_PARA_PANE_MAX_HEIGHT = 95; + private static final int ADD_PARA_PANE_MAX_HEIGHT = scale(120); public static final ParameterPropertyPane getInstance() { if (THIS == null) { @@ -138,7 +140,7 @@ public class ParameterPropertyPane extends JPanel{ private void setEditor(FormDesigner editor) { if (formHierarchyTreePaneWrapper == null) { formHierarchyTreePaneWrapper = new JPanel(new BorderLayout()); - formHierarchyTreePaneWrapper.setBorder(BorderFactory.createEmptyBorder(0, PADDING_MIDDLE, 0, 0)); + formHierarchyTreePaneWrapper.setBorder(new ScaledEmptyBorder(0, 10, 0, 0)); this.add(formHierarchyTreePaneWrapper, BorderLayout.CENTER); } formHierarchyTreePaneWrapper.remove(FormHierarchyTreePane.getInstance()); diff --git a/designer-form/src/main/java/com/fr/design/parameter/RootDesignDefinePane.java b/designer-form/src/main/java/com/fr/design/parameter/RootDesignDefinePane.java index 679284edd3..ee9ea9909a 100644 --- a/designer-form/src/main/java/com/fr/design/parameter/RootDesignDefinePane.java +++ b/designer-form/src/main/java/com/fr/design/parameter/RootDesignDefinePane.java @@ -182,9 +182,9 @@ public class RootDesignDefinePane extends AbstractDataModify { cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Base_Background"))).weight(LEFT_WEIGHT), cell(backgroundPane).weight(RIGHT_WEIGHT) ), - cell(displayReport), - cell(useParamsTemplate), - cell(fireAfterEditor), + row(cell(displayReport)), + row(cell(useParamsTemplate)), + row(cell(fireAfterEditor)), row( cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Display_Position"))).weight(LEFT_WEIGHT), cell(hAlignmentPane).weight(RIGHT_WEIGHT) @@ -275,9 +275,9 @@ public class RootDesignDefinePane extends AbstractDataModify { cell(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Base_Background"))).weight(LEFT_WEIGHT), cell(backgroundPane).weight(RIGHT_WEIGHT) ), - cell(displayReport), - cell(useParamsTemplate), - cell(fireAfterEditor) + row(cell(displayReport)), + row(cell(useParamsTemplate)), + row(cell(fireAfterEditor)) ).getComponent(); } diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/ButtonGroupDictPane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/ButtonGroupDictPane.java index 86238df132..c29aff770c 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/ButtonGroupDictPane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/ButtonGroupDictPane.java @@ -42,7 +42,7 @@ public class ButtonGroupDictPane extends JPanel { cell(columnLabel).weight(LEFT_WEIGHT), cell(columnSpinner).weight(RIGHT_WEIGHT) ).getComponent(); this.add(column(VERTICAL_GAP, - cell(adaptiveCheckbox), + row(cell(adaptiveCheckbox)), cell(columnSettingRow) ).getComponent()); diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/CheckBoxGroupDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/CheckBoxGroupDefinePane.java index 97df720aa0..5a90856fd6 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/CheckBoxGroupDefinePane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/CheckBoxGroupDefinePane.java @@ -13,6 +13,7 @@ import javax.swing.JPanel; import static com.fine.swing.ui.layout.Layouts.cell; import static com.fine.swing.ui.layout.Layouts.column; +import static com.fine.swing.ui.layout.Layouts.row; import static com.fr.design.constants.LayoutConstants.VERTICAL_GAP; public class CheckBoxGroupDefinePane extends ButtonGroupDefinePane { @@ -41,7 +42,7 @@ public class CheckBoxGroupDefinePane extends ButtonGroupDefinePane returnTypePane = new ReturnTypePane(); return column(VERTICAL_GAP, - cell(supportTagCheckBox),cell(returnTypePane) + row(cell(supportTagCheckBox)), + cell(returnTypePane) ).getComponent(); } diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/CustomWritableRepeatEditorPane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/CustomWritableRepeatEditorPane.java index c57d05da12..df0afbcfb2 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/CustomWritableRepeatEditorPane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/CustomWritableRepeatEditorPane.java @@ -7,6 +7,9 @@ import com.fr.form.ui.CustomWriteAbleRepeatEditor; import javax.swing.JPanel; +import static com.fine.swing.ui.layout.Layouts.row; +import static com.fine.swing.ui.layout.Layouts.cell; + /** * Author : Shockway * Date: 13-9-18 @@ -24,7 +27,7 @@ public abstract class CustomWritableRepeatEditorPane e cell(dicPane[0]).weight(LEFT_WEIGHT), cell(dicPane[1]).weight(RIGHT_WEIGHT) ), - cell(repeatCheckBox) + row(cell(repeatCheckBox)) ).getComponent(); if (waterMarkComponent[0] != null && waterMarkComponent[1] != null) { panel.add(row( @@ -115,7 +115,7 @@ public abstract class DirectWriteEditorDefinePane e public JPanel setValidatePane(){ directWriteCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Edit"), false); JPanel otherContentPane = column(LayoutConstants.VERTICAL_GAP).getComponent(); - otherContentPane.add(directWriteCheckBox); + otherContentPane.add(row(cell(directWriteCheckBox)).getComponent()); return otherContentPane; } diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/FieldEditorDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/FieldEditorDefinePane.java index e847f7dac3..77a7ab450d 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/FieldEditorDefinePane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/FieldEditorDefinePane.java @@ -154,7 +154,7 @@ public abstract class FieldEditorDefinePane extends Abstr }); validatePane.add(column(VERTICAL_GAP, - cell(allowBlankCheckBox), + row(cell(allowBlankCheckBox)), cell(errorTipPane) ).getComponent()); diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/LabelDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/LabelDefinePane.java index 031b21466e..0ba933b964 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/LabelDefinePane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/LabelDefinePane.java @@ -82,8 +82,8 @@ public class LabelDefinePane extends AbstractDataModify