zrb 1.0.0a16__py3-none-any.whl → 1.0.0a18__py3-none-any.whl

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 (151) hide show
  1. zrb/__main__.py +3 -0
  2. zrb/builtin/__init__.py +2 -2
  3. zrb/builtin/git.py +10 -2
  4. zrb/builtin/git_subtree.py +4 -0
  5. zrb/builtin/llm/tool/rag.py +2 -2
  6. zrb/builtin/project/add/fastapp/fastapp_input.py +16 -0
  7. zrb/builtin/project/add/fastapp/fastapp_task.py +78 -0
  8. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/.flake8 +3 -0
  9. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/column/create_column_task.py +14 -0
  10. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/add_entity_task.py +128 -0
  11. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/add_entity_util.py +213 -0
  12. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/any_client_method.py +27 -0
  13. zrb/builtin/project/add/{fastapp_template/_zrb/entity/module_template → fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/module/my_module}/service/my_entity/my_entity_usecase.py +9 -10
  14. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/module/my_module/service/my_entity/repository/factory.py +13 -0
  15. zrb/builtin/project/add/{fastapp_template/_zrb/entity/module_template → fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/module/my_module}/service/my_entity/repository/my_entity_db_repository.py +14 -9
  16. zrb/builtin/project/add/{fastapp_template/_zrb/entity/module_template → fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/module/my_module}/service/my_entity/repository/my_entity_repository.py +6 -7
  17. zrb/builtin/project/add/{fastapp_template/_zrb/entity/schema.template.py → fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/schema/my_entity.py} +8 -0
  18. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/format_task.py +17 -0
  19. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/_zrb/input.py +1 -4
  20. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/add_module_task.py +85 -0
  21. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/add_module_util.py +154 -0
  22. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/client/any_client.py +7 -0
  23. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/client/api_client.py +6 -0
  24. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/client/direct_client.py +6 -0
  25. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/client/factory.py +9 -0
  26. zrb/builtin/project/add/{fastapp_template/_zrb/module/module_template → fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module}/migration/env.py +2 -4
  27. zrb/builtin/project/add/{fastapp_template/module/auth → fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module}/migration/script.py.mako +1 -0
  28. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/route.py +33 -0
  29. zrb/builtin/project/add/{fastapp_template/_zrb/main.py → fastapp/fastapp_template/my_app_name/_zrb/task.py} +12 -14
  30. zrb/builtin/project/add/{fastapp_template/_zrb/helper.py → fastapp/fastapp_template/my_app_name/_zrb/util.py} +1 -1
  31. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/_zrb/venv_task.py +1 -1
  32. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/common/app.py +2 -2
  33. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/common/base_db_repository.py +1 -1
  34. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/common/base_usecase.py +19 -6
  35. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/common/db_engine.py +1 -1
  36. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/config.py +1 -0
  37. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/main.py +7 -0
  38. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/migrate.py +3 -0
  39. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/auth/client/any_client.py +10 -4
  40. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/client/api_client.py +7 -0
  41. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/client/direct_client.py +6 -0
  42. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/client/factory.py +9 -0
  43. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/auth/migration/env.py +2 -4
  44. zrb/builtin/project/add/{fastapp_template/module/gateway → fastapp/fastapp_template/my_app_name/module/auth}/migration/script.py.mako +1 -0
  45. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/auth/migration_metadata.py +1 -1
  46. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/route.py +37 -0
  47. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/user/repository/factory.py +13 -0
  48. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/auth/service/user/repository/user_db_repository.py +13 -7
  49. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/user/repository/user_repository.py +42 -0
  50. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/auth/service/user/user_usecase.py +13 -8
  51. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/gateway/migration/env.py +2 -4
  52. zrb/builtin/project/add/{fastapp_template/_zrb/module/module_template → fastapp/fastapp_template/my_app_name/module/gateway}/migration/script.py.mako +1 -0
  53. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/route.py +43 -0
  54. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/subroute/auth.py +0 -0
  55. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/requirements.txt +1 -1
  56. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/schema/__init__.py +0 -0
  57. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/schema/permission.py +8 -0
  58. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/schema/role.py +8 -0
  59. zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/schema/user.py +8 -0
  60. zrb/builtin/project/add/fastapp/fastapp_util.py +46 -0
  61. zrb/builtin/project/create/{create.py → project_task.py} +1 -1
  62. zrb/builtin/python.py +4 -1
  63. zrb/builtin/setup/asdf/asdf_helper.py +4 -8
  64. zrb/builtin/setup/tmux/tmux.py +7 -12
  65. zrb/builtin/todo.py +42 -26
  66. zrb/callback/callback.py +0 -1
  67. zrb/cmd/cmd_val.py +2 -2
  68. zrb/config.py +1 -0
  69. zrb/content_transformer/content_transformer.py +8 -7
  70. zrb/context/any_context.py +6 -6
  71. zrb/group/group.py +0 -1
  72. zrb/input/base_input.py +13 -1
  73. zrb/input/text_input.py +4 -4
  74. zrb/runner/cli.py +0 -1
  75. zrb/runner/web_app.py +5 -2
  76. zrb/runner/web_controller/group_info_ui/controller.py +6 -14
  77. zrb/runner/web_controller/home_page/controller.py +6 -14
  78. zrb/runner/web_controller/task_ui/controller.py +12 -19
  79. zrb/session_state_logger/any_session_state_logger.py +0 -1
  80. zrb/session_state_logger/file_session_state_logger.py +4 -8
  81. zrb/task/base_trigger.py +0 -1
  82. zrb/task/cmd_task.py +1 -1
  83. zrb/task/llm_task.py +3 -6
  84. zrb/task/make_task.py +0 -1
  85. zrb/task/scaffolder.py +18 -4
  86. zrb/task/scheduler.py +0 -1
  87. zrb/util/cmd/command.py +0 -1
  88. zrb/util/codemod/{add_code_to_class.py → append_code_to_class.py} +4 -4
  89. zrb/util/codemod/{add_code_to_function.py → append_code_to_function.py} +5 -3
  90. zrb/util/codemod/{add_code_to_method.py → append_code_to_method.py} +3 -3
  91. zrb/util/codemod/{add_key_to_dict.py → append_key_to_dict.py} +1 -1
  92. zrb/util/codemod/{add_param_to_function_call.py → append_param_to_function_call.py} +1 -1
  93. zrb/util/codemod/{add_code_to_module.py → prepend_code_to_module.py} +2 -2
  94. zrb/util/codemod/{add_parent_to_class.py → prepend_parent_to_class.py} +1 -1
  95. zrb/util/codemod/{add_property_to_class.py → prepend_property_to_class.py} +1 -1
  96. zrb/util/file.py +18 -0
  97. zrb/util/git_subtree.py +3 -4
  98. zrb/util/todo.py +105 -24
  99. zrb/xcom/xcom.py +0 -1
  100. {zrb-1.0.0a16.dist-info → zrb-1.0.0a18.dist-info}/METADATA +2 -2
  101. zrb-1.0.0a18.dist-info/RECORD +240 -0
  102. zrb/builtin/project/add/fastapp.py +0 -87
  103. zrb/builtin/project/add/fastapp_template/_zrb/column/create_column_task.py +0 -11
  104. zrb/builtin/project/add/fastapp_template/_zrb/entity/create_entity_task.py +0 -196
  105. zrb/builtin/project/add/fastapp_template/_zrb/entity/module_template/service/my_entity/repository/factory.py +0 -13
  106. zrb/builtin/project/add/fastapp_template/_zrb/module/create_module_task.py +0 -136
  107. zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/client/any_client.py +0 -27
  108. zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/client/api_client.py +0 -6
  109. zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/client/direct_client.py +0 -6
  110. zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/client/factory.py +0 -9
  111. zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/route.py +0 -19
  112. zrb/builtin/project/add/fastapp_template/main.py +0 -7
  113. zrb/builtin/project/add/fastapp_template/migrate.py +0 -3
  114. zrb/builtin/project/add/fastapp_template/module/auth/client/api_client.py +0 -7
  115. zrb/builtin/project/add/fastapp_template/module/auth/client/direct_client.py +0 -6
  116. zrb/builtin/project/add/fastapp_template/module/auth/client/factory.py +0 -9
  117. zrb/builtin/project/add/fastapp_template/module/auth/migration/versions/3093c7336477_add_user_table.py +0 -37
  118. zrb/builtin/project/add/fastapp_template/module/auth/route.py +0 -22
  119. zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/factory.py +0 -13
  120. zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/user_repository.py +0 -34
  121. zrb/builtin/project/add/fastapp_template/module/gateway/route.py +0 -27
  122. zrb-1.0.0a16.dist-info/RECORD +0 -231
  123. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/.gitignore +0 -0
  124. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/README.md +0 -0
  125. /zrb/builtin/project/add/{__init__.py → fastapp/fastapp_template/my_app_name/__init__.py} +0 -0
  126. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/_zrb/config.py +0 -0
  127. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/_zrb/group.py +0 -0
  128. /zrb/builtin/project/add/{fastapp_template/__init__.py → fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/gateway/subroute/my_module.py} +0 -0
  129. /zrb/builtin/project/add/{fastapp_template/_zrb/module/module_template → fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module}/alembic.ini +0 -0
  130. /zrb/builtin/project/add/{fastapp_template/_zrb/module/module_template → fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module}/migration/README +0 -0
  131. /zrb/builtin/project/add/{fastapp_template/module/gateway → fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module}/migration/versions/.gitkeep +0 -0
  132. /zrb/builtin/project/add/{fastapp_template/_zrb/module/module_template → fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module}/migration_metadata.py +0 -0
  133. /zrb/builtin/project/add/{fastapp_template/_zrb/module/module_template → fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module}/service/__init__.py +0 -0
  134. /zrb/builtin/project/add/{fastapp_template/_zrb/module/run_module.template.py → fastapp/fastapp_template/my_app_name/_zrb/module/template/module_task_definition.py} +0 -0
  135. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/common/__init__.py +0 -0
  136. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/common/error.py +0 -0
  137. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/common/schema.py +0 -0
  138. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/__init__.py +0 -0
  139. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/auth/alembic.ini +0 -0
  140. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/auth/migration/README +0 -0
  141. /zrb/builtin/project/add/{fastapp_template/_zrb/module/module_template → fastapp/fastapp_template/my_app_name/module/auth}/migration/versions/3093c7336477_add_user_table.py +0 -0
  142. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/auth/service/__init__.py +0 -0
  143. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/auth/service/user/__init__.py +0 -0
  144. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/auth/service/user/repository/__init__.py +0 -0
  145. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/gateway/alembic.ini +0 -0
  146. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/gateway/migration/README +0 -0
  147. /zrb/builtin/project/add/{fastapp_template/schema/__init__.py → fastapp/fastapp_template/my_app_name/module/gateway/migration/versions/.gitkeep} +0 -0
  148. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/module/gateway/migration_metadata.py +0 -0
  149. /zrb/builtin/project/add/{fastapp_template → fastapp/fastapp_template/my_app_name}/template.env +0 -0
  150. {zrb-1.0.0a16.dist-info → zrb-1.0.0a18.dist-info}/WHEEL +0 -0
  151. {zrb-1.0.0a16.dist-info → zrb-1.0.0a18.dist-info}/entry_points.txt +0 -0
