solid-ui 2.6.0 → 2.6.1-05fb7cc

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 (365) hide show
  1. package/LICENSE.md +3 -1
  2. package/README.md +84 -25
  3. package/dist/acl/access-controller.js +293 -0
  4. package/dist/acl/access-controller.js.map +1 -0
  5. package/dist/acl/access-groups.js +372 -0
  6. package/dist/acl/access-groups.js.map +1 -0
  7. package/dist/acl/acl-control.js +217 -0
  8. package/dist/acl/acl-control.js.map +1 -0
  9. package/dist/acl/acl.js +550 -0
  10. package/dist/acl/acl.js.map +1 -0
  11. package/dist/acl/add-agent-buttons.js +260 -0
  12. package/dist/acl/add-agent-buttons.js.map +1 -0
  13. package/dist/acl/index.js +35 -0
  14. package/dist/acl/index.js.map +1 -0
  15. package/dist/acl/types.js +7 -0
  16. package/dist/acl/types.js.map +1 -0
  17. package/dist/chat/keys.js +148 -0
  18. package/dist/chat/keys.js.map +1 -0
  19. package/dist/chat/signature.js +71 -0
  20. package/dist/chat/signature.js.map +1 -0
  21. package/dist/create/create.js +288 -0
  22. package/dist/create/create.js.map +1 -0
  23. package/dist/create/index.js +8 -0
  24. package/dist/create/index.js.map +1 -0
  25. package/dist/create/types.js +3 -0
  26. package/dist/create/types.js.map +1 -0
  27. package/dist/debug.js +23 -0
  28. package/dist/debug.js.map +1 -0
  29. package/dist/footer/index.js +72 -0
  30. package/dist/footer/index.js.map +1 -0
  31. package/dist/header/empty-profile.js +14 -0
  32. package/dist/header/empty-profile.js.map +1 -0
  33. package/dist/header/index.js +305 -0
  34. package/dist/header/index.js.map +1 -0
  35. package/dist/iconBase.js +40 -0
  36. package/dist/iconBase.js.map +1 -0
  37. package/dist/icons/solid_logo.js.map +1 -0
  38. package/{lib → dist}/index.d.ts +4 -4
  39. package/dist/index.d.ts.map +1 -0
  40. package/dist/index.js +170 -0
  41. package/dist/index.js.map +1 -0
  42. package/{lib → dist}/log.js +85 -99
  43. package/dist/log.js.map +1 -0
  44. package/dist/login/login.js +910 -0
  45. package/dist/login/login.js.map +1 -0
  46. package/dist/matrix/index.js +8 -0
  47. package/dist/matrix/index.js.map +1 -0
  48. package/dist/matrix/matrix.js +253 -0
  49. package/dist/matrix/matrix.js.map +1 -0
  50. package/dist/matrix/types.js +3 -0
  51. package/dist/matrix/types.js.map +1 -0
  52. package/dist/media/index.js +9 -0
  53. package/dist/media/index.js.map +1 -0
  54. package/dist/media/media-capture.js +198 -0
  55. package/dist/media/media-capture.js.map +1 -0
  56. package/dist/pad.js +795 -0
  57. package/dist/pad.js.map +1 -0
  58. package/dist/participation.js +228 -0
  59. package/dist/participation.js.map +1 -0
  60. package/dist/solid-ui.esm.js +25549 -0
  61. package/dist/solid-ui.esm.js.map +1 -0
  62. package/dist/solid-ui.esm.min.js +43 -0
  63. package/dist/solid-ui.esm.min.js.map +1 -0
  64. package/dist/solid-ui.js +23399 -70837
  65. package/dist/solid-ui.js.map +1 -1
  66. package/dist/solid-ui.min.js +40 -2
  67. package/dist/solid-ui.min.js.map +1 -1
  68. package/dist/tabs.js +398 -0
  69. package/dist/tabs.js.map +1 -0
  70. package/dist/utils/headerFooterHelpers.js +122 -0
  71. package/dist/utils/headerFooterHelpers.js.map +1 -0
  72. package/dist/utils/keyHelpers/accessData.js +108 -0
  73. package/dist/utils/keyHelpers/accessData.js.map +1 -0
  74. package/dist/utils/keyHelpers/acl.js +112 -0
  75. package/dist/utils/keyHelpers/acl.js.map +1 -0
  76. package/dist/utils/keyHelpers/otherHelpers.js +19 -0
  77. package/dist/utils/keyHelpers/otherHelpers.js.map +1 -0
  78. package/dist/utils/label.js +150 -0
  79. package/dist/utils/label.js.map +1 -0
  80. package/dist/versionInfo.js +33 -0
  81. package/dist/versionInfo.js.map +1 -0
  82. package/dist/widgets/buttons/iconLinks.js +49 -0
  83. package/dist/widgets/buttons/iconLinks.js.map +1 -0
  84. package/dist/widgets/buttons.js +1355 -0
  85. package/dist/widgets/buttons.js.map +1 -0
  86. package/dist/widgets/error.js +42 -0
  87. package/dist/widgets/error.js.map +1 -0
  88. package/dist/widgets/forms/autocomplete/autocompleteBar.js +162 -0
  89. package/dist/widgets/forms/autocomplete/autocompleteBar.js.map +1 -0
  90. package/dist/widgets/forms/autocomplete/autocompleteField.js +235 -0
  91. package/dist/widgets/forms/autocomplete/autocompleteField.js.map +1 -0
  92. package/dist/widgets/forms/autocomplete/autocompletePicker.js +296 -0
  93. package/dist/widgets/forms/autocomplete/autocompletePicker.js.map +1 -0
  94. package/dist/widgets/forms/autocomplete/language.js +147 -0
  95. package/dist/widgets/forms/autocomplete/language.js.map +1 -0
  96. package/dist/widgets/forms/autocomplete/publicData.js +507 -0
  97. package/dist/widgets/forms/autocomplete/publicData.js.map +1 -0
  98. package/dist/widgets/forms/basic.js +250 -0
  99. package/dist/widgets/forms/basic.js.map +1 -0
  100. package/dist/widgets/forms/comment.js +52 -0
  101. package/dist/widgets/forms/comment.js.map +1 -0
  102. package/dist/widgets/forms/fieldFunction.js +49 -0
  103. package/dist/widgets/forms/fieldFunction.js.map +1 -0
  104. package/dist/widgets/forms/fieldParams.js +95 -0
  105. package/dist/widgets/forms/fieldParams.js.map +1 -0
  106. package/dist/widgets/forms/formStyle.js +43 -0
  107. package/dist/widgets/forms/formStyle.js.map +1 -0
  108. package/{lib → dist}/widgets/widgetHelpers.d.ts.map +1 -1
  109. package/{lib → dist}/widgets/widgetHelpers.js +19 -24
  110. package/dist/widgets/widgetHelpers.js.map +1 -0
  111. package/package.json +44 -47
  112. package/dist/789.solid-ui.min.js +0 -1
  113. package/dist/841.solid-ui.min.js +0 -3
  114. package/dist/841.solid-ui.min.js.LICENSE.txt +0 -58
  115. package/dist/841.solid-ui.min.js.map +0 -1
  116. package/dist/_2b19.solid-ui.js +0 -14
  117. package/dist/_2b19.solid-ui.js.map +0 -1
  118. package/dist/index.html +0 -1
  119. package/dist/solid-ui.min.js.LICENSE.txt +0 -57
  120. package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js +0 -12247
  121. package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js.map +0 -1
  122. package/lib/acl/access-controller.js +0 -391
  123. package/lib/acl/access-controller.js.map +0 -1
  124. package/lib/acl/access-groups.js +0 -507
  125. package/lib/acl/access-groups.js.map +0 -1
  126. package/lib/acl/acl-control.js +0 -237
  127. package/lib/acl/acl-control.js.map +0 -1
  128. package/lib/acl/acl.js +0 -517
  129. package/lib/acl/acl.js.map +0 -1
  130. package/lib/acl/add-agent-buttons.js +0 -434
  131. package/lib/acl/add-agent-buttons.js.map +0 -1
  132. package/lib/acl/index.js +0 -39
  133. package/lib/acl/index.js.map +0 -1
  134. package/lib/acl/types.js +0 -6
  135. package/lib/acl/types.js.map +0 -1
  136. package/lib/chat/bookmarks.js +0 -303
  137. package/lib/chat/bookmarks.js.map +0 -1
  138. package/lib/chat/chatLogic.js +0 -420
  139. package/lib/chat/chatLogic.js.map +0 -1
  140. package/lib/chat/dateFolder.js +0 -328
  141. package/lib/chat/dateFolder.js.map +0 -1
  142. package/lib/chat/infinite.js +0 -994
  143. package/lib/chat/infinite.js.map +0 -1
  144. package/lib/chat/keys.js +0 -232
  145. package/lib/chat/keys.js.map +0 -1
  146. package/lib/chat/message.js +0 -715
  147. package/lib/chat/message.js.map +0 -1
  148. package/lib/chat/messageTools.js +0 -538
  149. package/lib/chat/messageTools.js.map +0 -1
  150. package/lib/chat/signature.js +0 -109
  151. package/lib/chat/signature.js.map +0 -1
  152. package/lib/chat/thread.js +0 -535
  153. package/lib/chat/thread.js.map +0 -1
  154. package/lib/create/create.js +0 -242
  155. package/lib/create/create.js.map +0 -1
  156. package/lib/create/index.js +0 -11
  157. package/lib/create/index.js.map +0 -1
  158. package/lib/create/types.js +0 -6
  159. package/lib/create/types.js.map +0 -1
  160. package/lib/debug.js +0 -30
  161. package/lib/debug.js.map +0 -1
  162. package/lib/folders.js +0 -132
  163. package/lib/folders.js.map +0 -1
  164. package/lib/footer/index.js +0 -123
  165. package/lib/footer/index.js.map +0 -1
  166. package/lib/header/empty-profile.js +0 -8
  167. package/lib/header/empty-profile.js.map +0 -1
  168. package/lib/header/index.js +0 -375
  169. package/lib/header/index.js.map +0 -1
  170. package/lib/iconBase.js +0 -44
  171. package/lib/iconBase.js.map +0 -1
  172. package/lib/icons/solid_logo.js.map +0 -1
  173. package/lib/index.d.ts.map +0 -1
  174. package/lib/index.js +0 -223
  175. package/lib/index.js.map +0 -1
  176. package/lib/log.js.map +0 -1
  177. package/lib/login/login.js +0 -1241
  178. package/lib/login/login.js.map +0 -1
  179. package/lib/matrix/index.js +0 -11
  180. package/lib/matrix/index.js.map +0 -1
  181. package/lib/matrix/matrix.js +0 -216
  182. package/lib/matrix/matrix.js.map +0 -1
  183. package/lib/matrix/types.js +0 -6
  184. package/lib/matrix/types.js.map +0 -1
  185. package/lib/media/index.js +0 -12
  186. package/lib/media/index.js.map +0 -1
  187. package/lib/media/media-capture.js +0 -194
  188. package/lib/media/media-capture.js.map +0 -1
  189. package/lib/messageArea.js +0 -319
  190. package/lib/messageArea.js.map +0 -1
  191. package/lib/noun_Camera_1618446_000000.js +0 -8
  192. package/lib/noun_Camera_1618446_000000.js.map +0 -1
  193. package/lib/ns.js +0 -17
  194. package/lib/ns.js.map +0 -1
  195. package/lib/pad.js +0 -805
  196. package/lib/pad.js.map +0 -1
  197. package/lib/participation.js +0 -219
  198. package/lib/participation.js.map +0 -1
  199. package/lib/preferences.js +0 -215
  200. package/lib/preferences.js.map +0 -1
  201. package/lib/signup/config-default.js +0 -43
  202. package/lib/signup/config-default.js.map +0 -1
  203. package/lib/signup/signup.js +0 -74
  204. package/lib/signup/signup.js.map +0 -1
  205. package/lib/stories/decorators.js +0 -10
  206. package/lib/stories/decorators.js.map +0 -1
  207. package/lib/style.js +0 -158
  208. package/lib/style.js.map +0 -1
  209. package/lib/styleConstants.js +0 -35
  210. package/lib/styleConstants.js.map +0 -1
  211. package/lib/style_multiSelect.js +0 -62
  212. package/lib/style_multiSelect.js.map +0 -1
  213. package/lib/table.js +0 -1573
  214. package/lib/table.js.map +0 -1
  215. package/lib/tabs.js +0 -448
  216. package/lib/tabs.js.map +0 -1
  217. package/lib/typings.d.js +0 -2
  218. package/lib/typings.d.js.map +0 -1
  219. package/lib/utils/headerFooterHelpers.js +0 -165
  220. package/lib/utils/headerFooterHelpers.js.map +0 -1
  221. package/lib/utils/index.js +0 -527
  222. package/lib/utils/index.js.map +0 -1
  223. package/lib/utils/keyHelpers/accessData.js +0 -131
  224. package/lib/utils/keyHelpers/accessData.js.map +0 -1
  225. package/lib/utils/keyHelpers/acl.js +0 -90
  226. package/lib/utils/keyHelpers/acl.js.map +0 -1
  227. package/lib/utils/keyHelpers/otherHelpers.js +0 -21
  228. package/lib/utils/keyHelpers/otherHelpers.js.map +0 -1
  229. package/lib/utils/label.js +0 -103
  230. package/lib/utils/label.js.map +0 -1
  231. package/lib/versionInfo.d.ts +0 -34
  232. package/lib/versionInfo.d.ts.map +0 -1
  233. package/lib/versionInfo.js +0 -39
  234. package/lib/versionInfo.js.map +0 -1
  235. package/lib/widgets/buttons/iconLinks.js +0 -53
  236. package/lib/widgets/buttons/iconLinks.js.map +0 -1
  237. package/lib/widgets/buttons.js +0 -1306
  238. package/lib/widgets/buttons.js.map +0 -1
  239. package/lib/widgets/dragAndDrop.js +0 -194
  240. package/lib/widgets/dragAndDrop.js.map +0 -1
  241. package/lib/widgets/error.js +0 -46
  242. package/lib/widgets/error.js.map +0 -1
  243. package/lib/widgets/forms/autocomplete/autocompleteBar.js +0 -271
  244. package/lib/widgets/forms/autocomplete/autocompleteBar.js.map +0 -1
  245. package/lib/widgets/forms/autocomplete/autocompleteField.js +0 -258
  246. package/lib/widgets/forms/autocomplete/autocompleteField.js.map +0 -1
  247. package/lib/widgets/forms/autocomplete/autocompletePicker.js +0 -436
  248. package/lib/widgets/forms/autocomplete/autocompletePicker.js.map +0 -1
  249. package/lib/widgets/forms/autocomplete/language.js +0 -189
  250. package/lib/widgets/forms/autocomplete/language.js.map +0 -1
  251. package/lib/widgets/forms/autocomplete/publicData.js +0 -636
  252. package/lib/widgets/forms/autocomplete/publicData.js.map +0 -1
  253. package/lib/widgets/forms/basic.js +0 -254
  254. package/lib/widgets/forms/basic.js.map +0 -1
  255. package/lib/widgets/forms/comment.js +0 -54
  256. package/lib/widgets/forms/comment.js.map +0 -1
  257. package/lib/widgets/forms/fieldFunction.js +0 -52
  258. package/lib/widgets/forms/fieldFunction.js.map +0 -1
  259. package/lib/widgets/forms/fieldParams.js +0 -77
  260. package/lib/widgets/forms/fieldParams.js.map +0 -1
  261. package/lib/widgets/forms/formStyle.js +0 -44
  262. package/lib/widgets/forms/formStyle.js.map +0 -1
  263. package/lib/widgets/forms.js +0 -2045
  264. package/lib/widgets/forms.js.map +0 -1
  265. package/lib/widgets/index.js +0 -110
  266. package/lib/widgets/index.js.map +0 -1
  267. package/lib/widgets/multiSelect.js +0 -658
  268. package/lib/widgets/multiSelect.js.map +0 -1
  269. package/lib/widgets/peoplePicker.js +0 -467
  270. package/lib/widgets/peoplePicker.js.map +0 -1
  271. package/lib/widgets/widgetHelpers.js.map +0 -1
  272. /package/{lib → dist}/acl/access-controller.d.ts +0 -0
  273. /package/{lib → dist}/acl/access-controller.d.ts.map +0 -0
  274. /package/{lib → dist}/acl/access-groups.d.ts +0 -0
  275. /package/{lib → dist}/acl/access-groups.d.ts.map +0 -0
  276. /package/{lib → dist}/acl/acl-control.d.ts +0 -0
  277. /package/{lib → dist}/acl/acl-control.d.ts.map +0 -0
  278. /package/{lib → dist}/acl/acl.d.ts +0 -0
  279. /package/{lib → dist}/acl/acl.d.ts.map +0 -0
  280. /package/{lib → dist}/acl/add-agent-buttons.d.ts +0 -0
  281. /package/{lib → dist}/acl/add-agent-buttons.d.ts.map +0 -0
  282. /package/{lib → dist}/acl/index.d.ts +0 -0
  283. /package/{lib → dist}/acl/index.d.ts.map +0 -0
  284. /package/{lib → dist}/acl/types.d.ts +0 -0
  285. /package/{lib → dist}/acl/types.d.ts.map +0 -0
  286. /package/{lib → dist}/chat/keys.d.ts +0 -0
  287. /package/{lib → dist}/chat/keys.d.ts.map +0 -0
  288. /package/{lib → dist}/chat/signature.d.ts +0 -0
  289. /package/{lib → dist}/chat/signature.d.ts.map +0 -0
  290. /package/{lib → dist}/create/create.d.ts +0 -0
  291. /package/{lib → dist}/create/create.d.ts.map +0 -0
  292. /package/{lib → dist}/create/index.d.ts +0 -0
  293. /package/{lib → dist}/create/index.d.ts.map +0 -0
  294. /package/{lib → dist}/create/types.d.ts +0 -0
  295. /package/{lib → dist}/create/types.d.ts.map +0 -0
  296. /package/{lib → dist}/debug.d.ts +0 -0
  297. /package/{lib → dist}/debug.d.ts.map +0 -0
  298. /package/{lib → dist}/footer/index.d.ts +0 -0
  299. /package/{lib → dist}/footer/index.d.ts.map +0 -0
  300. /package/{lib → dist}/header/empty-profile.d.ts +0 -0
  301. /package/{lib → dist}/header/empty-profile.d.ts.map +0 -0
  302. /package/{lib → dist}/header/index.d.ts +0 -0
  303. /package/{lib → dist}/header/index.d.ts.map +0 -0
  304. /package/{lib → dist}/iconBase.d.ts +0 -0
  305. /package/{lib → dist}/iconBase.d.ts.map +0 -0
  306. /package/{lib → dist}/icons/solid_logo.d.ts +0 -0
  307. /package/{lib → dist}/icons/solid_logo.d.ts.map +0 -0
  308. /package/{lib → dist}/icons/solid_logo.js +0 -0
  309. /package/{lib → dist}/log.d.ts +0 -0
  310. /package/{lib → dist}/log.d.ts.map +0 -0
  311. /package/{lib → dist}/login/login.d.ts +0 -0
  312. /package/{lib → dist}/login/login.d.ts.map +0 -0
  313. /package/{lib → dist}/matrix/index.d.ts +0 -0
  314. /package/{lib → dist}/matrix/index.d.ts.map +0 -0
  315. /package/{lib → dist}/matrix/matrix.d.ts +0 -0
  316. /package/{lib → dist}/matrix/matrix.d.ts.map +0 -0
  317. /package/{lib → dist}/matrix/types.d.ts +0 -0
  318. /package/{lib → dist}/matrix/types.d.ts.map +0 -0
  319. /package/{lib → dist}/media/index.d.ts +0 -0
  320. /package/{lib → dist}/media/index.d.ts.map +0 -0
  321. /package/{lib → dist}/media/media-capture.d.ts +0 -0
  322. /package/{lib → dist}/media/media-capture.d.ts.map +0 -0
  323. /package/{lib → dist}/pad.d.ts +0 -0
  324. /package/{lib → dist}/pad.d.ts.map +0 -0
  325. /package/{lib → dist}/participation.d.ts +0 -0
  326. /package/{lib → dist}/participation.d.ts.map +0 -0
  327. /package/{lib → dist}/tabs.d.ts +0 -0
  328. /package/{lib → dist}/tabs.d.ts.map +0 -0
  329. /package/{lib → dist}/utils/headerFooterHelpers.d.ts +0 -0
  330. /package/{lib → dist}/utils/headerFooterHelpers.d.ts.map +0 -0
  331. /package/{lib → dist}/utils/keyHelpers/accessData.d.ts +0 -0
  332. /package/{lib → dist}/utils/keyHelpers/accessData.d.ts.map +0 -0
  333. /package/{lib → dist}/utils/keyHelpers/acl.d.ts +0 -0
  334. /package/{lib → dist}/utils/keyHelpers/acl.d.ts.map +0 -0
  335. /package/{lib → dist}/utils/keyHelpers/otherHelpers.d.ts +0 -0
  336. /package/{lib → dist}/utils/keyHelpers/otherHelpers.d.ts.map +0 -0
  337. /package/{lib → dist}/utils/label.d.ts +0 -0
  338. /package/{lib → dist}/utils/label.d.ts.map +0 -0
  339. /package/{lib → dist}/widgets/buttons/iconLinks.d.ts +0 -0
  340. /package/{lib → dist}/widgets/buttons/iconLinks.d.ts.map +0 -0
  341. /package/{lib → dist}/widgets/buttons.d.ts +0 -0
  342. /package/{lib → dist}/widgets/buttons.d.ts.map +0 -0
  343. /package/{lib → dist}/widgets/error.d.ts +0 -0
  344. /package/{lib → dist}/widgets/error.d.ts.map +0 -0
  345. /package/{lib → dist}/widgets/forms/autocomplete/autocompleteBar.d.ts +0 -0
  346. /package/{lib → dist}/widgets/forms/autocomplete/autocompleteBar.d.ts.map +0 -0
  347. /package/{lib → dist}/widgets/forms/autocomplete/autocompleteField.d.ts +0 -0
  348. /package/{lib → dist}/widgets/forms/autocomplete/autocompleteField.d.ts.map +0 -0
  349. /package/{lib → dist}/widgets/forms/autocomplete/autocompletePicker.d.ts +0 -0
  350. /package/{lib → dist}/widgets/forms/autocomplete/autocompletePicker.d.ts.map +0 -0
  351. /package/{lib → dist}/widgets/forms/autocomplete/language.d.ts +0 -0
  352. /package/{lib → dist}/widgets/forms/autocomplete/language.d.ts.map +0 -0
  353. /package/{lib → dist}/widgets/forms/autocomplete/publicData.d.ts +0 -0
  354. /package/{lib → dist}/widgets/forms/autocomplete/publicData.d.ts.map +0 -0
  355. /package/{lib → dist}/widgets/forms/basic.d.ts +0 -0
  356. /package/{lib → dist}/widgets/forms/basic.d.ts.map +0 -0
  357. /package/{lib → dist}/widgets/forms/comment.d.ts +0 -0
  358. /package/{lib → dist}/widgets/forms/comment.d.ts.map +0 -0
  359. /package/{lib → dist}/widgets/forms/fieldFunction.d.ts +0 -0
  360. /package/{lib → dist}/widgets/forms/fieldFunction.d.ts.map +0 -0
  361. /package/{lib → dist}/widgets/forms/fieldParams.d.ts +0 -0
  362. /package/{lib → dist}/widgets/forms/fieldParams.d.ts.map +0 -0
  363. /package/{lib → dist}/widgets/forms/formStyle.d.ts +0 -0
  364. /package/{lib → dist}/widgets/forms/formStyle.d.ts.map +0 -0
  365. /package/{lib → dist}/widgets/widgetHelpers.d.ts +0 -0
