solid-panes 3.5.27 → 3.5.28-59efa615

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 (309) hide show
  1. package/.babelrc +0 -0
  2. package/.eslintignore +0 -0
  3. package/.eslintrc +0 -0
  4. package/.github/workflows/ci.yml +0 -0
  5. package/.nvmrc +0 -0
  6. package/Documentation/VisualLanguage.html +0 -0
  7. package/Documentation/conventions.md +0 -0
  8. package/LICENSE.md +0 -0
  9. package/README.md +0 -2
  10. package/dev/index.html +0 -0
  11. package/dev/loader.ts +0 -0
  12. package/dev/pane/index.ts +0 -0
  13. package/doc/images/panes-for-classes.epgz +0 -0
  14. package/doc/images/panes-for-classes.svg +0 -0
  15. package/jest.config.js +0 -0
  16. package/jest.setup.ts +0 -0
  17. package/lib/RDFXMLPane.js +15 -9
  18. package/lib/RDFXMLPane.js.map +1 -1
  19. package/lib/argument/argumentPane.js +12 -11
  20. package/lib/argument/argumentPane.js.map +1 -1
  21. package/lib/attach/attachPane.js +58 -90
  22. package/lib/attach/attachPane.js.map +1 -1
  23. package/lib/audio/audioPane.js +19 -37
  24. package/lib/audio/audioPane.js.map +1 -1
  25. package/lib/classInstancePane.js +21 -22
  26. package/lib/classInstancePane.js.map +1 -1
  27. package/lib/dashboard/basicPreferences.d.ts +0 -0
  28. package/lib/dashboard/basicPreferences.d.ts.map +0 -0
  29. package/lib/dashboard/basicPreferences.js +96 -154
  30. package/lib/dashboard/basicPreferences.js.map +1 -1
  31. package/lib/dashboard/dashboardPane.d.ts +0 -0
  32. package/lib/dashboard/dashboardPane.d.ts.map +0 -0
  33. package/lib/dashboard/dashboardPane.js +2 -18
  34. package/lib/dashboard/dashboardPane.js.map +1 -1
  35. package/lib/dashboard/homepage.d.ts +0 -0
  36. package/lib/dashboard/homepage.d.ts.map +0 -0
  37. package/lib/dashboard/homepage.js +27 -49
  38. package/lib/dashboard/homepage.js.map +1 -1
  39. package/lib/dataContentPane.js +26 -61
  40. package/lib/dataContentPane.js.map +1 -1
  41. package/lib/defaultPane.js +23 -23
  42. package/lib/defaultPane.js.map +1 -1
  43. package/lib/dokieli/dokieliPane.js +29 -34
  44. package/lib/dokieli/dokieliPane.js.map +1 -1
  45. package/lib/dokieli/new.js +6 -1
  46. package/lib/dokieli/new.js.map +1 -1
  47. package/lib/form/pane.js +34 -45
  48. package/lib/form/pane.js.map +1 -1
  49. package/lib/global.d.js +0 -0
  50. package/lib/global.d.js.map +0 -0
  51. package/lib/home/homePane.d.ts +0 -0
  52. package/lib/home/homePane.d.ts.map +0 -0
  53. package/lib/home/homePane.js +49 -67
  54. package/lib/home/homePane.js.map +1 -1
  55. package/lib/humanReadablePane.js +14 -28
  56. package/lib/humanReadablePane.js.map +1 -1
  57. package/lib/imagePane.js +19 -14
  58. package/lib/imagePane.js.map +1 -1
  59. package/lib/index.d.ts +0 -0
  60. package/lib/index.d.ts.map +0 -0
  61. package/lib/index.js +6 -20
  62. package/lib/index.js.map +1 -1
  63. package/lib/internal/internalPane.d.ts +0 -0
  64. package/lib/internal/internalPane.d.ts.map +0 -0
  65. package/lib/internal/internalPane.js +10 -41
  66. package/lib/internal/internalPane.js.map +1 -1
  67. package/lib/mainPage/footer.d.ts +0 -0
  68. package/lib/mainPage/footer.d.ts.map +0 -0
  69. package/lib/mainPage/footer.js +0 -4
  70. package/lib/mainPage/footer.js.map +1 -1
  71. package/lib/mainPage/header.d.ts +0 -0
  72. package/lib/mainPage/header.d.ts.map +0 -0
  73. package/lib/mainPage/header.js +66 -100
  74. package/lib/mainPage/header.js.map +1 -1
  75. package/lib/mainPage/index.d.ts +0 -0
  76. package/lib/mainPage/index.d.ts.map +0 -0
  77. package/lib/mainPage/index.js +17 -30
  78. package/lib/mainPage/index.js.map +1 -1
  79. package/lib/microblogPane/microblogPane.js +182 -321
  80. package/lib/microblogPane/microblogPane.js.map +1 -1
  81. package/lib/n3Pane.js +12 -8
  82. package/lib/n3Pane.js.map +1 -1
  83. package/lib/outline/context.d.ts +0 -0
  84. package/lib/outline/context.d.ts.map +0 -0
  85. package/lib/outline/context.js +0 -2
  86. package/lib/outline/context.js.map +1 -1
  87. package/lib/outline/licenseOptions.js +21 -35
  88. package/lib/outline/licenseOptions.js.map +1 -1
  89. package/lib/outline/manager.js +740 -1176
  90. package/lib/outline/manager.js.map +1 -1
  91. package/lib/outline/manager.test.js +16 -25
  92. package/lib/outline/manager.test.js.map +1 -1
  93. package/lib/outline/outlineIcons.js +39 -26
  94. package/lib/outline/outlineIcons.js.map +1 -1
  95. package/lib/outline/propertyViews.d.ts +3 -2
  96. package/lib/outline/propertyViews.d.ts.map +1 -1
  97. package/lib/outline/propertyViews.js +7 -15
  98. package/lib/outline/propertyViews.js.map +1 -1
  99. package/lib/outline/propertyViews.test.js +7 -7
  100. package/lib/outline/propertyViews.test.js.map +1 -1
  101. package/lib/outline/queryByExample.js +28 -80
  102. package/lib/outline/queryByExample.js.map +1 -1
  103. package/lib/outline/userInput.js +221 -459
  104. package/lib/outline/userInput.js.map +1 -1
  105. package/lib/outline/viewAsImage.d.ts +0 -0
  106. package/lib/outline/viewAsImage.d.ts.map +0 -0
  107. package/lib/outline/viewAsImage.js +0 -6
  108. package/lib/outline/viewAsImage.js.map +1 -1
  109. package/lib/outline/viewAsMbox.d.ts +0 -0
  110. package/lib/outline/viewAsMbox.d.ts.map +0 -0
  111. package/lib/outline/viewAsMbox.js +3 -4
  112. package/lib/outline/viewAsMbox.js.map +1 -1
  113. package/lib/pad/padPane.d.ts +0 -0
  114. package/lib/pad/padPane.d.ts.map +0 -0
  115. package/lib/pad/padPane.js +45 -93
  116. package/lib/pad/padPane.js.map +1 -1
  117. package/lib/playlist/playlistPane.js +11 -21
  118. package/lib/playlist/playlistPane.js.map +1 -1
  119. package/lib/profile/editProfile.view.d.ts +0 -0
  120. package/lib/profile/editProfile.view.d.ts.map +1 -1
  121. package/lib/profile/editProfile.view.js +22 -23
  122. package/lib/profile/editProfile.view.js.map +1 -1
  123. package/lib/profile/profile.dom.d.ts +0 -0
  124. package/lib/profile/profile.dom.d.ts.map +0 -0
  125. package/lib/profile/profile.dom.js +0 -3
  126. package/lib/profile/profile.dom.js.map +1 -1
  127. package/lib/registerPanes.js +99 -54
  128. package/lib/registerPanes.js.map +1 -1
  129. package/lib/schedule/formsForSchedule.js +6 -1
  130. package/lib/schedule/formsForSchedule.js.map +1 -1
  131. package/lib/schedule/schedulePane.js +71 -126
  132. package/lib/schedule/schedulePane.js.map +1 -1
  133. package/lib/sharing/sharingPane.d.ts +0 -0
  134. package/lib/sharing/sharingPane.d.ts.map +0 -0
  135. package/lib/sharing/sharingPane.js +2 -10
  136. package/lib/sharing/sharingPane.js.map +1 -1
  137. package/lib/slideshow/slideshowPane.js +21 -21
  138. package/lib/slideshow/slideshowPane.js.map +1 -1
  139. package/lib/socialPane.js +58 -135
  140. package/lib/socialPane.js.map +1 -1
  141. package/lib/tabbed/tabbedPane.d.ts +0 -0
  142. package/lib/tabbed/tabbedPane.d.ts.map +0 -0
  143. package/lib/tabbed/tabbedPane.js +32 -48
  144. package/lib/tabbed/tabbedPane.js.map +1 -1
  145. package/lib/tableViewPane.js +15 -9
  146. package/lib/tableViewPane.js.map +1 -1
  147. package/lib/test-import-export/common.js +8 -3
  148. package/lib/test-import-export/common.js.map +1 -1
  149. package/lib/test-import-export/edit-importer.js +10 -14
  150. package/lib/test-import-export/edit-importer.js.map +1 -1
  151. package/lib/test-import-export/testImportExport.js +0 -0
  152. package/lib/test-import-export/testImportExport.js.map +0 -0
  153. package/lib/transaction/pane.js +38 -91
  154. package/lib/transaction/pane.js.map +1 -1
  155. package/lib/transaction/period.js +27 -71
  156. package/lib/transaction/period.js.map +1 -1
  157. package/lib/trip/tripPane.js +38 -35
  158. package/lib/trip/tripPane.js.map +1 -1
  159. package/lib/trustedApplications/trustedApplications.dom.d.ts +0 -0
  160. package/lib/trustedApplications/trustedApplications.dom.d.ts.map +0 -0
  161. package/lib/trustedApplications/trustedApplications.dom.js +12 -35
  162. package/lib/trustedApplications/trustedApplications.dom.js.map +1 -1
  163. package/lib/trustedApplications/trustedApplications.test.js +6 -8
  164. package/lib/trustedApplications/trustedApplications.test.js.map +1 -1
  165. package/lib/trustedApplications/trustedApplications.utils.d.ts +0 -0
  166. package/lib/trustedApplications/trustedApplications.utils.d.ts.map +0 -0
  167. package/lib/trustedApplications/trustedApplications.utils.js +1 -11
  168. package/lib/trustedApplications/trustedApplications.utils.js.map +1 -1
  169. package/lib/trustedApplications/trustedApplications.view.d.ts +0 -0
  170. package/lib/trustedApplications/trustedApplications.view.d.ts.map +0 -0
  171. package/lib/trustedApplications/trustedApplications.view.js +38 -61
  172. package/lib/trustedApplications/trustedApplications.view.js.map +1 -1
  173. package/lib/types.d.ts +0 -0
  174. package/lib/types.d.ts.map +0 -0
  175. package/lib/types.js +0 -0
  176. package/lib/types.js.map +0 -0
  177. package/lib/ui/pane.js +30 -29
  178. package/lib/ui/pane.js.map +1 -1
  179. package/lib/versionInfo.d.ts +0 -0
  180. package/lib/versionInfo.d.ts.map +0 -0
  181. package/lib/versionInfo.js +14 -14
  182. package/lib/versionInfo.js.map +1 -1
  183. package/lib/video/videoPane.js +11 -7
  184. package/lib/video/videoPane.js.map +1 -1
  185. package/package.json +26 -26
  186. package/src/RDFXMLPane.js +2 -2
  187. package/src/argument/argumentPane.js +1 -1
  188. package/src/argument/argument_icon_v04.jpg +0 -0
  189. package/src/argument/icon_argument.png +0 -0
  190. package/src/argument/transparentyingyang.png +0 -0
  191. package/src/attach/attachPane.js +3 -3
  192. package/src/attach/tbl-paperclip-128.png +0 -0
  193. package/src/attach/tbl-paperclip-22.png +0 -0
  194. package/src/attach/tbl-paperclip-22a.png +0 -0
  195. package/src/audio/audioPane.js +3 -3
  196. package/src/chatPreferencesForm.ttl +0 -0
  197. package/src/classInstancePane.js +3 -3
  198. package/src/dashboard/basicPreferences.ts +0 -0
  199. package/src/dashboard/dashboardPane.ts +0 -0
  200. package/src/dashboard/homepage.ts +0 -0
  201. package/src/dashboard/languages/codes.html +0 -0
  202. package/src/dashboard/languages/codes.xml +0 -0
  203. package/src/dashboard/languages/codes2.txt +0 -0
  204. package/src/dashboard/languages/foo +0 -0
  205. package/src/dashboard/languages/foo.ttl +0 -0
  206. package/src/dashboard/languages/get-language-names.sh +0 -0
  207. package/src/dashboard/ontologyData.ttl +0 -0
  208. package/src/dashboard/preferencesFormText.ttl +0 -0
  209. package/src/dataContentPane.js +3 -4
  210. package/src/defaultPane.js +3 -3
  211. package/src/dokieli/Makefile +0 -0
  212. package/src/dokieli/dokieliPane.js +5 -5
  213. package/src/dokieli/new.html +0 -0
  214. package/src/dokieli/new.js +1 -1
  215. package/src/form/form-22.png +0 -0
  216. package/src/form/form-b-22.png +0 -0
  217. package/src/form/form.graffle +0 -0
  218. package/src/form/form.png +0 -0
  219. package/src/form/pane.js +2 -2
  220. package/src/form/psuedocode-notes.txt +0 -0
  221. package/src/global.d.ts +0 -0
  222. package/src/home/homePane.ts +0 -0
  223. package/src/humanReadablePane.js +0 -0
  224. package/src/imagePane.js +2 -2
  225. package/src/index.ts +1 -1
  226. package/src/internal/internalPane.ts +0 -0
  227. package/src/mainPage/footer.ts +0 -0
  228. package/src/mainPage/header.ts +0 -0
  229. package/src/mainPage/index.ts +0 -0
  230. package/src/meeting/Makefile +0 -0
  231. package/src/meeting/test/meeting1/Actions/actions.ttl +0 -0
  232. package/src/meeting/test/meeting1/Actions/config.ttl +0 -0
  233. package/src/meeting/test/meeting1/Actions/state.ttl +0 -0
  234. package/src/meeting/test/meeting1/Schedule/details.ttl +0 -0
  235. package/src/meeting/test/meeting1/Schedule/details.ttl.acl +0 -0
  236. package/src/meeting/test/meeting1/Schedule/forms.ttl +0 -0
  237. package/src/meeting/test/meeting1/Schedule/forms.ttl.acl +0 -0
  238. package/src/meeting/test/meeting1/Schedule/index.html +0 -0
  239. package/src/meeting/test/meeting1/Schedule/index.html.acl +0 -0
  240. package/src/meeting/test/meeting1/Schedule/results.ttl +0 -0
  241. package/src/meeting/test/meeting1/Schedule/results.ttl.acl +0 -0
  242. package/src/meeting/test/meeting1/SharedNotes/pad.ttl +0 -0
  243. package/src/meeting/test/meeting1/chat/chat.ttl +0 -0
  244. package/src/meeting/test/meeting1/details.ttl +0 -0
  245. package/src/meeting/test/meeting1/pad/pad.ttl +0 -0
  246. package/src/microblogPane/mbStyle.css +0 -0
  247. package/src/microblogPane/microblogPane.js +1 -1
  248. package/src/n3Pane.js +2 -2
  249. package/src/outline/context.ts +0 -0
  250. package/src/outline/licenseOptions.js +9 -8
  251. package/src/outline/manager.js +18 -20
  252. package/src/outline/manager.test.ts +6 -0
  253. package/src/outline/outlineIcons.js +4 -2
  254. package/src/outline/propertyViews.test.ts +7 -1
  255. package/src/outline/propertyViews.ts +3 -3
  256. package/src/outline/queryByExample.js +3 -9
  257. package/src/outline/userInput.js +1 -1
  258. package/src/outline/viewAsImage.ts +0 -0
  259. package/src/outline/viewAsMbox.ts +0 -0
  260. package/src/pad/images/ColourOff.ai +0 -0
  261. package/src/pad/images/ColourOff.png +0 -0
  262. package/src/pad/images/ColourOn.ai +0 -0
  263. package/src/pad/images/ColourOn.png +0 -0
  264. package/src/pad/padPane.ts +0 -0
  265. package/src/playlist/playlistPane.js +3 -3
  266. package/src/profile/editProfile.view.ts +20 -0
  267. package/src/profile/profile.dom.ts +0 -0
  268. package/src/profile/profileFormText.ttl +0 -0
  269. package/src/registerPanes.js +92 -52
  270. package/src/schedule/Makefile +0 -0
  271. package/src/schedule/formsForSchedule.js +1 -1
  272. package/src/schedule/formsForSchedule.ttl +0 -0
  273. package/src/schedule/schedulePane.js +6 -2
  274. package/src/sharing/sharingPane.ts +0 -0
  275. package/src/slideshow/slideshowPane.js +3 -6
  276. package/src/socialPane.js +4 -5
  277. package/src/style/tabbedtab.css +0 -0
  278. package/src/tabbed/tabbedPane.ts +0 -0
  279. package/src/tableViewPane.js +3 -3
  280. package/src/test-import-export/common.js +1 -1
  281. package/src/test-import-export/edit-importer.js +5 -10
  282. package/src/test-import-export/testImportExport.js +0 -0
  283. package/src/transaction/068010-3d-transparent-glass-icon-alphanumeric-dollar-sign.png +0 -0
  284. package/src/transaction/075988-3d-transparent-glass-icon-business-currency-british-pound-sc35.png +0 -0
  285. package/src/transaction/22-pixel-068010-3d-transparent-glass-icon-alphanumeric-dollar-sign.png +0 -0
  286. package/src/transaction/pane.js +3 -3
  287. package/src/transaction/period.js +2 -2
  288. package/src/transaction/thumbs_075987-3d-transparent-glass-icon-business-creditcard2.png +0 -0
  289. package/src/transaction/thumbs_075989-3d-transparent-glass-icon-business-currency-cent-sc35.png +0 -0
  290. package/src/trip/tripPane.js +3 -3
  291. package/src/trustedApplications/__snapshots__/trustedApplications.test.ts.snap +0 -0
  292. package/src/trustedApplications/trustedApplications.dom.ts +0 -0
  293. package/src/trustedApplications/trustedApplications.test.ts +4 -0
  294. package/src/trustedApplications/trustedApplications.utils.ts +0 -0
  295. package/src/trustedApplications/trustedApplications.view.ts +0 -0
  296. package/src/types.ts +0 -0
  297. package/src/ui/22-builder.png +0 -0
  298. package/src/ui/builder.graffle +0 -0
  299. package/src/ui/builder.png +0 -0
  300. package/src/ui/builder2.png +0 -0
  301. package/src/ui/pane.js +3 -3
  302. package/src/versionInfo.ts +14 -14
  303. package/src/video/videoPane.js +3 -3
  304. package/timestamp.sh +0 -0
  305. package/travis/bumpversion.js +0 -0
  306. package/tsconfig.json +0 -0
  307. package/typings/raw-loader.d.ts +0 -0
  308. package/typings/solid-namespace/index.d.ts +0 -0
  309. package/webpack.config.js +0 -0
