@omegagrid/core 0.10.0 → 0.10.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 (317) hide show
  1. package/package.json +2 -2
  2. package/dist/common/actions.d.ts +0 -16
  3. package/dist/common/actions.d.ts.map +0 -1
  4. package/dist/common/actions.js +0 -14
  5. package/dist/common/actions.js.map +0 -1
  6. package/dist/common/colors.d.ts +0 -39
  7. package/dist/common/colors.d.ts.map +0 -1
  8. package/dist/common/colors.js +0 -59
  9. package/dist/common/colors.js.map +0 -1
  10. package/dist/common/csv.d.ts +0 -23
  11. package/dist/common/csv.d.ts.map +0 -1
  12. package/dist/common/csv.js +0 -93
  13. package/dist/common/csv.js.map +0 -1
  14. package/dist/common/dates.d.ts +0 -32
  15. package/dist/common/dates.d.ts.map +0 -1
  16. package/dist/common/dates.js +0 -172
  17. package/dist/common/dates.js.map +0 -1
  18. package/dist/common/device.d.ts +0 -2
  19. package/dist/common/device.d.ts.map +0 -1
  20. package/dist/common/device.js +0 -13
  21. package/dist/common/device.js.map +0 -1
  22. package/dist/common/dom.d.ts +0 -90
  23. package/dist/common/dom.d.ts.map +0 -1
  24. package/dist/common/dom.js +0 -308
  25. package/dist/common/dom.js.map +0 -1
  26. package/dist/common/events.d.ts +0 -15
  27. package/dist/common/events.d.ts.map +0 -1
  28. package/dist/common/events.js +0 -33
  29. package/dist/common/events.js.map +0 -1
  30. package/dist/common/html.d.ts +0 -3
  31. package/dist/common/html.d.ts.map +0 -1
  32. package/dist/common/html.js +0 -25
  33. package/dist/common/html.js.map +0 -1
  34. package/dist/common/index.d.ts +0 -19
  35. package/dist/common/index.d.ts.map +0 -1
  36. package/dist/common/index.js +0 -19
  37. package/dist/common/index.js.map +0 -1
  38. package/dist/common/linkedList.d.ts +0 -24
  39. package/dist/common/linkedList.d.ts.map +0 -1
  40. package/dist/common/linkedList.js +0 -65
  41. package/dist/common/linkedList.js.map +0 -1
  42. package/dist/common/loaders.d.ts +0 -17
  43. package/dist/common/loaders.d.ts.map +0 -1
  44. package/dist/common/loaders.js +0 -54
  45. package/dist/common/loaders.js.map +0 -1
  46. package/dist/common/logger.d.ts +0 -25
  47. package/dist/common/logger.d.ts.map +0 -1
  48. package/dist/common/logger.js +0 -57
  49. package/dist/common/logger.js.map +0 -1
  50. package/dist/common/matrix.d.ts +0 -6
  51. package/dist/common/matrix.d.ts.map +0 -1
  52. package/dist/common/matrix.js +0 -17
  53. package/dist/common/matrix.js.map +0 -1
  54. package/dist/common/numbers.d.ts +0 -26
  55. package/dist/common/numbers.d.ts.map +0 -1
  56. package/dist/common/numbers.js +0 -239
  57. package/dist/common/numbers.js.map +0 -1
  58. package/dist/common/options.d.ts +0 -17
  59. package/dist/common/options.d.ts.map +0 -1
  60. package/dist/common/options.js +0 -29
  61. package/dist/common/options.js.map +0 -1
  62. package/dist/common/paper.d.ts +0 -8
  63. package/dist/common/paper.d.ts.map +0 -1
  64. package/dist/common/paper.js +0 -17
  65. package/dist/common/paper.js.map +0 -1
  66. package/dist/common/shortcutManager.d.ts +0 -17
  67. package/dist/common/shortcutManager.d.ts.map +0 -1
  68. package/dist/common/shortcutManager.js +0 -49
  69. package/dist/common/shortcutManager.js.map +0 -1
  70. package/dist/common/tree.d.ts +0 -87
  71. package/dist/common/tree.d.ts.map +0 -1
  72. package/dist/common/tree.js +0 -204
  73. package/dist/common/tree.js.map +0 -1
  74. package/dist/common/utils.d.ts +0 -30
  75. package/dist/common/utils.d.ts.map +0 -1
  76. package/dist/common/utils.js +0 -136
  77. package/dist/common/utils.js.map +0 -1
  78. package/dist/constants.d.ts +0 -48
  79. package/dist/constants.d.ts.map +0 -1
  80. package/dist/constants.js +0 -24
  81. package/dist/constants.js.map +0 -1
  82. package/dist/index.d.ts +0 -8
  83. package/dist/index.d.ts.map +0 -1
  84. package/dist/index.js +0 -8
  85. package/dist/index.js.map +0 -1
  86. package/dist/model/adapter.d.ts +0 -8
  87. package/dist/model/adapter.d.ts.map +0 -1
  88. package/dist/model/adapter.js +0 -13
  89. package/dist/model/adapter.js.map +0 -1
  90. package/dist/model/component.d.ts +0 -19
  91. package/dist/model/component.d.ts.map +0 -1
  92. package/dist/model/component.js +0 -84
  93. package/dist/model/component.js.map +0 -1
  94. package/dist/model/componentSlice.d.ts +0 -8
  95. package/dist/model/componentSlice.d.ts.map +0 -1
  96. package/dist/model/componentSlice.js +0 -10
  97. package/dist/model/componentSlice.js.map +0 -1
  98. package/dist/model/componentStore.d.ts +0 -12
  99. package/dist/model/componentStore.d.ts.map +0 -1
  100. package/dist/model/componentStore.js +0 -26
  101. package/dist/model/componentStore.js.map +0 -1
  102. package/dist/model/index.d.ts +0 -6
  103. package/dist/model/index.d.ts.map +0 -1
  104. package/dist/model/index.js +0 -6
  105. package/dist/model/index.js.map +0 -1
  106. package/dist/model/plugins.d.ts +0 -13
  107. package/dist/model/plugins.d.ts.map +0 -1
  108. package/dist/model/plugins.js +0 -27
  109. package/dist/model/plugins.js.map +0 -1
  110. package/dist/themes/definitions/tmDark.d.ts +0 -4
  111. package/dist/themes/definitions/tmDark.d.ts.map +0 -1
  112. package/dist/themes/definitions/tmDark.js +0 -83
  113. package/dist/themes/definitions/tmDark.js.map +0 -1
  114. package/dist/themes/definitions/tmLight.d.ts +0 -4
  115. package/dist/themes/definitions/tmLight.d.ts.map +0 -1
  116. package/dist/themes/definitions/tmLight.js +0 -83
  117. package/dist/themes/definitions/tmLight.js.map +0 -1
  118. package/dist/themes/helpers.d.ts +0 -7
  119. package/dist/themes/helpers.d.ts.map +0 -1
  120. package/dist/themes/helpers.js +0 -34
  121. package/dist/themes/helpers.js.map +0 -1
  122. package/dist/themes/index.d.ts +0 -18
  123. package/dist/themes/index.d.ts.map +0 -1
  124. package/dist/themes/index.js +0 -48
  125. package/dist/themes/index.js.map +0 -1
  126. package/dist/themes/mixins.d.ts +0 -10
  127. package/dist/themes/mixins.d.ts.map +0 -1
  128. package/dist/themes/mixins.js +0 -39
  129. package/dist/themes/mixins.js.map +0 -1
  130. package/dist/themes/transformations.d.ts +0 -9
  131. package/dist/themes/transformations.d.ts.map +0 -1
  132. package/dist/themes/transformations.js +0 -48
  133. package/dist/themes/transformations.js.map +0 -1
  134. package/dist/types.d.ts +0 -130
  135. package/dist/types.d.ts.map +0 -1
  136. package/dist/types.js +0 -12
  137. package/dist/types.js.map +0 -1
  138. package/dist/ui/accordion.d.ts +0 -16
  139. package/dist/ui/accordion.d.ts.map +0 -1
  140. package/dist/ui/accordion.js +0 -209
  141. package/dist/ui/accordion.js.map +0 -1
  142. package/dist/ui/alert.d.ts +0 -15
  143. package/dist/ui/alert.d.ts.map +0 -1
  144. package/dist/ui/alert.js +0 -101
  145. package/dist/ui/alert.js.map +0 -1
  146. package/dist/ui/baseElement.d.ts +0 -7
  147. package/dist/ui/baseElement.d.ts.map +0 -1
  148. package/dist/ui/baseElement.js +0 -10
  149. package/dist/ui/baseElement.js.map +0 -1
  150. package/dist/ui/button.d.ts +0 -21
  151. package/dist/ui/button.d.ts.map +0 -1
  152. package/dist/ui/button.js +0 -100
  153. package/dist/ui/button.js.map +0 -1
  154. package/dist/ui/button.style.d.ts +0 -2
  155. package/dist/ui/button.style.d.ts.map +0 -1
  156. package/dist/ui/button.style.js +0 -60
  157. package/dist/ui/button.style.js.map +0 -1
  158. package/dist/ui/checkbox.d.ts +0 -14
  159. package/dist/ui/checkbox.d.ts.map +0 -1
  160. package/dist/ui/checkbox.js +0 -47
  161. package/dist/ui/checkbox.js.map +0 -1
  162. package/dist/ui/close.d.ts +0 -6
  163. package/dist/ui/close.d.ts.map +0 -1
  164. package/dist/ui/close.js +0 -33
  165. package/dist/ui/close.js.map +0 -1
  166. package/dist/ui/colorpicker.d.ts +0 -24
  167. package/dist/ui/colorpicker.d.ts.map +0 -1
  168. package/dist/ui/colorpicker.js +0 -228
  169. package/dist/ui/colorpicker.js.map +0 -1
  170. package/dist/ui/container.d.ts +0 -39
  171. package/dist/ui/container.d.ts.map +0 -1
  172. package/dist/ui/container.js +0 -313
  173. package/dist/ui/container.js.map +0 -1
  174. package/dist/ui/dropdown.d.ts +0 -48
  175. package/dist/ui/dropdown.d.ts.map +0 -1
  176. package/dist/ui/dropdown.js +0 -300
  177. package/dist/ui/dropdown.js.map +0 -1
  178. package/dist/ui/dropdownColorPicker.d.ts +0 -12
  179. package/dist/ui/dropdownColorPicker.d.ts.map +0 -1
  180. package/dist/ui/dropdownColorPicker.js +0 -60
  181. package/dist/ui/dropdownColorPicker.js.map +0 -1
  182. package/dist/ui/dropdownList.d.ts +0 -8
  183. package/dist/ui/dropdownList.d.ts.map +0 -1
  184. package/dist/ui/dropdownList.js +0 -48
  185. package/dist/ui/dropdownList.js.map +0 -1
  186. package/dist/ui/dropdownMenu.d.ts +0 -11
  187. package/dist/ui/dropdownMenu.d.ts.map +0 -1
  188. package/dist/ui/dropdownMenu.js +0 -61
  189. package/dist/ui/dropdownMenu.js.map +0 -1
  190. package/dist/ui/expander.d.ts +0 -28
  191. package/dist/ui/expander.d.ts.map +0 -1
  192. package/dist/ui/expander.js +0 -144
  193. package/dist/ui/expander.js.map +0 -1
  194. package/dist/ui/fileInput.d.ts +0 -24
  195. package/dist/ui/fileInput.d.ts.map +0 -1
  196. package/dist/ui/fileInput.js +0 -130
  197. package/dist/ui/fileInput.js.map +0 -1
  198. package/dist/ui/fileInput.style.d.ts +0 -2
  199. package/dist/ui/fileInput.style.d.ts.map +0 -1
  200. package/dist/ui/fileInput.style.js +0 -73
  201. package/dist/ui/fileInput.style.js.map +0 -1
  202. package/dist/ui/floatingWindow.d.ts +0 -19
  203. package/dist/ui/floatingWindow.d.ts.map +0 -1
  204. package/dist/ui/floatingWindow.js +0 -87
  205. package/dist/ui/floatingWindow.js.map +0 -1
  206. package/dist/ui/icon.d.ts +0 -46
  207. package/dist/ui/icon.d.ts.map +0 -1
  208. package/dist/ui/icon.js +0 -189
  209. package/dist/ui/icon.js.map +0 -1
  210. package/dist/ui/icon.style.d.ts +0 -2
  211. package/dist/ui/icon.style.d.ts.map +0 -1
  212. package/dist/ui/icon.style.js +0 -556
  213. package/dist/ui/icon.style.js.map +0 -1
  214. package/dist/ui/images.d.ts +0 -2
  215. package/dist/ui/images.d.ts.map +0 -1
  216. package/dist/ui/images.js +0 -14
  217. package/dist/ui/images.js.map +0 -1
  218. package/dist/ui/index.d.ts +0 -32
  219. package/dist/ui/index.d.ts.map +0 -1
  220. package/dist/ui/index.js +0 -32
  221. package/dist/ui/index.js.map +0 -1
  222. package/dist/ui/input.d.ts +0 -12
  223. package/dist/ui/input.d.ts.map +0 -1
  224. package/dist/ui/input.js +0 -45
  225. package/dist/ui/input.js.map +0 -1
  226. package/dist/ui/input.style.d.ts +0 -2
  227. package/dist/ui/input.style.d.ts.map +0 -1
  228. package/dist/ui/input.style.js +0 -36
  229. package/dist/ui/input.style.js.map +0 -1
  230. package/dist/ui/label.d.ts +0 -16
  231. package/dist/ui/label.d.ts.map +0 -1
  232. package/dist/ui/label.js +0 -90
  233. package/dist/ui/label.js.map +0 -1
  234. package/dist/ui/list.d.ts +0 -87
  235. package/dist/ui/list.d.ts.map +0 -1
  236. package/dist/ui/list.js +0 -427
  237. package/dist/ui/list.js.map +0 -1
  238. package/dist/ui/list.style.d.ts +0 -2
  239. package/dist/ui/list.style.d.ts.map +0 -1
  240. package/dist/ui/list.style.js +0 -35
  241. package/dist/ui/list.style.js.map +0 -1
  242. package/dist/ui/loader.d.ts +0 -6
  243. package/dist/ui/loader.d.ts.map +0 -1
  244. package/dist/ui/loader.js +0 -25
  245. package/dist/ui/loader.js.map +0 -1
  246. package/dist/ui/menu.d.ts +0 -41
  247. package/dist/ui/menu.d.ts.map +0 -1
  248. package/dist/ui/menu.js +0 -154
  249. package/dist/ui/menu.js.map +0 -1
  250. package/dist/ui/menu.style.d.ts +0 -3
  251. package/dist/ui/menu.style.d.ts.map +0 -1
  252. package/dist/ui/menu.style.js +0 -50
  253. package/dist/ui/menu.style.js.map +0 -1
  254. package/dist/ui/numericInput.d.ts +0 -37
  255. package/dist/ui/numericInput.d.ts.map +0 -1
  256. package/dist/ui/numericInput.js +0 -175
  257. package/dist/ui/numericInput.js.map +0 -1
  258. package/dist/ui/numericInput.style.d.ts +0 -2
  259. package/dist/ui/numericInput.style.d.ts.map +0 -1
  260. package/dist/ui/numericInput.style.js +0 -29
  261. package/dist/ui/numericInput.style.js.map +0 -1
  262. package/dist/ui/overlay.d.ts +0 -17
  263. package/dist/ui/overlay.d.ts.map +0 -1
  264. package/dist/ui/overlay.js +0 -87
  265. package/dist/ui/overlay.js.map +0 -1
  266. package/dist/ui/overlay.style.d.ts +0 -2
  267. package/dist/ui/overlay.style.d.ts.map +0 -1
  268. package/dist/ui/overlay.style.js +0 -46
  269. package/dist/ui/overlay.style.js.map +0 -1
  270. package/dist/ui/panel.d.ts +0 -25
  271. package/dist/ui/panel.d.ts.map +0 -1
  272. package/dist/ui/panel.js +0 -151
  273. package/dist/ui/panel.js.map +0 -1
  274. package/dist/ui/panel.style.d.ts +0 -2
  275. package/dist/ui/panel.style.d.ts.map +0 -1
  276. package/dist/ui/panel.style.js +0 -73
  277. package/dist/ui/panel.style.js.map +0 -1
  278. package/dist/ui/sizer.d.ts +0 -53
  279. package/dist/ui/sizer.d.ts.map +0 -1
  280. package/dist/ui/sizer.js +0 -203
  281. package/dist/ui/sizer.js.map +0 -1
  282. package/dist/ui/slider.d.ts +0 -52
  283. package/dist/ui/slider.d.ts.map +0 -1
  284. package/dist/ui/slider.js +0 -213
  285. package/dist/ui/slider.js.map +0 -1
  286. package/dist/ui/slider.style.d.ts +0 -2
  287. package/dist/ui/slider.style.d.ts.map +0 -1
  288. package/dist/ui/slider.style.js +0 -61
  289. package/dist/ui/slider.style.js.map +0 -1
  290. package/dist/ui/sortableList.d.ts +0 -39
  291. package/dist/ui/sortableList.d.ts.map +0 -1
  292. package/dist/ui/sortableList.js +0 -167
  293. package/dist/ui/sortableList.js.map +0 -1
  294. package/dist/ui/splitContainer.d.ts +0 -52
  295. package/dist/ui/splitContainer.d.ts.map +0 -1
  296. package/dist/ui/splitContainer.js +0 -252
  297. package/dist/ui/splitContainer.js.map +0 -1
  298. package/dist/ui/splitContainer.style.d.ts +0 -2
  299. package/dist/ui/splitContainer.style.d.ts.map +0 -1
  300. package/dist/ui/splitContainer.style.js +0 -62
  301. package/dist/ui/splitContainer.style.js.map +0 -1
  302. package/dist/ui/switch.d.ts +0 -22
  303. package/dist/ui/switch.d.ts.map +0 -1
  304. package/dist/ui/switch.js +0 -83
  305. package/dist/ui/switch.js.map +0 -1
  306. package/dist/ui/switch.style.d.ts +0 -2
  307. package/dist/ui/switch.style.d.ts.map +0 -1
  308. package/dist/ui/switch.style.js +0 -149
  309. package/dist/ui/switch.style.js.map +0 -1
  310. package/dist/ui/tooltip.d.ts +0 -24
  311. package/dist/ui/tooltip.d.ts.map +0 -1
  312. package/dist/ui/tooltip.js +0 -143
  313. package/dist/ui/tooltip.js.map +0 -1
  314. package/dist/ui/tooltip.style.d.ts +0 -2
  315. package/dist/ui/tooltip.style.d.ts.map +0 -1
  316. package/dist/ui/tooltip.style.js +0 -112
  317. package/dist/ui/tooltip.style.js.map +0 -1
