solid-panes 3.5.6-beta.0 → 3.5.9

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 (35) hide show
  1. package/jest.config.js +1 -1
  2. package/lib/dashboard/dashboardPane.js +8 -9
  3. package/lib/dashboard/dashboardPane.js.map +1 -1
  4. package/lib/dashboard/homepage.js +1 -1
  5. package/lib/dashboard/homepage.js.map +1 -1
  6. package/lib/index.js +8 -8
  7. package/lib/internal/internalPane.d.ts.map +1 -1
  8. package/lib/internal/internalPane.js +0 -1
  9. package/lib/internal/internalPane.js.map +1 -1
  10. package/lib/outline/licenseOptions.js +2 -1
  11. package/lib/outline/licenseOptions.js.map +1 -1
  12. package/lib/outline/manager.js +239 -109
  13. package/lib/outline/manager.js.map +1 -1
  14. package/lib/registerPanes.js +5 -5
  15. package/lib/registerPanes.js.map +1 -1
  16. package/lib/schedule/formsForSchedule.js +1 -1
  17. package/lib/schedule/formsForSchedule.js.map +1 -1
  18. package/lib/schedule/schedulePane.js +5 -5
  19. package/lib/schedule/schedulePane.js.map +1 -1
  20. package/lib/trustedApplications/trustedApplications.utils.js +2 -2
  21. package/lib/versionInfo.d.ts +1 -0
  22. package/lib/versionInfo.d.ts.map +1 -1
  23. package/lib/versionInfo.js +19 -18
  24. package/lib/versionInfo.js.map +1 -1
  25. package/package.json +41 -40
  26. package/src/dashboard/dashboardPane.ts +6 -6
  27. package/src/dashboard/homepage.ts +1 -1
  28. package/src/internal/internalPane.ts +0 -2
  29. package/src/outline/manager.js +37 -8
  30. package/src/registerPanes.js +2 -2
  31. package/src/schedule/formsForSchedule.js +55 -21
  32. package/src/schedule/formsForSchedule.ttl +12 -7
  33. package/src/schedule/schedulePane.js +3 -3
  34. package/src/versionInfo.ts +19 -18
  35. package/lib/trustedApplications/__snapshots__/trustedApplications.test.js.snap +0 -176
package/jest.config.js CHANGED
@@ -11,7 +11,7 @@ module.exports = {
11
11
  // https://github.com/gotwarlost/istanbul/blob/master/ignoring-code-for-coverage.md
12
12
  coverageThreshold: {
13
13
  global: {
14
- branches: 21,
14
+ branches: 20,
15
15
  functions: 33,
16
16
  lines: 35,
17
17
  statements: 35
@@ -30,16 +30,16 @@ var dashboardPane = {
30
30
  };
31
31
 
32
32
  _solidUi.authn.authSession.onLogin(function () {
33
- console.log('On Login');
33
+ // console.log('On Login')
34
34
  runBuildPage();
35
35
  });
36
36
 
37
37
  _solidUi.authn.authSession.onSessionRestore(function () {
38
- console.log('On Session Restore');
38
+ // console.log('On Session Restore')
39
39
  runBuildPage();
40
- });
40
+ }); // console.log('Initial Load')
41
+
41
42
 
42
- console.log('Initial Load');
43
43
  runBuildPage();
44
44
  return container;
45
45
  }
