@teipublisher/pb-components 2.26.0-next-3.12 → 2.26.0-next-3.14

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 (136) hide show
  1. package/.github/workflows/main.yml +3 -3
  2. package/.github/workflows/node.js.yml +3 -3
  3. package/.github/workflows/release.js.yml +3 -3
  4. package/CHANGELOG.md +43 -0
  5. package/Dockerfile +78 -70
  6. package/css/components.css +5 -5
  7. package/dist/demo/pb-drawer2.html +1 -1
  8. package/dist/demo/pb-grid.html +19 -6
  9. package/dist/demo/pb-leaflet-map.html +1 -1
  10. package/dist/demo/pb-progress.html +2 -2
  11. package/dist/demo/pb-repeat.html +1 -3
  12. package/dist/demo/pb-view3.html +1 -1
  13. package/dist/{iron-form-277f9d42.js → iron-form-78b43d38.js} +1 -1
  14. package/dist/{paper-checkbox-4f410b1f.js → paper-checkbox-d16f23be.js} +44 -44
  15. package/dist/{paper-icon-button-0fb125c4.js → paper-icon-button-2cd9e0b4.js} +3 -3
  16. package/dist/{paper-listbox-c2468542.js → paper-listbox-2ad5c882.js} +7 -7
  17. package/dist/pb-code-editor.js +25 -20
  18. package/dist/pb-component-docs.js +58 -54
  19. package/dist/pb-components-bundle.js +2057 -2351
  20. package/dist/pb-edit-app.js +167 -107
  21. package/dist/pb-elements.json +45 -45
  22. package/dist/{pb-i18n-0611135a.js → pb-i18n-4cc00bfe.js} +1 -1
  23. package/dist/pb-leaflet-map.js +23 -23
  24. package/dist/pb-mei.js +56 -41
  25. package/dist/{pb-mixin-b1caa22e.js → pb-mixin-886ece32.js} +1 -1
  26. package/dist/pb-odd-editor.js +923 -756
  27. package/dist/pb-tify.js +2 -2
  28. package/dist/{vaadin-element-mixin-49ab4037.js → vaadin-element-mixin-c200b196.js} +179 -164
  29. package/gh-pages.js +5 -3
  30. package/i18n/common/pl.json +2 -2
  31. package/lib/openseadragon.min.js +1 -1
  32. package/package.json +2 -2
  33. package/pb-elements.json +45 -45
  34. package/src/assets/components.css +5 -5
  35. package/src/authority/airtable.js +20 -21
  36. package/src/authority/anton.js +129 -129
  37. package/src/authority/custom.js +23 -21
  38. package/src/authority/geonames.js +38 -32
  39. package/src/authority/gnd.js +47 -42
  40. package/src/authority/kbga.js +137 -134
  41. package/src/authority/metagrid.js +44 -46
  42. package/src/authority/reconciliation.js +66 -67
  43. package/src/authority/registry.js +4 -4
  44. package/src/docs/pb-component-docs.js +2 -2
  45. package/src/docs/pb-component-view.js +5 -5
  46. package/src/docs/pb-components-list.js +2 -2
  47. package/src/docs/pb-demo-snippet.js +2 -2
  48. package/src/dts-client.js +299 -297
  49. package/src/dts-select-endpoint.js +90 -82
  50. package/src/parse-date-service.js +184 -135
  51. package/src/pb-ajax.js +150 -146
  52. package/src/pb-authority-lookup.js +183 -146
  53. package/src/pb-autocomplete.js +292 -280
  54. package/src/pb-blacklab-highlight.js +264 -259
  55. package/src/pb-blacklab-results.js +236 -221
  56. package/src/pb-browse-docs.js +540 -475
  57. package/src/pb-browse.js +68 -65
  58. package/src/pb-clipboard.js +79 -76
  59. package/src/pb-code-editor.js +110 -102
  60. package/src/pb-code-highlight.js +209 -204
  61. package/src/pb-codepen.js +79 -72
  62. package/src/pb-collapse.js +212 -207
  63. package/src/pb-combo-box.js +190 -190
  64. package/src/pb-components-bundle.js +1 -1
  65. package/src/pb-custom-form.js +151 -149
  66. package/src/pb-dialog.js +94 -85
  67. package/src/pb-document.js +89 -90
  68. package/src/pb-download.js +210 -198
  69. package/src/pb-drawer.js +145 -148
  70. package/src/pb-edit-app.js +301 -229
  71. package/src/pb-edit-xml.js +98 -96
  72. package/src/pb-events.js +114 -107
  73. package/src/pb-facs-link.js +104 -102
  74. package/src/pb-facsimile.js +419 -414
  75. package/src/pb-formula.js +151 -153
  76. package/src/pb-geolocation.js +129 -131
  77. package/src/pb-grid-action.js +53 -56
  78. package/src/pb-grid.js +231 -228
  79. package/src/pb-highlight.js +140 -140
  80. package/src/pb-hotkeys.js +40 -42
  81. package/src/pb-i18n.js +101 -104
  82. package/src/pb-image-strip.js +84 -78
  83. package/src/pb-lang.js +132 -128
  84. package/src/pb-leaflet-map.js +488 -485
  85. package/src/pb-link.js +126 -124
  86. package/src/pb-load.js +431 -426
  87. package/src/pb-login.js +291 -248
  88. package/src/pb-manage-odds.js +364 -318
  89. package/src/pb-map-icon.js +89 -89
  90. package/src/pb-map-layer.js +85 -85
  91. package/src/pb-markdown.js +90 -99
  92. package/src/pb-media-query.js +74 -72
  93. package/src/pb-mei.js +306 -295
  94. package/src/pb-message.js +144 -144
  95. package/src/pb-mixin.js +269 -264
  96. package/src/pb-navigation.js +80 -82
  97. package/src/pb-observable.js +38 -38
  98. package/src/pb-odd-editor.js +1053 -955
  99. package/src/pb-odd-elementspec-editor.js +348 -297
  100. package/src/pb-odd-model-editor.js +1061 -901
  101. package/src/pb-odd-parameter-editor.js +200 -178
  102. package/src/pb-odd-rendition-editor.js +136 -124
  103. package/src/pb-page.js +431 -421
  104. package/src/pb-paginate.js +202 -190
  105. package/src/pb-panel.js +198 -182
  106. package/src/pb-popover-themes.js +7 -5
  107. package/src/pb-popover.js +296 -287
  108. package/src/pb-print-preview.js +127 -127
  109. package/src/pb-progress.js +51 -51
  110. package/src/pb-repeat.js +105 -104
  111. package/src/pb-restricted.js +84 -77
  112. package/src/pb-search.js +252 -241
  113. package/src/pb-select-feature.js +127 -120
  114. package/src/pb-select-odd.js +132 -124
  115. package/src/pb-select-template.js +89 -78
  116. package/src/pb-select.js +251 -227
  117. package/src/pb-split-list.js +179 -174
  118. package/src/pb-svg.js +80 -79
  119. package/src/pb-table-column.js +54 -54
  120. package/src/pb-table-grid.js +221 -203
  121. package/src/pb-tabs.js +61 -63
  122. package/src/pb-tify.js +154 -154
  123. package/src/pb-timeline.js +271 -229
  124. package/src/pb-toggle-feature.js +182 -175
  125. package/src/pb-upload.js +184 -174
  126. package/src/pb-version.js +30 -30
  127. package/src/pb-view-annotate.js +132 -98
  128. package/src/pb-view.js +1290 -1270
  129. package/src/pb-zoom.js +75 -59
  130. package/src/polymer-hack.js +1 -1
  131. package/src/search-result-service.js +256 -223
  132. package/src/seed-element.js +13 -20
  133. package/src/settings.js +4 -4
  134. package/src/theming.js +96 -96
  135. package/src/urls.js +289 -289
  136. package/src/utils.js +53 -51
