@open-mercato/core 0.6.3-develop.3635.1.e4a05c16e8 → 0.6.3-develop.3653.1.b8558737ae

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 (160) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/dist/generated/entities/customer_settings/index.js +2 -0
  3. package/dist/generated/entities/customer_settings/index.js.map +2 -2
  4. package/dist/generated/entity-fields-registry.js +1 -0
  5. package/dist/generated/entity-fields-registry.js.map +2 -2
  6. package/dist/modules/customers/api/deals/aggregate/route.js +332 -0
  7. package/dist/modules/customers/api/deals/aggregate/route.js.map +7 -0
  8. package/dist/modules/customers/api/deals/bulk-update-owner/route.js +188 -0
  9. package/dist/modules/customers/api/deals/bulk-update-owner/route.js.map +7 -0
  10. package/dist/modules/customers/api/deals/bulk-update-stage/route.js +188 -0
  11. package/dist/modules/customers/api/deals/bulk-update-stage/route.js.map +7 -0
  12. package/dist/modules/customers/api/deals/route.js +255 -122
  13. package/dist/modules/customers/api/deals/route.js.map +2 -2
  14. package/dist/modules/customers/api/settings/stuck-threshold/route.js +169 -0
  15. package/dist/modules/customers/api/settings/stuck-threshold/route.js.map +7 -0
  16. package/dist/modules/customers/backend/config/customers/deals/page.js +181 -0
  17. package/dist/modules/customers/backend/config/customers/deals/page.js.map +7 -0
  18. package/dist/modules/customers/backend/config/customers/deals/page.meta.js +38 -0
  19. package/dist/modules/customers/backend/config/customers/deals/page.meta.js.map +7 -0
  20. package/dist/modules/customers/backend/customers/deals/create/page.js +17 -6
  21. package/dist/modules/customers/backend/customers/deals/create/page.js.map +2 -2
  22. package/dist/modules/customers/backend/customers/deals/page.js +2 -0
  23. package/dist/modules/customers/backend/customers/deals/page.js.map +2 -2
  24. package/dist/modules/customers/backend/customers/deals/pipeline/components/ActivityComposerDialog.js +217 -0
  25. package/dist/modules/customers/backend/customers/deals/pipeline/components/ActivityComposerDialog.js.map +7 -0
  26. package/dist/modules/customers/backend/customers/deals/pipeline/components/AddStageDialog.js +335 -0
  27. package/dist/modules/customers/backend/customers/deals/pipeline/components/AddStageDialog.js.map +7 -0
  28. package/dist/modules/customers/backend/customers/deals/pipeline/components/AddStageLane.js +29 -0
  29. package/dist/modules/customers/backend/customers/deals/pipeline/components/AddStageLane.js.map +7 -0
  30. package/dist/modules/customers/backend/customers/deals/pipeline/components/BulkActionsBar.js +160 -0
  31. package/dist/modules/customers/backend/customers/deals/pipeline/components/BulkActionsBar.js.map +7 -0
  32. package/dist/modules/customers/backend/customers/deals/pipeline/components/ChangeOwnerDialog.js +157 -0
  33. package/dist/modules/customers/backend/customers/deals/pipeline/components/ChangeOwnerDialog.js.map +7 -0
  34. package/dist/modules/customers/backend/customers/deals/pipeline/components/ChangeStageDialog.js +114 -0
  35. package/dist/modules/customers/backend/customers/deals/pipeline/components/ChangeStageDialog.js.map +7 -0
  36. package/dist/modules/customers/backend/customers/deals/pipeline/components/ChipButton.js +36 -0
  37. package/dist/modules/customers/backend/customers/deals/pipeline/components/ChipButton.js.map +7 -0
  38. package/dist/modules/customers/backend/customers/deals/pipeline/components/CloseDateFilterPopover.js +199 -0
  39. package/dist/modules/customers/backend/customers/deals/pipeline/components/CloseDateFilterPopover.js.map +7 -0
  40. package/dist/modules/customers/backend/customers/deals/pipeline/components/CurrencyBreakdownTable.js +71 -0
  41. package/dist/modules/customers/backend/customers/deals/pipeline/components/CurrencyBreakdownTable.js.map +7 -0
  42. package/dist/modules/customers/backend/customers/deals/pipeline/components/CurrencyFilterPopover.js +233 -0
  43. package/dist/modules/customers/backend/customers/deals/pipeline/components/CurrencyFilterPopover.js.map +7 -0
  44. package/dist/modules/customers/backend/customers/deals/pipeline/components/CustomizeViewDialog.js +126 -0
  45. package/dist/modules/customers/backend/customers/deals/pipeline/components/CustomizeViewDialog.js.map +7 -0
  46. package/dist/modules/customers/backend/customers/deals/pipeline/components/DashedTileButton.js +31 -0
  47. package/dist/modules/customers/backend/customers/deals/pipeline/components/DashedTileButton.js.map +7 -0
  48. package/dist/modules/customers/backend/customers/deals/pipeline/components/DealCard.js +389 -0
  49. package/dist/modules/customers/backend/customers/deals/pipeline/components/DealCard.js.map +7 -0
  50. package/dist/modules/customers/backend/customers/deals/pipeline/components/DealCardMenu.js +181 -0
  51. package/dist/modules/customers/backend/customers/deals/pipeline/components/DealCardMenu.js.map +7 -0
  52. package/dist/modules/customers/backend/customers/deals/pipeline/components/EntityFilterPopover.js +199 -0
  53. package/dist/modules/customers/backend/customers/deals/pipeline/components/EntityFilterPopover.js.map +7 -0
  54. package/dist/modules/customers/backend/customers/deals/pipeline/components/FilterBarRow.js +44 -0
  55. package/dist/modules/customers/backend/customers/deals/pipeline/components/FilterBarRow.js.map +7 -0
  56. package/dist/modules/customers/backend/customers/deals/pipeline/components/FilterPopoverShell.js +70 -0
  57. package/dist/modules/customers/backend/customers/deals/pipeline/components/FilterPopoverShell.js.map +7 -0
  58. package/dist/modules/customers/backend/customers/deals/pipeline/components/Lane.js +278 -0
  59. package/dist/modules/customers/backend/customers/deals/pipeline/components/Lane.js.map +7 -0
  60. package/dist/modules/customers/backend/customers/deals/pipeline/components/LaneCurrencyBreakdown.js +135 -0
  61. package/dist/modules/customers/backend/customers/deals/pipeline/components/LaneCurrencyBreakdown.js.map +7 -0
  62. package/dist/modules/customers/backend/customers/deals/pipeline/components/LaneResizeHandle.js +83 -0
  63. package/dist/modules/customers/backend/customers/deals/pipeline/components/LaneResizeHandle.js.map +7 -0
  64. package/dist/modules/customers/backend/customers/deals/pipeline/components/PipelineFilterPopover.js +155 -0
  65. package/dist/modules/customers/backend/customers/deals/pipeline/components/PipelineFilterPopover.js.map +7 -0
  66. package/dist/modules/customers/backend/customers/deals/pipeline/components/QuickDealDialog.js +318 -0
  67. package/dist/modules/customers/backend/customers/deals/pipeline/components/QuickDealDialog.js.map +7 -0
  68. package/dist/modules/customers/backend/customers/deals/pipeline/components/SortByPopover.js +138 -0
  69. package/dist/modules/customers/backend/customers/deals/pipeline/components/SortByPopover.js.map +7 -0
  70. package/dist/modules/customers/backend/customers/deals/pipeline/components/StatusFilterPopover.js +126 -0
  71. package/dist/modules/customers/backend/customers/deals/pipeline/components/StatusFilterPopover.js.map +7 -0
  72. package/dist/modules/customers/backend/customers/deals/pipeline/components/ViewTabsRow.js +71 -0
  73. package/dist/modules/customers/backend/customers/deals/pipeline/components/ViewTabsRow.js.map +7 -0
  74. package/dist/modules/customers/backend/customers/deals/pipeline/components/constants.js +7 -0
  75. package/dist/modules/customers/backend/customers/deals/pipeline/components/constants.js.map +7 -0
  76. package/dist/modules/customers/backend/customers/deals/pipeline/page.js +2330 -415
  77. package/dist/modules/customers/backend/customers/deals/pipeline/page.js.map +3 -3
  78. package/dist/modules/customers/commands/deals.js +6 -0
  79. package/dist/modules/customers/commands/deals.js.map +2 -2
  80. package/dist/modules/customers/commands/pipeline-stages.js +48 -13
  81. package/dist/modules/customers/commands/pipeline-stages.js.map +3 -3
  82. package/dist/modules/customers/commands/settings.js +45 -5
  83. package/dist/modules/customers/commands/settings.js.map +2 -2
  84. package/dist/modules/customers/data/enrichers.js +130 -1
  85. package/dist/modules/customers/data/enrichers.js.map +2 -2
  86. package/dist/modules/customers/data/entities.js +4 -0
  87. package/dist/modules/customers/data/entities.js.map +2 -2
  88. package/dist/modules/customers/data/validators.js +29 -2
  89. package/dist/modules/customers/data/validators.js.map +2 -2
  90. package/dist/modules/customers/lib/bulkDeals.js +150 -0
  91. package/dist/modules/customers/lib/bulkDeals.js.map +7 -0
  92. package/dist/modules/customers/lib/kysely.js +12 -0
  93. package/dist/modules/customers/lib/kysely.js.map +7 -0
  94. package/dist/modules/customers/lib/stuckDeals.js +32 -0
  95. package/dist/modules/customers/lib/stuckDeals.js.map +7 -0
  96. package/dist/modules/customers/migrations/Migration20260513203311_customers.js +13 -0
  97. package/dist/modules/customers/migrations/Migration20260513203311_customers.js.map +7 -0
  98. package/dist/modules/customers/migrations/Migration20260519120000_pipeline_stage_color_tones.js +52 -0
  99. package/dist/modules/customers/migrations/Migration20260519120000_pipeline_stage_color_tones.js.map +7 -0
  100. package/dist/modules/customers/workers/deals-bulk-update-owner.js +41 -0
  101. package/dist/modules/customers/workers/deals-bulk-update-owner.js.map +7 -0
  102. package/dist/modules/customers/workers/deals-bulk-update-stage.js +41 -0
  103. package/dist/modules/customers/workers/deals-bulk-update-stage.js.map +7 -0
  104. package/generated/entities/customer_settings/index.ts +1 -0
  105. package/generated/entity-fields-registry.ts +1 -0
  106. package/package.json +7 -7
  107. package/src/modules/customers/api/deals/aggregate/route.ts +438 -0
  108. package/src/modules/customers/api/deals/bulk-update-owner/route.ts +216 -0
  109. package/src/modules/customers/api/deals/bulk-update-stage/route.ts +228 -0
  110. package/src/modules/customers/api/deals/route.ts +330 -135
  111. package/src/modules/customers/api/settings/stuck-threshold/route.ts +195 -0
  112. package/src/modules/customers/backend/config/customers/deals/page.meta.ts +36 -0
  113. package/src/modules/customers/backend/config/customers/deals/page.tsx +205 -0
  114. package/src/modules/customers/backend/customers/deals/create/page.tsx +25 -6
  115. package/src/modules/customers/backend/customers/deals/page.tsx +2 -0
  116. package/src/modules/customers/backend/customers/deals/pipeline/components/ActivityComposerDialog.tsx +277 -0
  117. package/src/modules/customers/backend/customers/deals/pipeline/components/AddStageDialog.tsx +425 -0
  118. package/src/modules/customers/backend/customers/deals/pipeline/components/AddStageLane.tsx +31 -0
  119. package/src/modules/customers/backend/customers/deals/pipeline/components/BulkActionsBar.tsx +171 -0
  120. package/src/modules/customers/backend/customers/deals/pipeline/components/ChangeOwnerDialog.tsx +196 -0
  121. package/src/modules/customers/backend/customers/deals/pipeline/components/ChangeStageDialog.tsx +138 -0
  122. package/src/modules/customers/backend/customers/deals/pipeline/components/ChipButton.tsx +47 -0
  123. package/src/modules/customers/backend/customers/deals/pipeline/components/CloseDateFilterPopover.tsx +232 -0
  124. package/src/modules/customers/backend/customers/deals/pipeline/components/CurrencyBreakdownTable.tsx +110 -0
  125. package/src/modules/customers/backend/customers/deals/pipeline/components/CurrencyFilterPopover.tsx +310 -0
  126. package/src/modules/customers/backend/customers/deals/pipeline/components/CustomizeViewDialog.tsx +169 -0
  127. package/src/modules/customers/backend/customers/deals/pipeline/components/DashedTileButton.tsx +54 -0
  128. package/src/modules/customers/backend/customers/deals/pipeline/components/DealCard.tsx +562 -0
  129. package/src/modules/customers/backend/customers/deals/pipeline/components/DealCardMenu.tsx +214 -0
  130. package/src/modules/customers/backend/customers/deals/pipeline/components/EntityFilterPopover.tsx +257 -0
  131. package/src/modules/customers/backend/customers/deals/pipeline/components/FilterBarRow.tsx +62 -0
  132. package/src/modules/customers/backend/customers/deals/pipeline/components/FilterPopoverShell.tsx +101 -0
  133. package/src/modules/customers/backend/customers/deals/pipeline/components/Lane.tsx +378 -0
  134. package/src/modules/customers/backend/customers/deals/pipeline/components/LaneCurrencyBreakdown.tsx +192 -0
  135. package/src/modules/customers/backend/customers/deals/pipeline/components/LaneResizeHandle.tsx +107 -0
  136. package/src/modules/customers/backend/customers/deals/pipeline/components/PipelineFilterPopover.tsx +196 -0
  137. package/src/modules/customers/backend/customers/deals/pipeline/components/QuickDealDialog.tsx +408 -0
  138. package/src/modules/customers/backend/customers/deals/pipeline/components/SortByPopover.tsx +164 -0
  139. package/src/modules/customers/backend/customers/deals/pipeline/components/StatusFilterPopover.tsx +171 -0
  140. package/src/modules/customers/backend/customers/deals/pipeline/components/ViewTabsRow.tsx +84 -0
  141. package/src/modules/customers/backend/customers/deals/pipeline/components/constants.ts +16 -0
  142. package/src/modules/customers/backend/customers/deals/pipeline/page.tsx +2841 -550
  143. package/src/modules/customers/commands/deals.ts +19 -0
  144. package/src/modules/customers/commands/pipeline-stages.ts +68 -13
  145. package/src/modules/customers/commands/settings.ts +64 -5
  146. package/src/modules/customers/data/enrichers.ts +209 -2
  147. package/src/modules/customers/data/entities.ts +4 -1
  148. package/src/modules/customers/data/validators.ts +36 -2
  149. package/src/modules/customers/i18n/de.json +244 -0
  150. package/src/modules/customers/i18n/en.json +244 -0
  151. package/src/modules/customers/i18n/es.json +244 -0
  152. package/src/modules/customers/i18n/pl.json +244 -0
  153. package/src/modules/customers/lib/bulkDeals.ts +231 -0
  154. package/src/modules/customers/lib/kysely.ts +60 -0
  155. package/src/modules/customers/lib/stuckDeals.ts +88 -0
  156. package/src/modules/customers/migrations/.snapshot-open-mercato.json +16 -0
  157. package/src/modules/customers/migrations/Migration20260513203311_customers.ts +13 -0
  158. package/src/modules/customers/migrations/Migration20260519120000_pipeline_stage_color_tones.ts +71 -0
  159. package/src/modules/customers/workers/deals-bulk-update-owner.ts +46 -0
  160. package/src/modules/customers/workers/deals-bulk-update-stage.ts +46 -0
