muigui 0.0.17 → 0.0.21

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "muigui",
3
- "version": "0.0.17",
3
+ "version": "0.0.21",
4
4
  "description": "A Simple GUI",
5
5
  "main": "dist/0.x/muigui.js",
6
6
  "module": "dist/0.x/muigui.module.js",
@@ -50,9 +50,9 @@
50
50
  "eslint-plugin-one-variable-per-var": "^0.0.3",
51
51
  "eslint-plugin-optional-comma-spacing": "0.0.4",
52
52
  "eslint-plugin-require-trailing-comma": "0.0.1",
53
- "puppeteer": "^21.5.2",
53
+ "puppeteer": "^23.10.4",
54
54
  "rollup": "^3.20.2",
55
- "servez": "^2.1.2",
55
+ "servez": "^2.2.4",
56
56
  "tslib": "^2.6.2",
57
57
  "typescript": "5.2"
58
58
  }
@@ -28,10 +28,12 @@ export default class Button extends Controller {
28
28
  }
29
29
  name(name) {
30
30
  this.#buttonElem.textContent = name;
31
+ return this;
31
32
  }
32
33
  setOptions(options) {
33
34
  copyExistingProperties(this.#options, options);
34
35
  const {name} = this.#options;
35
36
  this.#buttonElem.textContent = name;
37
+ return this;
36
38
  }
37
39
  }
@@ -14,4 +14,7 @@ export default class Canvas extends LabelController {
14
14
  get canvas() {
15
15
  return this.#canvasElem;
16
16
  }
17
+ listen() {
18
+ return this;
19
+ }
17
20
  }
@@ -61,4 +61,10 @@ export default class Container extends Controller {
61
61
  this.#childDestController = this.#childDestController.parent;
62
62
  return this;
63
63
  }
64
+ listen() {
65
+ this.#controllers.forEach(c => {
66
+ c.listen();
67
+ });
68
+ return this;
69
+ }
64
70
  }
package/src/muigui.js CHANGED
@@ -34,11 +34,22 @@ export {
34
34
  Row,
35
35
  };
36
36
 
37
+ function camelCaseToSnakeCase(id) {
38
+ return id
39
+ .replace(/(.)([A-Z][a-z]+)/g, '$1_$2')
40
+ .replace(/([a-z0-9])([A-Z])/g, '$1_$2')
41
+ .toLowerCase();
42
+ }
43
+
44
+ function prepName(name) {
45
+ return camelCaseToSnakeCase(name.toString()).replaceAll('_', ' ');
46
+ }
47
+
37
48
  export class GUIFolder extends Folder {
38
49
  add(object, property, ...args) {
39
50
  const controller = object instanceof Controller
40
51
  ? object
41
- : createController(object, property, ...args);
52
+ : createController(object, property, ...args).name(prepName(property));
42
53
  return this.addController(controller);
43
54
  }
44
55
  addCanvas(name) {
@@ -47,9 +58,13 @@ export class GUIFolder extends Folder {
47
58
  addColor(object, property, options = {}) {
48
59
  const value = object[property];
49
60
  if (hasAlpha(options.format || guessFormat(value))) {
50
- return this.addController(new ColorChooser(object, property, options));
61
+ return this
62
+ .addController(new ColorChooser(object, property, options))
63
+ .name(prepName(property));
51
64
  } else {
52
- return this.addController(new Color(object, property, options));
65
+ return this
66
+ .addController(new Color(object, property, options))
67
+ .name(prepName(property));
53
68
  }
54
69
  }
55
70
  addDivider() {
@@ -63,7 +78,7 @@ export class GUIFolder extends Folder {
63
78
  }
64
79
  addButton(name, fn) {
65
80
  const o = {fn};
66
- return this.add(o, 'fn').name(name);
81
+ return this.add(o, 'fn').name(prepName(name));
67
82
  }
68
83
  }
69
84
 
@@ -84,6 +84,7 @@ export default {
84
84
  font-size: var(--font-size);
85
85
  box-sizing: border-box;
86
86
  line-height: 100%;
87
+ white-space: nowrap;
87
88
  }
88
89
  .muigui * {
89
90
  box-sizing: inherit;
@@ -149,6 +150,10 @@ export default {
149
150
  --value-color: var(--disabled-color) !important;
150
151
  --range-left-color: var(--disabled-color) !important;
151
152
  }
153
+ /* this shouldn't be needed! */
154
+ .muigui-disabled label {
155
+ color: var(--disabled-color)
156
+ }
152
157
 
153
158
  .muigui canvas,
154
159
  .muigui svg {
@@ -287,7 +292,7 @@ export default {
287
292
  }
288
293
  .muigui-closed>.muigui-open-container>* {
289
294
  transition: all 0.1s ease-out;
290
- margin-top: -100%;
295
+ margin-top: -1000%;
291
296
  }
292
297
 
293
298
  /* ---- popdown ---- */