From 8cff5d04513e60a6279d762502a9d5a773eb9ef3 Mon Sep 17 00:00:00 2001 From: "blucas.wu" <15555602203@163.com> Date: Tue, 24 Dec 2024 09:59:38 +0800 Subject: [PATCH 1/2] fix(data-harbor): copy failed in ios --- packages/page-spy-plugin-data-harbor/package.json | 1 + .../page-spy-plugin-data-harbor/src/utils/index.ts | 14 -------------- .../page-spy-plugin-data-harbor/src/utils/modal.ts | 7 ++++--- yarn.lock | 7 +++++++ 4 files changed, 12 insertions(+), 17 deletions(-) diff --git a/packages/page-spy-plugin-data-harbor/package.json b/packages/page-spy-plugin-data-harbor/package.json index acb328fb..cd843f08 100644 --- a/packages/page-spy-plugin-data-harbor/package.json +++ b/packages/page-spy-plugin-data-harbor/package.json @@ -27,6 +27,7 @@ "dependencies": { "@babel/runtime": "^7.13.0", "@huolala-tech/page-spy-base": "^2.0.0", + "copy-to-clipboard": "^3.3.3", "fflate": "^0.8.1" }, "devDependencies": { diff --git a/packages/page-spy-plugin-data-harbor/src/utils/index.ts b/packages/page-spy-plugin-data-harbor/src/utils/index.ts index eae6a6cd..304691c9 100644 --- a/packages/page-spy-plugin-data-harbor/src/utils/index.ts +++ b/packages/page-spy-plugin-data-harbor/src/utils/index.ts @@ -66,17 +66,3 @@ export function formatTimeDuration(millsDiff: number) { const s = Math.floor(seconds - 3600 * h - 60 * m); return `${fillTimeText(h)}:${fillTimeText(m)}:${fillTimeText(s)}`; } - -export function copyInBrowser(text: string) { - try { - const input = document.createElement('input'); - input.value = text.toString(); - document.body.appendChild(input); - input.select(); - document.execCommand('copy'); - document.body.removeChild(input); - return true; - } catch (e) { - return false; - } -} diff --git a/packages/page-spy-plugin-data-harbor/src/utils/modal.ts b/packages/page-spy-plugin-data-harbor/src/utils/modal.ts index 041197fe..6a9df258 100644 --- a/packages/page-spy-plugin-data-harbor/src/utils/modal.ts +++ b/packages/page-spy-plugin-data-harbor/src/utils/modal.ts @@ -1,5 +1,6 @@ import type { Modal, Toast } from '@huolala-tech/page-spy-types'; import { psLog } from '@huolala-tech/page-spy-base/dist/utils'; +import copy from 'copy-to-clipboard'; import classes from '../assets/index.module.less'; import { cropSvg, @@ -11,7 +12,7 @@ import { } from '../assets/svg'; import { t } from '../assets/locale'; import { PeriodItem } from '../harbor/base'; -import { copyInBrowser, formatTimeDuration } from './index'; +import { formatTimeDuration } from './index'; import type DataHarborPlugin from '../index'; function getLocaleTime(v: number) { @@ -212,7 +213,7 @@ export const buildModal = ({ plugin, modal, toast }: Params) => { clearCache: false, remark: remark.value, }); - const ok = copyInBrowser(debugUrl); + const ok = copy(debugUrl); psLog.info(`${t.success}: ${debugUrl}`); toast.message(ok ? t.copied : t.success); } catch (e: any) { @@ -246,7 +247,7 @@ export const buildModal = ({ plugin, modal, toast }: Params) => { getSelectedPeriod(), ); - const ok = copyInBrowser(debugUrl); + const ok = copy(debugUrl); psLog.info(`${t.success}: ${debugUrl}`); toast.message(ok ? t.copied : t.success); } catch (e: any) { diff --git a/yarn.lock b/yarn.lock index 99c1a71f..015ce6bc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5110,6 +5110,13 @@ copy-to-clipboard@^3.3.1: dependencies: toggle-selection "^1.0.6" +copy-to-clipboard@^3.3.3: + version "3.3.3" + resolved "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz#55ac43a1db8ae639a4bd99511c148cdd1b83a1b0" + integrity sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA== + dependencies: + toggle-selection "^1.0.6" + core-js-compat@^3.31.0, core-js-compat@^3.36.1: version "3.37.0" resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.0.tgz#d9570e544163779bb4dff1031c7972f44918dc73" From c1ecc51c50bd5429631851f297845b177cbae41e Mon Sep 17 00:00:00 2001 From: "blucas.wu" <15555602203@163.com> Date: Mon, 6 Jan 2025 10:20:50 +0800 Subject: [PATCH 2/2] feat(plugin-whole-bundle): support cut log data --- .../page-spy-plugin-whole-bundle/index.html | 7 +- .../page-spy-plugin-whole-bundle/package.json | 4 +- .../src/assets/close.svg | 2 +- .../src/assets/error.svg | 4 + .../src/assets/logo.svg | 2 +- .../src/assets/refresh.svg | 3 + .../src/assets/success.svg | 4 + .../page-spy-plugin-whole-bundle/src/index.ts | 168 ++----- .../src/styles/index.module.less | 451 +++++++++--------- .../src/styles/modal.module.less | 141 ++++++ .../src/styles/toast.module.less | 44 ++ .../src/styles/variable.less | 52 ++ .../src/utils/build-form.ts | 226 +++++++++ .../src/utils/index.ts | 18 +- .../src/utils/locale.ts | 41 ++ .../src/utils/modal.ts | 126 +++++ .../src/utils/toast.ts | 69 +++ yarn.lock | 9 +- 18 files changed, 987 insertions(+), 384 deletions(-) create mode 100644 packages/page-spy-plugin-whole-bundle/src/assets/error.svg create mode 100644 packages/page-spy-plugin-whole-bundle/src/assets/refresh.svg create mode 100644 packages/page-spy-plugin-whole-bundle/src/assets/success.svg create mode 100644 packages/page-spy-plugin-whole-bundle/src/styles/modal.module.less create mode 100644 packages/page-spy-plugin-whole-bundle/src/styles/toast.module.less create mode 100644 packages/page-spy-plugin-whole-bundle/src/styles/variable.less create mode 100644 packages/page-spy-plugin-whole-bundle/src/utils/build-form.ts create mode 100644 packages/page-spy-plugin-whole-bundle/src/utils/locale.ts create mode 100644 packages/page-spy-plugin-whole-bundle/src/utils/modal.ts create mode 100644 packages/page-spy-plugin-whole-bundle/src/utils/toast.ts diff --git a/packages/page-spy-plugin-whole-bundle/index.html b/packages/page-spy-plugin-whole-bundle/index.html index 8e2bbdcb..20e137ca 100644 --- a/packages/page-spy-plugin-whole-bundle/index.html +++ b/packages/page-spy-plugin-whole-bundle/index.html @@ -6,7 +6,10 @@