@@ -864,6 +864,248 @@
864
864
  "customers.deals.form.people.searchPlaceholder": "Buscar personas…",
865
865
  "customers.deals.form.pipeline.placeholder": "Selecciona una etapa del pipeline",
866
866
  "customers.deals.form.status.placeholder": "Selecciona un estado de oportunidad",
867
+ "customers.deals.kanban.activityComposer.body": "Notes",
868
+ "customers.deals.kanban.activityComposer.body.placeholder": "What happened? Markdown supported.",
869
+ "customers.deals.kanban.activityComposer.call": "Log a call",
870
+ "customers.deals.kanban.activityComposer.context": "Deal: {title}",
871
+ "customers.deals.kanban.activityComposer.email": "Send email",
872
+ "customers.deals.kanban.activityComposer.error": "Failed to save activity.",
873
+ "customers.deals.kanban.activityComposer.noEntity": "Link a company to this deal before logging activities here.",
874
+ "customers.deals.kanban.activityComposer.note": "Add a note",
875
+ "customers.deals.kanban.activityComposer.phone": "Phone number",
876
+ "customers.deals.kanban.activityComposer.required": "Add a title or body before saving.",
877
+ "customers.deals.kanban.activityComposer.required.email": "Añade un asunto o cuerpo antes de guardar.",
878
+ "customers.deals.kanban.activityComposer.required.titleOrBody": "Añade un título o cuerpo antes de guardar.",
879
+ "customers.deals.kanban.activityComposer.submit": "Save activity",
880
+ "customers.deals.kanban.activityComposer.success": "Activity saved.",
881
+ "customers.deals.kanban.activityComposer.title": "Subject",
882
+ "customers.deals.kanban.activityComposer.title.placeholder": "Short summary (optional)",
883
+ "customers.deals.kanban.addStage.color": "Color",
884
+ "customers.deals.kanban.addStage.color.amber": "Amber",
885
+ "customers.deals.kanban.addStage.color.blue": "Blue",
886
+ "customers.deals.kanban.addStage.color.brand": "Violeta",
887
+ "customers.deals.kanban.addStage.color.error": "Rojo",
888
+ "customers.deals.kanban.addStage.color.gray": "Gray",
889
+ "customers.deals.kanban.addStage.color.green": "Green",
890
+ "customers.deals.kanban.addStage.color.info": "Azul",
891
+ "customers.deals.kanban.addStage.color.neutral": "Gris",
892
+ "customers.deals.kanban.addStage.color.none": "No color",
893
+ "customers.deals.kanban.addStage.color.pink": "Rosa",
894
+ "customers.deals.kanban.addStage.color.red": "Red",
895
+ "customers.deals.kanban.addStage.color.success": "Verde",
896
+ "customers.deals.kanban.addStage.color.violet": "Violet",
897
+ "customers.deals.kanban.addStage.color.warning": "Ámbar",
898
+ "customers.deals.kanban.addStage.context": "Pipeline: {pipeline}",
899
+ "customers.deals.kanban.addStage.error": "Failed to add stage.",
900
+ "customers.deals.kanban.addStage.label": "Stage name",
901
+ "customers.deals.kanban.addStage.label.placeholder": "e.g. Discovery",
902
+ "customers.deals.kanban.addStage.label.required": "Stage name is required.",
903
+ "customers.deals.kanban.addStage.position": "Position in pipeline",
904
+ "customers.deals.kanban.addStage.position.after": "After {label}",
905
+ "customers.deals.kanban.addStage.position.end": "At the end (default)",
906
+ "customers.deals.kanban.addStage.position.help": "Choose where the new stage appears on the kanban. Existing stages after the chosen position shift one step to the right.",
907
+ "customers.deals.kanban.addStage.position.start": "At the start",
908
+ "customers.deals.kanban.addStage.submit": "Add stage",
909
+ "customers.deals.kanban.addStage.success": "Stage added.",
910
+ "customers.deals.kanban.addStage.title": "New stage",
911
+ "customers.deals.kanban.board.scrollNext": "Scroll to next stage",
912
+ "customers.deals.kanban.board.scrollPrev": "Scroll to previous stage",
913
+ "customers.deals.kanban.boardSummary.breakdownTrigger": "Breakdown",
914
+ "customers.deals.kanban.boardSummary.count": "{count} deals",
915
+ "customers.deals.kanban.boardSummary.headingLabel": "PIPELINE",
916
+ "customers.deals.kanban.boardSummary.partial": "partial",
917
+ "customers.deals.kanban.boardSummary.partialHint": "Missing FX rates for {currencies} — excluded from total",
918
+ "customers.deals.kanban.breadcrumb.dashboard": "Dashboard",
919
+ "customers.deals.kanban.breadcrumb.deals": "Deals",
920
+ "customers.deals.kanban.bulk.aria.bar": "Bulk actions",
921
+ "customers.deals.kanban.bulk.aria.clear": "Clear selection",
922
+ "customers.deals.kanban.bulk.changeOwner": "Change owner",
923
+ "customers.deals.kanban.bulk.changeOwner.confirm": "Reassign {count} deals",
924
+ "customers.deals.kanban.bulk.changeOwner.empty": "No staff members found.",
925
+ "customers.deals.kanban.bulk.changeOwner.error": "Failed to start bulk owner update.",
926
+ "customers.deals.kanban.bulk.changeOwner.helper": "Pick a staff member who will own all selected deals.",
927
+ "customers.deals.kanban.bulk.changeOwner.progress.description": "{count} deals queued for owner reassignment",
928
+ "customers.deals.kanban.bulk.changeOwner.progress.name": "Reassign selected deals to a new owner",
929
+ "customers.deals.kanban.bulk.changeOwner.queued": "Bulk owner update started ({count} deals).",
930
+ "customers.deals.kanban.bulk.changeOwner.search": "Search by name or email…",
931
+ "customers.deals.kanban.bulk.changeOwner.title": "Change owner for {count} deals",
932
+ "customers.deals.kanban.bulk.changeStage": "Change stage",
933
+ "customers.deals.kanban.bulk.changeStage.confirm": "Move {count} deals",
934
+ "customers.deals.kanban.bulk.changeStage.context": "Pipeline: {pipeline}",
935
+ "customers.deals.kanban.bulk.changeStage.error": "Failed to start bulk stage update.",
936
+ "customers.deals.kanban.bulk.changeStage.progress.description": "{count} deals queued for stage update",
937
+ "customers.deals.kanban.bulk.changeStage.progress.name": "Move selected deals to a new stage",
938
+ "customers.deals.kanban.bulk.changeStage.queued": "Bulk stage update started ({count} deals).",
939
+ "customers.deals.kanban.bulk.changeStage.title": "Change stage for {count} deals",
940
+ "customers.deals.kanban.bulk.delete": "Delete",
941
+ "customers.deals.kanban.bulk.delete.failedGroup": "{count} deals could not be deleted: {message}",
942
+ "customers.deals.kanban.bulk.delete.progress.description": "{count} deals queued for deletion",
943
+ "customers.deals.kanban.bulk.delete.progress.name": "Delete selected deals",
944
+ "customers.deals.kanban.bulk.delete.success": "{count} deals deleted.",
945
+ "customers.deals.kanban.bulk.delete.text": "This action cannot be undone.",
946
+ "customers.deals.kanban.bulk.delete.title": "Delete {count} deals?",
947
+ "customers.deals.kanban.bulk.dragOverlayBadge": "{count} more selected",
948
+ "customers.deals.kanban.bulk.exportCsv": "Export CSV",
949
+ "customers.deals.kanban.bulk.selectedCount": "selected",
950
+ "customers.deals.kanban.bulk.totalValue": "Total {value}",
951
+ "customers.deals.kanban.card.action.call": "Call",
952
+ "customers.deals.kanban.card.action.disabledNoCompany": "Link a company to this deal before logging activities.",
953
+ "customers.deals.kanban.card.action.email": "Email",
954
+ "customers.deals.kanban.card.action.note": "Note",
955
+ "customers.deals.kanban.card.aria": "Deal: {title}",
956
+ "customers.deals.kanban.card.aria.menu": "Deal actions",
957
+ "customers.deals.kanban.card.aria.moreCompanies": "{count} more companies",
958
+ "customers.deals.kanban.card.aria.openActivities": "{count} open activities",
959
+ "customers.deals.kanban.card.aria.probability": "Probabilidad: {value}",
960
+ "customers.deals.kanban.card.aria.roledescription": "tarjeta de oportunidad",
961
+ "customers.deals.kanban.card.aria.select": "Select deal",
962
+ "customers.deals.kanban.card.daysInStage": "in {days}d",
963
+ "customers.deals.kanban.card.noValue": "No value",
964
+ "customers.deals.kanban.card.overdueLabel": "Overdue",
965
+ "customers.deals.kanban.card.statusOverdue": "OVERDUE",
966
+ "customers.deals.kanban.card.statusStuck": "STUCK",
967
+ "customers.deals.kanban.comingSoon": "{feature} arrives in the next iteration.",
968
+ "customers.deals.kanban.cta.customize": "Customize view",
969
+ "customers.deals.kanban.cta.newDeal": "New deal",
970
+ "customers.deals.kanban.cta.newStage": "New stage",
971
+ "customers.deals.kanban.cta.quickDeal": "Quick deal",
972
+ "customers.deals.kanban.currencyBreakdown.basePill": "BASE",
973
+ "customers.deals.kanban.currencyBreakdown.colCurrency": "Currency",
974
+ "customers.deals.kanban.currencyBreakdown.colDeals": "Deals",
975
+ "customers.deals.kanban.currencyBreakdown.colNativeTotal": "Native total",
976
+ "customers.deals.kanban.currencyBreakdown.footerCredit": "NBP mid rate · {date}",
977
+ "customers.deals.kanban.currencyBreakdown.headingCount": "({count} deals)",
978
+ "customers.deals.kanban.currencyBreakdown.title": "Lane breakdown",
979
+ "customers.deals.kanban.currencyFilter.allCurrencies": "All currencies",
980
+ "customers.deals.kanban.currencyFilter.apply": "Apply filter",
981
+ "customers.deals.kanban.currencyFilter.chipLabel": "Currency",
982
+ "customers.deals.kanban.currencyFilter.footerCredit": "NBP mid conversion rate · {date}",
983
+ "customers.deals.kanban.currencyFilter.subtitle": "{label} · {count} deals · {total} {currency}",
984
+ "customers.deals.kanban.currencyFilter.title": "Filter kanban by currency",
985
+ "customers.deals.kanban.customize.actions": "Actions",
986
+ "customers.deals.kanban.customize.configCols": "Configure card fields",
987
+ "customers.deals.kanban.customize.configCols.help": "Show / hide / reorder",
988
+ "customers.deals.kanban.customize.manageStages": "Manage pipeline stages",
989
+ "customers.deals.kanban.customize.manageStages.help": "Edit names, colors, required fields",
990
+ "customers.deals.kanban.customize.reset": "Reset to default",
991
+ "customers.deals.kanban.customize.resetDefault": "Reset to default",
992
+ "customers.deals.kanban.customize.resetDefault.help": "Clear filters and restore columns",
993
+ "customers.deals.kanban.customize.resetWidths": "Reset column widths",
994
+ "customers.deals.kanban.customize.resetWidths.helpCount": "Restore the default width on {count} resized column(s)",
995
+ "customers.deals.kanban.customize.resetWidths.helpEmpty": "No columns have been resized yet",
996
+ "customers.deals.kanban.customize.title": "Customize view",
997
+ "customers.deals.kanban.filter.add": "+ More",
998
+ "customers.deals.kanban.filter.all": "All",
999
+ "customers.deals.kanban.filter.allCount": "All ({count})",
1000
+ "customers.deals.kanban.filter.any": "Any",
1001
+ "customers.deals.kanban.filter.apply": "Apply",
1002
+ "customers.deals.kanban.filter.aria.chip": "Filter by {label}",
1003
+ "customers.deals.kanban.filter.cancel": "Cancel",
1004
+ "customers.deals.kanban.filter.clear": "Clear",
1005
+ "customers.deals.kanban.filter.close": "Close",
1006
+ "customers.deals.kanban.filter.close.title": "Filter · Expected close",
1007
+ "customers.deals.kanban.filter.companies": "Companies",
1008
+ "customers.deals.kanban.filter.from": "From {date}",
1009
+ "customers.deals.kanban.filter.label": "Filter",
1010
+ "customers.deals.kanban.filter.more": "More filters",
1011
+ "customers.deals.kanban.filter.multipleSelected": "{count} selected",
1012
+ "customers.deals.kanban.filter.noResults": "No matches",
1013
+ "customers.deals.kanban.filter.owner": "Owner",
1014
+ "customers.deals.kanban.filter.people": "People",
1015
+ "customers.deals.kanban.filter.pipeline": "Pipeline",
1016
+ "customers.deals.kanban.filter.pipeline.all": "All pipelines",
1017
+ "customers.deals.kanban.filter.pipeline.allHelper": "{count} pipelines",
1018
+ "customers.deals.kanban.filter.pipeline.selectedNone": "No pipeline filter",
1019
+ "customers.deals.kanban.filter.pipeline.selectedOne": "1 selected · {name}",
1020
+ "customers.deals.kanban.filter.pipeline.title": "Filter · Pipeline",
1021
+ "customers.deals.kanban.filter.preset.next30": "Next 30 days",
1022
+ "customers.deals.kanban.filter.preset.next90": "Next 90 days",
1023
+ "customers.deals.kanban.filter.preset.overdue": "Overdue",
1024
+ "customers.deals.kanban.filter.preset.thisMonth": "This month",
1025
+ "customers.deals.kanban.filter.preset.thisQuarter": "This quarter",
1026
+ "customers.deals.kanban.filter.searchPlaceholder": "Search…",
1027
+ "customers.deals.kanban.filter.selected": "selected",
1028
+ "customers.deals.kanban.filter.status": "Status",
1029
+ "customers.deals.kanban.filter.status.lost": "Lost",
1030
+ "customers.deals.kanban.filter.status.open": "Open",
1031
+ "customers.deals.kanban.filter.status.title": "Filter · Status",
1032
+ "customers.deals.kanban.filter.status.won": "Won",
1033
+ "customers.deals.kanban.filter.title": "Filter · {label}",
1034
+ "customers.deals.kanban.filter.to": "To",
1035
+ "customers.deals.kanban.filter.until": "Until {date}",
1036
+ "customers.deals.kanban.footer.count": "Showing {visible} of {total} deals in {pipeline} pipeline",
1037
+ "customers.deals.kanban.helper.dragHint": "Drag cards between lanes to update stage",
1038
+ "customers.deals.kanban.lane.aria.loadMore": "Load more deals in {stage}",
1039
+ "customers.deals.kanban.lane.aria.partialCount": "Showing {visible} of {total}",
1040
+ "customers.deals.kanban.lane.aria.quickAdd": "Quickly add a deal to {stage}",
1041
+ "customers.deals.kanban.lane.currencyBreakdown.count": "({count})",
1042
+ "customers.deals.kanban.lane.currencyBreakdown.missingRate": "No FX rate to {base} — excluded from the converted total",
1043
+ "customers.deals.kanban.lane.currencyBreakdown.missingRatesHint": "Missing FX rates for {currencies} — excluded from total. Configure exchange rates to see the full converted value.",
1044
+ "customers.deals.kanban.lane.currencyBreakdown.partialTotal": "Total (partial)",
1045
+ "customers.deals.kanban.lane.currencyBreakdown.title": "Per-currency breakdown",
1046
+ "customers.deals.kanban.lane.currencyBreakdown.total": "Total",
1047
+ "customers.deals.kanban.lane.currencyBreakdown.trigger": "Show per-currency breakdown ({count} currencies)",
1048
+ "customers.deals.kanban.lane.empty": "No deals in this stage yet.",
1049
+ "customers.deals.kanban.lane.loadMore": "Show more ({remaining})",
1050
+ "customers.deals.kanban.lane.loadingMore": "Loading…",
1051
+ "customers.deals.kanban.lane.resizeHandle": "Drag to resize column. Double-click to reset width.",
1052
+ "customers.deals.kanban.menu.delete": "Delete",
1053
+ "customers.deals.kanban.menu.delete.confirmText": "This action cannot be undone.",
1054
+ "customers.deals.kanban.menu.delete.confirmTitle": "Delete deal “{title}”?",
1055
+ "customers.deals.kanban.menu.delete.error": "Failed to delete deal.",
1056
+ "customers.deals.kanban.menu.delete.success": "Deal deleted.",
1057
+ "customers.deals.kanban.menu.duplicate": "Duplicate",
1058
+ "customers.deals.kanban.menu.duplicate.error": "Failed to duplicate deal.",
1059
+ "customers.deals.kanban.menu.duplicate.success": "Deal duplicated.",
1060
+ "customers.deals.kanban.menu.duplicate.titleSuffix": "{title} (copy)",
1061
+ "customers.deals.kanban.menu.edit": "Edit",
1062
+ "customers.deals.kanban.menu.error.status": "Failed to update deal status.",
1063
+ "customers.deals.kanban.menu.markLost": "Mark as Lost",
1064
+ "customers.deals.kanban.menu.markLost.success": "Deal marked as lost.",
1065
+ "customers.deals.kanban.menu.markWon": "Mark as Won",
1066
+ "customers.deals.kanban.menu.markWon.success": "Deal marked as won.",
1067
+ "customers.deals.kanban.menu.moveStage": "Move stage…",
1068
+ "customers.deals.kanban.menu.open": "Open deal",
1069
+ "customers.deals.kanban.pageTitle": "Deals",
1070
+ "customers.deals.kanban.quickDeal.cancel": "Cancel",
1071
+ "customers.deals.kanban.quickDeal.company": "Company",
1072
+ "customers.deals.kanban.quickDeal.companyPh": "Pick a company or add new…",
1073
+ "customers.deals.kanban.quickDeal.context": "Pipeline: {pipeline} · Stage: {stage}",
1074
+ "customers.deals.kanban.quickDeal.currency": "Currency",
1075
+ "customers.deals.kanban.quickDeal.description": "Description",
1076
+ "customers.deals.kanban.quickDeal.description.placeholder": "Short context, decision makers or next steps. Markdown supported.",
1077
+ "customers.deals.kanban.quickDeal.expectedClose": "Expected close",
1078
+ "customers.deals.kanban.quickDeal.more": "More details (probability, close date, description)",
1079
+ "customers.deals.kanban.quickDeal.owner": "Owner",
1080
+ "customers.deals.kanban.quickDeal.probability": "Probability",
1081
+ "customers.deals.kanban.quickDeal.status": "Status",
1082
+ "customers.deals.kanban.quickDeal.status.in_progress": "En curso",
1083
+ "customers.deals.kanban.quickDeal.status.loose": "Estancado",
1084
+ "customers.deals.kanban.quickDeal.status.open": "Abierto",
1085
+ "customers.deals.kanban.quickDeal.status.win": "Ganado",
1086
+ "customers.deals.kanban.quickDeal.submit": "Add deal",
1087
+ "customers.deals.kanban.quickDeal.success": "Deal added to {stage}.",
1088
+ "customers.deals.kanban.quickDeal.title": "Quick deal",
1089
+ "customers.deals.kanban.quickDeal.title.label": "Deal title",
1090
+ "customers.deals.kanban.quickDeal.title.placeholder": "e.g. Q3 Expansion — Lighting Package",
1091
+ "customers.deals.kanban.quickDeal.title.required": "Title is required.",
1092
+ "customers.deals.kanban.quickDeal.value": "Value",
1093
+ "customers.deals.kanban.search.placeholder": "Search deals…",
1094
+ "customers.deals.kanban.sort.default": "Default",
1095
+ "customers.deals.kanban.sort.defaultHint": "Default: {label}",
1096
+ "customers.deals.kanban.sort.label": "Sort",
1097
+ "customers.deals.kanban.sort.option.closeSoonest": "Close date (soonest)",
1098
+ "customers.deals.kanban.sort.option.createdNewest": "Created (newest)",
1099
+ "customers.deals.kanban.sort.option.ownerAsc": "Owner (A → Z)",
1100
+ "customers.deals.kanban.sort.option.probabilityHigh": "Probability (high to low)",
1101
+ "customers.deals.kanban.sort.option.updatedNewest": "Updated (newest)",
1102
+ "customers.deals.kanban.sort.option.updatedOldest": "Updated (oldest)",
1103
+ "customers.deals.kanban.sort.option.valueHigh": "Value (high to low)",
1104
+ "customers.deals.kanban.sort.option.valueLow": "Value (low to high)",
1105
+ "customers.deals.kanban.sort.title": "Sort by",
1106
+ "customers.deals.kanban.view.kanban": "Kanban",
1107
+ "customers.deals.kanban.view.list": "List",
1108
+ "customers.deals.kanban.view.tablistLabel": "Deals views",
867
1109
  "customers.deals.list.actions.delete": "Eliminar",
