@tellaro/tql 1.5.0 → 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/dist/index.js +73 -65
- package/dist/src/builder.d.ts +6 -0
- package/dist/src/completionProvider.js +276 -195
- package/dist/src/complexityAnalyzer.js +41 -32
- package/dist/src/index.d.ts +3 -3
- package/dist/src/parser.d.ts +193 -1
- package/dist/src/parser.js +614 -127
- package/dist/src/semanticPreview.d.ts +23 -0
- package/dist/src/semanticPreview.js +111 -41
- package/dist/src/tokenizer.d.ts +134 -5
- package/dist/src/tokenizer.js +47 -30
- package/dist/src/types.d.ts +138 -10
- package/dist/src/validator.d.ts +235 -1
- package/dist/src/validator.js +468 -150
- package/dist/tql.css +1 -1
- package/dist/vue/TqlAutocomplete.vue.d.ts +24 -1
- package/dist/vue/TqlChart.vue.d.ts +19 -1
- package/dist/vue/TqlChart.vue.js +1 -1
- package/dist/vue/TqlInput.vue.d.ts +92 -1
- package/dist/vue/TqlInput.vue.js +1 -1
- package/dist/vue/TqlInput.vue2.js +282 -256
- package/dist/vue/components/TqlPreview.vue.d.ts +89 -2
- package/dist/vue/components/TqlPreview.vue.js +4 -4
- package/dist/vue/index.d.ts +1 -1
- package/dist/vue/useTqlInput.d.ts +38 -29
- package/package.json +3 -5
package/dist/tql.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.tql-autocomplete-dropdown[data-v-e29dd6a7]{position:fixed;top:var(--dropdown-top);left:var(--dropdown-left);z-index:9999;min-width:280px;max-width:450px;max-height:var(--dropdown-max-height);background:var(--surface-overlay, #fff);border:1px solid var(--surface-border, #ddd);border-radius:var(--border-radius, 6px);box-shadow:0 4px 16px #00000026;overflow:hidden;display:flex;flex-direction:column}.tql-completion-list[data-v-e29dd6a7]{overflow-y:auto;max-height:calc(var(--dropdown-max-height) - 60px)}.tql-completion-item[data-v-e29dd6a7]{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;cursor:pointer;transition:background-color .15s}.tql-completion-item[data-v-e29dd6a7]:hover,.tql-completion-item.selected[data-v-e29dd6a7]{background:var(--highlight-bg, #f0f0f0)}.tql-completion-icon[data-v-e29dd6a7]{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:4px;font-size:.75rem}.tql-completion-icon.tql-completion-kind-field[data-v-e29dd6a7]{background:var(--blue-100, #e3f2fd);color:var(--blue-600, #1e88e5)}.tql-completion-icon.tql-completion-kind-operator[data-v-e29dd6a7]{background:var(--pink-100, #fce4ec);color:var(--pink-600, #d81b60)}.tql-completion-icon.tql-completion-kind-value[data-v-e29dd6a7]{background:var(--green-100, #e8f5e9);color:var(--green-600, #43a047)}.tql-completion-icon.tql-completion-kind-keyword[data-v-e29dd6a7]{background:var(--purple-100, #f3e5f5);color:var(--purple-600, #8e24aa)}.tql-completion-icon.tql-completion-kind-snippet[data-v-e29dd6a7]{background:var(--orange-100, #fff3e0);color:var(--orange-600, #fb8c00)}.tql-completion-icon.tql-completion-kind-mutator[data-v-e29dd6a7]{background:var(--cyan-100, #e0f7fa);color:var(--cyan-600, #00acc1)}.tql-completion-icon.tql-completion-kind-aggregation[data-v-e29dd6a7]{background:var(--indigo-100, #e8eaf6);color:var(--indigo-600, #3949ab)}.tql-completion-icon.tql-completion-kind-logicalOp[data-v-e29dd6a7]{background:var(--yellow-100, #fffde7);color:var(--yellow-700, #fbc02d)}.tql-completion-icon.tql-completion-kind-typeHint[data-v-e29dd6a7]{background:var(--teal-100, #e0f2f1);color:var(--teal-600, #00897b)}.tql-completion-icon.tql-completion-kind-visualization[data-v-e29dd6a7]{background:var(--red-100, #ffebee);color:var(--red-600, #e53935)}.tql-completion-content[data-v-e29dd6a7]{flex:1;display:flex;flex-direction:column;min-width:0}.tql-completion-label[data-v-e29dd6a7]{font-family:Courier New,monospace;font-size:.875rem;font-weight:500;color:var(--text-color, #333);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tql-completion-detail[data-v-e29dd6a7]{font-size:.75rem;color:var(--text-color-secondary, #666);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tql-completion-kind-badge[data-v-e29dd6a7]{font-size:.625rem;padding:.125rem .375rem;background:var(--surface-100, #f5f5f5);border-radius:3px;color:var(--text-color-secondary, #666);text-transform:uppercase;letter-spacing:.025em}.tql-completion-docs[data-v-e29dd6a7]{padding:.5rem .75rem;border-top:1px solid var(--surface-border, #ddd);background:var(--surface-50, #fafafa);font-size:.75rem;color:var(--text-color-secondary, #666);max-height:60px;overflow-y:auto}.tql-preview[data-v-3521fa37]{font-family:ui-monospace,monospace;font-size:13px;line-height:1.5;padding:12px;border:1px solid var(--tql-preview-border, #e0e0e0);border-radius:6px;background:var(--tql-preview-bg, #fafafa)}.tql-preview--compact[data-v-3521fa37]{padding:8px;font-size:12px}.tql-preview--empty[data-v-3521fa37]{color:var(--tql-preview-muted, #888)}.tql-preview__empty[data-v-3521fa37]{text-align:center;padding:20px}.tql-preview__complexity[data-v-3521fa37]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.tql-preview__complexity-badge[data-v-3521fa37]{padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.tql-preview--low .tql-preview__complexity-badge[data-v-3521fa37]{background:var(--tql-preview-low-bg, #e8f5e9);color:var(--tql-preview-low-text, #2e7d32)}.tql-preview--medium .tql-preview__complexity-badge[data-v-3521fa37]{background:var(--tql-preview-medium-bg, #fff3e0);color:var(--tql-preview-medium-text, #e65100)}.tql-preview--high .tql-preview__complexity-badge[data-v-3521fa37]{background:var(--tql-preview-high-bg, #ffebee);color:var(--tql-preview-high-text, #c62828)}.tql-preview__field-count[data-v-3521fa37]{color:var(--tql-preview-muted, #666);font-size:12px}.tql-preview__warnings[data-v-3521fa37]{margin-bottom:12px}.tql-preview__warning[data-v-3521fa37]{display:flex;align-items:flex-start;gap:8px;padding:6px 8px;border-radius:4px;margin-bottom:4px}.tql-preview__warning--info[data-v-3521fa37]{background:var(--tql-preview-info-bg, #e3f2fd);color:var(--tql-preview-info-text, #1565c0)}.tql-preview__warning--warning[data-v-3521fa37]{background:var(--tql-preview-warning-bg, #fff3e0);color:var(--tql-preview-warning-text, #e65100)}.tql-preview__warning--error[data-v-3521fa37]{background:var(--tql-preview-error-bg, #ffebee);color:var(--tql-preview-error-text, #c62828)}.tql-preview__warning-icon[data-v-3521fa37]{font-weight:700;width:16px;text-align:center}.tql-preview__warning-text[data-v-3521fa37]{flex:1}.tql-preview__suggestions[data-v-3521fa37]{margin-bottom:12px;padding:8px;background:var(--tql-preview-suggestion-bg, #f5f5f5);border-radius:4px}.tql-preview__suggestions-header[data-v-3521fa37]{font-weight:600;margin-bottom:4px;color:var(--tql-preview-header, #333)}.tql-preview__suggestions-list[data-v-3521fa37]{margin:0;padding-left:20px}.tql-preview__suggestion[data-v-3521fa37]{color:var(--tql-preview-muted, #666);margin:2px 0}.tql-preview__tree[data-v-3521fa37]{margin-bottom:12px}.tql-preview__tree-header[data-v-3521fa37],.tql-preview__fields-header[data-v-3521fa37],.tql-preview__operators-header[data-v-3521fa37]{font-weight:600;margin-bottom:8px;color:var(--tql-preview-header, #333);font-size:12px;text-transform:uppercase;letter-spacing:.5px}.tql-preview__tree-content[data-v-3521fa37]{border:1px solid var(--tql-preview-tree-border, #e0e0e0);border-radius:4px;background:var(--tql-preview-tree-bg, #fff);padding:8px}.tql-preview__node[data-v-3521fa37]{margin:2px 0}.tql-preview__node-content[data-v-3521fa37]{display:flex;align-items:center;gap:4px;padding:2px 4px;border-radius:3px;cursor:pointer}.tql-preview__node-content[data-v-3521fa37]:hover{background:var(--tql-preview-node-hover, #f0f0f0)}.tql-preview__node-toggle[data-v-3521fa37]{width:16px;height:16px;border:none;background:var(--tql-preview-toggle-bg, #e0e0e0);border-radius:3px;cursor:pointer;font-size:12px;line-height:1;display:flex;align-items:center;justify-content:center}.tql-preview__node-toggle[data-v-3521fa37]:hover{background:var(--tql-preview-toggle-hover, #d0d0d0)}.tql-preview__node-toggle--leaf[data-v-3521fa37]{visibility:hidden}.tql-preview__node-type[data-v-3521fa37]{font-weight:600;color:var(--tql-preview-node-type, #666)}.tql-preview__node--and .tql-preview__node-type[data-v-3521fa37]{color:var(--tql-preview-and, #1976d2)}.tql-preview__node--or .tql-preview__node-type[data-v-3521fa37]{color:var(--tql-preview-or, #7b1fa2)}.tql-preview__node--not .tql-preview__node-type[data-v-3521fa37]{color:var(--tql-preview-not, #c62828)}.tql-preview__node--group .tql-preview__node-type[data-v-3521fa37]{color:var(--tql-preview-group, #666)}.tql-preview__node-label[data-v-3521fa37]{flex:1}.tql-preview__fields-list[data-v-3521fa37]{display:flex;flex-direction:column;gap:4px}.tql-preview__field[data-v-3521fa37]{display:flex;align-items:center;gap:6px;padding:4px 8px;background:var(--tql-preview-field-bg, #fff);border:1px solid var(--tql-preview-field-border, #e0e0e0);border-radius:4px;cursor:pointer}.tql-preview__field[data-v-3521fa37]:hover{background:var(--tql-preview-field-hover, #f5f5f5)}.tql-preview__field-name[data-v-3521fa37]{font-weight:600;color:var(--tql-preview-field-name, #1976d2)}.tql-preview__field-mutators[data-v-3521fa37]{color:var(--tql-preview-mutator, #7b1fa2)}.tql-preview__field-operator[data-v-3521fa37]{color:var(--tql-preview-operator, #666)}.tql-preview__field-value[data-v-3521fa37]{color:var(--tql-preview-value, #2e7d32)}.tql-preview__match-type[data-v-3521fa37]{margin-left:auto;padding:1px 4px;border-radius:3px;font-size:10px;font-weight:600;background:var(--tql-preview-match-bg, #f0f0f0)}.tql-preview__match-type--exact[data-v-3521fa37]{background:var(--tql-preview-match-exact-bg, #e8f5e9);color:var(--tql-preview-match-exact, #2e7d32)}.tql-preview__match-type--wildcard[data-v-3521fa37]{background:var(--tql-preview-match-wildcard-bg, #fff3e0);color:var(--tql-preview-match-wildcard, #e65100)}.tql-preview__match-type--regex[data-v-3521fa37]{background:var(--tql-preview-match-regex-bg, #fce4ec);color:var(--tql-preview-match-regex, #c2185b)}.tql-preview__match-type--range[data-v-3521fa37]{background:var(--tql-preview-match-range-bg, #e3f2fd);color:var(--tql-preview-match-range, #1565c0)}.tql-preview__match-type--cidr[data-v-3521fa37]{background:var(--tql-preview-match-cidr-bg, #f3e5f5);color:var(--tql-preview-match-cidr, #7b1fa2)}.tql-preview__operators-list[data-v-3521fa37]{display:flex;flex-wrap:wrap;gap:8px}.tql-preview__operator[data-v-3521fa37]{padding:2px 6px;background:var(--tql-preview-op-bg, #f0f0f0);border-radius:3px;font-size:11px}.tql-input-wrapper[data-v-b501ae88]{position:relative;display:flex;align-items:flex-start;border:1px solid var(--surface-border, #ddd);border-radius:var(--border-radius, 6px);background:var(--surface-ground, #fff);transition:border-color .2s,box-shadow .2s}.tql-input-wrapper.tql-input-has-min-height[data-v-b501ae88],.tql-input-wrapper.tql-input-has-min-height .tql-input[data-v-b501ae88]{min-height:var(--tql-min-height)}.tql-input-wrapper.tql-input-focused[data-v-b501ae88]{border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 2px var(--primary-100, rgba(59, 130, 246, .2))}.tql-input-wrapper.tql-input-invalid[data-v-b501ae88]{border-color:var(--red-500, #ef4444)}.tql-input-wrapper.tql-input-invalid.tql-input-focused[data-v-b501ae88]{box-shadow:0 0 0 2px var(--red-100, rgba(239, 68, 68, .2))}.tql-input-wrapper.tql-input-disabled[data-v-b501ae88]{opacity:.6;cursor:not-allowed}.tql-highlight-layer[data-v-b501ae88]{position:absolute;inset:0;padding:.5rem .75rem;pointer-events:none;white-space:pre-wrap;word-wrap:break-word;font-family:Courier New,monospace;font-size:.875rem;line-height:1.5;overflow:hidden}.tql-input-multiline .tql-highlight-layer[data-v-b501ae88]{overflow-y:auto}.tql-input[data-v-b501ae88]{flex:1;width:100%;padding:.5rem 8rem .5rem .75rem;border:none;background:transparent;font-family:Courier New,monospace;font-size:.875rem;line-height:1.5;color:var(--text-color, #333);outline:none;resize:none}.tql-input.tql-input-highlighted[data-v-b501ae88]{color:transparent;caret-color:var(--text-color, #333)}.tql-input[data-v-b501ae88]::placeholder{color:var(--text-color-secondary, #666);opacity:.7}.tql-input[data-v-b501ae88]:disabled{cursor:not-allowed}.tql-token-field[data-v-b501ae88]{color:var(--tql-field-color, var(--blue-600, #2563eb))}.tql-token-operator[data-v-b501ae88]{color:var(--tql-operator-color, var(--pink-600, #db2777));font-weight:500}.tql-token-logicalOp[data-v-b501ae88]{color:var(--tql-logical-color, var(--purple-600, #9333ea));font-weight:600}.tql-token-collectionOp[data-v-b501ae88]{color:var(--tql-collection-color, var(--indigo-600, #4f46e5));font-weight:600}.tql-token-string[data-v-b501ae88]{color:var(--tql-string-color, var(--green-600, #16a34a))}.tql-token-number[data-v-b501ae88]{color:var(--tql-number-color, var(--orange-600, #ea580c))}.tql-token-boolean[data-v-b501ae88]{color:var(--tql-boolean-color, var(--cyan-600, #0891b2))}.tql-token-null[data-v-b501ae88]{color:var(--tql-null-color, var(--gray-500, #6b7280));font-style:italic}.tql-token-mutator[data-v-b501ae88]{color:var(--tql-mutator-color, var(--teal-600, #0d9488));font-style:italic}.tql-token-aggregation[data-v-b501ae88]{color:var(--tql-aggregation-color, var(--indigo-600, #4f46e5))}.tql-token-keyword[data-v-b501ae88]{color:var(--tql-keyword-color, var(--purple-500, #a855f7))}.tql-token-typeHint[data-v-b501ae88]{color:var(--tql-typehint-color, var(--teal-500, #14b8a6))}.tql-token-visualization[data-v-b501ae88]{color:var(--tql-viz-color, var(--red-500, #ef4444))}.tql-token-arrow[data-v-b501ae88]{color:var(--tql-arrow-color, var(--gray-600, #4b5563));font-weight:600}.tql-token-doubleColon[data-v-b501ae88]{color:var(--tql-colon-color, var(--gray-500, #6b7280))}.tql-token-paren[data-v-b501ae88],.tql-token-bracket[data-v-b501ae88]{color:var(--tql-bracket-color, var(--gray-600, #4b5563))}.tql-token-error[data-v-b501ae88]{color:var(--tql-error-color, var(--red-600, #dc2626));text-decoration:wavy underline;text-decoration-color:var(--red-400, #f87171)}.tql-token-error-range[data-v-b501ae88]{background-color:var(--red-50, #fef2f2)}.tql-token-unknown[data-v-b501ae88]{color:var(--text-color-secondary, #666)}.tql-validation-icon[data-v-b501ae88]{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center}.tql-input-multiline .tql-validation-icon[data-v-b501ae88]{top:.75rem;transform:none}.tql-icon-valid[data-v-b501ae88]{color:var(--green-500, #22c55e)}.tql-icon-invalid[data-v-b501ae88]{color:var(--red-500, #ef4444)}.tql-icon-clickable[data-v-b501ae88]{cursor:pointer;transition:transform .2s}.tql-icon-clickable[data-v-b501ae88]:hover{transform:scale(1.2)}.tql-icon-clickable[data-v-b501ae88]:focus{outline:2px solid var(--primary-color, #3b82f6);outline-offset:2px;border-radius:50%}.tql-snippet-button[data-v-b501ae88]{position:absolute;right:2rem;top:50%;transform:translateY(-50%);padding:.25rem;border:none;background:transparent;color:var(--text-color-secondary, #666);cursor:pointer;border-radius:var(--border-radius, 6px);transition:color .2s,background-color .2s}.tql-snippet-button[data-v-b501ae88]:hover{color:var(--primary-color, #3b82f6);background:var(--surface-100, #f5f5f5)}.tql-input-multiline .tql-snippet-button[data-v-b501ae88]{top:.75rem;transform:none}.tql-input-resizable-textarea[data-v-b501ae88]{resize:vertical;min-height:80px}.tql-input-wrapper.tql-input-resizable[data-v-b501ae88]{height:auto}.tql-input-wrapper.tql-input-resizable .tql-highlight-layer[data-v-b501ae88]{height:100%}.tql-validation-messages[data-v-b501ae88]{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background:var(--surface-overlay, #fff);border:1px solid var(--red-200, #fecaca);border-radius:var(--border-radius, 6px);padding:.5rem;z-index:10;box-shadow:0 2px 8px #0000001a}.tql-input-autocomplete-active .tql-validation-messages[data-v-b501ae88],.tql-input-autocomplete-active .tql-complexity-warnings[data-v-b501ae88],.tql-input-autocomplete-active .tql-history-dropdown[data-v-b501ae88],.tql-input-autocomplete-active .tql-preview-panel[data-v-b501ae88]{display:none!important}.tql-error-message[data-v-b501ae88]{display:flex;align-items:flex-start;gap:.5rem;padding:.25rem 0;font-size:.75rem;color:var(--red-600, #dc2626)}.tql-error-message i[data-v-b501ae88]{margin-top:.125rem;font-size:.75rem}.tql-error-suggestion[data-v-b501ae88]{display:block;color:var(--text-color-secondary, #666);font-style:italic;margin-left:1.25rem}.sr-only[data-v-b501ae88]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tql-toolbar[data-v-b501ae88]{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.25rem}.tql-input-multiline .tql-toolbar[data-v-b501ae88]{top:.5rem;transform:none}.tql-toolbar-button[data-v-b501ae88]{padding:.25rem;border:none;background:transparent;color:var(--text-color-secondary, #666);cursor:pointer;border-radius:var(--border-radius, 4px);transition:color .2s,background-color .2s;display:flex;align-items:center;justify-content:center}.tql-toolbar-button[data-v-b501ae88]:hover{color:var(--primary-color, #3b82f6);background:var(--surface-100, #f5f5f5)}.tql-toolbar-button--active[data-v-b501ae88]{color:var(--primary-color, #3b82f6);background:var(--primary-100, rgba(59, 130, 246, .1))}.tql-validation-status[data-v-b501ae88]{display:flex;align-items:center}.tql-complexity-badge[data-v-b501ae88]{display:flex;align-items:center;gap:.25rem;padding:.125rem .5rem;border-radius:9999px;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.tql-complexity-low[data-v-b501ae88]{background:var(--green-100, #dcfce7);color:var(--green-700, #15803d)}.tql-complexity-medium[data-v-b501ae88]{background:var(--yellow-100, #fef9c3);color:var(--yellow-700, #a16207)}.tql-complexity-high[data-v-b501ae88]{background:var(--red-100, #fee2e2);color:var(--red-700, #b91c1c)}.tql-complexity-count[data-v-b501ae88]{display:inline-flex;align-items:center;justify-content:center;min-width:1rem;height:1rem;padding:0 .25rem;border-radius:9999px;background:currentColor;color:#fff;font-size:.5rem}.tql-complexity-low .tql-complexity-count[data-v-b501ae88]{background:var(--green-600, #16a34a)}.tql-complexity-medium .tql-complexity-count[data-v-b501ae88]{background:var(--yellow-600, #ca8a04)}.tql-complexity-high .tql-complexity-count[data-v-b501ae88]{background:var(--red-600, #dc2626)}.tql-complexity-warnings[data-v-b501ae88]{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background:var(--surface-overlay, #fff);border:1px solid var(--surface-border, #e0e0e0);border-radius:var(--border-radius, 6px);padding:.5rem;z-index:9;box-shadow:0 2px 8px #0000001a}.tql-complexity-warning[data-v-b501ae88]{display:flex;align-items:flex-start;gap:.5rem;padding:.25rem 0;font-size:.75rem}.tql-complexity-warning i[data-v-b501ae88]{margin-top:.125rem;font-size:.75rem}.tql-complexity-warning--info[data-v-b501ae88]{color:var(--blue-600, #2563eb)}.tql-complexity-warning--warning[data-v-b501ae88]{color:var(--yellow-600, #ca8a04)}.tql-complexity-warning--error[data-v-b501ae88]{color:var(--red-600, #dc2626)}.tql-complexity-suggestions[data-v-b501ae88]{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--surface-border, #e0e0e0)}.tql-complexity-suggestion[data-v-b501ae88]{display:flex;align-items:flex-start;gap:.5rem;padding:.25rem 0;font-size:.75rem;color:var(--text-color-secondary, #666)}.tql-complexity-suggestion i[data-v-b501ae88]{color:var(--yellow-500, #eab308)}.tql-history-dropdown[data-v-b501ae88]{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background:var(--surface-overlay, #fff);border:1px solid var(--surface-border, #e0e0e0);border-radius:var(--border-radius, 6px);z-index:20;box-shadow:0 4px 12px #00000026;max-height:300px;overflow:hidden;display:flex;flex-direction:column}.tql-history-header[data-v-b501ae88]{padding:.5rem;border-bottom:1px solid var(--surface-border, #e0e0e0)}.tql-history-search[data-v-b501ae88]{width:100%;padding:.375rem .5rem;border:1px solid var(--surface-border, #e0e0e0);border-radius:var(--border-radius, 4px);font-size:.75rem;outline:none}.tql-history-search[data-v-b501ae88]:focus{border-color:var(--primary-color, #3b82f6)}.tql-history-list[data-v-b501ae88]{overflow-y:auto;flex:1}.tql-history-item[data-v-b501ae88]{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem;cursor:pointer;border-bottom:1px solid var(--surface-50, #f9fafb);transition:background-color .15s}.tql-history-item[data-v-b501ae88]:hover{background:var(--surface-100, #f5f5f5)}.tql-history-item--favorite[data-v-b501ae88]{background:var(--yellow-50, #fefce8)}.tql-history-item--favorite[data-v-b501ae88]:hover{background:var(--yellow-100, #fef9c3)}.tql-history-favorite[data-v-b501ae88]{padding:.125rem;border:none;background:transparent;color:var(--text-color-secondary, #999);cursor:pointer;flex-shrink:0}.tql-history-favorite[data-v-b501ae88]:hover,.tql-history-item--favorite .tql-history-favorite[data-v-b501ae88]{color:var(--yellow-500, #eab308)}.tql-history-content[data-v-b501ae88]{flex:1;min-width:0}.tql-history-label[data-v-b501ae88]{font-size:.6875rem;font-weight:600;color:var(--text-color, #333);margin-bottom:.125rem}.tql-history-query[data-v-b501ae88]{font-family:Courier New,monospace;font-size:.6875rem;color:var(--text-color-secondary, #666);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tql-history-time[data-v-b501ae88]{font-size:.625rem;color:var(--text-color-secondary, #999);flex-shrink:0}.tql-history-empty[data-v-b501ae88]{padding:1rem;text-align:center;color:var(--text-color-secondary, #666);font-size:.75rem}.tql-preview-panel[data-v-b501ae88]{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background:var(--surface-overlay, #fff);border:1px solid var(--surface-border, #e0e0e0);border-radius:var(--border-radius, 6px);z-index:15;box-shadow:0 4px 12px #00000026;max-height:400px;overflow:hidden;display:flex;flex-direction:column}.tql-preview-header[data-v-b501ae88]{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-bottom:1px solid var(--surface-border, #e0e0e0);font-size:.75rem;font-weight:600;color:var(--text-color, #333)}.tql-preview-close[data-v-b501ae88]{padding:.125rem;border:none;background:transparent;color:var(--text-color-secondary, #666);cursor:pointer;border-radius:var(--border-radius, 4px)}.tql-preview-close[data-v-b501ae88]:hover{background:var(--surface-100, #f5f5f5);color:var(--text-color, #333)}.tql-preview-panel[data-v-b501ae88] .tql-preview{border:none;border-radius:0;max-height:350px;overflow-y:auto}.tql-validation-messages-portal{position:fixed;top:var(--tql-msg-top, 0);left:var(--tql-msg-left, 0);width:var(--tql-msg-width, auto);z-index:9998;background:var(--surface-overlay, #fff);border:2px solid var(--red-500, #ef4444);border-radius:var(--border-radius, 6px);padding:.5rem;box-shadow:0 4px 12px #00000026}.tql-validation-messages-portal .tql-error-message{display:flex;align-items:flex-start;gap:.5rem;padding:.25rem 0;font-size:.75rem;color:var(--red-600, #dc2626)}.tql-validation-messages-portal .tql-error-message i{margin-top:.125rem;font-size:.75rem}.tql-validation-messages-portal .tql-error-suggestion{display:block;color:var(--text-color-secondary, #6b7280);font-style:italic;margin-left:1.25rem}.tql-chart[data-v-dc05ff8b]{position:relative;width:100%;background:#12121e;border-radius:10px;overflow:hidden}.tql-chart__canvas[data-v-dc05ff8b]{display:block;width:100%!important;height:100%!important}.tql-chart__metric[data-v-dc05ff8b]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:8px}.tql-chart__metric-value[data-v-dc05ff8b]{font-size:3.5rem;font-weight:700;letter-spacing:-.02em;color:#818cf8;line-height:1}.tql-chart__metric-title[data-v-dc05ff8b]{font-size:.9rem;color:#888;letter-spacing:.03em}.tql-chart__tooltip[data-v-dc05ff8b]{position:absolute;opacity:0;pointer-events:auto;background:#1e1e2e;border:1px solid #333;border-radius:8px;padding:10px 14px;font-size:.8rem;transition:opacity .15s;z-index:10;transform:translate(-50%,-110%)}.tql-chart__tooltip[data-v-dc05ff8b] .tt-title{color:#e0e0e0;font-weight:600;margin-bottom:2px}.tql-chart__tooltip[data-v-dc05ff8b] .tt-val{color:#a0a0b0;margin-bottom:6px}.tql-chart__tooltip[data-v-dc05ff8b] .tt-link{color:#818cf8;text-decoration:none;font-weight:500}.tql-chart__tooltip[data-v-dc05ff8b] .tt-link:hover{text-decoration:underline}
|
|
1
|
+
.tql-autocomplete-dropdown[data-v-e29dd6a7]{position:fixed;top:var(--dropdown-top);left:var(--dropdown-left);z-index:9999;min-width:280px;max-width:450px;max-height:var(--dropdown-max-height);background:var(--surface-overlay, #fff);border:1px solid var(--surface-border, #ddd);border-radius:var(--border-radius, 6px);box-shadow:0 4px 16px #00000026;overflow:hidden;display:flex;flex-direction:column}.tql-completion-list[data-v-e29dd6a7]{overflow-y:auto;max-height:calc(var(--dropdown-max-height) - 60px)}.tql-completion-item[data-v-e29dd6a7]{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;cursor:pointer;transition:background-color .15s}.tql-completion-item[data-v-e29dd6a7]:hover,.tql-completion-item.selected[data-v-e29dd6a7]{background:var(--highlight-bg, #f0f0f0)}.tql-completion-icon[data-v-e29dd6a7]{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:4px;font-size:.75rem}.tql-completion-icon.tql-completion-kind-field[data-v-e29dd6a7]{background:var(--blue-100, #e3f2fd);color:var(--blue-600, #1e88e5)}.tql-completion-icon.tql-completion-kind-operator[data-v-e29dd6a7]{background:var(--pink-100, #fce4ec);color:var(--pink-600, #d81b60)}.tql-completion-icon.tql-completion-kind-value[data-v-e29dd6a7]{background:var(--green-100, #e8f5e9);color:var(--green-600, #43a047)}.tql-completion-icon.tql-completion-kind-keyword[data-v-e29dd6a7]{background:var(--purple-100, #f3e5f5);color:var(--purple-600, #8e24aa)}.tql-completion-icon.tql-completion-kind-snippet[data-v-e29dd6a7]{background:var(--orange-100, #fff3e0);color:var(--orange-600, #fb8c00)}.tql-completion-icon.tql-completion-kind-mutator[data-v-e29dd6a7]{background:var(--cyan-100, #e0f7fa);color:var(--cyan-600, #00acc1)}.tql-completion-icon.tql-completion-kind-aggregation[data-v-e29dd6a7]{background:var(--indigo-100, #e8eaf6);color:var(--indigo-600, #3949ab)}.tql-completion-icon.tql-completion-kind-logicalOp[data-v-e29dd6a7]{background:var(--yellow-100, #fffde7);color:var(--yellow-700, #fbc02d)}.tql-completion-icon.tql-completion-kind-typeHint[data-v-e29dd6a7]{background:var(--teal-100, #e0f2f1);color:var(--teal-600, #00897b)}.tql-completion-icon.tql-completion-kind-visualization[data-v-e29dd6a7]{background:var(--red-100, #ffebee);color:var(--red-600, #e53935)}.tql-completion-content[data-v-e29dd6a7]{flex:1;display:flex;flex-direction:column;min-width:0}.tql-completion-label[data-v-e29dd6a7]{font-family:Courier New,monospace;font-size:.875rem;font-weight:500;color:var(--text-color, #333);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tql-completion-detail[data-v-e29dd6a7]{font-size:.75rem;color:var(--text-color-secondary, #666);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tql-completion-kind-badge[data-v-e29dd6a7]{font-size:.625rem;padding:.125rem .375rem;background:var(--surface-100, #f5f5f5);border-radius:3px;color:var(--text-color-secondary, #666);text-transform:uppercase;letter-spacing:.025em}.tql-completion-docs[data-v-e29dd6a7]{padding:.5rem .75rem;border-top:1px solid var(--surface-border, #ddd);background:var(--surface-50, #fafafa);font-size:.75rem;color:var(--text-color-secondary, #666);max-height:60px;overflow-y:auto}.tql-preview[data-v-53107944]{font-family:ui-monospace,monospace;font-size:13px;line-height:1.5;padding:12px;border:1px solid var(--tql-preview-border, #e0e0e0);border-radius:6px;background:var(--tql-preview-bg, #fafafa)}.tql-preview--compact[data-v-53107944]{padding:8px;font-size:12px}.tql-preview--empty[data-v-53107944]{color:var(--tql-preview-muted, #888)}.tql-preview__empty[data-v-53107944]{text-align:center;padding:20px}.tql-preview__complexity[data-v-53107944]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.tql-preview__complexity-badge[data-v-53107944]{padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.tql-preview--low .tql-preview__complexity-badge[data-v-53107944]{background:var(--tql-preview-low-bg, #e8f5e9);color:var(--tql-preview-low-text, #2e7d32)}.tql-preview--medium .tql-preview__complexity-badge[data-v-53107944]{background:var(--tql-preview-medium-bg, #fff3e0);color:var(--tql-preview-medium-text, #e65100)}.tql-preview--high .tql-preview__complexity-badge[data-v-53107944]{background:var(--tql-preview-high-bg, #ffebee);color:var(--tql-preview-high-text, #c62828)}.tql-preview__field-count[data-v-53107944]{color:var(--tql-preview-muted, #666);font-size:12px}.tql-preview__warnings[data-v-53107944]{margin-bottom:12px}.tql-preview__warning[data-v-53107944]{display:flex;align-items:flex-start;gap:8px;padding:6px 8px;border-radius:4px;margin-bottom:4px}.tql-preview__warning--info[data-v-53107944]{background:var(--tql-preview-info-bg, #e3f2fd);color:var(--tql-preview-info-text, #1565c0)}.tql-preview__warning--warning[data-v-53107944]{background:var(--tql-preview-warning-bg, #fff3e0);color:var(--tql-preview-warning-text, #e65100)}.tql-preview__warning--error[data-v-53107944]{background:var(--tql-preview-error-bg, #ffebee);color:var(--tql-preview-error-text, #c62828)}.tql-preview__warning-icon[data-v-53107944]{font-weight:700;width:16px;text-align:center}.tql-preview__warning-text[data-v-53107944]{flex:1}.tql-preview__suggestions[data-v-53107944]{margin-bottom:12px;padding:8px;background:var(--tql-preview-suggestion-bg, #f5f5f5);border-radius:4px}.tql-preview__suggestions-header[data-v-53107944]{font-weight:600;margin-bottom:4px;color:var(--tql-preview-header, #333)}.tql-preview__suggestions-list[data-v-53107944]{margin:0;padding-left:20px}.tql-preview__suggestion[data-v-53107944]{color:var(--tql-preview-muted, #666);margin:2px 0}.tql-preview__tree[data-v-53107944]{margin-bottom:12px}.tql-preview__tree-header[data-v-53107944],.tql-preview__fields-header[data-v-53107944],.tql-preview__operators-header[data-v-53107944]{font-weight:600;margin-bottom:8px;color:var(--tql-preview-header, #333);font-size:12px;text-transform:uppercase;letter-spacing:.5px}.tql-preview__tree-content[data-v-53107944]{border:1px solid var(--tql-preview-tree-border, #e0e0e0);border-radius:4px;background:var(--tql-preview-tree-bg, #fff);padding:8px}.tql-preview__node[data-v-53107944]{margin:2px 0}.tql-preview__node-content[data-v-53107944]{display:flex;align-items:center;gap:4px;padding:2px 4px;border-radius:3px;cursor:pointer}.tql-preview__node-content[data-v-53107944]:hover{background:var(--tql-preview-node-hover, #f0f0f0)}.tql-preview__node-toggle[data-v-53107944]{width:16px;height:16px;border:none;background:var(--tql-preview-toggle-bg, #e0e0e0);border-radius:3px;cursor:pointer;font-size:12px;line-height:1;display:flex;align-items:center;justify-content:center}.tql-preview__node-toggle[data-v-53107944]:hover{background:var(--tql-preview-toggle-hover, #d0d0d0)}.tql-preview__node-toggle--leaf[data-v-53107944]{visibility:hidden}.tql-preview__node-type[data-v-53107944]{font-weight:600;color:var(--tql-preview-node-type, #666)}.tql-preview__node--and .tql-preview__node-type[data-v-53107944]{color:var(--tql-preview-and, #1976d2)}.tql-preview__node--or .tql-preview__node-type[data-v-53107944]{color:var(--tql-preview-or, #7b1fa2)}.tql-preview__node--not .tql-preview__node-type[data-v-53107944]{color:var(--tql-preview-not, #c62828)}.tql-preview__node--group .tql-preview__node-type[data-v-53107944]{color:var(--tql-preview-group, #666)}.tql-preview__node-label[data-v-53107944]{flex:1}.tql-preview__fields-list[data-v-53107944]{display:flex;flex-direction:column;gap:4px}.tql-preview__field[data-v-53107944]{display:flex;align-items:center;gap:6px;padding:4px 8px;background:var(--tql-preview-field-bg, #fff);border:1px solid var(--tql-preview-field-border, #e0e0e0);border-radius:4px;cursor:pointer}.tql-preview__field[data-v-53107944]:hover{background:var(--tql-preview-field-hover, #f5f5f5)}.tql-preview__field-name[data-v-53107944]{font-weight:600;color:var(--tql-preview-field-name, #1976d2)}.tql-preview__field-mutators[data-v-53107944]{color:var(--tql-preview-mutator, #7b1fa2)}.tql-preview__field-operator[data-v-53107944]{color:var(--tql-preview-operator, #666)}.tql-preview__field-value[data-v-53107944]{color:var(--tql-preview-value, #2e7d32)}.tql-preview__match-type[data-v-53107944]{margin-left:auto;padding:1px 4px;border-radius:3px;font-size:10px;font-weight:600;background:var(--tql-preview-match-bg, #f0f0f0)}.tql-preview__match-type--exact[data-v-53107944]{background:var(--tql-preview-match-exact-bg, #e8f5e9);color:var(--tql-preview-match-exact, #2e7d32)}.tql-preview__match-type--wildcard[data-v-53107944]{background:var(--tql-preview-match-wildcard-bg, #fff3e0);color:var(--tql-preview-match-wildcard, #e65100)}.tql-preview__match-type--regex[data-v-53107944]{background:var(--tql-preview-match-regex-bg, #fce4ec);color:var(--tql-preview-match-regex, #c2185b)}.tql-preview__match-type--range[data-v-53107944]{background:var(--tql-preview-match-range-bg, #e3f2fd);color:var(--tql-preview-match-range, #1565c0)}.tql-preview__match-type--cidr[data-v-53107944]{background:var(--tql-preview-match-cidr-bg, #f3e5f5);color:var(--tql-preview-match-cidr, #7b1fa2)}.tql-preview__operators-list[data-v-53107944]{display:flex;flex-wrap:wrap;gap:8px}.tql-preview__operator[data-v-53107944]{padding:2px 6px;background:var(--tql-preview-op-bg, #f0f0f0);border-radius:3px;font-size:11px}.tql-input-wrapper[data-v-d513cd4d]{position:relative;display:flex;align-items:flex-start;border:1px solid var(--surface-border, #ddd);border-radius:var(--border-radius, 6px);background:var(--surface-ground, #fff);transition:border-color .2s,box-shadow .2s}.tql-input-wrapper.tql-input-has-min-height[data-v-d513cd4d],.tql-input-wrapper.tql-input-has-min-height .tql-input[data-v-d513cd4d]{min-height:var(--tql-min-height)}.tql-input-wrapper.tql-input-focused[data-v-d513cd4d]{border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 2px var(--primary-100, rgba(59, 130, 246, .2))}.tql-input-wrapper.tql-input-invalid[data-v-d513cd4d]{border-color:var(--red-500, #ef4444)}.tql-input-wrapper.tql-input-invalid.tql-input-focused[data-v-d513cd4d]{box-shadow:0 0 0 2px var(--red-100, rgba(239, 68, 68, .2))}.tql-input-wrapper.tql-input-disabled[data-v-d513cd4d]{opacity:.6;cursor:not-allowed}.tql-highlight-layer[data-v-d513cd4d]{position:absolute;inset:0;box-sizing:border-box;padding:.5rem 8rem .5rem .75rem;border:none;pointer-events:none;white-space:pre;font-family:Courier New,monospace;font-size:.875rem;line-height:1.5;overflow:hidden}.tql-input-multiline .tql-highlight-layer[data-v-d513cd4d]{overflow-y:auto;white-space:pre-wrap;word-wrap:break-word}.tql-input[data-v-d513cd4d]{flex:1;width:100%;box-sizing:border-box;padding:.5rem 8rem .5rem .75rem;border:none;background:transparent;font-family:Courier New,monospace;font-size:.875rem;line-height:1.5;color:var(--text-color, #333);outline:none;resize:none}.tql-input.tql-input-highlighted[data-v-d513cd4d]{color:transparent;caret-color:var(--text-color, #333)}.tql-input[data-v-d513cd4d]::placeholder{color:var(--text-color-secondary, #666);opacity:.7}.tql-input[data-v-d513cd4d]:disabled{cursor:not-allowed}.tql-token-field[data-v-d513cd4d]{color:var(--tql-field-color, var(--blue-600, #2563eb))}.tql-token-operator[data-v-d513cd4d]{color:var(--tql-operator-color, var(--pink-600, #db2777));font-weight:500}.tql-token-logicalOp[data-v-d513cd4d]{color:var(--tql-logical-color, var(--purple-600, #9333ea));font-weight:600}.tql-token-collectionOp[data-v-d513cd4d]{color:var(--tql-collection-color, var(--indigo-600, #4f46e5));font-weight:600}.tql-token-string[data-v-d513cd4d]{color:var(--tql-string-color, var(--green-600, #16a34a))}.tql-token-number[data-v-d513cd4d]{color:var(--tql-number-color, var(--orange-600, #ea580c))}.tql-token-boolean[data-v-d513cd4d]{color:var(--tql-boolean-color, var(--cyan-600, #0891b2))}.tql-token-null[data-v-d513cd4d]{color:var(--tql-null-color, var(--gray-500, #6b7280));font-style:italic}.tql-token-mutator[data-v-d513cd4d]{color:var(--tql-mutator-color, var(--teal-600, #0d9488));font-style:italic}.tql-token-aggregation[data-v-d513cd4d]{color:var(--tql-aggregation-color, var(--indigo-600, #4f46e5))}.tql-token-keyword[data-v-d513cd4d]{color:var(--tql-keyword-color, var(--purple-500, #a855f7))}.tql-token-typeHint[data-v-d513cd4d]{color:var(--tql-typehint-color, var(--teal-500, #14b8a6))}.tql-token-visualization[data-v-d513cd4d]{color:var(--tql-viz-color, var(--red-500, #ef4444))}.tql-token-arrow[data-v-d513cd4d]{color:var(--tql-arrow-color, var(--gray-600, #4b5563));font-weight:600}.tql-token-doubleColon[data-v-d513cd4d]{color:var(--tql-colon-color, var(--gray-500, #6b7280))}.tql-token-paren[data-v-d513cd4d],.tql-token-bracket[data-v-d513cd4d]{color:var(--tql-bracket-color, var(--gray-600, #4b5563))}.tql-token-error[data-v-d513cd4d]{color:var(--tql-error-color, var(--red-600, #dc2626));text-decoration:wavy underline;text-decoration-color:var(--red-400, #f87171)}.tql-token-error-range[data-v-d513cd4d]{background-color:var(--red-50, #fef2f2)}.tql-token-unknown[data-v-d513cd4d]{color:var(--text-color-secondary, #666)}.tql-validation-icon[data-v-d513cd4d]{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center}.tql-input-multiline .tql-validation-icon[data-v-d513cd4d]{top:.75rem;transform:none}.tql-icon-valid[data-v-d513cd4d]{color:var(--green-500, #22c55e)}.tql-icon-invalid[data-v-d513cd4d]{color:var(--red-500, #ef4444)}.tql-icon-clickable[data-v-d513cd4d]{cursor:pointer;transition:transform .2s}.tql-icon-clickable[data-v-d513cd4d]:hover{transform:scale(1.2)}.tql-icon-clickable[data-v-d513cd4d]:focus{outline:2px solid var(--primary-color, #3b82f6);outline-offset:2px;border-radius:50%}.tql-snippet-button[data-v-d513cd4d]{position:absolute;right:2rem;top:50%;transform:translateY(-50%);padding:.25rem;border:none;background:transparent;color:var(--text-color-secondary, #666);cursor:pointer;border-radius:var(--border-radius, 6px);transition:color .2s,background-color .2s}.tql-snippet-button[data-v-d513cd4d]:hover{color:var(--primary-color, #3b82f6);background:var(--surface-100, #f5f5f5)}.tql-input-multiline .tql-snippet-button[data-v-d513cd4d]{top:.75rem;transform:none}.tql-input-resizable-textarea[data-v-d513cd4d]{resize:vertical;min-height:80px}.tql-input-wrapper.tql-input-resizable[data-v-d513cd4d]{height:auto}.tql-input-wrapper.tql-input-resizable .tql-highlight-layer[data-v-d513cd4d]{height:100%}.tql-validation-messages[data-v-d513cd4d]{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background:var(--surface-overlay, #fff);border:1px solid var(--red-200, #fecaca);border-radius:var(--border-radius, 6px);padding:.5rem;z-index:10;box-shadow:0 2px 8px #0000001a}.tql-input-autocomplete-active .tql-validation-messages[data-v-d513cd4d],.tql-input-autocomplete-active .tql-complexity-warnings[data-v-d513cd4d],.tql-input-autocomplete-active .tql-history-dropdown[data-v-d513cd4d],.tql-input-autocomplete-active .tql-preview-panel[data-v-d513cd4d]{display:none!important}.tql-error-message[data-v-d513cd4d]{display:flex;align-items:flex-start;gap:.5rem;padding:.25rem 0;font-size:.75rem;color:var(--red-600, #dc2626)}.tql-error-message i[data-v-d513cd4d]{margin-top:.125rem;font-size:.75rem}.tql-error-suggestion[data-v-d513cd4d]{display:block;color:var(--text-color-secondary, #666);font-style:italic;margin-left:1.25rem}.sr-only[data-v-d513cd4d]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tql-toolbar[data-v-d513cd4d]{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.25rem}.tql-input-multiline .tql-toolbar[data-v-d513cd4d]{top:.5rem;transform:none}.tql-toolbar-button[data-v-d513cd4d]{padding:.25rem;border:none;background:transparent;color:var(--text-color-secondary, #666);cursor:pointer;border-radius:var(--border-radius, 4px);transition:color .2s,background-color .2s;display:flex;align-items:center;justify-content:center}.tql-toolbar-button[data-v-d513cd4d]:hover{color:var(--primary-color, #3b82f6);background:var(--surface-100, #f5f5f5)}.tql-toolbar-button--active[data-v-d513cd4d]{color:var(--primary-color, #3b82f6);background:var(--primary-100, rgba(59, 130, 246, .1))}.tql-validation-status[data-v-d513cd4d]{display:flex;align-items:center}.tql-complexity-badge[data-v-d513cd4d]{display:flex;align-items:center;gap:.25rem;padding:.125rem .5rem;border-radius:9999px;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.tql-complexity-low[data-v-d513cd4d]{background:var(--green-100, #dcfce7);color:var(--green-700, #15803d)}.tql-complexity-medium[data-v-d513cd4d]{background:var(--yellow-100, #fef9c3);color:var(--yellow-700, #a16207)}.tql-complexity-high[data-v-d513cd4d]{background:var(--red-100, #fee2e2);color:var(--red-700, #b91c1c)}.tql-complexity-count[data-v-d513cd4d]{display:inline-flex;align-items:center;justify-content:center;min-width:1rem;height:1rem;padding:0 .25rem;border-radius:9999px;background:currentColor;color:#fff;font-size:.5rem}.tql-complexity-low .tql-complexity-count[data-v-d513cd4d]{background:var(--green-600, #16a34a)}.tql-complexity-medium .tql-complexity-count[data-v-d513cd4d]{background:var(--yellow-600, #ca8a04)}.tql-complexity-high .tql-complexity-count[data-v-d513cd4d]{background:var(--red-600, #dc2626)}.tql-complexity-warnings[data-v-d513cd4d]{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background:var(--surface-overlay, #fff);border:1px solid var(--surface-border, #e0e0e0);border-radius:var(--border-radius, 6px);padding:.5rem;z-index:9;box-shadow:0 2px 8px #0000001a}.tql-complexity-warning[data-v-d513cd4d]{display:flex;align-items:flex-start;gap:.5rem;padding:.25rem 0;font-size:.75rem}.tql-complexity-warning i[data-v-d513cd4d]{margin-top:.125rem;font-size:.75rem}.tql-complexity-warning--info[data-v-d513cd4d]{color:var(--blue-600, #2563eb)}.tql-complexity-warning--warning[data-v-d513cd4d]{color:var(--yellow-600, #ca8a04)}.tql-complexity-warning--error[data-v-d513cd4d]{color:var(--red-600, #dc2626)}.tql-complexity-suggestions[data-v-d513cd4d]{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--surface-border, #e0e0e0)}.tql-complexity-suggestion[data-v-d513cd4d]{display:flex;align-items:flex-start;gap:.5rem;padding:.25rem 0;font-size:.75rem;color:var(--text-color-secondary, #666)}.tql-complexity-suggestion i[data-v-d513cd4d]{color:var(--yellow-500, #eab308)}.tql-history-dropdown[data-v-d513cd4d]{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background:var(--surface-overlay, #fff);border:1px solid var(--surface-border, #e0e0e0);border-radius:var(--border-radius, 6px);z-index:20;box-shadow:0 4px 12px #00000026;max-height:300px;overflow:hidden;display:flex;flex-direction:column}.tql-history-header[data-v-d513cd4d]{padding:.5rem;border-bottom:1px solid var(--surface-border, #e0e0e0)}.tql-history-search[data-v-d513cd4d]{width:100%;padding:.375rem .5rem;border:1px solid var(--surface-border, #e0e0e0);border-radius:var(--border-radius, 4px);font-size:.75rem;outline:none}.tql-history-search[data-v-d513cd4d]:focus{border-color:var(--primary-color, #3b82f6)}.tql-history-list[data-v-d513cd4d]{overflow-y:auto;flex:1}.tql-history-item[data-v-d513cd4d]{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem;cursor:pointer;border-bottom:1px solid var(--surface-50, #f9fafb);transition:background-color .15s}.tql-history-item[data-v-d513cd4d]:hover{background:var(--surface-100, #f5f5f5)}.tql-history-item--favorite[data-v-d513cd4d]{background:var(--yellow-50, #fefce8)}.tql-history-item--favorite[data-v-d513cd4d]:hover{background:var(--yellow-100, #fef9c3)}.tql-history-favorite[data-v-d513cd4d]{padding:.125rem;border:none;background:transparent;color:var(--text-color-secondary, #999);cursor:pointer;flex-shrink:0}.tql-history-favorite[data-v-d513cd4d]:hover,.tql-history-item--favorite .tql-history-favorite[data-v-d513cd4d]{color:var(--yellow-500, #eab308)}.tql-history-content[data-v-d513cd4d]{flex:1;min-width:0}.tql-history-label[data-v-d513cd4d]{font-size:.6875rem;font-weight:600;color:var(--text-color, #333);margin-bottom:.125rem}.tql-history-query[data-v-d513cd4d]{font-family:Courier New,monospace;font-size:.6875rem;color:var(--text-color-secondary, #666);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tql-history-time[data-v-d513cd4d]{font-size:.625rem;color:var(--text-color-secondary, #999);flex-shrink:0}.tql-history-empty[data-v-d513cd4d]{padding:1rem;text-align:center;color:var(--text-color-secondary, #666);font-size:.75rem}.tql-preview-panel[data-v-d513cd4d]{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background:var(--surface-overlay, #fff);border:1px solid var(--surface-border, #e0e0e0);border-radius:var(--border-radius, 6px);z-index:15;box-shadow:0 4px 12px #00000026;max-height:400px;overflow:hidden;display:flex;flex-direction:column}.tql-preview-header[data-v-d513cd4d]{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-bottom:1px solid var(--surface-border, #e0e0e0);font-size:.75rem;font-weight:600;color:var(--text-color, #333)}.tql-preview-close[data-v-d513cd4d]{padding:.125rem;border:none;background:transparent;color:var(--text-color-secondary, #666);cursor:pointer;border-radius:var(--border-radius, 4px)}.tql-preview-close[data-v-d513cd4d]:hover{background:var(--surface-100, #f5f5f5);color:var(--text-color, #333)}.tql-preview-panel[data-v-d513cd4d] .tql-preview{border:none;border-radius:0;max-height:350px;overflow-y:auto}.tql-validation-messages-portal{position:fixed;top:var(--tql-msg-top, 0);left:var(--tql-msg-left, 0);width:var(--tql-msg-width, auto);z-index:9998;background:var(--surface-overlay, #fff);border:2px solid var(--red-500, #ef4444);border-radius:var(--border-radius, 6px);padding:.5rem;box-shadow:0 4px 12px #00000026}.tql-validation-messages-portal .tql-error-message{display:flex;align-items:flex-start;gap:.5rem;padding:.25rem 0;font-size:.75rem;color:var(--red-600, #dc2626)}.tql-validation-messages-portal .tql-error-message i{margin-top:.125rem;font-size:.75rem}.tql-validation-messages-portal .tql-error-suggestion{display:block;color:var(--text-color-secondary, #6b7280);font-style:italic;margin-left:1.25rem}.tql-chart[data-v-9f8e5a68]{position:relative;width:100%;background:#12121e;border-radius:10px;overflow:hidden}.tql-chart__canvas[data-v-9f8e5a68]{display:block;width:100%!important;height:100%!important}.tql-chart__metric[data-v-9f8e5a68]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:8px}.tql-chart__metric-value[data-v-9f8e5a68]{font-size:3.5rem;font-weight:700;letter-spacing:-.02em;color:#818cf8;line-height:1}.tql-chart__metric-title[data-v-9f8e5a68]{font-size:.9rem;color:#888;letter-spacing:.03em}.tql-chart__tooltip[data-v-9f8e5a68]{position:absolute;opacity:0;pointer-events:auto;background:#1e1e2e;border:1px solid #333;border-radius:8px;padding:10px 14px;font-size:.8rem;transition:opacity .15s;z-index:10;transform:translate(-50%,-110%)}.tql-chart__tooltip[data-v-9f8e5a68] .tt-title{color:#e0e0e0;font-weight:600;margin-bottom:2px}.tql-chart__tooltip[data-v-9f8e5a68] .tt-val{color:#a0a0b0;margin-bottom:6px}.tql-chart__tooltip[data-v-9f8e5a68] .tt-link{color:#818cf8;text-decoration:none;font-weight:500}.tql-chart__tooltip[data-v-9f8e5a68] .tt-link:hover{text-decoration:underline}
|
|
@@ -1,2 +1,25 @@
|
|
|
1
|
-
|
|
1
|
+
import { TqlCompletionItem } from '../src/types';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
id?: string;
|
|
4
|
+
items: TqlCompletionItem[];
|
|
5
|
+
visible: boolean;
|
|
6
|
+
position: {
|
|
7
|
+
top: number;
|
|
8
|
+
left: number;
|
|
9
|
+
};
|
|
10
|
+
maxHeight?: number;
|
|
11
|
+
};
|
|
12
|
+
declare const _default: import('vue').DefineComponent<__VLS_Props, {
|
|
13
|
+
selectCurrent: () => void;
|
|
14
|
+
moveUp: () => void;
|
|
15
|
+
moveDown: () => void;
|
|
16
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
17
|
+
select: (item: TqlCompletionItem) => any;
|
|
18
|
+
close: () => any;
|
|
19
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
20
|
+
onSelect?: ((item: TqlCompletionItem) => any) | undefined;
|
|
21
|
+
onClose?: (() => any) | undefined;
|
|
22
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
23
|
+
listRef: HTMLDivElement;
|
|
24
|
+
}, any>;
|
|
2
25
|
export default _default;
|
|
@@ -1,2 +1,20 @@
|
|
|
1
|
-
|
|
1
|
+
import { TqlStatsResult, DrilldownEvent } from '../src/chart/index';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
result: TqlStatsResult;
|
|
4
|
+
chartType?: string;
|
|
5
|
+
height?: string;
|
|
6
|
+
drilldown?: boolean;
|
|
7
|
+
};
|
|
8
|
+
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
9
|
+
drilldown: (event: DrilldownEvent) => any;
|
|
10
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
11
|
+
onDrilldown?: ((event: DrilldownEvent) => any) | undefined;
|
|
12
|
+
}>, {
|
|
13
|
+
drilldown: boolean;
|
|
14
|
+
chartType: string;
|
|
15
|
+
height: string;
|
|
16
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
17
|
+
canvasRef: HTMLCanvasElement;
|
|
18
|
+
tooltipRef: HTMLDivElement;
|
|
19
|
+
}, HTMLDivElement>;
|
|
2
20
|
export default _default;
|
package/dist/vue/TqlChart.vue.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./TqlChart.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import t from "../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-
|
|
4
|
+
const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-9f8e5a68"]]);
|
|
5
5
|
export {
|
|
6
6
|
m as default
|
|
7
7
|
};
|
|
@@ -1,2 +1,93 @@
|
|
|
1
|
-
|
|
1
|
+
import { TqlCompletionItem, TqlInputProps, TqlParseResult, TqlSnippet, TqlToken, TqlValidationResult } from '../src/types';
|
|
2
|
+
declare const _default: import('vue').DefineComponent<TqlInputProps, {
|
|
3
|
+
focus(): void;
|
|
4
|
+
blur(): void;
|
|
5
|
+
validate(): TqlValidationResult;
|
|
6
|
+
insertText(text: string): void;
|
|
7
|
+
insertSnippet(snippet: TqlSnippet): void;
|
|
8
|
+
getTokenAtPosition(pos: number): TqlToken | null;
|
|
9
|
+
getCursorPosition(): number;
|
|
10
|
+
setCursorPosition(pos: number): void;
|
|
11
|
+
isValid: boolean;
|
|
12
|
+
hasErrors: boolean;
|
|
13
|
+
errors: import('../src').TqlParseError[];
|
|
14
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
15
|
+
"update:modelValue": (value: string) => any;
|
|
16
|
+
validation: (result: TqlValidationResult) => any;
|
|
17
|
+
parse: (result: TqlParseResult) => any;
|
|
18
|
+
submit: (value: string) => any;
|
|
19
|
+
}, string, import('vue').PublicProps, Readonly<TqlInputProps> & Readonly<{
|
|
20
|
+
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
21
|
+
onValidation?: ((result: TqlValidationResult) => any) | undefined;
|
|
22
|
+
onParse?: ((result: TqlParseResult) => any) | undefined;
|
|
23
|
+
onSubmit?: ((value: string) => any) | undefined;
|
|
24
|
+
}>, {
|
|
25
|
+
disabled: boolean;
|
|
26
|
+
placeholder: string;
|
|
27
|
+
showComplexity: boolean;
|
|
28
|
+
validateOnInput: boolean;
|
|
29
|
+
debounceMs: number;
|
|
30
|
+
autocomplete: boolean;
|
|
31
|
+
readonly: boolean;
|
|
32
|
+
rows: number;
|
|
33
|
+
multiline: boolean;
|
|
34
|
+
showValidation: boolean;
|
|
35
|
+
showSnippetButton: boolean;
|
|
36
|
+
syntaxHighlighting: boolean;
|
|
37
|
+
alwaysShowErrors: boolean;
|
|
38
|
+
resizable: boolean;
|
|
39
|
+
minHeight: string;
|
|
40
|
+
showHistory: boolean;
|
|
41
|
+
showPreview: boolean;
|
|
42
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
43
|
+
wrapperRef: HTMLDivElement;
|
|
44
|
+
highlightRef: HTMLDivElement;
|
|
45
|
+
inputRef: HTMLInputElement;
|
|
46
|
+
autocompleteRef: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
|
|
47
|
+
id?: string;
|
|
48
|
+
items: TqlCompletionItem[];
|
|
49
|
+
visible: boolean;
|
|
50
|
+
position: {
|
|
51
|
+
top: number;
|
|
52
|
+
left: number;
|
|
53
|
+
};
|
|
54
|
+
maxHeight?: number;
|
|
55
|
+
}> & Readonly<{
|
|
56
|
+
onSelect?: ((item: TqlCompletionItem) => any) | undefined;
|
|
57
|
+
onClose?: (() => any) | undefined;
|
|
58
|
+
}>, {
|
|
59
|
+
selectCurrent: () => void;
|
|
60
|
+
moveUp: () => void;
|
|
61
|
+
moveDown: () => void;
|
|
62
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
63
|
+
select: (item: TqlCompletionItem) => any;
|
|
64
|
+
close: () => any;
|
|
65
|
+
}, import('vue').PublicProps, {}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
|
|
66
|
+
listRef: HTMLDivElement;
|
|
67
|
+
}, any, import('vue').ComponentProvideOptions, {
|
|
68
|
+
P: {};
|
|
69
|
+
B: {};
|
|
70
|
+
D: {};
|
|
71
|
+
C: {};
|
|
72
|
+
M: {};
|
|
73
|
+
Defaults: {};
|
|
74
|
+
}, Readonly<{
|
|
75
|
+
id?: string;
|
|
76
|
+
items: TqlCompletionItem[];
|
|
77
|
+
visible: boolean;
|
|
78
|
+
position: {
|
|
79
|
+
top: number;
|
|
80
|
+
left: number;
|
|
81
|
+
};
|
|
82
|
+
maxHeight?: number;
|
|
83
|
+
}> & Readonly<{
|
|
84
|
+
onSelect?: ((item: TqlCompletionItem) => any) | undefined;
|
|
85
|
+
onClose?: (() => any) | undefined;
|
|
86
|
+
}>, {
|
|
87
|
+
selectCurrent: () => void;
|
|
88
|
+
moveUp: () => void;
|
|
89
|
+
moveDown: () => void;
|
|
90
|
+
}, {}, {}, {}, {}> | null;
|
|
91
|
+
validationMessagesRef: HTMLDivElement;
|
|
92
|
+
}, HTMLDivElement>;
|
|
2
93
|
export default _default;
|
package/dist/vue/TqlInput.vue.js
CHANGED
|
@@ -2,7 +2,7 @@ import o from "./TqlInput.vue2.js";
|
|
|
2
2
|
/* empty css */
|
|
3
3
|
/* empty css */
|
|
4
4
|
import t from "../_virtual/_plugin-vue_export-helper.js";
|
|
5
|
-
const _ = /* @__PURE__ */ t(o, [["__scopeId", "data-v-
|
|
5
|
+
const _ = /* @__PURE__ */ t(o, [["__scopeId", "data-v-d513cd4d"]]);
|
|
6
6
|
export {
|
|
7
7
|
_ as default
|
|
8
8
|
};
|