@@ -1,25 +1,17 @@
1
1
  "use strict";
2
2
 
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = exports.basicPreferencesPane = void 0;
9
-
10
8
  var _rdflib = require("rdflib");
11
-
12
9
  var _solidUi = require("solid-ui");
13
-
14
- function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
15
-
10
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
16
11
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
17
-
18
12
  function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
19
-
20
13
  /* babel-plugin-inline-import './ontologyData.ttl' */
21
14
  var ontologyData = "@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.\n@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.\n@prefix solid: <http://www.w3.org/ns/solid/terms#>.\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix schema: <http:/schema.org/>.\n@prefix ui: <http://www.w3.org/ns/ui#>.\n@prefix vcard: <http://www.w3.org/2006/vcard/ns#>.\n@prefix : <#>.\n\nsolid:User a rdfs:Class;\n rdfs:label \"user\"@en, \"utilisateur\"@fr;\n rdfs:comment \"\"\"Any person who might use a Solid-based system\"\"\";\n rdfs:subClassOf foaf:Person, schema:Person, vcard:Individual.\n\n# Since these options are opt-in, it is a bit strange to have new users opt in\n# That they are new users - also we do not use this class for anything specific\n# yet\n# solid:NewUser a rdfs:Class;\n# rdfs:label \"new user\"@en;\n# rdfs:comment \"\"\"A person who might use a Solid-based system who has a low\n# level of familiarity with technical details.\"\"\";\n# rdfs:subClassOf solid:User.\n\nsolid:PowerUser a rdfs:Class;\n rdfs:label \"power user\"@en;\n rdfs:comment \"\"\"A person who might use a Solid-based system\n who is prepared to be given a more complex interface in order\n to be provided with more pwerful features.\"\"\";\n rdfs:subClassOf solid:User.\n\n solid:Developer a rdfs:Class;\n rdfs:label \"Developer\";\n rdfs:comment \"\"\"Any person who might use a Solid-based system,\n who has software development skills.\"\"\";\n rdfs:subClassOf solid:User.\n";
