From a284ddf61d67fcba06cf477b41065ddfd9d5a0ce Mon Sep 17 00:00:00 2001
From: JFH <20402845+jfhenon@users.noreply.github.com>
Date: Sat, 14 Nov 2020 16:35:51 +0100
Subject: [PATCH] progress on Dropdow using Elix lib
---
package-lock.json | 6 ++
package.json | 1 +
src/editor/components/index.js | 1 +
src/editor/components/seDropdown.js | 122 ++++++++++++++++++++++++++++
src/editor/index.html | 37 ++++-----
5 files changed, 144 insertions(+), 23 deletions(-)
create mode 100644 src/editor/components/seDropdown.js
diff --git a/package-lock.json b/package-lock.json
index 23f94971..4ef9b493 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -9074,6 +9074,12 @@
"integrity": "sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=",
"dev": true
},
+ "elix": {
+ "version": "14.1.1",
+ "resolved": "https://registry.npmjs.org/elix/-/elix-14.1.1.tgz",
+ "integrity": "sha512-o+6YAp1qhn0Itz2LzEAQtzi9se43eiXdrdSVvXpTrj3bsp4p/c1bY6VVeYfdaJy9a8QRnMkH9WrLGdFbRcFsuA==",
+ "dev": true
+ },
"elliptic": {
"version": "6.5.3",
"resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz",
diff --git a/package.json b/package.json
index ff9d2755..87e99872 100644
--- a/package.json
+++ b/package.json
@@ -170,6 +170,7 @@
"cypress-multi-reporters": "1.4.0",
"cypress-plugin-snapshots": "1.4.4",
"deparam": "git+https://github.com/brettz9/deparam.git#updates",
+ "elix": "^14.1.1",
"es-dev-commonjs-transformer": "0.2.0",
"es-dev-server": "1.57.8",
"es-dev-server-rollup": "0.0.8",
diff --git a/src/editor/components/index.js b/src/editor/components/index.js
index 177494d9..821da075 100644
--- a/src/editor/components/index.js
+++ b/src/editor/components/index.js
@@ -1,3 +1,4 @@
import './seButton.js';
import './seFlyingButton.js';
import './seExplorerButton.js';
+import './seDropdown.js';
diff --git a/src/editor/components/seDropdown.js b/src/editor/components/seDropdown.js
new file mode 100644
index 00000000..0c07ecec
--- /dev/null
+++ b/src/editor/components/seDropdown.js
@@ -0,0 +1,122 @@
+/* eslint-disable node/no-unpublished-import */
+import ListComboBox from 'elix/define/ListComboBox.js';
+import SpinBox from 'elix/define/NumberSpinBox.js';
+import {defaultState, template} from 'elix/src/base/internal.js';
+import {templateFrom} from 'elix/src/core/htmlLiterals.js';
+
+class MyCombo extends ListComboBox {
+ get [defaultState] () {
+ return Object.assign(super[defaultState], {
+ inputPartType: SpinBox
+ });
+ }
+ get [template] () {
+ const result = super[template];
+ result.content.append(
+ templateFrom.html`
+
+ `.content
+ );
+ return result;
+ }
+}
+
+customElements.define('my-combo', MyCombo);
+
+const mytemplate = document.createElement('template');
+mytemplate.innerHTML = `
+
+
+
+