markpdfdown 0.4.2 → 0.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -15989,7 +15989,7 @@ var CheckCircleFilled = function CheckCircleFilled2(props, ref) {
15989
15989
  icon: CheckCircleFilled$1
15990
15990
  }));
15991
15991
  };
15992
- var RefIcon$13 = /* @__PURE__ */ reactExports.forwardRef(CheckCircleFilled);
15992
+ var RefIcon$14 = /* @__PURE__ */ reactExports.forwardRef(CheckCircleFilled);
15993
15993
  var CloseCircleFilled$1 = { "icon": { "tag": "svg", "attrs": { "fill-rule": "evenodd", "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64c247.4 0 448 200.6 448 448S759.4 960 512 960 64 759.4 64 512 264.6 64 512 64zm127.98 274.82h-.04l-.08.06L512 466.75 384.14 338.88c-.04-.05-.06-.06-.08-.06a.12.12 0 00-.07 0c-.03 0-.05.01-.09.05l-45.02 45.02a.2.2 0 00-.05.09.12.12 0 000 .07v.02a.27.27 0 00.06.06L466.75 512 338.88 639.86c-.05.04-.06.06-.06.08a.12.12 0 000 .07c0 .03.01.05.05.09l45.02 45.02a.2.2 0 00.09.05.12.12 0 00.07 0c.02 0 .04-.01.08-.05L512 557.25l127.86 127.87c.04.04.06.05.08.05a.12.12 0 00.07 0c.03 0 .05-.01.09-.05l45.02-45.02a.2.2 0 00.05-.09.12.12 0 000-.07v-.02a.27.27 0 00-.05-.06L557.25 512l127.87-127.86c.04-.04.05-.06.05-.08a.12.12 0 000-.07c0-.03-.01-.05-.05-.09l-45.02-45.02a.2.2 0 00-.09-.05.12.12 0 00-.07 0z" } }] }, "name": "close-circle", "theme": "filled" };
15994
15994
  var CloseCircleFilled = function CloseCircleFilled2(props, ref) {
15995
15995
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -15997,7 +15997,7 @@ var CloseCircleFilled = function CloseCircleFilled2(props, ref) {
15997
15997
  icon: CloseCircleFilled$1
15998
15998
  }));
15999
15999
  };
16000
- var RefIcon$12 = /* @__PURE__ */ reactExports.forwardRef(CloseCircleFilled);
16000
+ var RefIcon$13 = /* @__PURE__ */ reactExports.forwardRef(CloseCircleFilled);
16001
16001
  var CloseOutlined$1 = { "icon": { "tag": "svg", "attrs": { "fill-rule": "evenodd", "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M799.86 166.31c.02 0 .04.02.08.06l57.69 57.7c.04.03.05.05.06.08a.12.12 0 010 .06c0 .03-.02.05-.06.09L569.93 512l287.7 287.7c.04.04.05.06.06.09a.12.12 0 010 .07c0 .02-.02.04-.06.08l-57.7 57.69c-.03.04-.05.05-.07.06a.12.12 0 01-.07 0c-.03 0-.05-.02-.09-.06L512 569.93l-287.7 287.7c-.04.04-.06.05-.09.06a.12.12 0 01-.07 0c-.02 0-.04-.02-.08-.06l-57.69-57.7c-.04-.03-.05-.05-.06-.07a.12.12 0 010-.07c0-.03.02-.05.06-.09L454.07 512l-287.7-287.7c-.04-.04-.05-.06-.06-.09a.12.12 0 010-.07c0-.02.02-.04.06-.08l57.7-57.69c.03-.04.05-.05.07-.06a.12.12 0 01.07 0c.03 0 .05.02.09.06L512 454.07l287.7-287.7c.04-.04.06-.05.09-.06a.12.12 0 01.07 0z" } }] }, "name": "close", "theme": "outlined" };
16002
16002
  var CloseOutlined = function CloseOutlined2(props, ref) {
16003
16003
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -16005,7 +16005,7 @@ var CloseOutlined = function CloseOutlined2(props, ref) {
16005
16005
  icon: CloseOutlined$1
16006
16006
  }));
16007
16007
  };
16008
- var RefIcon$11 = /* @__PURE__ */ reactExports.forwardRef(CloseOutlined);
16008
+ var RefIcon$12 = /* @__PURE__ */ reactExports.forwardRef(CloseOutlined);
16009
16009
  var ExclamationCircleFilled$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm-32 232c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V296zm32 440a48.01 48.01 0 010-96 48.01 48.01 0 010 96z" } }] }, "name": "exclamation-circle", "theme": "filled" };
16010
16010
  var ExclamationCircleFilled = function ExclamationCircleFilled2(props, ref) {
16011
16011
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -16013,7 +16013,7 @@ var ExclamationCircleFilled = function ExclamationCircleFilled2(props, ref) {
16013
16013
  icon: ExclamationCircleFilled$1
16014
16014
  }));
16015
16015
  };
16016
- var RefIcon$10 = /* @__PURE__ */ reactExports.forwardRef(ExclamationCircleFilled);
16016
+ var RefIcon$11 = /* @__PURE__ */ reactExports.forwardRef(ExclamationCircleFilled);
16017
16017
  var InfoCircleFilled$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm32 664c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V456c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272zm-32-344a48.01 48.01 0 010-96 48.01 48.01 0 010 96z" } }] }, "name": "info-circle", "theme": "filled" };
16018
16018
  var InfoCircleFilled = function InfoCircleFilled2(props, ref) {
16019
16019
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -16021,7 +16021,7 @@ var InfoCircleFilled = function InfoCircleFilled2(props, ref) {
16021
16021
  icon: InfoCircleFilled$1
16022
16022
  }));
16023
16023
  };
16024
- var RefIcon$$ = /* @__PURE__ */ reactExports.forwardRef(InfoCircleFilled);
16024
+ var RefIcon$10 = /* @__PURE__ */ reactExports.forwardRef(InfoCircleFilled);
16025
16025
  var attributes$1 = "accept acceptCharset accessKey action allowFullScreen allowTransparency\n alt async autoComplete autoFocus autoPlay capture cellPadding cellSpacing challenge\n charSet checked classID className colSpan cols content contentEditable contextMenu\n controls coords crossOrigin data dateTime default defer dir disabled download draggable\n encType form formAction formEncType formMethod formNoValidate formTarget frameBorder\n headers height hidden high href hrefLang htmlFor httpEquiv icon id inputMode integrity\n is keyParams keyType kind label lang list loop low manifest marginHeight marginWidth max maxLength media\n mediaGroup method min minLength multiple muted name noValidate nonce open\n optimum pattern placeholder poster preload radioGroup readOnly rel required\n reversed role rowSpan rows sandbox scope scoped scrolling seamless selected\n shape size sizes span spellCheck src srcDoc srcLang srcSet start step style\n summary tabIndex target title type useMap value width wmode wrap";
16026
16026
  var eventsName = "onCopy onCut onPaste onCompositionEnd onCompositionStart onCompositionUpdate onKeyDown\n onKeyPress onKeyUp onFocus onBlur onChange onInput onSubmit onClick onContextMenu onDoubleClick\n onDrag onDragEnd onDragEnter onDragExit onDragLeave onDragOver onDragStart onDrop onMouseDown\n onMouseEnter onMouseLeave onMouseMove onMouseOut onMouseOver onMouseUp onSelect onTouchCancel\n onTouchEnd onTouchMove onTouchStart onScroll onWheel onAbort onCanPlay onCanPlayThrough\n onDurationChange onEmptied onEncrypted onEnded onError onLoadedData onLoadedMetadata\n onLoadStart onPause onPlay onPlaying onProgress onRateChange onSeeked onSeeking onStalled onSuspend onTimeUpdate onVolumeChange onWaiting onLoad onError";
16027
16027
  var propList = "".concat(attributes$1, " ").concat(eventsName).split(/[\s\n]+/);
@@ -16254,10 +16254,10 @@ var __rest$18 = function(s2, e2) {
16254
16254
  return t2;
16255
16255
  };
16256
16256
  const iconMapFilled = {
16257
- success: RefIcon$13,
16258
- info: RefIcon$$,
16259
- error: RefIcon$12,
16260
- warning: RefIcon$10
16257
+ success: RefIcon$14,
16258
+ info: RefIcon$10,
16259
+ error: RefIcon$13,
16260
+ warning: RefIcon$11
16261
16261
  };