@@ -1,6 +1,6 @@
1
1
  import { LitElement } from 'lit-element';
2
2
  import { pbMixin } from './pb-mixin.js';
3
- import { registry } from "./urls.js";
3
+ import { registry } from './urls.js';
4
4
 
5
5
  /**
6
6
  * Represents a Publisher document. It has no visual presentation but holds meta-data
@@ -11,108 +11,107 @@ import { registry } from "./urls.js";
11
11
  * @fires pb-document - Fires update event
12
12
  */
13
13
  class PbDocument extends pbMixin(LitElement) {
14
+ static get properties() {
15
+ return {
16
+ ...super.properties,
17
+ /**
18
+ * The path to the document to be loaded. Should be relative to `root`.
19
+ */
20
+ path: {
21
+ type: String,
22
+ reflect: true,
23
+ },
24
+ /**
25
+ * The root collection which will be used to resolve relative paths
26
+ * specified in `path`.
27
+ */
28
+ rootPath: {
29
+ type: String,
30
+ attribute: 'root-path',
31
+ },
32
+ /**
33
+ * The odd file which should be used to render this document by default. Might be
34
+ * overwritten in a `pb-view`. The odd should be specified by its name without path
35
+ * or the `.odd` suffix.
36
+ */
37
+ odd: {
38
+ type: String,
39
+ reflect: true,
40
+ },
41
+ /**
42
+ * The default view to be used for displaying this document. Can be either `page`, `div` or `simple`.
43
+ * Might be overwritten in a `pb-view`.
44
+ *
45
+ * Value | Displayed content
46
+ * ------|------------------
47
+ * `page` | content is displayed page by page as determined by tei:pb
48
+ * `div` | content is displayed by divisions
49
+ * `single` | do not paginate but display entire content at once
50
+ */
51
+ view: {
52
+ type: String,
53
+ reflect: true,
54
+ },
55
+ disableHistory: {
56
+ type: Boolean,
57
+ attribute: 'disable-history',
58
+ },
59
+ sourceView: {
60
+ type: String,
61
+ attribute: 'source-view',
62
+ },
63
+ };
64
+ }
14
65
 
15
- static get properties() {
16
- return {
17
- ...super.properties,
18
- /**
19
- * The path to the document to be loaded. Should be relative to `root`.
20
- */
21
- path: {
22
- type: String,
23
- reflect: true
24
- },
25
- /**
26
- * The root collection which will be used to resolve relative paths
27
- * specified in `path`.
28
- */
29
- rootPath: {
30
- type: String,
31
- attribute: 'root-path'
32
- },
33
- /**
34
- * The odd file which should be used to render this document by default. Might be
35
- * overwritten in a `pb-view`. The odd should be specified by its name without path
36
- * or the `.odd` suffix.
37
- */
38
- odd: {
39
- type: String,
40
- reflect: true
41
- },
42
- /**
43
- * The default view to be used for displaying this document. Can be either `page`, `div` or `simple`.
44
- * Might be overwritten in a `pb-view`.
45
- *
46
- * Value | Displayed content
47
- * ------|------------------
48
- * `page` | content is displayed page by page as determined by tei:pb
49
- * `div` | content is displayed by divisions
50
- * `single` | do not paginate but display entire content at once
51
- */
52
- view: {
53
- type: String,
54
- reflect: true
55
- },
56
- disableHistory: {
57
- type: Boolean,
58
- attribute: 'disable-history'
59
- },
60
- sourceView: {
61
- type: String,
62
- attribute: 'source-view'
63
- }
64
- };
65
- }
66
-
67
- constructor() {
68
- super();
69
- this.path = null;
70
- this.rootPath = '';
71
- this.disableHistory = false;
72
- }
66
+ constructor() {
67
+ super();
68
+ this.path = null;
69
+ this.rootPath = '';
70
+ this.disableHistory = false;
71
+ }
73
72
 
74
- connectedCallback() {
75
- super.connectedCallback();
73
+ connectedCallback() {
74
+ super.connectedCallback();
76
75
 
77
- if (!this.disableHistory) {
78
- // if path is unset, use path taken from the URL
79
- if (registry.state.path && !this.path) {
80
- this.path = registry.state.path;
81
- }
82
- this.view = registry.state.view || this.view;
83
- this.odd = registry.state.odd || this.odd;
84
- }
76
+ if (!this.disableHistory) {
77
+ // if path is unset, use path taken from the URL
78
+ if (registry.state.path && !this.path) {
79
+ this.path = registry.state.path;
80
+ }
81
+ this.view = registry.state.view || this.view;
82
+ this.odd = registry.state.odd || this.odd;
85
83
  }
84
+ }
86
85
 
87
- attributeChangedCallback(name, oldVal, newVal) {
88
- super.attributeChangedCallback(name, oldVal, newVal);
89
- if (oldVal) {
90
- console.log('<pb-document> Emit update event');
91
- this.emitTo('pb-document', this);
92
- }
86
+ attributeChangedCallback(name, oldVal, newVal) {
87
+ super.attributeChangedCallback(name, oldVal, newVal);
88
+ if (oldVal) {
89
+ console.log('<pb-document> Emit update event');
90
+ this.emitTo('pb-document', this);
93
91
  }
92
+ }
94
93
 
95
- /**
96
- * Returns the name of the document without path.
97
- *
98
- * @returns {string} Name of the document
99
- */
100
- getFileName() {
101
- return this.path.replace(/^.*?([^\/]+)$/, '$1');
102
- }
94
+ /**
95
+ * Returns the name of the document without path.
96
+ *
97
+ * @returns {string} Name of the document
98
+ */
99
+ getFileName() {
100
+ return this.path.replace(/^.*?([^\/]+)$/, '$1');
101
+ }
103
102
 
104
- getCollection() {
105
- return this.path.replace(/^(.*?)\/[^\/]+$/, '$1');
106
- }
103
+ getCollection() {
104
+ return this.path.replace(/^(.*?)\/[^\/]+$/, '$1');
105
+ }
107
106
 
108
- /**
107
+ /**
109
108
  * Returns the full path to the document.
110
109
 
111
110
  * @returns {string} Full path to the document
112
111
  */
113
- getFullPath() {
114
- return this.rootPath + '/' + this.path;
115
- }
112
+ getFullPath() {
113
+ return `${this.rootPath}/${this.path}`;
114
+ }
116
115
  }
117
116
 
118
117
  customElements.define('pb-document', PbDocument);
@@ -13,214 +13,226 @@ import { themableMixin } from './theming.js';
13
13
  * @cssprop --pb-download-text-decoration - Extra effects for the download title label
14
14
  */
15
15
  export class PbDownload extends themableMixin(pbMixin(LitElement)) {
16
-
17
- static get properties() {
18
- return {
19
- ...super.properties,
20
- /**
21
- * optional id reference to a pb-document. If `url` is not specified,
22
- * a correct download URL is constructed using the given document path and parameters.
23
- * Otherwise `url` will be used as main URL.
24
- */
25
- src: {
26
- type: String
27
- },
28
- /**
29
- * the base URL to construct the link from. If specified, only the ODD and optional parameters
30
- * will be appended to the URL.
31
- */
32
- url: {
33
- type: String
34
- },
35
- /**
36
- * optional suffix to append to the constructed URL. Use for getting a PDF, epub or similar.
37
- */
38
- type: {
39
- type: String
40
- },
41
- /**
42
- * extra odd parameter to be added. This will correspond to the ODD used by the document, if given.
43
- */
44
- odd: {
45
- type: String
46
- },
47
- /**
48
- * id of dialog component to show when downloading. A paper-dialog component with this id must
49
- * exist.
50
- */
51
- dialog: {
52
- type: String
53
- },
54
- /**
55
- * title to show in the dialog while download is in progress
56
- */
57
- title: {
58
- type: String
59
- },
60
- /**
61
- * add a special parameter 'source=yes' if true. For PDF this will result
62
- * in generated source code to be displayed
63
- */
64
- source: {
65
- type: Boolean
66
- },
67
- /**
68
- * extra params to be added
69
- */
70
- params: {
71
- type: String
72
- },
73
- _target: {
74
- type: String,
75
- reflect: true
76
- },
77
- _href: {
78
- type: String,
79
- reflect: true
80
- },
81
- _token: {
82
- type: String
83
- }
84
- };
16
+ static get properties() {
17
+ return {
18
+ ...super.properties,
19
+ /**
20
+ * optional id reference to a pb-document. If `url` is not specified,
21
+ * a correct download URL is constructed using the given document path and parameters.
22
+ * Otherwise `url` will be used as main URL.
23
+ */
24
+ src: {
25
+ type: String,
26
+ },
27
+ /**
28
+ * the base URL to construct the link from. If specified, only the ODD and optional parameters
29
+ * will be appended to the URL.
30
+ */
31
+ url: {
32
+ type: String,
33
+ },
34
+ /**
35
+ * optional suffix to append to the constructed URL. Use for getting a PDF, epub or similar.
36
+ */
37
+ type: {
38
+ type: String,
39
+ },
40
+ /**
41
+ * extra odd parameter to be added. This will correspond to the ODD used by the document, if given.
42
+ */
43
+ odd: {
44
+ type: String,
45
+ },
46
+ /**
47
+ * id of dialog component to show when downloading. A paper-dialog component with this id must
48
+ * exist.
49
+ */
50
+ dialog: {
51
+ type: String,
52
+ },
53
+ /**
54
+ * title to show in the dialog while download is in progress
55
+ */
56
+ title: {
57
+ type: String,
58
+ },
59
+ /**
60
+ * add a special parameter 'source=yes' if true. For PDF this will result
61
+ * in generated source code to be displayed
62
+ */
63
+ source: {
64
+ type: Boolean,
65
+ },
66
+ /**
67
+ * extra params to be added
68
+ */
69
+ params: {
70
+ type: String,
71
+ },
72
+ _target: {
73
+ type: String,
74
+ reflect: true,
75
+ },
76
+ _href: {
77
+ type: String,
78
+ reflect: true,
79
+ },
80
+ _token: {
81
+ type: String,
82
+ },
83
+ };
84
+ }
85
+
86
+ constructor() {
87
+ super();
88
+
89
+ this.source = false;
90
+ this._target = '_self';
91
+ this.type = '';
92
+ }
93
+
94
+ firstUpdated() {
95
+ if (this.src) {
96
+ this.subscribeTo('pb-document', ev => {
97
+ if (ev.detail.id === this.src) {
98
+ this.odd = ev.detail.odd;
99
+ }
100
+ });
85
101
  }
86
-
87
- constructor() {
88
- super();
89
-
90
- this.source = false;
91
- this._target = '_self';
92
- this.type = '';
102
+ this.subscribeTo('pb-refresh', ev => {
103
+ if (ev.detail.odd) {
104
+ this.odd = ev.detail.odd;
105
+ this._href = this._computeURL();
106
+ }
107
+ });
108
+ waitOnce('pb-page-ready', () => {
109
+ this._target = this._computeTarget();
110
+ this._href = this._computeURL();
111
+ });
112
+ }
113
+
114
+ attributeChangedCallback(name, oldVal, newVal) {
115
+ super.attributeChangedCallback(name, oldVal, newVal);
116
+
117
+ if (!oldVal) {
118
+ return;
93
119
  }
94
120
 
95
- firstUpdated() {
96
- if (this.src) {
97
- this.subscribeTo('pb-document', (ev) => {
98
- if (ev.detail.id === this.src) {
99
- this.odd = ev.detail.odd;
100
- }
101
- });
102
- }
103
- this.subscribeTo('pb-refresh', (ev) => {
104
- if (ev.detail.odd) {
105
- this.odd = ev.detail.odd;
106
- this._href = this._computeURL();
107
- }
108
- });
109
- waitOnce('pb-page-ready', () => {
110
- this._target = this._computeTarget();
111
- this._href = this._computeURL();
112
- });
121
+ switch (name) {
122
+ case 'source':
123
+ this._target = this._computeTarget();
124
+ break;
125
+ case 'src':
126
+ case 'type':
127
+ case 'file':
128
+ case 'odd':
129
+ case 'params':
130
+ case 'url':
131
+ this._href = this._computeURL();
132
+ break;
133
+ default:
113
134
  }
114
-
115
- attributeChangedCallback(name, oldVal, newVal) {
116
- super.attributeChangedCallback(name, oldVal, newVal);
117
-
118
- if (!oldVal) {
119
- return;
120
- }
121
-
122
- switch (name) {
123
- case 'source':
124
- this._target = this._computeTarget();
125
- break;
126
- case 'src':
127
- case 'type':
128
- case 'file':
129
- case 'odd':
130
- case 'params':
131
- case 'url':
132
- this._href = this._computeURL();
133
- break;
134
- default:
135
+ }
136
+
137
+ render() {
138
+ return html`
139
+ <a
140
+ id="button"
141
+ @click="${this._handleClick}"
142
+ title="${this.title}"
143
+ target="${this._target}"
144
+ href="${this._href}"
145
+ ><slot></slot
146
+ ></a>
147
+ `;
148
+ }
149
+
150
+ static get styles() {
151
+ return css`
152
+ :host {
153
+ display: inline-block;
154
+ }
155
+
156
+ a {
157
+ text-decoration: var(--pb-download-text-decoration, none);
158
+ }
159
+ `;
160
+ }
161
+
162
+ _computeTarget() {
163
+ return this.source ? '_blank' : '_self';
164
+ }
165
+
166
+ _computeURL() {
167
+ this._token = new Date().getTime() * 797;
168
+ let url;
169
+ const doc = this.getDocument();
170
+ if (doc) {
171
+ if (this.url) {
172
+ url = `${this.toAbsoluteURL(this.url)}?odd=${this.odd ? this.odd : doc.odd}.odd`;
173
+ } else {
174
+ const serverPart = `${this.getEndpoint()}/`;
175
+ if (this.lessThanApiVersion('1.0.0')) {
176
+ url = `${doc.getFileName()}${this.type ? `.${this.type}` : ''}?odd=${
177
+ this.odd ? this.odd : doc.odd
178
+ }.odd&cache=no&token=${this._token}`;
179
+ } else {
180
+ url = `${serverPart}api/document/${encodeURIComponent(doc.path)}/${
181
+ this.type || 'html'
182
+ }?odd=${this.odd ? this.odd : doc.odd}.odd&token=${this._token}`;
135
183
  }
184
+ }
185
+ } else {
186
+ url = /^(?:[a-z]+:)?\/\//i.test(this.url) ? this.url : `${this.getEndpoint()}/${this.url}`;
187
+ if (this.lessThanApiVersion('1.0.0')) {
188
+ url = `${url}${this.type ? `.${this.type}` : ''}?odd=${this.odd}&cache=no&token='${
189
+ this._token
190
+ }`;
191
+ } else {
192
+ url = `${url}/${this.type}?odd=${this.odd}&token='${this._token}`;
193
+ }
136
194
  }
137
195
 
138
- render() {
139
- return html`
140
- <a id="button" @click="${this._handleClick}" title="${this.title}" target="${this._target}" href="${this._href}"><slot></slot></a>
141
- `;
196
+ if (this.params) {
197
+ url += `&${this.params}`;
142
198
  }
143
-
144
- static get styles() {
145
- return css`
146
- :host {
147
- display: inline-block;
148
- }
149
-
150
- a {
151
- text-decoration: var(--pb-download-text-decoration, none);
152
- }
153
- `;
199
+ if (this.source) {
200
+ url += '&source=true';
154
201
  }
155
-
156
- _computeTarget() {
157
- return this.source ? '_blank' : '_self';
158
- }
159
-
160
- _computeURL() {
161
- this._token = new Date().getTime() * 797;
162
- let url;
163
- const doc = this.getDocument();
164
- if (doc) {
165
- if (this.url) {
166
- url = `${this.toAbsoluteURL(this.url)}?odd=${this.odd ? this.odd : doc.odd}.odd`;
167
- } else {
168
- const serverPart = `${this.getEndpoint()}/`;
169
- if (this.lessThanApiVersion('1.0.0')) {
170
- url = `${doc.getFileName()}${this.type ? `.${this.type}` : ''}?odd=${this.odd ? this.odd : doc.odd}.odd&cache=no&token=${this._token}`;
171
- } else {
172
- url = `${serverPart}api/document/${encodeURIComponent(doc.path)}/${this.type || 'html'}?odd=${this.odd ? this.odd : doc.odd}.odd&token=${this._token}`;
173
- }
174
- }
175
- } else {
176
- url = /^(?:[a-z]+:)?\/\//i.test(this.url) ? this.url : `${this.getEndpoint()}/${this.url}`;
177
- if (this.lessThanApiVersion('1.0.0')) {
178
- url = `${url}${this.type ? `.${this.type}` : ''}?odd=${this.odd}&cache=no&token='${this._token}`;
179
- } else {
180
- url = `${url}/${this.type}?odd=${this.odd}&token='${this._token}`;
181
- }
182
- }
183
-
184
- if (this.params) {
185
- url += `&${this.params}`;
186
- }
187
- if (this.source) {
188
- url += '&source=true';
202
+ return url;
203
+ }
204
+
205
+ /**
206
+ *
207
+ * triggers a document download
208
+ *
209
+ * @param ev
210
+ * @private
211
+ */
212
+ _handleClick(ev) {
213
+ if (this.dialog) {
214
+ const dialog = document.getElementById(this.dialog);
215
+
216
+ if (dialog) {
217
+ dialog.openDialog();
218
+ }
219
+
220
+ const token = this._token;
221
+ const downloadCheck = window.setInterval(() => {
222
+ const cookieValue = Cookies.get('simple.token');
223
+ if (cookieValue === token) {
224
+ window.clearInterval(downloadCheck);
225
+ Cookies.remove('simple.token');
226
+ if (dialog) {
227
+ dialog.closeDialog();
228
+ }
189
229
  }
190
- return url;
230
+ });
191
231
  }
192
-
193
- /**
194
- *
195
- * triggers a document download
196
- *
197
- * @param ev
198
- * @private
199
- */
200
- _handleClick(ev) {
201
- if (this.dialog) {
202
- const dialog = document.getElementById(this.dialog);
203
-
204
- if (dialog) {
205
- dialog.openDialog();
206
- }
207
-
208
- const token = this._token;
209
- const downloadCheck = window.setInterval(() => {
210
- const cookieValue = Cookies.get("simple.token");
211
- if (cookieValue === token) {
212
- window.clearInterval(downloadCheck);
213
- Cookies.remove("simple.token");
214
- if (dialog) {
215
- dialog.closeDialog();
216
- }
217
- }
218
- });
219
- }
220
- if (this._target === '_self') {
221
- ev.preventDefault();
222
- window.location = this._href;
223
- }
232
+ if (this._target === '_self') {
233
+ ev.preventDefault();
234
+ window.location = this._href;
224
235
  }
236
+ }
225
237
  }
226
- customElements.define('pb-download', PbDownload);
238
+ customElements.define('pb-download', PbDownload);