muigui 0.0.3 → 0.0.5
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/package.json +1 -1
- package/src/esm.js +12 -0
- package/src/libs/touch.js +15 -9
- package/src/styles/muigui.css.js +10 -0
- package/src/umd.js +18 -0
- package/src/views/ColorChooserView.js +1 -0
- package/src/views/DirectionView.js +1 -1
- package/src/views/SliderView.js +1 -0
- package/src/views/Vec2View.js +1 -0
package/package.json
CHANGED
package/src/esm.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import GUI from './muigui.js';
|
|
2
|
+
|
|
3
|
+
export { default as ColorChooser } from './controllers/ColorChooser.js';
|
|
4
|
+
export { default as Direction } from './controllers/Direction.js';
|
|
5
|
+
export { default as RadioGrid } from './controllers/RadioGrid.js';
|
|
6
|
+
export { default as Range } from './controllers/Range.js';
|
|
7
|
+
export { default as Select } from './controllers/Select.js';
|
|
8
|
+
export { default as Slider } from './controllers/Slider.js';
|
|
9
|
+
export { default as TextNumber } from './controllers/TextNumber.js';
|
|
10
|
+
export { default as Vec2 } from './controllers/Vec2.js';
|
|
11
|
+
|
|
12
|
+
export default GUI;
|
package/src/libs/touch.js
CHANGED
|
@@ -17,7 +17,7 @@ export function computeRelativePosition(elem, event, start) {
|
|
|
17
17
|
|
|
18
18
|
export function addTouchEvents(elem, {onDown = noop, onMove = noop, onUp = noop}) {
|
|
19
19
|
let start;
|
|
20
|
-
const
|
|
20
|
+
const pointerMove = function(event) {
|
|
21
21
|
const e = {
|
|
22
22
|
type: 'move',
|
|
23
23
|
...computeRelativePosition(elem, event, start),
|
|
@@ -25,15 +25,21 @@ export function addTouchEvents(elem, {onDown = noop, onMove = noop, onUp = noop}
|
|
|
25
25
|
onMove(e);
|
|
26
26
|
};
|
|
27
27
|
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
const pointerUp = function(event) {
|
|
29
|
+
elem.releasePointerCapture(event.pointerId);
|
|
30
|
+
elem.removeEventListener('pointermove', pointerMove);
|
|
31
|
+
elem.removeEventListener('pointerup', pointerUp);
|
|
32
|
+
|
|
33
|
+
document.body.style.backgroundColor = '';
|
|
34
|
+
|
|
31
35
|
onUp('up');
|
|
32
36
|
};
|
|
33
37
|
|
|
34
|
-
const
|
|
35
|
-
|
|
36
|
-
|
|
38
|
+
const pointerDown = function(event) {
|
|
39
|
+
elem.addEventListener('pointermove', pointerMove);
|
|
40
|
+
elem.addEventListener('pointerup', pointerUp);
|
|
41
|
+
elem.setPointerCapture(event.pointerId);
|
|
42
|
+
|
|
37
43
|
const rel = computeRelativePosition(elem, event);
|
|
38
44
|
start = [rel.x, rel.y];
|
|
39
45
|
onDown({
|
|
@@ -42,9 +48,9 @@ export function addTouchEvents(elem, {onDown = noop, onMove = noop, onUp = noop}
|
|
|
42
48
|
});
|
|
43
49
|
};
|
|
44
50
|
|
|
45
|
-
elem.addEventListener('
|
|
51
|
+
elem.addEventListener('pointerdown', pointerDown);
|
|
46
52
|
|
|
47
53
|
return function() {
|
|
48
|
-
elem.removeEventListener('
|
|
54
|
+
elem.removeEventListener('pointerdown', pointerDown);
|
|
49
55
|
};
|
|
50
56
|
}
|
package/src/styles/muigui.css.js
CHANGED
|
@@ -41,6 +41,16 @@ const css = `
|
|
|
41
41
|
box-sizing: inherit;
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
+
.muigui-no-scroll {
|
|
45
|
+
touch-action: none;
|
|
46
|
+
}
|
|
47
|
+
.muigui-no-h-scroll {
|
|
48
|
+
touch-action: pan-y;
|
|
49
|
+
}
|
|
50
|
+
.muigui-no-v-scroll {
|
|
51
|
+
touch-action: pan-x;
|
|
52
|
+
}
|
|
53
|
+
|
|
44
54
|
.muigui-invalid-value {
|
|
45
55
|
background-color: red !important;
|
|
46
56
|
color: white !important;
|
package/src/umd.js
CHANGED
|
@@ -1,3 +1,21 @@
|
|
|
1
1
|
import GUI from './muigui.js';
|
|
2
2
|
|
|
3
|
+
import ColorChooser from './controllers/ColorChooser.js';
|
|
4
|
+
import Direction from './controllers/Direction.js';
|
|
5
|
+
import RadioGrid from './controllers/RadioGrid.js';
|
|
6
|
+
import Range from './controllers/Range.js';
|
|
7
|
+
import Select from './controllers/Select.js';
|
|
8
|
+
import Slider from './controllers/Slider.js';
|
|
9
|
+
import TextNumber from './controllers/TextNumber.js';
|
|
10
|
+
import Vec2 from './controllers/Vec2.js';
|
|
11
|
+
|
|
12
|
+
GUI.ColorChooser = ColorChooser;
|
|
13
|
+
GUI.Direction = Direction;
|
|
14
|
+
GUI.RadioGrid = RadioGrid;
|
|
15
|
+
GUI.Range = Range;
|
|
16
|
+
GUI.Select = Select;
|
|
17
|
+
GUI.Slider = Slider;
|
|
18
|
+
GUI.TextNumber = TextNumber;
|
|
19
|
+
GUI.Vec2 = Vec2;
|
|
20
|
+
|
|
3
21
|
export default GUI;
|
|
@@ -59,6 +59,7 @@ export default class ColorChooserView extends EditView {
|
|
|
59
59
|
constructor(setter) {
|
|
60
60
|
super(createElem('div', {
|
|
61
61
|
innerHTML: svg,
|
|
62
|
+
className: 'muigui-no-scroll',
|
|
62
63
|
}));
|
|
63
64
|
this.#satLevelElem = this.domElement.children[0];
|
|
64
65
|
this.#hueUIElem = this.domElement.children[1];
|
|
@@ -63,7 +63,7 @@ export default class DirectionView extends EditView {
|
|
|
63
63
|
constructor(setter, options = {}) {
|
|
64
64
|
const wheelHelper = createWheelHelper();
|
|
65
65
|
super(createElem('div', {
|
|
66
|
-
className: 'muigui-direction',
|
|
66
|
+
className: 'muigui-direction muigui-no-scroll',
|
|
67
67
|
innerHTML: svg,
|
|
68
68
|
onWheel: e => {
|
|
69
69
|
e.preventDefault();
|
package/src/views/SliderView.js
CHANGED
|
@@ -102,6 +102,7 @@ export default class SliderView extends EditView {
|
|
|
102
102
|
const wheelHelper = createWheelHelper();
|
|
103
103
|
super(createElem('div', {
|
|
104
104
|
innerHTML: svg,
|
|
105
|
+
className: 'muigui-no-v-scroll',
|
|
105
106
|
onWheel: e => {
|
|
106
107
|
e.preventDefault();
|
|
107
108
|
const {min, max, step} = this.#options;
|
package/src/views/Vec2View.js
CHANGED