868
1110
  "customers.deals.list.actions.deleting": "Eliminando…",
869
1111
  "customers.deals.list.actions.edit": "Editar",
@@ -944,6 +1186,7 @@
944
1186
  "customers.errors.assign_failed": "No se pudo asignar la etiqueta",
945
1187
  "customers.errors.assignable_staff_load_failed": "No se pudo cargar el personal asignable",
946
1188
  "customers.errors.authentication_required": "Se requiere autenticación",
1189
+ "customers.errors.bulk_enqueue_failed": "No se pudo encolar el trabajo masivo",
947
1190
  "customers.errors.comment_required": "Se requiere el ID de la nota",
948
1191
  "customers.errors.company_not_found": "Empresa no encontrada",
949
1192
  "customers.errors.company_people_load_failed": "No se pudieron cargar las personas vinculadas",
@@ -965,6 +1208,7 @@
965
1208
  "customers.errors.internal": "Error interno del servidor",
966
1209
  "customers.errors.internalError": "Error interno del servidor",
967
1210
  "customers.errors.invalid_date_time": "Fecha/hora no válida",
1211
+ "customers.errors.invalid_payload": "Datos de solicitud no válidos",
968
1212
  "customers.errors.invalid_query": "Parámetros de consulta no válidos",
969
1213
  "customers.errors.kind_settings_load_failed": "No se pudo cargar la configuración de la categoría",