16262
16262
  const IconNode = (props) => {
16263
16263
  const {
@@ -16285,7 +16285,7 @@ const CloseIconNode = (props) => {
16285
16285
  handleClose,
16286
16286
  ariaProps
16287
16287
  } = props;
16288
- const mergedCloseIcon = closeIcon === true || closeIcon === void 0 ? /* @__PURE__ */ reactExports.createElement(RefIcon$11, null) : closeIcon;
16288
+ const mergedCloseIcon = closeIcon === true || closeIcon === void 0 ? /* @__PURE__ */ reactExports.createElement(RefIcon$12, null) : closeIcon;
16289
16289
  return isClosable ? /* @__PURE__ */ reactExports.createElement("button", Object.assign({
16290
16290
  type: "button",
16291
16291
  onClick: handleClose,
@@ -17236,7 +17236,7 @@ var LoadingOutlined = function LoadingOutlined2(props, ref) {
17236
17236
  icon: LoadingOutlined$1
17237
17237
  }));
17238
17238
  };
17239
- var RefIcon$_ = /* @__PURE__ */ reactExports.forwardRef(LoadingOutlined);
17239
+ var RefIcon$$ = /* @__PURE__ */ reactExports.forwardRef(LoadingOutlined);
17240
17240
  function mergeProps$1(...items) {
17241
17241
  const ret = {};
17242
17242
  items.forEach((item) => {
@@ -17294,7 +17294,7 @@ const useClosable = (propCloseCollection, contextCloseCollection, fallbackCloseC
17294
17294
  const [contextLocale] = useLocale("global", localeValues.global);
17295
17295
  const closeBtnIsDisabled = typeof propCloseConfig !== "boolean" ? !!(propCloseConfig === null || propCloseConfig === void 0 ? void 0 : propCloseConfig.disabled) : false;
17296
17296
  const mergedFallbackCloseCollection = React.useMemo(() => Object.assign({
17297
- closeIcon: /* @__PURE__ */ React.createElement(RefIcon$11, null)
17297
+ closeIcon: /* @__PURE__ */ React.createElement(RefIcon$12, null)
17298
17298
  }, fallbackCloseCollection), [fallbackCloseCollection]);
17299
17299
  const mergedClosableConfig = React.useMemo(() => {
17300
17300
  if (propCloseConfig === false) {
@@ -17616,11 +17616,11 @@ var __rest$17 = function(s2, e2) {
17616
17616
  return t2;
17617
17617
  };
17618
17618
  const TypeIcon = {
17619
- info: /* @__PURE__ */ reactExports.createElement(RefIcon$$, null),
17620
- success: /* @__PURE__ */ reactExports.createElement(RefIcon$13, null),
17621
- error: /* @__PURE__ */ reactExports.createElement(RefIcon$12, null),
17622
- warning: /* @__PURE__ */ reactExports.createElement(RefIcon$10, null),
17623
- loading: /* @__PURE__ */ reactExports.createElement(RefIcon$_, null)
17619
+ info: /* @__PURE__ */ reactExports.createElement(RefIcon$10, null),
17620
+ success: /* @__PURE__ */ reactExports.createElement(RefIcon$14, null),
17621
+ error: /* @__PURE__ */ reactExports.createElement(RefIcon$13, null),
17622
+ warning: /* @__PURE__ */ reactExports.createElement(RefIcon$11, null),
17623
+ loading: /* @__PURE__ */ reactExports.createElement(RefIcon$$, null)
17624
17624
  };
17625
17625
  const PureContent$1 = ({
17626
17626
  prefixCls,
@@ -17733,7 +17733,7 @@ const Holder$1 = /* @__PURE__ */ reactExports.forwardRef((props, ref) => {
17733
17733
  const getNotificationMotion = () => getMotion$3(prefixCls, transitionName);
17734
17734
  const mergedCloseIcon = /* @__PURE__ */ reactExports.createElement("span", {
17735
17735
  className: `${prefixCls}-close-x`
17736
- }, /* @__PURE__ */ reactExports.createElement(RefIcon$11, {
17736
+ }, /* @__PURE__ */ reactExports.createElement(RefIcon$12, {
17737
17737
  className: `${prefixCls}-close-icon`
17738
17738
  }));
17739
17739
  const [api, holder] = useNotification$1({
@@ -18759,7 +18759,7 @@ const InnerLoadingIcon = /* @__PURE__ */ reactExports.forwardRef((props, ref) =>
18759
18759
  className: mergedIconCls,
18760
18760
  style: style2,
18761
18761
  ref
18762
- }, /* @__PURE__ */ React.createElement(RefIcon$_, {
18762
+ }, /* @__PURE__ */ React.createElement(RefIcon$$, {
18763
18763
  className: iconClassName
18764
18764
  }));
18765
18765
  });
@@ -19054,7 +19054,7 @@ var RightOutlined = function RightOutlined2(props, ref) {
19054
19054
  icon: RightOutlined$1
19055
19055
  }));
19056
19056
  };
19057
- var RefIcon$Z = /* @__PURE__ */ reactExports.forwardRef(RightOutlined);
19057
+ var RefIcon$_ = /* @__PURE__ */ reactExports.forwardRef(RightOutlined);
19058
19058
  const genCollapseMotion = (token2) => ({
19059
19059
  [token2.componentCls]: {
19060
19060
  // For common/openAnimation
@@ -25115,7 +25115,7 @@ const NormalOkBtn = () => {
25115
25115
  function renderCloseIcon(prefixCls, closeIcon) {
25116
25116
  return /* @__PURE__ */ React.createElement("span", {
25117
25117
  className: `${prefixCls}-close-x`
25118
- }, closeIcon || /* @__PURE__ */ React.createElement(RefIcon$11, {
25118
+ }, closeIcon || /* @__PURE__ */ React.createElement(RefIcon$12, {
25119
25119
  className: `${prefixCls}-close-icon`
25120
25120
  }));
25121
25121
  }
@@ -25701,7 +25701,7 @@ const Modal$1 = (props) => {
25701
25701
  })) : null;
25702
25702
  const [mergedClosable, mergedCloseIcon, closeBtnIsDisabled, ariaProps] = useClosable(pickClosable(props), pickClosable(modalContext), {
25703
25703
  closable: true,
25704
- closeIcon: /* @__PURE__ */ reactExports.createElement(RefIcon$11, {
25704
+ closeIcon: /* @__PURE__ */ reactExports.createElement(RefIcon$12, {
25705
25705
  className: `${prefixCls}-close-icon`
25706
25706
  }),
25707
25707
  closeIconRender: (icon2) => renderCloseIcon(prefixCls, icon2)
@@ -25894,16 +25894,16 @@ const ConfirmContent = (props) => {
25894
25894
  if (!icon2 && icon2 !== null) {
25895
25895
  switch (type4) {
25896
25896
  case "info":
25897
- mergedIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$$, null);
25897
+ mergedIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$10, null);
25898
25898
  break;
25899
25899
  case "success":
25900
- mergedIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$13, null);
25900
+ mergedIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$14, null);
25901
25901
  break;
25902
25902
  case "error":
25903
- mergedIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$12, null);
25903
+ mergedIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$13, null);
25904
25904
  break;
25905
25905
  default:
25906
- mergedIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$10, null);
25906
+ mergedIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$11, null);
25907
25907
  }
25908
25908
  }
25909
25909
  const mergedOkCancel = okCancel !== null && okCancel !== void 0 ? okCancel : type4 === "confirm";
@@ -26758,15 +26758,15 @@ function getCloseIcon(prefixCls, closeIcon) {
26758
26758
  if (closeIcon === null || closeIcon === false) {
26759
26759
  return null;
26760
26760
  }
26761
- return closeIcon || /* @__PURE__ */ reactExports.createElement(RefIcon$11, {
26761
+ return closeIcon || /* @__PURE__ */ reactExports.createElement(RefIcon$12, {
26762
26762
  className: `${prefixCls}-close-icon`
26763
26763
  });
26764
26764
  }
26765
26765
  const typeToIcon = {
26766
- success: RefIcon$13,
26767
- info: RefIcon$$,
26768
- error: RefIcon$12,
26769
- warning: RefIcon$10
26766
+ success: RefIcon$14,
26767
+ info: RefIcon$10,
26768
+ error: RefIcon$13,
26769
+ warning: RefIcon$11
26770
26770
  };
26771
26771
  const PureContent = (props) => {
26772
26772
  const {
@@ -33220,7 +33220,7 @@ var CheckOutlined = function CheckOutlined2(props, ref) {
33220
33220
  icon: CheckOutlined$1
33221
33221
  }));
33222
33222
  };
33223
- var RefIcon$Y = /* @__PURE__ */ reactExports.forwardRef(CheckOutlined);
33223
+ var RefIcon$Z = /* @__PURE__ */ reactExports.forwardRef(CheckOutlined);
33224
33224
  var DownOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z" } }] }, "name": "down", "theme": "outlined" };
33225
33225
  var DownOutlined = function DownOutlined2(props, ref) {
33226
33226
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -33228,7 +33228,7 @@ var DownOutlined = function DownOutlined2(props, ref) {
33228
33228
  icon: DownOutlined$1
33229
33229
  }));
33230
33230
  };
33231
- var RefIcon$X = /* @__PURE__ */ reactExports.forwardRef(DownOutlined);
33231
+ var RefIcon$Y = /* @__PURE__ */ reactExports.forwardRef(DownOutlined);
33232
33232
  var SearchOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z" } }] }, "name": "search", "theme": "outlined" };
33233
33233
  var SearchOutlined = function SearchOutlined2(props, ref) {
33234
33234
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -33236,7 +33236,7 @@ var SearchOutlined = function SearchOutlined2(props, ref) {
33236
33236
  icon: SearchOutlined$1
33237
33237
  }));
33238
33238
  };
33239
- var RefIcon$W = /* @__PURE__ */ reactExports.forwardRef(SearchOutlined);
33239
+ var RefIcon$X = /* @__PURE__ */ reactExports.forwardRef(SearchOutlined);
33240
33240
  function useIcons({
33241
33241
  suffixIcon,
33242
33242
  clearIcon,
@@ -33251,7 +33251,7 @@ function useIcons({
33251
33251
  showArrow,
33252
33252
  componentName
33253
33253
  }) {
33254
- const mergedClearIcon = clearIcon !== null && clearIcon !== void 0 ? clearIcon : /* @__PURE__ */ reactExports.createElement(RefIcon$12, null);
33254
+ const mergedClearIcon = clearIcon !== null && clearIcon !== void 0 ? clearIcon : /* @__PURE__ */ reactExports.createElement(RefIcon$13, null);
33255
33255
  const getSuffixIconNode = (arrowIcon) => {
33256
33256
  if (suffixIcon === null && !hasFeedback && !showArrow) {
33257
33257
  return null;
@@ -33262,7 +33262,7 @@ function useIcons({
33262
33262
  if (suffixIcon !== void 0) {
33263
33263
  mergedSuffixIcon = getSuffixIconNode(suffixIcon);
33264
33264
  } else if (loading) {
33265
- mergedSuffixIcon = getSuffixIconNode(/* @__PURE__ */ reactExports.createElement(RefIcon$_, {
33265
+ mergedSuffixIcon = getSuffixIconNode(/* @__PURE__ */ reactExports.createElement(RefIcon$$, {
33266
33266
  spin: true
33267
33267
  }));
33268
33268
  } else {
@@ -33272,11 +33272,11 @@ function useIcons({
33272
33272
  showSearch
33273
33273
  }) => {
33274
33274
  if (open2 && showSearch) {
33275
- return getSuffixIconNode(/* @__PURE__ */ reactExports.createElement(RefIcon$W, {
33275
+ return getSuffixIconNode(/* @__PURE__ */ reactExports.createElement(RefIcon$X, {
33276
33276
  className: iconCls
33277
33277
  }));
33278
33278
  }
33279
- return getSuffixIconNode(/* @__PURE__ */ reactExports.createElement(RefIcon$X, {
33279
+ return getSuffixIconNode(/* @__PURE__ */ reactExports.createElement(RefIcon$Y, {
33280
33280
  className: iconCls
33281
33281
  }));
33282
33282
  };
@@ -33285,7 +33285,7 @@ function useIcons({
33285
33285
  if (menuItemSelectedIcon !== void 0) {
33286
33286
  mergedItemIcon = menuItemSelectedIcon;
33287
33287
  } else if (multiple) {
33288
- mergedItemIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$Y, null);
33288
+ mergedItemIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$Z, null);
33289
33289
  } else {
33290
33290
  mergedItemIcon = null;
33291
33291
  }
@@ -33293,7 +33293,7 @@ function useIcons({
33293
33293
  if (removeIcon !== void 0) {
33294
33294
  mergedRemoveIcon = removeIcon;
33295
33295
  } else {
33296
- mergedRemoveIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$11, null);
33296
+ mergedRemoveIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$12, null);
33297
33297
  }
33298
33298
  return {
33299
33299
  clearIcon: mergedClearIcon,
@@ -35939,7 +35939,7 @@ var LeftOutlined = function LeftOutlined2(props, ref) {
35939
35939
  icon: LeftOutlined$1
35940
35940
  }));
35941
35941
  };
35942
- var RefIcon$V = /* @__PURE__ */ reactExports.forwardRef(LeftOutlined);
35942
+ var RefIcon$W = /* @__PURE__ */ reactExports.forwardRef(LeftOutlined);
35943
35943
  var ESC$1 = KeyCode.ESC, TAB = KeyCode.TAB;
35944
35944
  function useAccessibility$1(_ref) {
35945
35945
  var visible = _ref.visible, triggerRef = _ref.triggerRef, onVisibleChange = _ref.onVisibleChange, autoFocus = _ref.autoFocus, overlayRef = _ref.overlayRef;
@@ -37514,7 +37514,7 @@ var BarsOutlined = function BarsOutlined2(props, ref) {
37514
37514
  icon: BarsOutlined$1
37515
37515
  }));
37516
37516
  };
37517
- var RefIcon$U = /* @__PURE__ */ reactExports.forwardRef(BarsOutlined);
37517
+ var RefIcon$V = /* @__PURE__ */ reactExports.forwardRef(BarsOutlined);
37518
37518
  const LayoutContext = /* @__PURE__ */ reactExports.createContext({
37519
37519
  siderHook: {
37520
37520
  addSider: () => null,
@@ -37844,11 +37844,11 @@ const Sider$1 = /* @__PURE__ */ reactExports.forwardRef((props, ref) => {
37844
37844
  onClick: toggle,
37845
37845
  className: classNames(`${prefixCls}-zero-width-trigger`, `${prefixCls}-zero-width-trigger-${reverseArrow ? "right" : "left"}`),
37846
37846
  style: zeroWidthTriggerStyle
37847
- }, trigger || /* @__PURE__ */ reactExports.createElement(RefIcon$U, null)) : null;
37847
+ }, trigger || /* @__PURE__ */ reactExports.createElement(RefIcon$V, null)) : null;
37848
37848
  const reverseIcon = direction === "rtl" === !reverseArrow;
37849
37849
  const iconObj = {
37850
- expanded: reverseIcon ? /* @__PURE__ */ reactExports.createElement(RefIcon$Z, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$V, null),
37851
- collapsed: reverseIcon ? /* @__PURE__ */ reactExports.createElement(RefIcon$V, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$Z, null)
37850
+ expanded: reverseIcon ? /* @__PURE__ */ reactExports.createElement(RefIcon$_, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$W, null),
37851
+ collapsed: reverseIcon ? /* @__PURE__ */ reactExports.createElement(RefIcon$W, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$_, null)
37852
37852
  };
37853
37853
  const status2 = collapsed ? "collapsed" : "expanded";
37854
37854
  const defaultTrigger = iconObj[status2];
@@ -37892,7 +37892,7 @@ var EllipsisOutlined = function EllipsisOutlined2(props, ref) {
37892
37892
  icon: EllipsisOutlined$1
37893
37893
  }));
37894
37894
  };
37895
- var RefIcon$T = /* @__PURE__ */ reactExports.forwardRef(EllipsisOutlined);
37895
+ var RefIcon$U = /* @__PURE__ */ reactExports.forwardRef(EllipsisOutlined);
37896
37896
  const MenuContext = /* @__PURE__ */ reactExports.createContext({
37897
37897
  prefixCls: "",
37898
37898
  firstLevel: true,
@@ -39180,7 +39180,7 @@ const InternalMenu = /* @__PURE__ */ reactExports.forwardRef((props, ref) => {
39180
39180
  value: contextValue
39181
39181
  }, /* @__PURE__ */ reactExports.createElement(ExportMenu, Object.assign({
39182
39182
  getPopupContainer,
39183
- overflowedIndicator: /* @__PURE__ */ reactExports.createElement(RefIcon$T, null),
39183
+ overflowedIndicator: /* @__PURE__ */ reactExports.createElement(RefIcon$U, null),
39184
39184
  overflowedIndicatorPopupClassName: classNames(prefixCls, `${prefixCls}-${theme2}`, overflowedIndicatorPopupClassName),
39185
39185
  mode: mergedMode,
39186
39186
  selectable: mergedSelectable,
@@ -39646,9 +39646,9 @@ const Dropdown$1 = (props) => {
39646
39646
  rootClassName: classNames(cssVarCls, rootCls),
39647
39647
  expandIcon: /* @__PURE__ */ reactExports.createElement("span", {
39648
39648
  className: `${prefixCls}-menu-submenu-arrow`
39649
- }, direction === "rtl" ? /* @__PURE__ */ reactExports.createElement(RefIcon$V, {
39649
+ }, direction === "rtl" ? /* @__PURE__ */ reactExports.createElement(RefIcon$W, {
39650
39650
  className: `${prefixCls}-menu-submenu-arrow-icon`
39651
- }) : /* @__PURE__ */ reactExports.createElement(RefIcon$Z, {
39651
+ }) : /* @__PURE__ */ reactExports.createElement(RefIcon$_, {
39652
39652
  className: `${prefixCls}-menu-submenu-arrow-icon`
39653
39653
  })),
39654
39654
  mode: "vertical",
@@ -41540,7 +41540,7 @@ var PlusOutlined = function PlusOutlined2(props, ref) {
41540
41540
  icon: PlusOutlined$1
41541
41541
  }));
41542
41542
  };
41543
- var RefIcon$S = /* @__PURE__ */ reactExports.forwardRef(PlusOutlined);
41543
+ var RefIcon$T = /* @__PURE__ */ reactExports.forwardRef(PlusOutlined);
41544
41544
  const TabContext = /* @__PURE__ */ reactExports.createContext(null);
41545
41545
  var useIndicator = function useIndicator2(options) {
41546
41546
  var activeTabOffset = options.activeTabOffset, horizontal = options.horizontal, rtl = options.rtl, _options$indicator = options.indicator, indicator = _options$indicator === void 0 ? {} : _options$indicator;
@@ -43813,8 +43813,8 @@ const InternalTabs = /* @__PURE__ */ reactExports.forwardRef((props, ref) => {
43813
43813
  }) => {
43814
43814
  onEdit === null || onEdit === void 0 ? void 0 : onEdit(editType === "add" ? event : key, editType);
43815
43815
  },
43816
- removeIcon: (_a = removeIcon !== null && removeIcon !== void 0 ? removeIcon : tabs2 === null || tabs2 === void 0 ? void 0 : tabs2.removeIcon) !== null && _a !== void 0 ? _a : /* @__PURE__ */ reactExports.createElement(RefIcon$11, null),
43817
- addIcon: (addIcon !== null && addIcon !== void 0 ? addIcon : tabs2 === null || tabs2 === void 0 ? void 0 : tabs2.addIcon) || /* @__PURE__ */ reactExports.createElement(RefIcon$S, null),
43816
+ removeIcon: (_a = removeIcon !== null && removeIcon !== void 0 ? removeIcon : tabs2 === null || tabs2 === void 0 ? void 0 : tabs2.removeIcon) !== null && _a !== void 0 ? _a : /* @__PURE__ */ reactExports.createElement(RefIcon$12, null),
43817
+ addIcon: (addIcon !== null && addIcon !== void 0 ? addIcon : tabs2 === null || tabs2 === void 0 ? void 0 : tabs2.addIcon) || /* @__PURE__ */ reactExports.createElement(RefIcon$T, null),
43818
43818
  showAdd: hideAdd !== true
43819
43819
  };
43820
43820
  }
@@ -43843,7 +43843,7 @@ const InternalTabs = /* @__PURE__ */ reactExports.forwardRef((props, ref) => {
43843
43843
  style: mergedStyle,
43844
43844
  editable,
43845
43845
  more: Object.assign({
43846
- icon: (_l = (_k = (_j = (_h = tabs2 === null || tabs2 === void 0 ? void 0 : tabs2.more) === null || _h === void 0 ? void 0 : _h.icon) !== null && _j !== void 0 ? _j : tabs2 === null || tabs2 === void 0 ? void 0 : tabs2.moreIcon) !== null && _k !== void 0 ? _k : moreIcon) !== null && _l !== void 0 ? _l : /* @__PURE__ */ reactExports.createElement(RefIcon$T, null),
43846
+ icon: (_l = (_k = (_j = (_h = tabs2 === null || tabs2 === void 0 ? void 0 : tabs2.more) === null || _h === void 0 ? void 0 : _h.icon) !== null && _j !== void 0 ? _j : tabs2 === null || tabs2 === void 0 ? void 0 : tabs2.moreIcon) !== null && _k !== void 0 ? _k : moreIcon) !== null && _l !== void 0 ? _l : /* @__PURE__ */ reactExports.createElement(RefIcon$U, null),
43847
43847
  transitionName: `${rootPrefixCls}-slide-up`
43848
43848
  }, more),
43849
43849
  prefixCls,
@@ -45784,7 +45784,7 @@ var UpOutlined = function UpOutlined2(props, ref) {
45784
45784
  icon: UpOutlined$1
45785
45785
  }));
45786
45786
  };
45787
- var RefIcon$R = /* @__PURE__ */ reactExports.forwardRef(UpOutlined);
45787
+ var RefIcon$S = /* @__PURE__ */ reactExports.forwardRef(UpOutlined);
45788
45788
  function hasAddon(props) {
45789
45789
  return !!(props.addonBefore || props.addonAfter);
45790
45790
  }
@@ -46143,7 +46143,7 @@ const getAllowClear = (allowClear) => {
46143
46143
  mergedAllowClear = allowClear;
46144
46144
  } else if (allowClear) {
46145
46145
  mergedAllowClear = {
46146
- clearIcon: /* @__PURE__ */ React.createElement(RefIcon$12, null)
46146
+ clearIcon: /* @__PURE__ */ React.createElement(RefIcon$13, null)
46147
46147
  };
46148
46148
  }
46149
46149
  return mergedAllowClear;
@@ -46627,7 +46627,7 @@ const DropdownButton = (props) => {
46627
46627
  placement,
46628
46628
  getPopupContainer,
46629
46629
  href,
46630
- icon: icon2 = /* @__PURE__ */ reactExports.createElement(RefIcon$T, null),
46630
+ icon: icon2 = /* @__PURE__ */ reactExports.createElement(RefIcon$U, null),
46631
46631
  title: title2,
46632
46632
  buttonsRender = (buttons) => buttons,
46633
46633
  mouseEnterDelay,
@@ -47827,7 +47827,7 @@ var QuestionCircleOutlined = function QuestionCircleOutlined2(props, ref) {
47827
47827
  icon: QuestionCircleOutlined$1
47828
47828
  }));
47829
47829
  };
47830
- var RefIcon$Q = /* @__PURE__ */ reactExports.forwardRef(QuestionCircleOutlined);
47830
+ var RefIcon$R = /* @__PURE__ */ reactExports.forwardRef(QuestionCircleOutlined);
47831
47831
  var __rest$u = function(s2, e2) {
47832
47832
  var t2 = {};
47833
47833
  for (var p2 in s2) if (Object.prototype.hasOwnProperty.call(s2, p2) && e2.indexOf(p2) < 0) t2[p2] = s2[p2];
@@ -47874,7 +47874,7 @@ const FormItemLabel = ({
47874
47874
  const tooltipProps = convertToTooltipProps(tooltip);
47875
47875
  if (tooltipProps) {
47876
47876
  const {
47877
- icon: icon2 = /* @__PURE__ */ reactExports.createElement(RefIcon$Q, null)
47877
+ icon: icon2 = /* @__PURE__ */ reactExports.createElement(RefIcon$R, null)
47878
47878
  } = tooltipProps, restTooltipProps = __rest$u(tooltipProps, ["icon"]);
47879
47879
  const tooltipNode = /* @__PURE__ */ reactExports.createElement(Tooltip2, Object.assign({}, restTooltipProps), /* @__PURE__ */ reactExports.cloneElement(icon2, {
47880
47880
  className: `${prefixCls}-item-tooltip`,
@@ -47919,10 +47919,10 @@ const FormItemLabel = ({
47919
47919
  }, labelChildren));
47920
47920
  };
47921
47921
  const iconMap = {
47922
- success: RefIcon$13,
47923
- warning: RefIcon$10,
47924
- error: RefIcon$12,
47925
- validating: RefIcon$_
47922
+ success: RefIcon$14,
47923
+ warning: RefIcon$11,
47924
+ error: RefIcon$13,
47925
+ validating: RefIcon$$
47926
47926
  };
47927
47927
  function StatusProvider({
47928
47928
  children,
@@ -48397,7 +48397,7 @@ var EyeOutlined = function EyeOutlined2(props, ref) {
48397
48397
  icon: EyeOutlined$1
48398
48398
  }));
48399
48399
  };
48400
- var RefIcon$P = /* @__PURE__ */ reactExports.forwardRef(EyeOutlined);
48400
+ var RefIcon$Q = /* @__PURE__ */ reactExports.forwardRef(EyeOutlined);
48401
48401
  function addEventListenerWrap(target, eventType, cb, option) {
48402
48402
  var callback = ReactDOM.unstable_batchedUpdates ? function run(e2) {
48403
48403
  ReactDOM.unstable_batchedUpdates(cb, e2);
@@ -48761,7 +48761,7 @@ var EyeInvisibleOutlined = function EyeInvisibleOutlined2(props, ref) {
48761
48761
  icon: EyeInvisibleOutlined$1
48762
48762
  }));
48763
48763
  };
48764
- var RefIcon$O = /* @__PURE__ */ reactExports.forwardRef(EyeInvisibleOutlined);
48764
+ var RefIcon$P = /* @__PURE__ */ reactExports.forwardRef(EyeInvisibleOutlined);
48765
48765
  var __rest$p = function(s2, e2) {
48766
48766
  var t2 = {};
48767
48767
  for (var p2 in s2) if (Object.prototype.hasOwnProperty.call(s2, p2) && e2.indexOf(p2) < 0) t2[p2] = s2[p2];
@@ -48770,7 +48770,7 @@ var __rest$p = function(s2, e2) {
48770
48770
  }
48771
48771
  return t2;
48772
48772
  };
48773
- const defaultIconRender = (visible) => visible ? /* @__PURE__ */ reactExports.createElement(RefIcon$P, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$O, null);
48773
+ const defaultIconRender = (visible) => visible ? /* @__PURE__ */ reactExports.createElement(RefIcon$Q, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$P, null);
48774
48774
  const actionMap = {
48775
48775
  click: "onClick",
48776
48776
  hover: "onMouseOver"
@@ -48922,7 +48922,7 @@ const Search = /* @__PURE__ */ reactExports.forwardRef((props, ref) => {
48922
48922
  customOnPressEnter === null || customOnPressEnter === void 0 ? void 0 : customOnPressEnter(e2);
48923
48923
  onSearch(e2);
48924
48924
  };
48925
- const searchIcon = typeof enterButton === "boolean" ? /* @__PURE__ */ reactExports.createElement(RefIcon$W, null) : null;
48925
+ const searchIcon = typeof enterButton === "boolean" ? /* @__PURE__ */ reactExports.createElement(RefIcon$X, null) : null;
48926
48926
  const btnClassName = `${prefixCls}-button`;
48927
48927
  let button;
48928
48928
  const enterButtonAsElement = enterButton || {};
@@ -49701,7 +49701,7 @@ var DoubleLeftOutlined = function DoubleLeftOutlined2(props, ref) {
49701
49701
  icon: DoubleLeftOutlined$1
49702
49702
  }));
49703
49703
  };
49704
- var RefIcon$N = /* @__PURE__ */ reactExports.forwardRef(DoubleLeftOutlined);
49704
+ var RefIcon$O = /* @__PURE__ */ reactExports.forwardRef(DoubleLeftOutlined);
49705
49705
  var DoubleRightOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M533.2 492.3L277.9 166.1c-3-3.9-7.7-6.1-12.6-6.1H188c-6.7 0-10.4 7.7-6.3 12.9L447.1 512 181.7 851.1A7.98 7.98 0 00188 864h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.1c9.1-11.7 9.1-27.9 0-39.5zm304 0L581.9 166.1c-3-3.9-7.7-6.1-12.6-6.1H492c-6.7 0-10.4 7.7-6.3 12.9L751.1 512 485.7 851.1A7.98 7.98 0 00492 864h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.1c9.1-11.7 9.1-27.9 0-39.5z" } }] }, "name": "double-right", "theme": "outlined" };
49706
49706
  var DoubleRightOutlined = function DoubleRightOutlined2(props, ref) {
49707
49707
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -49709,7 +49709,7 @@ var DoubleRightOutlined = function DoubleRightOutlined2(props, ref) {
49709
49709
  icon: DoubleRightOutlined$1
49710
49710
  }));
49711
49711
  };
49712
- var RefIcon$M = /* @__PURE__ */ reactExports.forwardRef(DoubleRightOutlined);
49712
+ var RefIcon$N = /* @__PURE__ */ reactExports.forwardRef(DoubleRightOutlined);
49713
49713
  var locale = {
49714
49714
  // Options
49715
49715
  items_per_page: "条/页",
@@ -50922,21 +50922,21 @@ const Pagination = (props) => {
50922
50922
  className: `${prefixCls}-item-link`,
50923
50923
  type: "button",
50924
50924
  tabIndex: -1
50925
- }, direction === "rtl" ? /* @__PURE__ */ reactExports.createElement(RefIcon$Z, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$V, null));
50925
+ }, direction === "rtl" ? /* @__PURE__ */ reactExports.createElement(RefIcon$_, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$W, null));
50926
50926
  const nextIcon = /* @__PURE__ */ reactExports.createElement("button", {
50927
50927
  className: `${prefixCls}-item-link`,
50928
50928
  type: "button",
50929
50929
  tabIndex: -1
50930
- }, direction === "rtl" ? /* @__PURE__ */ reactExports.createElement(RefIcon$V, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$Z, null));
50930
+ }, direction === "rtl" ? /* @__PURE__ */ reactExports.createElement(RefIcon$W, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$_, null));
50931
50931
  const jumpPrevIcon = (
50932
50932
  // biome-ignore lint/a11y/useValidAnchor: it is hard to refactor
50933
50933
  /* @__PURE__ */ reactExports.createElement("a", {
50934
50934
  className: `${prefixCls}-item-link`
50935
50935
  }, /* @__PURE__ */ reactExports.createElement("div", {
50936
50936
  className: `${prefixCls}-item-container`
50937
- }, direction === "rtl" ? /* @__PURE__ */ reactExports.createElement(RefIcon$M, {
50937
+ }, direction === "rtl" ? /* @__PURE__ */ reactExports.createElement(RefIcon$N, {
50938
50938
  className: `${prefixCls}-item-link-icon`
50939
- }) : /* @__PURE__ */ reactExports.createElement(RefIcon$N, {
50939
+ }) : /* @__PURE__ */ reactExports.createElement(RefIcon$O, {
50940
50940
  className: `${prefixCls}-item-link-icon`
50941
50941
  }), ellipsis))
50942
50942
  );
@@ -50946,9 +50946,9 @@ const Pagination = (props) => {
50946
50946
  className: `${prefixCls}-item-link`
50947
50947
  }, /* @__PURE__ */ reactExports.createElement("div", {
50948
50948
  className: `${prefixCls}-item-container`
50949
- }, direction === "rtl" ? /* @__PURE__ */ reactExports.createElement(RefIcon$N, {
50949
+ }, direction === "rtl" ? /* @__PURE__ */ reactExports.createElement(RefIcon$O, {
50950
50950
  className: `${prefixCls}-item-link-icon`
50951
- }) : /* @__PURE__ */ reactExports.createElement(RefIcon$M, {
50951
+ }) : /* @__PURE__ */ reactExports.createElement(RefIcon$N, {
50952
50952
  className: `${prefixCls}-item-link-icon`
50953
50953
  }), ellipsis))
50954
50954
  );
@@ -53320,9 +53320,9 @@ const Progress = /* @__PURE__ */ reactExports.forwardRef((props, ref) => {
53320
53320
  if (infoPosition === "inner" || format2 || progressStatus !== "exception" && progressStatus !== "success") {
53321
53321
  text2 = textFormatter(validProgress(percent), validProgress(successPercent));
53322
53322
  } else if (progressStatus === "exception") {
53323
- text2 = isLineType ? /* @__PURE__ */ reactExports.createElement(RefIcon$12, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$11, null);
53323
+ text2 = isLineType ? /* @__PURE__ */ reactExports.createElement(RefIcon$13, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$12, null);
53324
53324
  } else if (progressStatus === "success") {
53325
- text2 = isLineType ? /* @__PURE__ */ reactExports.createElement(RefIcon$13, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$Y, null);
53325
+ text2 = isLineType ? /* @__PURE__ */ reactExports.createElement(RefIcon$14, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$Z, null);
53326
53326
  }
53327
53327
  return /* @__PURE__ */ reactExports.createElement("span", {
53328
53328
  className: classNames(`${prefixCls}-text`, {
@@ -53383,7 +53383,7 @@ var ReloadOutlined = function ReloadOutlined2(props, ref) {
53383
53383
  icon: ReloadOutlined$1
53384
53384
  }));
53385
53385
  };
53386
- var RefIcon$L = /* @__PURE__ */ reactExports.forwardRef(ReloadOutlined);
53386
+ var RefIcon$M = /* @__PURE__ */ reactExports.forwardRef(ReloadOutlined);
53387
53387
  const InternalPanel = /* @__PURE__ */ reactExports.forwardRef((props, ref) => {
53388
53388
  const {
53389
53389
  prefixCls,
@@ -53866,8 +53866,8 @@ const SplitBar = (props) => {
53866
53866
  const transformStyle = {
53867
53867
  [`--${splitBarPrefixCls}-preview-offset`]: `${constrainedOffset}px`
53868
53868
  };
53869
- const StartIcon = vertical ? RefIcon$R : RefIcon$V;
53870
- const EndIcon = vertical ? RefIcon$X : RefIcon$Z;
53869
+ const StartIcon = vertical ? RefIcon$S : RefIcon$W;
53870
+ const EndIcon = vertical ? RefIcon$Y : RefIcon$_;
53871
53871
  return /* @__PURE__ */ React.createElement("div", {
53872
53872
  className: splitBarPrefixCls,
53873
53873
  role: "separator",
@@ -55030,7 +55030,7 @@ const InternalSwitch = /* @__PURE__ */ reactExports.forwardRef((props, ref) => {
55030
55030
  const prefixCls = getPrefixCls("switch", customizePrefixCls);
55031
55031
  const loadingIcon = /* @__PURE__ */ reactExports.createElement("div", {
55032
55032
  className: `${prefixCls}-handle`
55033
- }, loading && /* @__PURE__ */ reactExports.createElement(RefIcon$_, {
55033
+ }, loading && /* @__PURE__ */ reactExports.createElement(RefIcon$$, {
55034
55034
  className: `${prefixCls}-loading-icon`
55035
55035
  }));
55036
55036
  const [wrapCSSVar, hashId, cssVarCls] = useStyle$5(prefixCls);
@@ -58286,7 +58286,7 @@ const useSelection = (config, rowSelection) => {
58286
58286
  }, /* @__PURE__ */ reactExports.createElement(Dropdown, {
58287
58287
  menu,
58288
58288
  getPopupContainer
58289
- }, /* @__PURE__ */ reactExports.createElement("span", null, /* @__PURE__ */ reactExports.createElement(RefIcon$X, null))));
58289
+ }, /* @__PURE__ */ reactExports.createElement("span", null, /* @__PURE__ */ reactExports.createElement(RefIcon$Y, null))));
58290
58290
  }
58291
58291
  const allDisabledData = flattedData.map((record, index2) => {
58292
58292
  const key = getRowKey(record, index2);
@@ -58558,7 +58558,7 @@ var FilterFilled = function FilterFilled2(props, ref) {
58558
58558
  icon: FilterFilled$1
58559
58559
  }));
58560
58560
  };
58561
- var RefIcon$K = /* @__PURE__ */ reactExports.forwardRef(FilterFilled);
58561
+ var RefIcon$L = /* @__PURE__ */ reactExports.forwardRef(FilterFilled);
58562
58562
  var DropIndicator = function DropIndicator2(props) {
58563
58563
  var dropPosition = props.dropPosition, dropLevelOffset = props.dropLevelOffset, indent2 = props.indent;
58564
58564
  var style2 = {
@@ -59856,7 +59856,7 @@ var FileOutlined = function FileOutlined2(props, ref) {
59856
59856
  icon: FileOutlined$1
59857
59857
  }));
59858
59858
  };
59859
- var RefIcon$J = /* @__PURE__ */ reactExports.forwardRef(FileOutlined);
59859
+ var RefIcon$K = /* @__PURE__ */ reactExports.forwardRef(FileOutlined);
59860
59860
  var FolderOpenOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M928 444H820V330.4c0-17.7-14.3-32-32-32H473L355.7 186.2a8.15 8.15 0 00-5.5-2.2H96c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h698c13 0 24.8-7.9 29.7-20l134-332c1.5-3.8 2.3-7.9 2.3-12 0-17.7-14.3-32-32-32zM136 256h188.5l119.6 114.4H748V444H238c-13 0-24.8 7.9-29.7 20L136 643.2V256zm635.3 512H159l103.3-256h612.4L771.3 768z" } }] }, "name": "folder-open", "theme": "outlined" };
59861
59861
  var FolderOpenOutlined = function FolderOpenOutlined2(props, ref) {
59862
59862
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -59864,7 +59864,7 @@ var FolderOpenOutlined = function FolderOpenOutlined2(props, ref) {
59864
59864
  icon: FolderOpenOutlined$1
59865
59865
  }));
59866
59866
  };
59867
- var RefIcon$I = /* @__PURE__ */ reactExports.forwardRef(FolderOpenOutlined);
59867
+ var RefIcon$J = /* @__PURE__ */ reactExports.forwardRef(FolderOpenOutlined);
59868
59868
  var FolderOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z" } }] }, "name": "folder", "theme": "outlined" };
59869
59869
  var FolderOutlined = function FolderOutlined2(props, ref) {
59870
59870
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -59872,7 +59872,7 @@ var FolderOutlined = function FolderOutlined2(props, ref) {
59872
59872
  icon: FolderOutlined$1
59873
59873
  }));
59874
59874
  };
59875
- var RefIcon$H = /* @__PURE__ */ reactExports.forwardRef(FolderOutlined);
59875
+ var RefIcon$I = /* @__PURE__ */ reactExports.forwardRef(FolderOutlined);
59876
59876
  var HolderOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z" } }] }, "name": "holder", "theme": "outlined" };
59877
59877
  var HolderOutlined = function HolderOutlined2(props, ref) {
59878
59878
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -59880,7 +59880,7 @@ var HolderOutlined = function HolderOutlined2(props, ref) {
59880
59880
  icon: HolderOutlined$1
59881
59881
  }));
59882
59882
  };
59883
- var RefIcon$G = /* @__PURE__ */ reactExports.forwardRef(HolderOutlined);
59883
+ var RefIcon$H = /* @__PURE__ */ reactExports.forwardRef(HolderOutlined);
59884
59884
  const genDirectoryStyle = ({
59885
59885
  treeCls,
59886
59886
  treeNodeCls,
@@ -60334,7 +60334,7 @@ var CaretDownFilled = function CaretDownFilled2(props, ref) {
60334
60334
  icon: CaretDownFilled$1
60335
60335
  }));
60336
60336
  };
60337
- var RefIcon$F = /* @__PURE__ */ reactExports.forwardRef(CaretDownFilled);
60337
+ var RefIcon$G = /* @__PURE__ */ reactExports.forwardRef(CaretDownFilled);
60338
60338
  var MinusSquareOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M328 544h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8z" } }, { "tag": "path", "attrs": { "d": "M880 112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V144c0-17.7-14.3-32-32-32zm-40 728H184V184h656v656z" } }] }, "name": "minus-square", "theme": "outlined" };
60339
60339
  var MinusSquareOutlined = function MinusSquareOutlined2(props, ref) {
60340
60340
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -60342,7 +60342,7 @@ var MinusSquareOutlined = function MinusSquareOutlined2(props, ref) {
60342
60342
  icon: MinusSquareOutlined$1
60343
60343
  }));
60344
60344
  };
60345
- var RefIcon$E = /* @__PURE__ */ reactExports.forwardRef(MinusSquareOutlined);
60345
+ var RefIcon$F = /* @__PURE__ */ reactExports.forwardRef(MinusSquareOutlined);
60346
60346
  var PlusSquareOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M328 544h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8z" } }, { "tag": "path", "attrs": { "d": "M880 112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V144c0-17.7-14.3-32-32-32zm-40 728H184V184h656v656z" } }] }, "name": "plus-square", "theme": "outlined" };
60347
60347
  var PlusSquareOutlined = function PlusSquareOutlined2(props, ref) {
60348
60348
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -60350,7 +60350,7 @@ var PlusSquareOutlined = function PlusSquareOutlined2(props, ref) {
60350
60350
  icon: PlusSquareOutlined$1
60351
60351
  }));
60352
60352
  };
60353
- var RefIcon$D = /* @__PURE__ */ reactExports.forwardRef(PlusSquareOutlined);
60353
+ var RefIcon$E = /* @__PURE__ */ reactExports.forwardRef(PlusSquareOutlined);
60354
60354
  const SwitcherIconCom = (props) => {
60355
60355
  var _a, _b;
60356
60356
  const {
@@ -60369,7 +60369,7 @@ const SwitcherIconCom = (props) => {
60369
60369
  if (/* @__PURE__ */ reactExports.isValidElement(switcherLoadingIcon)) {
60370
60370
  return switcherLoadingIcon;
60371
60371
  }
60372
- return /* @__PURE__ */ reactExports.createElement(RefIcon$_, {
60372
+ return /* @__PURE__ */ reactExports.createElement(RefIcon$$, {
60373
60373
  className: `${prefixCls}-switcher-loading-icon`
60374
60374
  });
60375
60375
  }
@@ -60391,7 +60391,7 @@ const SwitcherIconCom = (props) => {
60391
60391
  }
60392
60392
  return leafIcon;
60393
60393
  }
60394
- return showLeafIcon ? /* @__PURE__ */ reactExports.createElement(RefIcon$J, {
60394
+ return showLeafIcon ? /* @__PURE__ */ reactExports.createElement(RefIcon$K, {
60395
60395
  className: `${prefixCls}-switcher-line-icon`
60396
60396
  }) : /* @__PURE__ */ reactExports.createElement("span", {
60397
60397
  className: `${prefixCls}-switcher-leaf-line`
@@ -60408,13 +60408,13 @@ const SwitcherIconCom = (props) => {
60408
60408
  return switcher;
60409
60409
  }
60410
60410
  if (showLine) {
60411
- return expanded ? /* @__PURE__ */ reactExports.createElement(RefIcon$E, {
60411
+ return expanded ? /* @__PURE__ */ reactExports.createElement(RefIcon$F, {
60412
60412
  className: `${prefixCls}-switcher-line-icon`
60413
- }) : /* @__PURE__ */ reactExports.createElement(RefIcon$D, {
60413
+ }) : /* @__PURE__ */ reactExports.createElement(RefIcon$E, {
60414
60414
  className: `${prefixCls}-switcher-line-icon`
60415
60415
  });
60416
60416
  }
60417
- return /* @__PURE__ */ reactExports.createElement(RefIcon$F, {
60417
+ return /* @__PURE__ */ reactExports.createElement(RefIcon$G, {
60418
60418
  className: switcherCls
60419
60419
  });
60420
60420
  };
@@ -60476,7 +60476,7 @@ const Tree$1 = /* @__PURE__ */ React.forwardRef((props, ref) => {
60476
60476
  break;
60477
60477
  }
60478
60478
  if (mergedDraggable.icon !== false) {
60479
- mergedDraggable.icon = mergedDraggable.icon || /* @__PURE__ */ React.createElement(RefIcon$G, null);
60479
+ mergedDraggable.icon = mergedDraggable.icon || /* @__PURE__ */ React.createElement(RefIcon$H, null);
60480
60480
  }
60481
60481
  return mergedDraggable;
60482
60482
  }, [draggable]);
@@ -60595,9 +60595,9 @@ function getIcon(props) {
60595
60595
  expanded
60596
60596
  } = props;
60597
60597
  if (isLeaf) {
60598
- return /* @__PURE__ */ reactExports.createElement(RefIcon$J, null);
60598
+ return /* @__PURE__ */ reactExports.createElement(RefIcon$K, null);
60599
60599
  }
60600
- return expanded ? /* @__PURE__ */ reactExports.createElement(RefIcon$I, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$H, null);
60600
+ return expanded ? /* @__PURE__ */ reactExports.createElement(RefIcon$J, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$I, null);
60601
60601
  }
60602
60602
  function getTreeData({
60603
60603
  treeData,
@@ -60740,7 +60740,7 @@ const FilterSearch = (props) => {
60740
60740
  return /* @__PURE__ */ reactExports.createElement("div", {
60741
60741
  className: `${tablePrefixCls}-filter-dropdown-search`
60742
60742
  }, /* @__PURE__ */ reactExports.createElement(Input$1, {
60743
- prefix: /* @__PURE__ */ reactExports.createElement(RefIcon$W, null),
60743
+ prefix: /* @__PURE__ */ reactExports.createElement(RefIcon$X, null),
60744
60744
  placeholder: locale2.filterSearchPlaceholder,
60745
60745
  onChange,
60746
60746
  value,
@@ -61151,7 +61151,7 @@ const FilterDropdown = (props) => {
61151
61151
  } else if (column2.filterIcon) {
61152
61152
  filterIcon = column2.filterIcon;
61153
61153
  } else {
61154
- filterIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$K, null);
61154
+ filterIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$L, null);
61155
61155
  }
61156
61156
  return /* @__PURE__ */ reactExports.createElement("span", {
61157
61157
  role: "button",
@@ -61460,7 +61460,7 @@ var CaretDownOutlined = function CaretDownOutlined2(props, ref) {
61460
61460
  icon: CaretDownOutlined$1
61461
61461
  }));
61462
61462
  };
61463
- var RefIcon$C = /* @__PURE__ */ reactExports.forwardRef(CaretDownOutlined);
61463
+ var RefIcon$D = /* @__PURE__ */ reactExports.forwardRef(CaretDownOutlined);
61464
61464
  var CaretUpOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "0 0 1024 1024", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M858.9 689L530.5 308.2c-9.4-10.9-27.5-10.9-37 0L165.1 689c-12.2 14.2-1.2 35 18.5 35h656.8c19.7 0 30.7-20.8 18.5-35z" } }] }, "name": "caret-up", "theme": "outlined" };
61465
61465
  var CaretUpOutlined = function CaretUpOutlined2(props, ref) {
61466
61466
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -61468,7 +61468,7 @@ var CaretUpOutlined = function CaretUpOutlined2(props, ref) {
61468
61468
  icon: CaretUpOutlined$1
61469
61469
  }));
61470
61470
  };
61471
- var RefIcon$B = /* @__PURE__ */ reactExports.forwardRef(CaretUpOutlined);
61471
+ var RefIcon$C = /* @__PURE__ */ reactExports.forwardRef(CaretUpOutlined);
61472
61472
  const ASCEND = "ascend";
61473
61473
  const DESCEND = "descend";
61474
61474
  const getMultiplePriority = (column2) => {
@@ -61543,12 +61543,12 @@ const injectSorter = (prefixCls, columns2, sorterStates, triggerSorter, defaultS
61543
61543
  sortOrder
61544
61544
  });
61545
61545
  } else {
61546
- const upNode = sortDirections.includes(ASCEND) && /* @__PURE__ */ reactExports.createElement(RefIcon$B, {
61546
+ const upNode = sortDirections.includes(ASCEND) && /* @__PURE__ */ reactExports.createElement(RefIcon$C, {
61547
61547
  className: classNames(`${prefixCls}-column-sorter-up`, {
61548
61548
  active: sortOrder === ASCEND
61549
61549
  })
61550
61550
  });
61551
- const downNode = sortDirections.includes(DESCEND) && /* @__PURE__ */ reactExports.createElement(RefIcon$C, {
61551
+ const downNode = sortDirections.includes(DESCEND) && /* @__PURE__ */ reactExports.createElement(RefIcon$D, {
61552
61552
  className: classNames(`${prefixCls}-column-sorter-down`, {
61553
61553
  active: sortOrder === DESCEND
61554
61554
  })
@@ -64024,7 +64024,7 @@ var DeleteOutlined = function DeleteOutlined2(props, ref) {
64024
64024
  icon: DeleteOutlined$1
64025
64025
  }));
64026
64026
  };
64027
- var RefIcon$A = /* @__PURE__ */ reactExports.forwardRef(DeleteOutlined);
64027
+ var RefIcon$B = /* @__PURE__ */ reactExports.forwardRef(DeleteOutlined);
64028
64028
  var EditOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z" } }] }, "name": "edit", "theme": "outlined" };
64029
64029
  var EditOutlined = function EditOutlined2(props, ref) {
64030
64030
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -64032,7 +64032,7 @@ var EditOutlined = function EditOutlined2(props, ref) {
64032
64032
  icon: EditOutlined$1
64033
64033
  }));
64034
64034
  };
64035
- var RefIcon$z = /* @__PURE__ */ reactExports.forwardRef(EditOutlined);
64035
+ var RefIcon$A = /* @__PURE__ */ reactExports.forwardRef(EditOutlined);
64036
64036
  var EnterOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M864 170h-60c-4.4 0-8 3.6-8 8v518H310v-73c0-6.7-7.8-10.5-13-6.3l-141.9 112a8 8 0 000 12.6l141.9 112c5.3 4.2 13 .4 13-6.3v-75h498c35.3 0 64-28.7 64-64V178c0-4.4-3.6-8-8-8z" } }] }, "name": "enter", "theme": "outlined" };
64037
64037
  var EnterOutlined = function EnterOutlined2(props, ref) {
64038
64038
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -64040,7 +64040,7 @@ var EnterOutlined = function EnterOutlined2(props, ref) {
64040
64040
  icon: EnterOutlined$1
64041
64041
  }));
64042
64042
  };
64043
- var RefIcon$y = /* @__PURE__ */ reactExports.forwardRef(EnterOutlined);
64043
+ var RefIcon$z = /* @__PURE__ */ reactExports.forwardRef(EnterOutlined);
64044
64044
  const getTitleStyle = (fontSize, lineHeight, color2, token2) => {
64045
64045
  const {
64046
64046
  titleMarginBottom,
@@ -64361,7 +64361,7 @@ const Editable = (props) => {
64361
64361
  onCancel,
64362
64362
  onEnd,
64363
64363
  component,
64364
- enterIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$y, null)
64364
+ enterIcon = /* @__PURE__ */ reactExports.createElement(RefIcon$z, null)
64365
64365
  } = props;
64366
64366
  const ref = reactExports.useRef(null);
64367
64367
  const inComposition = reactExports.useRef(false);
@@ -64740,7 +64740,7 @@ var CopyOutlined = function CopyOutlined2(props, ref) {
64740
64740
  icon: CopyOutlined$1
64741
64741
  }));
64742
64742
  };
64743
- var RefIcon$x = /* @__PURE__ */ reactExports.forwardRef(CopyOutlined);
64743
+ var RefIcon$y = /* @__PURE__ */ reactExports.forwardRef(CopyOutlined);
64744
64744
  function toList(val) {
64745
64745
  if (val === false) {
64746
64746
  return [false, false];
@@ -64797,7 +64797,7 @@ const CopyBtn = ({
64797
64797
  onClick: onCopy,
64798
64798
  "aria-label": ariaLabel,
64799
64799
  tabIndex
64800
- }, copied ? getNode(iconNodes[1], /* @__PURE__ */ reactExports.createElement(RefIcon$Y, null), true) : getNode(iconNodes[0], btnLoading ? /* @__PURE__ */ reactExports.createElement(RefIcon$_, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$x, null), true)));
64800
+ }, copied ? getNode(iconNodes[1], /* @__PURE__ */ reactExports.createElement(RefIcon$Z, null), true) : getNode(iconNodes[0], btnLoading ? /* @__PURE__ */ reactExports.createElement(RefIcon$$, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$y, null), true)));
64801
64801
  };
64802
64802
  const MeasureText = /* @__PURE__ */ reactExports.forwardRef(({
64803
64803
  style: style2,
@@ -65233,7 +65233,7 @@ const Base = /* @__PURE__ */ reactExports.forwardRef((props, ref) => {
65233
65233
  onClick: onEditClick,
65234
65234
  "aria-label": ariaLabel,
65235
65235
  tabIndex
65236
- }, icon2 || /* @__PURE__ */ reactExports.createElement(RefIcon$z, {
65236
+ }, icon2 || /* @__PURE__ */ reactExports.createElement(RefIcon$A, {
65237
65237
  role: "button"
65238
65238
  }))) : null;
65239
65239
  };
@@ -66630,7 +66630,7 @@ var FileTwoTone = function FileTwoTone2(props, ref) {
66630
66630
  icon: FileTwoTone$1
66631
66631
  }));
66632
66632
  };
66633
- var RefIcon$w = /* @__PURE__ */ reactExports.forwardRef(FileTwoTone);
66633
+ var RefIcon$x = /* @__PURE__ */ reactExports.forwardRef(FileTwoTone);
66634
66634
  var PaperClipOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M779.3 196.6c-94.2-94.2-247.6-94.2-341.7 0l-261 260.8c-1.7 1.7-2.6 4-2.6 6.4s.9 4.7 2.6 6.4l36.9 36.9a9 9 0 0012.7 0l261-260.8c32.4-32.4 75.5-50.2 121.3-50.2s88.9 17.8 121.2 50.2c32.4 32.4 50.2 75.5 50.2 121.2 0 45.8-17.8 88.8-50.2 121.2l-266 265.9-43.1 43.1c-40.3 40.3-105.8 40.3-146.1 0-19.5-19.5-30.2-45.4-30.2-73s10.7-53.5 30.2-73l263.9-263.8c6.7-6.6 15.5-10.3 24.9-10.3h.1c9.4 0 18.1 3.7 24.7 10.3 6.7 6.7 10.3 15.5 10.3 24.9 0 9.3-3.7 18.1-10.3 24.7L372.4 653c-1.7 1.7-2.6 4-2.6 6.4s.9 4.7 2.6 6.4l36.9 36.9a9 9 0 0012.7 0l215.6-215.6c19.9-19.9 30.8-46.3 30.8-74.4s-11-54.6-30.8-74.4c-41.1-41.1-107.9-41-149 0L463 364 224.8 602.1A172.22 172.22 0 00174 724.8c0 46.3 18.1 89.8 50.8 122.5 33.9 33.8 78.3 50.7 122.7 50.7 44.4 0 88.8-16.9 122.6-50.7l309.2-309C824.8 492.7 850 432 850 367.5c.1-64.6-25.1-125.3-70.7-170.9z" } }] }, "name": "paper-clip", "theme": "outlined" };
66635
66635
  var PaperClipOutlined = function PaperClipOutlined2(props, ref) {
66636
66636
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -66638,7 +66638,7 @@ var PaperClipOutlined = function PaperClipOutlined2(props, ref) {
66638
66638
  icon: PaperClipOutlined$1
66639
66639
  }));
66640
66640
  };
66641
- var RefIcon$v = /* @__PURE__ */ reactExports.forwardRef(PaperClipOutlined);
66641
+ var RefIcon$w = /* @__PURE__ */ reactExports.forwardRef(PaperClipOutlined);
66642
66642
  var PictureTwoTone$1 = { "icon": function render2(primaryColor, secondaryColor) {
66643
66643
  return { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M928 160H96c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V192c0-17.7-14.3-32-32-32zm-40 632H136v-39.9l138.5-164.3 150.1 178L658.1 489 888 761.6V792zm0-129.8L664.2 396.8c-3.2-3.8-9-3.8-12.2 0L424.6 666.4l-144-170.7c-3.2-3.8-9-3.8-12.2 0L136 652.7V232h752v430.2z", "fill": primaryColor } }, { "tag": "path", "attrs": { "d": "M424.6 765.8l-150.1-178L136 752.1V792h752v-30.4L658.1 489z", "fill": secondaryColor } }, { "tag": "path", "attrs": { "d": "M136 652.7l132.4-157c3.2-3.8 9-3.8 12.2 0l144 170.7L652 396.8c3.2-3.8 9-3.8 12.2 0L888 662.2V232H136v420.7zM304 280a88 88 0 110 176 88 88 0 010-176z", "fill": secondaryColor } }, { "tag": "path", "attrs": { "d": "M276 368a28 28 0 1056 0 28 28 0 10-56 0z", "fill": secondaryColor } }, { "tag": "path", "attrs": { "d": "M304 456a88 88 0 100-176 88 88 0 000 176zm0-116c15.5 0 28 12.5 28 28s-12.5 28-28 28-28-12.5-28-28 12.5-28 28-28z", "fill": primaryColor } }] };
66644
66644
  }, "name": "picture", "theme": "twotone" };
@@ -66648,7 +66648,7 @@ var PictureTwoTone = function PictureTwoTone2(props, ref) {
66648
66648
  icon: PictureTwoTone$1
66649
66649
  }));
66650
66650
  };
66651
- var RefIcon$u = /* @__PURE__ */ reactExports.forwardRef(PictureTwoTone);
66651
+ var RefIcon$v = /* @__PURE__ */ reactExports.forwardRef(PictureTwoTone);
66652
66652
  function file2Obj(file) {
66653
66653
  return Object.assign(Object.assign({}, file), {
66654
66654
  lastModified: file.lastModified,
@@ -66774,7 +66774,7 @@ var DownloadOutlined = function DownloadOutlined2(props, ref) {
66774
66774
  icon: DownloadOutlined$1
66775
66775
  }));
66776
66776
  };
66777
- var RefIcon$t = /* @__PURE__ */ reactExports.forwardRef(DownloadOutlined);
66777
+ var RefIcon$u = /* @__PURE__ */ reactExports.forwardRef(DownloadOutlined);
66778
66778
  const ListItem = /* @__PURE__ */ reactExports.forwardRef(({
66779
66779
  prefixCls,
66780
66780
  className,
@@ -66852,7 +66852,7 @@ const ListItem = /* @__PURE__ */ reactExports.forwardRef(({
66852
66852
  const listItemClassName = classNames(`${prefixCls}-list-item`, `${prefixCls}-list-item-${mergedStatus}`);
66853
66853
  const linkProps = typeof file.linkProps === "string" ? JSON.parse(file.linkProps) : file.linkProps;
66854
66854
  const removeIcon = (typeof showRemoveIcon === "function" ? showRemoveIcon(file) : showRemoveIcon) ? actionIconRender(
66855
- (typeof customRemoveIcon === "function" ? customRemoveIcon(file) : customRemoveIcon) || /* @__PURE__ */ reactExports.createElement(RefIcon$A, null),
66855
+ (typeof customRemoveIcon === "function" ? customRemoveIcon(file) : customRemoveIcon) || /* @__PURE__ */ reactExports.createElement(RefIcon$B, null),
66856
66856
  () => onClose(file),
66857
66857
  prefixCls,
66858
66858
  locale2.removeFile,
@@ -66860,7 +66860,7 @@ const ListItem = /* @__PURE__ */ reactExports.forwardRef(({
66860
66860
  // https://github.com/ant-design/ant-design/issues/46171
66861
66861
  true
66862
66862
  ) : null;
66863
- const downloadIcon = (typeof showDownloadIcon === "function" ? showDownloadIcon(file) : showDownloadIcon) && mergedStatus === "done" ? actionIconRender((typeof customDownloadIcon === "function" ? customDownloadIcon(file) : customDownloadIcon) || /* @__PURE__ */ reactExports.createElement(RefIcon$t, null), () => onDownload(file), prefixCls, locale2.downloadFile) : null;
66863
+ const downloadIcon = (typeof showDownloadIcon === "function" ? showDownloadIcon(file) : showDownloadIcon) && mergedStatus === "done" ? actionIconRender((typeof customDownloadIcon === "function" ? customDownloadIcon(file) : customDownloadIcon) || /* @__PURE__ */ reactExports.createElement(RefIcon$u, null), () => onDownload(file), prefixCls, locale2.downloadFile) : null;
66864
66864
  const downloadOrDelete = listType !== "picture-card" && listType !== "picture-circle" && /* @__PURE__ */ reactExports.createElement("span", {
66865
66865
  key: "download-delete",
66866
66866
  className: classNames(`${prefixCls}-list-item-actions`, {
@@ -66893,7 +66893,7 @@ const ListItem = /* @__PURE__ */ reactExports.forwardRef(({
66893
66893
  rel: "noopener noreferrer",
66894
66894
  onClick: (e2) => onPreview(file, e2),
66895
66895
  title: locale2.previewFile
66896
- }, typeof customPreviewIcon === "function" ? customPreviewIcon(file) : customPreviewIcon || /* @__PURE__ */ reactExports.createElement(RefIcon$P, null)) : null;
66896
+ }, typeof customPreviewIcon === "function" ? customPreviewIcon(file) : customPreviewIcon || /* @__PURE__ */ reactExports.createElement(RefIcon$Q, null)) : null;
66897
66897
  const pictureCardActions = (listType === "picture-card" || listType === "picture-circle") && mergedStatus !== "uploading" && /* @__PURE__ */ reactExports.createElement("span", {
66898
66898
  className: `${prefixCls}-list-item-actions`
66899
66899
  }, previewIcon, mergedStatus === "done" && downloadIcon, removeIcon);
@@ -67007,11 +67007,11 @@ const InternalUploadList = (props, ref) => {
67007
67007
  }
67008
67008
  const isLoading = file.status === "uploading";
67009
67009
  if (listType.startsWith("picture")) {
67010
- const loadingIcon = listType === "picture" ? /* @__PURE__ */ reactExports.createElement(RefIcon$_, null) : locale2.uploading;
67011
- const fileIcon = (isImgUrl === null || isImgUrl === void 0 ? void 0 : isImgUrl(file)) ? /* @__PURE__ */ reactExports.createElement(RefIcon$u, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$w, null);
67010
+ const loadingIcon = listType === "picture" ? /* @__PURE__ */ reactExports.createElement(RefIcon$$, null) : locale2.uploading;
67011
+ const fileIcon = (isImgUrl === null || isImgUrl === void 0 ? void 0 : isImgUrl(file)) ? /* @__PURE__ */ reactExports.createElement(RefIcon$v, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$x, null);
67012
67012
  return isLoading ? loadingIcon : fileIcon;
67013
67013
  }
67014
- return isLoading ? /* @__PURE__ */ reactExports.createElement(RefIcon$_, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$v, null);
67014
+ return isLoading ? /* @__PURE__ */ reactExports.createElement(RefIcon$$, null) : /* @__PURE__ */ reactExports.createElement(RefIcon$w, null);
67015
67015
  };
67016
67016
  const actionIconRender = (customIcon, callback, prefixCls2, title2, acceptUploadDisabled) => {
67017
67017
  const btnProps = {
@@ -67508,7 +67508,7 @@ var ApiOutlined = function ApiOutlined2(props, ref) {
67508
67508
  icon: ApiOutlined$1
67509
67509
  }));
67510
67510
  };
67511
- var RefIcon$s = /* @__PURE__ */ reactExports.forwardRef(ApiOutlined);
67511
+ var RefIcon$t = /* @__PURE__ */ reactExports.forwardRef(ApiOutlined);
67512
67512
  var ArrowLeftOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M872 474H286.9l350.2-304c5.6-4.9 2.2-14-5.2-14h-88.5c-3.9 0-7.6 1.4-10.5 3.9L155 487.8a31.96 31.96 0 000 48.3L535.1 866c1.5 1.3 3.3 2 5.2 2h91.5c7.4 0 10.8-9.2 5.2-14L286.9 550H872c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8z" } }] }, "name": "arrow-left", "theme": "outlined" };
67513
67513
  var ArrowLeftOutlined = function ArrowLeftOutlined2(props, ref) {
67514
67514
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -67516,7 +67516,7 @@ var ArrowLeftOutlined = function ArrowLeftOutlined2(props, ref) {
67516
67516
  icon: ArrowLeftOutlined$1
67517
67517
  }));
67518
67518
  };
67519
- var RefIcon$r = /* @__PURE__ */ reactExports.forwardRef(ArrowLeftOutlined);
67519
+ var RefIcon$s = /* @__PURE__ */ reactExports.forwardRef(ArrowLeftOutlined);
67520
67520
  var BorderOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M880 112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V144c0-17.7-14.3-32-32-32zm-40 728H184V184h656v656z" } }] }, "name": "border", "theme": "outlined" };
67521
67521
  var BorderOutlined = function BorderOutlined2(props, ref) {
67522
67522
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -67524,7 +67524,7 @@ var BorderOutlined = function BorderOutlined2(props, ref) {
67524
67524
  icon: BorderOutlined$1
67525
67525
  }));
67526
67526
  };
67527
- var RefIcon$q = /* @__PURE__ */ reactExports.forwardRef(BorderOutlined);
67527
+ var RefIcon$r = /* @__PURE__ */ reactExports.forwardRef(BorderOutlined);
67528
67528
  var CheckCircleOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M699 353h-46.9c-10.2 0-19.9 4.9-25.9 13.3L469 584.3l-71.2-98.8c-6-8.3-15.6-13.3-25.9-13.3H325c-6.5 0-10.3 7.4-6.5 12.7l124.6 172.8a31.8 31.8 0 0051.7 0l210.6-292c3.9-5.3.1-12.7-6.4-12.7z" } }, { "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }] }, "name": "check-circle", "theme": "outlined" };
67529
67529
  var CheckCircleOutlined = function CheckCircleOutlined2(props, ref) {
67530
67530
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -67532,7 +67532,7 @@ var CheckCircleOutlined = function CheckCircleOutlined2(props, ref) {
67532
67532
  icon: CheckCircleOutlined$1
67533
67533
  }));
67534
67534
  };
67535
- var RefIcon$p = /* @__PURE__ */ reactExports.forwardRef(CheckCircleOutlined);
67535
+ var RefIcon$q = /* @__PURE__ */ reactExports.forwardRef(CheckCircleOutlined);
67536
67536
  var ClockCircleFilled$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm176.5 585.7l-28.6 39a7.99 7.99 0 01-11.2 1.7L483.3 569.8a7.92 7.92 0 01-3.3-6.5V288c0-4.4 3.6-8 8-8h48.1c4.4 0 8 3.6 8 8v247.5l142.6 103.1c3.6 2.5 4.4 7.5 1.8 11.1z" } }] }, "name": "clock-circle", "theme": "filled" };
67537
67537
  var ClockCircleFilled = function ClockCircleFilled2(props, ref) {
67538
67538
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -67540,7 +67540,7 @@ var ClockCircleFilled = function ClockCircleFilled2(props, ref) {
67540
67540
  icon: ClockCircleFilled$1
67541
67541
  }));
67542
67542
  };
67543
- var RefIcon$o = /* @__PURE__ */ reactExports.forwardRef(ClockCircleFilled);
67543
+ var RefIcon$p = /* @__PURE__ */ reactExports.forwardRef(ClockCircleFilled);
67544
67544
  var CloseCircleOutlined$1 = { "icon": { "tag": "svg", "attrs": { "fill-rule": "evenodd", "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64c247.4 0 448 200.6 448 448S759.4 960 512 960 64 759.4 64 512 264.6 64 512 64zm0 76c-205.4 0-372 166.6-372 372s166.6 372 372 372 372-166.6 372-372-166.6-372-372-372zm128.01 198.83c.03 0 .05.01.09.06l45.02 45.01a.2.2 0 01.05.09.12.12 0 010 .07c0 .02-.01.04-.05.08L557.25 512l127.87 127.86a.27.27 0 01.05.06v.02a.12.12 0 010 .07c0 .03-.01.05-.05.09l-45.02 45.02a.2.2 0 01-.09.05.12.12 0 01-.07 0c-.02 0-.04-.01-.08-.05L512 557.25 384.14 685.12c-.04.04-.06.05-.08.05a.12.12 0 01-.07 0c-.03 0-.05-.01-.09-.05l-45.02-45.02a.2.2 0 01-.05-.09.12.12 0 010-.07c0-.02.01-.04.06-.08L466.75 512 338.88 384.14a.27.27 0 01-.05-.06l-.01-.02a.12.12 0 010-.07c0-.03.01-.05.05-.09l45.02-45.02a.2.2 0 01.09-.05.12.12 0 01.07 0c.02 0 .04.01.08.06L512 466.75l127.86-127.86c.04-.05.06-.06.08-.06a.12.12 0 01.07 0z" } }] }, "name": "close-circle", "theme": "outlined" };
67545
67545
  var CloseCircleOutlined = function CloseCircleOutlined2(props, ref) {
67546
67546
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -67548,7 +67548,7 @@ var CloseCircleOutlined = function CloseCircleOutlined2(props, ref) {
67548
67548
  icon: CloseCircleOutlined$1
67549
67549
  }));
67550
67550
  };
67551
- var RefIcon$n = /* @__PURE__ */ reactExports.forwardRef(CloseCircleOutlined);
67551
+ var RefIcon$o = /* @__PURE__ */ reactExports.forwardRef(CloseCircleOutlined);
67552
67552
  var CloudOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M811.4 418.7C765.6 297.9 648.9 212 512.2 212S258.8 297.8 213 418.6C127.3 441.1 64 519.1 64 612c0 110.5 89.5 200 199.9 200h496.2C870.5 812 960 722.5 960 612c0-92.7-63.1-170.7-148.6-193.3zm36.3 281a123.07 123.07 0 01-87.6 36.3H263.9c-33.1 0-64.2-12.9-87.6-36.3A123.3 123.3 0 01140 612c0-28 9.1-54.3 26.2-76.3a125.7 125.7 0 0166.1-43.7l37.9-9.9 13.9-36.6c8.6-22.8 20.6-44.1 35.7-63.4a245.6 245.6 0 0152.4-49.9c41.1-28.9 89.5-44.2 140-44.2s98.9 15.3 140 44.2c19.9 14 37.5 30.8 52.4 49.9 15.1 19.3 27.1 40.7 35.7 63.4l13.8 36.5 37.8 10c54.3 14.5 92.1 63.8 92.1 120 0 33.1-12.9 64.3-36.3 87.7z" } }] }, "name": "cloud", "theme": "outlined" };
67553
67553
  var CloudOutlined = function CloudOutlined2(props, ref) {
67554
67554
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -67556,7 +67556,7 @@ var CloudOutlined = function CloudOutlined2(props, ref) {
67556
67556
  icon: CloudOutlined$1
67557
67557
  }));
67558
67558
  };
