@lvce-editor/extension-detail-view 3.47.0 → 3.49.0
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 +9 -0
- package/dist/extensionDetailViewWorkerMain.js +69 -21
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
Webworker for the extension detail view in Lvce Editor.
|
|
4
4
|
|
|
5
|
+
## Contributing
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
git clone git@github.com:lvce-editor/extension-detail-view.git &&
|
|
9
|
+
cd extension-detail-view &&
|
|
10
|
+
npm ci &&
|
|
11
|
+
npm test
|
|
12
|
+
```
|
|
13
|
+
|
|
5
14
|
## Gitpod
|
|
6
15
|
|
|
7
16
|
[](https://gitpod.io/#https://github.com/lvce-editor/extension-detail-view)
|
|
@@ -671,6 +671,7 @@ const HandleClickSize = 'handleClickSize';
|
|
|
671
671
|
const HandleClickUninstall = 'handleClickUninstall';
|
|
672
672
|
const HandleFeaturesClick = 'handleFeaturesClick';
|
|
673
673
|
const HandleIconError = 'handleIconError';
|
|
674
|
+
const HandleImageContextMenu = 'handleImageContextMenu';
|
|
674
675
|
const HandleReadmeContextMenu = 'handleReadmeContextMenu';
|
|
675
676
|
const HandleReadmeScroll = 'handleReadmeScroll';
|
|
676
677
|
const HandleTabsClick = 'handleTabsClick';
|
|
@@ -779,6 +780,9 @@ const {
|
|
|
779
780
|
invoke: invoke$3,
|
|
780
781
|
invokeAndTransfer: invokeAndTransfer$3,
|
|
781
782
|
set: set$3$1} = create$7(RendererWorker$1);
|
|
783
|
+
const showContextMenu$1 = async (x, y, id, ...args) => {
|
|
784
|
+
return invoke$3('ContextMenu.show', x, y, id, ...args);
|
|
785
|
+
};
|
|
782
786
|
const setColorTheme$2 = async id => {
|
|
783
787
|
// @ts-ignore
|
|
784
788
|
return invoke$3(/* ColorTheme.setColorTheme */'ColorTheme.setColorTheme', /* colorThemeId */id);
|
|
@@ -807,15 +811,26 @@ const openNativeFolder$1 = async uri => {
|
|
|
807
811
|
const uninstallExtension$1 = async id => {
|
|
808
812
|
return invoke$3('ExtensionManagement.uninstall', id);
|
|
809
813
|
};
|
|
814
|
+
const openExtensionSearch$2 = async () => {
|
|
815
|
+
// @ts-ignore
|
|
816
|
+
return invoke$3('SideBar.openViewlet', 'Extensions');
|
|
817
|
+
};
|
|
818
|
+
const setExtensionsSearchValue$1 = async value => {
|
|
819
|
+
// @ts-ignore
|
|
820
|
+
return invoke$3('Extensions.handleInput', searchValue);
|
|
821
|
+
};
|
|
810
822
|
const RendererWorker = {
|
|
811
823
|
__proto__: null,
|
|
812
824
|
getAllExtensions: getAllExtensions$2,
|
|
813
825
|
getExtension: getExtension$3,
|
|
826
|
+
openExtensionSearch: openExtensionSearch$2,
|
|
814
827
|
openNativeFolder: openNativeFolder$1,
|
|
815
828
|
sendMessagePortToFileSystemWorker: sendMessagePortToFileSystemWorker$2,
|
|
816
829
|
sendMessagePortToMarkdownWorker: sendMessagePortToMarkdownWorker$2,
|
|
817
830
|
set: set$3$1,
|
|
818
831
|
setColorTheme: setColorTheme$2,
|
|
832
|
+
setExtensionsSearchValue: setExtensionsSearchValue$1,
|
|
833
|
+
showContextMenu: showContextMenu$1,
|
|
819
834
|
uninstallExtension: uninstallExtension$1};
|
|
820
835
|
|
|
821
836
|
const {
|
|
@@ -2135,7 +2150,9 @@ const {
|
|
|
2135
2150
|
set: set$2,
|
|
2136
2151
|
dispose: dispose$1,
|
|
2137
2152
|
wrapCommand,
|
|
2138
|
-
wrapGetter
|
|
2153
|
+
wrapGetter,
|
|
2154
|
+
getCommandIds,
|
|
2155
|
+
registerCommands
|
|
2139
2156
|
} = create$1();
|
|
2140
2157
|
|
|
2141
2158
|
const create = (uid, uri, x, y, width, height, platform, assetDir) => {
|
|
@@ -2232,12 +2249,6 @@ const dispose = uid => {
|
|
|
2232
2249
|
dispose$1(uid);
|
|
2233
2250
|
};
|
|
2234
2251
|
|
|
2235
|
-
const commandIds = ['copyImage', 'getMenuEntries', 'handleClickCategory', 'handleClickDisable', 'handleClickScrollToTop', 'handleClickSetColorTheme', 'handleClickSettings', 'handleClickSize', 'handleClickUninstall', 'handleFeaturesClick', 'handleIconError', 'handleScroll', 'handleTabsClick', 'handleWheel', 'renderEventListeners', 'resize', 'saveState', 'selectTab', 'terminate'];
|
|
2236
|
-
|
|
2237
|
-
const getCommandIds = () => {
|
|
2238
|
-
return commandIds;
|
|
2239
|
-
};
|
|
2240
|
-
|
|
2241
2252
|
const None = 0;
|
|
2242
2253
|
|
|
2243
2254
|
const getCopyMenuEntry = () => ({
|
|
@@ -2281,8 +2292,40 @@ const getLinkMenuEntries = props => {
|
|
|
2281
2292
|
|
|
2282
2293
|
const getMenuEntries = props => [...getLinkMenuEntries(props), ...getImageMenuEntries(props), getCopyMenuEntry()];
|
|
2283
2294
|
|
|
2295
|
+
const ExtensionDetailIconContextMenu = 4091;
|
|
2296
|
+
|
|
2297
|
+
const getMenus = () => {
|
|
2298
|
+
return [{
|
|
2299
|
+
id: ExtensionDetailIconContextMenu,
|
|
2300
|
+
entries: []
|
|
2301
|
+
}];
|
|
2302
|
+
};
|
|
2303
|
+
|
|
2304
|
+
const {
|
|
2305
|
+
getAllExtensions: getAllExtensions$1,
|
|
2306
|
+
getExtension: getExtension$2,
|
|
2307
|
+
openExtensionSearch: openExtensionSearch$1,
|
|
2308
|
+
openNativeFolder,
|
|
2309
|
+
sendMessagePortToFileSystemWorker: sendMessagePortToFileSystemWorker$1,
|
|
2310
|
+
sendMessagePortToMarkdownWorker: sendMessagePortToMarkdownWorker$1,
|
|
2311
|
+
set: set$1,
|
|
2312
|
+
setColorTheme: setColorTheme$1,
|
|
2313
|
+
setExtensionsSearchValue,
|
|
2314
|
+
uninstallExtension,
|
|
2315
|
+
showContextMenu
|
|
2316
|
+
} = RendererWorker;
|
|
2317
|
+
|
|
2318
|
+
const openExtensionSearch = async searchValue => {
|
|
2319
|
+
await openExtensionSearch$1();
|
|
2320
|
+
await setExtensionsSearchValue(searchValue);
|
|
2321
|
+
};
|
|
2322
|
+
|
|
2284
2323
|
const handleClickCategory = async (state, categoryId) => {
|
|
2285
|
-
|
|
2324
|
+
if (!categoryId) {
|
|
2325
|
+
return state;
|
|
2326
|
+
}
|
|
2327
|
+
const searchValue = `@category:"${categoryId}"`;
|
|
2328
|
+
await openExtensionSearch(searchValue);
|
|
2286
2329
|
return state;
|
|
2287
2330
|
};
|
|
2288
2331
|
|
|
@@ -2338,17 +2381,6 @@ const handleClickScrollToTop = state => {
|
|
|
2338
2381
|
};
|
|
2339
2382
|
};
|
|
2340
2383
|
|
|
2341
|
-
const {
|
|
2342
|
-
getAllExtensions: getAllExtensions$1,
|
|
2343
|
-
getExtension: getExtension$2,
|
|
2344
|
-
openNativeFolder,
|
|
2345
|
-
set: set$1,
|
|
2346
|
-
setColorTheme: setColorTheme$1,
|
|
2347
|
-
uninstallExtension,
|
|
2348
|
-
sendMessagePortToMarkdownWorker: sendMessagePortToMarkdownWorker$1,
|
|
2349
|
-
sendMessagePortToFileSystemWorker: sendMessagePortToFileSystemWorker$1
|
|
2350
|
-
} = RendererWorker;
|
|
2351
|
-
|
|
2352
2384
|
const setColorTheme = id => {
|
|
2353
2385
|
return setColorTheme$1(id);
|
|
2354
2386
|
};
|
|
@@ -2416,6 +2448,15 @@ const handleIconError = state => {
|
|
|
2416
2448
|
};
|
|
2417
2449
|
};
|
|
2418
2450
|
|
|
2451
|
+
const show = async (menuId, x, y) => {
|
|
2452
|
+
await showContextMenu(menuId, x, y);
|
|
2453
|
+
};
|
|
2454
|
+
|
|
2455
|
+
const handleImageContextMenu = async (state, eventX, eventY) => {
|
|
2456
|
+
await show(ExtensionDetailIconContextMenu, eventX, eventY);
|
|
2457
|
+
return state;
|
|
2458
|
+
};
|
|
2459
|
+
|
|
2419
2460
|
const handleScroll = (state, scrollTop, scrollSource = Script) => {
|
|
2420
2461
|
const newScrollTop = Math.max(0, scrollTop);
|
|
2421
2462
|
return {
|
|
@@ -3460,8 +3501,9 @@ const getExtensionDetailIconVirtualDom = iconSrc => {
|
|
|
3460
3501
|
type: VirtualDomElements.Img,
|
|
3461
3502
|
className: ExtensionDetailIcon,
|
|
3462
3503
|
alt: '',
|
|
3463
|
-
draggable: false,
|
|
3464
3504
|
childCount: 0,
|
|
3505
|
+
draggable: false,
|
|
3506
|
+
onContextMenu: HandleImageContextMenu,
|
|
3465
3507
|
src: iconSrc
|
|
3466
3508
|
};
|
|
3467
3509
|
};
|
|
@@ -3658,9 +3700,12 @@ const renderEventListeners = () => {
|
|
|
3658
3700
|
}, {
|
|
3659
3701
|
name: HandleReadmeContextMenu,
|
|
3660
3702
|
params: ['handleReadmeContextMenu', 'event.clientX', 'event.clientY', 'event.target.href', 'event.target.src']
|
|
3703
|
+
}, {
|
|
3704
|
+
name: HandleImageContextMenu,
|
|
3705
|
+
params: ['handleImageContextMenu', 'event.clientX', 'event.clientY'],
|
|
3706
|
+
preventDefault: true
|
|
3661
3707
|
}, {
|
|
3662
3708
|
name: HandleReadmeScroll,
|
|
3663
|
-
// @ts-ignore
|
|
3664
3709
|
params: ['handleScroll', 'event.target.scrollTop', User],
|
|
3665
3710
|
passive: true
|
|
3666
3711
|
}, {
|
|
@@ -3715,6 +3760,7 @@ const saveState = state => {
|
|
|
3715
3760
|
|
|
3716
3761
|
const commandMap = {
|
|
3717
3762
|
'ExtensionDetail.copyImage': wrapCommand(copyImage),
|
|
3763
|
+
'ExtensionDetail.getMenus': getMenus,
|
|
3718
3764
|
'ExtensionDetail.create': create,
|
|
3719
3765
|
'ExtensionDetail.diff2': diff2,
|
|
3720
3766
|
'ExtensionDetail.dispose': dispose,
|
|
@@ -3736,6 +3782,7 @@ const commandMap = {
|
|
|
3736
3782
|
'ExtensionDetail.loadContent2': wrapCommand(loadContent2),
|
|
3737
3783
|
'ExtensionDetail.render2': render2,
|
|
3738
3784
|
'ExtensionDetail.renderEventListeners': renderEventListeners,
|
|
3785
|
+
'ExtensionDetail.handleImageContextMenu': wrapCommand(handleImageContextMenu),
|
|
3739
3786
|
'ExtensionDetail.resize': wrapCommand(resize),
|
|
3740
3787
|
// @ts-ignore
|
|
3741
3788
|
'ExtensionDetail.saveState': wrapGetter(saveState),
|
|
@@ -3745,6 +3792,7 @@ const commandMap = {
|
|
|
3745
3792
|
};
|
|
3746
3793
|
|
|
3747
3794
|
const listen = async () => {
|
|
3795
|
+
registerCommands(commandMap);
|
|
3748
3796
|
const rpc = await WebWorkerRpcClient.create({
|
|
3749
3797
|
commandMap: commandMap
|
|
3750
3798
|
});
|