solid-panes 3.7.2 → 3.7.3-125af630

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 (354) hide show
  1. package/dist/dashboard/basicPreferences.js +155 -0
  2. package/dist/dashboard/basicPreferences.js.map +1 -0
  3. package/dist/dashboard/dashboardPane.js +63 -0
  4. package/dist/dashboard/dashboardPane.js.map +1 -0
  5. package/dist/dashboard/homepage.js +63 -0
  6. package/dist/dashboard/homepage.js.map +1 -0
  7. package/dist/home/homePane.js +68 -0
  8. package/dist/home/homePane.js.map +1 -0
  9. package/dist/index.js +48 -0
  10. package/dist/index.js.map +1 -0
  11. package/dist/internal/internalPane.js +195 -0
  12. package/dist/internal/internalPane.js.map +1 -0
  13. package/dist/mainPage/footer.js +16 -0
  14. package/dist/mainPage/footer.js.map +1 -0
  15. package/dist/mainPage/header.js +84 -0
  16. package/dist/mainPage/header.js.map +1 -0
  17. package/{lib → dist}/mainPage/index.d.ts.map +1 -1
  18. package/dist/mainPage/index.js +30 -0
  19. package/dist/mainPage/index.js.map +1 -0
  20. package/dist/outline/context.js +13 -0
  21. package/dist/outline/context.js.map +1 -0
  22. package/dist/outline/propertyViews.js +33 -0
  23. package/dist/outline/propertyViews.js.map +1 -0
  24. package/dist/outline/viewAsImage.js +7 -0
  25. package/dist/outline/viewAsImage.js.map +1 -0
  26. package/{lib → dist}/outline/viewAsMbox.js +4 -14
  27. package/dist/outline/viewAsMbox.js.map +1 -0
  28. package/dist/pad/padPane.js +420 -0
  29. package/dist/pad/padPane.js.map +1 -0
  30. package/dist/sharing/sharingPane.js +45 -0
  31. package/dist/sharing/sharingPane.js.map +1 -0
  32. package/dist/tabbed/tabbedPane.js +55 -0
  33. package/dist/tabbed/tabbedPane.js.map +1 -0
  34. package/dist/trustedApplications/trustedApplications.dom.js +158 -0
  35. package/dist/trustedApplications/trustedApplications.dom.js.map +1 -0
  36. package/dist/trustedApplications/trustedApplications.utils.js +24 -0
  37. package/dist/trustedApplications/trustedApplications.utils.js.map +1 -0
  38. package/dist/trustedApplications/trustedApplications.view.js +62 -0
  39. package/dist/trustedApplications/trustedApplications.view.js.map +1 -0
  40. package/dist/types.js +2 -0
  41. package/dist/types.js.map +1 -0
  42. package/dist/versionInfo.js +31 -0
  43. package/dist/versionInfo.js.map +1 -0
  44. package/package.json +34 -22
  45. package/Documentation/VisualLanguage.html +0 -538
  46. package/Documentation/conventions.md +0 -333
  47. package/coverage/clover.xml +0 -152
  48. package/coverage/coverage-final.json +0 -6
  49. package/coverage/lcov-report/base.css +0 -224
  50. package/coverage/lcov-report/block-navigation.js +0 -87
  51. package/coverage/lcov-report/favicon.png +0 -0
  52. package/coverage/lcov-report/index.html +0 -131
  53. package/coverage/lcov-report/outline/index.html +0 -161
  54. package/coverage/lcov-report/outline/outlineIcons.js.html +0 -565
  55. package/coverage/lcov-report/outline/propertyViews.ts.html +0 -196
  56. package/coverage/lcov-report/outline/viewAsImage.ts.html +0 -121
  57. package/coverage/lcov-report/outline/viewAsMbox.ts.html +0 -127
  58. package/coverage/lcov-report/prettify.css +0 -1
  59. package/coverage/lcov-report/prettify.js +0 -2
  60. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  61. package/coverage/lcov-report/sorter.js +0 -210
  62. package/coverage/lcov-report/trustedApplications/index.html +0 -116
  63. package/coverage/lcov-report/trustedApplications/trustedApplications.utils.ts.html +0 -238
  64. package/coverage/lcov.info +0 -204
  65. package/dev/index.html +0 -28
  66. package/dev/loader.ts +0 -91
  67. package/dev/pane/index.ts +0 -10
  68. package/doc/images/panes-for-classes.epgz +0 -0
  69. package/doc/images/panes-for-classes.svg +0 -609
  70. package/eslint.config.mjs +0 -34
  71. package/jest.config.js +0 -27
  72. package/jest.setup.ts +0 -4
  73. package/lib/RDFXMLPane.js +0 -59
  74. package/lib/RDFXMLPane.js.map +0 -1
  75. package/lib/argument/argumentPane.js +0 -62
  76. package/lib/argument/argumentPane.js.map +0 -1
  77. package/lib/attach/attachPane.js +0 -404
  78. package/lib/attach/attachPane.js.map +0 -1
  79. package/lib/audio/audioPane.js +0 -183
  80. package/lib/audio/audioPane.js.map +0 -1
  81. package/lib/classInstancePane.js +0 -93
  82. package/lib/classInstancePane.js.map +0 -1
  83. package/lib/dashboard/basicPreferences.js +0 -229
  84. package/lib/dashboard/basicPreferences.js.map +0 -1
  85. package/lib/dashboard/dashboardPane.js +0 -73
  86. package/lib/dashboard/dashboardPane.js.map +0 -1
  87. package/lib/dashboard/homepage.js +0 -86
  88. package/lib/dashboard/homepage.js.map +0 -1
  89. package/lib/dataContentPane.js +0 -259
  90. package/lib/dataContentPane.js.map +0 -1
  91. package/lib/defaultPane.js +0 -76
  92. package/lib/defaultPane.js.map +0 -1
  93. package/lib/dokieli/dokieliPane.js +0 -173
  94. package/lib/dokieli/dokieliPane.js.map +0 -1
  95. package/lib/dokieli/new.js +0 -9
  96. package/lib/dokieli/new.js.map +0 -1
  97. package/lib/form/pane.js +0 -186
  98. package/lib/form/pane.js.map +0 -1
  99. package/lib/global.d.js +0 -2
  100. package/lib/global.d.js.map +0 -1
  101. package/lib/home/homePane.js +0 -91
  102. package/lib/home/homePane.js.map +0 -1
  103. package/lib/humanReadablePane.js +0 -138
  104. package/lib/humanReadablePane.js.map +0 -1
  105. package/lib/imagePane.js +0 -71
  106. package/lib/imagePane.js.map +0 -1
  107. package/lib/index.js +0 -112
  108. package/lib/index.js.map +0 -1
  109. package/lib/internal/internalPane.js +0 -184
  110. package/lib/internal/internalPane.js.map +0 -1
  111. package/lib/mainPage/footer.js +0 -22
  112. package/lib/mainPage/footer.js.map +0 -1
  113. package/lib/mainPage/header.js +0 -152
  114. package/lib/mainPage/header.js.map +0 -1
  115. package/lib/mainPage/index.js +0 -42
  116. package/lib/mainPage/index.js.map +0 -1
  117. package/lib/microblogPane/microblogPane.js +0 -1032
  118. package/lib/microblogPane/microblogPane.js.map +0 -1
  119. package/lib/n3Pane.js +0 -57
  120. package/lib/n3Pane.js.map +0 -1
  121. package/lib/outline/context.js +0 -19
  122. package/lib/outline/context.js.map +0 -1
  123. package/lib/outline/manager.js +0 -2264
  124. package/lib/outline/manager.js.map +0 -1
  125. package/lib/outline/manager.test.d.ts +0 -2
  126. package/lib/outline/manager.test.d.ts.map +0 -1
  127. package/lib/outline/manager.test.js +0 -210
  128. package/lib/outline/manager.test.js.map +0 -1
  129. package/lib/outline/outlineIcons.js +0 -128
  130. package/lib/outline/outlineIcons.js.map +0 -1
  131. package/lib/outline/propertyViews.js +0 -44
  132. package/lib/outline/propertyViews.js.map +0 -1
  133. package/lib/outline/propertyViews.test.d.ts +0 -2
  134. package/lib/outline/propertyViews.test.d.ts.map +0 -1
  135. package/lib/outline/propertyViews.test.js +0 -27
  136. package/lib/outline/propertyViews.test.js.map +0 -1
  137. package/lib/outline/queryByExample.js +0 -286
  138. package/lib/outline/queryByExample.js.map +0 -1
  139. package/lib/outline/userInput.js +0 -1817
  140. package/lib/outline/userInput.js.map +0 -1
  141. package/lib/outline/viewAsImage.js +0 -17
  142. package/lib/outline/viewAsImage.js.map +0 -1
  143. package/lib/outline/viewAsMbox.js.map +0 -1
  144. package/lib/pad/padPane.js +0 -417
  145. package/lib/pad/padPane.js.map +0 -1
  146. package/lib/playlist/playlistPane.js +0 -125
  147. package/lib/playlist/playlistPane.js.map +0 -1
  148. package/lib/registerPanes.js +0 -146
  149. package/lib/registerPanes.js.map +0 -1
  150. package/lib/schedule/formsForSchedule.js +0 -8
  151. package/lib/schedule/formsForSchedule.js.map +0 -1
  152. package/lib/schedule/schedulePane.js +0 -895
  153. package/lib/schedule/schedulePane.js.map +0 -1
  154. package/lib/sharing/sharingPane.js +0 -49
  155. package/lib/sharing/sharingPane.js.map +0 -1
  156. package/lib/slideshow/slideshowPane.js +0 -84
  157. package/lib/slideshow/slideshowPane.js.map +0 -1
  158. package/lib/socialPane.js +0 -431
  159. package/lib/socialPane.js.map +0 -1
  160. package/lib/tabbed/tabbedPane.js +0 -72
  161. package/lib/tabbed/tabbedPane.js.map +0 -1
  162. package/lib/tableViewPane.js +0 -58
  163. package/lib/tableViewPane.js.map +0 -1
  164. package/lib/test-import-export/common.js +0 -12
  165. package/lib/test-import-export/common.js.map +0 -1
  166. package/lib/test-import-export/edit-importer.js +0 -25
  167. package/lib/test-import-export/edit-importer.js.map +0 -1
  168. package/lib/test-import-export/testImportExport.js +0 -2
  169. package/lib/test-import-export/testImportExport.js.map +0 -1
  170. package/lib/transaction/pane.js +0 -479
  171. package/lib/transaction/pane.js.map +0 -1
  172. package/lib/transaction/period.js +0 -325
  173. package/lib/transaction/period.js.map +0 -1
  174. package/lib/trip/tripPane.js +0 -176
  175. package/lib/trip/tripPane.js.map +0 -1
  176. package/lib/trustedApplications/trustedApplications.dom.js +0 -177
  177. package/lib/trustedApplications/trustedApplications.dom.js.map +0 -1
  178. package/lib/trustedApplications/trustedApplications.test.d.ts +0 -2
  179. package/lib/trustedApplications/trustedApplications.test.d.ts.map +0 -1
  180. package/lib/trustedApplications/trustedApplications.test.js +0 -64
  181. package/lib/trustedApplications/trustedApplications.test.js.map +0 -1
  182. package/lib/trustedApplications/trustedApplications.utils.js +0 -34
  183. package/lib/trustedApplications/trustedApplications.utils.js.map +0 -1
  184. package/lib/trustedApplications/trustedApplications.view.js +0 -87
  185. package/lib/trustedApplications/trustedApplications.view.js.map +0 -1
  186. package/lib/types.js +0 -6
  187. package/lib/types.js.map +0 -1
  188. package/lib/ui/pane.js +0 -148
  189. package/lib/ui/pane.js.map +0 -1
  190. package/lib/versionInfo.d.ts +0 -34
  191. package/lib/versionInfo.d.ts.map +0 -1
  192. package/lib/versionInfo.js +0 -39
  193. package/lib/versionInfo.js.map +0 -1
  194. package/lib/video/videoPane.js +0 -44
  195. package/lib/video/videoPane.js.map +0 -1
  196. package/src/RDFXMLPane.js +0 -60
  197. package/src/argument/argumentPane.js +0 -65
  198. package/src/argument/argument_icon_v04.jpg +0 -0
  199. package/src/argument/icon_argument.png +0 -0
  200. package/src/argument/transparentyingyang.png +0 -0
  201. package/src/attach/attachPane.js +0 -508
  202. package/src/attach/tbl-paperclip-128.png +0 -0
  203. package/src/attach/tbl-paperclip-22.png +0 -0
  204. package/src/attach/tbl-paperclip-22a.png +0 -0
  205. package/src/audio/audioPane.js +0 -197
  206. package/src/chatPreferencesForm.ttl +0 -12
  207. package/src/classInstancePane.js +0 -110
  208. package/src/dashboard/basicPreferences.ts +0 -201
  209. package/src/dashboard/dashboardPane.ts +0 -83
  210. package/src/dashboard/homepage.ts +0 -72
  211. package/src/dashboard/languages/codes.html +0 -8611
  212. package/src/dashboard/languages/codes.xml +0 -3563
  213. package/src/dashboard/languages/codes2.txt +0 -170
  214. package/src/dashboard/languages/foo +0 -70
  215. package/src/dashboard/languages/foo.ttl +0 -0
  216. package/src/dashboard/languages/get-language-names.sh +0 -12
  217. package/src/dashboard/ontologyData.ttl +0 -35
  218. package/src/dashboard/preferencesFormText.ttl +0 -18
  219. package/src/dataContentPane.js +0 -290
  220. package/src/defaultPane.js +0 -102
  221. package/src/dokieli/Makefile +0 -6
  222. package/src/dokieli/dokieliPane.js +0 -190
  223. package/src/dokieli/new.html +0 -30
  224. package/src/dokieli/new.js +0 -22
  225. package/src/form/form-22.png +0 -0
  226. package/src/form/form-b-22.png +0 -0
  227. package/src/form/form.graffle +0 -0
  228. package/src/form/form.png +0 -0
  229. package/src/form/pane.js +0 -217
  230. package/src/form/psuedocode-notes.txt +0 -57
  231. package/src/global.d.ts +0 -4
  232. package/src/home/homePane.ts +0 -72
  233. package/src/humanReadablePane.js +0 -150
  234. package/src/imagePane.js +0 -75
  235. package/src/index.ts +0 -71
  236. package/src/internal/internalPane.ts +0 -263
  237. package/src/mainPage/footer.ts +0 -19
  238. package/src/mainPage/header.ts +0 -79
  239. package/src/mainPage/index.ts +0 -20
  240. package/src/meeting/Makefile +0 -3
  241. package/src/meeting/test/meeting1/Actions/actions.ttl +0 -14
  242. package/src/meeting/test/meeting1/Actions/config.ttl +0 -16
  243. package/src/meeting/test/meeting1/Actions/state.ttl +0 -30
  244. package/src/meeting/test/meeting1/Schedule/details.ttl +0 -34
  245. package/src/meeting/test/meeting1/Schedule/details.ttl.acl +0 -20
  246. package/src/meeting/test/meeting1/Schedule/forms.ttl +0 -75
  247. package/src/meeting/test/meeting1/Schedule/forms.ttl.acl +0 -20
  248. package/src/meeting/test/meeting1/Schedule/index.html +0 -72
  249. package/src/meeting/test/meeting1/Schedule/index.html.acl +0 -20
  250. package/src/meeting/test/meeting1/Schedule/results.ttl +0 -15
  251. package/src/meeting/test/meeting1/Schedule/results.ttl.acl +0 -20
  252. package/src/meeting/test/meeting1/SharedNotes/pad.ttl +0 -23
  253. package/src/meeting/test/meeting1/chat/chat.ttl +0 -1
  254. package/src/meeting/test/meeting1/details.ttl +0 -35
  255. package/src/meeting/test/meeting1/pad/pad.ttl +0 -16
  256. package/src/microblogPane/mbStyle.css +0 -267
  257. package/src/microblogPane/microblogPane.js +0 -1412
  258. package/src/n3Pane.js +0 -56
  259. package/src/outline/context.ts +0 -21
  260. package/src/outline/manager.js +0 -2384
  261. package/src/outline/manager.test.ts +0 -189
  262. package/src/outline/outlineIcons.js +0 -160
  263. package/src/outline/propertyViews.test.ts +0 -36
  264. package/src/outline/propertyViews.ts +0 -37
  265. package/src/outline/queryByExample.js +0 -296
  266. package/src/outline/userInput.js +0 -2373
  267. package/src/outline/viewAsImage.ts +0 -12
  268. package/src/outline/viewAsMbox.ts +0 -14
  269. package/src/pad/images/ColourOff.ai +2 -872
  270. package/src/pad/images/ColourOff.png +0 -0
  271. package/src/pad/images/ColourOn.ai +1 -935
  272. package/src/pad/images/ColourOn.png +0 -0
  273. package/src/pad/padPane.ts +0 -559
  274. package/src/playlist/playlistPane.js +0 -161
  275. package/src/registerPanes.js +0 -147
  276. package/src/schedule/Makefile +0 -6
  277. package/src/schedule/formsForSchedule.js +0 -117
  278. package/src/schedule/formsForSchedule.ttl +0 -115
  279. package/src/schedule/schedulePane.js +0 -1201
  280. package/src/sharing/sharingPane.ts +0 -49
  281. package/src/slideshow/slideshowPane.js +0 -80
  282. package/src/socialPane.js +0 -523
  283. package/src/style/tabbedtab.css +0 -1347
  284. package/src/tabbed/tabbedPane.ts +0 -60
  285. package/src/tableViewPane.js +0 -51
  286. package/src/test-import-export/common.js +0 -6
  287. package/src/test-import-export/edit-importer.js +0 -20
  288. package/src/test-import-export/testImportExport.js +0 -0
  289. package/src/transaction/068010-3d-transparent-glass-icon-alphanumeric-dollar-sign.png +0 -0
  290. package/src/transaction/075988-3d-transparent-glass-icon-business-currency-british-pound-sc35.png +0 -0
  291. package/src/transaction/22-pixel-068010-3d-transparent-glass-icon-alphanumeric-dollar-sign.png +0 -0
  292. package/src/transaction/pane.js +0 -629
  293. package/src/transaction/period.js +0 -374
  294. package/src/transaction/thumbs_075987-3d-transparent-glass-icon-business-creditcard2.png +0 -0
  295. package/src/transaction/thumbs_075989-3d-transparent-glass-icon-business-currency-cent-sc35.png +0 -0
  296. package/src/trip/tripPane.js +0 -176
  297. package/src/trustedApplications/__snapshots__/trustedApplications.test.ts.snap +0 -176
  298. package/src/trustedApplications/trustedApplications.dom.ts +0 -276
  299. package/src/trustedApplications/trustedApplications.test.ts +0 -82
  300. package/src/trustedApplications/trustedApplications.utils.ts +0 -51
  301. package/src/trustedApplications/trustedApplications.view.ts +0 -80
  302. package/src/types.ts +0 -34
  303. package/src/ui/22-builder.png +0 -0
  304. package/src/ui/builder.graffle +0 -0
  305. package/src/ui/builder.png +0 -0
  306. package/src/ui/builder2.png +0 -0
  307. package/src/ui/pane.js +0 -226
  308. package/src/versionInfo.ts +0 -32
  309. package/src/video/videoPane.js +0 -44
  310. package/timestamp.sh +0 -13
  311. package/travis/bumpversion.js +0 -29
  312. package/tsconfig.json +0 -78
  313. package/typings/raw-loader.d.ts +0 -4
  314. package/typings/solid-namespace/index.d.ts +0 -9
  315. package/webpack.config.js +0 -41
  316. /package/{lib → dist}/dashboard/basicPreferences.d.ts +0 -0
  317. /package/{lib → dist}/dashboard/basicPreferences.d.ts.map +0 -0
  318. /package/{lib → dist}/dashboard/dashboardPane.d.ts +0 -0
  319. /package/{lib → dist}/dashboard/dashboardPane.d.ts.map +0 -0
  320. /package/{lib → dist}/dashboard/homepage.d.ts +0 -0
  321. /package/{lib → dist}/dashboard/homepage.d.ts.map +0 -0
  322. /package/{lib → dist}/home/homePane.d.ts +0 -0
  323. /package/{lib → dist}/home/homePane.d.ts.map +0 -0
  324. /package/{lib → dist}/index.d.ts +0 -0
  325. /package/{lib → dist}/index.d.ts.map +0 -0
  326. /package/{lib → dist}/internal/internalPane.d.ts +0 -0
  327. /package/{lib → dist}/internal/internalPane.d.ts.map +0 -0
  328. /package/{lib → dist}/mainPage/footer.d.ts +0 -0
  329. /package/{lib → dist}/mainPage/footer.d.ts.map +0 -0
  330. /package/{lib → dist}/mainPage/header.d.ts +0 -0
  331. /package/{lib → dist}/mainPage/header.d.ts.map +0 -0
  332. /package/{lib → dist}/mainPage/index.d.ts +0 -0
  333. /package/{lib → dist}/outline/context.d.ts +0 -0
  334. /package/{lib → dist}/outline/context.d.ts.map +0 -0
  335. /package/{lib → dist}/outline/propertyViews.d.ts +0 -0
  336. /package/{lib → dist}/outline/propertyViews.d.ts.map +0 -0
  337. /package/{lib → dist}/outline/viewAsImage.d.ts +0 -0
  338. /package/{lib → dist}/outline/viewAsImage.d.ts.map +0 -0
  339. /package/{lib → dist}/outline/viewAsMbox.d.ts +0 -0
  340. /package/{lib → dist}/outline/viewAsMbox.d.ts.map +0 -0
  341. /package/{lib → dist}/pad/padPane.d.ts +0 -0
  342. /package/{lib → dist}/pad/padPane.d.ts.map +0 -0
  343. /package/{lib → dist}/sharing/sharingPane.d.ts +0 -0
  344. /package/{lib → dist}/sharing/sharingPane.d.ts.map +0 -0
  345. /package/{lib → dist}/tabbed/tabbedPane.d.ts +0 -0
  346. /package/{lib → dist}/tabbed/tabbedPane.d.ts.map +0 -0
  347. /package/{lib → dist}/trustedApplications/trustedApplications.dom.d.ts +0 -0
  348. /package/{lib → dist}/trustedApplications/trustedApplications.dom.d.ts.map +0 -0
  349. /package/{lib → dist}/trustedApplications/trustedApplications.utils.d.ts +0 -0
  350. /package/{lib → dist}/trustedApplications/trustedApplications.utils.d.ts.map +0 -0
  351. /package/{lib → dist}/trustedApplications/trustedApplications.view.d.ts +0 -0
  352. /package/{lib → dist}/trustedApplications/trustedApplications.view.d.ts.map +0 -0
  353. /package/{lib → dist}/types.d.ts +0 -0
  354. /package/{lib → dist}/types.d.ts.map +0 -0
