@ixfx/components 0.0.2

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.
Files changed (107) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +2 -0
  3. package/dist/charts/frequency-histogram-plot.d.ts +33 -0
  4. package/dist/charts/frequency-histogram-plot.d.ts.map +1 -0
  5. package/dist/charts/frequency-histogram-plot.js +54 -0
  6. package/dist/charts/frequency-histogram-plot.js.map +1 -0
  7. package/dist/charts/histogram-vis.d.ts +57 -0
  8. package/dist/charts/histogram-vis.d.ts.map +1 -0
  9. package/dist/charts/histogram-vis.js +222 -0
  10. package/dist/charts/histogram-vis.js.map +1 -0
  11. package/dist/charts/plot.d.ts +128 -0
  12. package/dist/charts/plot.d.ts.map +1 -0
  13. package/dist/charts/plot.js +456 -0
  14. package/dist/charts/plot.js.map +1 -0
  15. package/dist/crumb-nav.d.ts +41 -0
  16. package/dist/crumb-nav.d.ts.map +1 -0
  17. package/dist/crumb-nav.js +198 -0
  18. package/dist/crumb-nav.js.map +1 -0
  19. package/dist/crumb-navigation.d.ts +30 -0
  20. package/dist/crumb-navigation.d.ts.map +1 -0
  21. package/dist/crumb-navigation.js +307 -0
  22. package/dist/crumb-navigation.js.map +1 -0
  23. package/dist/data-display.d.ts +15 -0
  24. package/dist/data-display.d.ts.map +1 -0
  25. package/dist/data-display.js +110 -0
  26. package/dist/data-display.js.map +1 -0
  27. package/dist/dial.d.ts +89 -0
  28. package/dist/dial.d.ts.map +1 -0
  29. package/dist/dial.js +506 -0
  30. package/dist/dial.js.map +1 -0
  31. package/dist/index.d.ts +11 -0
  32. package/dist/index.d.ts.map +1 -0
  33. package/dist/index.js +13 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/my-element.d.ts +14 -0
  36. package/dist/my-element.d.ts.map +1 -0
  37. package/dist/my-element.js +44 -0
  38. package/dist/my-element.js.map +1 -0
  39. package/dist/selecthorizontal.d.ts +12 -0
  40. package/dist/selecthorizontal.d.ts.map +1 -0
  41. package/dist/selecthorizontal.js +46 -0
  42. package/dist/selecthorizontal.js.map +1 -0
  43. package/dist/split-layout/split-layout.d.ts +35 -0
  44. package/dist/split-layout/split-layout.d.ts.map +1 -0
  45. package/dist/split-layout/split-layout.js +220 -0
  46. package/dist/split-layout/split-layout.js.map +1 -0
  47. package/dist/svg-edit-label.d.ts +2 -0
  48. package/dist/svg-edit-label.d.ts.map +1 -0
  49. package/dist/svg-edit-label.js +110 -0
  50. package/dist/svg-edit-label.js.map +1 -0
  51. package/dist/tabs/tab-layout-item.d.ts +10 -0
  52. package/dist/tabs/tab-layout-item.d.ts.map +1 -0
  53. package/dist/tabs/tab-layout-item.js +20 -0
  54. package/dist/tabs/tab-layout-item.js.map +1 -0
  55. package/dist/tabs/tab-layout.d.ts +10 -0
  56. package/dist/tabs/tab-layout.d.ts.map +1 -0
  57. package/dist/tabs/tab-layout.js +25 -0
  58. package/dist/tabs/tab-layout.js.map +1 -0
  59. package/dist/tabs/tab-list-item.d.ts +18 -0
  60. package/dist/tabs/tab-list-item.d.ts.map +1 -0
  61. package/dist/tabs/tab-list-item.js +63 -0
  62. package/dist/tabs/tab-list-item.js.map +1 -0
  63. package/dist/tabs/tab-list.d.ts +21 -0
  64. package/dist/tabs/tab-list.d.ts.map +1 -0
  65. package/dist/tabs/tab-list.js +148 -0
  66. package/dist/tabs/tab-list.js.map +1 -0
  67. package/dist/tabs/tab-panel.d.ts +11 -0
  68. package/dist/tabs/tab-panel.d.ts.map +1 -0
  69. package/dist/tabs/tab-panel.js +30 -0
  70. package/dist/tabs/tab-panel.js.map +1 -0
  71. package/dist/tabs/tab-panels.d.ts +30 -0
  72. package/dist/tabs/tab-panels.d.ts.map +1 -0
  73. package/dist/tabs/tab-panels.js +80 -0
  74. package/dist/tabs/tab-panels.js.map +1 -0
  75. package/dist/util/circle-arc.d.ts +34 -0
  76. package/dist/util/circle-arc.d.ts.map +1 -0
  77. package/dist/util/circle-arc.js +77 -0
  78. package/dist/util/circle-arc.js.map +1 -0
  79. package/dist/util/compare.d.ts +53 -0
  80. package/dist/util/compare.d.ts.map +1 -0
  81. package/dist/util/compare.js +91 -0
  82. package/dist/util/compare.js.map +1 -0
  83. package/dist/util/content-editable.d.ts +2 -0
  84. package/dist/util/content-editable.d.ts.map +1 -0
  85. package/dist/util/content-editable.js +13 -0
  86. package/dist/util/content-editable.js.map +1 -0
  87. package/dist/util/drag-controller.d.ts +13 -0
  88. package/dist/util/drag-controller.d.ts.map +1 -0
  89. package/dist/util/drag-controller.js +21 -0
  90. package/dist/util/drag-controller.js.map +1 -0
  91. package/dist/util/key-value.d.ts +5 -0
  92. package/dist/util/key-value.d.ts.map +1 -0
  93. package/dist/util/key-value.js +30 -0
  94. package/dist/util/key-value.js.map +1 -0
  95. package/dist/util/primitive-types.d.ts +6 -0
  96. package/dist/util/primitive-types.d.ts.map +1 -0
  97. package/dist/util/primitive-types.js +2 -0
  98. package/dist/util/primitive-types.js.map +1 -0
  99. package/dist/util/svg-editable-text.d.ts +22 -0
  100. package/dist/util/svg-editable-text.d.ts.map +1 -0
  101. package/dist/util/svg-editable-text.js +121 -0
  102. package/dist/util/svg-editable-text.js.map +1 -0
  103. package/dist/util/time.d.ts +2 -0
  104. package/dist/util/time.d.ts.map +1 -0
  105. package/dist/util/time.js +2 -0
  106. package/dist/util/time.js.map +1 -0
  107. package/package.json +48 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-display.js","sourceRoot":"","sources":["../src/data-display.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAOtC,MAAM,OAAO,oBAAqB,SAAQ,WAAW;IAKnD;QACE,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,CAAC,WAAW,GAAG;;;;;;;;;;;;;KAanB,CAAA;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;IAED,WAAW,CAAC,CAAU,EAAE,UAA6B,EAAE;QACrD,IAAI,CAAC,KAAK,IAAI;YAAE,OAAO,QAAQ,CAAC;QAChC,IAAI,CAAC,KAAK,SAAS;YAAE,OAAO,aAAa,CAAC;QAC1C,IAAI,OAAO,CAAC,KAAK,SAAS;YAAE,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QACxD,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,IAAK,CAAE,GAAG,CAAC;QAC7C,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC1B,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS;gBAAE,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAA;YAClF,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACjF,OAAO,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,WAAW,CAAC,CAAsC;QAChD,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QACD,KAAK,MAAM,CAAE,GAAG,EAAE,KAAK,CAAE,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,MAAM,MAAM,GAAG,QAAS,GAAI,EAAE,CAAC;YAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;oBAClD,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;oBACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;oBAC9C,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC;oBACxB,MAAM,YAAY,GAAG,IAAI,oBAAoB,EAAE,CAAC;oBAChD,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;gBACrC,CAAC,CAAC,CAAC;gBACH,MAAM,YAAY,GAAG,OAAO,CAAC,aAAa,CAAuB,cAAc,CAAC,CAAC;gBACjF,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;oBAC1B,YAAY,CAAC,MAAM,CAAC,KAAgC,CAAC,CAAC;gBACxD,CAAC;YAEH,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;oBAClD,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBAC5B,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;oBAC9C,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC;oBACxB,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;oBACnD,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;oBACnD,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;gBACrC,CAAC,CAAC,CAAC;gBACH,MAAM,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAClD,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;oBAC1B,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAA;oBACzD,WAAW;gBACb,CAAC;qBAAM,CAAC;oBACN,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACnD,CAAC;YACH,CAAC;QACH,CAAC;QAED,kCAAkC;QAClC,oDAAoD;QAEpD,8BAA8B;QAE9B,IAAI;IACN,CAAC;IAED,WAAW,CAAC,IAAY,EAAE,IAAoC;QAE5D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO,OAAO,CAAC;QAErC,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACrD,cAAc,CAAC,EAAE,GAAG,IAAI,CAAC;QACzB,IAAI,IAAI;YAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACvC,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,MAAM,CAAC,KAA8B;QACnC,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;CACF;AAED,cAAc,CAAC,MAAM,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC"}
