ApiLogicServer 14.4.0__py3-none-any.whl → 14.5.0__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 (107) hide show
  1. api_logic_server_cli/add_cust/add_cust.py +283 -0
  2. api_logic_server_cli/api_logic_server.py +15 -237
  3. api_logic_server_cli/api_logic_server_info.yaml +3 -3
  4. api_logic_server_cli/cli.py +38 -28
  5. api_logic_server_cli/create_from_model/__pycache__/api_logic_server_utils.cpython-312.pyc +0 -0
  6. api_logic_server_cli/create_from_model/__pycache__/dbml.cpython-312.pyc +0 -0
  7. api_logic_server_cli/create_from_model/__pycache__/ont_build.cpython-312.pyc +0 -0
  8. api_logic_server_cli/create_from_model/__pycache__/ont_create.cpython-312.pyc +0 -0
  9. api_logic_server_cli/create_from_model/api_logic_server_utils.py +47 -0
  10. api_logic_server_cli/create_from_model/dbml.py +113 -58
  11. api_logic_server_cli/create_from_model/ont_build.py +83 -60
  12. api_logic_server_cli/create_from_model/ont_create.py +2 -1
  13. api_logic_server_cli/database/basic_demo.sqlite +0 -0
  14. api_logic_server_cli/database/basic_demo.txt +1 -0
  15. api_logic_server_cli/database/basic_demo_wg.sqlite +0 -0
  16. api_logic_server_cli/manager.py +3 -2
  17. api_logic_server_cli/prototypes/base/.vscode/launch.json +3 -2
  18. api_logic_server_cli/prototypes/base/config/config.py +66 -11
  19. api_logic_server_cli/prototypes/base/config/default.env +7 -1
  20. api_logic_server_cli/prototypes/base/database/test_data/readme.md +2 -1
  21. api_logic_server_cli/prototypes/base/integration/kafka/kafka_producer.py +5 -2
  22. api_logic_server_cli/prototypes/base/integration/n8n/n8n_producer.py +68 -21
  23. api_logic_server_cli/prototypes/base/integration/n8n/n8n_readme.md +19 -0
  24. api_logic_server_cli/prototypes/base/test/basic/server_test.py +1 -1
  25. api_logic_server_cli/prototypes/basic_demo/README.md +29 -52
  26. api_logic_server_cli/prototypes/basic_demo/customizations/api/.DS_Store +0 -0
  27. api_logic_server_cli/prototypes/basic_demo/customizations/api/api_discovery/mcp_server_executor.py +138 -0
  28. api_logic_server_cli/prototypes/basic_demo/customizations/api/api_discovery/openapi.py +92 -0
  29. api_logic_server_cli/prototypes/basic_demo/customizations/api/api_discovery/proper_update_def.json +71 -0
  30. api_logic_server_cli/prototypes/basic_demo/customizations/config/default.env +13 -0
  31. api_logic_server_cli/prototypes/basic_demo/customizations/database/db.sqlite +0 -0
  32. api_logic_server_cli/prototypes/basic_demo/customizations/database/models.py +131 -0
  33. api_logic_server_cli/prototypes/basic_demo/customizations/integration/.DS_Store +0 -0
  34. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/.DS_Store +0 -0
  35. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/1_langchain_loader.py +71 -0
  36. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/README_mcp.md +13 -0
  37. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/mcp_client_executor.py +295 -0
  38. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/mcp_schema.txt +47 -0
  39. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/mcp_server_discovery.json +9 -0
  40. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/multi_mcp_flow/multi_mcp_flow.png +0 -0
  41. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/multi_mcp_flow/multi_mcp_orchestration.yaml +49 -0
  42. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/multi_mcp_flow/wny mcp flows.png +0 -0
  43. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/natlang_to_api.py +73 -0
  44. api_logic_server_cli/prototypes/{nw_no_cust → basic_demo/customizations}/integration/mcp/resources/curl.txt +2 -1
  45. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/resources/images/MCP Overview.png +0 -0
  46. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/resources/images/MCP_Arch.png +0 -0
  47. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/resources/images/MCP_Overview_Executor.png +0 -0
  48. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/resources/invoke_llm/1 - prompt_messages_array.json +10 -0
  49. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/resources/invoke_llm/2 - completion_tool_context.json +12 -0
  50. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/resources/llm_schema.txt +38 -0
  51. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/resources/nw_swagger_2.yaml +17393 -0
  52. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/resources/nw_swagger_3_relaxed.yaml +109 -0
  53. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/resources/proxy_server.py +51 -0
  54. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/resources/proxy_serverZ.py +72 -0
  55. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/resources/validate_jsonapi.py +64 -0
  56. api_logic_server_cli/prototypes/basic_demo/customizations/integration/mcp/swagger_converter.py +65 -0
  57. api_logic_server_cli/prototypes/{nw_no_cust/integration/mcp → basic_demo/customizations/integration/mcp/z_old}/3_executor_test_agent.py +20 -6
  58. api_logic_server_cli/prototypes/basic_demo/customizations/integration/openai_function/3_executor_test_agent.py +52 -0
  59. api_logic_server_cli/prototypes/basic_demo/customizations/integration/openai_function/README_functon.md +201 -0
  60. api_logic_server_cli/prototypes/basic_demo/customizations/integration/openai_function/ai_plugin.json +17 -0
  61. api_logic_server_cli/prototypes/basic_demo/customizations/integration/openai_function/nw-swagger_3.json +1731 -0
  62. api_logic_server_cli/prototypes/basic_demo/customizations/integration/openai_function/snippets.txt +5 -0
  63. api_logic_server_cli/prototypes/basic_demo/customizations/integration/openai_function/swagger_3 genai_demo_with_get.json +1731 -0
  64. api_logic_server_cli/prototypes/basic_demo/customizations/integration/openai_function/swagger_3.json +1782 -0
  65. api_logic_server_cli/prototypes/basic_demo/customizations/integration/openai_function/swagger_3_genai_demo.json +264 -0
  66. api_logic_server_cli/prototypes/basic_demo/customizations/integration/openai_function/swagger_3_genai_demo_with_update.json +1782 -0
  67. api_logic_server_cli/prototypes/basic_demo/customizations/logic/declare_logic.py +62 -44
  68. api_logic_server_cli/prototypes/basic_demo/customizations/security/declare_security.py +11 -12
  69. api_logic_server_cli/prototypes/basic_demo/customizations/ui/admin/admin.yaml +166 -0
  70. api_logic_server_cli/prototypes/basic_demo/iteration/api/{customize_api.py → api_discovery/order_b2b.py} +17 -23
  71. api_logic_server_cli/prototypes/basic_demo/iteration/database/db.sqlite +0 -0
  72. api_logic_server_cli/prototypes/basic_demo/iteration/integration/row_dict_maps/OrderB2B.py +6 -5
  73. api_logic_server_cli/prototypes/basic_demo/iteration/integration/row_dict_maps/OrderShipping.py +4 -4
  74. api_logic_server_cli/prototypes/basic_demo/iteration/logic/declare_logic.py +69 -43
  75. api_logic_server_cli/prototypes/basic_demo/iteration/ui/admin/admin.yaml +125 -50
  76. api_logic_server_cli/prototypes/manager/README.md +4 -0
  77. api_logic_server_cli/prototypes/manager/README_X.md +663 -0
  78. api_logic_server_cli/prototypes/nw_no_cust/Tutorial.md +45 -26
  79. api_logic_server_cli/prototypes/nw_no_cust/api/api_discovery/openapi.py +130 -0
  80. api_logic_server_cli/prototypes/nw_no_cust/api/api_discovery/proper_update_def.json +71 -0
  81. api_logic_server_cli/prototypes/nw_no_cust/config/default.env +13 -0
  82. api_logic_server_cli/prototypes/ont_app/ontimize_seed/package-lock.json +9725 -1180
  83. api_logic_server_cli/prototypes/ont_app/ontimize_seed/package.json +3 -6
  84. api_logic_server_cli/prototypes/ont_app/ontimize_seed/src/app/shared/app.services.config.ts +1 -1
  85. api_logic_server_cli/prototypes/ont_app/ontimize_seed/src/assets/css/app.scss +4 -0
  86. api_logic_server_cli/prototypes/ont_app/ontimize_seed/src/assets/i18n/en.json +1 -1
  87. api_logic_server_cli/prototypes/ont_app/ontimize_seed/src/assets/i18n/es.json +14 -12
  88. api_logic_server_cli/prototypes/ont_app/templates/app_config.jinja +1 -1
  89. api_logic_server_cli/prototypes/ont_app/templates/date_template.html +1 -1
  90. api_logic_server_cli/prototypes/ont_app/templates/textarea_template.html +1 -1
  91. api_logic_server_cli/prototypes/ont_app/templates/timestamp_template.html +1 -1
  92. api_logic_server_cli/prototypes/sample_ai/logic/declare_logic.py +30 -13
  93. {apilogicserver-14.4.0.dist-info → apilogicserver-14.5.0.dist-info}/METADATA +2 -2
  94. {apilogicserver-14.4.0.dist-info → apilogicserver-14.5.0.dist-info}/RECORD +101 -60
  95. {apilogicserver-14.4.0.dist-info → apilogicserver-14.5.0.dist-info}/WHEEL +1 -1
  96. api_logic_server_cli/prototypes/basic_demo/apply_customizations.ps1 +0 -17
  97. api_logic_server_cli/prototypes/basic_demo/apply_customizations.sh +0 -14
  98. api_logic_server_cli/prototypes/basic_demo/apply_iteration.ps1 +0 -20
  99. api_logic_server_cli/prototypes/basic_demo/apply_iteration.sh +0 -15
  100. api_logic_server_cli/prototypes/nw_no_cust/integration/mcp/1_langchain_loader.py +0 -19
  101. api_logic_server_cli/prototypes/nw_no_cust/integration/mcp/README.md +0 -17
  102. /api_logic_server_cli/prototypes/{nw_no_cust → basic_demo/customizations}/integration/mcp/2_gpt_mcp_prompt.txt +0 -0
  103. /api_logic_server_cli/prototypes/{nw_no_cust → basic_demo/customizations}/integration/mcp/resources/nw_swagger_3.yaml +0 -0
  104. /api_logic_server_cli/prototypes/{nw_no_cust → basic_demo/customizations}/integration/mcp/run_executor.py +0 -0
  105. {apilogicserver-14.4.0.dist-info → apilogicserver-14.5.0.dist-info}/entry_points.txt +0 -0
  106. {apilogicserver-14.4.0.dist-info → apilogicserver-14.5.0.dist-info}/licenses/LICENSE +0 -0
  107. {apilogicserver-14.4.0.dist-info → apilogicserver-14.5.0.dist-info}/top_level.txt +0 -0
