@rozenite/sqlite-plugin 1.13.0 → 2.1.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.
Files changed (46) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/devtools/assets/panel-BarPLQ4-.css +1 -0
  3. package/dist/devtools/assets/{panel-DjRs5NTl.js → panel-BsdCagVv.js} +45 -44
  4. package/dist/devtools/panel.html +2 -2
  5. package/dist/react-native/chunks/index.require.js +4 -16
  6. package/dist/react-native/chunks/sql.require.js +1 -3
  7. package/dist/react-native/chunks/useRozeniteSqlitePlugin.require.js +92 -110
  8. package/dist/react-native/index.d.ts +2 -2
  9. package/dist/rozenite.json +1 -1
  10. package/package.json +27 -31
  11. package/react-native.ts +7 -14
  12. package/src/react-native/adapters/__tests__/expo-sqlite.test.ts +4 -14
  13. package/src/react-native/adapters/expo-sqlite.ts +11 -40
  14. package/src/react-native/adapters/generic.ts +5 -13
  15. package/src/react-native/adapters/index.ts +1 -4
  16. package/src/react-native/sqlite-view.ts +2 -8
  17. package/src/react-native/useRozeniteSqlitePlugin.ts +110 -130
  18. package/src/react-native/useSqliteAgentTools.ts +5 -14
  19. package/src/shared/__tests__/bridge-values.test.ts +6 -11
  20. package/src/shared/__tests__/sql.test.ts +4 -8
  21. package/src/shared/bridge-values.ts +2 -5
  22. package/src/shared/sql.ts +3 -7
  23. package/src/ui/__tests__/sql-editor-utils.test.ts +1 -5
  24. package/src/ui/__tests__/sqlite-drop-mutations.test.ts +138 -0
  25. package/src/ui/__tests__/sqlite-row-mutations.test.ts +1 -3
  26. package/src/ui/__tests__/sqlite-table-column-order.test.ts +4 -19
  27. package/src/ui/cell-detail-drawer.tsx +1 -6
  28. package/src/ui/globals.css +26 -65
  29. package/src/ui/panel.tsx +442 -568
  30. package/src/ui/query-result-table.tsx +8 -26
  31. package/src/ui/sql-editor-utils.ts +24 -55
  32. package/src/ui/sql-editor.tsx +13 -46
  33. package/src/ui/sqlite-data-table.tsx +11 -28
  34. package/src/ui/sqlite-drop-modal.tsx +193 -0
  35. package/src/ui/sqlite-drop-mutations.ts +53 -0
  36. package/src/ui/sqlite-introspection.ts +9 -25
  37. package/src/ui/sqlite-row-delete-modal.tsx +5 -12
  38. package/src/ui/sqlite-row-edit-modal.tsx +22 -64
  39. package/src/ui/sqlite-row-edit-value.ts +2 -11
  40. package/src/ui/sqlite-row-mutations.ts +10 -32
  41. package/src/ui/sqlite-table-column-order.ts +8 -23
  42. package/src/ui/use-sqlite-requests.ts +46 -86
  43. package/src/ui/utils.ts +1 -5
  44. package/src/ui/value-utils.tsx +3 -11
  45. package/dist/devtools/assets/panel-CIU0JBOs.css +0 -1
  46. package/postcss.config.js +0 -6
@@ -41,19 +41,10 @@
41
41
  body {
42
42
  margin: 0;
43
43
  font-size: 14px;
44
- font-family:
45
- 'IBM Plex Sans', 'Satoshi', 'Inter', ui-sans-serif, system-ui, sans-serif;
44
+ font-family: 'IBM Plex Sans', 'Satoshi', 'Inter', ui-sans-serif, system-ui, sans-serif;
46
45
  background:
47
- radial-gradient(
48
- circle at top left,
49
- rgba(130, 50, 255, 0.18),
50
- transparent 22%
51
- ),
52
- radial-gradient(
53
- circle at right,
54
- rgba(70, 193, 190, 0.08),
55
- transparent 18%
56
- ),
46
+ radial-gradient(circle at top left, rgba(130, 50, 255, 0.18), transparent 22%),
47
+ radial-gradient(circle at right, rgba(70, 193, 190, 0.08), transparent 18%),
57
48
  linear-gradient(180deg, #07111a 0%, #091520 52%, #07111a 100%);
58
49
  color: var(--sqlite-text);
59
50
  text-rendering: optimizeLegibility;
@@ -81,9 +72,7 @@
81
72
  .sqlite-tabular,
82
73
  .sqlite-editor-shell .cm-scroller,
83
74
  .sqlite-editor-shell .cm-gutters {
84
- font-family:
85
- 'IBM Plex Mono', 'JetBrains Mono', 'SFMono-Regular', ui-monospace,
86
- monospace;
75
+ font-family: 'IBM Plex Mono', 'JetBrains Mono', 'SFMono-Regular', ui-monospace, monospace;
87
76
  font-variant-numeric: tabular-nums;
88
77
  }
89
78
  }
@@ -145,19 +134,12 @@
145
134
  inset: 0;
146
135
  pointer-events: none;
147
136
  border-radius: inherit;
148
- background: linear-gradient(
149
- 180deg,
150
- rgba(255, 255, 255, 0.05),
151
- transparent 18%
152
- );
137
+ background: linear-gradient(180deg, rgba(255, 255, 255, 0.05), transparent 18%);
153
138
  }
154
139
 
