solid-panes 3.5.22-25afa55a → 3.5.23-4529a705
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/lib/imagePane.js +14 -7
- package/lib/imagePane.js.map +1 -1
- package/lib/slideshow/slideshowPane.js +23 -10
- package/lib/slideshow/slideshowPane.js.map +1 -1
- package/lib/versionInfo.js +5 -5
- package/lib/versionInfo.js.map +1 -1
- package/package.json +3 -3
- package/src/imagePane.js +18 -7
- package/src/slideshow/slideshowPane.js +16 -7
- package/src/versionInfo.ts +5 -5
package/lib/imagePane.js
CHANGED
|
@@ -10,16 +10,16 @@ module.exports = {
|
|
|
10
10
|
icon: UI.icons.originalIconBase + 'tango/22-image-x-generic.png',
|
|
11
11
|
name: 'image',
|
|
12
12
|
label: function label(subject, context) {
|
|
13
|
-
var
|
|
13
|
+
var store = context.session.store;
|
|
14
14
|
|
|
15
|
-
if (!
|
|
15
|
+
if (!store.anyStatementMatching(subject, UI.ns.rdf('type'), store.sym('http://purl.org/dc/terms/Image'))) {
|
|
16
16
|
// NB: Not dc: namespace!
|
|
17
17
|
return null;
|
|
18
18
|
} // See also the source pane, which has lower precedence.
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
var contentTypeMatch = function contentTypeMatch(
|
|
22
|
-
var cts =
|
|
21
|
+
var contentTypeMatch = function contentTypeMatch(store, x, contentTypes) {
|
|
22
|
+
var cts = store.fetcher.getHeader(x, 'content-type');
|
|
23
23
|
|
|
24
24
|
if (cts) {
|
|
25
25
|
for (var j = 0; j < cts.length; j++) {
|
|
@@ -36,7 +36,7 @@ module.exports = {
|
|
|
36
36
|
|
|
37
37
|
var suppressed = ['application/pdf'];
|
|
38
38
|
|
|
39
|
-
if (contentTypeMatch(
|
|
39
|
+
if (contentTypeMatch(store, subject, suppressed)) {
|
|
40
40
|
return null;
|
|
41
41
|
}
|
|
42
42
|
|
|
@@ -44,10 +44,17 @@ module.exports = {
|
|
|
44
44
|
},
|
|
45
45
|
render: function render(subject, context) {
|
|
46
46
|
var myDocument = context.dom;
|
|
47
|
+
var store = context.session.store;
|
|
47
48
|
var div = myDocument.createElement('div');
|
|
48
49
|
div.setAttribute('class', 'imageView');
|
|
49
|
-
var img = myDocument.createElement('IMG');
|
|
50
|
-
|
|
50
|
+
var img = myDocument.createElement('IMG'); // get image with authenticated fetch
|
|
51
|
+
|
|
52
|
+
store.fetcher._fetch(subject.uri).then(function (response) {
|
|
53
|
+
return response.blob();
|
|
54
|
+
}).then(function (myBlob) {
|
|
55
|
+
var objectURL = URL.createObjectURL(myBlob);
|
|
56
|
+
img.setAttribute('src', objectURL); // w640 h480 //
|
|
57
|
+
});
|
|
51
58
|
|
|
52
59
|
img.setAttribute('style', 'max-width: 100%; max-height: 100%;'); // div.style['max-width'] = '640'
|
|
53
60
|
// div.style['max-height'] = '480'
|
package/lib/imagePane.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/imagePane.js"],"names":["UI","require","module","exports","icon","icons","originalIconBase","name","label","subject","context","
|
|
1
|
+
{"version":3,"sources":["../src/imagePane.js"],"names":["UI","require","module","exports","icon","icons","originalIconBase","name","label","subject","context","store","session","anyStatementMatching","ns","rdf","sym","contentTypeMatch","x","contentTypes","cts","fetcher","getHeader","j","length","k","indexOf","suppressed","render","myDocument","dom","div","createElement","setAttribute","img","_fetch","uri","then","response","blob","myBlob","objectURL","URL","createObjectURL","tr","appendChild"],"mappings":"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","sourcesContent":["/* Image Pane\n **\n ** This outline pane contains the document contents for an Image document\n */\nconst UI = require('solid-ui')\n\nmodule.exports = {\n icon: UI.icons.originalIconBase + 'tango/22-image-x-generic.png',\n\n name: 'image',\n\n label: function (subject, context) {\n const store = context.session.store\n if (\n !store.anyStatementMatching(\n subject,\n UI.ns.rdf('type'),\n store.sym('http://purl.org/dc/terms/Image')\n )\n ) {\n // NB: Not dc: namespace!\n return null\n }\n\n // See also the source pane, which has lower precedence.\n\n const contentTypeMatch = function (store, x, contentTypes) {\n const cts = store.fetcher.getHeader(x, 'content-type')\n if (cts) {\n for (let j = 0; j < cts.length; j++) {\n for (let k = 0; k < contentTypes.length; k++) {\n if (cts[j].indexOf(contentTypes[k]) >= 0) {\n return true\n }\n }\n }\n }\n return false\n }\n\n const suppressed = ['application/pdf']\n if (contentTypeMatch(store, subject, suppressed)) {\n return null\n }\n return 'view'\n },\n\n render: function (subject, context) {\n const myDocument = context.dom\n const store = context.session.store\n const div = myDocument.createElement('div')\n div.setAttribute('class', 'imageView')\n const img = myDocument.createElement('IMG')\n\n // get image with authenticated fetch\n store.fetcher._fetch(subject.uri)\n .then(function(response) {\n return response.blob()\n })\n .then(function(myBlob) {\n const objectURL = URL.createObjectURL(myBlob)\n img.setAttribute('src', objectURL) // w640 h480 //\n })\n\n img.setAttribute('style', 'max-width: 100%; max-height: 100%;')\n // div.style['max-width'] = '640'\n // div.style['max-height'] = '480'\n const tr = myDocument.createElement('TR') // why need tr?\n tr.appendChild(img)\n div.appendChild(tr)\n return div\n }\n}\n\n// ends\n"],"file":"imagePane.js"}
|
|
@@ -16,12 +16,12 @@ module.exports = {
|
|
|
16
16
|
audience: [ns.solid('PowerUser')],
|
|
17
17
|
// Does the subject deserve an slideshow pane?
|
|
18
18
|
label: function label(subject, context) {
|
|
19
|
-
var
|
|
19
|
+
var store = context.session.store;
|
|
20
20
|
var ns = UI.ns;
|
|
21
|
-
var t =
|
|
21
|
+
var t = store.findTypeURIs(subject);
|
|
22
22
|
|
|
23
23
|
if (t[ns.ldp('Container').uri] || t[ns.ldp('BasicContainer').uri]) {
|
|
24
|
-
var contents =
|
|
24
|
+
var contents = store.each(subject, ns.ldp('contains'));
|
|
25
25
|
var count = 0;
|
|
26
26
|
contents.forEach(function (file) {
|
|
27
27
|
if (UI.widgets.isImage(file)) count++;
|
|
@@ -37,29 +37,42 @@ module.exports = {
|
|
|
37
37
|
var dom = context.dom;
|
|
38
38
|
var styleSheet = 'https://leemark.github.io/better-simple-slideshow/css/simple-slideshow-styles.css';
|
|
39
39
|
UI.widgets.addStyleSheet(dom, styleSheet);
|
|
40
|
-
var
|
|
40
|
+
var store = context.session.store;
|
|
41
41
|
var ns = UI.ns;
|
|
42
42
|
var div = dom.createElement('div');
|
|
43
43
|
div.setAttribute('class', 'bss-slides');
|
|
44
|
-
var t =
|
|
44
|
+
var t = store.findTypeURIs(subject);
|
|
45
45
|
var predicate;
|
|
46
46
|
|
|
47
47
|
if (t[ns.ldp('BasicContainer').uri] || t[ns.ldp('Container').uri]) {
|
|
48
48
|
predicate = ns.ldp('contains');
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
-
var images =
|
|
51
|
+
var images = store.each(subject, predicate); // @@ random order?
|
|
52
52
|
// @@ Ideally: sort by embedded time of image
|
|
53
53
|
|
|
54
54
|
images.sort(); // Sort for now by URI
|
|
55
55
|
|
|
56
|
-
|
|
57
|
-
if (!UI.widgets.isImage(images[i])) continue;
|
|
56
|
+
var _loop = function _loop(i) {
|
|
57
|
+
if (!UI.widgets.isImage(images[i])) return "continue";
|
|
58
58
|
var figure = div.appendChild(dom.createElement('figure'));
|
|
59
|
-
var img = figure.appendChild(dom.createElement('img'));
|
|
60
|
-
|
|
59
|
+
var img = figure.appendChild(dom.createElement('img')); // get image with authenticated fetch
|
|
60
|
+
|
|
61
|
+
store.fetcher._fetch(images[i].uri).then(function (response) {
|
|
62
|
+
return response.blob();
|
|
63
|
+
}).then(function (myBlob) {
|
|
64
|
+
var objectURL = URL.createObjectURL(myBlob);
|
|
65
|
+
img.setAttribute('src', objectURL); // w640 h480 //
|
|
66
|
+
});
|
|
67
|
+
|
|
61
68
|
img.setAttribute('width', '100%');
|
|
62
69
|
figure.appendChild(dom.createElement('figcaption'));
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
for (var i = 0; i < images.length; i++) {
|
|
73
|
+
var _ret = _loop(i);
|
|
74
|
+
|
|
75
|
+
if (_ret === "continue") continue;
|
|
63
76
|
}
|
|
64
77
|
|
|
65
78
|
var options = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/slideshow/slideshowPane.js"],"names":["UI","require","ns","makeBSS","module","exports","icon","icons","iconBase","name","audience","solid","label","subject","context","
|
|
1
|
+
{"version":3,"sources":["../../src/slideshow/slideshowPane.js"],"names":["UI","require","ns","makeBSS","module","exports","icon","icons","iconBase","name","audience","solid","label","subject","context","store","session","t","findTypeURIs","ldp","uri","contents","each","count","forEach","file","widgets","isImage","render","dom","styleSheet","addStyleSheet","div","createElement","setAttribute","predicate","images","sort","i","figure","appendChild","img","fetcher","_fetch","then","response","blob","myBlob","objectURL","URL","createObjectURL","length","options","setTimeout"],"mappings":"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","sourcesContent":["/* slideshow Pane\n **\n */\nconst UI = require('solid-ui')\nconst ns = UI.ns\n\n// tabulator.loadScript(\"js/panes/slideshow/better-simple-slideshow/js/better-simple-slideshow.js\")\n\nconst makeBSS = require('@solid/better-simple-slideshow')\n// load also js/panes/slideshow/better-simple-slideshow/css/simple-slideshow-styles.css\n\nmodule.exports = {\n icon: UI.icons.iconBase + 'noun_138712.svg',\n\n name: 'slideshow',\n\n audience: [ns.solid('PowerUser')],\n\n // Does the subject deserve an slideshow pane?\n label: function (subject, context) {\n const store = context.session.store\n const ns = UI.ns\n const t = store.findTypeURIs(subject)\n if (t[ns.ldp('Container').uri] || t[ns.ldp('BasicContainer').uri]) {\n const contents = store.each(subject, ns.ldp('contains'))\n let count = 0\n contents.forEach(function (file) {\n if (UI.widgets.isImage(file)) count++\n })\n return count > 0 ? 'Slideshow' : null\n }\n return null\n },\n\n // See https://github.com/leemark/better-simple-slideshow\n // and follow instructions there\n render: function (subject, context) {\n const dom = context.dom\n const styleSheet =\n 'https://leemark.github.io/better-simple-slideshow/css/simple-slideshow-styles.css'\n UI.widgets.addStyleSheet(dom, styleSheet)\n\n const store = context.session.store\n const ns = UI.ns\n const div = dom.createElement('div')\n div.setAttribute('class', 'bss-slides')\n\n const t = store.findTypeURIs(subject)\n let predicate\n if (t[ns.ldp('BasicContainer').uri] || t[ns.ldp('Container').uri]) {\n predicate = ns.ldp('contains')\n }\n const images = store.each(subject, predicate) // @@ random order?\n // @@ Ideally: sort by embedded time of image\n images.sort() // Sort for now by URI\n for (let i = 0; i < images.length; i++) {\n if (!UI.widgets.isImage(images[i])) continue\n const figure = div.appendChild(dom.createElement('figure'))\n const img = figure.appendChild(dom.createElement('img'))\n\n // get image with authenticated fetch\n store.fetcher._fetch(images[i].uri)\n .then(function(response) {\n return response.blob()\n })\n .then(function(myBlob) {\n const objectURL = URL.createObjectURL(myBlob)\n img.setAttribute('src', objectURL) // w640 h480 //\n })\n img.setAttribute('width', '100%')\n figure.appendChild(dom.createElement('figcaption'))\n }\n const options = { dom: dom }\n\n setTimeout(function () {\n makeBSS('.bss-slides', options)\n }, 1000) // Must run after the code which called this\n\n return div\n }\n}\n\n// ends\n"],"file":"slideshowPane.js"}
|
package/lib/versionInfo.js
CHANGED
|
@@ -5,10 +5,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports["default"] = void 0;
|
|
7
7
|
var _default = {
|
|
8
|
-
buildTime: "2022-
|
|
9
|
-
commit: "
|
|
8
|
+
buildTime: "2022-04-12T09:19:13Z",
|
|
9
|
+
commit: "4529a705c0f4b8e1c1ae3638d5e1fe0e2748ef7e",
|
|
10
10
|
npmInfo: {
|
|
11
|
-
'solid-panes': '3.5.
|
|
11
|
+
'solid-panes': '3.5.23',
|
|
12
12
|
npm: '6.14.16',
|
|
13
13
|
ares: '1.18.1',
|
|
14
14
|
brotli: '1.0.9',
|
|
@@ -18,8 +18,8 @@ var _default = {
|
|
|
18
18
|
modules: '83',
|
|
19
19
|
napi: '8',
|
|
20
20
|
nghttp2: '1.42.0',
|
|
21
|
-
node: '14.19.
|
|
22
|
-
openssl: '1.1.
|
|
21
|
+
node: '14.19.1',
|
|
22
|
+
openssl: '1.1.1n',
|
|
23
23
|
tz: '2021a3',
|
|
24
24
|
unicode: '14.0',
|
|
25
25
|
uv: '1.42.0',
|
package/lib/versionInfo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/versionInfo.ts"],"names":["buildTime","commit","npmInfo","npm","ares","brotli","cldr","icu","llhttp","modules","napi","nghttp2","node","openssl","tz","unicode","uv","v8","zlib"],"mappings":";;;;;;eAAe;AACfA,EAAAA,SAAS,EAAE,sBADI;AAEfC,EAAAA,MAAM,EAAE,0CAFO;AAGfC,EAAAA,OAAO,EACP;AACE,mBAAe,QADjB;AAEEC,IAAAA,GAAG,EAAE,SAFP;AAGEC,IAAAA,IAAI,EAAE,QAHR;AAIEC,IAAAA,MAAM,EAAE,OAJV;AAKEC,IAAAA,IAAI,EAAE,MALR;AAMEC,IAAAA,GAAG,EAAE,MANP;AAOEC,IAAAA,MAAM,EAAE,OAPV;AAQEC,IAAAA,OAAO,EAAE,IARX;AASEC,IAAAA,IAAI,EAAE,GATR;AAUEC,IAAAA,OAAO,EAAE,QAVX;AAWEC,IAAAA,IAAI,EAAE,SAXR;AAYEC,IAAAA,OAAO,EAAE,QAZX;AAaEC,IAAAA,EAAE,EAAE,QAbN;AAcEC,IAAAA,OAAO,EAAE,MAdX;AAeEC,IAAAA,EAAE,EAAE,QAfN;AAgBEC,IAAAA,EAAE,EAAE,oBAhBN;AAiBEC,IAAAA,IAAI,EAAE;AAjBR;AAJe,C","sourcesContent":["export default {\nbuildTime: \"2022-
|
|
1
|
+
{"version":3,"sources":["../src/versionInfo.ts"],"names":["buildTime","commit","npmInfo","npm","ares","brotli","cldr","icu","llhttp","modules","napi","nghttp2","node","openssl","tz","unicode","uv","v8","zlib"],"mappings":";;;;;;eAAe;AACfA,EAAAA,SAAS,EAAE,sBADI;AAEfC,EAAAA,MAAM,EAAE,0CAFO;AAGfC,EAAAA,OAAO,EACP;AACE,mBAAe,QADjB;AAEEC,IAAAA,GAAG,EAAE,SAFP;AAGEC,IAAAA,IAAI,EAAE,QAHR;AAIEC,IAAAA,MAAM,EAAE,OAJV;AAKEC,IAAAA,IAAI,EAAE,MALR;AAMEC,IAAAA,GAAG,EAAE,MANP;AAOEC,IAAAA,MAAM,EAAE,OAPV;AAQEC,IAAAA,OAAO,EAAE,IARX;AASEC,IAAAA,IAAI,EAAE,GATR;AAUEC,IAAAA,OAAO,EAAE,QAVX;AAWEC,IAAAA,IAAI,EAAE,SAXR;AAYEC,IAAAA,OAAO,EAAE,QAZX;AAaEC,IAAAA,EAAE,EAAE,QAbN;AAcEC,IAAAA,OAAO,EAAE,MAdX;AAeEC,IAAAA,EAAE,EAAE,QAfN;AAgBEC,IAAAA,EAAE,EAAE,oBAhBN;AAiBEC,IAAAA,IAAI,EAAE;AAjBR;AAJe,C","sourcesContent":["export default {\nbuildTime: \"2022-04-12T09:19:13Z\",\ncommit: \"4529a705c0f4b8e1c1ae3638d5e1fe0e2748ef7e\",\nnpmInfo:\n{\n 'solid-panes': '3.5.23',\n npm: '6.14.16',\n ares: '1.18.1',\n brotli: '1.0.9',\n cldr: '40.0',\n icu: '70.1',\n llhttp: '2.1.4',\n modules: '83',\n napi: '8',\n nghttp2: '1.42.0',\n node: '14.19.1',\n openssl: '1.1.1n',\n tz: '2021a3',\n unicode: '14.0',\n uv: '1.42.0',\n v8: '8.4.371.23-node.85',\n zlib: '1.2.11'\n}\n};\n"],"file":"versionInfo.js"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "solid-panes",
|
|
3
|
-
"version": "3.5.
|
|
3
|
+
"version": "3.5.23-4529a705",
|
|
4
4
|
"description": "Solid-compatible Panes: applets and views for the mashlib and databrowser",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"activitystreams-pane": "^0.6.5",
|
|
49
49
|
"chat-pane": "^2.4.17",
|
|
50
50
|
"contacts-pane": "^2.6.2",
|
|
51
|
-
"folder-pane": "^2.4.
|
|
51
|
+
"folder-pane": "^2.4.16",
|
|
52
52
|
"issue-pane": "^2.4.11",
|
|
53
53
|
"marked": "^4.0.12",
|
|
54
54
|
"meeting-pane": "^2.3.10",
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
"rdflib": "^2.2.19",
|
|
59
59
|
"solid-logic": "^1.3.16",
|
|
60
60
|
"solid-namespace": "^0.5.2",
|
|
61
|
-
"solid-ui": "^2.4.
|
|
61
|
+
"solid-ui": "^2.4.21",
|
|
62
62
|
"source-pane": "^2.2.16"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
package/src/imagePane.js
CHANGED
|
@@ -10,12 +10,12 @@ module.exports = {
|
|
|
10
10
|
name: 'image',
|
|
11
11
|
|
|
12
12
|
label: function (subject, context) {
|
|
13
|
-
const
|
|
13
|
+
const store = context.session.store
|
|
14
14
|
if (
|
|
15
|
-
!
|
|
15
|
+
!store.anyStatementMatching(
|
|
16
16
|
subject,
|
|
17
17
|
UI.ns.rdf('type'),
|
|
18
|
-
|
|
18
|
+
store.sym('http://purl.org/dc/terms/Image')
|
|
19
19
|
)
|
|
20
20
|
) {
|
|
21
21
|
// NB: Not dc: namespace!
|
|
@@ -24,8 +24,8 @@ module.exports = {
|
|
|
24
24
|
|
|
25
25
|
// See also the source pane, which has lower precedence.
|
|
26
26
|
|
|
27
|
-
const contentTypeMatch = function (
|
|
28
|
-
const cts =
|
|
27
|
+
const contentTypeMatch = function (store, x, contentTypes) {
|
|
28
|
+
const cts = store.fetcher.getHeader(x, 'content-type')
|
|
29
29
|
if (cts) {
|
|
30
30
|
for (let j = 0; j < cts.length; j++) {
|
|
31
31
|
for (let k = 0; k < contentTypes.length; k++) {
|
|
@@ -39,7 +39,7 @@ module.exports = {
|
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
const suppressed = ['application/pdf']
|
|
42
|
-
if (contentTypeMatch(
|
|
42
|
+
if (contentTypeMatch(store, subject, suppressed)) {
|
|
43
43
|
return null
|
|
44
44
|
}
|
|
45
45
|
return 'view'
|
|
@@ -47,10 +47,21 @@ module.exports = {
|
|
|
47
47
|
|
|
48
48
|
render: function (subject, context) {
|
|
49
49
|
const myDocument = context.dom
|
|
50
|
+
const store = context.session.store
|
|
50
51
|
const div = myDocument.createElement('div')
|
|
51
52
|
div.setAttribute('class', 'imageView')
|
|
52
53
|
const img = myDocument.createElement('IMG')
|
|
53
|
-
|
|
54
|
+
|
|
55
|
+
// get image with authenticated fetch
|
|
56
|
+
store.fetcher._fetch(subject.uri)
|
|
57
|
+
.then(function(response) {
|
|
58
|
+
return response.blob()
|
|
59
|
+
})
|
|
60
|
+
.then(function(myBlob) {
|
|
61
|
+
const objectURL = URL.createObjectURL(myBlob)
|
|
62
|
+
img.setAttribute('src', objectURL) // w640 h480 //
|
|
63
|
+
})
|
|
64
|
+
|
|
54
65
|
img.setAttribute('style', 'max-width: 100%; max-height: 100%;')
|
|
55
66
|
// div.style['max-width'] = '640'
|
|
56
67
|
// div.style['max-height'] = '480'
|
|
@@ -18,11 +18,11 @@ module.exports = {
|
|
|
18
18
|
|
|
19
19
|
// Does the subject deserve an slideshow pane?
|
|
20
20
|
label: function (subject, context) {
|
|
21
|
-
const
|
|
21
|
+
const store = context.session.store
|
|
22
22
|
const ns = UI.ns
|
|
23
|
-
const t =
|
|
23
|
+
const t = store.findTypeURIs(subject)
|
|
24
24
|
if (t[ns.ldp('Container').uri] || t[ns.ldp('BasicContainer').uri]) {
|
|
25
|
-
const contents =
|
|
25
|
+
const contents = store.each(subject, ns.ldp('contains'))
|
|
26
26
|
let count = 0
|
|
27
27
|
contents.forEach(function (file) {
|
|
28
28
|
if (UI.widgets.isImage(file)) count++
|
|
@@ -40,24 +40,33 @@ module.exports = {
|
|
|
40
40
|
'https://leemark.github.io/better-simple-slideshow/css/simple-slideshow-styles.css'
|
|
41
41
|
UI.widgets.addStyleSheet(dom, styleSheet)
|
|
42
42
|
|
|
43
|
-
const
|
|
43
|
+
const store = context.session.store
|
|
44
44
|
const ns = UI.ns
|
|
45
45
|
const div = dom.createElement('div')
|
|
46
46
|
div.setAttribute('class', 'bss-slides')
|
|
47
47
|
|
|
48
|
-
const t =
|
|
48
|
+
const t = store.findTypeURIs(subject)
|
|
49
49
|
let predicate
|
|
50
50
|
if (t[ns.ldp('BasicContainer').uri] || t[ns.ldp('Container').uri]) {
|
|
51
51
|
predicate = ns.ldp('contains')
|
|
52
52
|
}
|
|
53
|
-
const images =
|
|
53
|
+
const images = store.each(subject, predicate) // @@ random order?
|
|
54
54
|
// @@ Ideally: sort by embedded time of image
|
|
55
55
|
images.sort() // Sort for now by URI
|
|
56
56
|
for (let i = 0; i < images.length; i++) {
|
|
57
57
|
if (!UI.widgets.isImage(images[i])) continue
|
|
58
58
|
const figure = div.appendChild(dom.createElement('figure'))
|
|
59
59
|
const img = figure.appendChild(dom.createElement('img'))
|
|
60
|
-
|
|
60
|
+
|
|
61
|
+
// get image with authenticated fetch
|
|
62
|
+
store.fetcher._fetch(images[i].uri)
|
|
63
|
+
.then(function(response) {
|
|
64
|
+
return response.blob()
|
|
65
|
+
})
|
|
66
|
+
.then(function(myBlob) {
|
|
67
|
+
const objectURL = URL.createObjectURL(myBlob)
|
|
68
|
+
img.setAttribute('src', objectURL) // w640 h480 //
|
|
69
|
+
})
|
|
61
70
|
img.setAttribute('width', '100%')
|
|
62
71
|
figure.appendChild(dom.createElement('figcaption'))
|
|
63
72
|
}
|
package/src/versionInfo.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export default {
|
|
2
|
-
buildTime: "2022-
|
|
3
|
-
commit: "
|
|
2
|
+
buildTime: "2022-04-12T09:19:13Z",
|
|
3
|
+
commit: "4529a705c0f4b8e1c1ae3638d5e1fe0e2748ef7e",
|
|
4
4
|
npmInfo:
|
|
5
5
|
{
|
|
6
|
-
'solid-panes': '3.5.
|
|
6
|
+
'solid-panes': '3.5.23',
|
|
7
7
|
npm: '6.14.16',
|
|
8
8
|
ares: '1.18.1',
|
|
9
9
|
brotli: '1.0.9',
|
|
@@ -13,8 +13,8 @@ npmInfo:
|
|
|
13
13
|
modules: '83',
|
|
14
14
|
napi: '8',
|
|
15
15
|
nghttp2: '1.42.0',
|
|
16
|
-
node: '14.19.
|
|
17
|
-
openssl: '1.1.
|
|
16
|
+
node: '14.19.1',
|
|
17
|
+
openssl: '1.1.1n',
|
|
18
18
|
tz: '2021a3',
|
|
19
19
|
unicode: '14.0',
|
|
20
20
|
uv: '1.42.0',
|