22
-
23
15
  /* babel-plugin-inline-import './preferencesFormText.ttl' */
24
16
  var preferencesFormText = "@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.\n@prefix solid: <http://www.w3.org/ns/solid/terms#>.\n@prefix ui: <http://www.w3.org/ns/ui#>.\n@prefix : <#>.\n\n:this <http://purl.org/dc/elements/1.1/title> \"Basic preferences\" ;\n a ui:Form ;\n ui:part :categorizeUser, :privateComment, :personalInformationHeading;\n ui:parts ( :personalInformationHeading :privateComment :categorizeUser ).\n\n:personalInformationHeading a ui:Heading;\n ui:contents \"Personal information\".\n\n:privateComment a ui:Comment;\n ui:contents \"This information is private.\".\n\n:categorizeUser a ui:Classifier;\n ui:label \"Level of user\"; ui:property rdf:type ; ui:category solid:User.\n";
25
17
  var basicPreferencesPane = {
@@ -33,18 +25,14 @@ var basicPreferencesPane = {
33
25
  render: function render(subject, context) {
34
26
  var dom = context.dom;
35
27
  var store = context.session.store;
36
-
37
28
  function complainIfBad(ok, mess) {
38
29
  if (ok) return;
39
30
  container.appendChild(_solidUi.widgets.errorMessageBlock(dom, mess, '#fee'));
40
31
  }
41
-
42
32
  var container = dom.createElement('div');
43
33
  var formArea = setupUserTypesSection(container, dom);
44
-
45
34
  function loadData(doc, turtle) {
46
35
  doc = doc.doc(); // remove # from URI if nec
47
-
48
36
  if (!store.holds(undefined, undefined, undefined, doc)) {
49
37
  // If not loaded already
50
38
  ;
@@ -56,64 +44,52 @@ var basicPreferencesPane = {
56
44
  loadData(preferencesForm, preferencesFormText);
57
45
  var ontologyExtra = store.sym('urn:uuid:93774ba1-d3b6-41f2-85b6-4ae27ffd2597-ONT');
58
46
  loadData(ontologyExtra, ontologyData);
59
-
60
47
  function doRender() {
61
48
  return _doRender.apply(this, arguments);
62
49
  }
63
-
64
50
  function _doRender() {
65
51
  _doRender = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
66
52
  var renderContext, appendedForm, trustedApplicationsView;
67
53
  return _regeneratorRuntime().wrap(function _callee$(_context) {
68
- while (1) {
69
- switch (_context.prev = _context.next) {
70
- case 0:
71
- _context.next = 2;
72
- return _solidUi.login.ensureLoadedPreferences({
73
- dom: dom,
74
- div: container
75
- });
76
-
77
- case 2:
78
- renderContext = _context.sent;
79
-
80
- if (renderContext.preferencesFile) {
81
- _context.next = 6;
82
- break;
83
- }
84
-
85
- // Could be CORS
86
- console.log('Not doing private class preferences as no access to preferences file. ' + renderContext.preferencesFileError);
87
- return _context.abrupt("return");
88
-
89
- case 6:
90
- appendedForm = _solidUi.widgets.appendForm(dom, formArea, {}, renderContext.me, preferencesForm, renderContext.preferencesFile, complainIfBad);
91
- appendedForm.style.borderStyle = 'none';
92
- trustedApplicationsView = context.session.paneRegistry.byName('trustedApplications');
93
-
94
- if (trustedApplicationsView) {
95
- container.appendChild(trustedApplicationsView.render(null, context));
96
- } // @@ TODO Remove need for casting as any and bang (!) syntax
97
-
98
-
99
- addDeleteSection(container, store, renderContext.me, dom);
54
+ while (1) switch (_context.prev = _context.next) {
55
+ case 0:
56
+ _context.next = 2;
57
+ return _solidUi.login.ensureLoadedPreferences({
58
+ dom: dom,
59
+ div: container
60
+ });
61
+ case 2:
62
+ renderContext = _context.sent;
63
+ if (renderContext.preferencesFile) {
64
+ _context.next = 6;
65
+ break;
66
+ }
67
+ // Could be CORS
68
+ console.log('Not doing private class preferences as no access to preferences file. ' + renderContext.preferencesFileError);
69
+ return _context.abrupt("return");
70
+ case 6:
71
+ appendedForm = _solidUi.widgets.appendForm(dom, formArea, {}, renderContext.me, preferencesForm, renderContext.preferencesFile, complainIfBad);
72
+ appendedForm.style.borderStyle = 'none';
73
+ trustedApplicationsView = context.session.paneRegistry.byName('trustedApplications');
74
+ if (trustedApplicationsView) {
75
+ container.appendChild(trustedApplicationsView.render(null, context));
76
+ }
100
77
 
101
- case 11:
102
- case "end":
103
- return _context.stop();
104
- }
78
+ // @@ TODO Remove need for casting as any and bang (!) syntax
79
+ addDeleteSection(container, store, renderContext.me, dom);
80
+ case 11:
81
+ case "end":
82
+ return _context.stop();
105
83
  }
106
84
  }, _callee);
107
85
  }));
108
86
  return _doRender.apply(this, arguments);
109
87
  }
110
-
111
88
  doRender();
112
89
  return container;
113
90
  }
114
91
  };
115
92
  exports.basicPreferencesPane = basicPreferencesPane;
116
-
117
93
  function setupUserTypesSection(container, dom) {
118
94
  var formContainer = createSection(container, dom, 'User types');
119
95
  var description = formContainer.appendChild(dom.createElement('p'));
@@ -124,11 +100,8 @@ function setupUserTypesSection(container, dom) {
124
100
  var formArea = formContainer.appendChild(dom.createElement('div'));
125
101
  return formArea;
126
102
  }
127
-
128
103
  var _default = basicPreferencesPane; // ends
129
-
130
104
  exports["default"] = _default;
131
-
132
105
  function addDeleteSection(container, store, profile, dom) {
133
106
  var section = createSection(container, dom, 'Delete account');
134
107
  var podServerNodes = store.each(profile, _solidUi.ns.space('storage'), null, profile.doc());
@@ -140,34 +113,27 @@ function addDeleteSection(container, store, profile, dom) {
140
113
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(server) {
141
114
  var deletionLink, listItem;
142
115
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
143
- while (1) {
144
- switch (_context2.prev = _context2.next) {
145
- case 0:
146
- _context2.next = 2;
147
- return generateDeletionLink(server, dom);
148
-
149
- case 2:
150
- deletionLink = _context2.sent;
151
-
152
- if (deletionLink) {
153
- listItem = list.appendChild(dom.createElement('li'));
154
- listItem.appendChild(deletionLink);
155
- }
156
-
157
- case 4:
158
- case "end":
159
- return _context2.stop();
160
- }
116
+ while (1) switch (_context2.prev = _context2.next) {
117
+ case 0:
118
+ _context2.next = 2;
119
+ return generateDeletionLink(server, dom);
120
+ case 2:
121
+ deletionLink = _context2.sent;
122
+ if (deletionLink) {
123
+ listItem = list.appendChild(dom.createElement('li'));
124
+ listItem.appendChild(deletionLink);
125
+ }
126
+ case 4:
127
+ case "end":
128
+ return _context2.stop();
161
129
  }
162
130
  }, _callee2);
163
131
  }));
164
-
165
132
  return function (_x) {
166
133
  return _ref.apply(this, arguments);
167
134
  };
168
135
  }());
