tai-sql 0.7.13__tar.gz → 0.7.14__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (227) hide show
  1. {tai_sql-0.7.13 → tai_sql-0.7.14}/PKG-INFO +1 -1
  2. {tai_sql-0.7.13 → tai_sql-0.7.14}/pyproject.toml +1 -1
  3. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_schema/schemas/chatbot.py +13 -8
  4. {tai_sql-0.7.13 → tai_sql-0.7.14}/LICENSE +0 -0
  5. {tai_sql-0.7.13 → tai_sql-0.7.14}/README.md +0 -0
  6. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/__init__.py +0 -0
  7. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/__init__.py +0 -0
  8. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_backup/__init__.py +0 -0
  9. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_backup/main.py +0 -0
  10. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_deploy/__init__.py +0 -0
  11. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_deploy/config.py +0 -0
  12. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_deploy/local.py +0 -0
  13. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_deploy/main.py +0 -0
  14. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_deploy/workflow.py +0 -0
  15. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_feed/__init__.py +0 -0
  16. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_feed/main.py +0 -0
  17. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_generate/__init__.py +0 -0
  18. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_generate/funcs.py +0 -0
  19. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_generate/main.py +0 -0
  20. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_hash_migrate/__init__.py +0 -0
  21. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_hash_migrate/main.py +0 -0
  22. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_info/__init__.py +0 -0
  23. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_info/main.py +0 -0
  24. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_info/status.py +0 -0
  25. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_init/__init__.py +0 -0
  26. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_init/main.py +0 -0
  27. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_init/model.py +0 -0
  28. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_install/__init__.py +0 -0
  29. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_install/main.py +0 -0
  30. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_ping/__init__.py +0 -0
  31. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_ping/main.py +0 -0
  32. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_pull/__init__.py +0 -0
  33. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_pull/funcs.py +0 -0
  34. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_pull/main.py +0 -0
  35. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_restore/__init__.py +0 -0
  36. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_restore/main.py +0 -0
  37. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_rules/__init__.py +0 -0
  38. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_rules/main.py +0 -0
  39. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_schema/__init__.py +0 -0
  40. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_schema/model.py +0 -0
  41. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_schema/new.py +0 -0
  42. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_schema/schemas/__init__.py +0 -0
  43. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_schema/schemas/auth.py +0 -0
  44. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_schema/schemas/base.py +0 -0
  45. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_schema/schemas/default.py +0 -0
  46. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/cmd_schema/set_default.py +0 -0
  47. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/prompts.py +0 -0
  48. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/utils/__init__.py +0 -0
  49. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/utils/connectivity.py +0 -0
  50. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/utils/create.py +0 -0
  51. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/utils/github/__init__.py +0 -0
  52. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/utils/github/auth.py +0 -0
  53. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/utils/github/client.py +0 -0
  54. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/commands/utils/github/models.py +0 -0
  55. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/errors.py +0 -0
  56. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/main.py +0 -0
  57. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/preamble.py +0 -0
  58. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/services/__init__.py +0 -0
  59. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/cli/services/backup.py +0 -0
  60. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/connection/README.md +0 -0
  61. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/connection/__init__.py +0 -0
  62. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/connection/provider.py +0 -0
  63. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/connection/recipe.py +0 -0
  64. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/connection/session.py +0 -0
  65. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/connection/sources.py +0 -0
  66. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/crypto.py +0 -0
  67. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/drivers/__init__.py +0 -0
  68. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/drivers/base.py +0 -0
  69. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/drivers/bigquery.py +0 -0
  70. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/drivers/capabilities.py +0 -0
  71. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/drivers/mysql.py +0 -0
  72. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/drivers/postgresql.py +0 -0
  73. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/drivers/sqlserver.py +0 -0
  74. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/errors/README.md +0 -0
  75. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/errors/__init__.py +0 -0
  76. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/errors/collector.py +0 -0
  77. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/errors/render.py +0 -0
  78. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/errors/types.py +0 -0
  79. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/feed/README.md +0 -0
  80. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/feed/__init__.py +0 -0
  81. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/feed/collect.py +0 -0
  82. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/feed/executor.py +0 -0
  83. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/feed/feeder.py +0 -0
  84. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/feed/plan.py +0 -0
  85. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/feed/presenter.py +0 -0
  86. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/feed/records.py +0 -0
  87. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/feed/transform.py +0 -0
  88. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/__init__.py +0 -0
  89. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/base.py +0 -0
  90. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/diagram/README.md +0 -0
  91. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/diagram/__init__.py +0 -0
  92. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/diagram/assets/README.md +0 -0
  93. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/diagram/assets/cytoscape.min.js +0 -0
  94. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/diagram/builder.py +0 -0
  95. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/diagram/generator.py +0 -0
  96. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/diagram/graphviz_render.py +0 -0
  97. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/diagram/html_render.py +0 -0
  98. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/diagram/layout.py +0 -0
  99. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/diagram/model.py +0 -0
  100. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/diagram/templates/er.html.jinja2 +0 -0
  101. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/diagram/themes.py +0 -0
  102. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/__init__.py +0 -0
  103. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/calculated.py +0 -0
  104. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/context.py +0 -0
  105. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/base.py.jinja2 +0 -0
  106. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/domain/__init__.py.jinja2 +0 -0
  107. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/domain/dao.py.jinja2 +0 -0
  108. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/domain/dtos.py.jinja2 +0 -0
  109. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/domain/model.py.jinja2 +0 -0
  110. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/facade.py.jinja2 +0 -0
  111. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/macros/aggregation.jinja2 +0 -0
  112. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/macros/dataframe.jinja2 +0 -0
  113. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/macros/filters.jinja2 +0 -0
  114. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/macros/hierarchy.jinja2 +0 -0
  115. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/macros/read.jinja2 +0 -0
  116. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/macros/triggers.jinja2 +0 -0
  117. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/macros/upsert.jinja2 +0 -0
  118. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/macros/vector.jinja2 +0 -0
  119. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/macros/write.jinja2 +0 -0
  120. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/session.py.jinja2 +0 -0
  121. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/shared/__init__.py.jinja2 +0 -0
  122. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/shared/aggregation.py.jinja2 +0 -0
  123. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/shared/context.py.jinja2 +0 -0
  124. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/shared/utils/__init__.py.jinja2 +0 -0
  125. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/shared/utils/encoders.py.jinja2 +0 -0
  126. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/shared/utils/funcs.py.jinja2 +0 -0
  127. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/shared/utils/hierarchy.py.jinja2 +0 -0
  128. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/shared/utils/rls.py.jinja2 +0 -0
  129. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/templates/shared/vector.py.jinja2 +0 -0
  130. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/triggers/__init__.py +0 -0
  131. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/triggers/analyzer.py +0 -0
  132. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/triggers/renderer.py +0 -0
  133. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/triggers/steps.py +0 -0
  134. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/python_client/triggers/transformer.py +0 -0
  135. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/rules/__init__.py +0 -0
  136. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/generators/rules/templates/schema.md.jinja2 +0 -0
  137. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/introspect/README.md +0 -0
  138. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/introspect/__init__.py +0 -0
  139. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/introspect/blueprint.py +0 -0
  140. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/introspect/build.py +0 -0
  141. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/introspect/defaults.py +0 -0
  142. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/introspect/naming.py +0 -0
  143. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/introspect/reader.py +0 -0
  144. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/introspect/templates/schema.py.jinja2 +0 -0
  145. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/introspect/types.py +0 -0
  146. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/introspect/writer.py +0 -0
  147. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/README.md +0 -0
  148. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/__init__.py +0 -0
  149. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/analysis/README.md +0 -0
  150. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/analysis/__init__.py +0 -0
  151. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/analysis/calculated.py +0 -0
  152. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/analysis/collector.py +0 -0
  153. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/analysis/column_analyzer.py +0 -0
  154. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/analysis/constraints.py +0 -0
  155. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/analysis/hints.py +0 -0
  156. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/analysis/relation_analyzer.py +0 -0
  157. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/analysis/schema_analyzer.py +0 -0
  158. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/README.md +0 -0
  159. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/__init__.py +0 -0
  160. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/annotations.py +0 -0
  161. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/base.py +0 -0
  162. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/calculated.py +0 -0
  163. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/columns.py +0 -0
  164. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/constraints.py +0 -0
  165. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/datasource.py +0 -0
  166. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/descriptors.py +0 -0
  167. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/encoders.py +0 -0
  168. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/enumerations.py +0 -0
  169. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/relations.py +0 -0
  170. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/table.py +0 -0
  171. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/trigger_api.py +0 -0
  172. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/triggers.py +0 -0
  173. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/declarative/view.py +0 -0
  174. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/mapping/README.md +0 -0
  175. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/mapping/__init__.py +0 -0
  176. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/mapping/sqlalchemy_mapper.py +0 -0
  177. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/model/README.md +0 -0
  178. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/model/__init__.py +0 -0
  179. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/model/column.py +0 -0
  180. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/model/constraints.py +0 -0
  181. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/model/entity.py +0 -0
  182. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/model/enumeration.py +0 -0
  183. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/model/relation.py +0 -0
  184. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/model/schema.py +0 -0
  185. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/model/trigger.py +0 -0
  186. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/naming.py +0 -0
  187. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/ordering.py +0 -0
  188. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/registry.py +0 -0
  189. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/orm/types.py +0 -0
  190. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/project/README.md +0 -0
  191. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/project/__init__.py +0 -0
  192. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/project/config.py +0 -0
  193. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/project/context.py +0 -0
  194. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/project/manager.py +0 -0
  195. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/project/paths.py +0 -0
  196. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/rules/README.md +0 -0
  197. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/rules/__init__.py +0 -0
  198. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/rules/catalog.py +0 -0
  199. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/rules/installer.py +0 -0
  200. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/rules/meta.py +0 -0
  201. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/rules/service.py +0 -0
  202. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/rules/staleness.py +0 -0
  203. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/rules/static/comandos.md +0 -0
  204. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/rules/static/errores.md +0 -0
  205. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/rules/static/modelo.md +0 -0
  206. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/schema.py +0 -0
  207. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/README.md +0 -0
  208. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/__init__.py +0 -0
  209. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/diff/__init__.py +0 -0
  210. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/diff/constraints.py +0 -0
  211. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/diff/indexes.py +0 -0
  212. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/diff/tables.py +0 -0
  213. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/diff/views.py +0 -0
  214. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/executor.py +0 -0
  215. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/ownership.py +0 -0
  216. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/plan/__init__.py +0 -0
  217. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/plan/planner.py +0 -0
  218. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/plan/statements.py +0 -0
  219. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/presenter.py +0 -0
  220. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/report.py +0 -0
  221. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/safety.py +0 -0
  222. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/state/__init__.py +0 -0
  223. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/state/local.py +0 -0
  224. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/state/model.py +0 -0
  225. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/state/normalize.py +0 -0
  226. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/state/remote.py +0 -0
  227. {tai_sql-0.7.13 → tai_sql-0.7.14}/tai_sql/sync/synchronizer.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tai-sql