67559
- var RefIcon$m = /* @__PURE__ */ reactExports.forwardRef(CloudOutlined);
67559
+ var RefIcon$n = /* @__PURE__ */ reactExports.forwardRef(CloudOutlined);
67560
67560
  var CrownOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M899.6 276.5L705 396.4 518.4 147.5a8.06 8.06 0 00-12.9 0L319 396.4 124.3 276.5c-5.7-3.5-13.1 1.2-12.2 7.9L188.5 865c1.1 7.9 7.9 14 16 14h615.1c8 0 14.9-6 15.9-14l76.4-580.6c.8-6.7-6.5-11.4-12.3-7.9zm-126 534.1H250.3l-53.8-409.4 139.8 86.1L512 252.9l175.7 234.4 139.8-86.1-53.9 409.4zM512 509c-62.1 0-112.6 50.5-112.6 112.6S449.9 734.2 512 734.2s112.6-50.5 112.6-112.6S574.1 509 512 509zm0 160.9c-26.6 0-48.2-21.6-48.2-48.3 0-26.6 21.6-48.3 48.2-48.3s48.2 21.6 48.2 48.3c0 26.6-21.6 48.3-48.2 48.3z" } }] }, "name": "crown", "theme": "outlined" };
67561
67561
  var CrownOutlined = function CrownOutlined2(props, ref) {
67562
67562
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -67564,7 +67564,7 @@ var CrownOutlined = function CrownOutlined2(props, ref) {
67564
67564
  icon: CrownOutlined$1
67565
67565
  }));
