@spaceinvoices/react-ui 0.4.11 → 0.4.31

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 (738) hide show
  1. package/cli/dist/index.js +1 -1
  2. package/package.json +3 -2
  3. package/registry.json +30 -31
  4. package/src/common/autocomplete.tsx +48 -26
  5. package/src/components/activities/locales/bg.ts +21 -0
  6. package/src/components/activities/locales/cs.ts +21 -0
  7. package/src/components/activities/locales/en.ts +21 -0
  8. package/src/components/activities/locales/et.ts +21 -0
  9. package/src/components/activities/locales/fi.ts +21 -0
  10. package/src/components/activities/locales/is.ts +21 -0
  11. package/src/components/activities/locales/nb.ts +21 -0
  12. package/src/components/activities/locales/sk.ts +21 -0
  13. package/src/components/activities/locales/sv.ts +21 -0
  14. package/src/components/advance-invoices/advance-invoices.hooks.ts +36 -46
  15. package/src/components/advance-invoices/create/create-advance-invoice-form.tsx +452 -115
  16. package/src/components/advance-invoices/create/locales/bg.ts +56 -0
  17. package/src/components/advance-invoices/create/locales/cs.ts +56 -0
  18. package/src/components/advance-invoices/create/locales/de.ts +15 -7
  19. package/src/components/advance-invoices/create/locales/en.ts +56 -0
  20. package/src/components/advance-invoices/create/locales/es.ts +15 -7
  21. package/src/components/advance-invoices/create/locales/et.ts +56 -0
  22. package/src/components/advance-invoices/create/locales/fi.ts +56 -0
  23. package/src/components/advance-invoices/create/locales/fr.ts +16 -8
  24. package/src/components/advance-invoices/create/locales/hr.ts +29 -21
  25. package/src/components/advance-invoices/create/locales/is.ts +56 -0
  26. package/src/components/advance-invoices/create/locales/it.ts +15 -7
  27. package/src/components/advance-invoices/create/locales/nb.ts +56 -0
  28. package/src/components/advance-invoices/create/locales/nl.ts +15 -7
  29. package/src/components/advance-invoices/create/locales/pl.ts +17 -9
  30. package/src/components/advance-invoices/create/locales/pt.ts +16 -8
  31. package/src/components/advance-invoices/create/locales/sk.ts +56 -0
  32. package/src/components/advance-invoices/create/locales/sl.ts +23 -12
  33. package/src/components/advance-invoices/create/locales/sv.ts +56 -0
  34. package/src/components/advance-invoices/create/prepare-advance-invoice-submission.ts +62 -2
  35. package/src/components/advance-invoices/list/list-row-actions.tsx +48 -16
  36. package/src/components/advance-invoices/list/list-table.tsx +35 -9
  37. package/src/components/advance-invoices/list/locales/bg.ts +51 -0
  38. package/src/components/advance-invoices/list/locales/cs.ts +51 -0
  39. package/src/components/advance-invoices/list/locales/en.ts +33 -2
  40. package/src/components/advance-invoices/list/locales/et.ts +51 -0
  41. package/src/components/advance-invoices/list/locales/fi.ts +51 -0
  42. package/src/components/advance-invoices/list/locales/hr.ts +15 -15
  43. package/src/components/advance-invoices/list/locales/is.ts +51 -0
  44. package/src/components/advance-invoices/list/locales/nb.ts +51 -0
  45. package/src/components/advance-invoices/list/locales/sk.ts +51 -0
  46. package/src/components/advance-invoices/list/locales/sv.ts +51 -0
  47. package/src/components/advance-invoices/list/use-advance-invoice-download.ts +3 -5
  48. package/src/components/common/autocomplete-locales.ts +101 -0
  49. package/src/components/company-registry/company-registry.hooks.ts +3 -7
  50. package/src/components/credit-notes/create/create-credit-note-form.tsx +437 -80
  51. package/src/components/credit-notes/create/locales/bg.ts +101 -0
  52. package/src/components/credit-notes/create/locales/cs.ts +101 -0
  53. package/src/components/credit-notes/create/locales/de.ts +20 -7
  54. package/src/components/credit-notes/create/locales/en.ts +101 -0
  55. package/src/components/credit-notes/create/locales/es.ts +20 -7
  56. package/src/components/credit-notes/create/locales/et.ts +101 -0
  57. package/src/components/credit-notes/create/locales/fi.ts +101 -0
  58. package/src/components/credit-notes/create/locales/fr.ts +21 -8
  59. package/src/components/credit-notes/create/locales/hr.ts +41 -28
  60. package/src/components/credit-notes/create/locales/is.ts +101 -0
  61. package/src/components/credit-notes/create/locales/it.ts +20 -7
  62. package/src/components/credit-notes/create/locales/nb.ts +101 -0
  63. package/src/components/credit-notes/create/locales/nl.ts +20 -7
  64. package/src/components/credit-notes/create/locales/pl.ts +22 -9
  65. package/src/components/credit-notes/create/locales/pt.ts +21 -8
  66. package/src/components/credit-notes/create/locales/sk.ts +101 -0
  67. package/src/components/credit-notes/create/locales/sl.ts +28 -14
  68. package/src/components/credit-notes/create/locales/sv.ts +101 -0
  69. package/src/components/credit-notes/create/prepare-credit-note-submission.ts +66 -0
  70. package/src/components/credit-notes/credit-notes.hooks.ts +34 -3
  71. package/src/components/credit-notes/list/list-row-actions.tsx +19 -7
  72. package/src/components/credit-notes/list/list-table.tsx +60 -8
  73. package/src/components/credit-notes/list/locales/bg.ts +48 -0
  74. package/src/components/credit-notes/list/locales/cs.ts +48 -0
  75. package/src/components/credit-notes/list/locales/en.ts +31 -2
  76. package/src/components/credit-notes/list/locales/et.ts +48 -0
  77. package/src/components/credit-notes/list/locales/fi.ts +48 -0
  78. package/src/components/credit-notes/list/locales/hr.ts +12 -12
  79. package/src/components/credit-notes/list/locales/is.ts +48 -0
  80. package/src/components/credit-notes/list/locales/nb.ts +48 -0
  81. package/src/components/credit-notes/list/locales/sk.ts +48 -0
  82. package/src/components/credit-notes/list/locales/sv.ts +48 -0
  83. package/src/components/credit-notes/list/use-credit-note-download.ts +3 -5
  84. package/src/components/customers/create-customer-form/locales/bg.ts +21 -0
  85. package/src/components/customers/create-customer-form/locales/cs.ts +21 -0
  86. package/src/components/customers/create-customer-form/locales/en.ts +21 -0
  87. package/src/components/customers/create-customer-form/locales/et.ts +21 -0
  88. package/src/components/customers/create-customer-form/locales/fi.ts +21 -0
  89. package/src/components/customers/create-customer-form/locales/hr.ts +11 -11
  90. package/src/components/customers/create-customer-form/locales/is.ts +21 -0
  91. package/src/components/customers/create-customer-form/locales/nb.ts +21 -0
  92. package/src/components/customers/create-customer-form/locales/sk.ts +21 -0
  93. package/src/components/customers/create-customer-form/locales/sv.ts +21 -0
  94. package/src/components/customers/customer-autocomplete.tsx +32 -4
  95. package/src/components/customers/customer-list-table/customer-list-table.tsx +8 -6
  96. package/src/components/customers/customer-list-table/locales/bg.ts +25 -0
  97. package/src/components/customers/customer-list-table/locales/cs.ts +25 -0
  98. package/src/components/customers/customer-list-table/locales/en.ts +17 -2
  99. package/src/components/customers/customer-list-table/locales/et.ts +25 -0
  100. package/src/components/customers/customer-list-table/locales/fi.ts +25 -0
  101. package/src/components/customers/customer-list-table/locales/hr.ts +11 -11
  102. package/src/components/customers/customer-list-table/locales/is.ts +25 -0
  103. package/src/components/customers/customer-list-table/locales/nb.ts +25 -0
  104. package/src/components/customers/customer-list-table/locales/sk.ts +25 -0
  105. package/src/components/customers/customer-list-table/locales/sv.ts +25 -0
  106. package/src/components/customers/customers.hooks.ts +14 -17
  107. package/src/components/customers/edit-customer-form/locales/bg.ts +13 -0
  108. package/src/components/customers/edit-customer-form/locales/cs.ts +13 -0
  109. package/src/components/customers/edit-customer-form/locales/en.ts +13 -0
  110. package/src/components/customers/edit-customer-form/locales/et.ts +13 -0
  111. package/src/components/customers/edit-customer-form/locales/fi.ts +13 -0
  112. package/src/components/customers/edit-customer-form/locales/hr.ts +5 -5
  113. package/src/components/customers/edit-customer-form/locales/is.ts +13 -0
  114. package/src/components/customers/edit-customer-form/locales/nb.ts +13 -0
  115. package/src/components/customers/edit-customer-form/locales/sk.ts +13 -0
  116. package/src/components/customers/edit-customer-form/locales/sv.ts +13 -0
  117. package/src/components/dashboard/collection-rate-card/collection-rate-card.tsx +7 -6
  118. package/src/components/dashboard/collection-rate-card/locales/en.ts +3 -0
  119. package/src/components/dashboard/collection-rate-card/use-collection-rate.ts +8 -7
  120. package/src/components/dashboard/invoice-status-chart/invoice-status-chart.tsx +7 -4
  121. package/src/components/dashboard/invoice-status-chart/locales/bg.ts +5 -5
  122. package/src/components/dashboard/invoice-status-chart/locales/cs.ts +5 -5
  123. package/src/components/dashboard/invoice-status-chart/locales/de.ts +1 -1
  124. package/src/components/dashboard/invoice-status-chart/locales/en.ts +10 -0
  125. package/src/components/dashboard/invoice-status-chart/locales/es.ts +1 -1
  126. package/src/components/dashboard/invoice-status-chart/locales/et.ts +5 -5
  127. package/src/components/dashboard/invoice-status-chart/locales/fi.ts +5 -5
  128. package/src/components/dashboard/invoice-status-chart/locales/fr.ts +1 -1
  129. package/src/components/dashboard/invoice-status-chart/locales/hr.ts +5 -5
  130. package/src/components/dashboard/invoice-status-chart/locales/is.ts +5 -5
  131. package/src/components/dashboard/invoice-status-chart/locales/it.ts +1 -1
  132. package/src/components/dashboard/invoice-status-chart/locales/nb.ts +5 -5
  133. package/src/components/dashboard/invoice-status-chart/locales/nl.ts +1 -1
  134. package/src/components/dashboard/invoice-status-chart/locales/pl.ts +1 -1
  135. package/src/components/dashboard/invoice-status-chart/locales/pt.ts +1 -1
  136. package/src/components/dashboard/invoice-status-chart/locales/sk.ts +5 -5
  137. package/src/components/dashboard/invoice-status-chart/locales/sl.ts +1 -1
  138. package/src/components/dashboard/invoice-status-chart/locales/sv.ts +5 -5
  139. package/src/components/dashboard/payment-methods-chart/locales/bg.ts +5 -5
  140. package/src/components/dashboard/payment-methods-chart/locales/cs.ts +5 -5
  141. package/src/components/dashboard/payment-methods-chart/locales/en.ts +12 -0
  142. package/src/components/dashboard/payment-methods-chart/locales/et.ts +5 -5
  143. package/src/components/dashboard/payment-methods-chart/locales/fi.ts +6 -6
  144. package/src/components/dashboard/payment-methods-chart/locales/hr.ts +3 -3
  145. package/src/components/dashboard/payment-methods-chart/locales/is.ts +5 -5
  146. package/src/components/dashboard/payment-methods-chart/locales/nb.ts +5 -5
  147. package/src/components/dashboard/payment-methods-chart/locales/sk.ts +5 -5
  148. package/src/components/dashboard/payment-methods-chart/locales/sv.ts +5 -5
  149. package/src/components/dashboard/payment-methods-chart/payment-methods-chart.tsx +4 -3
  150. package/src/components/dashboard/payment-trend-chart/locales/bg.ts +1 -1
  151. package/src/components/dashboard/payment-trend-chart/locales/cs.ts +1 -1
  152. package/src/components/dashboard/payment-trend-chart/locales/en.ts +6 -0
  153. package/src/components/dashboard/payment-trend-chart/locales/et.ts +1 -1
  154. package/src/components/dashboard/payment-trend-chart/locales/fi.ts +1 -1
  155. package/src/components/dashboard/payment-trend-chart/locales/is.ts +1 -1
  156. package/src/components/dashboard/payment-trend-chart/locales/nb.ts +1 -1
  157. package/src/components/dashboard/payment-trend-chart/locales/sk.ts +1 -1
  158. package/src/components/dashboard/payment-trend-chart/locales/sv.ts +1 -1
  159. package/src/components/dashboard/payment-trend-chart/payment-trend-chart.tsx +4 -3
  160. package/src/components/dashboard/payment-trend-chart/use-payment-trend.ts +12 -9
  161. package/src/components/dashboard/revenue-card.tsx +3 -3
  162. package/src/components/dashboard/revenue-trend-chart/locales/bg.ts +1 -1
  163. package/src/components/dashboard/revenue-trend-chart/locales/cs.ts +1 -1
  164. package/src/components/dashboard/revenue-trend-chart/locales/en.ts +6 -0
  165. package/src/components/dashboard/revenue-trend-chart/locales/et.ts +1 -1
  166. package/src/components/dashboard/revenue-trend-chart/locales/fi.ts +1 -1
  167. package/src/components/dashboard/revenue-trend-chart/locales/is.ts +1 -1
  168. package/src/components/dashboard/revenue-trend-chart/locales/nb.ts +1 -1
  169. package/src/components/dashboard/revenue-trend-chart/locales/sk.ts +1 -1
  170. package/src/components/dashboard/revenue-trend-chart/locales/sv.ts +1 -1
  171. package/src/components/dashboard/revenue-trend-chart/revenue-trend-chart.tsx +4 -3
  172. package/src/components/dashboard/revenue-trend-chart/use-revenue-trend.ts +4 -3
  173. package/src/components/dashboard/shared/local-date.ts +11 -0
  174. package/src/components/dashboard/shared/use-revenue-data.ts +6 -5
  175. package/src/components/dashboard/shared/use-stats-query.ts +7 -11
  176. package/src/components/dashboard/stat-card.tsx +3 -3
  177. package/src/components/dashboard/tax-collected-card/tax-collected-card.tsx +11 -9
  178. package/src/components/dashboard/tax-collected-card/use-tax-collected.ts +3 -2
  179. package/src/components/dashboard/top-customers-chart/locales/bg.ts +2 -2
  180. package/src/components/dashboard/top-customers-chart/locales/cs.ts +2 -2
  181. package/src/components/dashboard/top-customers-chart/locales/en.ts +7 -0
  182. package/src/components/dashboard/top-customers-chart/locales/et.ts +2 -2
  183. package/src/components/dashboard/top-customers-chart/locales/fi.ts +2 -2
  184. package/src/components/dashboard/top-customers-chart/locales/is.ts +2 -2
  185. package/src/components/dashboard/top-customers-chart/locales/nb.ts +2 -2
  186. package/src/components/dashboard/top-customers-chart/locales/sk.ts +2 -2
  187. package/src/components/dashboard/top-customers-chart/locales/sv.ts +2 -2
  188. package/src/components/dashboard/top-customers-chart/top-customers-chart.tsx +4 -3
  189. package/src/components/dashboard/top-customers-chart/use-top-customers.ts +7 -20
  190. package/src/components/delivery-notes/create/create-delivery-note-form.tsx +179 -47
  191. package/src/components/delivery-notes/create/locales/bg.ts +69 -0
  192. package/src/components/delivery-notes/create/locales/cs.ts +69 -0
  193. package/src/components/delivery-notes/create/locales/de.ts +1 -0
  194. package/src/components/delivery-notes/create/locales/en.ts +69 -0
  195. package/src/components/delivery-notes/create/locales/es.ts +1 -0
  196. package/src/components/delivery-notes/create/locales/et.ts +69 -0
  197. package/src/components/delivery-notes/create/locales/fi.ts +69 -0
  198. package/src/components/delivery-notes/create/locales/fr.ts +1 -0
  199. package/src/components/delivery-notes/create/locales/hr.ts +7 -6
  200. package/src/components/delivery-notes/create/locales/is.ts +69 -0
  201. package/src/components/delivery-notes/create/locales/it.ts +1 -0
  202. package/src/components/delivery-notes/create/locales/nb.ts +69 -0
  203. package/src/components/delivery-notes/create/locales/nl.ts +1 -0
  204. package/src/components/delivery-notes/create/locales/pl.ts +1 -0
  205. package/src/components/delivery-notes/create/locales/pt.ts +1 -0
  206. package/src/components/delivery-notes/create/locales/sk.ts +69 -0
  207. package/src/components/delivery-notes/create/locales/sl.ts +6 -5
  208. package/src/components/delivery-notes/create/locales/sv.ts +69 -0
  209. package/src/components/delivery-notes/create/prepare-delivery-note-submission.ts +34 -1
  210. package/src/components/delivery-notes/delivery-notes.hooks.ts +34 -3
  211. package/src/components/delivery-notes/list/list-row-actions.tsx +62 -16
  212. package/src/components/delivery-notes/list/list-table.tsx +44 -10
  213. package/src/components/delivery-notes/list/locales/bg.ts +40 -0
  214. package/src/components/delivery-notes/list/locales/cs.ts +40 -0
  215. package/src/components/delivery-notes/list/locales/et.ts +40 -0
  216. package/src/components/delivery-notes/list/locales/fi.ts +40 -0
  217. package/src/components/delivery-notes/list/locales/is.ts +40 -0
  218. package/src/components/delivery-notes/list/locales/nb.ts +40 -0
  219. package/src/components/delivery-notes/list/locales/sk.ts +40 -0
  220. package/src/components/delivery-notes/list/locales/sv.ts +40 -0
  221. package/src/components/delivery-notes/list/use-delivery-note-download.ts +3 -5
  222. package/src/components/documents/create/custom-create-template.ts +114 -0
  223. package/src/components/documents/create/document-add-item-form.tsx +266 -153
  224. package/src/components/documents/create/document-add-item-tax-rate-field.tsx +3 -3
  225. package/src/components/documents/create/document-date-validation.ts +111 -0
  226. package/src/components/documents/create/document-details-section.tsx +117 -54
  227. package/src/components/documents/create/document-form-item.ts +67 -0
  228. package/src/components/documents/create/document-item-validation.ts +54 -0
  229. package/src/components/documents/create/document-items-section.tsx +44 -6
  230. package/src/components/documents/create/document-recipient-section.tsx +10 -2
  231. package/src/components/documents/create/form-types.ts +2 -2
  232. package/src/components/documents/create/linked-documents-info.tsx +6 -14
  233. package/src/components/documents/create/live-preview.tsx +22 -18
  234. package/src/components/documents/create/mark-as-paid-section.tsx +80 -20
  235. package/src/components/documents/create/payment-rows.ts +321 -0
  236. package/src/components/documents/create/prepare-document-submission.ts +160 -109
  237. package/src/components/documents/create/prepare-preview-data.ts +12 -0
  238. package/src/components/documents/create/preserved-expected-total.ts +90 -0
  239. package/src/components/documents/create/scroll-to-first-invalid-field.ts +27 -0
  240. package/src/components/documents/create/smart-code-insert-button.tsx +5 -53
  241. package/src/components/documents/create/use-document-customer-form.ts +74 -25
  242. package/src/components/documents/documents.hooks.ts +3 -5
  243. package/src/components/documents/index.ts +1 -0
  244. package/src/components/documents/public/index.ts +1 -0
  245. package/src/components/documents/public/public-document-summary.tsx +336 -0
  246. package/src/components/documents/shared/document-preview-display.tsx +65 -39
  247. package/src/components/documents/shared/index.ts +6 -1
  248. package/src/components/documents/shared/scaled-document-preview.tsx +33 -19
  249. package/src/components/documents/types.ts +24 -0
  250. package/src/components/documents/view/document-actions-bar.tsx +251 -63
  251. package/src/components/documents/view/document-activities-list.tsx +23 -11
  252. package/src/components/documents/view/document-details-card.tsx +11 -39
  253. package/src/components/documents/view/document-payments-list.tsx +114 -57
  254. package/src/components/documents/view/document-relations-list.tsx +26 -6
  255. package/src/components/documents/view/document-sidebar.tsx +25 -3
  256. package/src/components/documents/view/document-version-history.tsx +137 -0
  257. package/src/components/documents/view/index.ts +1 -0
  258. package/src/components/documents/view/locales/bg.ts +143 -0
  259. package/src/components/documents/view/locales/cs.ts +143 -0
  260. package/src/components/documents/view/locales/de.ts +13 -0
  261. package/src/components/documents/view/locales/en.ts +143 -0
  262. package/src/components/documents/view/locales/es.ts +13 -0
  263. package/src/components/documents/view/locales/et.ts +143 -0
  264. package/src/components/documents/view/locales/fi.ts +143 -0
  265. package/src/components/documents/view/locales/fr.ts +13 -0
  266. package/src/components/documents/view/locales/hr.ts +18 -5
  267. package/src/components/documents/view/locales/is.ts +143 -0
  268. package/src/components/documents/view/locales/it.ts +13 -0
  269. package/src/components/documents/view/locales/nb.ts +143 -0
  270. package/src/components/documents/view/locales/nl.ts +13 -0
  271. package/src/components/documents/view/locales/pl.ts +13 -0
  272. package/src/components/documents/view/locales/pt.ts +13 -0
  273. package/src/components/documents/view/locales/sk.ts +143 -0
  274. package/src/components/documents/view/locales/sl.ts +21 -8
  275. package/src/components/documents/view/locales/sv.ts +143 -0
  276. package/src/components/documents/view/use-document-download.ts +18 -17
  277. package/src/components/entities/create-entity-form.tsx +200 -12
  278. package/src/components/entities/entities.hooks.ts +15 -7
  279. package/src/components/entities/entity-settings-form/entity-settings-form.tsx +121 -65
  280. package/src/components/entities/entity-settings-form/input-with-preview.tsx +28 -4
  281. package/src/components/entities/entity-settings-form/locales/bg.ts +206 -0
  282. package/src/components/entities/entity-settings-form/locales/cs.ts +206 -0
  283. package/src/components/entities/entity-settings-form/locales/de.ts +17 -3
  284. package/src/components/entities/entity-settings-form/locales/en.ts +206 -0
  285. package/src/components/entities/entity-settings-form/locales/es.ts +15 -3
  286. package/src/components/entities/entity-settings-form/locales/et.ts +205 -0
  287. package/src/components/entities/entity-settings-form/locales/fi.ts +206 -0
  288. package/src/components/entities/entity-settings-form/locales/fr.ts +15 -3
  289. package/src/components/entities/entity-settings-form/locales/hr.ts +23 -11
  290. package/src/components/entities/entity-settings-form/locales/is.ts +206 -0
  291. package/src/components/entities/entity-settings-form/locales/it.ts +15 -3
  292. package/src/components/entities/entity-settings-form/locales/nb.ts +206 -0
  293. package/src/components/entities/entity-settings-form/locales/nl.ts +15 -3
  294. package/src/components/entities/entity-settings-form/locales/pl.ts +15 -3
  295. package/src/components/entities/entity-settings-form/locales/pt.ts +15 -3
  296. package/src/components/entities/entity-settings-form/locales/sk.ts +206 -0
  297. package/src/components/entities/entity-settings-form/locales/sl.ts +31 -18
  298. package/src/components/entities/entity-settings-form/locales/sv.ts +212 -0
  299. package/src/components/entities/fina-settings-form/fina-operator-required-dialog.tsx +34 -9
  300. package/src/components/entities/fina-settings-form/fina-settings-form.tsx +2 -0
  301. package/src/components/entities/fina-settings-form/fina-settings.hooks.ts +14 -45
  302. package/src/components/entities/fina-settings-form/locales/bg.ts +163 -0
  303. package/src/components/entities/fina-settings-form/locales/cs.ts +163 -0
  304. package/src/components/entities/fina-settings-form/locales/et.ts +163 -0
  305. package/src/components/entities/fina-settings-form/locales/fi.ts +163 -0
  306. package/src/components/entities/fina-settings-form/locales/hr.ts +11 -10
  307. package/src/components/entities/fina-settings-form/locales/is.ts +164 -0
  308. package/src/components/entities/fina-settings-form/locales/nb.ts +163 -0
  309. package/src/components/entities/fina-settings-form/locales/sk.ts +163 -0
  310. package/src/components/entities/fina-settings-form/locales/sl.ts +8 -7
  311. package/src/components/entities/fina-settings-form/locales/sv.ts +165 -0
  312. package/src/components/entities/furs-settings-form/furs-operator-required-dialog.tsx +34 -9
  313. package/src/components/entities/furs-settings-form/furs-settings-form.tsx +13 -1
  314. package/src/components/entities/furs-settings-form/furs-settings.hooks.ts +141 -42
  315. package/src/components/entities/furs-settings-form/locales/bg.ts +242 -0
  316. package/src/components/entities/furs-settings-form/locales/cs.ts +241 -0
  317. package/src/components/entities/furs-settings-form/locales/de.ts +42 -15
  318. package/src/components/entities/furs-settings-form/locales/en.ts +24 -0
  319. package/src/components/entities/furs-settings-form/locales/es.ts +42 -15
  320. package/src/components/entities/furs-settings-form/locales/et.ts +242 -0
  321. package/src/components/entities/furs-settings-form/locales/fi.ts +243 -0
  322. package/src/components/entities/furs-settings-form/locales/fr.ts +43 -15
  323. package/src/components/entities/furs-settings-form/locales/hr.ts +44 -19
  324. package/src/components/entities/furs-settings-form/locales/is.ts +242 -0
  325. package/src/components/entities/furs-settings-form/locales/it.ts +42 -15
  326. package/src/components/entities/furs-settings-form/locales/nb.ts +242 -0
  327. package/src/components/entities/furs-settings-form/locales/nl.ts +42 -15
  328. package/src/components/entities/furs-settings-form/locales/pl.ts +40 -15
  329. package/src/components/entities/furs-settings-form/locales/pt.ts +42 -15
  330. package/src/components/entities/furs-settings-form/locales/sk.ts +243 -0
  331. package/src/components/entities/furs-settings-form/locales/sl.ts +34 -10
  332. package/src/components/entities/furs-settings-form/locales/sv.ts +242 -0
  333. package/src/components/entities/furs-settings-form/sections/enable-fiscalization-section.tsx +11 -0
  334. package/src/components/entities/furs-settings-form/sections/furs-internal-act-download-card.tsx +111 -0
  335. package/src/components/entities/furs-settings-form/sections/general-settings-section.tsx +27 -0
  336. package/src/components/entities/furs-settings-form/sections/premises-management-section.tsx +23 -16
  337. package/src/components/entities/furs-settings-form/sections/register-premise-dialog.tsx +89 -31
  338. package/src/components/entities/settings/branding-settings-form.tsx +11 -30
  339. package/src/components/entities/settings/company-settings-form.tsx +2 -1
  340. package/src/components/entities/settings/defaults-settings-form.tsx +106 -3
  341. package/src/components/entities/settings/email-settings-form.tsx +245 -3
  342. package/src/components/entities/settings/eslog-settings-form.tsx +2 -1
  343. package/src/components/entities/settings/number-format-settings-form.tsx +2 -1
  344. package/src/components/entities/settings/pdf-template-selector/locales/bg.ts +20 -0
  345. package/src/components/entities/settings/pdf-template-selector/locales/cs.ts +20 -0
  346. package/src/components/entities/settings/pdf-template-selector/locales/en.ts +20 -0
  347. package/src/components/entities/settings/pdf-template-selector/locales/et.ts +19 -0
  348. package/src/components/entities/settings/pdf-template-selector/locales/fi.ts +20 -0
  349. package/src/components/entities/settings/pdf-template-selector/locales/is.ts +19 -0
  350. package/src/components/entities/settings/pdf-template-selector/locales/nb.ts +19 -0
  351. package/src/components/entities/settings/pdf-template-selector/locales/sk.ts +20 -0
  352. package/src/components/entities/settings/pdf-template-selector/locales/sv.ts +19 -0
  353. package/src/components/entities/settings/tax-rules-settings-form.tsx +57 -6
  354. package/src/components/estimates/create/create-estimate-form.tsx +250 -66
  355. package/src/components/estimates/create/locales/bg.ts +77 -0
  356. package/src/components/estimates/create/locales/cs.ts +77 -0
  357. package/src/components/estimates/create/locales/de.ts +4 -3
  358. package/src/components/estimates/create/locales/en.ts +77 -0
  359. package/src/components/estimates/create/locales/es.ts +4 -3
  360. package/src/components/estimates/create/locales/et.ts +77 -0
  361. package/src/components/estimates/create/locales/fi.ts +77 -0
  362. package/src/components/estimates/create/locales/fr.ts +4 -3
  363. package/src/components/estimates/create/locales/hr.ts +13 -12
  364. package/src/components/estimates/create/locales/is.ts +77 -0
  365. package/src/components/estimates/create/locales/it.ts +4 -3
  366. package/src/components/estimates/create/locales/nb.ts +77 -0
  367. package/src/components/estimates/create/locales/nl.ts +4 -3
  368. package/src/components/estimates/create/locales/pl.ts +4 -3
  369. package/src/components/estimates/create/locales/pt.ts +4 -3
  370. package/src/components/estimates/create/locales/sk.ts +77 -0
  371. package/src/components/estimates/create/locales/sl.ts +13 -12
  372. package/src/components/estimates/create/locales/sv.ts +77 -0
  373. package/src/components/estimates/create/prepare-estimate-submission.ts +41 -4
  374. package/src/components/estimates/estimates.hooks.ts +24 -3
  375. package/src/components/estimates/list/list-row-actions.tsx +34 -7
  376. package/src/components/estimates/list/list-table.tsx +89 -11
  377. package/src/components/estimates/list/locales/bg.ts +40 -0
  378. package/src/components/estimates/list/locales/cs.ts +40 -0
  379. package/src/components/estimates/list/locales/de.ts +2 -0
  380. package/src/components/estimates/list/locales/en.ts +29 -2
  381. package/src/components/estimates/list/locales/es.ts +2 -0
  382. package/src/components/estimates/list/locales/et.ts +40 -0
  383. package/src/components/estimates/list/locales/fi.ts +40 -0
  384. package/src/components/estimates/list/locales/fr.ts +2 -0
  385. package/src/components/estimates/list/locales/hr.ts +9 -7
  386. package/src/components/estimates/list/locales/is.ts +40 -0
  387. package/src/components/estimates/list/locales/it.ts +2 -0
  388. package/src/components/estimates/list/locales/nb.ts +40 -0
  389. package/src/components/estimates/list/locales/nl.ts +2 -0
  390. package/src/components/estimates/list/locales/pl.ts +2 -0
  391. package/src/components/estimates/list/locales/pt.ts +2 -0
  392. package/src/components/estimates/list/locales/sk.ts +40 -0
  393. package/src/components/estimates/list/locales/sl.ts +9 -7
  394. package/src/components/estimates/list/locales/sv.ts +40 -0
  395. package/src/components/estimates/list/use-estimate-download.ts +3 -5
  396. package/src/components/export/document-export-form.tsx +72 -15
  397. package/src/components/export/sales-per-item-export-form.tsx +3 -2
  398. package/src/components/invoices/create/create-invoice-form.tsx +500 -112
  399. package/src/components/invoices/create/eslog-validation.ts +97 -8
  400. package/src/components/invoices/create/locales/bg.ts +173 -0
  401. package/src/components/invoices/create/locales/cs.ts +173 -0
  402. package/src/components/invoices/create/locales/de.ts +41 -9
  403. package/src/components/invoices/create/locales/en.ts +173 -0
  404. package/src/components/invoices/create/locales/es.ts +42 -9
  405. package/src/components/invoices/create/locales/et.ts +173 -0
  406. package/src/components/invoices/create/locales/fi.ts +173 -0
  407. package/src/components/invoices/create/locales/fr.ts +42 -11
  408. package/src/components/invoices/create/locales/hr.ts +50 -18
  409. package/src/components/invoices/create/locales/is.ts +173 -0
  410. package/src/components/invoices/create/locales/it.ts +43 -11
  411. package/src/components/invoices/create/locales/nb.ts +173 -0
  412. package/src/components/invoices/create/locales/nl.ts +42 -10
  413. package/src/components/invoices/create/locales/pl.ts +42 -11
  414. package/src/components/invoices/create/locales/pt.ts +43 -10
  415. package/src/components/invoices/create/locales/sk.ts +173 -0
  416. package/src/components/invoices/create/locales/sl.ts +49 -18
  417. package/src/components/invoices/create/locales/sv.ts +175 -0
  418. package/src/components/invoices/create/prepare-invoice-submission.ts +73 -2
  419. package/src/components/invoices/invoices-furs.hooks.ts +11 -8
  420. package/src/components/invoices/invoices.hooks.ts +36 -10
  421. package/src/components/invoices/list/list-row-actions.tsx +54 -21
  422. package/src/components/invoices/list/list-table.tsx +94 -12
  423. package/src/components/invoices/list/locales/bg.ts +49 -0
  424. package/src/components/invoices/list/locales/cs.ts +49 -0
  425. package/src/components/invoices/list/locales/en.ts +34 -2
  426. package/src/components/invoices/list/locales/et.ts +49 -0
  427. package/src/components/invoices/list/locales/fi.ts +49 -0
  428. package/src/components/invoices/list/locales/is.ts +49 -0
  429. package/src/components/invoices/list/locales/nb.ts +49 -0
  430. package/src/components/invoices/list/locales/sk.ts +49 -0
  431. package/src/components/invoices/list/locales/sv.ts +49 -0
  432. package/src/components/invoices/list/use-invoice-download.ts +3 -5
  433. package/src/components/invoices/send-email-dialog/locales/bg.ts +63 -0
  434. package/src/components/invoices/send-email-dialog/locales/cs.ts +63 -0
  435. package/src/components/invoices/send-email-dialog/locales/de.ts +26 -0
  436. package/src/components/invoices/send-email-dialog/locales/en.ts +63 -0
  437. package/src/components/invoices/send-email-dialog/locales/es.ts +26 -0
  438. package/src/components/invoices/send-email-dialog/locales/et.ts +63 -0
  439. package/src/components/invoices/send-email-dialog/locales/fi.ts +63 -0
  440. package/src/components/invoices/send-email-dialog/locales/fr.ts +26 -0
  441. package/src/components/invoices/send-email-dialog/locales/hr.ts +26 -0
  442. package/src/components/invoices/send-email-dialog/locales/is.ts +63 -0
  443. package/src/components/invoices/send-email-dialog/locales/it.ts +26 -0
  444. package/src/components/invoices/send-email-dialog/locales/nb.ts +63 -0
  445. package/src/components/invoices/send-email-dialog/locales/nl.ts +26 -0
  446. package/src/components/invoices/send-email-dialog/locales/pl.ts +26 -0
  447. package/src/components/invoices/send-email-dialog/locales/pt.ts +26 -0
  448. package/src/components/invoices/send-email-dialog/locales/sk.ts +63 -0
  449. package/src/components/invoices/send-email-dialog/locales/sl.ts +26 -0
  450. package/src/components/invoices/send-email-dialog/locales/sv.ts +63 -0
  451. package/src/components/invoices/send-email-dialog/send-email-dialog.tsx +189 -93
  452. package/src/components/invoices/view/eslog-info-display.tsx +2 -0
  453. package/src/components/invoices/view/fiscalization-status-card.tsx +2 -0
  454. package/src/components/items/create-item-form/create-item-form.tsx +29 -0
  455. package/src/components/items/create-item-form/locales/bg.ts +13 -0
  456. package/src/components/items/create-item-form/locales/cs.ts +13 -0
  457. package/src/components/items/create-item-form/locales/et.ts +13 -0
  458. package/src/components/items/create-item-form/locales/fi.ts +13 -0
  459. package/src/components/items/create-item-form/locales/is.ts +13 -0
  460. package/src/components/items/create-item-form/locales/nb.ts +13 -0
  461. package/src/components/items/create-item-form/locales/sk.ts +13 -0
  462. package/src/components/items/create-item-form/locales/sv.ts +13 -0
  463. package/src/components/items/edit-item-form/edit-item-form.tsx +39 -1
  464. package/src/components/items/edit-item-form/locales/bg.ts +12 -0
  465. package/src/components/items/edit-item-form/locales/cs.ts +12 -0
  466. package/src/components/items/edit-item-form/locales/en.ts +12 -0
  467. package/src/components/items/edit-item-form/locales/et.ts +12 -0
  468. package/src/components/items/edit-item-form/locales/fi.ts +12 -0
  469. package/src/components/items/edit-item-form/locales/is.ts +12 -0
  470. package/src/components/items/edit-item-form/locales/nb.ts +12 -0
  471. package/src/components/items/edit-item-form/locales/sk.ts +12 -0
  472. package/src/components/items/edit-item-form/locales/sv.ts +12 -0
  473. package/src/components/items/item-combobox.tsx +55 -22
  474. package/src/components/items/item-list-table/item-list-table.tsx +47 -23
  475. package/src/components/items/item-list-table/locales/bg.ts +16 -0
  476. package/src/components/items/item-list-table/locales/cs.ts +16 -0
  477. package/src/components/items/item-list-table/locales/en.ts +4 -3
  478. package/src/components/items/item-list-table/locales/et.ts +16 -0
  479. package/src/components/items/item-list-table/locales/fi.ts +16 -0
  480. package/src/components/items/item-list-table/locales/is.ts +16 -0
  481. package/src/components/items/item-list-table/locales/nb.ts +16 -0
  482. package/src/components/items/item-list-table/locales/sk.ts +16 -0
  483. package/src/components/items/item-list-table/locales/sv.ts +16 -0
  484. package/src/components/items/items.hooks.ts +15 -15
  485. package/src/components/payments/create-payment-form/create-payment-form.tsx +16 -9
  486. package/src/components/payments/create-payment-form/locales/bg.ts +20 -0
  487. package/src/components/payments/create-payment-form/locales/cs.ts +20 -0
  488. package/src/components/payments/create-payment-form/locales/en.ts +20 -0
  489. package/src/components/payments/create-payment-form/locales/et.ts +20 -0
  490. package/src/components/payments/create-payment-form/locales/fi.ts +20 -0
  491. package/src/components/payments/create-payment-form/locales/hr.ts +2 -2
  492. package/src/components/payments/create-payment-form/locales/is.ts +20 -0
  493. package/src/components/payments/create-payment-form/locales/nb.ts +20 -0
  494. package/src/components/payments/create-payment-form/locales/sk.ts +20 -0
  495. package/src/components/payments/create-payment-form/locales/sl.ts +4 -4
  496. package/src/components/payments/create-payment-form/locales/sv.ts +20 -0
  497. package/src/components/payments/edit-payment-form/edit-payment-form.tsx +10 -2
  498. package/src/components/payments/edit-payment-form/locales/bg.ts +20 -0
  499. package/src/components/payments/edit-payment-form/locales/cs.ts +20 -0
  500. package/src/components/payments/edit-payment-form/locales/en.ts +20 -0
  501. package/src/components/payments/edit-payment-form/locales/et.ts +20 -0
  502. package/src/components/payments/edit-payment-form/locales/fi.ts +20 -0
  503. package/src/components/payments/edit-payment-form/locales/hr.ts +2 -2
  504. package/src/components/payments/edit-payment-form/locales/is.ts +20 -0
  505. package/src/components/payments/edit-payment-form/locales/nb.ts +20 -0
  506. package/src/components/payments/edit-payment-form/locales/sk.ts +20 -0
  507. package/src/components/payments/edit-payment-form/locales/sl.ts +4 -4
  508. package/src/components/payments/edit-payment-form/locales/sv.ts +20 -0
  509. package/src/components/payments/list/list-row-actions.tsx +10 -2
  510. package/src/components/payments/list/list-table.tsx +51 -45
  511. package/src/components/payments/list/locales/bg.ts +42 -0
  512. package/src/components/payments/list/locales/cs.ts +42 -0
  513. package/src/components/payments/list/locales/de.ts +18 -0
  514. package/src/components/payments/list/locales/en.ts +37 -2
  515. package/src/components/payments/list/locales/es.ts +18 -0
  516. package/src/components/payments/list/locales/et.ts +42 -0
  517. package/src/components/payments/list/locales/fi.ts +42 -0
  518. package/src/components/payments/list/locales/fr.ts +18 -0
  519. package/src/components/payments/list/locales/hr.ts +18 -0
  520. package/src/components/payments/list/locales/is.ts +42 -0
  521. package/src/components/payments/list/locales/it.ts +18 -0
  522. package/src/components/payments/list/locales/nb.ts +42 -0
  523. package/src/components/payments/list/locales/nl.ts +18 -0
  524. package/src/components/payments/list/locales/pl.ts +18 -0
  525. package/src/components/payments/list/locales/pt.ts +18 -0
  526. package/src/components/payments/list/locales/sk.ts +42 -0
  527. package/src/components/payments/list/locales/sl.ts +18 -1
  528. package/src/components/payments/list/locales/sv.ts +42 -0
  529. package/src/components/payments/payments.hooks.ts +13 -6
  530. package/src/components/recurring-invoices/create-recurring-invoice-form/create-recurring-invoice-form.tsx +121 -39
  531. package/src/components/recurring-invoices/create-recurring-invoice-form/locales/bg.ts +44 -0
  532. package/src/components/recurring-invoices/create-recurring-invoice-form/locales/cs.ts +44 -0
  533. package/src/components/recurring-invoices/create-recurring-invoice-form/locales/en.ts +44 -0
  534. package/src/components/recurring-invoices/create-recurring-invoice-form/locales/et.ts +44 -0
  535. package/src/components/recurring-invoices/create-recurring-invoice-form/locales/fi.ts +44 -0
  536. package/src/components/recurring-invoices/create-recurring-invoice-form/locales/hr.ts +6 -6
  537. package/src/components/recurring-invoices/create-recurring-invoice-form/locales/is.ts +44 -0
  538. package/src/components/recurring-invoices/create-recurring-invoice-form/locales/nb.ts +44 -0
  539. package/src/components/recurring-invoices/create-recurring-invoice-form/locales/sk.ts +44 -0
  540. package/src/components/recurring-invoices/create-recurring-invoice-form/locales/sl.ts +4 -4
  541. package/src/components/recurring-invoices/create-recurring-invoice-form/locales/sv.ts +44 -0
  542. package/src/components/recurring-invoices/list/list-row-actions.tsx +12 -6
  543. package/src/components/recurring-invoices/list/list-table.tsx +63 -12
  544. package/src/components/recurring-invoices/list/locales/bg.ts +32 -0
  545. package/src/components/recurring-invoices/list/locales/cs.ts +32 -0
  546. package/src/components/recurring-invoices/list/locales/de.ts +4 -0
  547. package/src/components/recurring-invoices/list/locales/en.ts +27 -0
  548. package/src/components/recurring-invoices/list/locales/es.ts +4 -0
  549. package/src/components/recurring-invoices/list/locales/et.ts +32 -0
  550. package/src/components/recurring-invoices/list/locales/fi.ts +32 -0
  551. package/src/components/recurring-invoices/list/locales/fr.ts +4 -0
  552. package/src/components/recurring-invoices/list/locales/hr.ts +4 -0
  553. package/src/components/recurring-invoices/list/locales/is.ts +32 -0
  554. package/src/components/recurring-invoices/list/locales/it.ts +4 -0
  555. package/src/components/recurring-invoices/list/locales/nb.ts +32 -0
  556. package/src/components/recurring-invoices/list/locales/nl.ts +4 -0
  557. package/src/components/recurring-invoices/list/locales/pl.ts +4 -0
  558. package/src/components/recurring-invoices/list/locales/pt.ts +4 -0
  559. package/src/components/recurring-invoices/list/locales/sk.ts +32 -0
  560. package/src/components/recurring-invoices/list/locales/sl.ts +4 -0
  561. package/src/components/recurring-invoices/list/locales/sv.ts +32 -0
  562. package/src/components/recurring-invoices/recurring-invoices.hooks.ts +11 -8
  563. package/src/components/request-logs/request-log-detail.tsx +30 -23
  564. package/src/components/request-logs/request-log-list-table.tsx +88 -45
  565. package/src/components/table/README.md +47 -9
  566. package/src/components/table/data-table.tsx +232 -92
  567. package/src/components/table/filter-bar.tsx +1 -1
  568. package/src/components/table/filter-panel.tsx +51 -22
  569. package/src/components/table/hooks/use-table-state.ts +64 -11
  570. package/src/components/table/index.ts +3 -0
  571. package/src/components/table/locales.ts +119 -4
  572. package/src/components/table/selection-toolbar.tsx +65 -9
  573. package/src/components/table/sorting.ts +80 -0
  574. package/src/components/table/table-skeleton.tsx +15 -9
  575. package/src/components/table/types.ts +17 -0
  576. package/src/components/tax-reports/index.ts +8 -0
  577. package/src/components/tax-reports/kir-export-form.tsx +4 -5
  578. package/src/components/tax-reports/slovenia-accounting-mappings-fields.tsx +271 -0
  579. package/src/components/tax-reports/slovenia-tax-profile-step.tsx +25 -11
  580. package/src/components/tax-reports/slovenia-vod-export-form.tsx +452 -0
  581. package/src/components/tax-reports/slovenia-yearly-export-form.tsx +20 -16
  582. package/src/components/tax-reports/slovenia-yearly-review-step.tsx +42 -19
  583. package/src/components/taxes/create-tax-form/create-tax-form.tsx +48 -2
  584. package/src/components/taxes/create-tax-form/locales/bg.ts +8 -0
  585. package/src/components/taxes/create-tax-form/locales/cs.ts +8 -0
  586. package/src/components/taxes/create-tax-form/locales/et.ts +8 -0
  587. package/src/components/taxes/create-tax-form/locales/fi.ts +8 -0
  588. package/src/components/taxes/create-tax-form/locales/is.ts +8 -0
  589. package/src/components/taxes/create-tax-form/locales/nb.ts +8 -0
  590. package/src/components/taxes/create-tax-form/locales/sk.ts +8 -0
  591. package/src/components/taxes/create-tax-form/locales/sv.ts +8 -0
  592. package/src/components/taxes/edit-tax-form/edit-tax-form.tsx +80 -11
  593. package/src/components/taxes/edit-tax-form/locales/bg.ts +6 -0
  594. package/src/components/taxes/edit-tax-form/locales/cs.ts +6 -0
  595. package/src/components/taxes/edit-tax-form/locales/en.ts +6 -0
  596. package/src/components/taxes/edit-tax-form/locales/et.ts +6 -0
  597. package/src/components/taxes/edit-tax-form/locales/fi.ts +6 -0
  598. package/src/components/taxes/edit-tax-form/locales/is.ts +6 -0
  599. package/src/components/taxes/edit-tax-form/locales/nb.ts +6 -0
  600. package/src/components/taxes/edit-tax-form/locales/sk.ts +6 -0
  601. package/src/components/taxes/edit-tax-form/locales/sv.ts +6 -0
  602. package/src/components/taxes/tax-list-table/locales/bg.ts +17 -0
  603. package/src/components/taxes/tax-list-table/locales/cs.ts +17 -0
  604. package/src/components/taxes/tax-list-table/locales/en.ts +4 -3
  605. package/src/components/taxes/tax-list-table/locales/et.ts +17 -0
  606. package/src/components/taxes/tax-list-table/locales/fi.ts +17 -0
  607. package/src/components/taxes/tax-list-table/locales/is.ts +17 -0
  608. package/src/components/taxes/tax-list-table/locales/nb.ts +17 -0
  609. package/src/components/taxes/tax-list-table/locales/sk.ts +17 -0
  610. package/src/components/taxes/tax-list-table/locales/sv.ts +17 -0
  611. package/src/components/taxes/tax-list-table/tax-list-table.tsx +53 -19
  612. package/src/components/taxes/taxes.hooks.ts +53 -12
  613. package/src/components/ui/badge.tsx +1 -1
  614. package/src/components/ui/button.tsx +1 -1
  615. package/src/components/ui/drawer.tsx +2 -2
  616. package/src/components/ui/form.tsx +118 -10
  617. package/src/components/ui/progress.tsx +6 -4
  618. package/src/components/ui/select.tsx +118 -2
  619. package/src/components/ui/sidebar.tsx +2 -2
  620. package/src/components/ui/sonner.tsx +17 -36
  621. package/src/components/ui/sticky-form-footer.tsx +6 -1
  622. package/src/components/ui/tooltip.tsx +15 -2
  623. package/src/components/webhook-logs/webhook-delivery-detail.tsx +22 -22
  624. package/src/components/webhook-logs/webhook-delivery-list-table.tsx +92 -17
  625. package/src/components/wl-subscription/locked-feature.tsx +11 -10
  626. package/src/components/wl-subscription/paywall.tsx +184 -72
  627. package/src/components/wl-subscription/upgrade-modal.tsx +28 -31
  628. package/src/generate-schemas.ts +146 -103
  629. package/src/generated/schemas/acceptentityinvitation_body.ts +4 -3
  630. package/src/generated/schemas/accountwebhook.ts +63 -0
  631. package/src/generated/schemas/addentityuser_body.ts +4 -3
  632. package/src/generated/schemas/advanceinvoice.ts +167 -168
  633. package/src/generated/schemas/authorizeshopify_body.ts +4 -3
  634. package/src/generated/schemas/calculatedocumentpreview.ts +120 -0
  635. package/src/generated/schemas/checktransactiontype.ts +35 -0
  636. package/src/generated/schemas/creditnote.ts +203 -76
  637. package/src/generated/schemas/customadvanceinvoice.ts +172 -165
  638. package/src/generated/schemas/customcreditnote.ts +183 -155
  639. package/src/generated/schemas/customdeliverynote.ts +166 -0
  640. package/src/generated/schemas/customer.ts +4 -8
  641. package/src/generated/schemas/customestimate.ts +123 -97
  642. package/src/generated/schemas/customincomingpurchasedocument.ts +142 -0
  643. package/src/generated/schemas/custominvoice.ts +183 -154
  644. package/src/generated/schemas/deliverynote.ts +124 -79
  645. package/src/generated/schemas/einvoice.ts +19 -0
  646. package/src/generated/schemas/einvoicingsettings.ts +21 -0
  647. package/src/generated/schemas/einvoicingsupplier.ts +45 -0
  648. package/src/generated/schemas/entity.ts +267 -24
  649. package/src/generated/schemas/entityapikey.ts +1 -3
  650. package/src/generated/schemas/entityuserrole.ts +1 -3
  651. package/src/generated/schemas/estimate.ts +120 -127
  652. package/src/generated/schemas/exportsloveniavodxml_body.ts +17 -0
  653. package/src/generated/schemas/exportsloveniayearlynormiranireport_body.ts +4 -3
  654. package/src/generated/schemas/finadevice.ts +15 -0
  655. package/src/generated/schemas/finalizedocument.ts +52 -0
  656. package/src/generated/schemas/finapremise.ts +15 -0
  657. package/src/generated/schemas/finasettings.ts +1 -3
  658. package/src/generated/schemas/furselectronicdevice.ts +15 -0
  659. package/src/generated/schemas/furssettings.ts +2 -3
  660. package/src/generated/schemas/image.ts +15 -0
  661. package/src/generated/schemas/incomingpurchasedocument.ts +178 -0
  662. package/src/generated/schemas/incomingpurchasedocumentattachment.ts +15 -0
  663. package/src/generated/schemas/incomingpurchasedocumentpayment.ts +36 -0
  664. package/src/generated/schemas/index.ts +30 -5
  665. package/src/generated/schemas/invoice.ts +182 -183
  666. package/src/generated/schemas/item.ts +35 -3
  667. package/src/generated/schemas/legacymigrationauth.ts +18 -0
  668. package/src/generated/schemas/me.ts +4 -22
  669. package/src/generated/schemas/migrationjob.ts +20 -0
  670. package/src/generated/schemas/order.ts +6 -8
  671. package/src/generated/schemas/orderintegration.ts +12 -12
  672. package/src/generated/schemas/payment.ts +9 -8
  673. package/src/generated/schemas/ptatcudseries.ts +28 -0
  674. package/src/generated/schemas/queryentitystats.ts +15 -0
  675. package/src/generated/schemas/recurringinvoice.ts +4 -8
  676. package/src/generated/schemas/registerfursmovablepremise_body.ts +1 -3
  677. package/src/generated/schemas/registerfursrealestatepremise_body.ts +1 -3
  678. package/src/generated/schemas/renderadvanceinvoicepreview_body.ts +42 -16
  679. package/src/generated/schemas/rendercreditnotepreview_body.ts +42 -16
  680. package/src/generated/schemas/renderdeliverynotepreview_body.ts +19 -8
  681. package/src/generated/schemas/renderestimatepreview_body.ts +45 -8
  682. package/src/generated/schemas/renderinvoicepreview_body.ts +46 -18
  683. package/src/generated/schemas/reviewsloveniayearlynormiranireport.ts +15 -0
  684. package/src/generated/schemas/searcheinvoicingcustomer.ts +18 -0
  685. package/src/generated/schemas/senddocument_body.ts +2 -3
  686. package/src/generated/schemas/sendemail_body.ts +48 -42
  687. package/src/generated/schemas/sloveniataxprofile.ts +98 -24
  688. package/src/generated/schemas/starteslogexport_body.ts +34 -0
  689. package/src/generated/schemas/startpdfexport_body.ts +18 -81
  690. package/src/generated/schemas/stripeappconnect_body.ts +4 -3
  691. package/src/generated/schemas/stripeappcreateinvoice_body.ts +4 -6
  692. package/src/generated/schemas/stripeappmarketplaceauthorize.ts +15 -0
  693. package/src/generated/schemas/stripeappupdatesettings_body.ts +6 -6
  694. package/src/generated/schemas/supplier.ts +55 -0
  695. package/src/generated/schemas/syncshopifyorders_body.ts +21 -0
  696. package/src/generated/schemas/tax.ts +8 -8
  697. package/src/generated/schemas/uploadfile_body.ts +2 -3
  698. package/src/generated/schemas/uploadfurscertificate_body.ts +6 -6
  699. package/src/generated/schemas/userfinasettings.ts +1 -3
  700. package/src/generated/schemas/userfurssettings.ts +1 -3
  701. package/src/generated/schemas/userptsettings.ts +24 -0
  702. package/src/generated/schemas/voidinvoice_body.ts +25 -0
  703. package/src/generated/schemas/webhook.ts +6 -8
  704. package/src/generated/schemas/wlsubscriptionbillingemail.ts +17 -0
  705. package/src/hooks/create-resource-hooks.ts +22 -19
  706. package/src/hooks/use-duplicate-document.ts +71 -38
  707. package/src/hooks/use-eslog-validation.ts +5 -1
  708. package/src/hooks/use-next-document-number.ts +13 -6
  709. package/src/hooks/use-resolved-entity-id.ts +14 -0
  710. package/src/hooks/use-resource-mutation.ts +11 -30
  711. package/src/hooks/use-transaction-type-check.ts +3 -8
  712. package/src/lib/browser-cookies.ts +1 -1
  713. package/src/lib/country-capabilities.ts +114 -0
  714. package/src/lib/date-fns-locale.ts +1 -20
  715. package/src/lib/date-only.ts +58 -0
  716. package/src/lib/document-display.ts +18 -0
  717. package/src/lib/eslog-export.ts +32 -0
  718. package/src/lib/fiscalization-options.ts +21 -1
  719. package/src/lib/formatting.ts +27 -0
  720. package/src/lib/furs-error-utils.ts +29 -0
  721. package/src/lib/locale.ts +4 -0
  722. package/src/lib/payment-display.ts +97 -0
  723. package/src/lib/pt-document-input.ts +67 -0
  724. package/src/lib/schemas/shared.ts +12 -0
  725. package/src/lib/template-variables.tsx +102 -4
  726. package/src/lib/translation.ts +51 -33
  727. package/src/lib/white-label-capabilities.ts +626 -0
  728. package/src/lib/zod-validation-message.ts +291 -0
  729. package/src/providers/entities-provider.tsx +32 -14
  730. package/src/providers/sdk-provider.tsx +112 -12
  731. package/src/providers/space-invoices-provider.tsx +129 -0
  732. package/src/providers/white-label-provider.tsx +96 -4
  733. package/src/providers/wl-subscription-provider.tsx +149 -10
  734. package/src/generated/schemas/previewadvanceinvoice_body.ts +0 -354
  735. package/src/generated/schemas/previewestimate_body.ts +0 -309
  736. package/src/generated/schemas/registerfinamovablepremise_body.ts +0 -26
  737. package/src/generated/schemas/registerfinarealestatepremise_body.ts +0 -37
  738. package/src/generated/schemas/renderdocument_body.ts +0 -594