970
1214
  "customers.errors.label_duplicate": "Ya existe una etiqueta con este slug",
@@ -864,6 +864,248 @@
864
864
  "customers.deals.form.people.searchPlaceholder": "Szukaj osób…",
865
865
  "customers.deals.form.pipeline.placeholder": "Wybierz lejek…",
866
866
  "customers.deals.form.status.placeholder": "Wybierz status szansy",
867
+ "customers.deals.kanban.activityComposer.body": "Notes",
868
+ "customers.deals.kanban.activityComposer.body.placeholder": "What happened? Markdown supported.",
869
+ "customers.deals.kanban.activityComposer.call": "Zaloguj rozmowę",
870
+ "customers.deals.kanban.activityComposer.context": "Deal: {title}",
871
+ "customers.deals.kanban.activityComposer.email": "Wyślij e-mail",
872
+ "customers.deals.kanban.activityComposer.error": "Failed to save activity.",
873
+ "customers.deals.kanban.activityComposer.noEntity": "Link a company to this deal before logging activities here.",
874
+ "customers.deals.kanban.activityComposer.note": "Dodaj notatkę",
875
+ "customers.deals.kanban.activityComposer.phone": "Numer telefonu",
876
+ "customers.deals.kanban.activityComposer.required": "Dodaj tytuł lub treść przed zapisaniem.",
877
+ "customers.deals.kanban.activityComposer.required.email": "Dodaj temat lub treść przed zapisaniem.",
878
+ "customers.deals.kanban.activityComposer.required.titleOrBody": "Dodaj tytuł lub treść przed zapisaniem.",
879
+ "customers.deals.kanban.activityComposer.submit": "Zapisz aktywność",
880
+ "customers.deals.kanban.activityComposer.success": "Aktywność zapisana.",
881
+ "customers.deals.kanban.activityComposer.title": "Temat",
882
+ "customers.deals.kanban.activityComposer.title.placeholder": "Krótkie podsumowanie (opcjonalnie)",
883
+ "customers.deals.kanban.addStage.color": "Kolor",
884
+ "customers.deals.kanban.addStage.color.amber": "Bursztynowy",
885
+ "customers.deals.kanban.addStage.color.blue": "Niebieski",
886
+ "customers.deals.kanban.addStage.color.brand": "Fioletowy",
887
+ "customers.deals.kanban.addStage.color.error": "Czerwony",
888
+ "customers.deals.kanban.addStage.color.gray": "Szary",
889
+ "customers.deals.kanban.addStage.color.green": "Zielony",
890
+ "customers.deals.kanban.addStage.color.info": "Niebieski",
891
+ "customers.deals.kanban.addStage.color.neutral": "Szary",
892
+ "customers.deals.kanban.addStage.color.none": "Bez koloru",
893
+ "customers.deals.kanban.addStage.color.pink": "Różowy",
894
+ "customers.deals.kanban.addStage.color.red": "Czerwony",
895
+ "customers.deals.kanban.addStage.color.success": "Zielony",
896
+ "customers.deals.kanban.addStage.color.violet": "Fioletowy",
897
+ "customers.deals.kanban.addStage.color.warning": "Bursztynowy",
898
+ "customers.deals.kanban.addStage.context": "Pipeline: {pipeline}",
899
+ "customers.deals.kanban.addStage.error": "Failed to add stage.",
900
+ "customers.deals.kanban.addStage.label": "Nazwa etapu",
901
+ "customers.deals.kanban.addStage.label.placeholder": "e.g. Discovery",
902
+ "customers.deals.kanban.addStage.label.required": "Stage name is required.",
903
+ "customers.deals.kanban.addStage.position": "Position in pipeline",
904
+ "customers.deals.kanban.addStage.position.after": "After {label}",
905
+ "customers.deals.kanban.addStage.position.end": "At the end (default)",
906
+ "customers.deals.kanban.addStage.position.help": "Choose where the new stage appears on the kanban. Existing stages after the chosen position shift one step to the right.",
907
+ "customers.deals.kanban.addStage.position.start": "At the start",
908
+ "customers.deals.kanban.addStage.submit": "Dodaj etap",
909
+ "customers.deals.kanban.addStage.success": "Stage added.",
910
+ "customers.deals.kanban.addStage.title": "Nowy etap",
911
+ "customers.deals.kanban.board.scrollNext": "Scroll to next stage",
912
+ "customers.deals.kanban.board.scrollPrev": "Scroll to previous stage",
913
+ "customers.deals.kanban.boardSummary.breakdownTrigger": "Breakdown",
914
+ "customers.deals.kanban.boardSummary.count": "{count} deals",
915
+ "customers.deals.kanban.boardSummary.headingLabel": "PIPELINE",
916
+ "customers.deals.kanban.boardSummary.partial": "partial",
917
+ "customers.deals.kanban.boardSummary.partialHint": "Missing FX rates for {currencies} — excluded from total",
918
+ "customers.deals.kanban.breadcrumb.dashboard": "Dashboard",
919
+ "customers.deals.kanban.breadcrumb.deals": "Deals",
920
+ "customers.deals.kanban.bulk.aria.bar": "Bulk actions",
921
+ "customers.deals.kanban.bulk.aria.clear": "Clear selection",
922
+ "customers.deals.kanban.bulk.changeOwner": "Zmień właściciela",
923
+ "customers.deals.kanban.bulk.changeOwner.confirm": "Reassign {count} deals",
924
+ "customers.deals.kanban.bulk.changeOwner.empty": "No staff members found.",
925
+ "customers.deals.kanban.bulk.changeOwner.error": "Failed to start bulk owner update.",
926
+ "customers.deals.kanban.bulk.changeOwner.helper": "Pick a staff member who will own all selected deals.",
927
+ "customers.deals.kanban.bulk.changeOwner.progress.description": "{count} deals queued for owner reassignment",
928
+ "customers.deals.kanban.bulk.changeOwner.progress.name": "Reassign selected deals to a new owner",
929
+ "customers.deals.kanban.bulk.changeOwner.queued": "Bulk owner update started ({count} deals).",
930
+ "customers.deals.kanban.bulk.changeOwner.search": "Search by name or email…",
931
+ "customers.deals.kanban.bulk.changeOwner.title": "Change owner for {count} deals",
932
+ "customers.deals.kanban.bulk.changeStage": "Zmień etap",
933
+ "customers.deals.kanban.bulk.changeStage.confirm": "Move {count} deals",
934
+ "customers.deals.kanban.bulk.changeStage.context": "Pipeline: {pipeline}",
935
+ "customers.deals.kanban.bulk.changeStage.error": "Failed to start bulk stage update.",
936
+ "customers.deals.kanban.bulk.changeStage.progress.description": "{count} deals queued for stage update",
937
+ "customers.deals.kanban.bulk.changeStage.progress.name": "Move selected deals to a new stage",
938
+ "customers.deals.kanban.bulk.changeStage.queued": "Bulk stage update started ({count} deals).",
939
+ "customers.deals.kanban.bulk.changeStage.title": "Change stage for {count} deals",
940
+ "customers.deals.kanban.bulk.delete": "Usuń",
941
+ "customers.deals.kanban.bulk.delete.failedGroup": "{count} deals could not be deleted: {message}",
942
+ "customers.deals.kanban.bulk.delete.progress.description": "{count} deals queued for deletion",
943
+ "customers.deals.kanban.bulk.delete.progress.name": "Delete selected deals",
944
+ "customers.deals.kanban.bulk.delete.success": "{count} deals deleted.",
945
+ "customers.deals.kanban.bulk.delete.text": "This action cannot be undone.",
946
+ "customers.deals.kanban.bulk.delete.title": "Delete {count} deals?",
947
+ "customers.deals.kanban.bulk.dragOverlayBadge": "Zaznaczonych dodatkowo: {count}",
948
+ "customers.deals.kanban.bulk.exportCsv": "Eksport CSV",
949
+ "customers.deals.kanban.bulk.selectedCount": "{count} zaznaczonych",
950
+ "customers.deals.kanban.bulk.totalValue": "Łącznie {value}",
951
+ "customers.deals.kanban.card.action.call": "Zadzwoń",
952
+ "customers.deals.kanban.card.action.disabledNoCompany": "Link a company to this deal before logging activities.",
953
+ "customers.deals.kanban.card.action.email": "Wyślij e-mail",
954
+ "customers.deals.kanban.card.action.note": "Notatka",
955
+ "customers.deals.kanban.card.aria": "Deal: {title}",
956
+ "customers.deals.kanban.card.aria.menu": "Akcje deala",
957
+ "customers.deals.kanban.card.aria.moreCompanies": "{count} dodatkowych firm",
958
+ "customers.deals.kanban.card.aria.openActivities": "{count} otwartych aktywności",
959
+ "customers.deals.kanban.card.aria.probability": "Prawdopodobieństwo: {value}",
960
+ "customers.deals.kanban.card.aria.roledescription": "karta deala",
961
+ "customers.deals.kanban.card.aria.select": "Zaznacz deal",
962
+ "customers.deals.kanban.card.daysInStage": "in {days}d",
963
+ "customers.deals.kanban.card.noValue": "No value",
964
+ "customers.deals.kanban.card.overdueLabel": "Overdue",
965
+ "customers.deals.kanban.card.statusOverdue": "OVERDUE",
966
+ "customers.deals.kanban.card.statusStuck": "STUCK",
967
+ "customers.deals.kanban.comingSoon": "{feature} arrives in the next iteration.",
968
+ "customers.deals.kanban.cta.customize": "Dostosuj widok",
969
+ "customers.deals.kanban.cta.newDeal": "Nowy deal",
970
+ "customers.deals.kanban.cta.newStage": "Nowy etap",
971
+ "customers.deals.kanban.cta.quickDeal": "Szybki deal",
972
+ "customers.deals.kanban.currencyBreakdown.basePill": "BASE",
973
+ "customers.deals.kanban.currencyBreakdown.colCurrency": "Waluta",
974
+ "customers.deals.kanban.currencyBreakdown.colDeals": "Deale",
975
+ "customers.deals.kanban.currencyBreakdown.colNativeTotal": "Natywna suma",
976
+ "customers.deals.kanban.currencyBreakdown.footerCredit": "Kurs średni NBP · {date}",
977
+ "customers.deals.kanban.currencyBreakdown.headingCount": "({count} deali)",
978
+ "customers.deals.kanban.currencyBreakdown.title": "Podział wartości",
979
+ "customers.deals.kanban.currencyFilter.allCurrencies": "Wszystkie waluty",
980
+ "customers.deals.kanban.currencyFilter.apply": "Zastosuj filtr",
981
+ "customers.deals.kanban.currencyFilter.chipLabel": "Waluta",
982
+ "customers.deals.kanban.currencyFilter.footerCredit": "Kurs średni NBP · {date}",
983
+ "customers.deals.kanban.currencyFilter.subtitle": "{label} · {count} deali · {total} {currency}",
984
+ "customers.deals.kanban.currencyFilter.title": "Filtruj kanban według waluty",
985
+ "customers.deals.kanban.customize.actions": "AKCJE",
986
+ "customers.deals.kanban.customize.configCols": "Konfiguruj kolumny",
987
+ "customers.deals.kanban.customize.configCols.help": "Show / hide / reorder",
988
+ "customers.deals.kanban.customize.manageStages": "Zarządzaj etapami pipeline'a",
989
+ "customers.deals.kanban.customize.manageStages.help": "Edit names, colors, required fields",
990
+ "customers.deals.kanban.customize.reset": "Przywróć domyślne",
991
+ "customers.deals.kanban.customize.resetDefault": "Resetuj do domyślnego",
992
+ "customers.deals.kanban.customize.resetDefault.help": "Clear filters and restore columns",
993
+ "customers.deals.kanban.customize.resetWidths": "Reset column widths",
994
+ "customers.deals.kanban.customize.resetWidths.helpCount": "Restore the default width on {count} resized column(s)",
995
+ "customers.deals.kanban.customize.resetWidths.helpEmpty": "No columns have been resized yet",
996
+ "customers.deals.kanban.customize.title": "Dostosuj widok",
997
+ "customers.deals.kanban.filter.add": "+ Więcej",
998
+ "customers.deals.kanban.filter.all": "All",
999
+ "customers.deals.kanban.filter.allCount": "All ({count})",
1000
+ "customers.deals.kanban.filter.any": "Any",
1001
+ "customers.deals.kanban.filter.apply": "Apply",
1002
+ "customers.deals.kanban.filter.aria.chip": "Filter by {label}",
1003
+ "customers.deals.kanban.filter.cancel": "Cancel",
1004
+ "customers.deals.kanban.filter.clear": "Clear",
1005
+ "customers.deals.kanban.filter.close": "Zamknięcie",
1006
+ "customers.deals.kanban.filter.close.title": "Filter · Expected close",
1007
+ "customers.deals.kanban.filter.companies": "Firmy",
1008
+ "customers.deals.kanban.filter.from": "From {date}",
1009
+ "customers.deals.kanban.filter.label": "FILTR:",
1010
+ "customers.deals.kanban.filter.more": "More filters",
1011
+ "customers.deals.kanban.filter.multipleSelected": "{count} selected",
1012
+ "customers.deals.kanban.filter.noResults": "No matches",
1013
+ "customers.deals.kanban.filter.owner": "Właściciel",
1014
+ "customers.deals.kanban.filter.people": "Osoby",
1015
+ "customers.deals.kanban.filter.pipeline": "Pipeline",
1016
+ "customers.deals.kanban.filter.pipeline.all": "All pipelines",
1017
+ "customers.deals.kanban.filter.pipeline.allHelper": "{count} pipelines",
1018
+ "customers.deals.kanban.filter.pipeline.selectedNone": "No pipeline filter",
1019
+ "customers.deals.kanban.filter.pipeline.selectedOne": "1 selected · {name}",
1020
+ "customers.deals.kanban.filter.pipeline.title": "Filter · Pipeline",
1021
+ "customers.deals.kanban.filter.preset.next30": "Next 30 days",
1022
+ "customers.deals.kanban.filter.preset.next90": "Next 90 days",
1023
+ "customers.deals.kanban.filter.preset.overdue": "Overdue",
1024
+ "customers.deals.kanban.filter.preset.thisMonth": "This month",
1025
+ "customers.deals.kanban.filter.preset.thisQuarter": "This quarter",
1026
+ "customers.deals.kanban.filter.searchPlaceholder": "Search…",
1027
+ "customers.deals.kanban.filter.selected": "selected",
1028
+ "customers.deals.kanban.filter.status": "Status",
1029
+ "customers.deals.kanban.filter.status.lost": "Lost",
1030
+ "customers.deals.kanban.filter.status.open": "Open",
1031
+ "customers.deals.kanban.filter.status.title": "Filter · Status",
1032
+ "customers.deals.kanban.filter.status.won": "Won",
1033
+ "customers.deals.kanban.filter.title": "Filter · {label}",
1034
+ "customers.deals.kanban.filter.to": "To",
1035
+ "customers.deals.kanban.filter.until": "Until {date}",
1036
+ "customers.deals.kanban.footer.count": "Showing {visible} of {total} deals in {pipeline} pipeline",
1037
+ "customers.deals.kanban.helper.dragHint": "Drag cards between lanes to update stage",
1038
+ "customers.deals.kanban.lane.aria.loadMore": "Load more deals in {stage}",
1039
+ "customers.deals.kanban.lane.aria.partialCount": "Showing {visible} of {total}",
1040
+ "customers.deals.kanban.lane.aria.quickAdd": "Quickly add a deal to {stage}",
1041
+ "customers.deals.kanban.lane.currencyBreakdown.count": "({count})",
1042
+ "customers.deals.kanban.lane.currencyBreakdown.missingRate": "No FX rate to {base} — excluded from the converted total",
1043
+ "customers.deals.kanban.lane.currencyBreakdown.missingRatesHint": "Missing FX rates for {currencies} — excluded from total. Configure exchange rates to see the full converted value.",
1044
+ "customers.deals.kanban.lane.currencyBreakdown.partialTotal": "Total (partial)",
1045
+ "customers.deals.kanban.lane.currencyBreakdown.title": "Per-currency breakdown",
1046
+ "customers.deals.kanban.lane.currencyBreakdown.total": "Total",
1047
+ "customers.deals.kanban.lane.currencyBreakdown.trigger": "Show per-currency breakdown ({count} currencies)",
1048
+ "customers.deals.kanban.lane.empty": "No deals in this stage yet.",
1049
+ "customers.deals.kanban.lane.loadMore": "Show more ({remaining})",
1050
+ "customers.deals.kanban.lane.loadingMore": "Loading…",
1051
+ "customers.deals.kanban.lane.resizeHandle": "Drag to resize column. Double-click to reset width.",
1052
+ "customers.deals.kanban.menu.delete": "Usuń",
1053
+ "customers.deals.kanban.menu.delete.confirmText": "This action cannot be undone.",
1054
+ "customers.deals.kanban.menu.delete.confirmTitle": "Delete deal “{title}”?",
1055
+ "customers.deals.kanban.menu.delete.error": "Failed to delete deal.",
1056
+ "customers.deals.kanban.menu.delete.success": "Deal deleted.",
1057
+ "customers.deals.kanban.menu.duplicate": "Duplikuj",
1058
+ "customers.deals.kanban.menu.duplicate.error": "Failed to duplicate deal.",
1059
+ "customers.deals.kanban.menu.duplicate.success": "Deal duplicated.",
1060
+ "customers.deals.kanban.menu.duplicate.titleSuffix": "{title} (copy)",
1061
+ "customers.deals.kanban.menu.edit": "Edytuj",
1062
+ "customers.deals.kanban.menu.error.status": "Failed to update deal status.",
1063
+ "customers.deals.kanban.menu.markLost": "Oznacz jako Lost",
1064
+ "customers.deals.kanban.menu.markLost.success": "Deal marked as lost.",
1065
+ "customers.deals.kanban.menu.markWon": "Oznacz jako Won",
1066
+ "customers.deals.kanban.menu.markWon.success": "Deal marked as won.",
1067
+ "customers.deals.kanban.menu.moveStage": "Przenieś etap…",
1068
+ "customers.deals.kanban.menu.open": "Otwórz deal",
1069
+ "customers.deals.kanban.pageTitle": "Deals",
1070
+ "customers.deals.kanban.quickDeal.cancel": "Anuluj",
1071
+ "customers.deals.kanban.quickDeal.company": "Firma",
1072
+ "customers.deals.kanban.quickDeal.companyPh": "Wybierz firmę albo dodaj nową…",
1073
+ "customers.deals.kanban.quickDeal.context": "Pipeline: {pipeline} · Stage: {stage}",
1074
+ "customers.deals.kanban.quickDeal.currency": "Waluta",
1075
+ "customers.deals.kanban.quickDeal.description": "Description",
1076
+ "customers.deals.kanban.quickDeal.description.placeholder": "Short context, decision makers or next steps. Markdown supported.",
1077
+ "customers.deals.kanban.quickDeal.expectedClose": "Expected close",
1078
+ "customers.deals.kanban.quickDeal.more": "+ Więcej szczegółów (probability, close date, opis)",
1079
+ "customers.deals.kanban.quickDeal.owner": "Właściciel",
1080
+ "customers.deals.kanban.quickDeal.probability": "Probability",
1081
+ "customers.deals.kanban.quickDeal.status": "Status",
1082
+ "customers.deals.kanban.quickDeal.status.in_progress": "W toku",
1083
+ "customers.deals.kanban.quickDeal.status.loose": "Wstrzymany",
1084
+ "customers.deals.kanban.quickDeal.status.open": "Otwarty",
1085
+ "customers.deals.kanban.quickDeal.status.win": "Wygrany",
1086
+ "customers.deals.kanban.quickDeal.submit": "+ Dodaj deal",
1087
+ "customers.deals.kanban.quickDeal.success": "Deal added to {stage}.",
1088
+ "customers.deals.kanban.quickDeal.title": "Szybki deal",
1089
+ "customers.deals.kanban.quickDeal.title.label": "Tytuł deala",
1090
+ "customers.deals.kanban.quickDeal.title.placeholder": "e.g. Q3 Expansion — Lighting Package",
1091
+ "customers.deals.kanban.quickDeal.title.required": "Title is required.",
1092
+ "customers.deals.kanban.quickDeal.value": "Wartość",
1093
+ "customers.deals.kanban.search.placeholder": "Szukaj deali…",
1094
+ "customers.deals.kanban.sort.default": "Domyślnie",
1095
+ "customers.deals.kanban.sort.defaultHint": "Default: {label}",
1096
+ "customers.deals.kanban.sort.label": "Sort",
1097
+ "customers.deals.kanban.sort.option.closeSoonest": "Close date (soonest)",
1098
+ "customers.deals.kanban.sort.option.createdNewest": "Created (newest)",
1099
+ "customers.deals.kanban.sort.option.ownerAsc": "Owner (A → Z)",
1100
+ "customers.deals.kanban.sort.option.probabilityHigh": "Probability (high to low)",
1101
+ "customers.deals.kanban.sort.option.updatedNewest": "Updated (newest)",
1102
+ "customers.deals.kanban.sort.option.updatedOldest": "Updated (oldest)",
1103
+ "customers.deals.kanban.sort.option.valueHigh": "Value (high to low)",
1104
+ "customers.deals.kanban.sort.option.valueLow": "Value (low to high)",
1105
+ "customers.deals.kanban.sort.title": "Sort by",
1106
+ "customers.deals.kanban.view.kanban": "Kanban",
1107
+ "customers.deals.kanban.view.list": "Lista",
1108
+ "customers.deals.kanban.view.tablistLabel": "Deals views",
867
1109
  "customers.deals.list.actions.delete": "Usuń",
