@open-mercato/core 0.4.11-develop.1398.4cf8d121e7 → 0.4.11-develop.1409.b9a9ec6681

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 (359) hide show
  1. package/dist/generated/entities/access_log/index.js.map +1 -1
  2. package/dist/generated/entities/action_log/index.js.map +1 -1
  3. package/dist/generated/entities/api_key/index.js.map +1 -1
  4. package/dist/generated/entities/attachment/index.js.map +1 -1
  5. package/dist/generated/entities/attachment_partition/index.js.map +1 -1
  6. package/dist/generated/entities/business_rule/index.js.map +1 -1
  7. package/dist/generated/entities/carrier_shipment/index.js.map +1 -1
  8. package/dist/generated/entities/catalog_offer/index.js.map +1 -1
  9. package/dist/generated/entities/catalog_option_schema_template/index.js.map +1 -1
  10. package/dist/generated/entities/catalog_price_kind/index.js.map +1 -1
  11. package/dist/generated/entities/catalog_product/index.js.map +1 -1
  12. package/dist/generated/entities/catalog_product_category/index.js.map +1 -1
  13. package/dist/generated/entities/catalog_product_category_assignment/index.js.map +1 -1
  14. package/dist/generated/entities/catalog_product_price/index.js.map +1 -1
  15. package/dist/generated/entities/catalog_product_tag/index.js.map +1 -1
  16. package/dist/generated/entities/catalog_product_tag_assignment/index.js.map +1 -1
  17. package/dist/generated/entities/catalog_product_unit_conversion/index.js.map +1 -1
  18. package/dist/generated/entities/catalog_product_variant/index.js.map +1 -1
  19. package/dist/generated/entities/catalog_product_variant_relation/index.js.map +1 -1
  20. package/dist/generated/entities/currency/index.js.map +1 -1
  21. package/dist/generated/entities/currency_fetch_config/index.js.map +1 -1
  22. package/dist/generated/entities/custom_entity/index.js.map +1 -1
  23. package/dist/generated/entities/custom_entity_storage/index.js.map +1 -1
  24. package/dist/generated/entities/custom_field_def/index.js.map +1 -1
  25. package/dist/generated/entities/custom_field_entity_config/index.js.map +1 -1
  26. package/dist/generated/entities/custom_field_value/index.js.map +1 -1
  27. package/dist/generated/entities/customer_activity/index.js.map +1 -1
  28. package/dist/generated/entities/customer_address/index.js.map +1 -1
  29. package/dist/generated/entities/customer_comment/index.js.map +1 -1
  30. package/dist/generated/entities/customer_company_profile/index.js.map +1 -1
  31. package/dist/generated/entities/customer_deal/index.js.map +1 -1
  32. package/dist/generated/entities/customer_deal_company_link/index.js.map +1 -1
  33. package/dist/generated/entities/customer_deal_person_link/index.js.map +1 -1
  34. package/dist/generated/entities/customer_dictionary_entry/index.js.map +1 -1
  35. package/dist/generated/entities/customer_entity/index.js.map +1 -1
  36. package/dist/generated/entities/customer_interaction/index.js.map +1 -1
  37. package/dist/generated/entities/customer_person_profile/index.js.map +1 -1
  38. package/dist/generated/entities/customer_pipeline/index.js.map +1 -1
  39. package/dist/generated/entities/customer_pipeline_stage/index.js.map +1 -1
  40. package/dist/generated/entities/customer_role/index.js.map +1 -1
  41. package/dist/generated/entities/customer_role_acl/index.js.map +1 -1
  42. package/dist/generated/entities/customer_settings/index.js.map +1 -1
  43. package/dist/generated/entities/customer_tag/index.js.map +1 -1
  44. package/dist/generated/entities/customer_tag_assignment/index.js.map +1 -1
  45. package/dist/generated/entities/customer_todo_link/index.js.map +1 -1
  46. package/dist/generated/entities/customer_user/index.js.map +1 -1
  47. package/dist/generated/entities/customer_user_acl/index.js.map +1 -1
  48. package/dist/generated/entities/customer_user_email_verification/index.js.map +1 -1
  49. package/dist/generated/entities/customer_user_invitation/index.js.map +1 -1
  50. package/dist/generated/entities/customer_user_password_reset/index.js.map +1 -1
  51. package/dist/generated/entities/customer_user_role/index.js.map +1 -1
  52. package/dist/generated/entities/customer_user_session/index.js.map +1 -1
  53. package/dist/generated/entities/dashboard_layout/index.js.map +1 -1
  54. package/dist/generated/entities/dashboard_role_widgets/index.js.map +1 -1
  55. package/dist/generated/entities/dashboard_user_widgets/index.js.map +1 -1
  56. package/dist/generated/entities/dictionary/index.js.map +1 -1
  57. package/dist/generated/entities/dictionary_entry/index.js.map +1 -1
  58. package/dist/generated/entities/encryption_map/index.js.map +1 -1
  59. package/dist/generated/entities/entity_index_coverage/index.js.map +1 -1
  60. package/dist/generated/entities/entity_index_job/index.js.map +1 -1
  61. package/dist/generated/entities/entity_index_row/index.js.map +1 -1
  62. package/dist/generated/entities/entity_translation/index.js.map +1 -1
  63. package/dist/generated/entities/exchange_rate/index.js.map +1 -1
  64. package/dist/generated/entities/feature_toggle/index.js.map +1 -1
  65. package/dist/generated/entities/feature_toggle_override/index.js.map +1 -1
  66. package/dist/generated/entities/gateway_transaction/index.js.map +1 -1
  67. package/dist/generated/entities/inbox_discrepancy/index.js.map +1 -1
  68. package/dist/generated/entities/inbox_email/index.js.map +1 -1
  69. package/dist/generated/entities/inbox_proposal/index.js.map +1 -1
  70. package/dist/generated/entities/inbox_proposal_action/index.js.map +1 -1
  71. package/dist/generated/entities/inbox_settings/index.js.map +1 -1
  72. package/dist/generated/entities/indexer_error_log/index.js.map +1 -1
  73. package/dist/generated/entities/indexer_status_log/index.js.map +1 -1
  74. package/dist/generated/entities/integration_credentials/index.js.map +1 -1
  75. package/dist/generated/entities/integration_log/index.js.map +1 -1
  76. package/dist/generated/entities/integration_state/index.js.map +1 -1
  77. package/dist/generated/entities/message/index.js.map +1 -1
  78. package/dist/generated/entities/message_access_token/index.js.map +1 -1
  79. package/dist/generated/entities/message_confirmation/index.js.map +1 -1
  80. package/dist/generated/entities/message_object/index.js.map +1 -1
  81. package/dist/generated/entities/message_recipient/index.js.map +1 -1
  82. package/dist/generated/entities/module_config/index.js.map +1 -1
  83. package/dist/generated/entities/notification/index.js.map +1 -1
  84. package/dist/generated/entities/organization/index.js.map +1 -1
  85. package/dist/generated/entities/password_reset/index.js.map +1 -1
  86. package/dist/generated/entities/perspective/index.js.map +1 -1
  87. package/dist/generated/entities/planner_availability_rule/index.js.map +1 -1
  88. package/dist/generated/entities/planner_availability_rule_set/index.js.map +1 -1
  89. package/dist/generated/entities/progress_job/index.js.map +1 -1
  90. package/dist/generated/entities/resources_resource/index.js.map +1 -1
  91. package/dist/generated/entities/resources_resource_activity/index.js.map +1 -1
  92. package/dist/generated/entities/resources_resource_comment/index.js.map +1 -1
  93. package/dist/generated/entities/resources_resource_tag/index.js.map +1 -1
  94. package/dist/generated/entities/resources_resource_tag_assignment/index.js.map +1 -1
  95. package/dist/generated/entities/resources_resource_type/index.js.map +1 -1
  96. package/dist/generated/entities/role/index.js.map +1 -1
  97. package/dist/generated/entities/role_acl/index.js.map +1 -1
  98. package/dist/generated/entities/role_perspective/index.js.map +1 -1
  99. package/dist/generated/entities/role_sidebar_preference/index.js.map +1 -1
  100. package/dist/generated/entities/rule_execution_log/index.js.map +1 -1
  101. package/dist/generated/entities/rule_set/index.js.map +1 -1
  102. package/dist/generated/entities/rule_set_member/index.js.map +1 -1
  103. package/dist/generated/entities/sales_channel/index.js.map +1 -1
  104. package/dist/generated/entities/sales_credit_memo/index.js.map +1 -1
  105. package/dist/generated/entities/sales_credit_memo_line/index.js.map +1 -1
  106. package/dist/generated/entities/sales_delivery_window/index.js.map +1 -1
  107. package/dist/generated/entities/sales_document_address/index.js.map +1 -1
  108. package/dist/generated/entities/sales_document_sequence/index.js.map +1 -1
  109. package/dist/generated/entities/sales_document_tag/index.js.map +1 -1
  110. package/dist/generated/entities/sales_document_tag_assignment/index.js.map +1 -1
  111. package/dist/generated/entities/sales_invoice/index.js.map +1 -1
  112. package/dist/generated/entities/sales_invoice_line/index.js.map +1 -1
  113. package/dist/generated/entities/sales_note/index.js.map +1 -1
  114. package/dist/generated/entities/sales_order/index.js.map +1 -1
  115. package/dist/generated/entities/sales_order_adjustment/index.js.map +1 -1
  116. package/dist/generated/entities/sales_order_line/index.js.map +1 -1
  117. package/dist/generated/entities/sales_payment/index.js.map +1 -1
  118. package/dist/generated/entities/sales_payment_allocation/index.js.map +1 -1
  119. package/dist/generated/entities/sales_payment_method/index.js.map +1 -1
  120. package/dist/generated/entities/sales_quote/index.js.map +1 -1
  121. package/dist/generated/entities/sales_quote_adjustment/index.js.map +1 -1
  122. package/dist/generated/entities/sales_quote_line/index.js.map +1 -1
  123. package/dist/generated/entities/sales_return/index.js.map +1 -1
  124. package/dist/generated/entities/sales_return_line/index.js.map +1 -1
  125. package/dist/generated/entities/sales_settings/index.js.map +1 -1
  126. package/dist/generated/entities/sales_shipment/index.js.map +1 -1
  127. package/dist/generated/entities/sales_shipment_item/index.js.map +1 -1
  128. package/dist/generated/entities/sales_shipping_method/index.js.map +1 -1
  129. package/dist/generated/entities/sales_tax_rate/index.js.map +1 -1
  130. package/dist/generated/entities/search_token/index.js.map +1 -1
  131. package/dist/generated/entities/session/index.js.map +1 -1
  132. package/dist/generated/entities/staff_leave_request/index.js.map +1 -1
  133. package/dist/generated/entities/staff_team/index.js.map +1 -1
  134. package/dist/generated/entities/staff_team_member/index.js.map +1 -1
  135. package/dist/generated/entities/staff_team_member_activity/index.js.map +1 -1
  136. package/dist/generated/entities/staff_team_member_address/index.js.map +1 -1
  137. package/dist/generated/entities/staff_team_member_comment/index.js.map +1 -1
  138. package/dist/generated/entities/staff_team_member_job_history/index.js.map +1 -1
  139. package/dist/generated/entities/staff_team_role/index.js.map +1 -1
  140. package/dist/generated/entities/step_instance/index.js.map +1 -1
  141. package/dist/generated/entities/sync_cursor/index.js.map +1 -1
  142. package/dist/generated/entities/sync_external_id_mapping/index.js.map +1 -1
  143. package/dist/generated/entities/sync_mapping/index.js.map +1 -1
  144. package/dist/generated/entities/sync_run/index.js.map +1 -1
  145. package/dist/generated/entities/sync_schedule/index.js.map +1 -1
  146. package/dist/generated/entities/tenant/index.js.map +1 -1
  147. package/dist/generated/entities/upgrade_action_run/index.js.map +1 -1
  148. package/dist/generated/entities/user/index.js.map +1 -1
  149. package/dist/generated/entities/user_acl/index.js.map +1 -1
  150. package/dist/generated/entities/user_consent/index.js.map +1 -1
  151. package/dist/generated/entities/user_role/index.js.map +1 -1
  152. package/dist/generated/entities/user_sidebar_preference/index.js.map +1 -1
  153. package/dist/generated/entities/user_task/index.js.map +1 -1
  154. package/dist/generated/entities/webhook_processed_event/index.js.map +1 -1
  155. package/dist/generated/entities/workflow_definition/index.js.map +1 -1
  156. package/dist/generated/entities/workflow_event/index.js.map +1 -1
  157. package/dist/generated/entities/workflow_event_trigger/index.js.map +1 -1
  158. package/dist/generated/entities/workflow_instance/index.js.map +1 -1
  159. package/dist/generated/entities.ids.generated.js +1 -2
  160. package/dist/generated/entities.ids.generated.js.map +2 -2
  161. package/dist/generated/entity-fields-registry.js +2585 -316
  162. package/dist/generated/entity-fields-registry.js.map +2 -2
  163. package/dist/helpers/integration/auth.js +23 -0
  164. package/dist/helpers/integration/auth.js.map +2 -2
  165. package/dist/helpers/integration/salesUi.js +261 -28
  166. package/dist/helpers/integration/salesUi.js.map +3 -3
  167. package/dist/modules/api_docs/frontend/docs/api/page.js +10 -10
  168. package/dist/modules/api_docs/frontend/docs/api/page.js.map +2 -2
  169. package/dist/modules/auth/api/admin/nav.js +5 -3
  170. package/dist/modules/auth/api/admin/nav.js.map +2 -2
  171. package/dist/modules/auth/lib/backendChrome.js +28 -1
  172. package/dist/modules/auth/lib/backendChrome.js.map +2 -2
  173. package/dist/modules/catalog/api/products/route.js +23 -6
  174. package/dist/modules/catalog/api/products/route.js.map +2 -2
  175. package/dist/modules/configs/lib/system-status.js +1 -1
  176. package/dist/modules/configs/lib/system-status.js.map +1 -1
  177. package/dist/modules/customers/backend/customers/deals/[id]/page.js +226 -221
  178. package/dist/modules/customers/backend/customers/deals/[id]/page.js.map +2 -2
  179. package/dist/modules/customers/commands/companies.js +14 -0
  180. package/dist/modules/customers/commands/companies.js.map +2 -2
  181. package/dist/modules/customers/commands/people.js +18 -1
  182. package/dist/modules/customers/commands/people.js.map +2 -2
  183. package/dist/modules/entities/backend/entities/user/[entityId]/records/create/page.js +0 -1
  184. package/dist/modules/entities/backend/entities/user/[entityId]/records/create/page.js.map +2 -2
  185. package/dist/modules/query_index/lib/engine.js +2 -2
  186. package/dist/modules/query_index/lib/engine.js.map +2 -2
  187. package/generated/entities/access_log/index.ts +11 -11
  188. package/generated/entities/action_log/index.ts +20 -20
  189. package/generated/entities/api_key/index.ts +17 -17
  190. package/generated/entities/attachment/index.ts +15 -15
  191. package/generated/entities/attachment_partition/index.ts +11 -11
  192. package/generated/entities/business_rule/index.ts +23 -23
  193. package/generated/entities/carrier_shipment/index.ts +17 -17
  194. package/generated/entities/catalog_offer/index.ts +15 -15
  195. package/generated/entities/catalog_option_schema_template/index.ts +12 -12
  196. package/generated/entities/catalog_price_kind/index.ts +13 -13
  197. package/generated/entities/catalog_product/index.ts +39 -39
  198. package/generated/entities/catalog_product_category/index.ts +19 -19
  199. package/generated/entities/catalog_product_category_assignment/index.ts +8 -8
  200. package/generated/entities/catalog_product_price/index.ts +25 -25
  201. package/generated/entities/catalog_product_tag/index.ts +8 -8
  202. package/generated/entities/catalog_product_tag_assignment/index.ts +7 -7
  203. package/generated/entities/catalog_product_unit_conversion/index.ts +12 -12
  204. package/generated/entities/catalog_product_variant/index.ts +24 -24
  205. package/generated/entities/catalog_product_variant_relation/index.ts +14 -14
  206. package/generated/entities/currency/index.ts +14 -14
  207. package/generated/entities/currency_fetch_config/index.ts +13 -13
  208. package/generated/entities/custom_entity/index.ts +13 -13
  209. package/generated/entities/custom_entity_storage/index.ts +9 -9
  210. package/generated/entities/custom_field_def/index.ts +11 -11
  211. package/generated/entities/custom_field_entity_config/index.ts +9 -9
  212. package/generated/entities/custom_field_value/index.ts +13 -13
  213. package/generated/entities/customer_activity/index.ts +14 -14
  214. package/generated/entities/customer_address/index.ts +20 -20
  215. package/generated/entities/customer_comment/index.ts +12 -12
  216. package/generated/entities/customer_company_profile/index.ts +13 -13
  217. package/generated/entities/customer_deal/index.ts +22 -22
  218. package/generated/entities/customer_deal_company_link/index.ts +4 -4
  219. package/generated/entities/customer_deal_person_link/index.ts +5 -5
  220. package/generated/entities/customer_dictionary_entry/index.ts +11 -11
  221. package/generated/entities/customer_entity/index.ts +32 -32
  222. package/generated/entities/customer_interaction/index.ts +20 -20
  223. package/generated/entities/customer_person_profile/index.ts +16 -16
  224. package/generated/entities/customer_pipeline/index.ts +7 -7
  225. package/generated/entities/customer_pipeline_stage/index.ts +8 -8
  226. package/generated/entities/customer_role/index.ts +12 -12
  227. package/generated/entities/customer_role_acl/index.ts +8 -8
  228. package/generated/entities/customer_settings/index.ts +6 -6
  229. package/generated/entities/customer_tag/index.ts +10 -10
  230. package/generated/entities/customer_tag_assignment/index.ts +6 -6
  231. package/generated/entities/customer_todo_link/index.ts +8 -8
  232. package/generated/entities/customer_user/index.ts +17 -17
  233. package/generated/entities/customer_user_acl/index.ts +8 -8
  234. package/generated/entities/customer_user_email_verification/index.ts +7 -7
  235. package/generated/entities/customer_user_invitation/index.ts +15 -15
  236. package/generated/entities/customer_user_password_reset/index.ts +6 -6
  237. package/generated/entities/customer_user_role/index.ts +5 -5
  238. package/generated/entities/customer_user_session/index.ts +9 -9
  239. package/generated/entities/dashboard_layout/index.ts +8 -8
  240. package/generated/entities/dashboard_role_widgets/index.ts +8 -8
  241. package/generated/entities/dashboard_user_widgets/index.ts +9 -9
  242. package/generated/entities/dictionary/index.ts +12 -12
  243. package/generated/entities/dictionary_entry/index.ts +11 -11
  244. package/generated/entities/encryption_map/index.ts +9 -9
  245. package/generated/entities/entity_index_coverage/index.ts +9 -9
  246. package/generated/entities/entity_index_job/index.ts +12 -12
  247. package/generated/entities/entity_index_row/index.ts +11 -11
  248. package/generated/entities/entity_translation/index.ts +8 -8
  249. package/generated/entities/exchange_rate/index.ts +13 -13
  250. package/generated/entities/feature_toggle/index.ts +10 -10
  251. package/generated/entities/feature_toggle_override/index.ts +6 -6
  252. package/generated/entities/gateway_transaction/index.ts +22 -22
  253. package/generated/entities/inbox_discrepancy/index.ts +15 -15
  254. package/generated/entities/inbox_email/index.ts +26 -26
  255. package/generated/entities/inbox_proposal/index.ts +22 -22
  256. package/generated/entities/inbox_proposal_action/index.ts +23 -23
  257. package/generated/entities/inbox_settings/index.ts +9 -9
  258. package/generated/entities/indexer_error_log/index.ts +11 -11
  259. package/generated/entities/indexer_status_log/index.ts +11 -11
  260. package/generated/entities/integration_credentials/index.ts +8 -8
  261. package/generated/entities/integration_log/index.ts +12 -12
  262. package/generated/entities/integration_state/index.ts +12 -12
  263. package/generated/entities/message/index.ts +31 -31
  264. package/generated/entities/message_access_token/index.ts +8 -8
  265. package/generated/entities/message_confirmation/index.ts +9 -9
  266. package/generated/entities/message_object/index.ts +10 -10
  267. package/generated/entities/message_recipient/index.ts +14 -14
  268. package/generated/entities/module_config/index.ts +6 -6
  269. package/generated/entities/notification/index.ts +27 -27
  270. package/generated/entities/organization/index.ts +15 -15
  271. package/generated/entities/password_reset/index.ts +7 -7
  272. package/generated/entities/perspective/index.ts +11 -11
  273. package/generated/entities/planner_availability_rule/index.ts +15 -15
  274. package/generated/entities/planner_availability_rule_set/index.ts +9 -9
  275. package/generated/entities/progress_job/index.ts +27 -27
  276. package/generated/entities/resources_resource/index.ts +18 -18
  277. package/generated/entities/resources_resource_activity/index.ts +13 -13
  278. package/generated/entities/resources_resource_comment/index.ts +11 -11
  279. package/generated/entities/resources_resource_tag/index.ts +10 -10
  280. package/generated/entities/resources_resource_tag_assignment/index.ts +7 -7
  281. package/generated/entities/resources_resource_type/index.ts +10 -10
  282. package/generated/entities/role/index.ts +5 -5
  283. package/generated/entities/role_acl/index.ts +9 -9
  284. package/generated/entities/role_perspective/index.ts +11 -11
  285. package/generated/entities/role_sidebar_preference/index.ts +8 -8
  286. package/generated/entities/rule_execution_log/index.ts +13 -13
  287. package/generated/entities/rule_set/index.ts +12 -12
  288. package/generated/entities/rule_set_member/index.ts +8 -8
  289. package/generated/entities/sales_channel/index.ts +25 -25
  290. package/generated/entities/sales_credit_memo/index.ts +21 -21
  291. package/generated/entities/sales_credit_memo_line/index.ts +20 -20
  292. package/generated/entities/sales_delivery_window/index.ts +15 -15
  293. package/generated/entities/sales_document_address/index.ts +24 -24
  294. package/generated/entities/sales_document_sequence/index.ts +8 -8
  295. package/generated/entities/sales_document_tag/index.ts +10 -10
  296. package/generated/entities/sales_document_tag_assignment/index.ts +10 -10
  297. package/generated/entities/sales_invoice/index.ts +25 -25
  298. package/generated/entities/sales_invoice_line/index.ts +23 -23
  299. package/generated/entities/sales_note/index.ts +14 -14
  300. package/generated/entities/sales_order/index.ts +71 -71
  301. package/generated/entities/sales_order_adjustment/index.ts +20 -20
  302. package/generated/entities/sales_order_line/index.ts +44 -44
  303. package/generated/entities/sales_payment/index.ts +20 -20
  304. package/generated/entities/sales_payment_allocation/index.ts +9 -9
  305. package/generated/entities/sales_payment_method/index.ts +15 -15
  306. package/generated/entities/sales_quote/index.ts +56 -56
  307. package/generated/entities/sales_quote_adjustment/index.ts +20 -20
  308. package/generated/entities/sales_quote_line/index.ts +37 -37
  309. package/generated/entities/sales_return/index.ts +14 -14
  310. package/generated/entities/sales_return_line/index.ts +13 -13
  311. package/generated/entities/sales_settings/index.ts +10 -10
  312. package/generated/entities/sales_shipment/index.ts +24 -24
  313. package/generated/entities/sales_shipment_item/index.ts +7 -7
  314. package/generated/entities/sales_shipping_method/index.ts +19 -19
  315. package/generated/entities/sales_tax_rate/index.ts +22 -22
  316. package/generated/entities/search_token/index.ts +9 -9
  317. package/generated/entities/session/index.ts +7 -7
  318. package/generated/entities/staff_leave_request/index.ts +18 -18
  319. package/generated/entities/staff_team/index.ts +9 -9
  320. package/generated/entities/staff_team_member/index.ts +14 -14
  321. package/generated/entities/staff_team_member_activity/index.ts +13 -13
  322. package/generated/entities/staff_team_member_address/index.ts +20 -20
  323. package/generated/entities/staff_team_member_comment/index.ts +11 -11
  324. package/generated/entities/staff_team_member_job_history/index.ts +11 -11
  325. package/generated/entities/staff_team_role/index.ts +11 -11
  326. package/generated/entities/step_instance/index.ts +17 -17
  327. package/generated/entities/sync_cursor/index.ts +8 -8
  328. package/generated/entities/sync_external_id_mapping/index.ts +12 -12
  329. package/generated/entities/sync_mapping/index.ts +8 -8
  330. package/generated/entities/sync_run/index.ts +21 -21
  331. package/generated/entities/sync_schedule/index.ts +16 -16
  332. package/generated/entities/tenant/index.ts +7 -7
  333. package/generated/entities/upgrade_action_run/index.ts +7 -7
  334. package/generated/entities/user/index.ts +11 -11
  335. package/generated/entities/user_acl/index.ts +9 -9
  336. package/generated/entities/user_consent/index.ts +14 -14
  337. package/generated/entities/user_role/index.ts +5 -5
  338. package/generated/entities/user_sidebar_preference/index.ts +9 -9
  339. package/generated/entities/user_task/index.ts +22 -22
  340. package/generated/entities/webhook_processed_event/index.ts +7 -7
  341. package/generated/entities/workflow_definition/index.ts +17 -17
  342. package/generated/entities/workflow_event/index.ts +9 -9
  343. package/generated/entities/workflow_event_trigger/index.ts +15 -15
  344. package/generated/entities/workflow_instance/index.ts +22 -22
  345. package/generated/entities.ids.generated.ts +258 -258
  346. package/generated/entity-fields-registry.ts +2587 -319
  347. package/package.json +3 -3
  348. package/src/helpers/integration/auth.ts +22 -0
  349. package/src/helpers/integration/salesUi.ts +397 -29
  350. package/src/modules/api_docs/frontend/docs/api/page.tsx +14 -11
  351. package/src/modules/auth/api/admin/nav.ts +5 -4
  352. package/src/modules/auth/lib/backendChrome.tsx +36 -3
  353. package/src/modules/catalog/api/products/route.ts +25 -6
  354. package/src/modules/configs/lib/system-status.ts +1 -1
  355. package/src/modules/customers/backend/customers/deals/[id]/page.tsx +1 -1
  356. package/src/modules/customers/commands/companies.ts +15 -0
  357. package/src/modules/customers/commands/people.ts +19 -1
  358. package/src/modules/entities/backend/entities/user/[entityId]/records/create/page.tsx +0 -1
  359. package/src/modules/query_index/lib/engine.ts +1 -2