3
- Version: 0.7.13
3
+ Version: 0.7.14
4
4
  Summary: SQL database management and code generation tool
5
5
  License-Expression: MIT
6
6
  License-File: LICENSE
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "tai-sql"
3
- version = "0.7.13"
3
+ version = "0.7.14"
4
4
  description = "SQL database management and code generation tool"
5
5
  license = "MIT"
6
6
  license-files = ["LICENSE"]
@@ -59,9 +59,12 @@ class ChatbotSchema(SchemaTemplate):
59
59
  title: col[str] = column(description='Título de la conversación')
60
60
  username: col[str] = column(description='ID del usuario propietario del chat')
61
61
  is_active: col[bool] = column(default=True, description='Estado activo del chat')
62
+
63
+ visible: col[bool] = column(default=True, index=True, description='Si no, la conversación no se lista')
62
64
  last_message_timestamp: col[datetime | None] = column(description='Timestamp del último mensaje del chat')
63
65
 
64
66
  messages: onetomany[Mensaje] # Relación one-to-many con la tabla Mensaje
67
+ token_usage: onetomany[TokenUsage] # El consumo de la conversación, tenga mensaje o no
65
68
 
66
69
 
67
70
  class Feedback(Enum):
@@ -118,11 +121,13 @@ class ChatbotSchema(SchemaTemplate):
118
121
 
