fdb2 1.0.36 โ 1.0.38
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/README.md +41 -0
- package/dist/public/explorer.css +533 -485
- package/dist/public/explorer.js +1277 -868
- package/dist/public/index.css +172 -34
- package/dist/public/index.js +103 -49
- package/dist/public/layout.js +3 -3
- package/dist/public/vue.js +1 -1
- package/dist/server/core/schema/__tests__/canonical.test.ts +195 -0
- package/dist/server/core/schema/__tests__/ddl-emitter.test.ts +456 -0
- package/dist/server/core/schema/__tests__/diff.test.ts +242 -0
- package/dist/server/core/schema/__tests__/roundtrip.property.test.ts +403 -0
- package/dist/server/core/schema/canonical.d.ts +50 -0
- package/dist/server/core/schema/canonical.d.ts.map +1 -0
- package/dist/server/core/schema/canonical.js +212 -0
- package/dist/server/core/schema/canonical.js.map +1 -0
- package/dist/server/core/schema/canonical.ts +223 -0
- package/dist/server/core/schema/ddl-emitter.d.ts +68 -0
- package/dist/server/core/schema/ddl-emitter.d.ts.map +1 -0
- package/dist/server/core/schema/ddl-emitter.js +813 -0
- package/dist/server/core/schema/ddl-emitter.js.map +1 -0
- package/dist/server/core/schema/ddl-emitter.ts +925 -0
- package/dist/server/core/schema/diff.d.ts +16 -0
- package/dist/server/core/schema/diff.d.ts.map +1 -0
- package/dist/server/core/schema/diff.js +115 -0
- package/dist/server/core/schema/diff.js.map +1 -0
- package/dist/server/core/schema/diff.ts +134 -0
- package/dist/server/core/schema/type-defaults.d.ts +27 -0
- package/dist/server/core/schema/type-defaults.d.ts.map +1 -0
- package/dist/server/core/schema/type-defaults.js +61 -0
- package/dist/server/core/schema/type-defaults.js.map +1 -0
- package/dist/server/core/schema/type-defaults.ts +79 -0
- package/dist/server/index.d.ts +1 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +347 -124
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.ts +336 -161
- package/dist/server/model/ddl-spec.d.ts +163 -0
- package/dist/server/model/ddl-spec.d.ts.map +1 -0
- package/dist/server/model/ddl-spec.js +32 -0
- package/dist/server/model/ddl-spec.js.map +1 -0
- package/dist/server/model/ddl-spec.ts +175 -0
- package/dist/server/service/connection.service.d.ts +20 -0
- package/dist/server/service/connection.service.d.ts.map +1 -1
- package/dist/server/service/connection.service.js +99 -25
- package/dist/server/service/connection.service.js.map +1 -1
- package/dist/server/service/connection.service.ts +104 -25
- package/dist/server/service/database/base.service.d.ts +0 -4
- package/dist/server/service/database/base.service.d.ts.map +1 -1
- package/dist/server/service/database/base.service.js.map +1 -1
- package/dist/server/service/database/base.service.ts +0 -5
- package/dist/server/service/database/clickhouse.service.d.ts +0 -5
- package/dist/server/service/database/clickhouse.service.d.ts.map +1 -1
- package/dist/server/service/database/clickhouse.service.js +0 -49
- package/dist/server/service/database/clickhouse.service.js.map +1 -1
- package/dist/server/service/database/clickhouse.service.ts +0 -52
- package/dist/server/service/database/cockroachdb.service.d.ts +0 -5
- package/dist/server/service/database/cockroachdb.service.d.ts.map +1 -1
- package/dist/server/service/database/cockroachdb.service.js +11 -142
- package/dist/server/service/database/cockroachdb.service.js.map +1 -1
- package/dist/server/service/database/cockroachdb.service.ts +11 -161
- package/dist/server/service/database/database.service.d.ts +55 -2
- package/dist/server/service/database/database.service.d.ts.map +1 -1
- package/dist/server/service/database/database.service.js +246 -4
- package/dist/server/service/database/database.service.js.map +1 -1
- package/dist/server/service/database/database.service.ts +295 -7
- package/dist/server/service/database/mongodb.service.d.ts +0 -6
- package/dist/server/service/database/mongodb.service.d.ts.map +1 -1
- package/dist/server/service/database/mongodb.service.js +0 -8
- package/dist/server/service/database/mongodb.service.js.map +1 -1
- package/dist/server/service/database/mongodb.service.ts +0 -8
- package/dist/server/service/database/mssql.service.d.ts +8 -4
- package/dist/server/service/database/mssql.service.d.ts.map +1 -1
- package/dist/server/service/database/mssql.service.js +27 -132
- package/dist/server/service/database/mssql.service.js.map +1 -1
- package/dist/server/service/database/mssql.service.ts +34 -156
- package/dist/server/service/database/mysql.service.d.ts +0 -4
- package/dist/server/service/database/mysql.service.d.ts.map +1 -1
- package/dist/server/service/database/mysql.service.js +11 -155
- package/dist/server/service/database/mysql.service.js.map +1 -1
- package/dist/server/service/database/mysql.service.ts +17 -184
- package/dist/server/service/database/oracle.service.d.ts +0 -4
- package/dist/server/service/database/oracle.service.d.ts.map +1 -1
- package/dist/server/service/database/oracle.service.js +11 -141
- package/dist/server/service/database/oracle.service.js.map +1 -1
- package/dist/server/service/database/oracle.service.ts +17 -166
- package/dist/server/service/database/postgres.service.d.ts +0 -4
- package/dist/server/service/database/postgres.service.d.ts.map +1 -1
- package/dist/server/service/database/postgres.service.js +11 -150
- package/dist/server/service/database/postgres.service.js.map +1 -1
- package/dist/server/service/database/postgres.service.ts +17 -174
- package/dist/server/service/database/sap.service.d.ts +0 -4
- package/dist/server/service/database/sap.service.d.ts.map +1 -1
- package/dist/server/service/database/sap.service.js +11 -137
- package/dist/server/service/database/sap.service.js.map +1 -1
- package/dist/server/service/database/sap.service.ts +11 -158
- package/dist/server/service/database/sql-type.helper.d.ts +28 -0
- package/dist/server/service/database/sql-type.helper.d.ts.map +1 -0
- package/dist/server/service/database/sql-type.helper.js +113 -0
- package/dist/server/service/database/sql-type.helper.js.map +1 -0
- package/dist/server/service/database/sql-type.helper.ts +115 -0
- package/dist/server/service/database/sqlite.service.d.ts +0 -5
- package/dist/server/service/database/sqlite.service.d.ts.map +1 -1
- package/dist/server/service/database/sqlite.service.js +11 -156
- package/dist/server/service/database/sqlite.service.js.map +1 -1
- package/dist/server/service/database/sqlite.service.ts +17 -183
- package/package.json +1 -1
- package/server.js +1 -1
package/README.md
CHANGED
|
@@ -78,6 +78,47 @@ http://localhost:9800
|
|
|
78
78
|
|
|
79
79
|
> ๐ก **Tip**: Default port is 9800, but if occupied, it will automatically select another available port
|
|
80
80
|
|
|
81
|
+
## ๐ Remote Database Access (HTTP Proxy)
|
|
82
|
+
|
|
83
|
+
Sometimes the database is **not reachable from your machine** โ it sits behind a corporate VPN, on a private subnet, or on a bastion host. In that case, run `fdb2` on a machine that *can* reach it and let your local client talk to that service over HTTP.
|
|
84
|
+
|
|
85
|
+
### How it works
|
|
86
|
+
Add a connection of type **Remote Proxy Service** and point it at the remote `fdb2` server. Once saved, **every database connection configured on that remote server is merged into your local connection list**, and every operation โ browsing schemas, running SQL, DDL, data CRUD, export, even editing or deleting the connection config โ is forwarded to the remote server and executed there.
|
|
87
|
+
|
|
88
|
+
The remote database password never leaves the remote server: it is **not** sent down to your client.
|
|
89
|
+
|
|
90
|
+
### Setup
|
|
91
|
+
1. **On the machine that can reach the database**, start the service and confirm it is reachable from your client:
|
|
92
|
+
```bash
|
|
93
|
+
fdb2 start -p 9800
|
|
94
|
+
# then open http://<remote-ip>:9800 in a browser to confirm
|
|
95
|
+
```
|
|
96
|
+
2. **On that remote service**, add the real database connections as usual.
|
|
97
|
+
3. **On your local client** (web UI or the VSCode extension) โ *Add Connection* โ **Type: Remote Proxy Service**:
|
|
98
|
+
|
|
99
|
+
| Field | Description |
|
|
100
|
+
| --- | --- |
|
|
101
|
+
| Service URL | Base URL of the remote `fdb2` server, e.g. `http://10.0.0.5:9800` โ the **root** of the service, without a trailing `/api`. |
|
|
102
|
+
| Access Token | Optional. Only needed when the remote server was started with `DB_TOOL_REMOTE_TOKEN`. |
|
|
103
|
+
|
|
104
|
+
4. **Save.** The remote connections now appear in your local connection list โ expand, query, and edit them exactly like local ones. Editing or deleting one of those remote connections applies to the remote server's configuration.
|
|
105
|
+
|
|
106
|
+
### Securing the remote service
|
|
107
|
+
```bash
|
|
108
|
+
# on the remote machine
|
|
109
|
+
DB_TOOL_REMOTE_TOKEN=your-secret fdb2 start -p 9800
|
|
110
|
+
```
|
|
111
|
+
Once set, the remote server rejects every HTTP request that does not carry the matching `x-db-tool-token` header, and answers `่ฟ็จ่ฎฟ้ฎไปค็ๆ ๆ` (*invalid remote access token*). Put the same value into the proxy connection's **Access Token** field.
|
|
112
|
+
|
|
113
|
+
> โ ๏ธ Set the token **only on the remote server**. Setting it on your own local server would also lock out your local browser/extension.
|
|
114
|
+
> The token guards the HTTP entry point only; in-process calls (e.g. from the VSCode extension host) are not affected.
|
|
115
|
+
|
|
116
|
+
### Notes & limits
|
|
117
|
+
- The remote service must be reachable from your client (LAN IP, VPN, SSH tunnel, โฆ).
|
|
118
|
+
- Proxying is **one level deep** โ a chain `A โ B โ C` is not supported.
|
|
119
|
+
- If the remote service is unreachable, the proxy entry exposes no connections and the connection detail panel shows the error.
|
|
120
|
+
- The remote server keeps its own database credentials; the local client only stores the proxy URL and token.
|
|
121
|
+
|
|
81
122
|
## ๐ VSCode Extension
|
|
82
123
|
|
|
83
124
|
Prefer staying inside the editor? `fdb2` also ships as a **VSCode extension** โ "Database Tool (fdb2)" โ that embeds the same UI directly in VSCode.
|