@lark-apaas/client-toolkit-lite 1.1.15-alpha.0 → 1.1.15-alpha.1

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.
package/dist/index.cjs CHANGED
@@ -281,18 +281,19 @@ function getLegacyParentOrigin() {
281
281
  return "https://miaoda.feishu-boe.cn";
282
282
  }
283
283
  __name(getLegacyParentOrigin, "getLegacyParentOrigin");
284
+ var MIAODA_PARENT_ORIGIN_RE = /^https:\/\/(miaoda|force)\.feishu(-pre|-boe|-staging)?\.cn$/;
284
285
  function resolveParentOrigin() {
286
+ const paramOrigin = getParentOriginFromParams();
287
+ if (paramOrigin) return paramOrigin;
285
288
  try {
286
289
  if (document.referrer) {
287
290
  const referrerOrigin = new URL(document.referrer).origin;
288
- if (referrerOrigin.startsWith("http://localhost") || referrerOrigin.startsWith("http://127.0.0.1")) {
291
+ if (MIAODA_PARENT_ORIGIN_RE.test(referrerOrigin) || referrerOrigin.startsWith("http://localhost") || referrerOrigin.startsWith("http://127.0.0.1")) {
289
292
  return referrerOrigin;
290
293
  }
291
294
  }
292
295
  } catch {
293
296
  }
294
- const paramOrigin = getParentOriginFromParams();
295
- if (paramOrigin) return paramOrigin;
296
297
  return process.env?.FORCE_FRAMEWORK_DOMAIN_MAIN ?? getLegacyParentOrigin();
297
298
  }
298
299
  __name(resolveParentOrigin, "resolveParentOrigin");
@@ -300,7 +301,10 @@ function submitPostMessage(message, targetOrigin) {
300
301
  try {
301
302
  const parentOrigin = resolveParentOrigin();
302
303
  const origin = targetOrigin ?? parentOrigin;
303
- if (!origin) return;
304
+ if (!origin) {
305
+ console.error("postMessage skipped: cannot resolve parent origin");
306
+ return;
307
+ }
304
308
  window.parent.postMessage(message, origin);
305
309
  } catch (e) {
306
310
  console.error("postMessage error", e);
@@ -2070,7 +2074,7 @@ var DOUBAO_PILL_MOBILE_PNG = `${CDN}/Frame%202147223991%20(3).png`;
2070
2074
 
2071
2075
  // src/components/AppContainer/Watermark.tsx
2072
2076
  var DOUBAO_SOURCE = "5";
2073
- var REPORT_ENABLED = true;
2077
+ var REPORT_ENABLED = false;
2074
2078
  var BRAND_TEXT = "\u8C46\u5305 AI \u751F\u6210";
2075
2079
  var POWERED_BY_TEXT = "\u7531\u98DE\u4E66\u5999\u642D\u63D0\u4F9B\u652F\u6301";
2076
2080
  var FONT_FAMILY2 = "'PingFang SC', -apple-system, BlinkMacSystemFont, sans-serif";
@@ -2906,19 +2910,57 @@ function isExternalLink(to) {
2906
2910
  return to.startsWith("http://") || to.startsWith("https://") || to.startsWith("//");
2907
2911
  }
2908
2912
  __name(isExternalLink, "isExternalLink");
2909
- var UniversalLink = /* @__PURE__ */ import_react15.default.forwardRef(/* @__PURE__ */ __name(function UniversalLink2({ to, ...props }, ref) {
2913
+ var MIAODA_PARENT_ORIGIN_RE2 = /^https:\/\/(miaoda|force)\.feishu(-pre|-boe|-staging)?\.cn$/;
2914
+ function isIframeUnderMiaoda() {
2915
+ if (typeof window === "undefined") return false;
2916
+ if (window.parent === window) return false;
2917
+ try {
2918
+ if (!document.referrer) return false;
2919
+ const refOrigin = new URL(document.referrer).origin;
2920
+ return MIAODA_PARENT_ORIGIN_RE2.test(refOrigin);
2921
+ } catch {
2922
+ return false;
2923
+ }
2924
+ }
2925
+ __name(isIframeUnderMiaoda, "isIframeUnderMiaoda");
2926
+ var UniversalLink = /* @__PURE__ */ import_react15.default.forwardRef(/* @__PURE__ */ __name(function UniversalLink2({ to, onClick, ...props }, ref) {
2927
+ const isExternal = isExternalLink(to);
2928
+ const preview = (isPreview() || isIframeUnderMiaoda()) && isExternal;
2929
+ if (preview) {
2930
+ const handlePreviewClick = /* @__PURE__ */ __name((e) => {
2931
+ e.preventDefault();
2932
+ onClick?.(e);
2933
+ submitPostMessage({
2934
+ type: "OpenLink",
2935
+ data: {
2936
+ href: to,
2937
+ external: true
2938
+ }
2939
+ });
2940
+ }, "handlePreviewClick");
2941
+ return /* @__PURE__ */ import_react15.default.createElement("a", {
2942
+ href: to,
2943
+ ref,
2944
+ ...props,
2945
+ onClick: handlePreviewClick,
2946
+ target: props.target ?? "_blank",
2947
+ rel: props.rel ?? "noopener noreferrer"
2948
+ });
2949
+ }
2910
2950
  if (isInternalRoute(to)) {
2911
2951
  return /* @__PURE__ */ import_react15.default.createElement(import_react_router_dom4.Link, {
2912
2952
  to,
2913
2953
  ref,
2914
- ...props
2954
+ ...props,
2955
+ onClick
2915
2956
  });
2916
2957
  }
2917
2958
  return /* @__PURE__ */ import_react15.default.createElement("a", {
2918
2959
  href: to,
2919
2960
  ref,
2920
2961
  ...props,
2921
- ...isExternalLink(to) && {
2962
+ onClick,
2963
+ ...isExternal && {
2922
2964
  target: props.target ?? "_blank",
2923
2965
  rel: props.rel ?? "noopener noreferrer"
2924
2966
  }