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
@@ -0,0 +1,507 @@
1
+ "use strict";
2
+ /* Logic to access public data stores
3
+ *
4
+ * including filtering resut by natural language etc
5
+ * See https://solidos.solidcommunity.net/public/2021/01%20Building%20Solid%20Apps%20which%20use%20Public%20Data.html
6
+ */
7
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
+ if (k2 === undefined) k2 = k;
9
+ var desc = Object.getOwnPropertyDescriptor(m, k);
10
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
+ desc = { enumerable: true, get: function() { return m[k]; } };
12
+ }
13
+ Object.defineProperty(o, k2, desc);
14
+ }) : (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ o[k2] = m[k];
17
+ }));
18
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
19
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
20
+ }) : function(o, v) {
21
+ o["default"] = v;
22
+ });
23
+ var __importStar = (this && this.__importStar) || (function () {
24
+ var ownKeys = function(o) {
25
+ ownKeys = Object.getOwnPropertyNames || function (o) {
26
+ var ar = [];
27
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
28
+ return ar;
29
+ };
30
+ return ownKeys(o);
31
+ };
32
+ return function (mod) {
33
+ if (mod && mod.__esModule) return mod;
34
+ var result = {};
35
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
36
+ __setModuleDefault(result, mod);
37
+ return result;
38
+ };
39
+ })();
40
+ var __importDefault = (this && this.__importDefault) || function (mod) {
41
+ return (mod && mod.__esModule) ? mod : { "default": mod };
42
+ };
43
+ Object.defineProperty(exports, "__esModule", { value: true });
44
+ exports.variableNameToPredicateMap = exports.wikidataIncomingClassMap = exports.wikidataParameters = exports.wikidataOutgoingClassMap = exports.dbPediaTypeMap = exports.dbpediaParameters = exports.escoParameters = exports.fetcherOptionsJsonPublicData = exports.instituteDetailsWikidataQuery = exports.wikidataClasses = exports.AUTOCOMPLETE_LIMIT = void 0;
45
+ exports.bindingToTerm = bindingToTerm;
46
+ exports.loadFromBindings = loadFromBindings;
47
+ exports.ESCOResultToBindings = ESCOResultToBindings;
48
+ exports.queryESCODataByName = queryESCODataByName;
49
+ exports.queryPublicDataByName = queryPublicDataByName;
50
+ exports.queryPublicDataSelect = queryPublicDataSelect;
51
+ exports.queryPublicDataConstruct = queryPublicDataConstruct;
52
+ exports.loadPublicDataThing = loadPublicDataThing;
53
+ exports.getWikidataDetails = getWikidataDetails;
54
+ exports.getWikidataDetailsOld = getWikidataDetailsOld;
55
+ exports.getWikidataLocation = getWikidataLocation;
56
+ exports.getDbpediaDetails = getDbpediaDetails;
57
+ const rdflib_1 = require("rdflib");
58
+ const solid_logic_1 = require("solid-logic");
59
+ const debug = __importStar(require("../../../debug"));
60
+ const ns_1 = __importDefault(require("../../../ns"));
61
+ const language_1 = require("./language");
62
+ exports.AUTOCOMPLETE_LIMIT = 200; // How many to get from server
63
+ // With 3000 we could exceed the wikidata timeout
64
+ const subjectRegexp = /\$\(subject\)/g;
65
+ // Schema.org seems to suggest NGOs are non-profit and Corporaions are for-profit
66
+ // but doesn't have explicit classes
67
+ exports.wikidataClasses = {
68
+ Corporation: 'http://www.wikidata.org/entity/Q6881511', // Enterprise is for-profit
69
+ EducationalOrganization: 'http://www.wikidata.org/entity/Q178706', // insitution
70
+ GovernmentOrganization: 'http://www.wikidata.org/entity/Q327333', // government agency
71
+ MedicalOrganization: 'http://www.wikidata.org/entity/Q4287745',
72
+ MusicGroup: 'http://www.wikidata.org/entity/Q32178211', // music organization
73
+ NGO: 'http://www.wikidata.org/entity/Q163740', // nonprofit organization @@
74
+ Occupation: 'http://www.wikidata.org/entity/Q28640', // Profession
75
+ // Organization: 'http://www.wikidata.org/entity/Q43229',
76
+ Project: 'http://www.wikidata.org/entity/Q170584',
77
+ ResearchOrganization: 'http://www.wikidata.org/entity/Q31855',
78
+ SportsOrganization: 'http://www.wikidata.org/entity/Q4438121'
79
+ };
80
+ exports.instituteDetailsWikidataQuery = `prefix vcard: <http://www.w3.org/2006/vcard/ns#>
81
+ CONSTRUCT
82
+ { wd:Q49108 vcard:fn ?itemLabel.
83
+ wd:Q49108 rdf:type ?klass. ?klass rdfs:label ?klassLabel; rdfs:comment ?klassDescription .
84
+ wd:Q49108 schema:logo ?logo;
85
+ schema:image ?image;
86
+ schema:logo ?sealImage;
87
+ schema:subOrganization ?subsidiary .
88
+ ?subsidiary rdfs:label ?subsidiaryLabel .
89
+ ?supersidiary schema:subOrganization wd:Q49108 .
90
+ ?supersidiary rdfs:label ?supersidiaryLabel .
91
+ wd:Q49108 schema:location ?location .
92
+ ?location schema:elevation ?elevation .
93
+ ?location wdt:P131 ?region . ?region rdfs:label ?regionLabel .
94
+ ?location wdt:P625 ?coordinates .
95
+ ?location schema:country ?country . ?country rdfs:label ?countryLabel .
96
+ }
97
+ WHERE
98
+ { optional {wd:Q49108 rdfs:label ?itemLabel} .
99
+ optional {wd:Q49108 wdt:P154 ?logo .}
100
+ optional {wd:Q49108 wdt:P31 ?klass .}
101
+ optional {wd:Q49108 wdt:P158 ?sealImage .}
102
+ optional {wd:Q49108 wdt:P18 ?image .}
103
+
104
+ optional { wd:Q49108 wdt:P355 ?subsidiary . }
105
+ optional { ?supersidiary wdt:P355 wd:Q49108. }
106
+
107
+ optional { wd:Q49108 wdt:P276 ?location .
108
+
109
+ optional { ?location schema:eleveation ?elevation }
110
+ optional { ?location wdt:P131 ?region }
111
+ optional { ?location wdt:P625 ?coordinates }
112
+ optional { ?location wdt:P17 ?country }
113
+ }
114
+ SERVICE wikibase:label { bd:serviceParam wikibase:language "fr,en,de,it". }
115
+ }`;
116
+ exports.fetcherOptionsJsonPublicData = {
117
+ credentials: 'omit', // try to avoid CORS problems. Data is public so no auth
118
+ headers: new Headers({ Accept: 'application/json' })
119
+ };
120
+ exports.escoParameters = {
121
+ label: 'ESCO',
122
+ logo: solid_logic_1.store.sym('https://ec.europa.eu/esco/portal/static_resource2/images/logo/logo_en.gif'),
123
+ searchByNameURI: 'https://ec.europa.eu/esco/api/search?language=$(language)&type=occupation&text=$(name)'
124
+ // endpoint: undefined
125
+ // returnFormat: 'ESCO',
126
+ // targetClass: {}
127
+ };
128
+ exports.dbpediaParameters = {
129
+ label: 'DBPedia',
130
+ logo: solid_logic_1.store.sym('https://upload.wikimedia.org/wikipedia/commons/thumb/7/73/DBpediaLogo.svg/263px-DBpediaLogo.svg.png'),
131
+ searchByNameQuery: `select distinct ?subject, ?name where {
132
+ ?subject a $(targetClass); rdfs:label ?name
133
+ FILTER regex(?name, "$(name)", "i")
134
+ } LIMIT $(limit)`,
135
+ endpoint: 'https://dbpedia.org/sparql/'
136
+ };
137
+ exports.dbPediaTypeMap = { AcademicInsitution: 'http://umbel.org/umbel/rc/EducationalOrganization' };
138
+ exports.wikidataOutgoingClassMap = {
139
+ AcademicInsitution: 'http://www.wikidata.org/entity/Q4671277',
140
+ Enterprise: 'http://www.wikidata.org/entity/Q6881511',
141
+ Business: 'http://www.wikidata.org/entity/Q4830453',
142
+ NGO: 'http://www.wikidata.org/entity/Q79913',
143
+ CharitableOrganization: 'http://www.wikidata.org/entity/Q708676',
144
+ Insitute: 'http://www.wikidata.org/entity/Q1664720'
145
+ };
146
+ exports.wikidataParameters = {
147
+ label: 'WikiData',
148
+ limit: 3000, // Need a high one as very many items, and many languages
149
+ logo: solid_logic_1.store.sym('https://www.wikimedia.org/static/images/project-logos/wikidatawiki.png'),
150
+ endpoint: 'https://query.wikidata.org/sparql',
151
+ searchByNameQuery: `SELECT ?subject ?name
152
+ WHERE {
153
+ ?klass wdt:P279* $(targetClass) .
154
+ ?subject wdt:P31 ?klass .
155
+ ?subject rdfs:label ?name.
156
+ FILTER regex(?name, "$(name)", "i")
157
+ } LIMIT $(limit) `, // was SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en" }
158
+ insitituteDetailsQuery: `CONSTRUCT
159
+ { wd:Q49108 schema:name ?itemLabel;
160
+ schema:logo ?logo;
161
+ schema:logo ?sealImage;
162
+ schema:subOrganization ?subsidiary .
163
+ ?subsidiary schema:name ?subsidiaryLabel .
164
+ }
165
+ WHERE
166
+ {
167
+ wd:Q49108 # rdfs:label ?itemLabel ;
168
+ wdt:P154 ?logo;
169
+ wdt:P158 ?sealImage ;
170
+ wdt:P355 ?subsidiary .
171
+ # ?subsidiary rdfs:label ?subsidiaryLabel .
172
+
173
+ SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE], fr". }
174
+ }`
175
+ };
176
+ exports.wikidataIncomingClassMap = {
177
+ 'http://www.wikidata.org/entity/Q15936437': ns_1.default.schema('CollegeOrUniversity'), // research university
178
+ 'http://www.wikidata.org/entity/Q1664720': ns_1.default.schema('EducationalOrganization'), // insitute @@
179
+ 'http://www.wikidata.org/entity/Q43229': ns_1.default.schema('Organization'), // research university
180
+ 'http://www.wikidata.org/entity/Q3918': ns_1.default.schema('CollegeOrUniversity'), // university
181
+ 'http://www.wikidata.org/entity/Q170584': ns_1.default.schema('Project'), // university
182
+ 'http://www.wikidata.org/entity/Q327333': ns_1.default.schema('GovernmentOrganization'), // govt agency
183
+ 'http://www.wikidata.org/entity/Q2221906': ns_1.default.schema('Place'), // geographic location
184
+ 'http://www.wikidata.org/entity/Q167037': ns_1.default.schema('Corporation') // Corporation
185
+ };
186
+ exports.variableNameToPredicateMap = {
187
+ // wikidata:
188
+ targetClass: ns_1.default.rdf('type'),
189
+ // logo: ns.schema('logo'),
190
+ sealImage: ns_1.default.schema('logo'),
191
+ // image: ns.schema('image'), defaults to shema
192
+ shortName: ns_1.default.foaf('nick'),
193
+ subsidiary: ns_1.default.schema('subOrganization'),
194
+ // dbpedia - :
195
+ city: ns_1.default.vcard('locality'),
196
+ state: ns_1.default.vcard('region'),
197
+ country: ns_1.default.vcard('country-name'),
198
+ homepage: ns_1.default.foaf('homepage'),
199
+ lat: ns_1.default.schema('latitude'),
200
+ long: ns_1.default.schema('longitude')
201
+ };
202
+ function bindingToTerm(item) {
203
+ const typ = item.type.toLowerCase();
204
+ if (typ === 'uri' || typ === 'iri') {
205
+ return solid_logic_1.store.sym(item.value);
206
+ }
207
+ else if (typ === 'literal') {
208
+ if (item['xml:lang']) {
209
+ return new rdflib_1.Literal(item.value, item['xml:lang']);
210
+ }
211
+ else {
212
+ return new rdflib_1.Literal(item.value);
213
+ }
214
+ }
215
+ else {
216
+ throw new Error(`bindingToTerm: Unexpected type "${item.type}" in sparql binding}`);
217
+ }
218
+ }
219
+ function loadFromBindings(kb, solidSubject, bindings, doc, predMap = exports.variableNameToPredicateMap) {
220
+ const results = {};
221
+ debug.log(`loadFromBindings: subject: ${solidSubject}`);
222
+ debug.log(` doc: ${doc}`);
223
+ bindings.forEach(binding => {
224
+ for (const key in binding) {
225
+ const result = binding[key];
226
+ const combined = JSON.stringify(result); // ( result.type, result.value )
227
+ results[key] = results[key] || new Set();
228
+ results[key].add(combined); // remove duplicates
229
+ }
230
+ });
231
+ for (const key in results) {
232
+ const values = results[key];
233
+ debug.log(` results ${key} -> ${values}`);
234
+ values.forEach(combined => {
235
+ const result = JSON.parse(combined);
236
+ const { type, value } = result;
237
+ let obj;
238
+ if (type === 'uri') {
239
+ obj = kb.sym(value);
240
+ }
241
+ else if (type === 'literal') {
242
+ obj = new rdflib_1.Literal(value, result.language, result.datatype);
243
+ }
244
+ else {
245
+ throw new Error(`loadFromBindings: unexpected type: ${type}`);
246
+ }
247
+ if (key === 'type') {
248
+ if (exports.wikidataIncomingClassMap[value]) {
249
+ obj = exports.wikidataIncomingClassMap[value];
250
+ }
251
+ else {
252
+ debug.warn('Unmapped Wikidata Class: ' + value);
253
+ }
254
+ }
255
+ else if (key === 'coordinates') {
256
+ // const latlong = value // Like 'Point(-71.106111111 42.375)'
257
+ debug.log(' @@@ hey a point: ' + value);
258
+ // const regexp = /.*\(([-0-9\.-]*) ([-0-9\.-]*)\)/
259
+ const regexp = /.*\(([-0-9.-]*) ([-0-9.-]*)\)/;
260
+ const match = regexp.exec(value);
261
+ if (match) {
262
+ const float = ns_1.default.xsd('float');
263
+ const latitude = new rdflib_1.Literal(match[1], null, float);
264
+ const longitude = new rdflib_1.Literal(match[2], null, float);
265
+ kb.add(solidSubject, ns_1.default.schema('longitude'), longitude, doc);
266
+ kb.add(solidSubject, ns_1.default.schema('latitude'), latitude, doc);
267
+ }
268
+ else {
269
+ debug.log('Bad coordinates syntax: ' + value);
270
+ }
271
+ }
272
+ else {
273
+ const pred = predMap[key] || ns_1.default.schema(key); // fallback to just using schema.org
274
+ kb.add(solidSubject, pred, obj, doc); // @@ deal with non-string and objects
275
+ debug.log(` public data ${pred} ${obj}.`);
276
+ }
277
+ });
278
+ }
279
+ }
280
+ /* ESCO sopecific
281
+ */
282
+ function ESCOResultToBindings(json) {
283
+ const results = json._embedded.results; // Array
284
+ const bindings = results.map(result => {
285
+ const name = result.title;
286
+ const uri = result.uri; // like http://data.europa.eu/esco/occupation/57af9090-55b4-4911-b2d0-86db01c00b02
287
+ return { name: { value: name, type: 'literal' }, subject: { type: 'IRI', value: uri } }; // simulate SPARQL bindings
288
+ });
289
+ return bindings;
290
+ }
291
+ /* Query all entities of given class and partially matching name
292
+ */
293
+ async function queryESCODataByName(filter, theClass, queryTarget) {
294
+ if (!queryTarget.searchByNameURI)
295
+ throw new Error('Missing queryTarget.searchByNameURI on queryESCODataByName');
296
+ const limit = queryTarget.limit || exports.AUTOCOMPLETE_LIMIT;
297
+ const queryURI = queryTarget.searchByNameURI
298
+ .replace('$(name)', filter)
299
+ .replace('$(limit)', '' + limit)
300
+ .replace('$(targetClass)', theClass.toNT());
301
+ debug.log('Querying ESCO data - uri: ' + queryURI);
302
+ const response = await solid_logic_1.store.fetcher?.webOperation('GET', queryURI, exports.fetcherOptionsJsonPublicData);
303
+ const text = response?.responseText || '';
304
+ debug.log(' Query result text' + text.slice(0, 500) + '...');
305
+ if (text.length === 0)
306
+ throw new Error('Wot no text back from ESCO query ' + queryURI);
307
+ const json = JSON.parse(text);
308
+ // console.log('Whole JSON return object', json)
309
+ debug.log(' ESCO Query result JSON' + JSON.stringify(json, null, 4).slice(0, 500) + '...');
310
+ return ESCOResultToBindings(json);
311
+ }
312
+ /* Cope ithe syntax probelm in wikidata timeout responses
313
+ *
314
+ * Wikidata bug: https://phabricator.wikimedia.org/T283962
315
+ * This will not be needed whn that WDQS bug fixed.
316
+ * This is aptured in https://github.com/solidos/solid-ui/issues/403
317
+ */
318
+ function fixWikidataJSON(str) {
319
+ const syntaxProblem = str.indexOf('SPARQL-QUERY');
320
+ if (syntaxProblem < 0)
321
+ return str;
322
+ // console.log('@@ fixWikidataJSON FIXING')
323
+ debug.warn(' ### Fixing JSON with wikidata error code injection ' + str.slice(syntaxProblem, syntaxProblem + 200));
324
+ const goodness = str.lastIndexOf('}, {');
325
+ return str.slice(0, goodness) + ' } ] } } '; // Close binding, array, bindings, results, root object
326
+ }
327
+ /* Query all entities of given class and partially matching name
328
+ */
329
+ async function queryPublicDataByName(filter, theClass, languages, queryTarget) {
330
+ function substituteStrings(template) {
331
+ const limit = queryTarget.limit || exports.AUTOCOMPLETE_LIMIT;
332
+ const u1 = template.replace('$(name)', filter)
333
+ .replace('$(limit)', '' + limit)
334
+ .replace('$(language)', language);
335
+ return u1.replace('$(targetClass)', theClass.toNT());
336
+ }
337
+ if (!theClass) {
338
+ throw new Error('queryPublicDataByName: No class provided');
339
+ }
340
+ const languagePrefs = await (0, language_1.getPreferredLanguages)() || language_1.defaultPreferredLanguages;
341
+ const language = languagePrefs[0] || 'en';
342
+ if (queryTarget.searchByNameQuery) {
343
+ const sparql = substituteStrings(queryTarget.searchByNameQuery);
344
+ debug.log('Querying public data - sparql: ' + sparql);
345
+ return queryPublicDataSelect(sparql, queryTarget);
346
+ }
347
+ else if (queryTarget.searchByNameURI) { // not sparql - random API
348
+ const queryURI = substituteStrings(queryTarget.searchByNameURI);
349
+ let response;
350
+ try {
351
+ response = await solid_logic_1.store.fetcher?.webOperation('GET', queryURI, exports.fetcherOptionsJsonPublicData);
352
+ }
353
+ catch (err) {
354
+ throw new Error(`Exception when trying to fetch ${queryURI} \n ${err}`);
355
+ }
356
+ const text = response.responseText || ''; // ts
357
+ if (response.status !== 200) {
358
+ throw new Error(`HTTP error status ${response.status} trying to fetch ${queryURI} `);
359
+ }
360
+ debug.log(' Query result text' + text.slice(0, 500) + '...');
361
+ if (text.length === 0)
362
+ throw new Error('queryPublicDataByName: No text back from public data query ' + queryURI);
363
+ const text2 = fixWikidataJSON(text); // Kludge: strip of interrupting error message
364
+ const json = JSON.parse(text2);
365
+ debug.log(' API Query result JSON' + JSON.stringify(json, null, 4).slice(0, 500) + '...');
366
+ if (json._embedded) {
367
+ debug.log(' Looks like ESCO');
368
+ const bindings = ESCOResultToBindings(json);
369
+ return bindings;
370
+ }
371
+ else {
372
+ alert('Code me: unrecognized API return format');
373
+ throw new Error(`*** Need to add code to parse unrecognized API JSON return\n${JSON.stringify(json, null, 4)}`);
374
+ }
375
+ }
376
+ else {
377
+ throw new Error('Query source must have either rest API or SPARQL endpoint.');
378
+ }
379
+ }
380
+ /* Query a database using SPARQL SELECT
381
+ */
382
+ async function queryPublicDataSelect(sparql, queryTarget) {
383
+ if (!queryTarget.endpoint)
384
+ throw new Error('Missing queryTarget.endpoint required for queryPublicDataSelect');
385
+ const myUrlWithParams = new URL(queryTarget.endpoint);
386
+ myUrlWithParams.searchParams.append('query', sparql);
387
+ const queryURI = myUrlWithParams.href;
388
+ debug.log(' queryPublicDataSelect uri: ' + queryURI);
389
+ const headers = new Headers();
390
+ headers.append('Accept', 'application/json');
391
+ const options = {
392
+ credentials: 'omit', // CORS - as we know it is public
393
+ headers
394
+ };
395
+ const response = await solid_logic_1.store.fetcher?.webOperation('GET', queryURI, options);
396
+ const text = response?.responseText || '';
397
+ if (text.length === 0)
398
+ throw new Error('No text back from query ' + queryURI);
399
+ const text2 = fixWikidataJSON(text);
400
+ const json = JSON.parse(text2);
401
+ debug.log(' Query result JSON' + JSON.stringify(json, null, 4).slice(0, 100) + '...');
402
+ const bindings = json.results.bindings;
403
+ return bindings;
404
+ }
405
+ /* Load from a database using SPARQL CONSTRUCT
406
+ */
407
+ async function queryPublicDataConstruct(sparql, pubicId, queryTarget) {
408
+ debug.log('queryPublicDataConstruct: sparql:', sparql);
409
+ if (!queryTarget.endpoint)
410
+ throw new Error('Missing queryTarget.endpoint required for queryPublicDataConstruct');
411
+ const myUrlWithParams = new URL(queryTarget.endpoint);
412
+ myUrlWithParams.searchParams.append('query', sparql);
413
+ const queryURI = myUrlWithParams.href;
414
+ debug.log(' queryPublicDataConstruct uri: ' + queryURI);
415
+ const headers = new Headers();
416
+ headers.append('Accept', 'text/turtle');
417
+ const options = {
418
+ credentials: 'omit', // CORS // @tsc pain
419
+ headers // ({ Accept: 'text/turtle' } as Headers)
420
+ };
421
+ const response = await solid_logic_1.store.fetcher?.webOperation('GET', queryURI, options);
422
+ const text = response?.responseText || 'No response text?';
423
+ const report = text.length > 500 ? text.slice(0, 200) + ' ... ' + text.slice(-200) : text;
424
+ debug.log(' queryPublicDataConstruct result text:' + report);
425
+ if (text.length === 0)
426
+ throw new Error('queryPublicDataConstruct: No text back from construct query:' + queryURI);
427
+ (0, rdflib_1.parse)(text, solid_logic_1.store, pubicId.uri, 'text/turtle');
428
+ }
429
+ async function loadPublicDataThing(kb, subject, publicDataID) {
430
+ if (publicDataID.uri.startsWith('https://dbpedia.org/resource/')) {
431
+ return getDbpediaDetails(kb, subject, publicDataID);
432
+ }
433
+ else if (publicDataID.uri.match(/^https?:\/\/www\.wikidata\.org\/entity\/.*/)) {
434
+ // const QId = publicDataID.uri.split('/')[4]
435
+ // const dataURI = `http://www.wikidata.org/wiki/Special:EntityData/${QId}.ttl`
436
+ // In fact loading the data URI gives much too much irrelevant data, from wikidata, so we do a query.
437
+ await getWikidataDetails(kb, subject, publicDataID);
438
+ // await getWikidataLocation(kb, subject, publicDataID) -- should get that in the details query now
439
+ }
440
+ else {
441
+ const iDToFetch = publicDataID.uri.startsWith('http:')
442
+ ? kb.sym('https:' + publicDataID.uri.slice(5))
443
+ : publicDataID;
444
+ const headers = new Headers();
445
+ headers.append('Accept', 'text/turtle');
446
+ return kb.fetcher.load(iDToFetch, {
447
+ credentials: 'omit',
448
+ headers
449
+ });
450
+ }
451
+ }
452
+ async function getWikidataDetails(kb, solidSubject, publicDataID) {
453
+ const subjRegexp = /wd:Q49108/g;
454
+ const sparql = exports.instituteDetailsWikidataQuery.replace(subjRegexp, publicDataID.toNT());
455
+ await queryPublicDataConstruct(sparql, publicDataID, exports.wikidataParameters);
456
+ debug.log('getWikidataDetails: loaded.', publicDataID);
457
+ }
458
+ async function getWikidataDetailsOld(kb, solidSubject, publicDataID) {
459
+ const sparql = `select distinct * where {
460
+ optional { $(subject) wdt:P31 ?targetClass } # instance of
461
+ optional { $(subject) wdt:P154 ?logo }
462
+ optional { $(subject) wdt:P158 ?sealImage }
463
+ # optional { $(subject) wdt:P159 ?headquartersLocation }
464
+
465
+ optional { $(subject) wdt:P17 ?country }
466
+ optional { $(subject) wdt:P18 ?image }
467
+ optional { $(subject) wdt:P1813 ?shortName }
468
+
469
+ optional { $(subject) wdt:P355 ?subsidiary }
470
+ # SERVICE wikibase:label { bd:serviceParam wikibase:language "fr,en,de,it" }
471
+ }`
472
+ .replace(subjectRegexp, publicDataID.toNT());
473
+ const bindings = await queryPublicDataSelect(sparql, exports.wikidataParameters);
474
+ loadFromBindings(kb, publicDataID, bindings, publicDataID.doc()); // arg2 was solidSubject
475
+ }
476
+ async function getWikidataLocation(kb, solidSubject, publicDataID) {
477
+ const sparql = `select distinct * where {
478
+
479
+ $(subject) wdt:P276 ?location .
480
+
481
+ optional { ?location wdt:P2044 ?elevation }
482
+ optional { ?location wdt:P131 ?region }
483
+ optional { ?location wdt:P625 ?coordinates }
484
+ optional { ?location wdt:P17 ?country }
485
+
486
+ # SERVICE wikibase:label { bd:serviceParam wikibase:language "fr,en,de,it" }
487
+ }`.replace(subjectRegexp, publicDataID.toNT());
488
+ debug.log(' location query sparql:' + sparql);
489
+ const bindings = await queryPublicDataSelect(sparql, exports.wikidataParameters);
490
+ debug.log(' location query bindings:', bindings);
491
+ loadFromBindings(kb, publicDataID, bindings, publicDataID.doc()); // was solidSubject
492
+ }
493
+ async function getDbpediaDetails(kb, solidSubject, publicDataID) {
494
+ // Note below the string form of the named node with <> works in SPARQL
495
+ const sparql = `select distinct ?city, ?state, ?country, ?homepage, ?logo, ?lat, ?long, WHERE {
496
+ OPTIONAL { <${publicDataID}> <http://dbpedia.org/ontology/city> ?city }
497
+ OPTIONAL { ${publicDataID} <http://dbpedia.org/ontology/state> ?state }
498
+ OPTIONAL { ${publicDataID} <http://dbpedia.org/ontology/country> ?country }
499
+ OPTIONAL { ${publicDataID} foaf:homepage ?homepage }
500
+ OPTIONAL { ${publicDataID} foaf:lat ?lat; foaf:long ?long }
501
+ OPTIONAL { ${publicDataID} <http://dbpedia.org/ontology/country> ?country }
502
+ }`;
503
+ const bindings = await queryPublicDataSelect(sparql, exports.dbpediaParameters);
504
+ loadFromBindings(kb, publicDataID, bindings, publicDataID.doc());
505
+ debug.log('Finished getDbpediaDetails.');
506
+ }
507
+ //# sourceMappingURL=publicData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publicData.js","sourceRoot":"","sources":["../../../../src/widgets/forms/autocomplete/publicData.ts"],"names":[],"mappings":"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"}