119
122
  username: col[str] = column(index=True, description='Usuario que consumió')
120
123
  message_id: col[bigint | None] = column(description='Mensaje que lo generó; vacío si se borró la conversación')
124
+ chat_id: col[bigint | None] = column(index=True, description='Conversación en la que se consumió; vacío si no es de ninguna')
121
125
 
122
126
  tarifa_id: col[bigint | None] = column(index=True, description='Tarifa con la que se valora')
123
127
  bolsa_id: col[bigint | None] = column(index=True, description='Bolsa a la que se carga; vacío si no hay bolsas')
124
128
 
125
129
  message: manytoone[Mensaje] = relation(fields=['message_id'], references=['id'], backref='token_usage', onDelete='set null')
130
+ chat: manytoone[Chat] = relation(fields=['chat_id'], references=['id'], backref='token_usage', onDelete='set null')
126
131
 
127
132
 
128
133
  class ToolCall(Table):
@@ -351,10 +356,10 @@ class ChatbotSchema(SchemaTemplate):
351
356
  con_tarifa: col[bool]
352
357
 
353
358
 
354
- class UsuarioFacturacion(View):
355
- """Vista que muestra los usuarios a los que se factura"""
356
- __tablename__ = "usuario_facturacion"
357
- __query__ = query('usuario_facturacion.sql')
359
+ class UsuarioConsumo(View):
360
+ """Vista que muestra los usuarios a los que se mide el consumo"""
361
+ __tablename__ = "usuario_consumo"
362
+ __query__ = query('usuario_consumo.sql')
358
363
 