67566
67566
  };
67567
- var RefIcon$l = /* @__PURE__ */ reactExports.forwardRef(CrownOutlined);
67567
+ var RefIcon$m = /* @__PURE__ */ reactExports.forwardRef(CrownOutlined);
67568
67568
  var FileExcelTwoTone$1 = { "icon": function render3(primaryColor, secondaryColor) {
67569
67569
  return { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M534 352V136H232v752h560V394H576a42 42 0 01-42-42zm51.6 120h35.7a12.04 12.04 0 0110.1 18.5L546.1 623l84 130.4c3.6 5.6 2 13-3.6 16.6-2 1.2-4.2 1.9-6.5 1.9h-37.5c-4.1 0-8-2.1-10.2-5.7L510 664.8l-62.7 101.5c-2.2 3.5-6 5.7-10.2 5.7h-34.5a12.04 12.04 0 01-10.2-18.4l83.4-132.8-82.3-130.4c-3.6-5.7-1.9-13.1 3.7-16.6 1.9-1.3 4.1-1.9 6.4-1.9H442c4.2 0 8.1 2.2 10.3 5.8l61.8 102.4 61.2-102.3c2.2-3.6 6.1-5.8 10.3-5.8z", "fill": secondaryColor } }, { "tag": "path", "attrs": { "d": "M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM602 137.8L790.2 326H602V137.8zM792 888H232V136h302v216a42 42 0 0042 42h216v494z", "fill": primaryColor } }, { "tag": "path", "attrs": { "d": "M514.1 580.1l-61.8-102.4c-2.2-3.6-6.1-5.8-10.3-5.8h-38.4c-2.3 0-4.5.6-6.4 1.9-5.6 3.5-7.3 10.9-3.7 16.6l82.3 130.4-83.4 132.8a12.04 12.04 0 0010.2 18.4h34.5c4.2 0 8-2.2 10.2-5.7L510 664.8l62.3 101.4c2.2 3.6 6.1 5.7 10.2 5.7H620c2.3 0 4.5-.7 6.5-1.9 5.6-3.6 7.2-11 3.6-16.6l-84-130.4 85.3-132.5a12.04 12.04 0 00-10.1-18.5h-35.7c-4.2 0-8.1 2.2-10.3 5.8l-61.2 102.3z", "fill": primaryColor } }] };
67570
67570
  }, "name": "file-excel", "theme": "twotone" };
@@ -67574,7 +67574,7 @@ var FileExcelTwoTone = function FileExcelTwoTone2(props, ref) {
67574
67574
  icon: FileExcelTwoTone$1
67575
67575
  }));
67576
67576
  };
67577
- var RefIcon$k = /* @__PURE__ */ reactExports.forwardRef(FileExcelTwoTone);
67577
+ var RefIcon$l = /* @__PURE__ */ reactExports.forwardRef(FileExcelTwoTone);
67578
67578
  var FileImageTwoTone$1 = { "icon": function render4(primaryColor, secondaryColor) {
67579
67579
  return { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M534 352V136H232v752h560V394H576a42 42 0 01-42-42zm-134 50c22.1 0 40 17.9 40 40s-17.9 40-40 40-40-17.9-40-40 17.9-40 40-40zm296 294H328.1c-6.7 0-10.4-7.7-6.3-12.9l99.8-127.2a8 8 0 0112.6 0l41.1 52.4 77.8-99.2a8.1 8.1 0 0112.7 0l136.5 174c4.1 5.2.4 12.9-6.3 12.9z", "fill": secondaryColor } }, { "tag": "path", "attrs": { "d": "M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM602 137.8L790.2 326H602V137.8zM792 888H232V136h302v216a42 42 0 0042 42h216v494z", "fill": primaryColor } }, { "tag": "path", "attrs": { "d": "M553.1 509.1l-77.8 99.2-41.1-52.4a8 8 0 00-12.6 0l-99.8 127.2a7.98 7.98 0 006.3 12.9H696c6.7 0 10.4-7.7 6.3-12.9l-136.5-174a8.1 8.1 0 00-12.7 0zM360 442a40 40 0 1080 0 40 40 0 10-80 0z", "fill": primaryColor } }] };
67580
67580
  }, "name": "file-image", "theme": "twotone" };
@@ -67584,7 +67584,7 @@ var FileImageTwoTone = function FileImageTwoTone2(props, ref) {
67584
67584
  icon: FileImageTwoTone$1
67585
67585
  }));
67586
67586
  };
67587
- var RefIcon$j = /* @__PURE__ */ reactExports.forwardRef(FileImageTwoTone);
67587
+ var RefIcon$k = /* @__PURE__ */ reactExports.forwardRef(FileImageTwoTone);
67588
67588
  var FileMarkdownOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494zM429 481.2c-1.9-4.4-6.2-7.2-11-7.2h-35c-6.6 0-12 5.4-12 12v272c0 6.6 5.4 12 12 12h27.1c6.6 0 12-5.4 12-12V582.1l66.8 150.2a12 12 0 0011 7.1H524c4.7 0 9-2.8 11-7.1l66.8-150.6V758c0 6.6 5.4 12 12 12H641c6.6 0 12-5.4 12-12V486c0-6.6-5.4-12-12-12h-34.7c-4.8 0-9.1 2.8-11 7.2l-83.1 191-83.2-191z" } }] }, "name": "file-markdown", "theme": "outlined" };
67589
67589
  var FileMarkdownOutlined = function FileMarkdownOutlined2(props, ref) {
67590
67590
  return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
@@ -67592,7 +67592,15 @@ var FileMarkdownOutlined = function FileMarkdownOutlined2(props, ref) {
67592
67592
  icon: FileMarkdownOutlined$1
67593
67593
  }));
67594
67594
  };
67595
- var RefIcon$i = /* @__PURE__ */ reactExports.forwardRef(FileMarkdownOutlined);
67595
+ var RefIcon$j = /* @__PURE__ */ reactExports.forwardRef(FileMarkdownOutlined);
67596
+ var FilePdfOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M531.3 574.4l.3-1.4c5.8-23.9 13.1-53.7 7.4-80.7-3.8-21.3-19.5-29.6-32.9-30.2-15.8-.7-29.9 8.3-33.4 21.4-6.6 24-.7 56.8 10.1 98.6-13.6 32.4-35.3 79.5-51.2 107.5-29.6 15.3-69.3 38.9-75.2 68.7-1.2 5.5.2 12.5 3.5 18.8 3.7 7 9.6 12.4 16.5 15 3 1.1 6.6 2 10.8 2 17.6 0 46.1-14.2 84.1-79.4 5.8-1.9 11.8-3.9 17.6-5.9 27.2-9.2 55.4-18.8 80.9-23.1 28.2 15.1 60.3 24.8 82.1 24.8 21.6 0 30.1-12.8 33.3-20.5 5.6-13.5 2.9-30.5-6.2-39.6-13.2-13-45.3-16.4-95.3-10.2-24.6-15-40.7-35.4-52.4-65.8zM421.6 726.3c-13.9 20.2-24.4 30.3-30.1 34.7 6.7-12.3 19.8-25.3 30.1-34.7zm87.6-235.5c5.2 8.9 4.5 35.8.5 49.4-4.9-19.9-5.6-48.1-2.7-51.4.8.1 1.5.7 2.2 2zm-1.6 120.5c10.7 18.5 24.2 34.4 39.1 46.2-21.6 4.9-41.3 13-58.9 20.2-4.2 1.7-8.3 3.4-12.3 5 13.3-24.1 24.4-51.4 32.1-71.4zm155.6 65.5c.1.2.2.5-.4.9h-.2l-.2.3c-.8.5-9 5.3-44.3-8.6 40.6-1.9 45 7.3 45.1 7.4zm191.4-388.2L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494z" } }] }, "name": "file-pdf", "theme": "outlined" };
67597
+ var FilePdfOutlined = function FilePdfOutlined2(props, ref) {
67598
+ return /* @__PURE__ */ reactExports.createElement(Icon$1, _extends({}, props, {
67599
+ ref,
67600
+ icon: FilePdfOutlined$1
67601
+ }));
67602
+ };
67603
+ var RefIcon$i = /* @__PURE__ */ reactExports.forwardRef(FilePdfOutlined);
67596
67604
  var FilePdfTwoTone$1 = { "icon": function render5(primaryColor, secondaryColor) {
67597
67605
  return { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M509.2 490.8c-.7-1.3-1.4-1.9-2.2-2-2.9 3.3-2.2 31.5 2.7 51.4 4-13.6 4.7-40.5-.5-49.4zm-1.6 120.5c-7.7 20-18.8 47.3-32.1 71.4 4-1.6 8.1-3.3 12.3-5 17.6-7.2 37.3-15.3 58.9-20.2-14.9-11.8-28.4-27.7-39.1-46.2z", "fill": secondaryColor } }, { "tag": "path", "attrs": { "d": "M534 352V136H232v752h560V394H576a42 42 0 01-42-42zm55 287.6c16.1-1.9 30.6-2.8 44.3-2.3 12.8.4 23.6 2 32 5.1.2.1.3.1.5.2.4.2.8.3 1.2.5.5.2 1.1.4 1.6.7.1.1.3.1.4.2 4.1 1.8 7.5 4 10.1 6.6 9.1 9.1 11.8 26.1 6.2 39.6-3.2 7.7-11.7 20.5-33.3 20.5-21.8 0-53.9-9.7-82.1-24.8-25.5 4.3-53.7 13.9-80.9 23.1-5.8 2-11.8 4-17.6 5.9-38 65.2-66.5 79.4-84.1 79.4-4.2 0-7.8-.9-10.8-2-6.9-2.6-12.8-8-16.5-15-.9-1.7-1.6-3.4-2.2-5.2-1.6-4.8-2.1-9.6-1.3-13.6l.6-2.7c.1-.2.1-.4.2-.6.2-.7.4-1.4.7-2.1 0-.1.1-.2.1-.3 4.1-11.9 13.6-23.4 27.7-34.6 12.3-9.8 27.1-18.7 45.9-28.4 15.9-28 37.6-75.1 51.2-107.4-10.8-41.8-16.7-74.6-10.1-98.6.9-3.3 2.5-6.4 4.6-9.1.2-.2.3-.4.5-.6.1-.1.1-.2.2-.2 6.3-7.5 16.9-11.9 28.1-11.5 16.6.7 29.7 11.5 33 30.1 1.7 8 2.2 16.5 1.9 25.7v.7c0 .5 0 1-.1 1.5-.7 13.3-3 26.6-7.3 44.7-.4 1.6-.8 3.2-1.2 5.2l-1 4.1-.1.3c.1.2.1.3.2.5l1.8 4.5c.1.3.3.7.4 1 .7 1.6 1.4 3.3 2.1 4.8v.1c8.7 18.8 19.7 33.4 33.9 45.1 4.3 3.5 8.9 6.7 13.9 9.8 1.8-.5 3.5-.7 5.3-.9z", "fill": secondaryColor } }, { "tag": "path", "attrs": { "d": "M391.5 761c5.7-4.4 16.2-14.5 30.1-34.7-10.3 9.4-23.4 22.4-30.1 34.7zm270.9-83l.2-.3h.2c.6-.4.5-.7.4-.9-.1-.1-4.5-9.3-45.1-7.4 35.3 13.9 43.5 9.1 44.3 8.6z", "fill": secondaryColor } }, { "tag": "path", "attrs": { "d": "M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM602 137.8L790.2 326H602V137.8zM792 888H232V136h302v216a42 42 0 0042 42h216v494z", "fill": primaryColor } }, { "tag": "path", "attrs": { "d": "M535.9 585.3c-.8-1.7-1.5-3.3-2.2-4.9-.1-.3-.3-.7-.4-1l-1.8-4.5c-.1-.2-.1-.3-.2-.5l.1-.3.2-1.1c4-16.3 8.6-35.3 9.4-54.4v-.7c.3-8.6-.2-17.2-2-25.6-3.8-21.3-19.5-29.6-32.9-30.2-11.3-.5-21.8 4-28.1 11.4-.1.1-.1.2-.2.2-.2.2-.4.4-.5.6-2.1 2.7-3.7 5.8-4.6 9.1-6.6 24-.7 56.8 10.1 98.6-13.6 32.4-35.3 79.4-51.2 107.4v.1c-27.7 14.3-64.1 35.8-73.6 62.9 0 .1-.1.2-.1.3-.2.7-.5 1.4-.7 2.1-.1.2-.1.4-.2.6-.2.9-.5 1.8-.6 2.7-.9 4-.4 8.8 1.3 13.6.6 1.8 1.3 3.5 2.2 5.2 3.7 7 9.6 12.4 16.5 15 3 1.1 6.6 2 10.8 2 17.6 0 46.1-14.2 84.1-79.4 5.8-1.9 11.8-3.9 17.6-5.9 27.2-9.2 55.4-18.8 80.9-23.1 28.2 15.1 60.3 24.8 82.1 24.8 21.6 0 30.1-12.8 33.3-20.5 5.6-13.5 2.9-30.5-6.2-39.6-2.6-2.6-6-4.8-10.1-6.6-.1-.1-.3-.1-.4-.2-.5-.2-1.1-.4-1.6-.7-.4-.2-.8-.3-1.2-.5-.2-.1-.3-.1-.5-.2-16.2-5.8-41.7-6.7-76.3-2.8l-5.3.6c-5-3-9.6-6.3-13.9-9.8-14.2-11.3-25.1-25.8-33.8-44.7zM391.5 761c6.7-12.3 19.8-25.3 30.1-34.7-13.9 20.2-24.4 30.3-30.1 34.7zM507 488.8c.8.1 1.5.7 2.2 2 5.2 8.9 4.5 35.8.5 49.4-4.9-19.9-5.6-48.1-2.7-51.4zm-19.2 188.9c-4.2 1.7-8.3 3.4-12.3 5 13.3-24.1 24.4-51.4 32.1-71.4 10.7 18.5 24.2 34.4 39.1 46.2-21.6 4.9-41.3 13-58.9 20.2zm175.4-.9c.1.2.2.5-.4.9h-.2l-.2.3c-.8.5-9 5.3-44.3-8.6 40.6-1.9 45 7.3 45.1 7.4z", "fill": primaryColor } }] };
67598
67606
  }, "name": "file-pdf", "theme": "twotone" };
@@ -70361,7 +70369,7 @@ const WindowControls = ({ onClose }) => {
70361
70369
  onMouseEnter: () => setHoveredButton("close"),
70362
70370
  onMouseLeave: () => setHoveredButton(null),
70363
70371
  onClick: handleClose,
70364
- children: hoveredButton === "close" && /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$11, {})
70372
+ children: hoveredButton === "close" && /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$12, {})
70365
70373
  }
70366
70374
  ),
70367
70375
  /* @__PURE__ */ jsxRuntimeExports.jsx(
@@ -70387,7 +70395,7 @@ const WindowControls = ({ onClose }) => {
70387
70395
  onMouseEnter: () => setHoveredButton("maximize"),
70388
70396
  onMouseLeave: () => setHoveredButton(null),
70389
70397
  onClick: handleMaximize,
70390
- children: hoveredButton === "maximize" && /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$q, {})
70398
+ children: hoveredButton === "maximize" && /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$r, {})
70391
70399
  }
70392
70400
  )
70393
70401
  ]
@@ -70604,7 +70612,7 @@ const AppLayout = () => {
70604
70612
  };
70605
70613
  const { Text: Text$5 } = Typography;
70606
70614
  const CLOUD_PROVIDER_ID = -1;
70607
- const CLOUD_MODEL_TIERS = [
70615
+ const CLOUD_MODEL_TIERS$2 = [
70608
70616
  { id: "lite", name: "Fit Lite", creditsPerPage: 10 },
70609
70617
  { id: "pro", name: "Fit Pro", creditsPerPage: 20 },
70610
70618
  { id: "ultra", name: "Fit Ultra", creditsPerPage: 60 }
@@ -70664,7 +70672,7 @@ const UploadPanel = () => {
70664
70672
  const cloudGroup = {
70665
70673
  provider: CLOUD_PROVIDER_ID,
70666
70674
  providerName: t2("cloud.provider_name"),
70667
- models: CLOUD_MODEL_TIERS.map((tier) => ({
70675
+ models: CLOUD_MODEL_TIERS$2.map((tier) => ({
70668
70676
  id: tier.id,
70669
70677
  name: `${tier.name} (${t2(`cloud.tier_${tier.id}`)})`,
70670
70678
  provider: CLOUD_PROVIDER_ID
@@ -70704,7 +70712,7 @@ const UploadPanel = () => {
70704
70712
  const isDisabled = isCloud && !cloudContext?.isAuthenticated;
70705
70713
  return {
70706
70714
  label: /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { children: [
70707
- isCloud && /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$m, { style: { marginRight: 8, color: "#1890ff" } }),
70715
+ isCloud && /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$n, { style: { marginRight: 8, color: "#1890ff" } }),
70708
70716
  group.providerName
70709
70717
  ] }),
70710
70718
  title: group.providerName,
@@ -70974,7 +70982,7 @@ const UploadPanel = () => {
70974
70982
  Button$1,
70975
70983
  {
70976
70984
  type: "primary",
70977
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$i, {}),
70985
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$j, {}),
70978
70986
  onClick: handleConvert,
70979
70987
  loading: uploading,
70980
70988
  disabled: uploading || fileList.length === 0 || !selectedModel,
@@ -71120,6 +71128,7 @@ function mapCloudTasksToTasks(cloudTasks) {
71120
71128
  return cloudTasks.map(mapCloudTaskToTask);
71121
71129
  }
71122
71130
  const { Text: Text$4 } = Typography;
71131
+ const CLOUD_MODEL_TIERS$1 = ["lite", "pro", "ultra"];
71123
71132
  const List = () => {
71124
71133
  const { message: message2, modal } = App$1.useApp();
71125
71134
  const { t: t2 } = useTranslation("list");
@@ -71138,6 +71147,45 @@ const List = () => {
71138
71147
  const paginationRef = reactExports.useRef(pagination);
71139
71148
  paginationRef.current = pagination;
71140
71149
  const MAX_FETCH_ITEMS = 100;
71150
+ const buildLocalModelValue = (modelId, providerId) => `${modelId}@${providerId}`;
71151
+ const parseLocalModelValue = (value) => {
71152
+ const separatorIndex = value.lastIndexOf("@");
71153
+ if (separatorIndex <= 0 || separatorIndex === value.length - 1) {
71154
+ return null;
71155
+ }
71156
+ const modelId = value.slice(0, separatorIndex);
71157
+ const providerId = Number(value.slice(separatorIndex + 1));
71158
+ if (!modelId || !Number.isInteger(providerId)) {
71159
+ return null;
71160
+ }
71161
+ return {
71162
+ modelId,
71163
+ providerId
71164
+ };
71165
+ };
71166
+ const loadLocalModelOptions = reactExports.useCallback(async () => {
71167
+ const result = await window.api.model.getAll();
71168
+ if (!result.success || !result.data) {
71169
+ throw new Error(result.error || t2("retry.load_models_failed"));
71170
+ }
71171
+ const modelGroups = result.data;
71172
+ return modelGroups.flatMap(
71173
+ (group) => group.models.map((model) => ({
71174
+ value: buildLocalModelValue(model.id, group.provider),
71175
+ label: `${model.name} | ${group.providerName}`
71176
+ }))
71177
+ );
71178
+ }, [t2]);
71179
+ const parseCloudModelTier = (record) => {
71180
+ const explicitTier = record?.model_tier;
71181
+ if (explicitTier && CLOUD_MODEL_TIERS$1.includes(explicitTier)) {
71182
+ return explicitTier;
71183
+ }
71184
+ const modelName = (record.model_name || "").toLowerCase();
71185
+ if (modelName.includes("ultra")) return "ultra";
71186
+ if (modelName.includes("pro")) return "pro";
71187
+ return "lite";
71188
+ };
71141
71189
  const fetchTasks = reactExports.useCallback(async (page = 1, pageSize = 10) => {
71142
71190
  setLoading(true);
71143
71191
  try {
@@ -71400,8 +71448,62 @@ const List = () => {
71400
71448
  }
71401
71449
  });
71402
71450
  };
71403
- const handleRetryTask = (id) => {
71404
- handleUpdateTaskStatus(id, 1, t2("actions.retry"));
71451
+ const handleRetryTask = async (task) => {
71452
+ if (!task.id) return;
71453
+ try {
71454
+ const modelOptions = await loadLocalModelOptions();
71455
+ if (modelOptions.length === 0) {
71456
+ message2.error(t2("retry.no_models_available"));
71457
+ return;
71458
+ }
71459
+ const defaultModelValue = task.model && task.provider !== void 0 && task.provider >= 0 ? buildLocalModelValue(task.model, task.provider) : modelOptions[0].value;
71460
+ let selectedModelValue = modelOptions.some((opt) => opt.value === defaultModelValue) ? defaultModelValue : modelOptions[0].value;
71461
+ modal.confirm({
71462
+ title: t2("retry.confirm_with_model"),
71463
+ content: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
71464
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { marginBottom: 8 }, children: t2("retry.select_model") }),
71465
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
71466
+ Select,
71467
+ {
71468
+ style: { width: "100%" },
71469
+ options: modelOptions,
71470
+ defaultValue: selectedModelValue,
71471
+ onChange: (value) => {
71472
+ selectedModelValue = value;
71473
+ }
71474
+ }
71475
+ )
71476
+ ] }),
71477
+ okText: t2("confirmations.ok"),
71478
+ cancelText: t2("confirmations.cancel"),
71479
+ onOk: async () => {
71480
+ const parsedModel = parseLocalModelValue(selectedModelValue);
71481
+ if (!parsedModel) {
71482
+ message2.error(t2("messages.action_failed", { action: t2("actions.retry") }));
71483
+ return;
71484
+ }
71485
+ const { modelId, providerId } = parsedModel;
71486
+ try {
71487
+ const result = await window.api.task.retry({
71488
+ taskId: task.id,
71489
+ providerId,
71490
+ modelId
71491
+ });
71492
+ if (result.success) {
71493
+ message2.success(t2("messages.action_success", { action: t2("actions.retry") }));
71494
+ fetchTasks(pagination.current, pagination.pageSize);
71495
+ } else {
71496
+ message2.error(result.error || t2("messages.action_failed", { action: t2("actions.retry") }));
71497
+ }
71498
+ } catch (error) {
71499
+ console.error("Failed to retry local task:", error);
71500
+ message2.error(t2("messages.action_failed", { action: t2("actions.retry") }));
71501
+ }
71502
+ }
71503
+ });
71504
+ } catch (error) {
71505
+ message2.error(error instanceof Error ? error.message : t2("retry.load_models_failed"));
71506
+ }
71405
71507
  };
71406
71508
  const handleCancelTask = (id) => {
71407
71509
  handleUpdateTaskStatus(id, 7, t2("actions.cancel"));
@@ -71428,16 +71530,34 @@ const List = () => {
71428
71530
  }
71429
71531
  });
71430
71532
  };
71431
- const handleCloudRetryTask = async (id) => {
71533
+ const handleCloudRetryTask = async (task) => {
71432
71534
  if (!cloudContext) return;
71535
+ if (!task.id) return;
71536
+ let selectedModel = parseCloudModelTier(task);
71433
71537
  modal.confirm({
71434
- title: t2("confirmations.cancel_title", { action: t2("actions.retry") }),
71435
- content: t2("confirmations.cancel_content", { action: t2("actions.retry") }),
71538
+ title: t2("retry.confirm_cloud_with_model"),
71539
+ content: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
71540
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { marginBottom: 8 }, children: t2("retry.select_model") }),
71541
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
71542
+ Select,
71543
+ {
71544
+ style: { width: "100%" },
71545
+ options: CLOUD_MODEL_TIERS$1.map((tier) => ({
71546
+ value: tier,
71547
+ label: t2(`retry.model.${tier}`)
71548
+ })),
71549
+ defaultValue: selectedModel,
71550
+ onChange: (value) => {
71551
+ selectedModel = value;
71552
+ }
71553
+ }
71554
+ )
71555
+ ] }),
71436
71556
  okText: t2("confirmations.ok"),
71437
71557
  cancelText: t2("confirmations.cancel"),
71438
71558
  onOk: async () => {
71439
71559
  try {
71440
- const result = await cloudContext.retryTask(id);
71560
+ const result = await cloudContext.retryTask(task.id, selectedModel);
71441
71561
  if (result.success) {
71442
71562
  message2.success(t2("messages.action_success", { action: t2("actions.retry") }));
71443
71563
  fetchTasks(pagination.current, pagination.pageSize);
@@ -71518,15 +71638,15 @@ const List = () => {
71518
71638
  if (fileType === "pdf") {
71519
71639
  return /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$h, { twoToneColor: "#ec5f4a" });
71520
71640
  } else if (["jpg", "jpeg", "png", "gif", "bmp", "webp"].includes(fileType)) {
71521
- return /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$j, { twoToneColor: "#52c41a" });
71641
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$k, { twoToneColor: "#52c41a" });
71522
71642
  } else if (["doc", "docx"].includes(fileType)) {
71523
71643
  return /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$f, { twoToneColor: "#1890ff" });
71524
71644
  } else if (["ppt", "pptx"].includes(fileType)) {
71525
71645
  return /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$g, { twoToneColor: "#fa8c16" });
71526
71646
  } else if (["xls", "xlsx"].includes(fileType)) {
71527
- return /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$k, { twoToneColor: "#52c41a" });
71647
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$l, { twoToneColor: "#52c41a" });
71528
71648
  } else {
71529
- return /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$w, {});
71649
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$x, {});
71530
71650
  }