@@ -47,8 +47,7 @@ var dashboardPane = {
47
47
  exports.dashboardPane = dashboardPane;
48
48
 
49
49
  function buildPage(container, webId, context, subject) {
50
- console.log('build page');
51
-
50
+ // console.log('build page')
52
51
  if (webId && webId.site().uri === subject.site().uri) {
53
52
  return buildDashboard(container, context);
54
53
  }
@@ -57,8 +56,8 @@ function buildPage(container, webId, context, subject) {
57
56
  }
58
57
 
59
58
  function buildDashboard(container, context) {
60
- console.log('build dashboard'); // @@ TODO get a proper type
61
-
59
+ // console.log('build dashboard')
60
+ // @@ TODO get a proper type
62
61
  var outliner = context.getOutliner(context.dom);
63
62
  outliner.getDashboard().then(function (dashboard) {
64
63
  return container.appendChild(dashboard);
@@ -66,7 +65,7 @@ function buildDashboard(container, context) {
66
65
  }
67
66
 
68
67
  function buildHomePage(container, subject) {
69
- console.log('build home page');
68
+ // console.log('build home page')
70
69
  var wrapper = document.createElement('div');
71
70
  container.appendChild(wrapper);
72
71
  var shadow = wrapper.attachShadow({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/dashboard/dashboardPane.ts"],"names":["dashboardPane","icon","icons","iconBase","name","label","subject","uri","site","render","context","console","log","dom","container","createElement","runBuildPage","innerHTML","buildPage","authn","currentUser","authSession","onLogin","onSessionRestore","webId","buildDashboard","buildHomePage","outliner","getOutliner","getDashboard","then","dashboard","appendChild","wrapper","document","shadow","attachShadow","mode","link","rel","href","store","fetcher","homepage"],"mappings":"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","sourcesContent":["import { authn, icons, store } from 'solid-ui'\nimport { Fetcher, NamedNode, sym } 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 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 authn.authSession.onLogin(() => {\n console.log('On Login')\n runBuildPage()\n })\n authn.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 console.log('build page')\n if (webId && 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"],"file":"dashboardPane.js"}
1
+ {"version":3,"sources":["../../src/dashboard/dashboardPane.ts"],"names":["dashboardPane","icon","icons","iconBase","name","label","subject","uri","site","render","context","console","log","dom","container","createElement","runBuildPage","innerHTML","buildPage","authn","currentUser","authSession","onLogin","onSessionRestore","webId","buildDashboard","buildHomePage","outliner","getOutliner","getDashboard","then","dashboard","appendChild","wrapper","document","shadow","attachShadow","mode","link","rel","href","store","fetcher","homepage"],"mappings":";;;;;;;AAAA;;AAEA;;AAGO,IAAMA,aAA6B,GAAG;AAC3CC,EAAAA,IAAI,EAAEC,eAAMC,QAAN,GAAiB,iBADoB;AAE3CC,EAAAA,IAAI,EAAE,WAFqC;AAG3CC,EAAAA,KAAK,EAAE,eAAAC,OAAO,EAAI;AAChB,QAAIA,OAAO,CAACC,GAAR,KAAgBD,OAAO,CAACE,IAAR,GAAeD,GAAnC,EAAwC;AACtC,aAAO,WAAP;AACD;;AACD,WAAO,IAAP;AACD,GAR0C;AAS3CE,EAAAA,MAAM,EAAE,gBAACH,OAAD,EAAUI,OAAV,EAAsB;AAC5BC,IAAAA,OAAO,CAACC,GAAR,CAAY,uBAAZ;AACA,QAAMC,GAAG,GAAGH,OAAO,CAACG,GAApB;AACA,QAAMC,SAAS,GAAGD,GAAG,CAACE,aAAJ,CAAkB,KAAlB,CAAlB;;AACA,QAAMC,YAAY,GAAG,SAAfA,YAAe,GAAM;AACzBF,MAAAA,SAAS,CAACG,SAAV,GAAsB,EAAtB;AACAC,MAAAA,SAAS,CACPJ,SADO,EAEPK,eAAMC,WAAN,MAAuB,IAFhB,EAGPV,OAHO,EAIPJ,OAJO,CAAT;AAMD,KARD;;AAUAa,mBAAME,WAAN,CAAkBC,OAAlB,CAA0B,YAAM;AAC9B;AACAN,MAAAA,YAAY;AACb,KAHD;;AAIAG,mBAAME,WAAN,CAAkBE,gBAAlB,CAAmC,YAAM;AACvC;AACAP,MAAAA,YAAY;AACb,KAHD,EAlB4B,CAsB5B;;;AACAA,IAAAA,YAAY;AAEZ,WAAOF,SAAP;AACD;AAnC0C,CAAtC;;;AAsCP,SAASI,SAAT,CACEJ,SADF,EAEEU,KAFF,EAGEd,OAHF,EAIEJ,OAJF,EAKE;AACA;AACA,MAAIkB,KAAK,IAAIA,KAAK,CAAChB,IAAN,GAAaD,GAAb,KAAqBD,OAAO,CAACE,IAAR,GAAeD,GAAjD,EAAsD;AACpD,WAAOkB,cAAc,CAACX,SAAD,EAAYJ,OAAZ,CAArB;AACD;;AACD,SAAOgB,aAAa,CAACZ,SAAD,EAAYR,OAAZ,CAApB;AACD;;AAED,SAASmB,cAAT,CAAyBX,SAAzB,EAAiDJ,OAAjD,EAA8E;AAC5E;AACA;AACA,MAAMiB,QAAa,GAAGjB,OAAO,CAACkB,WAAR,CAAoBlB,OAAO,CAACG,GAA5B,CAAtB;AACAc,EAAAA,QAAQ,CACLE,YADH,GAEGC,IAFH,CAEQ,UAACC,SAAD;AAAA,WAA4BjB,SAAS,CAACkB,WAAV,CAAsBD,SAAtB,CAA5B;AAAA,GAFR;AAGD;;AAED,SAASL,aAAT,CAAwBZ,SAAxB,EAAgDR,OAAhD,EAAoE;AAClE;AACA,MAAM2B,OAAO,GAAGC,QAAQ,CAACnB,aAAT,CAAuB,KAAvB,CAAhB;AACAD,EAAAA,SAAS,CAACkB,WAAV,CAAsBC,OAAtB;AACA,MAAME,MAAM,GAAGF,OAAO,CAACG,YAAR,CAAqB;AAAEC,IAAAA,IAAI,EAAE;AAAR,GAArB,CAAf;AACA,MAAMC,IAAI,GAAGJ,QAAQ,CAACnB,aAAT,CAAuB,MAAvB,CAAb;AACAuB,EAAAA,IAAI,CAACC,GAAL,GAAW,YAAX;AACAD,EAAAA,IAAI,CAACE,IAAL,GAAY,+BAAZ;AACAL,EAAAA,MAAM,CAACH,WAAP,CAAmBM,IAAnB;AACA,kCAAiBhC,OAAjB,EAA0BmC,cAA1B,EAAiCA,eAAMC,OAAvC,EAA2DZ,IAA3D,CAAgE,UAAAa,QAAQ;AAAA,WACtER,MAAM,CAACH,WAAP,CAAmBW,QAAnB,CADsE;AAAA,GAAxE;AAGD;;eAEc3C,a","sourcesContent":["import { authn, icons, store } from 'solid-ui'\nimport { Fetcher, NamedNode, sym } 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 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 authn.authSession.onLogin(() => {\n // console.log('On Login')\n runBuildPage()\n })\n authn.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 // console.log('build page')\n if (webId && 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"],"file":"dashboardPane.js"}
@@ -56,7 +56,7 @@ function createDataSection(name) {
56
56
  dataSection.appendChild(listGroup);
57
57
  var publicDataLink = document.createElement('a');
58
58
  publicDataLink.classList.add('list-group-item');
59
- publicDataLink.href = '/public/';
59
+ publicDataLink.href = window.document.location.href + 'public/';
60
60
  publicDataLink.innerText = "View ".concat(name, "'s files");
61
61
  listGroup.appendChild(publicDataLink);
62
62
  return dataSection;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/dashboard/homepage.ts"],"names":["generateHomepage","subject","store","fetcher","loadProfile","ownersProfile","name","getName","wrapper","document","createElement","classList","add","appendChild","createTitle","uri","createDataSection","dataSection","title","innerText","listGroup","publicDataLink","href","profileLink","profileLinkPost","pod","site","webId","load","anyValue","ns","vcard","doc","foaf","URL","host","split"],"mappings":"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","sourcesContent":["import { Fetcher, IndexedFormula, NamedNode, sym } from 'rdflib'\nimport { ns } from 'solid-ui'\n\nexport async function generateHomepage (\n subject: NamedNode,\n store: IndexedFormula,\n fetcher: Fetcher\n): Promise<HTMLElement> {\n const ownersProfile = await loadProfile(subject, fetcher)\n const name = getName(store, ownersProfile)\n\n const wrapper = document.createElement('div')\n wrapper.classList.add('container')\n wrapper.appendChild(createTitle(ownersProfile.uri, name))\n wrapper.appendChild(createDataSection(name))\n\n return wrapper\n}\n\nfunction createDataSection (name: string): HTMLElement {\n const dataSection = document.createElement('section')\n\n const title = document.createElement('h2')\n title.innerText = 'Data'\n dataSection.appendChild(title)\n\n const listGroup = document.createElement('div')\n listGroup.classList.add('list-group')\n dataSection.appendChild(listGroup)\n\n const publicDataLink = document.createElement('a')\n publicDataLink.classList.add('list-group-item')\n publicDataLink.href = '/public/'\n publicDataLink.innerText = `View ${name}'s files`\n listGroup.appendChild(publicDataLink)\n\n return dataSection\n}\n\nfunction createTitle (uri: string, name: string): HTMLElement {\n const profileLink = document.createElement('a')\n profileLink.href = uri\n profileLink.innerText = name\n\n const profileLinkPost = document.createElement('span')\n profileLinkPost.innerText = '\\'s Pod'\n\n const title = document.createElement('h1')\n title.appendChild(profileLink)\n title.appendChild(profileLinkPost)\n\n return title\n}\n\nasync function loadProfile (\n subject: NamedNode,\n fetcher: Fetcher\n): Promise<NamedNode> {\n const pod = subject.site().uri\n // TODO: This is a hack - we cannot assume that the profile is at this document, but we will live with it for now\n const webId = sym(`${pod}profile/card#me`)\n await fetcher.load(webId)\n return webId\n}\n\nfunction getName (store: IndexedFormula, ownersProfile: NamedNode): string {\n return (\n store.anyValue(ownersProfile, ns.vcard('fn'), null, ownersProfile.doc()) ||\n store.anyValue(ownersProfile, ns.foaf('name'), null, ownersProfile.doc()) ||\n new URL(ownersProfile.uri).host.split('.')[0]\n )\n}\n"],"file":"homepage.js"}
1
+ {"version":3,"sources":["../../src/dashboard/homepage.ts"],"names":["generateHomepage","subject","store","fetcher","loadProfile","ownersProfile","name","getName","wrapper","document","createElement","classList","add","appendChild","createTitle","uri","createDataSection","dataSection","title","innerText","listGroup","publicDataLink","href","window","location","profileLink","profileLinkPost","pod","site","webId","load","anyValue","ns","vcard","doc","foaf","URL","host","split"],"mappings":"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","sourcesContent":["import { Fetcher, IndexedFormula, NamedNode, sym } from 'rdflib'\nimport { ns } from 'solid-ui'\n\nexport async function generateHomepage (\n subject: NamedNode,\n store: IndexedFormula,\n fetcher: Fetcher\n): Promise<HTMLElement> {\n const ownersProfile = await loadProfile(subject, fetcher)\n const name = getName(store, ownersProfile)\n\n const wrapper = document.createElement('div')\n wrapper.classList.add('container')\n wrapper.appendChild(createTitle(ownersProfile.uri, name))\n wrapper.appendChild(createDataSection(name))\n\n return wrapper\n}\n\nfunction createDataSection (name: string): HTMLElement {\n const dataSection = document.createElement('section')\n\n const title = document.createElement('h2')\n title.innerText = 'Data'\n dataSection.appendChild(title)\n\n const listGroup = document.createElement('div')\n listGroup.classList.add('list-group')\n dataSection.appendChild(listGroup)\n\n const publicDataLink = document.createElement('a')\n publicDataLink.classList.add('list-group-item')\n publicDataLink.href = window.document.location.href + 'public/'\n publicDataLink.innerText = `View ${name}'s files`\n listGroup.appendChild(publicDataLink)\n\n return dataSection\n}\n\nfunction createTitle (uri: string, name: string): HTMLElement {\n const profileLink = document.createElement('a')\n profileLink.href = uri\n profileLink.innerText = name\n\n const profileLinkPost = document.createElement('span')\n profileLinkPost.innerText = '\\'s Pod'\n\n const title = document.createElement('h1')\n title.appendChild(profileLink)\n title.appendChild(profileLinkPost)\n\n return title\n}\n\nasync function loadProfile (\n subject: NamedNode,\n fetcher: Fetcher\n): Promise<NamedNode> {\n const pod = subject.site().uri\n // TODO: This is a hack - we cannot assume that the profile is at this document, but we will live with it for now\n const webId = sym(`${pod}profile/card#me`)\n await fetcher.load(webId)\n return webId\n}\n\nfunction getName (store: IndexedFormula, ownersProfile: NamedNode): string {\n return (\n store.anyValue(ownersProfile, ns.vcard('fn'), null, ownersProfile.doc()) ||\n store.anyValue(ownersProfile, ns.foaf('name'), null, ownersProfile.doc()) ||\n new URL(ownersProfile.uri).host.split('.')[0]\n )\n}\n"],"file":"homepage.js"}
package/lib/index.js CHANGED
@@ -5,19 +5,20 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.getOutliner = getOutliner;
9
- Object.defineProperty(exports, "versionInfo", {
8
+ Object.defineProperty(exports, "OutlineManager", {
10
9
  enumerable: true,
11
10
  get: function get() {
12
- return _versionInfo["default"];
11
+ return _manager["default"];
13
12
  }
14
13
  });
15
- Object.defineProperty(exports, "OutlineManager", {
14
+ exports.UI = void 0;
15
+ Object.defineProperty(exports, "byName", {
16
16
  enumerable: true,
17
17
  get: function get() {
18
- return _manager["default"];
18
+ return _paneRegistry.byName;
19
19
  }
20
20
  });
21
+ exports.getOutliner = getOutliner;
21
22
  Object.defineProperty(exports, "list", {
22
23
  enumerable: true,
23
24
  get: function get() {
@@ -42,13 +43,12 @@ Object.defineProperty(exports, "register", {
42
43
  return _paneRegistry.register;
43
44
  }
44
45
  });
45
- Object.defineProperty(exports, "byName", {
46
+ Object.defineProperty(exports, "versionInfo", {
46
47
  enumerable: true,
47
48
  get: function get() {
48
- return _paneRegistry.byName;
49
+ return _versionInfo["default"];
49
50
  }
50
51
  });
51
- exports.UI = void 0;
52
52
 
53
53
  var _versionInfo = _interopRequireDefault(require("./versionInfo"));
54
54
 
@@ -1 +1 @@
1
- {"version":3,"file":"internalPane.d.ts","sourceRoot":"","sources":["../../src/internal/internalPane.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,QAAA,MAAM,IAAI,EAAE,cA0OX,CAAA;AAiBD,eAAe,IAAI,CAAA"}
1
+ {"version":3,"file":"internalPane.d.ts","sourceRoot":"","sources":["../../src/internal/internalPane.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,QAAA,MAAM,IAAI,EAAE,cAwOX,CAAA;AAiBD,eAAe,IAAI,CAAA"}
@@ -19,7 +19,6 @@ var _rdflib = require("rdflib");
19
19
  var pane = {
20
20
  icon: _solidUi.icons.originalIconBase + 'tango/22-emblem-system.png',
21
21
  name: 'internal',
22
- audience: [_solidUi.ns.solid('Developer')],
23
22
  label: function label() {
24
23
  return 'under the hood'; // There is often a URI even of no statements
25
24
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/internal/internalPane.ts"],"names":["pane","icon","icons","originalIconBase","name","audience","ns","solid","label","render","subject","context","dom","store","session","canonizedSubject","canon","types","findTypeURIs","filter","pred","view","paneRegistry","byName","predicates","uri","div","createElement","setAttribute","deleteRecursive","kb","folder","fetcher","console","error","Promise","resolve","reject","load","then","promises","each","ldp","map","file","holds","rdf","log","webOperation","all","undefined","err","str","Error","alert","isDocument","includes","controls","appendChild","style","width","margin","controlRow","deleteCell","isFolder","endsWith","noun","isProtectedUri","deleteButton","widgets","deleteButtonWithCheck","confirm","promise","refreshCell","refreshButton","button","iconBase","addEventListener","refresh","ok","errm","plist","statementsMatching","docURI","push","appNode","indexOf","split","updater","ed","editable","toString","outliner","getOutliner","appendPropertyTRs","classes","siteUri","site"],"mappings":"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","sourcesContent":["/* Internal Pane\n **\n ** This outline pane contains the properties which are\n ** internal to the user's interaction with the web, and are not normally displayed\n */\n/* global alert confirm */\n\nimport { icons, ns, widgets } from 'solid-ui'\nimport { BlankNode, IndexedFormula, literal, NamedNode, st, sym, Variable, Store } from 'rdflib'\nimport { PaneDefinition } from 'pane-registry'\n\nconst pane: PaneDefinition = {\n icon: icons.originalIconBase + 'tango/22-emblem-system.png',\n\n name: 'internal',\n\n audience: [ns.solid('Developer')],\n\n label: function () {\n return 'under the hood' // There is often a URI even of no statements\n },\n\n render: function (subject, context) {\n const dom = context.dom\n const store = context.session.store as Store\n const canonizedSubject = store.canon(subject) as BlankNode | NamedNode | Variable\n const types = store.findTypeURIs(canonizedSubject)\n\n function filter (pred: NamedNode) {\n if (types['http://www.w3.org/2007/ont/link#ProtocolEvent']) return true // display everything for them\n const view = context.session.paneRegistry.byName('internal')\n return (\n view &&\n view.predicates &&\n !!(typeof view.predicates[pred.uri] !== 'undefined')\n )\n }\n\n const div = dom.createElement('div')\n div.setAttribute('class', 'internalPane')\n div.setAttribute(\n 'style',\n 'background-color: #ddddff; padding: 0.5em; border-radius: 1em;'\n )\n\n function deleteRecursive (kb: IndexedFormula, folder: NamedNode) {\n const fetcher = (kb as any).fetcher\n if (!fetcher) {\n console.error('No fetcher available')\n return\n }\n return new Promise(function (resolve, reject) {\n fetcher.load(folder).then(function () {\n const promises = kb.each(folder, ns.ldp('contains')).map(file => {\n if (kb.holds(file, ns.rdf('type'), ns.ldp('BasicContainer'))) {\n return deleteRecursive(kb, file as NamedNode)\n } else {\n console.log('deleteRecursive leaf file: ' + file)\n return fetcher.webOperation('DELETE', (file as NamedNode).uri)\n }\n })\n Promise.all(promises).then(\n () => {\n console.log('deleteRecursive empty folder: ' + folder)\n fetcher\n .webOperation('DELETE', folder.uri)\n .then(() => {\n console.log('Deleted Ok: ' + folder)\n resolve(undefined)\n })\n .catch((err: string) => {\n const str = 'Unable to delete ' + folder + ': ' + err\n console.log(str)\n reject(new Error(str))\n })\n resolve(undefined)\n },\n err => {\n alert(err)\n reject(err)\n }\n )\n })\n })\n }\n\n const isDocument = subject.uri && !subject.uri.includes('#')\n if (isDocument) {\n const controls = div.appendChild(dom.createElement('table'))\n controls.style.width = '100%'\n controls.style.margin = '1em'\n const controlRow = controls.appendChild(dom.createElement('tr'))\n\n const deleteCell = controlRow.appendChild(dom.createElement('td'))\n const isFolder =\n (subject.uri && subject.uri.endsWith('/')) ||\n store.holds(subject, ns.rdf('type'), ns.ldp('Container'))\n const noun = isFolder ? 'folder' : 'file'\n if (!isProtectedUri(subject)) {\n console.log(subject)\n const deleteButton = widgets.deleteButtonWithCheck(\n dom,\n deleteCell,\n noun,\n function () {\n if (\n !confirm(\n `Are you sure you want to delete ${subject}? This cannot be undone.`\n )\n ) {\n return\n }\n // @@ TODO Remove casing of store.fetcher\n if (!store.fetcher) {\n throw new Error('Store has no fetcher')\n }\n const promise = isFolder\n ? (deleteRecursive(store, subject) || Promise.resolve())\n : store.fetcher.webOperation('DELETE', subject.uri) || Promise.resolve()\n promise\n .then(() => {\n const str = 'Deleted: ' + subject\n console.log(str)\n })\n .catch((err: any) => {\n const str = 'Unable to delete ' + subject + ': ' + err\n console.log(str)\n alert(str)\n })\n }\n )\n deleteButton.style = 'height: 2em;'\n deleteButton.class = '' // Remove hover hide\n deleteCell.appendChild(deleteButton)\n }\n\n const refreshCell = controlRow.appendChild(dom.createElement('td'))\n const refreshButton = widgets.button(\n dom,\n icons.iconBase + 'noun_479395.svg',\n 'refresh'\n )\n refreshCell.appendChild(refreshButton)\n refreshButton.addEventListener('click', () => {\n if (!store.fetcher) {\n throw new Error('Store has no fetcher')\n }\n store.fetcher.refresh(subject, function (\n ok,\n errm\n ) {\n let str\n if (ok) {\n str = 'Refreshed OK: ' + subject\n } else {\n str = 'Error refreshing: ' + subject + ': ' + errm\n }\n console.log(str)\n alert(str)\n })\n })\n }\n\n let plist = store.statementsMatching(subject)\n let docURI = ''\n if (!store.fetcher) {\n throw new Error('Store has no fetcher')\n }\n\n if (subject.uri) {\n plist.push(\n st(\n subject,\n sym('http://www.w3.org/2007/ont/link#uri'),\n subject.uri as any, // @@ TODO Remove casting\n store.fetcher.appNode\n )\n )\n if (subject.uri.indexOf('#') >= 0) {\n docURI = subject.uri.split('#')[0]\n plist.push(\n st(\n subject,\n sym('http://www.w3.org/2007/ont/link#documentURI'),\n subject.uri.split('#')[0] as any, // @@ TODO Remove casting\n store.fetcher.appNode\n )\n )\n plist.push(\n st(\n subject,\n sym('http://www.w3.org/2007/ont/link#document'),\n sym(subject.uri.split('#')[0]),\n store.fetcher.appNode\n )\n )\n } else {\n docURI = subject.uri\n }\n }\n if (docURI) {\n if (!store.updater) {\n throw new Error('Store has no updater')\n }\n\n const ed = store.updater.editable(docURI)\n if (ed) {\n plist.push(\n st(\n subject,\n sym('http://www.w3.org/ns/rww#editable'),\n literal(ed.toString()),\n store.fetcher.appNode\n )\n )\n }\n }\n // @@ TODO get a proper type\n const outliner: any = context.getOutliner(dom)\n outliner.appendPropertyTRs(div, plist, false, filter)\n plist = store.statementsMatching(undefined, undefined, subject)\n outliner.appendPropertyTRs(div, plist, true, filter)\n return div\n },\n\n predicates: {\n // Predicates used for inner workings. Under the hood\n 'http://www.w3.org/2007/ont/link#request': 1,\n 'http://www.w3.org/2007/ont/link#requestedBy': 1,\n 'http://www.w3.org/2007/ont/link#source': 1,\n 'http://www.w3.org/2007/ont/link#session': 2, // 2= test neg but display\n 'http://www.w3.org/2007/ont/link#uri': 1,\n 'http://www.w3.org/2007/ont/link#documentURI': 1,\n 'http://www.w3.org/2007/ont/link#document': 1,\n 'http://www.w3.org/2007/ont/link#all': 1, // From userinput.js\n 'http://www.w3.org/2007/ont/link#Document': 1,\n 'http://www.w3.org/ns/rww#editable': 1,\n 'http://www.w3.org/2000/01/rdf-schema#seeAlso': 1,\n 'http://www.w3.org/2002/07/owl#': 1\n },\n\n classes: {\n // Things which are inherently already undercover\n 'http://www.w3.org/2007/ont/link#ProtocolEvent': 1\n }\n}\n\nfunction isProtectedUri (subject: NamedNode): boolean {\n // TODO: Could make the code below smarter by removing some of the redundancy by creating a recursive function, but did not bother now\n const siteUri = subject.site().uri\n return (\n subject.uri === siteUri ||\n subject.uri === siteUri + 'profile/' ||\n subject.uri === siteUri + 'profile/card' ||\n subject.uri === siteUri + 'settings/' ||\n subject.uri === siteUri + 'settings/prefs.ttl' ||\n subject.uri === siteUri + 'settings/privateTypeIndex.ttl' ||\n subject.uri === siteUri + 'settings/publicTypeIndex.ttl' ||\n subject.uri === siteUri + 'settings/serverSide.ttl'\n )\n}\n\nexport default pane\n\n// ends\n"],"file":"internalPane.js"}
1
+ {"version":3,"sources":["../../src/internal/internalPane.ts"],"names":["pane","icon","icons","originalIconBase","name","label","render","subject","context","dom","store","session","canonizedSubject","canon","types","findTypeURIs","filter","pred","view","paneRegistry","byName","predicates","uri","div","createElement","setAttribute","deleteRecursive","kb","folder","fetcher","console","error","Promise","resolve","reject","load","then","promises","each","ns","ldp","map","file","holds","rdf","log","webOperation","all","undefined","err","str","Error","alert","isDocument","includes","controls","appendChild","style","width","margin","controlRow","deleteCell","isFolder","endsWith","noun","isProtectedUri","deleteButton","widgets","deleteButtonWithCheck","confirm","promise","refreshCell","refreshButton","button","iconBase","addEventListener","refresh","ok","errm","plist","statementsMatching","docURI","push","appNode","indexOf","split","updater","ed","editable","toString","outliner","getOutliner","appendPropertyTRs","classes","siteUri","site"],"mappings":"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","sourcesContent":["/* Internal Pane\n **\n ** This outline pane contains the properties which are\n ** internal to the user's interaction with the web, and are not normally displayed\n */\n/* global alert confirm */\n\nimport { icons, ns, widgets } from 'solid-ui'\nimport { BlankNode, IndexedFormula, literal, NamedNode, st, sym, Variable, Store } from 'rdflib'\nimport { PaneDefinition } from 'pane-registry'\n\nconst pane: PaneDefinition = {\n icon: icons.originalIconBase + 'tango/22-emblem-system.png',\n\n name: 'internal',\n\n label: function () {\n return 'under the hood' // There is often a URI even of no statements\n },\n\n render: function (subject, context) {\n const dom = context.dom\n const store = context.session.store as Store\n const canonizedSubject = store.canon(subject) as BlankNode | NamedNode | Variable\n const types = store.findTypeURIs(canonizedSubject)\n\n function filter (pred: NamedNode) {\n if (types['http://www.w3.org/2007/ont/link#ProtocolEvent']) return true // display everything for them\n const view = context.session.paneRegistry.byName('internal')\n return (\n view &&\n view.predicates &&\n !!(typeof view.predicates[pred.uri] !== 'undefined')\n )\n }\n\n const div = dom.createElement('div')\n div.setAttribute('class', 'internalPane')\n div.setAttribute(\n 'style',\n 'background-color: #ddddff; padding: 0.5em; border-radius: 1em;'\n )\n\n function deleteRecursive (kb: IndexedFormula, folder: NamedNode) {\n const fetcher = (kb as any).fetcher\n if (!fetcher) {\n console.error('No fetcher available')\n return\n }\n return new Promise(function (resolve, reject) {\n fetcher.load(folder).then(function () {\n const promises = kb.each(folder, ns.ldp('contains')).map(file => {\n if (kb.holds(file, ns.rdf('type'), ns.ldp('BasicContainer'))) {\n return deleteRecursive(kb, file as NamedNode)\n } else {\n console.log('deleteRecursive leaf file: ' + file)\n return fetcher.webOperation('DELETE', (file as NamedNode).uri)\n }\n })\n Promise.all(promises).then(\n () => {\n console.log('deleteRecursive empty folder: ' + folder)\n fetcher\n .webOperation('DELETE', folder.uri)\n .then(() => {\n console.log('Deleted Ok: ' + folder)\n resolve(undefined)\n })\n .catch((err: string) => {\n const str = 'Unable to delete ' + folder + ': ' + err\n console.log(str)\n reject(new Error(str))\n })\n resolve(undefined)\n },\n err => {\n alert(err)\n reject(err)\n }\n )\n })\n })\n }\n\n const isDocument = subject.uri && !subject.uri.includes('#')\n if (isDocument) {\n const controls = div.appendChild(dom.createElement('table'))\n controls.style.width = '100%'\n controls.style.margin = '1em'\n const controlRow = controls.appendChild(dom.createElement('tr'))\n\n const deleteCell = controlRow.appendChild(dom.createElement('td'))\n const isFolder =\n (subject.uri && subject.uri.endsWith('/')) ||\n store.holds(subject, ns.rdf('type'), ns.ldp('Container'))\n const noun = isFolder ? 'folder' : 'file'\n if (!isProtectedUri(subject)) {\n console.log(subject)\n const deleteButton = widgets.deleteButtonWithCheck(\n dom,\n deleteCell,\n noun,\n function () {\n if (\n !confirm(\n `Are you sure you want to delete ${subject}? This cannot be undone.`\n )\n ) {\n return\n }\n // @@ TODO Remove casing of store.fetcher\n if (!store.fetcher) {\n throw new Error('Store has no fetcher')\n }\n const promise = isFolder\n ? (deleteRecursive(store, subject) || Promise.resolve())\n : store.fetcher.webOperation('DELETE', subject.uri) || Promise.resolve()\n promise\n .then(() => {\n const str = 'Deleted: ' + subject\n console.log(str)\n })\n .catch((err: any) => {\n const str = 'Unable to delete ' + subject + ': ' + err\n console.log(str)\n alert(str)\n })\n }\n )\n deleteButton.style = 'height: 2em;'\n deleteButton.class = '' // Remove hover hide\n deleteCell.appendChild(deleteButton)\n }\n\n const refreshCell = controlRow.appendChild(dom.createElement('td'))\n const refreshButton = widgets.button(\n dom,\n icons.iconBase + 'noun_479395.svg',\n 'refresh'\n )\n refreshCell.appendChild(refreshButton)\n refreshButton.addEventListener('click', () => {\n if (!store.fetcher) {\n throw new Error('Store has no fetcher')\n }\n store.fetcher.refresh(subject, function (\n ok,\n errm\n ) {\n let str\n if (ok) {\n str = 'Refreshed OK: ' + subject\n } else {\n str = 'Error refreshing: ' + subject + ': ' + errm\n }\n console.log(str)\n alert(str)\n })\n })\n }\n\n let plist = store.statementsMatching(subject)\n let docURI = ''\n if (!store.fetcher) {\n throw new Error('Store has no fetcher')\n }\n\n if (subject.uri) {\n plist.push(\n st(\n subject,\n sym('http://www.w3.org/2007/ont/link#uri'),\n subject.uri as any, // @@ TODO Remove casting\n store.fetcher.appNode\n )\n )\n if (subject.uri.indexOf('#') >= 0) {\n docURI = subject.uri.split('#')[0]\n plist.push(\n st(\n subject,\n sym('http://www.w3.org/2007/ont/link#documentURI'),\n subject.uri.split('#')[0] as any, // @@ TODO Remove casting\n store.fetcher.appNode\n )\n )\n plist.push(\n st(\n subject,\n sym('http://www.w3.org/2007/ont/link#document'),\n sym(subject.uri.split('#')[0]),\n store.fetcher.appNode\n )\n )\n } else {\n docURI = subject.uri\n }\n }\n if (docURI) {\n if (!store.updater) {\n throw new Error('Store has no updater')\n }\n\n const ed = store.updater.editable(docURI)\n if (ed) {\n plist.push(\n st(\n subject,\n sym('http://www.w3.org/ns/rww#editable'),\n literal(ed.toString()),\n store.fetcher.appNode\n )\n )\n }\n }\n // @@ TODO get a proper type\n const outliner: any = context.getOutliner(dom)\n outliner.appendPropertyTRs(div, plist, false, filter)\n plist = store.statementsMatching(undefined, undefined, subject)\n outliner.appendPropertyTRs(div, plist, true, filter)\n return div\n },\n\n predicates: {\n // Predicates used for inner workings. Under the hood\n 'http://www.w3.org/2007/ont/link#request': 1,\n 'http://www.w3.org/2007/ont/link#requestedBy': 1,\n 'http://www.w3.org/2007/ont/link#source': 1,\n 'http://www.w3.org/2007/ont/link#session': 2, // 2= test neg but display\n 'http://www.w3.org/2007/ont/link#uri': 1,\n 'http://www.w3.org/2007/ont/link#documentURI': 1,\n 'http://www.w3.org/2007/ont/link#document': 1,\n 'http://www.w3.org/2007/ont/link#all': 1, // From userinput.js\n 'http://www.w3.org/2007/ont/link#Document': 1,\n 'http://www.w3.org/ns/rww#editable': 1,\n 'http://www.w3.org/2000/01/rdf-schema#seeAlso': 1,\n 'http://www.w3.org/2002/07/owl#': 1\n },\n\n classes: {\n // Things which are inherently already undercover\n 'http://www.w3.org/2007/ont/link#ProtocolEvent': 1\n }\n}\n\nfunction isProtectedUri (subject: NamedNode): boolean {\n // TODO: Could make the code below smarter by removing some of the redundancy by creating a recursive function, but did not bother now\n const siteUri = subject.site().uri\n return (\n subject.uri === siteUri ||\n subject.uri === siteUri + 'profile/' ||\n subject.uri === siteUri + 'profile/card' ||\n subject.uri === siteUri + 'settings/' ||\n subject.uri === siteUri + 'settings/prefs.ttl' ||\n subject.uri === siteUri + 'settings/privateTypeIndex.ttl' ||\n subject.uri === siteUri + 'settings/publicTypeIndex.ttl' ||\n subject.uri === siteUri + 'settings/serverSide.ttl'\n )\n}\n\nexport default pane\n\n// ends\n"],"file":"internalPane.js"}
@@ -24,7 +24,8 @@ module.exports = function licenseOptions() {
24
24
  var lics = this.checkedLicenses;
25
25
 
26
26
  for (var kk = 0; kk < lics.length; kk++) {
27
- message += "<input type='checkbox' name = 'n" + kk + "' onClick = 'tabulator.options.submit()'" + (lics[kk] ? 'CHECKED' : '') + ' />CC: ' + names[kk] + '<br />';
27
+ message += "<input type='checkbox' name = 'n" + kk + "' onClick = 'tabulator.options.submit()'" + ( // @@ FIXME
28
+ lics[kk] ? 'CHECKED' : '') + ' />CC: ' + names[kk] + '<br />';
28
29
  }
29
30
 
30
31
  message += "<br /> <a onclick='tabulator.options.selectAll()'>[Select All] </a>"; // @@ FIXME
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/outline/licenseOptions.js"],"names":["licenseURI","names","UI","require","kb","store","module","exports","licenseOptions","options","references","checkedLicenses","openCheckBoxWindow","display","window","open","message","lics","kk","length","document","write","close","i","checkboxes","elements","selectAll","checked","deselectAll","submit","checkLicence","checkLicense","statement","licenses","each","why","sym","log","info","j","uri"],"mappings":";;AAAA;AACA;AAEA;AACA;AAEA,IAAMA,UAAU,GAAG,CACjB,mDADiB,EAEjB,mDAFiB,EAGjB,gDAHiB,EAIjB,gDAJiB,EAKjB,gDALiB,EAMjB,6CANiB,CAAnB;AASA,IAAMC,KAAK,GAAG,CAAC,UAAD,EAAa,UAAb,EAAyB,OAAzB,EAAkC,OAAlC,EAA2C,OAA3C,EAAoD,IAApD,CAAd;;AAEA,IAAMC,EAAE,GAAGC,OAAO,CAAC,UAAD,CAAlB;;AACA,IAAMC,EAAE,GAAGF,EAAE,CAACG,KAAd;;AAEAC,MAAM,CAACC,OAAP,GAAiB,SAASC,cAAT,GAA2B;AAC1C,OAAKC,OAAL,GAAe,EAAf;AACA,OAAKC,UAAL,GAAkB,EAAlB;AACA,OAAKC,eAAL,GAAuB,EAAvB;;AAEA,OAAKC,kBAAL,GAA0B,YAAY;AACpC,iBAAUC,OAAV,GAAoBC,MAAM,CAACC,IAAP,CAClB,GADkB,EAElB,QAFkB,EAGlB,+FAHkB,CAApB;AAKD,GAND;;AAOA,MAAIC,OAAO,GAAG,uDAAd;AACA,MAAMC,IAAI,GAAG,KAAKN,eAAlB;;AACA,OAAK,IAAIO,EAAE,GAAG,CAAd,EAAiBA,EAAE,GAAGD,IAAI,CAACE,MAA3B,EAAmCD,EAAE,EAArC,EAAyC;AACvCF,IAAAA,OAAO,IACL,qCACAE,EADA,GAEA,0CAFA,IAGCD,IAAI,CAACC,EAAD,CAAJ,GAAW,SAAX,GAAuB,EAHxB,IAIA,SAJA,GAKAjB,KAAK,CAACiB,EAAD,CALL,GAMA,QAPF;AAQD;;AAEDF,EAAAA,OAAO,IACL,qEADF,CAzB0C,CA0B8B;;AACxEA,EAAAA,OAAO,IAAI,kEAAX,CA3B0C,CA2BoC;;AAC9EA,EAAAA,OAAO,IAAI,gBAAX;AAEA,OAAKH,OAAL,CAAaO,QAAb,CAAsBC,KAAtB,CAA4BL,OAA5B;AAEA,OAAKH,OAAL,CAAaO,QAAb,CAAsBE,KAAtB;AAEA,MAAIC,CAAJ;;AACA,OAAKA,CAAC,GAAG,CAAT,EAAYA,CAAC,GAAG,CAAhB,EAAmBA,CAAC,EAApB,EAAwB;AACtB,SAAKb,UAAL,CAAgBa,CAAhB,IAAqB,aAAUV,OAAV,CAAkBO,QAAlB,CAA2BI,UAA3B,CAAsCC,QAAtC,CAA+CF,CAA/C,CAArB;AACD;;AAED,OAAKG,SAAL,GAAiB,YAAY;AAC3B,QAAIH,CAAJ;;AACA,SAAKA,CAAC,GAAG,CAAT,EAAYA,CAAC,GAAG,CAAhB,EAAmBA,CAAC,EAApB,EAAwB;AACtB,WAAKV,OAAL,CAAaO,QAAb,CAAsBI,UAAtB,CAAiCC,QAAjC,CAA0CF,CAA1C,EAA6CI,OAA7C,GAAuD,IAAvD;AACA,WAAKjB,UAAL,CAAgBa,CAAhB,EAAmBI,OAAnB,GAA6B,IAA7B;AACA,WAAKhB,eAAL,CAAqBY,CAArB,IAA0B,IAA1B;AACD;AACF,GAPD;;AASA,OAAKK,WAAL,GAAmB,YAAY;AAC7B,QAAIL,CAAJ;;AACA,SAAKA,CAAC,GAAG,CAAT,EAAYA,CAAC,GAAG,CAAhB,EAAmBA,CAAC,EAApB,EAAwB;AACtB,WAAKV,OAAL,CAAaO,QAAb,CAAsBI,UAAtB,CAAiCC,QAAjC,CAA0CF,CAA1C,EAA6CI,OAA7C,GAAuD,KAAvD;AACA,WAAKjB,UAAL,CAAgBa,CAAhB,EAAmBI,OAAnB,GAA6B,KAA7B;AACA,WAAKhB,eAAL,CAAqBY,CAArB,IAA0B,KAA1B;AACD;AACF,GAPD;;AASA,OAAKM,MAAL,GAAc,YAAY;AACxB;AACA,SAAK,IAAIN,EAAC,GAAG,CAAb,EAAgBA,EAAC,GAAG,CAApB,EAAuBA,EAAC,EAAxB,EAA4B;AAC1B,WAAKZ,eAAL,CAAqBY,EAArB,IAA0B,CAAC,CAAC,KAAKb,UAAL,CAAgBa,EAAhB,EAAmBI,OAA/C;AACD;AACF,GALD;;AAOA,OAAKG,YAAL,GAAoB,SAASC,YAAT,CAAuBC,SAAvB,EAAkC;AACpD,QAAMC,QAAQ,GAAG7B,EAAE,CAAC8B,IAAH,CACfF,SAAS,CAACG,GADK,EAEf/B,EAAE,CAACgC,GAAH,CAAO,uCAAP,CAFe,CAAjB;AAIAlC,IAAAA,EAAE,CAACmC,GAAH,CAAOC,IAAP,CAAY,cAAcN,SAAS,CAACG,GAAxB,GAA8B,IAA9B,GAAqCF,QAAjD;;AACA,SAAK,IAAIV,GAAC,GAAG,CAAb,EAAgBA,GAAC,GAAGU,QAAQ,CAACd,MAA7B,EAAqCI,GAAC,EAAtC,EAA0C;AACxC,WAAK,IAAIgB,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAG,KAAK5B,eAAL,CAAqBQ,MAAzC,EAAiDoB,CAAC,EAAlD,EAAsD;AACpD,YAAI,KAAK5B,eAAL,CAAqB4B,CAArB,KAA2BN,QAAQ,CAACV,GAAD,CAAR,CAAYiB,GAAZ,KAAoBxC,UAAU,CAACuC,CAAD,CAA7D,EAAkE;AAChE,iBAAO,IAAP,CADgE,CAEhE;AACA;AACD;AACF;AACF;;AACD,WAAO,KAAP;AACD,GAhBD;;AAiBA,SAAO,IAAP;AACD,CAlFD,C,CAoFA","sourcesContent":["// This was a student project to\n// allow the user to chose favoite CC licence terms and have them highlighted\n\n// tabulator.options becaome UI.licenseOptions\n// Possible future alternative directoons: Store licence preferences in a solid preferences file\n\nconst licenseURI = [\n 'http://creativecommons.org/licenses/by-nc-nd/3.0/',\n 'http://creativecommons.org/licenses/by-nc-sa/3.0/',\n 'http://creativecommons.org/licenses/by-nc/3.0/',\n 'http://creativecommons.org/licenses/by-nd/3.0/',\n 'http://creativecommons.org/licenses/by-sa/3.0/',\n 'http://creativecommons.org/licenses/by/3.0/'\n]\n\nconst names = ['BY-NC-ND', 'BY-NC-SA', 'BY-NC', 'BY-ND', 'BY-SA', 'BY']\n\nconst UI = require('solid-ui')\nconst kb = UI.store\n\nmodule.exports = function licenseOptions () {\n this.options = {}\n this.references = []\n this.checkedLicenses = []\n\n this.openCheckBoxWindow = function () {\n this.this.display = window.open(\n ' ',\n 'NewWin',\n 'menubar=0,location=no,status=no,directories=no,toolbar=no,scrollbars=yes,height=200,width=200'\n )\n }\n let message = \"<font face='arial' size='2'><form name ='checkboxes'>\"\n const lics = this.checkedLicenses\n for (let kk = 0; kk < lics.length; kk++) {\n message +=\n \"<input type='checkbox' name = 'n\" +\n kk +\n \"' onClick = 'tabulator.options.submit()'\" + // @@ FIXME\n (lics[kk] ? 'CHECKED' : '') +\n ' />CC: ' +\n names[kk] +\n '<br />'\n }\n\n message +=\n \"<br /> <a onclick='tabulator.options.selectAll()'>[Select All] </a>\" // @@ FIXME\n message += \"<a onclick='tabulator.options.deselectAll()'> [Deselect All]</a>\" // @@ FIXME\n message += '</form></font>'\n\n this.display.document.write(message)\n\n this.display.document.close()\n\n let i\n for (i = 0; i < 6; i++) {\n this.references[i] = this.this.display.document.checkboxes.elements[i]\n }\n\n this.selectAll = function () {\n let i\n for (i = 0; i < 6; i++) {\n this.display.document.checkboxes.elements[i].checked = true\n this.references[i].checked = true\n this.checkedLicenses[i] = true\n }\n }\n\n this.deselectAll = function () {\n let i\n for (i = 0; i < 6; i++) {\n this.display.document.checkboxes.elements[i].checked = false\n this.references[i].checked = false\n this.checkedLicenses[i] = false\n }\n }\n\n this.submit = function () {\n // alert('this.submit: checked=' + this.references[0].checked)\n for (let i = 0; i < 6; i++) {\n this.checkedLicenses[i] = !!this.references[i].checked\n }\n }\n\n this.checkLicence = function checkLicense (statement) {\n const licenses = kb.each(\n statement.why,\n kb.sym('http://creativecommons.org/ns#license')\n )\n UI.log.info('licenses:' + statement.why + ': ' + licenses)\n for (let i = 0; i < licenses.length; i++) {\n for (let j = 0; j < this.checkedLicenses.length; j++) {\n if (this.checkedLicenses[j] && licenses[i].uri === licenseURI[j]) {\n return true\n // theClass += ' licOkay' // icon_expand\n // break\n }\n }\n }\n return false\n }\n return this\n}\n\n// ends\n"],"file":"licenseOptions.js"}
1
+ {"version":3,"sources":["../../src/outline/licenseOptions.js"],"names":["licenseURI","names","UI","require","kb","store","module","exports","licenseOptions","options","references","checkedLicenses","openCheckBoxWindow","display","window","open","message","lics","kk","length","document","write","close","i","checkboxes","elements","selectAll","checked","deselectAll","submit","checkLicence","checkLicense","statement","licenses","each","why","sym","log","info","j","uri"],"mappings":"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","sourcesContent":["// This was a student project to\n// allow the user to chose favoite CC licence terms and have them highlighted\n\n// tabulator.options becaome UI.licenseOptions\n// Possible future alternative directoons: Store licence preferences in a solid preferences file\n\nconst licenseURI = [\n 'http://creativecommons.org/licenses/by-nc-nd/3.0/',\n 'http://creativecommons.org/licenses/by-nc-sa/3.0/',\n 'http://creativecommons.org/licenses/by-nc/3.0/',\n 'http://creativecommons.org/licenses/by-nd/3.0/',\n 'http://creativecommons.org/licenses/by-sa/3.0/',\n 'http://creativecommons.org/licenses/by/3.0/'\n]\n\nconst names = ['BY-NC-ND', 'BY-NC-SA', 'BY-NC', 'BY-ND', 'BY-SA', 'BY']\n\nconst UI = require('solid-ui')\nconst kb = UI.store\n\nmodule.exports = function licenseOptions () {\n this.options = {}\n this.references = []\n this.checkedLicenses = []\n\n this.openCheckBoxWindow = function () {\n this.this.display = window.open(\n ' ',\n 'NewWin',\n 'menubar=0,location=no,status=no,directories=no,toolbar=no,scrollbars=yes,height=200,width=200'\n )\n }\n let message = \"<font face='arial' size='2'><form name ='checkboxes'>\"\n const lics = this.checkedLicenses\n for (let kk = 0; kk < lics.length; kk++) {\n message +=\n \"<input type='checkbox' name = 'n\" +\n kk +\n \"' onClick = 'tabulator.options.submit()'\" + // @@ FIXME\n (lics[kk] ? 'CHECKED' : '') +\n ' />CC: ' +\n names[kk] +\n '<br />'\n }\n\n message +=\n \"<br /> <a onclick='tabulator.options.selectAll()'>[Select All] </a>\" // @@ FIXME\n message += \"<a onclick='tabulator.options.deselectAll()'> [Deselect All]</a>\" // @@ FIXME\n message += '</form></font>'\n\n this.display.document.write(message)\n\n this.display.document.close()\n\n let i\n for (i = 0; i < 6; i++) {\n this.references[i] = this.this.display.document.checkboxes.elements[i]\n }\n\n this.selectAll = function () {\n let i\n for (i = 0; i < 6; i++) {\n this.display.document.checkboxes.elements[i].checked = true\n this.references[i].checked = true\n this.checkedLicenses[i] = true\n }\n }\n\n this.deselectAll = function () {\n let i\n for (i = 0; i < 6; i++) {\n this.display.document.checkboxes.elements[i].checked = false\n this.references[i].checked = false\n this.checkedLicenses[i] = false\n }\n }\n\n this.submit = function () {\n // alert('this.submit: checked=' + this.references[0].checked)\n for (let i = 0; i < 6; i++) {\n this.checkedLicenses[i] = !!this.references[i].checked\n }\n }\n\n this.checkLicence = function checkLicense (statement) {\n const licenses = kb.each(\n statement.why,\n kb.sym('http://creativecommons.org/ns#license')\n )\n UI.log.info('licenses:' + statement.why + ': ' + licenses)\n for (let i = 0; i < licenses.length; i++) {\n for (let j = 0; j < this.checkedLicenses.length; j++) {\n if (this.checkedLicenses[j] && licenses[i].uri === licenseURI[j]) {\n return true\n // theClass += ' licOkay' // icon_expand\n // break\n }\n }\n }\n return false\n }\n return this\n}\n\n// ends\n"],"file":"licenseOptions.js"}