package/dist/dial.d.ts ADDED
@@ -0,0 +1,89 @@
1
+ import { LitElement, type TemplateResult, type PropertyValues } from "lit";
2
+ import * as CircleArc from './util/circle-arc.js';
3
+ import { SvgEditLabel, type SvgEditLabelData } from "./util/svg-editable-text.js";
4
+ import { type Ref } from "lit/directives/ref.js";
5
+ export type LabelPosition = `edge` | `inner` | `below`;
6
+ export type ValueToLabelFormat = (value: number) => string;
7
+ export type NeedleStyle = `none` | `to-track` | `to-knob`;
8
+ /**
9
+ * Numeric DOM attributes
10
+ * * rangeAngle: range of dial in degrees (default: 300)
11
+ * * value, min, max, step, stepFine
12
+ * * radius: max radius of dial (default: 0.5)
13
+ * * textRelativeHeight: how much vertical space to give labels (default: 10)
14
+ *
15
+ * String DOM attributes
16
+ * * rangeAnchor: `south`,`south-east`,`east`,`north` (default: `south`)
17
+ * * labelPosition: `edge`|`inner`
18
+ * * needleStyle: `none`, `to-track`, `to-knob`
19
+ * * title: a caption for dial
20
+ *
21
+ * Boolean DOM attributes
22
+ * * hideTitle, hideValue, hideTerminators, showKnob, bipolar
23
+ *
24
+ * CSS variables
25
+ * --[track,needle,value]-width
26
+ * --[track,needle,value]-color
27
+ * --needle-start: relative to radius of circle. eg 0.6 starts needle 60% out from center (default: 0.6)
28
+ * --needle_overshoot: % of increase of needle size (default: 0.2)
29
+ * --value-label-color: colour of value label
30
+ * --value-label-x: x offset (in 0..100 coords)
31
+ * --value-label-y: y offset (in 0..100 coords)
32
+ * --knob-color
33
+ * --knob-radius: % of circle to use for knob (default: 0.8)
34
+ */
35
+ export declare class DialElement extends LitElement {
36
+ #private;
37
+ rangeAngle: number;
38
+ rangeAnchor: CircleArc.CircleArcAnchor;
39
+ labelPosition: LabelPosition;
40
+ spread: boolean;
41
+ hideValue: boolean;
42
+ hideTerminators: boolean;
43
+ showKnob: boolean;
44
+ bipolar: boolean;
45
+ needleStyle: NeedleStyle;
46
+ value: number;
47
+ step: number;
48
+ stepFine: number;
49
+ radius: number;
50
+ min: number;
51
+ max: number;
52
+ textRelativeHeight: number;
53
+ valueLabelRef: Ref<SvgEditLabel>;
54
+ valueLabel: SvgEditLabelData;
55
+ constructor();
56
+ getRelativeValue(): number;
57
+ render(): TemplateResult<1>;
58
+ protected updated(_changedProperties: PropertyValues): void;
59
+ onMidpointClick(): void;
60
+ onMouseWheel(event: WheelEvent): void;
61
+ deltaChange(amount: number): void;
62
+ onKeyDown(event: KeyboardEvent): void;
63
+ onPointerMove(event: PointerEvent): void;
64
+ resolveVariables(): {
65
+ track_width: number;
66
+ track_color: string;
67
+ value_width: number;
68
+ value_color: string;
69
+ value_label_color: string;
70
+ value_label_x: number;
71
+ value_label_y: number;
72
+ needle_overshoot: number;
73
+ needle_start: number;
74
+ needle_color: string;
75
+ needle_width: number;
76
+ knob_color: string;
77
+ knob_radius: number;
78
+ };
79
+ set valueToLabel(fn: (value: number) => string);
80
+ get valueToLabel(): (value: number) => string;
81
+ get range(): number;
82
+ static styles: import("lit").CSSResult;
83
+ }
84
+ declare global {
85
+ interface HTMLElementTagNameMap {
86
+ "ixfx-dial": DialElement;
87
+ }
88
+ }
89
+ //# sourceMappingURL=dial.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dial.d.ts","sourceRoot":"","sources":["../src/dial.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAkB,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAK3F,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAAa,KAAK,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAA;AACtD,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AAC3D,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;AAI1D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBACa,WAAY,SAAQ,UAAU;;IAEzC,UAAU,SAAO;IAGjB,WAAW,EAAE,SAAS,CAAC,eAAe,CAAW;IAGjD,aAAa,EAAE,aAAa,CAAU;IAKtC,MAAM,UAAS;IAGf,SAAS,UAAS;IAGlB,eAAe,UAAQ;IAGvB,QAAQ,UAAS;IAGjB,OAAO,UAAS;IAGhB,WAAW,EAAE,WAAW,CAAc;IAGtC,KAAK,SAAM;IAGX,IAAI,SAAM;IAGV,QAAQ,SAAK;IAGb,MAAM,SAAO;IAGb,GAAG,SAAK;IAGR,GAAG,SAAO;IAGV,kBAAkB,SAAK;IAKvB,aAAa,EAAE,GAAG,CAAC,YAAY,CAAC,CAAe;IAG/C,UAAU,EAAE,gBAAgB,CAS3B;;IAgKD,gBAAgB;IA4DhB,MAAM;IAqEN,SAAS,CAAC,OAAO,CAAC,kBAAkB,EAAE,cAAc,GAAG,IAAI;IAI3D,eAAe;IA6Bf,YAAY,CAAC,KAAK,EAAE,UAAU;IAO9B,WAAW,CAAC,MAAM,EAAE,MAAM;IAI1B,SAAS,CAAC,KAAK,EAAE,aAAa;IAoB9B,aAAa,CAAC,KAAK,EAAE,YAAY;IAKjC,gBAAgB;;;;;;;;;;;;;;;IAkBhB,IAAI,YAAY,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,EAG7C;IACD,IAAI,YAAY,IAJK,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAM7C;IACD,IAAI,KAAK,WAER;IAMD,MAAM,CAAC,MAAM,0BASZ;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,WAAW,EAAE,WAAW,CAAC;KAC1B;CACF"}
package/dist/dial.js ADDED
@@ -0,0 +1,506 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ /* eslint-disable @typescript-eslint/unbound-method */
8
+ import { LitElement, html, css, svg } from "lit";
9
+ import { customElement, property } from "lit/decorators.js";
10
+ import { degreeToRadian, Points, radiansSum, radianArc } from '@ixfx/geometry';
11
+ import * as Numbers from '@ixfx/numbers';
12
+ import { getCssVariablesWithFallback } from '@ixfx/dom';
13
+ import * as CircleArc from './util/circle-arc.js';
14
+ import { SvgEditLabel } from "./util/svg-editable-text.js";
15
+ import { createRef } from "lit/directives/ref.js";
16
+ const piPi = Math.PI * 2;
17
+ /**
18
+ * Numeric DOM attributes
19
+ * * rangeAngle: range of dial in degrees (default: 300)
20
+ * * value, min, max, step, stepFine
21
+ * * radius: max radius of dial (default: 0.5)
22
+ * * textRelativeHeight: how much vertical space to give labels (default: 10)
23
+ *
24
+ * String DOM attributes
25
+ * * rangeAnchor: `south`,`south-east`,`east`,`north` (default: `south`)
26
+ * * labelPosition: `edge`|`inner`
27
+ * * needleStyle: `none`, `to-track`, `to-knob`
28
+ * * title: a caption for dial
29
+ *
30
+ * Boolean DOM attributes
31
+ * * hideTitle, hideValue, hideTerminators, showKnob, bipolar
32
+ *
33
+ * CSS variables
34
+ * --[track,needle,value]-width
35
+ * --[track,needle,value]-color
36
+ * --needle-start: relative to radius of circle. eg 0.6 starts needle 60% out from center (default: 0.6)
37
+ * --needle_overshoot: % of increase of needle size (default: 0.2)
38
+ * --value-label-color: colour of value label
39
+ * --value-label-x: x offset (in 0..100 coords)
40
+ * --value-label-y: y offset (in 0..100 coords)
41
+ * --knob-color
42
+ * --knob-radius: % of circle to use for knob (default: 0.8)
43
+ */
44
+ let DialElement = class DialElement extends LitElement {
45
+ #editableLabel;
46
+ #onPointerDownBound;
47
+ #onPointerDragBound;
48
+ #onDragStopBound;
49
+ constructor() {
50
+ super();
51
+ this.rangeAngle = 300;
52
+ this.rangeAnchor = `south`;
53
+ this.labelPosition = `edge`;
54
+ //@property({ type: Boolean })
55
+ //hideTitle = false;
56
+ this.spread = false;
57
+ this.hideValue = false;
58
+ this.hideTerminators = false;
59
+ this.showKnob = false;
60
+ this.bipolar = false;
61
+ this.needleStyle = `to-track`;
62
+ this.value = 50;
63
+ this.step = 10;
64
+ this.stepFine = 1;
65
+ this.radius = 0.5;
66
+ this.min = 0;
67
+ this.max = 100;
68
+ this.textRelativeHeight = 5;
69
+ //@property({ type: String })
70
+ //title = ``;
71
+ this.valueLabelRef = createRef();
72
+ this.valueLabel = {
73
+ anchor: `start`,
74
+ x: 0,
75
+ fill: ``,
76
+ hideValue: this.hideValue,
77
+ y: 0,
78
+ editMode: false,
79
+ displayValue: 0,
80
+ editValue: 0
81
+ };
82
+ this.#onPointerDownBound = this.#onPointerDown.bind(this);
83
+ this.#onPointerDragBound = this.#onPointerDrag.bind(this);
84
+ this.#onDragStopBound = this.#onDragStop.bind(this);
85
+ this.#valueToLabel = (value) => {
86
+ return value.toFixed(1);
87
+ };
88
+ this.#editableLabel = new SvgEditLabel();
89
+ this.#editableLabel.onEditMode = (enabled, _source) => {
90
+ this.valueLabel = {
91
+ ...this.valueLabel,
92
+ editMode: enabled
93
+ };
94
+ };
95
+ this.#editableLabel.onInput = (value) => {
96
+ const f = Number.parseFloat(value);
97
+ if (Number.isNaN(f))
98
+ return;
99
+ this.#setValue(f);
100
+ };
101
+ }
102
+ #computeTextLabelPosition(vars, arc) {
103
+ let x = 0;
104
+ let y = 0;
105
+ let textAnchor = `middle`;
106
+ if (this.labelPosition === `inner`) {
107
+ x = arc.x;
108
+ y = arc.y + this.textRelativeHeight / 4;
109
+ }
110
+ else {
111
+ switch (this.rangeAnchor) {
112
+ case `north`:
113
+ x = 50;
114
+ y = this.textRelativeHeight * 1.5;
115
+ break;
116
+ case `east`:
117
+ x = 75; // need to measure width?
118
+ y = 50;
119
+ textAnchor = `start`;
120
+ break;
121
+ case `south-east`:
122
+ x = 99;
123
+ y = 90;
124
+ textAnchor = `end`;
125
+ break;
126
+ default:
127
+ x = 50;
128
+ y = 95;
129
+ }
130
+ }
131
+ x += vars.value_label_x;
132
+ y += vars.value_label_y;
133
+ return { x, y, anchor: textAnchor };
134
+ }
135
+ // #renderTitle() {
136
+ // if (this.hideTitle) {
137
+ // return svg``;
138
+ // }
139
+ // const textPos = { x: 50, y: (this.textRelativeHeight / 2) + 4 };
140
+ // const textAnchor = `middle`;
141
+ // return svg`<text text-anchor=${ textAnchor } x=${ textPos.x } y=${ textPos.y }>${ this.title }</text>`
142
+ // }
143
+ #computeArc(vars) {
144
+ const textHeight = this.textRelativeHeight;
145
+ let maxRadius = 50 - (Math.max(vars.track_width, vars.value_width) * 3);
146
+ let middleY = 50;
147
+ const cornerRange = (this.rangeAnchor === `south-east`);
148
+ if (this.labelPosition === `below`) {
149
+ maxRadius -= textHeight;
150
+ middleY -= textHeight;
151
+ }
152
+ if (cornerRange) {
153
+ middleY += textHeight / 2;
154
+ maxRadius -= 3;
155
+ }
156
+ else {
157
+ //maxRadius -= (textHeight / 2.5);
158
+ //middleY += (textHeight / 2) - 3;
159
+ }
160
+ // if (!this.hideTitle) {
161
+ // }
162
+ // if (!this.hideValue && this.labelPosition !== `inner`) {
163
+ // if (cornerRange) {
164
+ // maxRadius -= (textHeight / 4);
165
+ // } else {
166
+ // maxRadius -= (textHeight / 4);
167
+ // middleY -= textHeight / 4;
168
+ // }
169
+ // }
170
+ //if (this.hideTitle && this.hideValue) middleY = 50;
171
+ return {
172
+ maxRadius,
173
+ middleY
174
+ };
175
+ }
176
+ #renderTrackArc(vars, value, arc, part) {
177
+ if (vars.track_width <= 0)
178
+ return svg ``;
179
+ const hiddenTrack = vars.track_width <= vars.value_width;
180
+ let largeArc = true;
181
+ const clockwise = true;
182
+ let arcSvgBits = [];
183
+ if (hiddenTrack && !this.bipolar) {
184
+ // Make an arc from end of value to end of range
185
+ let startAt = part.endAngle - 0.1;
186
+ const arcPart = CircleArc.arcPart(arc, startAt, arc.endAngle, true);
187
+ const d = radianArc(startAt, arc.endAngle, true);
188
+ if (value > 0.97) {
189
+ arcSvgBits = CircleArc.toSvg(arc, largeArc, clockwise);
190
+ }
191
+ else {
192
+ largeArc = d > Math.PI;
193
+ arcSvgBits = CircleArc.partToSvg(arc, arcPart, largeArc, clockwise);
194
+ }
195
+ }
196
+ else {
197
+ arcSvgBits = CircleArc.toSvg(arc, largeArc, clockwise);
198
+ }
199
+ const s = svg `
200
+ <path
201
+ d="${arcSvgBits.join(' ')}"
202
+ fill="none"
203
+ stroke-linecap="round"
204
+ stroke="${vars.track_color}"
205
+ stroke-width="${vars.track_width}"
206
+ />
207
+ `;
208
+ return s;
209
+ }
210
+ #getBipolarValue(value, arc) {
211
+ if (value < 0.5) {
212
+ const pc = Numbers.scale(value, 0, 0.5);
213
+ const distance = radianArc(arc.startAngle, arc.midAngle, true) * pc;
214
+ const startAngle = radiansSum(arc.startAngle, distance, false);
215
+ return CircleArc.arcPart(arc, startAngle, arc.midAngle, true);
216
+ }
217
+ else {
218
+ const pc = Numbers.scale(value, 0.5, 1);
219
+ const distance = radianArc(arc.midAngle, arc.endAngle, true) * pc;
220
+ const endAngle = radiansSum(arc.midAngle, distance, false);
221
+ return CircleArc.arcPart(arc, arc.midAngle, endAngle, true);
222
+ }
223
+ }
224
+ #getUnipolarValue(value, arc) {
225
+ const angle = value * arc.rangeRadian;
226
+ const endAngle = Numbers.wrap(arc.startAngle - angle, 0, piPi);
227
+ const arcValue = CircleArc.arcPart(arc, arc.startAngle, endAngle, true);
228
+ return arcValue;
229
+ }
230
+ getRelativeValue() {
231
+ return Numbers.scale(this.value, this.min, this.max);
232
+ }
233
+ #renderValueArc(vars, value, arc, part) {
234
+ let largeArc = false;
235
+ const clockwise = !arc.invert;
236
+ if (part.range > Math.PI)
237
+ largeArc = true;
238
+ const arcSvgBits = CircleArc.partToSvg(arc, part, largeArc, clockwise);
239
+ const showValueArc = this.bipolar ? value === 0.5 : value === 0;
240
+ const arcValueSvg = showValueArc ?
241
+ svg `` :
242
+ svg `<path
243
+ d="${arcSvgBits.join(' ')}"
244
+ fill="none"
245
+ stroke="${vars.value_color}"
246
+ stroke-width="${vars.value_width}"
247
+ />`;
248
+ const needleStart = vars.needle_start * arc.radius;
249
+ let needleEnd = 1;
250
+ switch (this.needleStyle) {
251
+ case `none`:
252
+ return arcValueSvg;
253
+ case `to-knob`:
254
+ needleEnd = vars.knob_radius * arc.radius;
255
+ break;
256
+ case `to-track`:
257
+ needleEnd = arc.radius;
258
+ break;
259
+ }
260
+ needleEnd += (vars.needle_overshoot * (needleEnd - needleStart));
261
+ const line = {
262
+ a: CircleArc.interpolatePoint({ ...arc, radius: needleStart }, value),
263
+ b: CircleArc.interpolatePoint({ ...arc, radius: needleEnd }, value)
264
+ };
265
+ const needleLine = svg `<line
266
+ x1=${line.a.x}
267
+ y1=${line.a.y}
268
+ x2=${line.b.x}
269
+ y2=${line.b.y}
270
+ stroke-linecap="round"
271
+ stroke=${vars.needle_color}
272
+ stroke-width=${vars.needle_width}
273
+ />`;
274
+ return [arcValueSvg, needleLine];
275
+ }
276
+ #renderKnob(vars, arc) {
277
+ if (!this.showKnob)
278
+ return svg ``;
279
+ return svg `<circle r=${arc.radius * vars.knob_radius} cx=${arc.x} cy=${arc.y} fill=${vars.knob_color} />`;
280
+ }
281
+ #renderPoints(radius, fill, ...circles) {
282
+ return circles.map(c => svg `<circle fill=${fill} r=${radius} cx=${c.x} cy=${c.y} />`);
283
+ }
284
+ render() {
285
+ const vars = this.resolveVariables();
286
+ const arcSize = this.#computeArc(vars);
287
+ const circlePre = {
288
+ x: 50,
289
+ y: arcSize.middleY,
290
+ radius: arcSize.maxRadius,
291
+ anchor: this.rangeAnchor,
292
+ rangeRadian: degreeToRadian(this.rangeAngle)
293
+ };
294
+ const circle = CircleArc.precompute(circlePre);
295
+ const relativeValue = this.getRelativeValue();
296
+ const valueArc = this.bipolar ? this.#getBipolarValue(relativeValue, circle) : this.#getUnipolarValue(relativeValue, circle);
297
+ let terminators = [];
298
+ const terminatorSize = Math.max(vars.value_width, vars.track_width);
299
+ if (!this.hideTerminators) {
300
+ let lightStart = this.value !== this.min;
301
+ if (this.bipolar)
302
+ lightStart = this.value === this.min;
303
+ const atEnd = this.value === this.max;
304
+ const startTerminator = this.#renderPoints(terminatorSize, lightStart ? vars.value_color : vars.track_color, circle.startPoint);
305
+ const endTerminator = this.#renderPoints(terminatorSize, atEnd ? vars.value_color : vars.track_color, circle.endPoint);
306
+ terminators = [...startTerminator, ...endTerminator];
307
+ }
308
+ if (this.bipolar) {
309
+ const mid = (this.max - this.min) / 2;
310
+ const atMid = this.value.toFixed(1) === mid.toFixed(1);
311
+ const midPoint = svg `<circle @click=${this.onMidpointClick} fill=${atMid ? vars.value_color : vars.track_color} r=${terminatorSize * 1.5} cx=${circle.midPoint.x} cy=${circle.midPoint.y} />`;
312
+ terminators.push(midPoint);
313
+ }
314
+ const textLabelPos = this.#computeTextLabelPosition(vars, circle);
315
+ this.valueLabel = {
316
+ ...this.valueLabel,
317
+ ...textLabelPos,
318
+ hideValue: this.hideValue,
319
+ displayValue: this.valueToLabel(this.value),
320
+ editValue: this.value
321
+ };
322
+ return html `<svg tabindex=0 @pointerdown=${this.#onPointerDownBound} @wheel=${this.onMouseWheel} @keydown=${this.onKeyDown} overflow="hidden" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg">
323
+ ${this.#renderTrackArc(vars, relativeValue, circle, valueArc)}
324
+ ${this.#renderKnob(vars, circle)}
325
+ ${terminators}
326
+ ${this.#renderValueArc(vars, relativeValue, circle, valueArc)}
327
+ ${this.#editableLabel.render(this.valueLabel)}
328
+ </svg>`;
329
+ }
330
+ #onPointerDown(_event) {
331
+ window.addEventListener(`pointermove`, this.#onPointerDragBound);
332
+ window.addEventListener(`pointercancel`, this.#onDragStopBound);
333
+ window.addEventListener(`pointerup`, this.#onDragStopBound);
334
+ }
335
+ #onPointerDrag(event) {
336
+ // Proportion of movement based on size of element
337
+ const y = event.movementY / this.clientHeight;
338
+ const r = this.range * y;
339
+ this.#setValue(this.value - r);
340
+ }
341
+ #onDragStop() {
342
+ window.removeEventListener(`pointerup`, this.#onDragStopBound);
343
+ window.removeEventListener(`pointercancel`, this.#onDragStopBound);
344
+ window.removeEventListener(`pointermove`, this.#onPointerDragBound);
345
+ }
346
+ updated(_changedProperties) {
347
+ this.#editableLabel.onUpdated();
348
+ }
349
+ onMidpointClick() {
350
+ this.#setValue((this.max - this.min) / 2);
351
+ }
352
+ /**
353
+ * Manually sets the value, clamping to min/max range.
354
+ * Fires 'change' event.
355
+ * @param value
356
+ * @returns
357
+ */
358
+ #setValue(value) {
359
+ const old = this.value;
360
+ value = Numbers.clamp(value, this.min, this.max);
361
+ if (value === old)
362
+ return;
363
+ this.value = value;
364
+ this.valueLabel = {
365
+ ...this.valueLabel,
366
+ displayValue: this.valueToLabel(value),
367
+ editValue: value
368
+ };
369
+ this.dispatchEvent(new CustomEvent(`change`, {
370
+ detail: {
371
+ previousValue: old,
372
+ newValue: value
373
+ }
374
+ }));
375
+ }
376
+ onMouseWheel(event) {
377
+ const shift = event.shiftKey;
378
+ const amount = shift ? this.stepFine : this.step;
379
+ this.deltaChange(amount * event.deltaY * 0.01);
380
+ event.preventDefault();
381
+ }
382
+ deltaChange(amount) {
383
+ this.#setValue(this.value + amount);
384
+ }
385
+ onKeyDown(event) {
386
+ const key = event.key;
387
+ const shift = event.shiftKey;
388
+ //const ctrl = event.ctrlKey;
389
+ if (this.valueLabel.editMode)
390
+ return;
391
+ //console.log(`key: ${ key } ctrl: ${ ctrl }`);
392
+ const amount = shift ? this.stepFine : this.step;
393
+ if (key === `ArrowLeft` || key === `ArrowDown`) {
394
+ this.deltaChange(-amount);
395
+ }
396
+ else if (key === `ArrowRight` || key === `ArrowUp`) {
397
+ this.deltaChange(amount);
398
+ }
399
+ else if (Number.parseInt(key).toString() === key) {
400
+ this.valueLabel = {
401
+ ...this.valueLabel,
402
+ editMode: true
403
+ };
404
+ }
405
+ }
406
+ onPointerMove(event) {
407
+ const { x, y } = event;
408
+ console.log(`x: ${x} y:${y}`);
409
+ }
410
+ resolveVariables() {
411
+ const vars = getCssVariablesWithFallback({
412
+ track_width: 10,
413
+ track_color: `gray`,
414
+ value_width: 10,
415
+ value_color: `red`,
416
+ value_label_color: `unset`,
417
+ value_label_x: 0,
418
+ value_label_y: 0,
419
+ needle_overshoot: 0.2,
420
+ needle_start: 0.6,
421
+ needle_color: `black`,
422
+ needle_width: 10,
423
+ knob_color: `black`,
424
+ knob_radius: 0.8
425
+ }, this);
426
+ return vars;
427
+ }
428
+ ;
429
+ set valueToLabel(fn) {
430
+ this.#valueToLabel = fn;
431
+ this.requestUpdate();
432
+ }
433
+ get valueToLabel() {
434
+ return this.#valueToLabel;
435
+ }
436
+ get range() {
437
+ return this.max - this.min;
438
+ }
439
+ #valueToLabel;
440
+ static { this.styles = css `
441
+ :host {
442
+ display: inline-block;
443
+ --value-label-color: unset;
444
+ }
445
+ text {
446
+ user-select:none;
447
+ }
448
+
449
+ `; }
450
+ };
451
+ __decorate([
452
+ property({ type: Number })
453
+ ], DialElement.prototype, "rangeAngle", void 0);
454
+ __decorate([
455
+ property({ type: String })
456
+ ], DialElement.prototype, "rangeAnchor", void 0);
457
+ __decorate([
458
+ property({ type: String })
459
+ ], DialElement.prototype, "labelPosition", void 0);
460
+ __decorate([
461
+ property({ type: Boolean })
462
+ ], DialElement.prototype, "spread", void 0);
463
+ __decorate([
464
+ property({ type: Boolean })
465
+ ], DialElement.prototype, "hideValue", void 0);
466
+ __decorate([
467
+ property({ type: Boolean })
468
+ ], DialElement.prototype, "hideTerminators", void 0);
469
+ __decorate([
470
+ property({ type: Boolean })
471
+ ], DialElement.prototype, "showKnob", void 0);
472
+ __decorate([
473
+ property({ type: Boolean })
474
+ ], DialElement.prototype, "bipolar", void 0);
475
+ __decorate([
476
+ property({ type: String })
477
+ ], DialElement.prototype, "needleStyle", void 0);
478
+ __decorate([
479
+ property({ type: Number })
480
+ ], DialElement.prototype, "value", void 0);
481
+ __decorate([
482
+ property({ type: Number })
483
+ ], DialElement.prototype, "step", void 0);
484
+ __decorate([
485
+ property({ type: Number })
486
+ ], DialElement.prototype, "stepFine", void 0);
487
+ __decorate([
488
+ property({ type: Number })
489
+ ], DialElement.prototype, "radius", void 0);
490
+ __decorate([
491
+ property({ type: Number })
492
+ ], DialElement.prototype, "min", void 0);
493
+ __decorate([
494
+ property({ type: Number })
495
+ ], DialElement.prototype, "max", void 0);
496
+ __decorate([
497
+ property({ type: Number })
498
+ ], DialElement.prototype, "textRelativeHeight", void 0);
499
+ __decorate([
500
+ property({ type: Object })
501
+ ], DialElement.prototype, "valueLabel", void 0);
502
+ DialElement = __decorate([
503
+ customElement('ixfx-dial')
504
+ ], DialElement);
505
+ export { DialElement };
506
+ //# sourceMappingURL=dial.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dial.js","sourceRoot":"","sources":["../src/dial.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export * from './dial.js';
2
+ export * from './selecthorizontal.js';
3
+ export * from './crumb-navigation.js';
4
+ export * from './crumb-nav.js';
5
+ export * from './tabs/tab-list-item.js';
6
+ export * from './tabs/tab-list.js';
7
+ export * from './tabs/tab-panels.js';
8
+ export * from './tabs/tab-panel.js';
9
+ export * from './split-layout/split-layout.js';
10
+ export declare const init: () => void;
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC;AAE/C,eAAO,MAAM,IAAI,YAEhB,CAAA"}
package/dist/index.js ADDED
@@ -0,0 +1,13 @@
1
+ export * from './dial.js';
2
+ export * from './selecthorizontal.js';
3
+ export * from './crumb-navigation.js';
4
+ export * from './crumb-nav.js';
5
+ export * from './tabs/tab-list-item.js';
6
+ export * from './tabs/tab-list.js';
7
+ export * from './tabs/tab-panels.js';
8
+ export * from './tabs/tab-panel.js';
9
+ export * from './split-layout/split-layout.js';
10
+ export const init = () => {
11
+ console.log(`Init`);
12
+ };
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC;AAE/C,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,EAAE;IACvB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACtB,CAAC,CAAA"}