fdb2 1.0.11 → 1.0.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.
- package/bin/fdb2.js +43 -33
- package/dist/public/explorer.css +185 -103
- package/dist/public/explorer.js +855 -896
- package/dist/public/index.css +30 -2
- package/dist/public/index.js +61 -16
- package/dist/public/vue.js +18 -25
- package/dist/server/service/database/sqlite.service.d.ts +0 -1
- package/dist/server/service/database/sqlite.service.d.ts.map +1 -1
- package/dist/server/service/database/sqlite.service.js +0 -1
- package/dist/server/service/database/sqlite.service.js.map +1 -1
- package/dist/server/service/database/sqlite.service.ts +0 -1
- package/package.json +22 -20
- package/packages/vscode/package.json +3 -1
- package/packages/vscode/src/database-services/sqlite.service.ts +0 -1
- package/server/service/database/sqlite.service.ts +0 -1
- package/src/components/dataGrid/index.vue +62 -4
- package/src/platform/database/components/database-detail.vue +31 -6
- package/src/platform/database/components/table-data-grid.vue +273 -0
- package/src/platform/database/components/table-detail.vue +64 -267
package/dist/public/explorer.css
CHANGED
|
@@ -1077,13 +1077,13 @@ to {
|
|
|
1077
1077
|
background: #94a3b8;
|
|
1078
1078
|
}
|
|
1079
1079
|
|
|
1080
|
-
.database-detail[data-v-
|
|
1080
|
+
.database-detail[data-v-608988e0] {
|
|
1081
1081
|
width: 100%;
|
|
1082
1082
|
height: 100%;
|
|
1083
1083
|
display: flex;
|
|
1084
1084
|
flex-direction: column;
|
|
1085
1085
|
}
|
|
1086
|
-
.sql-executor-section[data-v-
|
|
1086
|
+
.sql-executor-section[data-v-608988e0] {
|
|
1087
1087
|
margin: 15px 0;
|
|
1088
1088
|
padding: 15px;
|
|
1089
1089
|
background-color: #f8f9fa;
|
|
@@ -1094,7 +1094,7 @@ to {
|
|
|
1094
1094
|
}
|
|
1095
1095
|
|
|
1096
1096
|
/* 加载状态样式 */
|
|
1097
|
-
.loading-state[data-v-
|
|
1097
|
+
.loading-state[data-v-608988e0] {
|
|
1098
1098
|
display: flex;
|
|
1099
1099
|
flex-direction: column;
|
|
1100
1100
|
align-items: center;
|
|
@@ -1102,31 +1102,31 @@ to {
|
|
|
1102
1102
|
padding: 40px 0;
|
|
1103
1103
|
color: #6c757d;
|
|
1104
1104
|
}
|
|
1105
|
-
.loading-state .spinner-border[data-v-
|
|
1105
|
+
.loading-state .spinner-border[data-v-608988e0] {
|
|
1106
1106
|
margin-bottom: 15px;
|
|
1107
1107
|
color: #0d6efd;
|
|
1108
1108
|
}
|
|
1109
|
-
.loading-state p[data-v-
|
|
1109
|
+
.loading-state p[data-v-608988e0] {
|
|
1110
1110
|
margin: 0;
|
|
1111
1111
|
font-size: 14px;
|
|
1112
1112
|
}
|
|
1113
|
-
.database-header[data-v-
|
|
1113
|
+
.database-header[data-v-608988e0] {
|
|
1114
1114
|
padding: 1rem;
|
|
1115
1115
|
background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
|
|
1116
1116
|
border-bottom: 1px solid #e2e8f0;
|
|
1117
1117
|
}
|
|
1118
|
-
.database-header-content[data-v-
|
|
1118
|
+
.database-header-content[data-v-608988e0] {
|
|
1119
1119
|
display: flex;
|
|
1120
1120
|
justify-content: space-between;
|
|
1121
1121
|
align-items: center;
|
|
1122
1122
|
gap: 2rem;
|
|
1123
1123
|
}
|
|
1124
|
-
.database-info[data-v-
|
|
1124
|
+
.database-info[data-v-608988e0] {
|
|
1125
1125
|
display: flex;
|
|
1126
1126
|
align-items: center;
|
|
1127
1127
|
gap: 1rem;
|
|
1128
1128
|
}
|
|
1129
|
-
.database-icon[data-v-
|
|
1129
|
+
.database-icon[data-v-608988e0] {
|
|
1130
1130
|
width: 60px;
|
|
1131
1131
|
height: 60px;
|
|
1132
1132
|
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
|
@@ -1137,16 +1137,16 @@ to {
|
|
|
1137
1137
|
color: white;
|
|
1138
1138
|
font-size: 1.5rem;
|
|
1139
1139
|
}
|
|
1140
|
-
.database-meta h4[data-v-
|
|
1140
|
+
.database-meta h4[data-v-608988e0] {
|
|
1141
1141
|
margin: 0 0 0.5rem 0;
|
|
1142
1142
|
color: #1e293b;
|
|
1143
1143
|
font-weight: 600;
|
|
1144
1144
|
}
|
|
1145
|
-
.connection-info[data-v-
|
|
1145
|
+
.connection-info[data-v-608988e0] {
|
|
1146
1146
|
display: flex;
|
|
1147
1147
|
gap: 0.75rem;
|
|
1148
1148
|
}
|
|
1149
|
-
.connection-name[data-v-
|
|
1149
|
+
.connection-name[data-v-608988e0] {
|
|
1150
1150
|
background: rgba(102, 126, 234, 0.1);
|
|
1151
1151
|
color: #667eea;
|
|
1152
1152
|
padding: 0.25rem 0.5rem;
|
|
@@ -1154,7 +1154,7 @@ to {
|
|
|
1154
1154
|
font-size: 0.875rem;
|
|
1155
1155
|
font-weight: 500;
|
|
1156
1156
|
}
|
|
1157
|
-
.connection-type[data-v-
|
|
1157
|
+
.connection-type[data-v-608988e0] {
|
|
1158
1158
|
background: #f1f5f9;
|
|
1159
1159
|
color: #64748b;
|
|
1160
1160
|
padding: 0.25rem 0.5rem;
|
|
@@ -1162,36 +1162,36 @@ to {
|
|
|
1162
1162
|
font-size: 0.875rem;
|
|
1163
1163
|
font-weight: 500;
|
|
1164
1164
|
}
|
|
1165
|
-
.database-stats[data-v-
|
|
1165
|
+
.database-stats[data-v-608988e0] {
|
|
1166
1166
|
display: flex;
|
|
1167
1167
|
gap: 2rem;
|
|
1168
1168
|
}
|
|
1169
|
-
.stat-item[data-v-
|
|
1169
|
+
.stat-item[data-v-608988e0] {
|
|
1170
1170
|
text-align: center;
|
|
1171
1171
|
}
|
|
1172
|
-
.stat-value[data-v-
|
|
1172
|
+
.stat-value[data-v-608988e0] {
|
|
1173
1173
|
font-size: 1.5rem;
|
|
1174
1174
|
font-weight: 700;
|
|
1175
1175
|
color: #1e293b;
|
|
1176
1176
|
margin-bottom: 0.25rem;
|
|
1177
1177
|
}
|
|
1178
|
-
.stat-label[data-v-
|
|
1178
|
+
.stat-label[data-v-608988e0] {
|
|
1179
1179
|
font-size: 0.875rem;
|
|
1180
1180
|
color: #64748b;
|
|
1181
1181
|
font-weight: 500;
|
|
1182
1182
|
}
|
|
1183
|
-
.database-tabs[data-v-
|
|
1183
|
+
.database-tabs[data-v-608988e0] {
|
|
1184
1184
|
flex: 1;
|
|
1185
1185
|
overflow: hidden;
|
|
1186
1186
|
display: flex;
|
|
1187
1187
|
flex-direction: column;
|
|
1188
1188
|
}
|
|
1189
|
-
.nav-tabs[data-v-
|
|
1189
|
+
.nav-tabs[data-v-608988e0] {
|
|
1190
1190
|
background: #f8fafc;
|
|
1191
1191
|
border-bottom: 1px solid #e2e8f0;
|
|
1192
1192
|
padding: 0 1.5rem;
|
|
1193
1193
|
}
|
|
1194
|
-
.nav-link[data-v-
|
|
1194
|
+
.nav-link[data-v-608988e0] {
|
|
1195
1195
|
border: none;
|
|
1196
1196
|
background: transparent;
|
|
1197
1197
|
color: #64748b;
|
|
@@ -1199,35 +1199,35 @@ to {
|
|
|
1199
1199
|
font-weight: 500;
|
|
1200
1200
|
transition: all 0.2s ease;
|
|
1201
1201
|
}
|
|
1202
|
-
.nav-link[data-v-
|
|
1202
|
+
.nav-link[data-v-608988e0]:hover {
|
|
1203
1203
|
color: #667eea;
|
|
1204
1204
|
background: rgba(102, 126, 234, 0.1);
|
|
1205
1205
|
}
|
|
1206
|
-
.nav-link.active[data-v-
|
|
1206
|
+
.nav-link.active[data-v-608988e0] {
|
|
1207
1207
|
color: #667eea;
|
|
1208
1208
|
background: white;
|
|
1209
1209
|
border-bottom: 2px solid #667eea;
|
|
1210
1210
|
}
|
|
1211
|
-
.tab-content[data-v-
|
|
1211
|
+
.tab-content[data-v-608988e0] {
|
|
1212
1212
|
overflow-y: auto;
|
|
1213
1213
|
flex: 1;
|
|
1214
1214
|
display: flex;
|
|
1215
1215
|
flex-direction: column;
|
|
1216
1216
|
height: 100%;
|
|
1217
1217
|
}
|
|
1218
|
-
.tab-panel[data-v-
|
|
1218
|
+
.tab-panel[data-v-608988e0] {
|
|
1219
1219
|
flex: 1;
|
|
1220
1220
|
overflow-y: auto;
|
|
1221
1221
|
display: flex;
|
|
1222
1222
|
flex-direction: column;
|
|
1223
1223
|
height: 100%;
|
|
1224
1224
|
}
|
|
1225
|
-
.table-grid[data-v-
|
|
1225
|
+
.table-grid[data-v-608988e0] {
|
|
1226
1226
|
display: grid;
|
|
1227
1227
|
grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
|
|
1228
1228
|
gap: 1rem;
|
|
1229
1229
|
}
|
|
1230
|
-
.table-card[data-v-
|
|
1230
|
+
.table-card[data-v-608988e0] {
|
|
1231
1231
|
background: white;
|
|
1232
1232
|
border: 1px solid #e2e8f0;
|
|
1233
1233
|
border-radius: 12px;
|
|
@@ -1235,19 +1235,19 @@ to {
|
|
|
1235
1235
|
transition: all 0.2s ease;
|
|
1236
1236
|
cursor: pointer;
|
|
1237
1237
|
}
|
|
1238
|
-
.table-card[data-v-
|
|
1238
|
+
.table-card[data-v-608988e0]:hover {
|
|
1239
1239
|
border-color: #667eea;
|
|
1240
1240
|
box-shadow: 0 4px 12px rgba(102, 126, 234, 0.15);
|
|
1241
1241
|
transform: translateY(-2px);
|
|
1242
1242
|
}
|
|
1243
|
-
.card-header[data-v-
|
|
1243
|
+
.card-header[data-v-608988e0] {
|
|
1244
1244
|
background: #f8fafc;
|
|
1245
1245
|
padding: 1rem;
|
|
1246
1246
|
display: flex;
|
|
1247
1247
|
align-items: center;
|
|
1248
1248
|
gap: 0.75rem;
|
|
1249
1249
|
}
|
|
1250
|
-
.table-icon[data-v-
|
|
1250
|
+
.table-icon[data-v-608988e0] {
|
|
1251
1251
|
width: 40px;
|
|
1252
1252
|
height: 40px;
|
|
1253
1253
|
background: linear-gradient(135deg, #10b981 0%, #059669 100%);
|
|
@@ -1257,43 +1257,63 @@ to {
|
|
|
1257
1257
|
justify-content: center;
|
|
1258
1258
|
color: white;
|
|
1259
1259
|
}
|
|
1260
|
-
.table-
|
|
1260
|
+
.table-info[data-v-608988e0] {
|
|
1261
|
+
flex: 1;
|
|
1262
|
+
min-width: 0; /* 允许子元素截断 */
|
|
1263
|
+
}
|
|
1264
|
+
.table-name-wrapper[data-v-608988e0] {
|
|
1265
|
+
display: flex;
|
|
1266
|
+
align-items: center;
|
|
1267
|
+
gap: 0.5rem;
|
|
1268
|
+
margin-bottom: 0.25rem;
|
|
1269
|
+
}
|
|
1270
|
+
.table-name[data-v-608988e0] {
|
|
1261
1271
|
font-weight: 600;
|
|
1262
1272
|
color: #1e293b;
|
|
1263
|
-
|
|
1273
|
+
white-space: nowrap;
|
|
1274
|
+
overflow: hidden;
|
|
1275
|
+
text-overflow: ellipsis;
|
|
1264
1276
|
}
|
|
1265
|
-
.table-engine[data-v-
|
|
1277
|
+
.table-engine[data-v-608988e0] {
|
|
1266
1278
|
font-size: 0.75rem;
|
|
1267
1279
|
color: #64748b;
|
|
1268
1280
|
background: #f1f5f9;
|
|
1269
1281
|
padding: 0.125rem 0.375rem;
|
|
1270
1282
|
border-radius: 8px;
|
|
1283
|
+
flex-shrink: 0;
|
|
1284
|
+
}
|
|
1285
|
+
.table-comment-header[data-v-608988e0] {
|
|
1286
|
+
font-size: 0.75rem;
|
|
1287
|
+
color: #64748b;
|
|
1288
|
+
white-space: nowrap;
|
|
1289
|
+
overflow: hidden;
|
|
1290
|
+
text-overflow: ellipsis;
|
|
1271
1291
|
}
|
|
1272
|
-
.card-body[data-v-
|
|
1292
|
+
.card-body[data-v-608988e0] {
|
|
1273
1293
|
padding: 1rem;
|
|
1274
1294
|
}
|
|
1275
|
-
.table-stats[data-v-
|
|
1295
|
+
.table-stats[data-v-608988e0] {
|
|
1276
1296
|
display: flex;
|
|
1277
1297
|
gap: 1rem;
|
|
1278
1298
|
margin-bottom: 0.75rem;
|
|
1279
1299
|
}
|
|
1280
|
-
.stat[data-v-
|
|
1300
|
+
.stat[data-v-608988e0] {
|
|
1281
1301
|
display: flex;
|
|
1282
1302
|
flex-direction: column;
|
|
1283
1303
|
gap: 0.25rem;
|
|
1284
1304
|
}
|
|
1285
|
-
.table-comment[data-v-
|
|
1305
|
+
.table-comment[data-v-608988e0] {
|
|
1286
1306
|
font-size: 0.875rem;
|
|
1287
1307
|
color: #64748b;
|
|
1288
1308
|
font-style: italic;
|
|
1289
1309
|
margin-bottom: 0.75rem;
|
|
1290
1310
|
line-height: 1.4;
|
|
1291
1311
|
}
|
|
1292
|
-
.table-actions[data-v-
|
|
1312
|
+
.table-actions[data-v-608988e0] {
|
|
1293
1313
|
display: flex;
|
|
1294
1314
|
gap: 0.5rem;
|
|
1295
1315
|
}
|
|
1296
|
-
.empty-state[data-v-
|
|
1316
|
+
.empty-state[data-v-608988e0] {
|
|
1297
1317
|
display: flex;
|
|
1298
1318
|
flex-direction: column;
|
|
1299
1319
|
align-items: center;
|
|
@@ -1303,37 +1323,37 @@ to {
|
|
|
1303
1323
|
text-align: center;
|
|
1304
1324
|
font-size: 1.5rem;
|
|
1305
1325
|
}
|
|
1306
|
-
.empty-state i[data-v-
|
|
1326
|
+
.empty-state i[data-v-608988e0] {
|
|
1307
1327
|
margin-bottom: 1rem;
|
|
1308
1328
|
opacity: 0.5;
|
|
1309
1329
|
}
|
|
1310
1330
|
|
|
1311
1331
|
/* 视图和存储过程卡片样式 */
|
|
1312
|
-
.views-grid[data-v-
|
|
1332
|
+
.views-grid[data-v-608988e0], .procedures-grid[data-v-608988e0] {
|
|
1313
1333
|
display: grid;
|
|
1314
1334
|
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
|
|
1315
1335
|
gap: 1rem;
|
|
1316
1336
|
}
|
|
1317
|
-
.view-card[data-v-
|
|
1337
|
+
.view-card[data-v-608988e0], .procedure-card[data-v-608988e0] {
|
|
1318
1338
|
background: white;
|
|
1319
1339
|
border: 1px solid #e2e8f0;
|
|
1320
1340
|
border-radius: 12px;
|
|
1321
1341
|
overflow: hidden;
|
|
1322
1342
|
transition: all 0.2s ease;
|
|
1323
1343
|
}
|
|
1324
|
-
.view-card[data-v-
|
|
1344
|
+
.view-card[data-v-608988e0]:hover, .procedure-card[data-v-608988e0]:hover {
|
|
1325
1345
|
border-color: #667eea;
|
|
1326
1346
|
box-shadow: 0 4px 12px rgba(102, 126, 234, 0.15);
|
|
1327
1347
|
transform: translateY(-2px);
|
|
1328
1348
|
}
|
|
1329
|
-
.view-card .card-header[data-v-
|
|
1349
|
+
.view-card .card-header[data-v-608988e0], .procedure-card .card-header[data-v-608988e0] {
|
|
1330
1350
|
background: #f8fafc;
|
|
1331
1351
|
padding: 1rem;
|
|
1332
1352
|
display: flex;
|
|
1333
1353
|
align-items: center;
|
|
1334
1354
|
gap: 0.75rem;
|
|
1335
1355
|
}
|
|
1336
|
-
.view-icon[data-v-
|
|
1356
|
+
.view-icon[data-v-608988e0], .procedure-icon[data-v-608988e0] {
|
|
1337
1357
|
width: 40px;
|
|
1338
1358
|
height: 40px;
|
|
1339
1359
|
background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
|
|
@@ -1343,33 +1363,33 @@ to {
|
|
|
1343
1363
|
justify-content: center;
|
|
1344
1364
|
color: white;
|
|
1345
1365
|
}
|
|
1346
|
-
.procedure-icon[data-v-
|
|
1366
|
+
.procedure-icon[data-v-608988e0] {
|
|
1347
1367
|
background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
|
|
1348
1368
|
}
|
|
1349
|
-
.view-name[data-v-
|
|
1369
|
+
.view-name[data-v-608988e0], .procedure-name[data-v-608988e0] {
|
|
1350
1370
|
font-weight: 600;
|
|
1351
1371
|
color: #1e293b;
|
|
1352
1372
|
margin-bottom: 0.25rem;
|
|
1353
1373
|
}
|
|
1354
|
-
.view-comment[data-v-
|
|
1374
|
+
.view-comment[data-v-608988e0], .procedure-comment[data-v-608988e0] {
|
|
1355
1375
|
font-size: 0.75rem;
|
|
1356
1376
|
color: #64748b;
|
|
1357
1377
|
margin-bottom: 0.5rem;
|
|
1358
1378
|
line-height: 1.4;
|
|
1359
1379
|
}
|
|
1360
|
-
.procedure-type[data-v-
|
|
1380
|
+
.procedure-type[data-v-608988e0] {
|
|
1361
1381
|
display: flex;
|
|
1362
1382
|
gap: 0.25rem;
|
|
1363
1383
|
flex-wrap: wrap;
|
|
1364
1384
|
}
|
|
1365
|
-
.view-card .card-body[data-v-
|
|
1385
|
+
.view-card .card-body[data-v-608988e0], .procedure-card .card-body[data-v-608988e0] {
|
|
1366
1386
|
padding: 1rem;
|
|
1367
1387
|
}
|
|
1368
|
-
.view-actions[data-v-
|
|
1388
|
+
.view-actions[data-v-608988e0], .procedure-actions[data-v-608988e0] {
|
|
1369
1389
|
display: flex;
|
|
1370
1390
|
gap: 0.5rem;
|
|
1371
1391
|
}
|
|
1372
|
-
.views-actions[data-v-
|
|
1392
|
+
.views-actions[data-v-608988e0], .procedures-actions[data-v-608988e0], .tables-actions[data-v-608988e0] {
|
|
1373
1393
|
display: flex;
|
|
1374
1394
|
gap: 0.5rem;
|
|
1375
1395
|
margin-bottom: 1rem;
|
|
@@ -1379,27 +1399,27 @@ to {
|
|
|
1379
1399
|
}
|
|
1380
1400
|
|
|
1381
1401
|
/* 模态框样式 */
|
|
1382
|
-
.modal-dialog[data-v-
|
|
1402
|
+
.modal-dialog[data-v-608988e0] {
|
|
1383
1403
|
margin-top: 10vh;
|
|
1384
1404
|
}
|
|
1385
|
-
.modal-content[data-v-
|
|
1405
|
+
.modal-content[data-v-608988e0] {
|
|
1386
1406
|
border-radius: 12px;
|
|
1387
1407
|
border: none;
|
|
1388
1408
|
box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
|
|
1389
1409
|
}
|
|
1390
|
-
.modal-header[data-v-
|
|
1410
|
+
.modal-header[data-v-608988e0] {
|
|
1391
1411
|
border-bottom: 1px solid #e2e8f0;
|
|
1392
1412
|
padding: 1rem 1.5rem;
|
|
1393
1413
|
}
|
|
1394
|
-
.modal-title[data-v-
|
|
1414
|
+
.modal-title[data-v-608988e0] {
|
|
1395
1415
|
margin: 0;
|
|
1396
1416
|
font-weight: 600;
|
|
1397
1417
|
color: #1e293b;
|
|
1398
1418
|
}
|
|
1399
|
-
.modal-body[data-v-
|
|
1419
|
+
.modal-body[data-v-608988e0] {
|
|
1400
1420
|
padding: 1.5rem;
|
|
1401
1421
|
}
|
|
1402
|
-
.modal-footer[data-v-
|
|
1422
|
+
.modal-footer[data-v-608988e0] {
|
|
1403
1423
|
border-top: 1px solid #e2e8f0;
|
|
1404
1424
|
padding: 1rem 1.5rem;
|
|
1405
1425
|
display: flex;
|
|
@@ -1461,68 +1481,122 @@ to {
|
|
|
1461
1481
|
font-size: 0.75rem;
|
|
1462
1482
|
}
|
|
1463
1483
|
|
|
1464
|
-
.table-
|
|
1484
|
+
.table-data-grid[data-v-485b2e18] {
|
|
1485
|
+
display: flex;
|
|
1486
|
+
flex-direction: column;
|
|
1487
|
+
height: 100%;
|
|
1488
|
+
}
|
|
1489
|
+
.data-grid-wrapper[data-v-485b2e18] {
|
|
1490
|
+
flex: 1;
|
|
1491
|
+
overflow: hidden;
|
|
1492
|
+
}
|
|
1493
|
+
.column-header-custom[data-v-485b2e18] {
|
|
1494
|
+
display: flex;
|
|
1495
|
+
flex-direction: column;
|
|
1496
|
+
cursor: pointer;
|
|
1497
|
+
user-select: none;
|
|
1498
|
+
}
|
|
1499
|
+
.header-main[data-v-485b2e18] {
|
|
1500
|
+
display: flex;
|
|
1501
|
+
align-items: center;
|
|
1502
|
+
}
|
|
1503
|
+
.column-name[data-v-485b2e18] {
|
|
1504
|
+
font-weight: 600;
|
|
1505
|
+
}
|
|
1506
|
+
.header-sub[data-v-485b2e18] {
|
|
1507
|
+
display: flex;
|
|
1508
|
+
align-items: center;
|
|
1509
|
+
margin-top: 2px;
|
|
1510
|
+
max-width: 150px; /* 限制子标题区域的最大宽度 */
|
|
1511
|
+
}
|
|
1512
|
+
.column-type[data-v-485b2e18] {
|
|
1513
|
+
font-size: 0.7rem;
|
|
1514
|
+
line-height: 1;
|
|
1515
|
+
flex-shrink: 0; /* 防止类型被压缩 */
|
|
1516
|
+
}
|
|
1517
|
+
.column-comment[data-v-485b2e18] {
|
|
1518
|
+
font-size: 0.7rem;
|
|
1519
|
+
line-height: 1;
|
|
1520
|
+
opacity: 0.8;
|
|
1521
|
+
white-space: nowrap;
|
|
1522
|
+
overflow: hidden;
|
|
1523
|
+
text-overflow: ellipsis;
|
|
1524
|
+
flex: 1; /* 允许注释占据剩余空间并截断 */
|
|
1525
|
+
}
|
|
1526
|
+
.cell-value[data-v-485b2e18] {
|
|
1527
|
+
max-width: 300px;
|
|
1528
|
+
overflow: hidden;
|
|
1529
|
+
text-overflow: ellipsis;
|
|
1530
|
+
white-space: nowrap;
|
|
1531
|
+
}
|
|
1532
|
+
.grid-footer-bar[data-v-485b2e18] {
|
|
1533
|
+
background: #f8f9fa;
|
|
1534
|
+
border-top: 1px solid #dee2e6;
|
|
1535
|
+
padding: 8px 16px;
|
|
1536
|
+
}
|
|
1537
|
+
|
|
1538
|
+
.table-detail[data-v-dccf9d97] {
|
|
1465
1539
|
width: 100%;
|
|
1466
1540
|
height: 100%;
|
|
1467
1541
|
display: flex;
|
|
1468
1542
|
flex-direction: column;
|
|
1469
1543
|
}
|
|
1470
|
-
.table-header[data-v-
|
|
1544
|
+
.table-header[data-v-dccf9d97] {
|
|
1471
1545
|
background-color: #f8f9fa;
|
|
1472
1546
|
border-bottom: 1px solid #dee2e6;
|
|
1473
1547
|
padding: 15px 20px;
|
|
1474
1548
|
}
|
|
1475
|
-
.table-header-content[data-v-
|
|
1549
|
+
.table-header-content[data-v-dccf9d97] {
|
|
1476
1550
|
display: flex;
|
|
1477
1551
|
justify-content: space-between;
|
|
1478
1552
|
align-items: center;
|
|
1479
1553
|
}
|
|
1480
|
-
.table-info[data-v-
|
|
1554
|
+
.table-info[data-v-dccf9d97] {
|
|
1481
1555
|
display: flex;
|
|
1482
1556
|
align-items: center;
|
|
1483
1557
|
gap: 15px;
|
|
1484
1558
|
}
|
|
1485
|
-
.table-icon[data-v-
|
|
1559
|
+
.table-icon[data-v-dccf9d97] {
|
|
1486
1560
|
font-size: 32px;
|
|
1487
1561
|
color: #495057;
|
|
1488
1562
|
}
|
|
1489
|
-
.table-meta[data-v-
|
|
1563
|
+
.table-meta[data-v-dccf9d97] {
|
|
1490
1564
|
display: flex;
|
|
1491
1565
|
flex-direction: column;
|
|
1492
1566
|
gap: 5px;
|
|
1493
1567
|
}
|
|
1494
|
-
.table-name[data-v-
|
|
1568
|
+
.table-name[data-v-dccf9d97] {
|
|
1495
1569
|
margin: 0;
|
|
1496
1570
|
font-size: 1.25rem;
|
|
1497
1571
|
font-weight: 600;
|
|
1498
1572
|
}
|
|
1499
|
-
.table-breadcrumb[data-v-
|
|
1573
|
+
.table-breadcrumb[data-v-dccf9d97] {
|
|
1500
1574
|
display: flex;
|
|
1501
1575
|
align-items: center;
|
|
1502
1576
|
gap: 8px;
|
|
1503
1577
|
font-size: 0.875rem;
|
|
1504
1578
|
color: #6c757d;
|
|
1505
1579
|
}
|
|
1506
|
-
.table-stats[data-v-
|
|
1580
|
+
.table-stats[data-v-dccf9d97] {
|
|
1507
1581
|
display: flex;
|
|
1508
1582
|
gap: 20px;
|
|
1509
1583
|
}
|
|
1510
|
-
.stat-item[data-v-
|
|
1584
|
+
.stat-item[data-v-dccf9d97] {
|
|
1511
1585
|
display: flex;
|
|
1512
1586
|
flex-direction: column;
|
|
1513
1587
|
align-items: center;
|
|
1514
1588
|
gap: 2px;
|
|
1515
1589
|
}
|
|
1516
|
-
.stat-value[data-v-
|
|
1590
|
+
.stat-value[data-v-dccf9d97] {
|
|
1517
1591
|
font-size: 1.125rem;
|
|
1518
1592
|
font-weight: 600;
|
|
1519
1593
|
color: #495057;
|
|
1520
1594
|
}
|
|
1521
|
-
.stat-label[data-v-
|
|
1595
|
+
.stat-label[data-v-dccf9d97] {
|
|
1522
1596
|
font-size: 0.75rem;
|
|
1523
1597
|
color: #6c757d;
|
|
1524
1598
|
}
|
|
1525
|
-
.table-toolbar[data-v-
|
|
1599
|
+
.table-toolbar[data-v-dccf9d97] {
|
|
1526
1600
|
display: flex;
|
|
1527
1601
|
justify-content: space-between;
|
|
1528
1602
|
align-items: center;
|
|
@@ -1530,26 +1604,28 @@ to {
|
|
|
1530
1604
|
background-color: #f8f9fa;
|
|
1531
1605
|
border-bottom: 1px solid #dee2e6;
|
|
1532
1606
|
}
|
|
1533
|
-
.toolbar-left[data-v-
|
|
1607
|
+
.toolbar-left[data-v-dccf9d97] {
|
|
1534
1608
|
display: flex;
|
|
1535
1609
|
gap: 10px;
|
|
1536
1610
|
align-items: center;
|
|
1537
1611
|
}
|
|
1538
|
-
.toolbar-right[data-v-
|
|
1612
|
+
.toolbar-right[data-v-dccf9d97] {
|
|
1539
1613
|
display: flex;
|
|
1540
1614
|
gap: 10px;
|
|
1541
1615
|
align-items: center;
|
|
1542
1616
|
}
|
|
1543
|
-
.table-tabs[data-v-
|
|
1617
|
+
.table-tabs[data-v-dccf9d97] {
|
|
1544
1618
|
flex: 1;
|
|
1545
1619
|
display: flex;
|
|
1546
1620
|
flex-direction: column;
|
|
1621
|
+
overflow: hidden;
|
|
1547
1622
|
}
|
|
1548
|
-
.nav-tabs[data-v-
|
|
1623
|
+
.nav-tabs[data-v-dccf9d97] {
|
|
1549
1624
|
border-bottom: 1px solid #dee2e6;
|
|
1550
1625
|
background-color: #f8f9fa;
|
|
1626
|
+
flex-shrink: 0;
|
|
1551
1627
|
}
|
|
1552
|
-
.nav-tabs .nav-link[data-v-
|
|
1628
|
+
.nav-tabs .nav-link[data-v-dccf9d97] {
|
|
1553
1629
|
color: #495057;
|
|
1554
1630
|
border: none;
|
|
1555
1631
|
border-bottom: 3px solid transparent;
|
|
@@ -1557,54 +1633,60 @@ to {
|
|
|
1557
1633
|
padding: 10px 15px;
|
|
1558
1634
|
font-weight: 500;
|
|
1559
1635
|
}
|
|
1560
|
-
.nav-tabs .nav-link[data-v-
|
|
1636
|
+
.nav-tabs .nav-link[data-v-dccf9d97]:hover {
|
|
1561
1637
|
background-color: #e9ecef;
|
|
1562
1638
|
border-bottom-color: #adb5bd;
|
|
1563
1639
|
}
|
|
1564
|
-
.nav-tabs .nav-link.active[data-v-
|
|
1640
|
+
.nav-tabs .nav-link.active[data-v-dccf9d97] {
|
|
1565
1641
|
background-color: #fff;
|
|
1566
1642
|
border-bottom-color: #0d6efd;
|
|
1567
1643
|
color: #0d6efd;
|
|
1568
1644
|
}
|
|
1569
|
-
.tab-content[data-v-
|
|
1645
|
+
.tab-content[data-v-dccf9d97] {
|
|
1570
1646
|
flex: 1;
|
|
1571
1647
|
overflow: auto;
|
|
1572
1648
|
padding: 20px;
|
|
1573
1649
|
background-color: #fff;
|
|
1650
|
+
display: flex;
|
|
1651
|
+
flex-direction: column;
|
|
1574
1652
|
}
|
|
1575
|
-
.tab-panel[data-v-
|
|
1653
|
+
.tab-panel[data-v-dccf9d97] {
|
|
1654
|
+
flex: 1;
|
|
1655
|
+
display: flex;
|
|
1656
|
+
flex-direction: column;
|
|
1576
1657
|
height: 100%;
|
|
1658
|
+
overflow: auto;
|
|
1577
1659
|
}
|
|
1578
|
-
.data-content[data-v-
|
|
1660
|
+
.data-content[data-v-dccf9d97] {
|
|
1579
1661
|
height: 100%;
|
|
1580
1662
|
display: flex;
|
|
1581
1663
|
flex-direction: column;
|
|
1582
1664
|
}
|
|
1583
|
-
.data-content.loading[data-v-
|
|
1665
|
+
.data-content.loading[data-v-dccf9d97] {
|
|
1584
1666
|
opacity: 0.7;
|
|
1585
1667
|
pointer-events: none;
|
|
1586
1668
|
}
|
|
1587
|
-
.table-responsive[data-v-
|
|
1669
|
+
.table-responsive[data-v-dccf9d97] {
|
|
1588
1670
|
flex: 1;
|
|
1589
1671
|
overflow: auto;
|
|
1590
1672
|
}
|
|
1591
|
-
.column-header[data-v-
|
|
1673
|
+
.column-header[data-v-dccf9d97] {
|
|
1592
1674
|
position: relative;
|
|
1593
1675
|
}
|
|
1594
|
-
.column-key[data-v-
|
|
1676
|
+
.column-key[data-v-dccf9d97] {
|
|
1595
1677
|
position: absolute;
|
|
1596
1678
|
top: -5px;
|
|
1597
1679
|
right: -15px;
|
|
1598
1680
|
color: #0d6efd;
|
|
1599
1681
|
font-size: 0.75rem;
|
|
1600
1682
|
}
|
|
1601
|
-
.cell-value[data-v-
|
|
1683
|
+
.cell-value[data-v-dccf9d97] {
|
|
1602
1684
|
max-width: 200px;
|
|
1603
1685
|
overflow: hidden;
|
|
1604
1686
|
text-overflow: ellipsis;
|
|
1605
1687
|
white-space: nowrap;
|
|
1606
1688
|
}
|
|
1607
|
-
.loading-state[data-v-
|
|
1689
|
+
.loading-state[data-v-dccf9d97] {
|
|
1608
1690
|
display: flex;
|
|
1609
1691
|
flex-direction: column;
|
|
1610
1692
|
align-items: center;
|
|
@@ -1612,7 +1694,7 @@ to {
|
|
|
1612
1694
|
height: 300px;
|
|
1613
1695
|
gap: 15px;
|
|
1614
1696
|
}
|
|
1615
|
-
.empty-state[data-v-
|
|
1697
|
+
.empty-state[data-v-dccf9d97] {
|
|
1616
1698
|
display: flex;
|
|
1617
1699
|
flex-direction: column;
|
|
1618
1700
|
align-items: center;
|
|
@@ -1621,76 +1703,76 @@ to {
|
|
|
1621
1703
|
gap: 15px;
|
|
1622
1704
|
color: #6c757d;
|
|
1623
1705
|
}
|
|
1624
|
-
.empty-state i[data-v-
|
|
1706
|
+
.empty-state i[data-v-dccf9d97] {
|
|
1625
1707
|
font-size: 48px;
|
|
1626
1708
|
opacity: 0.5;
|
|
1627
1709
|
}
|
|
1628
|
-
.pagination-nav[data-v-
|
|
1710
|
+
.pagination-nav[data-v-dccf9d97] {
|
|
1629
1711
|
margin-top: 20px;
|
|
1630
1712
|
border-top: 1px solid #dee2e6;
|
|
1631
1713
|
padding-top: 15px;
|
|
1632
1714
|
}
|
|
1633
|
-
.pagination-container[data-v-
|
|
1715
|
+
.pagination-container[data-v-dccf9d97] {
|
|
1634
1716
|
display: flex;
|
|
1635
1717
|
align-items: center;
|
|
1636
1718
|
justify-content: space-between;
|
|
1637
1719
|
flex-wrap: wrap;
|
|
1638
1720
|
gap: 10px;
|
|
1639
1721
|
}
|
|
1640
|
-
.pagination-info[data-v-
|
|
1722
|
+
.pagination-info[data-v-dccf9d97] {
|
|
1641
1723
|
font-size: 0.875rem;
|
|
1642
1724
|
color: #6c757d;
|
|
1643
1725
|
}
|
|
1644
|
-
.page-size-selector[data-v-
|
|
1726
|
+
.page-size-selector[data-v-dccf9d97] {
|
|
1645
1727
|
display: flex;
|
|
1646
1728
|
align-items: center;
|
|
1647
1729
|
gap: 5px;
|
|
1648
1730
|
}
|
|
1649
|
-
.page-jump[data-v-
|
|
1731
|
+
.page-jump[data-v-dccf9d97] {
|
|
1650
1732
|
display: flex;
|
|
1651
1733
|
align-items: center;
|
|
1652
1734
|
gap: 5px;
|
|
1653
1735
|
}
|
|
1654
|
-
.structure-actions[data-v-
|
|
1736
|
+
.structure-actions[data-v-dccf9d97] {
|
|
1655
1737
|
display: flex;
|
|
1656
1738
|
gap: 10px;
|
|
1657
1739
|
margin-bottom: 15px;
|
|
1658
1740
|
}
|
|
1659
|
-
.structure-table[data-v-
|
|
1741
|
+
.structure-table[data-v-dccf9d97], .indexes-table[data-v-dccf9d97], .relations-table[data-v-dccf9d97] {
|
|
1660
1742
|
overflow: auto;
|
|
1661
1743
|
}
|
|
1662
|
-
.structure-table table[data-v-
|
|
1744
|
+
.structure-table table[data-v-dccf9d97], .indexes-table table[data-v-dccf9d97], .relations-table table[data-v-dccf9d97] {
|
|
1663
1745
|
width: 100%;
|
|
1664
1746
|
}
|
|
1665
|
-
.sql-section[data-v-
|
|
1747
|
+
.sql-section[data-v-dccf9d97] {
|
|
1666
1748
|
height: 100%;
|
|
1667
1749
|
}
|
|
1668
1750
|
|
|
1669
1751
|
/* 响应式设计 */
|
|
1670
1752
|
@media (max-width: 768px) {
|
|
1671
|
-
.table-header-content[data-v-
|
|
1753
|
+
.table-header-content[data-v-dccf9d97] {
|
|
1672
1754
|
flex-direction: column;
|
|
1673
1755
|
align-items: flex-start;
|
|
1674
1756
|
gap: 15px;
|
|
1675
1757
|
}
|
|
1676
|
-
.table-stats[data-v-
|
|
1758
|
+
.table-stats[data-v-dccf9d97] {
|
|
1677
1759
|
width: 100%;
|
|
1678
1760
|
justify-content: space-around;
|
|
1679
1761
|
}
|
|
1680
|
-
.table-toolbar[data-v-
|
|
1762
|
+
.table-toolbar[data-v-dccf9d97] {
|
|
1681
1763
|
flex-direction: column;
|
|
1682
1764
|
align-items: stretch;
|
|
1683
1765
|
gap: 10px;
|
|
1684
1766
|
}
|
|
1685
|
-
.toolbar-left[data-v-
|
|
1767
|
+
.toolbar-left[data-v-dccf9d97], .toolbar-right[data-v-dccf9d97] {
|
|
1686
1768
|
justify-content: center;
|
|
1687
1769
|
}
|
|
1688
|
-
.pagination-container[data-v-
|
|
1770
|
+
.pagination-container[data-v-dccf9d97] {
|
|
1689
1771
|
flex-direction: column;
|
|
1690
1772
|
align-items: flex-start;
|
|
1691
1773
|
gap: 15px;
|
|
1692
1774
|
}
|
|
1693
|
-
.pagination[data-v-
|
|
1775
|
+
.pagination[data-v-dccf9d97] {
|
|
1694
1776
|
width: 100%;
|
|
1695
1777
|
justify-content: center;
|
|
1696
1778
|
}
|