@xterm/addon-clipboard 0.3.0-beta.251 → 0.3.0-beta.253
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/lib/addon-clipboard.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.ClipboardAddon=t():e.ClipboardAddon=t()}(self,()=>(()=>{"use strict";var e={};return(()=>{var t=e;Object.defineProperty(t,"__esModule",{value:!0}),t.Base64=t.BrowserClipboardProvider=t.ClipboardAddon=void 0,t.ClipboardAddon=class{
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.ClipboardAddon=t():e.ClipboardAddon=t()}(self,()=>(()=>{"use strict";var e={};return(()=>{var t=e;Object.defineProperty(t,"__esModule",{value:!0}),t.Base64=t.BrowserClipboardProvider=t.ClipboardAddon=void 0,t.ClipboardAddon=class{constructor(e=new o,t=new r){this._base64=e,this._provider=t}activate(e){this._terminal=e,this._disposable=e.parser.registerOscHandler(52,e=>this._setOrReportClipboard(e))}dispose(){return this._disposable?.dispose()}_readText(e,t){const r=this._base64.encodeText(t);this._terminal?.input(`]52;${e};${r}`,!1)}_setOrReportClipboard(e){const t=e.split(";");if(t.length<2)return!0;const r=t[0],o=t[1];if("?"===o){const e=this._provider.readText(r);return e instanceof Promise?e.then(e=>(this._readText(r,e),!0)):(this._readText(r,e),!0)}let s="";try{s=this._base64.decodeText(o)}catch{}const i=this._provider.writeText(r,s);return!(i instanceof Promise)||i.then(()=>!0)}};class r{readText(e){return navigator.clipboard.readText()}writeText(e,t){return navigator.clipboard.writeText(t)}}t.BrowserClipboardProvider=r;class o{encodeText(e){return btoa(e)}decodeText(e){try{return atob(e)}catch{}return""}}t.Base64=o})(),e})());
|
|
2
2
|
//# sourceMappingURL=addon-clipboard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addon-clipboard.js","mappings":"CAAA,
|
|
1
|
+
{"version":3,"file":"addon-clipboard.js","mappings":"CAAA,SAAAA,EAAAC,GACA,iBAAAC,SAAA,iBAAAC,OACAA,OAAAD,QAAAD,IACA,mBAAAG,QAAAA,OAAAC,IACAD,OAAA,GAAAH,GACA,iBAAAC,QACAA,QAAA,eAAAD,IAEAD,EAAA,eAAAC,GACC,CATD,CASCK,KAAA,kLCDD,MAIE,WAAAC,CACUC,EAAmB,IAAIC,EACvBC,EAAgC,IAAIC,gBADpCH,iBACAE,CACP,CAEI,QAAAE,CAASC,GACdC,KAAKC,UAAYF,EACjBC,KAAKE,YAAcH,EAASI,OAAOC,mBAAmB,GAAIC,GAAQL,KAAKM,sBAAsBD,GAC/F,CAEO,OAAAE,GACL,OAAOP,KAAKE,aAAaK,SAC3B,CAEQ,SAAAC,CAAUC,EAAaJ,GAC7B,MAAMK,EAAMV,KAAKN,QAAQiB,WAAWN,GACpCL,KAAKC,WAAWW,MAAM,QAAWH,KAAOC,MAAW,EACrD,CAEQ,qBAAAJ,CAAsBD,GAC5B,MAAMQ,EAAOR,EAAKS,MAAM,KACxB,GAAID,EAAKE,OAAS,EAChB,OAAO,EAGT,MAAMC,EAAKH,EAAK,GACVI,EAAKJ,EAAK,GAChB,GAAW,MAAPI,EAAY,CACd,MAAMC,EAAOlB,KAAKJ,UAAUuB,SAASH,GAGrC,OAAIE,aAAgBE,QACXF,EAAKG,KAAMhB,IAChBL,KAAKQ,UAAUQ,EAAIX,IACZ,KAIXL,KAAKQ,UAAUQ,EAAIE,IACZ,EACT,CAGA,IAAIA,EAAO,GACX,IACEA,EAAOlB,KAAKN,QAAQ4B,WAAWL,EACjC,CAAE,MAAO,CAGT,MAAMM,EAASvB,KAAKJ,UAAU4B,UAAUR,EAAIE,GAC5C,QAAIK,aAAkBH,UACbG,EAAOF,KAAK,KAAM,EAI7B,GAGF,MAAAxB,EACS,QAAAsB,CAASM,GACd,OAAOC,UAAUC,UAAUR,UAC7B,CAEO,SAAAK,CAAUC,EAAmBP,GAClC,OAAOQ,UAAUC,UAAUH,UAAUN,EACvC,+BAGF,MAAAvB,EACS,UAAAgB,CAAWN,GAChB,OAAOuB,KAAKvB,EACd,CACO,UAAAiB,CAAWjB,GAChB,IACE,OAAOwB,KAAKxB,EACd,CAAE,MAAO,CACT,MAAO,EACT","sources":["webpack://ClipboardAddon/webpack/universalModuleDefinition","webpack://ClipboardAddon/./src/ClipboardAddon.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ClipboardAddon\"] = factory();\n\telse\n\t\troot[\"ClipboardAddon\"] = factory();\n})(self, () => {\nreturn ","/**\n * Copyright (c) 2023 The xterm.js authors. All rights reserved.\n * @license MIT\n */\n\nimport type { IDisposable, ITerminalAddon, Terminal } from '@xterm/xterm';\nimport { type IClipboardProvider, type IBase64 } from '@xterm/addon-clipboard';\n\nexport class ClipboardAddon implements ITerminalAddon {\n private _terminal?: Terminal;\n private _disposable?: IDisposable;\n\n constructor(\n private _base64: IBase64 = new Base64(),\n private _provider: IClipboardProvider = new BrowserClipboardProvider()\n ) {}\n\n public activate(terminal: Terminal): void {\n this._terminal = terminal;\n this._disposable = terminal.parser.registerOscHandler(52, data => this._setOrReportClipboard(data));\n }\n\n public dispose(): void {\n return this._disposable?.dispose();\n }\n\n private _readText(sel: string, data: string): void {\n const b64 = this._base64.encodeText(data);\n this._terminal?.input(`\\x1b]52;${sel};${b64}\\x07`, false);\n }\n\n private _setOrReportClipboard(data: string): boolean | Promise<boolean> {\n const args = data.split(';');\n if (args.length < 2) {\n return true;\n }\n\n const pc = args[0];\n const pd = args[1];\n if (pd === '?') {\n const text = this._provider.readText(pc);\n\n // Report clipboard\n if (text instanceof Promise) {\n return text.then((data) => {\n this._readText(pc, data);\n return true;\n });\n }\n\n this._readText(pc, text);\n return true;\n }\n\n // Clear clipboard if text is not a base64 encoded string.\n let text = '';\n try {\n text = this._base64.decodeText(pd);\n } catch {}\n\n\n const result = this._provider.writeText(pc, text);\n if (result instanceof Promise) {\n return result.then(() => true);\n }\n\n return true;\n }\n}\n\nexport class BrowserClipboardProvider implements IClipboardProvider {\n public readText(selection: string): Promise<string> {\n return navigator.clipboard.readText();\n }\n\n public writeText(selection: string, text: string): Promise<void> {\n return navigator.clipboard.writeText(text);\n }\n}\n\nexport class Base64 implements IBase64 {\n public encodeText(data: string): string {\n return btoa(data);\n }\n public decodeText(data: string): string {\n try {\n return atob(data);\n } catch {}\n return '';\n }\n}\n"],"names":["root","factory","exports","module","define","amd","self","constructor","_base64","Base64","_provider","BrowserClipboardProvider","activate","terminal","this","_terminal","_disposable","parser","registerOscHandler","data","_setOrReportClipboard","dispose","_readText","sel","b64","encodeText","input","args","split","length","pc","pd","text","readText","Promise","then","decodeText","result","writeText","selection","navigator","clipboard","btoa","atob"],"sourceRoot":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xterm/addon-clipboard",
|
|
3
|
-
"version": "0.3.0-beta.
|
|
3
|
+
"version": "0.3.0-beta.253",
|
|
4
4
|
"author": {
|
|
5
5
|
"name": "The xterm.js authors",
|
|
6
6
|
"url": "https://xtermjs.org/"
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
"prepublishOnly": "npm run package",
|
|
23
23
|
"start": "node ../../demo/start"
|
|
24
24
|
},
|
|
25
|
-
"commit": "
|
|
25
|
+
"commit": "b2003861ecb4acf5b07f49eaadf8403e3e89826c",
|
|
26
26
|
"peerDependencies": {
|
|
27
|
-
"@xterm/xterm": "^6.1.0-beta.
|
|
27
|
+
"@xterm/xterm": "^6.1.0-beta.253"
|
|
28
28
|
}
|
|
29
29
|
}
|