@@ -0,0 +1,158 @@
1
+ import { sym } from 'rdflib';
2
+ import { ns } from 'solid-ui';
3
+ import { store } from 'solid-logic';
4
+ import { generateRandomString, getStatementsToAdd, getStatementsToDelete } from './trustedApplications.utils';
5
+ export function createApplicationTable(subject) {
6
+ const applicationsTable = createElement('table', {
7
+ class: 'results'
8
+ });
9
+ // creating headers
10
+ const header = createContainer('tr', [
11
+ createText('th', 'Application URL'),
12
+ createText('th', 'Access modes'),
13
+ createText('th', 'Actions')
14
+ ]);
15
+ applicationsTable.appendChild(header);
16
+ // creating rows
17
+ store.each(subject, ns.acl('trustedApp'), undefined, undefined)
18
+ .flatMap(app => store
19
+ .each(app, ns.acl('origin'), undefined, undefined)
20
+ .map(origin => ({
21
+ appModes: store.each(app, ns.acl('mode'), undefined, undefined),
22
+ origin: origin
23
+ })))
24
+ .sort((a, b) => (a.origin.value < b.origin.value ? -1 : 1))
25
+ .forEach(({ appModes, origin }) => applicationsTable.appendChild(createApplicationEntry(subject, origin, appModes, updateTable)));
26
+ // adding a row for new applications
27
+ applicationsTable.appendChild(createApplicationEntry(subject, null, [ns.acl('Read')], updateTable));
28
+ return applicationsTable;
29
+ function updateTable() {
30
+ applicationsTable.parentElement.replaceChild(createApplicationTable(subject), applicationsTable);
31
+ }
32
+ }
33
+ function createApplicationEntry(subject, origin, appModes, updateTable) {
34
+ const trustedApplicationState = {
35
+ origin,
36
+ appModes,
37
+ formElements: {
38
+ modes: [],
39
+ origin: undefined
40
+ }
41
+ };
42
+ return createContainer('tr', [
43
+ createContainer('td', [
44
+ createContainer('form', [
45
+ createElement('input', {
46
+ class: 'textinput',
47
+ placeholder: 'Write new URL here',
48
+ value: origin ? origin.value : ''
49
+ }, {}, element => {
50
+ trustedApplicationState.formElements.origin = element;
51
+ })
52
+ ], {}, {
53
+ submit: addOrEditApplication
54
+ })
55
+ ]),
56
+ createContainer('td', [
57
+ createContainer('form', createModesInput(trustedApplicationState), {}, {
58
+ submit: addOrEditApplication
59
+ })
60
+ ]),
61
+ createContainer('td', [
62
+ createContainer('form', origin
63
+ ? [
64
+ createText('button', 'Update', {
65
+ class: 'controlButton',
66
+ style: 'background: LightGreen;'
67
+ }),
68
+ createText('button', 'Delete', {
69
+ class: 'controlButton',
70
+ style: 'background: LightCoral;'
71
+ }, {
72
+ click: removeApplication
73
+ })
74
+ ]
75
+ : [
76
+ createText('button', 'Add', {
77
+ class: 'controlButton',
78
+ style: 'background: LightGreen;'
79
+ })
80
+ ], {}, {
81
+ submit: addOrEditApplication
82
+ })
83
+ ])
84
+ ]);
85
+ function addOrEditApplication(event) {
86
+ event.preventDefault();
87
+ let origin;
88
+ try {
89
+ origin = sym(trustedApplicationState.formElements.origin.value);
90
+ }
91
+ catch (err) {
92
+ return alert('Please provide an application URL you want to trust');
93
+ }
94
+ const modes = trustedApplicationState.formElements.modes
95
+ .filter(checkbox => checkbox.checked)
96
+ .map(checkbox => checkbox.value);
97
+ const deletions = getStatementsToDelete(trustedApplicationState.origin || origin, subject, store, ns);
98
+ const additions = getStatementsToAdd(origin, generateRandomString(), modes, subject, ns);
99
+ if (!store.updater) {
100
+ throw new Error('Store has no updater');
101
+ }
102
+ store.updater.update(deletions, additions, handleUpdateResponse);
103
+ }
104
+ function removeApplication(event) {
105
+ event.preventDefault();
106
+ let origin;
107
+ try {
108
+ origin = sym(trustedApplicationState.formElements.origin.value);
109
+ }
110
+ catch (err) {
111
+ return alert('Please provide an application URL you want to remove trust from');
112
+ }
113
+ const deletions = getStatementsToDelete(origin, subject, store, ns);
114
+ if (!store.updater) {
115
+ throw new Error('Store has no updater');
116
+ }
117
+ store.updater.update(deletions, [], handleUpdateResponse);
118
+ }
119
+ function handleUpdateResponse(uri, success, errorBody) {
120
+ if (success) {
121
+ return updateTable();
122
+ }
123
+ // console.error(uri, errorBody)
124
+ }
125
+ }
126
+ function createElement(elementName, attributes = {}, eventListeners = {}, onCreated = null) {
127
+ const element = document.createElement(elementName);
128
+ if (onCreated) {
129
+ onCreated(element);
130
+ }
131
+ Object.keys(attributes).forEach(attName => {
132
+ element.setAttribute(attName, attributes[attName]);
133
+ });
134
+ Object.keys(eventListeners).forEach(eventName => {
135
+ element.addEventListener(eventName, eventListeners[eventName]);
136
+ });
137
+ return element;
138
+ }
139
+ export function createContainer(elementName, children, attributes = {}, eventListeners = {}, onCreated = null) {
140
+ const element = createElement(elementName, attributes, eventListeners, onCreated);
141
+ children.forEach(child => element.appendChild(child));
142
+ return element;
143
+ }
144
+ export function createText(elementName, textContent, attributes = {}, eventListeners = {}, onCreated = null) {
145
+ const element = createElement(elementName, attributes, eventListeners, onCreated);
146
+ element.textContent = textContent;
147
+ return element;
148
+ }
149
+ function createModesInput({ appModes, formElements }) {
150
+ return ['Read', 'Write', 'Append', 'Control'].map(mode => {
151
+ const isChecked = appModes.some(appMode => appMode.value === ns.acl(mode).value);
152
+ return createContainer('label', [
153
+ createElement('input', Object.assign(Object.assign({ type: 'checkbox' }, (isChecked ? { checked: '' } : {})), { value: ns.acl(mode).uri }), {}, element => formElements.modes.push(element)),
154
+ createText('span', mode)
155
+ ]);
156
+ });
157
+ }
158
+ //# sourceMappingURL=trustedApplications.dom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trustedApplications.dom.js","sourceRoot":"","sources":["../../src/trustedApplications/trustedApplications.dom.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { BlankNode, st, sym } from 'rdflib';
2
+ export function getStatementsToDelete(origin, person, kb, ns) {
3
+ const applicationStatements = kb.statementsMatching(null, ns.acl('origin'), origin);
4
+ const statementsToDelete = applicationStatements.reduce((memo, st) => {
5
+ return memo
6
+ .concat(kb.statementsMatching(person, ns.acl('trustedApp'), st.subject))
7
+ .concat(kb.statementsMatching(st.subject));
8
+ }, []);
9
+ return statementsToDelete;
10
+ }
11
+ export function getStatementsToAdd(origin, nodeName, modes, person, ns) {
12
+ const application = new BlankNode(`bn_${nodeName}`); // NamedNode(`${person.doc().uri}#${nodeName}`)
13
+ return [
14
+ st(person, ns.acl('trustedApp'), application, person.doc()),
15
+ st(application, ns.acl('origin'), origin, person.doc()),
16
+ ...modes
17
+ .map(mode => sym(mode))
18
+ .map(mode => st(application, ns.acl('mode'), mode, person.doc()))
19
+ ];
20
+ }
21
+ export function generateRandomString() {
22
+ return Math.random().toString(36).substr(2, 5);
23
+ }
24
+ //# sourceMappingURL=trustedApplications.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trustedApplications.utils.js","sourceRoot":"","sources":["../../src/trustedApplications/trustedApplications.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA6B,EAAE,EAAW,GAAG,EAAa,MAAM,QAAQ,CAAA;AAG1F,MAAM,UAAU,qBAAqB,CACnC,MAA2B,EAC3B,MAAiB,EACjB,EAAkB,EAClB,EAAc;IAEd,MAAM,qBAAqB,GAAG,EAAE,CAAC,kBAAkB,CACjD,IAAI,EACJ,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAChB,MAAM,CACP,CAAA;IACD,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,MAAM,CACrD,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE;QACX,OAAO,IAAI;aACR,MAAM,CACL,EAAE,CAAC,kBAAkB,CACnB,MAAM,EACN,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,EACpB,EAAE,CAAC,OAAoB,CACxB,CACF;aACA,MAAM,CAAC,EAAE,CAAC,kBAAkB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IAC9C,CAAC,EACD,EAAsB,CACvB,CAAA;IACD,OAAO,kBAAkB,CAAA;AAC3B,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,MAAiB,EACjB,QAAgB,EAChB,KAAe,EACf,MAAiB,EACjB,EAAc;IAEd,MAAM,WAAW,GAAG,IAAI,SAAS,CAAC,MAAM,QAAQ,EAAE,CAAC,CAAA,CAAC,+CAA+C;IACnG,OAAO;QACL,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC;QAC3D,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC;QACvD,GAAG,KAAK;aACL,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACtB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;KACpE,CAAA;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAChD,CAAC"}
@@ -0,0 +1,62 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { icons, login, widgets } from 'solid-ui';
11
+ import { store } from 'solid-logic';
12
+ import { createApplicationTable, createContainer, createText } from './trustedApplications.dom';
13
+ const thisColor = '#418d99';
14
+ const trustedApplicationView = {
15
+ global: true,
16
+ icon: `${icons.iconBase}noun_15177.svg`,
17
+ name: 'trustedApplications',
18
+ label: () => null,
19
+ render: (subject, context) => {
20
+ const dom = context.dom;
21
+ const div = dom.createElement('div');
22
+ div.classList.add('trusted-applications-pane');
23
+ div.setAttribute('style', 'border: 0.3em solid ' +
24
+ thisColor +
25
+ '; border-radius: 0.5em; padding: 0.7em; margin-top:0.7em;');
26
+ const table = div.appendChild(dom.createElement('table'));
27
+ const main = table.appendChild(dom.createElement('tr'));
28
+ const bottom = table.appendChild(dom.createElement('tr'));
29
+ const statusArea = bottom.appendChild(dom.createElement('div'));
30
+ statusArea.setAttribute('style', 'padding: 0.7em;');
31
+ render(dom, main, statusArea).catch(err => statusArea.appendChild(widgets.errorMessageBlock(dom, err)));
32
+ return div;
33
+ }
34
+ };
35
+ function render(dom, main, statusArea) {
36
+ return __awaiter(this, void 0, void 0, function* () {
37
+ const authContext = yield login.ensureLoadedProfile({ dom, div: main, statusArea, me: null });
38
+ const subject = authContext.me;
39
+ const profile = subject.doc();
40
+ if (!store.updater) {
41
+ throw new Error('Store has no updater');
42
+ }
43
+ const editable = store.updater.editable(profile.uri, store);
44
+ main.appendChild(createText('h3', 'Manage your trusted applications'));
45
+ if (!editable) {
46
+ main.appendChild(widgets.errorMessageBlock(dom, `Your profile ${subject.doc().uri} is not editable, so we cannot do much here.`));
47
+ return;
48
+ }
49
+ main.appendChild(createText('p', 'Here you can manage the applications you trust.'));
50
+ const applicationsTable = createApplicationTable(subject);
51
+ main.appendChild(applicationsTable);
52
+ main.appendChild(createText('h4', 'Notes'));
53
+ main.appendChild(createContainer('ol', [
54
+ main.appendChild(createText('li', 'Trusted applications will get access to all resources that you have access to.')),
55
+ main.appendChild(createText('li', 'You can limit which modes they have by default.')),
56
+ main.appendChild(createText('li', 'They will not gain more access than you have.'))
57
+ ]));
58
+ main.appendChild(createText('p', 'Application URLs must be valid URL. Examples are http://localhost:3000, https://trusted.app, and https://sub.trusted.app.'));
59
+ });
60
+ }
61
+ export default trustedApplicationView;
62
+ //# sourceMappingURL=trustedApplications.view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trustedApplications.view.js","sourceRoot":"","sources":["../../src/trustedApplications/trustedApplications.view.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ export default {
2
+ buildTime: '2025-10-06T10:28:52Z',
3
+ commit: '125af63042fbc165ca578904aabb6ece273bf6c3',
4
+ npmInfo: {
5
+ '\'solid-panes\'': '\'3.7.3\',',
6
+ npm: '\'10.8.2\',',
7
+ node: '\'20.19.5\',',
8
+ acorn: '\'8.15.0\',',
9
+ ada: '\'2.9.2\',',
10
+ ares: '\'1.34.5\',',
11
+ brotli: '\'1.1.0\',',
12
+ cjs_module_lexer: '\'2.1.0\',',
13
+ cldr: '\'47.0\',',
14
+ icu: '\'77.1\',',
15
+ llhttp: '\'9.3.0\',',
16
+ modules: '\'115\',',
17
+ napi: '\'9\',',
18
+ nghttp2: '\'1.61.0\',',
19
+ openssl: '\'3.0.16\',',
20
+ simdutf: '\'6.4.2\',',
21
+ tz: '\'2025b\',',
22
+ undici: '\'6.21.2\',',
23
+ unicode: '\'16.0\',',
24
+ uv: '\'1.46.0\',',
25
+ uvwasi: '\'0.0.21\',',
26
+ v8: '\'11.3.244.8-node.30\',',
27
+ zlib: '\'1.3.1-470d3a2\'',
28
+ '}': '}',
29
+ }
30
+ };
31
+ //# sourceMappingURL=versionInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"versionInfo.js","sourceRoot":"","sources":["../src/versionInfo.ts"],"names":[],"mappings":"AAAA,eAAe;IACb,SAAS,EAAE,sBAAsB;IACjC,MAAM,EAAE,0CAA0C;IAClD,OAAO,EAAE;QACP,iBAAiB,EAAE,YAAY;QAC/B,GAAG,EAAE,aAAa;QAClB,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,aAAa;QACpB,GAAG,EAAE,YAAY;QACjB,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,YAAY;QACpB,gBAAgB,EAAE,YAAY;QAC9B,IAAI,EAAE,WAAW;QACjB,GAAG,EAAE,WAAW;QAChB,MAAM,EAAE,YAAY;QACpB,OAAO,EAAE,UAAU;QACnB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,YAAY;QACrB,EAAE,EAAE,YAAY;QAChB,MAAM,EAAE,aAAa;QACrB,OAAO,EAAE,WAAW;QACpB,EAAE,EAAE,aAAa;QACjB,MAAM,EAAE,aAAa;QACrB,EAAE,EAAE,yBAAyB;QAC7B,IAAI,EAAE,mBAAmB;QACzB,GAAG,EAAE,GAAG;KACT;CACF,CAAA"}
package/package.json CHANGED
@@ -1,24 +1,34 @@
1
1
  {
2
2
  "name": "solid-panes",
3
- "version": "3.7.2",
3
+ "version": "3.7.3-125af630",
4
4
  "description": "Solid-compatible Panes: applets and views for the mashlib and databrowser",
5
- "main": "lib/index.js",
6
- "types": "lib/index.d.ts",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "sideEffects": false,
8
+ "files": [
9
+ "dist/",
10
+ "README.md",
11
+ "LICENSE"
12
+ ],
7
13
  "scripts": {
8
- "build": "npm run clean && npm run build-version && npm run build-lib && npm run build-types",
14
+ "clean": "rm -rf dist dist-dev src/versionInfo.ts",
15
+ "build": "npm run clean && npm run build-version && npm run build-js && npm run postbuild-js",
16
+ "build-version": "./timestamp.sh > src/versionInfo.ts && eslint 'src/versionInfo.ts' --fix",
9
17
  "build-form": "(cd src/schedule/ && make)",
10
- "build-lib": "npm run build-form && babel src -d lib --source-maps --extensions '.ts,.js'",
18
+ "build-js": "npm run build-form && tsc",
19
+ "postbuild-js": "rm -f dist/versionInfo.d.ts dist/versionInfo.d.ts.map",
11
20
  "build-dev": "webpack --progress --mode=development",
12
- "build-types": "tsc --emitDeclarationOnly",
13
- "build-version": "./timestamp.sh > src/versionInfo.ts && eslint 'src/versionInfo.ts' --fix",
14
- "watch": "npm run build-version && babel src -d lib --source-maps --extensions '.ts,.js' --watch",
15
- "clean": "rm -rf dist lib",
16
- "lint": "eslint 'src/**/*.js' 'src/**/*.ts'",
17
- "lint-fix": "eslint 'src/**/*.js' 'src/**/*.ts' --fix",
18
- "test": "npm run lint && jest src/**/*test*",
21
+ "lint": "eslint",
22
+ "typecheck": "tsc --noEmit",
23
+ "typecheck-test": "tsc --noEmit -p tsconfig.test.json",
24
+ "test": "jest --no-coverage",
19
25
  "test-watch": "npm run lint && jest --onlyChanged --watch",
26
+ "test-coverage": "jest --coverage --collectCoverageFrom=src/**/*.[jt]s",
27
+ "test-debug": "node --inspect-brk ./node_modules/.bin/jest -i --env jest-environment-node-debug",
20
28
  "ignore:prepublishOnly": "npm test && npm run build",
29
+ "preversion": "npm run lint && npm run typecheck && npm test",
21
30
  "postversion": "git push origin main --follow-tags",
31
+ "watch": "npm run build-version && babel src -d dist --source-maps --extensions '.ts,.js' --watch",
22
32
  "start": "npm install && npm run build-version && npx webpack serve --open"
23
33
  },
24
34
  "repository": {
@@ -46,20 +56,21 @@
46
56
  "homepage": "https://github.com/solidos/solid-panes",
47
57
  "dependencies": {
48
58
  "@solid/better-simple-slideshow": "^0.1.0",
49
- "activitystreams-pane": "^0.7.0",
50
- "chat-pane": "^2.5.0",
51
- "contacts-pane": "^2.7.0",
59
+ "activitystreams-pane": "^0.7.1",
60
+ "chat-pane": "^2.5.1",
61
+ "contacts-pane": "^2.7.1",
52
62
  "dompurify": "^3.2.6",
53
- "folder-pane": "^2.5.0",
54
- "issue-pane": "^2.6.0",
63
+ "folder-pane": "^2.5.1",
64
+ "issue-pane": "^2.6.1",
65
+ "lint-staged": "^16.1.6",
55
66
  "marked": "^16.1.2",
56
- "meeting-pane": "^2.5.0",
67
+ "meeting-pane": "^2.5.1",
57
68
  "mime-types": "^3.0.1",
58
- "profile-pane": "^1.2.0",
69
+ "profile-pane": "^1.2.1",
59
70
  "rdflib": "^2.2.37",
60
71
  "solid-namespace": "^0.5.4",
61
- "solid-ui": "^2.6.0",
62
- "source-pane": "^2.3.0"
72
+ "solid-ui": "^2.6.1",
73
+ "source-pane": "^2.3.1"
63
74
  },
64
75
  "devDependencies": {
65
76
  "@babel/cli": "^7.28.0",
@@ -73,6 +84,7 @@
73
84
  "@typescript-eslint/eslint-plugin": "^8.39.0",
74
85
  "@typescript-eslint/parser": "^8.39.0",
75
86
  "@webpack-cli/serve": "^3.0.1",
87
+ "babel-jest": "^30.1.2",
76
88
  "babel-loader": "^10.0.0",
77
89
  "babel-plugin-inline-import": "^3.0.0",
78
90
  "buffer": "^6.0.3",
@@ -83,8 +95,8 @@
83
95
  "jest": "^30.0.5",
84
96
  "jest-environment-jsdom": "^30.0.5",
85
97
  "jest-fetch-mock": "^3.0.3",
86
- "lint-staged": "^16.1.5",
87
98
  "node-polyfill-webpack-plugin": "^4.1.0",
99
+ "neostandard": "^0.12.2",
88
100
  "path-browserify": "^1.0.1",
89
101
  "react": "^19.1.1",
90
102
  "react-dom": "^19.1.1",