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

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,19 +281,18 @@ 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$/;
285
284
  function resolveParentOrigin() {
286
- const paramOrigin = getParentOriginFromParams();
287
- if (paramOrigin) return paramOrigin;
288
285
  try {
289
286
  if (document.referrer) {
290
287
  const referrerOrigin = new URL(document.referrer).origin;
291
- if (MIAODA_PARENT_ORIGIN_RE.test(referrerOrigin) || referrerOrigin.startsWith("http://localhost") || referrerOrigin.startsWith("http://127.0.0.1")) {
288
+ if (referrerOrigin.startsWith("http://localhost") || referrerOrigin.startsWith("http://127.0.0.1")) {
292
289
  return referrerOrigin;
293
290
  }
294
291
  }
295
292
  } catch {
296
293
  }
294
+ const paramOrigin = getParentOriginFromParams();
295
+ if (paramOrigin) return paramOrigin;
297
296
  return process.env?.FORCE_FRAMEWORK_DOMAIN_MAIN ?? getLegacyParentOrigin();
298
297
  }
299
298
  __name(resolveParentOrigin, "resolveParentOrigin");
@@ -301,10 +300,7 @@ function submitPostMessage(message, targetOrigin) {
301
300
  try {
302
301
  const parentOrigin = resolveParentOrigin();
303
302
  const origin = targetOrigin ?? parentOrigin;
304
- if (!origin) {
305
- console.error("postMessage skipped: cannot resolve parent origin");
306
- return;
307
- }
303
+ if (!origin) return;
308
304
  window.parent.postMessage(message, origin);
309
305
  } catch (e) {
310
306
  console.error("postMessage error", e);
@@ -1516,6 +1512,10 @@ var messages = {
1516
1512
  zh: "\u4E86\u89E3\u66F4\u591A",
1517
1513
  en: "Learn more"
1518
1514
  },
1515
+ "safety.report": {
1516
+ zh: "\u6295\u8BC9\u4E0E\u4E3E\u62A5",
1517
+ en: "Report"
1518
+ },
1519
1519
  "safety.cover.pc": {
1520
1520
  zh: "https://lf3-static.bytednsdoc.com/obj/eden-cn/LMfspH/ljhwZthlaukjlkulzlp/logo/miaodacover.png",
1521
1521
  en: "https://lf3-static.bytednsdoc.com/obj/eden-cn/LMfspH/ljhwZthlaukjlkulzlp/logo/miaodacover-weben.png"
@@ -1617,7 +1617,24 @@ var getCoverUrl = /* @__PURE__ */ __name(() => t("safety.cover.pc"), "getCoverUr
1617
1617
  var getCoverMobileUrl = /* @__PURE__ */ __name(() => t("safety.cover.mobile"), "getCoverMobileUrl");
1618
1618
  var ICON_COMPANY_URL = "https://lf3-static.bytednsdoc.com/obj/eden-cn/LMfspH/ljhwZthlaukjlkulzlp/icon/icon_company_outlined.svg";
1619
1619
  var ICON_AI_URL = "https://lf3-static.bytednsdoc.com/obj/eden-cn/LMfspH/ljhwZthlaukjlkulzlp/icon/icon_efficiency-ai_outlined.svg";
1620
+ var ICON_FEEDBACK_URL = "https://lf3-static.bytednsdoc.com/obj/eden-cn/LMfspH/ljhwZthlaukjlkulzlp/miaoda-ui/icon_feedback_outlined.png";
1620
1621
  var LANDING_URL = "https://miaoda.feishu.cn/landing";
1622
+ var reportDomainByEnv = /* @__PURE__ */ __name((env) => {
1623
+ if (env === "boe") return "tns.feishu-boe.cn";
1624
+ if (env === "pre") return "tns.feishu-pre.cn";
1625
+ return "tns.feishu.cn";
1626
+ }, "reportDomainByEnv");
1627
+ var openReport = /* @__PURE__ */ __name(() => {
1628
+ const params = JSON.stringify({
1629
+ scene: "miaoda_app_report",
1630
+ entity_id: getAppId() ?? "",
1631
+ entity_type: "miaoda_app",
1632
+ extra: ""
1633
+ });
1634
+ const domain = reportDomainByEnv(process.env.FORCE_FRAMEWORK_ENVIRONMENT);
1635
+ const url = `https://${domain}/cust/lark_report/?type=common&params=${encodeURIComponent(params)}&lang=zh-CN`;
1636
+ window.open(url, "_blank", "noopener,noreferrer");
1637
+ }, "openReport");
1621
1638
  var badgeBase = {
1622
1639
  ...resetBase,
1623
1640
  position: "fixed",
@@ -1962,7 +1979,22 @@ var Safety = /* @__PURE__ */ __name(() => {
1962
1979
  style: infoIconMobile
1963
1980
  }), /* @__PURE__ */ import_react5.default.createElement("p", {
1964
1981
  style: sheetInfoText
1965
- }, t("safety.ai.disclaimer")))), /* @__PURE__ */ import_react5.default.createElement("div", {
1982
+ }, t("safety.ai.disclaimer"))), /* @__PURE__ */ import_react5.default.createElement("div", {
1983
+ style: {
1984
+ ...infoRow,
1985
+ cursor: "pointer"
1986
+ },
1987
+ "data-custom-element": "safety-report",
1988
+ onClick: openReport
1989
+ }, /* @__PURE__ */ import_react5.default.createElement("img", {
1990
+ src: ICON_FEEDBACK_URL,
1991
+ style: infoIconMobile
1992
+ }), /* @__PURE__ */ import_react5.default.createElement("p", {
1993
+ style: {
1994
+ ...sheetInfoText,
1995
+ cursor: "pointer"
1996
+ }
1997
+ }, t("safety.report")))), /* @__PURE__ */ import_react5.default.createElement("div", {
1966
1998
  style: mobileBtnRow
1967
1999
  }, /* @__PURE__ */ import_react5.default.createElement("div", {
1968
2000
  style: mobileBtnOutline,
@@ -2044,7 +2076,22 @@ var Safety = /* @__PURE__ */ __name(() => {
2044
2076
  style: infoIcon
2045
2077
  }), /* @__PURE__ */ import_react5.default.createElement("p", {
2046
2078
  style: infoText
2047
- }, t("safety.ai.disclaimer")))), /* @__PURE__ */ import_react5.default.createElement("div", {
2079
+ }, t("safety.ai.disclaimer"))), /* @__PURE__ */ import_react5.default.createElement("div", {
2080
+ style: {
2081
+ ...infoRow,
2082
+ cursor: "pointer"
2083
+ },
2084
+ "data-custom-element": "safety-report",
2085
+ onClick: openReport
2086
+ }, /* @__PURE__ */ import_react5.default.createElement("img", {
2087
+ src: ICON_FEEDBACK_URL,
2088
+ style: infoIcon
2089
+ }), /* @__PURE__ */ import_react5.default.createElement("p", {
2090
+ style: {
2091
+ ...infoText,
2092
+ cursor: "pointer"
2093
+ }
2094
+ }, t("safety.report")))), /* @__PURE__ */ import_react5.default.createElement("div", {
2048
2095
  style: btnRow
2049
2096
  }, /* @__PURE__ */ import_react5.default.createElement(HoverButton, {
2050
2097
  style: btnBase,
@@ -2074,13 +2121,13 @@ var DOUBAO_PILL_MOBILE_PNG = `${CDN}/Frame%202147223991%20(3).png`;
2074
2121
 
2075
2122
  // src/components/AppContainer/Watermark.tsx
2076
2123
  var DOUBAO_SOURCE = "5";
2077
- var REPORT_ENABLED = false;
2124
+ var REPORT_ENABLED = true;
2078
2125
  var BRAND_TEXT = "\u8C46\u5305 AI \u751F\u6210";
2079
2126
  var POWERED_BY_TEXT = "\u7531\u98DE\u4E66\u5999\u642D\u63D0\u4F9B\u652F\u6301";
2080
2127
  var FONT_FAMILY2 = "'PingFang SC', -apple-system, BlinkMacSystemFont, sans-serif";
2081
2128
  var PILL_SHADOW = "0px 8px 32px rgba(0,0,0,0.08), 0px 4px 16px rgba(0,0,0,0.04), 0px 2px 4px rgba(0,0,0,0.02)";
2082
2129
  var CARD_SHADOW = "0px 4px 16px rgba(0,0,0,0.03), 0px 4px 10px rgba(0,0,0,0.03), 0px 2px 4px rgba(0,0,0,0.02)";
2083
- var reportDomainByEnv = /* @__PURE__ */ __name((env) => {
2130
+ var reportDomainByEnv2 = /* @__PURE__ */ __name((env) => {
2084
2131
  if (env === "boe") return "tns.feishu-boe.cn";
2085
2132
  if (env === "pre") return "tns.feishu-pre.cn";
2086
2133
  return "tns.feishu.cn";
@@ -2092,7 +2139,7 @@ var openDoubaoReport = /* @__PURE__ */ __name(() => {
2092
2139
  entity_type: "miaoda_app",
2093
2140
  extra: ""
2094
2141
  });
2095
- const domain = reportDomainByEnv(process.env.FORCE_FRAMEWORK_ENVIRONMENT);
2142
+ const domain = reportDomainByEnv2(process.env.FORCE_FRAMEWORK_ENVIRONMENT);
2096
2143
  const url = `https://${domain}/cust/lark_report/?type=common&params=${encodeURIComponent(params)}&lang=zh-CN`;
2097
2144
  window.open(url, "_blank", "noopener,noreferrer");
2098
2145
  }, "openDoubaoReport");
@@ -2910,57 +2957,19 @@ function isExternalLink(to) {
2910
2957
  return to.startsWith("http://") || to.startsWith("https://") || to.startsWith("//");
2911
2958
  }
2912
2959
  __name(isExternalLink, "isExternalLink");
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
- }
2960
+ var UniversalLink = /* @__PURE__ */ import_react15.default.forwardRef(/* @__PURE__ */ __name(function UniversalLink2({ to, ...props }, ref) {
2950
2961
  if (isInternalRoute(to)) {
2951
2962
  return /* @__PURE__ */ import_react15.default.createElement(import_react_router_dom4.Link, {
2952
2963
  to,
2953
2964
  ref,
2954
- ...props,
2955
- onClick
2965
+ ...props
2956
2966
  });
2957
2967
  }
2958
2968
  return /* @__PURE__ */ import_react15.default.createElement("a", {
2959
2969
  href: to,
2960
2970
  ref,
2961
2971
  ...props,
2962
- onClick,
2963
- ...isExternal && {
2972
+ ...isExternalLink(to) && {
2964
2973
  target: props.target ?? "_blank",
2965
2974
  rel: props.rel ?? "noopener noreferrer"
2966
2975
  }