@adminiumjs/adminium 0.1.0-rc.1
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/LICENSE +661 -0
- package/README.md +94 -0
- package/dashboard/assets/DeltaPill-dxlsGh-1.js +2 -0
- package/dashboard/assets/DeltaPill-dxlsGh-1.js.map +1 -0
- package/dashboard/assets/DistributionCorrelationWidgets-ztVy_W_R.js +2 -0
- package/dashboard/assets/DistributionCorrelationWidgets-ztVy_W_R.js.map +1 -0
- package/dashboard/assets/PartWholeWidgets-BDn0i0jt.js +2 -0
- package/dashboard/assets/PartWholeWidgets-BDn0i0jt.js.map +1 -0
- package/dashboard/assets/RemapEditor-z3vRY12e.js +2 -0
- package/dashboard/assets/RemapEditor-z3vRY12e.js.map +1 -0
- package/dashboard/assets/ReviewScreen-COkLQ3T7.js +2 -0
- package/dashboard/assets/ReviewScreen-COkLQ3T7.js.map +1 -0
- package/dashboard/assets/Sparkline-Cvwo368J.js +2 -0
- package/dashboard/assets/Sparkline-Cvwo368J.js.map +1 -0
- package/dashboard/assets/WidgetMissingCard-D0bPJKIs.js +2 -0
- package/dashboard/assets/WidgetMissingCard-D0bPJKIs.js.map +1 -0
- package/dashboard/assets/arc-CPxb74pf.js +2 -0
- package/dashboard/assets/arc-CPxb74pf.js.map +1 -0
- package/dashboard/assets/bars-ranking-components-9Asn_0gR.js +2 -0
- package/dashboard/assets/bars-ranking-components-9Asn_0gR.js.map +1 -0
- package/dashboard/assets/blocks-track-components-BST-NjK2.js +2 -0
- package/dashboard/assets/blocks-track-components-BST-NjK2.js.map +1 -0
- package/dashboard/assets/calendar-track-components-RgNtGtZR.js +2 -0
- package/dashboard/assets/calendar-track-components-RgNtGtZR.js.map +1 -0
- package/dashboard/assets/chrome-track-components-ClNsentC.js +2 -0
- package/dashboard/assets/chrome-track-components-ClNsentC.js.map +1 -0
- package/dashboard/assets/common-BY1j__bD.js +2 -0
- package/dashboard/assets/common-BY1j__bD.js.map +1 -0
- package/dashboard/assets/common-BdlXKpcB.js +2 -0
- package/dashboard/assets/common-BdlXKpcB.js.map +1 -0
- package/dashboard/assets/common-BqqhgMgB.js +2 -0
- package/dashboard/assets/common-BqqhgMgB.js.map +1 -0
- package/dashboard/assets/common-BribWmIo.js +2 -0
- package/dashboard/assets/common-BribWmIo.js.map +1 -0
- package/dashboard/assets/common-Cmf0_lKV.js +2 -0
- package/dashboard/assets/common-Cmf0_lKV.js.map +1 -0
- package/dashboard/assets/common-i0r48qY9.js +2 -0
- package/dashboard/assets/common-i0r48qY9.js.map +1 -0
- package/dashboard/assets/common-x8cfkwpc.js +2 -0
- package/dashboard/assets/common-x8cfkwpc.js.map +1 -0
- package/dashboard/assets/communication-track-components-CNLZXOH_.js +2 -0
- package/dashboard/assets/communication-track-components-CNLZXOH_.js.map +1 -0
- package/dashboard/assets/components-Bp5cFm2d.js +2 -0
- package/dashboard/assets/components-Bp5cFm2d.js.map +1 -0
- package/dashboard/assets/components-C4-O3_gD.js +2 -0
- package/dashboard/assets/components-C4-O3_gD.js.map +1 -0
- package/dashboard/assets/domain-ops-track-components-BPa41AU7.js +2 -0
- package/dashboard/assets/domain-ops-track-components-BPa41AU7.js.map +1 -0
- package/dashboard/assets/domain-track-components-CQ1i1X1t.js +2 -0
- package/dashboard/assets/domain-track-components-CQ1i1X1t.js.map +1 -0
- package/dashboard/assets/errors-BHUWiAQ3.js +2 -0
- package/dashboard/assets/errors-BHUWiAQ3.js.map +1 -0
- package/dashboard/assets/errors-BbyKweDG.js +2 -0
- package/dashboard/assets/errors-BbyKweDG.js.map +1 -0
- package/dashboard/assets/errors-CMQ6JC31.js +2 -0
- package/dashboard/assets/errors-CMQ6JC31.js.map +1 -0
- package/dashboard/assets/errors-D3nVgTmf.js +2 -0
- package/dashboard/assets/errors-D3nVgTmf.js.map +1 -0
- package/dashboard/assets/errors-IqJSoANC.js +2 -0
- package/dashboard/assets/errors-IqJSoANC.js.map +1 -0
- package/dashboard/assets/errors-gmIkO9F6.js +2 -0
- package/dashboard/assets/errors-gmIkO9F6.js.map +1 -0
- package/dashboard/assets/errors-vFk058Vh.js +2 -0
- package/dashboard/assets/errors-vFk058Vh.js.map +1 -0
- package/dashboard/assets/feeds-track-f-components-Cl_8SkGs.js +2 -0
- package/dashboard/assets/feeds-track-f-components-Cl_8SkGs.js.map +1 -0
- package/dashboard/assets/format-Lx4cQ8k-.js +2 -0
- package/dashboard/assets/format-Lx4cQ8k-.js.map +1 -0
- package/dashboard/assets/forms-track-components-Bc2Hoxdh.js +2 -0
- package/dashboard/assets/forms-track-components-Bc2Hoxdh.js.map +1 -0
- package/dashboard/assets/generated-1EfWhCMA.js +2 -0
- package/dashboard/assets/generated-1EfWhCMA.js.map +1 -0
- package/dashboard/assets/generated-BB3ZMxvx.js +2 -0
- package/dashboard/assets/generated-BB3ZMxvx.js.map +1 -0
- package/dashboard/assets/generated-C0JVNBRX.js +2 -0
- package/dashboard/assets/generated-C0JVNBRX.js.map +1 -0
- package/dashboard/assets/generated-C1W48_-3.js +2 -0
- package/dashboard/assets/generated-C1W48_-3.js.map +1 -0
- package/dashboard/assets/generated-CluiB_xY.js +2 -0
- package/dashboard/assets/generated-CluiB_xY.js.map +1 -0
- package/dashboard/assets/generated-DDGtlf-4.js +2 -0
- package/dashboard/assets/generated-DDGtlf-4.js.map +1 -0
- package/dashboard/assets/generated-DPCHvNto.js +2 -0
- package/dashboard/assets/generated-DPCHvNto.js.map +1 -0
- package/dashboard/assets/geo-track-components-Ct4-MSRw.js +3 -0
- package/dashboard/assets/geo-track-components-Ct4-MSRw.js.map +1 -0
- package/dashboard/assets/ibm-plex-sans-arabic-arabic-400-normal-CyU-ddYS.woff2 +0 -0
- package/dashboard/assets/ibm-plex-sans-arabic-arabic-500-normal-C4MQITzh.woff2 +0 -0
- package/dashboard/assets/ibm-plex-sans-arabic-arabic-600-normal-0pRdybE_.woff2 +0 -0
- package/dashboard/assets/ibm-plex-sans-arabic-arabic-700-normal-DrtBj6UE.woff2 +0 -0
- package/dashboard/assets/index-DPi4cduu.css +1 -0
- package/dashboard/assets/index-PB1II0WV.js +137 -0
- package/dashboard/assets/index-PB1II0WV.js.map +1 -0
- package/dashboard/assets/jetbrains-mono-latin-ext-wght-italic-BrDczivE.woff2 +0 -0
- package/dashboard/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2 +0 -0
- package/dashboard/assets/jetbrains-mono-latin-wght-italic-B2M6KQje.woff2 +0 -0
- package/dashboard/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2 +0 -0
- package/dashboard/assets/leaflet-CIGW-MKW.css +1 -0
- package/dashboard/assets/leaflet-src-D12shr04.js +2 -0
- package/dashboard/assets/leaflet-src-D12shr04.js.map +1 -0
- package/dashboard/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2 +0 -0
- package/dashboard/assets/manrope-latin-wght-normal-DHIcAJRg.woff2 +0 -0
- package/dashboard/assets/media-track-components-CpeII-tT.js +2 -0
- package/dashboard/assets/media-track-components-CpeII-tT.js.map +1 -0
- package/dashboard/assets/scales-e0tkfEy1.js +2 -0
- package/dashboard/assets/scales-e0tkfEy1.js.map +1 -0
- package/dashboard/assets/sparkline-2JUGDrMW.js +2 -0
- package/dashboard/assets/sparkline-2JUGDrMW.js.map +1 -0
- package/dashboard/assets/stats-BNgXz5BD.js +2 -0
- package/dashboard/assets/stats-BNgXz5BD.js.map +1 -0
- package/dashboard/assets/studio-B7hMOwAF.js +2 -0
- package/dashboard/assets/studio-B7hMOwAF.js.map +1 -0
- package/dashboard/assets/studio-BN_9xHY3.js +2 -0
- package/dashboard/assets/studio-BN_9xHY3.js.map +1 -0
- package/dashboard/assets/studio-Cn2MObe8.js +2 -0
- package/dashboard/assets/studio-Cn2MObe8.js.map +1 -0
- package/dashboard/assets/studio-DZEZCCkw.js +2 -0
- package/dashboard/assets/studio-DZEZCCkw.js.map +1 -0
- package/dashboard/assets/studio-DzatTvLl.js +2 -0
- package/dashboard/assets/studio-DzatTvLl.js.map +1 -0
- package/dashboard/assets/studio-cBlD8x90.js +2 -0
- package/dashboard/assets/studio-cBlD8x90.js.map +1 -0
- package/dashboard/assets/studio-cglZPbJK.js +2 -0
- package/dashboard/assets/studio-cglZPbJK.js.map +1 -0
- package/dashboard/assets/system-track-components-GTYYpnfB.js +2 -0
- package/dashboard/assets/system-track-components-GTYYpnfB.js.map +1 -0
- package/dashboard/assets/tables-tail-components-DiA5GeHB.js +2 -0
- package/dashboard/assets/tables-tail-components-DiA5GeHB.js.map +1 -0
- package/dashboard/assets/tables-track-f-components-CVNPd7rq.js +2 -0
- package/dashboard/assets/tables-track-f-components-CVNPd7rq.js.map +1 -0
- package/dashboard/assets/time-flow-components-nKsaryry.js +2 -0
- package/dashboard/assets/time-flow-components-nKsaryry.js.map +1 -0
- package/dashboard/assets/ui-B-kZetor.js +2 -0
- package/dashboard/assets/ui-B-kZetor.js.map +1 -0
- package/dashboard/assets/ui-BEStJ5Pw.js +2 -0
- package/dashboard/assets/ui-BEStJ5Pw.js.map +1 -0
- package/dashboard/assets/ui-BS5_eDN4.js +2 -0
- package/dashboard/assets/ui-BS5_eDN4.js.map +1 -0
- package/dashboard/assets/ui-BZ0EyxRH.js +2 -0
- package/dashboard/assets/ui-BZ0EyxRH.js.map +1 -0
- package/dashboard/assets/ui-BloJDdt6.js +2 -0
- package/dashboard/assets/ui-BloJDdt6.js.map +1 -0
- package/dashboard/assets/ui-CpdrplJH.js +2 -0
- package/dashboard/assets/ui-CpdrplJH.js.map +1 -0
- package/dashboard/assets/ui-YJfT644k.js +2 -0
- package/dashboard/assets/ui-YJfT644k.js.map +1 -0
- package/dashboard/assets/widgets-uDqZWw4A.js +2 -0
- package/dashboard/assets/widgets-uDqZWw4A.js.map +1 -0
- package/dashboard/index.html +41 -0
- package/dist/app.d.ts +48 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +250 -0
- package/dist/app.js.map +1 -0
- package/dist/auth/audit.d.ts +22 -0
- package/dist/auth/audit.d.ts.map +1 -0
- package/dist/auth/audit.js +17 -0
- package/dist/auth/audit.js.map +1 -0
- package/dist/auth/desktop-session.d.ts +53 -0
- package/dist/auth/desktop-session.d.ts.map +1 -0
- package/dist/auth/desktop-session.js +111 -0
- package/dist/auth/desktop-session.js.map +1 -0
- package/dist/auth/passwords.d.ts +17 -0
- package/dist/auth/passwords.d.ts.map +1 -0
- package/dist/auth/passwords.js +40 -0
- package/dist/auth/passwords.js.map +1 -0
- package/dist/auth/sessions.d.ts +77 -0
- package/dist/auth/sessions.d.ts.map +1 -0
- package/dist/auth/sessions.js +137 -0
- package/dist/auth/sessions.js.map +1 -0
- package/dist/auth/totp.d.ts +30 -0
- package/dist/auth/totp.d.ts.map +1 -0
- package/dist/auth/totp.js +97 -0
- package/dist/auth/totp.js.map +1 -0
- package/dist/backup/backup-service.d.ts +157 -0
- package/dist/backup/backup-service.d.ts.map +1 -0
- package/dist/backup/backup-service.js +354 -0
- package/dist/backup/backup-service.js.map +1 -0
- package/dist/backup/format.d.ts +300 -0
- package/dist/backup/format.d.ts.map +1 -0
- package/dist/backup/format.js +304 -0
- package/dist/backup/format.js.map +1 -0
- package/dist/backup/notify.d.ts +55 -0
- package/dist/backup/notify.d.ts.map +1 -0
- package/dist/backup/notify.js +60 -0
- package/dist/backup/notify.js.map +1 -0
- package/dist/backup/snapshot.d.ts +78 -0
- package/dist/backup/snapshot.d.ts.map +1 -0
- package/dist/backup/snapshot.js +142 -0
- package/dist/backup/snapshot.js.map +1 -0
- package/dist/capabilities/catalog.d.ts +33 -0
- package/dist/capabilities/catalog.d.ts.map +1 -0
- package/dist/capabilities/catalog.js +32 -0
- package/dist/capabilities/catalog.js.map +1 -0
- package/dist/capabilities/grants.d.ts +44 -0
- package/dist/capabilities/grants.d.ts.map +1 -0
- package/dist/capabilities/grants.js +65 -0
- package/dist/capabilities/grants.js.map +1 -0
- package/dist/cli/allowlist.d.ts +46 -0
- package/dist/cli/allowlist.d.ts.map +1 -0
- package/dist/cli/allowlist.js +99 -0
- package/dist/cli/allowlist.js.map +1 -0
- package/dist/cli/args.d.ts +63 -0
- package/dist/cli/args.d.ts.map +1 -0
- package/dist/cli/args.js +92 -0
- package/dist/cli/args.js.map +1 -0
- package/dist/cli/command.d.ts +32 -0
- package/dist/cli/command.d.ts.map +1 -0
- package/dist/cli/command.js +64 -0
- package/dist/cli/command.js.map +1 -0
- package/dist/cli/commands/apply-llm-response.d.ts +32 -0
- package/dist/cli/commands/apply-llm-response.d.ts.map +1 -0
- package/dist/cli/commands/apply-llm-response.js +209 -0
- package/dist/cli/commands/apply-llm-response.js.map +1 -0
- package/dist/cli/commands/export-zip.d.ts +17 -0
- package/dist/cli/commands/export-zip.d.ts.map +1 -0
- package/dist/cli/commands/export-zip.js +111 -0
- package/dist/cli/commands/export-zip.js.map +1 -0
- package/dist/cli/commands/generate-prompt.d.ts +29 -0
- package/dist/cli/commands/generate-prompt.d.ts.map +1 -0
- package/dist/cli/commands/generate-prompt.js +154 -0
- package/dist/cli/commands/generate-prompt.js.map +1 -0
- package/dist/cli/commands/import-zip.d.ts +13 -0
- package/dist/cli/commands/import-zip.d.ts.map +1 -0
- package/dist/cli/commands/import-zip.js +95 -0
- package/dist/cli/commands/import-zip.js.map +1 -0
- package/dist/cli/commands/init.d.ts +47 -0
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/init.js +372 -0
- package/dist/cli/commands/init.js.map +1 -0
- package/dist/cli/commands/introspect.d.ts +11 -0
- package/dist/cli/commands/introspect.d.ts.map +1 -0
- package/dist/cli/commands/introspect.js +100 -0
- package/dist/cli/commands/introspect.js.map +1 -0
- package/dist/cli/commands/migrate.d.ts +11 -0
- package/dist/cli/commands/migrate.d.ts.map +1 -0
- package/dist/cli/commands/migrate.js +80 -0
- package/dist/cli/commands/migrate.js.map +1 -0
- package/dist/cli/commands/start.d.ts +22 -0
- package/dist/cli/commands/start.d.ts.map +1 -0
- package/dist/cli/commands/start.js +101 -0
- package/dist/cli/commands/start.js.map +1 -0
- package/dist/cli/exit.d.ts +37 -0
- package/dist/cli/exit.d.ts.map +1 -0
- package/dist/cli/exit.js +39 -0
- package/dist/cli/exit.js.map +1 -0
- package/dist/cli/index.d.ts +10 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +17 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/io.d.ts +49 -0
- package/dist/cli/io.d.ts.map +1 -0
- package/dist/cli/io.js +77 -0
- package/dist/cli/io.js.map +1 -0
- package/dist/cli/run.d.ts +35 -0
- package/dist/cli/run.d.ts.map +1 -0
- package/dist/cli/run.js +139 -0
- package/dist/cli/run.js.map +1 -0
- package/dist/cli/runtime.d.ts +116 -0
- package/dist/cli/runtime.d.ts.map +1 -0
- package/dist/cli/runtime.js +181 -0
- package/dist/cli/runtime.js.map +1 -0
- package/dist/cli/static-root.d.ts +42 -0
- package/dist/cli/static-root.d.ts.map +1 -0
- package/dist/cli/static-root.js +58 -0
- package/dist/cli/static-root.js.map +1 -0
- package/dist/compose.d.ts +135 -0
- package/dist/compose.d.ts.map +1 -0
- package/dist/compose.js +383 -0
- package/dist/compose.js.map +1 -0
- package/dist/config/bootstrap.d.ts +33 -0
- package/dist/config/bootstrap.d.ts.map +1 -0
- package/dist/config/bootstrap.js +81 -0
- package/dist/config/bootstrap.js.map +1 -0
- package/dist/config/env.d.ts +95 -0
- package/dist/config/env.d.ts.map +1 -0
- package/dist/config/env.js +236 -0
- package/dist/config/env.js.map +1 -0
- package/dist/config/secrets.d.ts +24 -0
- package/dist/config/secrets.d.ts.map +1 -0
- package/dist/config/secrets.js +74 -0
- package/dist/config/secrets.js.map +1 -0
- package/dist/connections/crypto.d.ts +9 -0
- package/dist/connections/crypto.d.ts.map +1 -0
- package/dist/connections/crypto.js +16 -0
- package/dist/connections/crypto.js.map +1 -0
- package/dist/connections/dsn.d.ts +42 -0
- package/dist/connections/dsn.d.ts.map +1 -0
- package/dist/connections/dsn.js +131 -0
- package/dist/connections/dsn.js.map +1 -0
- package/dist/connections/effective-schema.d.ts +65 -0
- package/dist/connections/effective-schema.d.ts.map +1 -0
- package/dist/connections/effective-schema.js +249 -0
- package/dist/connections/effective-schema.js.map +1 -0
- package/dist/connections/introspect.d.ts +52 -0
- package/dist/connections/introspect.d.ts.map +1 -0
- package/dist/connections/introspect.js +111 -0
- package/dist/connections/introspect.js.map +1 -0
- package/dist/connections/manager.d.ts +97 -0
- package/dist/connections/manager.d.ts.map +1 -0
- package/dist/connections/manager.js +224 -0
- package/dist/connections/manager.js.map +1 -0
- package/dist/connections/register-adapters.d.ts +42 -0
- package/dist/connections/register-adapters.d.ts.map +1 -0
- package/dist/connections/register-adapters.js +92 -0
- package/dist/connections/register-adapters.js.map +1 -0
- package/dist/crud/filters.d.ts +57 -0
- package/dist/crud/filters.d.ts.map +1 -0
- package/dist/crud/filters.js +177 -0
- package/dist/crud/filters.js.map +1 -0
- package/dist/crud/identifiers.d.ts +58 -0
- package/dist/crud/identifiers.d.ts.map +1 -0
- package/dist/crud/identifiers.js +99 -0
- package/dist/crud/identifiers.js.map +1 -0
- package/dist/crud/list.d.ts +51 -0
- package/dist/crud/list.d.ts.map +1 -0
- package/dist/crud/list.js +126 -0
- package/dist/crud/list.js.map +1 -0
- package/dist/crud/mask.d.ts +23 -0
- package/dist/crud/mask.d.ts.map +1 -0
- package/dist/crud/mask.js +41 -0
- package/dist/crud/mask.js.map +1 -0
- package/dist/crud/records.d.ts +33 -0
- package/dist/crud/records.d.ts.map +1 -0
- package/dist/crud/records.js +126 -0
- package/dist/crud/records.js.map +1 -0
- package/dist/crud/undo.d.ts +55 -0
- package/dist/crud/undo.d.ts.map +1 -0
- package/dist/crud/undo.js +74 -0
- package/dist/crud/undo.js.map +1 -0
- package/dist/data-io/coerce.d.ts +28 -0
- package/dist/data-io/coerce.d.ts.map +1 -0
- package/dist/data-io/coerce.js +123 -0
- package/dist/data-io/coerce.js.map +1 -0
- package/dist/data-io/csv.d.ts +38 -0
- package/dist/data-io/csv.d.ts.map +1 -0
- package/dist/data-io/csv.js +138 -0
- package/dist/data-io/csv.js.map +1 -0
- package/dist/data-io/snapshot-view.d.ts +10 -0
- package/dist/data-io/snapshot-view.d.ts.map +1 -0
- package/dist/data-io/snapshot-view.js +19 -0
- package/dist/data-io/snapshot-view.js.map +1 -0
- package/dist/desktop/demo-seed.d.ts +23 -0
- package/dist/desktop/demo-seed.d.ts.map +1 -0
- package/dist/desktop/demo-seed.js +28 -0
- package/dist/desktop/demo-seed.js.map +1 -0
- package/dist/desktop/lan-share.d.ts +94 -0
- package/dist/desktop/lan-share.d.ts.map +1 -0
- package/dist/desktop/lan-share.js +150 -0
- package/dist/desktop/lan-share.js.map +1 -0
- package/dist/errors.d.ts +72 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +82 -0
- package/dist/errors.js.map +1 -0
- package/dist/export/bundle.d.ts +235 -0
- package/dist/export/bundle.d.ts.map +1 -0
- package/dist/export/bundle.js +172 -0
- package/dist/export/bundle.js.map +1 -0
- package/dist/export/import-service.d.ts +99 -0
- package/dist/export/import-service.d.ts.map +1 -0
- package/dist/export/import-service.js +515 -0
- package/dist/export/import-service.js.map +1 -0
- package/dist/export/readme.d.ts +25 -0
- package/dist/export/readme.d.ts.map +1 -0
- package/dist/export/readme.js +154 -0
- package/dist/export/readme.js.map +1 -0
- package/dist/export/redaction.d.ts +118 -0
- package/dist/export/redaction.d.ts.map +1 -0
- package/dist/export/redaction.js +233 -0
- package/dist/export/redaction.js.map +1 -0
- package/dist/export/zip-service.d.ts +66 -0
- package/dist/export/zip-service.d.ts.map +1 -0
- package/dist/export/zip-service.js +306 -0
- package/dist/export/zip-service.js.map +1 -0
- package/dist/files/storage.d.ts +50 -0
- package/dist/files/storage.d.ts.map +1 -0
- package/dist/files/storage.js +100 -0
- package/dist/files/storage.js.map +1 -0
- package/dist/generate/materialize-llm.d.ts +45 -0
- package/dist/generate/materialize-llm.d.ts.map +1 -0
- package/dist/generate/materialize-llm.js +167 -0
- package/dist/generate/materialize-llm.js.map +1 -0
- package/dist/generate/run.d.ts +48 -0
- package/dist/generate/run.d.ts.map +1 -0
- package/dist/generate/run.js +123 -0
- package/dist/generate/run.js.map +1 -0
- package/dist/index.d.ts +89 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +116 -0
- package/dist/index.js.map +1 -0
- package/dist/jobs/export-run.d.ts +38 -0
- package/dist/jobs/export-run.d.ts.map +1 -0
- package/dist/jobs/export-run.js +172 -0
- package/dist/jobs/export-run.js.map +1 -0
- package/dist/jobs/import-run.d.ts +43 -0
- package/dist/jobs/import-run.d.ts.map +1 -0
- package/dist/jobs/import-run.js +290 -0
- package/dist/jobs/import-run.js.map +1 -0
- package/dist/jobs/llm-run.d.ts +73 -0
- package/dist/jobs/llm-run.d.ts.map +1 -0
- package/dist/jobs/llm-run.js +225 -0
- package/dist/jobs/llm-run.js.map +1 -0
- package/dist/jobs/register.d.ts +90 -0
- package/dist/jobs/register.d.ts.map +1 -0
- package/dist/jobs/register.js +121 -0
- package/dist/jobs/register.js.map +1 -0
- package/dist/jobs/registry.d.ts +74 -0
- package/dist/jobs/registry.d.ts.map +1 -0
- package/dist/jobs/registry.js +78 -0
- package/dist/jobs/registry.js.map +1 -0
- package/dist/jobs/report-run.d.ts +64 -0
- package/dist/jobs/report-run.d.ts.map +1 -0
- package/dist/jobs/report-run.js +221 -0
- package/dist/jobs/report-run.js.map +1 -0
- package/dist/jobs/scheduler.d.ts +72 -0
- package/dist/jobs/scheduler.d.ts.map +1 -0
- package/dist/jobs/scheduler.js +121 -0
- package/dist/jobs/scheduler.js.map +1 -0
- package/dist/jobs/worker.d.ts +110 -0
- package/dist/jobs/worker.d.ts.map +1 -0
- package/dist/jobs/worker.js +282 -0
- package/dist/jobs/worker.js.map +1 -0
- package/dist/llm/apply-service.d.ts +150 -0
- package/dist/llm/apply-service.d.ts.map +1 -0
- package/dist/llm/apply-service.js +463 -0
- package/dist/llm/apply-service.js.map +1 -0
- package/dist/llm/apply-undo-store.d.ts +50 -0
- package/dist/llm/apply-undo-store.d.ts.map +1 -0
- package/dist/llm/apply-undo-store.js +60 -0
- package/dist/llm/apply-undo-store.js.map +1 -0
- package/dist/llm/direct-runner.d.ts +146 -0
- package/dist/llm/direct-runner.d.ts.map +1 -0
- package/dist/llm/direct-runner.js +204 -0
- package/dist/llm/direct-runner.js.map +1 -0
- package/dist/llm/prompt-service.d.ts +90 -0
- package/dist/llm/prompt-service.d.ts.map +1 -0
- package/dist/llm/prompt-service.js +93 -0
- package/dist/llm/prompt-service.js.map +1 -0
- package/dist/llm/provider-resolver.d.ts +25 -0
- package/dist/llm/provider-resolver.d.ts.map +1 -0
- package/dist/llm/provider-resolver.js +81 -0
- package/dist/llm/provider-resolver.js.map +1 -0
- package/dist/llm/run-service.d.ts +215 -0
- package/dist/llm/run-service.d.ts.map +1 -0
- package/dist/llm/run-service.js +343 -0
- package/dist/llm/run-service.js.map +1 -0
- package/dist/llm/stats-collector.d.ts +40 -0
- package/dist/llm/stats-collector.d.ts.map +1 -0
- package/dist/llm/stats-collector.js +74 -0
- package/dist/llm/stats-collector.js.map +1 -0
- package/dist/log-scrub.d.ts +58 -0
- package/dist/log-scrub.d.ts.map +1 -0
- package/dist/log-scrub.js +103 -0
- package/dist/log-scrub.js.map +1 -0
- package/dist/meta/store.d.ts +96 -0
- package/dist/meta/store.d.ts.map +1 -0
- package/dist/meta/store.js +192 -0
- package/dist/meta/store.js.map +1 -0
- package/dist/notifications/notify.d.ts +43 -0
- package/dist/notifications/notify.d.ts.map +1 -0
- package/dist/notifications/notify.js +42 -0
- package/dist/notifications/notify.js.map +1 -0
- package/dist/plugins/auth.d.ts +42 -0
- package/dist/plugins/auth.d.ts.map +1 -0
- package/dist/plugins/auth.js +84 -0
- package/dist/plugins/auth.js.map +1 -0
- package/dist/plugins/core.d.ts +48 -0
- package/dist/plugins/core.d.ts.map +1 -0
- package/dist/plugins/core.js +248 -0
- package/dist/plugins/core.js.map +1 -0
- package/dist/plugins/rbac.d.ts +54 -0
- package/dist/plugins/rbac.d.ts.map +1 -0
- package/dist/plugins/rbac.js +103 -0
- package/dist/plugins/rbac.js.map +1 -0
- package/dist/plugins/static.d.ts +12 -0
- package/dist/plugins/static.d.ts.map +1 -0
- package/dist/plugins/static.js +36 -0
- package/dist/plugins/static.js.map +1 -0
- package/dist/rbac/api-keys.d.ts +30 -0
- package/dist/rbac/api-keys.d.ts.map +1 -0
- package/dist/rbac/api-keys.js +41 -0
- package/dist/rbac/api-keys.js.map +1 -0
- package/dist/rbac/index.d.ts +6 -0
- package/dist/rbac/index.d.ts.map +1 -0
- package/dist/rbac/index.js +6 -0
- package/dist/rbac/index.js.map +1 -0
- package/dist/rbac/permissions.d.ts +107 -0
- package/dist/rbac/permissions.d.ts.map +1 -0
- package/dist/rbac/permissions.js +250 -0
- package/dist/rbac/permissions.js.map +1 -0
- package/dist/rbac/principal.d.ts +33 -0
- package/dist/rbac/principal.d.ts.map +1 -0
- package/dist/rbac/principal.js +31 -0
- package/dist/rbac/principal.js.map +1 -0
- package/dist/rbac/resolver.d.ts +26 -0
- package/dist/rbac/resolver.d.ts.map +1 -0
- package/dist/rbac/resolver.js +46 -0
- package/dist/rbac/resolver.js.map +1 -0
- package/dist/realtime/hub.d.ts +90 -0
- package/dist/realtime/hub.d.ts.map +1 -0
- package/dist/realtime/hub.js +146 -0
- package/dist/realtime/hub.js.map +1 -0
- package/dist/realtime/sse.d.ts +35 -0
- package/dist/realtime/sse.d.ts.map +1 -0
- package/dist/realtime/sse.js +88 -0
- package/dist/realtime/sse.js.map +1 -0
- package/dist/realtime/ws.d.ts +38 -0
- package/dist/realtime/ws.d.ts.map +1 -0
- package/dist/realtime/ws.js +124 -0
- package/dist/realtime/ws.js.map +1 -0
- package/dist/reports/schedule.d.ts +14 -0
- package/dist/reports/schedule.d.ts.map +1 -0
- package/dist/reports/schedule.js +63 -0
- package/dist/reports/schedule.js.map +1 -0
- package/dist/routes/about/index.d.ts +39 -0
- package/dist/routes/about/index.d.ts.map +1 -0
- package/dist/routes/about/index.js +73 -0
- package/dist/routes/about/index.js.map +1 -0
- package/dist/routes/about/schema.d.ts +50 -0
- package/dist/routes/about/schema.d.ts.map +1 -0
- package/dist/routes/about/schema.js +53 -0
- package/dist/routes/about/schema.js.map +1 -0
- package/dist/routes/api-keys/index.d.ts +11 -0
- package/dist/routes/api-keys/index.d.ts.map +1 -0
- package/dist/routes/api-keys/index.js +79 -0
- package/dist/routes/api-keys/index.js.map +1 -0
- package/dist/routes/api-keys/schema.d.ts +62 -0
- package/dist/routes/api-keys/schema.d.ts.map +1 -0
- package/dist/routes/api-keys/schema.js +37 -0
- package/dist/routes/api-keys/schema.js.map +1 -0
- package/dist/routes/audit/index.d.ts +11 -0
- package/dist/routes/audit/index.d.ts.map +1 -0
- package/dist/routes/audit/index.js +107 -0
- package/dist/routes/audit/index.js.map +1 -0
- package/dist/routes/audit/schema.d.ts +129 -0
- package/dist/routes/audit/schema.d.ts.map +1 -0
- package/dist/routes/audit/schema.js +43 -0
- package/dist/routes/audit/schema.js.map +1 -0
- package/dist/routes/auth/desktop-session.d.ts +48 -0
- package/dist/routes/auth/desktop-session.d.ts.map +1 -0
- package/dist/routes/auth/desktop-session.js +132 -0
- package/dist/routes/auth/desktop-session.js.map +1 -0
- package/dist/routes/auth/handlers.d.ts +21 -0
- package/dist/routes/auth/handlers.d.ts.map +1 -0
- package/dist/routes/auth/handlers.js +256 -0
- package/dist/routes/auth/handlers.js.map +1 -0
- package/dist/routes/auth/index.d.ts +27 -0
- package/dist/routes/auth/index.d.ts.map +1 -0
- package/dist/routes/auth/index.js +67 -0
- package/dist/routes/auth/index.js.map +1 -0
- package/dist/routes/auth/schema.d.ts +129 -0
- package/dist/routes/auth/schema.d.ts.map +1 -0
- package/dist/routes/auth/schema.js +84 -0
- package/dist/routes/auth/schema.js.map +1 -0
- package/dist/routes/bootstrap/handlers.d.ts +34 -0
- package/dist/routes/bootstrap/handlers.d.ts.map +1 -0
- package/dist/routes/bootstrap/handlers.js +96 -0
- package/dist/routes/bootstrap/handlers.js.map +1 -0
- package/dist/routes/bootstrap/index.d.ts +9 -0
- package/dist/routes/bootstrap/index.d.ts.map +1 -0
- package/dist/routes/bootstrap/index.js +16 -0
- package/dist/routes/bootstrap/index.js.map +1 -0
- package/dist/routes/bootstrap/schema.d.ts +177 -0
- package/dist/routes/bootstrap/schema.d.ts.map +1 -0
- package/dist/routes/bootstrap/schema.js +55 -0
- package/dist/routes/bootstrap/schema.js.map +1 -0
- package/dist/routes/connections/index.d.ts +21 -0
- package/dist/routes/connections/index.d.ts.map +1 -0
- package/dist/routes/connections/index.js +260 -0
- package/dist/routes/connections/index.js.map +1 -0
- package/dist/routes/connections/schema.d.ts +161 -0
- package/dist/routes/connections/schema.d.ts.map +1 -0
- package/dist/routes/connections/schema.js +91 -0
- package/dist/routes/connections/schema.js.map +1 -0
- package/dist/routes/data/index.d.ts +46 -0
- package/dist/routes/data/index.d.ts.map +1 -0
- package/dist/routes/data/index.js +508 -0
- package/dist/routes/data/index.js.map +1 -0
- package/dist/routes/data/schema.d.ts +128 -0
- package/dist/routes/data/schema.d.ts.map +1 -0
- package/dist/routes/data/schema.js +83 -0
- package/dist/routes/data/schema.js.map +1 -0
- package/dist/routes/desktop/index.d.ts +61 -0
- package/dist/routes/desktop/index.d.ts.map +1 -0
- package/dist/routes/desktop/index.js +91 -0
- package/dist/routes/desktop/index.js.map +1 -0
- package/dist/routes/desktop/schema.d.ts +71 -0
- package/dist/routes/desktop/schema.d.ts.map +1 -0
- package/dist/routes/desktop/schema.js +58 -0
- package/dist/routes/desktop/schema.js.map +1 -0
- package/dist/routes/desktop-capabilities/index.d.ts +9 -0
- package/dist/routes/desktop-capabilities/index.d.ts.map +1 -0
- package/dist/routes/desktop-capabilities/index.js +62 -0
- package/dist/routes/desktop-capabilities/index.js.map +1 -0
- package/dist/routes/desktop-capabilities/schema.d.ts +46 -0
- package/dist/routes/desktop-capabilities/schema.d.ts.map +1 -0
- package/dist/routes/desktop-capabilities/schema.js +30 -0
- package/dist/routes/desktop-capabilities/schema.js.map +1 -0
- package/dist/routes/desktop-demo/handlers.d.ts +94 -0
- package/dist/routes/desktop-demo/handlers.d.ts.map +1 -0
- package/dist/routes/desktop-demo/handlers.js +182 -0
- package/dist/routes/desktop-demo/handlers.js.map +1 -0
- package/dist/routes/desktop-demo/index.d.ts +39 -0
- package/dist/routes/desktop-demo/index.d.ts.map +1 -0
- package/dist/routes/desktop-demo/index.js +73 -0
- package/dist/routes/desktop-demo/index.js.map +1 -0
- package/dist/routes/desktop-demo/schema.d.ts +17 -0
- package/dist/routes/desktop-demo/schema.d.ts.map +1 -0
- package/dist/routes/desktop-demo/schema.js +30 -0
- package/dist/routes/desktop-demo/schema.js.map +1 -0
- package/dist/routes/desktop-lan/index.d.ts +54 -0
- package/dist/routes/desktop-lan/index.d.ts.map +1 -0
- package/dist/routes/desktop-lan/index.js +33 -0
- package/dist/routes/desktop-lan/index.js.map +1 -0
- package/dist/routes/desktop-lan/schema.d.ts +24 -0
- package/dist/routes/desktop-lan/schema.d.ts.map +1 -0
- package/dist/routes/desktop-lan/schema.js +40 -0
- package/dist/routes/desktop-lan/schema.js.map +1 -0
- package/dist/routes/desktop-local-db/handlers.d.ts +92 -0
- package/dist/routes/desktop-local-db/handlers.d.ts.map +1 -0
- package/dist/routes/desktop-local-db/handlers.js +300 -0
- package/dist/routes/desktop-local-db/handlers.js.map +1 -0
- package/dist/routes/desktop-local-db/index.d.ts +39 -0
- package/dist/routes/desktop-local-db/index.d.ts.map +1 -0
- package/dist/routes/desktop-local-db/index.js +83 -0
- package/dist/routes/desktop-local-db/index.js.map +1 -0
- package/dist/routes/desktop-local-db/placeholder.d.ts +75 -0
- package/dist/routes/desktop-local-db/placeholder.d.ts.map +1 -0
- package/dist/routes/desktop-local-db/placeholder.js +420 -0
- package/dist/routes/desktop-local-db/placeholder.js.map +1 -0
- package/dist/routes/desktop-local-db/schema.d.ts +50 -0
- package/dist/routes/desktop-local-db/schema.d.ts.map +1 -0
- package/dist/routes/desktop-local-db/schema.js +71 -0
- package/dist/routes/desktop-local-db/schema.js.map +1 -0
- package/dist/routes/desktop-local-db/sqlite-ddl.d.ts +104 -0
- package/dist/routes/desktop-local-db/sqlite-ddl.d.ts.map +1 -0
- package/dist/routes/desktop-local-db/sqlite-ddl.js +419 -0
- package/dist/routes/desktop-local-db/sqlite-ddl.js.map +1 -0
- package/dist/routes/email-templates/index.d.ts +7 -0
- package/dist/routes/email-templates/index.d.ts.map +1 -0
- package/dist/routes/email-templates/index.js +70 -0
- package/dist/routes/email-templates/index.js.map +1 -0
- package/dist/routes/email-templates/schema.d.ts +54 -0
- package/dist/routes/email-templates/schema.d.ts.map +1 -0
- package/dist/routes/email-templates/schema.js +35 -0
- package/dist/routes/email-templates/schema.js.map +1 -0
- package/dist/routes/exports/index.d.ts +19 -0
- package/dist/routes/exports/index.d.ts.map +1 -0
- package/dist/routes/exports/index.js +145 -0
- package/dist/routes/exports/index.js.map +1 -0
- package/dist/routes/exports/schema.d.ts +183 -0
- package/dist/routes/exports/schema.d.ts.map +1 -0
- package/dist/routes/exports/schema.js +37 -0
- package/dist/routes/exports/schema.js.map +1 -0
- package/dist/routes/generate/index.d.ts +23 -0
- package/dist/routes/generate/index.d.ts.map +1 -0
- package/dist/routes/generate/index.js +80 -0
- package/dist/routes/generate/index.js.map +1 -0
- package/dist/routes/generate/schema.d.ts +43 -0
- package/dist/routes/generate/schema.d.ts.map +1 -0
- package/dist/routes/generate/schema.js +37 -0
- package/dist/routes/generate/schema.js.map +1 -0
- package/dist/routes/imports/index.d.ts +21 -0
- package/dist/routes/imports/index.d.ts.map +1 -0
- package/dist/routes/imports/index.js +288 -0
- package/dist/routes/imports/index.js.map +1 -0
- package/dist/routes/imports/schema.d.ts +292 -0
- package/dist/routes/imports/schema.d.ts.map +1 -0
- package/dist/routes/imports/schema.js +78 -0
- package/dist/routes/imports/schema.js.map +1 -0
- package/dist/routes/index.d.ts +11 -0
- package/dist/routes/index.d.ts.map +1 -0
- package/dist/routes/index.js +8 -0
- package/dist/routes/index.js.map +1 -0
- package/dist/routes/jobs/index.d.ts +29 -0
- package/dist/routes/jobs/index.d.ts.map +1 -0
- package/dist/routes/jobs/index.js +175 -0
- package/dist/routes/jobs/index.js.map +1 -0
- package/dist/routes/jobs/schema.d.ts +170 -0
- package/dist/routes/jobs/schema.d.ts.map +1 -0
- package/dist/routes/jobs/schema.js +57 -0
- package/dist/routes/jobs/schema.js.map +1 -0
- package/dist/routes/llm/config-service.d.ts +48 -0
- package/dist/routes/llm/config-service.d.ts.map +1 -0
- package/dist/routes/llm/config-service.js +102 -0
- package/dist/routes/llm/config-service.js.map +1 -0
- package/dist/routes/llm/index.d.ts +69 -0
- package/dist/routes/llm/index.d.ts.map +1 -0
- package/dist/routes/llm/index.js +412 -0
- package/dist/routes/llm/index.js.map +1 -0
- package/dist/routes/llm/schema.d.ts +605 -0
- package/dist/routes/llm/schema.d.ts.map +1 -0
- package/dist/routes/llm/schema.js +238 -0
- package/dist/routes/llm/schema.js.map +1 -0
- package/dist/routes/me/handlers.d.ts +14 -0
- package/dist/routes/me/handlers.d.ts.map +1 -0
- package/dist/routes/me/handlers.js +88 -0
- package/dist/routes/me/handlers.js.map +1 -0
- package/dist/routes/me/index.d.ts +8 -0
- package/dist/routes/me/index.d.ts.map +1 -0
- package/dist/routes/me/index.js +17 -0
- package/dist/routes/me/index.js.map +1 -0
- package/dist/routes/me/schema.d.ts +270 -0
- package/dist/routes/me/schema.d.ts.map +1 -0
- package/dist/routes/me/schema.js +59 -0
- package/dist/routes/me/schema.js.map +1 -0
- package/dist/routes/me-views/index.d.ts +23 -0
- package/dist/routes/me-views/index.d.ts.map +1 -0
- package/dist/routes/me-views/index.js +76 -0
- package/dist/routes/me-views/index.js.map +1 -0
- package/dist/routes/me-views/schema.d.ts +44 -0
- package/dist/routes/me-views/schema.d.ts.map +1 -0
- package/dist/routes/me-views/schema.js +13 -0
- package/dist/routes/me-views/schema.js.map +1 -0
- package/dist/routes/notifications/index.d.ts +19 -0
- package/dist/routes/notifications/index.d.ts.map +1 -0
- package/dist/routes/notifications/index.js +123 -0
- package/dist/routes/notifications/index.js.map +1 -0
- package/dist/routes/notifications/schema.d.ts +122 -0
- package/dist/routes/notifications/schema.d.ts.map +1 -0
- package/dist/routes/notifications/schema.js +83 -0
- package/dist/routes/notifications/schema.js.map +1 -0
- package/dist/routes/onboarding/derive.d.ts +41 -0
- package/dist/routes/onboarding/derive.d.ts.map +1 -0
- package/dist/routes/onboarding/derive.js +30 -0
- package/dist/routes/onboarding/derive.js.map +1 -0
- package/dist/routes/onboarding/index.d.ts +26 -0
- package/dist/routes/onboarding/index.d.ts.map +1 -0
- package/dist/routes/onboarding/index.js +95 -0
- package/dist/routes/onboarding/index.js.map +1 -0
- package/dist/routes/onboarding/schema.d.ts +22 -0
- package/dist/routes/onboarding/schema.d.ts.map +1 -0
- package/dist/routes/onboarding/schema.js +22 -0
- package/dist/routes/onboarding/schema.js.map +1 -0
- package/dist/routes/pages/index.d.ts +26 -0
- package/dist/routes/pages/index.d.ts.map +1 -0
- package/dist/routes/pages/index.js +119 -0
- package/dist/routes/pages/index.js.map +1 -0
- package/dist/routes/pages/layout-schema.d.ts +19 -0
- package/dist/routes/pages/layout-schema.d.ts.map +1 -0
- package/dist/routes/pages/layout-schema.js +19 -0
- package/dist/routes/pages/layout-schema.js.map +1 -0
- package/dist/routes/pages/schema.d.ts +52 -0
- package/dist/routes/pages/schema.d.ts.map +1 -0
- package/dist/routes/pages/schema.js +35 -0
- package/dist/routes/pages/schema.js.map +1 -0
- package/dist/routes/roles/index.d.ts +17 -0
- package/dist/routes/roles/index.d.ts.map +1 -0
- package/dist/routes/roles/index.js +255 -0
- package/dist/routes/roles/index.js.map +1 -0
- package/dist/routes/roles/schema.d.ts +94 -0
- package/dist/routes/roles/schema.d.ts.map +1 -0
- package/dist/routes/roles/schema.js +57 -0
- package/dist/routes/roles/schema.js.map +1 -0
- package/dist/routes/scheduled-reports/index.d.ts +15 -0
- package/dist/routes/scheduled-reports/index.d.ts.map +1 -0
- package/dist/routes/scheduled-reports/index.js +195 -0
- package/dist/routes/scheduled-reports/index.js.map +1 -0
- package/dist/routes/scheduled-reports/schema.d.ts +154 -0
- package/dist/routes/scheduled-reports/schema.d.ts.map +1 -0
- package/dist/routes/scheduled-reports/schema.js +49 -0
- package/dist/routes/scheduled-reports/schema.js.map +1 -0
- package/dist/routes/schema/index.d.ts +24 -0
- package/dist/routes/schema/index.d.ts.map +1 -0
- package/dist/routes/schema/index.js +224 -0
- package/dist/routes/schema/index.js.map +1 -0
- package/dist/routes/schema/schema.d.ts +92 -0
- package/dist/routes/schema/schema.d.ts.map +1 -0
- package/dist/routes/schema/schema.js +64 -0
- package/dist/routes/schema/schema.js.map +1 -0
- package/dist/routes/schema-import/fallback-parser.d.ts +35 -0
- package/dist/routes/schema-import/fallback-parser.d.ts.map +1 -0
- package/dist/routes/schema-import/fallback-parser.js +349 -0
- package/dist/routes/schema-import/fallback-parser.js.map +1 -0
- package/dist/routes/schema-import/index.d.ts +43 -0
- package/dist/routes/schema-import/index.d.ts.map +1 -0
- package/dist/routes/schema-import/index.js +167 -0
- package/dist/routes/schema-import/index.js.map +1 -0
- package/dist/routes/schema-import/schema.d.ts +65 -0
- package/dist/routes/schema-import/schema.d.ts.map +1 -0
- package/dist/routes/schema-import/schema.js +40 -0
- package/dist/routes/schema-import/schema.js.map +1 -0
- package/dist/routes/search/index.d.ts +71 -0
- package/dist/routes/search/index.d.ts.map +1 -0
- package/dist/routes/search/index.js +361 -0
- package/dist/routes/search/index.js.map +1 -0
- package/dist/routes/search/schema.d.ts +125 -0
- package/dist/routes/search/schema.d.ts.map +1 -0
- package/dist/routes/search/schema.js +70 -0
- package/dist/routes/search/schema.js.map +1 -0
- package/dist/routes/settings/index.d.ts +24 -0
- package/dist/routes/settings/index.d.ts.map +1 -0
- package/dist/routes/settings/index.js +164 -0
- package/dist/routes/settings/index.js.map +1 -0
- package/dist/routes/settings/schema.d.ts +110 -0
- package/dist/routes/settings/schema.d.ts.map +1 -0
- package/dist/routes/settings/schema.js +71 -0
- package/dist/routes/settings/schema.js.map +1 -0
- package/dist/routes/setup/index.d.ts +29 -0
- package/dist/routes/setup/index.d.ts.map +1 -0
- package/dist/routes/setup/index.js +68 -0
- package/dist/routes/setup/index.js.map +1 -0
- package/dist/routes/setup/schema.d.ts +61 -0
- package/dist/routes/setup/schema.d.ts.map +1 -0
- package/dist/routes/setup/schema.js +47 -0
- package/dist/routes/setup/schema.js.map +1 -0
- package/dist/routes/system/handlers.d.ts +63 -0
- package/dist/routes/system/handlers.d.ts.map +1 -0
- package/dist/routes/system/handlers.js +121 -0
- package/dist/routes/system/handlers.js.map +1 -0
- package/dist/routes/system/index.d.ts +34 -0
- package/dist/routes/system/index.d.ts.map +1 -0
- package/dist/routes/system/index.js +18 -0
- package/dist/routes/system/index.js.map +1 -0
- package/dist/routes/system/schema.d.ts +93 -0
- package/dist/routes/system/schema.d.ts.map +1 -0
- package/dist/routes/system/schema.js +109 -0
- package/dist/routes/system/schema.js.map +1 -0
- package/dist/routes/views/index.d.ts +21 -0
- package/dist/routes/views/index.d.ts.map +1 -0
- package/dist/routes/views/index.js +155 -0
- package/dist/routes/views/index.js.map +1 -0
- package/dist/routes/views/schema.d.ts +127 -0
- package/dist/routes/views/schema.d.ts.map +1 -0
- package/dist/routes/views/schema.js +56 -0
- package/dist/routes/views/schema.js.map +1 -0
- package/dist/routes/widget-data/index.d.ts +29 -0
- package/dist/routes/widget-data/index.d.ts.map +1 -0
- package/dist/routes/widget-data/index.js +152 -0
- package/dist/routes/widget-data/index.js.map +1 -0
- package/dist/routes/widget-data/schema.d.ts +252 -0
- package/dist/routes/widget-data/schema.d.ts.map +1 -0
- package/dist/routes/widget-data/schema.js +44 -0
- package/dist/routes/widget-data/schema.js.map +1 -0
- package/dist/setup/service.d.ts +63 -0
- package/dist/setup/service.d.ts.map +1 -0
- package/dist/setup/service.js +103 -0
- package/dist/setup/service.js.map +1 -0
- package/dist/start.d.ts +12 -0
- package/dist/start.d.ts.map +1 -0
- package/dist/start.js +28 -0
- package/dist/start.js.map +1 -0
- package/dist/telemetry/payload.d.ts +66 -0
- package/dist/telemetry/payload.d.ts.map +1 -0
- package/dist/telemetry/payload.js +69 -0
- package/dist/telemetry/payload.js.map +1 -0
- package/dist/telemetry/service.d.ts +67 -0
- package/dist/telemetry/service.d.ts.map +1 -0
- package/dist/telemetry/service.js +103 -0
- package/dist/telemetry/service.js.map +1 -0
- package/dist/telemetry/update-check.d.ts +79 -0
- package/dist/telemetry/update-check.d.ts.map +1 -0
- package/dist/telemetry/update-check.js +103 -0
- package/dist/telemetry/update-check.js.map +1 -0
- package/dist/version.d.ts +14 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +21 -0
- package/dist/version.js.map +1 -0
- package/dist/widget-data/cache.d.ts +35 -0
- package/dist/widget-data/cache.d.ts.map +1 -0
- package/dist/widget-data/cache.js +67 -0
- package/dist/widget-data/cache.js.map +1 -0
- package/dist/widget-data/compiler.d.ts +107 -0
- package/dist/widget-data/compiler.d.ts.map +1 -0
- package/dist/widget-data/compiler.js +362 -0
- package/dist/widget-data/compiler.js.map +1 -0
- package/dist/widget-data/shapers.d.ts +75 -0
- package/dist/widget-data/shapers.d.ts.map +1 -0
- package/dist/widget-data/shapers.js +128 -0
- package/dist/widget-data/shapers.js.map +1 -0
- package/dist/widget-data/stream-publisher.d.ts +42 -0
- package/dist/widget-data/stream-publisher.d.ts.map +1 -0
- package/dist/widget-data/stream-publisher.js +34 -0
- package/dist/widget-data/stream-publisher.js.map +1 -0
- package/package.json +79 -0
- package/vocabulary/llm-allowlist.json +76 -0
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod schemas for the desktop local-database resource
|
|
3
|
+
* (11-electron.md §6 step 2 card 1, task 11-T07).
|
|
4
|
+
*/
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
import { parseRequestFormat } from '../schema-import/schema.js';
|
|
7
|
+
export const desktopLocalDbBody = z.object({
|
|
8
|
+
/** §6: "Name → slug → creates `<dataDir>/databases/<slug>.sqlite`". */
|
|
9
|
+
name: z.string().min(1).max(80),
|
|
10
|
+
/**
|
|
11
|
+
* §6's sub-choice. Absent ⇒ *Blank* ("empty DB; Studio's table designer per
|
|
12
|
+
* 09-generated-app.md"); present ⇒ *From a schema file*.
|
|
13
|
+
*
|
|
14
|
+
* The FILE is sent, not a parsed model, and that is a size decision as much as
|
|
15
|
+
* a trust one: `POST /schema-import/parse` replies with a `DatabaseModel` whose
|
|
16
|
+
* JSON is several times the source text for a wide schema, and posting it back
|
|
17
|
+
* would put the round trip — not the upload — against the 2 MB body cap. The
|
|
18
|
+
* server parses it here with the same resolver that route uses.
|
|
19
|
+
*/
|
|
20
|
+
schemaFile: z
|
|
21
|
+
.object({
|
|
22
|
+
/** Raw schema text. Same 2 MB body cap as `/schema-import/parse`. */
|
|
23
|
+
content: z.string().min(1),
|
|
24
|
+
/** Omit to sniff from the content / file name. */
|
|
25
|
+
format: parseRequestFormat.optional(),
|
|
26
|
+
fileName: z.string().min(1).max(255).optional(),
|
|
27
|
+
})
|
|
28
|
+
.optional(),
|
|
29
|
+
/**
|
|
30
|
+
* `designs/Connect Database.dc.html`'s "Auto-generate placeholder entries".
|
|
31
|
+
*
|
|
32
|
+
* Defaults OFF. The comp shows it ON, but the comp is showing the state AFTER
|
|
33
|
+
* the user imported a schema with no rows — and this body is also how a *Blank*
|
|
34
|
+
* database is created, where there is nothing to seed. The wizard sets it
|
|
35
|
+
* explicitly on the schema-file path; a default of `true` here would mean a
|
|
36
|
+
* client that forgot the field writes rows into the user's database.
|
|
37
|
+
*/
|
|
38
|
+
placeholderRows: z.boolean().default(false),
|
|
39
|
+
});
|
|
40
|
+
/** A non-fatal translation gap — see `sqlite-ddl.ts`'s `DdlWarning`. */
|
|
41
|
+
export const desktopLocalDbWarning = z.object({
|
|
42
|
+
code: z.string(),
|
|
43
|
+
message: z.string(),
|
|
44
|
+
tableId: z.string().nullable(),
|
|
45
|
+
});
|
|
46
|
+
export const desktopLocalDbReply = z.object({
|
|
47
|
+
data: z.object({
|
|
48
|
+
connectionId: z.string(),
|
|
49
|
+
name: z.string(),
|
|
50
|
+
/** The `<slug>` the name resolved to. */
|
|
51
|
+
slug: z.string(),
|
|
52
|
+
/**
|
|
53
|
+
* The absolute `<dataDir>/databases/<slug>.sqlite` path — unmasked for the
|
|
54
|
+
* reasons `desktop-demo/schema.ts` gives: a SQLite DSN carries no
|
|
55
|
+
* credentials, and the wizard's "Show in folder" needs a path to hand the
|
|
56
|
+
* §4 bridge.
|
|
57
|
+
*/
|
|
58
|
+
file: z.string(),
|
|
59
|
+
/** Tables created, in creation order. Empty for a blank database. */
|
|
60
|
+
tables: z.array(z.string()),
|
|
61
|
+
/** Rows written per table. Empty unless `placeholderRows` was on. */
|
|
62
|
+
rows: z.record(z.string(), z.number().int().min(0)),
|
|
63
|
+
/**
|
|
64
|
+
* What the translation could not carry across (views, expression indexes,
|
|
65
|
+
* generated columns…). §8.2's rule — never hide, always explain — is why
|
|
66
|
+
* these are on the reply rather than in a server log.
|
|
67
|
+
*/
|
|
68
|
+
warnings: z.array(desktopLocalDbWarning),
|
|
69
|
+
}),
|
|
70
|
+
});
|
|
71
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/routes/desktop-local-db/schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,uEAAuE;IACvE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IAC/B;;;;;;;;;OASG;IACH,UAAU,EAAE,CAAC;SACV,MAAM,CAAC;QACN,qEAAqE;QACrE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1B,kDAAkD;QAClD,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE;QACrC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;KAChD,CAAC;SACD,QAAQ,EAAE;IACb;;;;;;;;OAQG;IACH,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CAC5C,CAAC,CAAC;AAGH,wEAAwE;AACxE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QACb,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;QACxB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,yCAAyC;QACzC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB;;;;;WAKG;QACH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,qEAAqE;QACrE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC3B,qEAAqE;QACrE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACnD;;;;WAIG;QACH,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;KACzC,CAAC;CACH,CAAC,CAAC"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `DatabaseModel` → SQLite DDL (11-electron.md §6 step 2 card 1, task 11-T07).
|
|
3
|
+
*
|
|
4
|
+
* §6: "*From a schema file* — upload `.sql`/`pg_dump`/Prisma/Drizzle/TypeORM/
|
|
5
|
+
* Sequelize/`schema.rb`/Django/JSON via `@adminium/schema-import`, translated to
|
|
6
|
+
* SQLite DDL and applied."
|
|
7
|
+
*
|
|
8
|
+
* `@adminium/schema-import` parses eight formats into ONE artifact — the engine's
|
|
9
|
+
* `DatabaseModel` IR (05-introspection-engine.md §2.1). So this module has a
|
|
10
|
+
* single input shape regardless of which of the eight the user dropped on the
|
|
11
|
+
* wizard, and every format gets the same fidelity. It is pure: statements in,
|
|
12
|
+
* statements out, no `better-sqlite3` — which is what makes the round-trip
|
|
13
|
+
* assertable offline (emit → apply → introspect → compare) rather than by eye.
|
|
14
|
+
*
|
|
15
|
+
* ─── WHY THIS EMITS `VARCHAR(n)` AND `CHECK (… IN (…))`, NOT `TEXT` ──────────
|
|
16
|
+
*
|
|
17
|
+
* SQLite has type AFFINITY, not types: `VARCHAR(32)`, `TEXT` and `CHARACTER(1)`
|
|
18
|
+
* all behave identically at runtime, and the naive translation of every string
|
|
19
|
+
* column is therefore `TEXT`. That translation is correct and it is also the
|
|
20
|
+
* single worst thing this module could do, because the DDL is not the product —
|
|
21
|
+
* the PAGES generated from it are.
|
|
22
|
+
*
|
|
23
|
+
* 11-T08 found this the hard way while building the demo database: a
|
|
24
|
+
* `status TEXT` column introspects back with `maxLength: null`, which fails the
|
|
25
|
+
* candidate rule r07's `maxLength <= 32` gate, so the kanban archetype never
|
|
26
|
+
* scores and the table generates a plain CRUD grid instead of the board its
|
|
27
|
+
* schema is describing. The declared length and the `CHECK (col IN (…))` are how
|
|
28
|
+
* a status column stays recognisable across the emit→introspect round trip:
|
|
29
|
+
* `adapter-sqlite`'s introspector reads the declared type text for `maxLength`
|
|
30
|
+
* and lifts `CHECK … IN` into an `EnumDef` (§2.1's `source: 'check'`).
|
|
31
|
+
*
|
|
32
|
+
* So: the model's `maxLength` is preserved, and an `enum` column is emitted with
|
|
33
|
+
* its values as a CHECK constraint. A user who imports a Prisma schema with
|
|
34
|
+
* `status Status` gets a kanban board; the same import through a `TEXT`-only
|
|
35
|
+
* emitter gets a table. Both "work". Only one is the feature.
|
|
36
|
+
*
|
|
37
|
+
* ─── WHAT IS DELIBERATELY DROPPED ────────────────────────────────────────────
|
|
38
|
+
*
|
|
39
|
+
* - **Views and materialized views.** `TableModel.kind` distinguishes them but
|
|
40
|
+
* the IR carries no query text (`schema-model.ts` — there is no `definition`
|
|
41
|
+
* field), so there is nothing to emit. A `CREATE VIEW` cannot be invented from
|
|
42
|
+
* a column list. Reported as a warning, never a silent skip.
|
|
43
|
+
* - **Schemas.** SQLite has one namespace. `TableModel.schema` is folded into the
|
|
44
|
+
* emitted name only when the model actually uses more than one (see
|
|
45
|
+
* {@link emitSqliteDdl}), because `public.users` → `users` is what every
|
|
46
|
+
* single-schema import wants and `public_users` is what none of them do.
|
|
47
|
+
* - **Generated columns, RLS, partial/expression indexes, index methods.**
|
|
48
|
+
* `isGenerated` has no expression in the IR (same absence as views); RLS is
|
|
49
|
+
* Postgres-only; `IndexModel.expression`/`method`/`partial` describe a source
|
|
50
|
+
* engine's plan, not this one's.
|
|
51
|
+
*
|
|
52
|
+
* Everything dropped produces a {@link DdlWarning}, and the route hands the list
|
|
53
|
+
* to the wizard. §8.2's rule — never hide, always explain — applies to a schema
|
|
54
|
+
* translation as much as to a button.
|
|
55
|
+
*/
|
|
56
|
+
import type { DatabaseModel, TableModel } from '@adminium/engine';
|
|
57
|
+
/** A non-fatal translation gap. Mirrors the IR's own `ModelWarning` shape. */
|
|
58
|
+
export interface DdlWarning {
|
|
59
|
+
code:
|
|
60
|
+
/**
|
|
61
|
+
* Raised by the PARSER, not by this module — `@adminium/schema-import`
|
|
62
|
+
* reports what it could not read ("skipped CREATE VIEW without column
|
|
63
|
+
* list", a construct it does not model) as free text, and those are the
|
|
64
|
+
* gaps this emitter never even sees. Dropping them because they arrive in a
|
|
65
|
+
* different shape would mean the user's view vanished between their file
|
|
66
|
+
* and their database with nothing said, which is exactly the failure the
|
|
67
|
+
* `view-skipped` code below exists to prevent for the views that DO reach
|
|
68
|
+
* here. `routes/desktop-local-db/handlers.ts` folds them in.
|
|
69
|
+
*/
|
|
70
|
+
'source-not-translated' | 'view-skipped' | 'generated-column-materialized' | 'expression-index-skipped' | 'no-primary-key' | 'fk-target-missing' | 'circular-fk';
|
|
71
|
+
message: string;
|
|
72
|
+
tableId: string | null;
|
|
73
|
+
}
|
|
74
|
+
export interface SqliteDdl {
|
|
75
|
+
/** Executed in order, inside one transaction. */
|
|
76
|
+
statements: string[];
|
|
77
|
+
warnings: DdlWarning[];
|
|
78
|
+
/** Emitted table names, in creation (topological) order. */
|
|
79
|
+
tables: string[];
|
|
80
|
+
}
|
|
81
|
+
/** `"` is SQLite's standard identifier quote; doubling escapes it. */
|
|
82
|
+
export declare function quoteIdent(name: string): string;
|
|
83
|
+
/** `'` doubled — the only escape SQLite string literals have. */
|
|
84
|
+
export declare function quoteLiteral(value: string): string;
|
|
85
|
+
/**
|
|
86
|
+
* Creation order: a table's FK targets first.
|
|
87
|
+
*
|
|
88
|
+
* SQLite would actually accept any order — foreign keys are resolved lazily, and
|
|
89
|
+
* `PRAGMA foreign_keys` is per-connection — but the placeholder generator
|
|
90
|
+
* (`placeholder.ts`) needs parents to exist before children, and it reads THIS
|
|
91
|
+
* order rather than computing a second one that could disagree.
|
|
92
|
+
*
|
|
93
|
+
* A cycle (`a.b_id → b`, `b.a_id → a`) has no topological order at all. Rather
|
|
94
|
+
* than fail the import, the remaining tables are emitted in declaration order
|
|
95
|
+
* and the cycle is reported: the DDL is still correct, and only the seeding of
|
|
96
|
+
* those tables is affected (the generator skips the nullable side).
|
|
97
|
+
*/
|
|
98
|
+
export declare function orderTables(model: DatabaseModel): {
|
|
99
|
+
order: TableModel[];
|
|
100
|
+
warnings: DdlWarning[];
|
|
101
|
+
};
|
|
102
|
+
/** Translate a parsed schema into the statements that recreate it in SQLite. */
|
|
103
|
+
export declare function emitSqliteDdl(model: DatabaseModel): SqliteDdl;
|
|
104
|
+
//# sourceMappingURL=sqlite-ddl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlite-ddl.d.ts","sourceRoot":"","sources":["../../../src/routes/desktop-local-db/sqlite-ddl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAe,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE/E,8EAA8E;AAC9E,MAAM,WAAW,UAAU;IACzB,IAAI;IACF;;;;;;;;;OASG;IACD,uBAAuB,GACvB,cAAc,GACd,+BAA+B,GAC/B,0BAA0B,GAC1B,gBAAgB,GAChB,mBAAmB,GACnB,aAAa,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,SAAS;IACxB,iDAAiD;IACjD,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,4DAA4D;IAC5D,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAuCD,sEAAsE;AACtE,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,iEAAiE;AACjE,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAElD;AAkND;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG;IAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IAAC,QAAQ,EAAE,UAAU,EAAE,CAAA;CAAE,CAwCjG;AAoBD,gFAAgF;AAChF,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,CA2D7D"}
|
|
@@ -0,0 +1,419 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `DatabaseModel` → SQLite DDL (11-electron.md §6 step 2 card 1, task 11-T07).
|
|
3
|
+
*
|
|
4
|
+
* §6: "*From a schema file* — upload `.sql`/`pg_dump`/Prisma/Drizzle/TypeORM/
|
|
5
|
+
* Sequelize/`schema.rb`/Django/JSON via `@adminium/schema-import`, translated to
|
|
6
|
+
* SQLite DDL and applied."
|
|
7
|
+
*
|
|
8
|
+
* `@adminium/schema-import` parses eight formats into ONE artifact — the engine's
|
|
9
|
+
* `DatabaseModel` IR (05-introspection-engine.md §2.1). So this module has a
|
|
10
|
+
* single input shape regardless of which of the eight the user dropped on the
|
|
11
|
+
* wizard, and every format gets the same fidelity. It is pure: statements in,
|
|
12
|
+
* statements out, no `better-sqlite3` — which is what makes the round-trip
|
|
13
|
+
* assertable offline (emit → apply → introspect → compare) rather than by eye.
|
|
14
|
+
*
|
|
15
|
+
* ─── WHY THIS EMITS `VARCHAR(n)` AND `CHECK (… IN (…))`, NOT `TEXT` ──────────
|
|
16
|
+
*
|
|
17
|
+
* SQLite has type AFFINITY, not types: `VARCHAR(32)`, `TEXT` and `CHARACTER(1)`
|
|
18
|
+
* all behave identically at runtime, and the naive translation of every string
|
|
19
|
+
* column is therefore `TEXT`. That translation is correct and it is also the
|
|
20
|
+
* single worst thing this module could do, because the DDL is not the product —
|
|
21
|
+
* the PAGES generated from it are.
|
|
22
|
+
*
|
|
23
|
+
* 11-T08 found this the hard way while building the demo database: a
|
|
24
|
+
* `status TEXT` column introspects back with `maxLength: null`, which fails the
|
|
25
|
+
* candidate rule r07's `maxLength <= 32` gate, so the kanban archetype never
|
|
26
|
+
* scores and the table generates a plain CRUD grid instead of the board its
|
|
27
|
+
* schema is describing. The declared length and the `CHECK (col IN (…))` are how
|
|
28
|
+
* a status column stays recognisable across the emit→introspect round trip:
|
|
29
|
+
* `adapter-sqlite`'s introspector reads the declared type text for `maxLength`
|
|
30
|
+
* and lifts `CHECK … IN` into an `EnumDef` (§2.1's `source: 'check'`).
|
|
31
|
+
*
|
|
32
|
+
* So: the model's `maxLength` is preserved, and an `enum` column is emitted with
|
|
33
|
+
* its values as a CHECK constraint. A user who imports a Prisma schema with
|
|
34
|
+
* `status Status` gets a kanban board; the same import through a `TEXT`-only
|
|
35
|
+
* emitter gets a table. Both "work". Only one is the feature.
|
|
36
|
+
*
|
|
37
|
+
* ─── WHAT IS DELIBERATELY DROPPED ────────────────────────────────────────────
|
|
38
|
+
*
|
|
39
|
+
* - **Views and materialized views.** `TableModel.kind` distinguishes them but
|
|
40
|
+
* the IR carries no query text (`schema-model.ts` — there is no `definition`
|
|
41
|
+
* field), so there is nothing to emit. A `CREATE VIEW` cannot be invented from
|
|
42
|
+
* a column list. Reported as a warning, never a silent skip.
|
|
43
|
+
* - **Schemas.** SQLite has one namespace. `TableModel.schema` is folded into the
|
|
44
|
+
* emitted name only when the model actually uses more than one (see
|
|
45
|
+
* {@link emitSqliteDdl}), because `public.users` → `users` is what every
|
|
46
|
+
* single-schema import wants and `public_users` is what none of them do.
|
|
47
|
+
* - **Generated columns, RLS, partial/expression indexes, index methods.**
|
|
48
|
+
* `isGenerated` has no expression in the IR (same absence as views); RLS is
|
|
49
|
+
* Postgres-only; `IndexModel.expression`/`method`/`partial` describe a source
|
|
50
|
+
* engine's plan, not this one's.
|
|
51
|
+
*
|
|
52
|
+
* Everything dropped produces a {@link DdlWarning}, and the route hands the list
|
|
53
|
+
* to the wizard. §8.2's rule — never hide, always explain — applies to a schema
|
|
54
|
+
* translation as much as to a button.
|
|
55
|
+
*/
|
|
56
|
+
/**
|
|
57
|
+
* Logical type → SQLite column type.
|
|
58
|
+
*
|
|
59
|
+
* The declared text matters twice over: SQLite derives AFFINITY from it by
|
|
60
|
+
* substring rules (`INT` → INTEGER, `CHAR`/`TEXT` → TEXT, `REAL`/`FLOA`/`DOUB` →
|
|
61
|
+
* REAL, `BLOB`/empty → BLOB, everything else → NUMERIC), and `adapter-sqlite`
|
|
62
|
+
* reads it back verbatim as `dbType`. So these spellings are chosen to satisfy
|
|
63
|
+
* BOTH readers — `DECIMAL(10,2)` keeps NUMERIC affinity and round-trips its
|
|
64
|
+
* precision, where a bare `REAL` would silently discard the scale of every money
|
|
65
|
+
* column in the schema.
|
|
66
|
+
*/
|
|
67
|
+
const TYPE_MAP = {
|
|
68
|
+
text: 'TEXT',
|
|
69
|
+
varchar: 'VARCHAR',
|
|
70
|
+
integer: 'INTEGER',
|
|
71
|
+
bigint: 'BIGINT',
|
|
72
|
+
decimal: 'DECIMAL',
|
|
73
|
+
float: 'REAL',
|
|
74
|
+
// SQLite has no boolean; INTEGER 0/1 is the documented convention and is what
|
|
75
|
+
// `adapter-sqlite`'s type-map reads back as `boolean`.
|
|
76
|
+
boolean: 'BOOLEAN',
|
|
77
|
+
date: 'DATE',
|
|
78
|
+
time: 'TIME',
|
|
79
|
+
timestamp: 'DATETIME',
|
|
80
|
+
timestamptz: 'DATETIME',
|
|
81
|
+
interval: 'TEXT',
|
|
82
|
+
uuid: 'VARCHAR(36)',
|
|
83
|
+
json: 'JSON',
|
|
84
|
+
binary: 'BLOB',
|
|
85
|
+
// Never emitted directly — enum columns go through `columnType`, which needs
|
|
86
|
+
// the EnumDef to size the VARCHAR. This is the fallback if one has no ref.
|
|
87
|
+
enum: 'VARCHAR(32)',
|
|
88
|
+
geometry: 'BLOB',
|
|
89
|
+
inet: 'VARCHAR(45)',
|
|
90
|
+
unknown: 'TEXT',
|
|
91
|
+
};
|
|
92
|
+
/** `"` is SQLite's standard identifier quote; doubling escapes it. */
|
|
93
|
+
export function quoteIdent(name) {
|
|
94
|
+
return `"${name.replaceAll('"', '""')}"`;
|
|
95
|
+
}
|
|
96
|
+
/** `'` doubled — the only escape SQLite string literals have. */
|
|
97
|
+
export function quoteLiteral(value) {
|
|
98
|
+
return `'${value.replaceAll("'", "''")}'`;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* The declared type for one column.
|
|
102
|
+
*
|
|
103
|
+
* The enum branch is the one that earns its keep — see the module header. The
|
|
104
|
+
* `+ 0` guard on the VARCHAR length is not defensive noise: `maxLength` is
|
|
105
|
+
* `z.number().int().positive()` in the IR, so it is trustworthy, but an enum
|
|
106
|
+
* whose longest value exceeds the declared length would make every CHECK-passing
|
|
107
|
+
* value violate its own column type.
|
|
108
|
+
*/
|
|
109
|
+
function columnType(column, model) {
|
|
110
|
+
if (column.logicalType === 'enum' && column.enumRef !== null) {
|
|
111
|
+
const def = model.enums.find((candidate) => candidate.id === column.enumRef);
|
|
112
|
+
if (def !== undefined) {
|
|
113
|
+
const longest = def.values.reduce((max, value) => Math.max(max, value.length), 0);
|
|
114
|
+
// The `<= 32` in candidate rule r07 is a gate on the INTROSPECTED length,
|
|
115
|
+
// so a status enum must declare one that fits under it or the kanban never
|
|
116
|
+
// scores (module header). Real status vocabularies are short; the clamp
|
|
117
|
+
// only ever fires for an enum that was never going to be a board anyway.
|
|
118
|
+
return `VARCHAR(${String(Math.max(longest, 1))})`;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
if (column.logicalType === 'varchar' && column.maxLength !== null) {
|
|
122
|
+
return `VARCHAR(${String(column.maxLength)})`;
|
|
123
|
+
}
|
|
124
|
+
if (column.logicalType === 'decimal' && column.numericPrecision !== null) {
|
|
125
|
+
const scale = column.numericScale ?? 0;
|
|
126
|
+
return `DECIMAL(${String(column.numericPrecision)},${String(scale)})`;
|
|
127
|
+
}
|
|
128
|
+
return TYPE_MAP[column.logicalType];
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* The DEFAULT clause, or `null` for none.
|
|
132
|
+
*
|
|
133
|
+
* `expression` defaults are dropped rather than passed through: the text is the
|
|
134
|
+
* SOURCE engine's dialect (`nextval('users_id_seq')`, `gen_random_uuid()`,
|
|
135
|
+
* `CURRENT_TIMESTAMP AT TIME ZONE 'utc'`), and SQLite would reject most of them
|
|
136
|
+
* at CREATE TABLE time — turning one unportable default into a failed import of
|
|
137
|
+
* the whole schema. The three STRUCTURED kinds are dialect-free by construction,
|
|
138
|
+
* so those are the three that survive.
|
|
139
|
+
*/
|
|
140
|
+
function columnDefault(column) {
|
|
141
|
+
const value = column.default;
|
|
142
|
+
if (value === null)
|
|
143
|
+
return null;
|
|
144
|
+
switch (value.kind) {
|
|
145
|
+
case 'literal':
|
|
146
|
+
// A literal's text is a value, not SQL: quote it, unless it is plainly
|
|
147
|
+
// numeric or a keyword SQLite understands unquoted.
|
|
148
|
+
if (/^-?\d+(\.\d+)?$/.test(value.text))
|
|
149
|
+
return `DEFAULT ${value.text}`;
|
|
150
|
+
if (/^(null|true|false)$/i.test(value.text))
|
|
151
|
+
return `DEFAULT ${value.text.toUpperCase()}`;
|
|
152
|
+
return `DEFAULT ${quoteLiteral(value.text)}`;
|
|
153
|
+
case 'now':
|
|
154
|
+
return 'DEFAULT CURRENT_TIMESTAMP';
|
|
155
|
+
case 'uuid':
|
|
156
|
+
// SQLite has no uuid generator and no extension is loaded (§7 forbids
|
|
157
|
+
// downloading one). The column stays writable and the app supplies ids.
|
|
158
|
+
return null;
|
|
159
|
+
case 'autoincrement':
|
|
160
|
+
// Handled by INTEGER PRIMARY KEY — see `emitTable`.
|
|
161
|
+
return null;
|
|
162
|
+
case 'expression':
|
|
163
|
+
return null;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* One `CREATE TABLE`.
|
|
168
|
+
*
|
|
169
|
+
* `INTEGER PRIMARY KEY` is spelled exactly so on purpose for the single-column
|
|
170
|
+
* integer case: it is the ONLY declaration SQLite treats as a rowid alias, which
|
|
171
|
+
* is what makes the column auto-assign on insert. `INT PRIMARY KEY`,
|
|
172
|
+
* `BIGINT PRIMARY KEY` and `INTEGER PRIMARY KEY` in a table-level clause all
|
|
173
|
+
* silently lose that — the column becomes an ordinary NOT NULL integer, and the
|
|
174
|
+
* first placeholder insert (and every later CRUD create) fails with a NOT NULL
|
|
175
|
+
* violation on a column the user believes is auto-generated.
|
|
176
|
+
*/
|
|
177
|
+
function emitTable(table, model, nameOf) {
|
|
178
|
+
const warnings = [];
|
|
179
|
+
const parts = [];
|
|
180
|
+
const pk = table.primaryKey;
|
|
181
|
+
const rowidAlias = pk.length === 1 &&
|
|
182
|
+
table.columns.some((column) => column.name === pk[0] &&
|
|
183
|
+
(column.logicalType === 'integer' || column.logicalType === 'bigint'));
|
|
184
|
+
for (const column of table.columns) {
|
|
185
|
+
if (column.isGenerated) {
|
|
186
|
+
warnings.push({
|
|
187
|
+
code: 'generated-column-materialized',
|
|
188
|
+
message: `Column "${table.name}.${column.name}" is generated in the source schema. The import IR does not carry its expression, so it was created as an ordinary column.`,
|
|
189
|
+
tableId: table.id,
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
const bits = [quoteIdent(column.name)];
|
|
193
|
+
if (rowidAlias && column.name === pk[0]) {
|
|
194
|
+
// The rowid-alias spelling. NOT NULL and DEFAULT are meaningless on it
|
|
195
|
+
// (SQLite assigns the value) and `AUTOINCREMENT` is a different, slower
|
|
196
|
+
// guarantee nobody asked for.
|
|
197
|
+
bits.push('INTEGER PRIMARY KEY');
|
|
198
|
+
parts.push(bits.join(' '));
|
|
199
|
+
continue;
|
|
200
|
+
}
|
|
201
|
+
bits.push(columnType(column, model));
|
|
202
|
+
if (!column.nullable)
|
|
203
|
+
bits.push('NOT NULL');
|
|
204
|
+
if (column.isUnique && !(pk.length === 1 && column.name === pk[0]))
|
|
205
|
+
bits.push('UNIQUE');
|
|
206
|
+
const fallback = columnDefault(column);
|
|
207
|
+
if (fallback !== null)
|
|
208
|
+
bits.push(fallback);
|
|
209
|
+
if (column.logicalType === 'enum' && column.enumRef !== null) {
|
|
210
|
+
const def = model.enums.find((candidate) => candidate.id === column.enumRef);
|
|
211
|
+
if (def !== undefined && def.values.length > 0) {
|
|
212
|
+
// §2.1 `EnumDef.source: 'check'` is exactly this shape, so the
|
|
213
|
+
// introspector lifts it straight back into an enum on the next pass.
|
|
214
|
+
const values = def.values.map(quoteLiteral).join(', ');
|
|
215
|
+
bits.push(`CHECK (${quoteIdent(column.name)} IN (${values}))`);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
parts.push(bits.join(' '));
|
|
219
|
+
}
|
|
220
|
+
if (pk.length === 0) {
|
|
221
|
+
warnings.push({
|
|
222
|
+
code: 'no-primary-key',
|
|
223
|
+
message: `Table "${table.name}" has no primary key. Adminium can read it, but its rows cannot be edited.`,
|
|
224
|
+
tableId: table.id,
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
else if (!rowidAlias) {
|
|
228
|
+
parts.push(`PRIMARY KEY (${pk.map(quoteIdent).join(', ')})`);
|
|
229
|
+
}
|
|
230
|
+
for (const unique of table.uniques) {
|
|
231
|
+
// A single-column unique already rode along as a column constraint above.
|
|
232
|
+
if (unique.columns.length === 1 && table.columns.some((c) => c.name === unique.columns[0] && c.isUnique)) {
|
|
233
|
+
continue;
|
|
234
|
+
}
|
|
235
|
+
parts.push(`UNIQUE (${unique.columns.map(quoteIdent).join(', ')})`);
|
|
236
|
+
}
|
|
237
|
+
for (const check of table.checks) {
|
|
238
|
+
// The expression is source-dialect text like the expression defaults above,
|
|
239
|
+
// and unlike them it cannot be dropped without changing what the schema
|
|
240
|
+
// MEANS. SQLite's expression grammar is close enough to both Postgres's and
|
|
241
|
+
// MySQL's for the overwhelming majority of real CHECKs (`amount > 0`,
|
|
242
|
+
// `status IN (…)`), and the transaction in `applyDdl` makes a rejection a
|
|
243
|
+
// clean whole-import failure with the offending statement in the message —
|
|
244
|
+
// not a half-created database.
|
|
245
|
+
parts.push(`CHECK (${check.expression})`);
|
|
246
|
+
}
|
|
247
|
+
for (const relation of model.relations) {
|
|
248
|
+
if (relation.kind !== 'declared-fk')
|
|
249
|
+
continue;
|
|
250
|
+
if (relation.through !== null)
|
|
251
|
+
continue;
|
|
252
|
+
if (relation.from.tableId !== table.id)
|
|
253
|
+
continue;
|
|
254
|
+
const target = nameOf(relation.to.tableId);
|
|
255
|
+
if (target === null) {
|
|
256
|
+
warnings.push({
|
|
257
|
+
code: 'fk-target-missing',
|
|
258
|
+
message: `Foreign key on "${table.name}" points at "${relation.to.tableId}", which is not in this schema. The column was created without the constraint.`,
|
|
259
|
+
tableId: table.id,
|
|
260
|
+
});
|
|
261
|
+
continue;
|
|
262
|
+
}
|
|
263
|
+
const from = relation.from.columns.map(quoteIdent).join(', ');
|
|
264
|
+
const to = relation.to.columns.map(quoteIdent).join(', ');
|
|
265
|
+
const actions = [
|
|
266
|
+
relation.onDelete === null ? '' : ` ON DELETE ${fkAction(relation.onDelete)}`,
|
|
267
|
+
relation.onUpdate === null ? '' : ` ON UPDATE ${fkAction(relation.onUpdate)}`,
|
|
268
|
+
].join('');
|
|
269
|
+
parts.push(`FOREIGN KEY (${from}) REFERENCES ${quoteIdent(target)} (${to})${actions}`);
|
|
270
|
+
}
|
|
271
|
+
const name = nameOf(table.id) ?? table.name;
|
|
272
|
+
return {
|
|
273
|
+
sql: `CREATE TABLE ${quoteIdent(name)} (\n ${parts.join(',\n ')}\n)`,
|
|
274
|
+
warnings,
|
|
275
|
+
};
|
|
276
|
+
}
|
|
277
|
+
function fkAction(action) {
|
|
278
|
+
switch (action) {
|
|
279
|
+
case 'cascade':
|
|
280
|
+
return 'CASCADE';
|
|
281
|
+
case 'restrict':
|
|
282
|
+
return 'RESTRICT';
|
|
283
|
+
case 'set-null':
|
|
284
|
+
return 'SET NULL';
|
|
285
|
+
case 'set-default':
|
|
286
|
+
return 'SET DEFAULT';
|
|
287
|
+
case 'no-action':
|
|
288
|
+
return 'NO ACTION';
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
/**
|
|
292
|
+
* Creation order: a table's FK targets first.
|
|
293
|
+
*
|
|
294
|
+
* SQLite would actually accept any order — foreign keys are resolved lazily, and
|
|
295
|
+
* `PRAGMA foreign_keys` is per-connection — but the placeholder generator
|
|
296
|
+
* (`placeholder.ts`) needs parents to exist before children, and it reads THIS
|
|
297
|
+
* order rather than computing a second one that could disagree.
|
|
298
|
+
*
|
|
299
|
+
* A cycle (`a.b_id → b`, `b.a_id → a`) has no topological order at all. Rather
|
|
300
|
+
* than fail the import, the remaining tables are emitted in declaration order
|
|
301
|
+
* and the cycle is reported: the DDL is still correct, and only the seeding of
|
|
302
|
+
* those tables is affected (the generator skips the nullable side).
|
|
303
|
+
*/
|
|
304
|
+
export function orderTables(model) {
|
|
305
|
+
const tables = model.tables.filter((table) => table.kind === 'table');
|
|
306
|
+
const byId = new Map(tables.map((table) => [table.id, table]));
|
|
307
|
+
const dependencies = new Map(tables.map((table) => [table.id, new Set()]));
|
|
308
|
+
for (const relation of model.relations) {
|
|
309
|
+
if (relation.kind !== 'declared-fk' || relation.through !== null)
|
|
310
|
+
continue;
|
|
311
|
+
if (relation.selfReferential)
|
|
312
|
+
continue;
|
|
313
|
+
if (!byId.has(relation.from.tableId) || !byId.has(relation.to.tableId))
|
|
314
|
+
continue;
|
|
315
|
+
dependencies.get(relation.from.tableId)?.add(relation.to.tableId);
|
|
316
|
+
}
|
|
317
|
+
const order = [];
|
|
318
|
+
const emitted = new Set();
|
|
319
|
+
let progress = true;
|
|
320
|
+
while (progress && order.length < tables.length) {
|
|
321
|
+
progress = false;
|
|
322
|
+
for (const table of tables) {
|
|
323
|
+
if (emitted.has(table.id))
|
|
324
|
+
continue;
|
|
325
|
+
const needs = dependencies.get(table.id) ?? new Set();
|
|
326
|
+
if ([...needs].every((id) => emitted.has(id))) {
|
|
327
|
+
order.push(table);
|
|
328
|
+
emitted.add(table.id);
|
|
329
|
+
progress = true;
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
const warnings = [];
|
|
334
|
+
const stuck = tables.filter((table) => !emitted.has(table.id));
|
|
335
|
+
if (stuck.length > 0) {
|
|
336
|
+
warnings.push({
|
|
337
|
+
code: 'circular-fk',
|
|
338
|
+
message: `Circular foreign keys between ${stuck.map((table) => `"${table.name}"`).join(', ')}. The tables were created, but sample rows were not generated for them.`,
|
|
339
|
+
tableId: null,
|
|
340
|
+
});
|
|
341
|
+
order.push(...stuck);
|
|
342
|
+
}
|
|
343
|
+
return { order, warnings };
|
|
344
|
+
}
|
|
345
|
+
/**
|
|
346
|
+
* Are two tables' names distinguishable without their schema?
|
|
347
|
+
*
|
|
348
|
+
* SQLite has one namespace, so `public.users` and `audit.users` cannot both be
|
|
349
|
+
* `users`. Prefixing is the fix, and prefixing ALWAYS is the trap: a
|
|
350
|
+
* single-schema Postgres dump (the common case by a wide margin) would produce
|
|
351
|
+
* `public_users`, and every generated page, slug and nav label in the app would
|
|
352
|
+
* carry a namespace the user never typed and cannot remove.
|
|
353
|
+
*/
|
|
354
|
+
function needsSchemaPrefix(tables) {
|
|
355
|
+
const seen = new Set();
|
|
356
|
+
for (const table of tables) {
|
|
357
|
+
if (seen.has(table.name))
|
|
358
|
+
return true;
|
|
359
|
+
seen.add(table.name);
|
|
360
|
+
}
|
|
361
|
+
return false;
|
|
362
|
+
}
|
|
363
|
+
/** Translate a parsed schema into the statements that recreate it in SQLite. */
|
|
364
|
+
export function emitSqliteDdl(model) {
|
|
365
|
+
const { order, warnings } = orderTables(model);
|
|
366
|
+
const prefix = needsSchemaPrefix(order);
|
|
367
|
+
const nameOf = (id) => {
|
|
368
|
+
const table = order.find((candidate) => candidate.id === id);
|
|
369
|
+
if (table === undefined)
|
|
370
|
+
return null;
|
|
371
|
+
return prefix ? `${table.schema}_${table.name}` : table.name;
|
|
372
|
+
};
|
|
373
|
+
const statements = [];
|
|
374
|
+
const allWarnings = [...warnings];
|
|
375
|
+
for (const view of model.tables.filter((table) => table.kind !== 'table')) {
|
|
376
|
+
allWarnings.push({
|
|
377
|
+
code: 'view-skipped',
|
|
378
|
+
message: `"${view.name}" is a ${view.kind === 'view' ? 'view' : 'materialized view'}. A schema file records its columns but not its query, so it was not recreated.`,
|
|
379
|
+
tableId: view.id,
|
|
380
|
+
});
|
|
381
|
+
}
|
|
382
|
+
for (const table of order) {
|
|
383
|
+
const emitted = emitTable(table, model, nameOf);
|
|
384
|
+
statements.push(emitted.sql);
|
|
385
|
+
allWarnings.push(...emitted.warnings);
|
|
386
|
+
}
|
|
387
|
+
// Indexes after every table exists — an index statement names exactly one
|
|
388
|
+
// table, so the ordering is cosmetic, but keeping DDL grouped by kind makes
|
|
389
|
+
// the transaction readable in a log when one statement is rejected.
|
|
390
|
+
for (const table of order) {
|
|
391
|
+
const name = nameOf(table.id) ?? table.name;
|
|
392
|
+
for (const index of table.indexes) {
|
|
393
|
+
if (index.primary)
|
|
394
|
+
continue; // already the PRIMARY KEY clause
|
|
395
|
+
if (index.columns.length === 0 || index.expression !== null || index.partial) {
|
|
396
|
+
allWarnings.push({
|
|
397
|
+
code: 'expression-index-skipped',
|
|
398
|
+
message: `Index "${index.name}" on "${table.name}" is a partial or expression index. Those are written in the source engine's dialect, so it was not recreated.`,
|
|
399
|
+
tableId: table.id,
|
|
400
|
+
});
|
|
401
|
+
continue;
|
|
402
|
+
}
|
|
403
|
+
// Index names are unique per DATABASE in SQLite, not per table (they are
|
|
404
|
+
// per-schema in Postgres). Two tables with an `idx_created_at` are an
|
|
405
|
+
// ordinary Postgres schema and a duplicate-name error here, so the table
|
|
406
|
+
// name is folded in.
|
|
407
|
+
const indexName = `${name}_${index.name}`;
|
|
408
|
+
const unique = index.unique ? 'UNIQUE ' : '';
|
|
409
|
+
const columns = index.columns.map(quoteIdent).join(', ');
|
|
410
|
+
statements.push(`CREATE ${unique}INDEX IF NOT EXISTS ${quoteIdent(indexName)} ON ${quoteIdent(name)} (${columns})`);
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
return {
|
|
414
|
+
statements,
|
|
415
|
+
warnings: allWarnings,
|
|
416
|
+
tables: order.map((table) => nameOf(table.id) ?? table.name),
|
|
417
|
+
};
|
|
418
|
+
}
|
|
419
|
+
//# sourceMappingURL=sqlite-ddl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlite-ddl.js","sourceRoot":"","sources":["../../../src/routes/desktop-local-db/sqlite-ddl.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { FastifyPluginAsyncZod } from 'fastify-type-provider-zod';
|
|
2
|
+
import { type MetaDb } from '@adminium/meta';
|
|
3
|
+
export interface EmailTemplatesRoutesDeps {
|
|
4
|
+
meta: MetaDb;
|
|
5
|
+
}
|
|
6
|
+
export declare function emailTemplatesRoutes(deps: EmailTemplatesRoutesDeps): FastifyPluginAsyncZod;
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/email-templates/index.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAA0C,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAYrF,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;CACd;AAqBD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,wBAAwB,GAAG,qBAAqB,CA4D1F"}
|