@uiw/copy-to-clipboard 1.0.16 → 1.0.18
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/README.md +1 -0
- package/dist/badges.svg +9 -9
- package/dist/copy-to-clipboard.cjs.js +2 -2
- package/dist/copy-to-clipboard.esm.js +2 -2
- package/dist/copy-to-clipboard.umd.js +2 -2
- package/dist/copy-to-clipboard.umd.min.js +2 -2
- package/dist/copy-to-clipboard.umd.min.js.map +1 -1
- package/dist/css/main.css +97 -4
- package/dist/index.html +38 -30
- package/dist/js/copy.js +4 -4
- package/dist/js/demo-preview.js +4 -4
- package/dist/js/giscus.js +34 -0
- package/dist/js/markdown-style.js +79 -38
- package/dist/js/tocbot.js +15 -11
- package/dist/lcov-report/block-navigation.js +1 -1
- package/dist/lcov-report/index.html +12 -12
- package/dist/lcov-report/main.js.html +8 -8
- package/dist/lcov-report/sorter.js +21 -7
- package/dist/sitemap.txt +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
Copy Text to Clipboard
|
|
2
2
|
===
|
|
3
3
|
|
|
4
|
+
[](https://jaywcjlove.github.io/#/sponsor)
|
|
4
5
|

|
|
5
6
|
[](https://www.npmjs.com/package/@uiw/copy-to-clipboard)
|
|
6
7
|
[](https://github.com/uiwjs/react-codemirror/actions)
|
package/dist/badges.svg
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
<svg width="
|
|
2
|
-
<title>coverage:
|
|
3
|
-
<linearGradient id="
|
|
1
|
+
<svg width="103.3" height="20" viewBox="0 0 1033 200" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="coverage: 100%">
|
|
2
|
+
<title>coverage: 100%</title>
|
|
3
|
+
<linearGradient id="LHgSq" x2="0" y2="100%">
|
|
4
4
|
<stop offset="0" stop-opacity=".1" stop-color="#EEE"/>
|
|
5
5
|
<stop offset="1" stop-opacity=".1"/>
|
|
6
6
|
</linearGradient>
|
|
7
|
-
<mask id="
|
|
8
|
-
<g mask="url(#
|
|
7
|
+
<mask id="nxGOP"><rect width="1033" height="200" rx="30" fill="#FFF"/></mask>
|
|
8
|
+
<g mask="url(#nxGOP)">
|
|
9
9
|
<rect width="603" height="200" fill="#555"/>
|
|
10
|
-
<rect width="
|
|
11
|
-
<rect width="
|
|
10
|
+
<rect width="430" height="200" fill="#49c31a" x="603"/>
|
|
11
|
+
<rect width="1033" height="200" fill="url(#LHgSq)"/>
|
|
12
12
|
</g>
|
|
13
13
|
<g aria-hidden="true" fill="#fff" text-anchor="start" font-family="Verdana,DejaVu Sans,sans-serif" font-size="110">
|
|
14
14
|
<text x="60" y="148" textLength="503" fill="#000" opacity="0.25">coverage</text>
|
|
15
15
|
<text x="50" y="138" textLength="503">coverage</text>
|
|
16
|
-
<text x="658" y="148" textLength="
|
|
17
|
-
<text x="648" y="138" textLength="
|
|
16
|
+
<text x="658" y="148" textLength="330" fill="#000" opacity="0.25">100%</text>
|
|
17
|
+
<text x="648" y="138" textLength="330">100%</text>
|
|
18
18
|
</g>
|
|
19
19
|
|
|
20
20
|
</svg>
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**!
|
|
2
|
-
* @uiw/copy-to-clipboard v1.0.
|
|
2
|
+
* @uiw/copy-to-clipboard v1.0.18
|
|
3
3
|
* Copy to clipboard.
|
|
4
4
|
*
|
|
5
|
-
* Copyright (c)
|
|
5
|
+
* Copyright (c) 2025 Kenny Wang
|
|
6
6
|
* https://github.com/uiwjs/copy-to-clipboard.git
|
|
7
7
|
*
|
|
8
8
|
* @website: https://uiwjs.github.io/copy-to-clipboard
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**!
|
|
2
|
-
* @uiw/copy-to-clipboard v1.0.
|
|
2
|
+
* @uiw/copy-to-clipboard v1.0.18
|
|
3
3
|
* Copy to clipboard.
|
|
4
4
|
*
|
|
5
|
-
* Copyright (c)
|
|
5
|
+
* Copyright (c) 2025 Kenny Wang
|
|
6
6
|
* https://github.com/uiwjs/copy-to-clipboard.git
|
|
7
7
|
*
|
|
8
8
|
* @website: https://uiwjs.github.io/copy-to-clipboard
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**!
|
|
2
|
-
* @uiw/copy-to-clipboard v1.0.
|
|
2
|
+
* @uiw/copy-to-clipboard v1.0.18
|
|
3
3
|
* Copy to clipboard.
|
|
4
4
|
*
|
|
5
|
-
* Copyright (c)
|
|
5
|
+
* Copyright (c) 2025 Kenny Wang
|
|
6
6
|
* https://github.com/uiwjs/copy-to-clipboard.git
|
|
7
7
|
*
|
|
8
8
|
* @website: https://uiwjs.github.io/copy-to-clipboard
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
/*! @uiw/copy-to-clipboard v1.0.
|
|
2
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).copyTextToClipboard=t()}(this,
|
|
1
|
+
/*! @uiw/copy-to-clipboard v1.0.18 | MIT © 2025 Kenny Wang https://uiwjs.github.io/copy-to-clipboard */
|
|
2
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).copyTextToClipboard=t()}(this,function(){"use strict";return function(e,t){if("undefined"==typeof document)return;const o=document.createElement("textarea");o.value=e,o.setAttribute("readonly",""),o.style={position:"absolute",left:"-9999px"},document.body.appendChild(o);const n=document.getSelection().rangeCount>0&&document.getSelection().getRangeAt(0);o.select();let d=!1;try{d=!!document.execCommand("copy")}catch(e){d=!1}document.body.removeChild(o),n&&document.getSelection&&(document.getSelection().removeAllRanges(),document.getSelection().addRange(n)),t&&t(d)}});
|
|
3
3
|
//# sourceMappingURL=copy-to-clipboard.umd.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copy-to-clipboard.umd.min.js","sources":["../src/main.js"],"sourcesContent":["/**\n * *** This styling is an extra step which is likely not required. ***\n * https://github.com/w3c/clipboard-apis/blob/master/explainer.adoc#writing-to-the-clipboard\n * \n * Why is it here? To ensure:\n * \n * 1. the element is able to have focus and selection.\n * 2. if element was to flash render it has minimal visual impact.\n * 3. less flakyness with selection and copying which **might** occur if\n * the textarea element is not visible.\n *\n * The likelihood is the element won't even render, not even a flash,\n * so some of these are just precautions. However in IE the element\n * is visible whilst the popup box asking the user for permission for\n * the web page to copy to the clipboard.\n * \n * Place in top-left corner of screen regardless of scroll position.\n *\n * @typedef CopyTextToClipboard\n * @property {(text: string, method?: (isCopy: boolean) => void) => void} void\n * @returns {void}\n * \n * @param {string} text \n * @param {CopyTextToClipboard} cb \n */\nexport default function copyTextToClipboard(text, cb) {\n if (typeof document === \"undefined\") return;\n const el = document.createElement('textarea');\n el.value = text;\n el.setAttribute('readonly', '');\n el.style = {\n position: 'absolute',\n left: '-9999px',\n }\n document.body.appendChild(el);\n const selected = document.getSelection().rangeCount > 0 ? document.getSelection().getRangeAt(0) : false;\n el.select();\n let isCopy = false;\n try {\n const successful = document.execCommand('copy');\n isCopy = !!successful;\n } catch (err) {\n isCopy = false;\n }\n document.body.removeChild(el);\n if (selected && document.getSelection) {\n document.getSelection().removeAllRanges();\n document.getSelection().addRange(selected);\n }\n cb && cb(isCopy);\n};\n"],"names":["text","cb","document","el","createElement","value","setAttribute","style","position","left","body","appendChild","selected","getSelection","rangeCount","getRangeAt","select","isCopy","execCommand","err","removeChild","removeAllRanges","addRange"],"mappings":";
|
|
1
|
+
{"version":3,"file":"copy-to-clipboard.umd.min.js","sources":["../src/main.js"],"sourcesContent":["/**\n * *** This styling is an extra step which is likely not required. ***\n * https://github.com/w3c/clipboard-apis/blob/master/explainer.adoc#writing-to-the-clipboard\n * \n * Why is it here? To ensure:\n * \n * 1. the element is able to have focus and selection.\n * 2. if element was to flash render it has minimal visual impact.\n * 3. less flakyness with selection and copying which **might** occur if\n * the textarea element is not visible.\n *\n * The likelihood is the element won't even render, not even a flash,\n * so some of these are just precautions. However in IE the element\n * is visible whilst the popup box asking the user for permission for\n * the web page to copy to the clipboard.\n * \n * Place in top-left corner of screen regardless of scroll position.\n *\n * @typedef CopyTextToClipboard\n * @property {(text: string, method?: (isCopy: boolean) => void) => void} void\n * @returns {void}\n * \n * @param {string} text \n * @param {CopyTextToClipboard} cb \n */\nexport default function copyTextToClipboard(text, cb) {\n if (typeof document === \"undefined\") return;\n const el = document.createElement('textarea');\n el.value = text;\n el.setAttribute('readonly', '');\n el.style = {\n position: 'absolute',\n left: '-9999px',\n }\n document.body.appendChild(el);\n const selected = document.getSelection().rangeCount > 0 ? document.getSelection().getRangeAt(0) : false;\n el.select();\n let isCopy = false;\n try {\n const successful = document.execCommand('copy');\n isCopy = !!successful;\n } catch (err) {\n isCopy = false;\n }\n document.body.removeChild(el);\n if (selected && document.getSelection) {\n document.getSelection().removeAllRanges();\n document.getSelection().addRange(selected);\n }\n cb && cb(isCopy);\n};\n"],"names":["text","cb","document","el","createElement","value","setAttribute","style","position","left","body","appendChild","selected","getSelection","rangeCount","getRangeAt","select","isCopy","execCommand","err","removeChild","removeAllRanges","addRange"],"mappings":";0PAyBe,SAA6BA,EAAMC,GAChD,GAAwB,oBAAbC,SAA0B,OACrC,MAAMC,EAAKD,SAASE,cAAc,YAClCD,EAAGE,MAAQL,EACXG,EAAGG,aAAa,WAAY,IAC5BH,EAAGI,MAAQ,CACTC,SAAU,WACVC,KAAM,WAERP,SAASQ,KAAKC,YAAYR,GAC1B,MAAMS,EAAWV,SAASW,eAAeC,WAAa,GAAIZ,SAASW,eAAeE,WAAW,GAC7FZ,EAAGa,SACH,IAAIC,GAAS,EACb,IAEEA,IADmBf,SAASgB,YAAY,OAEzC,CAAC,MAAOC,GACPF,GAAS,CACV,CACDf,SAASQ,KAAKU,YAAYjB,GACtBS,GAAYV,SAASW,eACvBX,SAASW,eAAeQ,kBACxBnB,SAASW,eAAeS,SAASV,IAEnCX,GAAMA,EAAGgB,EACX"}
|
package/dist/css/main.css
CHANGED
|
@@ -1,17 +1,43 @@
|
|
|
1
1
|
[data-color-mode*='dark'],
|
|
2
2
|
[data-color-mode*='dark'] body {
|
|
3
3
|
--color-header-bg: #3a3a3a8f;
|
|
4
|
-
--color-header-border: #
|
|
4
|
+
--color-header-border: #21262d7a;
|
|
5
5
|
--color-hover: #ffffff1c;
|
|
6
6
|
--color-hoc-bg: #fffefe08;
|
|
7
|
+
|
|
8
|
+
--color-border-default: #d0d7de;
|
|
9
|
+
--color-accent-fg: #0969da;
|
|
10
|
+
--color-accent-emphasis: #0969da;
|
|
11
|
+
--color-danger-fg: #d1242f;
|
|
12
|
+
--color-danger-emphasis: #cf222e;
|
|
13
|
+
--color-attention-fg: #9a6700;
|
|
14
|
+
--color-attention-emphasis: #9a6700;
|
|
15
|
+
--color-done-fg: #8250df;
|
|
16
|
+
--color-done-emphasis: #8250df;
|
|
17
|
+
--color-success-fg: #1a7f37;
|
|
18
|
+
--color-success-emphasis: #1f883d;
|
|
19
|
+
--color-fg-muted: #8b949e;
|
|
7
20
|
}
|
|
8
21
|
|
|
9
22
|
[data-color-mode*='light'],
|
|
10
23
|
[data-color-mode*='light'] body {
|
|
11
24
|
--color-header-bg: #ffffff52;
|
|
12
|
-
--color-header-border: #
|
|
25
|
+
--color-header-border: #0000001c;
|
|
13
26
|
--color-hover: #0000001a;
|
|
14
27
|
--color-hoc-bg: #00000008;
|
|
28
|
+
|
|
29
|
+
--color-border-default: #30363d;
|
|
30
|
+
--color-accent-fg: #58a6ff;
|
|
31
|
+
--color-accent-emphasis: #1f6feb;
|
|
32
|
+
--color-danger-fg: #f85149;
|
|
33
|
+
--color-danger-emphasis: #da3633;
|
|
34
|
+
--color-attention-fg: #d29922;
|
|
35
|
+
--color-attention-emphasis: #9e6a03;
|
|
36
|
+
--color-done-fg: #a371f7;
|
|
37
|
+
--color-done-emphasis: #8957e5;
|
|
38
|
+
--color-success-fg: #3fb950;
|
|
39
|
+
--color-success-emphasis: #238636;
|
|
40
|
+
--color-fg-muted: #57606a;
|
|
15
41
|
}
|
|
16
42
|
|
|
17
43
|
*,
|
|
@@ -20,6 +46,17 @@
|
|
|
20
46
|
box-sizing: border-box;
|
|
21
47
|
}
|
|
22
48
|
|
|
49
|
+
::-webkit-scrollbar {
|
|
50
|
+
background: transparent;
|
|
51
|
+
width: 8px;
|
|
52
|
+
height: 8px;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
::-webkit-scrollbar-thumb {
|
|
56
|
+
background: var(--color-fg-muted);
|
|
57
|
+
border-radius: 10px;
|
|
58
|
+
}
|
|
59
|
+
|
|
23
60
|
html {
|
|
24
61
|
scroll-behavior: smooth;
|
|
25
62
|
}
|
|
@@ -212,10 +249,10 @@ section.article-footer a {
|
|
|
212
249
|
align-items: center;
|
|
213
250
|
}
|
|
214
251
|
|
|
215
|
-
|
|
252
|
+
.edit-button {
|
|
216
253
|
padding-right: 8px;
|
|
217
254
|
}
|
|
218
|
-
|
|
255
|
+
.edit-button svg {
|
|
219
256
|
height: 15px;
|
|
220
257
|
margin-right: 6px;
|
|
221
258
|
}
|
|
@@ -256,3 +293,59 @@ section.article-footer .atime {
|
|
|
256
293
|
color: var(--color-fg-muted);
|
|
257
294
|
font-size: 14px;
|
|
258
295
|
}
|
|
296
|
+
|
|
297
|
+
.markdown-alert {
|
|
298
|
+
border-left: 0.25em solid var(--borderColor-default, var(--color-border-default));
|
|
299
|
+
color: inherit;
|
|
300
|
+
margin-bottom: 16px;
|
|
301
|
+
padding: 0.5rem 1em;
|
|
302
|
+
}
|
|
303
|
+
.markdown-alert > :last-child {
|
|
304
|
+
margin-bottom: 0 !important;
|
|
305
|
+
}
|
|
306
|
+
.markdown-alert .markdown-alert-title {
|
|
307
|
+
align-items: center;
|
|
308
|
+
display: flex;
|
|
309
|
+
font-size: 14px;
|
|
310
|
+
font-weight: 500;
|
|
311
|
+
line-height: 1;
|
|
312
|
+
}
|
|
313
|
+
.markdown-alert .markdown-alert-title svg.octicon {
|
|
314
|
+
margin-right: 8px !important;
|
|
315
|
+
margin-right: var(--base-size-8, 8px) !important;
|
|
316
|
+
}
|
|
317
|
+
.markdown-alert.markdown-alert-note {
|
|
318
|
+
border-left-color: var(--borderColor-accent-emphasis, var(--color-accent-emphasis));
|
|
319
|
+
}
|
|
320
|
+
.markdown-alert.markdown-alert-note .markdown-alert-title {
|
|
321
|
+
color: var(--color-accent-fg);
|
|
322
|
+
color: var(--fgColor-accent, var(--color-accent-fg));
|
|
323
|
+
}
|
|
324
|
+
.markdown-alert.markdown-alert-tip {
|
|
325
|
+
border-left-color: var(--borderColor-success-emphasis, var(--color-success-emphasis));
|
|
326
|
+
}
|
|
327
|
+
.markdown-alert.markdown-alert-tip .markdown-alert-title {
|
|
328
|
+
color: var(--color-success-fg);
|
|
329
|
+
color: var(--fgColor-success, var(--color-success-fg));
|
|
330
|
+
}
|
|
331
|
+
.markdown-alert.markdown-alert-important {
|
|
332
|
+
border-left-color: var(--borderColor-done-emphasis, var(--color-done-emphasis));
|
|
333
|
+
}
|
|
334
|
+
.markdown-alert.markdown-alert-important .markdown-alert-title {
|
|
335
|
+
color: var(--color-done-fg);
|
|
336
|
+
color: var(--fgColor-done, var(--color-done-fg));
|
|
337
|
+
}
|
|
338
|
+
.markdown-alert.markdown-alert-warning {
|
|
339
|
+
border-left-color: var(--borderColor-attention-emphasis, var(--color-attention-emphasis));
|
|
340
|
+
}
|
|
341
|
+
.markdown-alert.markdown-alert-warning .markdown-alert-title {
|
|
342
|
+
color: var(--color-attention-fg);
|
|
343
|
+
color: var(--fgColor-attention, var(--color-attention-fg));
|
|
344
|
+
}
|
|
345
|
+
.markdown-alert.markdown-alert-caution {
|
|
346
|
+
border-left-color: var(--borderColor-danger-emphasis, var(--color-danger-emphasis));
|
|
347
|
+
}
|
|
348
|
+
.markdown-alert.markdown-alert-caution .markdown-alert-title {
|
|
349
|
+
color: var(--color-danger-fg);
|
|
350
|
+
color: var(--fgColor-danger, var(--color-danger-fg));
|
|
351
|
+
}
|
package/dist/index.html
CHANGED
|
@@ -4,36 +4,51 @@
|
|
|
4
4
|
<meta charset="UTF-8">
|
|
5
5
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
7
|
-
<title>Copy Text to Clipboard Copy Text to Clipboard 1.0.
|
|
7
|
+
<title>Copy Text to Clipboard Copy Text to Clipboard 1.0.18</title>
|
|
8
8
|
<meta name="description" content="Why is it here? To ensure:">
|
|
9
9
|
<meta name="keywords" content="copy,text,clipboard,browser,clipboard-copy,clipboard.js">
|
|
10
|
-
<
|
|
11
|
-
<
|
|
12
|
-
<
|
|
13
|
-
<
|
|
14
|
-
<
|
|
15
|
-
<
|
|
10
|
+
<meta name="author" content="Kenny Wong">
|
|
11
|
+
<meta property="og:site_name" content="Copy Text to Clipboard <sup>1.0.18</sup>">
|
|
12
|
+
<meta property="og:url" content="https://wangchujiang.com/copy-to-clipboard/index.html">
|
|
13
|
+
<meta property="og:type" content="application">
|
|
14
|
+
<meta property="og:title" content="Copy Text to Clipboard <sup>1.0.18</sup>">
|
|
15
|
+
<meta property="og:description" content="Why is it here? To ensure:">
|
|
16
|
+
<meta property="twitter:site" content="@jaywcjlove">
|
|
17
|
+
<meta property="twitter:creator" content="jaywcjlove">
|
|
18
|
+
<meta property="twitter:title" content="Copy Text to Clipboard <sup>1.0.18</sup>">
|
|
19
|
+
<meta property="twitter:description" content="Why is it here? To ensure:">
|
|
20
|
+
<link rel="stylesheet" type="text/css" href="css/main.css?v=1.34.4">
|
|
21
|
+
<link rel="stylesheet" type="text/css" href="css/tocbot.css?v=1.34.4">
|
|
22
|
+
<link rel="stylesheet" type="text/css" href="css/media.css?v=1.34.4">
|
|
23
|
+
<link rel="stylesheet" type="text/css" href="css/sidebar.css?v=1.34.4">
|
|
24
|
+
<link rel="stylesheet" type="text/css" href="css/copy.css?v=1.34.4">
|
|
25
|
+
<link rel="stylesheet" type="text/css" href="css/demo-preview.css?v=1.34.4">
|
|
16
26
|
<link rel="icon" href="data:image/png;base64,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" type="image/x-icon">
|
|
17
|
-
<script src="js/copy.js?v=1.
|
|
18
|
-
<script src="js/dark-mode.js?v=1.
|
|
19
|
-
<script src="js/markdown-style.js?v=1.
|
|
27
|
+
<script src="js/copy.js?v=1.34.4"></script>
|
|
28
|
+
<script src="js/dark-mode.js?v=1.34.4"></script>
|
|
29
|
+
<script src="js/markdown-style.js?v=1.34.4"></script>
|
|
20
30
|
</head>
|
|
21
31
|
<body id="idoctotop"><a href="#idoctotop" class="gototop">top</a>
|
|
22
32
|
<header class="header">
|
|
23
|
-
<article class="inner warpper"><a class="logo" href="index.html"><img alt="Copy Text to Clipboard <sup>1.0.
|
|
24
|
-
<span class="title">Copy Text to Clipboard <sup>1.0.
|
|
33
|
+
<article class="inner warpper" style="max-width:720px;"><a class="logo" href="index.html"><img alt="Copy Text to Clipboard <sup>1.0.18</sup> logo" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAAAXNSR0IArs4c6QAAEIlJREFUeF7tnXtwVNUdx3/n7kIe8sgTNEjLTMeAUrVUKB0U0f6D1ZkKCqhBJKDSdjplHEnW6B8l0hZIQKBaq+KMQDvTOhYfnY5jpU7rg9pp0Y5aSysKA4SEAJJNIJjdkN3TOWuigcnuub97727u2fu9MzuJ7ve8vt/72XPP2XCvIBxwAA6kdUDAGzgAB9I7AEBwdsCBDA4AEJwecACA4ByAA84cwAzizDeUCogDACQgQWOYzhwAIM58Q6mAOABAAhI0hunMAQDizDeUCogDACQgQWOYzhwAIM58Q6mAOABAAhI0hunMAQDizDeUCogDACQgQWOYzhwAIM58Q6mAOABAAhI0hunMAQDizDeUCogDACQgQWOYzhwAIM58Q6mAOABAAhI0hunMgawC0tTU9DgRLRRCVDrrHqtUBxFFiSj1U0rZYVlWRzKZVP+v3bKsViJqi8fjbX19fa2NjY1JVu0BFG/atKlMSlmRSCQqhRAVRFQhpVRZqt9TP6WUJUR0wcBLCDHweyhHlm1PJBI7Hnzwwdez0V7WAGlubpbZ6LCHdbYLIVqllB8JIfZIKfcUFha+s3LlyriHbfi6qrVr16oTf6plWZcR0VQhxGUKAAWDekkpc3WSu/bJsqypdXV1e11XdF4FWQFkw4YNm6WU93nd2RzV94GCxbIsBc0/IpHIezlqN6vNrFu3blIoFLpOSjmjHwQFRC5m9qyOa1DleyKRyLe8biwrgDQ3N6vLmSqvOztM9Z0moreklLuFEO/29fW9+9BDD50cpr7YbnYACCKaLYS4RkpZbbuwoUIhxJX19fUfeNn9bAHi98srxx4KIRJSyn9KKV+TUu5qaGjY7bgyjwtu3LhxbjKZnNsPxAyPqzehuusikcgbXnYUgLh3U31i7VKwPPDAA392Xx2vhqampuuFEDcS0U1EdCmvdN6pAYifI5VSfqJgIaJXe3p6djU2Nsay0d/169fPCoVCN0opFRTfyEYbJtZpWdacurq6N73sO2YQL908ty61Q5aaWWKxmIJFbT+7Opqbm+8honuJyPPFqKuO+aRw3gBSX1/vuaXxeJx6e3tJ/Tz/d/XfPT09FI1Gv3glEgnP+5ChwhNEtFMIsbO+vv4v3IabmpqWWJb1AynlLG5Zrr6goICKioqouLj4nJ+D/9/g35U+V8ezzz5LLS0taZtLJpNzGhoazJ9BsgEIN6Surq5zgFHwHD16NAVSNg8hxG4p5c5wOLzz/vvvV7t9aY/169cvUmAQ0fXZ6FNZWRmNHz8+9brwwgtTP0eOHJmNpjypUwcIEV0biUTe8qSx/kqG5RLLD4CkM/HkyZPU2tpKR44cSf3s7Oz00u/BdXUR0fPJZHJnQ0PDK4Pf2LBhw81SSgXGDV41rk78iRMnpl4mwDDUuAGIV2eDh/UoYNra2lIvNb2rmSYLxx4i+lgIsU9K+V0imum2DQVEVVVV6jVp0iSaMGGC2yqHvbwOEMuyZtfV1Xm67Y4ZhBn74cOH6dChQ3Tw4EFqb29nls6uvKKigqqrq1MwXHzxxRQOh7PbYI5r1wGSTCZne/29FABxEfKxY8dSsAwA46IqV0UnT55MAy9XFfm8sA4QIromEon8zcthABCP3FSXXvv370+91CyT7WNgtpgyZQqVl5dnuzlf1A9AfBGD+04cP36cDhw4kIJFrV28PNR64oorrkjNGEE7dICEQqGrV61a9baXvrieQQp2nKq2pLxKyuQXia058fTqTJ308y6Wl+aquhQgChQFjALH6aFmjOnTp9Pll1/utArjy+kAeX70nGfeL6xOfVEiRfLt8MiC98/UjDrmZuCuACnY3rlREK06vwNrjm/N2KcgATLYCHXpNXAZZnc3LBQK0cyZM2nGjBm+/o7CzUlot6wOkKdLb6aWEePPr25rrLbk+3bbOF/nGJDC7Z1p/2IXgOjj2Lt3L3344YepBX66Q31jvWDBgtT3FjiIHAKSsi5WW+LoXHdUqHBH53MkaWG60ACIvdP57NmztGXLlrRitV1bU1Njr7IAqNwAIokeideW1HFtYgNSsL3za4JI/dVq2gOA2IsBgNjzaUClB2QetYwYl7ZSKazJ8aVj9nFaZQNStCM6X0rxAgDh2Dy0FoDwPNQBsrV0Hh3JAIggUdNTO/Z3nFbZgBRuizaSEBl3qTCD2IsAgNjzye4MogOEpHw4tqy0kdMqAOG45bEWgPAMdTuDABCe38OuBiC8CAAIzy/j1QCEF6EOkKdK51PriAx3MsIlFs/w4VYDEF4CAITnl/FqAMKLEIDw/DJeDUB4EWoBKZtPrWFcYvFc9bEagPDC0QHyZNl8agMgPFP9rAYgvHQACM8v49UAhBehHpBbqC2snsyQ5sAuFs/w4VYDEF4CAITnl/FqAMKLUAfIE2W30FHMIDxT/awGILx0AAjPL+PVAIQXIQDp92vfvn3U3d3Nc8+HanWPqlGjRqXtmReAqNulqpfpx0UXXUTqlenQA3IrHQ1nuMNLvizSAcjnp4mdf1EIQL5E6okyAGLUByVmEPtxeTGD/KrsVmrHDGLf9OFWAhD7CQCQQV7pbvuDSyxcYg2Flm4NghnE/geSL5SYQezH4M0MsoDaw2XpG8Ui3X4guVACEPsuewHI42UL6FhQALFvrX+V6tkcudjmPX1aPcrd7GP06NGut3kDA4jZUdvvvRffg9hvzXylbg0CQMzP+JwRABBeoACE55fxagDCi1AHyC/LFtLxcGn+L9J5tpmrBiC87AAIzy/j1QCEFyEA4fllvBqA8CIEIDy/jFcDEF6EOkAeK1tIJ7AG4ZnqZzUA4aUDQHh+Ga8GILwI9YAsohPhEuxi8Wz1rxqA8LLRAlK+iE6EAAjPVR+rAQgvHADC88t4NQDhRagD5NHyRfQpZhCeqX5WAxBeOgCE55fxagDCixCA8PwyXg1AeBHqAbmNPg2NxS4Wz1b/qgEILxsdIL8ov41OAhCeqX5WAxBeOgCE55fxagDCixCA8PwyXg1AeBECEJ5fxqsBCC9CHSBbym+njtAYLNJ5tvpXDUB42QCQfr/y4WbMaijqTh25uKsJ7zTzr9rtzasDM4Pgzoqfn8S4efW5MGMG6fcDgACQoeY5HSCby2+naBDWIAAEgACQDJfCAASAOAPkDoqGRuf/LhYAASAABDMIebHNiydMfXkibS7HDOLfPcoheoa7u9uPy4u7u28qv4M6g3CJlQ8P8Bw4NbL9PUhQvFJ+6naxAgOI/c8ds5VeXGKZ7QCv93pAaqgzlP6pwpQvD9Dh2WauGoDwsgMgPL+MVwMQXoQ6QB4pr6EuzCA8U/2sBiC8dLSAVNRQl4VLLJ6rPlYDEF44WkAwg/AM9bsagPAS0gKCGYRnqN/VAISXkA6QjRWL6ZR1Qf7/qQnPNnPVAISXHQDh+WW8GoDwIgQgPL+MVwMQXoQAhOeX8WoAwotQB8iGisV0GmsQnql+VgMQXjp6QO6k01YxFuk8W/2rBiC8bAAIzy/j1QCEFyEA4fllvBqA8CIEIDy/jFcDEF6EOkCaK+6kbqxBeKb6WQ1AeOnoAVlC3VYRFuk8W/2rBiC8bAAIzy/j1QCEFyEA4fllvBqA8CLUAdJUsYTO4BKLZ6qf1QCElw4A4fllvBqA8CIEIDy/jFcDEF6EekDuojNWIXaxeLb6Vw1AeNnoAFlfcRd9FgRA8ACdz08cu88H4Z1m/lW7fYBOYADBzat5gOTDB4oXtx4FIP798BuyZ7g3r/3AAMggr+rr6zM6hxkEM8hQJ4huDbKuYin1WAX5v0gHIAAEgGSYQwAIAHEESOVS6hGYQexf2A6zEmsQ+wF4sQZZB0DsG+4HJQCxnwIAYSzSg/JQGC++KAyKV+r00S3S11YupVgQLrHsf+6YrfQCELMd4PVeD0gtxcTI/N/F4tlmrhqA8LIDIDy/jFcDEF6EAITnl/FqAMKLUAfIzytrKY5LLJ6pflYDEF46AITnl/FqAMKLUA/IMoqLEVik82z1rxqA8LIBIDy/jFcDEF6EOkB+VrmMejGD8Ez1sxqA8NIBIDy/jFcDEF6EAITnl/FqAMKLUA/IcuoVYSzSebb6Vw1AeNnoAPlp5XI6C0B4pvpZDUB46QAQnl/GqwEIL0IAwvPLeDUA4UUIQHh+Ga8GILwI9YDcTWdFCIt0nq3+VQMQXjY6QNZU3k19AIRnqp/VAISXDgDh+WW8GoDwIgQgPL+MVwMQXoQAhOeX8WoAwotQB8jDlXdTAmsQnql+VgMQXjp6QO6hhLCwi8Wz1b9qAMLLBoDw/DJeDUB4EQIQnl/GqwEIL0IdII3j7qEk4RKL56qP1QCEFw4A4fllvBqA8CIEIDy/jFcDEF6EekDupSQJ7GLxbPWvGoDwstEBsnrcvSQBCM9UP6sBCC+dwAAya9YsnjN5qi4tLaWXX3457eiqqqpo2rRpFI1G89QB3rBaWlpIvdIdeTOD8GwJrrqgoIDi8XhwDWCOHIAwDYM8WA6sHreCZKYhS/lwbFlpI8eVDEv+oasp3BZtJCFWZ2pkzfGtnD5ACwc8ceAn41ZkrgeAeOIzKjHUAWMAWdz1Kk2OHzLUZnTbRAc6QmNoS/ntZswg03v+S987/ZaJPqPPhjqwu/hK2jVqphmAqF5OjR+g27peM9RudNskB2zBoQbklzXIgLlFMk7lfV0UpoRJfmetr8qLS+MHqbr3sKM2Ph45kfaPnEBtIyodlc+3QupRB9HQaOrJ9OjnwYP2GyD5FohX4/lm7COad+oNVnUvjZlD/yqczCoD8XkOABBzTolZn/2bbuj+u60O/2H0tfRu0RRbWogyOJALQAq2Re8TQmxGEO4dUBsZakMj06EWnuoaG4d7B6SkH8aXlTzJqYn9RWHRts6FUtBznEagTe/Aks5X6JLeof++yPbiEwbbckAkrat7lo9525a4X8QGpHh751VJonc4jUCb3gG1kbGi4yUqT3SdI1LrDbXuwOGZA/tiZ3qvoh+N6+bUyAZEVV60LfqoFOLHnIagTe9AVd+ntKLjRbL6/5LofwVfpd+OnQvLvHRAyutjy0pf51bpCBDViJ2/yeJ2Jsj6ge+NWkaMp+0lN2V+UlKQjXIwdinEyvjSsY85KJrpn1/pqyt65tQsaSWXE4lvE8mp+hJQZHJg9mfv0fuFl9Ap6wIY5d6B16VaCoTEU/ElYz9xWp3jGcRpg/lSrnBH559IkinXQaditSVj88X7XI4DgDh0u/A3p2ZTIvmmw+K5LeZg/z+3HfRvawDERTYF26MvChLzXFSRg6LiP7HasV/PQUN52QQAcRFr8Y7otKQULxHRV1xUk9WiQtKinmUlv89qI3lcOQBxGW7hM53fIYv+SETFLqvyvDjgcG8pAHHvIRX9OnpLUorFQtK1RFThQZXOq5B0jAT9VUh6ATOHcxsHSgIQ9x6eU0PqsitJw7JjlLRGdPQuHfWBx0MKdHUAJNDxY/A6BwCIziG8H2gHAEig48fgdQ4AEJ1DeD/QDgCQQMePwescACA6h/B+oB0AIIGOH4PXOQBAdA7h/UA7AEACHT8Gr3MAgOgcwvuBdgCABDp+DF7nAADROYT3A+0AAAl0/Bi8zgEAonMI7wfaAQAS6PgxeJ0DAETnEN4PtAMAJNDxY/A6BwCIziG8H2gH/g8LPRyq8vuk8QAAAABJRU5ErkJggg==">
|
|
34
|
+
<span class="title">Copy Text to Clipboard <sup>1.0.18</sup></span></a>
|
|
25
35
|
<div class="content">
|
|
26
|
-
<ul class="menu"
|
|
36
|
+
<ul class="menu">
|
|
37
|
+
<li><a href="index.html" target="" class="active">Home</a></li>
|
|
38
|
+
<li><a href="https://wangchujiang.com/#/app" target="__blank" class="">Apps</a></li>
|
|
39
|
+
<li><a href="https://jaywcjlove.github.io/#/sponsor" target="__blank" class="">Sponsor</a></li>
|
|
40
|
+
</ul><a href="https://github.com/jaywcjlove/copy-to-clipboard" target="_blank" rel="noopener noreferrer" title="Github" name="Github" class="github"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
|
27
41
|
<path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path>
|
|
28
42
|
</svg></a>
|
|
29
43
|
<dark-mode permanent=""></dark-mode>
|
|
30
44
|
</div>
|
|
31
45
|
</article>
|
|
32
46
|
</header>
|
|
33
|
-
<div class="warpper-content warpper">
|
|
34
|
-
<markdown-style>
|
|
47
|
+
<div style="max-width:720px;" class="warpper-content warpper notocs">
|
|
48
|
+
<markdown-style theme-auto-switch-disabled="">
|
|
35
49
|
<h1 id="copy-text-to-clipboard"><a aria-hidden="true" tabindex="-1" href="#copy-text-to-clipboard" class="anchor"><span class="icon icon-link"></span></a>Copy Text to Clipboard</h1>
|
|
36
50
|
<p>
|
|
51
|
+
<a href="https://jaywcjlove.github.io/#/sponsor"><img src="https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee" alt="Buy me a coffee"></a>
|
|
37
52
|
<img src="http://jaywcjlove.github.io/sb/status/no-dependencies.svg" alt="No Dependencies">
|
|
38
53
|
<a href="https://www.npmjs.com/package/@uiw/copy-to-clipboard"><img src="https://img.shields.io/npm/dm/@uiw/copy-to-clipboard.svg?style=flat" alt="NPM Downloads"></a>
|
|
39
54
|
<a href="https://github.com/uiwjs/react-codemirror/actions"><img src="https://github.com/uiwjs/copy-to-clipboard/workflows/Build/badge.svg" alt="Build & Deploy"></a>
|
|
@@ -86,21 +101,14 @@ copyTextToClipboard('test', (isCopy) => {
|
|
|
86
101
|
<h3 id="license"><a aria-hidden="true" tabindex="-1" href="#license" class="anchor"><span class="icon icon-link"></span></a>License</h3>
|
|
87
102
|
<p>Licensed under the MIT License.</p>
|
|
88
103
|
</markdown-style>
|
|
89
|
-
<nav class="tocs">
|
|
90
|
-
<aside class="inner toc">
|
|
91
|
-
<ol class="tocs-list">
|
|
92
|
-
<li><a href="#usage" class="tocs-link">Usage</a></li>
|
|
93
|
-
<li><a href="#contributors" class="tocs-link">Contributors</a>
|
|
94
|
-
<ol class="tocs-list is-collapsed">
|
|
95
|
-
<li><a href="#license" class="tocs-link">License</a></li>
|
|
96
|
-
</ol>
|
|
97
|
-
</li>
|
|
98
|
-
</ol>
|
|
99
|
-
</aside>
|
|
100
|
-
</nav>
|
|
101
104
|
</div>
|
|
102
|
-
<script src="js/demo-preview.js?v=1.
|
|
103
|
-
<div class="footer warpper"
|
|
104
|
-
|
|
105
|
+
<script src="js/demo-preview.js?v=1.34.4"></script>
|
|
106
|
+
<div class="footer warpper" style="max-width:720px;">
|
|
107
|
+
<a href="https://wangchujiang.com/#/app" target="_blank">App</a> •
|
|
108
|
+
<a href="https://wangchujiang.com/#/projects" target="_blank">Projects</a> •
|
|
109
|
+
<a href="https://wangchujiang.com/#/sponsor" target="_blank">Sponsor</a> •
|
|
110
|
+
<a href="https://wangchujiang.com/#/app" target="_blank">More Apps</a><br><br>Generated by <a href="https://github.com/jaywcjlove/idoc" target="_blank">idoc</a> v1.34.4
|
|
111
|
+
</div>
|
|
112
|
+
<script src="js/tocbot.js?v=1.34.4"></script>
|
|
105
113
|
</body>
|
|
106
114
|
</html>
|
package/dist/js/copy.js
CHANGED
|
@@ -8,7 +8,7 @@ function copyTextToClipboard(text, cb) {
|
|
|
8
8
|
el.style = {
|
|
9
9
|
position: 'absolute',
|
|
10
10
|
left: '-9999px',
|
|
11
|
-
}
|
|
11
|
+
};
|
|
12
12
|
document.body.appendChild(el);
|
|
13
13
|
const selected = document.getSelection().rangeCount > 0 ? document.getSelection().getRangeAt(0) : false;
|
|
14
14
|
el.select();
|
|
@@ -25,16 +25,16 @@ function copyTextToClipboard(text, cb) {
|
|
|
25
25
|
document.getSelection().addRange(selected);
|
|
26
26
|
}
|
|
27
27
|
cb && cb(isCopy);
|
|
28
|
-
}
|
|
28
|
+
}
|
|
29
29
|
|
|
30
30
|
function copied(target, str) {
|
|
31
31
|
target.classList.add('active');
|
|
32
32
|
const input = target.parentElement.querySelector('input');
|
|
33
33
|
if (input) {
|
|
34
|
-
copyTextToClipboard(input.value || '', function() {
|
|
34
|
+
copyTextToClipboard(input.value || '', function () {
|
|
35
35
|
setTimeout(() => {
|
|
36
36
|
target.classList.remove('active');
|
|
37
37
|
}, 2000);
|
|
38
38
|
});
|
|
39
39
|
}
|
|
40
|
-
}
|
|
40
|
+
}
|
package/dist/js/demo-preview.js
CHANGED
|
@@ -3,7 +3,7 @@ const demo = document.querySelectorAll('.idoc-demo-warpper .idoc-demo-previw');
|
|
|
3
3
|
function getButton(elm, type = 'BUTTON') {
|
|
4
4
|
let btn;
|
|
5
5
|
do {
|
|
6
|
-
elm = elm.nextElementSibling
|
|
6
|
+
elm = elm.nextElementSibling;
|
|
7
7
|
if (elm.tagName === type) {
|
|
8
8
|
btn = elm;
|
|
9
9
|
elm = undefined;
|
|
@@ -19,13 +19,13 @@ if (demo && demo.length > 0) {
|
|
|
19
19
|
if (button) {
|
|
20
20
|
button.innerHTML = item.classList.contains('ishiden') ? 'Preview' : 'Show Code';
|
|
21
21
|
if (item.tagName === 'DIV') {
|
|
22
|
-
item.innerHTML = item.previousElementSibling.defaultValue
|
|
22
|
+
item.innerHTML = item.previousElementSibling.defaultValue;
|
|
23
23
|
}
|
|
24
24
|
button.onclick = () => {
|
|
25
25
|
item.classList.toggle('ishiden');
|
|
26
26
|
button.innerHTML = item.classList.contains('ishiden') ? 'Preview' : 'Show Code';
|
|
27
|
-
}
|
|
27
|
+
};
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
});
|
|
31
|
-
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
(() => {
|
|
2
|
+
const targetElement = document.documentElement;
|
|
3
|
+
const defaultTheme = targetElement.getAttribute('data-color-mode');
|
|
4
|
+
changeGiscusTheme(defaultTheme);
|
|
5
|
+
const observer = new MutationObserver((mutationsList, observer) => {
|
|
6
|
+
for (const mutation of mutationsList) {
|
|
7
|
+
if (mutation.type === 'attributes') {
|
|
8
|
+
const value = targetElement.getAttribute('data-color-mode');
|
|
9
|
+
changeGiscusTheme(value);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
observer.observe(targetElement, {
|
|
15
|
+
attributes: true,
|
|
16
|
+
attributeOldValue: true,
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
function changeGiscusTheme(theme = 'light') {
|
|
20
|
+
const iframe = document.querySelector('.giscus-frame');
|
|
21
|
+
if (iframe) {
|
|
22
|
+
const config = {
|
|
23
|
+
giscus: {
|
|
24
|
+
setConfig: {
|
|
25
|
+
theme: theme.toLocaleLowerCase(),
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
iframe.contentWindow.postMessage(config, 'https://giscus.app');
|
|
30
|
+
const script = document.querySelector('script[data-script-id="giscus"]');
|
|
31
|
+
script.setAttribute('data-theme', theme);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
})();
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Markdown Style
|
|
3
|
+
* @version 1.1.0
|
|
4
|
+
* @author 小弟调调
|
|
5
|
+
* https://github.com/jaywcjlove/markdown-style
|
|
6
|
+
*
|
|
7
|
+
* Integrate markdown styles into web components, Markdown CSS styles will not be conflicted.
|
|
8
|
+
* The minimal amount of CSS to replicate the GitHub Markdown style. Support dark-mode/night mode.
|
|
9
|
+
*/
|
|
1
10
|
const octiconLinkStyle = `
|
|
2
11
|
markdown-style h1:hover a.anchor .icon-link:before,
|
|
3
12
|
markdown-style h2:hover a.anchor .icon-link:before,
|
|
@@ -110,7 +119,7 @@ ${octiconLinkStyle}
|
|
|
110
119
|
markdown-style {
|
|
111
120
|
display: block;
|
|
112
121
|
-webkit-text-size-adjust: 100%;
|
|
113
|
-
font-family: -apple-system,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";
|
|
122
|
+
font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";
|
|
114
123
|
font-size: 16px;
|
|
115
124
|
line-height: 1.5;
|
|
116
125
|
word-wrap: break-word;
|
|
@@ -578,6 +587,37 @@ markdown-style sup>a::before {
|
|
|
578
587
|
markdown-style sup>a::after {
|
|
579
588
|
content: "]";
|
|
580
589
|
}
|
|
590
|
+
markdown-style .octicon-video .octicon.octicon-device-camera-video {
|
|
591
|
+
margin: 0 0.5rem 0 0.25rem;
|
|
592
|
+
}
|
|
593
|
+
markdown-style .octicon-video {
|
|
594
|
+
border: 1px solid var(--color-border-default) !important;
|
|
595
|
+
border-radius: 6px !important;
|
|
596
|
+
display: block;
|
|
597
|
+
}
|
|
598
|
+
|
|
599
|
+
markdown-style .octicon-video summary {
|
|
600
|
+
border-bottom: 1px solid var(--color-border-default) !important;
|
|
601
|
+
padding: 8px 16px !important;
|
|
602
|
+
cursor: pointer;
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
markdown-style .octicon-video > video {
|
|
606
|
+
display: block !important;
|
|
607
|
+
max-width: 100% !important;
|
|
608
|
+
padding: 2px;
|
|
609
|
+
box-sizing: border-box;
|
|
610
|
+
border-bottom-right-radius: 6px !important;
|
|
611
|
+
border-bottom-left-radius: 6px !important;
|
|
612
|
+
}
|
|
613
|
+
|
|
614
|
+
markdown-style details.octicon-video:not([open])>*:not(summary) {
|
|
615
|
+
display: none !important;
|
|
616
|
+
}
|
|
617
|
+
|
|
618
|
+
markdown-style details.octicon-video:not([open]) > summary {
|
|
619
|
+
border-bottom: 0 !important;
|
|
620
|
+
}
|
|
581
621
|
|
|
582
622
|
markdown-style h1 .octicon-link,
|
|
583
623
|
markdown-style h2 .octicon-link,
|
|
@@ -962,45 +1002,46 @@ markdown-style ::-webkit-calendar-picker-indicator {
|
|
|
962
1002
|
<slot></slot>
|
|
963
1003
|
`;
|
|
964
1004
|
class MarkdownStyle extends HTMLElement {
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
1005
|
+
get theme() {
|
|
1006
|
+
const value = this.getAttribute('theme');
|
|
1007
|
+
return value === null ? '' : value;
|
|
1008
|
+
}
|
|
1009
|
+
set theme(name) {
|
|
1010
|
+
this.setAttribute('theme', name);
|
|
1011
|
+
}
|
|
1012
|
+
constructor() {
|
|
1013
|
+
super();
|
|
1014
|
+
this.shadow = this.attachShadow({ mode: 'open' });
|
|
1015
|
+
this.shadow.appendChild(__TEMPLATE__.content.cloneNode(true));
|
|
1016
|
+
const style = Array.prototype.slice.call(this.shadow.children).find((item) => item.tagName === 'STYLE');
|
|
1017
|
+
if (style) {
|
|
1018
|
+
const id = '__MARKDOWN_STYLE__';
|
|
1019
|
+
const findStyle = document.getElementById(id);
|
|
1020
|
+
if (!findStyle) {
|
|
1021
|
+
style.id = id;
|
|
1022
|
+
document.head.append(style);
|
|
1023
|
+
}
|
|
984
1024
|
}
|
|
985
|
-
|
|
986
|
-
|
|
1025
|
+
}
|
|
1026
|
+
connectedCallback() {
|
|
1027
|
+
const disableThemeAutoSwitch = this.getAttribute('theme-auto-switch-disabled');
|
|
1028
|
+
if (disableThemeAutoSwitch == '' || (disableThemeAutoSwitch && disableThemeAutoSwitch.toLowerCase() === 'true')) {
|
|
1029
|
+
return;
|
|
987
1030
|
}
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
};
|
|
1002
|
-
}
|
|
1031
|
+
if (!this.theme) {
|
|
1032
|
+
const { colorMode } = document.documentElement.dataset;
|
|
1033
|
+
this.theme = colorMode;
|
|
1034
|
+
const observer = new MutationObserver((mutationsList, observer) => {
|
|
1035
|
+
this.theme = document.documentElement.dataset.colorMode;
|
|
1036
|
+
});
|
|
1037
|
+
observer.observe(document.documentElement, { attributes: true });
|
|
1038
|
+
window.matchMedia('(prefers-color-scheme: light)').onchange = (event) => {
|
|
1039
|
+
this.theme = event.matches ? 'light' : 'dark';
|
|
1040
|
+
};
|
|
1041
|
+
window.matchMedia('(prefers-color-scheme: dark)').onchange = (event) => {
|
|
1042
|
+
this.theme = event.matches ? 'dark' : 'light';
|
|
1043
|
+
};
|
|
1003
1044
|
}
|
|
1045
|
+
}
|
|
1004
1046
|
}
|
|
1005
1047
|
customElements.define('markdown-style', MarkdownStyle);
|
|
1006
|
-
//# sourceMappingURL=index.js.map
|
package/dist/js/tocbot.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
(() => {
|
|
2
2
|
function debounce(fn, delay = 1000) {
|
|
3
|
-
let time = null
|
|
3
|
+
let time = null;
|
|
4
4
|
function _debounce(...args) {
|
|
5
5
|
if (time !== null) clearTimeout(time);
|
|
6
|
-
time = setTimeout(() => fn.apply(this, args), delay)
|
|
6
|
+
time = setTimeout(() => fn.apply(this, args), delay);
|
|
7
7
|
}
|
|
8
|
-
return _debounce
|
|
8
|
+
return _debounce;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
const scrollSmoothOffset = 56;
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
location.hash = anchor.getAttribute('href');
|
|
26
26
|
updateScroll();
|
|
27
27
|
updateAnchor();
|
|
28
|
-
tocsCollapse()
|
|
28
|
+
tocsCollapse();
|
|
29
29
|
});
|
|
30
30
|
});
|
|
31
31
|
}
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
if (element) {
|
|
54
54
|
const tocElement = document.querySelector(`a.tocs-link[href='${decodeURIComponent(element.hash)}']`);
|
|
55
55
|
if (tocElement) {
|
|
56
|
-
updateAnchor(tocElement)
|
|
56
|
+
updateAnchor(tocElement);
|
|
57
57
|
tocsCollapse(tocElement);
|
|
58
58
|
} else {
|
|
59
59
|
const first = document.querySelector('a.tocs-link[href*="#"]');
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
document.addEventListener('scroll',debounce(scrollListener, 30), false);
|
|
68
|
+
document.addEventListener('scroll', debounce(scrollListener, 30), false);
|
|
69
69
|
|
|
70
70
|
function updateAnchor(element) {
|
|
71
71
|
const anchorContainer = document.querySelectorAll('.tocs aside.inner.toc a.tocs-link');
|
|
@@ -98,7 +98,12 @@
|
|
|
98
98
|
if (!element) {
|
|
99
99
|
element = document.querySelector(`a.tocs-link[href='${decodeURIComponent(location.hash)}']`);
|
|
100
100
|
}
|
|
101
|
-
if (
|
|
101
|
+
if (
|
|
102
|
+
element &&
|
|
103
|
+
element.parentElement &&
|
|
104
|
+
element.parentElement.tagName !== 'ASIDE' &&
|
|
105
|
+
!element.parentElement.classList.contains('toc')
|
|
106
|
+
) {
|
|
102
107
|
isOpen(element.parentElement);
|
|
103
108
|
if (element.parentElement.classList.contains('is-collapsed')) {
|
|
104
109
|
element.parentElement.classList.add('is-open');
|
|
@@ -121,8 +126,7 @@
|
|
|
121
126
|
updateSiderBarScroll();
|
|
122
127
|
updateScroll();
|
|
123
128
|
updateAnchor();
|
|
124
|
-
tocsCollapse()
|
|
129
|
+
tocsCollapse();
|
|
125
130
|
clearTimeout(timer);
|
|
126
131
|
}, 100);
|
|
127
|
-
|
|
128
|
-
})();
|
|
132
|
+
})();
|
|
@@ -9,7 +9,7 @@ var jumpToCode = (function init() {
|
|
|
9
9
|
// We don't want to select elements that are direct descendants of another match
|
|
10
10
|
var notSelector = ':not(' + missingCoverageClasses.join('):not(') + ') > '; // becomes `:not(a):not(b) > `
|
|
11
11
|
|
|
12
|
-
//
|
|
12
|
+
// Selector that finds elements on the page to which we can jump
|
|
13
13
|
var selector =
|
|
14
14
|
fileListingElements.join(', ') +
|
|
15
15
|
', ' +
|
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">100% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>19/19</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">100% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>10/10</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
<template id="filterTemplate">
|
|
58
58
|
<div class="quiet">
|
|
59
59
|
Filter:
|
|
60
|
-
<input
|
|
60
|
+
<input type="search" id="fileSearch">
|
|
61
61
|
</div>
|
|
62
62
|
</template>
|
|
63
63
|
</div>
|
|
@@ -80,13 +80,13 @@
|
|
|
80
80
|
</thead>
|
|
81
81
|
<tbody><tr>
|
|
82
82
|
<td class="file high" data-value="main.js"><a href="main.js.html">main.js</a></td>
|
|
83
|
-
<td data-value="
|
|
84
|
-
<div class="chart"><div class="cover-fill" style="width:
|
|
83
|
+
<td data-value="100" class="pic high">
|
|
84
|
+
<div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
|
|
85
85
|
</td>
|
|
86
|
-
<td data-value="
|
|
87
|
-
<td data-value="19" class="abs high">
|
|
88
|
-
<td data-value="
|
|
89
|
-
<td data-value="10" class="abs high">
|
|
86
|
+
<td data-value="100" class="pct high">100%</td>
|
|
87
|
+
<td data-value="19" class="abs high">19/19</td>
|
|
88
|
+
<td data-value="100" class="pct high">100%</td>
|
|
89
|
+
<td data-value="10" class="abs high">10/10</td>
|
|
90
90
|
<td data-value="100" class="pct high">100%</td>
|
|
91
91
|
<td data-value="1" class="abs high">1/1</td>
|
|
92
92
|
<td data-value="100" class="pct high">100%</td>
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
102
102
|
Code coverage generated by
|
|
103
103
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
104
|
-
at
|
|
104
|
+
at 2025-12-12T14:53:50.709Z
|
|
105
105
|
</div>
|
|
106
106
|
<script src="prettify.js"></script>
|
|
107
107
|
<script>
|
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">100% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>19/19</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">100% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>10/10</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
<template id="filterTemplate">
|
|
58
58
|
<div class="quiet">
|
|
59
59
|
Filter:
|
|
60
|
-
<input
|
|
60
|
+
<input type="search" id="fileSearch">
|
|
61
61
|
</div>
|
|
62
62
|
</template>
|
|
63
63
|
</div>
|
|
@@ -140,7 +140,7 @@
|
|
|
140
140
|
<span class="cline-any cline-neutral"> </span>
|
|
141
141
|
<span class="cline-any cline-neutral"> </span>
|
|
142
142
|
<span class="cline-any cline-neutral"> </span>
|
|
143
|
-
<span class="cline-any cline-yes">
|
|
143
|
+
<span class="cline-any cline-yes">4x</span>
|
|
144
144
|
<span class="cline-any cline-yes">3x</span>
|
|
145
145
|
<span class="cline-any cline-yes">3x</span>
|
|
146
146
|
<span class="cline-any cline-yes">3x</span>
|
|
@@ -191,7 +191,7 @@
|
|
|
191
191
|
* @param {CopyTextToClipboard} cb
|
|
192
192
|
*/
|
|
193
193
|
export default function copyTextToClipboard(text, cb) {
|
|
194
|
-
|
|
194
|
+
if (typeof document === "undefined") return;
|
|
195
195
|
const el = document.createElement('textarea');
|
|
196
196
|
el.value = text;
|
|
197
197
|
el.setAttribute('readonly', '');
|
|
@@ -223,7 +223,7 @@ export default function copyTextToClipboard(text, cb) {
|
|
|
223
223
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
224
224
|
Code coverage generated by
|
|
225
225
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
226
|
-
at
|
|
226
|
+
at 2025-12-12T14:53:50.709Z
|
|
227
227
|
</div>
|
|
228
228
|
<script src="prettify.js"></script>
|
|
229
229
|
<script>
|
|
@@ -27,17 +27,31 @@ var addSorting = (function() {
|
|
|
27
27
|
function onFilterInput() {
|
|
28
28
|
const searchValue = document.getElementById('fileSearch').value;
|
|
29
29
|
const rows = document.getElementsByTagName('tbody')[0].children;
|
|
30
|
+
|
|
31
|
+
// Try to create a RegExp from the searchValue. If it fails (invalid regex),
|
|
32
|
+
// it will be treated as a plain text search
|
|
33
|
+
let searchRegex;
|
|
34
|
+
try {
|
|
35
|
+
searchRegex = new RegExp(searchValue, 'i'); // 'i' for case-insensitive
|
|
36
|
+
} catch (error) {
|
|
37
|
+
searchRegex = null;
|
|
38
|
+
}
|
|
39
|
+
|
|
30
40
|
for (let i = 0; i < rows.length; i++) {
|
|
31
41
|
const row = rows[i];
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
row.style.display = '';
|
|
42
|
+
let isMatch = false;
|
|
43
|
+
|
|
44
|
+
if (searchRegex) {
|
|
45
|
+
// If a valid regex was created, use it for matching
|
|
46
|
+
isMatch = searchRegex.test(row.textContent);
|
|
38
47
|
} else {
|
|
39
|
-
|
|
48
|
+
// Otherwise, fall back to the original plain text search
|
|
49
|
+
isMatch = row.textContent
|
|
50
|
+
.toLowerCase()
|
|
51
|
+
.includes(searchValue.toLowerCase());
|
|
40
52
|
}
|
|
53
|
+
|
|
54
|
+
row.style.display = isMatch ? '' : 'none';
|
|
41
55
|
}
|
|
42
56
|
}
|
|
43
57
|
|
package/dist/sitemap.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
https://
|
|
1
|
+
https://wangchujiang.com/copy-to-clipboard/index.html
|
package/package.json
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@uiw/copy-to-clipboard",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.18",
|
|
4
4
|
"description": "Copy to clipboard.",
|
|
5
5
|
"main": "dist/copy-to-clipboard.cjs.js",
|
|
6
6
|
"module": "dist/copy-to-clipboard.esm.js",
|
|
7
7
|
"browser": "dist/copy-to-clipboard.umd.js",
|
|
8
8
|
"homepage": "https://uiwjs.github.io/copy-to-clipboard",
|
|
9
|
+
"funding": "https://jaywcjlove.github.io/#/sponsor",
|
|
9
10
|
"types": "index.d.ts",
|
|
10
11
|
"files": [
|
|
11
12
|
"index.d.ts",
|