@@ -1,105 +1,180 @@
1
1
  about:
2
- date: November 07, 2023 19:47:04
2
+ date: May 13, 2025 20:12:31
3
3
  merged:
4
- at: November 07, 2023 19:48:02
5
- new_attributes: 'Product.CarbonNeutral '
6
- new_resources: ''
7
- new_tab_groups: ''
4
+ at: May 13, 2025 20:15:21
5
+ new_attributes: 'Customer.email Order.CreatedOn '
6
+ new_resources: 'Email '
7
+ new_tab_groups: 'Customer.EmailList '
8
8
  recent_changes: works with modified safrs-react-admin
9
9
  version: 0.0.0
10
10
  api_root: '{http_type}://{swagger_host}:{port}/{api}'
11
- authentication:
12
- endpoint: '{http_type}://{swagger_host}:{port}/api/auth/login'
11
+ authentication: '{system-default}'
13
12
  info:
14
- number_relationships: 3
15
- number_tables: 4
13
+ number_relationships: 4
14
+ number_tables: 5
15
+ info_toggle_checked: true
16
16
  resources:
17
17
  Customer:
18
18
  attributes:
19
- - label: ' Name*'
20
- name: Name
21
- required: true
19
+ - label: ' name*'
20
+ name: name
22
21
  search: true