868
1110
  "customers.deals.list.actions.deleting": "Usuwanie…",
869
1111
  "customers.deals.list.actions.edit": "Edytuj",
@@ -944,6 +1186,7 @@
944
1186
  "customers.errors.assign_failed": "Nie udało się przypisać tagu",
945
1187
  "customers.errors.assignable_staff_load_failed": "Nie udało się załadować dostępnych pracowników",
946
1188
  "customers.errors.authentication_required": "Wymagane uwierzytelnienie",
1189
+ "customers.errors.bulk_enqueue_failed": "Nie udało się zakolejkować operacji masowej",
947
1190
  "customers.errors.comment_required": "Wymagany identyfikator notatki",
948
1191
  "customers.errors.company_not_found": "Nie znaleziono firmy",
949
1192
  "customers.errors.company_people_load_failed": "Nie udało się załadować powiązanych osób",
@@ -965,6 +1208,7 @@
965
1208
  "customers.errors.internal": "Wewnętrzny błąd serwera",
966
1209
  "customers.errors.internalError": "Wewnętrzny błąd serwera",
967
1210
  "customers.errors.invalid_date_time": "Nieprawidłowa data/godzina",
1211
+ "customers.errors.invalid_payload": "Nieprawidłowe dane wejściowe",
968
1212
  "customers.errors.invalid_query": "Nieprawidłowe parametry zapytania",
969
1213
  "customers.errors.kind_settings_load_failed": "Nie udało się załadować ustawień kategorii",
970
1214
  "customers.errors.label_duplicate": "Etykieta o tym identyfikatorze już istnieje",