71531
71651
  })(),
71532
71652
  /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: text2, children: (() => {
@@ -71572,7 +71692,7 @@ const List = () => {
71572
71692
  children: text2
71573
71693
  }
71574
71694
  ),
71575
- record.provider === -1 && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("task_type.cloud"), children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { style: { display: "inline-flex", alignItems: "center" }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$m, { style: { color: "#1890ff" } }) }) })
71695
+ record.provider === -1 && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("task_type.cloud"), children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { style: { display: "inline-flex", alignItems: "center" }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$n, { style: { color: "#1890ff" } }) }) })
71576
71696
  ]
71577
71697
  }
71578
71698
  )
@@ -71637,7 +71757,7 @@ const List = () => {
71637
71757
  {
71638
71758
  type: "warning",
71639
71759
  style: { cursor: "pointer" },
71640
- onClick: () => record.id && (isCloud ? handleCloudRetryTask(record.id) : handleRetryTask(record.id)),
71760
+ onClick: () => record.id && (isCloud ? handleCloudRetryTask(record) : handleRetryTask(record)),
71641
71761
  children: t2("actions.retry")
71642
71762
  }
71643
71763
  );
@@ -72155,7 +72275,7 @@ const Provider = ({
72155
72275
  /* @__PURE__ */ jsxRuntimeExports.jsx(Space, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
72156
72276
  Button$1,
72157
72277
  {
72158
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$A, {}),
72278
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$B, {}),
72159
72279
  shape: "circle",
72160
72280
  danger: true,
72161
72281
  size: "small",
@@ -72196,14 +72316,14 @@ const Provider = ({
72196
72316
  onChange: (e2) => setNewModelId(e2.target.value)
72197
72317
  }
72198
72318
  ),
72199
- /* @__PURE__ */ jsxRuntimeExports.jsx(Button$1, { type: "primary", icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$S, {}), onClick: addModel, style: { whiteSpace: "nowrap", flexShrink: 0 }, children: t2("model_config.add_button") })
72319
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Button$1, { type: "primary", icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$T, {}), onClick: addModel, style: { whiteSpace: "nowrap", flexShrink: 0 }, children: t2("model_config.add_button") })
72200
72320
  ] }),
72201
72321
  /* @__PURE__ */ jsxRuntimeExports.jsx(Typography.Text, { type: "secondary", children: t2("model_config.warning") }),
72202
72322
  !isPreset && /* @__PURE__ */ jsxRuntimeExports.jsx(
72203
72323
  Button$1,
72204
72324
  {
72205
72325
  title: t2("actions.delete_provider"),
72206
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$A, {}),
72326
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$B, {}),
72207
72327
  danger: true,
72208
72328
  onClick: () => {
72209
72329
  if (!providerId) return;
@@ -72304,7 +72424,7 @@ const ModelService = () => {
72304
72424
  {
72305
72425
  key: "add provider",
72306
72426
  label: t2("add_provider.tab_label"),
72307
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$D, {}),
72427
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$E, {}),
72308
72428
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(AddProvider, { onProviderAdded: () => {
72309
72429
  } })
72310
72430
  }
@@ -72369,7 +72489,7 @@ const ModelService = () => {
72369
72489
  const addProviderTab = {
72370
72490
  key: "add provider",
72371
72491
  label: t2("add_provider.tab_label"),
72372
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$D, {}),
72492
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$E, {}),
72373
72493
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(AddProvider, { onProviderAdded: handleProviderAddedRef.current })
72374
72494
  };
72375
72495
  setItems([...providerTabs, addProviderTab]);
@@ -72479,7 +72599,7 @@ const UpdateChecker = () => {
72479
72599
  ] });
72480
72600
  case "available":
72481
72601
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(Space, { children: [
72482
- /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$t, {}),
72602
+ /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$u, {}),
72483
72603
  /* @__PURE__ */ jsxRuntimeExports.jsxs(Text$3, { children: [
72484
72604
  t2("update.available"),
72485
72605
  " ",
@@ -72503,7 +72623,7 @@ const UpdateChecker = () => {
72503
72623
  ] });
72504
72624
  case "downloaded":
72505
72625
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(Space, { children: [
72506
- /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$p, { style: { color: "#52c41a" } }),
72626
+ /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$q, { style: { color: "#52c41a" } }),
72507
72627
  /* @__PURE__ */ jsxRuntimeExports.jsxs(Text$3, { children: [
72508
72628
  t2("update.ready"),
72509
72629
  " ",
@@ -72513,13 +72633,13 @@ const UpdateChecker = () => {
72513
72633
  ] });
72514
72634
  case "not_available":
72515
72635
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(Space, { children: [
72516
- /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$p, { style: { color: "#52c41a" } }),
72636
+ /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$q, { style: { color: "#52c41a" } }),
72517
72637
  /* @__PURE__ */ jsxRuntimeExports.jsx(Text$3, { type: "secondary", children: t2("update.up_to_date") })
72518
72638
  ] });
72519
72639
  case "error":
72520
72640
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(Space, { direction: "vertical", children: [
72521
72641
  /* @__PURE__ */ jsxRuntimeExports.jsxs(Space, { children: [
72522
- /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$n, { style: { color: "#ff4d4f" } }),
72642
+ /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$o, { style: { color: "#ff4d4f" } }),
72523
72643
  /* @__PURE__ */ jsxRuntimeExports.jsx(Text$3, { type: "danger", children: t2("update.error") }),
72524
72644
  /* @__PURE__ */ jsxRuntimeExports.jsx(Button$1, { onClick: handleCheckForUpdates, children: t2("update.retry") })
72525
72645
  ] }),
@@ -72863,7 +72983,7 @@ const AccountCenter = () => {
72863
72983
  return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: { padding: "24px", textAlign: "center" }, children: [
72864
72984
  /* @__PURE__ */ jsxRuntimeExports.jsx(Title, { level: 3, children: t2("title") }),
72865
72985
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: { marginBottom: "24px" }, children: [
72866
- /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$_, { style: { fontSize: "24px", marginBottom: "16px" } }),
72986
+ /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$$, { style: { fontSize: "24px", marginBottom: "16px" } }),
72867
72987
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { marginBottom: "16px" }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Text$2, { type: "secondary", children: t2("device_flow.enter_code_hint") }) }),
72868
72988
  userCode && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { marginBottom: "16px" }, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(Space, { children: [
72869
72989
  /* @__PURE__ */ jsxRuntimeExports.jsx(
@@ -72878,7 +72998,7 @@ const AccountCenter = () => {
72878
72998
  Button$1,
72879
72999
  {
72880
73000
  type: "text",
72881
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$x, {}),
73001
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$y, {}),
72882
73002
  onClick: handleCopyCode,
72883
73003
  size: "small",
72884
73004
  children: codeCopied ? "✓" : ""
@@ -73109,7 +73229,7 @@ const AccountCenter = () => {
73109
73229
  {
73110
73230
  title: t2("paid_credits.title"),
73111
73231
  value: credits.paid,
73112
- prefix: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$l, { style: { color: "#722ed1" } }),
73232
+ prefix: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$m, { style: { color: "#722ed1" } }),
73113
73233
  valueStyle: { color: "#722ed1" }
73114
73234
  }
73115
73235
  ),
@@ -73310,7 +73430,7 @@ const Settings$1 = () => {
73310
73430
  {
73311
73431
  key: "1",
73312
73432
  label: t2("tabs.model_service"),
73313
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$s, {}),
73433
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$t, {}),
73314
73434
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(ModelService, {})
73315
73435
  },
73316
73436
  {
@@ -125328,6 +125448,35 @@ const Preview = () => {
125328
125448
  const [imageError, setImageError] = reactExports.useState(false);
125329
125449
  const [retrying, setRetrying] = reactExports.useState(false);
125330
125450
  const [retryingFailed, setRetryingFailed] = reactExports.useState(false);
125451
+ const buildModelValue = (modelId, providerId) => `${modelId}@${providerId}`;
125452
+ const parseModelValue = (value) => {
125453
+ const separatorIndex = value.lastIndexOf("@");
125454
+ if (separatorIndex <= 0 || separatorIndex === value.length - 1) {
125455
+ return null;
125456
+ }
125457
+ const modelId = value.slice(0, separatorIndex);
125458
+ const providerId = Number(value.slice(separatorIndex + 1));
125459
+ if (!modelId || !Number.isInteger(providerId)) {
125460
+ return null;
125461
+ }
125462
+ return {
125463
+ modelId,
125464
+ providerId
125465
+ };
125466
+ };
125467
+ const loadLocalModelOptions = reactExports.useCallback(async () => {
125468
+ const result = await window.api.model.getAll();
125469
+ if (!result.success || !result.data) {
125470
+ throw new Error(result.error || t2("preview.load_models_failed"));
125471
+ }
125472
+ const modelGroups = result.data;
125473
+ return modelGroups.flatMap(
125474
+ (group) => group.models.map((model) => ({
125475
+ value: buildModelValue(model.id, group.provider),
125476
+ label: `${model.name} | ${group.providerName}`
125477
+ }))
125478
+ );
125479
+ }, [t2]);
125331
125480
  const fetchTask = reactExports.useCallback(async () => {
125332
125481
  if (!id) return;
125333
125482
  try {
@@ -125481,26 +125630,63 @@ const Preview = () => {
125481
125630
  });
125482
125631
  };
125483
125632
  const handleRetryTask = async () => {
125484
- if (!id) return;
125485
- modal.confirm({
125486
- title: t2("preview.confirm_retry"),
125487
- content: t2("preview.confirm_retry_content"),
125488
- okText: tCommon("common.confirm"),
125489
- cancelText: tCommon("common.cancel"),
125490
- onOk: async () => {
125491
- try {
125492
- const result = await window.api.task.update(id, { status: 1 });
125493
- if (result.success) {
125494
- message2.success(t2("preview.retry_success"));
125495
- } else {
125496
- message2.error(result.error || t2("preview.retry_failed"));
125633
+ if (!id || !task) return;
125634
+ try {
125635
+ const modelOptions = await loadLocalModelOptions();
125636
+ if (modelOptions.length === 0) {
125637
+ message2.error(t2("preview.no_models_available"));
125638
+ return;
125639
+ }
125640
+ const defaultModelValue = buildModelValue(task.model || "", task.provider || 0);
125641
+ let selectedModelValue = modelOptions.some((opt) => opt.value === defaultModelValue) ? defaultModelValue : modelOptions[0].value;
125642
+ modal.confirm({
125643
+ title: t2("preview.confirm_retry_with_model"),
125644
+ content: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: { marginTop: 8 }, children: [
125645
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { marginBottom: 8 }, children: t2("preview.select_retry_model") }),
125646
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
125647
+ Select,
125648
+ {
125649
+ style: { width: "100%" },
125650
+ options: modelOptions,
125651
+ defaultValue: selectedModelValue,
125652
+ onChange: (value) => {
125653
+ selectedModelValue = value;
125654
+ }
125655
+ }
125656
+ )
125657
+ ] }),
125658
+ okText: tCommon("common.confirm"),
125659
+ cancelText: tCommon("common.cancel"),
125660
+ onOk: async () => {
125661
+ try {
125662
+ const shouldOverride = selectedModelValue !== defaultModelValue;
125663
+ let overridePayload = null;
125664
+ if (shouldOverride) {
125665
+ const parsedModel = parseModelValue(selectedModelValue);
125666
+ if (!parsedModel) {
125667
+ message2.error(t2("preview.retry_failed"));
125668
+ return;
125669
+ }
125670
+ overridePayload = parsedModel;
125671
+ }
125672
+ const result = await window.api.task.retry({
125673
+ taskId: id,
125674
+ ...overridePayload || {}
125675
+ });
125676
+ if (result.success) {
125677
+ message2.success(t2("preview.retry_success"));
125678
+ } else {
125679
+ message2.error(result.error || t2("preview.retry_failed"));
125680
+ }
125681
+ } catch (error) {
125682
+ console.error("重试失败:", error);
125683
+ message2.error(t2("preview.retry_failed"));
125497
125684
  }
125498
- } catch (error) {
125499
- console.error("重试失败:", error);
125500
- message2.error(t2("preview.retry_failed"));
125501
125685
  }
125502
- }
125503
- });
125686
+ });
125687
+ } catch (error) {
125688
+ message2.error(error instanceof Error ? error.message : t2("preview.load_models_failed"));
125689
+ }
125504
125690
  };
125505
125691
  const handleRetryFailed = async () => {
125506
125692
  if (!id) return;
@@ -125532,20 +125718,90 @@ const Preview = () => {
125532
125718
  };
125533
125719
  const handleRetryPage = async () => {
125534
125720
  if (!taskDetail?.id) return;
125535
- setRetrying(true);
125536
125721
  try {
125537
- const result = await window.api.taskDetail.retry(taskDetail.id);
125722
+ const modelOptions = await loadLocalModelOptions();
125723
+ if (modelOptions.length === 0) {
125724
+ message2.error(t2("preview.no_models_available"));
125725
+ return;
125726
+ }
125727
+ const defaultModelValue = buildModelValue(taskDetail.model, taskDetail.provider);
125728
+ let selectedModelValue = modelOptions.some((opt) => opt.value === defaultModelValue) ? defaultModelValue : modelOptions[0].value;
125729
+ modal.confirm({
125730
+ title: t2("preview.confirm_page_retry_with_model"),
125731
+ content: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: { marginTop: 8 }, children: [
125732
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { marginBottom: 8 }, children: t2("preview.select_retry_model") }),
125733
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
125734
+ Select,
125735
+ {
125736
+ style: { width: "100%" },
125737
+ options: modelOptions,
125738
+ defaultValue: selectedModelValue,
125739
+ onChange: (value) => {
125740
+ selectedModelValue = value;
125741
+ }
125742
+ }
125743
+ )
125744
+ ] }),
125745
+ okText: tCommon("common.confirm"),
125746
+ cancelText: tCommon("common.cancel"),
125747
+ onOk: async () => {
125748
+ setRetrying(true);
125749
+ try {
125750
+ const shouldOverride = selectedModelValue !== defaultModelValue;
125751
+ let overridePayload = null;
125752
+ if (shouldOverride) {
125753
+ const parsedModel = parseModelValue(selectedModelValue);
125754
+ if (!parsedModel) {
125755
+ message2.error(t2("preview.page_retry_failed"));
125756
+ return;
125757
+ }
125758
+ overridePayload = parsedModel;
125759
+ }
125760
+ const result = await window.api.taskDetail.retry(
125761
+ overridePayload ? { pageId: taskDetail.id, ...overridePayload } : { pageId: taskDetail.id }
125762
+ );
125763
+ if (result.success) {
125764
+ message2.success(t2("preview.page_retry_success"));
125765
+ fetchPageDetail(currentPage);
125766
+ } else {
125767
+ message2.error(result.error || t2("preview.page_retry_failed"));
125768
+ }
125769
+ } catch (error) {
125770
+ console.error("Failed to retry page:", error);
125771
+ message2.error(t2("preview.page_retry_failed"));
125772
+ } finally {
125773
+ setRetrying(false);
125774
+ }
125775
+ }
125776
+ });
125777
+ } catch (error) {
125778
+ message2.error(error instanceof Error ? error.message : t2("preview.load_models_failed"));
125779
+ }
125780
+ };
125781
+ const handleCopyMarkdown = async () => {
125782
+ const content2 = taskDetail?.content || "";
125783
+ if (!content2) return;
125784
+ try {
125785
+ await navigator.clipboard.writeText(content2);
125786
+ message2.success(t2("preview.copy_markdown_success"));
125787
+ } catch (error) {
125788
+ console.error("Failed to copy markdown:", error);
125789
+ message2.error(t2("preview.copy_markdown_failed"));
125790
+ }
125791
+ };
125792
+ const handleCopyImage = async () => {
125793
+ const imagePath = taskDetail?.imagePath;
125794
+ if (!imagePath) return;
125795
+ try {
125796
+ const result = await window.api.file.copyImageToClipboard(imagePath);
125538
125797
  if (result.success) {
125539
- message2.success(t2("preview.page_retry_success"));
125540
- fetchPageDetail(currentPage);
125798
+ message2.success(t2("preview.copy_image_success"));
125541
125799
  } else {
125542
- message2.error(result.error || t2("preview.page_retry_failed"));
125800
+ message2.error(result.error || t2("preview.copy_image_failed"));
125543
125801
  }
125544
125802
  } catch (error) {
125545
- console.error("Failed to retry page:", error);
125546
- message2.error(t2("preview.page_retry_failed"));
125547
- } finally {
125548
- setRetrying(false);
125803
+ console.error("Failed to copy image:", error);
125804
+ message2.error(t2("preview.copy_image_failed"));
125549
125805
  }
125550
125806
  };
125551
125807
  const getPageStatusInfo = () => {
@@ -125554,31 +125810,31 @@ const Preview = () => {
125554
125810
  switch (status2) {
125555
125811
  case -1:
125556
125812
  return {
125557
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$12, { style: { ...iconStyle, color: "#ff4d4f" } }),
125813
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$13, { style: { ...iconStyle, color: "#ff4d4f" } }),
125558
125814
  text: t2("preview.status.failed"),
125559
125815
  color: "#ff4d4f"
125560
125816
  };
125561
125817
  case 0:
125562
125818
  return {
125563
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$o, { style: { ...iconStyle, color: "#faad14" } }),
125819
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$p, { style: { ...iconStyle, color: "#faad14" } }),
125564
125820
  text: t2("preview.status.pending"),
125565
125821
  color: "#faad14"
125566
125822
  };
125567
125823
  case 1:
125568
125824
  return {
125569
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$_, { style: { ...iconStyle, color: "#1890ff" }, spin: true }),
125825
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$$, { style: { ...iconStyle, color: "#1890ff" }, spin: true }),
125570
125826
  text: t2("preview.status.processing"),
125571
125827
  color: "#1890ff"
125572
125828
  };
125573
125829
  case 2:
125574
125830
  return {
125575
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$13, { style: { ...iconStyle, color: "#52c41a" } }),
125831
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$14, { style: { ...iconStyle, color: "#52c41a" } }),
125576
125832
  text: t2("preview.status.completed"),
125577
125833
  color: "#52c41a"
125578
125834
  };
125579
125835
  case 3:
125580
125836
  return {
125581
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$_, { style: { ...iconStyle, color: "#faad14" }, spin: true }),
125837
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$$, { style: { ...iconStyle, color: "#faad14" }, spin: true }),
125582
125838
  text: t2("preview.status.retrying"),
125583
125839
  color: "#faad14"
125584
125840
  };
@@ -125603,7 +125859,7 @@ const Preview = () => {
125603
125859
  Button$1,
125604
125860
  {
125605
125861
  onClick: () => navigate("/list"),
125606
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$r, {}),
125862
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$s, {}),
125607
125863
  color: "default",
125608
125864
  variant: "filled",
125609
125865
  children: t2("preview.back")
@@ -125649,7 +125905,7 @@ const Preview = () => {
125649
125905
  Button$1,
125650
125906
  {
125651
125907
  color: "primary",
125652
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$i, {}),
125908
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$j, {}),
125653
125909
  variant: "filled",
125654
125910
  onClick: handleDownload,
125655
125911
  disabled: !task?.merged_path || task?.status !== 6,
@@ -125663,16 +125919,16 @@ const Preview = () => {
125663
125919
  if (status2 === 8 && failedCount > 0) {
125664
125920
  menuItems.push({
125665
125921
  key: "retry_failed",
125666
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$L, {}),
125922
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$M, {}),
125667
125923
  label: t2("preview.retry_failed"),
125668
125924
  onClick: handleRetryFailed,
125669
125925
  disabled: retryingFailed
125670
125926
  });
125671
125927
  }
125672
- if (status2 === 0) {
125928
+ if (status2 === 0 || status2 === 6) {
125673
125929
  menuItems.push({
125674
125930
  key: "retry_all",
125675
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$L, {}),
125931
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$M, {}),
125676
125932
  label: t2("preview.retry_all"),
125677
125933
  onClick: handleRetryTask
125678
125934
  });
@@ -125691,7 +125947,7 @@ const Preview = () => {
125691
125947
  if (status2 === 0 || status2 !== void 0 && status2 >= 6) {
125692
125948
  menuItems.push({
125693
125949
  key: "delete",
125694
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$A, {}),
125950
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$B, {}),
125695
125951
  label: t2("preview.delete"),
125696
125952
  danger: true,
125697
125953
  onClick: handleDelete2
@@ -125704,7 +125960,7 @@ const Preview = () => {
125704
125960
  if (hasPrimaryAction) {
125705
125961
  const primaryLabel = hasRetryFailed ? t2("preview.retry_failed") : t2("preview.retry_all");
125706
125962
  const primaryAction = hasRetryFailed ? handleRetryFailed : handleRetryTask;
125707
- const primaryIcon = hasRetryFailed && retryingFailed ? /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$_, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$L, {});
125963
+ const primaryIcon = hasRetryFailed && retryingFailed ? /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$$, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$M, {});
125708
125964
  const filteredMenuItems = menuItems.filter((item) => {
125709
125965
  if (!item || item.type === "divider") return true;
125710
125966
  if (hasRetryFailed && item.key === "retry_failed") return false;
@@ -125719,7 +125975,7 @@ const Preview = () => {
125719
125975
  {
125720
125976
  menu: { items: filteredMenuItems },
125721
125977
  onClick: primaryAction,
125722
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$X, {}),
125978
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$Y, {}),
125723
125979
  disabled: hasRetryFailed && retryingFailed,
125724
125980
  children: /* @__PURE__ */ jsxRuntimeExports.jsxs(Space, { children: [
125725
125981
  primaryIcon,
@@ -125730,7 +125986,7 @@ const Preview = () => {
125730
125986
  } else {
125731
125987
  return /* @__PURE__ */ jsxRuntimeExports.jsx(Dropdown, { menu: { items: menuItems }, trigger: ["click"], children: /* @__PURE__ */ jsxRuntimeExports.jsxs(Button$1, { children: [
125732
125988
  t2("preview.more_actions"),
125733
- /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$X, {})
125989
+ /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$Y, {})
125734
125990
  ] }) });
125735
125991
  }
125736
125992
  })()
@@ -125760,7 +126016,7 @@ const Preview = () => {
125760
126016
  padding: "12px"
125761
126017
  },
125762
126018
  children: [
125763
- /* @__PURE__ */ jsxRuntimeExports.jsx(
126019
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(
125764
126020
  "div",
125765
126021
  {
125766
126022
  style: {
@@ -125768,22 +126024,37 @@ const Preview = () => {
125768
126024
  display: "flex",
125769
126025
  justifyContent: "center",
125770
126026
  alignItems: "center",
125771
- overflow: "hidden"
126027
+ overflow: "hidden",
126028
+ position: "relative"
125772
126029
  },
125773
- children: loading ? /* @__PURE__ */ jsxRuntimeExports.jsx(Spin, { size: "large" }) : imageError || !taskDetail?.imagePath ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { textAlign: "center", color: "#999" }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Text$1, { type: "secondary", children: t2("preview.image_load_failed") }) }) : /* @__PURE__ */ jsxRuntimeExports.jsx(
125774
- "img",
125775
- {
125776
- src: `local-file:///${taskDetail.imagePath.replace(/\\/g, "/")}`,
125777
- alt: `Page ${currentPage}`,
125778
- draggable: false,
125779
- style: {
125780
- maxWidth: "100%",
125781
- maxHeight: "100%",
125782
- objectFit: "contain"
125783
- },
125784
- onError: () => setImageError(true)
125785
- }
125786
- )
126030
+ children: [
126031
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("preview.copy_image_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
126032
+ Button$1,
126033
+ {
126034
+ className: "preview-floating-action",
126035
+ "aria-label": t2("preview.copy_image"),
126036
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$y, {}),
126037
+ shape: "circle",
126038
+ size: "small",
126039
+ onClick: handleCopyImage,
126040
+ disabled: loading || imageError || !taskDetail?.imagePath
126041
+ }
126042
+ ) }),
126043
+ loading ? /* @__PURE__ */ jsxRuntimeExports.jsx(Spin, { size: "large" }) : imageError || !taskDetail?.imagePath ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { textAlign: "center", color: "#999" }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Text$1, { type: "secondary", children: t2("preview.image_load_failed") }) }) : /* @__PURE__ */ jsxRuntimeExports.jsx(
126044
+ "img",
126045
+ {
126046
+ src: `local-file:///${taskDetail.imagePath.replace(/\\/g, "/")}`,
126047
+ alt: `Page ${currentPage}`,
126048
+ draggable: false,
126049
+ style: {
126050
+ maxWidth: "100%",
126051
+ maxHeight: "100%",
126052
+ objectFit: "contain"
126053
+ },
126054
+ onError: () => setImageError(true)
126055
+ }
126056
+ )
126057
+ ]
125787
126058
  }
