@ixfx/components 0.2.3 → 0.2.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.
Files changed (291) hide show
  1. package/LICENSE +1 -1
  2. package/bundle/chunk-pbuEa-1d.js +13 -0
  3. package/bundle/index.d.ts +4702 -569
  4. package/bundle/index.d.ts.map +1 -1
  5. package/bundle/index.js +34929 -2800
  6. package/bundle/index.js.map +1 -1
  7. package/bundle/style.css +133 -0
  8. package/dist/ac-text.d.ts +97 -0
  9. package/dist/ac-text.d.ts.map +1 -0
  10. package/dist/ac-text.js +484 -0
  11. package/dist/ac-text.js.map +1 -0
  12. package/dist/button-DgKUzE5o.js +121 -0
  13. package/dist/button-DgKUzE5o.js.map +1 -0
  14. package/dist/button.d.ts +21 -0
  15. package/dist/button.d.ts.map +1 -0
  16. package/dist/button.js +3 -0
  17. package/dist/checkbox.d.ts +34 -0
  18. package/dist/checkbox.d.ts.map +1 -0
  19. package/dist/checkbox.js +251 -0
  20. package/dist/checkbox.js.map +1 -0
  21. package/dist/chunk-pbuEa-1d.js +13 -0
  22. package/dist/colour-C3MQIjFJ-BJV-QC-3.js +4138 -0
  23. package/dist/colour-C3MQIjFJ-BJV-QC-3.js.map +1 -0
  24. package/dist/colour-picker-Bw-AZoWx.js +922 -0
  25. package/dist/colour-picker-Bw-AZoWx.js.map +1 -0
  26. package/dist/colour-picker.d.ts +2 -0
  27. package/dist/colour-picker.js +2 -0
  28. package/dist/crumbs.d.ts +92 -0
  29. package/dist/crumbs.d.ts.map +1 -0
  30. package/dist/crumbs.js +789 -0
  31. package/dist/crumbs.js.map +1 -0
  32. package/dist/data-display.d.ts +24 -12
  33. package/dist/data-display.d.ts.map +1 -1
  34. package/dist/data-display.js +96 -105
  35. package/dist/data-display.js.map +1 -1
  36. package/dist/decorate-BZbkqIhA.js +9 -0
  37. package/dist/defaults-FEZaGiYZ.js +38 -0
  38. package/dist/defaults-FEZaGiYZ.js.map +1 -0
  39. package/dist/dist-By5URG0Y.js +1290 -0
  40. package/dist/dist-By5URG0Y.js.map +1 -0
  41. package/dist/dist-D7kJgnSE.js +1039 -0
  42. package/dist/dist-D7kJgnSE.js.map +1 -0
  43. package/dist/editable-label.d.ts +71 -0
  44. package/dist/editable-label.d.ts.map +1 -0
  45. package/dist/editable-label.js +279 -0
  46. package/dist/editable-label.js.map +1 -0
  47. package/dist/hex-editor-Gib1Grg2.d.ts +131 -0
  48. package/dist/hex-editor-Gib1Grg2.d.ts.map +1 -0
  49. package/dist/hex-editor-Wd6ZtZA2.js +1147 -0
  50. package/dist/hex-editor-Wd6ZtZA2.js.map +1 -0
  51. package/dist/hex.d.ts +2 -0
  52. package/dist/hex.js +2 -0
  53. package/dist/highlight-CAjwQ4GE.js +50 -0
  54. package/dist/highlight-CAjwQ4GE.js.map +1 -0
  55. package/dist/icon-BR5aTIiP.js +100 -0
  56. package/dist/icon-BR5aTIiP.js.map +1 -0
  57. package/dist/icon-DQKdfR7U.d.ts +36 -0
  58. package/dist/icon-DQKdfR7U.d.ts.map +1 -0
  59. package/dist/icons.d.ts +3 -0
  60. package/dist/icons.js +9 -0
  61. package/dist/icons.js.map +1 -0
  62. package/dist/incr-search-BjCNClnC.js +311 -0
  63. package/dist/incr-search-BjCNClnC.js.map +1 -0
  64. package/dist/incr-search.d.ts +2 -0
  65. package/dist/incr-search.js +3 -0
  66. package/dist/index-B1hNR7Z9.d.ts +36 -0
  67. package/dist/index-B1hNR7Z9.d.ts.map +1 -0
  68. package/dist/index-C5dK8RZa.d.ts +23 -0
  69. package/dist/index-C5dK8RZa.d.ts.map +1 -0
  70. package/dist/index-C9iBN908.d.ts +160 -0
  71. package/dist/index-C9iBN908.d.ts.map +1 -0
  72. package/dist/index-CPVcTTXo.d.ts +396 -0
  73. package/dist/index-CPVcTTXo.d.ts.map +1 -0
  74. package/dist/index-CQxanqXF.d.ts +183 -0
  75. package/dist/index-CQxanqXF.d.ts.map +1 -0
  76. package/dist/index-CpbBI3n7.d.ts +1239 -0
  77. package/dist/index-CpbBI3n7.d.ts.map +1 -0
  78. package/dist/index.d.ts +422 -13
  79. package/dist/index.d.ts.map +1 -1
  80. package/dist/index.js +5729 -14
  81. package/dist/index.js.map +1 -1
  82. package/dist/interaction-CQDQJf2Q.js +1 -0
  83. package/dist/keyboard-De_vOHLg.js +20 -0
  84. package/dist/keyboard-De_vOHLg.js.map +1 -0
  85. package/dist/labelled-input-base-DS6-6C0r.js +155 -0
  86. package/dist/labelled-input-base-DS6-6C0r.js.map +1 -0
  87. package/dist/labelled-input-base-DnRh4reU.d.ts +43 -0
  88. package/dist/labelled-input-base-DnRh4reU.d.ts.map +1 -0
  89. package/dist/labelled-radial-input.d.ts +34 -0
  90. package/dist/labelled-radial-input.d.ts.map +1 -0
  91. package/dist/labelled-radial-input.js +188 -0
  92. package/dist/labelled-radial-input.js.map +1 -0
  93. package/dist/labelled-range-input.d.ts +2 -0
  94. package/dist/labelled-range-input.js +132 -0
  95. package/dist/labelled-range-input.js.map +1 -0
  96. package/dist/led.d.ts +25 -0
  97. package/dist/led.d.ts.map +1 -0
  98. package/dist/led.js +92 -0
  99. package/dist/led.js.map +1 -0
  100. package/dist/menu-BV6UFx_z.js +813 -0
  101. package/dist/menu-BV6UFx_z.js.map +1 -0
  102. package/dist/menu-item-Cikacp4F.d.ts +128 -0
  103. package/dist/menu-item-Cikacp4F.d.ts.map +1 -0
  104. package/dist/menu-item-DEzL_Yjk.js +766 -0
  105. package/dist/menu-item-DEzL_Yjk.js.map +1 -0
  106. package/dist/menu.d.ts +3 -0
  107. package/dist/menu.js +3 -0
  108. package/dist/miller.d.ts +324 -0
  109. package/dist/miller.d.ts.map +1 -0
  110. package/dist/miller.js +1343 -0
  111. package/dist/miller.js.map +1 -0
  112. package/dist/narrowed-text.d.ts +72 -0
  113. package/dist/narrowed-text.d.ts.map +1 -0
  114. package/dist/narrowed-text.js +571 -0
  115. package/dist/narrowed-text.js.map +1 -0
  116. package/dist/panel.d.ts +43 -0
  117. package/dist/panel.d.ts.map +1 -0
  118. package/dist/panel.js +408 -0
  119. package/dist/panel.js.map +1 -0
  120. package/dist/plots.d.ts +2 -0
  121. package/dist/plots.js +2 -0
  122. package/dist/polar-pad.d.ts +67 -0
  123. package/dist/polar-pad.d.ts.map +1 -0
  124. package/dist/polar-pad.js +537 -0
  125. package/dist/polar-pad.js.map +1 -0
  126. package/dist/popup-Ddx9LCzY.js +24 -0
  127. package/dist/popup-Ddx9LCzY.js.map +1 -0
  128. package/dist/prominence-CreDBdCs.js +98 -0
  129. package/dist/prominence-CreDBdCs.js.map +1 -0
  130. package/dist/radial-input-CNJ8asY2.js +849 -0
  131. package/dist/radial-input-CNJ8asY2.js.map +1 -0
  132. package/dist/radial-input-xSTd4kEz.d.ts +70 -0
  133. package/dist/radial-input-xSTd4kEz.d.ts.map +1 -0
  134. package/dist/radial-input.d.ts +2 -0
  135. package/dist/radial-input.js +2 -0
  136. package/dist/range-input.d.ts +43 -0
  137. package/dist/range-input.d.ts.map +1 -0
  138. package/dist/range-input.js +459 -0
  139. package/dist/range-input.js.map +1 -0
  140. package/dist/range.d.ts +28 -0
  141. package/dist/range.d.ts.map +1 -0
  142. package/dist/range.js +136 -0
  143. package/dist/range.js.map +1 -0
  144. package/dist/registry-CZEB1YI9.js +21 -0
  145. package/dist/registry-CZEB1YI9.js.map +1 -0
  146. package/dist/selecthorizontal.d.ts +13 -8
  147. package/dist/selecthorizontal.d.ts.map +1 -1
  148. package/dist/selecthorizontal.js +21 -25
  149. package/dist/selecthorizontal.js.map +1 -1
  150. package/dist/snap-container.d.ts +50 -0
  151. package/dist/snap-container.d.ts.map +1 -0
  152. package/dist/snap-container.js +297 -0
  153. package/dist/snap-container.js.map +1 -0
  154. package/dist/split-layout.d.ts +56 -0
  155. package/dist/split-layout.d.ts.map +1 -0
  156. package/dist/split-layout.js +545 -0
  157. package/dist/split-layout.js.map +1 -0
  158. package/dist/style.css +133 -0
  159. package/dist/swipe.d.ts +48 -0
  160. package/dist/swipe.d.ts.map +1 -0
  161. package/dist/swipe.js +204 -0
  162. package/dist/swipe.js.map +1 -0
  163. package/dist/tab-list-CFF7uSYH.d.ts +66 -0
  164. package/dist/tab-list-CFF7uSYH.d.ts.map +1 -0
  165. package/dist/tabs.d.ts +2 -0
  166. package/dist/tabs.js +203 -0
  167. package/dist/tabs.js.map +1 -0
  168. package/dist/tickled-controller-Cq1Va0rR.d.ts +218 -0
  169. package/dist/tickled-controller-Cq1Va0rR.d.ts.map +1 -0
  170. package/dist/tickled-styles-Bg3QbcrD.js +327 -0
  171. package/dist/tickled-styles-Bg3QbcrD.js.map +1 -0
  172. package/dist/timeline-DBWJsSjd.js +1748 -0
  173. package/dist/timeline-DBWJsSjd.js.map +1 -0
  174. package/dist/timeline.d.ts +2 -0
  175. package/dist/timeline.js +2 -0
  176. package/dist/tooltip-DMxmBNky.js +104 -0
  177. package/dist/tooltip-DMxmBNky.js.map +1 -0
  178. package/dist/tooltip-kfUBWYVB.d.ts +26 -0
  179. package/dist/tooltip-kfUBWYVB.d.ts.map +1 -0
  180. package/dist/tree-component-CQpoPo4s.d.ts +326 -0
  181. package/dist/tree-component-CQpoPo4s.d.ts.map +1 -0
  182. package/dist/tree-data-model-DGvRVOFY.js +190 -0
  183. package/dist/tree-data-model-DGvRVOFY.js.map +1 -0
  184. package/dist/tree.d.ts +100 -0
  185. package/dist/tree.d.ts.map +1 -0
  186. package/dist/tree.js +1144 -0
  187. package/dist/tree.js.map +1 -0
  188. package/dist/types-BKaqnpwx.d.ts +8 -0
  189. package/dist/types-BKaqnpwx.d.ts.map +1 -0
  190. package/dist/xy-axis-BANbgrI5.js +6243 -0
  191. package/dist/xy-axis-BANbgrI5.js.map +1 -0
  192. package/dist/xy-axis-CIFok7MF.d.ts +141 -0
  193. package/dist/xy-axis-CIFok7MF.d.ts.map +1 -0
  194. package/dist/xy-pad.d.ts +81 -0
  195. package/dist/xy-pad.d.ts.map +1 -0
  196. package/dist/xy-pad.js +435 -0
  197. package/dist/xy-pad.js.map +1 -0
  198. package/package.json +48 -39
  199. package/README.md +0 -14
  200. package/dist/charts/frequency-histogram-plot.d.ts +0 -33
  201. package/dist/charts/frequency-histogram-plot.d.ts.map +0 -1
  202. package/dist/charts/frequency-histogram-plot.js +0 -54
  203. package/dist/charts/frequency-histogram-plot.js.map +0 -1
  204. package/dist/charts/histogram-vis.d.ts +0 -57
  205. package/dist/charts/histogram-vis.d.ts.map +0 -1
  206. package/dist/charts/histogram-vis.js +0 -222
  207. package/dist/charts/histogram-vis.js.map +0 -1
  208. package/dist/charts/plot.d.ts +0 -199
  209. package/dist/charts/plot.d.ts.map +0 -1
  210. package/dist/charts/plot.js +0 -914
  211. package/dist/charts/plot.js.map +0 -1
  212. package/dist/crumb-nav.d.ts +0 -41
  213. package/dist/crumb-nav.d.ts.map +0 -1
  214. package/dist/crumb-nav.js +0 -198
  215. package/dist/crumb-nav.js.map +0 -1
  216. package/dist/crumb-navigation.d.ts +0 -30
  217. package/dist/crumb-navigation.d.ts.map +0 -1
  218. package/dist/crumb-navigation.js +0 -307
  219. package/dist/crumb-navigation.js.map +0 -1
  220. package/dist/dial.d.ts +0 -89
  221. package/dist/dial.d.ts.map +0 -1
  222. package/dist/dial.js +0 -506
  223. package/dist/dial.js.map +0 -1
  224. package/dist/my-element.d.ts +0 -14
  225. package/dist/my-element.d.ts.map +0 -1
  226. package/dist/my-element.js +0 -44
  227. package/dist/my-element.js.map +0 -1
  228. package/dist/split-layout/split-layout.d.ts +0 -35
  229. package/dist/split-layout/split-layout.d.ts.map +0 -1
  230. package/dist/split-layout/split-layout.js +0 -220
  231. package/dist/split-layout/split-layout.js.map +0 -1
  232. package/dist/svg-edit-label.d.ts +0 -2
  233. package/dist/svg-edit-label.d.ts.map +0 -1
  234. package/dist/svg-edit-label.js +0 -110
  235. package/dist/svg-edit-label.js.map +0 -1
  236. package/dist/tabs/tab-layout-item.d.ts +0 -10
  237. package/dist/tabs/tab-layout-item.d.ts.map +0 -1
  238. package/dist/tabs/tab-layout-item.js +0 -20
  239. package/dist/tabs/tab-layout-item.js.map +0 -1
  240. package/dist/tabs/tab-layout.d.ts +0 -10
  241. package/dist/tabs/tab-layout.d.ts.map +0 -1
  242. package/dist/tabs/tab-layout.js +0 -25
  243. package/dist/tabs/tab-layout.js.map +0 -1
  244. package/dist/tabs/tab-list-item.d.ts +0 -18
  245. package/dist/tabs/tab-list-item.d.ts.map +0 -1
  246. package/dist/tabs/tab-list-item.js +0 -63
  247. package/dist/tabs/tab-list-item.js.map +0 -1
  248. package/dist/tabs/tab-list.d.ts +0 -21
  249. package/dist/tabs/tab-list.d.ts.map +0 -1
  250. package/dist/tabs/tab-list.js +0 -148
  251. package/dist/tabs/tab-list.js.map +0 -1
  252. package/dist/tabs/tab-panel.d.ts +0 -11
  253. package/dist/tabs/tab-panel.d.ts.map +0 -1
  254. package/dist/tabs/tab-panel.js +0 -30
  255. package/dist/tabs/tab-panel.js.map +0 -1
  256. package/dist/tabs/tab-panels.d.ts +0 -30
  257. package/dist/tabs/tab-panels.d.ts.map +0 -1
  258. package/dist/tabs/tab-panels.js +0 -80
  259. package/dist/tabs/tab-panels.js.map +0 -1
  260. package/dist/util/circle-arc.d.ts +0 -34
  261. package/dist/util/circle-arc.d.ts.map +0 -1
  262. package/dist/util/circle-arc.js +0 -77
  263. package/dist/util/circle-arc.js.map +0 -1
  264. package/dist/util/compare.d.ts +0 -53
  265. package/dist/util/compare.d.ts.map +0 -1
  266. package/dist/util/compare.js +0 -91
  267. package/dist/util/compare.js.map +0 -1
  268. package/dist/util/content-editable.d.ts +0 -2
  269. package/dist/util/content-editable.d.ts.map +0 -1
  270. package/dist/util/content-editable.js +0 -13
  271. package/dist/util/content-editable.js.map +0 -1
  272. package/dist/util/drag-controller.d.ts +0 -13
  273. package/dist/util/drag-controller.d.ts.map +0 -1
  274. package/dist/util/drag-controller.js +0 -21
  275. package/dist/util/drag-controller.js.map +0 -1
  276. package/dist/util/key-value.d.ts +0 -5
  277. package/dist/util/key-value.d.ts.map +0 -1
  278. package/dist/util/key-value.js +0 -30
  279. package/dist/util/key-value.js.map +0 -1
  280. package/dist/util/primitive-types.d.ts +0 -6
  281. package/dist/util/primitive-types.d.ts.map +0 -1
  282. package/dist/util/primitive-types.js +0 -2
  283. package/dist/util/primitive-types.js.map +0 -1
  284. package/dist/util/svg-editable-text.d.ts +0 -22
  285. package/dist/util/svg-editable-text.d.ts.map +0 -1
  286. package/dist/util/svg-editable-text.js +0 -121
  287. package/dist/util/svg-editable-text.js.map +0 -1
  288. package/dist/util/time.d.ts +0 -2
  289. package/dist/util/time.d.ts.map +0 -1
  290. package/dist/util/time.js +0 -2
  291. package/dist/util/time.js.map +0 -1