155
140
  .sqlite-topbar {
156
141
  display: grid;
157
- grid-template-columns: minmax(0, 1.2fr) minmax(18rem, 0.8fr) minmax(
158
- 0,
159
- 1.2fr
160
- );
142
+ grid-template-columns: minmax(0, 1.2fr) minmax(18rem, 0.8fr) minmax(0, 1.2fr);
161
143
  gap: 0.9rem;
162
144
  align-items: center;
163
145
  padding: 0.9rem 1rem;
@@ -190,11 +172,7 @@
190
172
  height: 2.5rem;
191
173
  border-radius: 0.95rem;
192
174
  border: 1px solid rgba(130, 50, 255, 0.28);
193
- background: linear-gradient(
194
- 180deg,
195
- rgba(130, 50, 255, 0.24),
196
- rgba(105, 33, 214, 0.18)
197
- );
175
+ background: linear-gradient(180deg, rgba(130, 50, 255, 0.24), rgba(105, 33, 214, 0.18));
198
176
  color: white;
199
177
  }
200
178
 
@@ -236,11 +214,7 @@
236
214
  width: 100%;
237
215
  border: 1px solid var(--sqlite-line);
238
216
  border-radius: 0.95rem;
239
- background: linear-gradient(
240
- 180deg,
241
- rgba(10, 18, 29, 0.98),
242
- rgba(11, 22, 34, 0.98)
243
- );
217
+ background: linear-gradient(180deg, rgba(10, 18, 29, 0.98), rgba(11, 22, 34, 0.98));
244
218
  color: var(--sqlite-text);
245
219
  box-shadow:
246
220
  inset 0 1px 0 rgba(255, 255, 255, 0.025),
@@ -353,21 +327,13 @@
353
327
 
354
328
  .sqlite-button-primary {
355
329
  border-color: rgba(130, 50, 255, 0.3);
356
- background: linear-gradient(
357
- 180deg,
358
- rgba(130, 50, 255, 0.98),
359
- rgba(105, 33, 214, 0.94)
360
- );
330
+ background: linear-gradient(180deg, rgba(130, 50, 255, 0.98), rgba(105, 33, 214, 0.94));
361
331
  color: white;
362
332
  box-shadow: 0 12px 32px rgba(72, 28, 142, 0.3);
363
333
  }
364
334
 
365
335
  .sqlite-button-primary:hover:not(:disabled) {
366
- background: linear-gradient(
367
- 180deg,
368
- rgba(145, 74, 255, 0.98),
369
- rgba(114, 42, 227, 0.96)
370
- );
336
+ background: linear-gradient(180deg, rgba(145, 74, 255, 0.98), rgba(114, 42, 227, 0.96));
371
337
  }
372
338
 
373
339
  .sqlite-button-secondary,
@@ -399,6 +365,18 @@
399
365
  flex-shrink: 0;
400
366
  }
401
367
 
368
+ .sqlite-button-danger {
369
+ border-color: rgba(255, 100, 100, 0.35);
370
+ background: rgba(255, 90, 90, 0.14);
371
+ color: rgba(255, 214, 214, 0.95);
372
+ }
373
+
374
+ .sqlite-button-danger:hover:not(:disabled) {
375
+ border-color: rgba(255, 120, 120, 0.55);
376
+ background: rgba(255, 90, 90, 0.22);
377
+ color: white;
378
+ }
379
+
402
380
  .sqlite-badge,
403
381
  .sqlite-chip,
404
382
  .sqlite-count-pill {
@@ -561,12 +539,7 @@
561
539
  position: absolute;
562
540
  inset: 0;
563
541
  transform: translateX(-100%);
564
- background: linear-gradient(
565
- 90deg,
566
- transparent,
567
- rgba(255, 255, 255, 0.12),
568
- transparent
569
- );
542
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.12), transparent);
570
543
  animation: sqlite-shimmer 1.2s linear infinite;
571
544
  }
572
545
 
@@ -741,11 +714,7 @@
741
714
  .sqlite-editor-frame {
742
715
  border: 1px solid var(--sqlite-line);
743
716
  border-radius: 1.25rem;
744
- background: linear-gradient(
745
- 180deg,
746
- rgba(10, 18, 29, 0.98),
747
- rgba(8, 15, 24, 0.98)
748
- );
717
+ background: linear-gradient(180deg, rgba(10, 18, 29, 0.98), rgba(8, 15, 24, 0.98));
749
718
  }
750
719
 
751
720
  .sqlite-content-stack,
@@ -879,11 +848,7 @@
879
848
  }
880
849
 
881
850
  .sqlite-editor-shell .cm-sqlite-errorLine {
882
- background: linear-gradient(
883
- 90deg,
884
- rgba(255, 123, 123, 0.16),
885
- rgba(255, 123, 123, 0.08)
886
- );
851
+ background: linear-gradient(90deg, rgba(255, 123, 123, 0.16), rgba(255, 123, 123, 0.08));
887
852
  }
888
853
 
889
854
  .sqlite-editor-shell .cm-tooltip-autocomplete {
@@ -1345,11 +1310,7 @@
1345
1310
  .sqlite-panel-shell .drawer__dialog,
1346
1311
  .sqlite-panel-shell .modal__dialog {
1347
1312
  border-color: var(--sqlite-line-strong);
1348
- background: linear-gradient(
1349
- 180deg,
1350
- rgba(11, 20, 30, 0.98),
1351
- rgba(7, 13, 21, 0.98)
1352
- );
1313
+ background: linear-gradient(180deg, rgba(11, 20, 30, 0.98), rgba(7, 13, 21, 0.98));
1353
1314
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.48);
1354
1315
  }
1355
1316