125788
126059
  ),
125789
126060
  !loading && /* @__PURE__ */ jsxRuntimeExports.jsxs(
@@ -125810,7 +126081,7 @@ const Preview = () => {
125810
126081
  {
125811
126082
  type: "text",
125812
126083
  size: "small",
125813
- icon: retrying ? /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$_, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$L, {}),
126084
+ icon: retrying ? /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$$, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$M, {}),
125814
126085
  onClick: handleRetryPage,
125815
126086
  disabled: !taskDetail?.id || retrying,
125816
126087
  style: { color: "#666" },
@@ -125823,7 +126094,21 @@ const Preview = () => {
125823
126094
  ]
125824
126095
  }
125825
126096
  ),
125826
- /* @__PURE__ */ jsxRuntimeExports.jsx(Splitter.Panel, { style: { overflow: "auto", minWidth: 0 }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(MarkdownPreview, { content: taskDetail?.content || "" }) })
126097
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Splitter.Panel, { style: { overflow: "hidden", minWidth: 0 }, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: { position: "relative", height: "100%" }, children: [
126098
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("preview.copy_markdown_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
126099
+ Button$1,
126100
+ {
126101
+ className: "preview-floating-action",
126102
+ "aria-label": t2("preview.copy_markdown"),
126103
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$y, {}),
126104
+ shape: "circle",
126105
+ size: "small",
126106
+ onClick: handleCopyMarkdown,
126107
+ disabled: !taskDetail?.content
126108
+ }
126109
+ ) }),
126110
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MarkdownPreview, { content: taskDetail?.content || "" })
126111
+ ] }) })
125827
126112
  ]
125828
126113
  }
125829
126114
  ),
@@ -125844,6 +126129,7 @@ const Preview = () => {
125844
126129
  };
125845
126130
  const { Text } = Typography;
125846
126131
  const dedupeAndSortPages = (pageItems) => Array.from(new Map(pageItems.map((page) => [page.page, page])).values()).sort((a2, b) => a2.page - b.page);
126132
+ const CLOUD_MODEL_TIERS = ["lite", "pro", "ultra"];
125847
126133
  const CloudPreview = () => {
125848
126134
  const { id } = useParams();
125849
126135
  const navigate = useNavigate();
@@ -126078,7 +126364,7 @@ const CloudPreview = () => {
126078
126364
  const cleanup2 = window.api.events.onCloudTaskEvent(handleEvent);
126079
126365
  return () => cleanup2();
126080
126366
  }, [id]);
126081
- const handleDownloadResult = async () => {
126367
+ const handleDownloadMarkdown = async () => {
126082
126368
  if (!id || !cloudContext) return;
126083
126369
  setDownloading(true);
126084
126370
  try {
@@ -126101,6 +126387,22 @@ const CloudPreview = () => {
126101
126387
  setDownloading(false);
126102
126388
  }
126103
126389
  };
126390
+ const handleDownloadPdf = async () => {
126391
+ if (!id || !cloudContext) return;
126392
+ setDownloading(true);
126393
+ try {
126394
+ const result = await cloudContext.downloadResult(id);
126395
+ if (result.success) {
126396
+ message2.success(t2("download_success"));
126397
+ } else {
126398
+ message2.error(result.error || t2("download_failed"));
126399
+ }
126400
+ } catch {
126401
+ message2.error(t2("download_failed"));
126402
+ } finally {
126403
+ setDownloading(false);
126404
+ }
126405
+ };
126104
126406
  const handleCancel = async () => {
126105
126407
  if (!id || !cloudContext) return;
126106
126408
  modal.confirm({
@@ -126121,13 +126423,32 @@ const CloudPreview = () => {
126121
126423
  };
126122
126424
  const handleRetryTask = async () => {
126123
126425
  if (!id || !cloudContext) return;
126426
+ const options = CLOUD_MODEL_TIERS.map((tier) => ({
126427
+ value: tier,
126428
+ label: t2(`retry_model.${tier}`)
126429
+ }));
126430
+ const taskTier = task?.model_tier || "lite";
126431
+ let selectedModel = CLOUD_MODEL_TIERS.includes(taskTier) ? taskTier : "lite";
126124
126432
  modal.confirm({
126125
- title: t2("confirm_retry"),
126126
- content: t2("confirm_retry_content"),
126433
+ title: t2("confirm_retry_with_model"),
126434
+ content: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: { marginTop: 8 }, children: [
126435
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { marginBottom: 8 }, children: t2("select_retry_model") }),
126436
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
126437
+ Select,
126438
+ {
126439
+ style: { width: "100%" },
126440
+ options,
126441
+ defaultValue: selectedModel,
126442
+ onChange: (value) => {
126443
+ selectedModel = value;
126444
+ }
126445
+ }
126446
+ )
126447
+ ] }),
126127
126448
  okText: tCommon("common.confirm"),
126128
126449
  cancelText: tCommon("common.cancel"),
126129
126450
  onOk: async () => {
126130
- const result = await cloudContext.retryTask(id);
126451
+ const result = await cloudContext.retryTask(id, selectedModel);
126131
126452
  if (result.success && result.data) {
126132
126453
  message2.success(t2("retry_success"));
126133
126454
  navigate(`/list/cloud-preview/${result.data.task_id}`);
@@ -126139,28 +126460,55 @@ const CloudPreview = () => {
126139
126460
  };
126140
126461
  const handleRetryPage = async () => {
126141
126462
  if (!id || !cloudContext || !currentPageData) return;
126142
- setRetrying(true);
126143
- try {
126144
- const result = await cloudContext.retryPage(id, currentPage);
126145
- if (result.success) {
126146
- message2.success(t2("page_retry_success"));
126147
- setPages((prev2) => {
126148
- const idx = prev2.findIndex((p2) => p2.page === currentPage);
126149
- if (idx >= 0) {
126150
- const updated = [...prev2];
126151
- updated[idx] = { ...updated[idx], status: 1 };
126152
- return updated;
126463
+ const options = CLOUD_MODEL_TIERS.map((tier) => ({
126464
+ value: tier,
126465
+ label: t2(`retry_model.${tier}`)
126466
+ }));
126467
+ const taskTier = task?.model_tier || "lite";
126468
+ let selectedModel = CLOUD_MODEL_TIERS.includes(taskTier) ? taskTier : "lite";
126469
+ modal.confirm({
126470
+ title: t2("confirm_page_retry_with_model"),
126471
+ content: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: { marginTop: 8 }, children: [
126472
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { marginBottom: 8 }, children: t2("select_retry_model") }),
126473
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
126474
+ Select,
126475
+ {
126476
+ style: { width: "100%" },
126477
+ options,
126478
+ defaultValue: selectedModel,
126479
+ onChange: (value) => {
126480
+ selectedModel = value;
126481
+ }
126153
126482
  }
126154
- return prev2;
126155
- });
126156
- } else {
126157
- message2.error(result.error || t2("page_retry_failed"));
126483
+ )
126484
+ ] }),
126485
+ okText: tCommon("common.confirm"),
126486
+ cancelText: tCommon("common.cancel"),
126487
+ onOk: async () => {
126488
+ setRetrying(true);
126489
+ try {
126490
+ const result = await cloudContext.retryPage(id, currentPage, selectedModel);
126491
+ if (result.success) {
126492
+ message2.success(t2("page_retry_success"));
126493
+ setPages((prev2) => {
126494
+ const idx = prev2.findIndex((p2) => p2.page === currentPage);
126495
+ if (idx >= 0) {
126496
+ const updated = [...prev2];
126497
+ updated[idx] = { ...updated[idx], status: 1 };
126498
+ return updated;
126499
+ }
126500
+ return prev2;
126501
+ });
126502
+ } else {
126503
+ message2.error(result.error || t2("page_retry_failed"));
126504
+ }
126505
+ } catch {
126506
+ message2.error(t2("page_retry_failed"));
126507
+ } finally {
126508
+ setRetrying(false);
126509
+ }
126158
126510
  }
126159
- } catch {
126160
- message2.error(t2("page_retry_failed"));
126161
- } finally {
126162
- setRetrying(false);
126163
- }
126511
+ });
126164
126512
  };
126165
126513
  const handleRetryFailed = async () => {
126166
126514
  if (!id || !cloudContext) return;
@@ -126202,6 +126550,43 @@ const CloudPreview = () => {
126202
126550
  }
126203
126551
  });
126204
126552
  };
126553
+ const handleCopyMarkdown = async () => {
126554
+ const markdown2 = currentPageData?.markdown || "";
126555
+ if (!markdown2) return;
126556
+ try {
126557
+ await navigator.clipboard.writeText(markdown2);
126558
+ message2.success(t2("copy_markdown_success"));
126559
+ } catch {
126560
+ message2.error(t2("copy_markdown_failed"));
126561
+ }
126562
+ };
126563
+ const handleCopyImage = async () => {
126564
+ if (!imageUrl) return;
126565
+ try {
126566
+ let sourceForClipboard = imageUrl;
126567
+ const isRemoteImage = imageUrl.startsWith("http://") || imageUrl.startsWith("https://");
126568
+ if (isRemoteImage) {
126569
+ if (!id || !currentPageData) {
126570
+ message2.error(t2("copy_image_failed"));
126571
+ return;
126572
+ }
126573
+ const proxyImageResult = await window.api.cloud.getPageImage({ taskId: id, pageNumber: currentPageData.page });
126574
+ if (!proxyImageResult.success || !proxyImageResult.data?.dataUrl) {
126575
+ message2.error(proxyImageResult.error || t2("copy_image_failed"));
126576
+ return;
126577
+ }
126578
+ sourceForClipboard = proxyImageResult.data.dataUrl;
126579
+ }
126580
+ const result = await window.api.file.copyImageToClipboard(sourceForClipboard);
126581
+ if (result.success) {
126582
+ message2.success(t2("copy_image_success"));
126583
+ } else {
126584
+ message2.error(result.error || t2("copy_image_failed"));
126585
+ }
126586
+ } catch {
126587
+ message2.error(t2("copy_image_failed"));
126588
+ }
126589
+ };
126205
126590
  const handleDelete2 = async () => {
126206
126591
  if (!id || !cloudContext) return;
126207
126592
  modal.confirm({
@@ -126228,25 +126613,25 @@ const CloudPreview = () => {
126228
126613
  switch (status2) {
126229
126614
  case 0:
126230
126615
  return {
126231
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$o, { style: { ...iconStyle, color: "#faad14" } }),
126616
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$p, { style: { ...iconStyle, color: "#faad14" } }),
126232
126617
  text: t2("page_status.pending"),
126233
126618
  color: "#faad14"
126234
126619
  };
126235
126620
  case 1:
126236
126621
  return {
126237
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$_, { style: { ...iconStyle, color: "#1890ff" }, spin: true }),
126622
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$$, { style: { ...iconStyle, color: "#1890ff" }, spin: true }),
126238
126623
  text: t2("page_status.processing"),
126239
126624
  color: "#1890ff"
126240
126625
  };
126241
126626
  case 2:
126242
126627
  return {
126243
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$13, { style: { ...iconStyle, color: "#52c41a" } }),
126628
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$14, { style: { ...iconStyle, color: "#52c41a" } }),
126244
126629
  text: t2("page_status.completed"),
126245
126630
  color: "#52c41a"
126246
126631
  };
126247
126632
  case 3:
126248
126633
  return {
126249
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$12, { style: { ...iconStyle, color: "#ff4d4f" } }),
126634
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$13, { style: { ...iconStyle, color: "#ff4d4f" } }),
126250
126635
  text: t2("page_status.failed"),
126251
126636
  color: "#ff4d4f"
126252
126637
  };
@@ -126257,6 +126642,21 @@ const CloudPreview = () => {
126257
126642
  const pageStatusInfo = getPageStatusInfo();
126258
126643
  const totalPages = task?.page_count || 0;
126259
126644
  const progress = task ? task.status === 6 ? 100 : totalPages > 0 ? Math.round((task.pages_completed || 0) / totalPages * 100) : 0 : 0;
126645
+ const canDownload = task?.status === 6 && !downloading;
126646
+ const downloadMenuItems = [
126647
+ {
126648
+ key: "download_md",
126649
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$j, {}),
126650
+ label: t2("download_md"),
126651
+ onClick: handleDownloadMarkdown
126652
+ },
126653
+ {
126654
+ key: "download_pdf",
126655
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$i, {}),
126656
+ label: t2("download_pdf"),
126657
+ onClick: handleDownloadPdf
126658
+ }
126659
+ ];
126260
126660
  return /* @__PURE__ */ jsxRuntimeExports.jsx(App$1, { children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
126261
126661
  "div",
126262
126662
  {
@@ -126273,7 +126673,7 @@ const CloudPreview = () => {
126273
126673
  Button$1,
126274
126674
  {
126275
126675
  onClick: () => navigate("/list"),
126276
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$r, {}),
126676
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$s, {}),
126277
126677
  color: "default",
126278
126678
  variant: "filled",
126279
126679
  children: t2("back")
@@ -126300,14 +126700,24 @@ const CloudPreview = () => {
126300
126700
  ] }),
126301
126701
  /* @__PURE__ */ jsxRuntimeExports.jsxs(Space, { children: [
126302
126702
  /* @__PURE__ */ jsxRuntimeExports.jsx(
126303
- Button$1,
126703
+ Dropdown,
126304
126704
  {
126305
- color: "primary",
126306
- icon: downloading ? /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$_, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$i, {}),
126307
- variant: "filled",
126308
- onClick: handleDownloadResult,
126309
- disabled: task?.status !== 6 || downloading,
126310
- children: t2("download_md")
126705
+ menu: { items: downloadMenuItems },
126706
+ trigger: ["click"],
126707
+ disabled: !canDownload,
126708
+ children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
126709
+ Button$1,
126710
+ {
126711
+ color: "primary",
126712
+ icon: downloading ? /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$$, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$u, {}),
126713
+ variant: "filled",
126714
+ disabled: !canDownload,
126715
+ children: [
126716
+ t2("download"),
126717
+ /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$Y, {})
126718
+ ]
126719
+ }
126720
+ )
126311
126721
  }
126312
126722
  ),
126313
126723
  (() => {
@@ -126317,16 +126727,16 @@ const CloudPreview = () => {
126317
126727
  if (status2 === 8 && failedCount > 0) {
126318
126728
  menuItems.push({
126319
126729
  key: "retry_failed",
126320
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$L, {}),
126730
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$M, {}),
126321
126731
  label: t2("retry_failed_pages"),
126322
126732
  onClick: handleRetryFailed,
126323
126733
  disabled: retryingFailed
126324
126734
  });
126325
126735
  }
126326
- if (status2 === 0) {
126736
+ if (status2 === 0 || status2 === 6) {
126327
126737
  menuItems.push({
126328
126738
  key: "retry_all",
126329
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$L, {}),
126739
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$M, {}),
126330
126740
  label: t2("retry_all"),
126331
126741
  onClick: handleRetryTask
126332
126742
  });
@@ -126345,7 +126755,7 @@ const CloudPreview = () => {
126345
126755
  if (status2 === 0 || status2 !== void 0 && status2 >= 6) {
126346
126756
  menuItems.push({
126347
126757
  key: "delete",
126348
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$A, {}),
126758
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$B, {}),
126349
126759
  label: t2("delete_task"),
126350
126760
  danger: true,
126351
126761
  onClick: handleDelete2
@@ -126358,7 +126768,7 @@ const CloudPreview = () => {
126358
126768
  if (hasPrimaryAction) {
126359
126769
  const primaryLabel = hasRetryFailed ? t2("retry_failed_pages") : t2("retry_all");
126360
126770
  const primaryAction = hasRetryFailed ? handleRetryFailed : handleRetryTask;
126361
- const primaryIcon = hasRetryFailed && retryingFailed ? /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$_, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$L, {});
126771
+ const primaryIcon = hasRetryFailed && retryingFailed ? /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$$, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$M, {});
126362
126772
  const filteredMenuItems = menuItems.filter((item) => {
126363
126773
  if (!item || item.type === "divider") return true;
126364
126774
  if (hasRetryFailed && item.key === "retry_failed") return false;
@@ -126373,7 +126783,7 @@ const CloudPreview = () => {
126373
126783
  {
126374
126784
  menu: { items: filteredMenuItems },
126375
126785
  onClick: primaryAction,
126376
- icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$X, {}),
126786
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$Y, {}),
126377
126787
  disabled: hasRetryFailed && retryingFailed,
126378
126788
  children: /* @__PURE__ */ jsxRuntimeExports.jsxs(Space, { children: [
126379
126789
  primaryIcon,
@@ -126384,7 +126794,7 @@ const CloudPreview = () => {
126384
126794
  } else {
126385
126795
  return /* @__PURE__ */ jsxRuntimeExports.jsx(Dropdown, { menu: { items: menuItems }, trigger: ["click"], children: /* @__PURE__ */ jsxRuntimeExports.jsxs(Button$1, { children: [
126386
126796
  t2("more_actions"),
126387
- /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$X, {})
126797
+ /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$Y, {})
126388
126798
  ] }) });
126389
126799
  }
126390
126800
  })()
@@ -126414,7 +126824,7 @@ const CloudPreview = () => {
126414
126824
  padding: "12px"
126415
126825
  },
126416
126826
  children: [
126417
- /* @__PURE__ */ jsxRuntimeExports.jsx(
126827
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(
126418
126828
  "div",
126419
126829
  {
126420
126830
  style: {
@@ -126422,22 +126832,37 @@ const CloudPreview = () => {
126422
126832
  display: "flex",
126423
126833
  justifyContent: "center",
126424
126834
  alignItems: "center",
126425
- overflow: "hidden"
126835
+ overflow: "hidden",
126836
+ position: "relative"
126426
126837
  },
126427
- children: loading || imageLoading ? /* @__PURE__ */ jsxRuntimeExports.jsx(Spin, { size: "large" }) : !currentPageData ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { textAlign: "center", color: "#999" }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Text, { type: "secondary", children: t2("no_page_data") }) }) : imageError || !imageUrl ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { textAlign: "center", color: "#999" }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Text, { type: "secondary", children: t2("page_label", { page: currentPage, total: totalPages }) }) }) : /* @__PURE__ */ jsxRuntimeExports.jsx(
126428
- "img",
126429
- {
126430
- src: imageUrl,
126431
- alt: `Page ${currentPage}`,
126432
- draggable: false,
126433
- style: {
126434
- maxWidth: "100%",
126435
- maxHeight: "100%",
126436
- objectFit: "contain"
126437
- },
126438
- onError: () => setImageError(true)
126439
- }
126440
- )
126838
+ children: [
126839
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("copy_image_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
126840
+ Button$1,
126841
+ {
126842
+ className: "preview-floating-action",
126843
+ "aria-label": t2("copy_image"),
126844
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$y, {}),
126845
+ shape: "circle",
126846
+ size: "small",
126847
+ onClick: handleCopyImage,
126848
+ disabled: loading || imageLoading || imageError || !imageUrl
126849
+ }
126850
+ ) }),
126851
+ loading || imageLoading ? /* @__PURE__ */ jsxRuntimeExports.jsx(Spin, { size: "large" }) : !currentPageData ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { textAlign: "center", color: "#999" }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Text, { type: "secondary", children: t2("no_page_data") }) }) : imageError || !imageUrl ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { textAlign: "center", color: "#999" }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Text, { type: "secondary", children: t2("page_label", { page: currentPage, total: totalPages }) }) }) : /* @__PURE__ */ jsxRuntimeExports.jsx(
126852
+ "img",
126853
+ {
126854
+ src: imageUrl,
126855
+ alt: `Page ${currentPage}`,
126856
+ draggable: false,
126857
+ style: {
126858
+ maxWidth: "100%",
126859
+ maxHeight: "100%",
126860
+ objectFit: "contain"
126861
+ },
126862
+ onError: () => setImageError(true)
126863
+ }
126864
+ )
126865
+ ]
126441
126866
  }
126442
126867
  ),
126443
126868
  !loading && currentPageData && /* @__PURE__ */ jsxRuntimeExports.jsxs(
@@ -126461,7 +126886,7 @@ const CloudPreview = () => {
126461
126886
  {
126462
126887
  type: "text",
126463
126888
  size: "small",
126464
- icon: retrying ? /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$_, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$L, {}),
126889
+ icon: retrying ? /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$$, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$M, {}),
126465
126890
  onClick: handleRetryPage,
126466
126891
  disabled: retrying || !currentPageData || currentPageData.status === 1,
126467
126892
  style: { color: "#666" },
@@ -126474,7 +126899,21 @@ const CloudPreview = () => {
126474
126899
  ]
126475
126900
  }
126476
126901
  ),
126477
- /* @__PURE__ */ jsxRuntimeExports.jsx(Splitter.Panel, { style: { overflow: "auto", minWidth: 0 }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(MarkdownPreview, { content: currentPageData?.markdown || "" }) })
126902
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Splitter.Panel, { style: { overflow: "hidden", minWidth: 0 }, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: { position: "relative", height: "100%" }, children: [
126903
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("copy_markdown_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
126904
+ Button$1,
126905
+ {
126906
+ className: "preview-floating-action",
126907
+ "aria-label": t2("copy_markdown"),
126908
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$y, {}),
126909
+ shape: "circle",
126910
+ size: "small",
126911
+ onClick: handleCopyMarkdown,
126912
+ disabled: !currentPageData?.markdown
126913
+ }
126914
+ ) }),
126915
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MarkdownPreview, { content: currentPageData?.markdown || "" })
126916
+ ] }) })
126478
126917
  ]
126479
126918
  }
126480
126919
  ),
