better-supabase 0.14.0 → 0.15.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.
- package/README.md +67 -377
- package/dist/access-sql-B-MkVARa.js +207 -0
- package/dist/actor-go7p9-CJ.js +150 -0
- package/dist/adapter-B0b6MXYS.js +2299 -0
- package/dist/agents-5n8DWRfP.d.ts +117 -0
- package/dist/ai-cache-Cu8j6aQQ.js +87 -0
- package/dist/ai-cache-DyHohbFP.d.ts +82 -0
- package/dist/ai-chat-D1GuRnke.d.ts +619 -0
- package/dist/ai-files-CgFCRsnU.js +339 -0
- package/dist/ai-schedules-CAquecT_.d.ts +166 -0
- package/dist/ai-sdk/agents/index.d.ts +6 -6
- package/dist/ai-sdk/agents/index.js +2 -2
- package/dist/ai-sdk/batches/index.d.ts +5 -5
- package/dist/ai-sdk/batches/index.js +4 -4
- package/dist/ai-sdk/cache/index.d.ts +3 -3
- package/dist/ai-sdk/cache/index.js +2 -2
- package/dist/ai-sdk/chat/index.d.ts +1 -1
- package/dist/ai-sdk/chat/index.js +5 -5
- package/dist/ai-sdk/embeddings/index.d.ts +2 -2
- package/dist/ai-sdk/files/index.d.ts +2 -2
- package/dist/ai-sdk/files/index.js +5 -5
- package/dist/ai-sdk/index.d.ts +10 -10
- package/dist/ai-sdk/index.js +3 -3
- package/dist/ai-sdk/mcp/index.d.ts +4 -4
- package/dist/ai-sdk/mcp/index.js +6 -6
- package/dist/ai-sdk/memory/index.d.ts +3 -3
- package/dist/ai-sdk/memory/index.js +1 -1
- package/dist/ai-sdk/workflow/index.d.ts +4 -4
- package/dist/ai-sdk/workflow/index.js +7 -7
- package/dist/api-DxAPqMrE.d.ts +495 -0
- package/dist/api-keys-D5k63K6y.d.ts +213 -0
- package/dist/app-tables-CF2DD-Mu.d.ts +28 -0
- package/dist/app-tables-D29Rahtg.js +16350 -0
- package/dist/approvals-Crutd4-o.d.ts +129 -0
- package/dist/assistant-CD_h8Vxx.d.ts +157 -0
- package/dist/astro/index.d.ts +12 -12
- package/dist/astro/index.js +8 -8
- package/dist/attachments-aJYgdYtB.js +369 -0
- package/dist/attributes-Bzf51_nc.js +47 -0
- package/dist/auth-reply-tlXB2FQ9.js +31 -0
- package/dist/authorization-HZdJCaVm.d.ts +3595 -0
- package/dist/authorization-hooks-Cs1vP_ej.d.ts +217 -0
- package/dist/authorizer-B6X09otb.d.ts +118 -0
- package/dist/authorizer-BGhXaDmo.js +172 -0
- package/dist/automation-D41DXyvT.js +75 -0
- package/dist/automations-BYsz43AG.js +314 -0
- package/dist/automations-Bc2ue55V.js +26 -0
- package/dist/automations-CD1XlL2W.js +33 -0
- package/dist/automations-CIwRq7zm.js +30 -0
- package/dist/availability-vguUvEK2.d.ts +226 -0
- package/dist/better-result/index.d.ts +20 -30
- package/dist/better-result/index.js +2 -2
- package/dist/bind-CrMBwrPN.d.ts +104 -0
- package/dist/block-authors-BDV3y1SP.js +14 -0
- package/dist/block-env-B_uEM2xz.d.ts +32 -0
- package/dist/block-fields-BE7pInWZ.d.ts +58 -0
- package/dist/block-fields-DE_FgpOU.js +139 -0
- package/dist/block-helpers-CRpAHrp_.d.ts +62 -0
- package/dist/block-helpers-CtBdjgO4.js +353 -0
- package/dist/block-hooks-BfxX3682.js +130 -0
- package/dist/block-hooks-DZN2w69m.d.ts +117 -0
- package/dist/block-method-C9hWdHom.js +21 -0
- package/dist/block-method-CiVa2G-J.d.ts +14 -0
- package/dist/block-subjects-BhDKK_j7.js +55 -0
- package/dist/block-subjects-CphkQPxp.d.ts +6 -0
- package/dist/block-tenant-DHp7subc.js +14 -0
- package/dist/block-transport-DWZSJrwN.d.ts +69 -0
- package/dist/blocks/access-requests/index.d.ts +8 -8
- package/dist/blocks/access-requests/index.js +6 -6
- package/dist/blocks/activities/index.d.ts +215 -0
- package/dist/blocks/activities/index.js +414 -0
- package/dist/blocks/agents/index.d.ts +4 -4
- package/dist/blocks/agents/index.js +5 -5
- package/dist/blocks/ai-cache/index.d.ts +3 -3
- package/dist/blocks/ai-cache/index.js +3 -3
- package/dist/blocks/ai-chat/index.d.ts +119 -6
- package/dist/blocks/ai-chat/index.js +1067 -5
- package/dist/blocks/ai-files/index.d.ts +5 -5
- package/dist/blocks/ai-files/index.js +3 -3
- package/dist/blocks/ai-keys/index.d.ts +22 -0
- package/dist/blocks/ai-keys/index.js +236 -0
- package/dist/blocks/ai-schedules/index.d.ts +10 -0
- package/dist/blocks/ai-schedules/index.js +258 -0
- package/dist/blocks/announcements/index.d.ts +134 -5
- package/dist/blocks/announcements/index.js +179 -4
- package/dist/blocks/api-keys/index.d.ts +69 -8
- package/dist/blocks/api-keys/index.js +417 -7
- package/dist/blocks/approvals/index.d.ts +4 -4
- package/dist/blocks/approvals/index.js +10 -10
- package/dist/blocks/assets/index.d.ts +11 -13
- package/dist/blocks/assets/index.js +10 -10
- package/dist/blocks/assignment/index.d.ts +8 -8
- package/dist/blocks/assignment/index.js +5 -5
- package/dist/blocks/attachments/index.d.ts +97 -12
- package/dist/blocks/attachments/index.js +279 -47
- package/dist/blocks/audit/index.d.ts +476 -7
- package/dist/blocks/audit/index.js +863 -6
- package/dist/blocks/automations/index.d.ts +524 -0
- package/dist/blocks/automations/index.js +553 -0
- package/dist/blocks/billable-time/index.d.ts +22 -24
- package/dist/blocks/billable-time/index.js +13 -13
- package/dist/blocks/billing/index.d.ts +82 -11
- package/dist/blocks/billing/index.js +93 -9
- package/dist/blocks/bookings/index.d.ts +49 -7
- package/dist/blocks/bookings/index.js +419 -4
- package/dist/blocks/bulk/index.d.ts +6 -6
- package/dist/blocks/bulk/index.js +4 -4
- package/dist/blocks/calendar/index.d.ts +180 -7
- package/dist/blocks/calendar/index.js +1073 -5
- package/dist/blocks/catalog/index.d.ts +128 -13
- package/dist/blocks/catalog/index.js +149 -13
- package/dist/blocks/channels/index.d.ts +15 -13
- package/dist/blocks/channels/index.js +12 -13
- package/dist/blocks/collections/index.d.ts +16 -16
- package/dist/blocks/collections/index.js +8 -8
- package/dist/blocks/comments/index.d.ts +231 -14
- package/dist/blocks/comments/index.js +260 -13
- package/dist/blocks/compliance/index.d.ts +325 -0
- package/dist/blocks/compliance/index.js +410 -0
- package/dist/blocks/connectors/index.d.ts +4 -4
- package/dist/blocks/connectors/index.js +8 -8
- package/dist/blocks/contacts/index.d.ts +182 -0
- package/dist/blocks/contacts/index.js +358 -0
- package/dist/blocks/content/index.d.ts +188 -0
- package/dist/blocks/content/index.js +219 -0
- package/dist/blocks/contracts/index.d.ts +16 -18
- package/dist/blocks/contracts/index.js +24 -24
- package/dist/blocks/courses/index.d.ts +17 -17
- package/dist/blocks/courses/index.js +13 -13
- package/dist/blocks/created-by/index.d.ts +27 -0
- package/dist/blocks/created-by/index.js +14 -0
- package/dist/blocks/custom-fields/index.d.ts +11 -11
- package/dist/blocks/custom-fields/index.js +7 -7
- package/dist/blocks/data-lifecycle/index.d.ts +9 -9
- package/dist/blocks/data-lifecycle/index.js +7 -7
- package/dist/blocks/deals/index.d.ts +10 -10
- package/dist/blocks/deals/index.js +11 -11
- package/dist/blocks/dispatch/index.d.ts +20 -22
- package/dist/blocks/dispatch/index.js +17 -17
- package/dist/blocks/documents/index.d.ts +4 -4
- package/dist/blocks/documents/index.js +4 -4
- package/dist/blocks/domains/index.d.ts +7 -7
- package/dist/blocks/domains/index.js +6 -6
- package/dist/blocks/donations/index.d.ts +27 -29
- package/dist/blocks/donations/index.js +36 -28
- package/dist/blocks/drive/index.d.ts +10 -10
- package/dist/blocks/drive/index.js +8 -8
- package/dist/blocks/employees/index.d.ts +204 -7
- package/dist/blocks/employees/index.js +36 -10
- package/dist/blocks/enrichment/index.d.ts +7 -7
- package/dist/blocks/enrichment/index.js +14 -6
- package/dist/blocks/enrollments/index.d.ts +14 -16
- package/dist/blocks/enrollments/index.js +10 -10
- package/dist/blocks/entitlements/index.d.ts +48 -8
- package/dist/blocks/entitlements/index.js +62 -4
- package/dist/blocks/expenses/index.d.ts +8 -8
- package/dist/blocks/expenses/index.js +11 -11
- package/dist/blocks/field-history/index.d.ts +5 -5
- package/dist/blocks/field-history/index.js +3 -5
- package/dist/blocks/flags/index.d.ts +17 -13
- package/dist/blocks/flags/index.js +7 -7
- package/dist/blocks/forecasts/index.d.ts +7 -7
- package/dist/blocks/forecasts/index.js +7 -7
- package/dist/blocks/forms/index.d.ts +144 -12
- package/dist/blocks/forms/index.js +385 -7
- package/dist/blocks/goals/index.d.ts +82 -0
- package/dist/blocks/goals/index.js +72 -0
- package/dist/blocks/guests/index.d.ts +19 -21
- package/dist/blocks/guests/index.js +12 -12
- package/dist/blocks/hiring/index.d.ts +20 -10
- package/dist/blocks/hiring/index.js +10 -9
- package/dist/blocks/identities/index.d.ts +7 -7
- package/dist/blocks/identities/index.js +4 -4
- package/dist/blocks/imports/index.d.ts +8 -8
- package/dist/blocks/imports/index.js +6 -6
- package/dist/blocks/inbox/index.d.ts +137 -8
- package/dist/blocks/inbox/index.js +290 -56
- package/dist/blocks/incidents/index.d.ts +8 -8
- package/dist/blocks/incidents/index.js +7 -7
- package/dist/blocks/index.d.ts +37 -18
- package/dist/blocks/index.js +40 -19
- package/dist/blocks/inventory/index.d.ts +10 -10
- package/dist/blocks/inventory/index.js +6 -6
- package/dist/blocks/invoices/index.d.ts +11 -11
- package/dist/blocks/invoices/index.js +8 -8
- package/dist/blocks/knowledge/index.d.ts +3 -3
- package/dist/blocks/knowledge/index.js +4 -4
- package/dist/blocks/lead-scoring/index.d.ts +11 -11
- package/dist/blocks/lead-scoring/index.js +7 -7
- package/dist/blocks/leases/index.d.ts +16 -73
- package/dist/blocks/leases/index.js +29 -104
- package/dist/blocks/leave/index.d.ts +8 -8
- package/dist/blocks/leave/index.js +5 -5
- package/dist/blocks/ledger/index.d.ts +11 -13
- package/dist/blocks/ledger/index.js +10 -10
- package/dist/blocks/mail-sync/index.d.ts +6 -6
- package/dist/blocks/mail-sync/index.js +18 -10
- package/dist/blocks/memberships/index.d.ts +67 -0
- package/dist/blocks/memberships/index.js +14 -0
- package/dist/blocks/memory/index.d.ts +4 -4
- package/dist/blocks/memory/index.js +8 -8
- package/dist/blocks/messaging/index.d.ts +113 -13
- package/dist/blocks/messaging/index.js +579 -8
- package/dist/blocks/metrics/index.d.ts +7 -7
- package/dist/blocks/metrics/index.js +6 -6
- package/dist/blocks/mfa/index.d.ts +145 -3
- package/dist/blocks/mfa/index.js +211 -2
- package/dist/blocks/moderation/index.d.ts +13 -15
- package/dist/blocks/moderation/index.js +10 -10
- package/dist/blocks/notifications/index.d.ts +67 -15
- package/dist/blocks/notifications/index.js +62 -13
- package/dist/blocks/numbering/index.d.ts +45 -0
- package/dist/blocks/numbering/index.js +49 -0
- package/dist/blocks/oauth-server/index.d.ts +6 -6
- package/dist/blocks/oauth-server/index.js +6 -6
- package/dist/blocks/onboarding/index.d.ts +112 -4
- package/dist/blocks/onboarding/index.js +107 -4
- package/dist/blocks/orders/index.d.ts +35 -14
- package/dist/blocks/orders/index.js +49 -12
- package/dist/blocks/organizations/index.d.ts +452 -6
- package/dist/blocks/organizations/index.js +689 -5
- package/dist/blocks/outbox/index.d.ts +4 -4
- package/dist/blocks/outbox/index.js +19 -6
- package/dist/blocks/passes/index.d.ts +19 -21
- package/dist/blocks/passes/index.js +17 -17
- package/dist/blocks/permissions/index.d.ts +92 -0
- package/dist/blocks/permissions/index.js +127 -0
- package/dist/blocks/pipelines/index.d.ts +15 -15
- package/dist/blocks/pipelines/index.js +12 -12
- package/dist/blocks/posts/index.d.ts +9 -9
- package/dist/blocks/posts/index.js +8 -8
- package/dist/blocks/profiles/index.d.ts +7 -7
- package/dist/blocks/profiles/index.js +5 -5
- package/dist/blocks/promotions/index.d.ts +9 -9
- package/dist/blocks/promotions/index.js +7 -7
- package/dist/blocks/push/index.d.ts +9 -9
- package/dist/blocks/push/index.js +4 -4
- package/dist/blocks/queue/index.d.ts +562 -0
- package/dist/blocks/queue/index.js +1407 -0
- package/dist/blocks/quotes/index.d.ts +29 -14
- package/dist/blocks/quotes/index.js +14 -13
- package/dist/blocks/rank/index.d.ts +7 -7
- package/dist/blocks/rank/index.js +4 -4
- package/dist/blocks/reactions/index.d.ts +154 -5
- package/dist/blocks/reactions/index.js +168 -4
- package/dist/blocks/relations/index.d.ts +36 -38
- package/dist/blocks/relations/index.js +18 -18
- package/dist/blocks/reminders/index.d.ts +16 -16
- package/dist/blocks/reminders/index.js +14 -14
- package/dist/blocks/reviews/index.d.ts +8 -8
- package/dist/blocks/reviews/index.js +6 -6
- package/dist/blocks/saved-views/index.d.ts +311 -4
- package/dist/blocks/saved-views/index.js +437 -2
- package/dist/blocks/scores/index.d.ts +8 -10
- package/dist/blocks/scores/index.js +10 -10
- package/dist/blocks/search/index.d.ts +168 -5
- package/dist/blocks/search/index.js +277 -5
- package/dist/blocks/security-events/index.d.ts +440 -0
- package/dist/blocks/security-events/index.js +885 -0
- package/dist/blocks/segments/index.d.ts +13 -13
- package/dist/blocks/segments/index.js +7 -7
- package/dist/blocks/sequences/index.d.ts +13 -13
- package/dist/blocks/sequences/index.js +16 -10
- package/dist/blocks/service-accounts/index.d.ts +132 -0
- package/dist/blocks/service-accounts/index.js +109 -0
- package/dist/blocks/sessions/index.d.ts +138 -3
- package/dist/blocks/sessions/index.js +173 -2
- package/dist/blocks/settings/index.d.ts +181 -5
- package/dist/blocks/settings/index.js +226 -4
- package/dist/blocks/share-links/index.d.ts +20 -22
- package/dist/blocks/share-links/index.js +16 -16
- package/dist/blocks/shipments/index.d.ts +23 -25
- package/dist/blocks/shipments/index.js +30 -22
- package/dist/blocks/signatures/index.d.ts +9 -9
- package/dist/blocks/signatures/index.js +5 -5
- package/dist/blocks/signing-keys/index.d.ts +4 -4
- package/dist/blocks/signing-keys/index.js +3 -3
- package/dist/blocks/sla/index.d.ts +20 -22
- package/dist/blocks/sla/index.js +22 -16
- package/dist/blocks/sso/index.d.ts +7 -7
- package/dist/blocks/sso/index.js +4 -4
- package/dist/blocks/state-machine/index.d.ts +14 -14
- package/dist/blocks/state-machine/index.js +4 -4
- package/dist/blocks/subjects/index.d.ts +41 -7
- package/dist/blocks/subjects/index.js +187 -5
- package/dist/blocks/tags/index.d.ts +146 -13
- package/dist/blocks/tags/index.js +229 -14
- package/dist/blocks/tasks/index.d.ts +346 -0
- package/dist/blocks/tasks/index.js +626 -0
- package/dist/blocks/teams/index.d.ts +7 -7
- package/dist/blocks/teams/index.js +4 -4
- package/dist/blocks/templates/index.d.ts +18 -18
- package/dist/blocks/templates/index.js +10 -10
- package/dist/blocks/time-tracking/index.d.ts +16 -16
- package/dist/blocks/time-tracking/index.js +13 -13
- package/dist/blocks/timeline/index.d.ts +116 -0
- package/dist/blocks/timeline/index.js +164 -0
- package/dist/blocks/trash/index.d.ts +47 -9
- package/dist/blocks/trash/index.js +9 -7
- package/dist/blocks/undo/index.d.ts +48 -5
- package/dist/blocks/undo/index.js +60 -4
- package/dist/blocks/updated-at/index.d.ts +20 -0
- package/dist/blocks/updated-at/index.js +14 -0
- package/dist/blocks/usage/index.d.ts +39 -5
- package/dist/blocks/usage/index.js +301 -4
- package/dist/blocks/vercel-marketplace/index.d.ts +7 -7
- package/dist/blocks/vercel-marketplace/index.js +8 -8
- package/dist/blocks/versions/index.d.ts +20 -22
- package/dist/blocks/versions/index.js +16 -16
- package/dist/blocks/waitlist/index.d.ts +9 -9
- package/dist/blocks/waitlist/index.js +5 -5
- package/dist/blocks/webhooks/index.d.ts +21 -21
- package/dist/blocks/webhooks/index.js +16 -16
- package/dist/blocks/workflow-editor/index.d.ts +99 -0
- package/dist/blocks/workflow-editor/index.js +733 -0
- package/dist/blocks/workflows/index.d.ts +72 -6
- package/dist/blocks/workflows/index.js +379 -4
- package/dist/bookings-D4dvGXiR.d.ts +290 -0
- package/dist/bucket-CiNi8sIw.d.ts +666 -0
- package/dist/build-BFC8nFiL.js +797 -0
- package/dist/build-QitPVzzO.js +2073 -0
- package/dist/carrier-KzeYXVrW.d.ts +169 -0
- package/dist/chat-sdk/index.d.ts +8 -8
- package/dist/chat-sdk/index.js +3 -3
- package/dist/claims-DTy6R6my.js +63 -0
- package/dist/cli/add-BgsUjCan.js +1252 -0
- package/dist/cli/add-DCI5JKjA.js +99 -0
- package/dist/cli/add-DWjlVwvP.js +1 -0
- package/dist/cli/args-UEwg0l-N.js +27 -0
- package/dist/cli/backfill-nxPbcsns.js +293 -0
- package/dist/cli/bin.js +1 -1
- package/dist/cli/blocks-BZHI8mRC.js +156 -0
- package/dist/cli/blocks-Cr4HGePW.js +1 -0
- package/dist/cli/cache-CXgR_Ahi.js +607 -0
- package/dist/cli/codemod-DSN7iAdg.js +2343 -0
- package/dist/cli/codemod-block-renames-BuSaTE_G.js +239 -0
- package/dist/cli/command-CQ61x6gN.js +941 -0
- package/dist/cli/completion-2Y3D_eNu.js +211 -0
- package/dist/cli/completion-BwI0_Ap5.js +30 -0
- package/dist/cli/completion-Dlu5AdUW.js +1 -0
- package/dist/cli/config-9t5ec_N7.js +1642 -0
- package/dist/cli/config-CBqkQjjN.js +1 -0
- package/dist/cli/config-CPux9Wa7.js +47 -0
- package/dist/cli/config-edit-CrWfk8s3.js +621 -0
- package/dist/cli/config-group-C8tjut39.js +391 -0
- package/dist/cli/content-mapper-DNs7lTu7.js +182 -0
- package/dist/cli/db-DrBI_HNv.js +223 -0
- package/dist/cli/detect-D9JaAX20.js +84 -0
- package/dist/cli/dist-D_VbPAMR.js +129 -0
- package/dist/cli/doctor-DDrEM6S1.js +4561 -0
- package/dist/cli/env-BBl5L8Bf.js +143 -0
- package/dist/cli/env-CAU1nknN.js +1 -0
- package/dist/cli/files-CX71yBm8.js +1010 -0
- package/dist/cli/gen-MtijJQ9r.js +387 -0
- package/dist/cli/in-stack-diff-DQTW53Vf.js +257 -0
- package/dist/cli/index.d.ts +43 -8
- package/dist/cli/index.js +8 -8
- package/dist/cli/init-D-aDv9r5.js +440 -0
- package/dist/cli/keys-DGEpMbeB.js +106 -0
- package/dist/cli/live-iEeH15ck.js +341 -0
- package/dist/cli/mcp-BAPyaQ62.js +249 -0
- package/dist/cli/metadata-DVx9Zgbj.js +150 -0
- package/dist/cli/migration-safety-D7PhzFxm.js +928 -0
- package/dist/cli/module-migration-aPCckev6.js +734 -0
- package/dist/cli/moved-CsfDQcyk.js +254 -0
- package/dist/cli/orphans-BAboqyVM.js +28 -0
- package/dist/cli/parse-B9Iv_-Pf.js +182 -0
- package/dist/cli/preset-BwmIfFnh.js +101 -0
- package/dist/cli/print-BeWO7OJY.js +67 -0
- package/dist/cli/remove-B46Dmd2M.js +238 -0
- package/dist/cli/render-ucJmUyuM.js +2170 -0
- package/dist/cli/run-BXx6D1aR.js +63 -0
- package/dist/cli/run-CvYVAztY.js +1427 -0
- package/dist/cli/run-DYhLBcFW.js +702 -0
- package/dist/cli/seed-Cz8PcXeT.js +188 -0
- package/dist/cli/seed-D6XijwbR.js +1 -0
- package/dist/cli/shared-LZroULBe.js +151 -0
- package/dist/cli/skills-toUan_OV.js +121 -0
- package/dist/cli/snapshot-C8MVPyO8.js +729 -0
- package/dist/cli/source-DANaJJVc.js +320 -0
- package/dist/cli/source-args-IpJRJO5t.js +59 -0
- package/dist/cli/spec-DGVNMSSB.js +7530 -0
- package/dist/cli/spec-g8_G5K7o.js +1 -0
- package/dist/cli/stack-CWEHdO0b.js +135 -0
- package/dist/cli/sync-btj01bcM.js +319 -0
- package/dist/cli/upgrade-B596d4t8.js +403 -0
- package/dist/cli/upgrade-Dw3TMQzn.js +41 -0
- package/dist/cli/version-Du4CgONY.js +4 -0
- package/dist/client/index.d.ts +8 -7
- package/dist/client/index.js +9 -7
- package/dist/client/native/index.d.ts +6 -6
- package/dist/client/native/index.js +3 -3
- package/dist/client-BAEbEA7t.js +287 -0
- package/dist/cloud-event-CzZTJkXv.d.ts +64 -0
- package/dist/codecs-CMWlhHZ0.d.ts +222 -0
- package/dist/codecs-TylXqU_I.js +358 -0
- package/dist/commerce/index.d.ts +3 -3
- package/dist/commerce/index.js +6 -6
- package/dist/compiler-D3UmE7ao.d.ts +14 -0
- package/dist/compose-DKW0Tr3e.js +53 -0
- package/dist/composite-BARuBEDE.js +130 -0
- package/dist/composite-Dsxj7T5K.d.ts +82 -0
- package/dist/config/index.d.ts +6 -7
- package/dist/config/index.js +6 -6
- package/dist/config-CcehOvbz.js +1698 -0
- package/dist/config-DWGgUQCh.js +1108 -0
- package/dist/connectors-Fud4amxp.d.ts +147 -0
- package/dist/context-CEuTKrkz.d.ts +4129 -0
- package/dist/context-DBicfUNz.js +41 -0
- package/dist/controller-BNZKd6bJ.js +73 -0
- package/dist/controller-BrP0gn47.d.ts +52 -0
- package/dist/conversion-BAbucuXq.d.ts +86 -0
- package/dist/conversion-Dq1S7xzE.js +77 -0
- package/dist/create/index.d.ts +19 -21
- package/dist/create/index.js +21 -22
- package/dist/create/lite/index.d.ts +2 -2
- package/dist/create/supabase/index.d.ts +2 -2
- package/dist/create/supabase/index.js +2 -2
- package/dist/create-blocks-Bu4H5TXw.js +352 -0
- package/dist/credentials/index.d.ts +5 -5
- package/dist/credentials/index.js +6 -6
- package/dist/cron-CgHTKwYG.js +148 -0
- package/dist/cron-route-UU9i5i9J.js +24 -0
- package/dist/data-engine-BWoz9lED.d.ts +273 -0
- package/dist/data-engine-D1BkmBoR.js +173 -0
- package/dist/data-hooks-tgF1Ct0F.js +280 -0
- package/dist/db-blocks-DJGbjIPz.js +62 -0
- package/dist/deal-forecast-Bv52QMyX.js +39 -0
- package/dist/define-DFBnQyYg.d.ts +1255 -0
- package/dist/define-DlUeKHce.js +2011 -0
- package/dist/define-block-BGqOO8B3.js +64 -0
- package/dist/define-block-BVcLQ3DF.d.ts +1657 -0
- package/dist/delegation--93jRsVO.js +146 -0
- package/dist/documents-Cup1rpjF.d.ts +152 -0
- package/dist/edge/index.d.ts +20 -20
- package/dist/edge/index.js +14 -14
- package/dist/elysia/index.d.ts +1 -1
- package/dist/elysia/index.js +1 -1
- package/dist/embeddings-kFbRvuic.d.ts +78 -0
- package/dist/ended-gUsMZVNg.d.ts +26 -0
- package/dist/entitlements-CJpYQXeE.d.ts +54 -0
- package/dist/entitlements-NZAE_vLj.js +45 -0
- package/dist/entity-naming-Dtyq5sKE.js +131 -0
- package/dist/entity-schema-BDv6w-OQ.js +39 -0
- package/dist/envelope-Bzu0JnY2.js +90 -0
- package/dist/errors-BVFgt8BZ.js +328 -0
- package/dist/errors-CyxMxzlu.js +44 -0
- package/dist/escape-like-PReMbEEU.d.ts +30 -0
- package/dist/eve/index.d.ts +5 -5
- package/dist/eve/index.js +3 -3
- package/dist/eve-BFSwTu1z.d.ts +157 -0
- package/dist/event-calendar-DCufbihU.d.ts +65 -0
- package/dist/events/index.d.ts +3 -4
- package/dist/events-vcqenSYU.d.ts +852 -0
- package/dist/executor-3qcMhg6R.js +207 -0
- package/dist/executor-BQ7dYw4E.js +843 -0
- package/dist/executor-CVIn6JHa.d.ts +174 -0
- package/dist/executor-D3gB-9si.js +486 -0
- package/dist/executor-_2ekNofh.d.ts +104 -0
- package/dist/executor-hGjrop3A.d.ts +37 -0
- package/dist/expo/index.d.ts +12 -11
- package/dist/expo/index.js +11 -10
- package/dist/extension-B-lajjex.js +58 -0
- package/dist/extension-B0EjCYhO.js +61 -0
- package/dist/extension-DeAd_MqI.js +121 -0
- package/dist/extension-DzCc0IOd.js +103 -0
- package/dist/extension-shared-Djm8mGHD.js +60 -0
- package/dist/field-errors-fsbFktYF.d.ts +216 -0
- package/dist/field-formats-CAFNkKSN.d.ts +38 -0
- package/dist/fields-B0zaJAO3.js +107 -0
- package/dist/fields-C3q2ypnO.d.ts +78 -0
- package/dist/filter-evaluate-CPxeae5X.d.ts +37 -0
- package/dist/filter-evaluate-w1XOIUOL.js +217 -0
- package/dist/filter-query-BXLs72G9.d.ts +133 -0
- package/dist/filter-query-DMoKo82_.js +566 -0
- package/dist/flags-BOdA_ETQ.js +279 -0
- package/dist/flags-C01PLMJ-.d.ts +246 -0
- package/dist/flags-sdk/index.d.ts +1 -1
- package/dist/flags-sdk/index.js +2 -2
- package/dist/format-u-65igKI.d.ts +79 -0
- package/dist/framework-BKyTeS-j.d.ts +47 -0
- package/dist/framework-DDdkR7FX.js +58 -0
- package/dist/function-contract-DxFNOmsm.d.ts +27 -0
- package/dist/gateway-TD1pRfTP.d.ts +115 -0
- package/dist/h3/index.d.ts +2 -4
- package/dist/h3/index.js +2 -4
- package/dist/h3/v1/index.d.ts +2 -3
- package/dist/h3/v1/index.js +2 -3
- package/dist/hono/index.d.ts +27 -21
- package/dist/hono/index.js +22 -20
- package/dist/http-7-UvHjQe.js +28 -0
- package/dist/impersonation-DM3oWNoD.js +62 -0
- package/dist/inbox-NDKwSk_H.d.ts +321 -0
- package/dist/index-B938YqY-.d.ts +188 -0
- package/dist/index-BUuVq1co.d.ts +158 -0
- package/dist/index-BnH4Gomw.d.ts +633 -0
- package/dist/index-BxYOB1Oc.d.ts +149 -0
- package/dist/index-C-qpk8EQ.d.ts +262 -0
- package/dist/index-CG9rA8H8.d.ts +407 -0
- package/dist/index-CguFm716.d.ts +518 -0
- package/dist/index-DLq69k3F.d.ts +588 -0
- package/dist/index-Do2ChN_y.d.ts +287 -0
- package/dist/index.d.ts +39 -17
- package/dist/index.js +94 -16
- package/dist/instances-BHjCZoF8.js +277 -0
- package/dist/invalidate-DMp4eqfF.d.ts +21 -0
- package/dist/json-schema-Ca6gYbEP.js +888 -0
- package/dist/jwks-cache-DEsKI0hJ.js +49 -0
- package/dist/kit-5l-o8RxL.js +133 -0
- package/dist/kit-DOwKpSkA.d.ts +94 -0
- package/dist/knowledge-BGbtxMP9.js +300 -0
- package/dist/knowledge-CtL-Vfgy.d.ts +217 -0
- package/dist/lint/index.d.ts +94 -11
- package/dist/lint/index.js +268 -26
- package/dist/list/index.d.ts +4 -4
- package/dist/list/index.js +3 -3
- package/dist/list-query-BDVutLFr.d.ts +222 -0
- package/dist/list-query-BKy2zBaT.js +559 -0
- package/dist/live-C21DgbsD.js +275 -0
- package/dist/mapper/bin.js +380 -0
- package/dist/mcp/index.d.ts +8 -8
- package/dist/mcp/index.js +11 -11
- package/dist/mcp/sdk/index.d.ts +10 -10
- package/dist/mcp/sdk/index.js +11 -11
- package/dist/messages-D4XWuRTj.js +492 -0
- package/dist/messaging-C_Pr9tGx.d.ts +297 -0
- package/dist/methods-B3o7BFOW.js +11 -0
- package/dist/mfa-oIOYTpvc.d.ts +36 -0
- package/dist/model-hwpvole9.d.ts +340 -0
- package/dist/model-messages-CKG0zwdF.js +206 -0
- package/dist/money-codec-BzddguAQ.js +41 -0
- package/dist/nestjs/index.d.ts +3 -3
- package/dist/nestjs/index.js +2 -2
- package/dist/next/index.d.ts +244 -205
- package/dist/next/index.js +288 -197
- package/dist/node/index.d.ts +2 -2
- package/dist/node/index.js +6 -8
- package/dist/operations-CSc_IsHO.d.ts +6 -0
- package/dist/options-0qvUckqt.js +9 -0
- package/dist/options-1GgseJq5.js +10 -0
- package/dist/options-21s0dpnX.js +9 -0
- package/dist/options-B-cxGmRA.js +5 -0
- package/dist/options-B0EJULm5.js +5 -0
- package/dist/options-B2swWnJW.js +9 -0
- package/dist/options-BMGClqoa.js +11 -0
- package/dist/options-BQIYfx9F.js +9 -0
- package/dist/options-BVg58avP.js +5 -0
- package/dist/options-BbnPv6p7.js +12 -0
- package/dist/options-BfLmA375.js +5 -0
- package/dist/options-BlncUmIc.js +9 -0
- package/dist/options-BlzSfWxC.d.ts +10 -0
- package/dist/options-BnZS7IK-.js +9 -0
- package/dist/options-Bt0bYMLl.js +24 -0
- package/dist/options-BvtnxHfK.js +24 -0
- package/dist/options-C-dQHH5-.js +8 -0
- package/dist/options-C3RgtOLo.js +5 -0
- package/dist/options-CE93HOYi.d.ts +7 -0
- package/dist/options-CM6-18FQ.d.ts +13 -0
- package/dist/options-CPK2nQER.js +5 -0
- package/dist/options-CRz8Ht_4.js +9 -0
- package/dist/options-CW9wTqOk.js +11 -0
- package/dist/options-Cl9Ag2Pt.js +8 -0
- package/dist/options-Cp0HyUEk.js +9 -0
- package/dist/options-Cqq2jUww.js +10 -0
- package/dist/options-CsGl5BLH.d.ts +52 -0
- package/dist/options-CtUUU71w.js +20 -0
- package/dist/options-CvD9vNvx.js +9 -0
- package/dist/options-CyAhRKKm.d.ts +14 -0
- package/dist/options-D0G06Zm9.js +8 -0
- package/dist/options-D6as77gU.d.ts +16 -0
- package/dist/options-DChZoVfs.d.ts +11 -0
- package/dist/options-DINdgVih.d.ts +9 -0
- package/dist/options-DPgdAXO5.js +11 -0
- package/dist/options-DWVYM8P0.d.ts +17 -0
- package/dist/options-DWbA9buW.js +9 -0
- package/dist/options-DXnBN2E7.js +8 -0
- package/dist/options-D_bBVCXg.js +5 -0
- package/dist/options-DcOx8_3X.d.ts +19 -0
- package/dist/options-DeNejBtq.js +8 -0
- package/dist/options-DgQo80Xh.js +5 -0
- package/dist/options-DplE18Ko.d.ts +12 -0
- package/dist/options-HLwOuF2H.js +10 -0
- package/dist/options-KV84gAxl.js +10 -0
- package/dist/options-Li1Dyu88.d.ts +10 -0
- package/dist/options-Q1Bzgqpr.js +5 -0
- package/dist/options-_F-enoBs.d.ts +26 -0
- package/dist/options-c5WCsky5.js +21 -0
- package/dist/options-nFzfgtA6.js +5 -0
- package/dist/options-pOVWwbAK.d.ts +10 -0
- package/dist/options-y_-AkVCs.d.ts +15 -0
- package/dist/orpc/index.d.ts +69 -71
- package/dist/orpc/index.js +161 -27
- package/dist/otel/index.d.ts +3 -3
- package/dist/otel/index.js +6 -6
- package/dist/outbox-HvGAJuBe.d.ts +199 -0
- package/dist/payments-BXvabJOw.js +16 -0
- package/dist/payments-BYcN34Fp.d.ts +114 -0
- package/dist/permissions-controller-BMsqIE5T.js +34 -0
- package/dist/plugin-AKwwe2gF.js +48 -0
- package/dist/pool-CrtT4dg-.d.ts +123 -0
- package/dist/pool-errors-JUBcGrre.js +27 -0
- package/dist/ports-DOhtuw3c.js +152 -0
- package/dist/ports-sx226JUL.d.ts +89 -0
- package/dist/postgres/index.d.ts +5 -5
- package/dist/postgres/index.js +3 -3
- package/dist/postgrest-executor-BFW4oWte.js +1064 -0
- package/dist/postgrest-z-T0l23T.d.ts +53 -0
- package/dist/powersync/index.d.ts +106 -7
- package/dist/powersync/index.js +123 -7
- package/dist/preset/index.d.ts +4 -4
- package/dist/preset/index.js +4 -4
- package/dist/preset-CsHnIBJF.js +875 -0
- package/dist/problem-Bf0cJ7tk.js +162 -0
- package/dist/problem-DNwN8iGz.d.ts +79 -0
- package/dist/provider-B6g7rBZX.js +57 -0
- package/dist/provider-CqwEOLCA.d.ts +112 -0
- package/dist/push-token-D3Vcf0Pf.d.ts +24 -0
- package/dist/queries-BWYYS9um.js +239 -0
- package/dist/query/index.d.ts +4 -4
- package/dist/query/index.js +114 -48
- package/dist/rank-result-BBJIK-k_.js +18 -0
- package/dist/rank-result-Bwe7igy-.d.ts +14 -0
- package/dist/rate-limit-BWKGlhTM.js +49 -0
- package/dist/rate-limit-Bztf32cl.d.ts +50 -0
- package/dist/rate-limit-o44SYkVY.js +327 -0
- package/dist/react/index.d.ts +10 -9
- package/dist/react/index.js +5 -5
- package/dist/react/native/index.d.ts +1 -1
- package/dist/react/native/index.js +2 -3
- package/dist/react/server.d.ts +47 -15
- package/dist/react/server.js +46 -11
- package/dist/react/session.d.ts +3 -3
- package/dist/react-BuDYI62C.js +979 -0
- package/dist/react-router/index.d.ts +13 -10
- package/dist/react-router/index.js +10 -10
- package/dist/read-set-BnKnofIj.js +199 -0
- package/dist/realtime/index.d.ts +7 -7
- package/dist/realtime/index.js +4 -4
- package/dist/record-bindings-DkBJpC5A.js +26 -0
- package/dist/record-form-BYs9xv_N.d.ts +82 -0
- package/dist/record-type-DRbnlj5q.js +221 -0
- package/dist/recordings-BBSJt_YV.d.ts +119 -0
- package/dist/records/index.d.ts +28 -28
- package/dist/records/index.js +22 -23
- package/dist/refresh-DT_ICaK-.d.ts +54 -0
- package/dist/refusal-ByBZcm0V.js +64 -0
- package/dist/refusal-CSntB_x8.d.ts +32 -0
- package/dist/replicas-Dyoh3CEg.js +94 -0
- package/dist/resolve-B0mW2m7f.js +932 -0
- package/dist/resolve-CXX6DHv3.d.ts +288 -0
- package/dist/resource-D8pzB5Qf.d.ts +123 -0
- package/dist/resource-DV2GC2dB.js +520 -0
- package/dist/resource-DvgXqZB_.js +105 -0
- package/dist/resource-execute-CzHuDsil.d.ts +15 -0
- package/dist/resource-types-DnKiH4G2.d.ts +157 -0
- package/dist/resources-B9cQxhjw.d.ts +7 -0
- package/dist/resources-C02l_YBJ.js +64 -0
- package/dist/respond-C3CcOZlA.js +100 -0
- package/dist/respond-Dn1_YhC1.d.ts +106 -0
- package/dist/result-DZeA5KS6.d.ts +351 -0
- package/dist/result-ntFBW2p2.js +146 -0
- package/dist/rows-BDLZStp4.js +80 -0
- package/dist/rows-Bm6sskji.js +39 -0
- package/dist/rrule-79K2c3Nr.js +290 -0
- package/dist/run-state-BMCD_1Lt.d.ts +13 -0
- package/dist/sales-lines-Bk4mbLH1.d.ts +37 -0
- package/dist/sales-lines-D-sf9PIB.js +43 -0
- package/dist/sales-shared-DXGFJP4g.js +22 -0
- package/dist/schemas-l2aF78zQ.js +216 -0
- package/dist/scores-B2BiNuVJ.d.ts +174 -0
- package/dist/scores-CRp3vvQU.js +177 -0
- package/dist/server/index.d.ts +103 -42
- package/dist/server/index.js +98 -30
- package/dist/server-types-CFtehAsr.d.ts +946 -0
- package/dist/session-CH0SKgIz.d.ts +99 -0
- package/dist/shared-C47zAh2A.js +17 -0
- package/dist/sign-in-BAjR49fq.d.ts +24 -0
- package/dist/sign-in-BsIaNx2C.js +392 -0
- package/dist/sign-in-DNCdrk05.js +608 -0
- package/dist/signatures-CNcoq392.js +145 -0
- package/dist/signatures-Dkx9OE8j.d.ts +43 -0
- package/dist/signers-BAEzvTJ0.d.ts +390 -0
- package/dist/signing-keys-BNDUxpQL.d.ts +119 -0
- package/dist/signing-keys-wGKh4vtt.js +164 -0
- package/dist/solid/index.d.ts +52 -18
- package/dist/solid/index.js +69 -11
- package/dist/solid-start/index.d.ts +11 -11
- package/dist/solid-start/index.js +8 -8
- package/dist/spec/index.d.ts +691 -10
- package/dist/spec/index.js +2487 -5
- package/dist/spec-DTWkHzYZ.js +124 -0
- package/dist/spec-pins-C1Vm8OBl.js +61 -0
- package/dist/spec-pins-DIx95afw.d.ts +125 -0
- package/dist/sql/index.d.ts +5 -5
- package/dist/sql/index.js +5 -5
- package/dist/sql-BPbbPzRJ.js +421 -0
- package/dist/sql-ClHIdgKS.js +126996 -0
- package/dist/sqlite/index.d.ts +126 -0
- package/dist/sqlite/index.js +197 -0
- package/dist/sso-B0Txid2-.d.ts +161 -0
- package/dist/sso-d2S4x_f9.js +217 -0
- package/dist/ssr/index.d.ts +5 -4
- package/dist/ssr/index.js +3 -3
- package/dist/standard-BA3mLh6w.js +25 -0
- package/dist/standard-DBV730sF.d.ts +7 -0
- package/dist/stats-BHl1-zj9.js +83 -0
- package/dist/storage/index.d.ts +3 -3
- package/dist/storage/index.js +10 -10
- package/dist/store-CpheI-lN.d.ts +83 -0
- package/dist/streams/index.d.ts +3 -3
- package/dist/streams/index.js +2 -2
- package/dist/streams/redis/index.d.ts +2 -2
- package/dist/streams/redis/index.js +3 -3
- package/dist/subject-readers-B-pQ9Mmo.js +49 -0
- package/dist/subject-readers-BNSzkqw_.d.ts +21 -0
- package/dist/subjects-BpIEN1MS.d.ts +90 -0
- package/dist/subjects-DvmQeF_F.d.ts +79 -0
- package/dist/support-view-BYOgwXsJ.d.ts +17 -0
- package/dist/svelte/index.d.ts +52 -15
- package/dist/svelte/index.js +87 -11
- package/dist/sveltekit/index.d.ts +13 -13
- package/dist/sveltekit/index.js +13 -13
- package/dist/table-schema-BlF6k62Q.d.ts +81 -0
- package/dist/table-schema-CD8cJz_M.js +293 -0
- package/dist/tags-BjHflcHF.d.ts +30 -0
- package/dist/tags-CIZTqtlY.js +39 -0
- package/dist/tanstack-db/index.d.ts +50 -6
- package/dist/tanstack-db/index.js +43 -2
- package/dist/tanstack-start/index.d.ts +9 -9
- package/dist/tanstack-start/index.js +9 -9
- package/dist/tax-BkCNWWMc.js +140 -0
- package/dist/tax-DPShHual.d.ts +170 -0
- package/dist/tee-V97_v1ZS.js +101 -0
- package/dist/template-Drgg3v2J.js +126 -0
- package/dist/temporal-required-Dy0GGD8E.js +20 -0
- package/dist/tenant-BgIiMQpo.js +27 -0
- package/dist/tenant-yYg0E2-n.d.ts +17 -0
- package/dist/testing/index.d.ts +77 -75
- package/dist/testing/index.js +89 -99
- package/dist/timeline--VU3A1e4.js +50 -0
- package/dist/timeline-CtG0sehj.d.ts +151 -0
- package/dist/timing-dypS0nxW.js +95 -0
- package/dist/topic-CJrQZQaa.d.ts +415 -0
- package/dist/topic-ikV_pLTX.js +643 -0
- package/dist/types-BBQLbui9.d.ts +659 -0
- package/dist/types-CAQBmpDx.d.ts +217 -0
- package/dist/types-DFdg_4yN.d.ts +912 -0
- package/dist/types-Dp3UCr1e.d.ts +194 -0
- package/dist/types-Dr9wZgNy.d.ts +251 -0
- package/dist/types-EO2crSX_.d.ts +177 -0
- package/dist/types-SFRomQF7.d.ts +624 -0
- package/dist/undo-B1jwnVyN.d.ts +46 -0
- package/dist/undo-BjCChCmH.js +44 -0
- package/dist/upload-claim-B1ZU8ydB.js +33 -0
- package/dist/usage-D7QkrwzV.d.ts +232 -0
- package/dist/user-change-DgWC6RRC.js +135 -0
- package/dist/variants-Cy--Ub-a.js +53 -0
- package/dist/vault-O-YlAyHb.d.ts +62 -0
- package/dist/vercel-connect/index.d.ts +1 -1
- package/dist/vercel-connect/index.js +3 -3
- package/dist/verify-CMou8dWZ.d.ts +146 -0
- package/dist/verify-ZLFUdlqE.js +130 -0
- package/dist/view-C8Ve14ja.js +247 -0
- package/dist/view-DyFdMCqg.d.ts +97 -0
- package/dist/vue/index.d.ts +52 -23
- package/dist/vue/index.js +77 -14
- package/dist/watch-topic-BcGfvZOE.d.ts +31 -0
- package/dist/wiring-CDNuQoJJ.js +13 -0
- package/dist/workflow-sdk/builder/index.d.ts +12 -12
- package/dist/workflow-sdk/builder/index.js +16 -17
- package/dist/workflow-sdk/index.d.ts +18 -15
- package/dist/workflow-sdk/index.js +2 -2
- package/dist/workflow-sdk/world/index.d.ts +6 -6
- package/dist/workflow-sdk/world/index.js +12 -12
- package/dist/workflow-sdk-BFHu4sci.d.ts +163 -0
- package/dist/workflow-sdk-BVlFEB5Q.js +242 -0
- package/dist/workflow-sdk-Bw6_u0ar.js +2446 -0
- package/dist/workflows-B0ZPAQu0.d.ts +255 -0
- package/dist/yjs/index.d.ts +3 -3
- package/dist/yjs/index.js +2 -2
- package/package.json +75 -623
- package/schemas/config-v1.json +2082 -1754
- package/schemas/design-v1.json +141 -5
- package/schemas/doctor-report-v1.json +14 -0
- package/skills/better-supabase/SKILL.md +70 -28
- package/skills/better-supabase/references/block-extensions.md +64 -0
- package/skills/better-supabase/references/frontend.md +29 -26
- package/skills/better-supabase/references/troubleshooting.md +3 -3
- package/skills/better-supabase/references/ui-recipes.md +267 -134
- package/skills/better-supabase-api/SKILL.md +49 -38
- package/skills/better-supabase-api/references/adapters.md +42 -39
- package/skills/better-supabase-api/references/ai.md +4 -4
- package/skills/better-supabase-api/references/expo.md +8 -8
- package/skills/better-supabase-api/references/powersync.md +20 -13
- package/skills/better-supabase-api/references/streams-credentials.md +3 -3
- package/skills/better-supabase-auth/SKILL.md +17 -17
- package/skills/better-supabase-auth/references/authorization-providers.md +8 -6
- package/skills/better-supabase-testing/SKILL.md +8 -8
- package/dist/access-sql-CPoq9F86.js +0 -207
- package/dist/access-z7NwWtqx.js +0 -34
- package/dist/actor-hNajGNEK.js +0 -150
- package/dist/adapter-BCFAg58A.js +0 -2190
- package/dist/agents-CmZlLPXC.d.ts +0 -117
- package/dist/ai-cache-BxlOkc_M.d.ts +0 -82
- package/dist/ai-cache-DQikwXhJ.js +0 -87
- package/dist/ai-chat-DBxEz3o1.d.ts +0 -619
- package/dist/ai-files-t-kHmS5H.js +0 -339
- package/dist/ai-tasks-BDywBUgN.d.ts +0 -166
- package/dist/announcements-BeOD0zbc.js +0 -128
- package/dist/api-CWhpq24a.d.ts +0 -174
- package/dist/api-DKp2Ggz_.js +0 -685
- package/dist/api-keys-CboAenU8.d.ts +0 -213
- package/dist/api-keys-DT6Fi50R.js +0 -318
- package/dist/app-tables-BHrzAUFJ.d.ts +0 -27
- package/dist/app-tables-C5aoI5rZ.js +0 -959
- package/dist/approvals-bMb7dsBY.d.ts +0 -129
- package/dist/arazzo/index.d.ts +0 -278
- package/dist/arazzo/index.js +0 -630
- package/dist/assistant-D1yev_fR.d.ts +0 -157
- package/dist/asyncapi/index.d.ts +0 -110
- package/dist/asyncapi/index.js +0 -572
- package/dist/attachments-Cjdgarpa.js +0 -351
- package/dist/attributes-BOFl922R.js +0 -44
- package/dist/audit-log-C3rQxeHd.js +0 -788
- package/dist/auth-reply-jVKoAV6R.js +0 -31
- package/dist/authorization-BuT26_sR.d.ts +0 -3455
- package/dist/authorization-hooks-dLmUO_PZ.d.ts +0 -217
- package/dist/authorizer-DFP3gHv8.d.ts +0 -82
- package/dist/authorizer-DPTeL-7h.js +0 -125
- package/dist/availability-q3dZoZYM.d.ts +0 -226
- package/dist/bind-Dz8y3T5T.d.ts +0 -95
- package/dist/block-authors-BRTlT0qv.js +0 -14
- package/dist/block-controller-DTGuBemi.js +0 -112
- package/dist/block-env-DJiUu1fq.js +0 -35
- package/dist/block-env-kFcaaJLM.d.ts +0 -10
- package/dist/block-env-options-2e6IQrSw.js +0 -26
- package/dist/block-events-records-BGVyoz57.d.ts +0 -343
- package/dist/block-fields-3w4MZr8U.d.ts +0 -58
- package/dist/block-fields-DBSJSeaO.js +0 -139
- package/dist/block-helpers-BaugZlJV.d.ts +0 -62
- package/dist/block-helpers-CiKtrb6g.js +0 -353
- package/dist/block-hooks-BymdcD0V.js +0 -130
- package/dist/block-hooks-CmjPKqQ_.d.ts +0 -117
- package/dist/block-method-Bvsao626.js +0 -21
- package/dist/block-method-hsPAGFi5.d.ts +0 -19
- package/dist/block-names-Dbv_2wmE.js +0 -66
- package/dist/block-subjects-Dzq5Xn_0.js +0 -55
- package/dist/block-subjects-FHwLlIHU.d.ts +0 -6
- package/dist/block-tenant-C1sNV8_4.js +0 -14
- package/dist/block-transport-d53POsem.d.ts +0 -69
- package/dist/blocks/access/index.d.ts +0 -9
- package/dist/blocks/access/index.js +0 -18
- package/dist/blocks/access/react/index.d.ts +0 -52
- package/dist/blocks/access/react/index.js +0 -73
- package/dist/blocks/access/react/server.d.ts +0 -11
- package/dist/blocks/access/react/server.js +0 -16
- package/dist/blocks/access/solid/index.d.ts +0 -13
- package/dist/blocks/access/solid/index.js +0 -14
- package/dist/blocks/access/svelte/index.d.ts +0 -13
- package/dist/blocks/access/svelte/index.js +0 -14
- package/dist/blocks/access/vue/index.d.ts +0 -13
- package/dist/blocks/access/vue/index.js +0 -14
- package/dist/blocks/activity/index.d.ts +0 -116
- package/dist/blocks/activity/index.js +0 -164
- package/dist/blocks/ai-chat/react/index.d.ts +0 -52
- package/dist/blocks/ai-chat/react/index.js +0 -95
- package/dist/blocks/ai-chat/react/server.d.ts +0 -25
- package/dist/blocks/ai-chat/react/server.js +0 -23
- package/dist/blocks/ai-chat/solid/index.d.ts +0 -34
- package/dist/blocks/ai-chat/solid/index.js +0 -41
- package/dist/blocks/ai-chat/svelte/index.d.ts +0 -34
- package/dist/blocks/ai-chat/svelte/index.js +0 -41
- package/dist/blocks/ai-chat/vue/index.d.ts +0 -34
- package/dist/blocks/ai-chat/vue/index.js +0 -41
- package/dist/blocks/ai-providers/index.d.ts +0 -22
- package/dist/blocks/ai-providers/index.js +0 -236
- package/dist/blocks/ai-tasks/index.d.ts +0 -10
- package/dist/blocks/ai-tasks/index.js +0 -252
- package/dist/blocks/announcements/react/index.d.ts +0 -28
- package/dist/blocks/announcements/react/index.js +0 -38
- package/dist/blocks/announcements/react/server.d.ts +0 -9
- package/dist/blocks/announcements/react/server.js +0 -10
- package/dist/blocks/announcements/solid/index.d.ts +0 -13
- package/dist/blocks/announcements/solid/index.js +0 -14
- package/dist/blocks/announcements/svelte/index.d.ts +0 -13
- package/dist/blocks/announcements/svelte/index.js +0 -14
- package/dist/blocks/announcements/vue/index.d.ts +0 -13
- package/dist/blocks/announcements/vue/index.js +0 -14
- package/dist/blocks/api-keys/react/index.d.ts +0 -32
- package/dist/blocks/api-keys/react/index.js +0 -43
- package/dist/blocks/api-keys/react/server.d.ts +0 -7
- package/dist/blocks/api-keys/react/server.js +0 -7
- package/dist/blocks/api-keys/solid/index.d.ts +0 -13
- package/dist/blocks/api-keys/solid/index.js +0 -14
- package/dist/blocks/api-keys/svelte/index.d.ts +0 -13
- package/dist/blocks/api-keys/svelte/index.js +0 -14
- package/dist/blocks/api-keys/vue/index.d.ts +0 -13
- package/dist/blocks/api-keys/vue/index.js +0 -14
- package/dist/blocks/attachments/react/index.d.ts +0 -53
- package/dist/blocks/attachments/react/index.js +0 -78
- package/dist/blocks/attachments/react/server.d.ts +0 -9
- package/dist/blocks/attachments/react/server.js +0 -10
- package/dist/blocks/attachments/solid/index.d.ts +0 -13
- package/dist/blocks/attachments/solid/index.js +0 -14
- package/dist/blocks/attachments/svelte/index.d.ts +0 -13
- package/dist/blocks/attachments/svelte/index.js +0 -14
- package/dist/blocks/attachments/vue/index.d.ts +0 -13
- package/dist/blocks/attachments/vue/index.js +0 -14
- package/dist/blocks/audit/react/index.d.ts +0 -31
- package/dist/blocks/audit/react/index.js +0 -46
- package/dist/blocks/audit/react/server.d.ts +0 -7
- package/dist/blocks/audit/react/server.js +0 -7
- package/dist/blocks/audit/solid/index.d.ts +0 -13
- package/dist/blocks/audit/solid/index.js +0 -14
- package/dist/blocks/audit/svelte/index.d.ts +0 -13
- package/dist/blocks/audit/svelte/index.js +0 -14
- package/dist/blocks/audit/vue/index.d.ts +0 -13
- package/dist/blocks/audit/vue/index.js +0 -14
- package/dist/blocks/billing/react/index.d.ts +0 -44
- package/dist/blocks/billing/react/index.js +0 -40
- package/dist/blocks/billing/react/server.d.ts +0 -10
- package/dist/blocks/billing/react/server.js +0 -10
- package/dist/blocks/billing/solid/index.d.ts +0 -15
- package/dist/blocks/billing/solid/index.js +0 -14
- package/dist/blocks/billing/svelte/index.d.ts +0 -15
- package/dist/blocks/billing/svelte/index.js +0 -14
- package/dist/blocks/billing/vue/index.d.ts +0 -15
- package/dist/blocks/billing/vue/index.js +0 -14
- package/dist/blocks/bookings/react/index.d.ts +0 -36
- package/dist/blocks/bookings/react/index.js +0 -63
- package/dist/blocks/bookings/react/server.d.ts +0 -9
- package/dist/blocks/bookings/react/server.js +0 -10
- package/dist/blocks/bookings/solid/index.d.ts +0 -13
- package/dist/blocks/bookings/solid/index.js +0 -14
- package/dist/blocks/bookings/svelte/index.d.ts +0 -13
- package/dist/blocks/bookings/svelte/index.js +0 -14
- package/dist/blocks/bookings/vue/index.d.ts +0 -13
- package/dist/blocks/bookings/vue/index.js +0 -14
- package/dist/blocks/calendar/react/index.d.ts +0 -26
- package/dist/blocks/calendar/react/index.js +0 -58
- package/dist/blocks/calendar/react/server.d.ts +0 -9
- package/dist/blocks/calendar/react/server.js +0 -10
- package/dist/blocks/calendar/solid/index.d.ts +0 -13
- package/dist/blocks/calendar/solid/index.js +0 -14
- package/dist/blocks/calendar/svelte/index.d.ts +0 -13
- package/dist/blocks/calendar/svelte/index.js +0 -14
- package/dist/blocks/calendar/vue/index.d.ts +0 -13
- package/dist/blocks/calendar/vue/index.js +0 -14
- package/dist/blocks/comments/react/index.d.ts +0 -32
- package/dist/blocks/comments/react/index.js +0 -56
- package/dist/blocks/comments/react/server.d.ts +0 -7
- package/dist/blocks/comments/react/server.js +0 -7
- package/dist/blocks/comments/solid/index.d.ts +0 -13
- package/dist/blocks/comments/solid/index.js +0 -14
- package/dist/blocks/comments/svelte/index.d.ts +0 -13
- package/dist/blocks/comments/svelte/index.js +0 -14
- package/dist/blocks/comments/vue/index.d.ts +0 -13
- package/dist/blocks/comments/vue/index.js +0 -14
- package/dist/blocks/controls/index.d.ts +0 -325
- package/dist/blocks/controls/index.js +0 -410
- package/dist/blocks/engagements/index.d.ts +0 -41
- package/dist/blocks/engagements/index.js +0 -414
- package/dist/blocks/entitlements/react/index.d.ts +0 -27
- package/dist/blocks/entitlements/react/index.js +0 -35
- package/dist/blocks/entitlements/react/server.d.ts +0 -9
- package/dist/blocks/entitlements/react/server.js +0 -10
- package/dist/blocks/entitlements/solid/index.d.ts +0 -13
- package/dist/blocks/entitlements/solid/index.js +0 -14
- package/dist/blocks/entitlements/svelte/index.d.ts +0 -13
- package/dist/blocks/entitlements/svelte/index.js +0 -14
- package/dist/blocks/entitlements/vue/index.d.ts +0 -13
- package/dist/blocks/entitlements/vue/index.js +0 -14
- package/dist/blocks/forms/react/index.d.ts +0 -19
- package/dist/blocks/forms/react/index.js +0 -28
- package/dist/blocks/forms/react/server.d.ts +0 -9
- package/dist/blocks/forms/react/server.js +0 -10
- package/dist/blocks/forms/solid/index.d.ts +0 -13
- package/dist/blocks/forms/solid/index.js +0 -14
- package/dist/blocks/forms/svelte/index.d.ts +0 -13
- package/dist/blocks/forms/svelte/index.js +0 -14
- package/dist/blocks/forms/vue/index.d.ts +0 -13
- package/dist/blocks/forms/vue/index.js +0 -14
- package/dist/blocks/inbox/react/index.d.ts +0 -3
- package/dist/blocks/inbox/react/index.js +0 -87
- package/dist/blocks/inbox/react/server.d.ts +0 -17
- package/dist/blocks/inbox/react/server.js +0 -18
- package/dist/blocks/inbox/solid/index.d.ts +0 -27
- package/dist/blocks/inbox/solid/index.js +0 -32
- package/dist/blocks/inbox/svelte/index.d.ts +0 -27
- package/dist/blocks/inbox/svelte/index.js +0 -32
- package/dist/blocks/inbox/vue/index.d.ts +0 -27
- package/dist/blocks/inbox/vue/index.js +0 -32
- package/dist/blocks/jobs/index.d.ts +0 -523
- package/dist/blocks/jobs/index.js +0 -1345
- package/dist/blocks/messaging/react/index.d.ts +0 -39
- package/dist/blocks/messaging/react/index.js +0 -80
- package/dist/blocks/messaging/react/server.d.ts +0 -12
- package/dist/blocks/messaging/react/server.js +0 -14
- package/dist/blocks/messaging/solid/index.d.ts +0 -20
- package/dist/blocks/messaging/solid/index.js +0 -23
- package/dist/blocks/messaging/svelte/index.d.ts +0 -20
- package/dist/blocks/messaging/svelte/index.js +0 -23
- package/dist/blocks/messaging/vue/index.d.ts +0 -20
- package/dist/blocks/messaging/vue/index.js +0 -23
- package/dist/blocks/mfa/react/index.d.ts +0 -30
- package/dist/blocks/mfa/react/index.js +0 -45
- package/dist/blocks/mfa/react/server.d.ts +0 -9
- package/dist/blocks/mfa/react/server.js +0 -12
- package/dist/blocks/mfa/solid/index.d.ts +0 -20
- package/dist/blocks/mfa/solid/index.js +0 -23
- package/dist/blocks/mfa/svelte/index.d.ts +0 -20
- package/dist/blocks/mfa/svelte/index.js +0 -23
- package/dist/blocks/mfa/vue/index.d.ts +0 -20
- package/dist/blocks/mfa/vue/index.js +0 -23
- package/dist/blocks/notifications/react/index.d.ts +0 -19
- package/dist/blocks/notifications/react/index.js +0 -41
- package/dist/blocks/notifications/react/server.d.ts +0 -10
- package/dist/blocks/notifications/react/server.js +0 -10
- package/dist/blocks/notifications/solid/index.d.ts +0 -13
- package/dist/blocks/notifications/solid/index.js +0 -14
- package/dist/blocks/notifications/svelte/index.d.ts +0 -13
- package/dist/blocks/notifications/svelte/index.js +0 -14
- package/dist/blocks/notifications/vue/index.d.ts +0 -13
- package/dist/blocks/notifications/vue/index.js +0 -14
- package/dist/blocks/number-sequences/index.d.ts +0 -48
- package/dist/blocks/number-sequences/index.js +0 -52
- package/dist/blocks/onboarding/react/index.d.ts +0 -24
- package/dist/blocks/onboarding/react/index.js +0 -38
- package/dist/blocks/onboarding/react/server.d.ts +0 -10
- package/dist/blocks/onboarding/react/server.js +0 -10
- package/dist/blocks/onboarding/solid/index.d.ts +0 -13
- package/dist/blocks/onboarding/solid/index.js +0 -14
- package/dist/blocks/onboarding/svelte/index.d.ts +0 -13
- package/dist/blocks/onboarding/svelte/index.js +0 -14
- package/dist/blocks/onboarding/vue/index.d.ts +0 -13
- package/dist/blocks/onboarding/vue/index.js +0 -14
- package/dist/blocks/organizations/react/index.d.ts +0 -127
- package/dist/blocks/organizations/react/index.js +0 -113
- package/dist/blocks/organizations/react/server.d.ts +0 -20
- package/dist/blocks/organizations/react/server.js +0 -24
- package/dist/blocks/organizations/solid/index.d.ts +0 -34
- package/dist/blocks/organizations/solid/index.js +0 -32
- package/dist/blocks/organizations/svelte/index.d.ts +0 -34
- package/dist/blocks/organizations/svelte/index.js +0 -32
- package/dist/blocks/organizations/vue/index.d.ts +0 -34
- package/dist/blocks/organizations/vue/index.js +0 -32
- package/dist/blocks/parties/index.d.ts +0 -182
- package/dist/blocks/parties/index.js +0 -358
- package/dist/blocks/reactions/react/index.d.ts +0 -32
- package/dist/blocks/reactions/react/index.js +0 -57
- package/dist/blocks/reactions/react/server.d.ts +0 -9
- package/dist/blocks/reactions/react/server.js +0 -10
- package/dist/blocks/reactions/solid/index.d.ts +0 -13
- package/dist/blocks/reactions/solid/index.js +0 -14
- package/dist/blocks/reactions/svelte/index.d.ts +0 -13
- package/dist/blocks/reactions/svelte/index.js +0 -14
- package/dist/blocks/reactions/vue/index.d.ts +0 -13
- package/dist/blocks/reactions/vue/index.js +0 -14
- package/dist/blocks/rules/index.d.ts +0 -175
- package/dist/blocks/rules/index.js +0 -163
- package/dist/blocks/rules/react/index.d.ts +0 -38
- package/dist/blocks/rules/react/index.js +0 -59
- package/dist/blocks/rules/react/server.d.ts +0 -6
- package/dist/blocks/rules/react/server.js +0 -7
- package/dist/blocks/rules/solid/index.d.ts +0 -13
- package/dist/blocks/rules/solid/index.js +0 -14
- package/dist/blocks/rules/svelte/index.d.ts +0 -13
- package/dist/blocks/rules/svelte/index.js +0 -14
- package/dist/blocks/rules/vue/index.d.ts +0 -13
- package/dist/blocks/rules/vue/index.js +0 -14
- package/dist/blocks/saved-views/react/index.d.ts +0 -40
- package/dist/blocks/saved-views/react/index.js +0 -60
- package/dist/blocks/saved-views/react/server.d.ts +0 -10
- package/dist/blocks/saved-views/react/server.js +0 -10
- package/dist/blocks/saved-views/solid/index.d.ts +0 -13
- package/dist/blocks/saved-views/solid/index.js +0 -14
- package/dist/blocks/saved-views/svelte/index.d.ts +0 -13
- package/dist/blocks/saved-views/svelte/index.js +0 -14
- package/dist/blocks/saved-views/vue/index.d.ts +0 -13
- package/dist/blocks/saved-views/vue/index.js +0 -14
- package/dist/blocks/search/react/index.d.ts +0 -39
- package/dist/blocks/search/react/index.js +0 -49
- package/dist/blocks/search/react/server.d.ts +0 -10
- package/dist/blocks/search/react/server.js +0 -11
- package/dist/blocks/search/solid/index.d.ts +0 -13
- package/dist/blocks/search/solid/index.js +0 -14
- package/dist/blocks/search/svelte/index.d.ts +0 -13
- package/dist/blocks/search/svelte/index.js +0 -14
- package/dist/blocks/search/vue/index.d.ts +0 -13
- package/dist/blocks/search/vue/index.js +0 -14
- package/dist/blocks/service-principals/index.d.ts +0 -132
- package/dist/blocks/service-principals/index.js +0 -109
- package/dist/blocks/sessions/react/index.d.ts +0 -36
- package/dist/blocks/sessions/react/index.js +0 -53
- package/dist/blocks/sessions/react/server.d.ts +0 -15
- package/dist/blocks/sessions/react/server.js +0 -17
- package/dist/blocks/sessions/solid/index.d.ts +0 -20
- package/dist/blocks/sessions/solid/index.js +0 -23
- package/dist/blocks/sessions/svelte/index.d.ts +0 -20
- package/dist/blocks/sessions/svelte/index.js +0 -23
- package/dist/blocks/sessions/vue/index.d.ts +0 -20
- package/dist/blocks/sessions/vue/index.js +0 -23
- package/dist/blocks/settings/react/index.d.ts +0 -31
- package/dist/blocks/settings/react/index.js +0 -37
- package/dist/blocks/settings/react/server.d.ts +0 -10
- package/dist/blocks/settings/react/server.js +0 -10
- package/dist/blocks/settings/solid/index.d.ts +0 -13
- package/dist/blocks/settings/solid/index.js +0 -14
- package/dist/blocks/settings/svelte/index.d.ts +0 -13
- package/dist/blocks/settings/svelte/index.js +0 -14
- package/dist/blocks/settings/vue/index.d.ts +0 -13
- package/dist/blocks/settings/vue/index.js +0 -14
- package/dist/blocks/shared-signals/index.d.ts +0 -440
- package/dist/blocks/shared-signals/index.js +0 -885
- package/dist/blocks/subjects/react/index.d.ts +0 -31
- package/dist/blocks/subjects/react/index.js +0 -60
- package/dist/blocks/subjects/react/server.d.ts +0 -9
- package/dist/blocks/subjects/react/server.js +0 -12
- package/dist/blocks/subjects/solid/index.d.ts +0 -13
- package/dist/blocks/subjects/solid/index.js +0 -14
- package/dist/blocks/subjects/svelte/index.d.ts +0 -13
- package/dist/blocks/subjects/svelte/index.js +0 -14
- package/dist/blocks/subjects/vue/index.d.ts +0 -13
- package/dist/blocks/subjects/vue/index.js +0 -14
- package/dist/blocks/tags/react/index.d.ts +0 -29
- package/dist/blocks/tags/react/index.js +0 -53
- package/dist/blocks/tags/react/server.d.ts +0 -7
- package/dist/blocks/tags/react/server.js +0 -7
- package/dist/blocks/tags/solid/index.d.ts +0 -13
- package/dist/blocks/tags/solid/index.js +0 -14
- package/dist/blocks/tags/svelte/index.d.ts +0 -13
- package/dist/blocks/tags/svelte/index.js +0 -14
- package/dist/blocks/tags/vue/index.d.ts +0 -13
- package/dist/blocks/tags/vue/index.js +0 -14
- package/dist/blocks/targets/index.d.ts +0 -82
- package/dist/blocks/targets/index.js +0 -72
- package/dist/blocks/undo/react/index.d.ts +0 -17
- package/dist/blocks/undo/react/index.js +0 -24
- package/dist/blocks/undo/react/server.d.ts +0 -10
- package/dist/blocks/undo/react/server.js +0 -10
- package/dist/blocks/undo/solid/index.d.ts +0 -13
- package/dist/blocks/undo/solid/index.js +0 -14
- package/dist/blocks/undo/svelte/index.d.ts +0 -13
- package/dist/blocks/undo/svelte/index.js +0 -14
- package/dist/blocks/undo/vue/index.d.ts +0 -13
- package/dist/blocks/undo/vue/index.js +0 -14
- package/dist/blocks/usage/react/index.d.ts +0 -29
- package/dist/blocks/usage/react/index.js +0 -38
- package/dist/blocks/usage/react/server.d.ts +0 -7
- package/dist/blocks/usage/react/server.js +0 -7
- package/dist/blocks/usage/solid/index.d.ts +0 -13
- package/dist/blocks/usage/solid/index.js +0 -14
- package/dist/blocks/usage/svelte/index.d.ts +0 -13
- package/dist/blocks/usage/svelte/index.js +0 -14
- package/dist/blocks/usage/vue/index.d.ts +0 -13
- package/dist/blocks/usage/vue/index.js +0 -14
- package/dist/blocks/work-items/index.d.ts +0 -87
- package/dist/blocks/work-items/index.js +0 -431
- package/dist/blocks/workflow-builder/index.d.ts +0 -43
- package/dist/blocks/workflow-builder/index.js +0 -33
- package/dist/blocks/workflow-builder/react/index.d.ts +0 -32
- package/dist/blocks/workflow-builder/react/index.js +0 -75
- package/dist/blocks/workflow-builder/react/server.d.ts +0 -14
- package/dist/blocks/workflow-builder/react/server.js +0 -17
- package/dist/blocks/workflow-builder/solid/index.d.ts +0 -20
- package/dist/blocks/workflow-builder/solid/index.js +0 -23
- package/dist/blocks/workflow-builder/svelte/index.d.ts +0 -20
- package/dist/blocks/workflow-builder/svelte/index.js +0 -23
- package/dist/blocks/workflow-builder/vue/index.d.ts +0 -20
- package/dist/blocks/workflow-builder/vue/index.js +0 -23
- package/dist/blocks/workflows/react/index.d.ts +0 -39
- package/dist/blocks/workflows/react/index.js +0 -65
- package/dist/blocks/workflows/react/server.d.ts +0 -14
- package/dist/blocks/workflows/react/server.js +0 -17
- package/dist/blocks/workflows/solid/index.d.ts +0 -20
- package/dist/blocks/workflows/solid/index.js +0 -23
- package/dist/blocks/workflows/svelte/index.d.ts +0 -20
- package/dist/blocks/workflows/svelte/index.js +0 -23
- package/dist/blocks/workflows/vue/index.d.ts +0 -20
- package/dist/blocks/workflows/vue/index.js +0 -23
- package/dist/bookings-BB5lFlNO.js +0 -310
- package/dist/bookings-CC7IeiRa.d.ts +0 -290
- package/dist/bucket-TkB7_xv8.d.ts +0 -667
- package/dist/build-DCfpwg78.js +0 -1839
- package/dist/build-g9wTbQdp.js +0 -703
- package/dist/calendar-T3Vdpq7E.js +0 -952
- package/dist/carrier-C7Q_21Kd.d.ts +0 -169
- package/dist/chat-sdk/react/index.d.ts +0 -3
- package/dist/chat-sdk/react/index.js +0 -2
- package/dist/chat-sdk/react/server.d.ts +0 -4
- package/dist/chat-sdk/react/server.js +0 -1
- package/dist/claims-T8TWZ53E.js +0 -63
- package/dist/cli/add-Bf3kE6PY.js +0 -75
- package/dist/cli/add-CYh6Sxk1.js +0 -674
- package/dist/cli/add-Dg40eFKE.js +0 -1
- package/dist/cli/adopt-B0vrj-4B.js +0 -421
- package/dist/cli/adopt-DJR1k3lS.js +0 -1
- package/dist/cli/apply-DUQ-5LC6.js +0 -329
- package/dist/cli/blocks-DzgYfjVv.js +0 -124
- package/dist/cli/blocks-gGupqvBH.js +0 -1
- package/dist/cli/cache-C3K_wOE2.js +0 -536
- package/dist/cli/catalog-CNM0ViIh.js +0 -199
- package/dist/cli/codemod-Dz4R-tVY.js +0 -1127
- package/dist/cli/command-33pu13LT.js +0 -963
- package/dist/cli/completion-6M6Hr8TL.js +0 -211
- package/dist/cli/completion-Bqu8yq0q.js +0 -1
- package/dist/cli/completion-Ddr3yqd3.js +0 -30
- package/dist/cli/config-B31tIvAl.js +0 -42
- package/dist/cli/config-CjgXMZW2.js +0 -1522
- package/dist/cli/config-D9k5ckqV.js +0 -1
- package/dist/cli/config-edit-D46H0UHp.js +0 -613
- package/dist/cli/db-CeagtENM.js +0 -473
- package/dist/cli/design-edit-B40ljpGZ.js +0 -205
- package/dist/cli/detect-RApSAA8v.js +0 -84
- package/dist/cli/dist-DSwzLVAG.js +0 -129
- package/dist/cli/doctor-COGJJ1gy.js +0 -3898
- package/dist/cli/emit-DbQeLlHt.js +0 -1123
- package/dist/cli/env-Ba-pOD3a.js +0 -1
- package/dist/cli/env-DlgfvI8U.js +0 -143
- package/dist/cli/files-C5JfVnj5.js +0 -972
- package/dist/cli/gen-DHW1qENn.js +0 -307
- package/dist/cli/init-CZifzAUD.js +0 -397
- package/dist/cli/introspect-Dfwu5vAg.js +0 -51
- package/dist/cli/keys-iJs_1WT8.js +0 -106
- package/dist/cli/live-1eL2MIkS.js +0 -344
- package/dist/cli/mcp-CaFW6uKU.js +0 -240
- package/dist/cli/metadata-DkOQHZoH.js +0 -146
- package/dist/cli/migration-safety-BsCKKxPf.js +0 -305
- package/dist/cli/module-migration-CbX-jRhV.js +0 -606
- package/dist/cli/moved-CdNtCf4t.js +0 -161
- package/dist/cli/names-D6LrQnOv.js +0 -6
- package/dist/cli/parse-CRZLku1b.js +0 -182
- package/dist/cli/preset-C4fagbhZ.js +0 -130
- package/dist/cli/run-CE2s5TDh.js +0 -711
- package/dist/cli/run-Du5XPOCv.js +0 -63
- package/dist/cli/run-KXjrgNCH.js +0 -2378
- package/dist/cli/scaffold-CPH8sEhw.js +0 -901
- package/dist/cli/scaffold-DS6g3INp.js +0 -1
- package/dist/cli/seed-D6V-T5Af.js +0 -188
- package/dist/cli/seed-DPQaA8aP.js +0 -1
- package/dist/cli/shared-CCpxS5if.js +0 -151
- package/dist/cli/skills-Bz4INB8f.js +0 -121
- package/dist/cli/snapshot-Dkwxc1uV.js +0 -351
- package/dist/cli/source-args-DZV4RnZL.js +0 -59
- package/dist/cli/spec-B3Tbc7Dm.js +0 -7534
- package/dist/cli/spec-Cv1GYrcW.js +0 -1
- package/dist/cli/sql-C58MS9DI.js +0 -348
- package/dist/cli/sql-DVPw5tvO.js +0 -2
- package/dist/cli/stack-_F_JhllX.js +0 -135
- package/dist/cli/sync-CjkKpI6d.js +0 -91
- package/dist/cli/typegen-F9GEjpvD.js +0 -502
- package/dist/cli/typegen-version-BNBPI4Eu.js +0 -9
- package/dist/cli/version-CTqnp3HO.js +0 -4
- package/dist/cli/write-3qdrpS1v.js +0 -201
- package/dist/client--tyFmxDT.js +0 -52
- package/dist/client-7_4Y21ue.d.ts +0 -122
- package/dist/client-B1cjaIfv.js +0 -116
- package/dist/client-B2GCMvfd.d.ts +0 -451
- package/dist/client-B8cHiZfF.js +0 -67
- package/dist/client-BIMg9IiF.d.ts +0 -349
- package/dist/client-BKGVUgo7.js +0 -380
- package/dist/client-BNaOcfeH.js +0 -58
- package/dist/client-BQseXods.d.ts +0 -309
- package/dist/client-BSnf6fn6.d.ts +0 -59
- package/dist/client-BW3-RUbq.js +0 -235
- package/dist/client-BYAY7lLs.d.ts +0 -137
- package/dist/client-BcXmbm4f.js +0 -173
- package/dist/client-BgmVu505.js +0 -167
- package/dist/client-Bj0xrUzr.js +0 -437
- package/dist/client-Bn0qqRBg.d.ts +0 -37
- package/dist/client-Bni68sve.d.ts +0 -136
- package/dist/client-BrtwaIBh.d.ts +0 -74
- package/dist/client-BtRx0-kn.js +0 -82
- package/dist/client-BteuBPIy.js +0 -337
- package/dist/client-C1TxDBgX.js +0 -111
- package/dist/client-C1zOmnS8.js +0 -89
- package/dist/client-C56l0MnY.d.ts +0 -177
- package/dist/client-CA6KuLDu.d.ts +0 -223
- package/dist/client-CBcq7LBg.d.ts +0 -178
- package/dist/client-CGJrSTMZ.js +0 -234
- package/dist/client-CLIBcMzL.d.ts +0 -116
- package/dist/client-COuIfjbB.d.ts +0 -46
- package/dist/client-CVToJ4uI.js +0 -84
- package/dist/client-C_0XZieg.js +0 -287
- package/dist/client-CebKlRU7.js +0 -157
- package/dist/client-ChOJ4v0D.js +0 -137
- package/dist/client-CnENAa0E.d.ts +0 -69
- package/dist/client-Cp79i2ZE.d.ts +0 -152
- package/dist/client-CwKsEl6q.js +0 -99
- package/dist/client-D-LPdEDQ.d.ts +0 -43
- package/dist/client-D6gD9qt9.d.ts +0 -45
- package/dist/client-DBwWXQKF.d.ts +0 -132
- package/dist/client-DD3EcytK.js +0 -65
- package/dist/client-DScMvaty.js +0 -38
- package/dist/client-DT6Tvudr.d.ts +0 -54
- package/dist/client-DU1_Jq4e.d.ts +0 -116
- package/dist/client-Dd-a0tup.d.ts +0 -475
- package/dist/client-Dh8zXgpq.js +0 -1060
- package/dist/client-DkI0oyR7.js +0 -76
- package/dist/client-DmjG9PHH.js +0 -211
- package/dist/client-DnUFHmje.js +0 -129
- package/dist/client-Do5hykMK.d.ts +0 -38
- package/dist/client-DzOL3lsV.d.ts +0 -110
- package/dist/client-DzukpHS1.d.ts +0 -165
- package/dist/client-LngH55pZ.d.ts +0 -83
- package/dist/client-PPSwiJaK.js +0 -291
- package/dist/client-RoAuPQNB.d.ts +0 -103
- package/dist/client-WzuQExHk.js +0 -253
- package/dist/client-Y_HnZGF4.js +0 -51
- package/dist/client-bDXsvSXp.d.ts +0 -90
- package/dist/client-bx3Bk7c5.d.ts +0 -64
- package/dist/client-jgDU7Roj.d.ts +0 -144
- package/dist/client-kRvHKAKS.js +0 -60
- package/dist/client-pxXoQOdC.js +0 -40
- package/dist/client-yIxEJwTK.js +0 -121
- package/dist/cloud-event-SPyXMdcd.d.ts +0 -64
- package/dist/codecs-CQrX3ZW4.js +0 -358
- package/dist/codecs-DAu2sYWn.d.ts +0 -222
- package/dist/comments-CB8pFSV1.js +0 -142
- package/dist/compiler-BCyHFI6n.d.ts +0 -14
- package/dist/compose--4D1FoPN.js +0 -53
- package/dist/composite-Dv6o2BSw.js +0 -130
- package/dist/composite-KllwFim2.d.ts +0 -82
- package/dist/config-BuOz_O-y.d.ts +0 -2152
- package/dist/config-Dh4D8lBa.js +0 -13931
- package/dist/config-Dn0cC3bM.js +0 -1093
- package/dist/connector-BdCE4Efp.d.ts +0 -164
- package/dist/connectors-DDiSNvkF.d.ts +0 -147
- package/dist/context-9Q23weHu.d.ts +0 -524
- package/dist/context-CMxVnPMY.js +0 -9
- package/dist/context-CYquqpA6.js +0 -41
- package/dist/controller-CSsC9s3s.js +0 -73
- package/dist/controller-DAD4hbl4.d.ts +0 -52
- package/dist/create-blocks-kPUhCvje.js +0 -217
- package/dist/cron-_i5pBGkY.js +0 -148
- package/dist/cron-route-Y0eJ-FNi.js +0 -24
- package/dist/deal-forecast-CBlp20PY.js +0 -39
- package/dist/define-DQznpZYl.js +0 -2023
- package/dist/define-Dw7pRO4h.d.ts +0 -1123
- package/dist/define-block-COpcS6aT.d.ts +0 -1338
- package/dist/define-block-Dze77QTw.js +0 -56
- package/dist/delegation-CeXm9AJ3.js +0 -146
- package/dist/documents-kgDOHUfn.d.ts +0 -152
- package/dist/embeddings-CcRP-cMN.d.ts +0 -78
- package/dist/employees-Dwyvxs4r.d.ts +0 -180
- package/dist/ended--Bd_Q6uL.d.ts +0 -76
- package/dist/engagements-CsJhf2OM.d.ts +0 -179
- package/dist/entitlements-B_ttRvI6.js +0 -45
- package/dist/entitlements-DDevu4ZE.d.ts +0 -54
- package/dist/entity-form-B67vq97h.d.ts +0 -82
- package/dist/entity-naming-DLDhHTbK.js +0 -131
- package/dist/entity-schema-BXXC1NnT.js +0 -39
- package/dist/envelope-DCfHtVtZ.js +0 -90
- package/dist/errors-03ysrOt4.js +0 -325
- package/dist/errors-DZx8w-MH.js +0 -44
- package/dist/escape-like-BfXS-iVe.d.ts +0 -30
- package/dist/eve-BlJI8ZXL.d.ts +0 -157
- package/dist/event-calendar-D3SVa3AE.d.ts +0 -65
- package/dist/events-DbLjvxDX.d.ts +0 -852
- package/dist/executor-BDAGTc_O.js +0 -207
- package/dist/executor-BElVQpaB.d.ts +0 -188
- package/dist/executor-CPyrQdjh.d.ts +0 -700
- package/dist/executor-CsTaO3AT.d.ts +0 -37
- package/dist/executor-DQoczQZJ.d.ts +0 -104
- package/dist/executor-QtVn0axs.js +0 -147
- package/dist/executor-o9HkOJ0m.js +0 -869
- package/dist/expo-sqlite/index.d.ts +0 -61
- package/dist/expo-sqlite/index.js +0 -110
- package/dist/feature-BBLdbGu7.js +0 -224
- package/dist/field-errors-vshYTVKr.d.ts +0 -166
- package/dist/field-formats-DbjaDXoZ.d.ts +0 -39
- package/dist/fields-CanaxA0U.d.ts +0 -75
- package/dist/fields-DK30XCgc.js +0 -107
- package/dist/filter-evaluate-C3i2bGfk.d.ts +0 -37
- package/dist/filter-evaluate-CRDXv0Dl.js +0 -217
- package/dist/filter-query-D4ZSwbcJ.js +0 -524
- package/dist/filter-query-o3b_GuyC.d.ts +0 -133
- package/dist/flags-BTDPaN11.d.ts +0 -246
- package/dist/flags-BhYByvP1.js +0 -279
- package/dist/flows/index.d.ts +0 -247
- package/dist/flows/index.js +0 -229
- package/dist/format-AYHceC2m.d.ts +0 -79
- package/dist/framework-CXoyWGgd.js +0 -57
- package/dist/framework-FxfJpyoF.d.ts +0 -41
- package/dist/function-contract-vPqwt1j4.d.ts +0 -27
- package/dist/gateway-DI8dbOml.d.ts +0 -115
- package/dist/graph-B4eubUQG.js +0 -365
- package/dist/groups-CxonH3u5.js +0 -16
- package/dist/http-51t9xppD.js +0 -28
- package/dist/impersonation-CZD9AOAk.js +0 -62
- package/dist/inbox-BPBb6etH.d.ts +0 -321
- package/dist/index-BSUX4dlB.d.ts +0 -305
- package/dist/index-BgSuw4CC.d.ts +0 -151
- package/dist/index-C7CrdGgz.d.ts +0 -562
- package/dist/index-CvxK2BZS.d.ts +0 -847
- package/dist/index-CxZQgNVE.d.ts +0 -62
- package/dist/index-D4420jLW.d.ts +0 -66
- package/dist/index-DK-YTWLd.d.ts +0 -443
- package/dist/index-DbXWcrOI.d.ts +0 -577
- package/dist/index-U0o7kU0s.d.ts +0 -69
- package/dist/index-WEafENqH.d.ts +0 -149
- package/dist/index-Yep7auV-.d.ts +0 -287
- package/dist/index-eTY4kJzo.d.ts +0 -163
- package/dist/invalidate-BLiBFbLy.d.ts +0 -19
- package/dist/json-schema-DWDTfD8J.js +0 -888
- package/dist/jwks-cache-CRymV-Dr.js +0 -49
- package/dist/kit-Ct4Z6GIO.js +0 -127
- package/dist/kit-DKfbNTAA.d.ts +0 -94
- package/dist/knowledge-BKGrXdS_.js +0 -272
- package/dist/knowledge-CFkCRxO9.d.ts +0 -202
- package/dist/list-query-BtluNnYk.d.ts +0 -222
- package/dist/list-query-CuS1w2Af.js +0 -559
- package/dist/live-CZtRMh62.js +0 -246
- package/dist/mentions-ByYnRNIG.js +0 -114
- package/dist/messages-DNzIVvgN.js +0 -492
- package/dist/messaging-BC-P-yAv.js +0 -329
- package/dist/messaging-CZ6aWb10.d.ts +0 -297
- package/dist/methods-7u6vSgz_.js +0 -11
- package/dist/mfa-wrx1rqJT.d.ts +0 -36
- package/dist/model-Btl8X9cs.d.ts +0 -326
- package/dist/model-messages-D-jVOIOK.js +0 -206
- package/dist/money-codec-jMP0PQLZ.js +0 -41
- package/dist/onboarding-CGMuX7sP.js +0 -68
- package/dist/openapi/index.d.ts +0 -5
- package/dist/openapi/index.js +0 -36
- package/dist/operations-nWYRexee.d.ts +0 -6
- package/dist/options-289GJc2l.d.ts +0 -52
- package/dist/options-70OsM-wK.js +0 -10
- package/dist/options-B7EJaOX-.js +0 -5
- package/dist/options-BkpqTGrJ.js +0 -8
- package/dist/options-Blg8lAkz.js +0 -9
- package/dist/options-Bn4cu0gt.js +0 -5
- package/dist/options-BnoJOwXK.js +0 -8
- package/dist/options-C2HesT4A.js +0 -9
- package/dist/options-C3EzJATk.js +0 -10
- package/dist/options-C3hZ1fbC.js +0 -10
- package/dist/options-CAzVf-1T.js +0 -8
- package/dist/options-CGKSUFUq.js +0 -5
- package/dist/options-CGjGE8xS.js +0 -12
- package/dist/options-CUqQ9pm7.js +0 -9
- package/dist/options-CalPr6kN.d.ts +0 -12
- package/dist/options-CfxBliP6.d.ts +0 -17
- package/dist/options-ChD15QxJ.js +0 -9
- package/dist/options-CmoJsd4V.d.ts +0 -8
- package/dist/options-CyD7OObW.js +0 -17
- package/dist/options-D1blDihM.js +0 -9
- package/dist/options-D2Gd6VfS.js +0 -8
- package/dist/options-D4aD9qwB.js +0 -5
- package/dist/options-D65jzn7S.js +0 -5
- package/dist/options-D7f2VKzj.js +0 -25
- package/dist/options-D7sgG1bQ.js +0 -16
- package/dist/options-DJm31rsi.d.ts +0 -16
- package/dist/options-DXqcJyOP.js +0 -10
- package/dist/options-DXuA4JVa.d.ts +0 -15
- package/dist/options-DZupPoI0.d.ts +0 -10
- package/dist/options-Dm-2crCx.d.ts +0 -273
- package/dist/options-Dmg1Da9P.js +0 -25
- package/dist/options-DsUgamiy.js +0 -5
- package/dist/options-DujalSfR.js +0 -10
- package/dist/options-Dz3hJxUw.d.ts +0 -10
- package/dist/options-HSv8R6h5.js +0 -13
- package/dist/options-I8zVkB_y.js +0 -8
- package/dist/options-MHhjOoWz.js +0 -5
- package/dist/options-MLxMkd5B.js +0 -11
- package/dist/options-MQfTGMgP.d.ts +0 -14
- package/dist/options-OJ5zmgr8.js +0 -10
- package/dist/options-OMAUVcKK.d.ts +0 -10
- package/dist/options-_9arpsX9.js +0 -11
- package/dist/options-a-28mlYT.js +0 -9
- package/dist/options-kLKILdIu.js +0 -10
- package/dist/options-n22NK3PL.js +0 -8
- package/dist/options-qU8vgxhO.js +0 -18
- package/dist/options-te6d5-yz.d.ts +0 -19
- package/dist/options-wFnK3qWl.js +0 -9
- package/dist/options-xVAy3UsV.js +0 -9
- package/dist/organizations-DtehZg3J.js +0 -401
- package/dist/outbox-CsF_iKjx.d.ts +0 -199
- package/dist/overlay/index.d.ts +0 -249
- package/dist/overlay/index.js +0 -561
- package/dist/payments-BtScsgPS.js +0 -16
- package/dist/payments-CBzQIjoX.d.ts +0 -114
- package/dist/permissions-BetA_Fo_.js +0 -34
- package/dist/plugin-Ar5546xh.d.ts +0 -202
- package/dist/plugin-D9bYbYli.js +0 -45
- package/dist/plugins/actor/index.d.ts +0 -19
- package/dist/plugins/actor/index.js +0 -57
- package/dist/plugins/rules/index.d.ts +0 -96
- package/dist/plugins/rules/index.js +0 -235
- package/dist/plugins/soft-delete/index.d.ts +0 -39
- package/dist/plugins/soft-delete/index.js +0 -90
- package/dist/plugins/tenant/index.d.ts +0 -60
- package/dist/plugins/tenant/index.js +0 -119
- package/dist/plugins/timestamps/index.d.ts +0 -11
- package/dist/plugins/timestamps/index.js +0 -47
- package/dist/plugins/validation/index.d.ts +0 -24
- package/dist/plugins/validation/index.js +0 -83
- package/dist/pool-CRkU15dA.d.ts +0 -123
- package/dist/pool-errors-B17BQRW-.js +0 -27
- package/dist/ports-DsJicwI2.d.ts +0 -89
- package/dist/ports-yajgT0t0.js +0 -139
- package/dist/postgrest-DHLlN2nS.d.ts +0 -53
- package/dist/powersync/react/index.d.ts +0 -93
- package/dist/powersync/react/index.js +0 -120
- package/dist/preset-DzcQ5CQM.js +0 -841
- package/dist/problem-BWElIgIb.js +0 -162
- package/dist/problem-DpHB7tWl.d.ts +0 -79
- package/dist/provider-DmiaI1qt.d.ts +0 -112
- package/dist/provider-EJ0-5GwJ.js +0 -57
- package/dist/push-token-BxKmYhwk.d.ts +0 -24
- package/dist/queries-Dw8y9bvz.js +0 -245
- package/dist/rank-result-C_sHjkiz.js +0 -18
- package/dist/rank-result-DwR0FawB.d.ts +0 -14
- package/dist/rate-limit-B_U12PdL.js +0 -49
- package/dist/rate-limit-CrOuXfjj.d.ts +0 -50
- package/dist/rate-limit-DExDw3Cy.js +0 -327
- package/dist/react-28VgUbm9.js +0 -852
- package/dist/react-controller-CKSdtJ10.js +0 -43
- package/dist/react-env-CfA3EdBH.js +0 -20
- package/dist/read-set-BAR84kPC.js +0 -199
- package/dist/recordings-DgDu7AOt.d.ts +0 -119
- package/dist/refusal-DXydjgsS.js +0 -64
- package/dist/refusal-efy5bZMd.d.ts +0 -32
- package/dist/replicas-BvIL4_jL.js +0 -94
- package/dist/resolve-CzUKTIMq.d.ts +0 -289
- package/dist/resolve-DAYdcs22.js +0 -892
- package/dist/resolved-names-Dr7brlLL.js +0 -133
- package/dist/resource-BRRU-A7j.js +0 -91
- package/dist/resource-DYDEnww-.d.ts +0 -115
- package/dist/resource-Dk_JYsOt.js +0 -469
- package/dist/resource-execute-bT9ltHVT.d.ts +0 -15
- package/dist/resource-types-Bzt_bpR5.d.ts +0 -153
- package/dist/resources-BV6j5TTD.js +0 -64
- package/dist/resources-Du5wcL3f.d.ts +0 -7
- package/dist/respond-CZYibxUx.d.ts +0 -101
- package/dist/respond-z_yfyitp.js +0 -100
- package/dist/result-B3m7xtRY.js +0 -146
- package/dist/result-C6jDfedy.d.ts +0 -350
- package/dist/rows-Bb0EPupt.js +0 -80
- package/dist/rows-CtLWqdGQ.js +0 -39
- package/dist/rrule-xDm2znty.js +0 -290
- package/dist/rules-DcW5mj1r.js +0 -287
- package/dist/run-state-CPo-1X2B.d.ts +0 -12
- package/dist/sales-lines-9HsX89aO.d.ts +0 -28
- package/dist/sales-lines-BhrIx2oK.js +0 -41
- package/dist/sales-shared-C_u68eq2.js +0 -22
- package/dist/sales-shared-DAAGwQwN.d.ts +0 -8
- package/dist/schemas-9Ci3K0Hk.js +0 -103
- package/dist/schemas-ypoQZ_6N.js +0 -157
- package/dist/scores-CsURQDUB.d.ts +0 -172
- package/dist/scores-DdPZVVt8.js +0 -177
- package/dist/search-ToCOlCZ8.js +0 -106
- package/dist/sections-DjxYmpu-.js +0 -26
- package/dist/server-types-BOs-eFpo.d.ts +0 -809
- package/dist/session-BgsOPGZs.d.ts +0 -97
- package/dist/settings-mL-i7QUM.js +0 -93
- package/dist/shared-LmlfYPv4.js +0 -60
- package/dist/shared-eVrl39dX.js +0 -17
- package/dist/sign-in-lAyf6Ohy.js +0 -386
- package/dist/signatures-GUBuhLOB.js +0 -145
- package/dist/signatures-zbu6KTNQ.d.ts +0 -43
- package/dist/signers-D6ecZl22.d.ts +0 -390
- package/dist/signing-keys-B3RHGMMu.d.ts +0 -119
- package/dist/signing-keys-fWapUzi0.js +0 -164
- package/dist/solid-bind-C1jeq4Qm.d.ts +0 -11
- package/dist/solid-bind-iHGfGtBK.js +0 -38
- package/dist/solid-controller-DGuv7V8a.js +0 -13
- package/dist/spec-CoWHDoud.js +0 -119
- package/dist/spec-pins-CZ2CL8YZ.d.ts +0 -120
- package/dist/spec-pins-D3Tm6HJi.js +0 -60
- package/dist/sql-CVYjOUyG.js +0 -421
- package/dist/sql-rQDL6PIL.js +0 -122247
- package/dist/sso-B744gHeS.d.ts +0 -161
- package/dist/sso-Bt9HocgW.js +0 -217
- package/dist/standard-DbQsD2xZ.d.ts +0 -7
- package/dist/standard-DtkpFGkS.js +0 -25
- package/dist/stats-qCEV5M3B.js +0 -1147
- package/dist/store-o0HwYXl8.d.ts +0 -83
- package/dist/subject-readers-CsTpx44c.js +0 -49
- package/dist/subject-readers-DEZ45DQF.d.ts +0 -21
- package/dist/subjects-B6p4oAZJ.d.ts +0 -78
- package/dist/subjects-DXFmanh5.d.ts +0 -90
- package/dist/subjects-DevU_atb.js +0 -107
- package/dist/support-Ds1-UCN4.js +0 -534
- package/dist/support-view-vwJbRMpV.d.ts +0 -17
- package/dist/svelte-bind-BHN5a8VV.js +0 -46
- package/dist/svelte-bind-Ja6CtQGp.d.ts +0 -13
- package/dist/svelte-controller-oFKC9AYu.js +0 -19
- package/dist/table-schema-BcB-VCQb.js +0 -293
- package/dist/table-schema-Cb-IV_pZ.d.ts +0 -78
- package/dist/tags-CLXi2c6O.d.ts +0 -30
- package/dist/tags-C_ym1yDM.js +0 -39
- package/dist/tags-EnvIccSJ.js +0 -86
- package/dist/tanstack-db/supabase/index.d.ts +0 -66
- package/dist/tanstack-db/supabase/index.js +0 -271
- package/dist/tax-CIIxd8Zf.d.ts +0 -170
- package/dist/tax-DmOMjrYc.js +0 -140
- package/dist/tee-DwkUvJD_.js +0 -101
- package/dist/template-BWP7IXZg.js +0 -126
- package/dist/temporal-required-B8qQHYbI.js +0 -20
- package/dist/tenant-Bg4PDLkG.d.ts +0 -17
- package/dist/tenant-DnMqeNIM.js +0 -27
- package/dist/timeline-0_hTBH0-.js +0 -52
- package/dist/timeline-DUUsPLv5.d.ts +0 -152
- package/dist/timing-C5NzaEgy.js +0 -95
- package/dist/topic-CPOmMgkf.js +0 -643
- package/dist/topic-D9j8G2dw.d.ts +0 -415
- package/dist/types-BEDfwXL4.d.ts +0 -251
- package/dist/types-BRJHGhSq.d.ts +0 -177
- package/dist/types-BTK75521.js +0 -8
- package/dist/types-CGUDoF5I.d.ts +0 -624
- package/dist/types-DkPE7yd2.d.ts +0 -194
- package/dist/types-QHeku_6b.d.ts +0 -217
- package/dist/types-uHD9yANu.d.ts +0 -700
- package/dist/undo-B696duxr.d.ts +0 -46
- package/dist/undo-vutx78k8.js +0 -44
- package/dist/upload-claim-D_wgDbi7.js +0 -33
- package/dist/usage-BI1E2940.js +0 -264
- package/dist/usage-DBcVGqnr.d.ts +0 -232
- package/dist/user-change-CSR_prhd.js +0 -133
- package/dist/variants-DL7NpFJ7.js +0 -53
- package/dist/vault-BQTdu4eH.d.ts +0 -62
- package/dist/verify-27w0I5C9.js +0 -130
- package/dist/verify-BmuCB4PW.d.ts +0 -146
- package/dist/view-2_I-2ukO.d.ts +0 -90
- package/dist/view-BtgqxQLM.js +0 -108
- package/dist/vue-bind-CFxon-Vs.js +0 -45
- package/dist/vue-bind-TPkbLl4z.d.ts +0 -11
- package/dist/vue-controller-WtbuT-Ux.js +0 -13
- package/dist/watch-CfMT6vX7.js +0 -139
- package/dist/watch-DziJudwj.d.ts +0 -93
- package/dist/watch-topic-CIT3UlAh.d.ts +0 -31
- package/dist/wire-Bizdxvp-.js +0 -66
- package/dist/work-items-Cnntm8ij.d.ts +0 -238
- package/dist/workflow-builder-2q1iqHYG.js +0 -699
- package/dist/workflow-sdk-BTYWQQg9.d.ts +0 -163
- package/dist/workflow-sdk-_pqDUwNK.js +0 -242
- package/dist/workflow-sdk-world-BIwGVy6S.js +0 -2401
- package/dist/workflows-D8U7KyXJ.d.ts +0 -258
- package/dist/workflows-VJBSV-QR.js +0 -285
- package/skills/better-supabase/references/plugins.md +0 -71
|
@@ -0,0 +1,1698 @@
|
|
|
1
|
+
import { t as DEFAULT_TENANT } from "./entity-naming-Dtyq5sKE.js";
|
|
2
|
+
import { E as PRESET_CATALOG, k as asBlocksConfig } from "./app-tables-D29Rahtg.js";
|
|
3
|
+
//#region src/config/names.ts
|
|
4
|
+
/** The steps `better-supabase gen` runs, in the order it runs them. */
|
|
5
|
+
const GEN_TASKS = [
|
|
6
|
+
"types",
|
|
7
|
+
"sql",
|
|
8
|
+
"spec",
|
|
9
|
+
"seed",
|
|
10
|
+
"env"
|
|
11
|
+
];
|
|
12
|
+
/** Glue `better-supabase init` and `add` write for a framework or runtime. */
|
|
13
|
+
const INTEGRATION_NAMES = [
|
|
14
|
+
"next",
|
|
15
|
+
"hono",
|
|
16
|
+
"orpc",
|
|
17
|
+
"edge",
|
|
18
|
+
"expo",
|
|
19
|
+
"mcp",
|
|
20
|
+
"client",
|
|
21
|
+
"react"
|
|
22
|
+
];
|
|
23
|
+
const INTEGRATION_INFO = {
|
|
24
|
+
client: {
|
|
25
|
+
title: "Browser client",
|
|
26
|
+
description: "A browser client with cookie sessions shared with the server.",
|
|
27
|
+
requires: []
|
|
28
|
+
},
|
|
29
|
+
next: {
|
|
30
|
+
title: "Next.js",
|
|
31
|
+
description: "The proxy, and helpers for Server Components, route handlers and actions.",
|
|
32
|
+
requires: ["client"]
|
|
33
|
+
},
|
|
34
|
+
react: {
|
|
35
|
+
title: "React",
|
|
36
|
+
description: "A React provider and typed TanStack Query hooks.",
|
|
37
|
+
requires: ["client"]
|
|
38
|
+
},
|
|
39
|
+
hono: {
|
|
40
|
+
title: "Hono",
|
|
41
|
+
description: "Hono middleware, handlers and REST resources.",
|
|
42
|
+
requires: []
|
|
43
|
+
},
|
|
44
|
+
orpc: {
|
|
45
|
+
title: "oRPC",
|
|
46
|
+
description: "oRPC middleware with a typed context and ORPCError mapping.",
|
|
47
|
+
requires: []
|
|
48
|
+
},
|
|
49
|
+
edge: {
|
|
50
|
+
title: "Edge Function",
|
|
51
|
+
description: "A Supabase Edge Function with CORS and Problem Details.",
|
|
52
|
+
requires: []
|
|
53
|
+
},
|
|
54
|
+
expo: {
|
|
55
|
+
title: "Expo",
|
|
56
|
+
description: "Expo Router server loaders, API routes and middleware, and a native client.",
|
|
57
|
+
requires: ["client"]
|
|
58
|
+
},
|
|
59
|
+
mcp: {
|
|
60
|
+
title: "MCP server",
|
|
61
|
+
description: "An MCP server over Streamable HTTP, as an Edge Function.",
|
|
62
|
+
requires: []
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
/** The agent folders `better-supabase skills install` writes to. */
|
|
66
|
+
const SKILLS_AGENTS = [
|
|
67
|
+
"cursor",
|
|
68
|
+
"claude",
|
|
69
|
+
"agents"
|
|
70
|
+
];
|
|
71
|
+
//#endregion
|
|
72
|
+
//#region src/config/groups.ts
|
|
73
|
+
const isObject = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
74
|
+
const objectOr = (value) => isObject(value) ? value : {};
|
|
75
|
+
/** The flat keys each group holds. `gen` and `auth` also keep their own keys. */
|
|
76
|
+
const CONFIG_GROUPS = {
|
|
77
|
+
database: [
|
|
78
|
+
"source",
|
|
79
|
+
"schemas",
|
|
80
|
+
"sql",
|
|
81
|
+
"seed",
|
|
82
|
+
"expose",
|
|
83
|
+
"buckets",
|
|
84
|
+
"realtime",
|
|
85
|
+
"topics",
|
|
86
|
+
"vectorSearch"
|
|
87
|
+
],
|
|
88
|
+
auth: [
|
|
89
|
+
"claims",
|
|
90
|
+
"authorization",
|
|
91
|
+
"entitlements"
|
|
92
|
+
],
|
|
93
|
+
gen: [
|
|
94
|
+
"output",
|
|
95
|
+
"casing",
|
|
96
|
+
"postgrestVersion",
|
|
97
|
+
"recordTypes",
|
|
98
|
+
"hooks",
|
|
99
|
+
"tables",
|
|
100
|
+
"json",
|
|
101
|
+
"codecs",
|
|
102
|
+
"relations",
|
|
103
|
+
"sensitive",
|
|
104
|
+
"storagePaths",
|
|
105
|
+
"functions",
|
|
106
|
+
"generators",
|
|
107
|
+
"readSets"
|
|
108
|
+
],
|
|
109
|
+
api: ["openapi", "specs"],
|
|
110
|
+
tooling: [
|
|
111
|
+
"doctor",
|
|
112
|
+
"env",
|
|
113
|
+
"keys",
|
|
114
|
+
"skills"
|
|
115
|
+
]
|
|
116
|
+
};
|
|
117
|
+
/** Top-level keys renamed by the regrouping: the grouped name, then the flat. */
|
|
118
|
+
const RENAMED_CONFIG_KEYS = [
|
|
119
|
+
["records", "subjects"],
|
|
120
|
+
["tables", "appTables"],
|
|
121
|
+
["adapters", "integrations"]
|
|
122
|
+
];
|
|
123
|
+
/** Keys renamed inside `blocks.<name>`: the grouped name, then the flat. */
|
|
124
|
+
const RENAMED_BLOCK_KEYS = [
|
|
125
|
+
["ownership", "mode"],
|
|
126
|
+
["owner", "scope"],
|
|
127
|
+
["names", "entities"],
|
|
128
|
+
["callbacks", "hooks"]
|
|
129
|
+
];
|
|
130
|
+
const OWNER = [["owner", "scope"]];
|
|
131
|
+
/** A resolved block entry with the key names a config file writes. */
|
|
132
|
+
function blockEntrySource(entry) {
|
|
133
|
+
const out = {};
|
|
134
|
+
for (const [key, value] of Object.entries(entry)) {
|
|
135
|
+
const pair = RENAMED_BLOCK_KEYS.find(([, flat]) => flat === key);
|
|
136
|
+
out[pair === void 0 ? key : pair[0]] = value;
|
|
137
|
+
}
|
|
138
|
+
return out;
|
|
139
|
+
}
|
|
140
|
+
function renameKeys(value, pairs, back) {
|
|
141
|
+
if (!isObject(value)) return value;
|
|
142
|
+
const out = {};
|
|
143
|
+
for (const [key, entry] of Object.entries(value)) {
|
|
144
|
+
const pair = pairs.find(([grouped, flat]) => (back ? flat : grouped) === key);
|
|
145
|
+
out[pair === void 0 ? key : back ? pair[0] : pair[1]] = entry;
|
|
146
|
+
}
|
|
147
|
+
return out;
|
|
148
|
+
}
|
|
149
|
+
function eachEntry(value, pairs, back) {
|
|
150
|
+
if (!isObject(value)) return value;
|
|
151
|
+
return Object.fromEntries(Object.entries(value).map(([name, entry]) => [name, renameKeys(entry, pairs, back)]));
|
|
152
|
+
}
|
|
153
|
+
function organizationOf(organization, out) {
|
|
154
|
+
if (!isObject(organization)) return {};
|
|
155
|
+
const { claim, ...rest } = organization;
|
|
156
|
+
const patch = {};
|
|
157
|
+
if (typeof claim === "string") patch["claims"] = {
|
|
158
|
+
...objectOr(out["claims"]),
|
|
159
|
+
tenant: claim
|
|
160
|
+
};
|
|
161
|
+
if (Object.keys(rest).length > 0) patch["organization"] = rest;
|
|
162
|
+
return patch;
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* The grouped config in the flat shape `resolveConfig` reads: every group's
|
|
166
|
+
* keys at the top level, `records`, `tables` and `adapters` under their flat
|
|
167
|
+
* names, `auth.organization` as `claims.tenant` and `organization`, and the
|
|
168
|
+
* renamed block and app table keys under their flat names.
|
|
169
|
+
*/
|
|
170
|
+
function flattenConfig(config) {
|
|
171
|
+
const source = { ...config };
|
|
172
|
+
const out = {};
|
|
173
|
+
for (const [key, value] of Object.entries(source)) {
|
|
174
|
+
if (key in CONFIG_GROUPS) continue;
|
|
175
|
+
const renamed = RENAMED_CONFIG_KEYS.find(([grouped]) => grouped === key);
|
|
176
|
+
out[renamed === void 0 ? key : renamed[1]] = value;
|
|
177
|
+
}
|
|
178
|
+
for (const [group, keys] of Object.entries(CONFIG_GROUPS)) {
|
|
179
|
+
const entries = source[group];
|
|
180
|
+
if (!isObject(entries)) continue;
|
|
181
|
+
const own = {};
|
|
182
|
+
for (const [key, value] of Object.entries(entries)) if (keys.includes(key) || group !== "gen" && group !== "auth") out[key] = value;
|
|
183
|
+
else own[key] = value;
|
|
184
|
+
if (group === "gen" && Object.keys(own).length > 0) out["gen"] = own;
|
|
185
|
+
else if (group === "auth") Object.assign(out, organizationOf(own["organization"], out));
|
|
186
|
+
}
|
|
187
|
+
if (isObject(out["sql"])) out["sql"] = renameKeys(out["sql"], OWNER, false);
|
|
188
|
+
if (out["appTables"] !== void 0) out["appTables"] = eachEntry(out["appTables"], OWNER, false);
|
|
189
|
+
if (out["blocks"] !== void 0) out["blocks"] = eachEntry(out["blocks"], RENAMED_BLOCK_KEYS, false);
|
|
190
|
+
return out;
|
|
191
|
+
}
|
|
192
|
+
const GROUP_OF = new Map(Object.entries(CONFIG_GROUPS).flatMap(([group, keys]) => keys.map((key) => [key, group])));
|
|
193
|
+
const ENVIRONMENT_KEY = /^\$(?:development|production|test|ci)$/;
|
|
194
|
+
const GROUPED_KEYS = /* @__PURE__ */ new Set([
|
|
195
|
+
"database",
|
|
196
|
+
"auth",
|
|
197
|
+
"api",
|
|
198
|
+
"tooling",
|
|
199
|
+
"records",
|
|
200
|
+
"adapters"
|
|
201
|
+
]);
|
|
202
|
+
/**
|
|
203
|
+
* Whether a top-level `tables` is the generator overrides of a config written
|
|
204
|
+
* before 0.15 rather than the app tables of a grouped one.
|
|
205
|
+
*/
|
|
206
|
+
function hasFlatTables(keys) {
|
|
207
|
+
return keys.includes("appTables") || !keys.some((key) => GROUPED_KEYS.has(key));
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Moves `claims.tenant`, the flat `organization` and the 0.14 tenant plugin's
|
|
211
|
+
* column to `auth.organization`.
|
|
212
|
+
*/
|
|
213
|
+
function withOrganization(out, groups) {
|
|
214
|
+
const auth = groups["auth"];
|
|
215
|
+
const claims = auth?.["claims"];
|
|
216
|
+
if (auth !== void 0 && isObject(claims) && "tenant" in claims) {
|
|
217
|
+
const { tenant, ...rest } = claims;
|
|
218
|
+
auth["organization"] = { claim: tenant };
|
|
219
|
+
if (Object.keys(rest).length === 0) delete auth["claims"];
|
|
220
|
+
else auth["claims"] = rest;
|
|
221
|
+
}
|
|
222
|
+
const flat = out["organization"];
|
|
223
|
+
if (isObject(flat)) {
|
|
224
|
+
delete out["organization"];
|
|
225
|
+
const next = { ...groups["auth"] };
|
|
226
|
+
next["organization"] = {
|
|
227
|
+
...objectOr(next["organization"]),
|
|
228
|
+
...flat
|
|
229
|
+
};
|
|
230
|
+
groups["auth"] = next;
|
|
231
|
+
}
|
|
232
|
+
const plugins = out["plugins"];
|
|
233
|
+
if (!isObject(plugins) || !isObject(plugins["tenant"])) return;
|
|
234
|
+
const column = plugins["tenant"]["column"];
|
|
235
|
+
out["plugins"] = {
|
|
236
|
+
...plugins,
|
|
237
|
+
tenant: true
|
|
238
|
+
};
|
|
239
|
+
if (typeof column === "string") {
|
|
240
|
+
const next = { ...groups["auth"] };
|
|
241
|
+
next["organization"] = {
|
|
242
|
+
...objectOr(next["organization"]),
|
|
243
|
+
column
|
|
244
|
+
};
|
|
245
|
+
groups["auth"] = next;
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
/** A flat config in the grouped shape: the inverse of `flattenConfig`. */
|
|
249
|
+
function groupConfig(config) {
|
|
250
|
+
return groupEntries(config);
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Any object with the keys of a config written before 0.15, grouped: the keys
|
|
254
|
+
* it doesn't know stay where they are. `$env` blocks are grouped the same way.
|
|
255
|
+
* The 0.15 codemod uses it for JSON configs.
|
|
256
|
+
*/
|
|
257
|
+
function groupEntries(config) {
|
|
258
|
+
const out = {};
|
|
259
|
+
const groups = {};
|
|
260
|
+
const flatTables = hasFlatTables(Object.keys(config));
|
|
261
|
+
for (const [key, value] of Object.entries(config)) {
|
|
262
|
+
const group = key === "tables" && !flatTables ? void 0 : GROUP_OF.get(key);
|
|
263
|
+
const renamed = RENAMED_CONFIG_KEYS.find(([, flat]) => flat === key);
|
|
264
|
+
if (key === "gen" && isObject(value)) groups["gen"] = {
|
|
265
|
+
...value,
|
|
266
|
+
...groups["gen"]
|
|
267
|
+
};
|
|
268
|
+
else if (key in CONFIG_GROUPS && isObject(value)) groups[key] = {
|
|
269
|
+
...value,
|
|
270
|
+
...groups[key]
|
|
271
|
+
};
|
|
272
|
+
else if (group !== void 0) groups[group] = {
|
|
273
|
+
...groups[group],
|
|
274
|
+
[key]: value
|
|
275
|
+
};
|
|
276
|
+
else if (renamed !== void 0) out[renamed[0]] = value;
|
|
277
|
+
else if (key === "$env" && isObject(value)) out[key] = Object.fromEntries(Object.entries(value).map(([name, block]) => [name, isObject(block) ? groupEntries(block) : block]));
|
|
278
|
+
else if (ENVIRONMENT_KEY.test(key) && isObject(value)) out[key] = groupEntries(value);
|
|
279
|
+
else out[key] = value;
|
|
280
|
+
}
|
|
281
|
+
const database = groups["database"];
|
|
282
|
+
if (database !== void 0 && isObject(database["sql"])) database["sql"] = renameKeys(database["sql"], OWNER, true);
|
|
283
|
+
withOrganization(out, groups);
|
|
284
|
+
if (out["tables"] !== void 0 && flatTables) out["tables"] = eachEntry(out["tables"], OWNER, true);
|
|
285
|
+
if (out["blocks"] !== void 0) out["blocks"] = eachEntry(out["blocks"], RENAMED_BLOCK_KEYS, true);
|
|
286
|
+
return {
|
|
287
|
+
...out,
|
|
288
|
+
...groups
|
|
289
|
+
};
|
|
290
|
+
}
|
|
291
|
+
//#endregion
|
|
292
|
+
//#region src/preset/fields.ts
|
|
293
|
+
/** Types a field's values against `PresetConventions`. */
|
|
294
|
+
function field(definition) {
|
|
295
|
+
return definition;
|
|
296
|
+
}
|
|
297
|
+
function integrationLabel(name) {
|
|
298
|
+
const { title, description } = INTEGRATION_INFO[name];
|
|
299
|
+
return {
|
|
300
|
+
label: title,
|
|
301
|
+
hint: description
|
|
302
|
+
};
|
|
303
|
+
}
|
|
304
|
+
/** The tenant names a preset can set (`blocks.memberships.names.organization`). */
|
|
305
|
+
const PRESET_TENANT_NAMES = [
|
|
306
|
+
"organization",
|
|
307
|
+
"workspace",
|
|
308
|
+
"team"
|
|
309
|
+
];
|
|
310
|
+
/** The frameworks `/create` and `init --preset` set up glue for. */
|
|
311
|
+
const PRESET_FRAMEWORKS = [
|
|
312
|
+
"next",
|
|
313
|
+
"vite",
|
|
314
|
+
"tanstack-start",
|
|
315
|
+
"expo",
|
|
316
|
+
"sveltekit",
|
|
317
|
+
"nuxt",
|
|
318
|
+
"hono",
|
|
319
|
+
"astro",
|
|
320
|
+
"react-router"
|
|
321
|
+
];
|
|
322
|
+
/** The convention fields, in the order `/create` and `init` show them. */
|
|
323
|
+
const CONVENTION_FIELDS = [
|
|
324
|
+
field({
|
|
325
|
+
key: "framework",
|
|
326
|
+
label: "Framework",
|
|
327
|
+
values: PRESET_FRAMEWORKS,
|
|
328
|
+
labels: {
|
|
329
|
+
next: { label: "Next.js" },
|
|
330
|
+
vite: { label: "Vite" },
|
|
331
|
+
"tanstack-start": { label: "TanStack Start" },
|
|
332
|
+
expo: { label: "Expo" },
|
|
333
|
+
sveltekit: { label: "SvelteKit" },
|
|
334
|
+
nuxt: { label: "Nuxt" },
|
|
335
|
+
hono: { label: "Hono" },
|
|
336
|
+
astro: { label: "Astro" },
|
|
337
|
+
"react-router": { label: "React Router" }
|
|
338
|
+
},
|
|
339
|
+
default: "next"
|
|
340
|
+
}),
|
|
341
|
+
field({
|
|
342
|
+
key: "platforms",
|
|
343
|
+
label: "Platforms",
|
|
344
|
+
values: [
|
|
345
|
+
"web",
|
|
346
|
+
"native",
|
|
347
|
+
"both"
|
|
348
|
+
],
|
|
349
|
+
labels: {
|
|
350
|
+
web: { label: "Web" },
|
|
351
|
+
native: { label: "Native" },
|
|
352
|
+
both: { label: "Web and native" }
|
|
353
|
+
},
|
|
354
|
+
default: "web"
|
|
355
|
+
}),
|
|
356
|
+
field({
|
|
357
|
+
key: "casing",
|
|
358
|
+
label: "Casing",
|
|
359
|
+
values: ["snake", "camel"],
|
|
360
|
+
labels: {
|
|
361
|
+
snake: {
|
|
362
|
+
label: "snake_case",
|
|
363
|
+
hint: "Rows keep the database names."
|
|
364
|
+
},
|
|
365
|
+
camel: {
|
|
366
|
+
label: "camelCase",
|
|
367
|
+
hint: "Rows are renamed inside the PostgREST query."
|
|
368
|
+
}
|
|
369
|
+
},
|
|
370
|
+
default: "snake"
|
|
371
|
+
}),
|
|
372
|
+
field({
|
|
373
|
+
key: "idType",
|
|
374
|
+
label: "ID type",
|
|
375
|
+
values: [
|
|
376
|
+
"uuid",
|
|
377
|
+
"text",
|
|
378
|
+
"bigint",
|
|
379
|
+
"integer"
|
|
380
|
+
],
|
|
381
|
+
labels: {
|
|
382
|
+
uuid: { label: "UUID" },
|
|
383
|
+
text: { label: "Text" },
|
|
384
|
+
bigint: { label: "Bigint" },
|
|
385
|
+
integer: { label: "Integer" }
|
|
386
|
+
},
|
|
387
|
+
default: "uuid"
|
|
388
|
+
}),
|
|
389
|
+
field({
|
|
390
|
+
key: "scope",
|
|
391
|
+
label: "Row ownership",
|
|
392
|
+
values: [
|
|
393
|
+
"tenant",
|
|
394
|
+
"user",
|
|
395
|
+
"none"
|
|
396
|
+
],
|
|
397
|
+
labels: {
|
|
398
|
+
tenant: {
|
|
399
|
+
label: "Per tenant",
|
|
400
|
+
hint: "Rows belong to a tenant, checked through access."
|
|
401
|
+
},
|
|
402
|
+
user: {
|
|
403
|
+
label: "Per user",
|
|
404
|
+
hint: "Rows belong to the signed-in user."
|
|
405
|
+
},
|
|
406
|
+
none: {
|
|
407
|
+
label: "Shared",
|
|
408
|
+
hint: "One shared space for every signed-in user."
|
|
409
|
+
}
|
|
410
|
+
},
|
|
411
|
+
default: "tenant"
|
|
412
|
+
}),
|
|
413
|
+
field({
|
|
414
|
+
key: "tenantName",
|
|
415
|
+
label: "Tenant name",
|
|
416
|
+
values: PRESET_TENANT_NAMES,
|
|
417
|
+
labels: {
|
|
418
|
+
organization: { label: "Organization" },
|
|
419
|
+
workspace: { label: "Workspace" },
|
|
420
|
+
team: { label: "Team" }
|
|
421
|
+
},
|
|
422
|
+
default: "organization"
|
|
423
|
+
}),
|
|
424
|
+
field({
|
|
425
|
+
key: "access",
|
|
426
|
+
label: "Auth and permissions",
|
|
427
|
+
values: [
|
|
428
|
+
"roles",
|
|
429
|
+
"catalog",
|
|
430
|
+
"provider",
|
|
431
|
+
"custom"
|
|
432
|
+
],
|
|
433
|
+
labels: {
|
|
434
|
+
roles: {
|
|
435
|
+
label: "Built-in roles",
|
|
436
|
+
hint: "Owner, admin, member and viewer, mapped to permission keys in the config."
|
|
437
|
+
},
|
|
438
|
+
catalog: {
|
|
439
|
+
label: "Permissions tables",
|
|
440
|
+
hint: "Role, permission and override tables in the database."
|
|
441
|
+
},
|
|
442
|
+
provider: {
|
|
443
|
+
label: "Your own provider",
|
|
444
|
+
hint: "Any library that implements AuthorizationProvider."
|
|
445
|
+
},
|
|
446
|
+
custom: {
|
|
447
|
+
label: "Custom SQL",
|
|
448
|
+
hint: "Your own SQL expressions."
|
|
449
|
+
}
|
|
450
|
+
},
|
|
451
|
+
default: "roles"
|
|
452
|
+
}),
|
|
453
|
+
field({
|
|
454
|
+
key: "api",
|
|
455
|
+
label: "API schema",
|
|
456
|
+
values: ["none", "api"],
|
|
457
|
+
labels: {
|
|
458
|
+
none: {
|
|
459
|
+
label: "Module schema only",
|
|
460
|
+
hint: "The Data API reaches no module tables."
|
|
461
|
+
},
|
|
462
|
+
api: {
|
|
463
|
+
label: "Data API schema (api)",
|
|
464
|
+
hint: "Security invoker wrappers in an api schema, so the Data API reaches them without exposing the module schema."
|
|
465
|
+
}
|
|
466
|
+
},
|
|
467
|
+
default: "none"
|
|
468
|
+
}),
|
|
469
|
+
field({
|
|
470
|
+
key: "integrations",
|
|
471
|
+
label: "Integrations",
|
|
472
|
+
values: [
|
|
473
|
+
"next",
|
|
474
|
+
"hono",
|
|
475
|
+
"orpc",
|
|
476
|
+
"edge",
|
|
477
|
+
"expo",
|
|
478
|
+
"mcp",
|
|
479
|
+
"client",
|
|
480
|
+
"react"
|
|
481
|
+
],
|
|
482
|
+
labels: {
|
|
483
|
+
next: integrationLabel("next"),
|
|
484
|
+
hono: integrationLabel("hono"),
|
|
485
|
+
orpc: integrationLabel("orpc"),
|
|
486
|
+
edge: integrationLabel("edge"),
|
|
487
|
+
expo: integrationLabel("expo"),
|
|
488
|
+
mcp: integrationLabel("mcp"),
|
|
489
|
+
client: integrationLabel("client"),
|
|
490
|
+
react: integrationLabel("react")
|
|
491
|
+
},
|
|
492
|
+
default: [],
|
|
493
|
+
multi: true
|
|
494
|
+
})
|
|
495
|
+
];
|
|
496
|
+
/** A convention field by key, with its values and labels typed. */
|
|
497
|
+
function presetField(key) {
|
|
498
|
+
const found = CONVENTION_FIELDS.find((each) => each.key === key);
|
|
499
|
+
if (found === void 0) throw new Error(`Unknown preset field ${key}`);
|
|
500
|
+
return found;
|
|
501
|
+
}
|
|
502
|
+
/** A field value's label, or the value itself when it has none. */
|
|
503
|
+
function presetValueLabel(key, value) {
|
|
504
|
+
const labels = presetField(key).labels;
|
|
505
|
+
return (Object.hasOwn(labels, value) ? labels[value] : void 0) ?? { label: value };
|
|
506
|
+
}
|
|
507
|
+
/**
|
|
508
|
+
* The integrations `init --preset` adds for a framework whatever the selection
|
|
509
|
+
* says: the framework's own one, when it has one, then what that one requires.
|
|
510
|
+
*/
|
|
511
|
+
function integrationsForFramework(framework) {
|
|
512
|
+
const own = INTEGRATION_NAMES.find((name) => name === framework);
|
|
513
|
+
return own === void 0 ? [] : [own, ...INTEGRATION_INFO[own].requires];
|
|
514
|
+
}
|
|
515
|
+
/** Every convention at its default. */
|
|
516
|
+
const DEFAULT_CONVENTIONS = {
|
|
517
|
+
framework: "next",
|
|
518
|
+
platforms: "web",
|
|
519
|
+
casing: "snake",
|
|
520
|
+
idType: "uuid",
|
|
521
|
+
scope: "tenant",
|
|
522
|
+
tenantName: "organization",
|
|
523
|
+
access: "roles",
|
|
524
|
+
api: "none",
|
|
525
|
+
integrations: []
|
|
526
|
+
};
|
|
527
|
+
//#endregion
|
|
528
|
+
//#region src/preset/presets.ts
|
|
529
|
+
/** The preset groups in display order, with their headings. */
|
|
530
|
+
const PRESET_GROUPS = {
|
|
531
|
+
starters: "Starters",
|
|
532
|
+
products: "Products",
|
|
533
|
+
verticals: "Verticals",
|
|
534
|
+
ai: "AI",
|
|
535
|
+
platforms: "Platforms",
|
|
536
|
+
everything: "Everything"
|
|
537
|
+
};
|
|
538
|
+
/** Tasks named for support work: tickets grouped under issues. */
|
|
539
|
+
const TICKETS = { tasks: { names: {
|
|
540
|
+
work_item: "ticket",
|
|
541
|
+
project: "issue"
|
|
542
|
+
} } };
|
|
543
|
+
/** Attachments served by public URL, for media such as images on a site. */
|
|
544
|
+
const PUBLIC_MEDIA = { attachments: { options: {
|
|
545
|
+
publicBuckets: ["attachments"],
|
|
546
|
+
requireScan: false
|
|
547
|
+
} } };
|
|
548
|
+
const SAAS = [
|
|
549
|
+
"organizations",
|
|
550
|
+
"invitations",
|
|
551
|
+
"teams",
|
|
552
|
+
"profiles",
|
|
553
|
+
"billing",
|
|
554
|
+
"entitlements",
|
|
555
|
+
"notifications",
|
|
556
|
+
"audit",
|
|
557
|
+
"api-keys",
|
|
558
|
+
"settings",
|
|
559
|
+
"onboarding",
|
|
560
|
+
"outbox"
|
|
561
|
+
];
|
|
562
|
+
/** The named presets, for `defineConfig({ preset })` and `/create`. */
|
|
563
|
+
const PRESETS = {
|
|
564
|
+
minimal: {
|
|
565
|
+
name: "minimal",
|
|
566
|
+
title: "Minimal",
|
|
567
|
+
description: "User profiles, for an app without tenants yet.",
|
|
568
|
+
group: "starters",
|
|
569
|
+
blocks: ["profiles"]
|
|
570
|
+
},
|
|
571
|
+
saas: {
|
|
572
|
+
name: "saas",
|
|
573
|
+
title: "SaaS",
|
|
574
|
+
description: "Organizations with invitations and teams, billing and entitlements, notifications, the audit log, API keys, settings and onboarding.",
|
|
575
|
+
group: "starters",
|
|
576
|
+
blocks: SAAS
|
|
577
|
+
},
|
|
578
|
+
consumer: {
|
|
579
|
+
name: "consumer",
|
|
580
|
+
title: "Consumer app",
|
|
581
|
+
description: "Data owned by each user, with profiles, linked identities, MFA, sessions, notifications and push.",
|
|
582
|
+
group: "starters",
|
|
583
|
+
blocks: [
|
|
584
|
+
"profiles",
|
|
585
|
+
"identities",
|
|
586
|
+
"mfa",
|
|
587
|
+
"sessions",
|
|
588
|
+
"notifications",
|
|
589
|
+
"push"
|
|
590
|
+
],
|
|
591
|
+
conventions: { scope: "user" }
|
|
592
|
+
},
|
|
593
|
+
crm: {
|
|
594
|
+
name: "crm",
|
|
595
|
+
title: "CRM",
|
|
596
|
+
description: "SaaS plus parties, pipelines, deals, quotes, sales targets and engagements, with synced mailboxes, email sequences, segments, assignment queues, enrichment, forecasts and lead scoring, a job queue for the sequence timers, tags, comments, an activity feed, custom fields, saved views and search.",
|
|
597
|
+
group: "products",
|
|
598
|
+
blocks: [
|
|
599
|
+
...SAAS,
|
|
600
|
+
"contacts",
|
|
601
|
+
"pipelines",
|
|
602
|
+
"deals",
|
|
603
|
+
"quotes",
|
|
604
|
+
"goals",
|
|
605
|
+
"activities",
|
|
606
|
+
"tags",
|
|
607
|
+
"comments",
|
|
608
|
+
"timeline",
|
|
609
|
+
"custom-fields",
|
|
610
|
+
"saved-views",
|
|
611
|
+
"search",
|
|
612
|
+
"mail-sync",
|
|
613
|
+
"sequences",
|
|
614
|
+
"segments",
|
|
615
|
+
"assignment",
|
|
616
|
+
"enrichment",
|
|
617
|
+
"forecasts",
|
|
618
|
+
"lead-scoring",
|
|
619
|
+
"queue"
|
|
620
|
+
]
|
|
621
|
+
},
|
|
622
|
+
projects: {
|
|
623
|
+
name: "projects",
|
|
624
|
+
title: "Projects",
|
|
625
|
+
description: "SaaS plus tags, comments, an activity feed, attachments, a state machine, ranked ordering, reminders and time tracking.",
|
|
626
|
+
group: "products",
|
|
627
|
+
blocks: [
|
|
628
|
+
...SAAS,
|
|
629
|
+
"tags",
|
|
630
|
+
"comments",
|
|
631
|
+
"timeline",
|
|
632
|
+
"attachments",
|
|
633
|
+
"state-machine",
|
|
634
|
+
"rank",
|
|
635
|
+
"reminders",
|
|
636
|
+
"time-tracking"
|
|
637
|
+
]
|
|
638
|
+
},
|
|
639
|
+
helpdesk: {
|
|
640
|
+
name: "helpdesk",
|
|
641
|
+
title: "Help desk",
|
|
642
|
+
description: "SaaS plus a shared inbox whose new conversations open work items with SLAs, default automations, a job queue, comments, an activity feed, attachments, tags, saved views, a knowledge base and search.",
|
|
643
|
+
group: "products",
|
|
644
|
+
blocks: [
|
|
645
|
+
...SAAS,
|
|
646
|
+
"inbox",
|
|
647
|
+
"tasks",
|
|
648
|
+
"sla",
|
|
649
|
+
"comments",
|
|
650
|
+
"timeline",
|
|
651
|
+
"attachments",
|
|
652
|
+
"tags",
|
|
653
|
+
"saved-views",
|
|
654
|
+
"knowledge",
|
|
655
|
+
"search",
|
|
656
|
+
"automations",
|
|
657
|
+
"queue"
|
|
658
|
+
],
|
|
659
|
+
instances: TICKETS
|
|
660
|
+
},
|
|
661
|
+
chat: {
|
|
662
|
+
name: "chat",
|
|
663
|
+
title: "Team chat",
|
|
664
|
+
description: "SaaS plus channels, direct messages, threads, mentions, reactions and files, kept live over Realtime.",
|
|
665
|
+
group: "products",
|
|
666
|
+
blocks: [
|
|
667
|
+
...SAAS,
|
|
668
|
+
"messaging",
|
|
669
|
+
"channels",
|
|
670
|
+
"reactions",
|
|
671
|
+
"attachments"
|
|
672
|
+
]
|
|
673
|
+
},
|
|
674
|
+
commerce: {
|
|
675
|
+
name: "commerce",
|
|
676
|
+
title: "Commerce",
|
|
677
|
+
description: "SaaS plus a product catalog, inventory, orders and promotions.",
|
|
678
|
+
group: "products",
|
|
679
|
+
blocks: [
|
|
680
|
+
...SAAS,
|
|
681
|
+
"catalog",
|
|
682
|
+
"inventory",
|
|
683
|
+
"orders",
|
|
684
|
+
"promotions"
|
|
685
|
+
]
|
|
686
|
+
},
|
|
687
|
+
cms: {
|
|
688
|
+
name: "cms",
|
|
689
|
+
title: "CMS",
|
|
690
|
+
description: "SaaS plus pages and posts with locales and scheduled publishing, versions, publish approvals, public media, tags, comments, search and a job queue for the publish timer.",
|
|
691
|
+
group: "products",
|
|
692
|
+
blocks: [
|
|
693
|
+
...SAAS,
|
|
694
|
+
"content",
|
|
695
|
+
"versions",
|
|
696
|
+
"approvals",
|
|
697
|
+
"attachments",
|
|
698
|
+
"tags",
|
|
699
|
+
"comments",
|
|
700
|
+
"search",
|
|
701
|
+
"queue"
|
|
702
|
+
],
|
|
703
|
+
instances: {
|
|
704
|
+
...PUBLIC_MEDIA,
|
|
705
|
+
content: { options: { requireApproval: true } }
|
|
706
|
+
}
|
|
707
|
+
},
|
|
708
|
+
erp: {
|
|
709
|
+
name: "erp",
|
|
710
|
+
title: "ERP",
|
|
711
|
+
description: "SaaS plus parties, a product catalog, stock by location, quotes priced from the catalog that become orders when accepted, orders that invoice when paid, employees with time and leave, expenses and saved views.",
|
|
712
|
+
group: "products",
|
|
713
|
+
blocks: [
|
|
714
|
+
...SAAS,
|
|
715
|
+
"contacts",
|
|
716
|
+
"catalog",
|
|
717
|
+
"inventory",
|
|
718
|
+
"assets",
|
|
719
|
+
"quotes",
|
|
720
|
+
"orders",
|
|
721
|
+
"invoices",
|
|
722
|
+
"numbering",
|
|
723
|
+
"employees",
|
|
724
|
+
"time-tracking",
|
|
725
|
+
"leave",
|
|
726
|
+
"expenses",
|
|
727
|
+
"saved-views",
|
|
728
|
+
"automations"
|
|
729
|
+
],
|
|
730
|
+
instances: { automations: { options: { enable: ["quotes.quote_to_order"] } } }
|
|
731
|
+
},
|
|
732
|
+
pim: {
|
|
733
|
+
name: "pim",
|
|
734
|
+
title: "Product information",
|
|
735
|
+
description: "SaaS plus a product catalog with sales channels, translations and public product media, custom fields, imports, bulk edits, tags, saved views and search.",
|
|
736
|
+
group: "products",
|
|
737
|
+
blocks: [
|
|
738
|
+
...SAAS,
|
|
739
|
+
"catalog",
|
|
740
|
+
"attachments",
|
|
741
|
+
"custom-fields",
|
|
742
|
+
"imports",
|
|
743
|
+
"bulk",
|
|
744
|
+
"tags",
|
|
745
|
+
"saved-views",
|
|
746
|
+
"search"
|
|
747
|
+
],
|
|
748
|
+
instances: PUBLIC_MEDIA
|
|
749
|
+
},
|
|
750
|
+
marketplace: {
|
|
751
|
+
name: "marketplace",
|
|
752
|
+
title: "Marketplace",
|
|
753
|
+
description: "SaaS plus parties, a product catalog, orders, invoices, reactions and share links.",
|
|
754
|
+
group: "products",
|
|
755
|
+
blocks: [
|
|
756
|
+
...SAAS,
|
|
757
|
+
"contacts",
|
|
758
|
+
"catalog",
|
|
759
|
+
"orders",
|
|
760
|
+
"invoices",
|
|
761
|
+
"reactions",
|
|
762
|
+
"share-links"
|
|
763
|
+
]
|
|
764
|
+
},
|
|
765
|
+
scheduling: {
|
|
766
|
+
name: "scheduling",
|
|
767
|
+
title: "Scheduling",
|
|
768
|
+
description: "SaaS plus calendars, bookings and reminders, for a clinic, a studio or a salon.",
|
|
769
|
+
group: "products",
|
|
770
|
+
blocks: [
|
|
771
|
+
...SAAS,
|
|
772
|
+
"calendar",
|
|
773
|
+
"bookings",
|
|
774
|
+
"reminders"
|
|
775
|
+
]
|
|
776
|
+
},
|
|
777
|
+
people: {
|
|
778
|
+
name: "people",
|
|
779
|
+
title: "HR and people",
|
|
780
|
+
description: "SaaS plus employees, hiring that preboards each hired candidate, time tracking, approvals, calendars and documents.",
|
|
781
|
+
group: "products",
|
|
782
|
+
blocks: [
|
|
783
|
+
...SAAS,
|
|
784
|
+
"employees",
|
|
785
|
+
"hiring",
|
|
786
|
+
"time-tracking",
|
|
787
|
+
"approvals",
|
|
788
|
+
"calendar",
|
|
789
|
+
"documents",
|
|
790
|
+
"automations"
|
|
791
|
+
]
|
|
792
|
+
},
|
|
793
|
+
drive: {
|
|
794
|
+
name: "drive",
|
|
795
|
+
title: "Cloud drive",
|
|
796
|
+
description: "SaaS plus a drive with attachments, share links, versions, trash and search.",
|
|
797
|
+
group: "products",
|
|
798
|
+
blocks: [
|
|
799
|
+
...SAAS,
|
|
800
|
+
"drive",
|
|
801
|
+
"attachments",
|
|
802
|
+
"share-links",
|
|
803
|
+
"versions",
|
|
804
|
+
"trash",
|
|
805
|
+
"search"
|
|
806
|
+
]
|
|
807
|
+
},
|
|
808
|
+
docs: {
|
|
809
|
+
name: "docs",
|
|
810
|
+
title: "Docs and wiki",
|
|
811
|
+
description: "SaaS plus documents with versions, comments, reactions, templates, search and share links.",
|
|
812
|
+
group: "products",
|
|
813
|
+
blocks: [
|
|
814
|
+
...SAAS,
|
|
815
|
+
"documents",
|
|
816
|
+
"versions",
|
|
817
|
+
"comments",
|
|
818
|
+
"timeline",
|
|
819
|
+
"reactions",
|
|
820
|
+
"templates",
|
|
821
|
+
"search",
|
|
822
|
+
"share-links"
|
|
823
|
+
]
|
|
824
|
+
},
|
|
825
|
+
invoicing: {
|
|
826
|
+
name: "invoicing",
|
|
827
|
+
title: "Invoicing",
|
|
828
|
+
description: "SaaS plus parties, quotes, invoices and number sequences for their numbers.",
|
|
829
|
+
group: "products",
|
|
830
|
+
blocks: [
|
|
831
|
+
...SAAS,
|
|
832
|
+
"contacts",
|
|
833
|
+
"quotes",
|
|
834
|
+
"invoices",
|
|
835
|
+
"numbering"
|
|
836
|
+
]
|
|
837
|
+
},
|
|
838
|
+
forms: {
|
|
839
|
+
name: "forms",
|
|
840
|
+
title: "Forms and surveys",
|
|
841
|
+
description: "SaaS plus forms, templates and imports.",
|
|
842
|
+
group: "products",
|
|
843
|
+
blocks: [
|
|
844
|
+
...SAAS,
|
|
845
|
+
"forms",
|
|
846
|
+
"templates",
|
|
847
|
+
"imports"
|
|
848
|
+
]
|
|
849
|
+
},
|
|
850
|
+
property: {
|
|
851
|
+
name: "property",
|
|
852
|
+
title: "Property management",
|
|
853
|
+
description: "SaaS plus units in assets, leases with rent and deposits on the ledger and maintenance requests, tenants as parties with a guest portal, comments and attachments.",
|
|
854
|
+
group: "verticals",
|
|
855
|
+
blocks: [
|
|
856
|
+
...SAAS,
|
|
857
|
+
"assets",
|
|
858
|
+
"leases",
|
|
859
|
+
"ledger",
|
|
860
|
+
"contacts",
|
|
861
|
+
"guests",
|
|
862
|
+
"comments",
|
|
863
|
+
"attachments",
|
|
864
|
+
"reminders"
|
|
865
|
+
],
|
|
866
|
+
instances: { maintenance: {
|
|
867
|
+
block: "tasks",
|
|
868
|
+
names: { work_item: "maintenance_request" },
|
|
869
|
+
tables: {
|
|
870
|
+
projects: null,
|
|
871
|
+
iterations: null
|
|
872
|
+
},
|
|
873
|
+
options: { prefix: "MR-" }
|
|
874
|
+
} }
|
|
875
|
+
},
|
|
876
|
+
"field-service": {
|
|
877
|
+
name: "field-service",
|
|
878
|
+
title: "Field service",
|
|
879
|
+
description: "SaaS plus a dispatch board of work orders at customer assets, parts from inventory, quotes to invoices, checklists as forms and a signature on completion.",
|
|
880
|
+
group: "verticals",
|
|
881
|
+
blocks: [
|
|
882
|
+
...SAAS,
|
|
883
|
+
"contacts",
|
|
884
|
+
"dispatch",
|
|
885
|
+
"assets",
|
|
886
|
+
"inventory",
|
|
887
|
+
"quotes",
|
|
888
|
+
"invoices",
|
|
889
|
+
"forms",
|
|
890
|
+
"signatures",
|
|
891
|
+
"attachments"
|
|
892
|
+
]
|
|
893
|
+
},
|
|
894
|
+
clinic: {
|
|
895
|
+
name: "clinic",
|
|
896
|
+
title: "Clinic and therapy",
|
|
897
|
+
description: "SaaS plus appointments, intake forms, note templates, consent signatures, field encryption for sensitive values, a client portal and reminders.",
|
|
898
|
+
group: "verticals",
|
|
899
|
+
blocks: [
|
|
900
|
+
...SAAS,
|
|
901
|
+
"calendar",
|
|
902
|
+
"bookings",
|
|
903
|
+
"forms",
|
|
904
|
+
"templates",
|
|
905
|
+
"signatures",
|
|
906
|
+
"custom-fields",
|
|
907
|
+
"field-encryption",
|
|
908
|
+
"guests",
|
|
909
|
+
"reminders"
|
|
910
|
+
]
|
|
911
|
+
},
|
|
912
|
+
lms: {
|
|
913
|
+
name: "lms",
|
|
914
|
+
title: "Courses and learning",
|
|
915
|
+
description: "SaaS plus courses with lessons, quizzes graded by forms and certificates, enrollments with progress, comments and attachments.",
|
|
916
|
+
group: "verticals",
|
|
917
|
+
blocks: [
|
|
918
|
+
...SAAS,
|
|
919
|
+
"courses",
|
|
920
|
+
"enrollments",
|
|
921
|
+
"forms",
|
|
922
|
+
"comments",
|
|
923
|
+
"attachments"
|
|
924
|
+
]
|
|
925
|
+
},
|
|
926
|
+
events: {
|
|
927
|
+
name: "events",
|
|
928
|
+
title: "Events and ticketing",
|
|
929
|
+
description: "SaaS plus tickets in a catalog, orders, bookings for capacity, QR passes signed with signing keys and checked in, a waitlist and reminders.",
|
|
930
|
+
group: "verticals",
|
|
931
|
+
blocks: [
|
|
932
|
+
...SAAS,
|
|
933
|
+
"catalog",
|
|
934
|
+
"orders",
|
|
935
|
+
"bookings",
|
|
936
|
+
"passes",
|
|
937
|
+
"signing-keys",
|
|
938
|
+
"waitlist",
|
|
939
|
+
"reminders"
|
|
940
|
+
]
|
|
941
|
+
},
|
|
942
|
+
legal: {
|
|
943
|
+
name: "legal",
|
|
944
|
+
title: "Legal practice",
|
|
945
|
+
description: "SaaS plus clients as parties, time tracking billed from a rate card into invoices, a trust ledger, documents with versions and signatures.",
|
|
946
|
+
group: "verticals",
|
|
947
|
+
blocks: [
|
|
948
|
+
...SAAS,
|
|
949
|
+
"contacts",
|
|
950
|
+
"time-tracking",
|
|
951
|
+
"billable-time",
|
|
952
|
+
"invoices",
|
|
953
|
+
"ledger",
|
|
954
|
+
"documents",
|
|
955
|
+
"versions",
|
|
956
|
+
"signatures"
|
|
957
|
+
]
|
|
958
|
+
},
|
|
959
|
+
spend: {
|
|
960
|
+
name: "spend",
|
|
961
|
+
title: "Expenses and spend",
|
|
962
|
+
description: "SaaS plus expenses with receipts and policies, approvals, reimbursements on the ledger and receipt files for AI extraction.",
|
|
963
|
+
group: "verticals",
|
|
964
|
+
blocks: [
|
|
965
|
+
...SAAS,
|
|
966
|
+
"expenses",
|
|
967
|
+
"approvals",
|
|
968
|
+
"attachments",
|
|
969
|
+
"ai-files"
|
|
970
|
+
]
|
|
971
|
+
},
|
|
972
|
+
contracts: {
|
|
973
|
+
name: "contracts",
|
|
974
|
+
title: "Contracts",
|
|
975
|
+
description: "SaaS plus a contract lifecycle with renewals and obligations, counterparties as parties, signatures on a frozen version and reminders.",
|
|
976
|
+
group: "verticals",
|
|
977
|
+
blocks: [
|
|
978
|
+
...SAAS,
|
|
979
|
+
"contracts",
|
|
980
|
+
"contacts",
|
|
981
|
+
"signatures",
|
|
982
|
+
"versions",
|
|
983
|
+
"reminders"
|
|
984
|
+
]
|
|
985
|
+
},
|
|
986
|
+
"customer-success": {
|
|
987
|
+
name: "customer-success",
|
|
988
|
+
title: "Customer success",
|
|
989
|
+
description: "SaaS plus accounts as parties, health scores from rules and metrics, NPS forms, playbooks as enrollments and engagements.",
|
|
990
|
+
group: "verticals",
|
|
991
|
+
blocks: [
|
|
992
|
+
...SAAS,
|
|
993
|
+
"contacts",
|
|
994
|
+
"activities",
|
|
995
|
+
"scores",
|
|
996
|
+
"metrics",
|
|
997
|
+
"automations",
|
|
998
|
+
"forms",
|
|
999
|
+
"enrollments",
|
|
1000
|
+
"reminders"
|
|
1001
|
+
]
|
|
1002
|
+
},
|
|
1003
|
+
logistics: {
|
|
1004
|
+
name: "logistics",
|
|
1005
|
+
title: "Logistics and fleet",
|
|
1006
|
+
description: "SaaS plus shippers as parties, orders, shipments with carrier labels and tracking, and depots and vehicles in assets.",
|
|
1007
|
+
group: "verticals",
|
|
1008
|
+
blocks: [
|
|
1009
|
+
...SAAS,
|
|
1010
|
+
"contacts",
|
|
1011
|
+
"orders",
|
|
1012
|
+
"shipments",
|
|
1013
|
+
"assets"
|
|
1014
|
+
]
|
|
1015
|
+
},
|
|
1016
|
+
pos: {
|
|
1017
|
+
name: "pos",
|
|
1018
|
+
title: "Restaurants and POS",
|
|
1019
|
+
description: "SaaS plus a menu in the catalog, orders with a kitchen board, inventory, table bookings, promotions and loyalty points on the ledger.",
|
|
1020
|
+
group: "verticals",
|
|
1021
|
+
blocks: [
|
|
1022
|
+
...SAAS,
|
|
1023
|
+
"catalog",
|
|
1024
|
+
"orders",
|
|
1025
|
+
"inventory",
|
|
1026
|
+
"bookings",
|
|
1027
|
+
"promotions",
|
|
1028
|
+
"ledger"
|
|
1029
|
+
]
|
|
1030
|
+
},
|
|
1031
|
+
fitness: {
|
|
1032
|
+
name: "fitness",
|
|
1033
|
+
title: "Fitness and memberships",
|
|
1034
|
+
description: "SaaS plus class schedules, bookings, and passes with check-in and class credits, signed with signing keys, plus reminders.",
|
|
1035
|
+
group: "verticals",
|
|
1036
|
+
blocks: [
|
|
1037
|
+
...SAAS,
|
|
1038
|
+
"calendar",
|
|
1039
|
+
"bookings",
|
|
1040
|
+
"passes",
|
|
1041
|
+
"signing-keys",
|
|
1042
|
+
"reminders"
|
|
1043
|
+
]
|
|
1044
|
+
},
|
|
1045
|
+
nonprofit: {
|
|
1046
|
+
name: "nonprofit",
|
|
1047
|
+
title: "Nonprofit fundraising",
|
|
1048
|
+
description: "SaaS plus donors as parties, gifts and pledges on the ledger, numbered tax receipts, campaign targets and saved views for segments.",
|
|
1049
|
+
group: "verticals",
|
|
1050
|
+
blocks: [
|
|
1051
|
+
...SAAS,
|
|
1052
|
+
"contacts",
|
|
1053
|
+
"donations",
|
|
1054
|
+
"ledger",
|
|
1055
|
+
"numbering",
|
|
1056
|
+
"goals",
|
|
1057
|
+
"saved-views"
|
|
1058
|
+
]
|
|
1059
|
+
},
|
|
1060
|
+
itsm: {
|
|
1061
|
+
name: "itsm",
|
|
1062
|
+
title: "IT service management",
|
|
1063
|
+
description: "SaaS plus tickets as work items with SLAs, approvals for changes, an asset registry, relations, incidents with a status page, a knowledge base and a job queue for the SLA timers.",
|
|
1064
|
+
group: "verticals",
|
|
1065
|
+
blocks: [
|
|
1066
|
+
...SAAS,
|
|
1067
|
+
"tasks",
|
|
1068
|
+
"sla",
|
|
1069
|
+
"approvals",
|
|
1070
|
+
"assets",
|
|
1071
|
+
"relations",
|
|
1072
|
+
"incidents",
|
|
1073
|
+
"knowledge",
|
|
1074
|
+
"queue"
|
|
1075
|
+
],
|
|
1076
|
+
instances: TICKETS
|
|
1077
|
+
},
|
|
1078
|
+
compliance: {
|
|
1079
|
+
name: "compliance",
|
|
1080
|
+
title: "Compliance",
|
|
1081
|
+
description: "SaaS plus frameworks and controls with evidence, recurring evidence tasks and versioned policies that members acknowledge, with evidence files.",
|
|
1082
|
+
group: "verticals",
|
|
1083
|
+
blocks: [
|
|
1084
|
+
...SAAS,
|
|
1085
|
+
"compliance",
|
|
1086
|
+
"attachments"
|
|
1087
|
+
]
|
|
1088
|
+
},
|
|
1089
|
+
construction: {
|
|
1090
|
+
name: "construction",
|
|
1091
|
+
title: "Construction",
|
|
1092
|
+
description: "SaaS plus punch lists and RFIs as work items, sites in assets, daily logs as forms, drawings with versions and comments, and approvals for submittals.",
|
|
1093
|
+
group: "verticals",
|
|
1094
|
+
blocks: [
|
|
1095
|
+
...SAAS,
|
|
1096
|
+
"tasks",
|
|
1097
|
+
"assets",
|
|
1098
|
+
"forms",
|
|
1099
|
+
"attachments",
|
|
1100
|
+
"versions",
|
|
1101
|
+
"comments",
|
|
1102
|
+
"approvals"
|
|
1103
|
+
]
|
|
1104
|
+
},
|
|
1105
|
+
claims: {
|
|
1106
|
+
name: "claims",
|
|
1107
|
+
title: "Insurance and claims",
|
|
1108
|
+
description: "SaaS plus claimants as parties, a claim state machine, approvals, attachments for evidence, SLAs on a job queue and comments.",
|
|
1109
|
+
group: "verticals",
|
|
1110
|
+
blocks: [
|
|
1111
|
+
...SAAS,
|
|
1112
|
+
"contacts",
|
|
1113
|
+
"state-machine",
|
|
1114
|
+
"approvals",
|
|
1115
|
+
"attachments",
|
|
1116
|
+
"sla",
|
|
1117
|
+
"comments",
|
|
1118
|
+
"queue"
|
|
1119
|
+
]
|
|
1120
|
+
},
|
|
1121
|
+
community: {
|
|
1122
|
+
name: "community",
|
|
1123
|
+
title: "Community",
|
|
1124
|
+
description: "SaaS plus forum boards of posts with votes and replies, chat channels, reactions, moderation with reports and bans, post scores from votes, tags and search.",
|
|
1125
|
+
group: "verticals",
|
|
1126
|
+
blocks: [
|
|
1127
|
+
...SAAS,
|
|
1128
|
+
"posts",
|
|
1129
|
+
"messaging",
|
|
1130
|
+
"channels",
|
|
1131
|
+
"comments",
|
|
1132
|
+
"reactions",
|
|
1133
|
+
"moderation",
|
|
1134
|
+
"scores",
|
|
1135
|
+
"tags",
|
|
1136
|
+
"search"
|
|
1137
|
+
]
|
|
1138
|
+
},
|
|
1139
|
+
feedback: {
|
|
1140
|
+
name: "feedback",
|
|
1141
|
+
title: "Product feedback",
|
|
1142
|
+
description: "SaaS plus feedback boards of voted ideas with roadmap statuses, replies, moderation, ideas linked to the work items that ship them, tags and search.",
|
|
1143
|
+
group: "verticals",
|
|
1144
|
+
blocks: [
|
|
1145
|
+
...SAAS,
|
|
1146
|
+
"posts",
|
|
1147
|
+
"comments",
|
|
1148
|
+
"reactions",
|
|
1149
|
+
"moderation",
|
|
1150
|
+
"tasks",
|
|
1151
|
+
"relations",
|
|
1152
|
+
"tags",
|
|
1153
|
+
"search"
|
|
1154
|
+
]
|
|
1155
|
+
},
|
|
1156
|
+
ai: {
|
|
1157
|
+
name: "ai",
|
|
1158
|
+
title: "AI workspace",
|
|
1159
|
+
description: "SaaS plus AI chat, files, a knowledge base, memory, agents, and background AI tasks and file ingestion on a job queue.",
|
|
1160
|
+
group: "ai",
|
|
1161
|
+
blocks: [
|
|
1162
|
+
...SAAS,
|
|
1163
|
+
"ai-chat",
|
|
1164
|
+
"ai-files",
|
|
1165
|
+
"knowledge",
|
|
1166
|
+
"memory",
|
|
1167
|
+
"agents",
|
|
1168
|
+
"ai-schedules",
|
|
1169
|
+
"queue"
|
|
1170
|
+
]
|
|
1171
|
+
},
|
|
1172
|
+
"ai-chat": {
|
|
1173
|
+
name: "ai-chat",
|
|
1174
|
+
title: "AI chat",
|
|
1175
|
+
description: "SaaS plus AI chat with files, a knowledge base, memory, model providers, usage metering and a job queue for file ingestion.",
|
|
1176
|
+
group: "ai",
|
|
1177
|
+
blocks: [
|
|
1178
|
+
...SAAS,
|
|
1179
|
+
"ai-chat",
|
|
1180
|
+
"ai-files",
|
|
1181
|
+
"knowledge",
|
|
1182
|
+
"memory",
|
|
1183
|
+
"ai-keys",
|
|
1184
|
+
"usage",
|
|
1185
|
+
"queue"
|
|
1186
|
+
]
|
|
1187
|
+
},
|
|
1188
|
+
"ai-agents": {
|
|
1189
|
+
name: "ai-agents",
|
|
1190
|
+
title: "AI agents",
|
|
1191
|
+
description: "SaaS plus agents with background tasks, approvals, connectors, credentials, workflows, metrics and a job queue for the timers.",
|
|
1192
|
+
group: "ai",
|
|
1193
|
+
blocks: [
|
|
1194
|
+
...SAAS,
|
|
1195
|
+
"agents",
|
|
1196
|
+
"ai-schedules",
|
|
1197
|
+
"approvals",
|
|
1198
|
+
"connectors",
|
|
1199
|
+
"credentials",
|
|
1200
|
+
"workflows",
|
|
1201
|
+
"metrics",
|
|
1202
|
+
"queue"
|
|
1203
|
+
]
|
|
1204
|
+
},
|
|
1205
|
+
"developer-api": {
|
|
1206
|
+
name: "developer-api",
|
|
1207
|
+
title: "Developer API",
|
|
1208
|
+
description: "SaaS plus outgoing webhooks, usage metering, service principals and signing keys.",
|
|
1209
|
+
group: "platforms",
|
|
1210
|
+
blocks: [
|
|
1211
|
+
...SAAS,
|
|
1212
|
+
"webhooks-out",
|
|
1213
|
+
"usage",
|
|
1214
|
+
"service-accounts",
|
|
1215
|
+
"signing-keys"
|
|
1216
|
+
]
|
|
1217
|
+
},
|
|
1218
|
+
automation: {
|
|
1219
|
+
name: "automation",
|
|
1220
|
+
title: "Workflow automation",
|
|
1221
|
+
description: "SaaS plus a workflow builder, workflows that automations start, jobs, outgoing webhooks, connectors and credentials.",
|
|
1222
|
+
group: "platforms",
|
|
1223
|
+
blocks: [
|
|
1224
|
+
...SAAS,
|
|
1225
|
+
"workflow-editor",
|
|
1226
|
+
"workflows",
|
|
1227
|
+
"queue",
|
|
1228
|
+
"webhooks-out",
|
|
1229
|
+
"connectors",
|
|
1230
|
+
"credentials",
|
|
1231
|
+
"automations"
|
|
1232
|
+
]
|
|
1233
|
+
},
|
|
1234
|
+
enterprise: {
|
|
1235
|
+
name: "enterprise",
|
|
1236
|
+
title: "Enterprise-ready",
|
|
1237
|
+
description: "SaaS plus SSO, MFA, sessions, access requests, support sessions, data export and deletion, and grants.",
|
|
1238
|
+
group: "platforms",
|
|
1239
|
+
blocks: [
|
|
1240
|
+
...SAAS,
|
|
1241
|
+
"sso",
|
|
1242
|
+
"mfa",
|
|
1243
|
+
"sessions",
|
|
1244
|
+
"access-requests",
|
|
1245
|
+
"impersonation",
|
|
1246
|
+
"data-lifecycle",
|
|
1247
|
+
"grants"
|
|
1248
|
+
]
|
|
1249
|
+
},
|
|
1250
|
+
admin: {
|
|
1251
|
+
name: "admin",
|
|
1252
|
+
title: "Internal admin",
|
|
1253
|
+
description: "SaaS plus feature flags, metrics, approvals, saved views and bulk actions.",
|
|
1254
|
+
group: "platforms",
|
|
1255
|
+
blocks: [
|
|
1256
|
+
...SAAS,
|
|
1257
|
+
"flags",
|
|
1258
|
+
"metrics",
|
|
1259
|
+
"approvals",
|
|
1260
|
+
"saved-views",
|
|
1261
|
+
"bulk"
|
|
1262
|
+
]
|
|
1263
|
+
},
|
|
1264
|
+
everything: {
|
|
1265
|
+
name: "everything",
|
|
1266
|
+
title: "Everything",
|
|
1267
|
+
description: "Every block, for demos and tests.",
|
|
1268
|
+
group: "everything",
|
|
1269
|
+
blocks: PRESET_CATALOG.blocks.map((block) => block.name)
|
|
1270
|
+
}
|
|
1271
|
+
};
|
|
1272
|
+
/** The named presets in display order, grouped by `group`. */
|
|
1273
|
+
const PRESET_NAMES = [
|
|
1274
|
+
"minimal",
|
|
1275
|
+
"saas",
|
|
1276
|
+
"consumer",
|
|
1277
|
+
"crm",
|
|
1278
|
+
"projects",
|
|
1279
|
+
"helpdesk",
|
|
1280
|
+
"chat",
|
|
1281
|
+
"commerce",
|
|
1282
|
+
"cms",
|
|
1283
|
+
"erp",
|
|
1284
|
+
"pim",
|
|
1285
|
+
"marketplace",
|
|
1286
|
+
"scheduling",
|
|
1287
|
+
"people",
|
|
1288
|
+
"drive",
|
|
1289
|
+
"docs",
|
|
1290
|
+
"invoicing",
|
|
1291
|
+
"forms",
|
|
1292
|
+
"property",
|
|
1293
|
+
"field-service",
|
|
1294
|
+
"clinic",
|
|
1295
|
+
"lms",
|
|
1296
|
+
"events",
|
|
1297
|
+
"legal",
|
|
1298
|
+
"spend",
|
|
1299
|
+
"contracts",
|
|
1300
|
+
"customer-success",
|
|
1301
|
+
"logistics",
|
|
1302
|
+
"pos",
|
|
1303
|
+
"fitness",
|
|
1304
|
+
"nonprofit",
|
|
1305
|
+
"itsm",
|
|
1306
|
+
"compliance",
|
|
1307
|
+
"construction",
|
|
1308
|
+
"claims",
|
|
1309
|
+
"community",
|
|
1310
|
+
"feedback",
|
|
1311
|
+
"ai",
|
|
1312
|
+
"ai-chat",
|
|
1313
|
+
"ai-agents",
|
|
1314
|
+
"developer-api",
|
|
1315
|
+
"automation",
|
|
1316
|
+
"enterprise",
|
|
1317
|
+
"admin",
|
|
1318
|
+
"everything"
|
|
1319
|
+
];
|
|
1320
|
+
function isPresetName(value) {
|
|
1321
|
+
return PRESET_NAMES.some((name) => name === value);
|
|
1322
|
+
}
|
|
1323
|
+
/** The named preset as a `Preset`: the default conventions, then its own. */
|
|
1324
|
+
function namedPreset(name) {
|
|
1325
|
+
const { blocks, conventions, instances } = PRESETS[name];
|
|
1326
|
+
return {
|
|
1327
|
+
...DEFAULT_CONVENTIONS,
|
|
1328
|
+
...conventions,
|
|
1329
|
+
blocks,
|
|
1330
|
+
...instances === void 0 ? {} : { instances }
|
|
1331
|
+
};
|
|
1332
|
+
}
|
|
1333
|
+
/** The preset `/create` and `init` start from. */
|
|
1334
|
+
const DEFAULT_PRESET_NAME = "saas";
|
|
1335
|
+
/** The default preset as a `Preset`, so a new design can start from it. */
|
|
1336
|
+
function defaultPreset() {
|
|
1337
|
+
return namedPreset(DEFAULT_PRESET_NAME);
|
|
1338
|
+
}
|
|
1339
|
+
//#endregion
|
|
1340
|
+
//#region src/preset/resolve.ts
|
|
1341
|
+
/** "a", "a and b", "a, b and c". */
|
|
1342
|
+
function listNames(names) {
|
|
1343
|
+
if (names.length <= 1) return names.join("");
|
|
1344
|
+
return `${names.slice(0, -1).join(", ")} and ${names.at(-1) ?? ""}`;
|
|
1345
|
+
}
|
|
1346
|
+
const TENANT_PROVIDERS = /* @__PURE__ */ new Set(["memberships", "permissions"]);
|
|
1347
|
+
function requiresOf(block, preset) {
|
|
1348
|
+
const requires = block.requiresByAccess?.[preset.access] ?? block.requires;
|
|
1349
|
+
return preset.scope === "tenant" || TENANT_PROVIDERS.has(block.name) ? requires : requires.filter((name) => !TENANT_PROVIDERS.has(name));
|
|
1350
|
+
}
|
|
1351
|
+
/** `name` and everything it requires, dependencies first. */
|
|
1352
|
+
function closureOf(name, preset, byName) {
|
|
1353
|
+
const out = [];
|
|
1354
|
+
const visit = (each) => {
|
|
1355
|
+
const block = byName.get(each);
|
|
1356
|
+
if (block === void 0 || out.includes(each)) return;
|
|
1357
|
+
out.push(each);
|
|
1358
|
+
for (const dependency of requiresOf(block, preset)) visit(dependency);
|
|
1359
|
+
};
|
|
1360
|
+
visit(name);
|
|
1361
|
+
return out;
|
|
1362
|
+
}
|
|
1363
|
+
/**
|
|
1364
|
+
* Why `name` can't install with the preset's conventions, or undefined.
|
|
1365
|
+
* `/create` disables a block with this reason before it is selected.
|
|
1366
|
+
*/
|
|
1367
|
+
function presetBlockConflict(preset, name, catalog = PRESET_CATALOG) {
|
|
1368
|
+
const byName = new Map(catalog.blocks.map((block) => [block.name, block]));
|
|
1369
|
+
if (!byName.has(name)) return `"${name}" is not a block`;
|
|
1370
|
+
if (preset.scope === "tenant") return;
|
|
1371
|
+
if (TENANT_PROVIDERS.has(name)) return `scope "${preset.scope}" has no tenants`;
|
|
1372
|
+
const tenantOnly = closureOf(name, preset, byName).filter((each) => !(byName.get(each)?.scopes ?? [preset.scope]).includes(preset.scope));
|
|
1373
|
+
if (tenantOnly.length === 0) return;
|
|
1374
|
+
return tenantOnly[0] === name ? `it needs tenants, and scope "${preset.scope}" has none` : `it needs ${listNames(tenantOnly)}, which need tenants, and scope "${preset.scope}" has none`;
|
|
1375
|
+
}
|
|
1376
|
+
function fieldConflicts(preset) {
|
|
1377
|
+
const conflicts = [];
|
|
1378
|
+
if (preset.framework === "expo" && preset.platforms === "web") conflicts.push({
|
|
1379
|
+
field: "platforms",
|
|
1380
|
+
reason: "Expo builds a native app: choose native or both"
|
|
1381
|
+
});
|
|
1382
|
+
if (preset.platforms === "native" && preset.framework !== "expo") conflicts.push({
|
|
1383
|
+
field: "framework",
|
|
1384
|
+
reason: `a native-only app runs on Expo, not ${preset.framework}`
|
|
1385
|
+
});
|
|
1386
|
+
return conflicts;
|
|
1387
|
+
}
|
|
1388
|
+
/**
|
|
1389
|
+
* The full block set for a preset: the selected blocks and what they require, a
|
|
1390
|
+
* reason per block, the soft integrations active between them, and what can't
|
|
1391
|
+
* install. It reads the generated catalog, never the SQL renderers, so it runs
|
|
1392
|
+
* in the browser.
|
|
1393
|
+
*/
|
|
1394
|
+
function resolvePreset(preset, catalog = PRESET_CATALOG) {
|
|
1395
|
+
const byName = new Map(catalog.blocks.map((block) => [block.name, block]));
|
|
1396
|
+
const conflicts = fieldConflicts(preset);
|
|
1397
|
+
const instances = Object.entries(preset.instances ?? {});
|
|
1398
|
+
const selected = [.../* @__PURE__ */ new Set([...preset.blocks, ...instances.flatMap(([key, instance]) => (instance.block ?? key) === key ? [key] : [])])];
|
|
1399
|
+
const installed = /* @__PURE__ */ new Set();
|
|
1400
|
+
const requiredBy = /* @__PURE__ */ new Map();
|
|
1401
|
+
for (const name of selected) {
|
|
1402
|
+
const problem = presetBlockConflict(preset, name, catalog);
|
|
1403
|
+
if (problem !== void 0) {
|
|
1404
|
+
conflicts.push({
|
|
1405
|
+
block: name,
|
|
1406
|
+
reason: problem
|
|
1407
|
+
});
|
|
1408
|
+
continue;
|
|
1409
|
+
}
|
|
1410
|
+
for (const each of closureOf(name, preset, byName)) installed.add(each);
|
|
1411
|
+
}
|
|
1412
|
+
for (const [key, instance] of instances) {
|
|
1413
|
+
const block = instance.block ?? key;
|
|
1414
|
+
if (selected.includes(block)) continue;
|
|
1415
|
+
const problem = presetBlockConflict(preset, block, catalog);
|
|
1416
|
+
if (problem !== void 0) {
|
|
1417
|
+
conflicts.push({
|
|
1418
|
+
block: key,
|
|
1419
|
+
reason: problem
|
|
1420
|
+
});
|
|
1421
|
+
continue;
|
|
1422
|
+
}
|
|
1423
|
+
for (const each of closureOf(block, preset, byName).slice(1)) installed.add(each);
|
|
1424
|
+
}
|
|
1425
|
+
for (const block of catalog.blocks) {
|
|
1426
|
+
if (!installed.has(block.name)) continue;
|
|
1427
|
+
if (!block.tenantNameClashes?.includes(preset.tenantName)) continue;
|
|
1428
|
+
conflicts.push({
|
|
1429
|
+
block: block.name,
|
|
1430
|
+
field: "tenantName",
|
|
1431
|
+
reason: `tenant name "${preset.tenantName}" renames the tenant tables and columns to names the ${block.name} block already uses`
|
|
1432
|
+
});
|
|
1433
|
+
}
|
|
1434
|
+
const members = catalog.blocks.filter((block) => installed.has(block.name));
|
|
1435
|
+
for (const block of members) for (const dependency of requiresOf(block, preset)) requiredBy.set(dependency, [...requiredBy.get(dependency) ?? [], block.name]);
|
|
1436
|
+
const blocks = members.map((block) => {
|
|
1437
|
+
const by = requiredBy.get(block.name) ?? [];
|
|
1438
|
+
const isSelected = selected.includes(block.name);
|
|
1439
|
+
return {
|
|
1440
|
+
name: block.name,
|
|
1441
|
+
title: block.title,
|
|
1442
|
+
category: block.category,
|
|
1443
|
+
selected: isSelected,
|
|
1444
|
+
requiredBy: by,
|
|
1445
|
+
reason: isSelected ? "selected" : `required by ${listNames(by)}`
|
|
1446
|
+
};
|
|
1447
|
+
});
|
|
1448
|
+
const integrations = members.flatMap((block) => block.integrates.filter((to) => to !== block.name && installed.has(to)).map((to) => ({
|
|
1449
|
+
from: block.name,
|
|
1450
|
+
to
|
|
1451
|
+
})));
|
|
1452
|
+
const manifestNames = new Set(members.map((block) => block.manifest));
|
|
1453
|
+
const manifests = catalog.manifests.filter((manifest) => manifestNames.has(manifest.name));
|
|
1454
|
+
for (const manifest of manifests) for (const [port, need] of Object.entries(manifest.consumes)) {
|
|
1455
|
+
if (need !== "required") continue;
|
|
1456
|
+
if (manifests.some((each) => each.provides.some((p) => p === port))) continue;
|
|
1457
|
+
conflicts.push({
|
|
1458
|
+
block: manifest.name,
|
|
1459
|
+
reason: `it needs a ${port} port, and no selected block provides one`
|
|
1460
|
+
});
|
|
1461
|
+
}
|
|
1462
|
+
return {
|
|
1463
|
+
preset,
|
|
1464
|
+
blocks,
|
|
1465
|
+
integrations,
|
|
1466
|
+
conflicts,
|
|
1467
|
+
manifests
|
|
1468
|
+
};
|
|
1469
|
+
}
|
|
1470
|
+
//#endregion
|
|
1471
|
+
//#region src/preset/spec.ts
|
|
1472
|
+
const same = (left, right) => typeof left === "string" || typeof right === "string" ? left === right : left.length === right.length && left.every((each) => right.includes(each));
|
|
1473
|
+
/** Whether two presets select the same blocks with the same conventions. */
|
|
1474
|
+
function samePreset(left, right) {
|
|
1475
|
+
return CONVENTION_FIELDS.every((field) => same(left[field.key], right[field.key])) && same(left.blocks, right.blocks) && canonical(left.instances ?? {}) === canonical(right.instances ?? {});
|
|
1476
|
+
}
|
|
1477
|
+
/** `value` as JSON with object keys sorted, so key order doesn't matter. */
|
|
1478
|
+
function canonical(value) {
|
|
1479
|
+
return JSON.stringify(value, (_key, each) => isRecord(each) ? Object.fromEntries(Object.entries(each).toSorted(([a], [b]) => a < b ? -1 : 1)) : each);
|
|
1480
|
+
}
|
|
1481
|
+
/**
|
|
1482
|
+
* The preset as the config or a design writes it: its name when it is a named
|
|
1483
|
+
* preset as it ships, otherwise the conventions that differ from the defaults
|
|
1484
|
+
* and the selected blocks.
|
|
1485
|
+
*/
|
|
1486
|
+
function presetSpec(preset) {
|
|
1487
|
+
const named = PRESET_NAMES.find((name) => samePreset(namedPreset(name), preset));
|
|
1488
|
+
if (named !== void 0) return named;
|
|
1489
|
+
return {
|
|
1490
|
+
...Object.fromEntries(CONVENTION_FIELDS.flatMap((field) => same(preset[field.key], DEFAULT_CONVENTIONS[field.key]) ? [] : [[field.key, preset[field.key]]])),
|
|
1491
|
+
...preset.blocks.length === 0 ? {} : { blocks: [...preset.blocks] },
|
|
1492
|
+
...preset.instances === void 0 || Object.keys(preset.instances).length === 0 ? {} : { instances: preset.instances }
|
|
1493
|
+
};
|
|
1494
|
+
}
|
|
1495
|
+
const isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
1496
|
+
const isStringList = (value) => Array.isArray(value) && value.every((each) => typeof each === "string");
|
|
1497
|
+
/**
|
|
1498
|
+
* Reads a preset object (`PresetSpec`) into a `Preset`, with the conventions it
|
|
1499
|
+
* leaves out at their defaults. Throws a TypeError naming the first key or
|
|
1500
|
+
* value that isn't one.
|
|
1501
|
+
*/
|
|
1502
|
+
function presetFromSpec(value) {
|
|
1503
|
+
if (!isRecord(value)) throw new TypeError(`preset: expected a preset name (${PRESET_NAMES.join(", ")}) or an object of conventions and blocks.`);
|
|
1504
|
+
const conventions = {};
|
|
1505
|
+
for (const [key, given] of Object.entries(value)) {
|
|
1506
|
+
if (key === "blocks") {
|
|
1507
|
+
if (!isStringList(given)) throw new TypeError("preset.blocks: expected a list of block names.");
|
|
1508
|
+
continue;
|
|
1509
|
+
}
|
|
1510
|
+
if (key === "instances") {
|
|
1511
|
+
instanceProblem(given);
|
|
1512
|
+
continue;
|
|
1513
|
+
}
|
|
1514
|
+
const field = CONVENTION_FIELDS.find((each) => each.key === key);
|
|
1515
|
+
if (field === void 0) throw new TypeError(`preset.${key}: not a preset key. A preset object takes blocks, instances, ${CONVENTION_FIELDS.map((each) => each.key).join(", ")}.`);
|
|
1516
|
+
const list = field.multi === true ? given : [given];
|
|
1517
|
+
if (!isStringList(list) || field.multi !== true && typeof given !== "string" || !list.every((each) => field.values.includes(each))) throw new TypeError(`preset.${key}: expected ${field.multi === true ? "a list of" : "one of"} ${field.values.join(", ")}.`);
|
|
1518
|
+
conventions[key] = typeof given === "string" ? given : list;
|
|
1519
|
+
}
|
|
1520
|
+
const blocks = value["blocks"];
|
|
1521
|
+
const instances = value["instances"];
|
|
1522
|
+
return {
|
|
1523
|
+
...DEFAULT_CONVENTIONS,
|
|
1524
|
+
...conventions,
|
|
1525
|
+
blocks: isStringList(blocks) ? blocks : [],
|
|
1526
|
+
...isRecord(instances) ? { instances } : {}
|
|
1527
|
+
};
|
|
1528
|
+
}
|
|
1529
|
+
const INSTANCE_KEYS = [
|
|
1530
|
+
"block",
|
|
1531
|
+
"names",
|
|
1532
|
+
"options",
|
|
1533
|
+
"tables",
|
|
1534
|
+
"on",
|
|
1535
|
+
"uses"
|
|
1536
|
+
];
|
|
1537
|
+
const isStringRecord = (value) => isRecord(value) && Object.values(value).every((each) => typeof each === "string");
|
|
1538
|
+
function validInstanceValue(key, given) {
|
|
1539
|
+
if (key === "block") return typeof given === "string";
|
|
1540
|
+
if (key === "names" || key === "uses") return isStringRecord(given);
|
|
1541
|
+
if (key === "on") return isStringList(given) || isRecord(given);
|
|
1542
|
+
if (key === "tables") return isRecord(given) && Object.values(given).every((each) => each === null || typeof each === "string");
|
|
1543
|
+
return isRecord(given);
|
|
1544
|
+
}
|
|
1545
|
+
/** Throws a TypeError naming the first `instances` entry that isn't one. */
|
|
1546
|
+
function instanceProblem(value) {
|
|
1547
|
+
if (!isRecord(value)) throw new TypeError("preset.instances: expected an object of blocks entries.");
|
|
1548
|
+
for (const [name, entry] of Object.entries(value)) {
|
|
1549
|
+
if (!isRecord(entry)) throw new TypeError(`preset.instances.${name}: expected an object.`);
|
|
1550
|
+
for (const [key, given] of Object.entries(entry)) {
|
|
1551
|
+
if (!INSTANCE_KEYS.includes(key)) throw new TypeError(`preset.instances.${name}.${key}: not an instance key. An instance takes ${INSTANCE_KEYS.join(", ")}.`);
|
|
1552
|
+
if (!validInstanceValue(key, given)) throw new TypeError(`preset.instances.${name}.${key}: expected ${key === "block" ? "a block name" : "an object"}.`);
|
|
1553
|
+
}
|
|
1554
|
+
}
|
|
1555
|
+
}
|
|
1556
|
+
/** A preset name or object as a `Preset`. */
|
|
1557
|
+
function presetOfSpec(value) {
|
|
1558
|
+
if (typeof value === "string") {
|
|
1559
|
+
if (isPresetName(value)) return namedPreset(value);
|
|
1560
|
+
throw new TypeError(/^[1-9A-Z][0-9A-Za-z]{4,}$/.test(value) ? `preset: "${value.slice(0, 20)}" is a preset code, which 0.15 no longer reads. Run \`better-supabase codemod 0.15\` to turn it into a preset object.` : `preset: "${value}" is not a preset name. Use one of ${PRESET_NAMES.join(", ")}, or an object of conventions and blocks.`);
|
|
1561
|
+
}
|
|
1562
|
+
return presetFromSpec(value);
|
|
1563
|
+
}
|
|
1564
|
+
//#endregion
|
|
1565
|
+
//#region src/preset/config.ts
|
|
1566
|
+
/**
|
|
1567
|
+
* Reads a named preset, a `/create?preset=<name>` URL or a preset object
|
|
1568
|
+
* (`PresetSpec`) into a `Preset`. A preset code from 0.14 throws, naming the
|
|
1569
|
+
* codemod that converts it.
|
|
1570
|
+
*/
|
|
1571
|
+
function presetOf(input) {
|
|
1572
|
+
if (typeof input !== "string") return presetOfSpec(input);
|
|
1573
|
+
const value = /[?&]preset=([^&#]+)/.exec(input)?.[1] ?? input;
|
|
1574
|
+
return isPresetName(value) ? namedPreset(value) : presetOfSpec(value);
|
|
1575
|
+
}
|
|
1576
|
+
/**
|
|
1577
|
+
* `blocks.permissions` for the conventions: the model and id type that differ
|
|
1578
|
+
* from the defaults.
|
|
1579
|
+
*/
|
|
1580
|
+
function accessEntry(conventions) {
|
|
1581
|
+
return {
|
|
1582
|
+
...conventions.access === "roles" ? {} : { model: conventions.access },
|
|
1583
|
+
...conventions.idType === "uuid" ? {} : { idType: conventions.idType }
|
|
1584
|
+
};
|
|
1585
|
+
}
|
|
1586
|
+
/**
|
|
1587
|
+
* `blocks.memberships` for the conventions: the tenant's name when it isn't
|
|
1588
|
+
* `organization`.
|
|
1589
|
+
*/
|
|
1590
|
+
function tenantEntry(conventions) {
|
|
1591
|
+
return conventions.tenantName === DEFAULT_TENANT.singular ? {} : { entities: { organization: conventions.tenantName } };
|
|
1592
|
+
}
|
|
1593
|
+
/** The `blocks` entry each block gets from the preset's conventions. */
|
|
1594
|
+
function conventionEntry(name, preset) {
|
|
1595
|
+
if (name === "permissions") return accessEntry(preset);
|
|
1596
|
+
return name === "memberships" ? tenantEntry(preset) : {};
|
|
1597
|
+
}
|
|
1598
|
+
/** `sql` for the conventions, or undefined when they are the defaults. */
|
|
1599
|
+
function sqlOf(conventions) {
|
|
1600
|
+
const sql = {
|
|
1601
|
+
...conventions.api === "none" ? {} : { api: conventions.api },
|
|
1602
|
+
...conventions.scope === "tenant" ? {} : { scope: conventions.scope }
|
|
1603
|
+
};
|
|
1604
|
+
return Object.keys(sql).length === 0 ? void 0 : sql;
|
|
1605
|
+
}
|
|
1606
|
+
/**
|
|
1607
|
+
* The config keys conventions set without a preset: `casing`, `sql`,
|
|
1608
|
+
* `blocks.permissions` when the access model or id type differ from the
|
|
1609
|
+
* defaults, and `blocks.memberships` when the tenant has another name.
|
|
1610
|
+
*/
|
|
1611
|
+
function conventionConfig(conventions) {
|
|
1612
|
+
const sql = sqlOf(conventions);
|
|
1613
|
+
const access = accessEntry(conventions);
|
|
1614
|
+
const tenant = tenantEntry(conventions);
|
|
1615
|
+
const blocks = {
|
|
1616
|
+
...Object.keys(access).length === 0 ? {} : { permissions: access },
|
|
1617
|
+
...Object.keys(tenant).length === 0 ? {} : { memberships: tenant }
|
|
1618
|
+
};
|
|
1619
|
+
return {
|
|
1620
|
+
casing: conventions.casing,
|
|
1621
|
+
...sql === void 0 ? {} : { sql },
|
|
1622
|
+
...Object.keys(blocks).length === 0 ? {} : { blocks }
|
|
1623
|
+
};
|
|
1624
|
+
}
|
|
1625
|
+
/**
|
|
1626
|
+
* The config keys a resolved preset sets: its blocks and the conventions that
|
|
1627
|
+
* differ from the defaults.
|
|
1628
|
+
*/
|
|
1629
|
+
function presetConfig(resolved) {
|
|
1630
|
+
const { preset } = resolved;
|
|
1631
|
+
const sql = sqlOf(preset);
|
|
1632
|
+
return {
|
|
1633
|
+
...preset.casing === "snake" ? {} : { casing: preset.casing },
|
|
1634
|
+
...sql === void 0 ? {} : { sql },
|
|
1635
|
+
...preset.integrations.length === 0 ? {} : { integrations: preset.integrations },
|
|
1636
|
+
blocks: asBlocksConfig(instanceEntries(resolved))
|
|
1637
|
+
};
|
|
1638
|
+
}
|
|
1639
|
+
/** A preset instance as a flat `blocks` entry: `names` is `entities` there. */
|
|
1640
|
+
function flatInstance(instance) {
|
|
1641
|
+
const { names, ...rest } = instance;
|
|
1642
|
+
return names === void 0 ? rest : {
|
|
1643
|
+
...rest,
|
|
1644
|
+
entities: names
|
|
1645
|
+
};
|
|
1646
|
+
}
|
|
1647
|
+
/**
|
|
1648
|
+
* The `blocks` entries of a resolved preset: each block with its convention
|
|
1649
|
+
* entry, then the preset's instances over them.
|
|
1650
|
+
*/
|
|
1651
|
+
function instanceEntries(resolved) {
|
|
1652
|
+
const { preset } = resolved;
|
|
1653
|
+
const blocks = Object.fromEntries(resolved.blocks.map((block) => [block.name, conventionEntry(block.name, preset)]));
|
|
1654
|
+
for (const [key, instance] of Object.entries(preset.instances ?? {})) {
|
|
1655
|
+
if (resolved.conflicts.some((conflict) => conflict.block === key)) continue;
|
|
1656
|
+
blocks[key] = {
|
|
1657
|
+
...blocks[key],
|
|
1658
|
+
...flatInstance(instance)
|
|
1659
|
+
};
|
|
1660
|
+
}
|
|
1661
|
+
return blocks;
|
|
1662
|
+
}
|
|
1663
|
+
function isBlockList(blocks) {
|
|
1664
|
+
return Array.isArray(blocks);
|
|
1665
|
+
}
|
|
1666
|
+
function blocksOf(blocks) {
|
|
1667
|
+
if (blocks === void 0) return {};
|
|
1668
|
+
if (!isBlockList(blocks)) return blocks;
|
|
1669
|
+
return Object.fromEntries(blocks.map((name) => [name, {}]));
|
|
1670
|
+
}
|
|
1671
|
+
function expandPreset(config) {
|
|
1672
|
+
if (config.preset === void 0) return config;
|
|
1673
|
+
return groupConfig(expandFlatPreset(flattenConfig(config)));
|
|
1674
|
+
}
|
|
1675
|
+
/** `expandPreset` on the flat shape `resolveConfig` reads. */
|
|
1676
|
+
function expandFlatPreset(config) {
|
|
1677
|
+
if (config.preset === void 0) return config;
|
|
1678
|
+
const resolved = resolvePreset(presetOf(config.preset));
|
|
1679
|
+
if (resolved.conflicts.length > 0) throw new TypeError(`preset: ${listNames(resolved.conflicts.map((conflict) => `${conflict.block ?? conflict.field ?? ""} (${conflict.reason})`))} can't install.`);
|
|
1680
|
+
const base = presetConfig(resolved);
|
|
1681
|
+
const own = blocksOf(config.blocks);
|
|
1682
|
+
const blocks = Object.fromEntries(Object.entries(base.blocks));
|
|
1683
|
+
for (const [name, entry] of Object.entries(own)) blocks[name] = {
|
|
1684
|
+
...blocks[name],
|
|
1685
|
+
...entry
|
|
1686
|
+
};
|
|
1687
|
+
return {
|
|
1688
|
+
...base,
|
|
1689
|
+
...config,
|
|
1690
|
+
...config.sql === void 0 && base.sql === void 0 ? {} : { sql: {
|
|
1691
|
+
...base.sql,
|
|
1692
|
+
...config.sql
|
|
1693
|
+
} },
|
|
1694
|
+
blocks: asBlocksConfig(blocks)
|
|
1695
|
+
};
|
|
1696
|
+
}
|
|
1697
|
+
//#endregion
|
|
1698
|
+
export { flattenConfig as A, integrationsForFramework as C, RENAMED_BLOCK_KEYS as D, CONFIG_GROUPS as E, INTEGRATION_INFO as F, INTEGRATION_NAMES as I, SKILLS_AGENTS as L, groupEntries as M, hasFlatTables as N, RENAMED_CONFIG_KEYS as O, GEN_TASKS as P, PRESET_TENANT_NAMES as S, presetValueLabel as T, isPresetName as _, presetOf as a, DEFAULT_CONVENTIONS as b, presetSpec as c, resolvePreset as d, DEFAULT_PRESET_NAME as f, defaultPreset as g, PRESET_NAMES as h, presetConfig as i, groupConfig as j, blockEntrySource as k, listNames as l, PRESET_GROUPS as m, expandFlatPreset as n, presetFromSpec as o, PRESETS as p, expandPreset as r, presetOfSpec as s, conventionConfig as t, presetBlockConflict as u, namedPreset as v, presetField as w, PRESET_FRAMEWORKS as x, CONVENTION_FIELDS as y };
|