From 7359cf1c2d823041447c6d7000e6c796a3628ccf Mon Sep 17 00:00:00 2001 From: Hsieh Chin Fan Date: Thu, 3 Oct 2024 13:34:10 +0800 Subject: feat: add more menu-item for renderer suggestions --- src/MenuItem.mjs | 4 ++-- src/editor.mjs | 9 ++++++++- 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/MenuItem.mjs b/src/MenuItem.mjs index 4028702..ee349b5 100644 --- a/src/MenuItem.mjs +++ b/src/MenuItem.mjs @@ -1,6 +1,6 @@ import { shiftByWindow } from './utils.mjs' -class Item extends window.HTMLDivElement { +export class Item extends window.HTMLDivElement { constructor ({ text, innerHTML, onclick, style, className, onmouseover }) { super() this.innerHTML = innerHTML ?? text @@ -18,7 +18,7 @@ class Item extends window.HTMLDivElement { } window.customElements.define('menu-item', Item, { extends: 'div' }) -class Folder extends window.HTMLDivElement { +export class Folder extends window.HTMLDivElement { constructor ({ text, innerHTML, items }) { super() this.innerHTML = innerHTML ?? text diff --git a/src/editor.mjs b/src/editor.mjs index 82d93b0..36f0fdc 100644 --- a/src/editor.mjs +++ b/src/editor.mjs @@ -531,7 +531,14 @@ const getSuggestions = anchor => { cm }) ) - return rendererSuggestions.length > 0 ? rendererSuggestions : [] + return [ + ...(rendererSuggestions ?? []), + new menuItem.Item({ + innerHTML: 'More...', + className: ['suggestion'], + onclick: () => window.open('https://github.com/outdoorsafetylab/mapclay#renderer', '_blank') + }) + ] } return [] } -- cgit v1.2.3-70-g09d2