169
136
  }
170
-
171
137
  function generateDeletionLink(_x2, _x3) {
172
138
  return _generateDeletionLink.apply(this, arguments);
173
139
  }
@@ -186,105 +152,81 @@ function generateDeletionLink(_x2, _x3) {
186
152
  * @returns URL of the page that Node Solid Server would offer to delete the account, or null if
187
153
  * the URLs we tried give invalid responses.
188
154
  */
189
-
190
-
191
155
  function _generateDeletionLink() {
192
156
  _generateDeletionLink = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(podServer, dom) {
193
157
  var link, deletionUrl;
194
158
  return _regeneratorRuntime().wrap(function _callee3$(_context3) {
195
- while (1) {
196
- switch (_context3.prev = _context3.next) {
197
- case 0:
198
- link = dom.createElement('a');
199
- link.textContent = "Delete your account at ".concat(podServer);
200
- _context3.next = 4;
201
- return getDeletionUrlForServer(podServer);
202
-
203
- case 4:
204
- deletionUrl = _context3.sent;
205
-
206
- if (!(typeof deletionUrl !== 'string')) {
207
- _context3.next = 7;
208
- break;
209
- }
210
-
211
- return _context3.abrupt("return", null);
212
-
213
- case 7:
214
- link.href = deletionUrl;
215
- return _context3.abrupt("return", link);
216
-
217
- case 9:
218
- case "end":
219
- return _context3.stop();
220
- }
159
+ while (1) switch (_context3.prev = _context3.next) {
160
+ case 0:
161
+ link = dom.createElement('a');
162
+ link.textContent = "Delete your account at ".concat(podServer);
163
+ _context3.next = 4;
164
+ return getDeletionUrlForServer(podServer);
165
+ case 4:
166
+ deletionUrl = _context3.sent;
167
+ if (!(typeof deletionUrl !== 'string')) {
168
+ _context3.next = 7;
169
+ break;
170
+ }
171
+ return _context3.abrupt("return", null);
172
+ case 7:
173
+ link.href = deletionUrl;
174
+ return _context3.abrupt("return", link);
175
+ case 9:
176
+ case "end":
177
+ return _context3.stop();
221
178
  }
222
179
  }, _callee3);
223
180
  }));
224
181
  return _generateDeletionLink.apply(this, arguments);
225
182
  }
226
-
227
183
  function getDeletionUrlForServer(_x4) {
228
184
  return _getDeletionUrlForServer.apply(this, arguments);
229
185
  }