@@ -292,245 +292,250 @@ function DealDetailPage({ params }) {
292
292
  const companiesSummaryLabel = data.companies.length === 1 ? t("customers.deals.detail.companiesSummaryOne") : t("customers.deals.detail.companiesSummaryMany", void 0, { count: data.companies.length });
293
293
  const viewer = data.viewer ?? null;
294
294
  return /* @__PURE__ */ jsxs(Page, { children: [
295
- /* @__PURE__ */ jsx(PageBody, { children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
296
- /* @__PURE__ */ jsx(
297
- FormHeader,
298
- {
299
- mode: "detail",
300
- backHref: "/backend/customers/deals",
301
- backLabel: t("customers.deals.detail.backToList", "Back to deals"),
302
- utilityActions: /* @__PURE__ */ jsxs(Fragment, { children: [
303
- /* @__PURE__ */ jsx(
304
- SendObjectMessageDialog,
305
- {
306
- object: {
307
- entityModule: "customers",
308
- entityType: "deal",
309
- entityId: data.deal.id,
310
- sourceEntityType: "customers.deal",
311
- sourceEntityId: data.deal.id,
312
- previewData: {
313
- title: data.deal.title || t("customers.deals.detail.untitled", "Untitled deal"),
314
- status: data.deal.status ? statusLabel : void 0,
315
- metadata: Object.keys(dealPreviewMetadata).length > 0 ? dealPreviewMetadata : void 0
295
+ /* @__PURE__ */ jsxs(PageBody, { children: [
296
+ "Piotr nie jest pizd\u0105, tylko zajebistym go\u015Bciem, kt\xF3ry robi \u015Bwietn\u0105 robot\u0119 w Mercato i jest super mi\u0142y dla wszystkich dooko\u0142a. Dzi\u0119ki Piotrze za wszystko co robisz! ",
297
+ /* @__PURE__ */ jsx("br", {}),
298
+ /* @__PURE__ */ jsx("br", {}),
299
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
300
+ /* @__PURE__ */ jsx(
301
+ FormHeader,
302
+ {
303
+ mode: "detail",
304
+ backHref: "/backend/customers/deals",
305
+ backLabel: t("customers.deals.detail.backToList", "Back to deals"),
306
+ utilityActions: /* @__PURE__ */ jsxs(Fragment, { children: [
307
+ /* @__PURE__ */ jsx(
308
+ SendObjectMessageDialog,
309
+ {
310
+ object: {
311
+ entityModule: "customers",
312
+ entityType: "deal",
313
+ entityId: data.deal.id,
314
+ sourceEntityType: "customers.deal",
315
+ sourceEntityId: data.deal.id,
316
+ previewData: {
317
+ title: data.deal.title || t("customers.deals.detail.untitled", "Untitled deal"),
318
+ status: data.deal.status ? statusLabel : void 0,
319
+ metadata: Object.keys(dealPreviewMetadata).length > 0 ? dealPreviewMetadata : void 0
320
+ }
321
+ },
322
+ viewHref: `/backend/customers/deals/${data.deal.id}`,
323
+ defaultValues: {
324
+ sourceEntityType: "customers.deal",
325
+ sourceEntityId: data.deal.id
316
326
  }
317
- },
318
- viewHref: `/backend/customers/deals/${data.deal.id}`,
319
- defaultValues: {
320
- sourceEntityType: "customers.deal",
321
- sourceEntityId: data.deal.id
322
327
  }
323
- }
324
- ),
325
- /* @__PURE__ */ jsx(
326
- VersionHistoryAction,
327
- {
328
- config: { resourceKind: "customers.deal", resourceId: data.deal.id },
329
- t
330
- }
331
- )
332
- ] }),
333
- title: /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [
334
- /* @__PURE__ */ jsx("span", { children: data.deal.title || t("customers.deals.detail.untitled", "Untitled deal") }),
335
- /* @__PURE__ */ jsxs(
336
- Button,
337
- {
338
- type: "button",
339
- variant: "ghost",
340
- size: "sm",
341
- className: "gap-1 text-muted-foreground hover:text-foreground",
342
- onClick: scrollToDealSettings,
343
- children: [
344
- /* @__PURE__ */ jsx(Pencil, { className: "h-4 w-4", "aria-hidden": true }),
345
- /* @__PURE__ */ jsx(MousePointerClick, { className: "h-4 w-4", "aria-hidden": true }),
346
- /* @__PURE__ */ jsx("span", { children: t("customers.deals.detail.goToSettings", "Edit deal details") })
347
- ]
348
- }
349
- )
350
- ] }),
351
- subtitle: t("customers.deals.detail.summary", void 0, {
352
- status: statusLabel,
353
- pipeline: pipelineLabel ?? t("customers.deals.detail.noPipeline", "No pipeline")
354
- }),
355
- onDelete: handleDelete,
356
- isDeleting,
357
- deleteLabel: t("ui.actions.delete", "Delete")
358
- }
359
- ),
360
- /* @__PURE__ */ jsxs("div", { className: "grid gap-6 lg:grid-cols-[minmax(0,2fr),minmax(0,1.1fr)]", children: [
361
- /* @__PURE__ */ jsxs("div", { className: "space-y-6", children: [
362
- /* @__PURE__ */ jsxs("div", { className: "rounded-lg border bg-card p-4", children: [
363
- /* @__PURE__ */ jsx("h2", { className: "mb-4 text-sm font-semibold uppercase text-muted-foreground", children: t("customers.deals.detail.highlights", "Highlights") }),
364
- /* @__PURE__ */ jsxs("div", { className: "grid gap-4 sm:grid-cols-2", children: [
365
- /* @__PURE__ */ jsxs("div", { children: [
366
- /* @__PURE__ */ jsx("p", { className: "text-xs font-medium uppercase text-muted-foreground", children: t("customers.deals.detail.fields.value", "Deal value") }),
367
- /* @__PURE__ */ jsx("p", { className: "text-base font-semibold text-foreground", children: valueLabel })
368
- ] }),
369
- /* @__PURE__ */ jsxs("div", { children: [
370
- /* @__PURE__ */ jsx("p", { className: "text-xs font-medium uppercase text-muted-foreground", children: t("customers.deals.detail.fields.probability", "Probability") }),
371
- /* @__PURE__ */ jsx("p", { className: "text-base font-semibold text-foreground", children: probabilityLabel })
372
- ] }),
373
- /* @__PURE__ */ jsxs("div", { children: [
374
- /* @__PURE__ */ jsx("p", { className: "text-xs font-medium uppercase text-muted-foreground", children: t("customers.deals.detail.fields.status", "Status") }),
375
- /* @__PURE__ */ jsxs("p", { className: "text-base text-foreground flex items-center gap-2", children: [
376
- statusDictEntry?.color ? renderDictionaryColor(statusDictEntry.color) : null,
377
- statusDictEntry?.icon ? renderDictionaryIcon(statusDictEntry.icon) : null,
378
- statusLabel
379
- ] })
380
- ] }),
381
- /* @__PURE__ */ jsxs("div", { children: [
382
- /* @__PURE__ */ jsx("p", { className: "text-xs font-medium uppercase text-muted-foreground", children: t("customers.deals.detail.fields.pipeline", "Pipeline stage") }),
383
- /* @__PURE__ */ jsxs("p", { className: "text-base text-foreground flex items-center gap-2", children: [
384
- pipelineDictEntry?.color ? renderDictionaryColor(pipelineDictEntry.color) : null,
385
- pipelineDictEntry?.icon ? renderDictionaryIcon(pipelineDictEntry.icon) : null,
386
- pipelineLabel ?? t("customers.deals.detail.noValue", "Not provided")
387
- ] })
388
- ] }),
389
- /* @__PURE__ */ jsxs("div", { children: [
390
- /* @__PURE__ */ jsx("p", { className: "text-xs font-medium uppercase text-muted-foreground", children: t("customers.deals.detail.fields.expectedClose", "Expected close") }),
391
- /* @__PURE__ */ jsx("p", { className: "text-base text-foreground", children: expectedCloseLabel })
392
- ] })
393
- ] })
394
- ] }),
395
- /* @__PURE__ */ jsxs("div", { className: "rounded-lg border bg-card p-4", children: [
396
- /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center justify-between gap-3", children: [
397
- /* @__PURE__ */ jsx("div", { className: "flex gap-2", children: tabs.map((tab) => /* @__PURE__ */ jsx(
398
- Button,
328
+ ),
329
+ /* @__PURE__ */ jsx(
330
+ VersionHistoryAction,
399
331
  {
400
- variant: "ghost",
401
- size: "sm",
402
- onClick: () => setActiveTab(tab.id),
403
- className: `h-auto rounded-none border-b-2 px-0 py-1 ${activeTab === tab.id ? "border-primary text-foreground" : "border-transparent text-muted-foreground hover:text-foreground hover:bg-transparent"}`,
404
- children: tab.label
405
- },
406
- tab.id
407
- )) }),
408
- sectionAction ? /* @__PURE__ */ jsxs(
332
+ config: { resourceKind: "customers.deal", resourceId: data.deal.id },
333
+ t
334
+ }
335
+ )
336
+ ] }),
337
+ title: /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [
338
+ /* @__PURE__ */ jsx("span", { children: data.deal.title || t("customers.deals.detail.untitled", "Untitled deal") }),
339
+ /* @__PURE__ */ jsxs(
409
340
  Button,
410
341
  {
411
342
  type: "button",
343
+ variant: "ghost",
412
344
  size: "sm",
413
- disabled: sectionAction.disabled,
414
- onClick: handleSectionAction,
345
+ className: "gap-1 text-muted-foreground hover:text-foreground",
346
+ onClick: scrollToDealSettings,
415
347
  children: [
416
- sectionAction.icon ?? null,
417
- sectionAction.label
348
+ /* @__PURE__ */ jsx(Pencil, { className: "h-4 w-4", "aria-hidden": true }),
349
+ /* @__PURE__ */ jsx(MousePointerClick, { className: "h-4 w-4", "aria-hidden": true }),
350
+ /* @__PURE__ */ jsx("span", { children: t("customers.deals.detail.goToSettings", "Edit deal details") })
418
351
  ]
419
352
  }
420
- ) : null
353
+ )
421
354
  ] }),
422
- activeTab === "notes" ? /* @__PURE__ */ jsx(
423
- NotesSection,
424
- {
425
- entityId: null,
426
- dealId: data.deal.id,
427
- dealOptions,
428
- entityOptions,
429
- emptyLabel: t("customers.deals.detail.notesEmpty", "No notes yet."),
430
- viewerUserId: viewer?.userId ?? null,
431
- viewerName: viewer?.name ?? null,
432
- viewerEmail: viewer?.email ?? null,
433
- addActionLabel: t("customers.deals.detail.notesAdd", "Add note"),
434
- emptyState: {
435
- title: t("customers.deals.detail.notesEmptyTitle", "Keep everyone in the loop"),
436
- actionLabel: t("customers.deals.detail.notesEmptyAction", "Add a note")
437
- },
438
- onActionChange: setSectionAction,
439
- translator: detailTranslator,
440
- onLoadingChange: handleNotesLoadingChange,
441
- dataAdapter: notesAdapter,
442
- renderIcon: renderDictionaryIcon,
443
- renderColor: renderDictionaryColor,
444
- iconSuggestions: ICON_SUGGESTIONS,
445
- readMarkdownPreference: readMarkdownPreferenceCookie,
446
- writeMarkdownPreference: writeMarkdownPreferenceCookie
447
- }
448
- ) : null,
449
- activeTab === "activities" ? /* @__PURE__ */ jsx(
450
- ActivitiesSection,
451
- {
452
- entityId: null,
453
- dealId: data.deal.id,
454
- dealOptions,
455
- entityOptions,
456
- defaultEntityId: defaultEntityId ?? void 0,
457
- addActionLabel: t("customers.deals.detail.activitiesAdd", "Log activity"),
458
- emptyState: {
459
- title: t("customers.deals.detail.activitiesEmptyTitle", "No activities yet"),
460
- actionLabel: t("customers.deals.detail.activitiesEmptyAction", "Add an activity")
461
- },
462
- onActionChange: setSectionAction,
463
- onLoadingChange: handleActivitiesLoadingChange
464
- }
465
- ) : null
466
- ] }),
467
- /* @__PURE__ */ jsxs("div", { className: "grid gap-4 md:grid-cols-2", children: [
355
+ subtitle: t("customers.deals.detail.summary", void 0, {
356
+ status: statusLabel,
357
+ pipeline: pipelineLabel ?? t("customers.deals.detail.noPipeline", "No pipeline")
358
+ }),
359
+ onDelete: handleDelete,
360
+ isDeleting,
361
+ deleteLabel: t("ui.actions.delete", "Delete")
362
+ }
363
+ ),
364
+ /* @__PURE__ */ jsxs("div", { className: "grid gap-6 lg:grid-cols-[minmax(0,2fr),minmax(0,1.1fr)]", children: [
365
+ /* @__PURE__ */ jsxs("div", { className: "space-y-6", children: [
468
366
  /* @__PURE__ */ jsxs("div", { className: "rounded-lg border bg-card p-4", children: [
469
- /* @__PURE__ */ jsxs("div", { className: "mb-3 space-y-1", children: [
470
- /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground", children: t("customers.deals.detail.peopleSection", "People") }),
471
- /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground", children: peopleSummaryLabel })
472
- ] }),
473
- data.people.length ? /* @__PURE__ */ jsx("ul", { className: "space-y-2 text-sm", children: data.people.map((person) => /* @__PURE__ */ jsxs("li", { className: "flex flex-col gap-1", children: [
474
- /* @__PURE__ */ jsx(Link, { href: `/backend/customers/people-v2/${encodeURIComponent(person.id)}`, className: "font-medium text-foreground hover:underline", children: person.label }),
475
- /* @__PURE__ */ jsx("span", { className: "text-xs text-muted-foreground", children: person.subtitle ?? t("customers.deals.detail.peopleNoDetails", "No additional details") })
476
- ] }, person.id)) }) : /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: t("customers.deals.detail.noPeople", "No people linked to this deal yet.") })
367
+ /* @__PURE__ */ jsx("h2", { className: "mb-4 text-sm font-semibold uppercase text-muted-foreground", children: t("customers.deals.detail.highlights", "Highlights") }),
368
+ /* @__PURE__ */ jsxs("div", { className: "grid gap-4 sm:grid-cols-2", children: [
369
+ /* @__PURE__ */ jsxs("div", { children: [
370
+ /* @__PURE__ */ jsx("p", { className: "text-xs font-medium uppercase text-muted-foreground", children: t("customers.deals.detail.fields.value", "Deal value") }),
371
+ /* @__PURE__ */ jsx("p", { className: "text-base font-semibold text-foreground", children: valueLabel })
372
+ ] }),
373
+ /* @__PURE__ */ jsxs("div", { children: [
374
+ /* @__PURE__ */ jsx("p", { className: "text-xs font-medium uppercase text-muted-foreground", children: t("customers.deals.detail.fields.probability", "Probability") }),
375
+ /* @__PURE__ */ jsx("p", { className: "text-base font-semibold text-foreground", children: probabilityLabel })
376
+ ] }),
377
+ /* @__PURE__ */ jsxs("div", { children: [
378
+ /* @__PURE__ */ jsx("p", { className: "text-xs font-medium uppercase text-muted-foreground", children: t("customers.deals.detail.fields.status", "Status") }),
379
+ /* @__PURE__ */ jsxs("p", { className: "text-base text-foreground flex items-center gap-2", children: [
380
+ statusDictEntry?.color ? renderDictionaryColor(statusDictEntry.color) : null,
381
+ statusDictEntry?.icon ? renderDictionaryIcon(statusDictEntry.icon) : null,
382
+ statusLabel
383
+ ] })
384
+ ] }),
385
+ /* @__PURE__ */ jsxs("div", { children: [
386
+ /* @__PURE__ */ jsx("p", { className: "text-xs font-medium uppercase text-muted-foreground", children: t("customers.deals.detail.fields.pipeline", "Pipeline stage") }),
387
+ /* @__PURE__ */ jsxs("p", { className: "text-base text-foreground flex items-center gap-2", children: [
388
+ pipelineDictEntry?.color ? renderDictionaryColor(pipelineDictEntry.color) : null,
389
+ pipelineDictEntry?.icon ? renderDictionaryIcon(pipelineDictEntry.icon) : null,
390
+ pipelineLabel ?? t("customers.deals.detail.noValue", "Not provided")
391
+ ] })
392
+ ] }),
393
+ /* @__PURE__ */ jsxs("div", { children: [
394
+ /* @__PURE__ */ jsx("p", { className: "text-xs font-medium uppercase text-muted-foreground", children: t("customers.deals.detail.fields.expectedClose", "Expected close") }),
395
+ /* @__PURE__ */ jsx("p", { className: "text-base text-foreground", children: expectedCloseLabel })
396
+ ] })
397
+ ] })
477
398
  ] }),
478
399
  /* @__PURE__ */ jsxs("div", { className: "rounded-lg border bg-card p-4", children: [
479
- /* @__PURE__ */ jsxs("div", { className: "mb-3 space-y-1", children: [
480
- /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground", children: t("customers.deals.detail.companiesSection", "Companies") }),
481
- /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground", children: companiesSummaryLabel })
400
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center justify-between gap-3", children: [
401
+ /* @__PURE__ */ jsx("div", { className: "flex gap-2", children: tabs.map((tab) => /* @__PURE__ */ jsx(
402
+ Button,
403
+ {
404
+ variant: "ghost",
405
+ size: "sm",
406
+ onClick: () => setActiveTab(tab.id),
407
+ className: `h-auto rounded-none border-b-2 px-0 py-1 ${activeTab === tab.id ? "border-primary text-foreground" : "border-transparent text-muted-foreground hover:text-foreground hover:bg-transparent"}`,
408
+ children: tab.label
409
+ },
410
+ tab.id
411
+ )) }),
412
+ sectionAction ? /* @__PURE__ */ jsxs(
413
+ Button,
414
+ {
415
+ type: "button",
416
+ size: "sm",
417
+ disabled: sectionAction.disabled,
418
+ onClick: handleSectionAction,
419
+ children: [
420
+ sectionAction.icon ?? null,
421
+ sectionAction.label
422
+ ]
423
+ }
424
+ ) : null
482
425
  ] }),
483
- data.companies.length ? /* @__PURE__ */ jsx("ul", { className: "space-y-2 text-sm", children: data.companies.map((company) => /* @__PURE__ */ jsxs("li", { className: "flex flex-col gap-1", children: [
484
- /* @__PURE__ */ jsx(Link, { href: `/backend/customers/companies-v2/${encodeURIComponent(company.id)}`, className: "font-medium text-foreground hover:underline", children: company.label }),
485
- /* @__PURE__ */ jsx("span", { className: "text-xs text-muted-foreground", children: company.subtitle ?? t("customers.deals.detail.companiesNoDetails", "No additional details") })
486
- ] }, company.id)) }) : /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: t("customers.deals.detail.noCompanies", "No companies linked to this deal yet.") })
487
- ] })
488
- ] })
489
- ] }),
490
- /* @__PURE__ */ jsx("div", { className: "space-y-6", children: /* @__PURE__ */ jsxs(
491
- "div",
492
- {
493
- ref: dealSettingsRef,
494
- id: "deal-settings",
495
- className: "rounded-lg border bg-card p-4",
496
- children: [
497
- /* @__PURE__ */ jsx("h2", { className: "mb-4 text-sm font-semibold uppercase text-muted-foreground", children: t("customers.deals.detail.formTitle", "Deal settings") }),
498
- /* @__PURE__ */ jsx(
499
- DealForm,
426
+ activeTab === "notes" ? /* @__PURE__ */ jsx(
427
+ NotesSection,
500
428
  {
501
- mode: "edit",
502
- initialValues: {
503
- id: data.deal.id,
504
- title: data.deal.title ?? "",
505
- status: data.deal.status ?? "",
506
- pipelineStage: data.deal.pipelineStage ?? "",
507
- pipelineId: data.deal.pipelineId ?? "",
508
- pipelineStageId: data.deal.pipelineStageId ?? "",
509
- valueAmount: data.deal.valueAmount ? Number(data.deal.valueAmount) : null,
510
- valueCurrency: data.deal.valueCurrency ?? void 0,
511
- probability: data.deal.probability ?? null,
512
- expectedCloseAt: data.deal.expectedCloseAt ?? null,
513
- description: data.deal.description ?? "",
514
- personIds: data.people.map((person) => person.id),
515
- companyIds: data.companies.map((company) => company.id),
516
- people: data.people.map((person) => ({ id: person.id, label: person.label })),
517
- companies: data.companies.map((company) => ({ id: company.id, label: company.label })),
518
- ...Object.fromEntries(
519
- Object.entries(data.customFields).filter(([key]) => key.startsWith("cf_")).map(([key, value]) => [key, value])
520
- )
429
+ entityId: null,
430
+ dealId: data.deal.id,
431
+ dealOptions,
432
+ entityOptions,
433
+ emptyLabel: t("customers.deals.detail.notesEmpty", "No notes yet."),
434
+ viewerUserId: viewer?.userId ?? null,
435
+ viewerName: viewer?.name ?? null,
436
+ viewerEmail: viewer?.email ?? null,
437
+ addActionLabel: t("customers.deals.detail.notesAdd", "Add note"),
438
+ emptyState: {
439
+ title: t("customers.deals.detail.notesEmptyTitle", "Keep everyone in the loop"),
440
+ actionLabel: t("customers.deals.detail.notesEmptyAction", "Add a note")
521
441
  },
522
- onSubmit: handleFormSubmit,
523
- onCancel: () => setReloadToken((token) => token + 1),
524
- onDelete: handleDelete,
525
- isSubmitting: isSaving || isDeleting
526
- },
527
- data.deal.updatedAt
528
- )
529
- ]
530
- }
531
- ) })
442
+ onActionChange: setSectionAction,
443
+ translator: detailTranslator,
444
+ onLoadingChange: handleNotesLoadingChange,
445
+ dataAdapter: notesAdapter,
446
+ renderIcon: renderDictionaryIcon,
447
+ renderColor: renderDictionaryColor,
448
+ iconSuggestions: ICON_SUGGESTIONS,
449
+ readMarkdownPreference: readMarkdownPreferenceCookie,
450
+ writeMarkdownPreference: writeMarkdownPreferenceCookie
451
+ }
452
+ ) : null,
453
+ activeTab === "activities" ? /* @__PURE__ */ jsx(
454
+ ActivitiesSection,
455
+ {
456
+ entityId: null,
457
+ dealId: data.deal.id,
458
+ dealOptions,
459
+ entityOptions,
460
+ defaultEntityId: defaultEntityId ?? void 0,
461
+ addActionLabel: t("customers.deals.detail.activitiesAdd", "Log activity"),
462
+ emptyState: {
463
+ title: t("customers.deals.detail.activitiesEmptyTitle", "No activities yet"),
464
+ actionLabel: t("customers.deals.detail.activitiesEmptyAction", "Add an activity")
465
+ },
466
+ onActionChange: setSectionAction,
467
+ onLoadingChange: handleActivitiesLoadingChange
468
+ }
469
+ ) : null
470
+ ] }),
471
+ /* @__PURE__ */ jsxs("div", { className: "grid gap-4 md:grid-cols-2", children: [
472
+ /* @__PURE__ */ jsxs("div", { className: "rounded-lg border bg-card p-4", children: [
473
+ /* @__PURE__ */ jsxs("div", { className: "mb-3 space-y-1", children: [
474
+ /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground", children: t("customers.deals.detail.peopleSection", "People") }),
475
+ /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground", children: peopleSummaryLabel })
476
+ ] }),
477
+ data.people.length ? /* @__PURE__ */ jsx("ul", { className: "space-y-2 text-sm", children: data.people.map((person) => /* @__PURE__ */ jsxs("li", { className: "flex flex-col gap-1", children: [
478
+ /* @__PURE__ */ jsx(Link, { href: `/backend/customers/people-v2/${encodeURIComponent(person.id)}`, className: "font-medium text-foreground hover:underline", children: person.label }),
479
+ /* @__PURE__ */ jsx("span", { className: "text-xs text-muted-foreground", children: person.subtitle ?? t("customers.deals.detail.peopleNoDetails", "No additional details") })
480
+ ] }, person.id)) }) : /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: t("customers.deals.detail.noPeople", "No people linked to this deal yet.") })
481
+ ] }),
482
+ /* @__PURE__ */ jsxs("div", { className: "rounded-lg border bg-card p-4", children: [
483
+ /* @__PURE__ */ jsxs("div", { className: "mb-3 space-y-1", children: [
484
+ /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground", children: t("customers.deals.detail.companiesSection", "Companies") }),
485
+ /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground", children: companiesSummaryLabel })
486
+ ] }),
487
+ data.companies.length ? /* @__PURE__ */ jsx("ul", { className: "space-y-2 text-sm", children: data.companies.map((company) => /* @__PURE__ */ jsxs("li", { className: "flex flex-col gap-1", children: [
488
+ /* @__PURE__ */ jsx(Link, { href: `/backend/customers/companies-v2/${encodeURIComponent(company.id)}`, className: "font-medium text-foreground hover:underline", children: company.label }),
489
+ /* @__PURE__ */ jsx("span", { className: "text-xs text-muted-foreground", children: company.subtitle ?? t("customers.deals.detail.companiesNoDetails", "No additional details") })
490
+ ] }, company.id)) }) : /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: t("customers.deals.detail.noCompanies", "No companies linked to this deal yet.") })
491
+ ] })
492
+ ] })
493
+ ] }),
494
+ /* @__PURE__ */ jsx("div", { className: "space-y-6", children: /* @__PURE__ */ jsxs(
495
+ "div",
496
+ {
497
+ ref: dealSettingsRef,
498
+ id: "deal-settings",
499
+ className: "rounded-lg border bg-card p-4",
500
+ children: [
501
+ /* @__PURE__ */ jsx("h2", { className: "mb-4 text-sm font-semibold uppercase text-muted-foreground", children: t("customers.deals.detail.formTitle", "Deal settings") }),
502
+ /* @__PURE__ */ jsx(
503
+ DealForm,
504
+ {
505
+ mode: "edit",
506
+ initialValues: {
507
+ id: data.deal.id,
508
+ title: data.deal.title ?? "",
509
+ status: data.deal.status ?? "",
510
+ pipelineStage: data.deal.pipelineStage ?? "",
511
+ pipelineId: data.deal.pipelineId ?? "",
512
+ pipelineStageId: data.deal.pipelineStageId ?? "",
513
+ valueAmount: data.deal.valueAmount ? Number(data.deal.valueAmount) : null,
514
+ valueCurrency: data.deal.valueCurrency ?? void 0,
515
+ probability: data.deal.probability ?? null,
516
+ expectedCloseAt: data.deal.expectedCloseAt ?? null,
517
+ description: data.deal.description ?? "",
518
+ personIds: data.people.map((person) => person.id),
519
+ companyIds: data.companies.map((company) => company.id),
520
+ people: data.people.map((person) => ({ id: person.id, label: person.label })),
521
+ companies: data.companies.map((company) => ({ id: company.id, label: company.label })),
522
+ ...Object.fromEntries(
523
+ Object.entries(data.customFields).filter(([key]) => key.startsWith("cf_")).map(([key, value]) => [key, value])
524
+ )
525
+ },
526
+ onSubmit: handleFormSubmit,
527
+ onCancel: () => setReloadToken((token) => token + 1),
528
+ onDelete: handleDelete,
529
+ isSubmitting: isSaving || isDeleting
530
+ },
531
+ data.deal.updatedAt
532
+ )
533
+ ]
534
+ }
535
+ ) })
536
+ ] })
532
537
  ] })
533
- ] }) }),
538
+ ] }),
534
539
  ConfirmDialogElement
535
540
  ] });
536
541
  }