solid-panes 3.7.2-f743b265 → 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.
- package/dist/dashboard/basicPreferences.js +155 -0
- package/dist/dashboard/basicPreferences.js.map +1 -0
- package/dist/dashboard/dashboardPane.js +63 -0
- package/dist/dashboard/dashboardPane.js.map +1 -0
- package/dist/dashboard/homepage.js +63 -0
- package/dist/dashboard/homepage.js.map +1 -0
- package/dist/home/homePane.js +68 -0
- package/dist/home/homePane.js.map +1 -0
- package/dist/index.js +48 -0
- package/dist/index.js.map +1 -0
- package/dist/internal/internalPane.js +195 -0
- package/dist/internal/internalPane.js.map +1 -0
- package/dist/mainPage/footer.js +16 -0
- package/dist/mainPage/footer.js.map +1 -0
- package/dist/mainPage/header.js +84 -0
- package/dist/mainPage/header.js.map +1 -0
- package/{lib → dist}/mainPage/index.d.ts.map +1 -1
- package/dist/mainPage/index.js +30 -0
- package/dist/mainPage/index.js.map +1 -0
- package/dist/outline/context.js +13 -0
- package/dist/outline/context.js.map +1 -0
- package/dist/outline/propertyViews.js +33 -0
- package/dist/outline/propertyViews.js.map +1 -0
- package/dist/outline/viewAsImage.js +7 -0
- package/dist/outline/viewAsImage.js.map +1 -0
- package/{lib → dist}/outline/viewAsMbox.js +4 -14
- package/dist/outline/viewAsMbox.js.map +1 -0
- package/dist/pad/padPane.js +420 -0
- package/dist/pad/padPane.js.map +1 -0
- package/dist/sharing/sharingPane.js +45 -0
- package/dist/sharing/sharingPane.js.map +1 -0
- package/dist/tabbed/tabbedPane.js +55 -0
- package/dist/tabbed/tabbedPane.js.map +1 -0
- package/dist/trustedApplications/trustedApplications.dom.js +158 -0
- package/dist/trustedApplications/trustedApplications.dom.js.map +1 -0
- package/dist/trustedApplications/trustedApplications.utils.js +24 -0
- package/dist/trustedApplications/trustedApplications.utils.js.map +1 -0
- package/dist/trustedApplications/trustedApplications.view.js +62 -0
- package/dist/trustedApplications/trustedApplications.view.js.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/versionInfo.js +31 -0
- package/dist/versionInfo.js.map +1 -0
- package/package.json +34 -22
- package/Documentation/VisualLanguage.html +0 -538
- package/Documentation/conventions.md +0 -333
- package/coverage/clover.xml +0 -152
- package/coverage/coverage-final.json +0 -6
- package/coverage/lcov-report/base.css +0 -224
- package/coverage/lcov-report/block-navigation.js +0 -87
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +0 -131
- package/coverage/lcov-report/outline/index.html +0 -161
- package/coverage/lcov-report/outline/outlineIcons.js.html +0 -565
- package/coverage/lcov-report/outline/propertyViews.ts.html +0 -196
- package/coverage/lcov-report/outline/viewAsImage.ts.html +0 -121
- package/coverage/lcov-report/outline/viewAsMbox.ts.html +0 -127
- package/coverage/lcov-report/prettify.css +0 -1
- package/coverage/lcov-report/prettify.js +0 -2
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +0 -210
- package/coverage/lcov-report/trustedApplications/index.html +0 -116
- package/coverage/lcov-report/trustedApplications/trustedApplications.utils.ts.html +0 -238
- package/coverage/lcov.info +0 -204
- package/dev/index.html +0 -28
- package/dev/loader.ts +0 -91
- package/dev/pane/index.ts +0 -10
- package/doc/images/panes-for-classes.epgz +0 -0
- package/doc/images/panes-for-classes.svg +0 -609
- package/eslint.config.mjs +0 -34
- package/jest.config.js +0 -27
- package/jest.setup.ts +0 -4
- package/lib/RDFXMLPane.js +0 -59
- package/lib/RDFXMLPane.js.map +0 -1
- package/lib/argument/argumentPane.js +0 -62
- package/lib/argument/argumentPane.js.map +0 -1
- package/lib/attach/attachPane.js +0 -404
- package/lib/attach/attachPane.js.map +0 -1
- package/lib/audio/audioPane.js +0 -183
- package/lib/audio/audioPane.js.map +0 -1
- package/lib/classInstancePane.js +0 -93
- package/lib/classInstancePane.js.map +0 -1
- package/lib/dashboard/basicPreferences.js +0 -229
- package/lib/dashboard/basicPreferences.js.map +0 -1
- package/lib/dashboard/dashboardPane.js +0 -73
- package/lib/dashboard/dashboardPane.js.map +0 -1
- package/lib/dashboard/homepage.js +0 -86
- package/lib/dashboard/homepage.js.map +0 -1
- package/lib/dataContentPane.js +0 -259
- package/lib/dataContentPane.js.map +0 -1
- package/lib/defaultPane.js +0 -76
- package/lib/defaultPane.js.map +0 -1
- package/lib/dokieli/dokieliPane.js +0 -173
- package/lib/dokieli/dokieliPane.js.map +0 -1
- package/lib/dokieli/new.js +0 -9
- package/lib/dokieli/new.js.map +0 -1
- package/lib/form/pane.js +0 -186
- package/lib/form/pane.js.map +0 -1
- package/lib/global.d.js +0 -2
- package/lib/global.d.js.map +0 -1
- package/lib/home/homePane.js +0 -91
- package/lib/home/homePane.js.map +0 -1
- package/lib/humanReadablePane.js +0 -138
- package/lib/humanReadablePane.js.map +0 -1
- package/lib/imagePane.js +0 -71
- package/lib/imagePane.js.map +0 -1
- package/lib/index.js +0 -112
- package/lib/index.js.map +0 -1
- package/lib/internal/internalPane.js +0 -184
- package/lib/internal/internalPane.js.map +0 -1
- package/lib/mainPage/footer.js +0 -22
- package/lib/mainPage/footer.js.map +0 -1
- package/lib/mainPage/header.js +0 -152
- package/lib/mainPage/header.js.map +0 -1
- package/lib/mainPage/index.js +0 -42
- package/lib/mainPage/index.js.map +0 -1
- package/lib/microblogPane/microblogPane.js +0 -1032
- package/lib/microblogPane/microblogPane.js.map +0 -1
- package/lib/n3Pane.js +0 -57
- package/lib/n3Pane.js.map +0 -1
- package/lib/outline/context.js +0 -19
- package/lib/outline/context.js.map +0 -1
- package/lib/outline/manager.js +0 -2264
- package/lib/outline/manager.js.map +0 -1
- package/lib/outline/manager.test.d.ts +0 -2
- package/lib/outline/manager.test.d.ts.map +0 -1
- package/lib/outline/manager.test.js +0 -210
- package/lib/outline/manager.test.js.map +0 -1
- package/lib/outline/outlineIcons.js +0 -128
- package/lib/outline/outlineIcons.js.map +0 -1
- package/lib/outline/propertyViews.js +0 -44
- package/lib/outline/propertyViews.js.map +0 -1
- package/lib/outline/propertyViews.test.d.ts +0 -2
- package/lib/outline/propertyViews.test.d.ts.map +0 -1
- package/lib/outline/propertyViews.test.js +0 -27
- package/lib/outline/propertyViews.test.js.map +0 -1
- package/lib/outline/queryByExample.js +0 -286
- package/lib/outline/queryByExample.js.map +0 -1
- package/lib/outline/userInput.js +0 -1817
- package/lib/outline/userInput.js.map +0 -1
- package/lib/outline/viewAsImage.js +0 -17
- package/lib/outline/viewAsImage.js.map +0 -1
- package/lib/outline/viewAsMbox.js.map +0 -1
- package/lib/pad/padPane.js +0 -417
- package/lib/pad/padPane.js.map +0 -1
- package/lib/playlist/playlistPane.js +0 -125
- package/lib/playlist/playlistPane.js.map +0 -1
- package/lib/registerPanes.js +0 -146
- package/lib/registerPanes.js.map +0 -1
- package/lib/schedule/formsForSchedule.js +0 -8
- package/lib/schedule/formsForSchedule.js.map +0 -1
- package/lib/schedule/schedulePane.js +0 -895
- package/lib/schedule/schedulePane.js.map +0 -1
- package/lib/sharing/sharingPane.js +0 -49
- package/lib/sharing/sharingPane.js.map +0 -1
- package/lib/slideshow/slideshowPane.js +0 -84
- package/lib/slideshow/slideshowPane.js.map +0 -1
- package/lib/socialPane.js +0 -431
- package/lib/socialPane.js.map +0 -1
- package/lib/tabbed/tabbedPane.js +0 -72
- package/lib/tabbed/tabbedPane.js.map +0 -1
- package/lib/tableViewPane.js +0 -58
- package/lib/tableViewPane.js.map +0 -1
- package/lib/test-import-export/common.js +0 -12
- package/lib/test-import-export/common.js.map +0 -1
- package/lib/test-import-export/edit-importer.js +0 -25
- package/lib/test-import-export/edit-importer.js.map +0 -1
- package/lib/test-import-export/testImportExport.js +0 -2
- package/lib/test-import-export/testImportExport.js.map +0 -1
- package/lib/transaction/pane.js +0 -479
- package/lib/transaction/pane.js.map +0 -1
- package/lib/transaction/period.js +0 -325
- package/lib/transaction/period.js.map +0 -1
- package/lib/trip/tripPane.js +0 -176
- package/lib/trip/tripPane.js.map +0 -1
- package/lib/trustedApplications/trustedApplications.dom.js +0 -177
- package/lib/trustedApplications/trustedApplications.dom.js.map +0 -1
- package/lib/trustedApplications/trustedApplications.test.d.ts +0 -2
- package/lib/trustedApplications/trustedApplications.test.d.ts.map +0 -1
- package/lib/trustedApplications/trustedApplications.test.js +0 -64
- package/lib/trustedApplications/trustedApplications.test.js.map +0 -1
- package/lib/trustedApplications/trustedApplications.utils.js +0 -34
- package/lib/trustedApplications/trustedApplications.utils.js.map +0 -1
- package/lib/trustedApplications/trustedApplications.view.js +0 -87
- package/lib/trustedApplications/trustedApplications.view.js.map +0 -1
- package/lib/types.js +0 -6
- package/lib/types.js.map +0 -1
- package/lib/ui/pane.js +0 -148
- package/lib/ui/pane.js.map +0 -1
- package/lib/versionInfo.d.ts +0 -34
- package/lib/versionInfo.d.ts.map +0 -1
- package/lib/versionInfo.js +0 -39
- package/lib/versionInfo.js.map +0 -1
- package/lib/video/videoPane.js +0 -44
- package/lib/video/videoPane.js.map +0 -1
- package/src/RDFXMLPane.js +0 -60
- package/src/argument/argumentPane.js +0 -65
- package/src/argument/argument_icon_v04.jpg +0 -0
- package/src/argument/icon_argument.png +0 -0
- package/src/argument/transparentyingyang.png +0 -0
- package/src/attach/attachPane.js +0 -508
- package/src/attach/tbl-paperclip-128.png +0 -0
- package/src/attach/tbl-paperclip-22.png +0 -0
- package/src/attach/tbl-paperclip-22a.png +0 -0
- package/src/audio/audioPane.js +0 -197
- package/src/chatPreferencesForm.ttl +0 -12
- package/src/classInstancePane.js +0 -110
- package/src/dashboard/basicPreferences.ts +0 -201
- package/src/dashboard/dashboardPane.ts +0 -83
- package/src/dashboard/homepage.ts +0 -72
- package/src/dashboard/languages/codes.html +0 -8611
- package/src/dashboard/languages/codes.xml +0 -3563
- package/src/dashboard/languages/codes2.txt +0 -170
- package/src/dashboard/languages/foo +0 -70
- package/src/dashboard/languages/foo.ttl +0 -0
- package/src/dashboard/languages/get-language-names.sh +0 -12
- package/src/dashboard/ontologyData.ttl +0 -35
- package/src/dashboard/preferencesFormText.ttl +0 -18
- package/src/dataContentPane.js +0 -290
- package/src/defaultPane.js +0 -102
- package/src/dokieli/Makefile +0 -6
- package/src/dokieli/dokieliPane.js +0 -190
- package/src/dokieli/new.html +0 -30
- package/src/dokieli/new.js +0 -22
- package/src/form/form-22.png +0 -0
- package/src/form/form-b-22.png +0 -0
- package/src/form/form.graffle +0 -0
- package/src/form/form.png +0 -0
- package/src/form/pane.js +0 -217
- package/src/form/psuedocode-notes.txt +0 -57
- package/src/global.d.ts +0 -4
- package/src/home/homePane.ts +0 -72
- package/src/humanReadablePane.js +0 -150
- package/src/imagePane.js +0 -75
- package/src/index.ts +0 -71
- package/src/internal/internalPane.ts +0 -263
- package/src/mainPage/footer.ts +0 -19
- package/src/mainPage/header.ts +0 -79
- package/src/mainPage/index.ts +0 -20
- package/src/meeting/Makefile +0 -3
- package/src/meeting/test/meeting1/Actions/actions.ttl +0 -14
- package/src/meeting/test/meeting1/Actions/config.ttl +0 -16
- package/src/meeting/test/meeting1/Actions/state.ttl +0 -30
- package/src/meeting/test/meeting1/Schedule/details.ttl +0 -34
- package/src/meeting/test/meeting1/Schedule/details.ttl.acl +0 -20
- package/src/meeting/test/meeting1/Schedule/forms.ttl +0 -75
- package/src/meeting/test/meeting1/Schedule/forms.ttl.acl +0 -20
- package/src/meeting/test/meeting1/Schedule/index.html +0 -72
- package/src/meeting/test/meeting1/Schedule/index.html.acl +0 -20
- package/src/meeting/test/meeting1/Schedule/results.ttl +0 -15
- package/src/meeting/test/meeting1/Schedule/results.ttl.acl +0 -20
- package/src/meeting/test/meeting1/SharedNotes/pad.ttl +0 -23
- package/src/meeting/test/meeting1/chat/chat.ttl +0 -1
- package/src/meeting/test/meeting1/details.ttl +0 -35
- package/src/meeting/test/meeting1/pad/pad.ttl +0 -16
- package/src/microblogPane/mbStyle.css +0 -267
- package/src/microblogPane/microblogPane.js +0 -1412
- package/src/n3Pane.js +0 -56
- package/src/outline/context.ts +0 -21
- package/src/outline/manager.js +0 -2384
- package/src/outline/manager.test.ts +0 -189
- package/src/outline/outlineIcons.js +0 -160
- package/src/outline/propertyViews.test.ts +0 -36
- package/src/outline/propertyViews.ts +0 -37
- package/src/outline/queryByExample.js +0 -296
- package/src/outline/userInput.js +0 -2373
- package/src/outline/viewAsImage.ts +0 -12
- package/src/outline/viewAsMbox.ts +0 -14
- package/src/pad/images/ColourOff.ai +2 -872
- package/src/pad/images/ColourOff.png +0 -0
- package/src/pad/images/ColourOn.ai +1 -935
- package/src/pad/images/ColourOn.png +0 -0
- package/src/pad/padPane.ts +0 -559
- package/src/playlist/playlistPane.js +0 -161
- package/src/registerPanes.js +0 -147
- package/src/schedule/Makefile +0 -6
- package/src/schedule/formsForSchedule.js +0 -117
- package/src/schedule/formsForSchedule.ttl +0 -115
- package/src/schedule/schedulePane.js +0 -1201
- package/src/sharing/sharingPane.ts +0 -49
- package/src/slideshow/slideshowPane.js +0 -80
- package/src/socialPane.js +0 -523
- package/src/style/tabbedtab.css +0 -1347
- package/src/tabbed/tabbedPane.ts +0 -60
- package/src/tableViewPane.js +0 -51
- package/src/test-import-export/common.js +0 -6
- package/src/test-import-export/edit-importer.js +0 -20
- package/src/test-import-export/testImportExport.js +0 -0
- package/src/transaction/068010-3d-transparent-glass-icon-alphanumeric-dollar-sign.png +0 -0
- package/src/transaction/075988-3d-transparent-glass-icon-business-currency-british-pound-sc35.png +0 -0
- package/src/transaction/22-pixel-068010-3d-transparent-glass-icon-alphanumeric-dollar-sign.png +0 -0
- package/src/transaction/pane.js +0 -629
- package/src/transaction/period.js +0 -374
- package/src/transaction/thumbs_075987-3d-transparent-glass-icon-business-creditcard2.png +0 -0
- package/src/transaction/thumbs_075989-3d-transparent-glass-icon-business-currency-cent-sc35.png +0 -0
- package/src/trip/tripPane.js +0 -176
- package/src/trustedApplications/__snapshots__/trustedApplications.test.ts.snap +0 -176
- package/src/trustedApplications/trustedApplications.dom.ts +0 -276
- package/src/trustedApplications/trustedApplications.test.ts +0 -82
- package/src/trustedApplications/trustedApplications.utils.ts +0 -51
- package/src/trustedApplications/trustedApplications.view.ts +0 -80
- package/src/types.ts +0 -34
- package/src/ui/22-builder.png +0 -0
- package/src/ui/builder.graffle +0 -0
- package/src/ui/builder.png +0 -0
- package/src/ui/builder2.png +0 -0
- package/src/ui/pane.js +0 -226
- package/src/versionInfo.ts +0 -32
- package/src/video/videoPane.js +0 -44
- package/timestamp.sh +0 -13
- package/travis/bumpversion.js +0 -29
- package/tsconfig.json +0 -78
- package/typings/raw-loader.d.ts +0 -4
- package/typings/solid-namespace/index.d.ts +0 -9
- package/webpack.config.js +0 -41
- /package/{lib → dist}/dashboard/basicPreferences.d.ts +0 -0
- /package/{lib → dist}/dashboard/basicPreferences.d.ts.map +0 -0
- /package/{lib → dist}/dashboard/dashboardPane.d.ts +0 -0
- /package/{lib → dist}/dashboard/dashboardPane.d.ts.map +0 -0
- /package/{lib → dist}/dashboard/homepage.d.ts +0 -0
- /package/{lib → dist}/dashboard/homepage.d.ts.map +0 -0
- /package/{lib → dist}/home/homePane.d.ts +0 -0
- /package/{lib → dist}/home/homePane.d.ts.map +0 -0
- /package/{lib → dist}/index.d.ts +0 -0
- /package/{lib → dist}/index.d.ts.map +0 -0
- /package/{lib → dist}/internal/internalPane.d.ts +0 -0
- /package/{lib → dist}/internal/internalPane.d.ts.map +0 -0
- /package/{lib → dist}/mainPage/footer.d.ts +0 -0
- /package/{lib → dist}/mainPage/footer.d.ts.map +0 -0
- /package/{lib → dist}/mainPage/header.d.ts +0 -0
- /package/{lib → dist}/mainPage/header.d.ts.map +0 -0
- /package/{lib → dist}/mainPage/index.d.ts +0 -0
- /package/{lib → dist}/outline/context.d.ts +0 -0
- /package/{lib → dist}/outline/context.d.ts.map +0 -0
- /package/{lib → dist}/outline/propertyViews.d.ts +0 -0
- /package/{lib → dist}/outline/propertyViews.d.ts.map +0 -0
- /package/{lib → dist}/outline/viewAsImage.d.ts +0 -0
- /package/{lib → dist}/outline/viewAsImage.d.ts.map +0 -0
- /package/{lib → dist}/outline/viewAsMbox.d.ts +0 -0
- /package/{lib → dist}/outline/viewAsMbox.d.ts.map +0 -0
- /package/{lib → dist}/pad/padPane.d.ts +0 -0
- /package/{lib → dist}/pad/padPane.d.ts.map +0 -0
- /package/{lib → dist}/sharing/sharingPane.d.ts +0 -0
- /package/{lib → dist}/sharing/sharingPane.d.ts.map +0 -0
- /package/{lib → dist}/tabbed/tabbedPane.d.ts +0 -0
- /package/{lib → dist}/tabbed/tabbedPane.d.ts.map +0 -0
- /package/{lib → dist}/trustedApplications/trustedApplications.dom.d.ts +0 -0
- /package/{lib → dist}/trustedApplications/trustedApplications.dom.d.ts.map +0 -0
- /package/{lib → dist}/trustedApplications/trustedApplications.utils.d.ts +0 -0
- /package/{lib → dist}/trustedApplications/trustedApplications.utils.d.ts.map +0 -0
- /package/{lib → dist}/trustedApplications/trustedApplications.view.d.ts +0 -0
- /package/{lib → dist}/trustedApplications/trustedApplications.view.d.ts.map +0 -0
- /package/{lib → dist}/types.d.ts +0 -0
- /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 @@
|
|
|
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.
|
|
3
|
+
"version": "3.7.3-125af630",
|
|
4
4
|
"description": "Solid-compatible Panes: applets and views for the mashlib and databrowser",
|
|
5
|
-
"main": "
|
|
6
|
-
"types": "
|
|
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
|
-
"
|
|
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-
|
|
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
|
-
"
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"
|
|
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.
|
|
50
|
-
"chat-pane": "^2.5.
|
|
51
|
-
"contacts-pane": "^2.7.
|
|
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.
|
|
54
|
-
"issue-pane": "^2.6.
|
|
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.
|
|
67
|
+
"meeting-pane": "^2.5.1",
|
|
57
68
|
"mime-types": "^3.0.1",
|
|
58
|
-
"profile-pane": "^1.2.
|
|
69
|
+
"profile-pane": "^1.2.1",
|
|
59
70
|
"rdflib": "^2.2.37",
|
|
60
71
|
"solid-namespace": "^0.5.4",
|
|
61
|
-
"solid-ui": "^2.6.
|
|
62
|
-
"source-pane": "^2.3.
|
|
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",
|