@dso-toolkit/core 34.1.0 → 35.0.0
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/cjs/dso-autosuggest.cjs.entry.js +5 -1
- package/dist/cjs/dso-header.cjs.entry.js +1 -1
- package/dist/cjs/dso-image-overlay.cjs.entry.js +62 -0
- package/dist/cjs/dso-info_2.cjs.entry.js +4 -1
- package/dist/cjs/dso-map-base-layers.cjs.entry.js +14 -1
- package/dist/cjs/dso-map-overlays.cjs.entry.js +14 -1
- package/dist/cjs/dso-ozon-content.cjs.entry.js +281 -423
- package/dist/cjs/dso-toolkit.cjs.js +1 -1
- package/dist/cjs/dso-viewer-grid.cjs.entry.js +57 -726
- package/dist/cjs/focus-trap.esm-8d3e3fb6.js +712 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +3 -2
- package/dist/collection/components/autosuggest/autosuggest.js +6 -2
- package/dist/collection/components/header/header.css +21 -13
- package/dist/collection/components/highlight-box/highlight-box.template.js +4 -1
- package/dist/collection/components/image-overlay/image-overlay.css +263 -0
- package/dist/collection/components/image-overlay/image-overlay.js +72 -0
- package/dist/collection/components/image-overlay/image-overlay.template.js +7 -0
- package/dist/collection/components/info/info.css +20 -0
- package/dist/collection/components/map-base-layers/map-base-layers.js +16 -1
- package/dist/collection/components/map-overlays/map-overlays.js +16 -1
- package/dist/collection/components/ozon-content/nodes/al.node.js +13 -0
- package/dist/collection/components/ozon-content/nodes/document.node.js +9 -0
- package/dist/collection/components/ozon-content/nodes/ext-ref.node.js +15 -0
- package/dist/collection/components/ozon-content/nodes/fallback.node.js +10 -0
- package/dist/collection/components/ozon-content/nodes/illustratie.node.js +13 -0
- package/dist/collection/components/ozon-content/nodes/inhoud.node.js +14 -0
- package/dist/collection/components/ozon-content/nodes/inline.nodes.js +21 -0
- package/dist/collection/components/ozon-content/nodes/int-ref.node.js +26 -0
- package/dist/collection/components/ozon-content/nodes/noot.node.js +27 -0
- package/dist/collection/components/ozon-content/nodes/table.node/colspec/colspec-mapper.js +39 -0
- package/dist/collection/components/ozon-content/nodes/table.node/colspec/colspec.interface.js +2 -0
- package/dist/collection/components/ozon-content/nodes/table.node/index.js +1 -0
- package/dist/collection/components/ozon-content/nodes/table.node/table-cell.js +25 -0
- package/dist/collection/components/ozon-content/nodes/table.node/table-colgroup.js +4 -0
- package/dist/collection/components/ozon-content/nodes/table.node/table-rows.js +5 -0
- package/dist/collection/components/ozon-content/nodes/table.node/table.node.js +32 -0
- package/dist/collection/components/ozon-content/nodes/text.node.js +9 -0
- package/dist/collection/components/ozon-content/ozon-content-context.interface.js +1 -0
- package/dist/collection/components/ozon-content/ozon-content-mapper.js +76 -0
- package/dist/collection/components/ozon-content/ozon-content-node-context.interface.js +1 -0
- package/dist/collection/components/ozon-content/ozon-content-node-state.interface.js +1 -0
- package/dist/collection/components/ozon-content/ozon-content-node.interface.js +1 -0
- package/dist/collection/components/ozon-content/ozon-content.css +15 -7
- package/dist/collection/components/ozon-content/ozon-content.js +21 -33
- package/dist/collection/components/selectable/selectable.js +25 -1
- package/dist/collection/components/viewer-grid/viewer-grid-filterpanel-buttons.js +7 -0
- package/dist/collection/components/viewer-grid/viewer-grid.css +351 -3
- package/dist/collection/components/viewer-grid/viewer-grid.js +109 -19
- package/dist/collection/components/viewer-grid/viewer-grid.template.js +7 -3
- package/dist/custom-elements/index.d.ts +6 -0
- package/dist/custom-elements/index.js +3088 -3103
- package/dist/dso-toolkit/dso-toolkit.css +1 -1
- package/dist/dso-toolkit/dso-toolkit.esm.js +1 -1
- package/dist/dso-toolkit/p-225bbb28.entry.js +1 -0
- package/dist/dso-toolkit/p-3c4dbd89.entry.js +1 -0
- package/dist/dso-toolkit/p-44905fb1.js +5 -0
- package/dist/dso-toolkit/p-50b63cf4.entry.js +1 -0
- package/dist/dso-toolkit/p-8b6e3abc.entry.js +1 -0
- package/dist/dso-toolkit/p-ad540748.entry.js +1 -0
- package/dist/dso-toolkit/p-c6f467b3.entry.js +1 -0
- package/dist/dso-toolkit/p-f193c258.entry.js +1 -0
- package/dist/esm/dso-autosuggest.entry.js +5 -1
- package/dist/esm/dso-header.entry.js +1 -1
- package/dist/esm/dso-image-overlay.entry.js +58 -0
- package/dist/esm/dso-info_2.entry.js +4 -1
- package/dist/esm/dso-map-base-layers.entry.js +14 -1
- package/dist/esm/dso-map-overlays.entry.js +14 -1
- package/dist/esm/dso-ozon-content.entry.js +282 -424
- package/dist/esm/dso-toolkit.js +1 -1
- package/dist/esm/dso-viewer-grid.entry.js +58 -727
- package/dist/esm/focus-trap.esm-299989f2.js +710 -0
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/autosuggest/autosuggest.d.ts +15 -1
- package/dist/types/components/image-overlay/image-overlay.d.ts +15 -0
- package/dist/types/components/image-overlay/image-overlay.template.d.ts +2 -0
- package/dist/types/components/map-base-layers/map-base-layers.d.ts +7 -2
- package/dist/types/components/map-overlays/map-overlays.d.ts +7 -2
- package/dist/types/components/ozon-content/nodes/al.node.d.ts +6 -0
- package/dist/types/components/ozon-content/nodes/document.node.d.ts +6 -0
- package/dist/types/components/ozon-content/nodes/ext-ref.node.d.ts +6 -0
- package/dist/types/components/ozon-content/nodes/fallback.node.d.ts +6 -0
- package/dist/types/components/ozon-content/nodes/illustratie.node.d.ts +5 -0
- package/dist/types/components/ozon-content/nodes/inhoud.node.d.ts +6 -0
- package/dist/types/components/ozon-content/nodes/inline.nodes.d.ts +6 -0
- package/dist/types/components/ozon-content/nodes/int-ref.node.d.ts +6 -0
- package/dist/types/components/ozon-content/nodes/noot.node.d.ts +8 -0
- package/dist/types/components/ozon-content/nodes/table.node/colspec/colspec-mapper.d.ts +2 -0
- package/dist/types/components/ozon-content/nodes/table.node/colspec/colspec.interface.d.ts +10 -0
- package/dist/types/components/ozon-content/nodes/table.node/index.d.ts +1 -0
- package/dist/types/components/ozon-content/nodes/table.node/table-cell.d.ts +8 -0
- package/dist/types/components/ozon-content/nodes/table.node/table-colgroup.d.ts +5 -0
- package/dist/types/components/ozon-content/nodes/table.node/table-rows.d.ts +8 -0
- package/dist/types/components/ozon-content/nodes/table.node/table.node.d.ts +7 -0
- package/dist/types/components/ozon-content/nodes/text.node.d.ts +5 -0
- package/dist/types/components/ozon-content/ozon-content-context.interface.d.ts +8 -0
- package/dist/types/components/ozon-content/ozon-content-mapper.d.ts +12 -0
- package/dist/types/components/ozon-content/ozon-content-node-context.interface.d.ts +8 -0
- package/dist/types/components/ozon-content/ozon-content-node-state.interface.d.ts +3 -0
- package/dist/types/components/ozon-content/ozon-content-node.interface.d.ts +8 -0
- package/dist/types/components/ozon-content/ozon-content.d.ts +8 -10
- package/dist/types/components/ozon-content/ozon-content.interfaces.d.ts +2 -2
- package/dist/types/components/selectable/selectable.d.ts +1 -0
- package/dist/types/components/viewer-grid/viewer-grid-filterpanel-buttons.d.ts +6 -0
- package/dist/types/components/viewer-grid/viewer-grid.d.ts +14 -3
- package/dist/types/components/viewer-grid/viewer-grid.template.d.ts +1 -1
- package/dist/types/components.d.ts +25 -6
- package/package.json +2 -2
- package/dist/collection/components/ozon-content/ozon-content.transformer.js +0 -105
- package/dist/dso-toolkit/p-06de0fa1.entry.js +0 -1
- package/dist/dso-toolkit/p-17f073d1.entry.js +0 -1
- package/dist/dso-toolkit/p-20856f91.entry.js +0 -1
- package/dist/dso-toolkit/p-7b006b11.entry.js +0 -1
- package/dist/dso-toolkit/p-aadc4f8e.entry.js +0 -1
- package/dist/dso-toolkit/p-b69134ed.entry.js +0 -5
- package/dist/types/components/ozon-content/ozon-content.transformer.d.ts +0 -15
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { h } from '@stencil/core';
|
|
2
|
+
export class OzonContentInhoudNode {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.name = [
|
|
5
|
+
'Inhoud',
|
|
6
|
+
'Opschrift',
|
|
7
|
+
'ContainerBlocksType',
|
|
8
|
+
'BlockMixedcontentMetMaximaleInlinesMarkersPopupsType'
|
|
9
|
+
];
|
|
10
|
+
}
|
|
11
|
+
render(node, { mapNodeToJsx }) {
|
|
12
|
+
return h("div", { class: "dso-rich-content" }, mapNodeToJsx(node.childNodes));
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { h } from '@stencil/core';
|
|
2
|
+
export class OzonContentInlineNodes {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.name = [
|
|
5
|
+
'sub',
|
|
6
|
+
'sup',
|
|
7
|
+
'strong',
|
|
8
|
+
'b',
|
|
9
|
+
'u',
|
|
10
|
+
'i',
|
|
11
|
+
'br'
|
|
12
|
+
];
|
|
13
|
+
}
|
|
14
|
+
render(node, { mapNodeToJsx }) {
|
|
15
|
+
if (node.localName === 'br') {
|
|
16
|
+
return h("br", null);
|
|
17
|
+
}
|
|
18
|
+
const Tag = node.localName;
|
|
19
|
+
return h(Tag, null, mapNodeToJsx(node.childNodes));
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { h } from '@stencil/core';
|
|
2
|
+
export class OzonContentIntRefNode {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.name = 'IntRef';
|
|
5
|
+
}
|
|
6
|
+
render(node, { mapNodeToJsx, emitAnchorClick }) {
|
|
7
|
+
const ref = node.getAttribute('ref');
|
|
8
|
+
if (!ref) {
|
|
9
|
+
return mapNodeToJsx(node.childNodes);
|
|
10
|
+
}
|
|
11
|
+
const intRefOnClick = (event) => {
|
|
12
|
+
event.preventDefault();
|
|
13
|
+
const target = event.currentTarget;
|
|
14
|
+
if (!(target instanceof HTMLAnchorElement)) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const { href } = target;
|
|
18
|
+
emitAnchorClick({
|
|
19
|
+
href,
|
|
20
|
+
documentComponent: ref,
|
|
21
|
+
originalEvent: event
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
return (h("a", { href: `#${ref}`, onClick: intRefOnClick }, mapNodeToJsx(node.childNodes)));
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { h, Fragment } from '@stencil/core';
|
|
2
|
+
export class OzonContentNootNode {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.name = 'Noot';
|
|
5
|
+
this.handles = ['NootNummer'];
|
|
6
|
+
}
|
|
7
|
+
identify(node) {
|
|
8
|
+
var _a;
|
|
9
|
+
return (_a = node.getAttribute("id")) !== null && _a !== void 0 ? _a : undefined;
|
|
10
|
+
}
|
|
11
|
+
render(node, { mapNodeToJsx, state: noteIsOpen, setState }) {
|
|
12
|
+
var _a, _b;
|
|
13
|
+
const noteId = (_a = node.getAttribute('id')) !== null && _a !== void 0 ? _a : undefined;
|
|
14
|
+
const noteControlsId = noteId && `dso-ozon-note-${noteId}`;
|
|
15
|
+
const noteHref = noteId && `#${noteControlsId}`;
|
|
16
|
+
const childNodes = Array.from(node.childNodes);
|
|
17
|
+
const nootNummer = (_b = childNodes.find(n => n.nodeName === 'NootNummer')) === null || _b === void 0 ? void 0 : _b.textContent;
|
|
18
|
+
const onClickNote = (event) => {
|
|
19
|
+
event.preventDefault();
|
|
20
|
+
setState === null || setState === void 0 ? void 0 : setState(!noteIsOpen);
|
|
21
|
+
};
|
|
22
|
+
return (h(Fragment, null,
|
|
23
|
+
h("a", { class: { noot: true, "dso-open": !!noteIsOpen }, href: noteHref, "aria-controls": noteControlsId, "aria-expanded": noteIsOpen ? "true" : "false", onClick: onClickNote },
|
|
24
|
+
h("sup", null, nootNummer)),
|
|
25
|
+
h("span", { id: noteControlsId, role: "section" }, mapNodeToJsx(Array.from(node.querySelectorAll(':scope > Al'))))));
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export function mapColspecs(count, nodeList) {
|
|
2
|
+
const elements = Array.from(nodeList);
|
|
3
|
+
const totalWidth = getTotalWidth(elements);
|
|
4
|
+
return {
|
|
5
|
+
totalWidth,
|
|
6
|
+
count,
|
|
7
|
+
columns: elements.map((element, index) => {
|
|
8
|
+
var _a;
|
|
9
|
+
const colNumber = element.getAttribute('colnum');
|
|
10
|
+
return {
|
|
11
|
+
name: (_a = element.getAttribute('colname')) !== null && _a !== void 0 ? _a : '',
|
|
12
|
+
number: colNumber ? parseInt(colNumber, 10) : index + 1,
|
|
13
|
+
width: getWidth(totalWidth, element)
|
|
14
|
+
};
|
|
15
|
+
})
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
function getTotalWidth(elements) {
|
|
19
|
+
return elements.reduce((totalWidth, element) => {
|
|
20
|
+
var _a, _b;
|
|
21
|
+
const width = (_b = (_a = element.getAttribute('colwidth')) === null || _a === void 0 ? void 0 : _a.replace(/[^0-9]/, '')) !== null && _b !== void 0 ? _b : '';
|
|
22
|
+
const colWidth = parseInt(width, 10);
|
|
23
|
+
return totalWidth + (isNaN(colWidth) ? 0 : colWidth);
|
|
24
|
+
}, 0);
|
|
25
|
+
}
|
|
26
|
+
function getWidth(totalWidth, element) {
|
|
27
|
+
const width = element.getAttribute('colwidth');
|
|
28
|
+
if (!width) {
|
|
29
|
+
return undefined;
|
|
30
|
+
}
|
|
31
|
+
if (width === '*') {
|
|
32
|
+
return '100%';
|
|
33
|
+
}
|
|
34
|
+
if (width.includes('*') || width.match(/^[\d+]$/)) {
|
|
35
|
+
const colWidth = parseInt(width.replace(/[^0-9]/, ''), 10);
|
|
36
|
+
return `${Math.round(colWidth / totalWidth * 100)}%`;
|
|
37
|
+
}
|
|
38
|
+
return width;
|
|
39
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { OzonContentTableNode } from './table.node';
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { h } from '@stencil/core/internal';
|
|
2
|
+
function getData(cell) {
|
|
3
|
+
return {
|
|
4
|
+
moreRows: cell.getAttribute('morerows'),
|
|
5
|
+
nameStart: cell.getAttribute('namest'),
|
|
6
|
+
nameEnd: cell.getAttribute('nameend')
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
function getColspan({ columns }, nameStart, nameEnd) {
|
|
10
|
+
const colspecStart = columns.find(c => c.name === nameStart);
|
|
11
|
+
const colspecEnd = columns.find(c => c.name === nameEnd);
|
|
12
|
+
if (!colspecStart || !colspecEnd) {
|
|
13
|
+
return undefined;
|
|
14
|
+
}
|
|
15
|
+
const colspan = colspecEnd.number - colspecStart.number + 1;
|
|
16
|
+
return colspan === 1 ? undefined : colspan;
|
|
17
|
+
}
|
|
18
|
+
export const Cell = ({ context: { mapNodeToJsx }, colspecs, cell }) => {
|
|
19
|
+
const { moreRows, nameStart, nameEnd } = getData(cell);
|
|
20
|
+
const td = {
|
|
21
|
+
rowSpan: moreRows ? parseInt(moreRows, 10) + 1 : undefined,
|
|
22
|
+
colSpan: colspecs && nameStart && nameEnd ? getColspan(colspecs, nameStart, nameEnd) : undefined
|
|
23
|
+
};
|
|
24
|
+
return (h("td", Object.assign({}, td), mapNodeToJsx(cell.childNodes)));
|
|
25
|
+
};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Fragment, h } from '@stencil/core';
|
|
2
|
+
import { Cell } from './table-cell';
|
|
3
|
+
export const Rows = ({ context, colspecs, rows }) => {
|
|
4
|
+
return (h(Fragment, null, rows.map(row => (h("tr", null, Array.from(row.children).map(cell => (h(Cell, { cell: cell, colspecs: colspecs, context: context }))))))));
|
|
5
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { h } from '@stencil/core';
|
|
2
|
+
import { mapColspecs } from './colspec/colspec-mapper';
|
|
3
|
+
import { Colgroup } from './table-colgroup';
|
|
4
|
+
import { Rows } from './table-rows';
|
|
5
|
+
function mapData(node) {
|
|
6
|
+
var _a, _b, _c;
|
|
7
|
+
const tgroup = node.querySelector(':scope > tgroup');
|
|
8
|
+
const colAttribute = (_a = tgroup === null || tgroup === void 0 ? void 0 : tgroup.getAttribute('cols')) !== null && _a !== void 0 ? _a : undefined;
|
|
9
|
+
const columnCount = colAttribute ? parseInt(colAttribute, 10) : undefined;
|
|
10
|
+
return {
|
|
11
|
+
caption: (_c = (_b = node.querySelector(':scope > title')) === null || _b === void 0 ? void 0 : _b.textContent) !== null && _c !== void 0 ? _c : undefined,
|
|
12
|
+
colspecs: tgroup && columnCount ? mapColspecs(columnCount, tgroup.querySelectorAll(':scope > colspec')) : undefined,
|
|
13
|
+
headRows: Array.from(node.querySelectorAll(':scope > tgroup > thead > row')),
|
|
14
|
+
bodyRows: Array.from(node.querySelectorAll(':scope > tgroup > tbody > row'))
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
export class OzonContentTableNode {
|
|
18
|
+
constructor() {
|
|
19
|
+
this.name = 'table';
|
|
20
|
+
this.handles = ['title', 'tgroup', 'colspec', 'thead', 'tbody', 'row', 'cell'];
|
|
21
|
+
}
|
|
22
|
+
render(node, context) {
|
|
23
|
+
const { caption, colspecs, headRows, bodyRows } = mapData(node);
|
|
24
|
+
return (h("table", { class: "table" },
|
|
25
|
+
caption && (h("caption", null, caption)),
|
|
26
|
+
colspecs && (h(Colgroup, { colspecs: colspecs })),
|
|
27
|
+
headRows.length > 0 && (h("thead", null,
|
|
28
|
+
h(Rows, { rows: headRows, colspecs: colspecs, context: context }))),
|
|
29
|
+
bodyRows.length > 0 && (h("tbody", null,
|
|
30
|
+
h(Rows, { rows: bodyRows, colspecs: colspecs, context: context })))));
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { Fragment, h } from '@stencil/core';
|
|
2
|
+
import { OzonContentAlNode } from './nodes/al.node';
|
|
3
|
+
import { OzonContentDocumentNode } from './nodes/document.node';
|
|
4
|
+
import { OzonContentExtRefNode } from './nodes/ext-ref.node';
|
|
5
|
+
import { OzonContentIllustratieNode } from './nodes/illustratie.node';
|
|
6
|
+
import { OzonContentInhoudNode } from './nodes/inhoud.node';
|
|
7
|
+
import { OzonContentInlineNodes } from './nodes/inline.nodes';
|
|
8
|
+
import { OzonContentIntRefNode } from './nodes/int-ref.node';
|
|
9
|
+
import { OzonContentNootNode } from './nodes/noot.node';
|
|
10
|
+
import { OzonContentTableNode } from './nodes/table.node';
|
|
11
|
+
import { OzonContentTextNode } from './nodes/text.node';
|
|
12
|
+
import { OzonContentFallbackNode } from './nodes/fallback.node';
|
|
13
|
+
export class Mapper {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.mappers = [
|
|
16
|
+
new OzonContentTextNode(),
|
|
17
|
+
new OzonContentDocumentNode(),
|
|
18
|
+
new OzonContentInhoudNode(),
|
|
19
|
+
new OzonContentIntRefNode(),
|
|
20
|
+
new OzonContentExtRefNode(),
|
|
21
|
+
new OzonContentAlNode(),
|
|
22
|
+
new OzonContentInlineNodes(),
|
|
23
|
+
new OzonContentIllustratieNode(),
|
|
24
|
+
new OzonContentNootNode(),
|
|
25
|
+
new OzonContentTableNode()
|
|
26
|
+
];
|
|
27
|
+
this.skip = this.mappers.reduce((t, m) => {
|
|
28
|
+
if (m.handles) {
|
|
29
|
+
t.push(...m.handles);
|
|
30
|
+
}
|
|
31
|
+
return t;
|
|
32
|
+
}, []);
|
|
33
|
+
this.fallbackNode = new OzonContentFallbackNode();
|
|
34
|
+
this.domParser = new DOMParser();
|
|
35
|
+
}
|
|
36
|
+
findMapper(name) {
|
|
37
|
+
var _a;
|
|
38
|
+
if (this.skip.includes(name)) {
|
|
39
|
+
return undefined;
|
|
40
|
+
}
|
|
41
|
+
return (_a = this.mappers.find(m => {
|
|
42
|
+
if (Array.isArray(m.name)) {
|
|
43
|
+
return m.name.includes(name);
|
|
44
|
+
}
|
|
45
|
+
return m.name === name;
|
|
46
|
+
})) !== null && _a !== void 0 ? _a : this.fallbackNode;
|
|
47
|
+
}
|
|
48
|
+
mapNodeToJsx(node, context, path) {
|
|
49
|
+
var _a, _b;
|
|
50
|
+
if (node instanceof NodeList) {
|
|
51
|
+
return h(Fragment, null, Array.from(node).map(n => this.mapNodeToJsx(n, context, path)));
|
|
52
|
+
}
|
|
53
|
+
if (Array.isArray(node)) {
|
|
54
|
+
return h(Fragment, null, node.map(n => this.mapNodeToJsx(n, context, path)));
|
|
55
|
+
}
|
|
56
|
+
const nodeName = node instanceof Element ? node.localName : node.nodeName;
|
|
57
|
+
const mapper = this.findMapper(nodeName);
|
|
58
|
+
const identity = (_a = mapper === null || mapper === void 0 ? void 0 : mapper.identify) === null || _a === void 0 ? void 0 : _a.call(mapper, node);
|
|
59
|
+
const state = identity ? context.state[identity] : undefined;
|
|
60
|
+
const setState = identity ? (state) => context.setState(Object.assign(Object.assign({}, context.state), { [identity]: state })) : undefined;
|
|
61
|
+
return (_b = mapper === null || mapper === void 0 ? void 0 : mapper.render(node, {
|
|
62
|
+
mapNodeToJsx: n => this.mapNodeToJsx(n, context, [...path, node]),
|
|
63
|
+
emitAnchorClick: context.emitAnchorClick,
|
|
64
|
+
setState,
|
|
65
|
+
state,
|
|
66
|
+
path
|
|
67
|
+
})) !== null && _b !== void 0 ? _b : h(Fragment, null);
|
|
68
|
+
}
|
|
69
|
+
transform(xml, context) {
|
|
70
|
+
if (!this.cache || this.cache.xml !== xml) {
|
|
71
|
+
this.cache = { xml, document: this.domParser.parseFromString(xml, 'text/xml') };
|
|
72
|
+
}
|
|
73
|
+
const xmlDocument = this.cache.document;
|
|
74
|
+
return this.mapNodeToJsx(xmlDocument.getRootNode(), context, []);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
|
|
1
|
+
:host {
|
|
2
2
|
display: block;
|
|
3
3
|
}
|
|
4
4
|
|
|
5
5
|
.noot {
|
|
6
6
|
text-decoration: none;
|
|
7
7
|
}
|
|
8
|
-
.noot:not(.dso-open) +
|
|
8
|
+
.noot:not(.dso-open) + * {
|
|
9
9
|
display: none;
|
|
10
10
|
}
|
|
11
|
-
.noot.dso-open +
|
|
11
|
+
.noot.dso-open + * {
|
|
12
12
|
display: block;
|
|
13
13
|
}
|
|
14
|
-
.noot +
|
|
14
|
+
.noot + * {
|
|
15
15
|
margin: 4px 0;
|
|
16
16
|
padding: 8px 32px 8px 8px;
|
|
17
17
|
position: relative;
|
|
18
18
|
}
|
|
19
|
-
.noot +
|
|
19
|
+
.noot + * > a {
|
|
20
20
|
display: block;
|
|
21
21
|
height: 24px;
|
|
22
22
|
position: absolute;
|
|
@@ -25,7 +25,7 @@ dso-ozon-content {
|
|
|
25
25
|
top: 0;
|
|
26
26
|
width: 24px;
|
|
27
27
|
}
|
|
28
|
-
.noot +
|
|
28
|
+
.noot + * > a::before {
|
|
29
29
|
background: var(--dso-icon, var(--di-times-zwart)) no-repeat;
|
|
30
30
|
background-position: center;
|
|
31
31
|
background-size: cover;
|
|
@@ -35,10 +35,18 @@ dso-ozon-content {
|
|
|
35
35
|
content: "";
|
|
36
36
|
display: block;
|
|
37
37
|
}
|
|
38
|
-
.noot +
|
|
38
|
+
.noot + * {
|
|
39
39
|
background-color: #ebf3e6;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
+
span[role=paragraph] {
|
|
43
|
+
display: block;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.fallback {
|
|
47
|
+
display: block;
|
|
48
|
+
}
|
|
49
|
+
|
|
42
50
|
.od-Term {
|
|
43
51
|
font-weight: 700;
|
|
44
52
|
}
|
|
@@ -1,29 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { Component, Event, Prop, State, } from '@stencil/core';
|
|
2
|
+
import { Mapper } from './ozon-content-mapper';
|
|
3
3
|
export class OzonContent {
|
|
4
|
-
|
|
5
|
-
this.
|
|
6
|
-
|
|
7
|
-
componentWillLoad() {
|
|
8
|
-
this.transformer = new OzonContentTransformer(this.anchorClick);
|
|
9
|
-
}
|
|
10
|
-
componentWillRender() {
|
|
11
|
-
this.transformer.setContent(this.content);
|
|
4
|
+
constructor() {
|
|
5
|
+
this.state = {};
|
|
6
|
+
this.mapper = new Mapper();
|
|
12
7
|
}
|
|
13
8
|
render() {
|
|
14
|
-
return h("div", { class: "dso-rich-content", ref: el => this.container = el });
|
|
15
|
-
}
|
|
16
|
-
componentDidRender() {
|
|
17
9
|
var _a;
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
this.
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
10
|
+
const context = {
|
|
11
|
+
state: this.state,
|
|
12
|
+
setState: state => this.state = state,
|
|
13
|
+
emitAnchorClick: this.anchorClick.emit
|
|
14
|
+
};
|
|
15
|
+
return this.mapper.transform((_a = this.content) !== null && _a !== void 0 ? _a : '', context);
|
|
25
16
|
}
|
|
26
17
|
static get is() { return "dso-ozon-content"; }
|
|
18
|
+
static get encapsulation() { return "scoped"; }
|
|
27
19
|
static get originalStyleUrls() { return {
|
|
28
20
|
"$": ["ozon-content.scss"]
|
|
29
21
|
}; }
|
|
@@ -35,11 +27,11 @@ export class OzonContent {
|
|
|
35
27
|
"type": "string",
|
|
36
28
|
"mutable": false,
|
|
37
29
|
"complexType": {
|
|
38
|
-
"original": "string",
|
|
39
|
-
"resolved": "string",
|
|
30
|
+
"original": "string | undefined",
|
|
31
|
+
"resolved": "string | undefined",
|
|
40
32
|
"references": {}
|
|
41
33
|
},
|
|
42
|
-
"required":
|
|
34
|
+
"required": false,
|
|
43
35
|
"optional": false,
|
|
44
36
|
"docs": {
|
|
45
37
|
"tags": [],
|
|
@@ -49,6 +41,9 @@ export class OzonContent {
|
|
|
49
41
|
"reflect": false
|
|
50
42
|
}
|
|
51
43
|
}; }
|
|
44
|
+
static get states() { return {
|
|
45
|
+
"state": {}
|
|
46
|
+
}; }
|
|
52
47
|
static get events() { return [{
|
|
53
48
|
"method": "anchorClick",
|
|
54
49
|
"name": "anchorClick",
|
|
@@ -60,21 +55,14 @@ export class OzonContent {
|
|
|
60
55
|
"text": ""
|
|
61
56
|
},
|
|
62
57
|
"complexType": {
|
|
63
|
-
"original": "
|
|
64
|
-
"resolved": "
|
|
58
|
+
"original": "OzonContentAnchorClick",
|
|
59
|
+
"resolved": "OzonContentAnchorClick",
|
|
65
60
|
"references": {
|
|
66
|
-
"
|
|
61
|
+
"OzonContentAnchorClick": {
|
|
67
62
|
"location": "import",
|
|
68
63
|
"path": "./ozon-content.interfaces"
|
|
69
64
|
}
|
|
70
65
|
}
|
|
71
66
|
}
|
|
72
67
|
}]; }
|
|
73
|
-
static get listeners() { return [{
|
|
74
|
-
"name": "click",
|
|
75
|
-
"method": "handleClick",
|
|
76
|
-
"target": undefined,
|
|
77
|
-
"capture": false,
|
|
78
|
-
"passive": false
|
|
79
|
-
}]; }
|
|
80
68
|
}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import { h, Component, Prop, Event, Fragment, Element, State, forceUpdate, Watch } from '@stencil/core';
|
|
1
|
+
import { h, Component, Prop, Event, Fragment, Element, State, forceUpdate, Watch, Method } from '@stencil/core';
|
|
2
2
|
import { createIdentifier } from '../../utils/create-identifier';
|
|
3
3
|
export class Selectable {
|
|
4
4
|
constructor() {
|
|
5
5
|
this.infoActive = false;
|
|
6
6
|
this.fallbackIdentifier = createIdentifier('DsoSelectable');
|
|
7
7
|
}
|
|
8
|
+
async toggleInfo(active) {
|
|
9
|
+
this.infoActive = active !== null && active !== void 0 ? active : !this.infoActive;
|
|
10
|
+
}
|
|
8
11
|
componentDidLoad() {
|
|
9
12
|
var _a;
|
|
10
13
|
(_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
@@ -260,6 +263,27 @@ export class Selectable {
|
|
|
260
263
|
}
|
|
261
264
|
}
|
|
262
265
|
}]; }
|
|
266
|
+
static get methods() { return {
|
|
267
|
+
"toggleInfo": {
|
|
268
|
+
"complexType": {
|
|
269
|
+
"signature": "(active?: boolean | undefined) => Promise<void>",
|
|
270
|
+
"parameters": [{
|
|
271
|
+
"tags": [],
|
|
272
|
+
"text": ""
|
|
273
|
+
}],
|
|
274
|
+
"references": {
|
|
275
|
+
"Promise": {
|
|
276
|
+
"location": "global"
|
|
277
|
+
}
|
|
278
|
+
},
|
|
279
|
+
"return": "Promise<void>"
|
|
280
|
+
},
|
|
281
|
+
"docs": {
|
|
282
|
+
"text": "",
|
|
283
|
+
"tags": []
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
}; }
|
|
263
287
|
static get elementRef() { return "host"; }
|
|
264
288
|
static get watchers() { return [{
|
|
265
289
|
"propName": "indeterminate",
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { h } from '@stencil/core';
|
|
2
|
+
export const ViewerGridFilterpanelButtons = ({ onApply, onCancel }) => (h("div", { class: "filterpanel-buttons" },
|
|
3
|
+
h("button", { type: "button", class: "cancel-button", onClick: onCancel },
|
|
4
|
+
h("span", null, "Annuleren")),
|
|
5
|
+
h("button", { type: "button", class: "apply-button", onClick: onApply },
|
|
6
|
+
h("span", null, "Toepassen"),
|
|
7
|
+
h("dso-icon", { icon: "chevron-right" }))));
|