openapi-explorer 0.9.310 → 0.9.314

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 (121) hide show
  1. package/CHANGELOG.md +1 -0
  2. package/dist/{openapi-explorer.min.js → browser/openapi-explorer.min.js} +3 -3
  3. package/dist/{openapi-explorer.min.js.map → browser/openapi-explorer.min.js.map} +0 -0
  4. package/dist/es/components/api-request.js +936 -0
  5. package/dist/es/components/api-response.js +184 -0
  6. package/dist/es/components/json-tree.js +67 -0
  7. package/{src → dist/es}/components/mime-types.js +11 -17
  8. package/dist/es/components/schema-table.js +156 -0
  9. package/dist/es/components/schema-tree.js +191 -0
  10. package/dist/es/components/tag-input.js +67 -0
  11. package/{src → dist/es}/openapi-explorer-oauth-handler.js +2 -2
  12. package/{src → dist/es}/openapi-explorer.js +364 -371
  13. package/dist/es/styles/advanced-search-styles.js +2 -0
  14. package/dist/es/styles/api-request-styles.js +2 -0
  15. package/dist/es/styles/border-styles.js +2 -0
  16. package/dist/es/styles/endpoint-styles.js +2 -0
  17. package/dist/es/styles/flex-styles.js +2 -0
  18. package/dist/es/styles/font-styles.js +2 -0
  19. package/dist/es/styles/info-styles.js +2 -0
  20. package/dist/es/styles/input-styles.js +4 -0
  21. package/dist/es/styles/nav-styles.js +2 -0
  22. package/dist/es/styles/prism-styles.js +2 -0
  23. package/dist/es/styles/schema-styles.js +2 -0
  24. package/dist/es/styles/tab-styles.js +2 -0
  25. package/dist/es/styles/table-styles.js +2 -0
  26. package/dist/es/templates/advance-search-template.js +37 -0
  27. package/dist/es/templates/callback-template.js +7 -0
  28. package/dist/es/templates/code-samples-template.js +26 -0
  29. package/dist/es/templates/components-template.js +17 -0
  30. package/dist/es/templates/endpoint-template.js +94 -0
  31. package/dist/es/templates/expanded-endpoint-template.js +32 -0
  32. package/{src → dist/es}/templates/focused-endpoint-template.js +15 -15
  33. package/dist/es/templates/navbar-template.js +46 -0
  34. package/dist/es/templates/overview-template.js +9 -0
  35. package/dist/es/templates/responsiveViewMainBodyTemplate.js +30 -0
  36. package/dist/es/templates/security-scheme-template.js +330 -0
  37. package/dist/es/templates/server-template.js +42 -0
  38. package/{src → dist/es}/utils/color-utils.js +53 -16
  39. package/{src → dist/es}/utils/common-utils.js +18 -18
  40. package/{src → dist/es}/utils/schema-utils.js +248 -124
  41. package/{src → dist/es}/utils/spec-parser.js +112 -71
  42. package/dist/es/utils/theme.js +75 -0
  43. package/{src → dist/es}/utils/xml/xml.js +41 -38
  44. package/dist/lib/components/api-request.js +957 -0
  45. package/dist/lib/components/api-response.js +206 -0
  46. package/dist/lib/components/json-tree.js +82 -0
  47. package/dist/lib/components/mime-types.js +70 -0
  48. package/dist/lib/components/schema-table.js +170 -0
  49. package/dist/lib/components/schema-tree.js +206 -0
  50. package/dist/lib/components/tag-input.js +76 -0
  51. package/dist/lib/openapi-explorer-oauth-handler.js +19 -0
  52. package/dist/lib/openapi-explorer.js +817 -0
  53. package/dist/lib/styles/advanced-search-styles.js +10 -0
  54. package/dist/lib/styles/api-request-styles.js +10 -0
  55. package/dist/lib/styles/border-styles.js +10 -0
  56. package/dist/lib/styles/endpoint-styles.js +10 -0
  57. package/dist/lib/styles/flex-styles.js +10 -0
  58. package/dist/lib/styles/font-styles.js +10 -0
  59. package/dist/lib/styles/info-styles.js +10 -0
  60. package/dist/lib/styles/input-styles.js +11 -0
  61. package/dist/lib/styles/nav-styles.js +10 -0
  62. package/dist/lib/styles/prism-styles.js +10 -0
  63. package/dist/lib/styles/schema-styles.js +10 -0
  64. package/dist/lib/styles/tab-styles.js +10 -0
  65. package/dist/lib/styles/table-styles.js +10 -0
  66. package/dist/lib/templates/advance-search-template.js +42 -0
  67. package/dist/lib/templates/callback-template.js +12 -0
  68. package/dist/lib/templates/code-samples-template.js +36 -0
  69. package/dist/lib/templates/components-template.js +27 -0
  70. package/dist/lib/templates/endpoint-template.js +111 -0
  71. package/dist/lib/templates/expanded-endpoint-template.js +48 -0
  72. package/dist/lib/templates/focused-endpoint-template.js +95 -0
  73. package/dist/lib/templates/navbar-template.js +54 -0
  74. package/dist/lib/templates/overview-template.js +16 -0
  75. package/dist/lib/templates/responsiveViewMainBodyTemplate.js +47 -0
  76. package/dist/lib/templates/security-scheme-template.js +342 -0
  77. package/dist/lib/templates/server-template.js +49 -0
  78. package/dist/lib/utils/color-utils.js +112 -0
  79. package/dist/lib/utils/common-utils.js +156 -0
  80. package/dist/lib/utils/schema-utils.js +743 -0
  81. package/dist/lib/utils/spec-parser.js +361 -0
  82. package/dist/lib/utils/theme.js +84 -0
  83. package/dist/lib/utils/xml/xml.js +239 -0
  84. package/package.json +19 -6
  85. package/dist/openapi-explorer.min.js.LICENSE.txt +0 -71
  86. package/dist/openapi-explorer.min.js.LICENSE.txt.gz +0 -0
  87. package/dist/openapi-explorer.min.js.gz +0 -0
  88. package/dist/openapi-explorer.min.js.map.gz +0 -0
  89. package/dist/report.html +0 -38
  90. package/src/components/api-request.js +0 -1244
  91. package/src/components/api-response.js +0 -340
  92. package/src/components/json-tree.js +0 -129
  93. package/src/components/schema-table.js +0 -250
  94. package/src/components/schema-tree.js +0 -280
  95. package/src/components/tag-input.js +0 -109
  96. package/src/styles/advanced-search-styles.js +0 -84
  97. package/src/styles/api-request-styles.js +0 -111
  98. package/src/styles/border-styles.js +0 -24
  99. package/src/styles/css/main.css +0 -24
  100. package/src/styles/endpoint-styles.js +0 -222
  101. package/src/styles/flex-styles.js +0 -15
  102. package/src/styles/font-styles.js +0 -266
  103. package/src/styles/info-styles.js +0 -20
  104. package/src/styles/input-styles.js +0 -236
  105. package/src/styles/nav-styles.js +0 -141
  106. package/src/styles/prism-styles.js +0 -107
  107. package/src/styles/schema-styles.js +0 -121
  108. package/src/styles/tab-styles.js +0 -44
  109. package/src/styles/table-styles.js +0 -48
  110. package/src/templates/advance-search-template.js +0 -81
  111. package/src/templates/callback-template.js +0 -63
  112. package/src/templates/code-samples-template.js +0 -35
  113. package/src/templates/components-template.js +0 -43
  114. package/src/templates/endpoint-template.js +0 -175
  115. package/src/templates/expanded-endpoint-template.js +0 -104
  116. package/src/templates/navbar-template.js +0 -175
  117. package/src/templates/overview-template.js +0 -58
  118. package/src/templates/responsiveViewMainBodyTemplate.js +0 -72
  119. package/src/templates/security-scheme-template.js +0 -487
  120. package/src/templates/server-template.js +0 -106
  121. package/src/utils/theme.js +0 -163
