dzql 0.5.33 → 0.6.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/.env.sample +28 -0
- package/compose.yml +28 -0
- package/dist/client/index.ts +1 -0
- package/dist/client/stores/useMyProfileStore.ts +114 -0
- package/dist/client/stores/useOrgDashboardStore.ts +131 -0
- package/dist/client/stores/useVenueDetailStore.ts +117 -0
- package/dist/client/ws.ts +716 -0
- package/dist/db/migrations/000_core.sql +92 -0
- package/dist/db/migrations/20251229T212912022Z_schema.sql +3020 -0
- package/dist/db/migrations/20251229T212912022Z_subscribables.sql +371 -0
- package/dist/runtime/manifest.json +1562 -0
- package/docs/README.md +293 -36
- package/docs/feature-requests/applyPatch-bug-report.md +85 -0
- package/docs/feature-requests/connection-ready-profile.md +57 -0
- package/docs/feature-requests/hidden-bug-report.md +111 -0
- package/docs/feature-requests/hidden-fields-subscribables.md +34 -0
- package/docs/feature-requests/subscribable-param-key-bug.md +38 -0
- package/docs/feature-requests/todo.md +146 -0
- package/docs/for_ai.md +641 -0
- package/docs/project-setup.md +432 -0
- package/examples/blog.ts +50 -0
- package/examples/invalid.ts +18 -0
- package/examples/venues.js +485 -0
- package/package.json +23 -60
- package/src/cli/codegen/client.ts +99 -0
- package/src/cli/codegen/manifest.ts +95 -0
- package/src/cli/codegen/pinia.ts +174 -0
- package/src/cli/codegen/realtime.ts +58 -0
- package/src/cli/codegen/sql.ts +698 -0
- package/src/cli/codegen/subscribable_sql.ts +547 -0
- package/src/cli/codegen/subscribable_store.ts +184 -0
- package/src/cli/codegen/types.ts +142 -0
- package/src/cli/compiler/analyzer.ts +52 -0
- package/src/cli/compiler/graph_rules.ts +251 -0
- package/src/cli/compiler/ir.ts +233 -0
- package/src/cli/compiler/loader.ts +132 -0
- package/src/cli/compiler/permissions.ts +227 -0
- package/src/cli/index.ts +164 -0
- package/src/client/index.ts +1 -0
- package/src/client/ws.ts +286 -0
- package/src/create/.env.example +8 -0
- package/src/create/README.md +101 -0
- package/src/create/compose.yml +14 -0
- package/src/create/domain.ts +153 -0
- package/src/create/package.json +24 -0
- package/src/create/server.ts +18 -0
- package/src/create/setup.sh +11 -0
- package/src/create/tsconfig.json +15 -0
- package/src/runtime/auth.ts +39 -0
- package/src/runtime/db.ts +33 -0
- package/src/runtime/errors.ts +51 -0
- package/src/runtime/index.ts +98 -0
- package/src/runtime/js_functions.ts +63 -0
- package/src/runtime/manifest_loader.ts +29 -0
- package/src/runtime/namespace.ts +483 -0
- package/src/runtime/server.ts +87 -0
- package/src/runtime/ws.ts +197 -0
- package/src/shared/ir.ts +197 -0
- package/tests/client.test.ts +38 -0
- package/tests/codegen.test.ts +71 -0
- package/tests/compiler.test.ts +45 -0
- package/tests/graph_rules.test.ts +173 -0
- package/tests/integration/db.test.ts +174 -0
- package/tests/integration/e2e.test.ts +65 -0
- package/tests/integration/features.test.ts +922 -0
- package/tests/integration/full_stack.test.ts +262 -0
- package/tests/integration/setup.ts +45 -0
- package/tests/ir.test.ts +32 -0
- package/tests/namespace.test.ts +395 -0
- package/tests/permissions.test.ts +55 -0
- package/tests/pinia.test.ts +48 -0
- package/tests/realtime.test.ts +22 -0
- package/tests/runtime.test.ts +80 -0
- package/tests/subscribable_gen.test.ts +72 -0
- package/tests/subscribable_reactivity.test.ts +258 -0
- package/tests/venues_gen.test.ts +25 -0
- package/tsconfig.json +20 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/README.md +0 -90
- package/bin/cli.js +0 -727
- package/docs/compiler/ADVANCED_FILTERS.md +0 -183
- package/docs/compiler/CODING_STANDARDS.md +0 -415
- package/docs/compiler/COMPARISON.md +0 -673
- package/docs/compiler/QUICKSTART.md +0 -326
- package/docs/compiler/README.md +0 -134
- package/docs/examples/README.md +0 -38
- package/docs/examples/blog.sql +0 -160
- package/docs/examples/venue-detail-simple.sql +0 -8
- package/docs/examples/venue-detail-subscribable.sql +0 -45
- package/docs/for-ai/claude-guide.md +0 -1210
- package/docs/getting-started/quickstart.md +0 -125
- package/docs/getting-started/subscriptions-quick-start.md +0 -203
- package/docs/getting-started/tutorial.md +0 -1104
- package/docs/guides/atomic-updates.md +0 -299
- package/docs/guides/client-stores.md +0 -730
- package/docs/guides/composite-primary-keys.md +0 -158
- package/docs/guides/custom-functions.md +0 -362
- package/docs/guides/drop-semantics.md +0 -554
- package/docs/guides/field-defaults.md +0 -240
- package/docs/guides/interpreter-vs-compiler.md +0 -237
- package/docs/guides/many-to-many.md +0 -929
- package/docs/guides/subscriptions.md +0 -537
- package/docs/reference/api.md +0 -1373
- package/docs/reference/client.md +0 -224
- package/src/client/stores/index.js +0 -8
- package/src/client/stores/useAppStore.js +0 -285
- package/src/client/stores/useWsStore.js +0 -289
- package/src/client/ws.js +0 -762
- package/src/compiler/cli/compile-example.js +0 -33
- package/src/compiler/cli/compile-subscribable.js +0 -43
- package/src/compiler/cli/debug-compile.js +0 -44
- package/src/compiler/cli/debug-parse.js +0 -26
- package/src/compiler/cli/debug-path-parser.js +0 -18
- package/src/compiler/cli/debug-subscribable-parser.js +0 -21
- package/src/compiler/cli/index.js +0 -174
- package/src/compiler/codegen/auth-codegen.js +0 -153
- package/src/compiler/codegen/drop-semantics-codegen.js +0 -553
- package/src/compiler/codegen/graph-rules-codegen.js +0 -450
- package/src/compiler/codegen/notification-codegen.js +0 -232
- package/src/compiler/codegen/operation-codegen.js +0 -1382
- package/src/compiler/codegen/permission-codegen.js +0 -318
- package/src/compiler/codegen/subscribable-codegen.js +0 -827
- package/src/compiler/compiler.js +0 -371
- package/src/compiler/index.js +0 -11
- package/src/compiler/parser/entity-parser.js +0 -440
- package/src/compiler/parser/path-parser.js +0 -290
- package/src/compiler/parser/subscribable-parser.js +0 -244
- package/src/database/dzql-core.sql +0 -161
- package/src/database/migrations/001_schema.sql +0 -60
- package/src/database/migrations/002_functions.sql +0 -890
- package/src/database/migrations/003_operations.sql +0 -1135
- package/src/database/migrations/004_search.sql +0 -581
- package/src/database/migrations/005_entities.sql +0 -730
- package/src/database/migrations/006_auth.sql +0 -94
- package/src/database/migrations/007_events.sql +0 -133
- package/src/database/migrations/008_hello.sql +0 -18
- package/src/database/migrations/008a_meta.sql +0 -172
- package/src/database/migrations/009_subscriptions.sql +0 -240
- package/src/database/migrations/010_atomic_updates.sql +0 -157
- package/src/database/migrations/010_fix_m2m_events.sql +0 -94
- package/src/index.js +0 -40
- package/src/server/api.js +0 -9
- package/src/server/db.js +0 -442
- package/src/server/index.js +0 -317
- package/src/server/logger.js +0 -259
- package/src/server/mcp.js +0 -594
- package/src/server/meta-route.js +0 -251
- package/src/server/namespace.js +0 -292
- package/src/server/subscriptions.js +0 -351
- package/src/server/ws.js +0 -573
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
-- DZQL Core Schema - Version 3.0.0
|
|
2
|
-
-- Basic schema, tables, and meta information
|
|
3
|
-
|
|
4
|
-
-- === Schema Creation ===
|
|
5
|
-
CREATE SCHEMA IF NOT EXISTS dzql;
|
|
6
|
-
|
|
7
|
-
-- === Meta Table ===
|
|
8
|
-
CREATE TABLE IF NOT EXISTS dzql.meta (
|
|
9
|
-
installed_at timestamptz DEFAULT now(),
|
|
10
|
-
version text NOT NULL
|
|
11
|
-
);
|
|
12
|
-
|
|
13
|
-
INSERT INTO dzql.meta (version) VALUES ('3.0.0')
|
|
14
|
-
ON CONFLICT DO NOTHING;
|
|
15
|
-
|
|
16
|
-
-- === Entity Configuration Table ===
|
|
17
|
-
CREATE TABLE IF NOT EXISTS dzql.entities (
|
|
18
|
-
table_name text PRIMARY KEY,
|
|
19
|
-
label_field text NOT NULL, -- field to use for lookup labels
|
|
20
|
-
searchable_fields text[] NOT NULL, -- fields to search in search operations
|
|
21
|
-
fk_includes jsonb DEFAULT '{}', -- foreign keys to dereference in get operations
|
|
22
|
-
soft_delete boolean DEFAULT false, -- use deleted_at instead of hard delete
|
|
23
|
-
temporal_fields jsonb DEFAULT '{}', -- valid_from/valid_to field names for temporal filtering
|
|
24
|
-
notification_paths jsonb DEFAULT '{}', -- paths to determine who gets notified
|
|
25
|
-
permission_paths jsonb DEFAULT '{}', -- paths to determine who has permission for operations
|
|
26
|
-
graph_rules jsonb DEFAULT '{}', -- graph evolution rules for automatic relationship management
|
|
27
|
-
field_defaults jsonb DEFAULT '{}', -- default values to auto-populate on INSERT
|
|
28
|
-
many_to_many jsonb DEFAULT '{}' -- many-to-many relationship configurations
|
|
29
|
-
);
|
|
30
|
-
|
|
31
|
-
-- === Registry (allowlist of callable functions) ===
|
|
32
|
-
CREATE TABLE IF NOT EXISTS dzql.registry (
|
|
33
|
-
fn_regproc regproc PRIMARY KEY,
|
|
34
|
-
description text
|
|
35
|
-
);
|
|
36
|
-
|
|
37
|
-
-- === Event Audit Table ===
|
|
38
|
-
CREATE TABLE IF NOT EXISTS dzql.events (
|
|
39
|
-
event_id bigserial PRIMARY KEY,
|
|
40
|
-
table_name text NOT NULL,
|
|
41
|
-
op text NOT NULL, -- 'insert', 'update', 'delete'
|
|
42
|
-
pk jsonb NOT NULL, -- primary key of affected record
|
|
43
|
-
data jsonb, -- record state after this event (NULL for delete)
|
|
44
|
-
user_id int, -- who made the change
|
|
45
|
-
notify_users int[], -- who should be notified (NULL = everyone)
|
|
46
|
-
at timestamptz DEFAULT now() -- when the change occurred
|
|
47
|
-
);
|
|
48
|
-
|
|
49
|
-
-- Index for efficient event queries
|
|
50
|
-
CREATE INDEX IF NOT EXISTS dzql_events_table_pk_idx ON dzql.events (table_name, pk, at);
|
|
51
|
-
CREATE INDEX IF NOT EXISTS dzql_events_user_idx ON dzql.events (user_id, at);
|
|
52
|
-
CREATE INDEX IF NOT EXISTS dzql_events_event_id_idx ON dzql.events (event_id);
|
|
53
|
-
CREATE INDEX IF NOT EXISTS idx_dzql_events_at ON dzql.events(at);
|
|
54
|
-
|
|
55
|
-
-- === Comments ===
|
|
56
|
-
COMMENT ON SCHEMA dzql IS 'DZQL framework core schema';
|
|
57
|
-
COMMENT ON TABLE dzql.entities IS 'Configuration for entities with automatic CRUD operations';
|
|
58
|
-
COMMENT ON TABLE dzql.registry IS 'Registry of callable PostgreSQL functions';
|
|
59
|
-
COMMENT ON TABLE dzql.events IS 'Audit trail of all entity changes';
|
|
60
|
-
COMMENT ON COLUMN dzql.entities.graph_rules IS 'Graph evolution rules that define how relationships change during operations';
|