@omegagrid/core 0.10.1 → 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
package/dist/types.js DELETED
@@ -1,12 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
- export var ColorTypes;
3
- (function (ColorTypes) {
4
- ColorTypes["Accent"] = "accent";
5
- ColorTypes["Red"] = "red";
6
- ColorTypes["Yellow"] = "yellow";
7
- ColorTypes["Green"] = "green";
8
- ColorTypes["Blue"] = "blue";
9
- ColorTypes["Gray"] = "gray";
10
- ColorTypes["Transparent"] = "transparent";
11
- })(ColorTypes || (ColorTypes = {}));
12
- //# sourceMappingURL=types.js.map
package/dist/types.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAwDvD,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IACrB,+BAAiB,CAAA;IACjB,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,6BAAe,CAAA;IACf,2BAAa,CAAA;IACb,2BAAa,CAAA;IACb,yCAA2B,CAAA;AAC5B,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB","sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n\nimport { TemplateResult } from \"lit-html\";\nimport { IconSpec } from \"./ui\";\n\nexport type ThemeDefinition = Record<string, string>;\nexport type ThemeVariables = Map<string, string>;\n\nexport type ThemeType = 'light'|'dark';\n\nexport type Theme = {\n\tname: string,\n\ttype: ThemeType,\n\tdefinition: ThemeDefinition,\n\taccentColor?: string,\n};\n\nexport type LocaleId = string;\n\nexport type LayoutOptions<TParent extends HTMLElement = HTMLElement> = {\n\tparent?: TParent,\n\telements?: Map<string, HTMLElement>,\n}\n\nexport interface Layout extends HTMLElement {\n\tlayout(options?: LayoutOptions) : void;\n}\n\nexport type ComponentState = {\n\tname?: string;\n\t[key: string]: unknown;\n}\n\nexport interface Statefull {\n\tget state(): ComponentState;\n\tset state(value: ComponentState);\n\tgetState(): ComponentState;\n\tsetState(state: ComponentState): void;\n}\n\n/**\n * General = 'g',\n * Text = 't',\n * Number = 'n',\n * Date = 'd',\n * DateTime = 'dt',\n * Time = 'tm',\n * Checkbox = 'b',\n * Select = 's',\n * MultiSelect = 'm',\n */\nexport type UIValueType = 'g'|'t'|'n'|'d'|'dt'|'tm'|'b'|'s'|'m';\n\nexport type UIValueFormat = string;\n\n\nexport enum ColorTypes {\n\tAccent = 'accent',\n\tRed = 'red',\n\tYellow = 'yellow',\n\tGreen = 'green',\n\tBlue = 'blue',\n\tGray = 'gray',\n\tTransparent = 'transparent',\n}\n\nexport type DecimalSeparator = '.'|',';\nexport type Orientation = 'vertical'|'horizontal';\nexport type VerticalDirection = 'up'|'down';\nexport type HorizontalDirection = 'left'|'right';\nexport type Direction = VerticalDirection | HorizontalDirection;\nexport type DiagonalDirection = 'ne'|'nw'|'se'|'sw';\nexport type VerticalPosition = 'top'|'bottom'|'center';\nexport type HorizontalPosition = 'left'|'right'|'center';\nexport type DirectionalPosition = VerticalPosition | HorizontalPosition;\nexport type Size = {w: number, h: number};\nexport type Location = {x: number, y: number};\nexport type Position = {r?: number, b?: number, l?: number, t?: number};\nexport type CssPosition = {r?: string|number, b?: string|number, l?: string|number, t?: string|number};\nexport type Rect = {x: number, y: number, w: number, h: number};\n\nexport type AcordionItem = SplitContainerItem & {\n\ttitle?: string|HTMLElement|TemplateResult<1>,\n\ticon?: string|IconSpec\n}\n\nexport type SplitContainerItem = {\n\tid?: ComponentId,\n\tsize?: number|null, // width or height\n\tcollapsed?: boolean\n}\n\nexport type ComponentId = string|number;\n\nexport type ComponentFactory<T = HTMLElement> = (id?: ComponentId) => T|Promise<T>;\n\nexport interface ComponentContainer<T = HTMLElement> {\n\tcreateComponent: ComponentFactory<T>;\n}\n\nexport type Matrix<T = unknown> = T[][];\n\nexport type Scalar<T = unknown> = T;\n\nexport type DeepPartial<T> = {\n\t[P in keyof T]?: T[P] extends object ? DeepPartial<T[P]> : T[P];\n};\n\nexport interface Populatable {\n\tpopulate(source: Record<PropertyKey, unknown>): void;\n\tgetSourceData(): Record<PropertyKey, unknown>;\n}\n\nexport interface IPrototype<T> { prototype: T }\n\nexport type ValueFormatter<T = unknown> = (value: T) => string;\n\nexport type CustomProperties = Record<string, unknown>;\n\nexport type User = {\n\tid: string,\n\tname?: string\n};\n\nexport type AnyFunction<A = any> = (...input: any[]) => A\nexport type AnyConstructor<A = object> = new (...input: any[]) => A\nexport type Mixin<T extends AnyFunction> = InstanceType<ReturnType<T>>\n\nexport interface Model<TSource = unknown> {\n\t\n\tpopulate(source: TSource): void;\n\tgetSourceData(): TSource;\n\n}\n\nexport type KeyValue = {\n\tkey: string,\n\tvalue?: string\n}\n"]}
@@ -1,16 +0,0 @@
1
- import { AcordionItem, ComponentId } from '../types';
2
- import { Panel } from './panel';
3
- import { SplitContainer } from './splitContainer';
4
- export declare class Accordion extends SplitContainer {
5
- #private;
6
- static styles: import("lit").CSSResult[];
7
- items: AcordionItem[];
8
- constructor();
9
- willUpdate(props: Map<string, unknown>): void;
10
- get totalCollapsedHeight(): number;
11
- fixSizes(): Promise<void>;
12
- layout(): Promise<void>;
13
- getComponent(index: number, id?: ComponentId): Panel;
14
- connectedCallback(): void;
15
- }
16
- //# sourceMappingURL=accordion.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"accordion.d.ts","sourceRoot":"","sources":["../../src/ui/accordion.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAErD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAKlD,qBACa,SAAU,SAAQ,cAAc;;IAE5C,MAAM,CAAC,MAAM,4BAsBV;IAGH,KAAK,EAAE,YAAY,EAAE,CAAM;;IAe3B,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IActC,IAAI,oBAAoB,WAMvB;IAEK,QAAQ;IAkER,MAAM;IAQZ,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,WAAW;IAwC5C,iBAAiB;CAKjB"}
@@ -1,209 +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
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
8
- if (kind === "m") throw new TypeError("Private method is not writable");
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
11
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
12
- };
13
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
14
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
15
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
16
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
17
- };
18
- var _Accordion_panels, _Accordion_collapsedIndices, _Accordion_heights;
19
- import { html, render, css } from 'lit';
20
- import { customElement, property } from 'lit/decorators.js';
21
- import { dom } from '../common';
22
- import { SplitContainer } from './splitContainer';
23
- import { until } from 'lit/directives/until.js';
24
- const MIN_PANEL_SIZE = 50;
25
- let Accordion = class Accordion extends SplitContainer {
26
- constructor() {
27
- super();
28
- this.items = [];
29
- _Accordion_panels.set(this, new Map());
30
- _Accordion_collapsedIndices.set(this, new Set());
31
- _Accordion_heights.set(this, []);
32
- this.defaultLayout = false;
33
- this.addEventListener('splitContainer.resize', () => {
34
- __classPrivateFieldSet(this, _Accordion_heights, [...this.containers].map(c => c.offsetHeight), "f");
35
- this.layout();
36
- });
37
- }
38
- willUpdate(props) {
39
- if (props.has('items')) {
40
- __classPrivateFieldGet(this, _Accordion_panels, "f").clear();
41
- __classPrivateFieldSet(this, _Accordion_heights, [], "f");
42
- this.items?.forEach((item, i) => {
43
- // override SplitContainer collapse logic
44
- if (item.collapsed)
45
- __classPrivateFieldGet(this, _Accordion_collapsedIndices, "f").add(i);
46
- item.collapsed = false;
47
- __classPrivateFieldGet(this, _Accordion_heights, "f").push(item.size);
48
- });
49
- }
50
- super.willUpdate(props);
51
- }
52
- get totalCollapsedHeight() {
53
- return [...__classPrivateFieldGet(this, _Accordion_collapsedIndices, "f")].reduce((acc, i) => {
54
- const panel = __classPrivateFieldGet(this, _Accordion_panels, "f").get(i);
55
- if (!panel)
56
- return acc;
57
- return acc + (panel.collapsed ? panel.header.offsetHeight ?? 0 : 0);
58
- }, 0);
59
- }
60
- async fixSizes() {
61
- await Promise.all([...__classPrivateFieldGet(this, _Accordion_panels, "f").values()].map(panel => panel.updateComplete));
62
- const containerHeight = this.clientHeight;
63
- const collapsedCount = __classPrivateFieldGet(this, _Accordion_collapsedIndices, "f").size;
64
- const visibleCount = this.items.length - collapsedCount;
65
- let totalCollapsedHeight = 0;
66
- let totalVisibleHeight = 0;
67
- let unsetHeightCount = 0;
68
- let heights = new Array(this.items.length).fill(null);
69
- let lastIndex;
70
- for (let i = 0; i < this.items.length; i++) {
71
- const collapsed = __classPrivateFieldGet(this, _Accordion_collapsedIndices, "f").has(i);
72
- if (collapsed) {
73
- const panel = __classPrivateFieldGet(this, _Accordion_panels, "f").get(i);
74
- if (!panel)
75
- continue;
76
- heights[i] = panel.header?.offsetHeight || 0;
77
- totalCollapsedHeight += heights[i];
78
- }
79
- else {
80
- heights[i] = __classPrivateFieldGet(this, _Accordion_heights, "f")[i];
81
- if (!heights[i])
82
- unsetHeightCount++;
83
- totalVisibleHeight += heights[i] || 0;
84
- lastIndex = i;
85
- }
86
- }
87
- let remainingHeight = containerHeight - totalCollapsedHeight - totalVisibleHeight;
88
- let reset = false;
89
- let addHeight = 0;
90
- let remainingCount = visibleCount;
91
- if (remainingHeight > 0) {
92
- for (let i = 0; i < this.items.length; i++) {
93
- if (__classPrivateFieldGet(this, _Accordion_collapsedIndices, "f").has(i))
94
- continue;
95
- if (!heights[i]) {
96
- addHeight = remainingHeight / unsetHeightCount;
97
- heights[i] = addHeight;
98
- unsetHeightCount--;
99
- remainingHeight -= addHeight;
100
- totalVisibleHeight += addHeight;
101
- }
102
- else {
103
- addHeight = remainingHeight / remainingCount;
104
- heights[i] += addHeight;
105
- remainingHeight -= addHeight;
106
- }
107
- remainingCount--;
108
- }
109
- }
110
- for (let i = 0; i < this.items.length; i++) {
111
- if (__classPrivateFieldGet(this, _Accordion_collapsedIndices, "f").has(i))
112
- continue;
113
- if (heights[i] < MIN_PANEL_SIZE) {
114
- reset = true;
115
- break;
116
- }
117
- }
118
- if (reset) {
119
- heights = heights.map((h, i) => __classPrivateFieldGet(this, _Accordion_collapsedIndices, "f").has(i) ? h : (totalVisibleHeight / visibleCount));
120
- }
121
- else if (remainingHeight > 0) {
122
- heights[lastIndex] += remainingHeight;
123
- }
124
- heights.forEach((h, i) => this.setContainerSize(i, h));
125
- }
126
- async layout() {
127
- await this.fixSizes();
128
- this.containers.forEach((_, i) => {
129
- const component = this.getContainerComponent(i);
130
- if (component?.layout)
131
- component.layout();
132
- });
133
- }
134
- getComponent(index, id) {
135
- let panel = __classPrivateFieldGet(this, _Accordion_panels, "f").get(index);
136
- if (panel)
137
- return panel;
138
- panel = dom.createElement('og-panel');
139
- const item = this.items[index];
140
- panel.collapsible = true;
141
- panel.collapsed = __classPrivateFieldGet(this, _Accordion_collapsedIndices, "f").has(index) ?? false;
142
- panel.icon = item.icon;
143
- panel.arrowPosition = 'left';
144
- __classPrivateFieldGet(this, _Accordion_panels, "f").set(index, panel);
145
- panel.addEventListener('resizestart', () => {
146
- if (panel.collapsed) {
147
- if (!__classPrivateFieldGet(this, _Accordion_heights, "f")[index])
148
- __classPrivateFieldGet(this, _Accordion_heights, "f")[index] = this.getContainer(index).offsetHeight;
149
- __classPrivateFieldGet(this, _Accordion_collapsedIndices, "f").add(index);
150
- }
151
- else {
152
- __classPrivateFieldGet(this, _Accordion_collapsedIndices, "f").delete(index);
153
- }
154
- });
155
- // panel.addEventListener('resize', () => {
156
- // console.log(panel.body.offsetHeight + panel.header.offsetHeight);
157
- // let h = panel.body.offsetHeight + panel.header.offsetHeight;
158
- // this.setContainerSize(index, h);
159
- // });
160
- panel.addEventListener('resizestop', () => {
161
- this.layout();
162
- });
163
- render(html `
164
- <div slot="header">${item.title ?? ''}</div>
165
- <div slot="body" style="height: 100%; overflow: hidden; position: relative">
166
- ${until(this.createComponent(id ?? index))}
167
- </div>
168
- `, panel);
169
- return panel;
170
- }
171
- connectedCallback() {
172
- super.connectedCallback();
173
- this.orientation = 'vertical';
174
- }
175
- };
176
- _Accordion_panels = new WeakMap();
177
- _Accordion_collapsedIndices = new WeakMap();
178
- _Accordion_heights = new WeakMap();
179
- Accordion.styles = [...SplitContainer.styles, css `
180
- :host {
181
- border: 1px solid var(--og-border-color);
182
- }
183
-
184
- .item {
185
- border-top: none !important;
186
- }
187
-
188
- .item.first og-panel {
189
- border-top: none;
190
- }
191
-
192
- .item og-panel {
193
- border-bottom-width: 0;
194
- border-left-width: 0;
195
- border-right-width: 0;
196
- }
197
-
198
- .item.last og-panel {
199
- border-bottom-width: 1px;
200
- }
201
- `];
202
- __decorate([
203
- property({ type: Array })
204
- ], Accordion.prototype, "items", void 0);
205
- Accordion = __decorate([
206
- customElement(`og-accordion`)
207
- ], Accordion);
208
- export { Accordion };
209
- //# sourceMappingURL=accordion.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"accordion.js","sourceRoot":"","sources":["../../src/ui/accordion.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAEhD,MAAM,cAAc,GAAG,EAAE,CAAC;AAGnB,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,cAAc;IAiC5C;QACC,KAAK,EAAE,CAAC;QAPT,UAAK,GAAmB,EAAE,CAAC;QAE3B,4BAAU,IAAI,GAAG,EAAiB,EAAC;QACnC,sCAAoB,IAAI,GAAG,EAAU,EAAC;QACtC,6BAAqB,EAAE,EAAC;QAIvB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,GAAG,EAAE;YACnD,uBAAA,IAAI,sBAAY,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAA,CAAC;YAC9D,IAAI,CAAC,MAAM,EAAE,CAAC;QACf,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,KAA2B;QACrC,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,uBAAA,IAAI,yBAAQ,CAAC,KAAK,EAAE,CAAC;YACrB,uBAAA,IAAI,sBAAY,EAAE,MAAA,CAAC;YACnB,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;gBAC/B,yCAAyC;gBACzC,IAAI,IAAI,CAAC,SAAS;oBAAE,uBAAA,IAAI,mCAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAClD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;gBACvB,uBAAA,IAAI,0BAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC,CAAC,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,IAAI,oBAAoB;QACvB,OAAO,CAAC,GAAG,uBAAA,IAAI,mCAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YACpD,MAAM,KAAK,GAAG,uBAAA,IAAI,yBAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,CAAC,KAAK;gBAAE,OAAO,GAAG,CAAC;YACvB,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,CAAC,EAAE,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,QAAQ;QACb,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,uBAAA,IAAI,yBAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;QACjF,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC;QAC1C,MAAM,cAAc,GAAG,uBAAA,IAAI,mCAAkB,CAAC,IAAI,CAAC;QACnD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,cAAc,CAAC;QACxD,IAAI,oBAAoB,GAAG,CAAC,CAAC;QAC7B,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,IAAI,OAAO,GAAa,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChE,IAAI,SAAiB,CAAC;QAEtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,SAAS,GAAG,uBAAA,IAAI,mCAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAChD,IAAI,SAAS,EAAE,CAAC;gBACf,MAAM,KAAK,GAAG,uBAAA,IAAI,yBAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAClC,IAAI,CAAC,KAAK;oBAAE,SAAS;gBACrB,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,YAAY,IAAI,CAAC,CAAC;gBAC7C,oBAAoB,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACP,OAAO,CAAC,CAAC,CAAC,GAAG,uBAAA,IAAI,0BAAS,CAAC,CAAC,CAAC,CAAC;gBAC9B,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;oBAAE,gBAAgB,EAAE,CAAC;gBACpC,kBAAkB,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACtC,SAAS,GAAG,CAAC,CAAC;YACf,CAAC;QACF,CAAC;QAED,IAAI,eAAe,GAAG,eAAe,GAAG,oBAAoB,GAAG,kBAAkB,CAAC;QAClF,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,cAAc,GAAG,YAAY,CAAC;QAElC,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;YACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5C,IAAI,uBAAA,IAAI,mCAAkB,CAAC,GAAG,CAAC,CAAC,CAAC;oBAAE,SAAS;gBAC5C,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjB,SAAS,GAAG,eAAe,GAAG,gBAAgB,CAAA;oBAC9C,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;oBACvB,gBAAgB,EAAE,CAAC;oBACnB,eAAe,IAAI,SAAS,CAAC;oBAC7B,kBAAkB,IAAI,SAAS,CAAC;gBACjC,CAAC;qBAAM,CAAC;oBACP,SAAS,GAAG,eAAe,GAAG,cAAc,CAAC;oBAC7C,OAAO,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;oBACxB,eAAe,IAAI,SAAS,CAAC;gBAC9B,CAAC;gBACD,cAAc,EAAE,CAAC;YAClB,CAAC;QACF,CAAC;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,IAAI,uBAAA,IAAI,mCAAkB,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,SAAS;YAC5C,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,cAAc,EAAE,CAAC;gBACjC,KAAK,GAAG,IAAI,CAAC;gBACb,MAAM;YACP,CAAC;QACF,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACX,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,uBAAA,IAAI,mCAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,GAAG,YAAY,CAAC,CAAC,CAAC;QAC1G,CAAC;aAAM,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;YAChC,OAAO,CAAC,SAAS,CAAC,IAAI,eAAe,CAAC;QACvC,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,MAAM;QACX,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAChC,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAChD,IAAI,SAAS,EAAE,MAAM;gBAAE,SAAS,CAAC,MAAM,EAAE,CAAC;QAC3C,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,KAAa,EAAE,EAAgB;QAC3C,IAAI,KAAK,GAAG,uBAAA,IAAI,yBAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;QAExB,KAAK,GAAG,GAAG,CAAC,aAAa,CAAQ,UAAU,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC/B,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;QACzB,KAAK,CAAC,SAAS,GAAG,uBAAA,IAAI,mCAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;QAC7D,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC;QAC7B,uBAAA,IAAI,yBAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAE/B,KAAK,CAAC,gBAAgB,CAAC,aAAa,EAAE,GAAG,EAAE;YAC1C,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;gBACrB,IAAI,CAAC,uBAAA,IAAI,0BAAS,CAAC,KAAK,CAAC;oBAAE,uBAAA,IAAI,0BAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC;gBACxF,uBAAA,IAAI,mCAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACP,uBAAA,IAAI,mCAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtC,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,2CAA2C;QAC3C,qEAAqE;QACrE,gEAAgE;QAChE,oCAAoC;QACpC,MAAM;QAEN,KAAK,CAAC,gBAAgB,CAAC,YAAY,EAAE,GAAG,EAAE;YACzC,IAAI,CAAC,MAAM,EAAE,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAA;wBACW,IAAI,CAAC,KAAK,IAAI,EAAE;;MAElC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC;;GAE3C,EAAE,KAAK,CAAC,CAAC;QACV,OAAO,KAAK,CAAC;IACd,CAAC;IAED,iBAAiB;QAChB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAC/B,CAAC;;;;;AAnLM,gBAAM,GAAG,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;EAsB7C,CAAC,AAtBW,CAsBV;AAGH;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,KAAK,EAAC,CAAC;wCACG;AA3Bf,SAAS;IADrB,aAAa,CAAC,cAAc,CAAC;GACjB,SAAS,CAuLrB","sourcesContent":["import { html, render, css } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { AcordionItem, ComponentId } from '../types';\nimport { dom } from '../common';\nimport { Panel } from './panel';\nimport { SplitContainer } from './splitContainer';\nimport { until } from 'lit/directives/until.js';\n\nconst MIN_PANEL_SIZE = 50;\n\n@customElement(`og-accordion`)\nexport class Accordion extends SplitContainer {\n\n\tstatic styles = [...SplitContainer.styles, css`\n\t\t:host {\n\t\t\tborder: 1px solid var(--og-border-color);\n\t\t}\n\n\t\t.item {\n\t\t\tborder-top: none !important;\n\t\t}\n\t\t\n\t\t.item.first og-panel {\n\t\t\tborder-top: none;\n\t\t}\n\n\t\t.item og-panel {\n\t\t\tborder-bottom-width: 0;\n\t\t\tborder-left-width: 0;\n\t\t\tborder-right-width: 0;\n\t\t}\n\n\t\t.item.last og-panel {\n\t\t\tborder-bottom-width: 1px;\n\t\t}\n\t`];\n\n\t@property({type: Array})\n\titems: AcordionItem[] = [];\n\n\t#panels = new Map<number, Panel>();\n\t#collapsedIndices = new Set<number>();\n\t#heights: number[] = [];\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis.defaultLayout = false;\n\t\tthis.addEventListener('splitContainer.resize', () => {\n\t\t\tthis.#heights = [...this.containers].map(c => c.offsetHeight);\n\t\t\tthis.layout();\n\t\t});\n\t}\n\n\twillUpdate(props: Map<string, unknown>) {\n\t\tif (props.has('items')) {\n\t\t\tthis.#panels.clear();\n\t\t\tthis.#heights = [];\n\t\t\tthis.items?.forEach((item, i) => {\n\t\t\t\t// override SplitContainer collapse logic\n\t\t\t\tif (item.collapsed) this.#collapsedIndices.add(i);\n\t\t\t\titem.collapsed = false;\n\t\t\t\tthis.#heights.push(item.size);\n\t\t\t});\n\t\t}\n\t\tsuper.willUpdate(props);\n\t}\n\n\tget totalCollapsedHeight() {\n\t\treturn [...this.#collapsedIndices].reduce((acc, i) => {\n\t\t\tconst panel = this.#panels.get(i);\n\t\t\tif (!panel) return acc;\n\t\t\treturn acc + (panel.collapsed ? panel.header.offsetHeight ?? 0 : 0);\n\t\t}, 0);\n\t}\n\n\tasync fixSizes() {\n\t\tawait Promise.all([...this.#panels.values()].map(panel => panel.updateComplete));\n\t\tconst containerHeight = this.clientHeight;\n\t\tconst collapsedCount = this.#collapsedIndices.size;\n\t\tconst visibleCount = this.items.length - collapsedCount;\n\t\tlet totalCollapsedHeight = 0;\n\t\tlet totalVisibleHeight = 0;\n\t\tlet unsetHeightCount = 0;\n\t\tlet heights: number[] = new Array(this.items.length).fill(null);\n\t\tlet lastIndex: number;\n\n\t\tfor (let i = 0; i < this.items.length; i++) {\n\t\t\tconst collapsed = this.#collapsedIndices.has(i);\n\t\t\tif (collapsed) {\n\t\t\t\tconst panel = this.#panels.get(i);\n\t\t\t\tif (!panel) continue;\n\t\t\t\theights[i] = panel.header?.offsetHeight || 0;\n\t\t\t\ttotalCollapsedHeight += heights[i];\n\t\t\t} else {\n\t\t\t\theights[i] = this.#heights[i];\n\t\t\t\tif (!heights[i]) unsetHeightCount++;\n\t\t\t\ttotalVisibleHeight += heights[i] || 0;\n\t\t\t\tlastIndex = i;\n\t\t\t}\n\t\t}\n\n\t\tlet remainingHeight = containerHeight - totalCollapsedHeight - totalVisibleHeight;\n\t\tlet reset = false;\n\t\tlet addHeight = 0;\n\t\tlet remainingCount = visibleCount;\n\n\t\tif (remainingHeight > 0) {\n\t\t\tfor (let i = 0; i < this.items.length; i++) {\n\t\t\t\tif (this.#collapsedIndices.has(i)) continue;\n\t\t\t\tif (!heights[i]) {\n\t\t\t\t\taddHeight = remainingHeight / unsetHeightCount\n\t\t\t\t\theights[i] = addHeight;\n\t\t\t\t\tunsetHeightCount--;\n\t\t\t\t\tremainingHeight -= addHeight;\n\t\t\t\t\ttotalVisibleHeight += addHeight;\n\t\t\t\t} else {\n\t\t\t\t\taddHeight = remainingHeight / remainingCount;\n\t\t\t\t\theights[i] += addHeight;\n\t\t\t\t\tremainingHeight -= addHeight;\n\t\t\t\t}\n\t\t\t\tremainingCount--;\n\t\t\t}\n\t\t}\n\n\t\tfor (let i = 0; i < this.items.length; i++) {\n\t\t\tif (this.#collapsedIndices.has(i)) continue;\n\t\t\tif (heights[i] < MIN_PANEL_SIZE) {\n\t\t\t\treset = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\tif (reset) {\n\t\t\theights = heights.map((h, i) => this.#collapsedIndices.has(i) ? h : (totalVisibleHeight / visibleCount));\n\t\t} else if (remainingHeight > 0) {\n\t\t\theights[lastIndex] += remainingHeight;\n\t\t}\n\n\t\theights.forEach((h, i) => this.setContainerSize(i, h));\n\t}\n\n\tasync layout() {\n\t\tawait this.fixSizes();\n\t\tthis.containers.forEach((_, i) => {\n\t\t\tconst component = this.getContainerComponent(i);\n\t\t\tif (component?.layout) component.layout();\n\t\t});\n\t}\n\n\tgetComponent(index: number, id?: ComponentId) {\n\t\tlet panel = this.#panels.get(index);\n\t\tif (panel) return panel;\n\n\t\tpanel = dom.createElement<Panel>('og-panel');\n\t\tconst item = this.items[index];\n\t\tpanel.collapsible = true;\n\t\tpanel.collapsed = this.#collapsedIndices.has(index) ?? false;\n\t\tpanel.icon = item.icon;\n\t\tpanel.arrowPosition = 'left';\n\t\tthis.#panels.set(index, panel);\n\n\t\tpanel.addEventListener('resizestart', () => {\n\t\t\tif (panel.collapsed) {\n\t\t\t\tif (!this.#heights[index]) this.#heights[index] = this.getContainer(index).offsetHeight;\n\t\t\t\tthis.#collapsedIndices.add(index);\n\t\t\t} else {\n\t\t\t\tthis.#collapsedIndices.delete(index);\n\t\t\t}\n\t\t});\n\t\t\n\t\t// panel.addEventListener('resize', () => {\n\t\t// \tconsole.log(panel.body.offsetHeight + panel.header.offsetHeight);\n\t\t// \tlet h = panel.body.offsetHeight + panel.header.offsetHeight;\n\t\t// \tthis.setContainerSize(index, h);\n\t\t// });\n\t\t\n\t\tpanel.addEventListener('resizestop', () => {\n\t\t\tthis.layout();\n\t\t});\n\n\t\trender(html`\n\t\t\t<div slot=\"header\">${item.title ?? ''}</div>\n\t\t\t<div slot=\"body\" style=\"height: 100%; overflow: hidden; position: relative\">\n\t\t\t\t${until(this.createComponent(id ?? index))}\n\t\t\t</div>\n\t\t`, panel);\n\t\treturn panel;\n\t}\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback();\n\t\tthis.orientation = 'vertical';\n\t}\n\t\n}"]}
@@ -1,15 +0,0 @@
1
- import { LitElement } from 'lit';
2
- export type AlertType = 'danger' | 'warning' | 'info' | 'success';
3
- export declare class AlertEvent extends Event {
4
- constructor(type: string);
5
- }
6
- export declare class Alert extends LitElement {
7
- static styles: import("lit").CSSResult[];
8
- text: string;
9
- icon: string;
10
- type: AlertType;
11
- closable: boolean;
12
- close(dispatchEvent?: boolean): void;
13
- render: () => import("lit-html").TemplateResult<1>;
14
- }
15
- //# sourceMappingURL=alert.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"alert.d.ts","sourceRoot":"","sources":["../../src/ui/alert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAwB,MAAM,KAAK,CAAC;AAKvD,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAC,SAAS,GAAC,MAAM,GAAC,SAAS,CAAC;AAS5D,qBAAa,UAAW,SAAQ,KAAK;gBACxB,IAAI,EAAE,MAAM;CAGxB;AAED,qBACa,KAAM,SAAQ,UAAU;IAEpC,MAAM,CAAC,MAAM,4BAwCX;IAGF,IAAI,EAAE,MAAM,CAAC;IAGb,IAAI,EAAE,MAAM,CAAC;IAGb,IAAI,EAAE,SAAS,CAAC;IAGhB,QAAQ,UAAS;IAEjB,KAAK,CAAC,aAAa,CAAC,EAAE,OAAO;IAK7B,MAAM,6CAUJ;CAEF"}
package/dist/ui/alert.js DELETED
@@ -1,101 +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 { LitElement, html, css, unsafeCSS } from 'lit';
8
- import { customElement, property } from 'lit/decorators.js';
9
- import { ColorTypes } from '../types';
10
- import { dom } from '../common';
11
- const typeMap = {
12
- 'danger': ColorTypes.Red,
13
- 'warning': ColorTypes.Yellow,
14
- 'info': ColorTypes.Blue,
15
- 'success': ColorTypes.Green
16
- };
17
- export class AlertEvent extends Event {
18
- constructor(type) {
19
- super(`alert.${type}`, { bubbles: true, composed: true });
20
- }
21
- }
22
- let Alert = class Alert extends LitElement {
23
- constructor() {
24
- super(...arguments);
25
- this.closable = false;
26
- this.render = () => html `
27
- ${this.icon ? html `
28
- <og-icon .icon="${this.icon}"></og-icon>
29
- ` : ''}
30
- <div id="text">
31
- ${this.text ? html `${this.text}` : html `<slot name="content"></slot>`}
32
- </div>
33
- ${this.closable ? html `
34
- <div id="close" @click="${() => this.close(true)}">&times</div>
35
- ` : ``}
36
- `;
37
- }
38
- close(dispatchEvent) {
39
- dom.remove(this);
40
- if (dispatchEvent)
41
- this.dispatchEvent(new AlertEvent('close'));
42
- }
43
- };
44
- Alert.styles = [css `
45
- :host {
46
- font-size: var(--og-font-size);
47
- padding: 5px;
48
- display: flex;
49
- flex-direction: row;
50
- align-items: center;
51
- gap: 5px;
52
- border-radius: var(--og-base-radius);
53
- }
54
-
55
- * {
56
- box-sizing: border-box;
57
- }
58
-
59
- #text {
60
- flex: 1;
61
- }
62
-
63
- #close {
64
- min-width: 16px;
65
- height: 16px;
66
- line-height: 16px;
67
- flex: 0;
68
- border-radius: 50%;
69
- cursor: pointer;
70
- text-align: center;
71
- }
72
-
73
- #close:hover {
74
- background-color: #000000;
75
- opacity: 0.5;
76
- }
77
- `, ...Array.from(Object.keys(typeMap)).map(key => css `
78
- :host([type="${unsafeCSS(key)}"]) {
79
- color: var(--og-colortype-${unsafeCSS(typeMap[key])}-text-color);
80
- background-color: var(--og-colortype-${unsafeCSS(typeMap[key])}-background-color);
81
- border: 1px solid var(--og-colortype-${unsafeCSS(typeMap[key])}-border-color);
82
- }
83
- `)
84
- ];
85
- __decorate([
86
- property({ type: String })
87
- ], Alert.prototype, "text", void 0);
88
- __decorate([
89
- property({ type: String })
90
- ], Alert.prototype, "icon", void 0);
91
- __decorate([
92
- property({ type: String, reflect: true })
93
- ], Alert.prototype, "type", void 0);
94
- __decorate([
95
- property({ type: Boolean })
96
- ], Alert.prototype, "closable", void 0);
97
- Alert = __decorate([
98
- customElement(`og-alert`)
99
- ], Alert);
100
- export { Alert };
101
- //# sourceMappingURL=alert.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"alert.js","sourceRoot":"","sources":["../../src/ui/alert.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAIhC,MAAM,OAAO,GAAkC;IAC9C,QAAQ,EAAE,UAAU,CAAC,GAAG;IACxB,SAAS,EAAE,UAAU,CAAC,MAAM;IAC5B,MAAM,EAAE,UAAU,CAAC,IAAI;IACvB,SAAS,EAAE,UAAU,CAAC,KAAK;CAC3B,CAAC;AAEF,MAAM,OAAO,UAAW,SAAQ,KAAK;IACpC,YAAY,IAAY;QACvB,KAAK,CAAC,SAAS,IAAI,EAAE,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;IACzD,CAAC;CACD;AAGM,IAAM,KAAK,GAAX,MAAM,KAAM,SAAQ,UAAU;IAA9B;;QAsDN,aAAQ,GAAG,KAAK,CAAC;QAOjB,WAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAA;IAChB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;qBACC,IAAI,CAAC,IAAI;GAC3B,CAAC,CAAC,CAAC,EAAE;;KAEH,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA,8BAA8B;;IAEpE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAA;6BACK,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;GAChD,CAAC,CAAC,CAAC,EAAE;EACN,CAAC;IAEH,CAAC;IAjBA,KAAK,CAAC,aAAuB;QAC5B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjB,IAAI,aAAa;YAAE,IAAI,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC;;AAzDM,YAAM,GAAG,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiClB,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAA;kBACrC,SAAS,CAAC,GAAG,CAAC;gCACA,SAAS,CAAC,OAAO,CAAC,GAAgB,CAAC,CAAC;2CACzB,SAAS,CAAC,OAAO,CAAC,GAAgB,CAAC,CAAC;2CACpC,SAAS,CAAC,OAAO,CAAC,GAAgB,CAAC,CAAC;;GAE5E,CAAC;CACF,AAxCY,CAwCX;AAGF;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;mCACZ;AAGb;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;mCACZ;AAGb;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;mCACxB;AAGhB;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;uCACT;AAtDL,KAAK;IADjB,aAAa,CAAC,UAAU,CAAC;GACb,KAAK,CAyEjB","sourcesContent":["import { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { ColorTypes } from '../types';\nimport { dom } from '../common';\n\nexport type AlertType = 'danger'|'warning'|'info'|'success';\n\nconst typeMap: Record<AlertType, ColorTypes> = {\n\t'danger': ColorTypes.Red,\n\t'warning': ColorTypes.Yellow,\n\t'info': ColorTypes.Blue,\n\t'success': ColorTypes.Green\n};\n\nexport class AlertEvent extends Event {\n\tconstructor(type: string) {\n\t\tsuper(`alert.${type}`, {bubbles: true, composed: true});\n\t}\n}\n\n@customElement(`og-alert`)\nexport class Alert extends LitElement {\n\n\tstatic styles = [css`\n\t\t:host {\n\t\t\tfont-size: var(--og-font-size);\n\t\t\tpadding: 5px;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: center;\n\t\t\tgap: 5px;\n\t\t\tborder-radius: var(--og-base-radius);\n\t\t}\n\n\t\t* {\n\t\t\tbox-sizing: border-box;\n\t\t}\n\n\t\t#text {\n\t\t\tflex: 1;\n\t\t}\n\n\t\t#close {\n\t\t\tmin-width: 16px;\n\t\t\theight: 16px;\n\t\t\tline-height: 16px;\n\t\t\tflex: 0;\n\t\t\tborder-radius: 50%;\n\t\t\tcursor: pointer;\n\t\t\ttext-align: center;\n\t\t}\n\n\t\t#close:hover {\n\t\t\tbackground-color: #000000;\n\t\t\topacity: 0.5;\n\t\t}\n\t\t`, ...Array.from(Object.keys(typeMap)).map(key => css`\n\t\t\t:host([type=\"${unsafeCSS(key)}\"]) {\n\t\t\t\tcolor: var(--og-colortype-${unsafeCSS(typeMap[key as AlertType])}-text-color);\n\t\t\t\tbackground-color: var(--og-colortype-${unsafeCSS(typeMap[key as AlertType])}-background-color);\n\t\t\t\tborder: 1px solid var(--og-colortype-${unsafeCSS(typeMap[key as AlertType])}-border-color);\n\t\t\t}\n\t\t`)\n\t];\n\n\t@property({type: String})\n\ttext: string;\n\n\t@property({type: String})\n\ticon: string;\n\n\t@property({type: String, reflect: true})\n\ttype: AlertType;\n\n\t@property({type: Boolean})\n\tclosable = false;\n\n\tclose(dispatchEvent?: boolean) {\n\t\tdom.remove(this);\n\t\tif (dispatchEvent) this.dispatchEvent(new AlertEvent('close'));\n\t}\n\n\trender = () => html`\n\t\t${this.icon ? html`\n\t\t\t<og-icon .icon=\"${this.icon}\"></og-icon>\n\t\t` : ''}\n\t\t<div id=\"text\">\n\t\t\t${this.text ? html`${this.text}` : html`<slot name=\"content\"></slot>`}\n\t\t</div>\n\t\t${this.closable ? html`\n\t\t\t<div id=\"close\" @click=\"${() => this.close(true)}\">&times</div>\n\t\t` : ``}\n\t`;\n\t\n}"]}
@@ -1,7 +0,0 @@
1
- import { LitElement } from 'lit';
2
- export declare class ComponentEvent extends Event {
3
- }
4
- export declare class BaseElement extends LitElement {
5
- readonly customProperties: Record<string, unknown>;
6
- }
7
- //# sourceMappingURL=baseElement.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"baseElement.d.ts","sourceRoot":"","sources":["../../src/ui/baseElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAEjC,qBAAa,cAAe,SAAQ,KAAK;CAAI;AAE7C,qBAAa,WAAY,SAAQ,UAAU;IAE1C,SAAgB,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;CAE/D"}
@@ -1,10 +0,0 @@
1
- import { LitElement } from 'lit';
2
- export class ComponentEvent extends Event {
3
- }
4
- export class BaseElement extends LitElement {
5
- constructor() {
6
- super(...arguments);
7
- this.customProperties = {};
8
- }
9
- }
10
- //# sourceMappingURL=baseElement.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"baseElement.js","sourceRoot":"","sources":["../../src/ui/baseElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAEjC,MAAM,OAAO,cAAe,SAAQ,KAAK;CAAI;AAE7C,MAAM,OAAO,WAAY,SAAQ,UAAU;IAA3C;;QAEiB,qBAAgB,GAA4B,EAAE,CAAC;IAEhE,CAAC;CAAA","sourcesContent":["import { LitElement } from 'lit';\n\nexport class ComponentEvent extends Event { }\n\nexport class BaseElement extends LitElement {\n\n\tpublic readonly customProperties: Record<string, unknown> = {};\n\n}"]}
@@ -1,21 +0,0 @@
1
- import { LitElement } from 'lit';
2
- import { ColorTypes } from '../types';
3
- import { IconSpec } from './icon';
4
- export declare class Button extends LitElement {
5
- static styles: import("lit").CSSResult[];
6
- icon: string | IconSpec;
7
- text: string;
8
- color: ColorTypes;
9
- caret: 'none' | 'down' | 'up';
10
- disabled: boolean;
11
- default: boolean;
12
- state: 'checked' | 'unchecked';
13
- type: 'normal' | 'toggle';
14
- buttonIcon: IconSpec;
15
- constructor();
16
- connectedCallback(): void;
17
- willUpdate(props: Map<PropertyKey, undefined>): void;
18
- get hasContent(): string | boolean;
19
- render: () => import("lit-html").TemplateResult<1>;
20
- }
21
- //# sourceMappingURL=button.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../src/ui/button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAQ,MAAM,KAAK,CAAC;AAEvC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAItC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAIlC,qBAEa,MAAO,SAAQ,UAAU;IAErC,MAAM,CAAC,MAAM,4BAAW;IAGxB,IAAI,EAAE,MAAM,GAAC,QAAQ,CAAC;IAGtB,IAAI,EAAE,MAAM,CAAQ;IAGpB,KAAK,EAAE,UAAU,CAAqB;IAGtC,KAAK,EAAE,MAAM,GAAC,MAAM,GAAC,IAAI,CAAU;IAGnC,QAAQ,UAAS;IAGjB,OAAO,UAAS;IAGhB,KAAK,EAAE,SAAS,GAAC,WAAW,CAAQ;IAGpC,IAAI,EAAE,QAAQ,GAAC,QAAQ,CAAY;IAGnC,UAAU,EAAE,QAAQ,CAAC;;IAYrB,iBAAiB;IAKjB,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC;IAgB7C,IAAI,UAAU,qBAA2F;IAEzG,MAAM,6CAWJ;CAEF"}
package/dist/ui/button.js DELETED
@@ -1,100 +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 { LitElement, html } from 'lit';
8
- import { customElement, property, state } from 'lit/decorators.js';
9
- import { ColorTypes } from '../types';
10
- import { colorable } from '../themes';
11
- import { style } from './button.style';
12
- import { classMap } from 'lit-html/directives/class-map.js';
13
- import { utils } from '../common';
14
- import { msg } from '@omegagrid/localize';
15
- let Button = class Button extends LitElement {
16
- constructor() {
17
- super();
18
- this.text = null;
19
- this.color = ColorTypes.Accent;
20
- this.caret = 'none';
21
- this.disabled = false;
22
- this.default = false;
23
- this.state = null;
24
- this.type = 'normal';
25
- this.render = () => html `
26
- <div class="${classMap({ inner: true, 'has-content': this.hasContent })}">
27
- ${this.buttonIcon ? html `<og-icon .icon="${this.buttonIcon}"></og-icon>` : html ``}
28
- ${this.hasContent ? html `
29
- <div class="content">${this.text == null || this.text === ''
30
- ? html `<slot name="content"></slot>`
31
- : html `${msg(this.text)}`}
32
- </div>
33
- ` : html ``}
34
- ${this.caret == 'none' ? '' : html `<og-icon icon="caret-${this.caret}" style="margin: 0"></og-icon>`}
35
- </div>
36
- `;
37
- this.addEventListener('click', (e) => {
38
- if (this.disabled)
39
- e.stopImmediatePropagation();
40
- else if (this.type == 'toggle') {
41
- this.state = this.state == 'checked' ? 'unchecked' : 'checked';
42
- }
43
- });
44
- }
45
- connectedCallback() {
46
- super.connectedCallback();
47
- this.tabIndex = 1;
48
- }
49
- willUpdate(props) {
50
- if (this.type == 'toggle' && this.state == null) {
51
- this.state = 'unchecked';
52
- }
53
- if (props.has('icon')) {
54
- if (utils.isObject(this.icon)) {
55
- this.buttonIcon = this.icon;
56
- }
57
- else if (this.icon) {
58
- this.buttonIcon = { icon: this.icon };
59
- }
60
- else {
61
- this.buttonIcon = null;
62
- }
63
- }
64
- }
65
- get hasContent() { return this.text || (this.children.length > 0 && this.children[0].slot == 'content'); }
66
- };
67
- Button.styles = [style];
68
- __decorate([
69
- property()
70
- ], Button.prototype, "icon", void 0);
71
- __decorate([
72
- property({ type: String })
73
- ], Button.prototype, "text", void 0);
74
- __decorate([
75
- property({ type: String, reflect: true })
76
- ], Button.prototype, "color", void 0);
77
- __decorate([
78
- property({ type: String, reflect: true })
79
- ], Button.prototype, "caret", void 0);
80
- __decorate([
81
- property({ type: Boolean, reflect: true })
82
- ], Button.prototype, "disabled", void 0);
83
- __decorate([
84
- property({ type: Boolean, reflect: true })
85
- ], Button.prototype, "default", void 0);
86
- __decorate([
87
- property({ type: String, reflect: true })
88
- ], Button.prototype, "state", void 0);
89
- __decorate([
90
- property({ type: String, reflect: true })
91
- ], Button.prototype, "type", void 0);
92
- __decorate([
93
- state()
94
- ], Button.prototype, "buttonIcon", void 0);
95
- Button = __decorate([
96
- customElement(`og-button`),
97
- colorable({ props: ['color', 'border', 'background'] })
98
- ], Button);
99
- export { Button };
100
- //# sourceMappingURL=button.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/ui/button.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, html } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { ColorTypes } from '../types';\nimport { colorable } from '../themes';\nimport { style } from './button.style';\nimport { classMap } from 'lit-html/directives/class-map.js';\nimport { IconSpec } from './icon';\nimport { utils } from '../common';\nimport { msg } from '@omegagrid/localize';\n\n@customElement(`og-button`)\n@colorable({props: ['color', 'border', 'background']})\nexport class Button extends LitElement {\n\n\tstatic styles = [style];\n\n\t@property()\n\ticon: string|IconSpec;\n\n\t@property({type: String})\n\ttext: string = null;\n\n\t@property({type: String, reflect: true})\n\tcolor: ColorTypes = ColorTypes.Accent;\n\n\t@property({type: String, reflect: true})\n\tcaret: 'none'|'down'|'up' = 'none';\n\n\t@property({type: Boolean, reflect: true})\n\tdisabled = false;\n\n\t@property({type: Boolean, reflect: true})\n\tdefault = false;\n\n\t@property({type: String, reflect: true})\n\tstate: 'checked'|'unchecked' = null;\n\n\t@property({type: String, reflect: true})\n\ttype: 'normal'|'toggle' = 'normal';\n\n\t@state()\n\tbuttonIcon: IconSpec;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis.addEventListener('click', (e: PointerEvent) => {\n\t\t\tif (this.disabled) e.stopImmediatePropagation();\n\t\t\telse if (this.type == 'toggle') {\n\t\t\t\tthis.state = this.state == 'checked' ? 'unchecked' : 'checked';\n\t\t\t}\n\t\t});\n\t}\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback();\n\t\tthis.tabIndex = 1;\n\t}\n\n\twillUpdate(props: Map<PropertyKey, undefined>) {\n\t\tif (this.type == 'toggle' && this.state == null) {\n\t\t\tthis.state = 'unchecked';\n\t\t}\n\n\t\tif (props.has('icon')) {\n\t\t\tif (utils.isObject(this.icon)) {\n\t\t\t\tthis.buttonIcon = this.icon as IconSpec;\n\t\t\t} else if (this.icon) {\n\t\t\t\tthis.buttonIcon = {icon: this.icon as string};\n\t\t\t} else {\n\t\t\t\tthis.buttonIcon = null;\n\t\t\t}\n\t\t}\n\t}\n\n\tget hasContent() { return this.text || (this.children.length > 0 && this.children[0].slot == 'content') }\n\n\trender = () => html`\n\t\t<div class=\"${classMap({inner: true, 'has-content': this.hasContent})}\">\n\t\t\t${this.buttonIcon ? html`<og-icon .icon=\"${this.buttonIcon}\"></og-icon>` : html``}\n\t\t\t${this.hasContent ? html`\n\t\t\t<div class=\"content\">${this.text == null || this.text === ''\n\t\t\t\t? html`<slot name=\"content\"></slot>`\n\t\t\t\t: html`${msg(this.text)}`}\n\t\t\t</div>\n\t\t\t` : html``}\n\t\t\t${this.caret == 'none' ? '' : html`<og-icon icon=\"caret-${this.caret}\" style=\"margin: 0\"></og-icon>`}\n\t\t</div>\n\t`;\n\t\n}"]}
@@ -1,2 +0,0 @@
1
- export declare const style: import("lit").CSSResult;
2
- //# sourceMappingURL=button.style.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"button.style.d.ts","sourceRoot":"","sources":["../../src/ui/button.style.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,KAAK,yBAwDjB,CAAC"}
@@ -1,60 +0,0 @@
1
- import { css } from 'lit';
2
- import constants from '../constants';
3
- export const style = css `
4
- :host {
5
- box-sizing: border-box;
6
- font-size: var(--og-font-size);
7
- cursor: pointer;
8
- display: inline-block;
9
- vertical-align: middle;
10
- overflow: hidden;
11
- height: ${constants.BUTTON_HEIGHT}px;
12
- outline: none;
13
- user-select: none;
14
- border-radius: var(--og-base-radius);
15
- }
16
-
17
- :host([default]) {
18
- font-weight: bold;
19
- text-decoration: underline;
20
- }
21
-
22
- :host([state=unchecked]) {
23
- border-color: var(--og-background-color);
24
- background-color: var(--og-background-color);
25
- color: var(--og-text-color);
26
- }
27
-
28
- :host([disabled]), :host([disabled]:hover) {
29
- background-color: gray;
30
- border-color: var(--og-border-color);
31
- cursor: not-allowed;
32
- opacity: 0.5;
33
- }
34
-
35
- :host(:hover) {
36
- opacity: 0.8;
37
- }
38
-
39
- div.inner {
40
- display: flex;
41
- flex-direction: row;
42
- align-items: center;
43
- justify-content: center;
44
- width: 100%;
45
- height: 100%;
46
- }
47
-
48
- div.content {
49
- flex: 1 0;
50
- white-space: nowrap;
51
- overflow: hidden;
52
- padding: 0 4px;
53
- }
54
-
55
- .has-content og-icon {
56
- margin-left: 2px;
57
- }
58
-
59
- `;
60
- //# sourceMappingURL=button.style.js.map