@@ -1,148 +0,0 @@
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
- import { css, html, LitElement } from "lit";
8
- import { customElement, property, queryAssignedElements } from "lit/decorators.js";
9
- import { TabListItemElement } from "./tab-list-item.js";
10
- /**
11
- * Events
12
- * * 'change' - new tab selected { previous:string, selected:string, for:string }
13
- */
14
- let TabListElement = class TabListElement extends LitElement {
15
- constructor() {
16
- super(...arguments);
17
- this.horizontal = true;
18
- this.#onKeyUp = (event) => {
19
- const key = event.key;
20
- if (key === `ArrowUp` && !this.horizontal) {
21
- this.#selectPrevious();
22
- return;
23
- }
24
- else if (key === `ArrowDown` && !this.horizontal) {
25
- this.#selectNext();
26
- return;
27
- }
28
- else if (key === `ArrowRight` && this.horizontal) {
29
- this.#selectNext();
30
- return;
31
- }
32
- else if (key === `ArrowLeft` && this.horizontal) {
33
- this.#selectPrevious();
34
- return;
35
- }
36
- };
37
- this.#onSlotClick = (event) => {
38
- this.focus();
39
- const t = event.target;
40
- const previous = this.getSelectedElement();
41
- this.selectElement(t);
42
- const forId = t.getAttribute(`for`);
43
- this.dispatchEvent(new CustomEvent(`change`, {
44
- detail: {
45
- previous, selected: t.id, for: forId ?? ``
46
- }
47
- }));
48
- };
49
- }
50
- render() {
51
- return html `
52
- <div tabindex=0 @keyup=${this.#onKeyUp} @click=${this.#onSlotClick} id="container" class=${this.horizontal ? `horizontal` : `vertical`}>
53
- <slot></slot>
54
- </div>`;
55
- }
56
- #onKeyUp;
57
- getSelectedElement() {
58
- for (const el of this._listItems) {
59
- if (this.#isSelected(el))
60
- return el;
61
- }
62
- }
63
- #isSelected(el) {
64
- const v = el.getAttribute(`selected`);
65
- if (v === null)
66
- return false;
67
- return (el.hasAttribute(`selected`));
68
- }
69
- selectElement(el) {
70
- const existing = this.getSelectedElement();
71
- if (existing) {
72
- existing.removeAttribute(`selected`);
73
- }
74
- el.setAttribute(`selected`, ``);
75
- }
76
- #selectNext() {
77
- let found = false;
78
- for (const el of this._listItems) {
79
- if (this.#isSelected(el) && !found) {
80
- found = true;
81
- }
82
- else if (found) {
83
- this.selectElement(el);
84
- break;
85
- }
86
- }
87
- }
88
- #selectPrevious() {
89
- let prev;
90
- for (const el of this._listItems) {
91
- if (this.#isSelected(el) && prev) {
92
- this.selectElement(prev);
93
- }
94
- else {
95
- prev = el;
96
- }
97
- }
98
- }
99
- #onSlotClick;
100
- // #updateSelection() {
101
- // for (const el of this._listItems) {
102
- // if (el.id === this.selectedId) {
103
- // el.classList.add(`activated`);
104
- // el.setAttribute(`activated`, ``);
105
- // } else {
106
- // el.classList.remove(`activated`);
107
- // el.removeAttribute(`activated`);
108
- // }
109
- // }
110
- // }
111
- // protected updated(_changedProperties: PropertyValues): void {
112
- // this.#updateSelection();
113
- // }
114
- static { this.styles = css `
115
- :host {
116
- display: inline-block;
117
- --activated-colour: blue;
118
- --colur: pink;
119
- }
120
- text {
121
- user-select:none;
122
- }
123
- #container {
124
- display:flex;
125
- }
126
- #container.horizontal {
127
- flex-direction: row;
128
- }
129
- #container.vertical {
130
- flex-direction: column;
131
- }
132
-
133
- ::slotted(.activated) {
134
- --colour: var(--activated-colour);
135
- }
136
- `; }
137
- };
138
- __decorate([
139
- property({ type: Boolean })
140
- ], TabListElement.prototype, "horizontal", void 0);
141
- __decorate([
142
- queryAssignedElements()
143
- ], TabListElement.prototype, "_listItems", void 0);
144
- TabListElement = __decorate([
145
- customElement('ixfx-tab-list')
146
- ], TabListElement);
147
- export { TabListElement };
148
- //# sourceMappingURL=tab-list.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tab-list.js","sourceRoot":"","sources":["../../src/tabs/tab-list.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import { LitElement } from "lit";
2
- export declare class TabPanelElement extends LitElement {
3
- render(): import("lit-html").TemplateResult<1>;
4
- static styles: import("lit").CSSResult;
5
- }
6
- declare global {
7
- interface HTMLElementTagNameMap {
8
- "ixfx-tab-panel": TabPanelElement;
9
- }
10
- }
11
- //# sourceMappingURL=tab-panel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tab-panel.d.ts","sourceRoot":"","sources":["../../src/tabs/tab-panel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAE,MAAM,KAAK,CAAC;AAG5C,qBACa,eAAgB,SAAQ,UAAU;IAE7C,MAAM;IAGN,MAAM,CAAC,MAAM,0BAWZ;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,gBAAgB,EAAE,eAAe,CAAC;KACnC;CACF"}
@@ -1,30 +0,0 @@
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
- import { css, html, LitElement } from "lit";
8
- import { customElement } from "lit/decorators.js";
9
- let TabPanelElement = class TabPanelElement extends LitElement {
10
- render() {
11
- return html `<slot></slot>`;
12
- }
13
- static { this.styles = css `
14
- :host {
15
- display:none;
16
- height:100%;
17
- width:100%;
18
- }
19
-
20
- :host([selected]) {
21
- background: whitesmoke;
22
- display:block;
23
- }
24
- `; }
25
- };
26
- TabPanelElement = __decorate([
27
- customElement('ixfx-tab-panel')
28
- ], TabPanelElement);
29
- export { TabPanelElement };
30
- //# sourceMappingURL=tab-panel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tab-panel.js","sourceRoot":"","sources":["../../src/tabs/tab-panel.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAG3C,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,UAAU;IAE7C,MAAM;QACJ,OAAO,IAAI,CAAA,eAAe,CAAA;IAC5B,CAAC;aACM,WAAM,GAAG,GAAG,CAAA;;;;;;;;;;;GAWlB,AAXY,CAWZ;;AAhBU,eAAe;IAD3B,aAAa,CAAC,gBAAgB,CAAC;GACnB,eAAe,CAiB3B"}
@@ -1,30 +0,0 @@
1
- import { LitElement } from "lit";
2
- import { TabPanelElement } from "./tab-panel.js";
3
- import { TabListElement } from "./tab-list.js";
4
- export declare class TabPanelsElement extends LitElement {
5
- #private;
6
- _listItems: TabPanelElement[];
7
- /**
8
- * Triggered when a panel is being de-selected
9
- */
10
- onUnselectedPanel?: (id: string, el: TabPanelElement) => void;
11
- /**
12
- * Triggered before panel is selected
13
- */
14
- onSelectingPanel?: (id: string, el: TabPanelElement) => void;
15
- /**
16
- * Triggered after panel is selected
17
- */
18
- onSelectedPanel?: (id: string, el: TabPanelElement) => void;
19
- render(): import("lit-html").TemplateResult<1>;
20
- getSelectedElement(): TabPanelElement | undefined;
21
- syncWithList(el: TabListElement): void;
22
- selectPanel(id: string): boolean | undefined;
23
- static styles: import("lit").CSSResult;
24
- }
25
- declare global {
26
- interface HTMLElementTagNameMap {
27
- "ixfx-tab-panels": TabPanelsElement;
28
- }
29
- }
30
- //# sourceMappingURL=tab-panels.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tab-panels.d.ts","sourceRoot":"","sources":["../../src/tabs/tab-panels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAE,MAAM,KAAK,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,qBACa,gBAAiB,SAAQ,UAAU;;IAG9C,UAAU,EAAG,eAAe,EAAE,CAAC;IAE/B;;OAEG;IACH,iBAAiB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,eAAe,KAAK,IAAI,CAAA;IAC7D;;OAEG;IACH,gBAAgB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,eAAe,KAAK,IAAI,CAAA;IAC5D;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,eAAe,KAAK,IAAI,CAAA;IAC3D,MAAM;IAIN,kBAAkB;IA6BlB,YAAY,CAAC,EAAE,EAAE,cAAc;IAQ/B,WAAW,CAAC,EAAE,EAAE,MAAM;IAiBtB,MAAM,CAAC,MAAM,0BAKZ;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,gBAAgB,CAAC;KACrC;CACF"}
@@ -1,80 +0,0 @@
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
- import { css, html, LitElement } from "lit";
8
- import { customElement, queryAssignedElements } from "lit/decorators.js";
9
- import { TabPanelElement } from "./tab-panel.js";
10
- import { TabListElement } from "./tab-list.js";
11
- let TabPanelsElement = class TabPanelsElement extends LitElement {
12
- render() {
13
- return html `<slot></slot>`;
14
- }
15
- getSelectedElement() {
16
- for (const el of this._listItems) {
17
- if (this.#isSelected(el))
18
- return el;
19
- }
20
- }
21
- #isSelected(el) {
22
- //const v = el.getAttribute(`selected`);
23
- //console.log(`id: ${ el.id } v: ${ v }`);
24
- return el.hasAttribute(`selected`);
25
- }
26
- #unselect(el) {
27
- el.removeAttribute(`selected`);
28
- if (this.onUnselectedPanel) {
29
- this.onUnselectedPanel(el.id, el);
30
- }
31
- }
32
- #select(el) {
33
- if (this.onSelectingPanel) {
34
- this.onSelectingPanel(el.id, el);
35
- }
36
- el.setAttribute(`selected`, ``);
37
- if (this.onSelectedPanel) {
38
- this.onSelectedPanel(el.id, el);
39
- }
40
- }
41
- syncWithList(el) {
42
- const t = el.getSelectedElement();
43
- if (!t)
44
- return;
45
- const forEl = t.getAttribute(`for`);
46
- if (!forEl)
47
- return;
48
- this.selectPanel(forEl);
49
- }
50
- selectPanel(id) {
51
- const current = this.getSelectedElement();
52
- if (current) {
53
- if (current.id === id)
54
- return;
55
- this.#unselect(current);
56
- }
57
- let found = false;
58
- for (const el of this._listItems) {
59
- if (el.id === id) {
60
- this.#select(el);
61
- found = true;
62
- }
63
- }
64
- return found;
65
- }
66
- static { this.styles = css `
67
- :host {
68
- display: block;
69
- }
70
-
71
- `; }
72
- };
73
- __decorate([
74
- queryAssignedElements()
75
- ], TabPanelsElement.prototype, "_listItems", void 0);
76
- TabPanelsElement = __decorate([
77
- customElement('ixfx-tab-panels')
78
- ], TabPanelsElement);
79
- export { TabPanelsElement };
80
- //# sourceMappingURL=tab-panels.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tab-panels.js","sourceRoot":"","sources":["../../src/tabs/tab-panels.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAG,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAGxC,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,UAAU;IAiB9C,MAAM;QACJ,OAAO,IAAI,CAAA,eAAe,CAAA;IAC5B,CAAC;IAED,kBAAkB;QAChB,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACjC,IAAI,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;gBAAE,OAAO,EAAE,CAAC;QACtC,CAAC;IACH,CAAC;IAED,WAAW,CAAC,EAAmB;QAC7B,wCAAwC;QACxC,0CAA0C;QAC1C,OAAO,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC;IAED,SAAS,CAAC,EAAmB;QAC3B,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAC/B,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,OAAO,CAAC,EAAmB;QACzB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QACD,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAChC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,YAAY,CAAC,EAAkB;QAC7B,MAAM,CAAC,GAAG,EAAE,CAAC,kBAAkB,EAAE,CAAC;QAClC,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,MAAM,KAAK,GAAG,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED,WAAW,CAAC,EAAU;QACpB,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1C,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE;gBAAE,OAAO;YAC9B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;QAED,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACjC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;gBACjB,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACjB,KAAK,GAAG,IAAI,CAAC;YACf,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;aAEM,WAAM,GAAG,GAAG,CAAA;;;;;GAKlB,AALY,CAKZ;;AA7ED;IADC,qBAAqB,EAAE;oDACO;AAHpB,gBAAgB;IAD5B,aAAa,CAAC,iBAAiB,CAAC;GACpB,gBAAgB,CAiF5B"}
@@ -1,34 +0,0 @@
1
- import type { Point } from "ixfx/geometry.js";
2
- export type CircleArcAnchor = `south` | `south-east` | `east` | `north`;
3
- export type CircleArc = {
4
- radius: number;
5
- anchor?: CircleArcAnchor;
6
- rangeRadian?: number;
7
- x: number;
8
- y: number;
9
- };
10
- export type CircleArcDefined = CircleArc & {
11
- startPoint: Point;
12
- startAngle: number;
13
- endPoint: Point;
14
- endAngle: number;
15
- midPoint: Point;
16
- midAngle: number;
17
- rotation: number;
18
- rangeRadian: number;
19
- anchor: CircleArcAnchor;
20
- invert: boolean;
21
- };
22
- export declare const precompute: (arc: CircleArc) => CircleArcDefined;
23
- export declare const interpolatePoint: (arc: CircleArcDefined, t: number) => Point;
24
- export type ArcPart = {
25
- startPoint: Point;
26
- startAngle: number;
27
- endPoint: Point;
28
- endAngle: number;
29
- range: number;
30
- };
31
- export declare const arcPart: (track: CircleArcDefined, startAngle: number, endAngle: number, cw: boolean) => ArcPart;
32
- export declare const partToSvg: (arc: CircleArc, part: ArcPart, largeArc?: boolean, clockwise?: boolean) => string[];
33
- export declare const toSvg: (arc: CircleArcDefined, largeArc?: boolean, clockwise?: boolean) => string[];
34
- //# sourceMappingURL=circle-arc.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"circle-arc.d.ts","sourceRoot":"","sources":["../../src/util/circle-arc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAK9C,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC;AAExE,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAA;CACV,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG;IACzC,UAAU,EAAE,KAAK,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,OAAO,CAAA;CAChB,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,KAAK,SAAS,KAAG,gBA2C3C,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,KAAK,gBAAgB,EAAE,GAAG,MAAM,KAAG,KAGnE,CAAA;AAGD,MAAM,MAAM,OAAO,GAAG;IACpB,UAAU,EAAE,KAAK,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,KAAK,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AACD,eAAO,MAAM,OAAO,GAAI,OAAO,gBAAgB,EAAE,YAAY,MAAM,EAAE,UAAU,MAAM,EAAE,IAAI,OAAO,KAAG,OAcpG,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,KAAK,SAAS,EAAE,MAAM,OAAO,EAAE,kBAAe,EAAE,mBAAgB,aAMzF,CAAA;AACD,eAAO,MAAM,KAAK,GAAI,KAAK,gBAAgB,EAAE,kBAAe,EAAE,mBAAgB,aAM7E,CAAA"}
@@ -1,77 +0,0 @@
1
- import { Circles, radianToDegree, radianArc } from "ixfx/geometry.js";
2
- const piPi = Math.PI * 2;
3
- export const precompute = (arc) => {
4
- let rotation = 0;
5
- const anchor = arc.anchor ?? `south`;
6
- const rangeRadian = arc.rangeRadian ?? radianToDegree(300);
7
- let invert = false;
8
- switch (anchor) {
9
- case `east`:
10
- break;
11
- case `south-east`:
12
- rotation = -Math.PI / 4; // 0 at south-east
13
- break;
14
- case `north`:
15
- rotation = Math.PI / 2;
16
- invert = true;
17
- break;
18
- case `south`:
19
- default:
20
- //90 - (range / 2);
21
- rotation = (Math.PI * 3) / 2;
22
- }
23
- const rangeRemainder = piPi - rangeRadian;
24
- let startAngle = rotation - (rangeRemainder / 2);
25
- let endAngle = rotation + (rangeRemainder / 2);
26
- const midAngle = rotation - Math.PI;
27
- if (invert) {
28
- const oldStart = startAngle;
29
- startAngle = endAngle;
30
- endAngle = oldStart;
31
- }
32
- //console.log(`start: ${ startAngle } end:${ endAngle } range: ${ rangeRadian } remain: ${ rangeRemainder }`);
33
- const startPoint = Circles.pointOnPerimeter(arc, startAngle);
34
- const endPoint = Circles.pointOnPerimeter(arc, endAngle);
35
- const midPoint = Circles.pointOnPerimeter(arc, midAngle);
36
- return {
37
- ...arc,
38
- anchor,
39
- rangeRadian,
40
- midPoint, midAngle,
41
- startPoint, endPoint, rotation,
42
- startAngle, endAngle, invert
43
- };
44
- };
45
- export const interpolatePoint = (arc, t) => {
46
- const angle = arc.rangeRadian * t;
47
- return Circles.pointOnPerimeter(arc, arc.startAngle - angle);
48
- };
49
- export const arcPart = (track, startAngle, endAngle, cw) => {
50
- const startPoint = Circles.pointOnPerimeter(track, startAngle);
51
- const endPoint = Circles.pointOnPerimeter(track, endAngle);
52
- return {
53
- startPoint, endPoint, startAngle, endAngle,
54
- range: radianArc(startAngle, endAngle, cw)
55
- };
56
- // const startPoint = start ? interpolatePoint(arc, start) : arc.startPoint;
57
- // const endPoint = end ? interpolatePoint(arc, end) : arc.endPoint;
58
- // return {
59
- // ...arc,
60
- // startPoint, endPoint
61
- // }
62
- };
63
- export const partToSvg = (arc, part, largeArc = true, clockwise = true) => {
64
- const rotation = 0;
65
- return [
66
- `M ${part.startPoint.x} ${part.startPoint.y}`,
67
- `A ${arc.radius} ${arc.radius} ${rotation} ${largeArc ? `1` : `0`} ${clockwise ? `1` : `0`} ${part.endPoint.x} ${part.endPoint.y}`
68
- ];
69
- };
70
- export const toSvg = (arc, largeArc = true, clockwise = true) => {
71
- const rotation = 0;
72
- return [
73
- `M ${arc.startPoint.x} ${arc.startPoint.y}`,
74
- `A ${arc.radius} ${arc.radius} ${rotation} ${largeArc ? `1` : `0`} ${clockwise ? `1` : `0`} ${arc.endPoint.x} ${arc.endPoint.y}`
75
- ];
76
- };
77
- //# sourceMappingURL=circle-arc.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"circle-arc.js","sourceRoot":"","sources":["../../src/util/circle-arc.ts"],"names":[],"mappings":"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"}
@@ -1,53 +0,0 @@
1
- export type CompareResult = number;
2
- export type Comparer<V> = (a: V, b: V) => CompareResult;
3
- /**
4
- * Sort numbers in ascending order.
5
- *
6
- * ```js
7
- * [10, 4, 5, 0].sort(numericComparer);
8
- * // Yields: [0, 4, 5, 10]
9
- * [10, 4, 5, 0].sort(comparerInverse(numericComparer));
10
- * // Yields: [ 10, 5, 4, 0]
11
- * ```
12
- * @param x
13
- * @param y
14
- * @returns
15
- */
16
- export declare const numericComparer: (x: number, y: number) => CompareResult;
17
- /**
18
- * Compares numbers by numeric value, otherwise uses the default
19
- * logic of string comparison.
20
- *
21
- * Is an ascending sort:
22
- * * b, a, c -> a, b, c
23
- * * 10, 5, 100 -> 5, 10, 100
24
- *
25
- * Returns -1 if x is less than y
26
- * Returns 1 if x is greater than y
27
- * Returns 0 if x is the same as y
28
- * @param x
29
- * @param y
30
- * @see {@link comparerInverse} Inverted order
31
- * @returns
32
- */
33
- export declare const defaultComparer: (x: unknown, y: unknown) => CompareResult;
34
- /**
35
- * Default sort comparer, following same sematics as Array.sort.
36
- * Consider using {@link defaultComparer} to get more logical sorting of numbers.
37
- *
38
- * Note: numbers are sorted in alphabetical order, eg:
39
- * ```js
40
- * [ 10, 20, 5, 100 ].sort(jsComparer); // same as .sort()
41
- * // Yields: [10, 100, 20, 5]
42
- * ```
43
- *
44
- * Returns -1 if x is less than y
45
- * Returns 1 if x is greater than y
46
- * Returns 0 if x is the same as y
47
- * @param x
48
- * @param y
49
- * @returns
50
- */
51
- export declare const jsComparer: (x: unknown, y: unknown) => CompareResult;
52
- export declare const defaultToString: (object: unknown) => string;
53
- //# sourceMappingURL=compare.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"compare.d.ts","sourceRoot":"","sources":["../../src/util/compare.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AACnC,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,aAAa,CAAC;AAExD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,KAAG,aAKtD,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,eAAe,GAAI,GAAG,OAAO,EAAE,GAAG,OAAO,KAAG,aAKxD,CAAC;AAGF;;;;;;;;;;;;;;;;GAgBG;AAEH,eAAO,MAAM,UAAU,GAAI,GAAG,OAAO,EAAE,GAAG,OAAO,KAAG,aAcnD,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,QAAQ,OAAO,KAAG,MAUjD,CAAC"}
@@ -1,91 +0,0 @@
1
- /**
2
- * Sort numbers in ascending order.
3
- *
4
- * ```js
5
- * [10, 4, 5, 0].sort(numericComparer);
6
- * // Yields: [0, 4, 5, 10]
7
- * [10, 4, 5, 0].sort(comparerInverse(numericComparer));
8
- * // Yields: [ 10, 5, 4, 0]
9
- * ```
10
- * @param x
11
- * @param y
12
- * @returns
13
- */
14
- export const numericComparer = (x, y) => {
15
- // ✔️ Unit tested
16
- if (x === y)
17
- return 0;
18
- if (x > y)
19
- return 1;
20
- return -1;
21
- };
22
- /**
23
- * Compares numbers by numeric value, otherwise uses the default
24
- * logic of string comparison.
25
- *
26
- * Is an ascending sort:
27
- * * b, a, c -> a, b, c
28
- * * 10, 5, 100 -> 5, 10, 100
29
- *
30
- * Returns -1 if x is less than y
31
- * Returns 1 if x is greater than y
32
- * Returns 0 if x is the same as y
33
- * @param x
34
- * @param y
35
- * @see {@link comparerInverse} Inverted order
36
- * @returns
37
- */
38
- export const defaultComparer = (x, y) => {
39
- if (typeof x === `number` && typeof y === `number`) {
40
- return numericComparer(x, y);
41
- }
42
- return jsComparer(x, y);
43
- };
44
- /**
45
- * Default sort comparer, following same sematics as Array.sort.
46
- * Consider using {@link defaultComparer} to get more logical sorting of numbers.
47
- *
48
- * Note: numbers are sorted in alphabetical order, eg:
49
- * ```js
50
- * [ 10, 20, 5, 100 ].sort(jsComparer); // same as .sort()
51
- * // Yields: [10, 100, 20, 5]
52
- * ```
53
- *
54
- * Returns -1 if x is less than y
55
- * Returns 1 if x is greater than y
56
- * Returns 0 if x is the same as y
57
- * @param x
58
- * @param y
59
- * @returns
60
- */
61
- export const jsComparer = (x, y) => {
62
- // ✔️ Unit tested
63
- // Via https://stackoverflow.com/questions/47334234/how-to-implement-array-prototype-sort-default-compare-function
64
- if (x === undefined && y === undefined)
65
- return 0;
66
- if (x === undefined)
67
- return 1;
68
- if (y === undefined)
69
- return -1;
70
- const xString = defaultToString(x);
71
- const yString = defaultToString(y);
72
- if (xString < yString)
73
- return -1;
74
- if (xString > yString)
75
- return 1;
76
- return 0;
77
- };
78
- export const defaultToString = (object) => {
79
- //ECMA specification: http://www.ecma-international.org/ecma-262/6.0/#sec-tostring
80
- if (object === null)
81
- return `null`;
82
- if (typeof object === `boolean` || typeof object === `number`) {
83
- return object.toString();
84
- }
85
- if (typeof object === `string`)
86
- return object;
87
- if (typeof object === `symbol`)
88
- throw new TypeError(`Symbol cannot be converted to string`);
89
- return JSON.stringify(object);
90
- };
91
- //# sourceMappingURL=compare.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"compare.js","sourceRoot":"","sources":["../../src/util/compare.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAS,EAAE,CAAS,EAAiB,EAAE;IACrE,iBAAiB;IACjB,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtB,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC;IACpB,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAU,EAAE,CAAU,EAAiB,EAAE;IACvE,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QACnD,OAAO,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1B,CAAC,CAAC;AAGF;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAU,EAAE,CAAU,EAAiB,EAAE;IAClE,iBAAiB;IAEjB,kHAAkH;IAClH,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC;IACjD,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC,CAAC;IAE/B,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;IAEnC,IAAI,OAAO,GAAG,OAAO;QAAE,OAAO,CAAC,CAAC,CAAC;IACjC,IAAI,OAAO,GAAG,OAAO;QAAE,OAAO,CAAC,CAAC;IAChC,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAe,EAAU,EAAE;IACzD,kFAAkF;IAClF,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC;IACnC,IAAI,OAAO,MAAM,KAAK,SAAS,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC9D,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC3B,CAAC;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC;IAC9C,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;IAC5F,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare const focus: (el: HTMLElement, selectAll: boolean) => void;
2
- //# sourceMappingURL=content-editable.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"content-editable.d.ts","sourceRoot":"","sources":["../../src/util/content-editable.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,KAAK,GAAI,IAAI,WAAW,EAAE,WAAW,OAAO,SAWxD,CAAA"}
@@ -1,13 +0,0 @@
1
- export const focus = (el, selectAll) => {
2
- el.focus();
3
- if (selectAll) {
4
- const range = document.createRange();
5
- range.selectNodeContents(el);
6
- const sel = window.getSelection();
7
- if (sel) {
8
- sel.removeAllRanges();
9
- sel.addRange(range);
10
- }
11
- }
12
- };
13
- //# sourceMappingURL=content-editable.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"content-editable.js","sourceRoot":"","sources":["../../src/util/content-editable.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,EAAe,EAAE,SAAkB,EAAE,EAAE;IAC3D,EAAE,CAAC,KAAK,EAAE,CAAC;IACX,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QACrC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QAC7B,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;QAClC,IAAI,GAAG,EAAE,CAAC;YACR,GAAG,CAAC,eAAe,EAAE,CAAC;YACtB,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;AACH,CAAC,CAAA"}
@@ -1,13 +0,0 @@
1
- import { type ReactiveControllerHost } from 'lit';
2
- export declare class DragController {
3
- #private;
4
- private host;
5
- pos: {
6
- x: number;
7
- y: number;
8
- };
9
- constructor(host: ReactiveControllerHost);
10
- hostConnected(): void;
11
- hostDisconnected(): void;
12
- }
13
- //# sourceMappingURL=drag-controller.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"drag-controller.d.ts","sourceRoot":"","sources":["../../src/util/drag-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAElD,qBAAa,cAAc;;IACzB,OAAO,CAAC,IAAI,CAAyB;IACrC,GAAG;;;MAAkB;gBAOT,IAAI,EAAE,sBAAsB;IAMxC,aAAa;IAKb,gBAAgB;CAGjB"}