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

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 (132) 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 +30 -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-leaflet-map.html +1 -1
  9. package/dist/demo/pb-progress.html +2 -2
  10. package/dist/demo/pb-repeat.html +1 -3
  11. package/dist/demo/pb-view3.html +1 -1
  12. package/dist/{paper-icon-button-0fb125c4.js → paper-icon-button-72125e67.js} +1 -1
  13. package/dist/pb-code-editor.js +25 -20
  14. package/dist/pb-component-docs.js +58 -54
  15. package/dist/pb-components-bundle.js +1937 -1782
  16. package/dist/pb-edit-app.js +167 -107
  17. package/dist/pb-elements.json +45 -45
  18. package/dist/{pb-i18n-0611135a.js → pb-i18n-4cc00bfe.js} +1 -1
  19. package/dist/pb-leaflet-map.js +23 -23
  20. package/dist/pb-mei.js +56 -41
  21. package/dist/{pb-mixin-b1caa22e.js → pb-mixin-886ece32.js} +1 -1
  22. package/dist/pb-odd-editor.js +923 -756
  23. package/dist/pb-tify.js +2 -2
  24. package/dist/{vaadin-element-mixin-49ab4037.js → vaadin-element-mixin-84fb7d82.js} +178 -163
  25. package/gh-pages.js +5 -3
  26. package/i18n/common/pl.json +2 -2
  27. package/lib/openseadragon.min.js +1 -1
  28. package/package.json +2 -2
  29. package/pb-elements.json +45 -45
  30. package/src/assets/components.css +5 -5
  31. package/src/authority/airtable.js +20 -21
  32. package/src/authority/anton.js +129 -129
  33. package/src/authority/custom.js +23 -21
  34. package/src/authority/geonames.js +38 -32
  35. package/src/authority/gnd.js +47 -42
  36. package/src/authority/kbga.js +137 -134
  37. package/src/authority/metagrid.js +44 -46
  38. package/src/authority/reconciliation.js +66 -67
  39. package/src/authority/registry.js +4 -4
  40. package/src/docs/pb-component-docs.js +2 -2
  41. package/src/docs/pb-component-view.js +5 -5
  42. package/src/docs/pb-components-list.js +2 -2
  43. package/src/docs/pb-demo-snippet.js +2 -2
  44. package/src/dts-client.js +299 -297
  45. package/src/dts-select-endpoint.js +90 -82
  46. package/src/parse-date-service.js +184 -135
  47. package/src/pb-ajax.js +150 -146
  48. package/src/pb-authority-lookup.js +183 -146
  49. package/src/pb-autocomplete.js +292 -280
  50. package/src/pb-blacklab-highlight.js +264 -259
  51. package/src/pb-blacklab-results.js +236 -221
  52. package/src/pb-browse-docs.js +540 -475
  53. package/src/pb-browse.js +68 -65
  54. package/src/pb-clipboard.js +79 -76
  55. package/src/pb-code-editor.js +110 -102
  56. package/src/pb-code-highlight.js +209 -204
  57. package/src/pb-codepen.js +79 -72
  58. package/src/pb-collapse.js +212 -207
  59. package/src/pb-combo-box.js +190 -190
  60. package/src/pb-components-bundle.js +1 -1
  61. package/src/pb-custom-form.js +151 -149
  62. package/src/pb-dialog.js +94 -85
  63. package/src/pb-document.js +89 -90
  64. package/src/pb-download.js +210 -198
  65. package/src/pb-drawer.js +145 -148
  66. package/src/pb-edit-app.js +301 -229
  67. package/src/pb-edit-xml.js +98 -96
  68. package/src/pb-events.js +114 -107
  69. package/src/pb-facs-link.js +104 -102
  70. package/src/pb-facsimile.js +411 -413
  71. package/src/pb-formula.js +151 -153
  72. package/src/pb-geolocation.js +129 -131
  73. package/src/pb-grid-action.js +53 -56
  74. package/src/pb-grid.js +231 -228
  75. package/src/pb-highlight.js +140 -140
  76. package/src/pb-hotkeys.js +40 -42
  77. package/src/pb-i18n.js +101 -104
  78. package/src/pb-image-strip.js +84 -78
  79. package/src/pb-lang.js +132 -128
  80. package/src/pb-leaflet-map.js +488 -485
  81. package/src/pb-link.js +126 -124
  82. package/src/pb-load.js +431 -426
  83. package/src/pb-login.js +291 -248
  84. package/src/pb-manage-odds.js +364 -318
  85. package/src/pb-map-icon.js +89 -89
  86. package/src/pb-map-layer.js +85 -85
  87. package/src/pb-markdown.js +90 -99
  88. package/src/pb-media-query.js +74 -72
  89. package/src/pb-mei.js +306 -295
  90. package/src/pb-message.js +144 -144
  91. package/src/pb-mixin.js +269 -264
  92. package/src/pb-navigation.js +80 -82
  93. package/src/pb-observable.js +38 -38
  94. package/src/pb-odd-editor.js +1053 -955
  95. package/src/pb-odd-elementspec-editor.js +348 -297
  96. package/src/pb-odd-model-editor.js +1061 -901
  97. package/src/pb-odd-parameter-editor.js +200 -178
  98. package/src/pb-odd-rendition-editor.js +136 -124
  99. package/src/pb-page.js +431 -421
  100. package/src/pb-paginate.js +202 -190
  101. package/src/pb-panel.js +191 -179
  102. package/src/pb-popover-themes.js +7 -5
  103. package/src/pb-popover.js +296 -287
  104. package/src/pb-print-preview.js +127 -127
  105. package/src/pb-progress.js +51 -51
  106. package/src/pb-repeat.js +105 -104
  107. package/src/pb-restricted.js +84 -77
  108. package/src/pb-search.js +252 -241
  109. package/src/pb-select-feature.js +127 -120
  110. package/src/pb-select-odd.js +132 -124
  111. package/src/pb-select-template.js +89 -78
  112. package/src/pb-select.js +251 -227
  113. package/src/pb-split-list.js +179 -174
  114. package/src/pb-svg.js +80 -79
  115. package/src/pb-table-column.js +54 -54
  116. package/src/pb-table-grid.js +221 -203
  117. package/src/pb-tabs.js +61 -63
  118. package/src/pb-tify.js +154 -154
  119. package/src/pb-timeline.js +271 -229
  120. package/src/pb-toggle-feature.js +182 -175
  121. package/src/pb-upload.js +184 -174
  122. package/src/pb-version.js +30 -30
  123. package/src/pb-view-annotate.js +132 -98
  124. package/src/pb-view.js +1289 -1270
  125. package/src/pb-zoom.js +75 -59
  126. package/src/polymer-hack.js +1 -1
  127. package/src/search-result-service.js +256 -223
  128. package/src/seed-element.js +13 -20
  129. package/src/settings.js +4 -4
  130. package/src/theming.js +96 -96
  131. package/src/urls.js +289 -289
  132. 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);