@@ -0,0 +1,42 @@
1
+ export default {
2
+ Date: "Dato",
3
+ Amount: "Beløp",
4
+ Type: "Type",
5
+ Document: "Faktura",
6
+ Reference: "Referanse",
7
+ Note: "Note",
8
+ Actions: "Handlinger",
9
+ "Open menu": "Åpne menyen",
10
+ "Edit payment": "Edit payment",
11
+ "Delete payment": "Delete payment",
12
+ "Deleting...": "Sletter …",
13
+ "View invoice": "View invoice",
14
+ "Your list is empty": "Your payment list is empty",
15
+ "Get started by creating your first entry": "Get started by creating your first payment",
16
+ "No results found": "No payments found",
17
+ cash: "Kontant",
18
+ bank_transfer: "Bankoverføring",
19
+ card: "Kort",
20
+ check: "Sjekk",
21
+ credit_note: "Credit note",
22
+ advance_payment: "Advance payment",
23
+ other: "Annet",
24
+ Cash: "Kontant",
25
+ "Bank Transfer": "Bankoverføring",
26
+ Card: "Kort",
27
+ Check: "Sjekk",
28
+ "Credit note": "Credit note",
29
+ "Advance payment": "Advance payment",
30
+ Other: "Annet",
31
+ "Auto-applied credit note for voided invoice {number}": "Auto-applied credit note for voided invoice {number}",
32
+ "Automatic billing payment via Stripe": "Automatic billing payment via Stripe",
33
+ Invoice: "Faktura",
34
+ "type.cash": "type.cash",
35
+ "type.bank_transfer": "type.bank_transfer",
36
+ "type.card": "type.card",
37
+ "type.check": "type.check",
38
+ "type.other": "type.other",
39
+ "Try adjusting your search criteria": "Try adjusting your search criteria",
40
+ "Clear search": "Clear search",
41
+ "Clear all": "Clear all",
42
+ } as const;
@@ -3,6 +3,7 @@ export default {
3
3
  Amount: "Bedrag",
4
4
  Type: "Type",
5
5
  Invoice: "Factuur",
6
+ Document: "Document",
6
7
  Reference: "Referentie",
7
8
  Note: "Notitie",
8
9
  Actions: "Acties",
@@ -16,6 +17,23 @@ export default {
16
17
  "type.card": "Kaart",
17
18
  "type.check": "Cheque",
18
19
  "type.other": "Anders",
20
+ cash: "Contant",
21
+ bank_transfer: "Bankoverschrijving",
22
+ card: "Kaart",
23
+ check: "Cheque",
24
+ credit_note: "Creditnota",
25
+ advance_payment: "Vooruitbetaling",
26
+ other: "Anders",
27
+ Cash: "Contant",
28
+ "Bank Transfer": "Bankoverschrijving",
29
+ Card: "Kaart",
30
+ Check: "Cheque",
31
+ "Credit note": "Creditnota",
32
+ "Advance payment": "Vooruitbetaling",
33
+ Other: "Anders",
34
+ "Auto-applied credit note for voided invoice {number}":
35
+ "Automatisch toegepaste creditnota voor geannuleerde factuur {number}",
36
+ "Automatic billing payment via Stripe": "Automatische factureringsbetaling via Stripe",
19
37
  // Empty state translations
20
38
  "Your list is empty": "Uw betalingslijst is leeg",
21
39
  "Get started by creating your first entry": "Begin met het toevoegen van uw eerste betaling",
@@ -3,6 +3,7 @@ export default {
3
3
  Amount: "Kwota",
4
4
  Type: "Typ",
5
5
  Invoice: "Faktura",
6
+ Document: "Dokument",
6
7
  Reference: "Referencja",
7
8
  Note: "Notatka",
8
9
  Actions: "Akcje",
@@ -16,6 +17,23 @@ export default {
16
17
  "type.card": "Karta",
17
18
  "type.check": "Czek",
18
19
  "type.other": "Inne",
20
+ cash: "Gotówka",
21
+ bank_transfer: "Przelew bankowy",
22
+ card: "Karta",
23
+ check: "Czek",
24
+ credit_note: "Nota kredytowa",
25
+ advance_payment: "Płatność zaliczkowa",
26
+ other: "Inne",
27
+ Cash: "Gotówka",
28
+ "Bank Transfer": "Przelew bankowy",
29
+ Card: "Karta",
30
+ Check: "Czek",
31
+ "Credit note": "Nota kredytowa",
32
+ "Advance payment": "Płatność zaliczkowa",
33
+ Other: "Inne",
34
+ "Auto-applied credit note for voided invoice {number}":
35
+ "Automatycznie zastosowana nota kredytowa do anulowanej faktury {number}",
36
+ "Automatic billing payment via Stripe": "Automatyczna płatność rozliczeniowa przez Stripe",
19
37
  // Empty state translations
20
38
  "Your list is empty": "Lista płatności jest pusta",
21
39
  "Get started by creating your first entry": "Zacznij od dodania pierwszej płatności",
@@ -3,6 +3,7 @@ export default {
3
3
  Amount: "Montante",
4
4
  Type: "Tipo",
5
5
  Invoice: "Fatura",
6
+ Document: "Documento",
6
7
  Reference: "Referência",
7
8
  Note: "Nota",
8
9
  Actions: "Ações",
@@ -16,6 +17,23 @@ export default {
16
17
  "type.card": "Cartão",
17
18
  "type.check": "Cheque",
18
19
  "type.other": "Outro",
20
+ cash: "Dinheiro",
21
+ bank_transfer: "Transferência bancária",
22
+ card: "Cartão",
23
+ check: "Cheque",
24
+ credit_note: "Nota de crédito",
25
+ advance_payment: "Pagamento antecipado",
26
+ other: "Outro",
27
+ Cash: "Dinheiro",
28
+ "Bank Transfer": "Transferência bancária",
29
+ Card: "Cartão",
30
+ Check: "Cheque",
31
+ "Credit note": "Nota de crédito",
32
+ "Advance payment": "Pagamento antecipado",
33
+ Other: "Outro",
34
+ "Auto-applied credit note for voided invoice {number}":
35
+ "Nota de crédito aplicada automaticamente para fatura anulada {number}",
36
+ "Automatic billing payment via Stripe": "Pagamento de faturação automático via Stripe",
19
37
  // Empty state translations
20
38
  "Your list is empty": "A sua lista de pagamentos está vazia",
21
39
  "Get started by creating your first entry": "Comece por adicionar o seu primeiro pagamento",
@@ -0,0 +1,42 @@
1
+ export default {
2
+ Date: "Dátum",
3
+ Amount: "Suma",
4
+ Type: "Typ",
5
+ Document: "Faktura",
6
+ Reference: "Referencia",
7
+ Note: "Note",
8
+ Actions: "Akcie",
9
+ "Open menu": "Otvoriť menu",
10
+ "Edit payment": "Edit payment",
11
+ "Delete payment": "Delete payment",
12
+ "Deleting...": "Odstraňuje sa...",
13
+ "View invoice": "View invoice",
14
+ "Your list is empty": "Your payment list is empty",
15
+ "Get started by creating your first entry": "Get started by creating your first payment",
16
+ "No results found": "No payments found",
17
+ cash: "Hotovosť",
18
+ bank_transfer: "Bankový prevod",
19
+ card: "Karta",
20
+ check: "Šek",
21
+ credit_note: "Credit note",
22
+ advance_payment: "Advance payment",
23
+ other: "Iné",
24
+ Cash: "Hotovosť",
25
+ "Bank Transfer": "Bankový prevod",
26
+ Card: "Karta",
27
+ Check: "Šek",
28
+ "Credit note": "Credit note",
29
+ "Advance payment": "Advance payment",
30
+ Other: "Iné",
31
+ "Auto-applied credit note for voided invoice {number}": "Auto-applied credit note for voided invoice {number}",
32
+ "Automatic billing payment via Stripe": "Automatic billing payment via Stripe",
33
+ Invoice: "Faktura",
34
+ "type.cash": "type.cash",
35
+ "type.bank_transfer": "type.bank_transfer",
36
+ "type.card": "type.card",
37
+ "type.check": "type.check",
38
+ "type.other": "type.other",
39
+ "Try adjusting your search criteria": "Try adjusting your search criteria",
40
+ "Clear search": "Clear search",
41
+ "Clear all": "Clear all",
42
+ } as const;
@@ -3,8 +3,9 @@ export default {
3
3
  Amount: "Znesek",
4
4
  Type: "Vrsta",
5
5
  Invoice: "Račun",
6
+ Document: "Dokument",
6
7
  Reference: "Referenca",
7
- Note: "Opomba",
8
+ Note: "Pripis",
8
9
  Actions: "Akcije",
9
10
  "Open menu": "Odpri meni",
10
11
  "Edit payment": "Uredi plačilo",
@@ -16,6 +17,22 @@ export default {
16
17
  "type.card": "Kartica",
17
18
  "type.check": "Ček",
18
19
  "type.other": "Drugo",
20
+ cash: "Gotovina",
21
+ bank_transfer: "Bančno nakazilo",
22
+ card: "Kartica",
23
+ check: "Ček",
24
+ credit_note: "Dobropis",
25
+ advance_payment: "Avansno plačilo",
26
+ other: "Drugo",
27
+ Cash: "Gotovina",
28
+ "Bank Transfer": "Bančno nakazilo",
29
+ Card: "Kartica",
30
+ Check: "Ček",
31
+ "Credit note": "Dobropis",
32
+ "Advance payment": "Avansno plačilo",
33
+ Other: "Drugo",
34
+ "Auto-applied credit note for voided invoice {number}": "Samodejno uveljavljen dobropis za storniran račun {number}",
35
+ "Automatic billing payment via Stripe": "Samodejno obračunano plačilo prek Stripe",
19
36
  // Empty state translations
20
37
  "Your list is empty": "Vaš seznam plačil je prazen",
21
38
  "Get started by creating your first entry": "Začnite z dodajanjem prvega plačila",
@@ -0,0 +1,42 @@
1
+ export default {
2
+ Date: "Datum",
3
+ Amount: "Belopp",
4
+ Type: "Typ",
5
+ Document: "Faktura",
6
+ Reference: "Referens",
7
+ Note: "Note",
8
+ Actions: "Åtgärder",
9
+ "Open menu": "Öppna menyn",
10
+ "Edit payment": "Edit payment",
11
+ "Delete payment": "Delete payment",
12
+ "Deleting...": "Tar bort...",
13
+ "View invoice": "View invoice",
14
+ "Your list is empty": "Your payment list is empty",
15
+ "Get started by creating your first entry": "Get started by creating your first payment",
16
+ "No results found": "No payments found",
17
+ cash: "Kontant",
18
+ bank_transfer: "Banköverföring",
19
+ card: "Kort",
20
+ check: "Check",
21
+ credit_note: "Credit note",
22
+ advance_payment: "Advance payment",
23
+ other: "Övrigt",
24
+ Cash: "Kontant",
25
+ "Bank Transfer": "Banköverföring",
26
+ Card: "Kort",
27
+ Check: "Check",
28
+ "Credit note": "Credit note",
29
+ "Advance payment": "Advance payment",
30
+ Other: "Övrigt",
31
+ "Auto-applied credit note for voided invoice {number}": "Auto-applied credit note for voided invoice {number}",
32
+ "Automatic billing payment via Stripe": "Automatic billing payment via Stripe",
33
+ Invoice: "Faktura",
34
+ "type.cash": "type.cash",
35
+ "type.bank_transfer": "type.bank_transfer",
36
+ "type.card": "type.card",
37
+ "type.check": "type.check",
38
+ "type.other": "type.other",
39
+ "Try adjusting your search criteria": "Try adjusting your search criteria",
40
+ "Clear search": "Clear search",
41
+ "Clear all": "Clear all",
42
+ } as const;
@@ -1,4 +1,5 @@
1
- import type { CreatePaymentRequest, Payment } from "@spaceinvoices/js-sdk";
1
+ import type { CreatePaymentRequest, Payment, UpdatePaymentBody } from "@spaceinvoices/js-sdk";
2
+ import { payments } from "@spaceinvoices/js-sdk";
2
3
 
3
4
  import { createResourceHooks } from "@/ui/hooks/create-resource-hooks";
4
5
 
@@ -12,9 +13,15 @@ const {
12
13
  useDeleteResource: useDeletePayment,
13
14
  useRestoreResource: useRestorePayment,
14
15
  usePermanentDeleteResource: usePermanentDeletePayment,
15
- } = createResourceHooks<Payment, CreatePaymentRequest>("payments", PAYMENTS_CACHE_KEY, {
16
- restoreMethodName: "restorePayment",
17
- permanentDeleteMethodName: "permanentDeletePayment",
18
- });
16
+ } = createResourceHooks<Payment, CreatePaymentRequest, UpdatePaymentBody>(
17
+ {
18
+ create: payments.create,
19
+ update: payments.update,
20
+ delete: payments.delete,
21
+ restore: payments.restorePayment,
22
+ permanentDelete: payments.permanentDeletePayment,
23
+ },
24
+ PAYMENTS_CACHE_KEY,
25
+ );
19
26
 
20
- export { useCreatePayment, useUpdatePayment, useDeletePayment, useRestorePayment, usePermanentDeletePayment };
27
+ export { useCreatePayment, useDeletePayment, usePermanentDeletePayment, useRestorePayment, useUpdatePayment };
@@ -1,6 +1,7 @@
1
1
  import { zodResolver } from "@hookform/resolvers/zod";
2
- import type { CreateRecurringInvoiceBody, RecurringInvoice } from "@spaceinvoices/js-sdk";
2
+ import type { CreateRecurringInvoiceBody, RecurringInvoice, UpdateRecurringInvoiceBody } from "@spaceinvoices/js-sdk";
3
3
  import { CalendarIcon } from "lucide-react";
4
+ import { useEffect, useMemo } from "react";
4
5
  import { useForm, useWatch } from "react-hook-form";
5
6
  import { Button } from "@/ui/components/ui/button";
6
7
  import { Calendar } from "@/ui/components/ui/calendar";
@@ -23,27 +24,45 @@ import type { ComponentTranslationProps } from "@/ui/lib/translation";
23
24
  import { createTranslation } from "@/ui/lib/translation";
24
25
  import { cn } from "@/ui/lib/utils";
25
26
 
26
- import { useCreateRecurringInvoice } from "../recurring-invoices.hooks";
27
+ import { useCreateRecurringInvoice, useUpdateRecurringInvoice } from "../recurring-invoices.hooks";
28
+ import bg from "./locales/bg";
29
+ import cs from "./locales/cs";
27
30
  import de from "./locales/de";
31
+ import en from "./locales/en";
28
32
  import es from "./locales/es";
33
+ import et from "./locales/et";
34
+ import fi from "./locales/fi";
29
35
  import fr from "./locales/fr";
30
36
  import hr from "./locales/hr";
37
+ import is from "./locales/is";
31
38
  import it from "./locales/it";
39
+ import nb from "./locales/nb";
32
40
  import nl from "./locales/nl";
33
41
  import pl from "./locales/pl";
34
42
  import pt from "./locales/pt";
43
+ import sk from "./locales/sk";
35
44
  import sl from "./locales/sl";
45
+ import sv from "./locales/sv";
36
46
 
37
47
  const translations = {
48
+ en,
38
49
  sl,
50
+ bg,
51
+ cs,
39
52
  de,
40
- it,
41
- fr,
42
53
  es,
43
- pt,
54
+ et,
55
+ fi,
56
+ fr,
57
+ hr,
58
+ is,
59
+ it,
60
+ nb,
44
61
  nl,
45
62
  pl,
46
- hr,
63
+ pt,
64
+ sk,
65
+ sv,
47
66
  } as const;
48
67
 
49
68
  const FREQUENCY_LABELS: Record<string, string> = {
@@ -88,16 +107,20 @@ function formatDateToYMD(date: Date): string {
88
107
  type CreateRecurringInvoiceFormProps = {
89
108
  entityId: string;
90
109
  documentId: string;
110
+ recurringInvoice?: RecurringInvoice | null;
91
111
  onSuccess?: (recurringInvoice: RecurringInvoice) => void;
92
112
  onError?: (error: Error) => void;
113
+ allowDrafts?: boolean;
93
114
  renderSubmitButton?: (props: { isSubmitting: boolean; submit: () => void }) => React.ReactNode;
94
115
  } & ComponentTranslationProps;
95
116
 
96
117
  export default function CreateRecurringInvoiceForm({
97
118
  entityId,
98
119
  documentId,
120
+ recurringInvoice,
99
121
  onSuccess,
100
122
  onError,
123
+ allowDrafts = true,
101
124
  renderSubmitButton,
102
125
  ...i18nProps
103
126
  }: CreateRecurringInvoiceFormProps) {
@@ -105,26 +128,37 @@ export default function CreateRecurringInvoiceForm({
105
128
  ...i18nProps,
106
129
  translations,
107
130
  });
131
+ const formatDisplayDate = (value?: string) =>
132
+ value ? new Date(`${value}T00:00:00`).toLocaleDateString(i18nProps.locale) : undefined;
133
+
134
+ const defaultValues = useMemo<CreateRecurringInvoiceSchema>(
135
+ () => ({
136
+ document_id: documentId,
137
+ name: recurringInvoice?.name ?? "",
138
+ frequency: recurringInvoice?.frequency ?? "monthly",
139
+ interval: recurringInvoice?.interval ?? 1,
140
+ day_of_week: recurringInvoice?.day_of_week ?? null,
141
+ day_of_month: recurringInvoice?.day_of_month ?? null,
142
+ month_of_year: recurringInvoice?.month_of_year ?? null,
143
+ start_date: recurringInvoice?.start_date ?? formatDateToYMD(new Date()),
144
+ end_date: recurringInvoice?.end_date ?? undefined,
145
+ auto_send: recurringInvoice?.auto_send ?? false,
146
+ create_as_draft: recurringInvoice?.create_as_draft ?? false,
147
+ }),
148
+ [documentId, recurringInvoice],
149
+ );
108
150
 
109
151
  const form = useForm<CreateRecurringInvoiceSchema>({
110
152
  resolver: zodResolver(createRecurringInvoiceSchema),
111
- defaultValues: {
112
- document_id: documentId,
113
- name: "",
114
- frequency: "monthly",
115
- interval: 1,
116
- day_of_week: null,
117
- day_of_month: null,
118
- month_of_year: null,
119
- start_date: formatDateToYMD(new Date()),
120
- end_date: undefined,
121
- auto_send: false,
122
- create_as_draft: false,
123
- },
153
+ defaultValues,
124
154
  });
125
155
 
126
156
  const frequency = useWatch({ control: form.control, name: "frequency" });
127
157
 
158
+ useEffect(() => {
159
+ form.reset(defaultValues);
160
+ }, [defaultValues, form]);
161
+
128
162
  const { mutate: createRecurringInvoice, isPending } = useCreateRecurringInvoice({
129
163
  entityId,
130
164
  onSuccess: (recurringInvoice, _variables, _context) => {
@@ -140,8 +174,54 @@ export default function CreateRecurringInvoiceForm({
140
174
  },
141
175
  });
142
176
 
177
+ const { mutate: updateRecurringInvoice, isPending: isUpdating } = useUpdateRecurringInvoice({
178
+ entityId,
179
+ onSuccess: (updatedRecurringInvoice, _variables, _context) => {
180
+ onSuccess?.(updatedRecurringInvoice);
181
+ },
182
+ onError: (error, _variables, _context) => {
183
+ form.setError("root", {
184
+ type: "submit",
185
+ message: t("There was an error creating the schedule"),
186
+ });
187
+ onError?.(error);
188
+ },
189
+ });
190
+
191
+ const buildSubmitPayload = (values: CreateRecurringInvoiceSchema) => {
192
+ const payload: CreateRecurringInvoiceBody = {
193
+ document_id: documentId,
194
+ name: values.name,
195
+ frequency: values.frequency,
196
+ interval: values.interval,
197
+ start_date: values.start_date,
198
+ end_date: values.end_date,
199
+ auto_send: values.auto_send,
200
+ create_as_draft: values.create_as_draft,
201
+ day_of_week: values.frequency === "weekly" ? values.day_of_week : null,
202
+ day_of_month: values.frequency === "monthly" || values.frequency === "yearly" ? values.day_of_month : null,
203
+ month_of_year: values.frequency === "yearly" ? values.month_of_year : null,
204
+ };
205
+
206
+ return payload;
207
+ };
208
+
143
209
  const onSubmit = async (values: CreateRecurringInvoiceSchema) => {
144
- createRecurringInvoice(values as CreateRecurringInvoiceBody);
210
+ const payload = buildSubmitPayload(values);
211
+
212
+ if (recurringInvoice) {
213
+ const { document_id, ...updateData } = payload;
214
+ updateRecurringInvoice({
215
+ id: recurringInvoice.id,
216
+ data: {
217
+ ...updateData,
218
+ end_date: updateData.end_date ?? null,
219
+ } satisfies UpdateRecurringInvoiceBody,
220
+ });
221
+ return;
222
+ }
223
+
224
+ createRecurringInvoice(payload);
145
225
  };
146
226
 
147
227
  const handleSubmitClick = () => {
@@ -178,7 +258,7 @@ export default function CreateRecurringInvoiceForm({
178
258
  {t("Frequency")}
179
259
  <span className="ml-1 text-red-500">*</span>
180
260
  </FormLabel>
181
- <Select onValueChange={field.onChange} defaultValue={field.value}>
261
+ <Select onValueChange={field.onChange} value={field.value}>
182
262
  <FormControl>
183
263
  <SelectTrigger>
184
264
  <SelectValue placeholder={t("Select frequency")}>
@@ -325,7 +405,7 @@ export default function CreateRecurringInvoiceForm({
325
405
  variant="outline"
326
406
  className={cn("w-full pl-3 text-left font-normal", !field.value && "text-muted-foreground")}
327
407
  >
328
- {field.value ? field.value : <span>{t("Pick a date")}</span>}
408
+ {field.value ? formatDisplayDate(field.value) : <span>{t("Pick a date")}</span>}
329
409
  <CalendarIcon className="ml-auto h-4 w-4 opacity-50" />
330
410
  </Button>
331
411
  </FormControl>
@@ -357,7 +437,7 @@ export default function CreateRecurringInvoiceForm({
357
437
  variant="outline"
358
438
  className={cn("w-full pl-3 text-left font-normal", !field.value && "text-muted-foreground")}
359
439
  >
360
- {field.value ? field.value : <span>{t("No end date")}</span>}
440
+ {field.value ? formatDisplayDate(field.value) : <span>{t("No end date")}</span>}
361
441
  <CalendarIcon className="ml-auto h-4 w-4 opacity-50" />
362
442
  </Button>
363
443
  </FormControl>
@@ -392,24 +472,26 @@ export default function CreateRecurringInvoiceForm({
392
472
  )}
393
473
  />
394
474
 
395
- <FormField
396
- control={form.control}
397
- name="create_as_draft"
398
- render={({ field }) => (
399
- <FormItem className="flex flex-row items-start space-x-3 space-y-0">
400
- <FormControl>
401
- <Checkbox checked={field.value} onCheckedChange={field.onChange} />
402
- </FormControl>
403
- <div className="space-y-1 leading-none">
404
- <FormLabel>{t("Create as draft")}</FormLabel>
405
- <FormDescription>{t("Generated invoices will be drafts for review")}</FormDescription>
406
- </div>
407
- </FormItem>
408
- )}
409
- />
475
+ {allowDrafts ? (
476
+ <FormField
477
+ control={form.control}
478
+ name="create_as_draft"
479
+ render={({ field }) => (
480
+ <FormItem className="flex flex-row items-start space-x-3 space-y-0">
481
+ <FormControl>
482
+ <Checkbox checked={field.value} onCheckedChange={field.onChange} />
483
+ </FormControl>
484
+ <div className="space-y-1 leading-none">
485
+ <FormLabel>{t("Create as draft")}</FormLabel>
486
+ <FormDescription>{t("Generated invoices will be drafts for review")}</FormDescription>
487
+ </div>
488
+ </FormItem>
489
+ )}
490
+ />
491
+ ) : null}
410
492
 
411
493
  {renderSubmitButton?.({
412
- isSubmitting: isPending || form.formState.isSubmitting,
494
+ isSubmitting: isPending || isUpdating || form.formState.isSubmitting,
413
495
  submit: handleSubmitClick,
414
496
  })}
415
497
  </form>
@@ -0,0 +1,44 @@
1
+ export default {
2
+ Name: "Име",
3
+ "Enter schedule name": "Въведете име на графика",
4
+ Frequency: "Честота",
5
+ "Select frequency": "Изберете честота",
6
+ Daily: "Дневно",
7
+ Weekly: "Седмично",
8
+ Monthly: "Месечно",
9
+ Yearly: "Годишно",
10
+ Interval: "Интервал",
11
+ "Day of Week": "Ден от седмицата",
12
+ "Select day": "Изберете ден",
13
+ Sunday: "Неделя",
14
+ Monday: "Понеделник",
15
+ Tuesday: "Вторник",
16
+ Wednesday: "Сряда",
17
+ Thursday: "Четвъртък",
18
+ Friday: "Петък",
19
+ Saturday: "Събота",
20
+ "Day of Month": "Ден от месеца",
21
+ Month: "Месец",
22
+ "Select month": "Изберете месец",
23
+ January: "Януари",
24
+ February: "Февруари",
25
+ March: "Март",
26
+ April: "Април",
27
+ May: "Май",
28
+ June: "Юни",
29
+ July: "Юли",
30
+ August: "Август",
31
+ September: "Септември",
32
+ October: "Октомври",
33
+ November: "Ноември",
34
+ December: "Декември",
35
+ "Start Date": "Начална дата",
36
+ "End Date": "Крайна дата",
37
+ "Pick a date": "Изберете дата",
38
+ "No end date": "Без крайна дата",
39
+ "Auto-send": "Автоматично изпращане",
40
+ "Automatically email generated invoices": "Автоматично изпращайте генерираните фактури по имейл",
41
+ "Create as draft": "Създай като чернова",
42
+ "Generated invoices will be drafts for review": "Генерираните фактури ще бъдат чернови за преглед",
43
+ "There was an error creating the schedule": "Възникна грешка при създаването на графика",
44
+ } as const;
@@ -0,0 +1,44 @@
1
+ export default {
2
+ Name: "Jméno",
3
+ "Enter schedule name": "Zadejte název plánu",
4
+ Frequency: "Frekvence",
5
+ "Select frequency": "Vyberte frekvenci",
6
+ Daily: "Denně",
7
+ Weekly: "Týdně",
8
+ Monthly: "Měsíčně",
9
+ Yearly: "Ročně",
10
+ Interval: "Interval",
11
+ "Day of Week": "Den v týdnu",
12
+ "Select day": "Vyberte den",
13
+ Sunday: "Neděle",
14
+ Monday: "Pondělí",
15
+ Tuesday: "Úterý",
16
+ Wednesday: "Středa",
17
+ Thursday: "Čtvrtek",
18
+ Friday: "Pátek",
19
+ Saturday: "Sobota",
20
+ "Day of Month": "Den v měsíci",
21
+ Month: "Měsíc",
22
+ "Select month": "Vyberte měsíc",
23
+ January: "Leden",
24
+ February: "Únor",
25
+ March: "Březen",
26
+ April: "Duben",
27
+ May: "Květen",
28
+ June: "Červen",
29
+ July: "Červenec",
30
+ August: "Srpen",
31
+ September: "Září",
32
+ October: "Říjen",
33
+ November: "Listopad",
34
+ December: "Prosinec",
35
+ "Start Date": "Datum zahájení",
36
+ "End Date": "Datum ukončení",
37
+ "Pick a date": "Vyberte datum",
38
+ "No end date": "Bez data ukončení",
39
+ "Auto-send": "Automatické odeslání",
40
+ "Automatically email generated invoices": "Automaticky posílat vygenerované faktury e-mailem",
41
+ "Create as draft": "Vytvořit jako koncept",
42
+ "Generated invoices will be drafts for review": "Vygenerované faktury budou koncepty ke kontrole",
43
+ "There was an error creating the schedule": "Při vytváření plánu došlo k chybě",
44
+ } as const;