package/lib/tabs.js DELETED
@@ -1,448 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof = require("@babel/runtime/helpers/typeof");
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.TabWidgetElement = void 0;
9
- exports.tabWidget = tabWidget;
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
14
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
16
- var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
17
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
18
- var _widgets = require("./widgets");
19
- var _utils = require("./utils");
20
- var style = _interopRequireWildcard(require("./style"));
21
- var _solidLogic = require("solid-logic");
22
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
23
- function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
24
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
25
- /**
26
- * @ignore
27
- */
28
- var ContainerElement = /*#__PURE__*/function (_HTMLElement) {
29
- function ContainerElement() {
30
- var _this;
31
- (0, _classCallCheck2["default"])(this, ContainerElement);
32
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
33
- args[_key] = arguments[_key];
34
- }
35
- _this = _callSuper(this, ContainerElement, [].concat(args));
36
- (0, _defineProperty2["default"])(_this, "asSettings", void 0);
37
- return _this;
38
- }
39
- (0, _inherits2["default"])(ContainerElement, _HTMLElement);
40
- return (0, _createClass2["default"])(ContainerElement);
41
- }(/*#__PURE__*/(0, _wrapNativeSuper2["default"])(HTMLElement));
42
- var TabWidgetElement = exports.TabWidgetElement = /*#__PURE__*/function (_HTMLElement2) {
43
- function TabWidgetElement() {
44
- var _this2;
45
- (0, _classCallCheck2["default"])(this, TabWidgetElement);
46
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
47
- args[_key2] = arguments[_key2];
48
- }
49
- _this2 = _callSuper(this, TabWidgetElement, [].concat(args));
50
- (0, _defineProperty2["default"])(_this2, "bodyContainer", void 0);
51
- (0, _defineProperty2["default"])(_this2, "refresh", void 0);
52
- (0, _defineProperty2["default"])(_this2, "tabContainer", void 0);
53
- return _this2;
54
- }
55
- (0, _inherits2["default"])(TabWidgetElement, _HTMLElement2);
56
- return (0, _createClass2["default"])(TabWidgetElement);
57
- }(/*#__PURE__*/(0, _wrapNativeSuper2["default"])(HTMLElement));
58
- /**
59
- * @ignore
60
- */
61
- var TabElement = /*#__PURE__*/function (_HTMLElement3) {
62
- function TabElement() {
63
- var _this3;
64
- (0, _classCallCheck2["default"])(this, TabElement);
65
- for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
66
- args[_key3] = arguments[_key3];
67
- }
68
- _this3 = _callSuper(this, TabElement, [].concat(args));
69
- (0, _defineProperty2["default"])(_this3, "bodyTR", void 0);
70
- (0, _defineProperty2["default"])(_this3, "subject", void 0);
71
- return _this3;
72
- }
73
- (0, _inherits2["default"])(TabElement, _HTMLElement3);
74
- return (0, _createClass2["default"])(TabElement);
75
- }(/*#__PURE__*/(0, _wrapNativeSuper2["default"])(HTMLElement));
76
- /**
77
- * Use this widget to generate tabs from triples set in the global store.
78
- *
79
- * [Here you can see examples of the tabs](https://solidos.github.io/solid-ui/examples/tabs/).
80
- *
81
- * It assumes that items to use for tabs will be in a collection by default,
82
- * e.g.:
83
- *
84
- * ```turtle
85
- * :subject :predicate ( :item1 :item2 ) .
86
- * ```
87
- *
88
- * You can override this by setting `ordered: false`, in which case it expects
89
- * unordered triples:
90
- *
91
- * ```turtle
92
- * :subject :predicate :item1, :item 2 .
93
- * ```
94
- *
95
- * Triples that are not ordered in collection are in principle not sorted,
96
- * which means that tabs could change order every time you render the widget.
97
- * But in this case the widget will try to sort it in order to keep it
98
- * consistent.
99
- *
100
- * In both of these cases you need to define options `subject` and `predicate`
101
- * to tell the widget which triples it should be looking for.
102
- *
103
- * Finally you can set items manually, using the `items` option, e.g.:
104
- *
105
- * ```javascript
106
- * {
107
- * items: [
108
- * namedNode('https://domain.tld/#item1'),
109
- * namedNode('https://domain.tld/#item2')
110
- * ]
111
- * }
112
- * ```
113
- *
114
- * When you set items manually you do not need to set `subject` and
115
- * `predicate`.
116
- *
117
- * In any case you probably want to set the renderMain option to specify
118
- * what should be rendered for the various items, e.g.:
119
- *
120
- * ```javascript
121
- * {
122
- * renderMain: (bodyMain, subject) => {
123
- * bodyMain.innerHTML = renderItem(subject)
124
- * }
125
- * }
126
- * ```
127
- *
128
- * **Note:** `renderItem` is a custom function that you need to define yourself.
129
- *
130
- * The option `renderTabSettings` allows you to render a custom view in the
131
- * body container that is shown when you hold the ALT key and click on a
132
- * tab. It works very much like the `renderMain` option:
133
- *
134
- * ```javascript
135
- * {
136
- * renderTabSettings: (bodyMain, subject) => {
137
- * bodyMain.innerHTML = renderTabSettings(subject)
138
- * }
139
- * }
140
- * ```
141
- *
142
- * **Note:** `renderTabSettings` is a custom function that you need to define
143
- * yourself.
144
- *
145
- * By default the widget will try to guess the label by using the
146
- * [[utils.label]] function. If you want to customize this yourself, you can
147
- * use the `renderTab` option:
148
- *
149
- * ```javascript
150
- * {
151
- * renderTab: (tabDiv, subject) => {
152
- * tabDiv.innerText = renderTabText(subject)
153
- * }
154
- * }
155
- * ```
156
- *
157
- * **Note:** `renderTabText` is a custom function you need to define yourself.
158
- *
159
- * The option renderTab is also important if you want to set which tab should
160
- * be selected once the widget is rendered. By default it will simply select
161
- * the first tab, but you can override by setting `dataset.name` on the tab
162
- * and referring to the same string in `selectedTab`:
163
- *
164
- * ```javascript
165
- * {
166
- * renderTab: (tabDiv, subject) => {
167
- * tabDiv.dataset.name = subject.uri
168
- * },
169
- * selectedTab: item2.uri
170
- * }
171
- * ```
172
- *
173
- * You can apply a color to use for tabs and border of the container by using
174
- * option `background-color`. This is #ddddcc by default.
175
- *
176
- * You can override the document object that the widget uses to generate DOM
177
- * elements by setting the option `dom`. This is encouraged to set if you
178
- * intend your functionality to be used in environments that don't provide
179
- * a global `document` object.
180
- *
181
- * If you want to render a close button next to the tabs you can set option
182
- * `onClose` which takes a callback function that is triggered when the
183
- * button is clicked:
184
- *
185
- * ```javascript
186
- * {
187
- * onClose: (event) => {
188
- * // do something that hides the widget altogether
189
- * }
190
- * }
191
- * ```
192
- *
193
- * The option `orientation` allows you to set which side the tabs should be
194
- * located: `'0'` = Top, `'1'` = Left, `'2'` = Bottom, `'3'` = Right
195
- *
196
- * If you don't want to render anything in the body container by default,
197
- * you can set the option `startEmpty` to `true`.
198
- *
199
- * @param options
200
- */
201
- var tabsDefaultBackgroundColor = '#ddddcc';
202
- function tabWidget(options) {
203
- var subject = options.subject;
204
- var dom = options.dom || document;
205
- var orientation = parseInt(options.orientation || '0');
206
- var backgroundColor = options.backgroundColor || tabsDefaultBackgroundColor;
207
- var flipped = orientation & 2;
208
- var vertical = orientation & 1;
209
- var onClose = options.onClose;
210
- var _getColors = getColors(backgroundColor),
211
- _getColors2 = (0, _slicedToArray2["default"])(_getColors, 2),
212
- selectedColor = _getColors2[0],
213
- color = _getColors2[1];
214
- var bodyMainStyle = "flex: 2; width: auto; height: 100%; border: 0.1em; border-style: solid; border-color: ".concat(selectedColor, "; padding: 1em;");
215
- var rootElement = dom.createElement('div'); // 20200117a
216
-
217
- rootElement.setAttribute('style', style.tabsRootElement);
218
- rootElement.style.flexDirection = (vertical ? 'row' : 'column') + (flipped ? '-reverse' : '');
219
- var navElement = rootElement.appendChild(dom.createElement('nav'));
220
- navElement.setAttribute('style', style.tabsNavElement);
221
- var mainElement = rootElement.appendChild(dom.createElement('main'));
222
- mainElement.setAttribute('style', style.tabsMainElement); // override tabbedtab.css
223
- var tabContainer = navElement.appendChild(dom.createElement('ul'));
224
- tabContainer.setAttribute('style', style.tabContainer);
225
- tabContainer.style.flexDirection = "".concat(vertical ? 'column' : 'row');
226
- var tabElement = 'li';
227
- var bodyContainer = mainElement;
228
- rootElement.tabContainer = tabContainer;
229
- rootElement.bodyContainer = bodyContainer;
230
- var corners = ['0.2em', '0.2em', '0', '0']; // top left, TR, BR, BL
231
- var cornersPrepped = corners.concat(corners).slice(orientation, orientation + 4);
232
- var cornersStyle = "border-radius: ".concat(cornersPrepped.join(' '), ";");
233
- var margins = ['0.3em', '0.3em', '0', '0.3em']; // top, right, bottom, left
234
- var marginsPrepped = margins.concat(margins).slice(orientation, orientation + 4);
235
- var marginsStyle = "margin: ".concat(marginsPrepped.join(' '), ";");
236
- var paddingStyle = "padding: ".concat(marginsPrepped.join(' '), ";");
237
- var tabStyle = cornersStyle + "position: relative; padding: 0.7em; max-width: 20em; color: ".concat(color, ";");
238
- var unselectedStyle = "".concat(tabStyle + marginsStyle, " opacity: 50%; background-color: ").concat(backgroundColor, ";");
239
- var selectedStyle = "".concat(tabStyle + marginsStyle, " background-color: ").concat(selectedColor, ";");
240
- var shownStyle = 'height: 100%; width: 100%;';
241
- var hiddenStyle = shownStyle + 'display: none;';
242
- rootElement.refresh = orderedSync;
243
- orderedSync();
244
- if (!options.startEmpty && tabContainer.children.length && options.selectedTab) {
245
- var selectedTab0 = Array.from(tabContainer.children) // Version left for compatibility with ??
246
- .map(function (tab) {
247
- return tab.firstChild;
248
- }).find(function (tab) {
249
- return tab.dataset.name === options.selectedTab;
250
- });
251
- var selectedTabURI = options.selectedTab.uri;
252
- var selectedTab1 = Array.from(tabContainer.children)
253
- // @ts-ignore
254
- .find(function (tab) {
255
- return tab.subject &&
256
- // @ts-ignore
257
- tab.subject.uri &&
258
- // @ts-ignore
259
- tab.subject.uri === selectedTabURI;
260
- });
261
- var tab = selectedTab1 || selectedTab0 || tabContainer.children[0];
262
- var clickMe = tab.firstChild;
263
- // @ts-ignore
264
- if (clickMe) clickMe.click();
265
- } else if (!options.startEmpty) {
266
- tabContainer.children[0].firstChild.click(); // Open first tab
267
- }
268
- return rootElement;
269
- function addCancelButton(tabContainer) {
270
- if (tabContainer.dataset.onCloseSet) {
271
- // @@ TODO: this is only here to make the browser tests work
272
- // Discussion at https://github.com/solidos/solid-ui/pull/110#issuecomment-527080663
273
- var existingCancelButton = tabContainer.querySelector('.unstyled');
274
- tabContainer.removeChild(existingCancelButton);
275
- }
276
- var extraTab = dom.createElement(tabElement);
277
- extraTab.classList.add('unstyled');
278
- var tabCancelButton = (0, _widgets.cancelButton)(dom, onClose);
279
- tabCancelButton.setAttribute('style', tabCancelButton.getAttribute('style') + paddingStyle);
280
- extraTab.appendChild(tabCancelButton);
281
- tabContainer.appendChild(extraTab);
282
- tabContainer.dataset.onCloseSet = 'true';
283
- }
284
- function getItems() {
285
- if (options.items) return options.items;
286
- if (options.ordered !== false) {
287
- // options.ordered defaults to true
288
- return _solidLogic.store.the(subject, options.predicate).elements;
289
- } else {
290
- return _solidLogic.store.each(subject, options.predicate);
291
- }
292
- }
293
- function makeNewSlot(item) {
294
- var ele = dom.createElement(tabElement);
295
- ele.setAttribute('style', unselectedStyle);
296
- ele.subject = item;
297
- var div = ele.appendChild(dom.createElement('button'));
298
- div.setAttribute('style', style.makeNewSlot);
299
- div.onclick = function () {
300
- resetTabStyle();
301
- resetBodyStyle();
302
- ele.setAttribute('style', selectedStyle);
303
- if (!ele.bodyTR) return;
304
- ele.bodyTR.setAttribute('style', shownStyle);
305
- var bodyMain = getOrCreateContainerElement(ele);
306
- if (options.renderMain && ele.subject && bodyMain.asSettings !== false) {
307
- bodyMain.innerHTML = 'loading item ...' + item;
308
- options.renderMain(bodyMain, ele.subject);
309
- bodyMain.asSettings = false;
310
- }
311
- };
312
- if (options.renderTabSettings && ele.subject) {
313
- var ellipsis = dom.createElement('button');
314
- ellipsis.textContent = '...';
315
- ellipsis.setAttribute('style', style.ellipsis);
316
- ellipsis.onclick = function () {
317
- resetTabStyle();
318
- resetBodyStyle();
319
- ele.setAttribute('style', selectedStyle);
320
- if (!ele.bodyTR) return;
321
- ele.bodyTR.setAttribute('style', shownStyle);
322
- var bodyMain = getOrCreateContainerElement(ele);
323
- if (options.renderTabSettings && ele.subject && bodyMain.asSettings !== true) {
324
- bodyMain.innerHTML = 'loading settings ...' + item;
325
- options.renderTabSettings(bodyMain, ele.subject);
326
- bodyMain.asSettings = true;
327
- }
328
- };
329
- ele.appendChild(ellipsis);
330
- }
331
- if (options.renderTab) {
332
- options.renderTab(div, item);
333
- } else {
334
- div.innerHTML = (0, _utils.label)(item);
335
- }
336
- return ele;
337
- function getOrCreateContainerElement(ele) {
338
- var _ele$bodyTR;
339
- var bodyMain = (_ele$bodyTR = ele.bodyTR) === null || _ele$bodyTR === void 0 ? void 0 : _ele$bodyTR.children[0];
340
- if (bodyMain) return bodyMain;
341
- var newBodyMain = ele.bodyTR.appendChild(dom.createElement('main'));
342
- newBodyMain.setAttribute('style', bodyMainStyle);
343
- return newBodyMain;
344
- }
345
- }
346
-
347
- // @@ Use common one from utils?
348
- function orderedSync() {
349
- var items = getItems();
350
- var slot, i, j, left, right;
351
- var differ = false;
352
- // Find how many match at each end
353
- for (left = 0; left < tabContainer.children.length; left++) {
354
- slot = tabContainer.children[left];
355
- if (left >= items.length || slot.subject && !slot.subject.sameTerm(items[left])) {
356
- differ = true;
357
- break;
358
- }
359
- }
360
- if (!differ && items.length === tabContainer.children.length) {
361
- return; // The two just match in order: a case to optimize for
362
- }
363
- for (right = tabContainer.children.length - 1; right >= 0; right--) {
364
- slot = tabContainer.children[right];
365
- j = right - tabContainer.children.length + items.length;
366
- if (slot.subject && !slot.subject.sameTerm(items[j])) {
367
- break;
368
- }
369
- }
370
- // The elements left ... right in tabContainer.children do not match
371
- var insertables = items.slice(left, right - tabContainer.children.length + items.length + 1);
372
- while (right >= left) {
373
- // remove extra
374
- tabContainer.removeChild(tabContainer.children[left]);
375
- bodyContainer.removeChild(bodyContainer.children[left]);
376
- right -= 1;
377
- }
378
- for (i = 0; i < insertables.length; i++) {
379
- var newSlot = makeNewSlot(insertables[i]);
380
- var newBodyDiv = dom.createElement('div');
381
- newSlot.bodyTR = newBodyDiv;
382
- if (left === tabContainer.children.length) {
383
- // None left of original on right
384
- tabContainer.appendChild(newSlot);
385
- bodyContainer.appendChild(newBodyDiv);
386
- } else {
387
- tabContainer.insertBefore(newSlot, tabContainer.children[left + i]);
388
- bodyContainer.insertBefore(newBodyDiv, bodyContainer.children[left + i]);
389
- }
390
- }
391
- if (onClose) {
392
- addCancelButton(tabContainer);
393
- }
394
- }
395
- function resetTabStyle() {
396
- for (var i = 0; i < tabContainer.children.length; i++) {
397
- var _tab = tabContainer.children[i];
398
- if (_tab.classList.contains('unstyled')) {
399
- continue;
400
- } else {
401
- _tab.setAttribute('style', unselectedStyle);
402
- }
403
- }
404
- }
405
- function resetBodyStyle() {
406
- for (var i = 0; i < bodyContainer.children.length; i++) {
407
- bodyContainer.children[i].setAttribute('style', hiddenStyle);
408
- }
409
- }
410
- }
411
-
412
- /**
413
- * @internal
414
- */
415
- function getColors(backgroundColor) {
416
- return isLight(backgroundColor) ? [colorBlend(backgroundColor, '#ffffff', 0.3), '#000000'] : [colorBlend(backgroundColor, '#000000', 0.3), '#ffffff'];
417
- }
418
-
419
- /**
420
- * @internal
421
- */
422
- function colorBlend(a, b, mix) {
423
- var ca, cb, res;
424
- var str = '#';
425
- var hex = '0123456789abcdef';
426
- for (var i = 0; i < 3; i++) {
427
- ca = parseInt(a.slice(i * 2 + 1, i * 2 + 3), 16);
428
- cb = parseInt(b.slice(i * 2 + 1, i * 2 + 3), 16);
429
- res = ca * (1.0 - mix) + cb * mix; // @@@ rounding
430
- var res2 = parseInt(('' + res).split('.')[0]); // @@ ugh
431
- var h = parseInt(('' + res2 / 16).split('.')[0]); // @@ ugh
432
- var l = parseInt(('' + res2 % 16).split('.')[0]); // @@ ugh
433
- str += hex[h] + hex[l];
434
- }
435
- return str;
436
- }
437
-
438
- /**
439
- * @internal
440
- */
441
- function isLight(x) {
442
- var total = 0;
443
- for (var i = 0; i < 3; i++) {
444
- total += parseInt(x.slice(i * 2 + 1, i * 2 + 3), 16);
445
- }
446
- return total > 128 * 3;
447
- }
448
- //# sourceMappingURL=tabs.js.map
package/lib/tabs.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"tabs.js","names":["_widgets","require","_utils","style","_interopRequireWildcard","_solidLogic","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ContainerElement","_HTMLElement","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","concat","_defineProperty2","_inherits2","_createClass2","_wrapNativeSuper2","HTMLElement","TabWidgetElement","exports","_HTMLElement2","_this2","_len2","_key2","TabElement","_HTMLElement3","_this3","_len3","_key3","tabsDefaultBackgroundColor","tabWidget","options","subject","dom","document","orientation","parseInt","backgroundColor","flipped","vertical","onClose","_getColors","getColors","_getColors2","_slicedToArray2","selectedColor","color","bodyMainStyle","rootElement","createElement","setAttribute","tabsRootElement","flexDirection","navElement","appendChild","tabsNavElement","mainElement","tabsMainElement","tabContainer","tabElement","bodyContainer","corners","cornersPrepped","slice","cornersStyle","join","margins","marginsPrepped","marginsStyle","paddingStyle","tabStyle","unselectedStyle","selectedStyle","shownStyle","hiddenStyle","refresh","orderedSync","startEmpty","children","selectedTab","selectedTab0","from","map","tab","firstChild","find","dataset","name","selectedTabURI","uri","selectedTab1","clickMe","click","addCancelButton","onCloseSet","existingCancelButton","querySelector","removeChild","extraTab","classList","add","tabCancelButton","cancelButton","getAttribute","getItems","items","ordered","store","the","predicate","elements","each","makeNewSlot","item","ele","div","onclick","resetTabStyle","resetBodyStyle","bodyTR","bodyMain","getOrCreateContainerElement","renderMain","asSettings","innerHTML","renderTabSettings","ellipsis","textContent","renderTab","label","_ele$bodyTR","newBodyMain","slot","j","left","right","differ","sameTerm","insertables","newSlot","newBodyDiv","insertBefore","contains","isLight","colorBlend","a","b","mix","ca","cb","res","str","hex","res2","split","h","l","x","total"],"sources":["../src/tabs.ts"],"sourcesContent":["import { cancelButton } from './widgets'\nimport { label } from './utils'\nimport { NamedNode } from 'rdflib'\nimport * as style from './style'\nimport { store } from 'solid-logic'\n\n/**\n * @ignore\n */\nclass ContainerElement extends HTMLElement {\n asSettings?: boolean\n}\n\ntype TabWidgetOptions = {\n backgroundColor?: string;\n dom?: HTMLDocument;\n items?: Array<NamedNode>;\n onClose?: (event: Event) => void;\n ordered?: boolean;\n orientation?: '0' | '1' | '2' | '3';\n predicate?: NamedNode;\n renderMain?: (bodyMain: HTMLElement, subject: NamedNode) => void;\n renderTab?: (tabDiv: HTMLButtonElement, subject: NamedNode) => void;\n renderTabSettings?: (bodyMain: ContainerElement, subject: NamedNode) => void;\n selectedTab?: NamedNode;\n startEmpty?: boolean;\n subject?: NamedNode;\n}\n\nexport class TabWidgetElement extends HTMLElement {\n bodyContainer?: HTMLElement\n refresh?: () => void\n tabContainer?: HTMLElement\n}\n\n/**\n * @ignore\n */\nclass TabElement extends HTMLElement {\n bodyTR?: HTMLElement\n subject?: NamedNode\n}\n\n/**\n * Use this widget to generate tabs from triples set in the global store.\n *\n * [Here you can see examples of the tabs](https://solidos.github.io/solid-ui/examples/tabs/).\n *\n * It assumes that items to use for tabs will be in a collection by default,\n * e.g.:\n *\n * ```turtle\n * :subject :predicate ( :item1 :item2 ) .\n * ```\n *\n * You can override this by setting `ordered: false`, in which case it expects\n * unordered triples:\n *\n * ```turtle\n * :subject :predicate :item1, :item 2 .\n * ```\n *\n * Triples that are not ordered in collection are in principle not sorted,\n * which means that tabs could change order every time you render the widget.\n * But in this case the widget will try to sort it in order to keep it\n * consistent.\n *\n * In both of these cases you need to define options `subject` and `predicate`\n * to tell the widget which triples it should be looking for.\n *\n * Finally you can set items manually, using the `items` option, e.g.:\n *\n * ```javascript\n * {\n * items: [\n * namedNode('https://domain.tld/#item1'),\n * namedNode('https://domain.tld/#item2')\n * ]\n * }\n * ```\n *\n * When you set items manually you do not need to set `subject` and\n * `predicate`.\n *\n * In any case you probably want to set the renderMain option to specify\n * what should be rendered for the various items, e.g.:\n *\n * ```javascript\n * {\n * renderMain: (bodyMain, subject) => {\n * bodyMain.innerHTML = renderItem(subject)\n * }\n * }\n * ```\n *\n * **Note:** `renderItem` is a custom function that you need to define yourself.\n *\n * The option `renderTabSettings` allows you to render a custom view in the\n * body container that is shown when you hold the ALT key and click on a\n * tab. It works very much like the `renderMain` option:\n *\n * ```javascript\n * {\n * renderTabSettings: (bodyMain, subject) => {\n * bodyMain.innerHTML = renderTabSettings(subject)\n * }\n * }\n * ```\n *\n * **Note:** `renderTabSettings` is a custom function that you need to define\n * yourself.\n *\n * By default the widget will try to guess the label by using the\n * [[utils.label]] function. If you want to customize this yourself, you can\n * use the `renderTab` option:\n *\n * ```javascript\n * {\n * renderTab: (tabDiv, subject) => {\n * tabDiv.innerText = renderTabText(subject)\n * }\n * }\n * ```\n *\n * **Note:** `renderTabText` is a custom function you need to define yourself.\n *\n * The option renderTab is also important if you want to set which tab should\n * be selected once the widget is rendered. By default it will simply select\n * the first tab, but you can override by setting `dataset.name` on the tab\n * and referring to the same string in `selectedTab`:\n *\n * ```javascript\n * {\n * renderTab: (tabDiv, subject) => {\n * tabDiv.dataset.name = subject.uri\n * },\n * selectedTab: item2.uri\n * }\n * ```\n *\n * You can apply a color to use for tabs and border of the container by using\n * option `background-color`. This is #ddddcc by default.\n *\n * You can override the document object that the widget uses to generate DOM\n * elements by setting the option `dom`. This is encouraged to set if you\n * intend your functionality to be used in environments that don't provide\n * a global `document` object.\n *\n * If you want to render a close button next to the tabs you can set option\n * `onClose` which takes a callback function that is triggered when the\n * button is clicked:\n *\n * ```javascript\n * {\n * onClose: (event) => {\n * // do something that hides the widget altogether\n * }\n * }\n * ```\n *\n * The option `orientation` allows you to set which side the tabs should be\n * located: `'0'` = Top, `'1'` = Left, `'2'` = Bottom, `'3'` = Right\n *\n * If you don't want to render anything in the body container by default,\n * you can set the option `startEmpty` to `true`.\n *\n * @param options\n */\nconst tabsDefaultBackgroundColor = '#ddddcc'\n\nexport function tabWidget (options: TabWidgetOptions) {\n const subject = options.subject\n const dom = options.dom || document\n const orientation = parseInt(options.orientation || '0')\n const backgroundColor = options.backgroundColor || tabsDefaultBackgroundColor\n const flipped = orientation & 2\n const vertical = orientation & 1\n const onClose = options.onClose\n\n const [selectedColor, color] = getColors(backgroundColor)\n const bodyMainStyle = `flex: 2; width: auto; height: 100%; border: 0.1em; border-style: solid; border-color: ${selectedColor}; padding: 1em;`\n const rootElement: TabWidgetElement = dom.createElement('div') // 20200117a\n\n rootElement.setAttribute('style', style.tabsRootElement)\n rootElement.style.flexDirection = (vertical ? 'row' : 'column') + (flipped ? '-reverse' : '')\n\n const navElement = rootElement.appendChild(dom.createElement('nav'))\n navElement.setAttribute('style', style.tabsNavElement)\n\n const mainElement = rootElement.appendChild(dom.createElement('main'))\n\n mainElement.setAttribute('style', style.tabsMainElement) // override tabbedtab.css\n const tabContainer = navElement.appendChild(dom.createElement('ul'))\n tabContainer.setAttribute('style', style.tabContainer)\n tabContainer.style.flexDirection = `${vertical ? 'column' : 'row'}`\n\n const tabElement = 'li'\n\n const bodyContainer = mainElement\n rootElement.tabContainer = tabContainer\n rootElement.bodyContainer = bodyContainer\n\n const corners = ['0.2em', '0.2em', '0', '0'] // top left, TR, BR, BL\n const cornersPrepped = corners.concat(corners).slice(orientation, orientation + 4)\n const cornersStyle = `border-radius: ${cornersPrepped.join(' ')};`\n\n const margins = ['0.3em', '0.3em', '0', '0.3em'] // top, right, bottom, left\n const marginsPrepped = margins.concat(margins).slice(orientation, orientation + 4)\n const marginsStyle = `margin: ${marginsPrepped.join(' ')};`\n\n const paddingStyle = `padding: ${marginsPrepped.join(' ')};`\n\n const tabStyle = cornersStyle + `position: relative; padding: 0.7em; max-width: 20em; color: ${color};`\n const unselectedStyle = `${\n tabStyle + marginsStyle\n } opacity: 50%; background-color: ${backgroundColor};`\n const selectedStyle = `${tabStyle + marginsStyle} background-color: ${selectedColor};`\n const shownStyle = 'height: 100%; width: 100%;'\n const hiddenStyle = shownStyle + 'display: none;'\n rootElement.refresh = orderedSync\n orderedSync()\n\n if (!options.startEmpty && tabContainer.children.length && options.selectedTab) {\n const selectedTab0 = Array.from(tabContainer.children) // Version left for compatibility with ??\n .map((tab) => tab.firstChild as HTMLElement)\n .find((tab) => tab.dataset.name === options.selectedTab)\n\n const selectedTabURI = options.selectedTab.uri\n const selectedTab1 = Array.from(tabContainer.children)\n // @ts-ignore\n .find(\n (tab) =>\n (tab as TabElement).subject &&\n // @ts-ignore\n (tab as TabElement).subject.uri &&\n // @ts-ignore\n (tab as TabElement).subject.uri === selectedTabURI\n )\n\n const tab = selectedTab1 || selectedTab0 || (tabContainer.children[0] as HTMLButtonElement)\n const clickMe = tab.firstChild\n // @ts-ignore\n if (clickMe) clickMe.click()\n } else if (!options.startEmpty) {\n (tabContainer.children[0].firstChild as HTMLButtonElement).click() // Open first tab\n }\n return rootElement\n\n function addCancelButton (tabContainer) {\n if (tabContainer.dataset.onCloseSet) {\n // @@ TODO: this is only here to make the browser tests work\n // Discussion at https://github.com/solidos/solid-ui/pull/110#issuecomment-527080663\n const existingCancelButton = tabContainer.querySelector('.unstyled')\n tabContainer.removeChild(existingCancelButton)\n }\n const extraTab = dom.createElement(tabElement)\n extraTab.classList.add('unstyled')\n const tabCancelButton = cancelButton(dom, onClose)\n tabCancelButton.setAttribute('style', tabCancelButton.getAttribute('style') + paddingStyle)\n extraTab.appendChild(tabCancelButton)\n tabContainer.appendChild(extraTab)\n tabContainer.dataset.onCloseSet = 'true'\n }\n\n function getItems (): Array<NamedNode> {\n if (options.items) return options.items\n if (options.ordered !== false) {\n // options.ordered defaults to true\n return (store.the(subject, options.predicate) as any).elements\n } else {\n return store.each(subject, options.predicate) as any\n }\n }\n\n function makeNewSlot (item: NamedNode) {\n const ele = dom.createElement(tabElement) as TabElement\n ele.setAttribute('style', unselectedStyle)\n ele.subject = item\n const div = ele.appendChild(dom.createElement('button'))\n div.setAttribute('style', style.makeNewSlot)\n\n div.onclick = function () {\n resetTabStyle()\n resetBodyStyle()\n ele.setAttribute('style', selectedStyle)\n if (!ele.bodyTR) return\n ele.bodyTR.setAttribute('style', shownStyle)\n const bodyMain = getOrCreateContainerElement(ele)\n if (options.renderMain && ele.subject && bodyMain.asSettings !== false) {\n bodyMain.innerHTML = 'loading item ...' + item\n options.renderMain(bodyMain, ele.subject)\n bodyMain.asSettings = false\n }\n }\n\n if (options.renderTabSettings && ele.subject) {\n const ellipsis = dom.createElement('button')\n ellipsis.textContent = '...'\n ellipsis.setAttribute('style', style.ellipsis)\n\n ellipsis.onclick = function () {\n resetTabStyle()\n resetBodyStyle()\n ele.setAttribute('style', selectedStyle)\n if (!ele.bodyTR) return\n ele.bodyTR.setAttribute('style', shownStyle)\n const bodyMain = getOrCreateContainerElement(ele)\n if (options.renderTabSettings && ele.subject && bodyMain.asSettings !== true) {\n bodyMain.innerHTML = 'loading settings ...' + item\n options.renderTabSettings(bodyMain, ele.subject)\n bodyMain.asSettings = true\n }\n }\n ele.appendChild(ellipsis)\n }\n\n if (options.renderTab) {\n options.renderTab(div, item)\n } else {\n div.innerHTML = label(item)\n }\n return ele\n\n function getOrCreateContainerElement (ele: TabElement): ContainerElement {\n const bodyMain = ele.bodyTR?.children[0] as ContainerElement\n if (bodyMain) return bodyMain\n const newBodyMain = ele.bodyTR!.appendChild(dom.createElement('main'))\n newBodyMain.setAttribute('style', bodyMainStyle)\n return newBodyMain\n }\n }\n\n // @@ Use common one from utils?\n function orderedSync () {\n const items = getItems()\n let slot: TabElement, i, j, left, right\n let differ = false\n // Find how many match at each end\n for (left = 0; left < tabContainer.children.length; left++) {\n slot = tabContainer.children[left] as TabElement\n if (left >= items.length || (slot.subject && !slot.subject.sameTerm(items[left]))) {\n differ = true\n break\n }\n }\n if (!differ && items.length === tabContainer.children.length) {\n return // The two just match in order: a case to optimize for\n }\n for (right = tabContainer.children.length - 1; right >= 0; right--) {\n slot = tabContainer.children[right] as TabElement\n j = right - tabContainer.children.length + items.length\n if (slot.subject && !slot.subject.sameTerm(items[j])) {\n break\n }\n }\n // The elements left ... right in tabContainer.children do not match\n const insertables = items.slice(left, right - tabContainer.children.length + items.length + 1)\n while (right >= left) {\n // remove extra\n tabContainer.removeChild(tabContainer.children[left])\n bodyContainer.removeChild(bodyContainer.children[left])\n right -= 1\n }\n for (i = 0; i < insertables.length; i++) {\n const newSlot = makeNewSlot(insertables[i])\n const newBodyDiv = dom.createElement('div')\n newSlot.bodyTR = newBodyDiv\n if (left === tabContainer.children.length) {\n // None left of original on right\n tabContainer.appendChild(newSlot)\n bodyContainer.appendChild(newBodyDiv)\n } else {\n tabContainer.insertBefore(newSlot, tabContainer.children[left + i])\n bodyContainer.insertBefore(newBodyDiv, bodyContainer.children[left + i])\n }\n }\n if (onClose) {\n addCancelButton(tabContainer)\n }\n }\n\n function resetTabStyle () {\n for (let i = 0; i < tabContainer.children.length; i++) {\n const tab = tabContainer.children[i]\n if (tab.classList.contains('unstyled')) {\n continue\n } else {\n tab.setAttribute('style', unselectedStyle)\n }\n }\n }\n\n function resetBodyStyle () {\n for (let i = 0; i < bodyContainer.children.length; i++) {\n bodyContainer.children[i].setAttribute('style', hiddenStyle)\n }\n }\n}\n\n/**\n * @internal\n */\nfunction getColors (backgroundColor: string): [string, string] {\n return isLight(backgroundColor)\n ? [colorBlend(backgroundColor, '#ffffff', 0.3), '#000000']\n : [colorBlend(backgroundColor, '#000000', 0.3), '#ffffff']\n}\n\n/**\n * @internal\n */\nfunction colorBlend (a: string, b: string, mix: number): string {\n let ca, cb, res\n let str = '#'\n const hex = '0123456789abcdef'\n for (let i = 0; i < 3; i++) {\n ca = parseInt(a.slice(i * 2 + 1, i * 2 + 3), 16)\n cb = parseInt(b.slice(i * 2 + 1, i * 2 + 3), 16)\n res = ca * (1.0 - mix) + cb * mix // @@@ rounding\n const res2 = parseInt(('' + res).split('.')[0]) // @@ ugh\n const h = parseInt(('' + res2 / 16).split('.')[0]) // @@ ugh\n const l = parseInt(('' + (res2 % 16)).split('.')[0]) // @@ ugh\n str += hex[h] + hex[l]\n }\n return str\n}\n\n/**\n * @internal\n */\nfunction isLight (x: string): boolean {\n let total = 0\n for (let i = 0; i < 3; i++) {\n total += parseInt(x.slice(i * 2 + 1, i * 2 + 3), 16)\n }\n return total > 128 * 3\n}\n"],"mappings":"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AAAD,WAAA;IAAA,IAAAE,MAAA;IAAA,IAAArB,gBAAA,mBAAAmB,UAAA;IAAA,SAAAG,KAAA,GAAApB,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAiB,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAAAnB,IAAA,CAAAmB,KAAA,IAAArB,SAAA,CAAAqB,KAAA;IAAA;IAAAF,MAAA,GAAAnC,UAAA,OAAAiC,UAAA,KAAAZ,MAAA,CAAAH,IAAA;IAAA,IAAAI,gBAAA,aAAAa,MAAA;IAAA,IAAAb,gBAAA,aAAAa,MAAA;IAAA,OAAAA,MAAA;EAAA;EAAA,IAAAZ,UAAA,aAAAU,UAAA,EAAAC,aAAA;EAAA,WAAAV,aAAA,aAAAS,UAAA;AAAA,mBAAAR,iBAAA,aAASC,WAAW;AAKpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMY,0BAA0B,GAAG,SAAS;AAErC,SAASC,SAASA,CAAEC,OAAyB,EAAE;EACpD,IAAMC,OAAO,GAAGD,OAAO,CAACC,OAAO;EAC/B,IAAMC,GAAG,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","ignoreList":[]}
package/lib/typings.d.js DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- //# sourceMappingURL=typings.d.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"typings.d.js","names":[],"sources":["../src/typings.d.ts"],"sourcesContent":["declare module '*.sparql' {\n const content: string\n export default content\n}\n"],"mappings":"","ignoreList":[]}