23
22
  sort: true
24
- - name: Balance
25
- - name: CreditLimit
26
- - name: Region
27
- - name: ContactName
28
- - name: CustomerID
23
+ - name: balance
24
+ type: DECIMAL
25
+ - name: credit_limit
26
+ type: DECIMAL
27
+ - name: id
28
+ - name: email
29
+ - name: email_opt_out
30
+ type: BOOLEAN
31
+ description: Defines the Customer entity with a unique name, balance, and credit
32
+ limit.
33
+ info_list: Defines the Customer entity with a unique name, balance, and credit
34
+ limit.
29
35
  tab_groups:
30
36
  - direction: tomany
31
37
  fks:
32
- - CustomerID
38
+ - customer_id
33
39
  name: OrderList
34
40
  resource: Order
41
+ - direction: tomany
42
+ fks:
43
+ - customer_id
44
+ name: EmailList
45
+ resource: Email
35
46
  type: Customer
36
- user_key: Name
47
+ user_key: name
48
+ Email:
49
+ attributes:
50
+ - label: ' id*'
51
+ name: id
52
+ search: true
53
+ sort: true
54
+ - name: customer_id
55
+ required: true
56
+ - name: message
57
+ - name: CreatedOn
58
+ type: DATE
59
+ tab_groups:
60
+ - direction: toone
61
+ fks:
62
+ - customer_id
63
+ name: customer
64
+ resource: Customer
65
+ type: Email
66
+ user_key: id
37
67
  Item:
38
68
  attributes:
39
- - label: ' Item I D*'
40
- name: ItemID
69
+ - label: ' id*'
70
+ name: id
41
71
  search: true
42
72
  sort: true
