Commit bb437ec
Add TUI, Bridge Types, matchers, and Avro/gRPC integration
Interactive TUI (draft):
- tui-react: React-like abstraction with EventRegistry, StateStore, RenderContext
- Screens: Splash, MainMenu, SchemaBrowser, SpecBrowser, Source/Output/Type editors
- Domain Type Builder: 6-step wizard for cross-database composite types
- Form components with mouse support, hover states, click handlers
- Sliding navigation with animations
Bridge Types:
- Domain types unifying data models across multiple database sources
- Primary source with aligned sources for cross-database compatibility
- Code generation for Scala, Java, and Kotlin
- CLI `typr check` command for validation
Matchers (renamed from selectors):
- Negation support with exclude patterns
- Split model (schema properties) vs api (parameters) matchers
- JSON Schema for typr.yaml with IDE validation
Avro/gRPC Integration:
- Wire codegen into `typr generate` command
- Boundaries system (renamed from sources)
- Cats/fs2-kafka framework with IO-based publishers/listeners
- Effect types at output level with computed types
Other:
- Bump tui-scala to 0.0.8
- Regenerate all testers
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>1 parent 7ba83f3 commit bb437ec
844 files changed
Lines changed: 48380 additions & 5416 deletions
File tree
- foundations-jdbc/src/java/dev/typr/foundations
- data
- testers
- avro/scala-cats
- generated-and-checked-in/com/example
- events
- common
- consumer
- producer
- service
- src/scala/com/example/events
- db2
- java/generated-and-checked-in/testdb/bridge
- kotlin/generated-and-checked-in/testdb/bridge
- scala/generated-and-checked-in/testdb/bridge
- duckdb
- java/generated-and-checked-in/testdb
- all_scalar_types_search
- all_scalar_types
- bridge
- customer_orders
- customer_search
- customers
- customtypes
- delete_old_orders
- department_employee_details
- departments
- employee_salary_update
- employees
- insert_order_with_items
- order_details
- order_items_bulk_insert
- order_items
- order_summary_by_customer
- orders
- precisetypes
- precision_types_null
- precision_types
- product_details_with_sales
- product_summary
- products
- update_customer_priority
- userdefined
- kotlin/generated-and-checked-in/testdb
- all_scalar_types_search
- all_scalar_types
- bridge
- customer_orders
- customer_search
- customers
- delete_old_orders
- department_employee_details
- departments
- employee_salary_update
- employees
- insert_order_with_items
- order_details
- order_items
- order_summary_by_customer
- orders
- precisetypes
- precision_types_null
- precision_types
- product_details_with_sales
- product_summary
- products
- update_customer_priority
- userdefined
- scala/generated-and-checked-in/testdb
- bridge
- product_details_with_sales
- product_summary
- grpc/scala-cats
- generated-and-checked-in/com/example/grpc
- src/scala/com/example/grpc
- jsonschema
- mariadb
- java/generated-and-checked-in/testdb
- bridge
- inventory_check
- kotlin/generated-and-checked-in/testdb
- bridge
- inventory_check
- scala/generated-and-checked-in/testdb
- bridge
- inventory_check
- oracle
- java/generated-and-checked-in/oracledb
- bridge
- kotlin/generated-and-checked-in/oracledb
- bridge
- scala-new/generated-and-checked-in/oracledb
- bridge
- scala/generated-and-checked-in/oracledb
- bridge
- pg
- java/generated-and-checked-in/adventureworks
- bridge
- public_
- userdefined
- kotlin/generated-and-checked-in/adventureworks
- bridge
- public
- userdefined
- scala
- anorm
- generated-and-checked-in-2.13/adventureworks
- bridge
- userdefined
- generated-and-checked-in-3/adventureworks
- bridge
- userdefined
- doobie
- generated-and-checked-in-2.13/adventureworks
- bridge
- userdefined
- generated-and-checked-in-3/adventureworks
- bridge
- userdefined
- javatypes/generated-and-checked-in/adventureworks
- bridge
- public
- userdefined
- scalatypes/generated-and-checked-in/adventureworks
- bridge
- public
- userdefined
- zio-jdbc
- generated-and-checked-in-2.13/adventureworks
- bridge
- userdefined
- generated-and-checked-in-3/adventureworks
- bridge
- userdefined
- sqlserver
- java/generated-and-checked-in/testdb/bridge
- kotlin/generated-and-checked-in/testdb/bridge
- scala/generated-and-checked-in/testdb/bridge
- tests/src/scala/typr
- bridge
- cli/config
- tui-react/src/scala/tui/react
- typr-codegen
- generated-and-checked-in-jsonschema/config/generated
- generated-and-checked-in
- anorm/typr/generated
- typr/generated
- customtypes
- custom
- comments
- composite_types
- constraints
- domains
- enums
- table_comments
- view_find_all
- information_schema
- columns
- key_column_usage
- referential_constraints
- table_constraints
- tables
- pg_catalog/pg_namespace
- public
- src
- resources
- scala/typr
- boundaries/framework
- effects
- grpc
- internal
- analysis
- codegen
- db2
- duckdb
- external
- mariadb
- oracle
- pg
- sqlfiles
- sqlglot
- sqlserver
- jsonschema
- openapi
- codegen
- computed
- parser
- testdata
- typr-scripts-doc/src/scala/scripts
- typr-scripts/src/scala/scripts
- showcase
- typr/src/scala/typr
- avro
- codegen
- computed
- bridge
- api
- model
- validation
- cli
- commands
- config
- tui
- components
- screens
- util
- widgets
- util
- grpc
- codegen
- computed
- openapi/parser
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
| 27 | + | |
| 28 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
| 41 | + | |
| 42 | + | |
52 | 43 | | |
53 | 44 | | |
54 | 45 | | |
55 | 46 | | |
56 | 47 | | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
57 | 61 | | |
58 | 62 | | |
59 | 63 | | |
| |||
115 | 119 | | |
116 | 120 | | |
117 | 121 | | |
118 | | - | |
119 | | - | |
120 | | - | |
121 | | - | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
126 | | - | |
127 | | - | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
128 | 132 | | |
129 | 133 | | |
130 | 134 | | |
| |||
167 | 171 | | |
168 | 172 | | |
169 | 173 | | |
170 | | - | |
| 174 | + | |
171 | 175 | | |
172 | 176 | | |
173 | 177 | | |
| |||
178 | 182 | | |
179 | 183 | | |
180 | 184 | | |
181 | | - | |
| 185 | + | |
182 | 186 | | |
183 | 187 | | |
184 | 188 | | |
| |||
193 | 197 | | |
194 | 198 | | |
195 | 199 | | |
196 | | - | |
| 200 | + | |
197 | 201 | | |
198 | 202 | | |
199 | 203 | | |
200 | 204 | | |
201 | 205 | | |
202 | 206 | | |
203 | | - | |
204 | | - | |
| 207 | + | |
| 208 | + | |
205 | 209 | | |
206 | 210 | | |
207 | 211 | | |
| |||
333 | 337 | | |
334 | 338 | | |
335 | 339 | | |
336 | | - | |
337 | | - | |
338 | | - | |
339 | | - | |
340 | | - | |
341 | | - | |
342 | | - | |
343 | | - | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
344 | 344 | | |
345 | 345 | | |
346 | 346 | | |
| |||
442 | 442 | | |
443 | 443 | | |
444 | 444 | | |
445 | | - | |
| 445 | + | |
446 | 446 | | |
447 | 447 | | |
448 | 448 | | |
| |||
517 | 517 | | |
518 | 518 | | |
519 | 519 | | |
520 | | - | |
| 520 | + | |
521 | 521 | | |
522 | 522 | | |
523 | 523 | | |
| |||
533 | 533 | | |
534 | 534 | | |
535 | 535 | | |
536 | | - | |
| 536 | + | |
| 537 | + | |
0 commit comments