preview(drop(node))}
+ ref={containerRef}
className={`tab-item ${isActive ? 'tab-item-selected' : ''} ${isDragging ? 'dragging' : ''} ${tab.isPinned ? 'pinned' : ''}`}
onClick={() => handleTabClick(tab.id)}
>
-
+
{isEditing ? (
)
+ReactDOM.createRoot(document.getElementById('root')!).render(
+
+ Trino Query Editor - Example app
+
+
+)
diff --git a/precise/vite.config.ts b/precise/vite.config.ts
index d12a4f7..2675219 100644
--- a/precise/vite.config.ts
+++ b/precise/vite.config.ts
@@ -4,7 +4,6 @@ import react from '@vitejs/plugin-react'
// Used for local debugging against Trino also running on localhost at port 8080:
// https://vitejs.dev/config/
export default defineConfig({
- base: '/query/',
plugins: [react()],
server: {
proxy: {
@@ -15,6 +14,34 @@ export default defineConfig({
},
},
},
+ build: {
+ lib: {
+ entry: "src/index.ts",
+ name: "QueryEditor",
+ fileName: "index"
+ },
+ rollupOptions: {
+ // Don’t bundle peer dependencies like React
+ external: [
+ "react",
+ "react-dom",
+ "react-dom/client",
+ "react-dom/server",
+ "react/jsx-runtime",
+ "react/jsx-dev-runtime"
+ ],
+ output: {
+ globals: {
+ react: "React",
+ "react-dom": "ReactDOM",
+ "react-dom/client": "ReactDOMClient",
+ "react-dom/server": "ReactDOMServer",
+ "react/jsx-runtime": "jsxRuntime",
+ "react/jsx-dev-runtime": "jsxDevRuntime"
+ }
+ }
+ }
+ },
});
// Used for integration into Trino
@@ -22,4 +49,4 @@ export default defineConfig({
// export default defineConfig({
// base: '/query/', // This tells your app it's served from the /query/ path
// plugins: [react()]
-// });
\ No newline at end of file
+// });