@@ -0,0 +1,191 @@
1
+ import { LitElement, html, css } from 'lit-element';
2
+ import { marked } from 'marked';
3
+ import { unsafeHTML } from 'lit-html/directives/unsafe-html';
4
+ import FontStyles from '../styles/font-styles';
5
+ import SchemaStyles from '../styles/schema-styles';
6
+ import BorderStyles from '../styles/border-styles';
7
+ export default class SchemaTree extends LitElement {
8
+ static get properties() {
9
+ return {
10
+ data: {
11
+ type: Object
12
+ },
13
+ schemaExpandLevel: {
14
+ type: Number,
15
+ attribute: 'schema-expand-level'
16
+ },
17
+ schemaDescriptionExpanded: {
18
+ type: String,
19
+ attribute: 'schema-description-expanded'
20
+ },
21
+ schemaHideReadOnly: {
22
+ type: String,
23
+ attribute: 'schema-hide-read-only'
24
+ },
25
+ schemaHideWriteOnly: {
26
+ type: String,
27
+ attribute: 'schema-hide-write-only'
28
+ }
29
+ };
30
+ }
31
+
32
+ connectedCallback() {
33
+ super.connectedCallback();
34
+
35
+ if (!this.schemaExpandLevel || this.schemaExpandLevel < 1) {
36
+ this.schemaExpandLevel = 99999;
37
+ }
38
+
39
+ if (!this.schemaDescriptionExpanded || !'true false'.includes(this.schemaDescriptionExpanded)) {
40
+ this.schemaDescriptionExpanded = 'true';
41
+ }
42
+
43
+ if (!this.schemaHideReadOnly || !'true false'.includes(this.schemaHideReadOnly)) {
44
+ this.schemaHideReadOnly = 'true';
45
+ }
46
+
47
+ if (!this.schemaHideWriteOnly || !'true false'.includes(this.schemaHideWriteOnly)) {
48
+ this.schemaHideWriteOnly = 'true';
49
+ }
50
+ }
51
+
52
+ static get styles() {
53
+ return [FontStyles, SchemaStyles, BorderStyles, css`.tree{min-height:30px;background:#333;padding:10px;color:#fff;font-size:var(--font-size-small);text-align:left;line-height:calc(var(--font-size-small) + 6px)}.collapsed-descr .tr{max-height:calc(var(--font-size-small) + 8px)}.collapsed-descr .m-markdown-small p{line-height:calc(var(--font-size-small) + 6px)}.tree .key{max-width:300px}.key.deprecated .key-label{text-decoration:line-through}.open-bracket{display:inline-block;padding:0 20px 0 0;cursor:pointer;border:1px solid transparent;border-radius:3px}.open-bracket:hover{color:var(--primary-color);background-color:var(--hover-color);border:1px solid var(--border-color)}.close-bracket{display:inline-block;font-family:var(--font-mono)}.tr.collapsed+.inside-bracket,.tr.collapsed+.inside-bracket+.close-bracket{display:none}.inside-bracket.array,.inside-bracket.object{border-left:1px dotted var(--border-color)}.inside-bracket.xxx-of{padding:5px 0;border-style:dotted;border-width:0 0 1px 0;border-color:var(--primary-color)}`];
54
+ }
55
+ /* eslint-disable indent */
56
+
57
+
58
+ render() {
59
+ return html` <div class="tree ${this.schemaDescriptionExpanded === 'true' ? 'expanded-descr' : 'collapsed-descr'}"> <div class="toolbar"> ${this.data && this.data['::description'] ? html`<span class="m-markdown" style="margin-block-start:0"> ${unsafeHTML(marked(this.data['::description'] || ''))}</span>` : html`<div>&nbsp;</div>`} <div class="toolbar-item" @click="${() => {
60
+ this.schemaDescriptionExpanded = this.schemaDescriptionExpanded === 'true' ? 'false' : 'true';
61
+ }}"> ${this.schemaDescriptionExpanded === 'true' ? 'Collapse descriptions' : 'Expand descriptions'} </div> </div> ${this.data ? html`${this.generateTree(this.data['::type'] === 'array' ? this.data['::props'] : this.data, this.data['::type'])}` : html`<span class="mono-font" style="color:var(--red)"> Schema not found </span>`} </div> `;
62
+ }
63
+
64
+ generateTree(data, dataType = 'object', key = '', description = '', schemaLevel = 0, indentLevel = 0) {
65
+ if (!data) {
66
+ return html`<div class="null" style="display:inline">null</div>`;
67
+ }
68
+
69
+ if (Object.keys(data).length === 0) {
70
+ return html`<span class="key object">${key}:{ }</span>`;
71
+ }
72
+
73
+ let keyLabel = '';
74
+ let keyDescr = '';
75
+
76
+ if (key.startsWith('::ONE~OF') || key.startsWith('::ANY~OF')) {
77
+ keyLabel = key.replace('::', '').replace('~', ' ');
78
+ } else if (key.startsWith('::OPTION')) {
79
+ const parts = key.split('~');
80
+ keyLabel = parts[1];
81
+ keyDescr = parts[2];
82
+ } else {
83
+ keyLabel = key;
84
+ }
85
+
86
+ const leftPadding = 16; // Min-width used for model keys: `td key `
87
+
88
+ const minFieldColWidth = 250 - indentLevel * leftPadding;
89
+ let openBracket = '';
90
+ let closeBracket = '';
91
+ const newSchemaLevel = data['::type'] && data['::type'].startsWith('xxx-of') ? schemaLevel : schemaLevel + 1; // const newIndentLevel = dataType === 'xxx-of-option' || data['::type'] === 'xxx-of-option' ? indentLevel : (indentLevel + 1);
92
+
93
+ const newIndentLevel = dataType === 'xxx-of-option' || data['::type'] === 'xxx-of-option' || key.startsWith('::OPTION') ? indentLevel : indentLevel + 1;
94
+
95
+ if (data['::type'] === 'object') {
96
+ if (dataType === 'array') {
97
+ if (schemaLevel < this.schemaExpandLevel) {
98
+ openBracket = html`<span class="open-bracket array-of-object" @click="${this.toggleObjectExpand}">[{</span>`;
99
+ } else {
100
+ openBracket = html`<span class="open-bracket array-of-object" @click="${this.toggleObjectExpand}">[{...}]</span>`;
101
+ }
102
+
103
+ closeBracket = '}]';
104
+ } else {
105
+ if (schemaLevel < this.schemaExpandLevel) {
106
+ openBracket = html`<span class="open-bracket object" @click="${this.toggleObjectExpand}">{</span>`;
107
+ } else {
108
+ openBracket = html`<span class="open-bracket object" @click="${this.toggleObjectExpand}">{...}</span>`;
109
+ }
110
+
111
+ closeBracket = '}';
112
+ }
113
+ } else if (data['::type'] === 'array') {
114
+ if (dataType === 'array') {
115
+ if (schemaLevel < this.schemaExpandLevel) {
116
+ openBracket = html`<span class="open-bracket array-of-array" @click="${this.toggleObjectExpand}">[[</span>`;
117
+ } else {
118
+ openBracket = html`<span class="open-bracket array-of-array" @click="${this.toggleObjectExpand}">[[...]]</span>`;
119
+ }
120
+
121
+ closeBracket = ']]';
122
+ } else {
123
+ if (schemaLevel < this.schemaExpandLevel) {
124
+ openBracket = html`<span class="open-bracket array" @click="${this.toggleObjectExpand}">[</span>`;
125
+ } else {
126
+ openBracket = html`<span class="open-bracket array" @click="${this.toggleObjectExpand}">[...]</span>`;
127
+ }
128
+
129
+ closeBracket = ']';
130
+ }
131
+ }
132
+
133
+ if (typeof data === 'object') {
134
+ const flags = data['::flags'] || {};
135
+
136
+ if (flags['🆁'] && this.schemaHideReadOnly === 'true') {
137
+ return undefined;
138
+ }
139
+
140
+ if (flags['🆆'] && this.schemaHideWriteOnly === 'true') {
141
+ return undefined;
142
+ }
143
+
144
+ const displayLine = [flags['🆁'] || flags['🆆'], description].filter(v => v).join(' ');
145
+ return html` <div class="tr ${schemaLevel < this.schemaExpandLevel || data['::type'] && data['::type'].startsWith('xxx-of') ? 'expanded' : 'collapsed'} ${data['::type'] || 'no-type-info'}"> <div class="td key ${data['::deprecated'] ? 'deprecated' : ''}" style="min-width:${minFieldColWidth}px"> ${data['::type'] === 'xxx-of-option' || data['::type'] === 'xxx-of-array' || key.startsWith('::OPTION') ? html`<span class="key-label xxx-of-key">${keyLabel}</span><span class="xxx-of-descr">${keyDescr}</span>` : keyLabel.endsWith('*') ? html`<span class="key-label">${keyLabel.substring(0, keyLabel.length - 1)}</span><span style="color:var(--red)">*</span>:` : keyLabel === '::props' || keyLabel === '::ARRAY~OF' ? '' : schemaLevel > 0 ? html`<span class="key-label">${keyLabel}:</span>` : ''} ${data['::type'] === 'xxx-of' && dataType === 'array' ? html`<span style="color:var(--primary-color)">ARRAY</span>` : ''} ${openBracket} </div> <div class="td key-descr"> <span class="m-markdown-small" style="font-family:var(--font-mono);vertical-align:middle" title="${flags['🆁'] && 'Read only attribute' || flags['🆆'] && 'Write only attribute' || ''}"> ${unsafeHTML(marked(displayLine))} </span> </div> </div> <div class="inside-bracket ${data['::type'] || 'no-type-info'}" style="padding-left:${data['::type'] === 'xxx-of-option' || data['::type'] === 'xxx-of-array' ? 0 : leftPadding}px"> ${Array.isArray(data) && data[0] ? html`${this.generateTree(data[0], 'xxx-of-option', '::ARRAY~OF', '', newSchemaLevel, newIndentLevel)}` : html` ${Object.keys(data).map(dataKey => dataKey.startsWith('::') && data[dataKey]['::type'] !== 'array' && data[dataKey]['::type'] !== 'object' ? '' : html`${this.generateTree(data[dataKey]['::type'] === 'array' ? data[dataKey]['::props'] : data[dataKey], data[dataKey]['::type'], dataKey, data[dataKey]['::description'], newSchemaLevel, newIndentLevel)}`)}`} </div> ${data['::type'] && data['::type'].includes('xxx-of') ? '' : html`<div class="close-bracket"> ${closeBracket} </div>`} `;
146
+ } // For Primitive Data types
147
+
148
+
149
+ const {
150
+ type,
151
+ readOrWriteOnly,
152
+ constraint,
153
+ defaultValue,
154
+ allowedValues,
155
+ pattern,
156
+ schemaDescription,
157
+ schemaTitle,
158
+ deprecated
159
+ } = JSON.parse(data);
160
+
161
+ if (readOrWriteOnly === '🆁' && this.schemaHideReadOnly === 'true') {
162
+ return undefined;
163
+ }
164
+
165
+ if (readOrWriteOnly === '🆆' && this.schemaHideWriteOnly === 'true') {
166
+ return undefined;
167
+ }
168
+
169
+ const dataTypeCss = type.replace(/┃.*/g, '').replace(/[^a-zA-Z0-9+]/g, '').substring(0, 4).toLowerCase();
170
+ return html` <div class="tr primitive"> <div class="td key ${deprecated ? 'deprecated' : ''}" style="min-width:${minFieldColWidth}px"> ${keyLabel.endsWith('*') ? html`<span class="key-label">${keyLabel.substring(0, keyLabel.length - 1)}</span><span style="color:var(--red)">*</span>:` : key.startsWith('::OPTION') ? html`<span class="key-label xxx-of-key">${keyLabel}</span><span class="xxx-of-descr">${keyDescr}</span>` : schemaLevel > 0 ? html`<span class="key-label">${keyLabel}:</span>` : ''} <span class="${dataTypeCss}"> ${dataType === 'array' ? `${type}[]` : `${type}`} </span> </div> <div class="td key-descr"> <span class="m-markdown-small" style="font-family:var(--font-mono);vertical-align:middle" title="${readOrWriteOnly === '🆁' && 'Read only attribute' || readOrWriteOnly === '🆆' && 'Write only attribute' || ''}"> ${unsafeHTML(marked(`${readOrWriteOnly && `${readOrWriteOnly} ` || ''}${dataType === 'array' && description || `${schemaTitle ? `**${schemaTitle}:**` : ''} ${schemaDescription}` || ''}`))} </span> ${constraint ? html`<div style="display:inline-block;line-break:anywhere;margin-right:8px"><span class="bold-text">Constraints: </span>${constraint}</div>` : ''} ${defaultValue ? html`<div style="display:inline-block;line-break:anywhere;margin-right:8px"><span class="bold-text">Default: </span>${defaultValue}</div>` : ''} ${allowedValues ? html`<div style="display:inline-block;line-break:anywhere;margin-right:8px"><span class="bold-text">Allowed: </span>${allowedValues}</div>` : ''} ${pattern ? html`<div style="display:inline-block;line-break:anywhere;margin-right:8px"><span class="bold-text">Pattern: </span>${pattern}</div>` : ''} </div> </div> `;
171
+ }
172
+ /* eslint-enable indent */
173
+
174
+
175
+ toggleObjectExpand(e) {
176
+ const rowEl = e.target.closest('.tr');
177
+
178
+ if (rowEl.classList.contains('expanded')) {
179
+ rowEl.classList.replace('expanded', 'collapsed');
180
+ e.target.innerHTML = e.target.classList.contains('array-of-object') ? '[{...}]' : e.target.classList.contains('array-of-array') ? '[[...]]' : e.target.classList.contains('array') ? '[...]' : '{...}';
181
+ } else {
182
+ rowEl.classList.replace('collapsed', 'expanded');
183
+ e.target.innerHTML = e.target.classList.contains('array-of-object') ? '[{' : e.target.classList.contains('array-of-array') ? '[[' : e.target.classList.contains('object') ? '{' : '[';
184
+ }
185
+ }
186
+
187
+ }
188
+
189
+ if (!customElements.get('openapi-explorer')) {
190
+ customElements.define('schema-tree', SchemaTree);
191
+ }
@@ -0,0 +1,67 @@
1
+ import { LitElement, html, css } from 'lit-element';
2
+ export default class TagInput extends LitElement {
3
+ render() {
4
+ const tagItemTemplate = html`${(this.value || []).filter(v => v.trim()).map(v => html`<span class="tag">${v}</span>`)}`;
5
+ return html` <div class="tags" tabindex="0"> ${tagItemTemplate} <input type="text" class="editor" @paste="${e => this.afterPaste(e)}" @keydown="${this.afterKeyDown}" placeholder="${this.placeholder || ''}"> </div> `;
6
+ }
7
+
8
+ static get properties() {
9
+ return {
10
+ placeholder: {
11
+ type: String
12
+ },
13
+ value: {
14
+ type: Array,
15
+ attribute: 'value'
16
+ }
17
+ };
18
+ }
19
+
20
+ connectedCallback() {
21
+ super.connectedCallback();
22
+
23
+ if (!Array.isArray(this.value)) {
24
+ this.value = this.value !== '' ? [this.value] : [];
25
+ }
26
+ }
27
+
28
+ attributeChangedCallback(name, oldVal, newVal) {
29
+ if (name === 'value') {
30
+ if (newVal && oldVal !== newVal) {
31
+ this.value = newVal.split(',').filter(v => v.trim());
32
+ }
33
+ }
34
+
35
+ super.attributeChangedCallback(name, oldVal, newVal);
36
+ }
37
+
38
+ afterPaste(e) {
39
+ const clipboardData = e.clipboardData || window.clipboardData;
40
+ const pastedData = clipboardData.getData('Text');
41
+ const pastedArray = pastedData && pastedData.split(',').filter(v => v.trim()) || [];
42
+ this.value = this.value.concat(pastedArray);
43
+ e.preventDefault();
44
+ }
45
+
46
+ afterKeyDown(e) {
47
+ if (e.keyCode === 13) {
48
+ e.stopPropagation();
49
+ e.preventDefault();
50
+ this.value = this.value.concat(e.target.value || []);
51
+ e.target.value = '';
52
+ } else if (e.keyCode === 8) {
53
+ if (e.target.value.length === 0) {
54
+ this.value = this.value.slice(0, -1);
55
+ }
56
+ }
57
+ }
58
+
59
+ static get styles() {
60
+ return [css`.tags{display:flex;flex-wrap:wrap;outline:0;padding:0;border-radius:var(--border-radius);border:1px solid var(--border-color);cursor:text;overflow:hidden;background:var(--input-bg)}.editor,.tag{padding:3px;margin:2px}.tag{border:1px solid var(--border-color);background-color:var(--bg3);color:var(--fg3);border-radius:var(--border-radius);word-break:break-all;font-size:var(--font-size-small)}.tag:hover~#cursor{display:block}.editor{flex:1;border:1px solid transparent;color:var(--fg);min-width:60px;outline:0;line-height:inherit;font-family:inherit;background:0 0;font-size:calc(var(--font-size-small) + 1px)}.editor::placeholder{color:var(--placeholder-color);opacity:1}`];
61
+ }
62
+
63
+ } // Register the element with the browser
64
+
65
+ if (!customElements.get('openapi-explorer')) {
66
+ customElements.define('tag-input', TagInput);
67
+ }
@@ -1,11 +1,11 @@
1
1
  import { checkForAuthToken } from './templates/security-scheme-template';
2
-
3
2
  export default class OpenapiExplorerOauthHandler extends HTMLElement {
4
3
  connectedCallback() {
5
4
  checkForAuthToken(true);
6
5
  }
6
+
7
7
  }
8
8
 
9
9
  if (!customElements.get('openapi-explorer-oauth-handler')) {
10
10
  customElements.define('openapi-explorer-oauth-handler', OpenapiExplorerOauthHandler);
11
- }
11
+ }