359
364
  username: col[str]
360
365
  realm_name: col[str]
@@ -434,7 +439,7 @@ class ChatbotSchema(SchemaTemplate):
434
439
  SUM(ROUND(((tu.prompt_tokens * t.precio_input_eur_millon
435
440
  + tu.completion_tokens * t.precio_output_eur_millon)
436
441
  * t.margen / 1000000)::numeric, 8))::double precision as total_cost_eur,
437
- COUNT(DISTINCT me.chat_id) as chat_count,
442
+ COUNT(DISTINCT COALESCE(tu.chat_id, me.chat_id)) as chat_count,
438
443
  COUNT(*) as message_count
439
444
  FROM token_usage tu
440
445
  JOIN tarifa t ON t.id = tu.tarifa_id
@@ -609,8 +614,8 @@ class ChatbotSchema(SchemaTemplate):
609
614
  tm.active_days;
610
615
  ''').rstrip()
611
616
 
612
- usuario_facturacion_sql = dedent('''\
613
- -- Vista con los usuarios a los que se factura. Es la que leen las pantallas de facturación:
617
+ usuario_consumo_sql = dedent('''\
618
+ -- Vista con los usuarios a los que se mide el consumo. Es la que leen sus pantallas:
614
619
  -- /rbac/{realm}/user pide administración del realm y la contraseña no sale de aquí
615
620
  SELECT
616
621
  u.username,
@@ -634,4 +639,4 @@ class ChatbotSchema(SchemaTemplate):
634
639
  (views_dir / 'tarifa_vigente.sql').write_text(tarifa_vigente_sql, encoding='utf-8')
635
640
  (views_dir / 'tokens_mensaje.sql').write_text(tokens_mensaje_sql, encoding='utf-8')
636
641
  (views_dir / 'user_stats.sql').write_text(user_stats_sql, encoding='utf-8')
637
- (views_dir / 'usuario_facturacion.sql').write_text(usuario_facturacion_sql, encoding='utf-8')
642
+ (views_dir / 'usuario_consumo.sql').write_text(usuario_consumo_sql, encoding='utf-8')
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes