@teipublisher/pb-components 2.26.1-next.3 → 3.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/.github/workflows/main.yml +3 -3
- package/.github/workflows/node.js.yml +3 -3
- package/.github/workflows/release.js.yml +4 -4
- package/.releaserc.json +2 -2
- package/CHANGELOG.md +262 -11
- package/Dockerfile +78 -70
- package/css/components.css +5 -5
- package/css/leaflet/images/layers.png +0 -0
- package/dist/demo/components.css +46 -1
- package/dist/demo/pb-browse-docs2.html +1 -1
- package/dist/demo/pb-dialog.html +3 -5
- package/dist/demo/pb-drawer2.html +1 -1
- package/dist/demo/pb-facsimile.html +2 -2
- package/dist/demo/pb-grid.html +19 -6
- package/dist/demo/pb-leaflet-map.html +1 -1
- package/dist/demo/pb-login.html +0 -2
- package/dist/demo/pb-message.html +1 -2
- package/dist/demo/pb-progress.html +2 -2
- package/dist/demo/pb-repeat.html +1 -3
- package/dist/demo/pb-search.html +7 -4
- package/dist/demo/pb-search3.html +1 -1
- package/dist/demo/pb-search4.html +2 -2
- package/dist/demo/pb-view3.html +1 -1
- package/dist/{iron-form-3b8dcaa7.js → iron-form-dfb3e3b1.js} +95 -95
- package/dist/paper-checkbox-645e1077.js +200 -0
- package/dist/{paper-icon-button-b1d31571.js → paper-icon-button-984162bd.js} +1 -1
- package/dist/{paper-checkbox-515a5284.js → paper-inky-focus-behavior-fa16796b.js} +58 -247
- package/dist/{paper-listbox-a3b7175c.js → paper-listbox-5f5d1cec.js} +152 -162
- package/dist/pb-code-editor.js +25 -20
- package/dist/pb-component-docs.js +68 -64
- package/dist/pb-components-bundle.js +1983 -2293
- package/dist/pb-edit-app.js +167 -107
- package/dist/pb-elements.json +176 -120
- package/dist/{pb-i18n-0611135a.js → pb-i18n-4cc00bfe.js} +1 -1
- package/dist/pb-leaflet-map.js +23 -23
- package/dist/pb-mei.js +56 -41
- package/dist/{pb-mixin-b1caa22e.js → pb-mixin-886ece32.js} +1 -1
- package/dist/pb-odd-editor.js +1023 -782
- package/dist/pb-tify.js +2 -2
- package/dist/vaadin-element-mixin-beb74ffd.js +545 -0
- package/gh-pages.js +5 -3
- package/i18n/common/en.json +6 -0
- package/i18n/common/pl.json +2 -2
- package/lib/openseadragon.min.js +6 -6
- package/package.json +3 -3
- package/pb-elements.json +176 -120
- package/src/assets/components.css +5 -5
- package/src/authority/airtable.js +20 -21
- package/src/authority/anton.js +129 -129
- package/src/authority/custom.js +23 -21
- package/src/authority/geonames.js +38 -32
- package/src/authority/gnd.js +50 -42
- package/src/authority/kbga.js +137 -134
- package/src/authority/metagrid.js +44 -46
- package/src/authority/reconciliation.js +66 -67
- package/src/authority/registry.js +4 -4
- package/src/docs/pb-component-docs.js +2 -2
- package/src/docs/pb-component-view.js +5 -5
- package/src/docs/pb-components-list.js +2 -2
- package/src/docs/pb-demo-snippet.js +2 -2
- package/src/dts-client.js +299 -297
- package/src/dts-select-endpoint.js +90 -82
- package/src/parse-date-service.js +184 -135
- package/src/pb-ajax.js +158 -171
- package/src/pb-authority-lookup.js +191 -156
- package/src/pb-autocomplete.js +292 -280
- package/src/pb-blacklab-highlight.js +264 -259
- package/src/pb-blacklab-results.js +236 -221
- package/src/pb-browse-docs.js +540 -475
- package/src/pb-browse.js +68 -65
- package/src/pb-clipboard.js +79 -76
- package/src/pb-code-editor.js +110 -102
- package/src/pb-code-highlight.js +209 -204
- package/src/pb-codepen.js +79 -72
- package/src/pb-collapse.js +211 -151
- package/src/pb-combo-box.js +190 -190
- package/src/pb-components-bundle.js +1 -1
- package/src/pb-components.js +1 -0
- package/src/pb-custom-form.js +173 -153
- package/src/pb-dialog.js +98 -62
- package/src/pb-document.js +89 -90
- package/src/pb-download.js +212 -196
- package/src/pb-drawer.js +145 -148
- package/src/pb-edit-app.js +301 -229
- package/src/pb-edit-xml.js +100 -97
- package/src/pb-events.js +114 -107
- package/src/pb-facs-link.js +104 -102
- package/src/pb-facsimile.js +474 -410
- package/src/pb-formula.js +151 -153
- package/src/pb-geolocation.js +129 -131
- package/src/pb-grid-action.js +53 -56
- package/src/pb-grid.js +231 -228
- package/src/pb-highlight.js +140 -140
- package/src/pb-hotkeys.js +40 -42
- package/src/pb-i18n.js +101 -104
- package/src/pb-image-strip.js +84 -78
- package/src/pb-lang.js +142 -57
- package/src/pb-leaflet-map.js +488 -485
- package/src/pb-link.js +126 -124
- package/src/pb-load.js +431 -429
- package/src/pb-login.js +299 -244
- package/src/pb-manage-odds.js +352 -336
- package/src/pb-map-icon.js +89 -89
- package/src/pb-map-layer.js +85 -85
- package/src/pb-markdown.js +90 -99
- package/src/pb-media-query.js +74 -72
- package/src/pb-mei.js +306 -295
- package/src/pb-message.js +139 -97
- package/src/pb-mixin.js +269 -264
- package/src/pb-navigation.js +80 -95
- package/src/pb-observable.js +38 -38
- package/src/pb-odd-editor.js +1054 -958
- package/src/pb-odd-elementspec-editor.js +349 -298
- package/src/pb-odd-model-editor.js +1075 -909
- package/src/pb-odd-parameter-editor.js +200 -178
- package/src/pb-odd-rendition-editor.js +136 -124
- package/src/pb-page.js +431 -422
- package/src/pb-paginate.js +228 -179
- package/src/pb-panel.js +198 -182
- package/src/pb-popover-themes.js +15 -8
- package/src/pb-popover.js +296 -287
- package/src/pb-print-preview.js +127 -127
- package/src/pb-progress.js +51 -51
- package/src/pb-repeat.js +105 -104
- package/src/pb-restricted.js +84 -77
- package/src/pb-search.js +256 -228
- package/src/pb-select-feature.js +127 -120
- package/src/pb-select-odd.js +132 -124
- package/src/pb-select-template.js +89 -78
- package/src/pb-select.js +251 -227
- package/src/pb-split-list.js +179 -174
- package/src/pb-svg.js +80 -79
- package/src/pb-table-column.js +54 -54
- package/src/pb-table-grid.js +221 -203
- package/src/pb-tabs.js +61 -63
- package/src/pb-tify.js +154 -154
- package/src/pb-timeline.js +382 -249
- package/src/pb-toggle-feature.js +195 -187
- package/src/pb-upload.js +184 -174
- package/src/pb-version.js +30 -30
- package/src/pb-view-annotate.js +135 -98
- package/src/pb-view.js +1282 -1270
- package/src/pb-zoom.js +127 -45
- package/src/polymer-hack.js +1 -1
- package/src/search-result-service.js +256 -223
- package/src/seed-element.js +13 -20
- package/src/settings.js +4 -4
- package/src/theming.js +98 -91
- package/src/urls.js +289 -289
- package/src/utils.js +53 -51
- package/css/pb-styles.css +0 -51
- package/dist/vaadin-element-mixin-fe4a4883.js +0 -527
- package/src/assets/pb-styles.css +0 -51
- package/src/pb-light-dom.js +0 -41
package/src/pb-navigation.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { LitElement, html, css } from 'lit-element';
|
|
2
2
|
import { pbMixin } from './pb-mixin.js';
|
|
3
|
-
import { pbHotkeys } from
|
|
3
|
+
import { pbHotkeys } from './pb-hotkeys.js';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Navigate backward/forward in a document. This component does not implement any functionality itself.
|
|
@@ -12,111 +12,96 @@ import { pbHotkeys } from "./pb-hotkeys.js";
|
|
|
12
12
|
* @fires pb-update - When received, updates the state of navigation buttons (disables when no forward/backward navigation possible)
|
|
13
13
|
*/
|
|
14
14
|
export class PbNavigation extends pbHotkeys(pbMixin(LitElement)) {
|
|
15
|
+
static get properties() {
|
|
16
|
+
return {
|
|
17
|
+
...super.properties,
|
|
18
|
+
/**
|
|
19
|
+
* The direction to navigate in, either `forward` or `backward`
|
|
20
|
+
*/
|
|
21
|
+
direction: {
|
|
22
|
+
type: String,
|
|
23
|
+
},
|
|
24
|
+
/**
|
|
25
|
+
* Register a shortcut key, e.g. 'left' or 'shift+left'
|
|
26
|
+
*/
|
|
27
|
+
keyboard: {
|
|
28
|
+
type: String,
|
|
29
|
+
},
|
|
30
|
+
/**
|
|
31
|
+
* Rendition of the navigation element if it's disabled
|
|
32
|
+
* Possible values:
|
|
33
|
+
* - hidden (default if not set; control is removed from the document layout)
|
|
34
|
+
* - invisible (controll is hidden, but keeped in the document layout)
|
|
35
|
+
* - visible (control is visible)
|
|
36
|
+
*/
|
|
37
|
+
rendition: {
|
|
38
|
+
type: String,
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
}
|
|
15
42
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
*/
|
|
22
|
-
direction: {
|
|
23
|
-
type: String
|
|
24
|
-
},
|
|
25
|
-
/**
|
|
26
|
-
* Register a shortcut key, e.g. 'left' or 'shift+left'
|
|
27
|
-
*/
|
|
28
|
-
keyboard: {
|
|
29
|
-
type: String
|
|
30
|
-
},
|
|
31
|
-
/**
|
|
32
|
-
* Rendition of the navigation element if it's disabled
|
|
33
|
-
* Possible values:
|
|
34
|
-
* - hidden (default if not set; control is removed from the document layout)
|
|
35
|
-
* - invisible (controll is hidden, but keeped in the document layout)
|
|
36
|
-
* - visible (control is visible)
|
|
37
|
-
*/
|
|
38
|
-
rendition : {
|
|
39
|
-
type: String
|
|
40
|
-
},
|
|
41
|
-
_url: {
|
|
42
|
-
type: String
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
constructor() {
|
|
48
|
-
super();
|
|
49
|
-
this.direction = 'forward';
|
|
50
|
-
this.disabled = true;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
connectedCallback() {
|
|
54
|
-
super.connectedCallback();
|
|
43
|
+
constructor() {
|
|
44
|
+
super();
|
|
45
|
+
this.direction = 'forward';
|
|
46
|
+
this.disabled = true;
|
|
47
|
+
}
|
|
55
48
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
'next': this.keyboard
|
|
59
|
-
}
|
|
60
|
-
}
|
|
49
|
+
connectedCallback() {
|
|
50
|
+
super.connectedCallback();
|
|
61
51
|
|
|
62
|
-
|
|
52
|
+
if (this.keyboard) {
|
|
53
|
+
this.hotkeys = {
|
|
54
|
+
next: this.keyboard,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
63
57
|
|
|
64
|
-
|
|
58
|
+
this.subscribeTo('pb-update', this._update.bind(this));
|
|
65
59
|
|
|
66
|
-
|
|
67
|
-
}
|
|
60
|
+
this.registerHotkey('next', () => this.emitTo('pb-navigate', { direction: this.direction }));
|
|
68
61
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
if (this.direction === 'forward') {
|
|
72
|
-
if (ev.detail.data.next) {
|
|
73
|
-
this.disabled = false;
|
|
74
|
-
} else {
|
|
75
|
-
this.disabled = true;
|
|
76
|
-
}
|
|
77
|
-
} else if (ev.detail.data.previous) {
|
|
78
|
-
this.disabled = false;
|
|
79
|
-
} else {
|
|
80
|
-
this.disabled = true;
|
|
81
|
-
}
|
|
82
|
-
}
|
|
62
|
+
this.signalReady();
|
|
63
|
+
}
|
|
83
64
|
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
65
|
+
_update(ev) {
|
|
66
|
+
if (this.direction === 'forward') {
|
|
67
|
+
if (ev.detail.data.next) {
|
|
68
|
+
this.disabled = false;
|
|
69
|
+
} else {
|
|
70
|
+
this.disabled = true;
|
|
71
|
+
}
|
|
72
|
+
} else if (ev.detail.data.previous) {
|
|
73
|
+
this.disabled = false;
|
|
74
|
+
} else {
|
|
75
|
+
this.disabled = true;
|
|
90
76
|
}
|
|
77
|
+
}
|
|
91
78
|
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
}
|
|
79
|
+
_handleClick() {
|
|
80
|
+
this.emitTo('pb-navigate', { direction: this.direction });
|
|
81
|
+
}
|
|
96
82
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
`;
|
|
101
|
-
}
|
|
83
|
+
render() {
|
|
84
|
+
return html` <a id="button" @click="${this._handleClick}"><slot></slot></a> `;
|
|
85
|
+
}
|
|
102
86
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
87
|
+
static get styles() {
|
|
88
|
+
return css`
|
|
89
|
+
:host {
|
|
90
|
+
display: inline;
|
|
91
|
+
}
|
|
92
|
+
:host([disabled]):host(:not([rendition])),
|
|
93
|
+
:host([disabled]):host([rendition='hidden']) {
|
|
94
|
+
display: none;
|
|
95
|
+
}
|
|
96
|
+
:host([disabled]):host([rendition='invisible']) {
|
|
97
|
+
visibility: hidden;
|
|
98
|
+
}
|
|
99
|
+
:host([disabled]):host([rendition='visible']) {
|
|
100
|
+
visibility: visible;
|
|
101
|
+
cursor: not-allowed;
|
|
102
|
+
}
|
|
103
|
+
`;
|
|
104
|
+
}
|
|
120
105
|
}
|
|
121
106
|
|
|
122
107
|
customElements.define('pb-navigation', PbNavigation);
|
package/src/pb-observable.js
CHANGED
|
@@ -1,56 +1,56 @@
|
|
|
1
1
|
import { LitElement, html, css } from 'lit-element';
|
|
2
2
|
import { pbMixin } from './pb-mixin.js';
|
|
3
3
|
|
|
4
|
-
const _scrollObserver = new IntersectionObserver(
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
const _scrollObserver = new IntersectionObserver(entries => {
|
|
5
|
+
entries.forEach(entry => {
|
|
6
|
+
if (entry.isIntersecting) {
|
|
7
|
+
const observable = entry.target;
|
|
8
|
+
observable.emitTo('pb-visible', { data: observable.data });
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
11
|
});
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* An observable element, which will emit a signal `pb-visible` whenever
|
|
15
15
|
* it becomes visible on the viewport. Use it to determine the current position
|
|
16
16
|
* within a scrollable area.
|
|
17
|
-
*
|
|
17
|
+
*
|
|
18
18
|
* @fires pb-visible - fired when the element becomes visible on the viewport
|
|
19
19
|
*/
|
|
20
20
|
export class PbObservable extends pbMixin(LitElement) {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
21
|
+
static get properties() {
|
|
22
|
+
return {
|
|
23
|
+
/**
|
|
24
|
+
* Payload data to be passed with the event
|
|
25
|
+
*/
|
|
26
|
+
data: {
|
|
27
|
+
type: String,
|
|
28
|
+
},
|
|
29
|
+
...super.properties,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
32
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
}
|
|
33
|
+
disconnectedCallback() {
|
|
34
|
+
super.disconnectedCallback();
|
|
35
|
+
if (_scrollObserver) {
|
|
36
|
+
_scrollObserver.unobserve(this);
|
|
38
37
|
}
|
|
38
|
+
}
|
|
39
39
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
40
|
+
firstUpdated() {
|
|
41
|
+
_scrollObserver.observe(this);
|
|
42
|
+
}
|
|
43
43
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
44
|
+
render() {
|
|
45
|
+
return html`<slot></slot>`;
|
|
46
|
+
}
|
|
47
47
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
48
|
+
static get styles() {
|
|
49
|
+
return css`
|
|
50
|
+
:host {
|
|
51
|
+
display: inline;
|
|
52
|
+
}
|
|
53
|
+
`;
|
|
54
|
+
}
|
|
55
55
|
}
|
|
56
|
-
customElements.define('pb-observable', PbObservable);
|
|
56
|
+
customElements.define('pb-observable', PbObservable);
|