@@ -128465,6 +128904,7 @@ const status$a = { "pending": "Pending", "initializing": "Initializing", "proces
128465
128904
  const actions$g = { "view": "View", "cancel": "Cancel", "retry": "Retry", "delete": "Delete" };
128466
128905
  const confirmations$b = { "delete_title": "Confirm Delete", "delete_content": "Are you sure you want to delete this task? This action cannot be undone.", "cancel_title": "Confirm {{action}}", "cancel_content": "Are you sure you want to {{action}} this task?", "ok": "Confirm", "cancel": "Cancel" };
128467
128906
  const messages$h = { "fetch_failed": "Failed to fetch task list", "delete_success": "Deleted successfully", "delete_failed": "Failed to delete task", "action_success": "{{action}} successful", "action_failed": "{{action}} failed" };
128907
+ const retry$1 = { "confirm_with_model": "Retry Task (Choose Model)", "confirm_cloud_with_model": "Retry Cloud Task (Choose Model)", "select_model": "Select retry model", "load_models_failed": "Failed to load model list", "no_models_available": "No available models. Please configure models in settings first.", "model": { "lite": "Fit Lite", "pro": "Fit Pro", "ultra": "Fit Ultra" } };
128468
128908
  const task_type$5 = { "cloud": "Cloud Task", "local": "Local Task" };
128469
128909
  const enList = {
128470
128910
  columns: columns$5,
@@ -128472,6 +128912,7 @@ const enList = {
128472
128912
  actions: actions$g,
128473
128913
  confirmations: confirmations$b,
128474
128914
  messages: messages$h,
128915
+ retry: retry$1,
128475
128916
  task_type: task_type$5
128476
128917
  };
128477
128918
  const dragger$5 = { "text": "Drag files here or click button below to select files", "hint": "Supports single or batch upload of PDF/JPG/PNG files", "hint_local": "Supports PDF and image files. Sign in to enjoy free conversion and support for more file types", "hint_logged_in_non_cloud": "Currently only PDF or image files are supported. Select a Markdown.Fit cloud model to enable Office files", "hint_cloud_logged_in": "Supports PDF, image, and Office files (Word/Excel/PPT)", "login_hint": "Sign in to enjoy free conversion and support for more file types", "button": "Select Files" };
@@ -128503,7 +128944,7 @@ const enProvider = {
128503
128944
  const tabs$5 = { "account": "Account", "model_service": "Model Service", "about": "About Us" };
128504
128945
  const about$5 = { "subtitle": "A high-quality PDF to Markdown converter powered by large vision models", "buttons": { "website": "Official Website", "license": "License", "feedback": "Feedback", "contact": "Contact Email" } };
128505
128946
  const update$5 = { "check_for_updates": "Check for Updates", "checking": "Checking for updates...", "available": "Update available", "downloading": "Downloading update...", "ready": "Update ready to install", "restart_to_update": "Restart to Update", "up_to_date": "You are up to date", "error": "Update check failed", "retry": "Retry" };
128506
- const preview$5 = { "back": "Back", "download": "Download .md", "delete": "Delete", "cancel": "Cancel", "retry": "Retry", "retry_failed": "Retry Failed", "retry_all": "Retry All", "more_actions": "More Actions", "regenerate": "Regenerate", "regenerate_tooltip": "Regenerate current page", "confirm_delete": "Confirm Delete", "confirm_delete_content": "Are you sure you want to delete this task? This action cannot be undone.", "delete_success": "Deleted successfully", "delete_failed": "Delete failed", "confirm_cancel": "Confirm Cancel", "confirm_cancel_content": "Are you sure you want to cancel this task?", "cancel_success": "Cancelled successfully", "cancel_failed": "Cancel failed", "confirm_retry": "Confirm Retry", "confirm_retry_content": "Are you sure you want to retry this task?", "confirm_retry_failed": "Confirm Retry Failed Pages", "confirm_retry_failed_content": "Are you sure you want to retry all failed pages?", "retry_success": "Task has been added to retry queue", "retry_failed_success": "{{count}} failed pages have been added to retry queue", "page_retry_success": "Page has been added to retry queue", "page_retry_failed": "Retry failed", "fetch_task_failed": "Failed to fetch task info", "fetch_page_failed": "Failed to fetch page details", "task_deleted": "Task has been deleted", "task_not_started": "Task has not started processing, cannot preview", "download_success": "Download successful", "download_failed": "Download failed", "image_load_failed": "Image failed to load or does not exist", "status": { "failed": "Conversion failed", "pending": "Pending", "processing": "Converting", "completed": "Completed", "retrying": "Retrying" } };
128947
+ const preview$5 = { "back": "Back", "download": "Download .md", "delete": "Delete", "cancel": "Cancel", "retry": "Retry", "retry_failed": "Retry Failed", "retry_all": "Retry All", "more_actions": "More Actions", "regenerate": "Regenerate", "regenerate_tooltip": "Regenerate current page", "copy_markdown": "Copy Markdown", "copy_markdown_tooltip": "Copy current page markdown", "copy_markdown_success": "Markdown copied", "copy_markdown_failed": "Failed to copy markdown", "copy_image": "Copy Image", "copy_image_tooltip": "Copy current page image", "copy_image_success": "Image copied", "copy_image_failed": "Failed to copy image", "confirm_delete": "Confirm Delete", "confirm_delete_content": "Are you sure you want to delete this task? This action cannot be undone.", "delete_success": "Deleted successfully", "delete_failed": "Delete failed", "confirm_cancel": "Confirm Cancel", "confirm_cancel_content": "Are you sure you want to cancel this task?", "cancel_success": "Cancelled successfully", "cancel_failed": "Cancel failed", "confirm_retry": "Confirm Retry", "confirm_retry_content": "Are you sure you want to retry this task?", "confirm_retry_with_model": "Retry Task (Choose Model)", "confirm_page_retry_with_model": "Retry Current Page (Choose Model)", "select_retry_model": "Select retry model", "confirm_retry_failed": "Confirm Retry Failed Pages", "confirm_retry_failed_content": "Are you sure you want to retry all failed pages?", "retry_success": "Task has been added to retry queue", "retry_failed_success": "{{count}} failed pages have been added to retry queue", "page_retry_success": "Page has been added to retry queue", "page_retry_failed": "Retry failed", "load_models_failed": "Failed to load model list", "no_models_available": "No available models. Please configure models in settings first.", "fetch_task_failed": "Failed to fetch task info", "fetch_page_failed": "Failed to fetch page details", "task_deleted": "Task has been deleted", "task_not_started": "Task has not started processing, cannot preview", "download_success": "Download successful", "download_failed": "Download failed", "image_load_failed": "Image failed to load or does not exist", "status": { "failed": "Conversion failed", "pending": "Pending", "processing": "Converting", "completed": "Completed", "retrying": "Retrying" } };
128507
128948
  const enSettings = {
128508
128949
  tabs: tabs$5,
128509
128950
  about: about$5,
@@ -128534,6 +128975,7 @@ const enAccount = {
128534
128975
  };
128535
128976
  const back$5 = "Back";
128536
128977
  const fetch_task_failed$5 = "Failed to fetch task";
128978
+ const download$5 = "Download";
128537
128979
  const download_md$5 = "Download MD";
128538
128980
  const download_pdf$5 = "Download PDF";
128539
128981
  const download_success$5 = "Downloaded successfully";
@@ -128545,6 +128987,9 @@ const cancel_failed$5 = "Failed to cancel task";
128545
128987
  const cancel_task$5 = "Cancel";
128546
128988
  const confirm_retry$5 = "Retry Task";
128547
128989
  const confirm_retry_content$5 = "This will create a new task. Are you sure?";
128990
+ const confirm_retry_with_model$1 = "Retry Task (Choose Model)";
128991
+ const confirm_page_retry_with_model$1 = "Retry Current Page (Choose Model)";
128992
+ const select_retry_model$1 = "Select retry model";
128548
128993
  const retry_success$5 = "Retry started";
128549
128994
  const retry_failed$5 = "Retry failed";
128550
128995
  const retry_all$5 = "Retry All";
@@ -128564,10 +129009,20 @@ const no_page_data$5 = "No page data available";
128564
129009
  const page_label$5 = "Page {{page}} / {{total}}";
128565
129010
  const regenerate$5 = "Regenerate";
128566
129011
  const regenerate_tooltip$5 = "Retry conversion for this page";
129012
+ const copy_markdown$5 = "Copy Markdown";
129013
+ const copy_markdown_tooltip$5 = "Copy current page markdown";
129014
+ const copy_markdown_success$5 = "Markdown copied";
129015
+ const copy_markdown_failed$5 = "Failed to copy markdown";
129016
+ const copy_image$5 = "Copy Image";
129017
+ const copy_image_tooltip$5 = "Copy current page image";
129018
+ const copy_image_success$5 = "Image copied";
129019
+ const copy_image_failed$5 = "Failed to copy image";
129020
+ const retry_model$1 = { "lite": "Fit Lite (~10 credits/page)", "pro": "Fit Pro (~20 credits/page)", "ultra": "Fit Ultra (~60 credits/page)" };
128567
129021
  const page_status$5 = { "pending": "Pending", "processing": "Processing", "completed": "Completed", "failed": "Failed" };
128568
129022
  const enCloudPreview = {
128569
129023
  back: back$5,
128570
129024
  fetch_task_failed: fetch_task_failed$5,
129025
+ download: download$5,
128571
129026
  download_md: download_md$5,
128572
129027
  download_pdf: download_pdf$5,
128573
129028
  download_success: download_success$5,
@@ -128579,6 +129034,9 @@ const enCloudPreview = {
128579
129034
  cancel_task: cancel_task$5,
128580
129035
  confirm_retry: confirm_retry$5,
128581
129036
  confirm_retry_content: confirm_retry_content$5,
129037
+ confirm_retry_with_model: confirm_retry_with_model$1,
129038
+ confirm_page_retry_with_model: confirm_page_retry_with_model$1,
129039
+ select_retry_model: select_retry_model$1,
128582
129040
  retry_success: retry_success$5,
128583
129041
  retry_failed: retry_failed$5,
128584
129042
  retry_all: retry_all$5,
@@ -128598,6 +129056,15 @@ const enCloudPreview = {
128598
129056
  page_label: page_label$5,
128599
129057
  regenerate: regenerate$5,
128600
129058
  regenerate_tooltip: regenerate_tooltip$5,
129059
+ copy_markdown: copy_markdown$5,
129060
+ copy_markdown_tooltip: copy_markdown_tooltip$5,
129061
+ copy_markdown_success: copy_markdown_success$5,
129062
+ copy_markdown_failed: copy_markdown_failed$5,
129063
+ copy_image: copy_image$5,
129064
+ copy_image_tooltip: copy_image_tooltip$5,
129065
+ copy_image_success: copy_image_success$5,
129066
+ copy_image_failed: copy_image_failed$5,
129067
+ retry_model: retry_model$1,
128601
129068
  page_status: page_status$5
128602
129069
  };
128603
129070
  const navigation$4 = { "home": "主页", "list": "列表", "settings": "设置" };
@@ -128625,6 +129092,7 @@ const status$8 = { "pending": "待处理", "initializing": "初始化", "process
128625
129092
  const actions$d = { "view": "查看", "cancel": "取消", "retry": "重试", "delete": "删除" };
128626
129093
  const confirmations$9 = { "delete_title": "确认删除", "delete_content": "确定要删除这个任务吗?此操作不可逆。", "cancel_title": "确认{{action}}", "cancel_content": "确定要{{action}}这个任务吗?", "ok": "确定", "cancel": "取消" };
128627
129094
  const messages$e = { "fetch_failed": "获取任务列表失败", "delete_success": "删除成功", "delete_failed": "删除任务失败", "action_success": "{{action}}成功", "action_failed": "{{action}}失败" };
129095
+ const retry = { "confirm_with_model": "重试任务(可切换模型)", "confirm_cloud_with_model": "重试云端任务(可切换模型)", "select_model": "选择重试模型", "load_models_failed": "加载模型列表失败", "no_models_available": "暂无可用模型,请先在设置中配置模型", "model": { "lite": "Fit Lite", "pro": "Fit Pro", "ultra": "Fit Ultra" } };
128628
129096
  const task_type$4 = { "cloud": "云端任务", "local": "本地任务" };
128629
129097
  const zhList = {
128630
129098
  columns: columns$4,
@@ -128632,6 +129100,7 @@ const zhList = {
128632
129100
  actions: actions$d,
128633
129101
  confirmations: confirmations$9,
128634
129102
  messages: messages$e,
129103
+ retry,
128635
129104
  task_type: task_type$4
128636
129105
  };
128637
129106
  const dragger$4 = { "text": "拖拽文件到此处或点击下方按钮选择文件", "hint": "支持单个或批量上传 PDF/JPG/PNG 文件", "hint_local": "支持 PDF 及图片文件。登录后可享免费转换并且支持更多文件类型", "hint_logged_in_non_cloud": "当前仅支持PDF或图片文件,选择Markdown.FIt的云端模型可支持Office类文件", "hint_cloud_logged_in": "支持 PDF、图片及 Office 文件 (Word/Excel/PPT)", "login_hint": "登录后可享免费转换并且支持更多文件类型", "button": "选择文件" };
@@ -128663,7 +129132,7 @@ const zhProvider = {
128663
129132
  const tabs$4 = { "account": "账户", "model_service": "模型服务", "about": "关于我们" };
128664
129133
  const about$4 = { "subtitle": "一款基于大模型视觉识别的高质量PDF转Markdown工具", "buttons": { "website": "官方网址", "license": "许可协议", "feedback": "反馈意见", "contact": "联系邮件" } };
128665
129134
  const update$4 = { "check_for_updates": "检查更新", "checking": "正在检查更新...", "available": "发现新版本", "downloading": "正在下载更新...", "ready": "更新已就绪", "restart_to_update": "重启并更新", "up_to_date": "已是最新版本", "error": "检查更新失败", "retry": "重试" };
128666
- const preview$4 = { "back": "返回", "download": "下载 .md", "delete": "删除", "cancel": "取消", "retry": "重试", "retry_failed": "重试失败页", "retry_all": "全部重试", "more_actions": "更多操作", "regenerate": "重新生成", "regenerate_tooltip": "重新生成当前页", "confirm_delete": "确认删除", "confirm_delete_content": "确定要删除此任务吗?此操作不可恢复。", "delete_success": "删除成功", "delete_failed": "删除失败", "confirm_cancel": "确认取消", "confirm_cancel_content": "确定要取消此任务吗?", "cancel_success": "取消成功", "cancel_failed": "取消失败", "confirm_retry": "确认重试", "confirm_retry_content": "确定要重试此任务吗?", "confirm_retry_failed": "确认重试失败页", "confirm_retry_failed_content": "确定要重试所有失败的页面吗?", "retry_success": "任务已加入重试队列", "retry_failed_success": "{{count}} 个失败页面已加入重试队列", "page_retry_success": "页面已加入重试队列", "page_retry_failed": "重试失败", "fetch_task_failed": "获取任务信息失败", "fetch_page_failed": "获取页面详情失败", "task_deleted": "任务已被删除", "task_not_started": "任务尚未开始处理,无法预览", "download_success": "下载成功", "download_failed": "下载失败", "image_load_failed": "图片加载失败或不存在", "status": { "failed": "转换失败", "pending": "等待转换", "processing": "转换中", "completed": "转换完成", "retrying": "重试中" } };
129135
+ const preview$4 = { "back": "返回", "download": "下载 .md", "delete": "删除", "cancel": "取消", "retry": "重试", "retry_failed": "重试失败页", "retry_all": "全部重试", "more_actions": "更多操作", "regenerate": "重新生成", "regenerate_tooltip": "重新生成当前页", "copy_markdown": "复制 Markdown", "copy_markdown_tooltip": "复制当前页 Markdown", "copy_markdown_success": "Markdown 已复制", "copy_markdown_failed": "复制 Markdown 失败", "copy_image": "复制图片", "copy_image_tooltip": "复制当前页图片", "copy_image_success": "图片已复制", "copy_image_failed": "复制图片失败", "confirm_delete": "确认删除", "confirm_delete_content": "确定要删除此任务吗?此操作不可恢复。", "delete_success": "删除成功", "delete_failed": "删除失败", "confirm_cancel": "确认取消", "confirm_cancel_content": "确定要取消此任务吗?", "cancel_success": "取消成功", "cancel_failed": "取消失败", "confirm_retry": "确认重试", "confirm_retry_content": "确定要重试此任务吗?", "confirm_retry_with_model": "重试任务(可切换模型)", "confirm_page_retry_with_model": "重试当前页(可切换模型)", "select_retry_model": "选择重试模型", "confirm_retry_failed": "确认重试失败页", "confirm_retry_failed_content": "确定要重试所有失败的页面吗?", "retry_success": "任务已加入重试队列", "retry_failed_success": "{{count}} 个失败页面已加入重试队列", "page_retry_success": "页面已加入重试队列", "page_retry_failed": "重试失败", "load_models_failed": "加载模型列表失败", "no_models_available": "暂无可用模型,请先在设置中配置模型", "fetch_task_failed": "获取任务信息失败", "fetch_page_failed": "获取页面详情失败", "task_deleted": "任务已被删除", "task_not_started": "任务尚未开始处理,无法预览", "download_success": "下载成功", "download_failed": "下载失败", "image_load_failed": "图片加载失败或不存在", "status": { "failed": "转换失败", "pending": "等待转换", "processing": "转换中", "completed": "转换完成", "retrying": "重试中" } };
128667
129136
  const zhSettings = {
128668
129137
  tabs: tabs$4,
128669
129138
  about: about$4,
@@ -128694,6 +129163,7 @@ const zhAccount = {
128694
129163
  };
128695
129164
  const back$4 = "返回";
128696
129165
  const fetch_task_failed$4 = "获取任务失败";
129166
+ const download$4 = "下载";
128697
129167
  const download_md$4 = "下载 MD";
128698
129168
  const download_pdf$4 = "下载 PDF";
128699
129169
  const download_success$4 = "下载成功";
@@ -128705,6 +129175,9 @@ const cancel_failed$4 = "取消任务失败";
128705
129175
  const cancel_task$4 = "取消";
128706
129176
  const confirm_retry$4 = "重试任务";
128707
129177
  const confirm_retry_content$4 = "这将创建一个新任务,确定继续吗?";
129178
+ const confirm_retry_with_model = "重试任务(可切换模型)";
129179
+ const confirm_page_retry_with_model = "重试当前页(可切换模型)";
129180
+ const select_retry_model = "选择重试模型";
128708
129181
  const retry_success$4 = "重试已开始";
128709
129182
  const retry_failed$4 = "重试失败";
128710
129183
  const retry_all$4 = "全部重试";
@@ -128724,10 +129197,20 @@ const no_page_data$4 = "暂无页面数据";
128724
129197
  const page_label$4 = "第 {{page}} 页 / 共 {{total}} 页";
128725
129198
  const regenerate$4 = "重新生成";
128726
129199
  const regenerate_tooltip$4 = "重试此页面的转换";
129200
+ const copy_markdown$4 = "复制 Markdown";
129201
+ const copy_markdown_tooltip$4 = "复制当前页 Markdown";
129202
+ const copy_markdown_success$4 = "Markdown 已复制";
129203
+ const copy_markdown_failed$4 = "复制 Markdown 失败";
129204
+ const copy_image$4 = "复制图片";
129205
+ const copy_image_tooltip$4 = "复制当前页图片";
129206
+ const copy_image_success$4 = "图片已复制";
129207
+ const copy_image_failed$4 = "复制图片失败";
129208
+ const retry_model = { "lite": "Fit Lite(约10积分/页)", "pro": "Fit Pro(约20积分/页)", "ultra": "Fit Ultra(约60积分/页)" };
128727
129209
  const page_status$4 = { "pending": "待处理", "processing": "处理中", "completed": "已完成", "failed": "失败" };
128728
129210
  const zhCloudPreview = {
128729
129211
  back: back$4,
128730
129212
  fetch_task_failed: fetch_task_failed$4,
129213
+ download: download$4,
128731
129214
  download_md: download_md$4,
128732
129215
  download_pdf: download_pdf$4,
128733
129216
  download_success: download_success$4,
@@ -128739,6 +129222,9 @@ const zhCloudPreview = {
128739
129222
  cancel_task: cancel_task$4,
128740
129223
  confirm_retry: confirm_retry$4,
128741
129224
  confirm_retry_content: confirm_retry_content$4,
129225
+ confirm_retry_with_model,
129226
+ confirm_page_retry_with_model,
129227
+ select_retry_model,
128742
129228
  retry_success: retry_success$4,
128743
129229
  retry_failed: retry_failed$4,
128744
129230
  retry_all: retry_all$4,
@@ -128758,6 +129244,15 @@ const zhCloudPreview = {
128758
129244
  page_label: page_label$4,
128759
129245
  regenerate: regenerate$4,
128760
129246
  regenerate_tooltip: regenerate_tooltip$4,
129247
+ copy_markdown: copy_markdown$4,
129248
+ copy_markdown_tooltip: copy_markdown_tooltip$4,
129249
+ copy_markdown_success: copy_markdown_success$4,
129250
+ copy_markdown_failed: copy_markdown_failed$4,
129251
+ copy_image: copy_image$4,
129252
+ copy_image_tooltip: copy_image_tooltip$4,
129253
+ copy_image_success: copy_image_success$4,
129254
+ copy_image_failed: copy_image_failed$4,
129255
+ retry_model,
128761
129256
  page_status: page_status$4
128762
129257
  };
128763
129258
  const navigation$3 = { "home": "ホーム", "list": "リスト", "settings": "設定" };
@@ -128823,7 +129318,7 @@ const jaProvider = {
128823
129318
  const tabs$3 = { "account": "アカウント", "model_service": "モデルサービス", "about": "概要" };
128824
129319
  const about$3 = { "version": "v1.0.6", "subtitle": "大規模ビジョンモデルを使用した高品質なPDFからMarkdownへのコンバーター", "buttons": { "website": "公式サイト", "license": "ライセンス", "feedback": "フィードバック", "contact": "連絡先メールアドレス" } };
128825
129320
  const update$3 = { "check_for_updates": "アップデートを確認", "checking": "アップデートを確認中...", "available": "アップデートが利用可能です", "downloading": "アップデートをダウンロード中...", "ready": "アップデートの準備完了", "restart_to_update": "再起動してアップデート", "up_to_date": "最新バージョンです", "error": "アップデートの確認に失敗しました", "retry": "再試行" };
128826
- const preview$3 = { "back": "戻る", "download": ".md形式でダウンロード", "delete": "削除", "cancel": "キャンセル", "retry": "再試行", "retry_failed": "失敗ページを再試行", "retry_all": "すべて再試行", "more_actions": "その他の操作", "regenerate": "再生成", "regenerate_tooltip": "現在のページを再生成", "confirm_delete": "削除の確認", "confirm_delete_content": "このタスクを削除してもよろしいですか?この操作は元に戻せません。", "delete_success": "削除しました", "delete_failed": "削除に失敗しました", "confirm_cancel": "キャンセルの確認", "confirm_cancel_content": "このタスクをキャンセルしてもよろしいですか?", "cancel_success": "キャンセルしました", "cancel_failed": "キャンセルに失敗しました", "confirm_retry": "再試行の確認", "confirm_retry_content": "このタスクを再試行してもよろしいですか?", "confirm_retry_failed": "失敗ページの再試行確認", "confirm_retry_failed_content": "すべての失敗したページを再試行してもよろしいですか?", "retry_success": "タスクが再試行キューに追加されました", "retry_failed_success": "{{count}}個の失敗ページが再試行キューに追加されました", "page_retry_success": "ページが再試行キューに追加されました", "page_retry_failed": "再試行に失敗しました", "fetch_task_failed": "タスク情報の取得に失敗しました", "fetch_page_failed": "ページ詳細の取得に失敗しました", "task_deleted": "タスクは削除されました", "task_not_started": "タスクはまだ処理されていません。プレビューできません", "download_success": "ダウンロードしました", "download_failed": "ダウンロードに失敗しました", "image_load_failed": "画像の読み込みに失敗したか、存在しません", "status": { "failed": "変換失敗", "pending": "変換待ち", "processing": "変換中", "completed": "変換完了", "retrying": "再試行中" } };
129321
+ const preview$3 = { "back": "戻る", "download": ".md形式でダウンロード", "delete": "削除", "cancel": "キャンセル", "retry": "再試行", "retry_failed": "失敗ページを再試行", "retry_all": "すべて再試行", "more_actions": "その他の操作", "regenerate": "再生成", "regenerate_tooltip": "現在のページを再生成", "copy_markdown": "Markdownをコピー", "copy_markdown_tooltip": "現在のページのMarkdownをコピー", "copy_markdown_success": "Markdownをコピーしました", "copy_markdown_failed": "Markdownのコピーに失敗しました", "copy_image": "画像をコピー", "copy_image_tooltip": "現在のページの画像をコピー", "copy_image_success": "画像をコピーしました", "copy_image_failed": "画像のコピーに失敗しました", "confirm_delete": "削除の確認", "confirm_delete_content": "このタスクを削除してもよろしいですか?この操作は元に戻せません。", "delete_success": "削除しました", "delete_failed": "削除に失敗しました", "confirm_cancel": "キャンセルの確認", "confirm_cancel_content": "このタスクをキャンセルしてもよろしいですか?", "cancel_success": "キャンセルしました", "cancel_failed": "キャンセルに失敗しました", "confirm_retry": "再試行の確認", "confirm_retry_content": "このタスクを再試行してもよろしいですか?", "confirm_retry_failed": "失敗ページの再試行確認", "confirm_retry_failed_content": "すべての失敗したページを再試行してもよろしいですか?", "retry_success": "タスクが再試行キューに追加されました", "retry_failed_success": "{{count}}個の失敗ページが再試行キューに追加されました", "page_retry_success": "ページが再試行キューに追加されました", "page_retry_failed": "再試行に失敗しました", "fetch_task_failed": "タスク情報の取得に失敗しました", "fetch_page_failed": "ページ詳細の取得に失敗しました", "task_deleted": "タスクは削除されました", "task_not_started": "タスクはまだ処理されていません。プレビューできません", "download_success": "ダウンロードしました", "download_failed": "ダウンロードに失敗しました", "image_load_failed": "画像の読み込みに失敗したか、存在しません", "status": { "failed": "変換失敗", "pending": "変換待ち", "processing": "変換中", "completed": "変換完了", "retrying": "再試行中" } };
128827
129322
  const jaSettings = {
128828
129323
  tabs: tabs$3,
128829
129324
  about: about$3,
@@ -128854,6 +129349,7 @@ const jaAccount = {
128854
129349
  };
128855
129350
  const back$3 = "戻る";
128856
129351
  const fetch_task_failed$3 = "タスクの取得に失敗しました";
129352
+ const download$3 = "ダウンロード";
128857
129353
  const download_md$3 = "MD ダウンロード";
128858
129354
  const download_pdf$3 = "PDF ダウンロード";
128859
129355
  const download_success$3 = "ダウンロード成功";
@@ -128884,10 +129380,19 @@ const no_page_data$3 = "ページデータがありません";
128884
129380
  const page_label$3 = "ページ {{page}} / {{total}}";
128885
129381
  const regenerate$3 = "再生成";
128886
129382
  const regenerate_tooltip$3 = "このページの変換を再試行";
129383
+ const copy_markdown$3 = "Markdownをコピー";
129384
+ const copy_markdown_tooltip$3 = "現在のページのMarkdownをコピー";
129385
+ const copy_markdown_success$3 = "Markdownをコピーしました";
129386
+ const copy_markdown_failed$3 = "Markdownのコピーに失敗しました";
129387
+ const copy_image$3 = "画像をコピー";
129388
+ const copy_image_tooltip$3 = "現在のページの画像をコピー";
129389
+ const copy_image_success$3 = "画像をコピーしました";
129390
+ const copy_image_failed$3 = "画像のコピーに失敗しました";
128887
129391
  const page_status$3 = { "pending": "待機中", "processing": "処理中", "completed": "完了", "failed": "失敗" };
128888
129392
  const jaCloudPreview = {
128889
129393
  back: back$3,
128890
129394
  fetch_task_failed: fetch_task_failed$3,
129395
+ download: download$3,
128891
129396
  download_md: download_md$3,
128892
129397
  download_pdf: download_pdf$3,
128893
129398
  download_success: download_success$3,
@@ -128918,6 +129423,14 @@ const jaCloudPreview = {
128918
129423
  page_label: page_label$3,
128919
129424
  regenerate: regenerate$3,
128920
129425
  regenerate_tooltip: regenerate_tooltip$3,
129426
+ copy_markdown: copy_markdown$3,
129427
+ copy_markdown_tooltip: copy_markdown_tooltip$3,
129428
+ copy_markdown_success: copy_markdown_success$3,
129429
+ copy_markdown_failed: copy_markdown_failed$3,
129430
+ copy_image: copy_image$3,
129431
+ copy_image_tooltip: copy_image_tooltip$3,
129432
+ copy_image_success: copy_image_success$3,
129433
+ copy_image_failed: copy_image_failed$3,
128921
129434
  page_status: page_status$3
128922
129435
  };
128923
129436
  const navigation$2 = { "home": "Главная", "list": "Список", "settings": "Настройки" };
@@ -128983,7 +129496,7 @@ const ruProvider = {
128983
129496
  const tabs$2 = { "account": "Аккаунт", "model_service": "Модельный сервис", "about": "О приложении" };
128984
129497
  const about$2 = { "version": "v1.0.6", "subtitle": "Высококачественный конвертер PDF в Markdown на основе больших визуальных моделей", "buttons": { "website": "Официальный сайт", "license": "Лицензия", "feedback": "Обратная связь", "contact": "Контактный email" } };
128985
129498
  const update$2 = { "check_for_updates": "Проверить обновления", "checking": "Проверка обновлений...", "available": "Доступно обновление", "downloading": "Загрузка обновления...", "ready": "Обновление готово к установке", "restart_to_update": "Перезапустить и обновить", "up_to_date": "У вас последняя версия", "error": "Ошибка проверки обновлений", "retry": "Повторить" };
128986
- const preview$2 = { "back": "Назад", "download": "Скачать .md", "delete": "Удалить", "cancel": "Отмена", "retry": "Повторить", "retry_failed": "Повторить неудачные", "retry_all": "Повторить все", "more_actions": "Действия", "regenerate": "Перегенерировать", "regenerate_tooltip": "Перегенерировать текущую страницу", "confirm_delete": "Подтвердите удаление", "confirm_delete_content": "Вы уверены, что хотите удалить эту задачу? Это действие необратимо.", "delete_success": "Успешно удалено", "delete_failed": "Ошибка удаления", "confirm_cancel": "Подтвердите отмену", "confirm_cancel_content": "Вы уверены, что хотите отменить эту задачу?", "cancel_success": "Успешно отменено", "cancel_failed": "Ошибка отмены", "confirm_retry": "Подтвердите повтор", "confirm_retry_content": "Вы уверены, что хотите повторить эту задачу?", "confirm_retry_failed": "Подтвердите повтор неудачных", "confirm_retry_failed_content": "Вы уверены, что хотите повторить все неудачные страницы?", "retry_success": "Задача добавлена в очередь на повтор", "retry_failed_success": "{{count}} неудачных страниц добавлено в очередь на повтор", "page_retry_success": "Страница добавлена в очередь на повтор", "page_retry_failed": "Ошибка повтора", "fetch_task_failed": "Не удалось получить информацию о задаче", "fetch_page_failed": "Не удалось получить детали страницы", "task_deleted": "Задача была удалена", "task_not_started": "Задача ещё не обработана, предпросмотр недоступен", "download_success": "Успешно скачано", "download_failed": "Ошибка скачивания", "image_load_failed": "Не удалось загрузить изображение или оно не существует", "status": { "failed": "Ошибка конвертации", "pending": "Ожидание", "processing": "Конвертация", "completed": "Завершено", "retrying": "Повторная попытка" } };
129499
+ const preview$2 = { "back": "Назад", "download": "Скачать .md", "delete": "Удалить", "cancel": "Отмена", "retry": "Повторить", "retry_failed": "Повторить неудачные", "retry_all": "Повторить все", "more_actions": "Действия", "regenerate": "Перегенерировать", "regenerate_tooltip": "Перегенерировать текущую страницу", "copy_markdown": "Копировать Markdown", "copy_markdown_tooltip": "Скопировать Markdown текущей страницы", "copy_markdown_success": "Markdown скопирован", "copy_markdown_failed": "Не удалось скопировать Markdown", "copy_image": "Копировать изображение", "copy_image_tooltip": "Скопировать изображение текущей страницы", "copy_image_success": "Изображение скопировано", "copy_image_failed": "Не удалось скопировать изображение", "confirm_delete": "Подтвердите удаление", "confirm_delete_content": "Вы уверены, что хотите удалить эту задачу? Это действие необратимо.", "delete_success": "Успешно удалено", "delete_failed": "Ошибка удаления", "confirm_cancel": "Подтвердите отмену", "confirm_cancel_content": "Вы уверены, что хотите отменить эту задачу?", "cancel_success": "Успешно отменено", "cancel_failed": "Ошибка отмены", "confirm_retry": "Подтвердите повтор", "confirm_retry_content": "Вы уверены, что хотите повторить эту задачу?", "confirm_retry_failed": "Подтвердите повтор неудачных", "confirm_retry_failed_content": "Вы уверены, что хотите повторить все неудачные страницы?", "retry_success": "Задача добавлена в очередь на повтор", "retry_failed_success": "{{count}} неудачных страниц добавлено в очередь на повтор", "page_retry_success": "Страница добавлена в очередь на повтор", "page_retry_failed": "Ошибка повтора", "fetch_task_failed": "Не удалось получить информацию о задаче", "fetch_page_failed": "Не удалось получить детали страницы", "task_deleted": "Задача была удалена", "task_not_started": "Задача ещё не обработана, предпросмотр недоступен", "download_success": "Успешно скачано", "download_failed": "Ошибка скачивания", "image_load_failed": "Не удалось загрузить изображение или оно не существует", "status": { "failed": "Ошибка конвертации", "pending": "Ожидание", "processing": "Конвертация", "completed": "Завершено", "retrying": "Повторная попытка" } };
128987
129500
  const ruSettings = {
128988
129501
  tabs: tabs$2,
128989
129502
  about: about$2,
@@ -129014,6 +129527,7 @@ const ruAccount = {
129014
129527
  };
129015
129528
  const back$2 = "Назад";
129016
129529
  const fetch_task_failed$2 = "Не удалось загрузить задачу";
129530
+ const download$2 = "Скачать";
129017
129531
  const download_md$2 = "Скачать MD";
129018
129532
  const download_pdf$2 = "Скачать PDF";
129019
129533
  const download_success$2 = "Загрузка завершена";
@@ -129044,10 +129558,19 @@ const no_page_data$2 = "Нет данных страницы";
129044
129558
  const page_label$2 = "Страница {{page}} / {{total}}";
129045
129559
  const regenerate$2 = "Перегенерировать";
129046
129560
  const regenerate_tooltip$2 = "Повторить конвертацию этой страницы";
129561
+ const copy_markdown$2 = "Копировать Markdown";
129562
+ const copy_markdown_tooltip$2 = "Скопировать Markdown текущей страницы";
129563
+ const copy_markdown_success$2 = "Markdown скопирован";
129564
+ const copy_markdown_failed$2 = "Не удалось скопировать Markdown";
129565
+ const copy_image$2 = "Копировать изображение";
129566
+ const copy_image_tooltip$2 = "Скопировать изображение текущей страницы";
129567
+ const copy_image_success$2 = "Изображение скопировано";
129568
+ const copy_image_failed$2 = "Не удалось скопировать изображение";
129047
129569
  const page_status$2 = { "pending": "В ожидании", "processing": "Обработка", "completed": "Завершено", "failed": "Ошибка" };
129048
129570
  const ruCloudPreview = {
129049
129571
  back: back$2,
129050
129572
  fetch_task_failed: fetch_task_failed$2,
129573
+ download: download$2,
129051
129574
  download_md: download_md$2,
129052
129575
  download_pdf: download_pdf$2,
129053
129576
  download_success: download_success$2,
@@ -129078,6 +129601,14 @@ const ruCloudPreview = {
129078
129601
  page_label: page_label$2,
129079
129602
  regenerate: regenerate$2,
129080
129603
  regenerate_tooltip: regenerate_tooltip$2,
129604
+ copy_markdown: copy_markdown$2,
129605
+ copy_markdown_tooltip: copy_markdown_tooltip$2,
129606
+ copy_markdown_success: copy_markdown_success$2,
129607
+ copy_markdown_failed: copy_markdown_failed$2,
129608
+ copy_image: copy_image$2,
129609
+ copy_image_tooltip: copy_image_tooltip$2,
129610
+ copy_image_success: copy_image_success$2,
129611
+ copy_image_failed: copy_image_failed$2,
129081
129612
  page_status: page_status$2
129082
129613
  };
129083
129614
  const navigation$1 = { "home": "خانه", "list": "لیست", "settings": "تنظیمات" };
@@ -129143,7 +129674,7 @@ const faProvider = {
129143
129674
  const tabs$1 = { "account": "حساب کاربری", "model_service": "سرویس مدل", "about": "درباره ما" };
129144
129675
  const about$1 = { "version": "v1.0.6", "subtitle": "مبدل با کیفیت بالای PDF به Markdown با قدرت مدل‌های بینایی بزرگ", "buttons": { "website": "سایت رسمی", "license": "مجوز", "feedback": "بازخورد", "contact": "ایمیل تماس" } };
129145
129676
  const update$1 = { "check_for_updates": "بررسی به‌روزرسانی", "checking": "در حال بررسی به‌روزرسانی...", "available": "به‌روزرسانی موجود است", "downloading": "در حال دانلود به‌روزرسانی...", "ready": "به‌روزرسانی آماده نصب است", "restart_to_update": "راه‌اندازی مجدد و به‌روزرسانی", "up_to_date": "شما آخرین نسخه را دارید", "error": "بررسی به‌روزرسانی ناموفق بود", "retry": "تلاش مجدد" };
129146
- const preview$1 = { "back": "بازگشت", "download": "دانلود .md", "delete": "حذف", "cancel": "لغو", "retry": "تلاش مجدد", "retry_failed": "تلاش مجدد ناموفق‌ها", "retry_all": "تلاش مجدد همه", "more_actions": "عملیات بیشتر", "regenerate": "بازتولید", "regenerate_tooltip": "بازتولید صفحه فعلی", "confirm_delete": "تأیید حذف", "confirm_delete_content": "آیا مطمئن هستید که می‌خواهید این وظیفه را حذف کنید؟ این عمل قابل بازگشت نیست.", "delete_success": "با موفقیت حذف شد", "delete_failed": "حذف ناموفق بود", "confirm_cancel": "تأیید لغو", "confirm_cancel_content": "آیا مطمئن هستید که می‌خواهید این وظیفه را لغو کنید؟", "cancel_success": "با موفقیت لغو شد", "cancel_failed": "لغو ناموفق بود", "confirm_retry": "تأیید تلاش مجدد", "confirm_retry_content": "آیا مطمئن هستید که می‌خواهید این وظیفه را مجدداً تلاش کنید؟", "confirm_retry_failed": "تأیید تلاش مجدد صفحات ناموفق", "confirm_retry_failed_content": "آیا مطمئن هستید که می‌خواهید همه صفحات ناموفق را مجدداً تلاش کنید؟", "retry_success": "وظیفه به صف تلاش مجدد اضافه شد", "retry_failed_success": "{{count}} صفحه ناموفق به صف تلاش مجدد اضافه شد", "page_retry_success": "صفحه به صف تلاش مجدد اضافه شد", "page_retry_failed": "تلاش مجدد ناموفق بود", "fetch_task_failed": "دریافت اطلاعات وظیفه ناموفق بود", "fetch_page_failed": "دریافت جزئیات صفحه ناموفق بود", "task_deleted": "وظیفه حذف شده است", "task_not_started": "وظیفه هنوز پردازش نشده است، پیش‌نمایش امکان‌پذیر نیست", "download_success": "دانلود موفق", "download_failed": "دانلود ناموفق بود", "image_load_failed": "بارگذاری تصویر ناموفق بود یا وجود ندارد", "status": { "failed": "تبدیل ناموفق", "pending": "در انتظار", "processing": "در حال تبدیل", "completed": "تکمیل شده", "retrying": "در حال تلاش مجدد" } };
129677
+ const preview$1 = { "back": "بازگشت", "download": "دانلود .md", "delete": "حذف", "cancel": "لغو", "retry": "تلاش مجدد", "retry_failed": "تلاش مجدد ناموفق‌ها", "retry_all": "تلاش مجدد همه", "more_actions": "عملیات بیشتر", "regenerate": "بازتولید", "regenerate_tooltip": "بازتولید صفحه فعلی", "copy_markdown": "کپی Markdown", "copy_markdown_tooltip": "کپی Markdown صفحه فعلی", "copy_markdown_success": "Markdown کپی شد", "copy_markdown_failed": "کپی Markdown ناموفق بود", "copy_image": "کپی تصویر", "copy_image_tooltip": "کپی تصویر صفحه فعلی", "copy_image_success": "تصویر کپی شد", "copy_image_failed": "کپی تصویر ناموفق بود", "confirm_delete": "تأیید حذف", "confirm_delete_content": "آیا مطمئن هستید که می‌خواهید این وظیفه را حذف کنید؟ این عمل قابل بازگشت نیست.", "delete_success": "با موفقیت حذف شد", "delete_failed": "حذف ناموفق بود", "confirm_cancel": "تأیید لغو", "confirm_cancel_content": "آیا مطمئن هستید که می‌خواهید این وظیفه را لغو کنید؟", "cancel_success": "با موفقیت لغو شد", "cancel_failed": "لغو ناموفق بود", "confirm_retry": "تأیید تلاش مجدد", "confirm_retry_content": "آیا مطمئن هستید که می‌خواهید این وظیفه را مجدداً تلاش کنید؟", "confirm_retry_failed": "تأیید تلاش مجدد صفحات ناموفق", "confirm_retry_failed_content": "آیا مطمئن هستید که می‌خواهید همه صفحات ناموفق را مجدداً تلاش کنید؟", "retry_success": "وظیفه به صف تلاش مجدد اضافه شد", "retry_failed_success": "{{count}} صفحه ناموفق به صف تلاش مجدد اضافه شد", "page_retry_success": "صفحه به صف تلاش مجدد اضافه شد", "page_retry_failed": "تلاش مجدد ناموفق بود", "fetch_task_failed": "دریافت اطلاعات وظیفه ناموفق بود", "fetch_page_failed": "دریافت جزئیات صفحه ناموفق بود", "task_deleted": "وظیفه حذف شده است", "task_not_started": "وظیفه هنوز پردازش نشده است، پیش‌نمایش امکان‌پذیر نیست", "download_success": "دانلود موفق", "download_failed": "دانلود ناموفق بود", "image_load_failed": "بارگذاری تصویر ناموفق بود یا وجود ندارد", "status": { "failed": "تبدیل ناموفق", "pending": "در انتظار", "processing": "در حال تبدیل", "completed": "تکمیل شده", "retrying": "در حال تلاش مجدد" } };
129147
129678
  const faSettings = {
129148
129679
  tabs: tabs$1,
129149
129680
  about: about$1,
@@ -129174,6 +129705,7 @@ const faAccount = {
129174
129705
  };
129175
129706
  const back$1 = "بازگشت";
129176
129707
  const fetch_task_failed$1 = "دریافت وظیفه ناموفق بود";
129708
+ const download$1 = "دانلود";
129177
129709
  const download_md$1 = "دانلود MD";
129178
129710
  const download_pdf$1 = "دانلود PDF";
129179
129711
  const download_success$1 = "دانلود موفق";
@@ -129204,10 +129736,19 @@ const no_page_data$1 = "داده صفحه‌ای موجود نیست";
129204
129736
  const page_label$1 = "صفحه {{page}} / {{total}}";
129205
129737
  const regenerate$1 = "بازتولید";
129206
129738
  const regenerate_tooltip$1 = "تلاش مجدد تبدیل این صفحه";
129739
+ const copy_markdown$1 = "کپی Markdown";
129740
+ const copy_markdown_tooltip$1 = "کپی Markdown صفحه فعلی";
129741
+ const copy_markdown_success$1 = "Markdown کپی شد";
129742
+ const copy_markdown_failed$1 = "کپی Markdown ناموفق بود";
129743
+ const copy_image$1 = "کپی تصویر";
129744
+ const copy_image_tooltip$1 = "کپی تصویر صفحه فعلی";
129745
+ const copy_image_success$1 = "تصویر کپی شد";
129746
+ const copy_image_failed$1 = "کپی تصویر ناموفق بود";
129207
129747
  const page_status$1 = { "pending": "در انتظار", "processing": "در حال پردازش", "completed": "تکمیل شده", "failed": "ناموفق" };
129208
129748
  const faCloudPreview = {
129209
129749
  back: back$1,
129210
129750
  fetch_task_failed: fetch_task_failed$1,
129751
+ download: download$1,
129211
129752
  download_md: download_md$1,
129212
129753
  download_pdf: download_pdf$1,
129213
129754
  download_success: download_success$1,
@@ -129238,6 +129779,14 @@ const faCloudPreview = {
129238
129779
  page_label: page_label$1,
129239
129780
  regenerate: regenerate$1,
129240
129781
  regenerate_tooltip: regenerate_tooltip$1,
129782
+ copy_markdown: copy_markdown$1,
129783
+ copy_markdown_tooltip: copy_markdown_tooltip$1,
129784
+ copy_markdown_success: copy_markdown_success$1,
129785
+ copy_markdown_failed: copy_markdown_failed$1,
129786
+ copy_image: copy_image$1,
129787
+ copy_image_tooltip: copy_image_tooltip$1,
129788
+ copy_image_success: copy_image_success$1,
129789
+ copy_image_failed: copy_image_failed$1,
129241
129790
  page_status: page_status$1
129242
129791
  };
129243
129792
  const navigation = { "home": "الرئيسية", "list": "القائمة", "settings": "الإعدادات" };
@@ -129303,7 +129852,7 @@ const arProvider = {
129303
129852
  const tabs = { "account": "الحساب", "model_service": "خدمة النماذج", "about": "من نحن" };
129304
129853
  const about = { "version": "v1.0.6", "subtitle": "محول PDF إلى Markdown عالي الجودة مدعوم بنماذج الرؤية الكبيرة", "buttons": { "website": "الموقع الرسمي", "license": "الرخصة", "feedback": "الملاحظات", "contact": "البريد الإلكتروني للتواصل" } };
129305
129854
  const update = { "check_for_updates": "التحقق من التحديثات", "checking": "جارٍ التحقق من التحديثات...", "available": "يتوفر تحديث", "downloading": "جارٍ تحميل التحديث...", "ready": "التحديث جاهز للتثبيت", "restart_to_update": "إعادة التشغيل والتحديث", "up_to_date": "لديك أحدث إصدار", "error": "فشل التحقق من التحديثات", "retry": "إعادة المحاولة" };
129306
- const preview = { "back": "رجوع", "download": "تحميل .md", "delete": "حذف", "cancel": "إلغاء", "retry": "إعادة المحاولة", "retry_failed": "إعادة محاولة الفاشلة", "retry_all": "إعادة محاولة الكل", "more_actions": "المزيد من الإجراءات", "regenerate": "إعادة إنشاء", "regenerate_tooltip": "إعادة إنشاء الصفحة الحالية", "confirm_delete": "تأكيد الحذف", "confirm_delete_content": "هل أنت متأكد من حذف هذه المهمة؟ لا يمكن التراجع عن هذا الإجراء.", "delete_success": "تم الحذف بنجاح", "delete_failed": "فشل الحذف", "confirm_cancel": "تأكيد الإلغاء", "confirm_cancel_content": "هل أنت متأكد من إلغاء هذه المهمة؟", "cancel_success": "تم الإلغاء بنجاح", "cancel_failed": "فشل الإلغاء", "confirm_retry": "تأكيد إعادة المحاولة", "confirm_retry_content": "هل أنت متأكد من إعادة محاولة هذه المهمة؟", "confirm_retry_failed": "تأكيد إعادة محاولة الصفحات الفاشلة", "confirm_retry_failed_content": "هل أنت متأكد من إعادة محاولة جميع الصفحات الفاشلة؟", "retry_success": "تمت إضافة المهمة إلى قائمة إعادة المحاولة", "retry_failed_success": "تمت إضافة {{count}} صفحة فاشلة إلى قائمة إعادة المحاولة", "page_retry_success": "تمت إضافة الصفحة إلى قائمة إعادة المحاولة", "page_retry_failed": "فشل إعادة المحاولة", "fetch_task_failed": "فشل في الحصول على معلومات المهمة", "fetch_page_failed": "فشل في الحصول على تفاصيل الصفحة", "task_deleted": "تم حذف المهمة", "task_not_started": "لم تتم معالجة المهمة بعد، لا يمكن المعاينة", "download_success": "تم التحميل بنجاح", "download_failed": "فشل التحميل", "image_load_failed": "فشل تحميل الصورة أو غير موجودة", "status": { "failed": "فشل التحويل", "pending": "في الانتظار", "processing": "جاري التحويل", "completed": "مكتمل", "retrying": "إعادة المحاولة" } };
129855
+ const preview = { "back": "رجوع", "download": "تحميل .md", "delete": "حذف", "cancel": "إلغاء", "retry": "إعادة المحاولة", "retry_failed": "إعادة محاولة الفاشلة", "retry_all": "إعادة محاولة الكل", "more_actions": "المزيد من الإجراءات", "regenerate": "إعادة إنشاء", "regenerate_tooltip": "إعادة إنشاء الصفحة الحالية", "copy_markdown": "نسخ Markdown", "copy_markdown_tooltip": "نسخ Markdown للصفحة الحالية", "copy_markdown_success": "تم نسخ Markdown", "copy_markdown_failed": "فشل نسخ Markdown", "copy_image": "نسخ الصورة", "copy_image_tooltip": "نسخ صورة الصفحة الحالية", "copy_image_success": "تم نسخ الصورة", "copy_image_failed": "فشل نسخ الصورة", "confirm_delete": "تأكيد الحذف", "confirm_delete_content": "هل أنت متأكد من حذف هذه المهمة؟ لا يمكن التراجع عن هذا الإجراء.", "delete_success": "تم الحذف بنجاح", "delete_failed": "فشل الحذف", "confirm_cancel": "تأكيد الإلغاء", "confirm_cancel_content": "هل أنت متأكد من إلغاء هذه المهمة؟", "cancel_success": "تم الإلغاء بنجاح", "cancel_failed": "فشل الإلغاء", "confirm_retry": "تأكيد إعادة المحاولة", "confirm_retry_content": "هل أنت متأكد من إعادة محاولة هذه المهمة؟", "confirm_retry_failed": "تأكيد إعادة محاولة الصفحات الفاشلة", "confirm_retry_failed_content": "هل أنت متأكد من إعادة محاولة جميع الصفحات الفاشلة؟", "retry_success": "تمت إضافة المهمة إلى قائمة إعادة المحاولة", "retry_failed_success": "تمت إضافة {{count}} صفحة فاشلة إلى قائمة إعادة المحاولة", "page_retry_success": "تمت إضافة الصفحة إلى قائمة إعادة المحاولة", "page_retry_failed": "فشل إعادة المحاولة", "fetch_task_failed": "فشل في الحصول على معلومات المهمة", "fetch_page_failed": "فشل في الحصول على تفاصيل الصفحة", "task_deleted": "تم حذف المهمة", "task_not_started": "لم تتم معالجة المهمة بعد، لا يمكن المعاينة", "download_success": "تم التحميل بنجاح", "download_failed": "فشل التحميل", "image_load_failed": "فشل تحميل الصورة أو غير موجودة", "status": { "failed": "فشل التحويل", "pending": "في الانتظار", "processing": "جاري التحويل", "completed": "مكتمل", "retrying": "إعادة المحاولة" } };
129307
129856
  const arSettings = {
129308
129857
  tabs,
129309
129858
  about,
@@ -129334,6 +129883,7 @@ const arAccount = {
129334
129883
  };
129335
129884
  const back = "رجوع";
129336
129885
  const fetch_task_failed = "فشل في جلب المهمة";
129886
+ const download = "تحميل";
129337
129887
  const download_md = "تحميل MD";
129338
129888
  const download_pdf = "تحميل PDF";
129339
129889
  const download_success = "تم التحميل بنجاح";
@@ -129364,10 +129914,19 @@ const no_page_data = "لا توجد بيانات صفحة";
129364
129914
  const page_label = "صفحة {{page}} / {{total}}";
129365
129915
  const regenerate = "إعادة إنشاء";
129366
129916
  const regenerate_tooltip = "إعادة محاولة تحويل هذه الصفحة";
129917
+ const copy_markdown = "نسخ Markdown";
129918
+ const copy_markdown_tooltip = "نسخ Markdown للصفحة الحالية";
129919
+ const copy_markdown_success = "تم نسخ Markdown";
129920
+ const copy_markdown_failed = "فشل نسخ Markdown";
129921
+ const copy_image = "نسخ الصورة";
129922
+ const copy_image_tooltip = "نسخ صورة الصفحة الحالية";
129923
+ const copy_image_success = "تم نسخ الصورة";
129924
+ const copy_image_failed = "فشل نسخ الصورة";
129367
129925
  const page_status = { "pending": "في الانتظار", "processing": "قيد المعالجة", "completed": "مكتمل", "failed": "فشل" };
129368
129926
  const arCloudPreview = {
129369
129927
  back,
129370
129928
  fetch_task_failed,
129929
+ download,
129371
129930
  download_md,
129372
129931
  download_pdf,
129373
129932
  download_success,
@@ -129398,6 +129957,14 @@ const arCloudPreview = {
129398
129957
  page_label,
129399
129958
  regenerate,
129400
129959
  regenerate_tooltip,
129960
+ copy_markdown,
129961
+ copy_markdown_tooltip,
129962
+ copy_markdown_success,
129963
+ copy_markdown_failed,
129964
+ copy_image,
129965
+ copy_image_tooltip,
129966
+ copy_image_success,
129967
+ copy_image_failed,
129401
129968
  page_status
129402
129969
  };
129403
129970
  const resources = {
@@ -129666,9 +130233,12 @@ const CloudProvider = ({ children }) => {
129666
130233
  return { success: false, error: error instanceof Error ? error.message : String(error) };
129667
130234
  }
129668
130235
  }, [isAuthenticated, refreshCredits]);
129669
- const retryTask = reactExports.useCallback(async (id) => {
130236
+ const retryTask = reactExports.useCallback(async (id, model) => {
129670
130237
  if (!isAuthenticated) return { success: false, error: "User not signed in" };
129671
130238
  try {
130239
+ if (model) {
130240
+ return await window.api.cloud.retryTask({ id, model });
130241
+ }
129672
130242
  return await window.api.cloud.retryTask(id);
129673
130243
  } catch (error) {
129674
130244
  return { success: false, error: error instanceof Error ? error.message : String(error) };
@@ -129682,9 +130252,12 @@ const CloudProvider = ({ children }) => {
129682
130252
  return { success: false, error: error instanceof Error ? error.message : String(error) };
129683
130253
  }
129684
130254
  }, [isAuthenticated]);
129685
- const retryPage = reactExports.useCallback(async (taskId, pageNumber) => {
130255
+ const retryPage = reactExports.useCallback(async (taskId, pageNumber, model) => {
129686
130256
  if (!isAuthenticated) return { success: false, error: "User not signed in" };
129687
130257
  try {
130258
+ if (model) {
130259
+ return await window.api.cloud.retryPage({ taskId, pageNumber, model });
130260
+ }
129688
130261
  return await window.api.cloud.retryPage({ taskId, pageNumber });
129689
130262
  } catch (error) {
129690
130263
  return { success: false, error: error instanceof Error ? error.message : String(error) };