@fle-ui/plus-im-record 0.0.8-beta.7 → 0.0.8-beta.8

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.
@@ -121,6 +121,19 @@ export function downloadByUrl(src) {
121
121
  link.remove();
122
122
  });
123
123
  }
124
+ /**
125
+ * im-record可能运行在wujie子应用中
126
+ * 子应用的复制行为会被劫持
127
+ * 需要调用主应用提供的能力
128
+ */
129
+ function getClipboardAPI() {
130
+ // @ts-ignore
131
+ if (window.__POWERED_BY_WUJIE__ || window.$wujie) {
132
+ var _window$parent$naviga, _window$parent$window;
133
+ return ((_window$parent$naviga = window.parent.navigator) === null || _window$parent$naviga === void 0 ? void 0 : _window$parent$naviga.clipboard) || ((_window$parent$window = window.parent.window.navigator) === null || _window$parent$window === void 0 ? void 0 : _window$parent$window.clipboard);
134
+ }
135
+ return navigator.clipboard;
136
+ }
124
137
  /**
125
138
  * 将文字写入剪切板
126
139
  * @param {string} text
@@ -128,10 +141,11 @@ export function downloadByUrl(src) {
128
141
  */
129
142
  export function copyText() {
130
143
  var text = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
131
- // 在调用前 先访问是否存在 clipboard 对象
132
- if (navigator.clipboard) {
133
- return navigator.clipboard.writeText(text);
144
+ var clipboard = getClipboardAPI();
145
+ if (clipboard === null || clipboard === void 0 ? void 0 : clipboard.writeText) {
146
+ return clipboard.writeText(text);
134
147
  } else {
148
+ // 传统降级方案
135
149
  try {
136
150
  var t = document.createElement('textarea');
137
151
  t.nodeValue = text;
@@ -135,6 +135,19 @@ function downloadByUrl(src) {
135
135
  link.remove();
136
136
  });
137
137
  }
138
+ /**
139
+ * im-record可能运行在wujie子应用中
140
+ * 子应用的复制行为会被劫持
141
+ * 需要调用主应用提供的能力
142
+ */
143
+ function getClipboardAPI() {
144
+ // @ts-ignore
145
+ if (window.__POWERED_BY_WUJIE__ || window.$wujie) {
146
+ var _window$parent$naviga, _window$parent$window;
147
+ return ((_window$parent$naviga = window.parent.navigator) === null || _window$parent$naviga === void 0 ? void 0 : _window$parent$naviga.clipboard) || ((_window$parent$window = window.parent.window.navigator) === null || _window$parent$window === void 0 ? void 0 : _window$parent$window.clipboard);
148
+ }
149
+ return navigator.clipboard;
150
+ }
138
151
  /**
139
152
  * 将文字写入剪切板
140
153
  * @param {string} text
@@ -142,10 +155,11 @@ function downloadByUrl(src) {
142
155
  */
143
156
  function copyText() {
144
157
  var text = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
145
- // 在调用前 先访问是否存在 clipboard 对象
146
- if (navigator.clipboard) {
147
- return navigator.clipboard.writeText(text);
158
+ var clipboard = getClipboardAPI();
159
+ if (clipboard === null || clipboard === void 0 ? void 0 : clipboard.writeText) {
160
+ return clipboard.writeText(text);
148
161
  } else {
162
+ // 传统降级方案
149
163
  try {
150
164
  var t = document.createElement('textarea');
151
165
  t.nodeValue = text;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fle-ui/plus-im-record",
3
- "version": "0.0.8-beta.7",
3
+ "version": "0.0.8-beta.8",
4
4
  "description": "@fle-ui/plus-im-record",
5
5
  "keywords": [
6
6
  "fle-ui",
@@ -45,5 +45,5 @@
45
45
  "peerDependencies": {
46
46
  "react": ">=17.0.0"
47
47
  },
48
- "gitHead": "a1178f92f20df51e4418dae926373bf58b22a9a7"
48
+ "gitHead": "fbaf6d4dca0deaeb4ee2344f1977de360cbac599"
49
49
  }