43
- - name: OrderID
44
- - name: ProductID
45
- - name: Quantity
46
- - name: Amount
47
- - name: UnitPrice
73
+ - name: order_id
74
+ - name: product_id
75
+ required: true
76
+ - name: quantity
77
+ required: true
78
+ - name: amount
79
+ type: DECIMAL
80
+ - name: unit_price
81
+ type: DECIMAL
82
+ description: Defines the Item entity with quantity, amounts, and unit price details.
83
+ info_list: Defines the Item entity with quantity, amounts, and unit price details.
48
84
  tab_groups:
49
85
  - direction: toone
50
86
  fks:
51
- - OrderID
52
- name: Order
87
+ - order_id
88
+ name: order
53
89
  resource: Order
54
90
  - direction: toone
55
91
  fks:
56
- - ProductID
57
- name: Product
92
+ - product_id
93
+ name: product
58
94
  resource: Product
59
95
  type: Item
60
- user_key: ItemID
96
+ user_key: id
61
97
  Order:
62
98
  attributes:
63
- - label: ' Order I D*'
64
- name: OrderID
99
+ - label: ' id*'
100
+ name: id
65
101
  search: true
66
102
  sort: true
67
- - name: CustomerID
68
- - name: AmountTotal
69
- - name: ShipDate
103
+ - name: customer_id
104
+ required: true
105
+ - name: notes
106
+ - name: amount_total
107
+ type: DECIMAL
108
+ - name: date_shipped
70
109
  type: DATE
71
- - name: Notes
110
+ - name: CreatedOn
111
+ type: DATE
112
+ description: Defines the Order entity which belongs to a customer. Includes notes
113
+ and amount total.
114
+ info_list: Defines the Order entity which belongs to a customer. Includes notes
115
+ and amount total.
72
116
  tab_groups:
73
117
  - direction: tomany
74
118
  fks:
75
- - OrderID
119
+ - order_id
76
120
  name: ItemList
77
121
  resource: Item
78
122
  - direction: toone
79
123
  fks:
80
- - CustomerID
81
- name: Customer
124
+ - customer_id
125
+ name: customer
82
126
  resource: Customer
83
127
  type: Order
84
- user_key: OrderID
128
+ user_key: id
85
129
  Product:
86
130
  attributes:
87
- - label: ' Name*'
88
- name: Name
89
- required: true
131
+ - label: ' name*'
132
+ name: name
90
133
  search: true
91
134
  sort: true
92
- - name: UnitPrice
93
- - name: ProductID
94
- - name: CarbonNeutral
135
+ - name: unit_price
136
+ type: DECIMAL
137
+ - name: carbon_neutral
138
+ type: BOOLEAN
139
+ - name: id
140
+ description: Defines the Product entity with a unique name and unit price.
141
+ info_list: Defines the Product entity with a unique name and unit price.
95
142
  tab_groups:
96
143
  - direction: tomany
97
144
  fks:
98
- - ProductID
145
+ - product_id
99
146
  name: ItemList
100
147
  resource: Item
101
148
  type: Product
102
- user_key: Name
149
+ user_key: name
103
150
  settings:
104
- HomeJS: http://localhost:5656/admin-app/home.js
151
+ HomeJS: /admin-app/home.js
105
152
  max_list_columns: 8
153
+ style_guide:
154
+ applicationLocales:
155
+ - en
156
+ - es
157
+ currency_symbol: $
158
+ currency_symbol_position: left
159
+ date_format: LL
160
+ decimal_max: '1000000000'
161
+ decimal_min: '2'
162
+ decimal_separator: .
163
+ detail_mode: tab
164
+ edit_on_mode: dblclick
165
+ exclude_listpicker: false
166
+ include_translation: 'false'
167
+ keycloak_client_id: alsclient
168
+ keycloak_realm: kcals
169
+ keycloak_url: http://localhost:8080
170
+ locale: en
171
+ max_decimal_digits: '4'
172
+ min_decimal_digits: '2'
173
+ new_mode: dialog
174
+ pick_style: list
175
+ row_height: small,
176
+ serviceType: JSONAPI
177
+ startSessionPath: /auth/login
178
+ style: light
179
+ thousand_separator: ','
180
+ use_keycloak: 'false'
@@ -79,6 +79,10 @@ Created projects use standard Flask and SQLAlchemy; automation is provided by Lo
79
79
  als create --project-name=basic_demo --db-url=basic_demo
80
80
  ```
81
81
 
82
+ <br>The self-demo provides:
83
+ 1. A quick look at logic, security and integration
84
+ 2. Integration includes Kafka and MCP (**[Model Context Protocol](https://apilogicserver.github.io/Docs/Integration-MCP/)**)
85
+
82
86
  <br>To create a larger project, try the pre-installed [**northwind database**](https://apilogicserver.github.io/Docs/Tutorial/) (imagine your own database here):
83
87
 
84
88
  ```