@@ -1,46 +0,0 @@
1
- import { css } from 'lit';
2
- export const style = css `
3
- :host {
4
- display: none;
5
- position: absolute;
6
- z-index: 150;
7
- }
8
-
9
- #inner {
10
- display: flex;
11
- flex-direction: column;
12
- justify-content: center;
13
- position: relative;
14
- width: 100%;
15
- height: 100%;
16
- background-color: var(--og-background-color);
17
- opacity: 0.8;
18
- }
19
-
20
- :host([striped]) {
21
- background-image: repeating-linear-gradient(45deg, var(--og-accent-color) 0, var(--og-accent-color) 2px, transparent 0, transparent 50%);
22
- background-size: 10px 10px;
23
- background-color: transparent;
24
- opacity: 1;
25
- }
26
-
27
- #text {
28
- font-size: 3em;
29
- text-align: center;
30
- }
31
-
32
- #text span {
33
- background-color: var(--og-background-color);
34
- padding: 20px;
35
- opacity: 0.8;
36
- }
37
-
38
- #loader {
39
- text-align: center;
40
- }
41
-
42
- #loader img {
43
- width: 50px;
44
- }
45
- `;
46
- //# sourceMappingURL=overlay.style.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"overlay.style.js","sourceRoot":"","sources":["../../src/ui/overlay.style.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,KAAK,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2CvB,CAAC","sourcesContent":["import { css } from 'lit';\nexport const style = css`\n\t:host {\n\t\tdisplay: none;\n\t\tposition: absolute;\n\t\tz-index: 150;\n\t}\n\n\t#inner {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: center;\n\t\tposition: relative;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tbackground-color: var(--og-background-color);\n\t\topacity: 0.8;\n\t}\n\n\t:host([striped]) {\n\t\tbackground-image: repeating-linear-gradient(45deg, var(--og-accent-color) 0, var(--og-accent-color) 2px, transparent 0, transparent 50%);\n\t\tbackground-size: 10px 10px;\n\t\tbackground-color: transparent;\n\t\topacity: 1;\n\t}\n\n\t#text {\n\t\tfont-size: 3em;\n\t\ttext-align: center;\n\t}\n\n\t#text span {\n\t\tbackground-color: var(--og-background-color);\n\t\tpadding: 20px;\n\t\topacity: 0.8;\n\t}\n\n\t#loader {\n\t\ttext-align: center;\n\t}\n\n\t#loader img {\n\t\twidth: 50px;\n\t}\n`;"]}
@@ -1,25 +0,0 @@
1
- import { LitElement } from 'lit';
2
- import { HorizontalPosition } from '../types';
3
- import { IconSpec } from './icon';
4
- export declare class Panel extends LitElement {
5
- static styles: import("lit").CSSResult[];
6
- text: string;
7
- icon: string | IconSpec;
8
- scrollable: boolean;
9
- closable: boolean;
10
- collapsible: boolean;
11
- collapsed: boolean;
12
- arrowPosition: HorizontalPosition;
13
- bodySlot: HTMLSlotElement;
14
- body: HTMLDivElement;
15
- header: HTMLDivElement;
16
- private contentHeight;
17
- private collapsing;
18
- private interval;
19
- _onHeaderClick: () => void;
20
- animateCollapse(): void;
21
- firstUpdated(): void;
22
- render: () => import("lit-html").TemplateResult<1>;
23
- layout(): void;
24
- }
25
- //# sourceMappingURL=panel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../src/ui/panel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAQ,MAAM,KAAK,CAAC;AAGvC,OAAO,EAAE,kBAAkB,EAAU,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAKlC,qBACa,KAAM,SAAQ,UAAU;IAEpC,MAAM,CAAC,MAAM,4BAAW;IAGxB,IAAI,EAAE,MAAM,CAAC;IAGb,IAAI,EAAE,MAAM,GAAC,QAAQ,CAAC;IAGtB,UAAU,UAAS;IAGnB,QAAQ,UAAS;IAGjB,WAAW,UAAS;IAGpB,SAAS,UAAS;IAGlB,aAAa,EAAE,kBAAkB,CAAW;IAG5C,QAAQ,EAAE,eAAe,CAAC;IAG1B,IAAI,EAAE,cAAc,CAAC;IAGrB,MAAM,EAAE,cAAc,CAAC;IAGvB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAS;IAEzB,cAAc,aAOb;IAED,eAAe;IAkCf,YAAY;IAKZ,MAAM,6CA0BJ;IAEF,MAAM;CAkBN"}
package/dist/ui/panel.js DELETED
@@ -1,151 +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 { dom } from '../common';
8
- import { LitElement, html } from 'lit';
9
- import { customElement, property, query } from 'lit/decorators.js';
10
- import { style } from './panel.style';
11
- const ANIMATION_INTERVAL = 10;
12
- const ANIMATION_LENGTH = 100;
13
- let Panel = class Panel extends LitElement {
14
- constructor() {
15
- super(...arguments);
16
- this.scrollable = false;
17
- this.closable = false;
18
- this.collapsible = false;
19
- this.collapsed = false;
20
- this.arrowPosition = 'right';
21
- this.collapsing = false;
22
- this._onHeaderClick = () => {
23
- if (this.collapsing)
24
- return;
25
- if (!this.collapsible)
26
- return;
27
- if (!this.collapsed)
28
- this.contentHeight = this.body.offsetHeight;
29
- this.collapsed = !this.collapsed;
30
- this.collapsing = true;
31
- this.animateCollapse();
32
- };
33
- this.render = () => html `
34
- <div id="header" @click="${this._onHeaderClick}">
35
- ${this.collapsible && this.arrowPosition == 'left' ? html `
36
- <og-icon id="chevron-left" .icon="chevron-${this.collapsed ? 'right' : 'down'}" fixedWidth></og-icon>
37
- ` : ``}
38
-
39
- ${this.icon ? html `<og-icon id="icon" .icon="${this.icon}" fixedWidth></og-icon>` : ``}
40
-
41
- <div id="title">
42
- <slot name="header"></slot>
43
- </div>
44
-
45
- ${this.collapsible && this.arrowPosition == 'right' ? html `
46
- <og-icon id="chevron-right" .icon="chevron-${this.collapsed ? 'right' : 'down'}" fixedWidth></og-icon>
47
- ` : ``}
48
- </div>
49
-
50
- <div id="body">
51
- ${this.scrollable ? html `
52
- <og-container>
53
- <slot name="body" slot="content"></slot>
54
- </og-container>
55
- ` : html `
56
- <slot name="body"></slot>
57
- `}
58
- </div>
59
- `;
60
- }
61
- animateCollapse() {
62
- const step = this.contentHeight / (ANIMATION_LENGTH / ANIMATION_INTERVAL);
63
- let height = this.collapsed ? this.contentHeight : 0;
64
- const resizeEvent = new Event('resize', { bubbles: true, composed: true });
65
- if (!this.collapsed) {
66
- dom.setMaxSize(this.body, { h: 0 });
67
- dom.showElement(this.body);
68
- }
69
- this.dispatchEvent(new Event('resizestart', { bubbles: true, composed: true }));
70
- this.interval = window.setInterval(this.collapsed ? () => {
71
- height = Math.max(0, height - step);
72
- dom.setMaxSize(this.body, { h: height });
73
- if (height == 0) {
74
- dom.hideElement(this.body);
75
- dom.setMaxSize(this.body, { h: 'none' });
76
- window.clearInterval(this.interval);
77
- this.collapsing = false;
78
- this.dispatchEvent(new Event('resizestop', { bubbles: true, composed: true }));
79
- }
80
- this.dispatchEvent(resizeEvent);
81
- } : () => {
82
- height = Math.min(height + step, this.contentHeight);
83
- dom.setMaxSize(this.body, { h: height });
84
- if (height >= this.contentHeight) {
85
- dom.setMaxSize(this.body, { h: 'none' });
86
- window.clearInterval(this.interval);
87
- this.collapsing = false;
88
- this.dispatchEvent(new Event('resizestop', { bubbles: true, composed: true }));
89
- }
90
- this.dispatchEvent(resizeEvent);
91
- }, ANIMATION_INTERVAL);
92
- }
93
- firstUpdated() {
94
- this.contentHeight = this.body.offsetHeight;
95
- if (this.collapsed)
96
- dom.hideElement(this.body);
97
- }
98
- layout() {
99
- const element = this.body?.firstElementChild;
100
- if (element instanceof HTMLSlotElement) {
101
- element.assignedElements().forEach((elm) => {
102
- if (elm instanceof HTMLElement && elm.layout) {
103
- elm.layout();
104
- }
105
- else if (elm instanceof HTMLElement && elm.firstElementChild
106
- && elm.firstElementChild.layout) {
107
- elm.firstElementChild.layout();
108
- }
109
- });
110
- }
111
- else if (element instanceof HTMLElement && element.layout) {
112
- element.layout();
113
- }
114
- }
115
- };
116
- Panel.styles = [style];
117
- __decorate([
118
- property({ type: String })
119
- ], Panel.prototype, "text", void 0);
120
- __decorate([
121
- property({ type: String })
122
- ], Panel.prototype, "icon", void 0);
123
- __decorate([
124
- property({ type: Boolean })
125
- ], Panel.prototype, "scrollable", void 0);
126
- __decorate([
127
- property({ type: Boolean })
128
- ], Panel.prototype, "closable", void 0);
129
- __decorate([
130
- property({ type: Boolean, reflect: true })
131
- ], Panel.prototype, "collapsible", void 0);
132
- __decorate([
133
- property({ type: Boolean, reflect: true })
134
- ], Panel.prototype, "collapsed", void 0);
135
- __decorate([
136
- property({ type: String })
137
- ], Panel.prototype, "arrowPosition", void 0);
138
- __decorate([
139
- query('slot[name="body"]')
140
- ], Panel.prototype, "bodySlot", void 0);
141
- __decorate([
142
- query('#body')
143
- ], Panel.prototype, "body", void 0);
144
- __decorate([
145
- query('#header')
146
- ], Panel.prototype, "header", void 0);
147
- Panel = __decorate([
148
- customElement(`og-panel`)
149
- ], Panel);
150
- export { Panel };
151
- //# sourceMappingURL=panel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"panel.js","sourceRoot":"","sources":["../../src/ui/panel.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAItC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAC9B,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAGtB,IAAM,KAAK,GAAX,MAAM,KAAM,SAAQ,UAAU;IAA9B;;QAWN,eAAU,GAAG,KAAK,CAAC;QAGnB,aAAQ,GAAG,KAAK,CAAC;QAGjB,gBAAW,GAAG,KAAK,CAAC;QAGpB,cAAS,GAAG,KAAK,CAAC;QAGlB,kBAAa,GAAuB,OAAO,CAAC;QAapC,eAAU,GAAG,KAAK,CAAC;QAG3B,mBAAc,GAAG,GAAG,EAAE;YACrB,IAAI,IAAI,CAAC,UAAU;gBAAE,OAAO;YAC5B,IAAI,CAAC,IAAI,CAAC,WAAW;gBAAE,OAAO;YAC9B,IAAI,CAAC,IAAI,CAAC,SAAS;gBAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;YACjE,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;YACjC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,eAAe,EAAE,CAAC;QACxB,CAAC,CAAA;QAyCD,WAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAA;6BACS,IAAI,CAAC,cAAc;KAC3C,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA;gDACZ,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;IAC7E,CAAA,CAAC,CAAC,EAAE;;KAEH,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA,6BAA6B,IAAI,CAAC,IAAI,yBAAyB,CAAC,CAAC,CAAC,EAAE;;;;;;KAMpF,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;iDACZ,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;IAC9E,CAAA,CAAC,CAAC,EAAE;;;;KAIH,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAA;;;;IAIvB,CAAA,CAAC,CAAC,IAAI,CAAA;;IAEN;;EAEF,CAAC;IAoBH,CAAC;IArFA,eAAe;QACd,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,GAAG,CAAC,gBAAgB,GAAG,kBAAkB,CAAC,CAAC;QAC1E,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAErD,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;QACzE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,EAAC,CAAC,EAAE,CAAC,EAAC,CAAC,CAAC;YAClC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,aAAa,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;QAC9E,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE;YACxD,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;YACpC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,EAAC,CAAC,EAAE,MAAM,EAAC,CAAC,CAAC;YACvC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;gBACjB,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC3B,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,EAAC,CAAC,EAAE,MAAM,EAAC,CAAC,CAAC;gBACvC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACpC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,YAAY,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;YAC9E,CAAC;YACD,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE;YACR,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACrD,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,EAAC,CAAC,EAAE,MAAM,EAAC,CAAC,CAAC;YACvC,IAAI,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBAClC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,EAAC,CAAC,EAAE,MAAM,EAAC,CAAC,CAAC;gBACvC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACpC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,YAAY,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;YAC9E,CAAC;YACD,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC,EAAE,kBAAkB,CAAC,CAAC;IACxB,CAAC;IAED,YAAY;QACX,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;QAC5C,IAAI,IAAI,CAAC,SAAS;YAAE,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IA8BD,MAAM;QACL,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,iBAAyC,CAAC;QACrE,IAAI,OAAO,YAAY,eAAe,EAAE,CAAC;YACxC,OAAO,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,CAAC,GAAyB,EAAE,EAAE;gBAChE,IAAI,GAAG,YAAY,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;oBAC7C,GAAc,CAAC,MAAM,EAAE,CAAC;gBAC1B,CAAC;qBAAM,IACN,GAAG,YAAY,WAAW,IAAI,GAAG,CAAC,iBAAiB;uBAC/C,GAAG,CAAC,iBAA0C,CAAC,MAAM,EACxD,CAAC;oBACD,GAAG,CAAC,iBAA0C,CAAC,MAAM,EAAE,CAAC;gBAC1D,CAAC;YACF,CAAC,CAAC,CAAC;QACJ,CAAC;aAAM,IAAI,OAAO,YAAY,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YAC7D,OAAO,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC;IACF,CAAC;;AAjIM,YAAM,GAAG,CAAC,KAAK,CAAC,AAAV,CAAW;AAGxB;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;mCACZ;AAGb;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;mCACH;AAGtB;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;yCACP;AAGnB;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;uCACT;AAGjB;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;0CACrB;AAGpB;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;wCACvB;AAGlB;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;4CACmB;AAG5C;IADC,KAAK,CAAC,mBAAmB,CAAC;uCACD;AAG1B;IADC,KAAK,CAAC,OAAO,CAAC;mCACM;AAGrB;IADC,KAAK,CAAC,SAAS,CAAC;qCACM;AAhCX,KAAK;IADjB,aAAa,CAAC,UAAU,CAAC;GACb,KAAK,CAqIjB","sourcesContent":["import { dom } from '../common';\nimport { LitElement, html } from 'lit';\nimport { customElement, property, query } from 'lit/decorators.js';\nimport { style } from './panel.style';\nimport { HorizontalPosition, Layout } from '../types';\nimport { IconSpec } from './icon';\n\nconst ANIMATION_INTERVAL = 10;\nconst ANIMATION_LENGTH = 100;\n\n@customElement(`og-panel`)\nexport class Panel extends LitElement {\n\n\tstatic styles = [style];\n\n\t@property({type: String})\n\ttext: string;\n\n\t@property({type: String})\n\ticon: string|IconSpec;\n\n\t@property({type: Boolean})\n\tscrollable = false;\n\n\t@property({type: Boolean})\n\tclosable = false;\n\n\t@property({type: Boolean, reflect: true})\n\tcollapsible = false;\n\n\t@property({type: Boolean, reflect: true})\n\tcollapsed = false;\n\n\t@property({type: String})\n\tarrowPosition: HorizontalPosition = 'right';\n\n\t@query('slot[name=\"body\"]')\n\tbodySlot: HTMLSlotElement;\n\n\t@query('#body')\n\tbody: HTMLDivElement;\n\n\t@query('#header')\n\theader: HTMLDivElement;\n\t\n\n\tprivate contentHeight: number;\n\tprivate collapsing = false;\n\tprivate interval: number;\n\t\n\t_onHeaderClick = () => {\n\t\tif (this.collapsing) return;\n\t\tif (!this.collapsible) return;\n\t\tif (!this.collapsed) this.contentHeight = this.body.offsetHeight;\n\t\tthis.collapsed = !this.collapsed;\n\t\tthis.collapsing = true;\n\t\tthis.animateCollapse();\n\t}\n\n\tanimateCollapse() {\n\t\tconst step = this.contentHeight / (ANIMATION_LENGTH / ANIMATION_INTERVAL);\n\t\tlet height = this.collapsed ? this.contentHeight : 0;\n\t\t\n\t\tconst resizeEvent = new Event('resize', {bubbles: true, composed: true});\n\t\tif (!this.collapsed) {\n\t\t\tdom.setMaxSize(this.body, {h: 0});\n\t\t\tdom.showElement(this.body);\n\t\t}\n\t\tthis.dispatchEvent(new Event('resizestart', {bubbles: true, composed: true}));\n\t\tthis.interval = window.setInterval(this.collapsed ? () => {\n\t\t\theight = Math.max(0, height - step);\n\t\t\tdom.setMaxSize(this.body, {h: height});\n\t\t\tif (height == 0) {\n\t\t\t\tdom.hideElement(this.body);\n\t\t\t\tdom.setMaxSize(this.body, {h: 'none'});\n\t\t\t\twindow.clearInterval(this.interval);\n\t\t\t\tthis.collapsing = false;\n\t\t\t\tthis.dispatchEvent(new Event('resizestop', {bubbles: true, composed: true}));\n\t\t\t}\n\t\t\tthis.dispatchEvent(resizeEvent);\n\t\t} : () => {\n\t\t\theight = Math.min(height + step, this.contentHeight);\n\t\t\tdom.setMaxSize(this.body, {h: height});\n\t\t\tif (height >= this.contentHeight) {\n\t\t\t\tdom.setMaxSize(this.body, {h: 'none'});\n\t\t\t\twindow.clearInterval(this.interval);\n\t\t\t\tthis.collapsing = false;\n\t\t\t\tthis.dispatchEvent(new Event('resizestop', {bubbles: true, composed: true}));\n\t\t\t}\n\t\t\tthis.dispatchEvent(resizeEvent);\n\t\t}, ANIMATION_INTERVAL);\n\t}\n\n\tfirstUpdated() {\n\t\tthis.contentHeight = this.body.offsetHeight;\n\t\tif (this.collapsed) dom.hideElement(this.body);\n\t}\n\n\trender = () => html`\n\t\t<div id=\"header\" @click=\"${this._onHeaderClick}\">\n\t\t\t${this.collapsible && this.arrowPosition == 'left' ? html`\n\t\t\t\t<og-icon id=\"chevron-left\" .icon=\"chevron-${this.collapsed ? 'right' : 'down'}\" fixedWidth></og-icon>\n\t\t\t`: ``}\n\t\t\t\n\t\t\t${this.icon ? html`<og-icon id=\"icon\" .icon=\"${this.icon}\" fixedWidth></og-icon>` : ``}\n\t\t\t\n\t\t\t<div id=\"title\">\n\t\t\t\t<slot name=\"header\"></slot>\n\t\t\t</div>\n\n\t\t\t${this.collapsible && this.arrowPosition == 'right' ? html`\n\t\t\t\t<og-icon id=\"chevron-right\" .icon=\"chevron-${this.collapsed ? 'right' : 'down'}\" fixedWidth></og-icon>\n\t\t\t`: ``}\n\t\t</div>\n\n\t\t<div id=\"body\">\n\t\t\t${this.scrollable ? html`\n\t\t\t\t<og-container>\n\t\t\t\t\t<slot name=\"body\" slot=\"content\"></slot>\n\t\t\t\t</og-container>\n\t\t\t`: html`\n\t\t\t\t<slot name=\"body\"></slot>\n\t\t\t`}\n\t\t</div>\n\t`;\n\n\tlayout() {\n\t\tconst element = this.body?.firstElementChild as HTMLElement & Layout;\n\t\tif (element instanceof HTMLSlotElement) {\n\t\t\telement.assignedElements().forEach((elm: HTMLElement & Layout) => {\n\t\t\t\tif (elm instanceof HTMLElement && elm.layout) {\n\t\t\t\t\t(elm as Layout).layout();\n\t\t\t\t} else if (\n\t\t\t\t\telm instanceof HTMLElement && elm.firstElementChild \n\t\t\t\t\t&& (elm.firstElementChild as HTMLElement & Layout).layout\n\t\t\t\t) {\n\t\t\t\t\t(elm.firstElementChild as HTMLElement & Layout).layout();\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (element instanceof HTMLElement && element.layout) {\n\t\t\telement.layout();\n\t\t}\n\t}\n\t\n}"]}
@@ -1,2 +0,0 @@
1
- export declare const style: import("lit").CSSResult;
2
- //# sourceMappingURL=panel.style.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"panel.style.d.ts","sourceRoot":"","sources":["../../src/ui/panel.style.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,KAAK,yBAqEjB,CAAC"}
@@ -1,73 +0,0 @@
1
- import { css } from 'lit';
2
- // TODO - remove top/bottom padding from header
3
- export const style = css `
4
- * {
5
- box-sizing: border-box;
6
- }
7
-
8
- :host {
9
- font-size: var(--og-font-size);
10
- display: flex;
11
- flex-direction: column;
12
- border: 1px solid var(--og-border-color);
13
- }
14
-
15
- #header {
16
- flex: 0;
17
- color: var(--og-text-color);
18
- display: flex;
19
- flex-direction: row;
20
- border-bottom: 1px solid var(--og-border-color);
21
- align-items: center;
22
- }
23
-
24
- #title {
25
- flex: 1;
26
- margin-left: 5px;
27
- }
28
-
29
- #title > * {
30
- line-height: 25px;
31
- }
32
-
33
- og-icon {
34
- vertical-align: middle;
35
- height: 12px;
36
- }
37
-
38
- #icon, #chevron-left {
39
- margin-left: 5px;
40
- }
41
-
42
- #chevron-right {
43
- margin-right: 5px;
44
- }
45
-
46
- #header > og-icon {
47
- flex: 0;
48
- text-align: center;
49
- min-width: 12px;
50
- }
51
-
52
- :host([collapsible]) #header {
53
- cursor: pointer;
54
- }
55
-
56
- :host([collapsible]) #header:hover {
57
- background-color: var(--og-background-color-2);
58
- }
59
-
60
- #body {
61
- flex: 1;
62
- border-top-width: 0;
63
- overflow: hidden;
64
- max-height: 100%;
65
- }
66
-
67
- og-container {
68
- width: 100%;
69
- height: 100%;
70
- overflow: hidden;
71
- }
72
- `;
73
- //# sourceMappingURL=panel.style.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"panel.style.js","sourceRoot":"","sources":["../../src/ui/panel.style.ts"],"names":[],"mappings":"AAAA,OAAO,EAAG,GAAG,EAAE,MAAM,KAAK,CAAC;AAE3B,+CAA+C;AAE/C,MAAM,CAAC,MAAM,KAAK,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqEvB,CAAC","sourcesContent":["import { css } from 'lit';\n\n// TODO - remove top/bottom padding from header\n\nexport const style = css`\n\t* {\n\t\tbox-sizing: border-box;\n\t}\n\n\t:host {\n\t\tfont-size: var(--og-font-size);\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tborder: 1px solid var(--og-border-color);\n\t}\n\n\t#header {\n\t\tflex: 0;\n\t\tcolor: var(--og-text-color);\n\t\tdisplay: flex;\n\t\tflex-direction: row;\n\t\tborder-bottom: 1px solid var(--og-border-color);\n\t\talign-items: center;\n\t}\n\n\t#title {\n\t\tflex: 1;\n\t\tmargin-left: 5px;\n\t}\n\n\t#title > * {\n\t\tline-height: 25px;\n\t}\n\n\tog-icon {\n\t\tvertical-align: middle;\n\t\theight: 12px;\n\t}\n\t\n\t#icon, #chevron-left {\n\t\tmargin-left: 5px;\n\t}\n\n\t#chevron-right {\n\t\tmargin-right: 5px;\n\t}\n\n\t#header > og-icon {\n\t\tflex: 0;\n\t\ttext-align: center;\n\t\tmin-width: 12px;\n\t}\n\n\t:host([collapsible]) #header {\n\t\tcursor: pointer;\n\t}\n\n\t:host([collapsible]) #header:hover {\n\t\tbackground-color: var(--og-background-color-2);\n\t}\n\n\t#body {\n\t\tflex: 1;\n\t\tborder-top-width: 0;\n\t\toverflow: hidden;\n\t\tmax-height: 100%;\n\t}\n\n\tog-container {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\toverflow: hidden;\n\t}\n`;"]}
@@ -1,53 +0,0 @@
1
- import { LitElement } from 'lit';
2
- import { Orientation } from "../types";
3
- type ResizeEventArgs = {
4
- offsetX?: number;
5
- offsetY?: number;
6
- clientX?: number;
7
- clientY?: number;
8
- mouseX?: number;
9
- mouseY?: number;
10
- deltaX?: number;
11
- deltaY?: number;
12
- };
13
- export declare class ResizeEvent extends Event {
14
- readonly resizeArgs: ResizeEventArgs;
15
- readonly offsetX: number;
16
- readonly offsetY: number;
17
- readonly clientX: number;
18
- readonly clientY: number;
19
- readonly mouseX: number;
20
- readonly mouseY: number;
21
- readonly deltaX: number;
22
- readonly deltaY: number;
23
- constructor(type: string, resizeArgs: ResizeEventArgs);
24
- }
25
- export declare class Sizer extends LitElement {
26
- private snappedTo;
27
- private offsetElement;
28
- private lineElm;
29
- private _resizing;
30
- private startX;
31
- private startY;
32
- private offset;
33
- private startWidth;
34
- private startHeight;
35
- private startResize;
36
- private mouseDownTime;
37
- static styles: import("lit").CSSResult;
38
- orientation: Orientation;
39
- noGuideLine: boolean;
40
- get resizing(): boolean;
41
- constructor();
42
- show: () => void;
43
- hide: () => void;
44
- _onMouseLeave: () => void;
45
- _onMouseDown: (e: MouseEvent) => void;
46
- private startResizing;
47
- _onMouseMove: (e: MouseEvent) => void;
48
- _onMouseUp: (e: MouseEvent) => void;
49
- render(): void;
50
- snap(elm: HTMLElement, offsetElement?: HTMLElement): void;
51
- }
52
- export {};
53
- //# sourceMappingURL=sizer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sizer.d.ts","sourceRoot":"","sources":["../../src/ui/sizer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAO,MAAM,KAAK,CAAC;AAEtC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,KAAK,eAAe,GAAG;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,qBAAa,WAAY,SAAQ,KAAK;aAWK,UAAU,EAAE,eAAe;IATrE,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,MAAM,EAAE,MAAM,CAAC;gBAEnB,IAAI,EAAE,MAAM,EAAkB,UAAU,EAAE,eAAe;CAYrE;AAED,qBACa,KAAM,SAAQ,UAAU;IAEpC,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAK;IAE1B,MAAM,CAAC,MAAM,0BA6CX;IAGF,WAAW,EAAE,WAAW,CAAC;IAGzB,WAAW,UAAS;IAEpB,IAAW,QAAQ,YAA4B;;IAU/C,IAAI,aAGH;IAED,IAAI,aAIH;IAED,aAAa,aAEZ;IAED,YAAY,GAAI,GAAG,UAAU,UAkB5B;IAED,OAAO,CAAC,aAAa;IA8BrB,YAAY,GAAI,GAAG,UAAU,UAe3B;IAEF,UAAU,GAAI,GAAG,UAAU,UAc1B;IAED,MAAM;IAON,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,aAAa,cAAqB;CAezD"}
package/dist/ui/sizer.js DELETED
@@ -1,203 +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 * as dom from "../common/dom";
8
- import constants from "../constants";
9
- import { LitElement, css } from 'lit';
10
- import { customElement, property } from 'lit/decorators.js';
11
- export class ResizeEvent extends Event {
12
- constructor(type, resizeArgs) {
13
- super(type);
14
- this.resizeArgs = resizeArgs;
15
- resizeArgs = resizeArgs || {};
16
- this.offsetX = resizeArgs.offsetX;
17
- this.offsetY = resizeArgs.offsetY;
18
- this.clientX = resizeArgs.clientX;
19
- this.clientY = resizeArgs.clientY;
20
- this.mouseX = resizeArgs.mouseX;
21
- this.mouseY = resizeArgs.mouseY;
22
- this.deltaX = resizeArgs.deltaX;
23
- this.deltaY = resizeArgs.deltaY;
24
- }
25
- }
26
- let Sizer = class Sizer extends LitElement {
27
- get resizing() { return this._resizing; }
28
- constructor() {
29
- super();
30
- this._resizing = false;
31
- this.startX = 0;
32
- this.startY = 0;
33
- this.startResize = false;
34
- this.mouseDownTime = 0;
35
- this.noGuideLine = false;
36
- this.show = () => {
37
- this.classList.add('visible');
38
- dom.showElement(this);
39
- };
40
- this.hide = () => {
41
- this.classList.remove('visible');
42
- dom.hideElement(this);
43
- dom.hideElement(this.lineElm);
44
- };
45
- this._onMouseLeave = () => {
46
- if (!this._resizing)
47
- this.hide();
48
- };
49
- this._onMouseDown = (e) => {
50
- e.stopPropagation();
51
- const lastTime = this.mouseDownTime;
52
- this.mouseDownTime = performance.now();
53
- if (this.mouseDownTime - lastTime < 500) {
54
- this.dispatchEvent(new Event('dblclick'));
55
- return;
56
- }
57
- this.startX = e.pageX;
58
- this.startY = e.pageY;
59
- this._resizing = true;
60
- this.startResize = true;
61
- this.offset = dom.getElementOffset(this.snappedTo, this.offsetElement);
62
- this.startWidth = this.snappedTo.clientWidth;
63
- this.startHeight = this.snappedTo.clientHeight;
64
- document.addEventListener('mousemove', this._onMouseMove);
65
- document.addEventListener('mouseup', this._onMouseUp, { once: true });
66
- };
67
- this._onMouseMove = (e) => {
68
- if (this.startResize)
69
- this.startResizing();
70
- dom.setPosition(this, this.orientation == 'horizontal' ? {
71
- l: this.offset.left + this.startWidth - constants.SIZER_SIZE / 2 + e.pageX - this.startX
72
- } : {
73
- t: this.offset.top + this.startHeight - constants.SIZER_SIZE / 2 + e.pageY - this.startY
74
- });
75
- this.dispatchEvent(new ResizeEvent('resize', {
76
- deltaX: e.pageX - this.startX,
77
- deltaY: e.pageY - this.startY,
78
- mouseX: e.pageX,
79
- mouseY: e.pageY,
80
- }));
81
- };
82
- this._onMouseUp = (e) => {
83
- document.removeEventListener('mousemove', this._onMouseMove);
84
- this._resizing = false;
85
- if (this.startResize) {
86
- this.startResize = false;
87
- return;
88
- }
89
- this.hide();
90
- this.dispatchEvent(new ResizeEvent('resizestop', {
91
- deltaX: e.pageX - this.startX,
92
- deltaY: e.pageY - this.startY,
93
- mouseX: e.pageX,
94
- mouseY: e.pageY,
95
- }));
96
- };
97
- this.addEventListener('mouseleave', this._onMouseLeave);
98
- this.addEventListener('mousedown', this._onMouseDown);
99
- }
100
- startResizing() {
101
- this.dispatchEvent(new ResizeEvent('resizestart', {
102
- deltaX: 0,
103
- deltaY: 0,
104
- mouseX: this.startX,
105
- mouseY: this.startY,
106
- }));
107
- if (!this.noGuideLine) {
108
- dom.showElement(this.lineElm);
109
- dom.setSize(this.lineElm, this.orientation == 'horizontal' ? {
110
- w: 1,
111
- h: this.offsetElement.clientHeight
112
- } : {
113
- w: this.offsetElement.clientWidth,
114
- h: 1
115
- });
116
- dom.setPosition(this.lineElm, this.orientation == 'horizontal' ? {
117
- t: 0,
118
- r: -1
119
- } : {
120
- b: -1,
121
- l: 0
122
- });
123
- }
124
- this.startResize = false;
125
- }
126
- render() {
127
- this.shadowRoot.innerHTML = '';
128
- this.lineElm = dom.createElement('div');
129
- this.lineElm.className = 'sizer-line';
130
- this.shadowRoot.appendChild(this.lineElm);
131
- }
132
- snap(elm, offsetElement = this.parentElement) {
133
- this.snappedTo = elm;
134
- this.offsetElement = offsetElement;
135
- this.show();
136
- const offset = dom.getElementOffset(elm, offsetElement);
137
- if (this.orientation == 'horizontal') {
138
- dom.setSize(this, { w: constants.SIZER_SIZE, h: elm.offsetHeight });
139
- dom.setPosition(this, { l: offset.left + elm.offsetWidth - constants.SIZER_SIZE / 2, t: offset.top });
140
- }
141
- else {
142
- dom.setSize(this, { w: elm.offsetWidth, h: constants.SIZER_SIZE });
143
- dom.setPosition(this, { l: offset.left, t: offset.top + elm.offsetHeight - constants.SIZER_SIZE / 2 });
144
- }
145
- }
146
- };
147
- Sizer.styles = css `
148
- :host {
149
- z-index: 105;
150
- position: relative;
151
- opacity: 0;
152
- background-color: var(--og-accent-color);
153
- }
154
-
155
- @keyframes show {
156
- from { opacity: 0; }
157
- to { opacity: 1; }
158
- }
159
-
160
- :host(.visible) {
161
- animation: show 1s;
162
- opacity: 1;
163
- }
164
-
165
- :host([orientation="vertical"]) {
166
- cursor: row-resize;
167
- }
168
-
169
- :host([orientation="vertical"]) .sizer-line {
170
- background: repeating-linear-gradient(
171
- 90deg,
172
- var(--og-accent-color),
173
- var(--og-accent-color) 10px,
174
- transparent 10px,
175
- transparent 20px
176
- );
177
- }
178
-
179
- :host([orientation="horizontal"]) {
180
- cursor: col-resize;
181
- }
182
-
183
- :host([orientation="horizontal"]) .sizer-line {
184
- background: repeating-linear-gradient(
185
- 0deg,
186
- var(--og-accent-color),
187
- var(--og-accent-color) 10px,
188
- transparent 10px,
189
- transparent 20px
190
- );
191
- }
192
- `;
193
- __decorate([
194
- property({ type: String, reflect: true })
195
- ], Sizer.prototype, "orientation", void 0);
196
- __decorate([
197
- property({ type: Boolean, reflect: true })
198
- ], Sizer.prototype, "noGuideLine", void 0);
199
- Sizer = __decorate([
200
- customElement('og-sizer')
201
- ], Sizer);
202
- export { Sizer };
203
- //# sourceMappingURL=sizer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sizer.js","sourceRoot":"","sources":["../../src/ui/sizer.ts"],"names":[],"mappings":"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","sourcesContent":["import * as dom from \"../common/dom\";\nimport constants from \"../constants\";\nimport { LitElement, css } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { Orientation } from \"../types\";\n\ntype ResizeEventArgs = {\n\toffsetX?: number,\n\toffsetY?: number,\n\tclientX?: number,\n\tclientY?: number,\n\tmouseX?: number,\n\tmouseY?: number,\n\tdeltaX?: number,\n\tdeltaY?: number,\n};\n\nexport class ResizeEvent extends Event {\n\t\n\tpublic readonly offsetX: number;\n\tpublic readonly offsetY: number;\n\tpublic readonly clientX: number;\n\tpublic readonly clientY: number;\n\tpublic readonly mouseX: number;\n\tpublic readonly mouseY: number;\n\tpublic readonly deltaX: number;\n\tpublic readonly deltaY: number;\n\t\n\tconstructor(type: string, public readonly resizeArgs: ResizeEventArgs) {\n\t\tsuper(type);\n\t\tresizeArgs = resizeArgs || {};\n\t\tthis.offsetX = resizeArgs.offsetX;\n\t\tthis.offsetY = resizeArgs.offsetY;\n\t\tthis.clientX = resizeArgs.clientX;\n\t\tthis.clientY = resizeArgs.clientY;\n\t\tthis.mouseX = resizeArgs.mouseX;\n\t\tthis.mouseY = resizeArgs.mouseY;\n\t\tthis.deltaX = resizeArgs.deltaX;\n\t\tthis.deltaY = resizeArgs.deltaY;\n\t}\n}\n\n@customElement('og-sizer')\nexport class Sizer extends LitElement {\n\n\tprivate snappedTo: HTMLElement;\n\tprivate offsetElement: HTMLElement;\n\tprivate lineElm: HTMLDivElement;\n\tprivate _resizing = false;\n\tprivate startX = 0;\n\tprivate startY = 0;\n\tprivate offset: {top: number, left: number};\n\tprivate startWidth: number;\n\tprivate startHeight: number;\n\tprivate startResize = false;\n\tprivate mouseDownTime = 0;\n\n\tstatic styles = css`\n\t\t:host {\n\t\t\tz-index: 105;\n\t\t\tposition: relative;\n\t\t\topacity: 0;\n\t\t\tbackground-color: var(--og-accent-color);\n\t\t}\n\n\t\t@keyframes show {\n\t\t\tfrom { opacity: 0; }\n\t\t\tto { opacity: 1; }\n\t\t}\n\n\t\t:host(.visible) {\n\t\t\tanimation: show 1s;\n\t\t\topacity: 1;\n\t\t}\n\n\t\t:host([orientation=\"vertical\"]) {\n\t\t\tcursor: row-resize;\n\t\t}\n\n\t\t:host([orientation=\"vertical\"]) .sizer-line {\n\t\t\tbackground: repeating-linear-gradient(\n\t\t\t\t90deg,\n\t\t\t\tvar(--og-accent-color),\n\t\t\t\tvar(--og-accent-color) 10px,\n\t\t\t\ttransparent 10px,\n\t\t\t\ttransparent 20px\n\t\t\t);\n\t\t}\n\n\t\t:host([orientation=\"horizontal\"]) {\n\t\t\tcursor: col-resize;\n\t\t}\n\n\t\t:host([orientation=\"horizontal\"]) .sizer-line {\n\t\t\tbackground: repeating-linear-gradient(\n\t\t\t\t0deg,\n\t\t\t\tvar(--og-accent-color),\n\t\t\t\tvar(--og-accent-color) 10px,\n\t\t\t\ttransparent 10px,\n\t\t\t\ttransparent 20px\n\t\t\t);\n\t\t}\n\t`;\n\n\t@property({type: String, reflect: true})\n\torientation: Orientation;\n\n\t@property({type: Boolean, reflect: true})\n\tnoGuideLine = false;\n\t\n\tpublic get resizing() { return this._resizing }\n\n\t\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis.addEventListener('mouseleave', this._onMouseLeave);\n\t\tthis.addEventListener('mousedown', this._onMouseDown);\n\t}\n\n\tshow = () => {\n\t\tthis.classList.add('visible');\n\t\tdom.showElement(this);\n\t}\n\n\thide = () => {\n\t\tthis.classList.remove('visible');\n\t\tdom.hideElement(this);\n\t\tdom.hideElement(this.lineElm);\n\t}\n\n\t_onMouseLeave = () => {\n\t\tif (!this._resizing) this.hide();\n\t} \n\n\t_onMouseDown = (e: MouseEvent) => {\n\t\te.stopPropagation();\n\t\tconst lastTime = this.mouseDownTime;\n\t\tthis.mouseDownTime = performance.now();\n\t\tif (this.mouseDownTime - lastTime < 500) {\n\t\t\tthis.dispatchEvent(new Event('dblclick'));\n\t\t\treturn;\n\t\t}\n\t\t\n\t\tthis.startX = e.pageX;\n\t\tthis.startY = e.pageY;\n\t\tthis._resizing = true;\n\t\tthis.startResize = true;\n\t\tthis.offset = dom.getElementOffset(this.snappedTo, this.offsetElement);\n\t\tthis.startWidth = this.snappedTo.clientWidth;\n\t\tthis.startHeight = this.snappedTo.clientHeight;\n\t\tdocument.addEventListener('mousemove', this._onMouseMove);\n\t\tdocument.addEventListener('mouseup', this._onMouseUp, {once: true});\n\t}\n\n\tprivate startResizing() {\n\t\tthis.dispatchEvent(new ResizeEvent('resizestart', {\n\t\t\tdeltaX: 0,\n\t\t\tdeltaY: 0,\n\t\t\tmouseX: this.startX,\n\t\t\tmouseY: this.startY,\n\t\t}));\n\n\t\tif (!this.noGuideLine) {\n\t\t\tdom.showElement(this.lineElm);\n\t\t\tdom.setSize(this.lineElm, this.orientation == 'horizontal' ? {\n\t\t\t\tw: 1, \n\t\t\t\th: this.offsetElement.clientHeight\n\t\t\t} : {\n\t\t\t\tw: this.offsetElement.clientWidth, \n\t\t\t\th: 1\n\t\t\t});\n\t\n\t\t\tdom.setPosition(this.lineElm, this.orientation == 'horizontal' ? {\n\t\t\t\tt: 0, \n\t\t\t\tr: -1\n\t\t\t} : {\n\t\t\t\tb: -1, \n\t\t\t\tl: 0\n\t\t\t});\n\t\t}\n\n\t\tthis.startResize = false;\n\t}\n\n\t_onMouseMove = (e: MouseEvent) => {\n\t\tif (this.startResize) this.startResizing();\n\n\t\tdom.setPosition(this, this.orientation == 'horizontal' ? {\n\t\t\tl: this.offset.left + this.startWidth - constants.SIZER_SIZE / 2 + e.pageX - this.startX\n\t\t} : {\n\t\t\tt: this.offset.top + this.startHeight - constants.SIZER_SIZE / 2 + e.pageY - this.startY\n\t\t});\n\n\t\tthis.dispatchEvent(new ResizeEvent('resize', {\n\t\t\tdeltaX: e.pageX - this.startX,\n\t\t\tdeltaY: e.pageY - this.startY,\n\t\t\tmouseX: e.pageX,\n\t\t\tmouseY: e.pageY,\n\t\t}));\n\t};\n\n\t_onMouseUp = (e: MouseEvent) => {\n\t\tdocument.removeEventListener('mousemove', this._onMouseMove);\n\t\tthis._resizing = false;\n\t\tif (this.startResize) {\n\t\t\tthis.startResize = false;\n\t\t\treturn;\n\t\t}\n\t\tthis.hide();\n\t\tthis.dispatchEvent(new ResizeEvent('resizestop', {\n\t\t\tdeltaX: e.pageX - this.startX,\n\t\t\tdeltaY: e.pageY - this.startY,\n\t\t\tmouseX: e.pageX,\n\t\t\tmouseY: e.pageY,\n\t\t}));\n\t}\n\n\trender() {\n\t\tthis.shadowRoot.innerHTML = '';\n\t\tthis.lineElm = dom.createElement('div');\n\t\tthis.lineElm.className = 'sizer-line';\n\t\tthis.shadowRoot.appendChild(this.lineElm);\n\t}\n\n\tsnap(elm: HTMLElement, offsetElement = this.parentElement) {\n\t\tthis.snappedTo = elm;\n\t\tthis.offsetElement = offsetElement;\n\t\tthis.show();\n\t\tconst offset = dom.getElementOffset(elm, offsetElement);\n\n\t\tif (this.orientation == 'horizontal') {\n\t\t\tdom.setSize(this, {w: constants.SIZER_SIZE, h: elm.offsetHeight});\n\t\t\tdom.setPosition(this, {l: offset.left + elm.offsetWidth - constants.SIZER_SIZE / 2, t: offset.top});\n\t\t} else {\n\t\t\tdom.setSize(this, {w: elm.offsetWidth, h: constants.SIZER_SIZE});\n\t\t\tdom.setPosition(this, {l: offset.left, t: offset.top + elm.offsetHeight - constants.SIZER_SIZE / 2});\n\t\t}\n\t}\n\n}"]}