230
-
231
186
  function _getDeletionUrlForServer() {
232
187
  _getDeletionUrlForServer = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(server) {
233
188
  var singleUserUrl, multiUserUrl, hostnameParts, multiUserNssResponse, singleUserNssResponse;
234
189
  return _regeneratorRuntime().wrap(function _callee4$(_context4) {
235
- while (1) {
236
- switch (_context4.prev = _context4.next) {
237
- case 0:
238
- singleUserUrl = new URL(server);
239
- multiUserUrl = new URL(server);
240
- multiUserUrl.pathname = singleUserUrl.pathname = '/account/delete';
241
- hostnameParts = multiUserUrl.hostname.split('.'); // Remove `vincent.` from `vincent.dev.inrupt.net`, for example:
242
-
243
- multiUserUrl.hostname = hostnameParts.slice(1).join('.');
244
- _context4.next = 7;
245
- return fetch(multiUserUrl.href, {
246
- method: 'HEAD'
247
- });
248
-
249
- case 7:
250
- multiUserNssResponse = _context4.sent;
251
-
252
- if (!multiUserNssResponse.ok) {
253
- _context4.next = 10;
254
- break;
255
- }
256
-
257
- return _context4.abrupt("return", multiUserUrl.href);
258
-
259
- case 10:
260
- _context4.next = 12;
261
- return fetch(singleUserUrl.href, {
262
- method: 'HEAD'
263
- });
264
-
265
- case 12:
266
- singleUserNssResponse = _context4.sent;
267
-
268
- if (!singleUserNssResponse.ok) {
269
- _context4.next = 15;
270
- break;
271
- }
272
-
273
- return _context4.abrupt("return", singleUserUrl.href);
274
-
275
- case 15:
276
- return _context4.abrupt("return", null);
277
-
278
- case 16:
279
- case "end":
280
- return _context4.stop();
281
- }
190
+ while (1) switch (_context4.prev = _context4.next) {
191
+ case 0:
192
+ singleUserUrl = new URL(server);
193
+ multiUserUrl = new URL(server);
194
+ multiUserUrl.pathname = singleUserUrl.pathname = '/account/delete';
195
+ hostnameParts = multiUserUrl.hostname.split('.'); // Remove `vincent.` from `vincent.dev.inrupt.net`, for example:
196
+ multiUserUrl.hostname = hostnameParts.slice(1).join('.');
197
+ _context4.next = 7;
198
+ return fetch(multiUserUrl.href, {
199
+ method: 'HEAD'
200
+ });
201
+ case 7:
202
+ multiUserNssResponse = _context4.sent;
203
+ if (!multiUserNssResponse.ok) {
204
+ _context4.next = 10;
205
+ break;
206
+ }
207
+ return _context4.abrupt("return", multiUserUrl.href);
208
+ case 10:
209
+ _context4.next = 12;
210
+ return fetch(singleUserUrl.href, {
211
+ method: 'HEAD'
212
+ });
213
+ case 12:
214
+ singleUserNssResponse = _context4.sent;
215
+ if (!singleUserNssResponse.ok) {
216
+ _context4.next = 15;
217
+ break;
218
+ }
219
+ return _context4.abrupt("return", singleUserUrl.href);
220
+ case 15:
221
+ return _context4.abrupt("return", null);
222
+ case 16:
223
+ case "end":
224
+ return _context4.stop();
282
225
  }
283
226
  }, _callee4);
284
227
  }));
285
228
  return _getDeletionUrlForServer.apply(this, arguments);
286
229
  }