@@ -1,136 +0,0 @@
1
- import os
2
-
3
- from fastapp_template._zrb.config import APP_DIR
4
- from fastapp_template._zrb.group import app_create_group
5
- from fastapp_template._zrb.helper import get_existing_module_names
6
- from fastapp_template._zrb.input import new_module_input
7
-
8
- from zrb import AnyContext, Scaffolder, Task, make_task
9
- from zrb.util.string.conversion import to_kebab_case, to_pascal_case, to_snake_case
10
-
11
-
12
- @make_task(
13
- name="validate-create-my-app-name-module",
14
- input=new_module_input,
15
- retries=0,
16
- )
17
- async def validate_create_my_app_name_module(ctx: AnyContext):
18
- if ctx.input.module in get_existing_module_names():
19
- raise ValueError(f"Module already exists: {ctx.input.module}")
20
-
21
-
22
- scaffold_my_app_name_module = Scaffolder(
23
- name="scaffold-my-app-name-module",
24
- input=new_module_input,
25
- source_path=os.path.join(os.path.dirname(__file__), "module_template"),
26
- render_source_path=False,
27
- destination_path=lambda ctx: os.path.join(
28
- APP_DIR,
29
- "module",
30
- to_snake_case(ctx.input.module),
31
- ),
32
- transform_content={
33
- "module_template": "{to_snake_case(ctx.input.module)}",
34
- "MY_MODULE_NAME": "{to_snake_case(ctx.input.module).upper()}",
35
- },
36
- retries=0,
37
- upstream=validate_create_my_app_name_module,
38
- )
39
-
40
-
41
- @make_task(
42
- name="register-my-app-name-module-config",
43
- input=new_module_input,
44
- upstream=validate_create_my_app_name_module,
45
- retries=0,
46
- )
47
- async def register_my_app_name_module_config(ctx: AnyContext):
48
- """Registering module to config.py"""
49
- existing_module_names = get_existing_module_names()
50
- module_port = 3000 + len(
51
- [
52
- module_name
53
- for module_name in existing_module_names
54
- if module_name != to_snake_case(ctx.input.module)
55
- ]
56
- )
57
- module_base_url = f"http://localhost:{module_port}"
58
- config_file_name = os.path.join(APP_DIR, "config.py")
59
- upper_module_name = to_snake_case(ctx.input.module).upper()
60
- config_name = f"APP_{upper_module_name}_BASE_URL"
61
- env_name = f"MY_APP_NAME_{upper_module_name}_BASE_URL"
62
- # TODO: check before write
63
- with open(config_file_name, "a") as f:
64
- f.write(f'{config_name} = os.getenv("{env_name}", "{module_base_url}")\n')
65
-
66
-
67
- @make_task(
68
- name="register-my-app-name-module",
69
- input=new_module_input,
70
- upstream=validate_create_my_app_name_module,
71
- retries=0,
72
- )
73
- async def register_my_app_name_module(ctx: AnyContext):
74
- """Registering module to application's main.py"""
75
- app_main_file_name = os.path.join(APP_DIR, "main.py")
76
- module_name = to_snake_case(ctx.input.module)
77
- import_code = f"from fastapp_template.module.{module_name} import route as {module_name}_route" # noqa
78
- assert_code = f"assert {module_name}_route"
79
- with open(app_main_file_name, "r") as f:
80
- code = f.read()
81
- new_code = "\n".join([import_code, code.strip(), assert_code, ""])
82
- # TODO: check before write
83
- with open(app_main_file_name, "w") as f:
84
- f.write(new_code)
85
-
86
-
87
- @make_task(
88
- name="register-my-app-name-module-runner",
89
- input=new_module_input,
90
- upstream=validate_create_my_app_name_module,
91
- retries=0,
92
- )
93
- async def register_my_app_name_module_runner(ctx: AnyContext):
94
- """Registering module to _zrb's main.py"""
95
- task_main_file_name = os.path.join(APP_DIR, "_zrb", "main.py")
96
- existing_module_names = get_existing_module_names()
97
- module_port = 3001 + len(
98
- [
99
- module_name
100
- for module_name in existing_module_names
101
- if module_name != to_snake_case(ctx.input.module)
102
- ]
103
- )
104
- module_snake_name = to_snake_case(ctx.input.module)
105
- module_kebab_name = to_kebab_case(ctx.input.module)
106
- module_pascal_name = to_pascal_case(ctx.input.module)
107
- with open(os.path.join(os.path.dirname(__file__), "run_module.template.py")) as f:
108
- module_runner_code = (
109
- f.read()
110
- .replace("my_module", module_snake_name)
111
- .replace("my-module", module_kebab_name)
112
- .replace("My Module", module_pascal_name)
113
- .replace("3000", f"{module_port}")
114
- )
115
- with open(task_main_file_name, "r") as f:
116
- code = f.read()
117
- new_code = "\n".join([code.strip(), "", module_runner_code, ""])
118
- # TODO: check before write
119
- with open(task_main_file_name, "w") as f:
120
- f.write(new_code)
121
-
122
-
123
- create_my_app_name_module = app_create_group.add_task(
124
- Task(
125
- name="create-my-app-name-module",
126
- description="🧩 Create new module on My App Name",
127
- retries=0,
128
- ),
129
- alias="module",
130
- )
131
- create_my_app_name_module << [
132
- scaffold_my_app_name_module,
133
- register_my_app_name_module,
134
- register_my_app_name_module_config,
135
- register_my_app_name_module_runner,
136
- ]
@@ -1,27 +0,0 @@
1
- from abc import ABC, abstractmethod
2
-
3
- from fastapp_template.schema.user import UserCreate, UserResponse, UserUpdate
4
-
5
-
6
- class BaseClient(ABC):
7
- @abstractmethod
8
- async def get_user_by_id(self, user_id: str) -> UserResponse:
9
- pass
10
-
11
- @abstractmethod
12
- async def get_all_users(self) -> list[UserResponse]:
13
- pass
14
-
15
- @abstractmethod
16
- async def create_user(
17
- self, data: UserCreate | list[UserCreate]
18
- ) -> UserResponse | list[UserResponse]:
19
- pass
20
-
21
- @abstractmethod
22
- async def update_user(self, user_id: str, data: UserUpdate) -> UserResponse:
23
- pass
24
-
25
- @abstractmethod
26
- async def delete_user(self, user_id: str) -> UserResponse:
27
- pass
@@ -1,6 +0,0 @@
1
- from fastapp_template.config import APP_MY_MODULE_NAME_BASE_URL
2
- from fastapp_template.module.module_template.client.any_client import BaseClient
3
-
4
-
5
- class APIClient(BaseClient):
6
- pass
@@ -1,6 +0,0 @@
1
- from fastapp_template.module.module_template.client.any_client import BaseClient
2
- from fastapp_template.module.module_template.service.user.usecase import user_usecase
3
-
4
-
5
- class DirectClient(BaseClient):
6
- pass
@@ -1,9 +0,0 @@
1
- from fastapp_template.config import APP_COMMUNICATION
2
- from fastapp_template.module.module_template.client.any_client import BaseClient
3
- from fastapp_template.module.module_template.client.api_client import APIClient
4
- from fastapp_template.module.module_template.client.direct_client import DirectClient
5
-
6
- if APP_COMMUNICATION == "direct":
7
- client: BaseClient = DirectClient()
8
- elif APP_COMMUNICATION == "api":
9
- client: BaseClient = APIClient()
@@ -1,19 +0,0 @@
1
- from fastapp_template.common.app import app
2
- from fastapp_template.common.schema import BasicResponse
3
- from fastapp_template.config import APP_MODE, APP_MODULES
4
-
5
- if APP_MODE == "microservices" and "auth" in APP_MODULES:
6
-
7
- if APP_MODE == "microservices" and (
8
- len(APP_MODULES) > 0 and APP_MODULES[0] == "auth"
9
- ):
10
-
11
- @app.api_route("/health", methods=["GET", "HEAD"], response_model=BasicResponse)
12
- async def health():
13
- return BasicResponse(message="ok")
14
-
15
- @app.api_route(
16
- "/readiness", methods=["GET", "HEAD"], response_model=BasicResponse
17
- )
18
- async def readiness():
19
- return BasicResponse(message="ok")
@@ -1,7 +0,0 @@
1
- from fastapp_template.common.app import app
2
- from fastapp_template.module.auth import route as auth_route
3
- from fastapp_template.module.gateway import route as gateway_route
4
-
5
- assert app
6
- assert gateway_route
7
- assert auth_route
@@ -1,3 +0,0 @@
1
- from fastapp_template.module.auth import migration as auth_migration
2
-
3
- assert auth_migration
@@ -1,7 +0,0 @@
1
- from fastapp_template.config import APP_AUTH_BASE_URL
2
- from fastapp_template.module.auth.client.any_client import BaseClient
3
- from fastapp_template.module.auth.service.user.user_usecase import user_usecase
4
-
5
-
6
- class APIClient(user_usecase.as_api_client(base_url=APP_AUTH_BASE_URL), BaseClient):
7
- pass
@@ -1,6 +0,0 @@
1
- from fastapp_template.module.auth.client.any_client import BaseClient
2
- from fastapp_template.module.auth.service.user.user_usecase import user_usecase
3
-
4
-
5
- class DirectClient(user_usecase.as_direct_client(), BaseClient):
6
- pass
@@ -1,9 +0,0 @@
1
- from fastapp_template.config import APP_COMMUNICATION
2
- from fastapp_template.module.auth.client.any_client import BaseClient
3
- from fastapp_template.module.auth.client.api_client import APIClient
4
- from fastapp_template.module.auth.client.direct_client import DirectClient
5
-
6
- if APP_COMMUNICATION == "direct":
7
- client: BaseClient = DirectClient()
8
- elif APP_COMMUNICATION == "api":
9
- client: BaseClient = APIClient()
@@ -1,37 +0,0 @@
1
- """Add user table
2
-
3
- Revision ID: 3093c7336477
4
- Revises:
5
- Create Date: 2024-11-20 05:57:01.684118
6
-
7
- """
8
-
9
- from typing import Sequence, Union
10
-
11
- import sqlalchemy as sa
12
- import sqlmodel
13
- from alembic import op
14
-
15
- # revision identifiers, used by Alembic.
16
- revision: str = "3093c7336477"
17
- down_revision: Union[str, None] = None
18
- branch_labels: Union[str, Sequence[str], None] = None
19
- depends_on: Union[str, Sequence[str], None] = None
20
-
21
-
22
- def upgrade() -> None:
23
- # ### commands auto generated by Alembic - please adjust! ###
24
- op.create_table(
25
- "user",
26
- sa.Column("id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),
27
- sa.Column("username", sqlmodel.sql.sqltypes.AutoString(), nullable=False),
28
- sa.Column("password", sqlmodel.sql.sqltypes.AutoString(), nullable=False),
29
- sa.PrimaryKeyConstraint("id"),
30
- )
31
- # ### end Alembic commands ###
32
-
33
-
34
- def downgrade() -> None:
35
- # ### commands auto generated by Alembic - please adjust! ###
36
- op.drop_table("user")
37
- # ### end Alembic commands ###
@@ -1,22 +0,0 @@
1
- from fastapp_template.common.app import app
2
- from fastapp_template.common.schema import BasicResponse
3
- from fastapp_template.config import APP_MODE, APP_MODULES
4
- from fastapp_template.module.auth.service.user.user_usecase import user_usecase
5
-
6
- if APP_MODE == "microservices" and "auth" in APP_MODULES:
7
-
8
- if APP_MODE == "microservices" and (
9
- len(APP_MODULES) > 0 and APP_MODULES[0] == "auth"
10
- ):
11
-
12
- @app.api_route("/health", methods=["GET", "HEAD"], response_model=BasicResponse)
13
- async def health():
14
- return BasicResponse(message="ok")
15
-
16
- @app.api_route(
17
- "/readiness", methods=["GET", "HEAD"], response_model=BasicResponse
18
- )
19
- async def readiness():
20
- return BasicResponse(message="ok")
21
-
22
- user_usecase.serve_route(app)
@@ -1,13 +0,0 @@
1
- from fastapp_template.common.db_engine import engine
2
- from fastapp_template.config import APP_REPOSITORY_TYPE
3
- from fastapp_template.module.auth.service.user.repository.user_db_repository import (
4
- UserDBRepository,
5
- )
6
- from fastapp_template.module.auth.service.user.repository.user_repository import (
7
- UserRepository,
8
- )
9
-
10
- if APP_REPOSITORY_TYPE == "db":
11
- user_repository: UserRepository = UserDBRepository(engine)
12
- else:
13
- user_repository: UserRepository = None
@@ -1,34 +0,0 @@
1
- from abc import ABC, abstractmethod
2
-
3
- from fastapp_template.schema.user import User, UserCreate, UserResponse, UserUpdate
4
-
5
-
6
- class UserRepository(ABC):
7
-
8
- @abstractmethod
9
- async def create(self, user_data: UserCreate) -> UserResponse:
10
- pass
11
-
12
- @abstractmethod
13
- async def get_by_id(self, user_id: str) -> User:
14
- pass
15
-
16
- @abstractmethod
17
- async def get_all(self) -> list[User]:
18
- pass
19
-
20
- @abstractmethod
21
- async def update(self, user_id: str, user_data: UserUpdate) -> User:
22
- pass
23
-
24
- @abstractmethod
25
- async def delete(self, user_id: str) -> User:
26
- pass
27
-
28
- @abstractmethod
29
- async def create_bulk(self, user_data_list: list[UserCreate]) -> list[UserResponse]:
30
- pass
31
-
32
- @abstractmethod
33
- async def get_by_credentials(self, username: str, password: str) -> UserResponse:
34
- pass
@@ -1,27 +0,0 @@
1
- from fastapp_template.common.app import app
2
- from fastapp_template.common.schema import BasicResponse
3
- from fastapp_template.config import APP_MODE, APP_MODULES
4
- from fastapp_template.module.auth.client.factory import client as auth_client
5
- from fastapp_template.schema.user import UserCreate, UserResponse
6
-
7
- if APP_MODE == "monolith" or "gateway" in APP_MODULES:
8
-
9
- if APP_MODE == "monolith" or (len(APP_MODULES) > 0 and APP_MODULES[0] == "gateway"):
10
-
11
- @app.api_route("/health", methods=["GET", "HEAD"], response_model=BasicResponse)
12
- async def health():
13
- return BasicResponse(message="ok")
14
-
15
- @app.api_route(
16
- "/readiness", methods=["GET", "HEAD"], response_model=BasicResponse
17
- )
18
- async def readiness():
19
- return BasicResponse(message="ok")
20
-
21
- @app.get("/api/v1/users", response_model=list[UserResponse])
22
- async def auth_get_all_users() -> UserResponse:
23
- return await auth_client.get_all_users()
24
-
25
- @app.post("/api/v1/users", response_model=UserResponse | list[UserResponse])
26
- async def auth_create_user(data: UserCreate | list[UserCreate]):
27
- return await auth_client.create_user(data)
@@ -1,231 +0,0 @@
1
- zrb/__init__.py,sha256=ESskletjBpLO78a6wLigi9wnEGtmhfc3i_rbyMvrSyU,2767
2
- zrb/__main__.py,sha256=aiIGigf24Yh4B8KVvJxxAcjvb_CSc13yfpeB6EkRHhE,645
3
- zrb/attr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
- zrb/attr/type.py,sha256=4TV5gPYMMrKh5V-yB6iRYKCbsXAH_AvGXMsjxKLHcUs,568
5
- zrb/builtin/__init__.py,sha256=seqFeTQk4k9I31oTdVrCDoud4_AzCrdVEZx1VxVUtZk,1744
6
- zrb/builtin/base64.py,sha256=1YnSwASp7OEAvQcsnHZGpJEvYoI1Z2zTIJ1bCDHfcPQ,921
7
- zrb/builtin/git.py,sha256=_sknHlMJz5jzmnWlDChzsXF0Nvpc6wICzn2V04HO7Qk,5072
8
- zrb/builtin/git_subtree.py,sha256=NiCvcezjV4VtiYclIYINWmPv52p6l6A4XVDi9hKOV2s,3311
9
- zrb/builtin/group.py,sha256=3xfEx9aEDcq6rDprGKYGqOXN2i0ts4W_RQVErL51o1o,1594
10
- zrb/builtin/llm/llm_chat.py,sha256=ATENrihXUMkQ8IoarhacohUe-I_43yb7c0Tl5f69mAI,1397
11
- zrb/builtin/llm/tool/cli.py,sha256=n8THj513k1vrXUoZrTcxESmdZzhBOP1-L3Dmup5ZW54,225
12
- zrb/builtin/llm/tool/rag.py,sha256=rpfTMhLpkH9ZEyBcmFqLTz3UB2F6VP6w_Se2mPQVZXM,6845
13
- zrb/builtin/llm/tool/web.py,sha256=cc-3vg8vKRq-uOk-7Z1Xe70Sn1omNqZCvePUcRptEgw,2216
14
- zrb/builtin/md5.py,sha256=0pNlrfZA0wlZlHvFHLgyqN0JZJWGKQIF5oXxO44_OJk,949
15
- zrb/builtin/project/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
- zrb/builtin/project/add/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
- zrb/builtin/project/add/fastapp.py,sha256=B_3B7vkqbEszo30wAy97aXaKaNLgcr9YiNtEhrmQYew,2848
18
- zrb/builtin/project/add/fastapp_template/.gitignore,sha256=1BMFpr_M5OyTs-weCZZlVlf85sWikzdbvmKu86YD7G0,28
19
- zrb/builtin/project/add/fastapp_template/README.md,sha256=MAo7ZFbg7LLiAfQbXcippMgjJ2-VXMKtiTDEZ3I4AAg,221
20
- zrb/builtin/project/add/fastapp_template/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
- zrb/builtin/project/add/fastapp_template/_zrb/column/create_column_task.py,sha256=IEdWRyR2dlXJFZtccwMeeAQulRSIOoojbreq1PZ-a4Q,275
22
- zrb/builtin/project/add/fastapp_template/_zrb/config.py,sha256=PZw_cL9OQr6s2f1wMt4QC3hBk1JP7DtXBWFKNhJZE6o,547
23
- zrb/builtin/project/add/fastapp_template/_zrb/entity/create_entity_task.py,sha256=uM-eYrIPCnSJxvT4YvvoWjlQGeYEhh9Vl1hhbEfaYBA,6547
24
- zrb/builtin/project/add/fastapp_template/_zrb/entity/module_template/service/my_entity/my_entity_usecase.py,sha256=h6SPkWZmfGW_Q8kVkpcPKvBH2PvMI0u4afTnW59cjLQ,2296
25
- zrb/builtin/project/add/fastapp_template/_zrb/entity/module_template/service/my_entity/repository/factory.py,sha256=9deiKrwcAG2yvGQzEVvooqM_hg6jeynKsh94NbL0e7Q,529
26
- zrb/builtin/project/add/fastapp_template/_zrb/entity/module_template/service/my_entity/repository/my_entity_db_repository.py,sha256=779xoZWGTONb-6fJy0bRoZzGvCDxqpA1LFWjS99tNTA,1008
27
- zrb/builtin/project/add/fastapp_template/_zrb/entity/module_template/service/my_entity/repository/my_entity_repository.py,sha256=cBxEqI5_9cn4HRSzG_phwpnknumJhiLK9tDwmM1RUr8,869
28
- zrb/builtin/project/add/fastapp_template/_zrb/entity/schema.template.py,sha256=d75mZq4R4DhcYfYKNRQZEWcW7PBQ3ePb7AS-x4q_Hf0,528
29
- zrb/builtin/project/add/fastapp_template/_zrb/group.py,sha256=S0sKnnABSGy3YzaExH40xJjm4UsEX6AyDE1u94ewk6A,648
30
- zrb/builtin/project/add/fastapp_template/_zrb/helper.py,sha256=O729fQKUrEBGZ3e7p9U1LnxTdgRt1qQ8sh-ubtOk-a4,3328
31
- zrb/builtin/project/add/fastapp_template/_zrb/input.py,sha256=1gtRptmJ88A0lLAq5NVO4vOq3tJUASGQSkqeeNKO1qg,1078
32
- zrb/builtin/project/add/fastapp_template/_zrb/main.py,sha256=LNguEZHsOeRGFN1bm7O0MG01IrCZDs68_Gaq46SjHYA,4547
33
- zrb/builtin/project/add/fastapp_template/_zrb/module/create_module_task.py,sha256=swQptJDR1GpeDadXY8ASummfyPzSNnSk-1F7Mg-Z1wM,4729
34
- zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/alembic.ini,sha256=mgQyBAIwdkZZJWLu_FQWPx1FkyaARCNp6-rLqSVvMbA,3723
35
- zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/client/any_client.py,sha256=sczw_a8fgxypgBmXwEU4YJkvYxqEE0ueVdbzrncfOAc,697
36
- zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/client/api_client.py,sha256=zQ3JZKwaxP6D_VJSGli1HHEcnY2jvth9a5LV3jFWgJ0,185
37
- zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/client/direct_client.py,sha256=WHHUvsaQLxjq4JPVy6yueJlzOhgU70AUNxyH3pk3RXU,210
38
- zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/client/factory.py,sha256=rD-u6dQ93uD2zkTZGyhCHcg471fU2fJvnrQzVas9NCc,446
39
- zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/migration/README,sha256=MVlc9TYmr57RbhXET6QxgyCcwWP7w-vLkEsirENqiIQ,38
40
- zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/migration/env.py,sha256=pVFeYeFx6jKCPL-EgeFpPxUxjNhm-PXtAYz53l-HwyA,3499
41
- zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/migration/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvDgl93dMj8,635
42
- zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/migration/versions/3093c7336477_add_user_table.py,sha256=j4tkh9NaTKNMefcy1dUdgRI5CzydUidli7i0Q6Ap-7Q,1021
43
- zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/migration_metadata.py,sha256=NbIb5ncy6x5RrFD2TZMDwxBK_wDTyJEIvieMRmNpf9M,55
44
- zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/route.py,sha256=NDr3j9GfBSe5rSMuetohDfTzIZnvvYT8aA-RiNkKAZw,683
45
- zrb/builtin/project/add/fastapp_template/_zrb/module/module_template/service/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
46
- zrb/builtin/project/add/fastapp_template/_zrb/module/run_module.template.py,sha256=uWeBptdMZfX-PZ2OdB_4DnUpIc-AZcZqb9wAehBdx7w,927
47
- zrb/builtin/project/add/fastapp_template/_zrb/venv_task.py,sha256=Oj_k-AANcwuXHBAafefzPkrVqJH0PfHqjzWCMbQfVMk,477
48
- zrb/builtin/project/add/fastapp_template/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
49
- zrb/builtin/project/add/fastapp_template/common/app.py,sha256=uWBOlwBgD7vDeuUNNTJmo__0ZzzZsZjm5BzwI6uz2Jg,488
50
- zrb/builtin/project/add/fastapp_template/common/base_db_repository.py,sha256=tyE5ZKapKtRrjbAww2kG8eSXGhfREas0vtwd3XjD37k,6023
51
- zrb/builtin/project/add/fastapp_template/common/base_usecase.py,sha256=j-FBqrFAAfFbfTN8jAIctwXOIFf75S7T8gn9iLmBsC8,9275
52
- zrb/builtin/project/add/fastapp_template/common/db_engine.py,sha256=8uDn6eLloVnw58Z2gA77-K8cWE0G6DGzDVEvyIqt41M,189
53
- zrb/builtin/project/add/fastapp_template/common/error.py,sha256=hgRvoCH3C7t_iZuLThiqJVs20zUasQWbH_8jDceF8nk,243
54
- zrb/builtin/project/add/fastapp_template/common/schema.py,sha256=dbRryeP5u7ObGX3GjF9ZID00yXffOp-AxyXu8oVJP0I,82
55
- zrb/builtin/project/add/fastapp_template/config.py,sha256=u183eOwdqo6gIzjr58znG8yJ1qv9F7FyqUjbsujuIzY,957
56
- zrb/builtin/project/add/fastapp_template/main.py,sha256=npRXgrPmAN32rjbykKP--Lth3PGKoaj51wTVjcl0k-w,223
57
- zrb/builtin/project/add/fastapp_template/migrate.py,sha256=bpIKOHZ0sV3sJrUznhKt72tKXe-Uoq9dJ7f2Uh7E0g8,92
58
- zrb/builtin/project/add/fastapp_template/module/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
59
- zrb/builtin/project/add/fastapp_template/module/auth/alembic.ini,sha256=mgQyBAIwdkZZJWLu_FQWPx1FkyaARCNp6-rLqSVvMbA,3723
60
- zrb/builtin/project/add/fastapp_template/module/auth/client/any_client.py,sha256=sczw_a8fgxypgBmXwEU4YJkvYxqEE0ueVdbzrncfOAc,697
61
- zrb/builtin/project/add/fastapp_template/module/auth/client/api_client.py,sha256=-4LGfStnt9V3tcZOqih-PFHgxkcl7fb0LiPx1f0h3Ew,300
62
- zrb/builtin/project/add/fastapp_template/module/auth/client/direct_client.py,sha256=Zo5qGJ4mrz0hhYJeb52JsUWQqaKIPyrpjLDvQP-O9qY,226
63
- zrb/builtin/project/add/fastapp_template/module/auth/client/factory.py,sha256=AWkvQEs9h3Hr8x9iTf7a25i9PnG8Kge4JCIqfGuS0b4,413
64
- zrb/builtin/project/add/fastapp_template/module/auth/migration/README,sha256=MVlc9TYmr57RbhXET6QxgyCcwWP7w-vLkEsirENqiIQ,38
65
- zrb/builtin/project/add/fastapp_template/module/auth/migration/env.py,sha256=66zA_MPR6CCEe3yYKDibtv4eRZx4p6ZX-8waFxmzQZE,3489
66
- zrb/builtin/project/add/fastapp_template/module/auth/migration/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvDgl93dMj8,635
67
- zrb/builtin/project/add/fastapp_template/module/auth/migration/versions/3093c7336477_add_user_table.py,sha256=j4tkh9NaTKNMefcy1dUdgRI5CzydUidli7i0Q6Ap-7Q,1021
68
- zrb/builtin/project/add/fastapp_template/module/auth/migration_metadata.py,sha256=ONHEUZn4EDxKKiOt0UD9_8g7-XujRaXX0zU_PsjHZ0c,162
69
- zrb/builtin/project/add/fastapp_template/module/auth/route.py,sha256=tS2TReMHsN3Zhnv7r4izrbLnnuXI1Xc7zklAbbIMl_0,798
70
- zrb/builtin/project/add/fastapp_template/module/auth/service/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
71
- zrb/builtin/project/add/fastapp_template/module/auth/service/user/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
72
- zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
73
- zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/factory.py,sha256=lxEjwTJlc5U7tY0E4ljSAmqEhn_0IyOdPr0vX8bIZog,469
74
- zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/user_db_repository.py,sha256=ZZ-xBGA6FgsIxPu_nXzGn33QVS1GtZbdoBDBbizsqBo,1523
75
- zrb/builtin/project/add/fastapp_template/module/auth/service/user/repository/user_repository.py,sha256=vq_1EtjC3Oosu0V9NVhzSLeazFI4PaH3na83XyQz5Wk,849
76
- zrb/builtin/project/add/fastapp_template/module/auth/service/user/user_usecase.py,sha256=4HIbWEbpCcd9T0TXmEPOjXxMTfn-2NXV4ZS49OANmzY,1927
77
- zrb/builtin/project/add/fastapp_template/module/gateway/alembic.ini,sha256=mgQyBAIwdkZZJWLu_FQWPx1FkyaARCNp6-rLqSVvMbA,3723
78
- zrb/builtin/project/add/fastapp_template/module/gateway/migration/README,sha256=MVlc9TYmr57RbhXET6QxgyCcwWP7w-vLkEsirENqiIQ,38
79
- zrb/builtin/project/add/fastapp_template/module/gateway/migration/env.py,sha256=q7KtNXDlHgO8DATx--CesiUHDcDM-oYtCyw75E7ILvs,3495
80
- zrb/builtin/project/add/fastapp_template/module/gateway/migration/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvDgl93dMj8,635
81
- zrb/builtin/project/add/fastapp_template/module/gateway/migration/versions/.gitkeep,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
82
- zrb/builtin/project/add/fastapp_template/module/gateway/migration_metadata.py,sha256=NbIb5ncy6x5RrFD2TZMDwxBK_wDTyJEIvieMRmNpf9M,55
83
- zrb/builtin/project/add/fastapp_template/module/gateway/route.py,sha256=pClO2mBmiDMps3PJEk75icnbak-nrPAt6eN-1WlC9QA,1176
84
- zrb/builtin/project/add/fastapp_template/requirements.txt,sha256=-rpbofHYXJirTm27SD-6AUoCZO0XKaStfLz57YXC1J8,90
85
- zrb/builtin/project/add/fastapp_template/schema/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
86
- zrb/builtin/project/add/fastapp_template/schema/permission.py,sha256=9ZwJrPYHY04yrzFuNQLf3KnO3zMU8MFH3B1pMwoePzE,623
87
- zrb/builtin/project/add/fastapp_template/schema/role.py,sha256=tbpF67NsX3K7WNsxtx-3b0ClRnOo7pkTxdNs5UEn8oo,581
88
- zrb/builtin/project/add/fastapp_template/schema/user.py,sha256=5yiBVTuf9FcU7i_nM4sRRFztMhXCg0W1YAjnVlPgVRE,556
89
- zrb/builtin/project/add/fastapp_template/template.env,sha256=DquDUGa12Jzg24ATq_I6M-TglO-2vDwr5kE768DoJ-w,61
90
- zrb/builtin/project/create/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
91
- zrb/builtin/project/create/create.py,sha256=VoqKAtXOK69-Yq6rfxnUp6MeDOjv_dKiMvAAWqP9ZoY,1143
92
- zrb/builtin/project/create/project-template/README.md,sha256=BHeWF_txdTDzKewWdWfGhO3YOTiW8E3YwTMnd0T1LVA,39
93
- zrb/builtin/project/create/project-template/zrb_init.py,sha256=kY0x5MrkIVl3l1GtN2ROrYGNpsfN2dgRT84LCcSrGUs,44
94
- zrb/builtin/python.py,sha256=herHFZl5wHsMFcqHhpisg9Ql3pQXqoCuTTwzNUTXzkw,281
95
- zrb/builtin/setup/asdf/asdf.py,sha256=n_dWoyYa7vZ9tBCy8hgxmSWZ-XHltC1R70mIVZQhnXY,2419
96
- zrb/builtin/setup/asdf/asdf_helper.py,sha256=804vfpsDPH3bpOmpAZyGxJdtwcmxNvuj9i0vaIW2qNI,1318
97
- zrb/builtin/setup/common_input.py,sha256=M8q9Unt7dCfBHTHqV3__Mxk9YC2Pl3DDtxat2BanZCQ,870
98
- zrb/builtin/setup/latex/ubuntu.py,sha256=er9wJAT4CpmghIaiIPFb3FvgqAn1aqU5UgX7GHL3FjA,577
99
- zrb/builtin/setup/tmux/tmux.py,sha256=-MEIGP2OwM55Fi-ug1TjMgQGiTbwKlQ6aASSLLjjz7A,1630
100
- zrb/builtin/setup/tmux/tmux_config.sh,sha256=wQCb4Q-mNkxIPOcvpN84X9RUWkGY16u3Vd-pOhVidgg,416
101
- zrb/builtin/setup/tmux/tmux_helper.py,sha256=M03l0wfL25TzGGp6lnVfX40ayT_x7N2lz-nz2chO7PU,396
102
- zrb/builtin/setup/ubuntu.py,sha256=oOSN7Eq7arEpY2i0vWHPR2owio6dqqOvceteYrgmbYw,1019
103
- zrb/builtin/shell/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
104
- zrb/builtin/shell/autocomplete/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
105
- zrb/builtin/shell/autocomplete/bash.py,sha256=-7YDVV7txgJH9mAYSYN0jmvUEeDIzWFvVNY-cY0myF8,1181
106
- zrb/builtin/shell/autocomplete/subcmd.py,sha256=WZI6cGWJcn80zSyxOHG7sCMO3Ucix3mZf4xm_xyB_Y0,606
107
- zrb/builtin/shell/autocomplete/zsh.py,sha256=9hlq0Wt3fhRz326mAQTypEd4_4lZdrbBx_3A-Ti3mvw,1022
108
- zrb/builtin/todo.py,sha256=nPt_F1d2uurX8jBdpLp8PP0EbYAJN7_4CYqDNqknGOI,10053
109
- zrb/callback/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
110
- zrb/callback/any_callback.py,sha256=Yhdv5UWHAZSVzj5K2JdxcVQx8x8VX8aZJEivj3NTfZc,247
111
- zrb/callback/callback.py,sha256=IQ7r9EnXYHHcNXKBJAk4WFqCqj7WDvflAuCyu5y-27I,849
112
- zrb/cmd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
113
- zrb/cmd/cmd_result.py,sha256=L8bQJzWCpcYexIxHBNsXj2pT3BtLmWex0iJSMkvimOA,597
114
- zrb/cmd/cmd_val.py,sha256=LGuE85zQt0KSjpmW7bwIE5dnfIq-ULB8V2CDAiQ-SFk,960
115
- zrb/config.py,sha256=dlS_ouMmDpct427c8wjjoS2iWTLlotTCqX1Q9ScJRJI,3025
116
- zrb/content_transformer/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
117
- zrb/content_transformer/any_content_transformer.py,sha256=3XHM6ZdsJFXxRD7YlUkv0Gn7-mexsH8c8zdHt3C0x8k,741
118
- zrb/content_transformer/content_transformer.py,sha256=EMwUWcBiN9Bn2wZtusqUKLe8gjTryaD8qf-OMP0A1tM,1981
119
- zrb/context/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
120
- zrb/context/any_context.py,sha256=KZy6NtX9cg7r9FCY-wHMTx5RNoDqH5077Rjv56Wdp4M,6245
121
- zrb/context/any_shared_context.py,sha256=p1i9af_CUDz5Mf1h1kBZMAa2AEhf17I3O5IgAcjRLoY,1768
122
- zrb/context/context.py,sha256=RWjluPpNBAZ_qjfza5fP-ScnEsZk2pD5rroYWQSfjAE,6201
123
- zrb/context/shared_context.py,sha256=47Tnnor1ttpwpe_N07rMNM1jgIYPY9abMe1Q5igkMtE,2735
124
- zrb/dot_dict/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
125
- zrb/dot_dict/dot_dict.py,sha256=ubw_x8I7AOJ59xxtFVJ00VGmq_IYdZP3mUhNlO4nEK0,556
126
- zrb/env/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
127
- zrb/env/any_env.py,sha256=_Xd56VO09mPeogkWcZ7H8mQkWU7dmZP7ImKfxPfvlLQ,211
128
- zrb/env/env.py,sha256=zT-xj0l5G_lp_ginV_InuBr5qTqZMcGaMKE_p5FoqlU,1061
129
- zrb/env/env_file.py,sha256=dccsR_cjXp1Q_qz692YPaZSny3Xa049V5NAZ-WLDDEQ,746
130
- zrb/env/env_map.py,sha256=CKMmXUbuvf6h2rgFWj-WvW_xLZNgG3TtWdfrqHDe4qk,1253
131
- zrb/group/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
132
- zrb/group/any_group.py,sha256=1rNcsi5eu_86JAx_6Jy46SK4BTeppcb89MORynJd-4o,1115
133
- zrb/group/group.py,sha256=KVaBZQ9Evihm84JCg5ZayWMbbA6iNTUiLmMgCk4OTcc,1862
134
- zrb/input/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
135
- zrb/input/any_input.py,sha256=07KgoPusxLMOwBHRjiImL955J33qC-24qGf_3My6fCE,701
136
- zrb/input/base_input.py,sha256=OU6j8RQhpMT6mboBf57jjrBHQLsPXHpAfy-u0NgayKw,2597
137
- zrb/input/bool_input.py,sha256=m_mwzFtcAs26QIjVSiEDcqTQBukRtQ535RPGmH-b1_A,1384
138
- zrb/input/float_input.py,sha256=FqpAIsszHw7-eFyOzVmXaXNcCCLEL1_M3XwsevsNWX0,1005
139
- zrb/input/int_input.py,sha256=1knorHwOvSLuCPkcqA9iuYQG6Huy-8Vel5JNZqEFc44,1006
140
- zrb/input/option_input.py,sha256=xG0K6uQCqEpsO0pRsOyPWPEE77PYl65t2VwtCfeHYbA,1941
141
- zrb/input/password_input.py,sha256=C0h3kWJDI5KdXXQa-IXTQzyuCfjbx5tO34mn7kjmf2M,1313
142
- zrb/input/str_input.py,sha256=NevZHX9rf1g8eMatPyy-kUX3DglrVAQpzvVpKAzf7bA,81
143
- zrb/input/text_input.py,sha256=ju-DgBRK3RpuWNomZXcw3V5QAgaMGeTFaNn_MKM13Xc,3055
144
- zrb/runner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
145
- zrb/runner/cli.py,sha256=iDO4Be9WoBmvhHyW6ADywnfgSuf6OchiyubH4IqVGMs,7593
146
- zrb/runner/web_app.py,sha256=MgZ8xAIg8y2sdofiSTlK64Bb_2JZcqx1_hhbhrp-WUg,6356
147
- zrb/runner/web_controller/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
148
- zrb/runner/web_controller/group_info_ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
149
- zrb/runner/web_controller/group_info_ui/controller.py,sha256=sI1UKnRcr5K-a_lGMm5H54hbhdQwIMLlXYmwfxoIqSY,2831
150
- zrb/runner/web_controller/group_info_ui/partial/group_info.html,sha256=njcPd6_imhPiUy3eGqtDpY_oX2R9nEh2dJQsh5PAl3M,35
151
- zrb/runner/web_controller/group_info_ui/partial/group_li.html,sha256=n9d_EBEMUg1rGmNhkYloCwc1jHmwovw3ScxEB_fNL-w,61
152
- zrb/runner/web_controller/group_info_ui/partial/task_info.html,sha256=dKHHuLIXi37XBbq0Xv2mYFcmJ3oAmz5vH1yKgpunfdE,34
153
- zrb/runner/web_controller/group_info_ui/partial/task_li.html,sha256=x5Pqa_iN0IyUvzojseGUrHm2Y-xUeO8OFb7Zagui2g0,62
154
- zrb/runner/web_controller/group_info_ui/view.html,sha256=7yIMx0yxSsmdmwPvXkm8tLgbmw7iqW068xzfFROmh9Y,836
155
- zrb/runner/web_controller/home_page/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
156
- zrb/runner/web_controller/home_page/controller.py,sha256=5JULWw3ZibK4Y5FkX2qPJD67TeFUGvbJ3ifSqUTTCY0,2246
157
- zrb/runner/web_controller/home_page/partial/group_info.html,sha256=njcPd6_imhPiUy3eGqtDpY_oX2R9nEh2dJQsh5PAl3M,35
158
- zrb/runner/web_controller/home_page/partial/group_li.html,sha256=gHF-RP8LG2ur8_mo1JwPXAZWvPM8BevAsdYrsv0uN6U,60
159
- zrb/runner/web_controller/home_page/partial/task_info.html,sha256=dKHHuLIXi37XBbq0Xv2mYFcmJ3oAmz5vH1yKgpunfdE,34
160
- zrb/runner/web_controller/home_page/partial/task_li.html,sha256=m-fs4VhbX27fZKgxBA0_Gv_Utntq5aaXD4sFk3zNMlk,61
161
- zrb/runner/web_controller/home_page/view.html,sha256=RuYx2V52_kTzb4Fkjpc2H97ZpSvlSB8ElbMng2uMDUI,606
162
- zrb/runner/web_controller/static/favicon-32x32.png,sha256=yu9AIU4k_qD4YHpul6XwJgOxIbmu0thv9ymm2QOsrAk,1456
163
- zrb/runner/web_controller/static/pico.min.css,sha256=3V_VWRr9ge4h3MEXrYXAFNw_HxncLXt9EB6grMKSdMI,82194
164
- zrb/runner/web_controller/task_ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
165
- zrb/runner/web_controller/task_ui/controller.py,sha256=YvVkY5LWxOgR0oqvCrr_tFNLD7lE1vghUflZcP9htw0,2627
166
- zrb/runner/web_controller/task_ui/partial/common-util.js,sha256=Un5HxlFMzNa16UBJZEWvEldFJaZpt6O3Qddd9Zlw0Io,931
167
- zrb/runner/web_controller/task_ui/partial/input.html,sha256=DDOCdHfwrU8ZF1SSNb0KDaQzbhzn-gipEGaa_ZH5k9I,154
168
- zrb/runner/web_controller/task_ui/partial/main.js,sha256=3rjahRpypoQ6U2FwDTg21Zx7qt9zfbgzSxk6b6mNOQY,6514
169
- zrb/runner/web_controller/task_ui/partial/show-existing-session.js,sha256=o5J-O5poWMIL1ujBXparwA4YalFuGXyA8S_wFw8obsM,3637
170
- zrb/runner/web_controller/task_ui/partial/visualize-history.js,sha256=xKFmE-eXy9PXTWXhG_aQZ15DWStSGRrA8xzHntO-rmY,3916
171
- zrb/runner/web_controller/task_ui/view.html,sha256=SARL-Dt03ar8IT9RJt7ULJLsjRm5u8K_F4VFwQwhxAs,2668
172
- zrb/runner/web_util.py,sha256=FBMnS7qMp31ogm0pCZBObNjrlopIwzYM7UuZjCX1n8Q,428
173
- zrb/session/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
174
- zrb/session/any_session.py,sha256=x57mS15E-AfUjdVxwOWEzCBjW32zjer7WoeBw0guoDc,5266
175
- zrb/session/session.py,sha256=b89UdwPs0U9XXmTHNhCXFmcYXxuRVhNr94Dp_bVO3n4,9827
176
- zrb/session_state_log/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
177
- zrb/session_state_log/session_state_log.py,sha256=VVghDMU72PbrvnzQ7MJuc-KTJ5P5fX0FYuCh3Rlwd9M,709
178
- zrb/session_state_logger/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
179
- zrb/session_state_logger/any_session_state_logger.py,sha256=W_G1fCw9ZVj4LRTplTpBZlXR-wNueGtc26jF5Gzmh74,611
180
- zrb/session_state_logger/default_session_state_logger.py,sha256=w_cAaNUg1ZmJk-ge1kh3xtag3SApC3ZdB3VbxUvU5Ro,197
181
- zrb/session_state_logger/file_session_state_logger.py,sha256=0lMtx7Othu4-jhL_iDHFbZWF_5HX84StU134QNCVgeQ,3753
182
- zrb/task/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
183
- zrb/task/any_task.py,sha256=9rCdKe-Sayr34Han9AsbhRxFpkbk6Rteg1DOyETulwQ,4917
184
- zrb/task/base_task.py,sha256=Vn_MTR5aa3jIEWmh5LXpzezh-JwaEXPbjGKptx-Q-U8,19161
185
- zrb/task/base_trigger.py,sha256=milE5BNeIeq8jGCP38qTfstSvrc0CkSnO2sV-vlhzsM,4491
186
- zrb/task/cmd_task.py,sha256=C_MxuBp51cx9rYR5OLMLNfI_FIAtJL176uaFZszjT1E,10185
187
- zrb/task/http_check.py,sha256=TwQCql3589a4-H2c7hgS1HayyU-NdBAdJ4qQNTvjXHM,2474
188
- zrb/task/llm_task.py,sha256=-OpLLXl39H1diHlPq1S8uiIwfQk_TY7nN8GHKqL4_m4,8643
189
- zrb/task/make_task.py,sha256=ldXRfe3rA8utJrEPjWrie-_tg6NM2G8sFnZ0UNqzT08,2179
190
- zrb/task/rsync_task.py,sha256=vENITMBXShKgj-NNgjM8eUK2ujU3wD8MUvyS_69ePEA,6227
191
- zrb/task/scaffolder.py,sha256=Z7Jcr2QfkI4zfnzRW5xpXaTWMeQN_HNL11oovb9FJ0c,6134
192
- zrb/task/scheduler.py,sha256=kggRClk_RrAa5fAHfkqM6c-e2tUQiFSeyeLuFT26UZ4,3047
193
- zrb/task/task.py,sha256=KCrCaWYOQQvv1RJsYtHDeo9RBFmlXQ28oKyEFU4Q7pA,73
194
- zrb/task/tcp_check.py,sha256=UQ3rMrwDwhuvz-lf1qx6Z3D4mWPqdJIjxqcIKCOKVes,2420
195
- zrb/task_status/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
196
- zrb/task_status/task_status.py,sha256=aRygkj0DKrOYWgz2eF5wNmYcpVbLeklxL521BqIQN4A,3005
197
- zrb/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
198
- zrb/util/attr.py,sha256=HkXd2N-eUXw2o4WWWJpo2q8N0kS7k08jsMLXpK_3zq0,2353
199
- zrb/util/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
200
- zrb/util/cli/style.py,sha256=wxdtE18d4Q3GV7aojinD-XN9iWvazfvLs9MTJPlCNQU,3805
201
- zrb/util/cli/subcommand.py,sha256=gYr-CzVeKFQhY43s_FDstPwn8r-ypUz1Q2Rv_l2r-ck,1027
202
- zrb/util/cmd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
203
- zrb/util/cmd/command.py,sha256=B5cwzDKo63G-5lEeTStsBf24B4PoWRWgC63hUnJLAO0,3433
204
- zrb/util/cmd/remote.py,sha256=VklVORobTmE7FqdtYsVLq9xkSYTR2W5r2Zou0-soidw,710
205
- zrb/util/codemod/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
206
- zrb/util/codemod/add_code_to_class.py,sha256=jg-ISD3sHCecOJ1CCJGR9quizRgvzddKH9GZ33-IQ1A,1358
207
- zrb/util/codemod/add_code_to_function.py,sha256=iJT-cDxS_H72j3ec03Lqmm4YPe-6svB2314ooJljtvQ,1482
208
- zrb/util/codemod/add_code_to_method.py,sha256=TiYj9N0eMi3dutwQw_y4gnu1G6PW_-fZDqHatvZxJDo,2359
209
- zrb/util/codemod/add_code_to_module.py,sha256=rk4JrCjadsvRf4Qh67yUCM5bENkUYc_P5jODT5bCiKg,517
210
- zrb/util/codemod/add_key_to_dict.py,sha256=ROw7Ds73gP5G5vOYlSqcHGUQQmJP_6Vb2jPnV2kZPQM,2110
211
- zrb/util/codemod/add_param_to_function_call.py,sha256=cNC16uYbkjl33QEZ7i3pYvifGJXSXEoyfyCYx96S8ZI,1567
212
- zrb/util/codemod/add_parent_to_class.py,sha256=xHLKAYDUShiaShocZTrIUUFbEw0obKRVB7WX5ktQ0kc,1416
213
- zrb/util/codemod/add_property_to_class.py,sha256=43ll7b7SUWHPDpIoMp8Zp_I71wG1eAvnW_acp-HVF_4,2075
214
- zrb/util/cron.py,sha256=9fTGatUMYCRgmDFGg-z6_XerT4U5Vq72nD05NnEVUm4,2852
215
- zrb/util/git.py,sha256=o_kLF1fySv5uQdLlhY-ztc-z0zLOdcDf0IpuPAl2ciA,4733
216
- zrb/util/git_subtree.py,sha256=Y-R02FPSY51M2XYqlDjEfXLkaE-c-yNPv8fKLHJRfT8,2646
217
- zrb/util/group.py,sha256=Bg7HrSycoK110U5s_Tca6-uUQuZ5CMgb8wxZSrvDQ98,2790
218
- zrb/util/llm/tool.py,sha256=9ezbPEAyMKLWABgeqAimJ82KBFl7ciWNFVGhtllXg6s,2106
219
- zrb/util/load.py,sha256=i8_83ApWJXlZlbFMNfEptrOzfXdvtaIhAErsd6tU9y8,1649
220
- zrb/util/run.py,sha256=DGHUP9x1Q8V8UF3FbpmjLGuhVVCCLfjTH2teT8qXlNI,207
221
- zrb/util/string/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
222
- zrb/util/string/conversion.py,sha256=636sfF1a3_bpzXNw5bdSzbJzwakyAoo70KT3_ItgZEo,4333
223
- zrb/util/string/format.py,sha256=c9dUrsl_DII7jZZPJi9NBTvxKnrzZDPcQuksW6FJ_Lk,611
224
- zrb/util/string/name.py,sha256=8picJfUBXNpdh64GNaHv3om23QHhUZux7DguFLrXHp8,1163
225
- zrb/util/todo.py,sha256=LharTudwr1gTNmt8iDUkQ6u21bGaCqVJh54Txe0bMOk,13529
226
- zrb/xcom/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
227
- zrb/xcom/xcom.py,sha256=P4aYHdE3FRsTsNrXGyW8N44IWZjw-vG_qys1Ymn3aBg,1572
228
- zrb-1.0.0a16.dist-info/METADATA,sha256=ALjKghi3BpZM9lzDaDcwVzjBh4zrKuvKszI6vU_jhKg,4106
229
- zrb-1.0.0a16.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
230
- zrb-1.0.0a16.dist-info/entry_points.txt,sha256=-Pg3ElWPfnaSM-XvXqCxEAa-wfVI6BEgcs386s8C8v8,46
231
- zrb-1.0.0a16.dist-info/RECORD,,