287
-
288
230
  function createSection(container, dom, title) {
289
231
  var section = container.appendChild(dom.createElement('div'));
290
232
  section.style.border = '0.3em solid #418d99';
@@ -1 +1 @@
1
- {"version":3,"file":"basicPreferences.js","names":["basicPreferencesPane","icon","icons","iconBase","name","label","_subject","render","subject","context","dom","store","session","complainIfBad","ok","mess","container","appendChild","widgets","errorMessageBlock","createElement","formArea","setupUserTypesSection","loadData","doc","turtle","holds","undefined","parse","uri","preferencesForm","sym","preferencesFormText","ontologyExtra","ontologyData","doRender","login","ensureLoadedPreferences","div","renderContext","preferencesFile","console","log","preferencesFileError","appendedForm","appendForm","me","style","borderStyle","trustedApplicationsView","paneRegistry","byName","addDeleteSection","formContainer","createSection","description","innerText","userTypesLink","href","profile","section","podServerNodes","each","ns","space","podServers","map","node","value","list","forEach","server","generateDeletionLink","deletionLink","listItem","podServer","link","textContent","getDeletionUrlForServer","deletionUrl","singleUserUrl","URL","multiUserUrl","pathname","hostnameParts","hostname","split","slice","join","fetch","method","multiUserNssResponse","singleUserNssResponse","title","border","borderRadius","padding","marginTop","titleElement"],"sources":["../../src/dashboard/basicPreferences.ts"],"sourcesContent":["import { PaneDefinition } from 'pane-registry'\nimport { IndexedFormula, NamedNode, parse, Store } from 'rdflib'\nimport { icons, login, ns, widgets } from 'solid-ui'\nimport ontologyData from './ontologyData.ttl'\nimport preferencesFormText from './preferencesFormText.ttl'\n\nexport const basicPreferencesPane: PaneDefinition = {\n icon: icons.iconBase + 'noun_Sliders_341315_000000.svg',\n name: 'basicPreferences',\n label: _subject => {\n return null\n },\n\n // Render the pane\n // The subject should be the logged in user.\n render: (subject, context) => {\n const dom = context.dom\n const store = context.session.store as Store\n\n function complainIfBad (ok: Boolean, mess: any) {\n if (ok) return\n container.appendChild(widgets.errorMessageBlock(dom, mess, '#fee'))\n }\n\n const container = dom.createElement('div')\n\n const formArea = setupUserTypesSection(container, dom)\n\n function loadData (doc: NamedNode, turtle: String) {\n doc = doc.doc() // remove # from URI if nec\n if (!store.holds(undefined, undefined, undefined, doc)) {\n // If not loaded already\n ;(parse as any)(turtle, store, doc.uri, 'text/turtle', null) // Load form directly\n }\n }\n\n const preferencesForm = store.sym(\n 'urn:uuid:93774ba1-d3b6-41f2-85b6-4ae27ffd2597#this'\n )\n loadData(preferencesForm, preferencesFormText)\n\n const ontologyExtra = store.sym(\n 'urn:uuid:93774ba1-d3b6-41f2-85b6-4ae27ffd2597-ONT'\n )\n loadData(ontologyExtra, ontologyData)\n\n async function doRender () {\n const renderContext = await login.ensureLoadedPreferences({\n dom,\n div: container\n })\n if (!renderContext.preferencesFile) {\n // Could be CORS\n console.log(\n 'Not doing private class preferences as no access to preferences file. ' +\n renderContext.preferencesFileError\n )\n return\n }\n const appendedForm = widgets.appendForm(\n dom,\n formArea,\n {},\n renderContext.me,\n preferencesForm,\n renderContext.preferencesFile,\n complainIfBad\n )\n appendedForm.style.borderStyle = 'none'\n\n const trustedApplicationsView = context.session.paneRegistry.byName('trustedApplications')\n if (trustedApplicationsView) {\n container.appendChild(trustedApplicationsView.render(null, context))\n }\n\n // @@ TODO Remove need for casting as any and bang (!) syntax\n addDeleteSection(container, store, renderContext.me!, dom)\n }\n\n doRender()\n\n return container\n }\n}\n\nfunction setupUserTypesSection (\n container: Element,\n dom: HTMLDocument\n): Element {\n const formContainer = createSection(container, dom, 'User types')\n\n const description = formContainer.appendChild(dom.createElement('p'))\n description.innerText = 'Here you can self-assign user types to help the data browser know which views you would like to access.'\n\n const userTypesLink = formContainer.appendChild(dom.createElement('a'))\n userTypesLink.href = 'https://github.com/solidos/userguide/#role'\n userTypesLink.innerText = 'Read more'\n\n const formArea = formContainer.appendChild(dom.createElement('div'))\n\n return formArea\n}\n\nexport default basicPreferencesPane\n\n// ends\n\nfunction addDeleteSection (\n container: HTMLElement,\n store: IndexedFormula,\n profile: NamedNode,\n dom: HTMLDocument\n): void {\n const section = createSection(container, dom, 'Delete account')\n\n const podServerNodes = store.each(profile, ns.space('storage'), null, profile.doc())\n const podServers = podServerNodes.map(node => node.value)\n\n const list = section.appendChild(dom.createElement('ul'))\n\n podServers.forEach(async server => {\n const deletionLink = await generateDeletionLink(server, dom)\n if (deletionLink) {\n const listItem = list.appendChild(dom.createElement('li'))\n listItem.appendChild(deletionLink)\n }\n })\n}\n\nasync function generateDeletionLink (\n podServer: string,\n dom: HTMLDocument\n): Promise<HTMLElement | null> {\n const link = dom.createElement('a')\n link.textContent = `Delete your account at ${podServer}`\n const deletionUrl = await getDeletionUrlForServer(podServer)\n if (typeof deletionUrl !== 'string') {\n return null\n }\n link.href = deletionUrl\n return link\n}\n\n/**\n * Hacky way to get the deletion link to a Pod\n *\n * This function infers the deletion link by assuming the URL structure of Node Solid server.\n * In the future, Solid will hopefully provide a standardised way of discovering the deletion link:\n * https://github.com/solidos/data-interoperability-panel/issues/18\n *\n * If NSS is in multi-user mode (the case on inrupt.net and solid.community), the deletion URL for\n * vincent.dev.inrupt.net would be at dev.inrupt.net/account/delete. In single-user mode, the\n * deletion URL would be at vincent.dev.inrupt.net/account/delete.\n *\n * @param server Pod server containing the user's account.\n * @returns URL of the page that Node Solid Server would offer to delete the account, or null if\n * the URLs we tried give invalid responses.\n */\nasync function getDeletionUrlForServer (\n server: string\n): Promise<string | null> {\n const singleUserUrl = new URL(server)\n const multiUserUrl = new URL(server)\n multiUserUrl.pathname = singleUserUrl.pathname = '/account/delete'\n\n const hostnameParts = multiUserUrl.hostname.split('.')\n // Remove `vincent.` from `vincent.dev.inrupt.net`, for example:\n multiUserUrl.hostname = hostnameParts.slice(1).join('.')\n\n const multiUserNssResponse = await fetch(multiUserUrl.href, {\n method: 'HEAD'\n })\n if (multiUserNssResponse.ok) {\n return multiUserUrl.href\n }\n\n const singleUserNssResponse = await fetch(singleUserUrl.href, {\n method: 'HEAD'\n })\n if (singleUserNssResponse.ok) {\n return singleUserUrl.href\n }\n return null\n}\n\nfunction createSection (\n container: Element,\n dom: HTMLDocument,\n title: string\n): Element {\n const section = container.appendChild(dom.createElement('div'))\n section.style.border = '0.3em solid #418d99'\n section.style.borderRadius = '0.5em'\n section.style.padding = '0.7em'\n section.style.marginTop = '0.7em'\n\n const titleElement = section.appendChild(dom.createElement('h3'))\n titleElement.innerText = title\n\n return section\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"basicPreferences.js","names":["basicPreferencesPane","icon","icons","iconBase","name","label","_subject","render","subject","context","dom","store","session","complainIfBad","ok","mess","container","appendChild","widgets","errorMessageBlock","createElement","formArea","setupUserTypesSection","loadData","doc","turtle","holds","undefined","parse","uri","preferencesForm","sym","preferencesFormText","ontologyExtra","ontologyData","doRender","login","ensureLoadedPreferences","div","renderContext","preferencesFile","console","log","preferencesFileError","appendedForm","appendForm","me","style","borderStyle","trustedApplicationsView","paneRegistry","byName","addDeleteSection","formContainer","createSection","description","innerText","userTypesLink","href","profile","section","podServerNodes","each","ns","space","podServers","map","node","value","list","forEach","server","generateDeletionLink","deletionLink","listItem","podServer","link","textContent","getDeletionUrlForServer","deletionUrl","singleUserUrl","URL","multiUserUrl","pathname","hostnameParts","hostname","split","slice","join","fetch","method","multiUserNssResponse","singleUserNssResponse","title","border","borderRadius","padding","marginTop","titleElement"],"sources":["../../src/dashboard/basicPreferences.ts"],"sourcesContent":["import { PaneDefinition } from 'pane-registry'\nimport { IndexedFormula, NamedNode, parse, Store } from 'rdflib'\nimport { icons, login, ns, widgets } from 'solid-ui'\nimport ontologyData from './ontologyData.ttl'\nimport preferencesFormText from './preferencesFormText.ttl'\n\nexport const basicPreferencesPane: PaneDefinition = {\n icon: icons.iconBase + 'noun_Sliders_341315_000000.svg',\n name: 'basicPreferences',\n label: _subject => {\n return null\n },\n\n // Render the pane\n // The subject should be the logged in user.\n render: (subject, context) => {\n const dom = context.dom\n const store = context.session.store as Store\n\n function complainIfBad (ok: Boolean, mess: any) {\n if (ok) return\n container.appendChild(widgets.errorMessageBlock(dom, mess, '#fee'))\n }\n\n const container = dom.createElement('div')\n\n const formArea = setupUserTypesSection(container, dom)\n\n function loadData (doc: NamedNode, turtle: String) {\n doc = doc.doc() // remove # from URI if nec\n if (!store.holds(undefined, undefined, undefined, doc)) {\n // If not loaded already\n ;(parse as any)(turtle, store, doc.uri, 'text/turtle', null) // Load form directly\n }\n }\n\n const preferencesForm = store.sym(\n 'urn:uuid:93774ba1-d3b6-41f2-85b6-4ae27ffd2597#this'\n )\n loadData(preferencesForm, preferencesFormText)\n\n const ontologyExtra = store.sym(\n 'urn:uuid:93774ba1-d3b6-41f2-85b6-4ae27ffd2597-ONT'\n )\n loadData(ontologyExtra, ontologyData)\n\n async function doRender () {\n const renderContext = await login.ensureLoadedPreferences({\n dom,\n div: container\n })\n if (!renderContext.preferencesFile) {\n // Could be CORS\n console.log(\n 'Not doing private class preferences as no access to preferences file. ' +\n renderContext.preferencesFileError\n )\n return\n }\n const appendedForm = widgets.appendForm(\n dom,\n formArea,\n {},\n renderContext.me,\n preferencesForm,\n renderContext.preferencesFile,\n complainIfBad\n )\n appendedForm.style.borderStyle = 'none'\n\n const trustedApplicationsView = context.session.paneRegistry.byName('trustedApplications')\n if (trustedApplicationsView) {\n container.appendChild(trustedApplicationsView.render(null, context))\n }\n\n // @@ TODO Remove need for casting as any and bang (!) syntax\n addDeleteSection(container, store, renderContext.me!, dom)\n }\n\n doRender()\n\n return container\n }\n}\n\nfunction setupUserTypesSection (\n container: Element,\n dom: HTMLDocument\n): Element {\n const formContainer = createSection(container, dom, 'User types')\n\n const description = formContainer.appendChild(dom.createElement('p'))\n description.innerText = 'Here you can self-assign user types to help the data browser know which views you would like to access.'\n\n const userTypesLink = formContainer.appendChild(dom.createElement('a'))\n userTypesLink.href = 'https://github.com/solidos/userguide/#role'\n userTypesLink.innerText = 'Read more'\n\n const formArea = formContainer.appendChild(dom.createElement('div'))\n\n return formArea\n}\n\nexport default basicPreferencesPane\n\n// ends\n\nfunction addDeleteSection (\n container: HTMLElement,\n store: IndexedFormula,\n profile: NamedNode,\n dom: HTMLDocument\n): void {\n const section = createSection(container, dom, 'Delete account')\n\n const podServerNodes = store.each(profile, ns.space('storage'), null, profile.doc())\n const podServers = podServerNodes.map(node => node.value)\n\n const list = section.appendChild(dom.createElement('ul'))\n\n podServers.forEach(async server => {\n const deletionLink = await generateDeletionLink(server, dom)\n if (deletionLink) {\n const listItem = list.appendChild(dom.createElement('li'))\n listItem.appendChild(deletionLink)\n }\n })\n}\n\nasync function generateDeletionLink (\n podServer: string,\n dom: HTMLDocument\n): Promise<HTMLElement | null> {\n const link = dom.createElement('a')\n link.textContent = `Delete your account at ${podServer}`\n const deletionUrl = await getDeletionUrlForServer(podServer)\n if (typeof deletionUrl !== 'string') {\n return null\n }\n link.href = deletionUrl\n return link\n}\n\n/**\n * Hacky way to get the deletion link to a Pod\n *\n * This function infers the deletion link by assuming the URL structure of Node Solid server.\n * In the future, Solid will hopefully provide a standardised way of discovering the deletion link:\n * https://github.com/solidos/data-interoperability-panel/issues/18\n *\n * If NSS is in multi-user mode (the case on inrupt.net and solid.community), the deletion URL for\n * vincent.dev.inrupt.net would be at dev.inrupt.net/account/delete. In single-user mode, the\n * deletion URL would be at vincent.dev.inrupt.net/account/delete.\n *\n * @param server Pod server containing the user's account.\n * @returns URL of the page that Node Solid Server would offer to delete the account, or null if\n * the URLs we tried give invalid responses.\n */\nasync function getDeletionUrlForServer (\n server: string\n): Promise<string | null> {\n const singleUserUrl = new URL(server)\n const multiUserUrl = new URL(server)\n multiUserUrl.pathname = singleUserUrl.pathname = '/account/delete'\n\n const hostnameParts = multiUserUrl.hostname.split('.')\n // Remove `vincent.` from `vincent.dev.inrupt.net`, for example:\n multiUserUrl.hostname = hostnameParts.slice(1).join('.')\n\n const multiUserNssResponse = await fetch(multiUserUrl.href, {\n method: 'HEAD'\n })\n if (multiUserNssResponse.ok) {\n return multiUserUrl.href\n }\n\n const singleUserNssResponse = await fetch(singleUserUrl.href, {\n method: 'HEAD'\n })\n if (singleUserNssResponse.ok) {\n return singleUserUrl.href\n }\n return null\n}\n\nfunction createSection (\n container: Element,\n dom: HTMLDocument,\n title: string\n): Element {\n const section = container.appendChild(dom.createElement('div'))\n section.style.border = '0.3em solid #418d99'\n section.style.borderRadius = '0.5em'\n section.style.padding = '0.7em'\n section.style.marginTop = '0.7em'\n\n const titleElement = section.appendChild(dom.createElement('h3'))\n titleElement.innerText = title\n\n return section\n}\n"],"mappings":"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"}
File without changes
File without changes
@@ -4,63 +4,49 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = exports.dashboardPane = void 0;
7
-
8
7
  var _solidUi = require("solid-ui");
9
-
10
8
  var _solidLogic = require("solid-logic");
11
-
12
9
  var _homepage = require("./homepage");
13
-
14
10
  var dashboardPane = {
15
11
  icon: _solidUi.icons.iconBase + 'noun_547570.svg',
16
12
  name: 'dashboard',
17
13
  label: function label(subject) {
18
14
  console.log();
19
-
20
15
  if (subject.uri === subject.site().uri) {
21
16
  return 'Dashboard';
22
17
  }
23
-
24
18
  return null;
25
19
  },
26
20
  render: function render(subject, context) {
27
21
  console.log('Dashboard Pane Render');
28
22
  var dom = context.dom;
29
23
  var container = dom.createElement('div');
30
-
31
24
  var runBuildPage = function runBuildPage() {
32
25
  container.innerHTML = '';
33
26
  buildPage(container, _solidLogic.authn.currentUser() || null, context, subject);
34
27
  };
35
-
36
28
  _solidLogic.authSession.onLogin(function () {
37
29
  // console.log('On Login')
38
30
  runBuildPage();
39
31
  });
40
-
41
32
  _solidLogic.authSession.onSessionRestore(function () {
42
33
  // console.log('On Session Restore')
43
34
  runBuildPage();
44
- }); // console.log('Initial Load')
45
-
46
-
35
+ });
36
+ // console.log('Initial Load')
47
37
  runBuildPage();
48
38
  return container;
49
39
  }
50
40
  };
51
41
  exports.dashboardPane = dashboardPane;
52
-
53
42
  function buildPage(container, webId, context, subject) {
54
43
  // if uri then SolidOS is a browse.html web app
55
44
  var uri = new URL(window.location.href).searchParams.get('uri');
56
-
57
45
  if (webId && (uri || webId.site().uri === subject.site().uri)) {
58
46
  return buildDashboard(container, context);
59
47
  }
60
-
61
48
  return buildHomePage(container, subject);
62
49
  }
63
-
64
50
  function buildDashboard(container, context) {
65
51
  // console.log('build dashboard')
66
52
  // @@ TODO get a proper type
@@ -69,7 +55,6 @@ function buildDashboard(container, context) {
69
55
  return container.appendChild(dashboard);
70
56
  });
71
57
  }
72
-
73
58
  function buildHomePage(container, subject) {
74
59
  // console.log('build home page')
75
60
  var wrapper = document.createElement('div');
@@ -85,7 +70,6 @@ function buildHomePage(container, subject) {
85
70
  return shadow.appendChild(homepage);
86
71
  });
87
72
  }
88
-
89
73
  var _default = dashboardPane;
90
74
  exports["default"] = _default;
91
75
  //# sourceMappingURL=dashboardPane.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dashboardPane.js","names":["dashboardPane","icon","icons","iconBase","name","label","subject","console","log","uri","site","render","context","dom","container","createElement","runBuildPage","innerHTML","buildPage","authn","currentUser","authSession","onLogin","onSessionRestore","webId","URL","window","location","href","searchParams","get","buildDashboard","buildHomePage","outliner","getOutliner","getDashboard","then","dashboard","appendChild","wrapper","document","shadow","attachShadow","mode","link","rel","generateHomepage","store","fetcher","homepage"],"sources":["../../src/dashboard/dashboardPane.ts"],"sourcesContent":["import { icons } from 'solid-ui'\nimport { authn, authSession, store } from 'solid-logic'\nimport { Fetcher, NamedNode } from 'rdflib'\nimport { generateHomepage } from './homepage'\nimport { DataBrowserContext, PaneDefinition } from 'pane-registry'\n\nexport const dashboardPane: PaneDefinition = {\n icon: icons.iconBase + 'noun_547570.svg',\n name: 'dashboard',\n label: subject => {\n console.log()\n if (subject.uri === subject.site().uri) {\n return 'Dashboard'\n }\n return null\n },\n render: (subject, context) => {\n console.log('Dashboard Pane Render')\n const dom = context.dom\n const container = dom.createElement('div')\n const runBuildPage = () => {\n container.innerHTML = ''\n buildPage(\n container,\n authn.currentUser() || null,\n context,\n subject\n )\n }\n\n authSession.onLogin(() => {\n // console.log('On Login')\n runBuildPage()\n })\n authSession.onSessionRestore(() => {\n // console.log('On Session Restore')\n runBuildPage()\n })\n // console.log('Initial Load')\n runBuildPage()\n\n return container\n }\n}\n\nfunction buildPage (\n container: HTMLElement,\n webId: NamedNode | null,\n context: DataBrowserContext,\n subject: NamedNode\n) {\n // if uri then SolidOS is a browse.html web app\n const uri = (new URL(window.location.href)).searchParams.get('uri')\n if (webId && (uri || webId.site().uri === subject.site().uri)) {\n return buildDashboard(container, context)\n }\n return buildHomePage(container, subject)\n}\n\nfunction buildDashboard (container: HTMLElement, context: DataBrowserContext) {\n // console.log('build dashboard')\n // @@ TODO get a proper type\n const outliner: any = context.getOutliner(context.dom)\n outliner\n .getDashboard()\n .then((dashboard: HTMLElement) => container.appendChild(dashboard))\n}\n\nfunction buildHomePage (container: HTMLElement, subject: NamedNode) {\n // console.log('build home page')\n const wrapper = document.createElement('div')\n container.appendChild(wrapper)\n const shadow = wrapper.attachShadow({ mode: 'open' })\n const link = document.createElement('link')\n link.rel = 'stylesheet'\n link.href = '/common/css/bootstrap.min.css'\n shadow.appendChild(link)\n generateHomepage(subject, store, store.fetcher as Fetcher).then(homepage =>\n shadow.appendChild(homepage)\n )\n}\n\nexport default dashboardPane\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AAGO,IAAMA,aAA6B,GAAG;EAC3CC,IAAI,EAAEC,cAAA,CAAMC,QAAN,GAAiB,iBADoB;EAE3CC,IAAI,EAAE,WAFqC;EAG3CC,KAAK,EAAE,eAAAC,OAAO,EAAI;IAChBC,OAAO,CAACC,GAAR;;IACA,IAAIF,OAAO,CAACG,GAAR,KAAgBH,OAAO,CAACI,IAAR,GAAeD,GAAnC,EAAwC;MACtC,OAAO,WAAP;IACD;;IACD,OAAO,IAAP;EACD,CAT0C;EAU3CE,MAAM,EAAE,gBAACL,OAAD,EAAUM,OAAV,EAAsB;IAC5BL,OAAO,CAACC,GAAR,CAAY,uBAAZ;IACA,IAAMK,GAAG,GAAGD,OAAO,CAACC,GAApB;IACA,IAAMC,SAAS,GAAGD,GAAG,CAACE,aAAJ,CAAkB,KAAlB,CAAlB;;IACA,IAAMC,YAAY,GAAG,SAAfA,YAAe,GAAM;MACzBF,SAAS,CAACG,SAAV,GAAsB,EAAtB;MACAC,SAAS,CACPJ,SADO,EAEPK,iBAAA,CAAMC,WAAN,MAAuB,IAFhB,EAGPR,OAHO,EAIPN,OAJO,CAAT;IAMD,CARD;;IAUAe,uBAAA,CAAYC,OAAZ,CAAoB,YAAM;MACxB;MACAN,YAAY;IACb,CAHD;;IAIAK,uBAAA,CAAYE,gBAAZ,CAA6B,YAAM;MACjC;MACAP,YAAY;IACb,CAHD,EAlB4B,CAsB5B;;;IACAA,YAAY;IAEZ,OAAOF,SAAP;EACD;AApC0C,CAAtC;;;AAuCP,SAASI,SAAT,CACEJ,SADF,EAEEU,KAFF,EAGEZ,OAHF,EAIEN,OAJF,EAKE;EACA;EACA,IAAMG,GAAG,GAAI,IAAIgB,GAAJ,CAAQC,MAAM,CAACC,QAAP,CAAgBC,IAAxB,CAAD,CAAgCC,YAAhC,CAA6CC,GAA7C,CAAiD,KAAjD,CAAZ;;EACA,IAAIN,KAAK,KAAKf,GAAG,IAAIe,KAAK,CAACd,IAAN,GAAaD,GAAb,KAAqBH,OAAO,CAACI,IAAR,GAAeD,GAAhD,CAAT,EAA+D;IAC7D,OAAOsB,cAAc,CAACjB,SAAD,EAAYF,OAAZ,CAArB;EACD;;EACD,OAAOoB,aAAa,CAAClB,SAAD,EAAYR,OAAZ,CAApB;AACD;;AAED,SAASyB,cAAT,CAAyBjB,SAAzB,EAAiDF,OAAjD,EAA8E;EAC5E;EACA;EACA,IAAMqB,QAAa,GAAGrB,OAAO,CAACsB,WAAR,CAAoBtB,OAAO,CAACC,GAA5B,CAAtB;EACAoB,QAAQ,CACLE,YADH,GAEGC,IAFH,CAEQ,UAACC,SAAD;IAAA,OAA4BvB,SAAS,CAACwB,WAAV,CAAsBD,SAAtB,CAA5B;EAAA,CAFR;AAGD;;AAED,SAASL,aAAT,CAAwBlB,SAAxB,EAAgDR,OAAhD,EAAoE;EAClE;EACA,IAAMiC,OAAO,GAAGC,QAAQ,CAACzB,aAAT,CAAuB,KAAvB,CAAhB;EACAD,SAAS,CAACwB,WAAV,CAAsBC,OAAtB;EACA,IAAME,MAAM,GAAGF,OAAO,CAACG,YAAR,CAAqB;IAAEC,IAAI,EAAE;EAAR,CAArB,CAAf;EACA,IAAMC,IAAI,GAAGJ,QAAQ,CAACzB,aAAT,CAAuB,MAAvB,CAAb;EACA6B,IAAI,CAACC,GAAL,GAAW,YAAX;EACAD,IAAI,CAAChB,IAAL,GAAY,+BAAZ;EACAa,MAAM,CAACH,WAAP,CAAmBM,IAAnB;EACA,IAAAE,0BAAA,EAAiBxC,OAAjB,EAA0ByC,iBAA1B,EAAiCA,iBAAA,CAAMC,OAAvC,EAA2DZ,IAA3D,CAAgE,UAAAa,QAAQ;IAAA,OACtER,MAAM,CAACH,WAAP,CAAmBW,QAAnB,CADsE;EAAA,CAAxE;AAGD;;eAEcjD,a"}
1
+ {"version":3,"file":"dashboardPane.js","names":["dashboardPane","icon","icons","iconBase","name","label","subject","console","log","uri","site","render","context","dom","container","createElement","runBuildPage","innerHTML","buildPage","authn","currentUser","authSession","onLogin","onSessionRestore","webId","URL","window","location","href","searchParams","get","buildDashboard","buildHomePage","outliner","getOutliner","getDashboard","then","dashboard","appendChild","wrapper","document","shadow","attachShadow","mode","link","rel","generateHomepage","store","fetcher","homepage"],"sources":["../../src/dashboard/dashboardPane.ts"],"sourcesContent":["import { icons } from 'solid-ui'\nimport { authn, authSession, store } from 'solid-logic'\nimport { Fetcher, NamedNode } from 'rdflib'\nimport { generateHomepage } from './homepage'\nimport { DataBrowserContext, PaneDefinition } from 'pane-registry'\n\nexport const dashboardPane: PaneDefinition = {\n icon: icons.iconBase + 'noun_547570.svg',\n name: 'dashboard',\n label: subject => {\n console.log()\n if (subject.uri === subject.site().uri) {\n return 'Dashboard'\n }\n return null\n },\n render: (subject, context) => {\n console.log('Dashboard Pane Render')\n const dom = context.dom\n const container = dom.createElement('div')\n const runBuildPage = () => {\n container.innerHTML = ''\n buildPage(\n container,\n authn.currentUser() || null,\n context,\n subject\n )\n }\n\n authSession.onLogin(() => {\n // console.log('On Login')\n runBuildPage()\n })\n authSession.onSessionRestore(() => {\n // console.log('On Session Restore')\n runBuildPage()\n })\n // console.log('Initial Load')\n runBuildPage()\n\n return container\n }\n}\n\nfunction buildPage (\n container: HTMLElement,\n webId: NamedNode | null,\n context: DataBrowserContext,\n subject: NamedNode\n) {\n // if uri then SolidOS is a browse.html web app\n const uri = (new URL(window.location.href)).searchParams.get('uri')\n if (webId && (uri || webId.site().uri === subject.site().uri)) {\n return buildDashboard(container, context)\n }\n return buildHomePage(container, subject)\n}\n\nfunction buildDashboard (container: HTMLElement, context: DataBrowserContext) {\n // console.log('build dashboard')\n // @@ TODO get a proper type\n const outliner: any = context.getOutliner(context.dom)\n outliner\n .getDashboard()\n .then((dashboard: HTMLElement) => container.appendChild(dashboard))\n}\n\nfunction buildHomePage (container: HTMLElement, subject: NamedNode) {\n // console.log('build home page')\n const wrapper = document.createElement('div')\n container.appendChild(wrapper)\n const shadow = wrapper.attachShadow({ mode: 'open' })\n const link = document.createElement('link')\n link.rel = 'stylesheet'\n link.href = '/common/css/bootstrap.min.css'\n shadow.appendChild(link)\n generateHomepage(subject, store, store.fetcher as Fetcher).then(homepage =>\n shadow.appendChild(homepage)\n )\n}\n\nexport default dashboardPane\n"],"mappings":"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"}
File without changes
File without changes