@ketvietlab/ketsuite 0.1.1

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 (1802) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +19 -0
  3. package/dist/index.d.ts +119 -0
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +118 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/modules/account/functions.d.ts +14 -0
  8. package/dist/modules/account/functions.d.ts.map +1 -0
  9. package/dist/modules/account/functions.js +1038 -0
  10. package/dist/modules/account/functions.js.map +1 -0
  11. package/dist/modules/account/index.d.ts +5 -0
  12. package/dist/modules/account/index.d.ts.map +1 -0
  13. package/dist/modules/account/index.js +31 -0
  14. package/dist/modules/account/index.js.map +1 -0
  15. package/dist/modules/account/models.d.ts +3 -0
  16. package/dist/modules/account/models.d.ts.map +1 -0
  17. package/dist/modules/account/models.js +151 -0
  18. package/dist/modules/account/models.js.map +1 -0
  19. package/dist/modules/account/relations.d.ts +3 -0
  20. package/dist/modules/account/relations.d.ts.map +1 -0
  21. package/dist/modules/account/relations.js +35 -0
  22. package/dist/modules/account/relations.js.map +1 -0
  23. package/dist/modules/account/setup.d.ts +4 -0
  24. package/dist/modules/account/setup.d.ts.map +1 -0
  25. package/dist/modules/account/setup.js +179 -0
  26. package/dist/modules/account/setup.js.map +1 -0
  27. package/dist/modules/account/tt99.d.ts +30 -0
  28. package/dist/modules/account/tt99.d.ts.map +1 -0
  29. package/dist/modules/account/tt99.js +1661 -0
  30. package/dist/modules/account/tt99.js.map +1 -0
  31. package/dist/modules/account_activity_backend/index.d.ts +5 -0
  32. package/dist/modules/account_activity_backend/index.d.ts.map +1 -0
  33. package/dist/modules/account_activity_backend/index.js +27 -0
  34. package/dist/modules/account_activity_backend/index.js.map +1 -0
  35. package/dist/modules/account_backend/accounting-overview-screen.d.ts +18 -0
  36. package/dist/modules/account_backend/accounting-overview-screen.d.ts.map +1 -0
  37. package/dist/modules/account_backend/accounting-overview-screen.js +104 -0
  38. package/dist/modules/account_backend/accounting-overview-screen.js.map +1 -0
  39. package/dist/modules/account_backend/accounts-screen.d.ts +13 -0
  40. package/dist/modules/account_backend/accounts-screen.d.ts.map +1 -0
  41. package/dist/modules/account_backend/accounts-screen.js +49 -0
  42. package/dist/modules/account_backend/accounts-screen.js.map +1 -0
  43. package/dist/modules/account_backend/customer-invoices-screen.d.ts +14 -0
  44. package/dist/modules/account_backend/customer-invoices-screen.d.ts.map +1 -0
  45. package/dist/modules/account_backend/customer-invoices-screen.js +63 -0
  46. package/dist/modules/account_backend/customer-invoices-screen.js.map +1 -0
  47. package/dist/modules/account_backend/general-ledger-screen.d.ts +13 -0
  48. package/dist/modules/account_backend/general-ledger-screen.d.ts.map +1 -0
  49. package/dist/modules/account_backend/general-ledger-screen.js +56 -0
  50. package/dist/modules/account_backend/general-ledger-screen.js.map +1 -0
  51. package/dist/modules/account_backend/index.d.ts +3 -0
  52. package/dist/modules/account_backend/index.d.ts.map +1 -0
  53. package/dist/modules/account_backend/index.js +1516 -0
  54. package/dist/modules/account_backend/index.js.map +1 -0
  55. package/dist/modules/account_backend/journal-entries-screen.d.ts +14 -0
  56. package/dist/modules/account_backend/journal-entries-screen.d.ts.map +1 -0
  57. package/dist/modules/account_backend/journal-entries-screen.js +45 -0
  58. package/dist/modules/account_backend/journal-entries-screen.js.map +1 -0
  59. package/dist/modules/account_backend/journals-screen.d.ts +14 -0
  60. package/dist/modules/account_backend/journals-screen.d.ts.map +1 -0
  61. package/dist/modules/account_backend/journals-screen.js +53 -0
  62. package/dist/modules/account_backend/journals-screen.js.map +1 -0
  63. package/dist/modules/account_backend/move-detail-screen.d.ts +10 -0
  64. package/dist/modules/account_backend/move-detail-screen.d.ts.map +1 -0
  65. package/dist/modules/account_backend/move-detail-screen.js +100 -0
  66. package/dist/modules/account_backend/move-detail-screen.js.map +1 -0
  67. package/dist/modules/account_backend/partner-ledger-screen.d.ts +14 -0
  68. package/dist/modules/account_backend/partner-ledger-screen.d.ts.map +1 -0
  69. package/dist/modules/account_backend/partner-ledger-screen.js +69 -0
  70. package/dist/modules/account_backend/partner-ledger-screen.js.map +1 -0
  71. package/dist/modules/account_backend/payment-terms-screen.d.ts +14 -0
  72. package/dist/modules/account_backend/payment-terms-screen.d.ts.map +1 -0
  73. package/dist/modules/account_backend/payment-terms-screen.js +40 -0
  74. package/dist/modules/account_backend/payment-terms-screen.js.map +1 -0
  75. package/dist/modules/account_backend/payments-screen.d.ts +14 -0
  76. package/dist/modules/account_backend/payments-screen.d.ts.map +1 -0
  77. package/dist/modules/account_backend/payments-screen.js +54 -0
  78. package/dist/modules/account_backend/payments-screen.js.map +1 -0
  79. package/dist/modules/account_backend/screens.d.ts +7 -0
  80. package/dist/modules/account_backend/screens.d.ts.map +1 -0
  81. package/dist/modules/account_backend/screens.js +7 -0
  82. package/dist/modules/account_backend/screens.js.map +1 -0
  83. package/dist/modules/account_backend/taxes-screen.d.ts +15 -0
  84. package/dist/modules/account_backend/taxes-screen.d.ts.map +1 -0
  85. package/dist/modules/account_backend/taxes-screen.js +73 -0
  86. package/dist/modules/account_backend/taxes-screen.js.map +1 -0
  87. package/dist/modules/account_backend/trial-balance-screen.d.ts +13 -0
  88. package/dist/modules/account_backend/trial-balance-screen.d.ts.map +1 -0
  89. package/dist/modules/account_backend/trial-balance-screen.js +62 -0
  90. package/dist/modules/account_backend/trial-balance-screen.js.map +1 -0
  91. package/dist/modules/account_backend/vendor-bills-screen.d.ts +14 -0
  92. package/dist/modules/account_backend/vendor-bills-screen.d.ts.map +1 -0
  93. package/dist/modules/account_backend/vendor-bills-screen.js +59 -0
  94. package/dist/modules/account_backend/vendor-bills-screen.js.map +1 -0
  95. package/dist/modules/account_mail_backend/index.d.ts +5 -0
  96. package/dist/modules/account_mail_backend/index.d.ts.map +1 -0
  97. package/dist/modules/account_mail_backend/index.js +28 -0
  98. package/dist/modules/account_mail_backend/index.js.map +1 -0
  99. package/dist/modules/account_partner/functions.d.ts +3 -0
  100. package/dist/modules/account_partner/functions.d.ts.map +1 -0
  101. package/dist/modules/account_partner/functions.js +85 -0
  102. package/dist/modules/account_partner/functions.js.map +1 -0
  103. package/dist/modules/account_partner/index.d.ts +3 -0
  104. package/dist/modules/account_partner/index.d.ts.map +1 -0
  105. package/dist/modules/account_partner/index.js +48 -0
  106. package/dist/modules/account_partner/index.js.map +1 -0
  107. package/dist/modules/account_partner_backend/index.d.ts +4 -0
  108. package/dist/modules/account_partner_backend/index.d.ts.map +1 -0
  109. package/dist/modules/account_partner_backend/index.js +49 -0
  110. package/dist/modules/account_partner_backend/index.js.map +1 -0
  111. package/dist/modules/account_partner_backend/routes.d.ts +3 -0
  112. package/dist/modules/account_partner_backend/routes.d.ts.map +1 -0
  113. package/dist/modules/account_partner_backend/routes.js +69 -0
  114. package/dist/modules/account_partner_backend/routes.js.map +1 -0
  115. package/dist/modules/account_partner_backend/screens.d.ts +16 -0
  116. package/dist/modules/account_partner_backend/screens.d.ts.map +1 -0
  117. package/dist/modules/account_partner_backend/screens.js +26 -0
  118. package/dist/modules/account_partner_backend/screens.js.map +1 -0
  119. package/dist/modules/activity/functions.d.ts +3 -0
  120. package/dist/modules/activity/functions.d.ts.map +1 -0
  121. package/dist/modules/activity/functions.js +250 -0
  122. package/dist/modules/activity/functions.js.map +1 -0
  123. package/dist/modules/activity/index.d.ts +9 -0
  124. package/dist/modules/activity/index.d.ts.map +1 -0
  125. package/dist/modules/activity/index.js +33 -0
  126. package/dist/modules/activity/index.js.map +1 -0
  127. package/dist/modules/activity/models.d.ts +3 -0
  128. package/dist/modules/activity/models.d.ts.map +1 -0
  129. package/dist/modules/activity/models.js +81 -0
  130. package/dist/modules/activity/models.js.map +1 -0
  131. package/dist/modules/activity/operations.d.ts +39 -0
  132. package/dist/modules/activity/operations.d.ts.map +1 -0
  133. package/dist/modules/activity/operations.js +226 -0
  134. package/dist/modules/activity/operations.js.map +1 -0
  135. package/dist/modules/activity/relations.d.ts +3 -0
  136. package/dist/modules/activity/relations.d.ts.map +1 -0
  137. package/dist/modules/activity/relations.js +24 -0
  138. package/dist/modules/activity/relations.js.map +1 -0
  139. package/dist/modules/activity/target.d.ts +4 -0
  140. package/dist/modules/activity/target.d.ts.map +1 -0
  141. package/dist/modules/activity/target.js +149 -0
  142. package/dist/modules/activity/target.js.map +1 -0
  143. package/dist/modules/activity/types.d.ts +9 -0
  144. package/dist/modules/activity/types.d.ts.map +1 -0
  145. package/dist/modules/activity/types.js +5 -0
  146. package/dist/modules/activity/types.js.map +1 -0
  147. package/dist/modules/activity_backend/index.d.ts +5 -0
  148. package/dist/modules/activity_backend/index.d.ts.map +1 -0
  149. package/dist/modules/activity_backend/index.js +80 -0
  150. package/dist/modules/activity_backend/index.js.map +1 -0
  151. package/dist/modules/activity_backend/islands.d.ts +3 -0
  152. package/dist/modules/activity_backend/islands.d.ts.map +1 -0
  153. package/dist/modules/activity_backend/islands.js +20 -0
  154. package/dist/modules/activity_backend/islands.js.map +1 -0
  155. package/dist/modules/activity_backend/routes.d.ts +5 -0
  156. package/dist/modules/activity_backend/routes.d.ts.map +1 -0
  157. package/dist/modules/activity_backend/routes.js +53 -0
  158. package/dist/modules/activity_backend/routes.js.map +1 -0
  159. package/dist/modules/activity_backend/screens.d.ts +5 -0
  160. package/dist/modules/activity_backend/screens.d.ts.map +1 -0
  161. package/dist/modules/activity_backend/screens.js +52 -0
  162. package/dist/modules/activity_backend/screens.js.map +1 -0
  163. package/dist/modules/address/data/VN/NOTICE.md +15 -0
  164. package/dist/modules/address/data/VN/catalogs/2025-07-01/divisions/0001.json +8002 -0
  165. package/dist/modules/address/data/VN/catalogs/2025-07-01/divisions/0002.json +8002 -0
  166. package/dist/modules/address/data/VN/catalogs/2025-07-01/divisions/0003.json +8002 -0
  167. package/dist/modules/address/data/VN/catalogs/2025-07-01/divisions/0004.json +2842 -0
  168. package/dist/modules/address/data/VN/catalogs/2025-07-01/manifest.json +77 -0
  169. package/dist/modules/address/data/VN/catalogs/2025-07-01/policy.json +49 -0
  170. package/dist/modules/address/data/countries.json +11 -0
  171. package/dist/modules/address/data/index.json +14 -0
  172. package/dist/modules/address/format.d.ts +37 -0
  173. package/dist/modules/address/format.d.ts.map +1 -0
  174. package/dist/modules/address/format.js +146 -0
  175. package/dist/modules/address/format.js.map +1 -0
  176. package/dist/modules/address/functions.d.ts +3 -0
  177. package/dist/modules/address/functions.d.ts.map +1 -0
  178. package/dist/modules/address/functions.js +320 -0
  179. package/dist/modules/address/functions.js.map +1 -0
  180. package/dist/modules/address/index.d.ts +6 -0
  181. package/dist/modules/address/index.d.ts.map +1 -0
  182. package/dist/modules/address/index.js +20 -0
  183. package/dist/modules/address/index.js.map +1 -0
  184. package/dist/modules/address/loader.d.ts +74 -0
  185. package/dist/modules/address/loader.d.ts.map +1 -0
  186. package/dist/modules/address/loader.js +144 -0
  187. package/dist/modules/address/loader.js.map +1 -0
  188. package/dist/modules/address/messages.d.ts +51 -0
  189. package/dist/modules/address/messages.d.ts.map +1 -0
  190. package/dist/modules/address/messages.js +51 -0
  191. package/dist/modules/address/messages.js.map +1 -0
  192. package/dist/modules/address/models.d.ts +8 -0
  193. package/dist/modules/address/models.d.ts.map +1 -0
  194. package/dist/modules/address/models.js +98 -0
  195. package/dist/modules/address/models.js.map +1 -0
  196. package/dist/modules/address/relations.d.ts +3 -0
  197. package/dist/modules/address/relations.d.ts.map +1 -0
  198. package/dist/modules/address/relations.js +22 -0
  199. package/dist/modules/address/relations.js.map +1 -0
  200. package/dist/modules/address_backend/index.d.ts +4 -0
  201. package/dist/modules/address_backend/index.d.ts.map +1 -0
  202. package/dist/modules/address_backend/index.js +90 -0
  203. package/dist/modules/address_backend/index.js.map +1 -0
  204. package/dist/modules/address_backend/routes.d.ts +3 -0
  205. package/dist/modules/address_backend/routes.d.ts.map +1 -0
  206. package/dist/modules/address_backend/routes.js +87 -0
  207. package/dist/modules/address_backend/routes.js.map +1 -0
  208. package/dist/modules/address_backend/screens.d.ts +31 -0
  209. package/dist/modules/address_backend/screens.d.ts.map +1 -0
  210. package/dist/modules/address_backend/screens.js +147 -0
  211. package/dist/modules/address_backend/screens.js.map +1 -0
  212. package/dist/modules/attendance/functions.d.ts +3 -0
  213. package/dist/modules/attendance/functions.d.ts.map +1 -0
  214. package/dist/modules/attendance/functions.js +750 -0
  215. package/dist/modules/attendance/functions.js.map +1 -0
  216. package/dist/modules/attendance/index.d.ts +5 -0
  217. package/dist/modules/attendance/index.d.ts.map +1 -0
  218. package/dist/modules/attendance/index.js +20 -0
  219. package/dist/modules/attendance/index.js.map +1 -0
  220. package/dist/modules/attendance/messages.d.ts +41 -0
  221. package/dist/modules/attendance/messages.d.ts.map +1 -0
  222. package/dist/modules/attendance/messages.js +41 -0
  223. package/dist/modules/attendance/messages.js.map +1 -0
  224. package/dist/modules/attendance/models.d.ts +3 -0
  225. package/dist/modules/attendance/models.d.ts.map +1 -0
  226. package/dist/modules/attendance/models.js +158 -0
  227. package/dist/modules/attendance/models.js.map +1 -0
  228. package/dist/modules/attendance/relations.d.ts +3 -0
  229. package/dist/modules/attendance/relations.d.ts.map +1 -0
  230. package/dist/modules/attendance/relations.js +12 -0
  231. package/dist/modules/attendance/relations.js.map +1 -0
  232. package/dist/modules/attendance/types.d.ts +9 -0
  233. package/dist/modules/attendance/types.d.ts.map +1 -0
  234. package/dist/modules/attendance/types.js +5 -0
  235. package/dist/modules/attendance/types.js.map +1 -0
  236. package/dist/modules/attendance_backend/index.d.ts +4 -0
  237. package/dist/modules/attendance_backend/index.d.ts.map +1 -0
  238. package/dist/modules/attendance_backend/index.js +182 -0
  239. package/dist/modules/attendance_backend/index.js.map +1 -0
  240. package/dist/modules/attendance_backend/qr.d.ts +2 -0
  241. package/dist/modules/attendance_backend/qr.d.ts.map +1 -0
  242. package/dist/modules/attendance_backend/qr.js +120 -0
  243. package/dist/modules/attendance_backend/qr.js.map +1 -0
  244. package/dist/modules/attendance_backend/routes.d.ts +3 -0
  245. package/dist/modules/attendance_backend/routes.d.ts.map +1 -0
  246. package/dist/modules/attendance_backend/routes.js +131 -0
  247. package/dist/modules/attendance_backend/routes.js.map +1 -0
  248. package/dist/modules/attendance_backend/screens.d.ts +10 -0
  249. package/dist/modules/attendance_backend/screens.d.ts.map +1 -0
  250. package/dist/modules/attendance_backend/screens.js +227 -0
  251. package/dist/modules/attendance_backend/screens.js.map +1 -0
  252. package/dist/modules/backend/catalogue.d.ts +10 -0
  253. package/dist/modules/backend/catalogue.d.ts.map +1 -0
  254. package/dist/modules/backend/catalogue.js +615 -0
  255. package/dist/modules/backend/catalogue.js.map +1 -0
  256. package/dist/modules/backend/design/HANDOFF.md +356 -0
  257. package/dist/modules/backend/design/admin.css +4229 -0
  258. package/dist/modules/backend/design/client/relation-select-view.d.mts +5 -0
  259. package/dist/modules/backend/design/client/relation-select-view.d.mts.map +1 -0
  260. package/dist/modules/backend/design/client/relation-select-view.mjs +335 -0
  261. package/dist/modules/backend/design/client/relation-select-view.mjs.map +1 -0
  262. package/dist/modules/backend/design/client/relation-select.d.mts +5 -0
  263. package/dist/modules/backend/design/client/relation-select.d.mts.map +1 -0
  264. package/dist/modules/backend/design/client/relation-select.mjs +7 -0
  265. package/dist/modules/backend/design/client/relation-select.mjs.map +1 -0
  266. package/dist/modules/backend/design/fixtures/product-back.svg +11 -0
  267. package/dist/modules/backend/design/fixtures/product-front.svg +9 -0
  268. package/dist/modules/backend/design/screenshots/apps-desktop-dark.png +0 -0
  269. package/dist/modules/backend/design/screenshots/list-mobile-dark.png +0 -0
  270. package/dist/modules/backend/design/screenshots/product-list-favorites-desktop-en.png +0 -0
  271. package/dist/modules/backend/design/screenshots/product-list-filter-desktop-en.png +0 -0
  272. package/dist/modules/backend/design/screenshots/product-list-filter-mobile-en.png +0 -0
  273. package/dist/modules/backend/design/screenshots/product-list-grouped-desktop.png +0 -0
  274. package/dist/modules/backend/design/screenshots/product-list-grouped-mobile.png +0 -0
  275. package/dist/modules/backend/design/tokens.css +132 -0
  276. package/dist/modules/backend/forms.d.ts +7 -0
  277. package/dist/modules/backend/forms.d.ts.map +1 -0
  278. package/dist/modules/backend/forms.js +25 -0
  279. package/dist/modules/backend/forms.js.map +1 -0
  280. package/dist/modules/backend/index.d.ts +24 -0
  281. package/dist/modules/backend/index.d.ts.map +1 -0
  282. package/dist/modules/backend/index.js +61 -0
  283. package/dist/modules/backend/index.js.map +1 -0
  284. package/dist/modules/backend/islands.d.ts +3 -0
  285. package/dist/modules/backend/islands.d.ts.map +1 -0
  286. package/dist/modules/backend/islands.js +13 -0
  287. package/dist/modules/backend/islands.js.map +1 -0
  288. package/dist/modules/backend/joints.d.ts +13 -0
  289. package/dist/modules/backend/joints.d.ts.map +1 -0
  290. package/dist/modules/backend/joints.js +33 -0
  291. package/dist/modules/backend/joints.js.map +1 -0
  292. package/dist/modules/backend/menus.d.ts +3 -0
  293. package/dist/modules/backend/menus.d.ts.map +1 -0
  294. package/dist/modules/backend/menus.js +25 -0
  295. package/dist/modules/backend/menus.js.map +1 -0
  296. package/dist/modules/backend/messages.d.ts +11 -0
  297. package/dist/modules/backend/messages.d.ts.map +1 -0
  298. package/dist/modules/backend/messages.js +161 -0
  299. package/dist/modules/backend/messages.js.map +1 -0
  300. package/dist/modules/backend/paging.d.ts +22 -0
  301. package/dist/modules/backend/paging.d.ts.map +1 -0
  302. package/dist/modules/backend/paging.js +56 -0
  303. package/dist/modules/backend/paging.js.map +1 -0
  304. package/dist/modules/backend/relation-select.d.ts +63 -0
  305. package/dist/modules/backend/relation-select.d.ts.map +1 -0
  306. package/dist/modules/backend/relation-select.js +20 -0
  307. package/dist/modules/backend/relation-select.js.map +1 -0
  308. package/dist/modules/backend/routes.d.ts +10 -0
  309. package/dist/modules/backend/routes.d.ts.map +1 -0
  310. package/dist/modules/backend/routes.js +123 -0
  311. package/dist/modules/backend/routes.js.map +1 -0
  312. package/dist/modules/backend/saved-searches.d.ts +4 -0
  313. package/dist/modules/backend/saved-searches.d.ts.map +1 -0
  314. package/dist/modules/backend/saved-searches.js +138 -0
  315. package/dist/modules/backend/saved-searches.js.map +1 -0
  316. package/dist/modules/backend/screens.d.ts +37 -0
  317. package/dist/modules/backend/screens.d.ts.map +1 -0
  318. package/dist/modules/backend/screens.js +107 -0
  319. package/dist/modules/backend/screens.js.map +1 -0
  320. package/dist/modules/calendar/functions.d.ts +3 -0
  321. package/dist/modules/calendar/functions.d.ts.map +1 -0
  322. package/dist/modules/calendar/functions.js +259 -0
  323. package/dist/modules/calendar/functions.js.map +1 -0
  324. package/dist/modules/calendar/index.d.ts +9 -0
  325. package/dist/modules/calendar/index.d.ts.map +1 -0
  326. package/dist/modules/calendar/index.js +36 -0
  327. package/dist/modules/calendar/index.js.map +1 -0
  328. package/dist/modules/calendar/jobs.d.ts +3 -0
  329. package/dist/modules/calendar/jobs.d.ts.map +1 -0
  330. package/dist/modules/calendar/jobs.js +57 -0
  331. package/dist/modules/calendar/jobs.js.map +1 -0
  332. package/dist/modules/calendar/models.d.ts +3 -0
  333. package/dist/modules/calendar/models.d.ts.map +1 -0
  334. package/dist/modules/calendar/models.js +90 -0
  335. package/dist/modules/calendar/models.js.map +1 -0
  336. package/dist/modules/calendar/operations.d.ts +45 -0
  337. package/dist/modules/calendar/operations.d.ts.map +1 -0
  338. package/dist/modules/calendar/operations.js +280 -0
  339. package/dist/modules/calendar/operations.js.map +1 -0
  340. package/dist/modules/calendar/recurrence.d.ts +28 -0
  341. package/dist/modules/calendar/recurrence.d.ts.map +1 -0
  342. package/dist/modules/calendar/recurrence.js +175 -0
  343. package/dist/modules/calendar/recurrence.js.map +1 -0
  344. package/dist/modules/calendar/relations.d.ts +3 -0
  345. package/dist/modules/calendar/relations.d.ts.map +1 -0
  346. package/dist/modules/calendar/relations.js +22 -0
  347. package/dist/modules/calendar/relations.js.map +1 -0
  348. package/dist/modules/calendar/types.d.ts +10 -0
  349. package/dist/modules/calendar/types.d.ts.map +1 -0
  350. package/dist/modules/calendar/types.js +6 -0
  351. package/dist/modules/calendar/types.js.map +1 -0
  352. package/dist/modules/calendar_activity/index.d.ts +6 -0
  353. package/dist/modules/calendar_activity/index.d.ts.map +1 -0
  354. package/dist/modules/calendar_activity/index.js +250 -0
  355. package/dist/modules/calendar_activity/index.js.map +1 -0
  356. package/dist/modules/calendar_backend/index.d.ts +5 -0
  357. package/dist/modules/calendar_backend/index.d.ts.map +1 -0
  358. package/dist/modules/calendar_backend/index.js +47 -0
  359. package/dist/modules/calendar_backend/index.js.map +1 -0
  360. package/dist/modules/calendar_backend/islands.d.ts +3 -0
  361. package/dist/modules/calendar_backend/islands.d.ts.map +1 -0
  362. package/dist/modules/calendar_backend/islands.js +12 -0
  363. package/dist/modules/calendar_backend/islands.js.map +1 -0
  364. package/dist/modules/calendar_backend/routes.d.ts +3 -0
  365. package/dist/modules/calendar_backend/routes.d.ts.map +1 -0
  366. package/dist/modules/calendar_backend/routes.js +43 -0
  367. package/dist/modules/calendar_backend/routes.js.map +1 -0
  368. package/dist/modules/calendar_backend/screens.d.ts +5 -0
  369. package/dist/modules/calendar_backend/screens.d.ts.map +1 -0
  370. package/dist/modules/calendar_backend/screens.js +4 -0
  371. package/dist/modules/calendar_backend/screens.js.map +1 -0
  372. package/dist/modules/calendar_mail_transport/index.d.ts +6 -0
  373. package/dist/modules/calendar_mail_transport/index.d.ts.map +1 -0
  374. package/dist/modules/calendar_mail_transport/index.js +138 -0
  375. package/dist/modules/calendar_mail_transport/index.js.map +1 -0
  376. package/dist/modules/catalog/index.d.ts +3 -0
  377. package/dist/modules/catalog/index.d.ts.map +1 -0
  378. package/dist/modules/catalog/index.js +68 -0
  379. package/dist/modules/catalog/index.js.map +1 -0
  380. package/dist/modules/checkout/index.d.ts +3 -0
  381. package/dist/modules/checkout/index.d.ts.map +1 -0
  382. package/dist/modules/checkout/index.js +50 -0
  383. package/dist/modules/checkout/index.js.map +1 -0
  384. package/dist/modules/company/functions.d.ts +3 -0
  385. package/dist/modules/company/functions.d.ts.map +1 -0
  386. package/dist/modules/company/functions.js +337 -0
  387. package/dist/modules/company/functions.js.map +1 -0
  388. package/dist/modules/company/index.d.ts +3 -0
  389. package/dist/modules/company/index.d.ts.map +1 -0
  390. package/dist/modules/company/index.js +23 -0
  391. package/dist/modules/company/index.js.map +1 -0
  392. package/dist/modules/company/messages.d.ts +63 -0
  393. package/dist/modules/company/messages.d.ts.map +1 -0
  394. package/dist/modules/company/messages.js +63 -0
  395. package/dist/modules/company/messages.js.map +1 -0
  396. package/dist/modules/company/models.d.ts +19 -0
  397. package/dist/modules/company/models.d.ts.map +1 -0
  398. package/dist/modules/company/models.js +61 -0
  399. package/dist/modules/company/models.js.map +1 -0
  400. package/dist/modules/company/relations.d.ts +3 -0
  401. package/dist/modules/company/relations.d.ts.map +1 -0
  402. package/dist/modules/company/relations.js +14 -0
  403. package/dist/modules/company/relations.js.map +1 -0
  404. package/dist/modules/company_backend/index.d.ts +5 -0
  405. package/dist/modules/company_backend/index.d.ts.map +1 -0
  406. package/dist/modules/company_backend/index.js +136 -0
  407. package/dist/modules/company_backend/index.js.map +1 -0
  408. package/dist/modules/company_backend/menus.d.ts +3 -0
  409. package/dist/modules/company_backend/menus.d.ts.map +1 -0
  410. package/dist/modules/company_backend/menus.js +17 -0
  411. package/dist/modules/company_backend/menus.js.map +1 -0
  412. package/dist/modules/company_backend/routes.d.ts +3 -0
  413. package/dist/modules/company_backend/routes.d.ts.map +1 -0
  414. package/dist/modules/company_backend/routes.js +269 -0
  415. package/dist/modules/company_backend/routes.js.map +1 -0
  416. package/dist/modules/company_backend/screens.d.ts +62 -0
  417. package/dist/modules/company_backend/screens.d.ts.map +1 -0
  418. package/dist/modules/company_backend/screens.js +268 -0
  419. package/dist/modules/company_backend/screens.js.map +1 -0
  420. package/dist/modules/crm/functions.d.ts +5 -0
  421. package/dist/modules/crm/functions.d.ts.map +1 -0
  422. package/dist/modules/crm/functions.js +840 -0
  423. package/dist/modules/crm/functions.js.map +1 -0
  424. package/dist/modules/crm/index.d.ts +6 -0
  425. package/dist/modules/crm/index.d.ts.map +1 -0
  426. package/dist/modules/crm/index.js +22 -0
  427. package/dist/modules/crm/index.js.map +1 -0
  428. package/dist/modules/crm/jobs.d.ts +4 -0
  429. package/dist/modules/crm/jobs.d.ts.map +1 -0
  430. package/dist/modules/crm/jobs.js +3 -0
  431. package/dist/modules/crm/jobs.js.map +1 -0
  432. package/dist/modules/crm/messages.d.ts +37 -0
  433. package/dist/modules/crm/messages.d.ts.map +1 -0
  434. package/dist/modules/crm/messages.js +68 -0
  435. package/dist/modules/crm/messages.js.map +1 -0
  436. package/dist/modules/crm/models.d.ts +3 -0
  437. package/dist/modules/crm/models.d.ts.map +1 -0
  438. package/dist/modules/crm/models.js +215 -0
  439. package/dist/modules/crm/models.js.map +1 -0
  440. package/dist/modules/crm/operations.d.ts +121 -0
  441. package/dist/modules/crm/operations.d.ts.map +1 -0
  442. package/dist/modules/crm/operations.js +744 -0
  443. package/dist/modules/crm/operations.js.map +1 -0
  444. package/dist/modules/crm/search.d.ts +67 -0
  445. package/dist/modules/crm/search.d.ts.map +1 -0
  446. package/dist/modules/crm/search.js +89 -0
  447. package/dist/modules/crm/search.js.map +1 -0
  448. package/dist/modules/crm/types.d.ts +10 -0
  449. package/dist/modules/crm/types.d.ts.map +1 -0
  450. package/dist/modules/crm/types.js +6 -0
  451. package/dist/modules/crm/types.js.map +1 -0
  452. package/dist/modules/crm_backend/client/crm-kanban-view.d.mts +8 -0
  453. package/dist/modules/crm_backend/client/crm-kanban-view.d.mts.map +1 -0
  454. package/dist/modules/crm_backend/client/crm-kanban-view.mjs +129 -0
  455. package/dist/modules/crm_backend/client/crm-kanban-view.mjs.map +1 -0
  456. package/dist/modules/crm_backend/client/crm-kanban.d.mts +3 -0
  457. package/dist/modules/crm_backend/client/crm-kanban.d.mts.map +1 -0
  458. package/dist/modules/crm_backend/client/crm-kanban.mjs +7 -0
  459. package/dist/modules/crm_backend/client/crm-kanban.mjs.map +1 -0
  460. package/dist/modules/crm_backend/client/crm.css +69 -0
  461. package/dist/modules/crm_backend/index.d.ts +4 -0
  462. package/dist/modules/crm_backend/index.d.ts.map +1 -0
  463. package/dist/modules/crm_backend/index.js +54 -0
  464. package/dist/modules/crm_backend/index.js.map +1 -0
  465. package/dist/modules/crm_backend/islands.d.ts +9 -0
  466. package/dist/modules/crm_backend/islands.d.ts.map +1 -0
  467. package/dist/modules/crm_backend/islands.js +13 -0
  468. package/dist/modules/crm_backend/islands.js.map +1 -0
  469. package/dist/modules/crm_backend/list-search.d.ts +21 -0
  470. package/dist/modules/crm_backend/list-search.d.ts.map +1 -0
  471. package/dist/modules/crm_backend/list-search.js +220 -0
  472. package/dist/modules/crm_backend/list-search.js.map +1 -0
  473. package/dist/modules/crm_backend/messages.d.ts +183 -0
  474. package/dist/modules/crm_backend/messages.d.ts.map +1 -0
  475. package/dist/modules/crm_backend/messages.js +182 -0
  476. package/dist/modules/crm_backend/messages.js.map +1 -0
  477. package/dist/modules/crm_backend/routes.d.ts +3 -0
  478. package/dist/modules/crm_backend/routes.d.ts.map +1 -0
  479. package/dist/modules/crm_backend/routes.js +520 -0
  480. package/dist/modules/crm_backend/routes.js.map +1 -0
  481. package/dist/modules/crm_backend/screens.d.ts +32 -0
  482. package/dist/modules/crm_backend/screens.d.ts.map +1 -0
  483. package/dist/modules/crm_backend/screens.js +405 -0
  484. package/dist/modules/crm_backend/screens.js.map +1 -0
  485. package/dist/modules/crm_sale/index.d.ts +4 -0
  486. package/dist/modules/crm_sale/index.d.ts.map +1 -0
  487. package/dist/modules/crm_sale/index.js +18 -0
  488. package/dist/modules/crm_sale/index.js.map +1 -0
  489. package/dist/modules/crm_sale/messages.d.ts +10 -0
  490. package/dist/modules/crm_sale/messages.d.ts.map +1 -0
  491. package/dist/modules/crm_sale/messages.js +14 -0
  492. package/dist/modules/crm_sale/messages.js.map +1 -0
  493. package/dist/modules/crm_sale/models.d.ts +3 -0
  494. package/dist/modules/crm_sale/models.d.ts.map +1 -0
  495. package/dist/modules/crm_sale/models.js +16 -0
  496. package/dist/modules/crm_sale/models.js.map +1 -0
  497. package/dist/modules/crm_sale/sale-functions.d.ts +15 -0
  498. package/dist/modules/crm_sale/sale-functions.d.ts.map +1 -0
  499. package/dist/modules/crm_sale/sale-functions.js +139 -0
  500. package/dist/modules/crm_sale/sale-functions.js.map +1 -0
  501. package/dist/modules/crm_website/functions.d.ts +3 -0
  502. package/dist/modules/crm_website/functions.d.ts.map +1 -0
  503. package/dist/modules/crm_website/functions.js +65 -0
  504. package/dist/modules/crm_website/functions.js.map +1 -0
  505. package/dist/modules/crm_website/index.d.ts +3 -0
  506. package/dist/modules/crm_website/index.d.ts.map +1 -0
  507. package/dist/modules/crm_website/index.js +19 -0
  508. package/dist/modules/crm_website/index.js.map +1 -0
  509. package/dist/modules/crm_website/messages.d.ts +20 -0
  510. package/dist/modules/crm_website/messages.d.ts.map +1 -0
  511. package/dist/modules/crm_website/messages.js +34 -0
  512. package/dist/modules/crm_website/messages.js.map +1 -0
  513. package/dist/modules/crm_website/models.d.ts +3 -0
  514. package/dist/modules/crm_website/models.d.ts.map +1 -0
  515. package/dist/modules/crm_website/models.js +15 -0
  516. package/dist/modules/crm_website/models.js.map +1 -0
  517. package/dist/modules/crm_website/routes.d.ts +3 -0
  518. package/dist/modules/crm_website/routes.d.ts.map +1 -0
  519. package/dist/modules/crm_website/routes.js +71 -0
  520. package/dist/modules/crm_website/routes.js.map +1 -0
  521. package/dist/modules/crm_website/screens.d.ts +5 -0
  522. package/dist/modules/crm_website/screens.d.ts.map +1 -0
  523. package/dist/modules/crm_website/screens.js +15 -0
  524. package/dist/modules/crm_website/screens.js.map +1 -0
  525. package/dist/modules/hospitality_core/calendar.d.ts +9 -0
  526. package/dist/modules/hospitality_core/calendar.d.ts.map +1 -0
  527. package/dist/modules/hospitality_core/calendar.js +41 -0
  528. package/dist/modules/hospitality_core/calendar.js.map +1 -0
  529. package/dist/modules/hospitality_core/content.d.ts +13 -0
  530. package/dist/modules/hospitality_core/content.d.ts.map +1 -0
  531. package/dist/modules/hospitality_core/content.js +345 -0
  532. package/dist/modules/hospitality_core/content.js.map +1 -0
  533. package/dist/modules/hospitality_core/functions.d.ts +3 -0
  534. package/dist/modules/hospitality_core/functions.d.ts.map +1 -0
  535. package/dist/modules/hospitality_core/functions.js +1558 -0
  536. package/dist/modules/hospitality_core/functions.js.map +1 -0
  537. package/dist/modules/hospitality_core/housekeeping.d.ts +3 -0
  538. package/dist/modules/hospitality_core/housekeeping.d.ts.map +1 -0
  539. package/dist/modules/hospitality_core/housekeeping.js +352 -0
  540. package/dist/modules/hospitality_core/housekeeping.js.map +1 -0
  541. package/dist/modules/hospitality_core/index.d.ts +5 -0
  542. package/dist/modules/hospitality_core/index.d.ts.map +1 -0
  543. package/dist/modules/hospitality_core/index.js +41 -0
  544. package/dist/modules/hospitality_core/index.js.map +1 -0
  545. package/dist/modules/hospitality_core/inventory.d.ts +40 -0
  546. package/dist/modules/hospitality_core/inventory.d.ts.map +1 -0
  547. package/dist/modules/hospitality_core/inventory.js +627 -0
  548. package/dist/modules/hospitality_core/inventory.js.map +1 -0
  549. package/dist/modules/hospitality_core/menus.d.ts +3 -0
  550. package/dist/modules/hospitality_core/menus.d.ts.map +1 -0
  551. package/dist/modules/hospitality_core/menus.js +134 -0
  552. package/dist/modules/hospitality_core/menus.js.map +1 -0
  553. package/dist/modules/hospitality_core/messages.d.ts +3 -0
  554. package/dist/modules/hospitality_core/messages.d.ts.map +1 -0
  555. package/dist/modules/hospitality_core/messages.js +2011 -0
  556. package/dist/modules/hospitality_core/messages.js.map +1 -0
  557. package/dist/modules/hospitality_core/models.d.ts +10 -0
  558. package/dist/modules/hospitality_core/models.d.ts.map +1 -0
  559. package/dist/modules/hospitality_core/models.js +657 -0
  560. package/dist/modules/hospitality_core/models.js.map +1 -0
  561. package/dist/modules/hospitality_core/night-audit.d.ts +26 -0
  562. package/dist/modules/hospitality_core/night-audit.d.ts.map +1 -0
  563. package/dist/modules/hospitality_core/night-audit.js +381 -0
  564. package/dist/modules/hospitality_core/night-audit.js.map +1 -0
  565. package/dist/modules/hospitality_core/operations.d.ts +3 -0
  566. package/dist/modules/hospitality_core/operations.d.ts.map +1 -0
  567. package/dist/modules/hospitality_core/operations.js +1562 -0
  568. package/dist/modules/hospitality_core/operations.js.map +1 -0
  569. package/dist/modules/hospitality_core/relations.d.ts +3 -0
  570. package/dist/modules/hospitality_core/relations.d.ts.map +1 -0
  571. package/dist/modules/hospitality_core/relations.js +175 -0
  572. package/dist/modules/hospitality_core/relations.js.map +1 -0
  573. package/dist/modules/hospitality_core/routes.d.ts +3 -0
  574. package/dist/modules/hospitality_core/routes.d.ts.map +1 -0
  575. package/dist/modules/hospitality_core/routes.js +1556 -0
  576. package/dist/modules/hospitality_core/routes.js.map +1 -0
  577. package/dist/modules/hospitality_core/screens.d.ts +763 -0
  578. package/dist/modules/hospitality_core/screens.d.ts.map +1 -0
  579. package/dist/modules/hospitality_core/screens.js +4138 -0
  580. package/dist/modules/hospitality_core/screens.js.map +1 -0
  581. package/dist/modules/hospitality_core/services.d.ts +9 -0
  582. package/dist/modules/hospitality_core/services.d.ts.map +1 -0
  583. package/dist/modules/hospitality_core/services.js +586 -0
  584. package/dist/modules/hospitality_core/services.js.map +1 -0
  585. package/dist/modules/hospitality_core/stay-notices.d.ts +11 -0
  586. package/dist/modules/hospitality_core/stay-notices.d.ts.map +1 -0
  587. package/dist/modules/hospitality_core/stay-notices.js +338 -0
  588. package/dist/modules/hospitality_core/stay-notices.js.map +1 -0
  589. package/dist/modules/hospitality_core/types.d.ts +61 -0
  590. package/dist/modules/hospitality_core/types.d.ts.map +1 -0
  591. package/dist/modules/hospitality_core/types.js +65 -0
  592. package/dist/modules/hospitality_core/types.js.map +1 -0
  593. package/dist/modules/hr/functions.d.ts +3 -0
  594. package/dist/modules/hr/functions.d.ts.map +1 -0
  595. package/dist/modules/hr/functions.js +711 -0
  596. package/dist/modules/hr/functions.js.map +1 -0
  597. package/dist/modules/hr/index.d.ts +5 -0
  598. package/dist/modules/hr/index.d.ts.map +1 -0
  599. package/dist/modules/hr/index.js +20 -0
  600. package/dist/modules/hr/index.js.map +1 -0
  601. package/dist/modules/hr/messages.d.ts +45 -0
  602. package/dist/modules/hr/messages.d.ts.map +1 -0
  603. package/dist/modules/hr/messages.js +45 -0
  604. package/dist/modules/hr/messages.js.map +1 -0
  605. package/dist/modules/hr/models.d.ts +3 -0
  606. package/dist/modules/hr/models.d.ts.map +1 -0
  607. package/dist/modules/hr/models.js +166 -0
  608. package/dist/modules/hr/models.js.map +1 -0
  609. package/dist/modules/hr/relations.d.ts +3 -0
  610. package/dist/modules/hr/relations.d.ts.map +1 -0
  611. package/dist/modules/hr/relations.js +19 -0
  612. package/dist/modules/hr/relations.js.map +1 -0
  613. package/dist/modules/hr/types.d.ts +9 -0
  614. package/dist/modules/hr/types.d.ts.map +1 -0
  615. package/dist/modules/hr/types.js +5 -0
  616. package/dist/modules/hr/types.js.map +1 -0
  617. package/dist/modules/hr_backend/index.d.ts +4 -0
  618. package/dist/modules/hr_backend/index.d.ts.map +1 -0
  619. package/dist/modules/hr_backend/index.js +142 -0
  620. package/dist/modules/hr_backend/index.js.map +1 -0
  621. package/dist/modules/hr_backend/routes.d.ts +3 -0
  622. package/dist/modules/hr_backend/routes.d.ts.map +1 -0
  623. package/dist/modules/hr_backend/routes.js +83 -0
  624. package/dist/modules/hr_backend/routes.js.map +1 -0
  625. package/dist/modules/hr_backend/screens.d.ts +9 -0
  626. package/dist/modules/hr_backend/screens.d.ts.map +1 -0
  627. package/dist/modules/hr_backend/screens.js +144 -0
  628. package/dist/modules/hr_backend/screens.js.map +1 -0
  629. package/dist/modules/inventory/index.d.ts +3 -0
  630. package/dist/modules/inventory/index.d.ts.map +1 -0
  631. package/dist/modules/inventory/index.js +31 -0
  632. package/dist/modules/inventory/index.js.map +1 -0
  633. package/dist/modules/loyalty/admin-functions.d.ts +3 -0
  634. package/dist/modules/loyalty/admin-functions.d.ts.map +1 -0
  635. package/dist/modules/loyalty/admin-functions.js +692 -0
  636. package/dist/modules/loyalty/admin-functions.js.map +1 -0
  637. package/dist/modules/loyalty/engine.d.ts +31 -0
  638. package/dist/modules/loyalty/engine.d.ts.map +1 -0
  639. package/dist/modules/loyalty/engine.js +412 -0
  640. package/dist/modules/loyalty/engine.js.map +1 -0
  641. package/dist/modules/loyalty/index.d.ts +5 -0
  642. package/dist/modules/loyalty/index.d.ts.map +1 -0
  643. package/dist/modules/loyalty/index.js +24 -0
  644. package/dist/modules/loyalty/index.js.map +1 -0
  645. package/dist/modules/loyalty/jobs.d.ts +4 -0
  646. package/dist/modules/loyalty/jobs.d.ts.map +1 -0
  647. package/dist/modules/loyalty/jobs.js +103 -0
  648. package/dist/modules/loyalty/jobs.js.map +1 -0
  649. package/dist/modules/loyalty/ledger.d.ts +48 -0
  650. package/dist/modules/loyalty/ledger.d.ts.map +1 -0
  651. package/dist/modules/loyalty/ledger.js +164 -0
  652. package/dist/modules/loyalty/ledger.js.map +1 -0
  653. package/dist/modules/loyalty/membership-functions.d.ts +4 -0
  654. package/dist/modules/loyalty/membership-functions.d.ts.map +1 -0
  655. package/dist/modules/loyalty/membership-functions.js +163 -0
  656. package/dist/modules/loyalty/membership-functions.js.map +1 -0
  657. package/dist/modules/loyalty/messages.d.ts +119 -0
  658. package/dist/modules/loyalty/messages.d.ts.map +1 -0
  659. package/dist/modules/loyalty/messages.js +119 -0
  660. package/dist/modules/loyalty/messages.js.map +1 -0
  661. package/dist/modules/loyalty/models.d.ts +3 -0
  662. package/dist/modules/loyalty/models.d.ts.map +1 -0
  663. package/dist/modules/loyalty/models.js +259 -0
  664. package/dist/modules/loyalty/models.js.map +1 -0
  665. package/dist/modules/loyalty/order-functions.d.ts +3 -0
  666. package/dist/modules/loyalty/order-functions.d.ts.map +1 -0
  667. package/dist/modules/loyalty/order-functions.js +656 -0
  668. package/dist/modules/loyalty/order-functions.js.map +1 -0
  669. package/dist/modules/loyalty/relations.d.ts +3 -0
  670. package/dist/modules/loyalty/relations.d.ts.map +1 -0
  671. package/dist/modules/loyalty/relations.js +19 -0
  672. package/dist/modules/loyalty/relations.js.map +1 -0
  673. package/dist/modules/loyalty/types.d.ts +83 -0
  674. package/dist/modules/loyalty/types.d.ts.map +1 -0
  675. package/dist/modules/loyalty/types.js +23 -0
  676. package/dist/modules/loyalty/types.js.map +1 -0
  677. package/dist/modules/loyalty_backend/index.d.ts +3 -0
  678. package/dist/modules/loyalty_backend/index.d.ts.map +1 -0
  679. package/dist/modules/loyalty_backend/index.js +636 -0
  680. package/dist/modules/loyalty_backend/index.js.map +1 -0
  681. package/dist/modules/loyalty_backend/messages.d.ts +162 -0
  682. package/dist/modules/loyalty_backend/messages.d.ts.map +1 -0
  683. package/dist/modules/loyalty_backend/messages.js +318 -0
  684. package/dist/modules/loyalty_backend/messages.js.map +1 -0
  685. package/dist/modules/loyalty_backend/screens.d.ts +33 -0
  686. package/dist/modules/loyalty_backend/screens.d.ts.map +1 -0
  687. package/dist/modules/loyalty_backend/screens.js +562 -0
  688. package/dist/modules/loyalty_backend/screens.js.map +1 -0
  689. package/dist/modules/loyalty_pos/functions.d.ts +19 -0
  690. package/dist/modules/loyalty_pos/functions.d.ts.map +1 -0
  691. package/dist/modules/loyalty_pos/functions.js +274 -0
  692. package/dist/modules/loyalty_pos/functions.js.map +1 -0
  693. package/dist/modules/loyalty_pos/index.d.ts +3 -0
  694. package/dist/modules/loyalty_pos/index.d.ts.map +1 -0
  695. package/dist/modules/loyalty_pos/index.js +45 -0
  696. package/dist/modules/loyalty_pos/index.js.map +1 -0
  697. package/dist/modules/loyalty_sale/functions.d.ts +19 -0
  698. package/dist/modules/loyalty_sale/functions.d.ts.map +1 -0
  699. package/dist/modules/loyalty_sale/functions.js +275 -0
  700. package/dist/modules/loyalty_sale/functions.js.map +1 -0
  701. package/dist/modules/loyalty_sale/index.d.ts +3 -0
  702. package/dist/modules/loyalty_sale/index.d.ts.map +1 -0
  703. package/dist/modules/loyalty_sale/index.js +45 -0
  704. package/dist/modules/loyalty_sale/index.js.map +1 -0
  705. package/dist/modules/mail/functions.d.ts +3 -0
  706. package/dist/modules/mail/functions.d.ts.map +1 -0
  707. package/dist/modules/mail/functions.js +129 -0
  708. package/dist/modules/mail/functions.js.map +1 -0
  709. package/dist/modules/mail/index.d.ts +9 -0
  710. package/dist/modules/mail/index.d.ts.map +1 -0
  711. package/dist/modules/mail/index.js +22 -0
  712. package/dist/modules/mail/index.js.map +1 -0
  713. package/dist/modules/mail/messages.d.ts +13 -0
  714. package/dist/modules/mail/messages.d.ts.map +1 -0
  715. package/dist/modules/mail/messages.js +13 -0
  716. package/dist/modules/mail/messages.js.map +1 -0
  717. package/dist/modules/mail/models.d.ts +3 -0
  718. package/dist/modules/mail/models.d.ts.map +1 -0
  719. package/dist/modules/mail/models.js +124 -0
  720. package/dist/modules/mail/models.js.map +1 -0
  721. package/dist/modules/mail/operations.d.ts +60 -0
  722. package/dist/modules/mail/operations.d.ts.map +1 -0
  723. package/dist/modules/mail/operations.js +249 -0
  724. package/dist/modules/mail/operations.js.map +1 -0
  725. package/dist/modules/mail/relations.d.ts +3 -0
  726. package/dist/modules/mail/relations.d.ts.map +1 -0
  727. package/dist/modules/mail/relations.js +41 -0
  728. package/dist/modules/mail/relations.js.map +1 -0
  729. package/dist/modules/mail/target.d.ts +16 -0
  730. package/dist/modules/mail/target.d.ts.map +1 -0
  731. package/dist/modules/mail/target.js +245 -0
  732. package/dist/modules/mail/target.js.map +1 -0
  733. package/dist/modules/mail/types.d.ts +7 -0
  734. package/dist/modules/mail/types.d.ts.map +1 -0
  735. package/dist/modules/mail/types.js +4 -0
  736. package/dist/modules/mail/types.js.map +1 -0
  737. package/dist/modules/mail_backend/index.d.ts +5 -0
  738. package/dist/modules/mail_backend/index.d.ts.map +1 -0
  739. package/dist/modules/mail_backend/index.js +56 -0
  740. package/dist/modules/mail_backend/index.js.map +1 -0
  741. package/dist/modules/mail_backend/islands.d.ts +3 -0
  742. package/dist/modules/mail_backend/islands.d.ts.map +1 -0
  743. package/dist/modules/mail_backend/islands.js +20 -0
  744. package/dist/modules/mail_backend/islands.js.map +1 -0
  745. package/dist/modules/mail_backend/routes.d.ts +5 -0
  746. package/dist/modules/mail_backend/routes.d.ts.map +1 -0
  747. package/dist/modules/mail_backend/routes.js +37 -0
  748. package/dist/modules/mail_backend/routes.js.map +1 -0
  749. package/dist/modules/mail_backend/screens.d.ts +5 -0
  750. package/dist/modules/mail_backend/screens.d.ts.map +1 -0
  751. package/dist/modules/mail_backend/screens.js +11 -0
  752. package/dist/modules/mail_backend/screens.js.map +1 -0
  753. package/dist/modules/mail_inbound/functions.d.ts +27 -0
  754. package/dist/modules/mail_inbound/functions.d.ts.map +1 -0
  755. package/dist/modules/mail_inbound/functions.js +178 -0
  756. package/dist/modules/mail_inbound/functions.js.map +1 -0
  757. package/dist/modules/mail_inbound/index.d.ts +10 -0
  758. package/dist/modules/mail_inbound/index.d.ts.map +1 -0
  759. package/dist/modules/mail_inbound/index.js +38 -0
  760. package/dist/modules/mail_inbound/index.js.map +1 -0
  761. package/dist/modules/mail_inbound/jobs.d.ts +3 -0
  762. package/dist/modules/mail_inbound/jobs.d.ts.map +1 -0
  763. package/dist/modules/mail_inbound/jobs.js +29 -0
  764. package/dist/modules/mail_inbound/jobs.js.map +1 -0
  765. package/dist/modules/mail_inbound/models.d.ts +3 -0
  766. package/dist/modules/mail_inbound/models.d.ts.map +1 -0
  767. package/dist/modules/mail_inbound/models.js +68 -0
  768. package/dist/modules/mail_inbound/models.js.map +1 -0
  769. package/dist/modules/mail_inbound/operations.d.ts +17 -0
  770. package/dist/modules/mail_inbound/operations.d.ts.map +1 -0
  771. package/dist/modules/mail_inbound/operations.js +273 -0
  772. package/dist/modules/mail_inbound/operations.js.map +1 -0
  773. package/dist/modules/mail_inbound/relations.d.ts +3 -0
  774. package/dist/modules/mail_inbound/relations.d.ts.map +1 -0
  775. package/dist/modules/mail_inbound/relations.js +19 -0
  776. package/dist/modules/mail_inbound/relations.js.map +1 -0
  777. package/dist/modules/mail_inbound/routes.d.ts +4 -0
  778. package/dist/modules/mail_inbound/routes.d.ts.map +1 -0
  779. package/dist/modules/mail_inbound/routes.js +156 -0
  780. package/dist/modules/mail_inbound/routes.js.map +1 -0
  781. package/dist/modules/mail_inbound/types.d.ts +37 -0
  782. package/dist/modules/mail_inbound/types.d.ts.map +1 -0
  783. package/dist/modules/mail_inbound/types.js +3 -0
  784. package/dist/modules/mail_inbound/types.js.map +1 -0
  785. package/dist/modules/mail_inbound_backend/index.d.ts +5 -0
  786. package/dist/modules/mail_inbound_backend/index.d.ts.map +1 -0
  787. package/dist/modules/mail_inbound_backend/index.js +59 -0
  788. package/dist/modules/mail_inbound_backend/index.js.map +1 -0
  789. package/dist/modules/mail_inbound_backend/routes.d.ts +5 -0
  790. package/dist/modules/mail_inbound_backend/routes.d.ts.map +1 -0
  791. package/dist/modules/mail_inbound_backend/routes.js +31 -0
  792. package/dist/modules/mail_inbound_backend/routes.js.map +1 -0
  793. package/dist/modules/mail_inbound_backend/screens.d.ts +5 -0
  794. package/dist/modules/mail_inbound_backend/screens.d.ts.map +1 -0
  795. package/dist/modules/mail_inbound_backend/screens.js +25 -0
  796. package/dist/modules/mail_inbound_backend/screens.js.map +1 -0
  797. package/dist/modules/mail_transport/functions.d.ts +3 -0
  798. package/dist/modules/mail_transport/functions.d.ts.map +1 -0
  799. package/dist/modules/mail_transport/functions.js +280 -0
  800. package/dist/modules/mail_transport/functions.js.map +1 -0
  801. package/dist/modules/mail_transport/index.d.ts +11 -0
  802. package/dist/modules/mail_transport/index.d.ts.map +1 -0
  803. package/dist/modules/mail_transport/index.js +37 -0
  804. package/dist/modules/mail_transport/index.js.map +1 -0
  805. package/dist/modules/mail_transport/jobs.d.ts +3 -0
  806. package/dist/modules/mail_transport/jobs.d.ts.map +1 -0
  807. package/dist/modules/mail_transport/jobs.js +79 -0
  808. package/dist/modules/mail_transport/jobs.js.map +1 -0
  809. package/dist/modules/mail_transport/models.d.ts +3 -0
  810. package/dist/modules/mail_transport/models.d.ts.map +1 -0
  811. package/dist/modules/mail_transport/models.js +88 -0
  812. package/dist/modules/mail_transport/models.js.map +1 -0
  813. package/dist/modules/mail_transport/operations.d.ts +16 -0
  814. package/dist/modules/mail_transport/operations.d.ts.map +1 -0
  815. package/dist/modules/mail_transport/operations.js +122 -0
  816. package/dist/modules/mail_transport/operations.js.map +1 -0
  817. package/dist/modules/mail_transport/relations.d.ts +3 -0
  818. package/dist/modules/mail_transport/relations.d.ts.map +1 -0
  819. package/dist/modules/mail_transport/relations.js +19 -0
  820. package/dist/modules/mail_transport/relations.js.map +1 -0
  821. package/dist/modules/mail_transport/target.d.ts +8 -0
  822. package/dist/modules/mail_transport/target.d.ts.map +1 -0
  823. package/dist/modules/mail_transport/target.js +43 -0
  824. package/dist/modules/mail_transport/target.js.map +1 -0
  825. package/dist/modules/mail_transport/template.d.ts +4 -0
  826. package/dist/modules/mail_transport/template.d.ts.map +1 -0
  827. package/dist/modules/mail_transport/template.js +52 -0
  828. package/dist/modules/mail_transport/template.js.map +1 -0
  829. package/dist/modules/mail_transport/types.d.ts +9 -0
  830. package/dist/modules/mail_transport/types.d.ts.map +1 -0
  831. package/dist/modules/mail_transport/types.js +3 -0
  832. package/dist/modules/mail_transport/types.js.map +1 -0
  833. package/dist/modules/mail_transport_backend/index.d.ts +5 -0
  834. package/dist/modules/mail_transport_backend/index.d.ts.map +1 -0
  835. package/dist/modules/mail_transport_backend/index.js +69 -0
  836. package/dist/modules/mail_transport_backend/index.js.map +1 -0
  837. package/dist/modules/mail_transport_backend/routes.d.ts +5 -0
  838. package/dist/modules/mail_transport_backend/routes.d.ts.map +1 -0
  839. package/dist/modules/mail_transport_backend/routes.js +42 -0
  840. package/dist/modules/mail_transport_backend/routes.js.map +1 -0
  841. package/dist/modules/mail_transport_backend/screens.d.ts +5 -0
  842. package/dist/modules/mail_transport_backend/screens.d.ts.map +1 -0
  843. package/dist/modules/mail_transport_backend/screens.js +35 -0
  844. package/dist/modules/mail_transport_backend/screens.js.map +1 -0
  845. package/dist/modules/oauth/functions.d.ts +3 -0
  846. package/dist/modules/oauth/functions.d.ts.map +1 -0
  847. package/dist/modules/oauth/functions.js +817 -0
  848. package/dist/modules/oauth/functions.js.map +1 -0
  849. package/dist/modules/oauth/index.d.ts +4 -0
  850. package/dist/modules/oauth/index.d.ts.map +1 -0
  851. package/dist/modules/oauth/index.js +22 -0
  852. package/dist/modules/oauth/index.js.map +1 -0
  853. package/dist/modules/oauth/messages.d.ts +129 -0
  854. package/dist/modules/oauth/messages.d.ts.map +1 -0
  855. package/dist/modules/oauth/messages.js +129 -0
  856. package/dist/modules/oauth/messages.js.map +1 -0
  857. package/dist/modules/oauth/models.d.ts +4 -0
  858. package/dist/modules/oauth/models.d.ts.map +1 -0
  859. package/dist/modules/oauth/models.js +83 -0
  860. package/dist/modules/oauth/models.js.map +1 -0
  861. package/dist/modules/oauth/protocol.d.ts +54 -0
  862. package/dist/modules/oauth/protocol.d.ts.map +1 -0
  863. package/dist/modules/oauth/protocol.js +309 -0
  864. package/dist/modules/oauth/protocol.js.map +1 -0
  865. package/dist/modules/oauth/relations.d.ts +3 -0
  866. package/dist/modules/oauth/relations.d.ts.map +1 -0
  867. package/dist/modules/oauth/relations.js +18 -0
  868. package/dist/modules/oauth/relations.js.map +1 -0
  869. package/dist/modules/oauth/routes.d.ts +3 -0
  870. package/dist/modules/oauth/routes.d.ts.map +1 -0
  871. package/dist/modules/oauth/routes.js +185 -0
  872. package/dist/modules/oauth/routes.js.map +1 -0
  873. package/dist/modules/oauth_backend/index.d.ts +4 -0
  874. package/dist/modules/oauth_backend/index.d.ts.map +1 -0
  875. package/dist/modules/oauth_backend/index.js +23 -0
  876. package/dist/modules/oauth_backend/index.js.map +1 -0
  877. package/dist/modules/oauth_backend/menus.d.ts +3 -0
  878. package/dist/modules/oauth_backend/menus.d.ts.map +1 -0
  879. package/dist/modules/oauth_backend/menus.js +17 -0
  880. package/dist/modules/oauth_backend/menus.js.map +1 -0
  881. package/dist/modules/oauth_backend/messages.d.ts +169 -0
  882. package/dist/modules/oauth_backend/messages.d.ts.map +1 -0
  883. package/dist/modules/oauth_backend/messages.js +169 -0
  884. package/dist/modules/oauth_backend/messages.js.map +1 -0
  885. package/dist/modules/oauth_backend/routes.d.ts +3 -0
  886. package/dist/modules/oauth_backend/routes.d.ts.map +1 -0
  887. package/dist/modules/oauth_backend/routes.js +231 -0
  888. package/dist/modules/oauth_backend/routes.js.map +1 -0
  889. package/dist/modules/oauth_backend/screens.d.ts +66 -0
  890. package/dist/modules/oauth_backend/screens.d.ts.map +1 -0
  891. package/dist/modules/oauth_backend/screens.js +323 -0
  892. package/dist/modules/oauth_backend/screens.js.map +1 -0
  893. package/dist/modules/odoo_collaboration_import/functions.d.ts +3 -0
  894. package/dist/modules/odoo_collaboration_import/functions.d.ts.map +1 -0
  895. package/dist/modules/odoo_collaboration_import/functions.js +128 -0
  896. package/dist/modules/odoo_collaboration_import/functions.js.map +1 -0
  897. package/dist/modules/odoo_collaboration_import/index.d.ts +6 -0
  898. package/dist/modules/odoo_collaboration_import/index.d.ts.map +1 -0
  899. package/dist/modules/odoo_collaboration_import/index.js +31 -0
  900. package/dist/modules/odoo_collaboration_import/index.js.map +1 -0
  901. package/dist/modules/odoo_collaboration_import/models.d.ts +3 -0
  902. package/dist/modules/odoo_collaboration_import/models.d.ts.map +1 -0
  903. package/dist/modules/odoo_collaboration_import/models.js +76 -0
  904. package/dist/modules/odoo_collaboration_import/models.js.map +1 -0
  905. package/dist/modules/odoo_collaboration_import/operations.d.ts +14 -0
  906. package/dist/modules/odoo_collaboration_import/operations.d.ts.map +1 -0
  907. package/dist/modules/odoo_collaboration_import/operations.js +1139 -0
  908. package/dist/modules/odoo_collaboration_import/operations.js.map +1 -0
  909. package/dist/modules/odoo_collaboration_import/relations.d.ts +3 -0
  910. package/dist/modules/odoo_collaboration_import/relations.d.ts.map +1 -0
  911. package/dist/modules/odoo_collaboration_import/relations.js +19 -0
  912. package/dist/modules/odoo_collaboration_import/relations.js.map +1 -0
  913. package/dist/modules/odoo_collaboration_import/types.d.ts +58 -0
  914. package/dist/modules/odoo_collaboration_import/types.d.ts.map +1 -0
  915. package/dist/modules/odoo_collaboration_import/types.js +2 -0
  916. package/dist/modules/odoo_collaboration_import/types.js.map +1 -0
  917. package/dist/modules/partner/functions.d.ts +5 -0
  918. package/dist/modules/partner/functions.d.ts.map +1 -0
  919. package/dist/modules/partner/functions.js +563 -0
  920. package/dist/modules/partner/functions.js.map +1 -0
  921. package/dist/modules/partner/index.d.ts +5 -0
  922. package/dist/modules/partner/index.d.ts.map +1 -0
  923. package/dist/modules/partner/index.js +23 -0
  924. package/dist/modules/partner/index.js.map +1 -0
  925. package/dist/modules/partner/messages.d.ts +55 -0
  926. package/dist/modules/partner/messages.d.ts.map +1 -0
  927. package/dist/modules/partner/messages.js +55 -0
  928. package/dist/modules/partner/messages.js.map +1 -0
  929. package/dist/modules/partner/models.d.ts +23 -0
  930. package/dist/modules/partner/models.d.ts.map +1 -0
  931. package/dist/modules/partner/models.js +124 -0
  932. package/dist/modules/partner/models.js.map +1 -0
  933. package/dist/modules/partner/relations.d.ts +4 -0
  934. package/dist/modules/partner/relations.d.ts.map +1 -0
  935. package/dist/modules/partner/relations.js +35 -0
  936. package/dist/modules/partner/relations.js.map +1 -0
  937. package/dist/modules/partner/types.d.ts +17 -0
  938. package/dist/modules/partner/types.d.ts.map +1 -0
  939. package/dist/modules/partner/types.js +14 -0
  940. package/dist/modules/partner/types.js.map +1 -0
  941. package/dist/modules/partner/views.d.ts +4 -0
  942. package/dist/modules/partner/views.d.ts.map +1 -0
  943. package/dist/modules/partner/views.js +19 -0
  944. package/dist/modules/partner/views.js.map +1 -0
  945. package/dist/modules/partner_backend/client/address-view.d.mts +5 -0
  946. package/dist/modules/partner_backend/client/address-view.d.mts.map +1 -0
  947. package/dist/modules/partner_backend/client/address-view.mjs +193 -0
  948. package/dist/modules/partner_backend/client/address-view.mjs.map +1 -0
  949. package/dist/modules/partner_backend/client/address.css +12 -0
  950. package/dist/modules/partner_backend/client/address.d.mts +5 -0
  951. package/dist/modules/partner_backend/client/address.d.mts.map +1 -0
  952. package/dist/modules/partner_backend/client/address.mjs +7 -0
  953. package/dist/modules/partner_backend/client/address.mjs.map +1 -0
  954. package/dist/modules/partner_backend/index.d.ts +5 -0
  955. package/dist/modules/partner_backend/index.d.ts.map +1 -0
  956. package/dist/modules/partner_backend/index.js +178 -0
  957. package/dist/modules/partner_backend/index.js.map +1 -0
  958. package/dist/modules/partner_backend/islands.d.ts +3 -0
  959. package/dist/modules/partner_backend/islands.d.ts.map +1 -0
  960. package/dist/modules/partner_backend/islands.js +23 -0
  961. package/dist/modules/partner_backend/islands.js.map +1 -0
  962. package/dist/modules/partner_backend/menus.d.ts +3 -0
  963. package/dist/modules/partner_backend/menus.d.ts.map +1 -0
  964. package/dist/modules/partner_backend/menus.js +11 -0
  965. package/dist/modules/partner_backend/menus.js.map +1 -0
  966. package/dist/modules/partner_backend/relation-control.d.ts +22 -0
  967. package/dist/modules/partner_backend/relation-control.d.ts.map +1 -0
  968. package/dist/modules/partner_backend/relation-control.js +46 -0
  969. package/dist/modules/partner_backend/relation-control.js.map +1 -0
  970. package/dist/modules/partner_backend/routes.d.ts +3 -0
  971. package/dist/modules/partner_backend/routes.d.ts.map +1 -0
  972. package/dist/modules/partner_backend/routes.js +300 -0
  973. package/dist/modules/partner_backend/routes.js.map +1 -0
  974. package/dist/modules/partner_backend/screens.d.ts +53 -0
  975. package/dist/modules/partner_backend/screens.d.ts.map +1 -0
  976. package/dist/modules/partner_backend/screens.js +169 -0
  977. package/dist/modules/partner_backend/screens.js.map +1 -0
  978. package/dist/modules/pos/functions.d.ts +6 -0
  979. package/dist/modules/pos/functions.d.ts.map +1 -0
  980. package/dist/modules/pos/functions.js +953 -0
  981. package/dist/modules/pos/functions.js.map +1 -0
  982. package/dist/modules/pos/index.d.ts +4 -0
  983. package/dist/modules/pos/index.d.ts.map +1 -0
  984. package/dist/modules/pos/index.js +34 -0
  985. package/dist/modules/pos/index.js.map +1 -0
  986. package/dist/modules/pos/models.d.ts +3 -0
  987. package/dist/modules/pos/models.d.ts.map +1 -0
  988. package/dist/modules/pos/models.js +107 -0
  989. package/dist/modules/pos/models.js.map +1 -0
  990. package/dist/modules/pos/relations.d.ts +3 -0
  991. package/dist/modules/pos/relations.d.ts.map +1 -0
  992. package/dist/modules/pos/relations.js +37 -0
  993. package/dist/modules/pos/relations.js.map +1 -0
  994. package/dist/modules/pos_backend/index.d.ts +3 -0
  995. package/dist/modules/pos_backend/index.d.ts.map +1 -0
  996. package/dist/modules/pos_backend/index.js +654 -0
  997. package/dist/modules/pos_backend/index.js.map +1 -0
  998. package/dist/modules/pos_backend/screens.d.ts +15 -0
  999. package/dist/modules/pos_backend/screens.d.ts.map +1 -0
  1000. package/dist/modules/pos_backend/screens.js +320 -0
  1001. package/dist/modules/pos_backend/screens.js.map +1 -0
  1002. package/dist/modules/pricing/functions.d.ts +6 -0
  1003. package/dist/modules/pricing/functions.d.ts.map +1 -0
  1004. package/dist/modules/pricing/functions.js +318 -0
  1005. package/dist/modules/pricing/functions.js.map +1 -0
  1006. package/dist/modules/pricing/index.d.ts +4 -0
  1007. package/dist/modules/pricing/index.d.ts.map +1 -0
  1008. package/dist/modules/pricing/index.js +30 -0
  1009. package/dist/modules/pricing/index.js.map +1 -0
  1010. package/dist/modules/pricing/models.d.ts +3 -0
  1011. package/dist/modules/pricing/models.d.ts.map +1 -0
  1012. package/dist/modules/pricing/models.js +34 -0
  1013. package/dist/modules/pricing/models.js.map +1 -0
  1014. package/dist/modules/pricing/relations.d.ts +3 -0
  1015. package/dist/modules/pricing/relations.d.ts.map +1 -0
  1016. package/dist/modules/pricing/relations.js +11 -0
  1017. package/dist/modules/pricing/relations.js.map +1 -0
  1018. package/dist/modules/pricing_backend/index.d.ts +3 -0
  1019. package/dist/modules/pricing_backend/index.d.ts.map +1 -0
  1020. package/dist/modules/pricing_backend/index.js +241 -0
  1021. package/dist/modules/pricing_backend/index.js.map +1 -0
  1022. package/dist/modules/pricing_backend/screens.d.ts +13 -0
  1023. package/dist/modules/pricing_backend/screens.d.ts.map +1 -0
  1024. package/dist/modules/pricing_backend/screens.js +182 -0
  1025. package/dist/modules/pricing_backend/screens.js.map +1 -0
  1026. package/dist/modules/product/functions.d.ts +3 -0
  1027. package/dist/modules/product/functions.d.ts.map +1 -0
  1028. package/dist/modules/product/functions.js +627 -0
  1029. package/dist/modules/product/functions.js.map +1 -0
  1030. package/dist/modules/product/index.d.ts +6 -0
  1031. package/dist/modules/product/index.d.ts.map +1 -0
  1032. package/dist/modules/product/index.js +24 -0
  1033. package/dist/modules/product/index.js.map +1 -0
  1034. package/dist/modules/product/messages.d.ts +3 -0
  1035. package/dist/modules/product/messages.d.ts.map +1 -0
  1036. package/dist/modules/product/messages.js +19 -0
  1037. package/dist/modules/product/messages.js.map +1 -0
  1038. package/dist/modules/product/models.d.ts +11 -0
  1039. package/dist/modules/product/models.d.ts.map +1 -0
  1040. package/dist/modules/product/models.js +116 -0
  1041. package/dist/modules/product/models.js.map +1 -0
  1042. package/dist/modules/product/relations.d.ts +8 -0
  1043. package/dist/modules/product/relations.d.ts.map +1 -0
  1044. package/dist/modules/product/relations.js +53 -0
  1045. package/dist/modules/product/relations.js.map +1 -0
  1046. package/dist/modules/product/search.d.ts +73 -0
  1047. package/dist/modules/product/search.d.ts.map +1 -0
  1048. package/dist/modules/product/search.js +66 -0
  1049. package/dist/modules/product/search.js.map +1 -0
  1050. package/dist/modules/product/types.d.ts +14 -0
  1051. package/dist/modules/product/types.d.ts.map +1 -0
  1052. package/dist/modules/product/types.js +2 -0
  1053. package/dist/modules/product/types.js.map +1 -0
  1054. package/dist/modules/product/views.d.ts +4 -0
  1055. package/dist/modules/product/views.d.ts.map +1 -0
  1056. package/dist/modules/product/views.js +7 -0
  1057. package/dist/modules/product/views.js.map +1 -0
  1058. package/dist/modules/product_activity_backend/index.d.ts +5 -0
  1059. package/dist/modules/product_activity_backend/index.d.ts.map +1 -0
  1060. package/dist/modules/product_activity_backend/index.js +29 -0
  1061. package/dist/modules/product_activity_backend/index.js.map +1 -0
  1062. package/dist/modules/product_backend/attributes-screen.d.ts +7 -0
  1063. package/dist/modules/product_backend/attributes-screen.d.ts.map +1 -0
  1064. package/dist/modules/product_backend/attributes-screen.js +76 -0
  1065. package/dist/modules/product_backend/attributes-screen.js.map +1 -0
  1066. package/dist/modules/product_backend/client/editor-view.d.mts +5 -0
  1067. package/dist/modules/product_backend/client/editor-view.d.mts.map +1 -0
  1068. package/dist/modules/product_backend/client/editor-view.mjs +141 -0
  1069. package/dist/modules/product_backend/client/editor-view.mjs.map +1 -0
  1070. package/dist/modules/product_backend/client/product.d.mts +6 -0
  1071. package/dist/modules/product_backend/client/product.d.mts.map +1 -0
  1072. package/dist/modules/product_backend/client/product.mjs +8 -0
  1073. package/dist/modules/product_backend/client/product.mjs.map +1 -0
  1074. package/dist/modules/product_backend/create-screen.d.ts +12 -0
  1075. package/dist/modules/product_backend/create-screen.d.ts.map +1 -0
  1076. package/dist/modules/product_backend/create-screen.js +83 -0
  1077. package/dist/modules/product_backend/create-screen.js.map +1 -0
  1078. package/dist/modules/product_backend/index.d.ts +20 -0
  1079. package/dist/modules/product_backend/index.d.ts.map +1 -0
  1080. package/dist/modules/product_backend/index.js +287 -0
  1081. package/dist/modules/product_backend/index.js.map +1 -0
  1082. package/dist/modules/product_backend/islands.d.ts +3 -0
  1083. package/dist/modules/product_backend/islands.d.ts.map +1 -0
  1084. package/dist/modules/product_backend/islands.js +13 -0
  1085. package/dist/modules/product_backend/islands.js.map +1 -0
  1086. package/dist/modules/product_backend/menus.d.ts +3 -0
  1087. package/dist/modules/product_backend/menus.d.ts.map +1 -0
  1088. package/dist/modules/product_backend/menus.js +25 -0
  1089. package/dist/modules/product_backend/menus.js.map +1 -0
  1090. package/dist/modules/product_backend/routes.d.ts +14 -0
  1091. package/dist/modules/product_backend/routes.d.ts.map +1 -0
  1092. package/dist/modules/product_backend/routes.js +990 -0
  1093. package/dist/modules/product_backend/routes.js.map +1 -0
  1094. package/dist/modules/product_backend/screens.d.ts +68 -0
  1095. package/dist/modules/product_backend/screens.d.ts.map +1 -0
  1096. package/dist/modules/product_backend/screens.js +388 -0
  1097. package/dist/modules/product_backend/screens.js.map +1 -0
  1098. package/dist/modules/product_mail_backend/index.d.ts +5 -0
  1099. package/dist/modules/product_mail_backend/index.d.ts.map +1 -0
  1100. package/dist/modules/product_mail_backend/index.js +30 -0
  1101. package/dist/modules/product_mail_backend/index.js.map +1 -0
  1102. package/dist/modules/product_media/functions.d.ts +3 -0
  1103. package/dist/modules/product_media/functions.d.ts.map +1 -0
  1104. package/dist/modules/product_media/functions.js +183 -0
  1105. package/dist/modules/product_media/functions.js.map +1 -0
  1106. package/dist/modules/product_media/index.d.ts +3 -0
  1107. package/dist/modules/product_media/index.d.ts.map +1 -0
  1108. package/dist/modules/product_media/index.js +29 -0
  1109. package/dist/modules/product_media/index.js.map +1 -0
  1110. package/dist/modules/product_media/models.d.ts +4 -0
  1111. package/dist/modules/product_media/models.d.ts.map +1 -0
  1112. package/dist/modules/product_media/models.js +24 -0
  1113. package/dist/modules/product_media/models.js.map +1 -0
  1114. package/dist/modules/product_media/relations.d.ts +3 -0
  1115. package/dist/modules/product_media/relations.d.ts.map +1 -0
  1116. package/dist/modules/product_media/relations.js +8 -0
  1117. package/dist/modules/product_media/relations.js.map +1 -0
  1118. package/dist/modules/product_variant_activity_backend/index.d.ts +5 -0
  1119. package/dist/modules/product_variant_activity_backend/index.d.ts.map +1 -0
  1120. package/dist/modules/product_variant_activity_backend/index.js +29 -0
  1121. package/dist/modules/product_variant_activity_backend/index.js.map +1 -0
  1122. package/dist/modules/product_variant_mail_backend/index.d.ts +5 -0
  1123. package/dist/modules/product_variant_mail_backend/index.d.ts.map +1 -0
  1124. package/dist/modules/product_variant_mail_backend/index.js +30 -0
  1125. package/dist/modules/product_variant_mail_backend/index.js.map +1 -0
  1126. package/dist/modules/purchase/functions.d.ts +6 -0
  1127. package/dist/modules/purchase/functions.d.ts.map +1 -0
  1128. package/dist/modules/purchase/functions.js +743 -0
  1129. package/dist/modules/purchase/functions.js.map +1 -0
  1130. package/dist/modules/purchase/index.d.ts +4 -0
  1131. package/dist/modules/purchase/index.d.ts.map +1 -0
  1132. package/dist/modules/purchase/index.js +35 -0
  1133. package/dist/modules/purchase/index.js.map +1 -0
  1134. package/dist/modules/purchase/models.d.ts +3 -0
  1135. package/dist/modules/purchase/models.d.ts.map +1 -0
  1136. package/dist/modules/purchase/models.js +68 -0
  1137. package/dist/modules/purchase/models.js.map +1 -0
  1138. package/dist/modules/purchase/relations.d.ts +3 -0
  1139. package/dist/modules/purchase/relations.d.ts.map +1 -0
  1140. package/dist/modules/purchase/relations.js +20 -0
  1141. package/dist/modules/purchase/relations.js.map +1 -0
  1142. package/dist/modules/purchase_backend/index.d.ts +3 -0
  1143. package/dist/modules/purchase_backend/index.d.ts.map +1 -0
  1144. package/dist/modules/purchase_backend/index.js +615 -0
  1145. package/dist/modules/purchase_backend/index.js.map +1 -0
  1146. package/dist/modules/purchase_backend/screens.d.ts +29 -0
  1147. package/dist/modules/purchase_backend/screens.d.ts.map +1 -0
  1148. package/dist/modules/purchase_backend/screens.js +324 -0
  1149. package/dist/modules/purchase_backend/screens.js.map +1 -0
  1150. package/dist/modules/sale/functions.d.ts +6 -0
  1151. package/dist/modules/sale/functions.d.ts.map +1 -0
  1152. package/dist/modules/sale/functions.js +611 -0
  1153. package/dist/modules/sale/functions.js.map +1 -0
  1154. package/dist/modules/sale/index.d.ts +4 -0
  1155. package/dist/modules/sale/index.d.ts.map +1 -0
  1156. package/dist/modules/sale/index.js +35 -0
  1157. package/dist/modules/sale/index.js.map +1 -0
  1158. package/dist/modules/sale/models.d.ts +3 -0
  1159. package/dist/modules/sale/models.d.ts.map +1 -0
  1160. package/dist/modules/sale/models.js +46 -0
  1161. package/dist/modules/sale/models.js.map +1 -0
  1162. package/dist/modules/sale/relations.d.ts +3 -0
  1163. package/dist/modules/sale/relations.d.ts.map +1 -0
  1164. package/dist/modules/sale/relations.js +16 -0
  1165. package/dist/modules/sale/relations.js.map +1 -0
  1166. package/dist/modules/sale_activity_backend/index.d.ts +5 -0
  1167. package/dist/modules/sale_activity_backend/index.d.ts.map +1 -0
  1168. package/dist/modules/sale_activity_backend/index.js +29 -0
  1169. package/dist/modules/sale_activity_backend/index.js.map +1 -0
  1170. package/dist/modules/sale_backend/client/editor-view.d.mts +5 -0
  1171. package/dist/modules/sale_backend/client/editor-view.d.mts.map +1 -0
  1172. package/dist/modules/sale_backend/client/editor-view.mjs +132 -0
  1173. package/dist/modules/sale_backend/client/editor-view.mjs.map +1 -0
  1174. package/dist/modules/sale_backend/client/sale.d.mts +6 -0
  1175. package/dist/modules/sale_backend/client/sale.d.mts.map +1 -0
  1176. package/dist/modules/sale_backend/client/sale.mjs +8 -0
  1177. package/dist/modules/sale_backend/client/sale.mjs.map +1 -0
  1178. package/dist/modules/sale_backend/index.d.ts +3 -0
  1179. package/dist/modules/sale_backend/index.d.ts.map +1 -0
  1180. package/dist/modules/sale_backend/index.js +681 -0
  1181. package/dist/modules/sale_backend/index.js.map +1 -0
  1182. package/dist/modules/sale_backend/invoicing-policies-screen.d.ts +14 -0
  1183. package/dist/modules/sale_backend/invoicing-policies-screen.d.ts.map +1 -0
  1184. package/dist/modules/sale_backend/invoicing-policies-screen.js +36 -0
  1185. package/dist/modules/sale_backend/invoicing-policies-screen.js.map +1 -0
  1186. package/dist/modules/sale_backend/islands.d.ts +3 -0
  1187. package/dist/modules/sale_backend/islands.d.ts.map +1 -0
  1188. package/dist/modules/sale_backend/islands.js +13 -0
  1189. package/dist/modules/sale_backend/islands.js.map +1 -0
  1190. package/dist/modules/sale_backend/order-detail-screen.d.ts +18 -0
  1191. package/dist/modules/sale_backend/order-detail-screen.d.ts.map +1 -0
  1192. package/dist/modules/sale_backend/order-detail-screen.js +217 -0
  1193. package/dist/modules/sale_backend/order-detail-screen.js.map +1 -0
  1194. package/dist/modules/sale_backend/quotations-screen.d.ts +15 -0
  1195. package/dist/modules/sale_backend/quotations-screen.d.ts.map +1 -0
  1196. package/dist/modules/sale_backend/quotations-screen.js +64 -0
  1197. package/dist/modules/sale_backend/quotations-screen.js.map +1 -0
  1198. package/dist/modules/sale_backend/sales-orders-screen.d.ts +12 -0
  1199. package/dist/modules/sale_backend/sales-orders-screen.d.ts.map +1 -0
  1200. package/dist/modules/sale_backend/sales-orders-screen.js +65 -0
  1201. package/dist/modules/sale_backend/sales-orders-screen.js.map +1 -0
  1202. package/dist/modules/sale_backend/screens.d.ts +23 -0
  1203. package/dist/modules/sale_backend/screens.d.ts.map +1 -0
  1204. package/dist/modules/sale_backend/screens.js +275 -0
  1205. package/dist/modules/sale_backend/screens.js.map +1 -0
  1206. package/dist/modules/sale_mail_backend/index.d.ts +5 -0
  1207. package/dist/modules/sale_mail_backend/index.d.ts.map +1 -0
  1208. package/dist/modules/sale_mail_backend/index.js +30 -0
  1209. package/dist/modules/sale_mail_backend/index.js.map +1 -0
  1210. package/dist/modules/stock/functions.d.ts +10 -0
  1211. package/dist/modules/stock/functions.d.ts.map +1 -0
  1212. package/dist/modules/stock/functions.js +1523 -0
  1213. package/dist/modules/stock/functions.js.map +1 -0
  1214. package/dist/modules/stock/index.d.ts +5 -0
  1215. package/dist/modules/stock/index.d.ts.map +1 -0
  1216. package/dist/modules/stock/index.js +35 -0
  1217. package/dist/modules/stock/index.js.map +1 -0
  1218. package/dist/modules/stock/models.d.ts +3 -0
  1219. package/dist/modules/stock/models.d.ts.map +1 -0
  1220. package/dist/modules/stock/models.js +185 -0
  1221. package/dist/modules/stock/models.js.map +1 -0
  1222. package/dist/modules/stock/relations.d.ts +3 -0
  1223. package/dist/modules/stock/relations.d.ts.map +1 -0
  1224. package/dist/modules/stock/relations.js +40 -0
  1225. package/dist/modules/stock/relations.js.map +1 -0
  1226. package/dist/modules/stock/routing.d.ts +7 -0
  1227. package/dist/modules/stock/routing.d.ts.map +1 -0
  1228. package/dist/modules/stock/routing.js +527 -0
  1229. package/dist/modules/stock/routing.js.map +1 -0
  1230. package/dist/modules/stock_activity_backend/index.d.ts +5 -0
  1231. package/dist/modules/stock_activity_backend/index.d.ts.map +1 -0
  1232. package/dist/modules/stock_activity_backend/index.js +29 -0
  1233. package/dist/modules/stock_activity_backend/index.js.map +1 -0
  1234. package/dist/modules/stock_backend/client/editor-view.d.mts +5 -0
  1235. package/dist/modules/stock_backend/client/editor-view.d.mts.map +1 -0
  1236. package/dist/modules/stock_backend/client/editor-view.mjs +147 -0
  1237. package/dist/modules/stock_backend/client/editor-view.mjs.map +1 -0
  1238. package/dist/modules/stock_backend/client/stock.d.mts +6 -0
  1239. package/dist/modules/stock_backend/client/stock.d.mts.map +1 -0
  1240. package/dist/modules/stock_backend/client/stock.mjs +8 -0
  1241. package/dist/modules/stock_backend/client/stock.mjs.map +1 -0
  1242. package/dist/modules/stock_backend/forecast-screen.d.ts +28 -0
  1243. package/dist/modules/stock_backend/forecast-screen.d.ts.map +1 -0
  1244. package/dist/modules/stock_backend/forecast-screen.js +108 -0
  1245. package/dist/modules/stock_backend/forecast-screen.js.map +1 -0
  1246. package/dist/modules/stock_backend/index.d.ts +3 -0
  1247. package/dist/modules/stock_backend/index.d.ts.map +1 -0
  1248. package/dist/modules/stock_backend/index.js +880 -0
  1249. package/dist/modules/stock_backend/index.js.map +1 -0
  1250. package/dist/modules/stock_backend/inventory-screen.d.ts +27 -0
  1251. package/dist/modules/stock_backend/inventory-screen.d.ts.map +1 -0
  1252. package/dist/modules/stock_backend/inventory-screen.js +141 -0
  1253. package/dist/modules/stock_backend/inventory-screen.js.map +1 -0
  1254. package/dist/modules/stock_backend/islands.d.ts +3 -0
  1255. package/dist/modules/stock_backend/islands.d.ts.map +1 -0
  1256. package/dist/modules/stock_backend/islands.js +13 -0
  1257. package/dist/modules/stock_backend/islands.js.map +1 -0
  1258. package/dist/modules/stock_backend/locations-screen.d.ts +18 -0
  1259. package/dist/modules/stock_backend/locations-screen.d.ts.map +1 -0
  1260. package/dist/modules/stock_backend/locations-screen.js +92 -0
  1261. package/dist/modules/stock_backend/locations-screen.js.map +1 -0
  1262. package/dist/modules/stock_backend/lot-screen.d.ts +30 -0
  1263. package/dist/modules/stock_backend/lot-screen.d.ts.map +1 -0
  1264. package/dist/modules/stock_backend/lot-screen.js +86 -0
  1265. package/dist/modules/stock_backend/lot-screen.js.map +1 -0
  1266. package/dist/modules/stock_backend/lots-screen.d.ts +21 -0
  1267. package/dist/modules/stock_backend/lots-screen.d.ts.map +1 -0
  1268. package/dist/modules/stock_backend/lots-screen.js +79 -0
  1269. package/dist/modules/stock_backend/lots-screen.js.map +1 -0
  1270. package/dist/modules/stock_backend/picking-types-screen.d.ts +21 -0
  1271. package/dist/modules/stock_backend/picking-types-screen.d.ts.map +1 -0
  1272. package/dist/modules/stock_backend/picking-types-screen.js +110 -0
  1273. package/dist/modules/stock_backend/picking-types-screen.js.map +1 -0
  1274. package/dist/modules/stock_backend/replenishment-screen.d.ts +29 -0
  1275. package/dist/modules/stock_backend/replenishment-screen.d.ts.map +1 -0
  1276. package/dist/modules/stock_backend/replenishment-screen.js +131 -0
  1277. package/dist/modules/stock_backend/replenishment-screen.js.map +1 -0
  1278. package/dist/modules/stock_backend/routes.d.ts +3 -0
  1279. package/dist/modules/stock_backend/routes.d.ts.map +1 -0
  1280. package/dist/modules/stock_backend/routes.js +950 -0
  1281. package/dist/modules/stock_backend/routes.js.map +1 -0
  1282. package/dist/modules/stock_backend/screens.d.ts +14 -0
  1283. package/dist/modules/stock_backend/screens.d.ts.map +1 -0
  1284. package/dist/modules/stock_backend/screens.js +40 -0
  1285. package/dist/modules/stock_backend/screens.js.map +1 -0
  1286. package/dist/modules/stock_backend/stock-route-screen.d.ts +30 -0
  1287. package/dist/modules/stock_backend/stock-route-screen.d.ts.map +1 -0
  1288. package/dist/modules/stock_backend/stock-route-screen.js +129 -0
  1289. package/dist/modules/stock_backend/stock-route-screen.js.map +1 -0
  1290. package/dist/modules/stock_backend/stock-routes-screen.d.ts +17 -0
  1291. package/dist/modules/stock_backend/stock-routes-screen.d.ts.map +1 -0
  1292. package/dist/modules/stock_backend/stock-routes-screen.js +60 -0
  1293. package/dist/modules/stock_backend/stock-routes-screen.js.map +1 -0
  1294. package/dist/modules/stock_backend/transfer-screen.d.ts +26 -0
  1295. package/dist/modules/stock_backend/transfer-screen.d.ts.map +1 -0
  1296. package/dist/modules/stock_backend/transfer-screen.js +95 -0
  1297. package/dist/modules/stock_backend/transfer-screen.js.map +1 -0
  1298. package/dist/modules/stock_backend/transfers-screen.d.ts +21 -0
  1299. package/dist/modules/stock_backend/transfers-screen.d.ts.map +1 -0
  1300. package/dist/modules/stock_backend/transfers-screen.js +88 -0
  1301. package/dist/modules/stock_backend/transfers-screen.js.map +1 -0
  1302. package/dist/modules/stock_backend/warehouses-screen.d.ts +17 -0
  1303. package/dist/modules/stock_backend/warehouses-screen.d.ts.map +1 -0
  1304. package/dist/modules/stock_backend/warehouses-screen.js +96 -0
  1305. package/dist/modules/stock_backend/warehouses-screen.js.map +1 -0
  1306. package/dist/modules/stock_lot_activity_backend/index.d.ts +5 -0
  1307. package/dist/modules/stock_lot_activity_backend/index.d.ts.map +1 -0
  1308. package/dist/modules/stock_lot_activity_backend/index.js +29 -0
  1309. package/dist/modules/stock_lot_activity_backend/index.js.map +1 -0
  1310. package/dist/modules/stock_lot_mail_backend/index.d.ts +5 -0
  1311. package/dist/modules/stock_lot_mail_backend/index.d.ts.map +1 -0
  1312. package/dist/modules/stock_lot_mail_backend/index.js +30 -0
  1313. package/dist/modules/stock_lot_mail_backend/index.js.map +1 -0
  1314. package/dist/modules/stock_mail_backend/index.d.ts +5 -0
  1315. package/dist/modules/stock_mail_backend/index.d.ts.map +1 -0
  1316. package/dist/modules/stock_mail_backend/index.js +30 -0
  1317. package/dist/modules/stock_mail_backend/index.js.map +1 -0
  1318. package/dist/modules/stock_mail_inbound/index.d.ts +6 -0
  1319. package/dist/modules/stock_mail_inbound/index.d.ts.map +1 -0
  1320. package/dist/modules/stock_mail_inbound/index.js +104 -0
  1321. package/dist/modules/stock_mail_inbound/index.js.map +1 -0
  1322. package/dist/modules/storage/functions.d.ts +3 -0
  1323. package/dist/modules/storage/functions.d.ts.map +1 -0
  1324. package/dist/modules/storage/functions.js +129 -0
  1325. package/dist/modules/storage/functions.js.map +1 -0
  1326. package/dist/modules/storage/index.d.ts +3 -0
  1327. package/dist/modules/storage/index.d.ts.map +1 -0
  1328. package/dist/modules/storage/index.js +31 -0
  1329. package/dist/modules/storage/index.js.map +1 -0
  1330. package/dist/modules/storage/jobs.d.ts +3 -0
  1331. package/dist/modules/storage/jobs.d.ts.map +1 -0
  1332. package/dist/modules/storage/jobs.js +37 -0
  1333. package/dist/modules/storage/jobs.js.map +1 -0
  1334. package/dist/modules/storage/models.d.ts +3 -0
  1335. package/dist/modules/storage/models.d.ts.map +1 -0
  1336. package/dist/modules/storage/models.js +23 -0
  1337. package/dist/modules/storage/models.js.map +1 -0
  1338. package/dist/modules/storage/routes.d.ts +27 -0
  1339. package/dist/modules/storage/routes.d.ts.map +1 -0
  1340. package/dist/modules/storage/routes.js +180 -0
  1341. package/dist/modules/storage/routes.js.map +1 -0
  1342. package/dist/modules/uom/convert.d.ts +52 -0
  1343. package/dist/modules/uom/convert.d.ts.map +1 -0
  1344. package/dist/modules/uom/convert.js +76 -0
  1345. package/dist/modules/uom/convert.js.map +1 -0
  1346. package/dist/modules/uom/functions.d.ts +5 -0
  1347. package/dist/modules/uom/functions.d.ts.map +1 -0
  1348. package/dist/modules/uom/functions.js +235 -0
  1349. package/dist/modules/uom/functions.js.map +1 -0
  1350. package/dist/modules/uom/index.d.ts +5 -0
  1351. package/dist/modules/uom/index.d.ts.map +1 -0
  1352. package/dist/modules/uom/index.js +19 -0
  1353. package/dist/modules/uom/index.js.map +1 -0
  1354. package/dist/modules/uom/messages.d.ts +3 -0
  1355. package/dist/modules/uom/messages.d.ts.map +1 -0
  1356. package/dist/modules/uom/messages.js +19 -0
  1357. package/dist/modules/uom/messages.js.map +1 -0
  1358. package/dist/modules/uom/models.d.ts +4 -0
  1359. package/dist/modules/uom/models.d.ts.map +1 -0
  1360. package/dist/modules/uom/models.js +34 -0
  1361. package/dist/modules/uom/models.js.map +1 -0
  1362. package/dist/modules/uom/relations.d.ts +3 -0
  1363. package/dist/modules/uom/relations.d.ts.map +1 -0
  1364. package/dist/modules/uom/relations.js +7 -0
  1365. package/dist/modules/uom/relations.js.map +1 -0
  1366. package/dist/modules/user/functions.d.ts +8 -0
  1367. package/dist/modules/user/functions.d.ts.map +1 -0
  1368. package/dist/modules/user/functions.js +1094 -0
  1369. package/dist/modules/user/functions.js.map +1 -0
  1370. package/dist/modules/user/index.d.ts +8 -0
  1371. package/dist/modules/user/index.d.ts.map +1 -0
  1372. package/dist/modules/user/index.js +34 -0
  1373. package/dist/modules/user/index.js.map +1 -0
  1374. package/dist/modules/user/login.d.ts +28 -0
  1375. package/dist/modules/user/login.d.ts.map +1 -0
  1376. package/dist/modules/user/login.js +46 -0
  1377. package/dist/modules/user/login.js.map +1 -0
  1378. package/dist/modules/user/messages.d.ts +115 -0
  1379. package/dist/modules/user/messages.d.ts.map +1 -0
  1380. package/dist/modules/user/messages.js +115 -0
  1381. package/dist/modules/user/messages.js.map +1 -0
  1382. package/dist/modules/user/models.d.ts +16 -0
  1383. package/dist/modules/user/models.d.ts.map +1 -0
  1384. package/dist/modules/user/models.js +168 -0
  1385. package/dist/modules/user/models.js.map +1 -0
  1386. package/dist/modules/user/password.d.ts +11 -0
  1387. package/dist/modules/user/password.d.ts.map +1 -0
  1388. package/dist/modules/user/password.js +74 -0
  1389. package/dist/modules/user/password.js.map +1 -0
  1390. package/dist/modules/user/relations.d.ts +3 -0
  1391. package/dist/modules/user/relations.d.ts.map +1 -0
  1392. package/dist/modules/user/relations.js +31 -0
  1393. package/dist/modules/user/relations.js.map +1 -0
  1394. package/dist/modules/user/roles.d.ts +12 -0
  1395. package/dist/modules/user/roles.d.ts.map +1 -0
  1396. package/dist/modules/user/roles.js +254 -0
  1397. package/dist/modules/user/roles.js.map +1 -0
  1398. package/dist/modules/user/routes.d.ts +3 -0
  1399. package/dist/modules/user/routes.d.ts.map +1 -0
  1400. package/dist/modules/user/routes.js +244 -0
  1401. package/dist/modules/user/routes.js.map +1 -0
  1402. package/dist/modules/user/session-context.d.ts +10 -0
  1403. package/dist/modules/user/session-context.d.ts.map +1 -0
  1404. package/dist/modules/user/session-context.js +31 -0
  1405. package/dist/modules/user/session-context.js.map +1 -0
  1406. package/dist/modules/user_backend/index.d.ts +5 -0
  1407. package/dist/modules/user_backend/index.d.ts.map +1 -0
  1408. package/dist/modules/user_backend/index.js +24 -0
  1409. package/dist/modules/user_backend/index.js.map +1 -0
  1410. package/dist/modules/user_backend/menus.d.ts +3 -0
  1411. package/dist/modules/user_backend/menus.d.ts.map +1 -0
  1412. package/dist/modules/user_backend/menus.js +24 -0
  1413. package/dist/modules/user_backend/menus.js.map +1 -0
  1414. package/dist/modules/user_backend/messages.d.ts +189 -0
  1415. package/dist/modules/user_backend/messages.d.ts.map +1 -0
  1416. package/dist/modules/user_backend/messages.js +189 -0
  1417. package/dist/modules/user_backend/messages.js.map +1 -0
  1418. package/dist/modules/user_backend/routes.d.ts +3 -0
  1419. package/dist/modules/user_backend/routes.d.ts.map +1 -0
  1420. package/dist/modules/user_backend/routes.js +474 -0
  1421. package/dist/modules/user_backend/routes.js.map +1 -0
  1422. package/dist/modules/user_backend/screens.d.ts +70 -0
  1423. package/dist/modules/user_backend/screens.d.ts.map +1 -0
  1424. package/dist/modules/user_backend/screens.js +308 -0
  1425. package/dist/modules/user_backend/screens.js.map +1 -0
  1426. package/dist/modules/website/access.d.ts +15 -0
  1427. package/dist/modules/website/access.d.ts.map +1 -0
  1428. package/dist/modules/website/access.js +39 -0
  1429. package/dist/modules/website/access.js.map +1 -0
  1430. package/dist/modules/website/cms.d.ts +3 -0
  1431. package/dist/modules/website/cms.d.ts.map +1 -0
  1432. package/dist/modules/website/cms.js +1142 -0
  1433. package/dist/modules/website/cms.js.map +1 -0
  1434. package/dist/modules/website/content-types.d.ts +4 -0
  1435. package/dist/modules/website/content-types.d.ts.map +1 -0
  1436. package/dist/modules/website/content-types.js +30 -0
  1437. package/dist/modules/website/content-types.js.map +1 -0
  1438. package/dist/modules/website/customer-password.d.ts +4 -0
  1439. package/dist/modules/website/customer-password.d.ts.map +1 -0
  1440. package/dist/modules/website/customer-password.js +51 -0
  1441. package/dist/modules/website/customer-password.js.map +1 -0
  1442. package/dist/modules/website/customer-routes.d.ts +3 -0
  1443. package/dist/modules/website/customer-routes.d.ts.map +1 -0
  1444. package/dist/modules/website/customer-routes.js +322 -0
  1445. package/dist/modules/website/customer-routes.js.map +1 -0
  1446. package/dist/modules/website/customer.d.ts +5 -0
  1447. package/dist/modules/website/customer.d.ts.map +1 -0
  1448. package/dist/modules/website/customer.js +442 -0
  1449. package/dist/modules/website/customer.js.map +1 -0
  1450. package/dist/modules/website/functions.d.ts +3 -0
  1451. package/dist/modules/website/functions.d.ts.map +1 -0
  1452. package/dist/modules/website/functions.js +96 -0
  1453. package/dist/modules/website/functions.js.map +1 -0
  1454. package/dist/modules/website/index.d.ts +4 -0
  1455. package/dist/modules/website/index.d.ts.map +1 -0
  1456. package/dist/modules/website/index.js +152 -0
  1457. package/dist/modules/website/index.js.map +1 -0
  1458. package/dist/modules/website/jobs.d.ts +3 -0
  1459. package/dist/modules/website/jobs.d.ts.map +1 -0
  1460. package/dist/modules/website/jobs.js +25 -0
  1461. package/dist/modules/website/jobs.js.map +1 -0
  1462. package/dist/modules/website/joints.d.ts +4 -0
  1463. package/dist/modules/website/joints.d.ts.map +1 -0
  1464. package/dist/modules/website/joints.js +7 -0
  1465. package/dist/modules/website/joints.js.map +1 -0
  1466. package/dist/modules/website/models.d.ts +8 -0
  1467. package/dist/modules/website/models.d.ts.map +1 -0
  1468. package/dist/modules/website/models.js +260 -0
  1469. package/dist/modules/website/models.js.map +1 -0
  1470. package/dist/modules/website/sections.d.ts +8 -0
  1471. package/dist/modules/website/sections.d.ts.map +1 -0
  1472. package/dist/modules/website/sections.js +16 -0
  1473. package/dist/modules/website/sections.js.map +1 -0
  1474. package/dist/modules/website/tokens.d.ts +2 -0
  1475. package/dist/modules/website/tokens.d.ts.map +1 -0
  1476. package/dist/modules/website/tokens.js +5 -0
  1477. package/dist/modules/website/tokens.js.map +1 -0
  1478. package/dist/modules/website/types.d.ts +6 -0
  1479. package/dist/modules/website/types.d.ts.map +1 -0
  1480. package/dist/modules/website/types.js +2 -0
  1481. package/dist/modules/website/types.js.map +1 -0
  1482. package/dist/modules/website/views.d.ts +4 -0
  1483. package/dist/modules/website/views.d.ts.map +1 -0
  1484. package/dist/modules/website/views.js +5 -0
  1485. package/dist/modules/website/views.js.map +1 -0
  1486. package/dist/modules/website_backend/index.d.ts +3 -0
  1487. package/dist/modules/website_backend/index.d.ts.map +1 -0
  1488. package/dist/modules/website_backend/index.js +290 -0
  1489. package/dist/modules/website_backend/index.js.map +1 -0
  1490. package/dist/modules/website_backend/menus.d.ts +3 -0
  1491. package/dist/modules/website_backend/menus.d.ts.map +1 -0
  1492. package/dist/modules/website_backend/menus.js +54 -0
  1493. package/dist/modules/website_backend/menus.js.map +1 -0
  1494. package/dist/modules/website_backend/routes.d.ts +3 -0
  1495. package/dist/modules/website_backend/routes.d.ts.map +1 -0
  1496. package/dist/modules/website_backend/routes.js +625 -0
  1497. package/dist/modules/website_backend/routes.js.map +1 -0
  1498. package/dist/modules/website_backend/screens.d.ts +114 -0
  1499. package/dist/modules/website_backend/screens.d.ts.map +1 -0
  1500. package/dist/modules/website_backend/screens.js +625 -0
  1501. package/dist/modules/website_backend/screens.js.map +1 -0
  1502. package/dist/modules/website_form/functions.d.ts +3 -0
  1503. package/dist/modules/website_form/functions.d.ts.map +1 -0
  1504. package/dist/modules/website_form/functions.js +305 -0
  1505. package/dist/modules/website_form/functions.js.map +1 -0
  1506. package/dist/modules/website_form/index.d.ts +3 -0
  1507. package/dist/modules/website_form/index.d.ts.map +1 -0
  1508. package/dist/modules/website_form/index.js +72 -0
  1509. package/dist/modules/website_form/index.js.map +1 -0
  1510. package/dist/modules/website_form/models.d.ts +3 -0
  1511. package/dist/modules/website_form/models.d.ts.map +1 -0
  1512. package/dist/modules/website_form/models.js +46 -0
  1513. package/dist/modules/website_form/models.js.map +1 -0
  1514. package/dist/modules/website_form/routes.d.ts +3 -0
  1515. package/dist/modules/website_form/routes.d.ts.map +1 -0
  1516. package/dist/modules/website_form/routes.js +74 -0
  1517. package/dist/modules/website_form/routes.js.map +1 -0
  1518. package/dist/modules/website_form/sections.d.ts +3 -0
  1519. package/dist/modules/website_form/sections.d.ts.map +1 -0
  1520. package/dist/modules/website_form/sections.js +7 -0
  1521. package/dist/modules/website_form/sections.js.map +1 -0
  1522. package/dist/modules/website_hospitality/content-types.d.ts +3 -0
  1523. package/dist/modules/website_hospitality/content-types.d.ts.map +1 -0
  1524. package/dist/modules/website_hospitality/content-types.js +9 -0
  1525. package/dist/modules/website_hospitality/content-types.js.map +1 -0
  1526. package/dist/modules/website_hospitality/functions.d.ts +3 -0
  1527. package/dist/modules/website_hospitality/functions.d.ts.map +1 -0
  1528. package/dist/modules/website_hospitality/functions.js +296 -0
  1529. package/dist/modules/website_hospitality/functions.js.map +1 -0
  1530. package/dist/modules/website_hospitality/index.d.ts +3 -0
  1531. package/dist/modules/website_hospitality/index.d.ts.map +1 -0
  1532. package/dist/modules/website_hospitality/index.js +67 -0
  1533. package/dist/modules/website_hospitality/index.js.map +1 -0
  1534. package/dist/modules/website_hospitality/models.d.ts +3 -0
  1535. package/dist/modules/website_hospitality/models.d.ts.map +1 -0
  1536. package/dist/modules/website_hospitality/models.js +49 -0
  1537. package/dist/modules/website_hospitality/models.js.map +1 -0
  1538. package/dist/modules/website_hospitality/routes.d.ts +3 -0
  1539. package/dist/modules/website_hospitality/routes.d.ts.map +1 -0
  1540. package/dist/modules/website_hospitality/routes.js +78 -0
  1541. package/dist/modules/website_hospitality/routes.js.map +1 -0
  1542. package/dist/modules/website_hospitality/sections.d.ts +3 -0
  1543. package/dist/modules/website_hospitality/sections.d.ts.map +1 -0
  1544. package/dist/modules/website_hospitality/sections.js +11 -0
  1545. package/dist/modules/website_hospitality/sections.js.map +1 -0
  1546. package/dist/modules/website_menu/functions.d.ts +3 -0
  1547. package/dist/modules/website_menu/functions.d.ts.map +1 -0
  1548. package/dist/modules/website_menu/functions.js +79 -0
  1549. package/dist/modules/website_menu/functions.js.map +1 -0
  1550. package/dist/modules/website_menu/index.d.ts +3 -0
  1551. package/dist/modules/website_menu/index.d.ts.map +1 -0
  1552. package/dist/modules/website_menu/index.js +31 -0
  1553. package/dist/modules/website_menu/index.js.map +1 -0
  1554. package/dist/modules/website_menu/models.d.ts +3 -0
  1555. package/dist/modules/website_menu/models.d.ts.map +1 -0
  1556. package/dist/modules/website_menu/models.js +15 -0
  1557. package/dist/modules/website_menu/models.js.map +1 -0
  1558. package/dist/modules/website_menu/sections.d.ts +3 -0
  1559. package/dist/modules/website_menu/sections.d.ts.map +1 -0
  1560. package/dist/modules/website_menu/sections.js +4 -0
  1561. package/dist/modules/website_menu/sections.js.map +1 -0
  1562. package/dist/modules/website_menu/views.d.ts +3 -0
  1563. package/dist/modules/website_menu/views.d.ts.map +1 -0
  1564. package/dist/modules/website_menu/views.js +4 -0
  1565. package/dist/modules/website_menu/views.js.map +1 -0
  1566. package/dist/modules/website_retail/content-types.d.ts +3 -0
  1567. package/dist/modules/website_retail/content-types.d.ts.map +1 -0
  1568. package/dist/modules/website_retail/content-types.js +10 -0
  1569. package/dist/modules/website_retail/content-types.js.map +1 -0
  1570. package/dist/modules/website_retail/functions.d.ts +3 -0
  1571. package/dist/modules/website_retail/functions.d.ts.map +1 -0
  1572. package/dist/modules/website_retail/functions.js +321 -0
  1573. package/dist/modules/website_retail/functions.js.map +1 -0
  1574. package/dist/modules/website_retail/index.d.ts +3 -0
  1575. package/dist/modules/website_retail/index.d.ts.map +1 -0
  1576. package/dist/modules/website_retail/index.js +63 -0
  1577. package/dist/modules/website_retail/index.js.map +1 -0
  1578. package/dist/modules/website_retail/models.d.ts +3 -0
  1579. package/dist/modules/website_retail/models.d.ts.map +1 -0
  1580. package/dist/modules/website_retail/models.js +50 -0
  1581. package/dist/modules/website_retail/models.js.map +1 -0
  1582. package/dist/modules/website_retail/sections.d.ts +3 -0
  1583. package/dist/modules/website_retail/sections.d.ts.map +1 -0
  1584. package/dist/modules/website_retail/sections.js +11 -0
  1585. package/dist/modules/website_retail/sections.js.map +1 -0
  1586. package/dist/modules/website_search/client/search.d.mts +6 -0
  1587. package/dist/modules/website_search/client/search.d.mts.map +1 -0
  1588. package/dist/modules/website_search/client/search.mjs +25 -0
  1589. package/dist/modules/website_search/client/search.mjs.map +1 -0
  1590. package/dist/modules/website_search/fills.d.ts +3 -0
  1591. package/dist/modules/website_search/fills.d.ts.map +1 -0
  1592. package/dist/modules/website_search/fills.js +5 -0
  1593. package/dist/modules/website_search/fills.js.map +1 -0
  1594. package/dist/modules/website_search/index.d.ts +3 -0
  1595. package/dist/modules/website_search/index.d.ts.map +1 -0
  1596. package/dist/modules/website_search/index.js +28 -0
  1597. package/dist/modules/website_search/index.js.map +1 -0
  1598. package/dist/modules/website_search/islands.d.ts +7 -0
  1599. package/dist/modules/website_search/islands.d.ts.map +1 -0
  1600. package/dist/modules/website_search/islands.js +23 -0
  1601. package/dist/modules/website_search/islands.js.map +1 -0
  1602. package/dist/modules/website_seo/extend.d.ts +7 -0
  1603. package/dist/modules/website_seo/extend.d.ts.map +1 -0
  1604. package/dist/modules/website_seo/extend.js +20 -0
  1605. package/dist/modules/website_seo/extend.js.map +1 -0
  1606. package/dist/modules/website_seo/fills.d.ts +3 -0
  1607. package/dist/modules/website_seo/fills.d.ts.map +1 -0
  1608. package/dist/modules/website_seo/fills.js +8 -0
  1609. package/dist/modules/website_seo/fills.js.map +1 -0
  1610. package/dist/modules/website_seo/index.d.ts +3 -0
  1611. package/dist/modules/website_seo/index.d.ts.map +1 -0
  1612. package/dist/modules/website_seo/index.js +30 -0
  1613. package/dist/modules/website_seo/index.js.map +1 -0
  1614. package/dist/modules/website_seo/views.d.ts +3 -0
  1615. package/dist/modules/website_seo/views.d.ts.map +1 -0
  1616. package/dist/modules/website_seo/views.js +5 -0
  1617. package/dist/modules/website_seo/views.js.map +1 -0
  1618. package/dist/themes/default/index.d.ts +3 -0
  1619. package/dist/themes/default/index.d.ts.map +1 -0
  1620. package/dist/themes/default/index.js +16 -0
  1621. package/dist/themes/default/index.js.map +1 -0
  1622. package/dist/themes/default/templates/layout.ktl +7 -0
  1623. package/dist/themes/default/templates/product.detail.ktl +10 -0
  1624. package/dist/themes/default/templates/product.related_row.ktl +1 -0
  1625. package/dist/themes/hospitality/assets/theme.css +109 -0
  1626. package/dist/themes/hospitality/index.d.ts +3 -0
  1627. package/dist/themes/hospitality/index.d.ts.map +1 -0
  1628. package/dist/themes/hospitality/index.js +26 -0
  1629. package/dist/themes/hospitality/index.js.map +1 -0
  1630. package/dist/themes/hospitality/templates/layout.ktl +17 -0
  1631. package/dist/themes/hospitality/templates/menu.item.ktl +1 -0
  1632. package/dist/themes/hospitality/templates/menu.primary.ktl +1 -0
  1633. package/dist/themes/hospitality/templates/website.hero.ktl +6 -0
  1634. package/dist/themes/hospitality/templates/website.page.ktl +1 -0
  1635. package/dist/themes/hospitality/templates/website.rich_text.ktl +3 -0
  1636. package/dist/themes/hospitality/templates/website_form.form.ktl +1 -0
  1637. package/dist/themes/hospitality/templates/website_hospitality.booking.ktl +1 -0
  1638. package/dist/themes/hospitality/templates/website_hospitality.stays.ktl +1 -0
  1639. package/dist/themes/hospitality/tokens.d.ts +2 -0
  1640. package/dist/themes/hospitality/tokens.d.ts.map +1 -0
  1641. package/dist/themes/hospitality/tokens.js +9 -0
  1642. package/dist/themes/hospitality/tokens.js.map +1 -0
  1643. package/dist/themes/paper/index.d.ts +9 -0
  1644. package/dist/themes/paper/index.d.ts.map +1 -0
  1645. package/dist/themes/paper/index.js +30 -0
  1646. package/dist/themes/paper/index.js.map +1 -0
  1647. package/dist/themes/paper/templates/layout.ktl +14 -0
  1648. package/dist/themes/paper/templates/menu.item.ktl +3 -0
  1649. package/dist/themes/paper/templates/menu.primary.ktl +3 -0
  1650. package/dist/themes/paper/templates/website.hero.ktl +6 -0
  1651. package/dist/themes/paper/templates/website.page.ktl +2 -0
  1652. package/dist/themes/paper/templates/website.rich_text.ktl +4 -0
  1653. package/dist/themes/paper/tokens.d.ts +2 -0
  1654. package/dist/themes/paper/tokens.d.ts.map +1 -0
  1655. package/dist/themes/paper/tokens.js +11 -0
  1656. package/dist/themes/paper/tokens.js.map +1 -0
  1657. package/dist/themes/retail/assets/theme.css +114 -0
  1658. package/dist/themes/retail/index.d.ts +3 -0
  1659. package/dist/themes/retail/index.d.ts.map +1 -0
  1660. package/dist/themes/retail/index.js +26 -0
  1661. package/dist/themes/retail/index.js.map +1 -0
  1662. package/dist/themes/retail/templates/layout.ktl +5 -0
  1663. package/dist/themes/retail/templates/menu.item.ktl +1 -0
  1664. package/dist/themes/retail/templates/menu.primary.ktl +1 -0
  1665. package/dist/themes/retail/templates/website.hero.ktl +1 -0
  1666. package/dist/themes/retail/templates/website.page.ktl +1 -0
  1667. package/dist/themes/retail/templates/website.rich_text.ktl +1 -0
  1668. package/dist/themes/retail/templates/website_form.form.ktl +1 -0
  1669. package/dist/themes/retail/templates/website_retail.cart.ktl +1 -0
  1670. package/dist/themes/retail/templates/website_retail.products.ktl +1 -0
  1671. package/dist/themes/retail/tokens.d.ts +2 -0
  1672. package/dist/themes/retail/tokens.d.ts.map +1 -0
  1673. package/dist/themes/retail/tokens.js +9 -0
  1674. package/dist/themes/retail/tokens.js.map +1 -0
  1675. package/dist/ui/actions.d.ts +38 -0
  1676. package/dist/ui/actions.d.ts.map +1 -0
  1677. package/dist/ui/actions.js +20 -0
  1678. package/dist/ui/actions.js.map +1 -0
  1679. package/dist/ui/activity.d.ts +4 -0
  1680. package/dist/ui/activity.d.ts.map +1 -0
  1681. package/dist/ui/activity.js +73 -0
  1682. package/dist/ui/activity.js.map +1 -0
  1683. package/dist/ui/attachments.d.ts +18 -0
  1684. package/dist/ui/attachments.d.ts.map +1 -0
  1685. package/dist/ui/attachments.js +15 -0
  1686. package/dist/ui/attachments.js.map +1 -0
  1687. package/dist/ui/auth.d.ts +9 -0
  1688. package/dist/ui/auth.d.ts.map +1 -0
  1689. package/dist/ui/auth.js +44 -0
  1690. package/dist/ui/auth.js.map +1 -0
  1691. package/dist/ui/calendar.d.ts +4 -0
  1692. package/dist/ui/calendar.d.ts.map +1 -0
  1693. package/dist/ui/calendar.js +51 -0
  1694. package/dist/ui/calendar.js.map +1 -0
  1695. package/dist/ui/chrome.d.ts +66 -0
  1696. package/dist/ui/chrome.d.ts.map +1 -0
  1697. package/dist/ui/chrome.js +39 -0
  1698. package/dist/ui/chrome.js.map +1 -0
  1699. package/dist/ui/client/activity-view.d.mts +12 -0
  1700. package/dist/ui/client/activity-view.d.mts.map +1 -0
  1701. package/dist/ui/client/activity-view.mjs +393 -0
  1702. package/dist/ui/client/activity-view.mjs.map +1 -0
  1703. package/dist/ui/client/activity.css +269 -0
  1704. package/dist/ui/client/activity.d.mts +11 -0
  1705. package/dist/ui/client/activity.d.mts.map +1 -0
  1706. package/dist/ui/client/activity.mjs +10 -0
  1707. package/dist/ui/client/activity.mjs.map +1 -0
  1708. package/dist/ui/client/calendar-view.d.mts +5 -0
  1709. package/dist/ui/client/calendar-view.d.mts.map +1 -0
  1710. package/dist/ui/client/calendar-view.mjs +266 -0
  1711. package/dist/ui/client/calendar-view.mjs.map +1 -0
  1712. package/dist/ui/client/calendar.css +170 -0
  1713. package/dist/ui/client/calendar.d.mts +6 -0
  1714. package/dist/ui/client/calendar.d.mts.map +1 -0
  1715. package/dist/ui/client/calendar.mjs +6 -0
  1716. package/dist/ui/client/calendar.mjs.map +1 -0
  1717. package/dist/ui/client/mail-view.d.mts +9 -0
  1718. package/dist/ui/client/mail-view.d.mts.map +1 -0
  1719. package/dist/ui/client/mail-view.mjs +350 -0
  1720. package/dist/ui/client/mail-view.mjs.map +1 -0
  1721. package/dist/ui/client/mail.css +230 -0
  1722. package/dist/ui/client/mail.d.mts +11 -0
  1723. package/dist/ui/client/mail.d.mts.map +1 -0
  1724. package/dist/ui/client/mail.mjs +10 -0
  1725. package/dist/ui/client/mail.mjs.map +1 -0
  1726. package/dist/ui/data.d.ts +25 -0
  1727. package/dist/ui/data.d.ts.map +1 -0
  1728. package/dist/ui/data.js +23 -0
  1729. package/dist/ui/data.js.map +1 -0
  1730. package/dist/ui/date-picker.d.ts +36 -0
  1731. package/dist/ui/date-picker.d.ts.map +1 -0
  1732. package/dist/ui/date-picker.js +40 -0
  1733. package/dist/ui/date-picker.js.map +1 -0
  1734. package/dist/ui/form.d.ts +67 -0
  1735. package/dist/ui/form.d.ts.map +1 -0
  1736. package/dist/ui/form.js +75 -0
  1737. package/dist/ui/form.js.map +1 -0
  1738. package/dist/ui/format.d.ts +4 -0
  1739. package/dist/ui/format.d.ts.map +1 -0
  1740. package/dist/ui/format.js +33 -0
  1741. package/dist/ui/format.js.map +1 -0
  1742. package/dist/ui/hooks.d.ts +5 -0
  1743. package/dist/ui/hooks.d.ts.map +1 -0
  1744. package/dist/ui/hooks.js +82 -0
  1745. package/dist/ui/hooks.js.map +1 -0
  1746. package/dist/ui/icons.d.ts +12 -0
  1747. package/dist/ui/icons.d.ts.map +1 -0
  1748. package/dist/ui/icons.js +76 -0
  1749. package/dist/ui/icons.js.map +1 -0
  1750. package/dist/ui/index.d.ts +39 -0
  1751. package/dist/ui/index.d.ts.map +1 -0
  1752. package/dist/ui/index.js +39 -0
  1753. package/dist/ui/index.js.map +1 -0
  1754. package/dist/ui/layout.d.ts +80 -0
  1755. package/dist/ui/layout.d.ts.map +1 -0
  1756. package/dist/ui/layout.js +86 -0
  1757. package/dist/ui/layout.js.map +1 -0
  1758. package/dist/ui/mail.d.ts +5 -0
  1759. package/dist/ui/mail.d.ts.map +1 -0
  1760. package/dist/ui/mail.js +69 -0
  1761. package/dist/ui/mail.js.map +1 -0
  1762. package/dist/ui/media.d.ts +42 -0
  1763. package/dist/ui/media.d.ts.map +1 -0
  1764. package/dist/ui/media.js +48 -0
  1765. package/dist/ui/media.js.map +1 -0
  1766. package/dist/ui/modal.d.ts +9 -0
  1767. package/dist/ui/modal.d.ts.map +1 -0
  1768. package/dist/ui/modal.js +13 -0
  1769. package/dist/ui/modal.js.map +1 -0
  1770. package/dist/ui/nav.d.ts +34 -0
  1771. package/dist/ui/nav.d.ts.map +1 -0
  1772. package/dist/ui/nav.js +77 -0
  1773. package/dist/ui/nav.js.map +1 -0
  1774. package/dist/ui/navigation.d.ts +22 -0
  1775. package/dist/ui/navigation.d.ts.map +1 -0
  1776. package/dist/ui/navigation.js +9 -0
  1777. package/dist/ui/navigation.js.map +1 -0
  1778. package/dist/ui/primitives.d.ts +61 -0
  1779. package/dist/ui/primitives.d.ts.map +1 -0
  1780. package/dist/ui/primitives.js +74 -0
  1781. package/dist/ui/primitives.js.map +1 -0
  1782. package/dist/ui/record.d.ts +44 -0
  1783. package/dist/ui/record.d.ts.map +1 -0
  1784. package/dist/ui/record.js +39 -0
  1785. package/dist/ui/record.js.map +1 -0
  1786. package/dist/ui/schedule.d.ts +34 -0
  1787. package/dist/ui/schedule.d.ts.map +1 -0
  1788. package/dist/ui/schedule.js +39 -0
  1789. package/dist/ui/schedule.js.map +1 -0
  1790. package/dist/ui/state.d.ts +19 -0
  1791. package/dist/ui/state.d.ts.map +1 -0
  1792. package/dist/ui/state.js +34 -0
  1793. package/dist/ui/state.js.map +1 -0
  1794. package/dist/ui/surfaces.d.ts +38 -0
  1795. package/dist/ui/surfaces.d.ts.map +1 -0
  1796. package/dist/ui/surfaces.js +36 -0
  1797. package/dist/ui/surfaces.js.map +1 -0
  1798. package/dist/ui/table.d.ts +48 -0
  1799. package/dist/ui/table.d.ts.map +1 -0
  1800. package/dist/ui/table.js +53 -0
  1801. package/dist/ui/table.js.map +1 -0
  1802. package/package.json +57 -0
@@ -0,0 +1,2011 @@
1
+ export const messages = {
2
+ vi: {
3
+ 'app.title': 'Khách sạn',
4
+ 'app.summary': 'Cơ sở lưu trú, loại phòng, phòng, tiện nghi và chính sách vận hành.',
5
+ 'app.category': 'Khách sạn',
6
+ 'menu.app': 'Khách sạn',
7
+ 'menu.operations': 'Vận hành',
8
+ 'menu.properties': 'Cơ sở lưu trú',
9
+ 'menu.rooms': 'Phòng',
10
+ 'menu.frontDesk': 'Bàn lễ tân',
11
+ 'menu.reservations': 'Đặt phòng',
12
+ 'menu.stays': 'Lưu trú',
13
+ 'menu.tapeChart': 'Lịch phòng',
14
+ 'menu.folios': 'Hồ sơ dịch vụ',
15
+ 'menu.housekeeping': 'Buồng phòng',
16
+ 'menu.cleaningTasks': 'Việc dọn phòng',
17
+ 'menu.housekeepingRooms': 'Trạng thái phòng',
18
+ 'menu.configuration': 'Cấu hình',
19
+ 'menu.roomTypes': 'Loại phòng',
20
+ 'menu.content': 'Nội dung & hình ảnh',
21
+ 'menu.amenities': 'Tiện nghi',
22
+ 'menu.policies': 'Chính sách hủy',
23
+ 'menu.inventory': 'Tồn kho & hạn chế',
24
+ 'menu.ratePlans': 'Giá bán',
25
+ 'menu.services': 'Dịch vụ & phụ phí',
26
+ 'menu.nightAudit': 'Chốt ngày vận hành',
27
+ 'menu.compliance': 'Tuân thủ',
28
+ 'menu.stayNotices': 'Thông báo lưu trú',
29
+ 'screen.properties.title': 'Cơ sở lưu trú',
30
+ 'screen.properties.empty': 'Chưa có cơ sở lưu trú.',
31
+ 'screen.properties.emptyHint': 'Tạo cơ sở đầu tiên để bắt đầu cấu hình loại phòng và vận hành.',
32
+ 'property.create.title': 'Tạo cơ sở lưu trú',
33
+ 'property.create.hint': 'Khai báo danh tính và lịch vận hành trước; địa chỉ canonical được giữ nguyên và quản lý riêng.',
34
+ 'property.detail.kicker': 'Hồ sơ cơ sở lưu trú',
35
+ 'property.section.information': 'Thông tin vận hành',
36
+ 'property.section.informationHint': 'Địa chỉ, múi giờ, giờ nhận trả phòng và chính sách mặc định đang áp dụng.',
37
+ 'property.section.settings': 'Thiết lập cơ sở',
38
+ 'property.section.settingsHint': 'Thay đổi được phát vào content feed để từng kết nối OTA xử lý độc lập.',
39
+ 'property.section.next': 'Cấu hình liên quan',
40
+ 'property.section.nextHint': 'Tiếp tục với loại phòng, phòng vật lý, tồn kho và nội dung bán.',
41
+ 'property.action.create': 'Tạo cơ sở',
42
+ 'property.action.save': 'Lưu thiết lập',
43
+ 'property.action.back': 'Quay lại danh sách cơ sở',
44
+ 'property.field.code': 'Mã cơ sở',
45
+ 'property.field.name': 'Tên nội bộ',
46
+ 'property.field.publicName': 'Tên hiển thị',
47
+ 'property.field.publicNameHint': 'Tên khách nhìn thấy trên website và kênh bán.',
48
+ 'property.field.accommodationType': 'Loại hình lưu trú',
49
+ 'property.field.starRating': 'Hạng sao',
50
+ 'property.field.starRatingHint': 'Dùng 0 nếu cơ sở chưa có hạng sao chính thức.',
51
+ 'property.field.timezone': 'Múi giờ',
52
+ 'property.field.defaultCheckIn': 'Giờ nhận phòng mặc định',
53
+ 'property.field.defaultCheckOut': 'Giờ trả phòng mặc định',
54
+ 'property.field.enforceTimes': 'Áp dụng giới hạn giờ nhận / trả phòng',
55
+ 'property.field.enforceTimesHint': 'Lễ tân vẫn dùng đúng lifecycle; ngoại lệ phải có quyền vận hành.',
56
+ 'property.field.longStayBillOnCheckIn': 'Ghi kỳ đầu khi nhận phòng dài hạn',
57
+ 'property.field.longStayBillOnCheckInHint': 'Chỉ tạo charge vận hành; chưa tạo hóa đơn hoặc bút toán kế toán.',
58
+ 'property.field.childrenStayFree': 'Trẻ em được lưu trú miễn phí',
59
+ 'property.field.minimumGuestAge': 'Tuổi tối thiểu của khách chính',
60
+ 'property.field.defaultCancellationPolicy': 'Chính sách hủy mặc định',
61
+ 'property.field.address': 'Địa chỉ canonical',
62
+ 'property.field.description': 'Mô tả công khai',
63
+ 'property.field.houseRules': 'Nội quy lưu trú',
64
+ 'property.value.noDefaultPolicy': 'Chưa chọn chính sách mặc định',
65
+ 'property.metric.buildings': 'Tòa nhà',
66
+ 'property.feedback.created': 'Đã tạo cơ sở lưu trú',
67
+ 'property.feedback.saved': 'Đã lưu thiết lập cơ sở',
68
+ 'property.feedback.savedHint': 'Dữ liệu vận hành và content feed đã được cập nhật trong cùng giao dịch.',
69
+ 'screen.rooms.title': 'Sơ đồ phòng',
70
+ 'screen.rooms.empty': 'Cơ sở này chưa có phòng.',
71
+ 'screen.rooms.emptyHint': 'Tạo loại phòng, tòa và tầng trước khi thêm phòng.',
72
+ 'room.create.title': 'Tạo phòng vật lý',
73
+ 'room.create.hint': 'Gắn phòng vào loại phòng và vị trí vận hành; trạng thái phòng luôn bắt đầu ở sẵn sàng.',
74
+ 'room.detail.kicker': 'Hồ sơ phòng vật lý',
75
+ 'room.action.create': 'Tạo phòng',
76
+ 'room.action.createBuilding': 'Thêm tòa nhà',
77
+ 'room.action.createFloor': 'Thêm tầng',
78
+ 'room.action.save': 'Lưu cấu hình phòng',
79
+ 'room.action.back': 'Quay lại sơ đồ phòng',
80
+ 'room.action.openHousekeeping': 'Mở quy trình trạng thái phòng',
81
+ 'room.action.archive': 'Lưu trữ phòng',
82
+ 'room.action.restore': 'Khôi phục phòng',
83
+ 'room.field.property': 'Cơ sở lưu trú',
84
+ 'room.field.roomType': 'Loại phòng',
85
+ 'room.field.code': 'Mã phòng',
86
+ 'room.field.codeHint': 'Mã ổn định dùng trong lễ tân, buồng phòng và tích hợp.',
87
+ 'room.field.name': 'Tên / số phòng',
88
+ 'room.field.building': 'Tòa nhà',
89
+ 'room.field.floor': 'Tầng',
90
+ 'room.field.floorHint': 'Danh sách hiển thị kèm tòa nhà; tầng đã chọn quyết định vị trí chuẩn.',
91
+ 'room.field.capacity': 'Sức chứa',
92
+ 'room.field.sequence': 'Thứ tự',
93
+ 'room.field.buildingCode': 'Mã tòa nhà',
94
+ 'room.field.buildingName': 'Tên tòa nhà',
95
+ 'room.field.floorCode': 'Mã tầng',
96
+ 'room.field.floorName': 'Tên tầng',
97
+ 'room.value.noBuilding': 'Chưa gắn tòa nhà',
98
+ 'room.value.noFloor': 'Chưa gắn tầng',
99
+ 'room.value.unassignedLocation': 'Chưa gắn vị trí',
100
+ 'room.metric.floors': 'Tầng',
101
+ 'room.section.locationSetup': 'Cấu trúc tòa nhà và tầng',
102
+ 'room.section.locationSetupHint': 'Tạo tòa nhà trước, sau đó khai báo các tầng thuộc đúng tòa và cơ sở đang chọn.',
103
+ 'room.section.buildings': 'Tòa nhà',
104
+ 'room.section.buildingsHint': 'Số tầng và phòng vật lý đang gắn với từng tòa nhà.',
105
+ 'room.section.floors': 'Tầng',
106
+ 'room.section.floorsHint': 'Thứ tự tầng được dùng để sắp xếp sơ đồ và công việc vận hành.',
107
+ 'room.section.rooms': 'Phòng vật lý',
108
+ 'room.section.roomsHint': 'Danh sách phòng, loại phòng, vị trí, sức chứa và trạng thái hiện tại.',
109
+ 'room.section.information': 'Thông tin vận hành',
110
+ 'room.section.informationHint': 'Loại phòng, vị trí và trạng thái đang áp dụng cho tài sản vật lý này.',
111
+ 'room.section.settings': 'Cấu hình phòng',
112
+ 'room.section.settingsHint': 'Cấu hình không được thay đổi trạng thái; mọi chuyển trạng thái phải đi qua lifecycle vận hành.',
113
+ 'room.section.lifecycle': 'Trạng thái vận hành',
114
+ 'room.section.lifecycleHint': 'Housekeeping và lưu trú sở hữu chuyển trạng thái. Chỉ phòng sẵn sàng, không có khách hoặc công việc mở mới được lưu trữ.',
115
+ 'room.empty.prerequisite': 'Chưa thể tạo phòng',
116
+ 'room.empty.prerequisiteHint': 'Hãy tạo một cơ sở và ít nhất một loại phòng trước.',
117
+ 'room.empty.buildings': 'Cơ sở này chưa có tòa nhà.',
118
+ 'room.empty.buildingsHint': 'Thêm tòa nhà đầu tiên bằng biểu mẫu phía trên.',
119
+ 'room.empty.floors': 'Cơ sở này chưa có tầng.',
120
+ 'room.empty.floorsHint': 'Tạo tòa nhà rồi thêm tầng thuộc tòa đó.',
121
+ 'room.feedback.building-created': 'Đã thêm tòa nhà',
122
+ 'room.feedback.floor-created': 'Đã thêm tầng',
123
+ 'room.feedback.created': 'Đã tạo phòng vật lý',
124
+ 'room.feedback.saved': 'Đã lưu cấu hình phòng',
125
+ 'room.feedback.archived': 'Đã lưu trữ phòng',
126
+ 'room.feedback.archivedHint': 'Phòng đã rời khỏi lựa chọn lễ tân và buồng phòng nhưng toàn bộ lịch sử vẫn được giữ lại.',
127
+ 'room.feedback.restored': 'Đã khôi phục phòng',
128
+ 'room.feedback.restoredHint': 'Phòng đã trở lại trạng thái sẵn sàng để vận hành.',
129
+ 'room.feedback.savedHint': 'Cấu hình vật lý đã được lưu; tồn kho bán vẫn chỉ thay đổi qua availability ledger.',
130
+ 'building.detail.kicker': 'Hồ sơ tòa nhà',
131
+ 'building.action.save': 'Lưu tòa nhà',
132
+ 'building.action.back': 'Quay lại sơ đồ phòng',
133
+ 'building.action.archive': 'Lưu trữ tòa nhà',
134
+ 'building.action.restore': 'Khôi phục tòa nhà',
135
+ 'building.field.property': 'Cơ sở lưu trú',
136
+ 'building.field.code': 'Mã tòa nhà',
137
+ 'building.field.name': 'Tên tòa nhà',
138
+ 'building.field.sequence': 'Thứ tự vận hành',
139
+ 'building.section.information': 'Thông tin vị trí',
140
+ 'building.section.informationHint': 'Cơ sở của tòa nhà là bất biến sau khi tạo.',
141
+ 'building.section.settings': 'Thiết lập tòa nhà',
142
+ 'building.section.settingsHint': 'Tên, mã và thứ tự được dùng trên sơ đồ phòng và tác vụ vận hành.',
143
+ 'building.section.floors': 'Các tầng thuộc tòa nhà',
144
+ 'building.section.floorsHint': 'Tầng đã tạo không thể chuyển sang tòa nhà khác.',
145
+ 'building.section.lifecycle': 'Vòng đời vị trí',
146
+ 'building.section.lifecycleHint': 'Chỉ có thể lưu trữ sau khi mọi tầng đã lưu trữ và không còn phòng hoạt động gắn với tòa nhà.',
147
+ 'building.empty.floors': 'Tòa nhà này chưa có tầng.',
148
+ 'building.empty.floorsHint': 'Thêm tầng từ sơ đồ phòng của cơ sở lưu trú.',
149
+ 'building.feedback.saved': 'Đã lưu tòa nhà',
150
+ 'building.feedback.savedHint': 'Thông tin vị trí đã được cập nhật mà không thay đổi tồn kho bán.',
151
+ 'building.feedback.archived': 'Đã lưu trữ tòa nhà',
152
+ 'building.feedback.archivedHint': 'Tòa nhà không còn xuất hiện trong lựa chọn tạo hoặc chuyển phòng.',
153
+ 'building.feedback.restored': 'Đã khôi phục tòa nhà',
154
+ 'building.feedback.restoredHint': 'Tòa nhà đã sẵn sàng để cấu hình tầng và phòng vật lý.',
155
+ 'floor.detail.kicker': 'Hồ sơ tầng',
156
+ 'floor.action.save': 'Lưu tầng',
157
+ 'floor.action.back': 'Quay lại tòa nhà',
158
+ 'floor.action.archive': 'Lưu trữ tầng',
159
+ 'floor.action.restore': 'Khôi phục tầng',
160
+ 'floor.field.property': 'Cơ sở lưu trú',
161
+ 'floor.field.building': 'Tòa nhà',
162
+ 'floor.field.code': 'Mã tầng',
163
+ 'floor.field.name': 'Tên tầng',
164
+ 'floor.field.sequence': 'Thứ tự vận hành',
165
+ 'floor.section.information': 'Thông tin vị trí',
166
+ 'floor.section.informationHint': 'Cơ sở và tòa nhà của tầng là bất biến sau khi tạo.',
167
+ 'floor.section.settings': 'Thiết lập tầng',
168
+ 'floor.section.settingsHint': 'Tên, mã và thứ tự được dùng trên sơ đồ phòng và tác vụ vận hành.',
169
+ 'floor.section.rooms': 'Phòng thuộc tầng',
170
+ 'floor.section.roomsHint': 'Các phòng vật lý đang gắn trực tiếp với tầng này.',
171
+ 'floor.section.lifecycle': 'Vòng đời vị trí',
172
+ 'floor.section.lifecycleHint': 'Chỉ có thể lưu trữ khi không còn phòng hoạt động; khôi phục yêu cầu tòa nhà đang hoạt động.',
173
+ 'floor.empty.rooms': 'Tầng này chưa có phòng.',
174
+ 'floor.empty.roomsHint': 'Tạo hoặc chuyển phòng từ sơ đồ phòng của cơ sở lưu trú.',
175
+ 'floor.feedback.saved': 'Đã lưu tầng',
176
+ 'floor.feedback.savedHint': 'Thông tin vị trí đã được cập nhật mà không thay đổi tồn kho bán.',
177
+ 'floor.feedback.archived': 'Đã lưu trữ tầng',
178
+ 'floor.feedback.archivedHint': 'Tầng không còn xuất hiện trong lựa chọn tạo hoặc chuyển phòng.',
179
+ 'floor.feedback.restored': 'Đã khôi phục tầng',
180
+ 'floor.feedback.restoredHint': 'Tầng đã sẵn sàng để gắn phòng vật lý.',
181
+ 'screen.roomTypes.title': 'Loại phòng',
182
+ 'screen.roomTypes.empty': 'Cơ sở này chưa có loại phòng.',
183
+ 'screen.roomTypes.emptyHint': 'Mỗi loại phòng mô tả một sản phẩm lưu trú có thể bán.',
184
+ 'roomType.create.title': 'Tạo loại phòng',
185
+ 'roomType.create.hint': 'Khai báo sản phẩm lưu trú, sức chứa và thiết lập bán trước khi thêm phòng vật lý.',
186
+ 'roomType.detail.kicker': 'Hồ sơ loại phòng',
187
+ 'roomType.section.information': 'Thông tin bán',
188
+ 'roomType.section.informationHint': 'Cơ sở, sức chứa, giá dự phòng và chính sách hủy đang áp dụng cho loại phòng.',
189
+ 'roomType.section.settings': 'Thiết lập loại phòng',
190
+ 'roomType.section.settingsHint': 'Thay đổi nội dung được phát vào content feed để từng kết nối OTA xử lý độc lập.',
191
+ 'roomType.section.next': 'Cấu hình liên quan',
192
+ 'roomType.section.nextHint': 'Tiếp tục với phòng vật lý, giá bán, tồn kho và nội dung marketing.',
193
+ 'roomType.action.create': 'Tạo loại phòng',
194
+ 'roomType.action.save': 'Lưu loại phòng',
195
+ 'roomType.action.back': 'Quay lại danh sách loại phòng',
196
+ 'roomType.field.property': 'Cơ sở lưu trú',
197
+ 'roomType.field.code': 'Mã loại phòng',
198
+ 'roomType.field.codeHint': 'Mã ổn định dùng trong vận hành và tích hợp kênh bán.',
199
+ 'roomType.field.name': 'Tên nội bộ',
200
+ 'roomType.field.publicName': 'Tên hiển thị',
201
+ 'roomType.field.description': 'Mô tả công khai',
202
+ 'roomType.field.defaultCapacity': 'Số khách mặc định',
203
+ 'roomType.field.maxAdults': 'Người lớn tối đa',
204
+ 'roomType.field.maxChildren': 'Trẻ em tối đa',
205
+ 'roomType.field.maxInfants': 'Em bé tối đa',
206
+ 'roomType.field.maxExtraBeds': 'Giường phụ tối đa',
207
+ 'roomType.field.sizeSqm': 'Diện tích (m²)',
208
+ 'roomType.field.viewType': 'Hướng nhìn',
209
+ 'roomType.field.sharedBathroom': 'Phòng tắm dùng chung',
210
+ 'roomType.field.baseRate': 'Giá dự phòng',
211
+ 'roomType.field.baseRateHint': 'Giá cơ sở khi chưa có kế hoạch giá phù hợp; đơn vị theo tiền tệ công ty.',
212
+ 'roomType.field.color': 'Màu nhận diện',
213
+ 'roomType.field.cancellationPolicy': 'Chính sách hủy',
214
+ 'roomType.field.published': 'Sẵn sàng công bố',
215
+ 'roomType.field.publishedHint': 'Cho phép đưa loại phòng vào nội dung bán; từng kênh vẫn đồng bộ độc lập.',
216
+ 'roomType.value.noViewType': 'Chưa phân loại hướng nhìn',
217
+ 'roomType.value.inheritPolicy': 'Dùng chính sách mặc định của cơ sở',
218
+ 'roomType.value.capacity': '{default} mặc định · tối đa {adults} người lớn + {children} trẻ em',
219
+ 'roomType.view.city': 'Thành phố',
220
+ 'roomType.view.sea': 'Biển',
221
+ 'roomType.view.ocean': 'Đại dương',
222
+ 'roomType.view.garden': 'Vườn',
223
+ 'roomType.view.pool': 'Hồ bơi',
224
+ 'roomType.view.mountain': 'Núi',
225
+ 'roomType.view.lake': 'Hồ',
226
+ 'roomType.view.river': 'Sông',
227
+ 'roomType.view.courtyard': 'Sân trong',
228
+ 'roomType.metric.types': 'Loại phòng',
229
+ 'roomType.metric.published': 'Đã công bố',
230
+ 'roomType.metric.beds': 'Chỗ ngủ',
231
+ 'roomType.empty.noProperty': 'Chưa có cơ sở lưu trú',
232
+ 'roomType.empty.noPropertyHint': 'Tạo cơ sở trước khi khai báo loại phòng.',
233
+ 'roomType.feedback.created': 'Đã tạo loại phòng',
234
+ 'roomType.feedback.saved': 'Đã lưu loại phòng',
235
+ 'roomType.feedback.savedHint': 'Thiết lập bán và content feed đã được cập nhật trong cùng giao dịch.',
236
+ 'screen.content.title': 'Nội dung & hình ảnh',
237
+ 'screen.content.selection': 'Phạm vi nội dung',
238
+ 'screen.content.selectionHint': 'Chọn cơ sở hoặc loại phòng để quản lý thư viện marketing.',
239
+ 'screen.content.library': 'Thư viện hình ảnh',
240
+ 'screen.content.libraryHint': 'Ảnh được lưu một lần trong storage và dùng lại khi đồng bộ lên các kênh bán.',
241
+ 'screen.content.noProperty': 'Chưa có cơ sở để quản lý nội dung.',
242
+ 'screen.content.noPropertyHint': 'Tạo cơ sở lưu trú trước khi thêm hình ảnh marketing.',
243
+ 'screen.amenities.title': 'Danh mục tiện nghi',
244
+ 'screen.amenities.empty': 'Chưa có tiện nghi.',
245
+ 'screen.amenities.emptyHint': 'Tạo tiện nghi dùng cho cơ sở hoặc loại phòng.',
246
+ 'screen.policies.title': 'Chính sách hủy',
247
+ 'screen.policies.empty': 'Chưa có chính sách hủy.',
248
+ 'screen.policies.emptyHint': 'Tạo chính sách trước khi gán cho cơ sở hoặc loại phòng.',
249
+ 'screen.frontDesk.title': 'Bàn lễ tân',
250
+ 'screen.frontDesk.empty': 'Hôm nay chưa có lượt khách cần xử lý.',
251
+ 'screen.frontDesk.emptyHint': 'Các lượt đến, đang lưu trú và rời đi sẽ xuất hiện tại đây.',
252
+ 'screen.frontDesk.overdue': 'Lưu trú quá giờ trả phòng',
253
+ 'screen.frontDesk.overdueHint': '{count} lượt vẫn đang nhận phòng sau giờ trả dự kiến. Lễ tân cần gia hạn hoặc trả phòng để tồn phòng phản ánh đúng.',
254
+ 'screen.reservations.title': 'Đặt phòng',
255
+ 'screen.reservations.empty': 'Chưa có đặt phòng.',
256
+ 'screen.reservations.emptyHint': 'Đặt phòng trực tiếp và từ các kênh OTA sẽ được tổng hợp tại đây.',
257
+ 'screen.stays.title': 'Lưu trú',
258
+ 'screen.stays.empty': 'Chưa có hồ sơ lưu trú.',
259
+ 'screen.stays.emptyHint': 'Hồ sơ lưu trú được tạo cùng đặt phòng và theo khách đến nhận phòng.',
260
+ 'screen.folios.title': 'Hồ sơ dịch vụ',
261
+ 'screen.folios.empty': 'Chưa có hồ sơ dịch vụ.',
262
+ 'screen.folios.emptyHint': 'Tiền phòng và dịch vụ phát sinh được gom theo từng hồ sơ.',
263
+ 'screen.tapeChart.title': 'Lịch phòng',
264
+ 'screen.tapeChart.empty': 'Cơ sở này chưa có phòng để lập lịch.',
265
+ 'screen.tapeChart.emptyHint': 'Tạo phòng trước khi xếp khách vào lịch vận hành.',
266
+ 'screen.tapeChart.corner': 'Phòng / ngày',
267
+ 'screen.tapeChart.unassigned': 'Chưa xếp phòng',
268
+ 'screen.tapeChart.unassignedHint': 'Đặt phòng đã xác nhận nhưng chưa gán phòng cụ thể',
269
+ 'screen.cleaningTasks.title': 'Việc dọn phòng',
270
+ 'screen.cleaningTasks.empty': 'Không có việc dọn phòng cần xử lý.',
271
+ 'screen.cleaningTasks.emptyHint': 'Trả phòng sẽ tự tạo một việc dọn phòng ưu tiên cao.',
272
+ 'housekeeping.detail.title': 'Việc dọn phòng {code}',
273
+ 'housekeeping.detail.kicker': 'Hồ sơ công việc buồng phòng',
274
+ 'housekeeping.section.create': 'Tạo việc buồng phòng',
275
+ 'housekeeping.section.createHint': 'Dùng cho dọn phòng hằng ngày, kiểm tra hoặc bảo trì ngoài công việc tự tạo khi trả phòng.',
276
+ 'housekeeping.section.queue': 'Hàng việc buồng phòng',
277
+ 'housekeeping.section.queueHint': 'Mỗi việc có vòng đời riêng; trạng thái phòng được cập nhật cùng giao dịch khi bắt đầu hoặc hoàn tất.',
278
+ 'housekeeping.section.information': 'Thông tin công việc',
279
+ 'housekeeping.section.informationHint': 'Phòng, thời điểm, người phụ trách và ghi chú được giữ làm bằng chứng vận hành.',
280
+ 'housekeeping.action.create': 'Tạo công việc',
281
+ 'housekeeping.action.back': 'Quay lại hàng việc',
282
+ 'housekeeping.action.start': 'Bắt đầu thực hiện',
283
+ 'housekeeping.action.startHint': 'Nhận việc và chuyển phòng trống hoặc phòng bẩn sang trạng thái đang vệ sinh.',
284
+ 'housekeeping.action.complete': 'Hoàn thành công việc',
285
+ 'housekeeping.action.completeHint': 'Đóng công việc; phòng không có khách sẽ trở lại trạng thái sẵn sàng khi không còn việc đang làm.',
286
+ 'housekeeping.action.cancel': 'Hủy công việc',
287
+ 'housekeeping.action.cancelHint': 'Hủy việc chưa hoàn tất; phòng đang vệ sinh sẽ trở lại trạng thái cần xử lý.',
288
+ 'housekeeping.field.assigneeHint': 'Mã hoặc tên đăng nhập của nhân viên phụ trách.',
289
+ 'housekeeping.field.notes': 'Ghi chú',
290
+ 'housekeeping.field.startedAt': 'Bắt đầu lúc',
291
+ 'housekeeping.field.doneAt': 'Hoàn thành lúc',
292
+ 'housekeeping.feedback.created': 'Đã tạo công việc buồng phòng',
293
+ 'housekeeping.feedback.createdHint': 'Công việc mới đã vào hàng chờ của cơ sở.',
294
+ 'housekeeping.feedback.started': 'Đã bắt đầu công việc',
295
+ 'housekeeping.feedback.startedHint': 'Người phụ trách và thời điểm bắt đầu đã được ghi nhận.',
296
+ 'housekeeping.feedback.completed': 'Đã hoàn thành công việc',
297
+ 'housekeeping.feedback.completedHint': 'Công việc đã đóng và trạng thái phòng đã được tính lại.',
298
+ 'housekeeping.feedback.cancelled': 'Đã hủy công việc',
299
+ 'housekeeping.feedback.cancelledHint': 'Công việc được giữ trong lịch sử với trạng thái đã hủy.',
300
+ 'housekeeping.feedback.invalidHint': 'Kiểm tra phòng, loại việc và mức ưu tiên rồi thử lại.',
301
+ 'housekeeping.empty.rooms': 'Chưa có phòng để giao việc.',
302
+ 'housekeeping.empty.roomsHint': 'Tạo phòng trong cơ sở trước khi thêm công việc buồng phòng.',
303
+ 'housekeeping.rooms.detail.title': 'Phòng {code}',
304
+ 'housekeeping.rooms.detail.kicker': 'Hồ sơ vận hành phòng',
305
+ 'housekeeping.rooms.section.board': 'Tình trạng vận hành',
306
+ 'housekeeping.rooms.section.boardHint': 'Theo dõi trạng thái phòng độc lập với tồn kho bán; bảng chỉ hiển thị tối đa 500 phòng gần nhất theo bộ lọc.',
307
+ 'housekeeping.rooms.section.information': 'Thông tin phòng',
308
+ 'housekeeping.rooms.section.informationHint': 'Vị trí, loại phòng, khách đang ở và ghi chú được đọc từ hồ sơ vận hành hiện tại.',
309
+ 'housekeeping.rooms.section.tasks': 'Lịch sử công việc',
310
+ 'housekeeping.rooms.section.tasksHint': 'Hiển thị tối đa 20 công việc buồng phòng gần nhất của phòng này.',
311
+ 'housekeeping.rooms.metric.openTasks': 'Việc đang mở',
312
+ 'housekeeping.rooms.section.service': 'Tạm ngừng khai thác',
313
+ 'housekeeping.rooms.section.serviceHint': 'Chỉ phòng không có khách và không có việc buồng phòng đang mở mới được chuyển sang bảo trì hoặc ngừng khai thác.',
314
+ 'housekeeping.rooms.section.release': 'Bàn giao lại cho buồng phòng',
315
+ 'housekeeping.rooms.section.releaseHint': 'Phòng sau bảo trì trở về trạng thái chưa vệ sinh; hãy tạo việc kiểm tra hoặc dọn phòng trước khi bán lại.',
316
+ 'housekeeping.rooms.action.back': 'Quay lại bảng trạng thái',
317
+ 'housekeeping.rooms.action.takeOut': 'Tạm ngừng phòng',
318
+ 'housekeeping.rooms.action.release': 'Chuyển sang chờ vệ sinh',
319
+ 'housekeeping.rooms.action.openStay': 'Mở hồ sơ lưu trú',
320
+ 'housekeeping.rooms.field.targetStatus': 'Trạng thái tạm ngừng',
321
+ 'housekeeping.rooms.field.reason': 'Lý do / ghi chú vận hành',
322
+ 'housekeeping.rooms.feedback.updated': 'Đã cập nhật trạng thái phòng',
323
+ 'housekeeping.rooms.feedback.updatedHint': 'Thay đổi đã được chốt theo trạng thái bạn vừa xem; các cập nhật đồng thời sẽ bị từ chối.',
324
+ 'housekeeping.rooms.empty.tasks': 'Phòng này chưa có công việc buồng phòng.',
325
+ 'housekeeping.rooms.empty.tasksHint': 'Công việc tự động hoặc thủ công sẽ xuất hiện tại đây.',
326
+ 'screen.housekeepingRooms.title': 'Bảng trạng thái phòng',
327
+ 'screen.housekeepingRooms.empty': 'Cơ sở này chưa có phòng.',
328
+ 'screen.housekeepingRooms.emptyHint': 'Phòng sẽ xuất hiện tại đây sau khi được cấu hình.',
329
+ 'screen.ratePlans.title': 'Giá bán',
330
+ 'screen.ratePlans.create': 'Tạo kế hoạch giá',
331
+ 'screen.ratePlans.createHint': 'Tách giá bán khỏi nội dung loại phòng và chọn một giá mặc định cho mỗi chu kỳ.',
332
+ 'screen.ratePlans.noRoomTypes': 'Chưa có loại phòng để định giá.',
333
+ 'screen.ratePlans.noRoomTypesHint': 'Tạo loại phòng trước khi thêm kế hoạch giá.',
334
+ 'screen.ratePlans.list': 'Các kế hoạch giá',
335
+ 'screen.ratePlans.empty': 'Chưa có kế hoạch giá.',
336
+ 'screen.ratePlans.emptyHint': 'Giá cơ sở của loại phòng vẫn được dùng cho tới khi có kế hoạch mặc định.',
337
+ 'screen.inventory.title': 'Tồn kho & hạn chế bán',
338
+ 'screen.inventory.filters': 'Chọn lịch tồn kho',
339
+ 'screen.inventory.dateRange': 'Khoảng ngày hiển thị',
340
+ 'screen.inventory.allotment': 'Phân bổ phòng bán',
341
+ 'screen.inventory.allotmentHint': 'Tổng phòng không được thấp hơn số đã bán cộng số đang khóa.',
342
+ 'screen.inventory.noRoomType': 'Chưa chọn loại phòng.',
343
+ 'screen.inventory.noRoomTypeHint': 'Tạo và chọn loại phòng để quản lý lịch bán.',
344
+ 'screen.inventory.restrictions': 'Hạn chế bán',
345
+ 'screen.inventory.restrictionsHint': 'Áp dụng MinLOS, MaxLOS, Stop Sell, CTA và CTD cho cả khoảng ngày.',
346
+ 'screen.inventory.empty': 'Không có ngày tồn kho trong khoảng đã chọn.',
347
+ 'screen.inventory.emptyHint': 'Chọn một loại phòng và khoảng ngày hợp lệ.',
348
+ 'screen.services.title': 'Dịch vụ & phụ phí',
349
+ 'screen.nightAudit.title': 'Chốt ngày vận hành',
350
+ 'screen.stayNotices.title': 'Thông báo lưu trú',
351
+ 'nightAudit.section.selection': 'Cơ sở và ngày vận hành',
352
+ 'nightAudit.section.run': 'Thực hiện chốt ngày',
353
+ 'nightAudit.section.runHint': 'Tác vụ chạy riêng trên worker, ghi nhận dịch vụ theo đêm và tiền phòng định kỳ bằng khóa chống trùng.',
354
+ 'nightAudit.section.history': 'Lịch sử chốt ngày',
355
+ 'nightAudit.section.historyHint': 'Mỗi cơ sở có một bản ghi bền vững cho từng ngày; chạy lại chỉ bổ sung khoản còn thiếu.',
356
+ 'nightAudit.field.auditDate': 'Ngày vận hành',
357
+ 'nightAudit.action.preview': 'Xem trước',
358
+ 'nightAudit.action.run': 'Đưa vào hàng đợi',
359
+ 'nightAudit.metric.inHouse': 'Khách đang lưu trú',
360
+ 'nightAudit.metric.servicesDue': 'Dịch vụ đến hạn',
361
+ 'nightAudit.metric.rentDue': 'Kỳ tiền phòng đến hạn',
362
+ 'nightAudit.metric.estimated': 'Giá trị dự kiến',
363
+ 'nightAudit.metric.services': 'Dịch vụ đã ghi',
364
+ 'nightAudit.metric.rent': 'Tiền phòng đã ghi',
365
+ 'nightAudit.col.date': 'Ngày vận hành',
366
+ 'nightAudit.col.attempt': 'Lần chạy',
367
+ 'nightAudit.state.queued': 'Đang chờ',
368
+ 'nightAudit.state.running': 'Đang chạy',
369
+ 'nightAudit.state.completed': 'Hoàn tất',
370
+ 'nightAudit.state.failed': 'Lỗi',
371
+ 'nightAudit.feedback.queued': 'Đã đưa chốt ngày vào hàng đợi',
372
+ 'nightAudit.feedback.queuedHint': 'Worker hospitality sẽ xử lý độc lập; có thể tải lại trang để xem kết quả.',
373
+ 'nightAudit.feedback.invalidHint': 'Kiểm tra cơ sở và ngày vận hành rồi thử lại.',
374
+ 'nightAudit.empty.property': 'Chưa có cơ sở để chốt ngày.',
375
+ 'nightAudit.empty.propertyHint': 'Tạo cơ sở lưu trú trước khi chạy nghiệp vụ cuối ngày.',
376
+ 'nightAudit.empty.runs': 'Chưa có lần chốt ngày nào.',
377
+ 'nightAudit.empty.runsHint': 'Xem trước số liệu rồi đưa ngày vận hành vào hàng đợi.',
378
+ 'stayNotice.privacy.title': 'Không lưu bản kê khai chứa thông tin giấy tờ',
379
+ 'stayNotice.privacy.hint': 'Két chỉ hiển thị loại giấy tờ và 4 số cuối. Hồ sơ gửi được nhân viên lập trên kênh chính thức; hệ thống chỉ lưu dấu thời gian, người thao tác, mã bằng chứng và hàm băm đối chiếu.',
380
+ 'stayNotice.section.queue': 'Danh sách cần xử lý',
381
+ 'stayNotice.section.queueHint': 'Hồ sơ được chuẩn bị sau khi nhận phòng. Hạn thông báo là 23:00 cùng ngày, hoặc 08:00 ngày kế tiếp nếu khách đến sau 23:00.',
382
+ 'stayNotice.section.selected': 'Chi tiết hồ sơ đang chọn',
383
+ 'stayNotice.section.selectedHint': 'Chỉ ghi nhận đã gửi sau khi nhân viên thực sự hoàn tất trên kênh chính thức và có mã bằng chứng.',
384
+ 'stayNotice.col.guest': 'Khách lưu trú',
385
+ 'stayNotice.col.document': 'Giấy tờ đã che',
386
+ 'stayNotice.col.due': 'Hạn thông báo',
387
+ 'stayNotice.col.readiness': 'Mức sẵn sàng',
388
+ 'stayNotice.state.all': 'Tất cả trạng thái',
389
+ 'stayNotice.state.attention': 'Thiếu thông tin',
390
+ 'stayNotice.state.ready': 'Sẵn sàng gửi',
391
+ 'stayNotice.state.submitted': 'Đã ghi nhận gửi',
392
+ 'stayNotice.state.confirmed': 'Đã xác nhận',
393
+ 'stayNotice.reason.tourism': 'Du lịch',
394
+ 'stayNotice.reason.business': 'Công tác',
395
+ 'stayNotice.reason.family': 'Thăm thân',
396
+ 'stayNotice.reason.other': 'Lý do khác',
397
+ 'stayNotice.reason.select': 'Chọn lý do lưu trú',
398
+ 'stayNotice.channel.online': 'Cổng dịch vụ công trực tuyến',
399
+ 'stayNotice.channel.vneid': 'VNeID',
400
+ 'stayNotice.channel.email': 'Thư điện tử',
401
+ 'stayNotice.channel.phone': 'Điện thoại',
402
+ 'stayNotice.channel.software': 'Phần mềm thông báo lưu trú',
403
+ 'stayNotice.field.reason': 'Lý do lưu trú',
404
+ 'stayNotice.field.channel': 'Kênh đã sử dụng',
405
+ 'stayNotice.field.evidenceRef': 'Mã bằng chứng',
406
+ 'stayNotice.field.evidenceRefHint': 'Nhập mã biên nhận, mã hồ sơ, số sổ hoặc tham chiếu nội bộ có thể kiểm tra lại.',
407
+ 'stayNotice.field.receiptRef': 'Mã biên nhận xác nhận',
408
+ 'stayNotice.action.refresh': 'Kiểm tra lại dữ liệu',
409
+ 'stayNotice.action.recordSubmission': 'Ghi nhận đã gửi',
410
+ 'stayNotice.action.confirm': 'Xác nhận hoàn tất',
411
+ 'stayNotice.issue.guest_partner_missing': 'chưa gắn hồ sơ khách',
412
+ 'stayNotice.issue.document_missing': 'chưa có giấy tờ',
413
+ 'stayNotice.issue.document_number_missing': 'giấy tờ chưa có số',
414
+ 'stayNotice.issue.document_birth_date_missing': 'giấy tờ chưa có ngày sinh',
415
+ 'stayNotice.issue.property_address_missing': 'địa chỉ cơ sở chưa đầy đủ',
416
+ 'stayNotice.issue.stay_duration_over_30_days': 'thời gian lưu trú vượt quá 30 ngày',
417
+ 'stayNotice.issue.notice_source_missing': 'thiếu dữ liệu nguồn',
418
+ 'stayNotice.value.complete': 'Đủ dữ liệu bắt buộc',
419
+ 'stayNotice.value.missing': 'Chưa có',
420
+ 'stayNotice.feedback.refreshed': 'Đã yêu cầu kiểm tra lại',
421
+ 'stayNotice.feedback.refreshedHint': 'Worker sẽ chuẩn bị lại hồ sơ từ dữ liệu hiện tại.',
422
+ 'stayNotice.feedback.submitted': 'Đã ghi nhận việc gửi',
423
+ 'stayNotice.feedback.submittedHint': 'Dấu thời gian, người thao tác và mã bằng chứng đã được lưu.',
424
+ 'stayNotice.feedback.confirmed': 'Đã xác nhận hoàn tất',
425
+ 'stayNotice.feedback.confirmedHint': 'Hồ sơ đã có bằng chứng xác nhận để đối chiếu.',
426
+ 'stayNotice.feedback.invalidHint': 'Chưa thể thực hiện. Kiểm tra trạng thái, dữ liệu bắt buộc và mã bằng chứng rồi thử lại.',
427
+ 'stayNotice.empty.property': 'Chưa có cơ sở để quản lý thông báo lưu trú.',
428
+ 'stayNotice.empty.propertyHint': 'Tạo cơ sở lưu trú trước khi tiếp nhận khách.',
429
+ 'stayNotice.empty.rows': 'Không có hồ sơ ở bộ lọc này.',
430
+ 'stayNotice.empty.rowsHint': 'Hồ sơ sẽ xuất hiện sau khi nhận phòng và worker hoàn tất chuẩn bị.',
431
+ 'services.metric.fees': 'Phụ phí cấu hình',
432
+ 'services.metric.extras': 'Dịch vụ dự kiến',
433
+ 'services.metric.posted': 'Khoản đã ghi nhận',
434
+ 'services.metric.postedValue': 'Giá trị đã ghi nhận',
435
+ 'services.section.fees': 'Phụ phí của cơ sở',
436
+ 'services.section.feesHint': 'Khai báo các khoản phí công khai để kết nối OTA lấy từ cùng một nguồn dữ liệu.',
437
+ 'services.section.intentions': 'Dịch vụ dự kiến',
438
+ 'services.section.intentionsHint': 'Gắn sản phẩm dịch vụ vào đặt phòng hoặc lượt lưu trú trước khi phát sinh thực tế.',
439
+ 'services.section.post': 'Ghi nhận phát sinh',
440
+ 'services.section.postHint': 'Mỗi lần ghi nhận có khóa chống trùng; lịch sử đã phát sinh không thể sửa ngược.',
441
+ 'services.section.ledger': 'Sổ dịch vụ vận hành',
442
+ 'services.section.ledgerHint': 'Đây là số liệu vận hành trên hồ sơ dịch vụ; chứng từ kế toán và hóa đơn sẽ được nối sau.',
443
+ 'services.form.fee': 'Khai báo phụ phí',
444
+ 'services.form.intention': 'Thêm dịch vụ dự kiến',
445
+ 'services.action.saveFee': 'Lưu phụ phí',
446
+ 'services.action.addIntention': 'Thêm dịch vụ',
447
+ 'services.action.post': 'Ghi nhận phát sinh',
448
+ 'services.col.target': 'Đối tượng',
449
+ 'services.col.service': 'Dịch vụ',
450
+ 'services.col.recurrence': 'Chu kỳ',
451
+ 'services.col.unitPrice': 'Đơn giá',
452
+ 'services.col.materialized': 'Đã ghi nhận',
453
+ 'services.col.folio': 'Hồ sơ',
454
+ 'services.field.target': 'Đặt phòng / lưu trú',
455
+ 'services.field.product': 'Sản phẩm dịch vụ',
456
+ 'services.field.description': 'Diễn giải',
457
+ 'services.field.descriptionHint': 'Để trống để dùng tên sản phẩm',
458
+ 'services.field.unitPriceHint': 'Để trống để dùng giá niêm yết của sản phẩm.',
459
+ 'services.field.intention': 'Dịch vụ dự kiến',
460
+ 'services.field.serviceDate': 'Ngày phục vụ',
461
+ 'services.field.serviceDateHint': 'Bắt buộc với dịch vụ tính theo đêm.',
462
+ 'services.field.postQuantityHint': 'Bắt buộc với dịch vụ tính theo số lượng.',
463
+ 'services.target.reservation': 'Đặt phòng',
464
+ 'services.target.stay': 'Lưu trú',
465
+ 'services.value.pending': 'Chưa phát sinh',
466
+ 'services.value.posted': '{count} lần · {amount}',
467
+ 'services.empty.fees': 'Chưa khai báo phụ phí.',
468
+ 'services.empty.feesHint': 'Phụ phí hoạt động sẽ sẵn sàng cho luồng nội dung OTA.',
469
+ 'services.empty.catalogue': 'Chưa đủ dữ liệu để thêm dịch vụ.',
470
+ 'services.empty.catalogueHint': 'Cần ít nhất một sản phẩm bán được và một đặt phòng đang hoạt động.',
471
+ 'services.empty.intentions': 'Chưa có dịch vụ dự kiến.',
472
+ 'services.empty.intentionsHint': 'Thêm minibar, bữa sáng, spa hoặc dịch vụ khác cho khách.',
473
+ 'services.empty.post': 'Không có dịch vụ đang hoạt động để ghi nhận.',
474
+ 'services.empty.postHint': 'Tạo dịch vụ dự kiến trước khi ghi nhận phát sinh.',
475
+ 'services.empty.ledger': 'Chưa có dịch vụ phát sinh.',
476
+ 'services.empty.ledgerHint': 'Các khoản đã ghi nhận vào hồ sơ dịch vụ sẽ xuất hiện tại đây.',
477
+ 'metric.properties': 'Cơ sở đang hoạt động',
478
+ 'metric.rooms': 'Tổng số phòng',
479
+ 'metric.available': 'Phòng sẵn sàng',
480
+ 'metric.occupied': 'Phòng có khách',
481
+ 'metric.attention': 'Cần xử lý',
482
+ 'metric.arrivals': 'Khách đến hôm nay',
483
+ 'metric.inHouse': 'Đang lưu trú',
484
+ 'metric.departures': 'Khách rời hôm nay',
485
+ 'metric.overdue': 'Quá giờ trả phòng',
486
+ 'metric.openFolios': 'Hồ sơ đang mở',
487
+ 'metric.inventoryDays': 'Số ngày',
488
+ 'metric.minimumAvailable': 'Ít phòng trống nhất',
489
+ 'metric.sold': 'Đêm phòng đã bán',
490
+ 'metric.blocked': 'Đêm phòng đang khóa',
491
+ 'content.metric.target': 'Đối tượng đang chọn',
492
+ 'content.metric.images': 'Số hình ảnh',
493
+ 'content.metric.completeness': 'Mức hoàn thiện',
494
+ 'content.metric.fields': '{completed}/{total} nhóm dữ liệu đã có',
495
+ 'content.target.none': 'Chưa chọn',
496
+ 'content.target.property': 'Thông tin chung của cơ sở',
497
+ 'content.target.roomType': 'Loại phòng',
498
+ 'content.field.property': 'Cơ sở lưu trú',
499
+ 'content.field.target': 'Đối tượng nội dung',
500
+ 'content.field.category': 'Nhóm hình ảnh',
501
+ 'content.field.caption': 'Chú thích',
502
+ 'content.category.exterior': 'Ngoại cảnh',
503
+ 'content.category.lobby': 'Sảnh',
504
+ 'content.category.room': 'Phòng',
505
+ 'content.category.bathroom': 'Phòng tắm',
506
+ 'content.category.restaurant': 'Nhà hàng',
507
+ 'content.category.pool': 'Hồ bơi',
508
+ 'content.category.other': 'Khác',
509
+ 'content.media.empty': 'Chưa có hình ảnh cho đối tượng này.',
510
+ 'content.media.primary': 'Ảnh đại diện',
511
+ 'content.media.makePrimary': 'Đặt làm ảnh đại diện',
512
+ 'content.media.moveUp': 'Đưa lên trước',
513
+ 'content.media.moveDown': 'Đưa xuống sau',
514
+ 'content.media.remove': 'Xóa hình ảnh',
515
+ 'content.media.choose': 'Chọn ảnh từ máy',
516
+ 'content.media.add': 'Thêm hình ảnh',
517
+ 'content.metadata.group': 'Thông tin mô tả hình ảnh',
518
+ 'content.action.saveMetadata': 'Lưu mô tả',
519
+ 'content.feedback.saved': 'Đã cập nhật nội dung',
520
+ 'content.feedback.savedHint': 'Thay đổi đã vào change feed để các kết nối OTA xử lý độc lập.',
521
+ 'content.feedback.invalid': 'Không thể cập nhật nội dung',
522
+ 'content.feedback.invalidHint': 'Kiểm tra lại nhóm ảnh và phần mô tả.',
523
+ 'col.code': 'Mã',
524
+ 'col.name': 'Tên',
525
+ 'col.type': 'Loại',
526
+ 'col.location': 'Địa điểm',
527
+ 'col.stars': 'Hạng sao',
528
+ 'col.roomType': 'Loại phòng',
529
+ 'col.capacity': 'Sức chứa',
530
+ 'col.status': 'Trạng thái',
531
+ 'col.rooms': 'Số phòng',
532
+ 'col.baseRate': 'Giá cơ sở',
533
+ 'col.published': 'Công khai',
534
+ 'col.scope': 'Phạm vi',
535
+ 'col.policy': 'Chính sách',
536
+ 'col.freeCancellation': 'Hủy miễn phí',
537
+ 'col.penalty': 'Phí phạt',
538
+ 'col.guest': 'Khách',
539
+ 'col.provider': 'Nguồn',
540
+ 'col.checkIn': 'Nhận phòng',
541
+ 'col.checkOut': 'Trả phòng',
542
+ 'col.amount': 'Thành tiền',
543
+ 'col.room': 'Phòng',
544
+ 'col.guests': 'Số khách',
545
+ 'col.folio': 'Hồ sơ',
546
+ 'col.stays': 'Lượt lưu trú',
547
+ 'col.assignee': 'Người dọn',
548
+ 'col.requestedAt': 'Yêu cầu lúc',
549
+ 'col.priority': 'Ưu tiên',
550
+ 'col.rateType': 'Chu kỳ giá',
551
+ 'col.mealPlan': 'Gói ăn uống',
552
+ 'col.los': 'Min / Max LOS',
553
+ 'col.default': 'Mặc định',
554
+ 'col.date': 'Ngày',
555
+ 'col.total': 'Tổng phòng bán',
556
+ 'col.sold': 'Đã bán',
557
+ 'col.blocked': 'Đang khóa',
558
+ 'col.available': 'Còn trống',
559
+ 'col.restrictions': 'Hạn chế',
560
+ 'col.quantity': 'Số lượng',
561
+ 'value.yes': 'Có',
562
+ 'value.no': 'Không',
563
+ 'value.active': 'Đang hoạt động',
564
+ 'value.inactive': 'Ngừng hoạt động',
565
+ 'value.published': 'Đã công bố',
566
+ 'value.draft': 'Bản nháp',
567
+ 'value.hours': '{count} giờ',
568
+ 'value.percent': '{count}%',
569
+ 'accommodation.hotel': 'Khách sạn',
570
+ 'accommodation.resort': 'Khu nghỉ dưỡng',
571
+ 'accommodation.aparthotel': 'Khách sạn căn hộ',
572
+ 'accommodation.hostel': 'Nhà nghỉ tập thể',
573
+ 'accommodation.villa': 'Biệt thự',
574
+ 'accommodation.homestay': 'Nhà ở có phòng cho thuê',
575
+ 'accommodation.boutique': 'Khách sạn boutique',
576
+ 'accommodation.serviced_apartment': 'Căn hộ dịch vụ',
577
+ 'roomStatus.available': 'Sẵn sàng',
578
+ 'roomStatus.occupied': 'Có khách',
579
+ 'roomStatus.dirty': 'Chưa vệ sinh',
580
+ 'roomStatus.cleaning': 'Đang vệ sinh',
581
+ 'roomStatus.maintenance': 'Bảo trì',
582
+ 'roomStatus.out_of_order': 'Ngừng khai thác',
583
+ 'roomStatus.all': 'Tất cả trạng thái',
584
+ 'cleaningType.checkout_clean': 'Dọn sau trả phòng',
585
+ 'cleaningType.daily_clean': 'Dọn hằng ngày',
586
+ 'cleaningType.maintenance': 'Bảo trì',
587
+ 'cleaningType.inspection': 'Kiểm tra',
588
+ 'cleaningPriority.normal': 'Thường',
589
+ 'cleaningPriority.urgent': 'Gấp',
590
+ 'cleaningState.all': 'Tất cả trạng thái',
591
+ 'cleaningState.todo': 'Cần làm',
592
+ 'cleaningState.in_progress': 'Đang làm',
593
+ 'cleaningState.done': 'Hoàn thành',
594
+ 'cleaningState.cancelled': 'Đã hủy',
595
+ 'amenityScope.property': 'Cơ sở',
596
+ 'amenityScope.room': 'Phòng',
597
+ 'bed.single': 'Giường đơn',
598
+ 'bed.double': 'Giường đôi',
599
+ 'bed.queen': 'Giường queen',
600
+ 'bed.king': 'Giường king',
601
+ 'bed.sofa': 'Sofa giường',
602
+ 'bed.bunk': 'Giường tầng',
603
+ 'policy.flexible': 'Linh hoạt',
604
+ 'policy.moderate': 'Trung bình',
605
+ 'policy.strict': 'Nghiêm ngặt',
606
+ 'policy.non_refundable': 'Không hoàn hủy',
607
+ 'contact.general': 'Liên hệ chung',
608
+ 'contact.frontdesk': 'Lễ tân',
609
+ 'contact.reservation': 'Đặt phòng',
610
+ 'propertyCharge.parking': 'Phí đỗ xe',
611
+ 'propertyCharge.city_tax': 'Thuế thành phố',
612
+ 'propertyCharge.internet': 'Phí internet',
613
+ 'propertyCharge.resort_fee': 'Phí khu nghỉ dưỡng',
614
+ 'propertyCharge.other': 'Phụ phí khác',
615
+ 'extraRecurrence.once': 'Một lần',
616
+ 'extraRecurrence.per_night': 'Mỗi đêm',
617
+ 'extraRecurrence.per_unit': 'Theo số lượng',
618
+ 'chargeState.active': 'Đã ghi nhận',
619
+ 'chargeState.void': 'Đã hủy',
620
+ 'bookingType.nightly': 'Theo đêm',
621
+ 'bookingType.hourly': 'Theo giờ',
622
+ 'bookingType.weekly': 'Theo tuần',
623
+ 'bookingType.monthly': 'Theo tháng',
624
+ 'reservation.feedback.saved': 'Đã xác nhận đặt phòng',
625
+ 'reservation.feedback.savedHint': 'Đặt phòng, hồ sơ lưu trú, hồ sơ dịch vụ và tồn kho đã được ghi trong cùng giao dịch.',
626
+ 'reservation.feedback.quoted': 'Đã kiểm tra giá và phòng trống',
627
+ 'reservation.feedback.quotedHint': 'Báo giá là ảnh chụp hiện tại; tồn kho sẽ được kiểm tra lại khi xác nhận.',
628
+ 'reservation.feedback.invalidHint': 'Kiểm tra khách, thời gian, giá và các hạn chế bán được hiển thị bên dưới.',
629
+ 'reservation.feedback.checkedIn': 'Đã nhận phòng',
630
+ 'reservation.feedback.checkedInHint': 'Phòng đã được xếp, hồ sơ lưu trú đã mở và thông báo lưu trú đang được chuẩn bị.',
631
+ 'reservation.feedback.checkedOut': 'Đã trả phòng',
632
+ 'reservation.feedback.checkedOutHint': 'Hồ sơ lưu trú đã đóng, phòng chuyển sang chờ dọn và công việc buồng phòng đã được tạo.',
633
+ 'reservation.feedback.checkedOutEarly': 'Đã trả phòng sớm',
634
+ 'reservation.feedback.checkedOutEarlyHint': 'Tồn phòng các đêm còn lại đã được hoàn; các khoản phí được giữ nguyên để lễ tân đối soát.',
635
+ 'reservation.feedback.cancelled': 'Đã hủy đặt phòng',
636
+ 'reservation.feedback.cancelledHint': 'Tồn phòng đã được hoàn lại và các khoản phí chưa hoàn tất đã được vô hiệu hóa.',
637
+ 'reservation.feedback.amended': 'Đã cập nhật đặt phòng',
638
+ 'reservation.feedback.amendedHint': 'Lịch ở, tồn phòng, khách chính và tiền phòng đã được cập nhật trong cùng giao dịch.',
639
+ 'reservation.feedback.departureAdjusted': 'Đã cập nhật ngày trả phòng',
640
+ 'reservation.feedback.departureAdjustedHint': 'Lịch lưu trú, tồn phòng và tiền phòng đã được đồng bộ trong cùng giao dịch.',
641
+ 'reservation.feedback.noShow': 'Đã ghi nhận khách không đến',
642
+ 'reservation.feedback.noShowHint': 'Tồn phòng đã được hoàn, hồ sơ lưu trú đã đóng và các khoản phí hiện có được giữ lại để đối soát.',
643
+ 'reservation.field.property': 'Cơ sở lưu trú',
644
+ 'reservation.field.code': 'Mã đặt phòng',
645
+ 'reservation.field.codeHint': 'Có thể sửa theo quy ước của lễ tân.',
646
+ 'reservation.field.guest': 'Khách đứng tên',
647
+ 'reservation.field.roomType': 'Loại phòng',
648
+ 'reservation.field.bookingType': 'Chu kỳ đặt',
649
+ 'reservation.field.adults': 'Người lớn',
650
+ 'reservation.field.children': 'Trẻ em',
651
+ 'reservation.field.rate': 'Đơn giá',
652
+ 'reservation.field.rateHint': 'Để trống để dùng giá mặc định đang hoạt động.',
653
+ 'reservation.field.room': 'Phòng thực tế',
654
+ 'reservation.field.billingMode': 'Cách tính tiền',
655
+ 'reservation.field.folio': 'Hồ sơ dịch vụ',
656
+ 'reservation.field.cancelReason': 'Lý do hủy',
657
+ 'reservation.field.cancelReasonHint': 'Lưu lý do để lễ tân và bộ phận kinh doanh cùng theo dõi.',
658
+ 'reservation.field.noShowReason': 'Ghi chú khách không đến',
659
+ 'reservation.field.noShowReasonHint': 'Bắt buộc ghi nhận căn cứ để ca sau và bộ phận kinh doanh có thể đối soát.',
660
+ 'reservation.value.selectGuest': 'Chọn khách',
661
+ 'reservation.value.unassigned': 'Chưa xếp phòng',
662
+ 'reservation.action.quote': 'Kiểm tra giá và phòng',
663
+ 'reservation.action.create': 'Xác nhận đặt phòng',
664
+ 'reservation.action.back': 'Quay lại danh sách',
665
+ 'reservation.action.checkIn': 'Nhận phòng',
666
+ 'reservation.action.checkInHint': 'Chọn một phòng sẵn sàng đúng loại đã đặt rồi xác nhận khách đến.',
667
+ 'reservation.action.checkOut': 'Trả phòng',
668
+ 'reservation.action.checkOutHint': 'Đóng kỳ lưu trú, chuyển phòng sang chờ dọn và tạo công việc buồng phòng.',
669
+ 'reservation.action.adjustDeparture': 'Điều chỉnh ngày trả phòng',
670
+ 'reservation.action.adjustDepartureHint': 'Gia hạn hoặc rút ngắn kỳ đang lưu trú; hệ thống sẽ kiểm tra lại tồn phòng và tiền phòng.',
671
+ 'reservation.action.cancel': 'Hủy đặt phòng',
672
+ 'reservation.action.cancelHint': 'Hủy đặt phòng sẽ hoàn tồn phòng và đóng hồ sơ liên quan.',
673
+ 'reservation.action.amend': 'Cập nhật đặt phòng',
674
+ 'reservation.action.amendHint': 'Điều chỉnh đặt phòng trực tiếp trước khi nhận phòng; hệ thống sẽ kiểm tra lại hạn chế và tồn phòng.',
675
+ 'reservation.action.noShow': 'Đánh dấu khách không đến',
676
+ 'reservation.action.noShowHint': 'Chỉ thực hiện từ giờ nhận phòng; thao tác sẽ hoàn tồn phòng nhưng giữ nguyên phí để đối soát.',
677
+ 'reservation.detail.title': 'Đặt phòng {code}',
678
+ 'reservation.detail.kicker': 'Hồ sơ đặt phòng',
679
+ 'reservation.detail.stay': 'Thông tin lưu trú',
680
+ 'reservation.detail.stayHint': 'Thông tin bán phòng, khách ở và hồ sơ dịch vụ của đặt phòng.',
681
+ 'reservation.section.intake': 'Nhận đặt phòng trực tiếp',
682
+ 'reservation.section.intakeHint': 'Hỗ trợ theo đêm, tuần và tháng. Đặt theo giờ sẽ được mở khi có tồn kho theo khung giờ.',
683
+ 'reservation.section.quote': 'Báo giá sẵn sàng',
684
+ 'reservation.section.quoteHint': 'Xác nhận sẽ kiểm tra lại hạn chế bán và khóa tồn kho bằng giao dịch chống bán vượt.',
685
+ 'reservation.section.list': 'Danh sách đặt phòng',
686
+ 'reservation.section.listHint': 'Đặt trực tiếp và từ OTA cùng xuất hiện trong một sổ vận hành.',
687
+ 'reservation.quote.rate': 'Đơn giá áp dụng',
688
+ 'reservation.quote.quantity': 'Số kỳ tính tiền',
689
+ 'reservation.quote.availability': 'Phòng trống ít nhất',
690
+ 'reservation.quote.total': 'Tổng tiền phòng',
691
+ 'reservation.empty.partners': 'Chưa có khách để đứng tên đặt phòng.',
692
+ 'reservation.empty.partnersHint': 'Tạo khách hàng trong danh bạ trước khi nhận đặt phòng.',
693
+ 'reservation.empty.roomTypes': 'Cơ sở này chưa có loại phòng để bán.',
694
+ 'reservation.empty.roomTypesHint': 'Tạo loại phòng và phòng vật lý trước khi nhận đặt phòng.',
695
+ 'reservation.empty.availableRooms': 'Không còn phòng sẵn sàng đúng loại đã đặt.',
696
+ 'reservation.empty.availableRoomsHint': 'Kiểm tra bảng phòng hoặc hoàn tất công việc buồng phòng trước khi nhận khách.',
697
+ 'stay.detail.title': 'Lưu trú {code}',
698
+ 'stay.detail.kicker': 'Hồ sơ lưu trú',
699
+ 'stay.action.back': 'Quay lại danh sách lưu trú',
700
+ 'stay.action.moveRoom': 'Chuyển phòng',
701
+ 'stay.action.addGuest': 'Thêm khách lưu trú',
702
+ 'stay.action.saveDocument': 'Lưu giấy tờ tùy thân',
703
+ 'stay.feedback.guestAdded': 'Đã thêm khách lưu trú',
704
+ 'stay.feedback.guestAddedHint': 'Danh sách khách đã được cập nhật; thông báo lưu trú sẽ được chuẩn bị lại nếu khách đang ở.',
705
+ 'stay.feedback.documentSaved': 'Đã lưu giấy tờ tùy thân',
706
+ 'stay.feedback.documentSavedHint': 'Hồ sơ lễ tân đã được cập nhật; số giấy tờ đầy đủ không xuất hiện trong danh sách vận hành.',
707
+ 'stay.feedback.roomMoved': 'Đã chuyển phòng',
708
+ 'stay.feedback.roomMovedHint': 'Phân phòng mới đã có hiệu lực; phòng cũ chuyển sang chờ dọn và công việc buồng phòng đã được tạo.',
709
+ 'stay.field.room': 'Phòng hiện tại',
710
+ 'stay.field.newRoom': 'Phòng chuyển đến',
711
+ 'stay.field.moveReason': 'Lý do chuyển phòng',
712
+ 'stay.field.moveReasonHint': 'Ghi lý do vận hành để theo dõi lịch sử phân phòng.',
713
+ 'stay.field.nextBillDate': 'Ngày tính tiền tiếp theo',
714
+ 'stay.field.reservation': 'Đặt phòng nguồn',
715
+ 'stay.field.guestName': 'Họ tên khách',
716
+ 'stay.field.linkedPartner': 'Liên kết danh bạ',
717
+ 'stay.field.linkedPartnerHint': 'Không bắt buộc; dùng khi khách đã có hồ sơ trong danh bạ.',
718
+ 'stay.assignment.start': 'Bắt đầu',
719
+ 'stay.assignment.end': 'Kết thúc',
720
+ 'stay.guest.role': 'Vai trò',
721
+ 'stay.guest.primary': 'Khách chính',
722
+ 'stay.guest.companion': 'Khách đi cùng',
723
+ 'stay.document.guest': 'Khách trên giấy tờ',
724
+ 'stay.document.type': 'Loại giấy tờ',
725
+ 'stay.document.number': 'Số giấy tờ',
726
+ 'stay.document.numberHint': 'Số đầy đủ chỉ được lưu trong hồ sơ bảo vệ và sẽ được che trên màn hình.',
727
+ 'stay.document.fullName': 'Họ tên trên giấy tờ',
728
+ 'stay.document.dateOfBirth': 'Ngày sinh',
729
+ 'stay.document.gender': 'Giới tính',
730
+ 'stay.document.genderUnknown': 'Chưa xác định',
731
+ 'stay.document.nationality': 'Quốc tịch',
732
+ 'stay.document.nationalityHint': 'Dùng mã quốc gia hai chữ cái, ví dụ VN.',
733
+ 'stay.document.permanentAddress': 'Địa chỉ thường trú',
734
+ 'stay.document.issueDate': 'Ngày cấp',
735
+ 'stay.document.issuePlace': 'Nơi cấp',
736
+ 'stay.document.readiness': 'Mức hoàn thiện',
737
+ 'stay.document.ready': 'Sẵn sàng',
738
+ 'stay.document.attention': 'Cần bổ sung',
739
+ 'stay.section.information': 'Thông tin kỳ lưu trú',
740
+ 'stay.section.informationHint': 'Lịch ở, loại phòng, cách tính tiền và hồ sơ vận hành liên quan.',
741
+ 'stay.section.assignments': 'Lịch sử phân phòng',
742
+ 'stay.section.assignmentsHint': 'Mỗi lần chuyển phòng tạo một kỳ phân phòng mới, không ghi đè lịch sử.',
743
+ 'stay.section.guests': 'Khách lưu trú',
744
+ 'stay.section.guestsHint': 'Khách chính và khách đi cùng dùng chung kỳ lưu trú này.',
745
+ 'stay.section.documents': 'Giấy tờ tùy thân',
746
+ 'stay.section.documentsHint': 'Nhập tại quầy cho khách đã đăng ký trong kỳ lưu trú; danh sách chỉ hiện dữ liệu đã che.',
747
+ 'stay.empty.assignments': 'Chưa có lần phân phòng.',
748
+ 'stay.empty.assignmentsHint': 'Lần phân phòng đầu tiên được tạo khi lễ tân nhận khách.',
749
+ 'stay.empty.guests': 'Chưa có khách trong kỳ lưu trú.',
750
+ 'stay.empty.guestsHint': 'Thêm khách chính hoặc khách đi cùng để hoàn thiện hồ sơ.',
751
+ 'stay.empty.documents': 'Chưa có giấy tờ tùy thân.',
752
+ 'stay.empty.documentsHint': 'Nhập giấy tờ của khách để hoàn thiện hồ sơ nhận phòng.',
753
+ 'stay.empty.documentGuests': 'Chưa có khách liên kết danh bạ.',
754
+ 'stay.empty.documentGuestsHint': 'Liên kết khách lưu trú với một hồ sơ danh bạ trước khi nhập giấy tờ tùy thân.',
755
+ 'stay.empty.availableRooms': 'Không còn phòng sẵn sàng để chuyển đến.',
756
+ 'stay.empty.availableRoomsHint': 'Kiểm tra trạng thái phòng hoặc hoàn tất công việc buồng phòng trước.',
757
+ 'stay.value.noLinkedPartner': 'Không liên kết danh bạ',
758
+ 'stay.validation.moveRequired': 'Chọn phòng chuyển đến và nhập lý do chuyển phòng.',
759
+ 'folio.detail.title': 'Hồ sơ {code}',
760
+ 'folio.detail.kicker': 'Hồ sơ dịch vụ vận hành',
761
+ 'folio.action.back': 'Quay lại danh sách hồ sơ',
762
+ 'folio.action.postCharge': 'Ghi nhận khoản phí',
763
+ 'folio.action.voidCharge': 'Hủy khoản phí',
764
+ 'folio.feedback.chargePosted': 'Đã ghi nhận khoản phí',
765
+ 'folio.feedback.chargePostedHint': 'Tổng hồ sơ đã được cập nhật trong cùng giao dịch.',
766
+ 'folio.feedback.chargeVoided': 'Đã hủy khoản phí',
767
+ 'folio.feedback.chargeVoidedHint': 'Dòng cũ được giữ làm bằng chứng và tổng hồ sơ đã được điều chỉnh.',
768
+ 'folio.notice.operational': 'Chỉ là hồ sơ vận hành',
769
+ 'folio.notice.operationalHint': 'Các dòng này chưa phải bút toán, thanh toán hoặc hóa đơn; kết nối kế toán sẽ được thực hiện sau.',
770
+ 'folio.metric.activeTotal': 'Tổng đang hiệu lực',
771
+ 'folio.metric.activeCharges': 'Khoản phí hiệu lực',
772
+ 'folio.section.information': 'Thông tin hồ sơ',
773
+ 'folio.section.informationHint': 'Khách chịu phí, thời điểm mở và trạng thái vòng đời vận hành.',
774
+ 'folio.section.charges': 'Các khoản phí',
775
+ 'folio.section.chargesHint': 'Tiền phòng, dịch vụ và giảm giá được giữ theo từng dòng có thể kiểm toán.',
776
+ 'folio.section.correction': 'Điều chỉnh sai sót',
777
+ 'folio.section.correctionHint': 'Hủy dòng sai và giữ nguyên bằng chứng; không xóa hoặc sửa lịch sử.',
778
+ 'folio.section.stays': 'Các kỳ lưu trú',
779
+ 'folio.section.staysHint': 'Một hồ sơ có thể gom một hoặc nhiều kỳ lưu trú của cùng khách chịu phí.',
780
+ 'folio.field.openedAt': 'Mở lúc',
781
+ 'folio.field.closedAt': 'Đóng lúc',
782
+ 'folio.field.charge': 'Khoản phí cần hủy',
783
+ 'folio.field.voidReason': 'Lý do hủy',
784
+ 'folio.field.voidReasonHint': 'Bắt buộc ghi lý do vận hành để kiểm tra về sau.',
785
+ 'folio.charge.occurredAt': 'Thời điểm',
786
+ 'folio.charge.description': 'Diễn giải',
787
+ 'folio.charge.roomDescription': 'Tiền phòng theo kỳ đặt',
788
+ 'folio.charge.type': 'Loại phí',
789
+ 'folio.charge.stay': 'Kỳ lưu trú',
790
+ 'folio.charge.quantity': 'Số lượng',
791
+ 'folio.charge.unitPrice': 'Đơn giá',
792
+ 'folio.empty.charges': 'Chưa có khoản phí.',
793
+ 'folio.empty.chargesHint': 'Tiền phòng và dịch vụ sẽ xuất hiện tại đây sau khi được ghi nhận.',
794
+ 'folio.empty.stays': 'Chưa có kỳ lưu trú.',
795
+ 'folio.empty.staysHint': 'Kỳ lưu trú được nối vào hồ sơ khi đặt phòng được tạo.',
796
+ 'folio.value.noStay': 'Chung cho toàn hồ sơ',
797
+ 'mealPlan.RO': 'Chỉ phòng',
798
+ 'mealPlan.BB': 'Phòng và bữa sáng',
799
+ 'mealPlan.HB': 'Bán trú',
800
+ 'mealPlan.FB': 'Toàn bộ bữa ăn',
801
+ 'mealPlan.AI': 'Trọn gói',
802
+ 'restriction.open': 'Mở bán',
803
+ 'restriction.stopSell': 'Ngừng bán',
804
+ 'restriction.cta': 'Cấm nhận phòng (CTA)',
805
+ 'restriction.ctd': 'Cấm trả phòng (CTD)',
806
+ 'field.minStay': 'Số kỳ tối thiểu',
807
+ 'field.maxStay': 'Số kỳ tối đa',
808
+ 'field.isDefault': 'Giá mặc định',
809
+ 'field.isDefaultHint': 'Chỉ có một giá mặc định đang hoạt động cho mỗi loại phòng và chu kỳ.',
810
+ 'field.active': 'Đang hoạt động',
811
+ 'field.from': 'Từ ngày',
812
+ 'field.to': 'Đến ngày',
813
+ 'field.minLos': 'Số đêm tối thiểu (MinLOS)',
814
+ 'field.maxLos': 'Số đêm tối đa (MaxLOS)',
815
+ 'action.saveRatePlan': 'Lưu kế hoạch giá',
816
+ 'action.select': 'Chọn',
817
+ 'action.cancel': 'Hủy',
818
+ 'action.apply': 'Áp dụng',
819
+ 'action.updateAllotment': 'Cập nhật phân bổ',
820
+ 'action.updateRestrictions': 'Cập nhật hạn chế',
821
+ 'feedback.saved': 'Đã lưu thay đổi',
822
+ 'feedback.savedHint': 'Lịch bán đã được cập nhật trong cùng cơ sở dữ liệu nghiệp vụ.',
823
+ 'feedback.invalid': 'Không thể lưu',
824
+ 'feedback.invalidHint': 'Kiểm tra lại dữ liệu và các giới hạn phòng đã bán.',
825
+ 'billing.upfront': 'Thanh toán một lần',
826
+ 'billing.recurring': 'Định kỳ',
827
+ 'provider.direct': 'Trực tiếp',
828
+ 'provider.booking': 'Booking.com',
829
+ 'provider.agoda': 'Agoda',
830
+ 'provider.expedia': 'Expedia',
831
+ 'provider.traveloka': 'Traveloka',
832
+ 'provider.airbnb': 'Airbnb',
833
+ 'reservationState.draft': 'Nháp',
834
+ 'reservationState.confirmed': 'Đã xác nhận',
835
+ 'reservationState.checked_in': 'Đã nhận phòng',
836
+ 'reservationState.checked_out': 'Đã trả phòng',
837
+ 'reservationState.cancelled': 'Đã hủy',
838
+ 'reservationState.no_show': 'Khách không đến',
839
+ 'stayState.draft': 'Chờ nhận phòng',
840
+ 'stayState.checked_in': 'Đang lưu trú',
841
+ 'stayState.checked_out': 'Đã trả phòng',
842
+ 'stayState.cancelled': 'Đã hủy',
843
+ 'stayState.no_show': 'Khách không đến',
844
+ 'folioState.draft': 'Nháp',
845
+ 'folioState.open': 'Đang mở',
846
+ 'folioState.closed': 'Đã đóng',
847
+ 'folioState.cancelled': 'Đã hủy',
848
+ 'assignmentState.active': 'Đang xếp',
849
+ 'assignmentState.closed': 'Đã kết thúc',
850
+ 'charge.room': 'Tiền phòng',
851
+ 'charge.minibar': 'Minibar',
852
+ 'charge.spa': 'Spa',
853
+ 'charge.restaurant': 'Nhà hàng',
854
+ 'charge.service': 'Dịch vụ',
855
+ 'charge.discount': 'Giảm giá',
856
+ 'document.cccd': 'Căn cước công dân',
857
+ 'document.cmnd': 'Chứng minh nhân dân',
858
+ 'document.passport': 'Hộ chiếu',
859
+ 'document.other': 'Giấy tờ khác',
860
+ 'gender.male': 'Nam',
861
+ 'gender.female': 'Nữ',
862
+ 'gender.other': 'Khác',
863
+ 'ocr.pending': 'Chờ nhận dạng',
864
+ 'ocr.done': 'Đã nhận dạng',
865
+ 'ocr.failed': 'Nhận dạng lỗi',
866
+ 'validation.required': 'Trường này là bắt buộc.',
867
+ 'validation.unique': 'Mã hoặc giá trị này đã được sử dụng.',
868
+ 'validation.clock': 'Giờ phải có định dạng HH:mm.',
869
+ 'validation.timezone': 'Múi giờ không phải tên IANA hợp lệ.',
870
+ 'validation.star_rating': 'Hạng sao phải từ 0 đến 5.',
871
+ 'validation.non_negative': 'Giá trị không được âm.',
872
+ 'validation.decimal': 'Giá trị phải là số thập phân hợp lệ.',
873
+ 'validation.positive': 'Giá trị phải lớn hơn 0.',
874
+ 'validation.percentage': 'Tỷ lệ phải từ 0 đến 100.',
875
+ 'validation.capacity': 'Sức chứa phải ít nhất là 1.',
876
+ 'validation.capacity_total': 'Số khách mặc định không được vượt tổng người lớn và trẻ em tối đa.',
877
+ 'validation.view_type': 'Hướng nhìn không hợp lệ.',
878
+ 'validation.color': 'Màu nhận diện phải có định dạng #RRGGBB.',
879
+ 'validation.accommodation_type': 'Loại hình lưu trú không hợp lệ.',
880
+ 'validation.room_status': 'Trạng thái phòng không hợp lệ.',
881
+ 'validation.room_status_managed': 'Trạng thái có khách và đang vệ sinh chỉ được thay đổi qua quy trình lưu trú hoặc công việc buồng phòng.',
882
+ 'validation.room_status_configuration_managed': 'Không thể đổi trạng thái từ cấu hình phòng; hãy dùng quy trình lưu trú hoặc buồng phòng.',
883
+ 'validation.room_status_available_managed': 'Phòng chỉ trở lại sẵn sàng sau khi công việc buồng phòng được hoàn tất.',
884
+ 'validation.room_status_note_required': 'Phải ghi rõ lý do khi tạm ngừng khai thác phòng.',
885
+ 'validation.room_archived': 'Phòng đã lưu trữ không thể thay đổi trạng thái vận hành.',
886
+ 'validation.room_occupied': 'Phòng đang có khách; hãy chuyển hoặc trả phòng trước.',
887
+ 'validation.room_cleaning': 'Phòng đang được vệ sinh; hãy hoàn tất hoặc hủy công việc trước.',
888
+ 'validation.room_task_open': 'Phòng còn công việc buồng phòng đang mở; hãy xử lý công việc trước.',
889
+ 'validation.room_archive_status': 'Chỉ có thể lưu trữ phòng đang sẵn sàng; hãy hoàn tất quy trình trạng thái trước.',
890
+ 'validation.room_has_active_stay': 'Phòng đang có hồ sơ lưu trú hoạt động; hãy chuyển hoặc trả phòng trước.',
891
+ 'validation.room_has_open_task': 'Phòng còn công việc buồng phòng đang mở; hãy hoàn tất hoặc hủy công việc trước.',
892
+ 'validation.amenity_scope': 'Phạm vi tiện nghi không hợp lệ.',
893
+ 'validation.amenity_target': 'Đối tượng gán tiện nghi không hợp lệ.',
894
+ 'validation.amenity_scope_mismatch': 'Tiện nghi không dùng được cho đối tượng này.',
895
+ 'validation.bed_type': 'Loại giường không hợp lệ.',
896
+ 'validation.cancellation_policy_type': 'Loại chính sách hủy không hợp lệ.',
897
+ 'validation.contact_type': 'Loại liên hệ không hợp lệ.',
898
+ 'validation.property_missing': 'Không tìm thấy cơ sở lưu trú.',
899
+ 'validation.property_archived': 'Cơ sở lưu trú đang được lưu trữ; hãy khôi phục cơ sở trước.',
900
+ 'validation.building_missing': 'Không tìm thấy tòa nhà.',
901
+ 'validation.floor_missing': 'Không tìm thấy tầng.',
902
+ 'validation.room_type_missing': 'Không tìm thấy loại phòng.',
903
+ 'validation.room_type_archived': 'Loại phòng đang được lưu trữ; hãy khôi phục loại phòng trước.',
904
+ 'validation.room_missing': 'Không tìm thấy phòng.',
905
+ 'validation.policy_missing': 'Không tìm thấy chính sách hủy.',
906
+ 'validation.amenity_missing': 'Không tìm thấy tiện nghi.',
907
+ 'validation.amenity_category_missing': 'Không tìm thấy nhóm tiện nghi.',
908
+ 'validation.target_missing': 'Không tìm thấy đối tượng cần gán.',
909
+ 'validation.property_mismatch': 'Bản ghi không thuộc cùng cơ sở lưu trú.',
910
+ 'validation.building_mismatch': 'Tầng không thuộc tòa nhà đã chọn.',
911
+ 'validation.location_immutable': 'Không thể chuyển tầng đã tạo sang một tòa nhà khác.',
912
+ 'validation.location_archived': 'Vị trí đang được lưu trữ; hãy khôi phục vị trí trước.',
913
+ 'validation.location_has_active_floors': 'Tòa nhà vẫn còn tầng hoạt động; hãy lưu trữ từng tầng trước.',
914
+ 'validation.location_has_active_rooms': 'Vị trí vẫn còn phòng hoạt động; hãy chuyển hoặc lưu trữ phòng trước.',
915
+ 'validation.booking_type': 'Loại hình đặt phòng không hợp lệ.',
916
+ 'validation.datetime': 'Ngày giờ không hợp lệ.',
917
+ 'validation.schedule_order': 'Thời gian trả phòng phải sau thời gian nhận phòng.',
918
+ 'validation.weekly_minimum': 'Đặt theo tuần phải kéo dài ít nhất 7 đêm.',
919
+ 'validation.monthly_minimum': 'Đặt theo tháng phải kéo dài ít nhất 30 đêm.',
920
+ 'validation.nightly_minimum': 'Đặt theo đêm phải kéo dài ít nhất 1 đêm.',
921
+ 'validation.hourly_minimum': 'Đặt theo giờ phải kéo dài ít nhất 1 giờ.',
922
+ 'validation.partner_missing': 'Không tìm thấy khách hàng.',
923
+ 'validation.guest_not_registered': 'Khách này chưa được đăng ký trong kỳ lưu trú.',
924
+ 'validation.document_owner_immutable': 'Không thể chuyển giấy tờ đã tạo sang khách hoặc kỳ lưu trú khác.',
925
+ 'validation.booking_provider': 'Nguồn đặt phòng không hợp lệ.',
926
+ 'validation.billing_mode': 'Cách tính tiền không hợp lệ.',
927
+ 'validation.provider_external_unique': 'Mã đặt phòng này đã tồn tại trên kênh đã chọn.',
928
+ 'validation.reservation_missing': 'Không tìm thấy đặt phòng.',
929
+ 'validation.reservation_cannot_cancel': 'Không thể hủy đặt phòng ở trạng thái hiện tại.',
930
+ 'validation.reservation_cannot_amend': 'Chỉ có thể sửa đặt phòng đã xác nhận trước khi khách nhận phòng.',
931
+ 'validation.reservation_cannot_no_show': 'Chỉ có thể đánh dấu khách không đến cho đặt phòng đã xác nhận và chưa nhận phòng.',
932
+ 'validation.reservation_no_show_too_early': 'Chưa đến giờ nhận phòng nên chưa thể ghi nhận khách không đến.',
933
+ 'validation.reservation_external_readonly': 'Đặt phòng từ OTA được cập nhật theo dữ liệu của kênh; không thể sửa nội dung thương mại tại quầy.',
934
+ 'validation.stay_missing': 'Không tìm thấy hồ sơ lưu trú.',
935
+ 'validation.stay_cannot_adjust_departure': 'Chỉ có thể điều chỉnh ngày trả phòng khi khách đang lưu trú.',
936
+ 'validation.departure_not_future': 'Ngày trả phòng mới phải ở trong tương lai.',
937
+ 'validation.stay_cannot_check_in': 'Không thể nhận phòng ở trạng thái hiện tại.',
938
+ 'validation.early_check_in': 'Chưa đến giờ nhận phòng theo chính sách cơ sở.',
939
+ 'validation.no_available_room': 'Không còn phòng sẵn sàng thuộc loại đã đặt.',
940
+ 'validation.room_type_mismatch': 'Phòng không thuộc loại phòng đã đặt.',
941
+ 'validation.room_not_available': 'Phòng không còn ở trạng thái sẵn sàng.',
942
+ 'validation.transition_conflict': 'Dữ liệu vừa được thay đổi; vui lòng tải lại và thử lại.',
943
+ 'validation.cleaning_type': 'Loại việc dọn phòng không hợp lệ.',
944
+ 'validation.cleaning_priority': 'Mức ưu tiên không hợp lệ.',
945
+ 'validation.cleaning_room_status': 'Việc bảo trì chỉ dành cho phòng đang tạm ngừng; các việc khác phải chờ phòng quay lại vận hành.',
946
+ 'validation.cleaning_task_missing': 'Không tìm thấy việc dọn phòng.',
947
+ 'validation.cleaning_cannot_start': 'Chỉ việc đang chờ mới có thể bắt đầu.',
948
+ 'validation.cleaning_cannot_complete': 'Chỉ việc đang thực hiện mới có thể hoàn thành.',
949
+ 'validation.cleaning_cannot_cancel': 'Việc đã hoàn thành hoặc đã hủy không thể hủy lại.',
950
+ 'validation.stay_cannot_move': 'Không thể chuyển phòng ở trạng thái hiện tại.',
951
+ 'validation.active_assignment_missing': 'Không tìm thấy lần xếp phòng đang hoạt động.',
952
+ 'validation.assignment_order': 'Thời điểm thay đổi phải sau lúc nhận phòng.',
953
+ 'validation.stay_cannot_check_out': 'Không thể trả phòng ở trạng thái hiện tại.',
954
+ 'validation.primary_guest_mismatch': 'Khách chính phải khớp với khách đứng tên đặt phòng.',
955
+ 'validation.primary_guest_unique': 'Hồ sơ lưu trú đã có khách chính.',
956
+ 'validation.folio_missing': 'Không tìm thấy hồ sơ dịch vụ.',
957
+ 'validation.folio_not_open': 'Hồ sơ dịch vụ không còn mở.',
958
+ 'validation.folio_mismatch': 'Dịch vụ không thuộc hồ sơ lưu trú này.',
959
+ 'validation.room_charge_missing': 'Không tìm thấy dòng tiền phòng đang hoạt động để cập nhật.',
960
+ 'validation.charge_missing': 'Không tìm thấy khoản phí.',
961
+ 'validation.charge_not_active': 'Khoản phí không còn hiệu lực để hủy.',
962
+ 'validation.charge_type': 'Loại dịch vụ phát sinh không hợp lệ.',
963
+ 'validation.document_type': 'Loại giấy tờ không hợp lệ.',
964
+ 'validation.authentication_required': 'Cần đăng nhập để ghi nhận thao tác này.',
965
+ 'validation.stay_notice_missing': 'Không tìm thấy hồ sơ thông báo lưu trú.',
966
+ 'validation.stay_notice_reason': 'Lý do lưu trú không hợp lệ.',
967
+ 'validation.stay_notice_channel': 'Kênh thông báo lưu trú không hợp lệ.',
968
+ 'validation.stay_notice_not_ready': 'Hồ sơ chưa đủ dữ liệu bắt buộc để ghi nhận đã gửi.',
969
+ 'validation.stay_notice_not_submitted': 'Cần ghi nhận đã gửi trước khi xác nhận hoàn tất.',
970
+ 'validation.stay_notice_stay_state': 'Chỉ chuẩn bị thông báo sau khi khách đã nhận phòng.',
971
+ 'validation.gender': 'Giới tính không hợp lệ.',
972
+ 'validation.ocr_state': 'Trạng thái nhận dạng giấy tờ không hợp lệ.',
973
+ 'validation.attachment_missing': 'Không tìm thấy tệp đính kèm.',
974
+ 'validation.date': 'Ngày không hợp lệ.',
975
+ 'validation.audit_future': 'Không thể chốt một ngày vận hành trong tương lai.',
976
+ 'validation.date_range_order': 'Ngày kết thúc phải bằng hoặc sau ngày bắt đầu.',
977
+ 'validation.inventory_horizon': 'Mỗi lần chỉ được xử lý tối đa {count} ngày.',
978
+ 'validation.ledger_missing': 'Không tìm thấy dòng tồn kho cho ngày {date}.',
979
+ 'validation.no_availability': 'Hết phòng ngày {date}: còn {available}, cần {required}.',
980
+ 'validation.inventory_change_required': 'Cần nhập tổng phòng hoặc số phòng khóa.',
981
+ 'validation.inventory_capacity': 'Ngày {date} đã cam kết {committed} phòng, vượt tổng {total}.',
982
+ 'validation.rate_type': 'Chu kỳ giá không hợp lệ.',
983
+ 'validation.los_order': 'Giới hạn tối đa phải bằng 0 hoặc không nhỏ hơn giới hạn tối thiểu.',
984
+ 'validation.meal_plan': 'Gói ăn uống không hợp lệ.',
985
+ 'validation.default_rate_unique': 'Loại phòng đã có giá mặc định đang hoạt động cho chu kỳ này.',
986
+ 'validation.stop_sell': 'Đang ngừng bán đêm {date}.',
987
+ 'validation.min_los': 'Đêm {date} yêu cầu ít nhất {count} đêm; đặt phòng có {actual} đêm.',
988
+ 'validation.max_los': 'Đêm {date} cho phép tối đa {count} đêm; đặt phòng có {actual} đêm.',
989
+ 'validation.closed_to_arrival': 'Không được nhận phòng ngày {date} (CTA).',
990
+ 'validation.closed_to_departure': 'Không được trả phòng ngày {date} (CTD).',
991
+ 'validation.rate_plan_min_stay': 'Kế hoạch giá yêu cầu ít nhất {count} kỳ; đặt phòng có {actual} kỳ.',
992
+ 'validation.rate_plan_max_stay': 'Kế hoạch giá cho phép tối đa {count} kỳ; đặt phòng có {actual} kỳ.',
993
+ 'validation.property_charge_type': 'Loại phụ phí không hợp lệ.',
994
+ 'validation.extra_line_target': 'Chọn đúng một đặt phòng hoặc một lượt lưu trú.',
995
+ 'validation.extra_line_target_cancelled': 'Đặt phòng hoặc lượt lưu trú đã kết thúc trước khi khách đến.',
996
+ 'validation.product_missing': 'Không tìm thấy sản phẩm dịch vụ.',
997
+ 'validation.product_template_missing': 'Không tìm thấy thông tin sản phẩm dịch vụ.',
998
+ 'validation.product_not_saleable': 'Sản phẩm này không còn được phép bán.',
999
+ 'validation.product_uom_mismatch': 'Đơn vị tính không dùng được cho sản phẩm này.',
1000
+ 'validation.extra_recurrence': 'Chu kỳ dịch vụ không hợp lệ.',
1001
+ 'validation.extra_line_missing': 'Không tìm thấy dịch vụ dự kiến.',
1002
+ 'validation.extra_line_inactive': 'Dịch vụ dự kiến đã ngừng hoạt động.',
1003
+ 'validation.extra_service_date': 'Ngày phục vụ phải nằm trong thời gian lưu trú.',
1004
+ 'validation.extra_line_materialized': 'Không thể sửa dịch vụ sau khi đã ghi nhận phát sinh.',
1005
+ },
1006
+ en: {
1007
+ 'app.title': 'Hospitality',
1008
+ 'app.summary': 'Properties, room types, rooms, amenities and operating policies.',
1009
+ 'app.category': 'Hospitality',
1010
+ 'menu.app': 'Hospitality',
1011
+ 'menu.operations': 'Operations',
1012
+ 'menu.properties': 'Properties',
1013
+ 'menu.rooms': 'Rooms',
1014
+ 'menu.frontDesk': 'Front desk',
1015
+ 'menu.reservations': 'Reservations',
1016
+ 'menu.stays': 'Stays',
1017
+ 'menu.tapeChart': 'Tape chart',
1018
+ 'menu.folios': 'Folios',
1019
+ 'menu.housekeeping': 'Housekeeping',
1020
+ 'menu.cleaningTasks': 'Cleaning tasks',
1021
+ 'menu.housekeepingRooms': 'Room status',
1022
+ 'menu.configuration': 'Configuration',
1023
+ 'menu.roomTypes': 'Room types',
1024
+ 'menu.content': 'Content & images',
1025
+ 'menu.amenities': 'Amenities',
1026
+ 'menu.policies': 'Cancellation policies',
1027
+ 'menu.inventory': 'Inventory & restrictions',
1028
+ 'menu.ratePlans': 'Rate plans',
1029
+ 'menu.services': 'Services & fees',
1030
+ 'menu.nightAudit': 'Night audit',
1031
+ 'menu.compliance': 'Compliance',
1032
+ 'menu.stayNotices': 'Stay notices',
1033
+ 'screen.properties.title': 'Properties',
1034
+ 'screen.properties.empty': 'No properties yet.',
1035
+ 'screen.properties.emptyHint': 'Create the first property to configure room types and operations.',
1036
+ 'property.create.title': 'Create property',
1037
+ 'property.create.hint': 'Set its identity and operating calendar first; the canonical address is preserved and managed separately.',
1038
+ 'property.detail.kicker': 'Property operating record',
1039
+ 'property.section.information': 'Operating information',
1040
+ 'property.section.informationHint': 'The current address, timezone, check-in/out schedule and default policy.',
1041
+ 'property.section.settings': 'Property settings',
1042
+ 'property.section.settingsHint': 'Changes enter the content feed so each OTA connection can process them independently.',
1043
+ 'property.section.next': 'Related configuration',
1044
+ 'property.section.nextHint': 'Continue with room types, physical rooms, inventory and selling content.',
1045
+ 'property.action.create': 'Create property',
1046
+ 'property.action.save': 'Save settings',
1047
+ 'property.action.back': 'Back to properties',
1048
+ 'property.field.code': 'Property code',
1049
+ 'property.field.name': 'Internal name',
1050
+ 'property.field.publicName': 'Display name',
1051
+ 'property.field.publicNameHint': 'The name guests see on the website and sales channels.',
1052
+ 'property.field.accommodationType': 'Accommodation type',
1053
+ 'property.field.starRating': 'Star rating',
1054
+ 'property.field.starRatingHint': 'Use 0 when the property has no official star rating.',
1055
+ 'property.field.timezone': 'Timezone',
1056
+ 'property.field.defaultCheckIn': 'Default check-in time',
1057
+ 'property.field.defaultCheckOut': 'Default check-out time',
1058
+ 'property.field.enforceTimes': 'Enforce check-in / check-out limits',
1059
+ 'property.field.enforceTimesHint': 'Front desk still uses the lifecycle; exceptions require operational permission.',
1060
+ 'property.field.longStayBillOnCheckIn': 'Post the first long-stay period at check-in',
1061
+ 'property.field.longStayBillOnCheckInHint': 'This creates an operational charge only, not an invoice or accounting entry.',
1062
+ 'property.field.childrenStayFree': 'Children stay free',
1063
+ 'property.field.minimumGuestAge': 'Minimum primary guest age',
1064
+ 'property.field.defaultCancellationPolicy': 'Default cancellation policy',
1065
+ 'property.field.address': 'Canonical address',
1066
+ 'property.field.description': 'Public description',
1067
+ 'property.field.houseRules': 'House rules',
1068
+ 'property.value.noDefaultPolicy': 'No default policy selected',
1069
+ 'property.metric.buildings': 'Buildings',
1070
+ 'property.feedback.created': 'Property created',
1071
+ 'property.feedback.saved': 'Property settings saved',
1072
+ 'property.feedback.savedHint': 'Operating data and the content feed were updated in one transaction.',
1073
+ 'screen.rooms.title': 'Room board',
1074
+ 'screen.rooms.empty': 'This property has no rooms.',
1075
+ 'screen.rooms.emptyHint': 'Create room types, buildings and floors before adding rooms.',
1076
+ 'room.create.title': 'Create physical room',
1077
+ 'room.create.hint': 'Assign the room type and operating location; every room starts in the available state.',
1078
+ 'room.detail.kicker': 'Physical room record',
1079
+ 'room.action.create': 'Create room',
1080
+ 'room.action.createBuilding': 'Add building',
1081
+ 'room.action.createFloor': 'Add floor',
1082
+ 'room.action.save': 'Save room settings',
1083
+ 'room.action.back': 'Back to room board',
1084
+ 'room.action.openHousekeeping': 'Open room-status workflow',
1085
+ 'room.action.archive': 'Archive room',
1086
+ 'room.action.restore': 'Restore room',
1087
+ 'room.field.property': 'Property',
1088
+ 'room.field.roomType': 'Room type',
1089
+ 'room.field.code': 'Room code',
1090
+ 'room.field.codeHint': 'A stable code used by front desk, housekeeping and integrations.',
1091
+ 'room.field.name': 'Room name / number',
1092
+ 'room.field.building': 'Building',
1093
+ 'room.field.floor': 'Floor',
1094
+ 'room.field.floorHint': 'Each option includes its building; the selected floor defines canonical location.',
1095
+ 'room.field.capacity': 'Capacity',
1096
+ 'room.field.sequence': 'Sequence',
1097
+ 'room.field.buildingCode': 'Building code',
1098
+ 'room.field.buildingName': 'Building name',
1099
+ 'room.field.floorCode': 'Floor code',
1100
+ 'room.field.floorName': 'Floor name',
1101
+ 'room.value.noBuilding': 'No building assigned',
1102
+ 'room.value.noFloor': 'No floor assigned',
1103
+ 'room.value.unassignedLocation': 'No location assigned',
1104
+ 'room.metric.floors': 'Floors',
1105
+ 'room.section.locationSetup': 'Building and floor structure',
1106
+ 'room.section.locationSetupHint': 'Create a building first, then add floors that belong to the selected building and property.',
1107
+ 'room.section.buildings': 'Buildings',
1108
+ 'room.section.buildingsHint': 'The floor and physical-room counts currently assigned to each building.',
1109
+ 'room.section.floors': 'Floors',
1110
+ 'room.section.floorsHint': 'Floor sequence controls room-board and operational ordering.',
1111
+ 'room.section.rooms': 'Physical rooms',
1112
+ 'room.section.roomsHint': 'Rooms with their type, location, capacity and current operating state.',
1113
+ 'room.section.information': 'Operating information',
1114
+ 'room.section.informationHint': 'The room type, location and current state applied to this physical asset.',
1115
+ 'room.section.settings': 'Room settings',
1116
+ 'room.section.settingsHint': 'Settings cannot change status; every state transition must use the operating lifecycle.',
1117
+ 'room.section.lifecycle': 'Operating status',
1118
+ 'room.section.lifecycleHint': 'Housekeeping and stays own status transitions. Only an available room with no guest or open work can be archived.',
1119
+ 'room.empty.prerequisite': 'A room cannot be created yet',
1120
+ 'room.empty.prerequisiteHint': 'Create a property and at least one room type first.',
1121
+ 'room.empty.buildings': 'This property has no buildings.',
1122
+ 'room.empty.buildingsHint': 'Add the first building with the form above.',
1123
+ 'room.empty.floors': 'This property has no floors.',
1124
+ 'room.empty.floorsHint': 'Create a building, then add a floor that belongs to it.',
1125
+ 'room.feedback.building-created': 'Building added',
1126
+ 'room.feedback.floor-created': 'Floor added',
1127
+ 'room.feedback.created': 'Physical room created',
1128
+ 'room.feedback.saved': 'Room settings saved',
1129
+ 'room.feedback.archived': 'Room archived',
1130
+ 'room.feedback.archivedHint': 'The room is no longer offered to front desk or housekeeping, while its full history remains available.',
1131
+ 'room.feedback.restored': 'Room restored',
1132
+ 'room.feedback.restoredHint': 'The room is available for operations again.',
1133
+ 'room.feedback.savedHint': 'Physical settings were saved; sellable inventory still changes only through the availability ledger.',
1134
+ 'building.detail.kicker': 'Building record',
1135
+ 'building.action.save': 'Save building',
1136
+ 'building.action.back': 'Back to room board',
1137
+ 'building.action.archive': 'Archive building',
1138
+ 'building.action.restore': 'Restore building',
1139
+ 'building.field.property': 'Property',
1140
+ 'building.field.code': 'Building code',
1141
+ 'building.field.name': 'Building name',
1142
+ 'building.field.sequence': 'Operating sequence',
1143
+ 'building.section.information': 'Location information',
1144
+ 'building.section.informationHint': 'A building cannot move to another property after creation.',
1145
+ 'building.section.settings': 'Building settings',
1146
+ 'building.section.settingsHint': 'Name, code and sequence drive the room board and operating work.',
1147
+ 'building.section.floors': 'Floors in this building',
1148
+ 'building.section.floorsHint': 'An existing floor cannot move to another building.',
1149
+ 'building.section.lifecycle': 'Location lifecycle',
1150
+ 'building.section.lifecycleHint': 'Archive only after every floor is archived and no active physical room remains in the building.',
1151
+ 'building.empty.floors': 'This building has no floors.',
1152
+ 'building.empty.floorsHint': 'Add a floor from the property room board.',
1153
+ 'building.feedback.saved': 'Building saved',
1154
+ 'building.feedback.savedHint': 'Location settings changed without changing sellable inventory.',
1155
+ 'building.feedback.archived': 'Building archived',
1156
+ 'building.feedback.archivedHint': 'The building no longer appears when creating or moving rooms.',
1157
+ 'building.feedback.restored': 'Building restored',
1158
+ 'building.feedback.restoredHint': 'The building is ready for floor and physical-room settings.',
1159
+ 'floor.detail.kicker': 'Floor record',
1160
+ 'floor.action.save': 'Save floor',
1161
+ 'floor.action.back': 'Back to building',
1162
+ 'floor.action.archive': 'Archive floor',
1163
+ 'floor.action.restore': 'Restore floor',
1164
+ 'floor.field.property': 'Property',
1165
+ 'floor.field.building': 'Building',
1166
+ 'floor.field.code': 'Floor code',
1167
+ 'floor.field.name': 'Floor name',
1168
+ 'floor.field.sequence': 'Operating sequence',
1169
+ 'floor.section.information': 'Location information',
1170
+ 'floor.section.informationHint': 'A floor cannot move to another property or building after creation.',
1171
+ 'floor.section.settings': 'Floor settings',
1172
+ 'floor.section.settingsHint': 'Name, code and sequence drive the room board and operating work.',
1173
+ 'floor.section.rooms': 'Rooms on this floor',
1174
+ 'floor.section.roomsHint': 'Physical rooms currently assigned directly to this floor.',
1175
+ 'floor.section.lifecycle': 'Location lifecycle',
1176
+ 'floor.section.lifecycleHint': 'Archive only when no active room remains; restoring requires an active building.',
1177
+ 'floor.empty.rooms': 'This floor has no rooms.',
1178
+ 'floor.empty.roomsHint': 'Create or move a room from the property room board.',
1179
+ 'floor.feedback.saved': 'Floor saved',
1180
+ 'floor.feedback.savedHint': 'Location settings changed without changing sellable inventory.',
1181
+ 'floor.feedback.archived': 'Floor archived',
1182
+ 'floor.feedback.archivedHint': 'The floor no longer appears when creating or moving rooms.',
1183
+ 'floor.feedback.restored': 'Floor restored',
1184
+ 'floor.feedback.restoredHint': 'The floor is ready for physical-room assignments.',
1185
+ 'screen.roomTypes.title': 'Room types',
1186
+ 'screen.roomTypes.empty': 'This property has no room types.',
1187
+ 'screen.roomTypes.emptyHint': 'Each room type describes one sellable accommodation product.',
1188
+ 'roomType.create.title': 'Create room type',
1189
+ 'roomType.create.hint': 'Define the accommodation product, capacity and selling settings before adding physical rooms.',
1190
+ 'roomType.detail.kicker': 'Room type record',
1191
+ 'roomType.section.information': 'Selling information',
1192
+ 'roomType.section.informationHint': 'The property, capacity, fallback rate and cancellation policy currently applied to this room type.',
1193
+ 'roomType.section.settings': 'Room type settings',
1194
+ 'roomType.section.settingsHint': 'Content changes enter the feed so each OTA connection can process them independently.',
1195
+ 'roomType.section.next': 'Related configuration',
1196
+ 'roomType.section.nextHint': 'Continue with physical rooms, rates, inventory and marketing content.',
1197
+ 'roomType.action.create': 'Create room type',
1198
+ 'roomType.action.save': 'Save room type',
1199
+ 'roomType.action.back': 'Back to room types',
1200
+ 'roomType.field.property': 'Property',
1201
+ 'roomType.field.code': 'Room type code',
1202
+ 'roomType.field.codeHint': 'A stable code used by operations and channel integrations.',
1203
+ 'roomType.field.name': 'Internal name',
1204
+ 'roomType.field.publicName': 'Display name',
1205
+ 'roomType.field.description': 'Public description',
1206
+ 'roomType.field.defaultCapacity': 'Default guests',
1207
+ 'roomType.field.maxAdults': 'Maximum adults',
1208
+ 'roomType.field.maxChildren': 'Maximum children',
1209
+ 'roomType.field.maxInfants': 'Maximum infants',
1210
+ 'roomType.field.maxExtraBeds': 'Maximum extra beds',
1211
+ 'roomType.field.sizeSqm': 'Size (m²)',
1212
+ 'roomType.field.viewType': 'View type',
1213
+ 'roomType.field.sharedBathroom': 'Shared bathroom',
1214
+ 'roomType.field.baseRate': 'Fallback rate',
1215
+ 'roomType.field.baseRateHint': 'The base rate used when no matching rate plan is available; denominated in company currency.',
1216
+ 'roomType.field.color': 'Identity colour',
1217
+ 'roomType.field.cancellationPolicy': 'Cancellation policy',
1218
+ 'roomType.field.published': 'Ready to publish',
1219
+ 'roomType.field.publishedHint': 'Allows this room type into selling content; every channel still synchronises independently.',
1220
+ 'roomType.value.noViewType': 'No classified view',
1221
+ 'roomType.value.inheritPolicy': 'Use the property default policy',
1222
+ 'roomType.value.capacity': '{default} default · up to {adults} adults + {children} children',
1223
+ 'roomType.view.city': 'City',
1224
+ 'roomType.view.sea': 'Sea',
1225
+ 'roomType.view.ocean': 'Ocean',
1226
+ 'roomType.view.garden': 'Garden',
1227
+ 'roomType.view.pool': 'Pool',
1228
+ 'roomType.view.mountain': 'Mountain',
1229
+ 'roomType.view.lake': 'Lake',
1230
+ 'roomType.view.river': 'River',
1231
+ 'roomType.view.courtyard': 'Courtyard',
1232
+ 'roomType.metric.types': 'Room types',
1233
+ 'roomType.metric.published': 'Published',
1234
+ 'roomType.metric.beds': 'Sleeping places',
1235
+ 'roomType.empty.noProperty': 'No property yet',
1236
+ 'roomType.empty.noPropertyHint': 'Create a property before defining room types.',
1237
+ 'roomType.feedback.created': 'Room type created',
1238
+ 'roomType.feedback.saved': 'Room type saved',
1239
+ 'roomType.feedback.savedHint': 'Selling settings and the content feed were updated in one transaction.',
1240
+ 'screen.content.title': 'Content & images',
1241
+ 'screen.content.selection': 'Content scope',
1242
+ 'screen.content.selectionHint': 'Select a property or room type to manage its marketing library.',
1243
+ 'screen.content.library': 'Image library',
1244
+ 'screen.content.libraryHint': 'Images are stored once and reused when content is published to sales channels.',
1245
+ 'screen.content.noProperty': 'No property is available for content management.',
1246
+ 'screen.content.noPropertyHint': 'Create a property before adding marketing images.',
1247
+ 'screen.amenities.title': 'Amenity catalogue',
1248
+ 'screen.amenities.empty': 'No amenities yet.',
1249
+ 'screen.amenities.emptyHint': 'Create amenities for properties or room types.',
1250
+ 'screen.policies.title': 'Cancellation policies',
1251
+ 'screen.policies.empty': 'No cancellation policies yet.',
1252
+ 'screen.policies.emptyHint': 'Create a policy before assigning it to a property or room type.',
1253
+ 'screen.frontDesk.title': 'Front desk',
1254
+ 'screen.frontDesk.empty': 'No guest movement needs attention today.',
1255
+ 'screen.frontDesk.emptyHint': 'Today’s arrivals, in-house guests and departures will appear here.',
1256
+ 'screen.frontDesk.overdue': 'Overdue departures',
1257
+ 'screen.frontDesk.overdueHint': '{count} stay remains checked in past its scheduled departure. Extend or check it out so room inventory stays accurate.',
1258
+ 'screen.reservations.title': 'Reservations',
1259
+ 'screen.reservations.empty': 'No reservations yet.',
1260
+ 'screen.reservations.emptyHint': 'Direct and OTA bookings are collected here.',
1261
+ 'screen.stays.title': 'Stays',
1262
+ 'screen.stays.empty': 'No stay records yet.',
1263
+ 'screen.stays.emptyHint': 'A stay is created with a reservation and follows the physical visit.',
1264
+ 'screen.folios.title': 'Folios',
1265
+ 'screen.folios.empty': 'No folios yet.',
1266
+ 'screen.folios.emptyHint': 'Room and service charges are collected in one operational folio.',
1267
+ 'screen.tapeChart.title': 'Tape chart',
1268
+ 'screen.tapeChart.empty': 'This property has no rooms to schedule.',
1269
+ 'screen.tapeChart.emptyHint': 'Create rooms before assigning guests on the operating calendar.',
1270
+ 'screen.tapeChart.corner': 'Room / day',
1271
+ 'screen.tapeChart.unassigned': 'Unassigned',
1272
+ 'screen.tapeChart.unassignedHint': 'Confirmed stays without a physical room assignment',
1273
+ 'screen.cleaningTasks.title': 'Cleaning tasks',
1274
+ 'screen.cleaningTasks.empty': 'No cleaning task needs attention.',
1275
+ 'screen.cleaningTasks.emptyHint': 'Check-out automatically creates an urgent cleaning task.',
1276
+ 'housekeeping.detail.title': 'Cleaning task {code}',
1277
+ 'housekeeping.detail.kicker': 'Housekeeping work record',
1278
+ 'housekeeping.section.create': 'Create housekeeping work',
1279
+ 'housekeeping.section.createHint': 'Use this for daily cleaning, inspections or maintenance outside the task created automatically at check-out.',
1280
+ 'housekeeping.section.queue': 'Housekeeping queue',
1281
+ 'housekeeping.section.queueHint': 'Each task has its own lifecycle; room status changes in the same transaction when work starts or finishes.',
1282
+ 'housekeeping.section.information': 'Task information',
1283
+ 'housekeeping.section.informationHint': 'Room, timestamps, assignee and notes remain available as operational evidence.',
1284
+ 'housekeeping.action.create': 'Create task',
1285
+ 'housekeeping.action.back': 'Back to housekeeping queue',
1286
+ 'housekeeping.action.start': 'Start work',
1287
+ 'housekeeping.action.startHint': 'Claim the task and mark an available or dirty room as being cleaned.',
1288
+ 'housekeeping.action.complete': 'Complete task',
1289
+ 'housekeeping.action.completeHint': 'Close the task; an unoccupied room becomes available when no other work remains in progress.',
1290
+ 'housekeeping.action.cancel': 'Cancel task',
1291
+ 'housekeeping.action.cancelHint': 'Cancel unfinished work; a room being cleaned returns to attention.',
1292
+ 'housekeeping.field.assigneeHint': 'Employee identifier or sign-in name.',
1293
+ 'housekeeping.field.notes': 'Notes',
1294
+ 'housekeeping.field.startedAt': 'Started at',
1295
+ 'housekeeping.field.doneAt': 'Completed at',
1296
+ 'housekeeping.feedback.created': 'Housekeeping task created',
1297
+ 'housekeeping.feedback.createdHint': 'The new task is now in this property’s queue.',
1298
+ 'housekeeping.feedback.started': 'Task started',
1299
+ 'housekeeping.feedback.startedHint': 'The assignee and start time have been recorded.',
1300
+ 'housekeeping.feedback.completed': 'Task completed',
1301
+ 'housekeeping.feedback.completedHint': 'The task is closed and the room status has been recalculated.',
1302
+ 'housekeeping.feedback.cancelled': 'Task cancelled',
1303
+ 'housekeeping.feedback.cancelledHint': 'The task remains in history with a cancelled state.',
1304
+ 'housekeeping.feedback.invalidHint': 'Check the room, task type and priority, then try again.',
1305
+ 'housekeeping.empty.rooms': 'No room is available for task assignment.',
1306
+ 'housekeeping.empty.roomsHint': 'Create rooms in the property before adding housekeeping work.',
1307
+ 'housekeeping.rooms.detail.title': 'Room {code}',
1308
+ 'housekeeping.rooms.detail.kicker': 'Room operations record',
1309
+ 'housekeeping.rooms.section.board': 'Operational status',
1310
+ 'housekeeping.rooms.section.boardHint': 'Track physical room status separately from sellable inventory; the board displays at most 500 rooms for the selected filter.',
1311
+ 'housekeeping.rooms.section.information': 'Room information',
1312
+ 'housekeeping.rooms.section.informationHint': 'Location, room type, current stay and notes come from the live operational record.',
1313
+ 'housekeeping.rooms.section.tasks': 'Task history',
1314
+ 'housekeeping.rooms.section.tasksHint': 'Shows up to the 20 most recent housekeeping tasks for this room.',
1315
+ 'housekeeping.rooms.metric.openTasks': 'Open tasks',
1316
+ 'housekeeping.rooms.section.service': 'Take room out of service',
1317
+ 'housekeeping.rooms.section.serviceHint': 'Only an unoccupied room with no open housekeeping work can enter maintenance or out-of-order status.',
1318
+ 'housekeeping.rooms.section.release': 'Return room to housekeeping',
1319
+ 'housekeeping.rooms.section.releaseHint': 'A repaired room returns as dirty; create an inspection or cleaning task before selling it again.',
1320
+ 'housekeeping.rooms.action.back': 'Back to room status',
1321
+ 'housekeeping.rooms.action.takeOut': 'Take room out of service',
1322
+ 'housekeeping.rooms.action.release': 'Mark as awaiting cleaning',
1323
+ 'housekeeping.rooms.action.openStay': 'Open current stay',
1324
+ 'housekeeping.rooms.field.targetStatus': 'Out-of-service status',
1325
+ 'housekeeping.rooms.field.reason': 'Reason / operations note',
1326
+ 'housekeeping.rooms.feedback.updated': 'Room status updated',
1327
+ 'housekeeping.rooms.feedback.updatedHint': 'The change was committed against the status you viewed; concurrent updates are rejected.',
1328
+ 'housekeeping.rooms.empty.tasks': 'This room has no housekeeping task yet.',
1329
+ 'housekeeping.rooms.empty.tasksHint': 'Automatic or manual work appears here when created.',
1330
+ 'screen.housekeepingRooms.title': 'Room status board',
1331
+ 'screen.housekeepingRooms.empty': 'This property has no rooms.',
1332
+ 'screen.housekeepingRooms.emptyHint': 'Rooms appear here after they are configured.',
1333
+ 'screen.ratePlans.title': 'Rate plans',
1334
+ 'screen.ratePlans.create': 'Create a rate plan',
1335
+ 'screen.ratePlans.createHint': 'Keep sellable rates separate from room-type content and choose one default per cycle.',
1336
+ 'screen.ratePlans.noRoomTypes': 'No room type is available for pricing.',
1337
+ 'screen.ratePlans.noRoomTypesHint': 'Create a room type before adding a rate plan.',
1338
+ 'screen.ratePlans.list': 'Rate plans',
1339
+ 'screen.ratePlans.empty': 'No rate plans yet.',
1340
+ 'screen.ratePlans.emptyHint': 'The room type base rate remains the fallback until a default plan exists.',
1341
+ 'screen.inventory.title': 'Inventory & sales restrictions',
1342
+ 'screen.inventory.filters': 'Select an inventory calendar',
1343
+ 'screen.inventory.dateRange': 'Displayed date range',
1344
+ 'screen.inventory.allotment': 'Sellable allotment',
1345
+ 'screen.inventory.allotmentHint': 'Total rooms cannot be lower than sold plus blocked rooms.',
1346
+ 'screen.inventory.noRoomType': 'No room type is selected.',
1347
+ 'screen.inventory.noRoomTypeHint': 'Create and select a room type to manage its sales calendar.',
1348
+ 'screen.inventory.restrictions': 'Sales restrictions',
1349
+ 'screen.inventory.restrictionsHint': 'Apply MinLOS, MaxLOS, Stop Sell, CTA and CTD across the date range.',
1350
+ 'screen.inventory.empty': 'No inventory date is available in this range.',
1351
+ 'screen.inventory.emptyHint': 'Select a room type and a valid date range.',
1352
+ 'screen.services.title': 'Services & fees',
1353
+ 'screen.nightAudit.title': 'Night audit',
1354
+ 'screen.stayNotices.title': 'Stay notices',
1355
+ 'nightAudit.section.selection': 'Property and business date',
1356
+ 'nightAudit.section.run': 'Run the night audit',
1357
+ 'nightAudit.section.runHint': 'The task runs on the worker and posts per-night services and recurring room rent with idempotency keys.',
1358
+ 'nightAudit.section.history': 'Night audit history',
1359
+ 'nightAudit.section.historyHint': 'Each property keeps one durable record per date; reruns only add missing occurrences.',
1360
+ 'nightAudit.field.auditDate': 'Business date',
1361
+ 'nightAudit.action.preview': 'Preview',
1362
+ 'nightAudit.action.run': 'Add to queue',
1363
+ 'nightAudit.metric.inHouse': 'In-house stays',
1364
+ 'nightAudit.metric.servicesDue': 'Services due',
1365
+ 'nightAudit.metric.rentDue': 'Rent periods due',
1366
+ 'nightAudit.metric.estimated': 'Estimated value',
1367
+ 'nightAudit.metric.services': 'Services posted',
1368
+ 'nightAudit.metric.rent': 'Room rent posted',
1369
+ 'nightAudit.col.date': 'Business date',
1370
+ 'nightAudit.col.attempt': 'Attempt',
1371
+ 'nightAudit.state.queued': 'Queued',
1372
+ 'nightAudit.state.running': 'Running',
1373
+ 'nightAudit.state.completed': 'Completed',
1374
+ 'nightAudit.state.failed': 'Failed',
1375
+ 'nightAudit.feedback.queued': 'Night audit queued',
1376
+ 'nightAudit.feedback.queuedHint': 'The hospitality worker will process it independently; refresh this page to see the result.',
1377
+ 'nightAudit.feedback.invalidHint': 'Check the property and business date, then try again.',
1378
+ 'nightAudit.empty.property': 'There is no property to audit.',
1379
+ 'nightAudit.empty.propertyHint': 'Create a property before running end-of-day operations.',
1380
+ 'nightAudit.empty.runs': 'No night audit has run yet.',
1381
+ 'nightAudit.empty.runsHint': 'Preview the totals, then add the business date to the queue.',
1382
+ 'stayNotice.privacy.title': 'No declaration payload or full document number is retained',
1383
+ 'stayNotice.privacy.hint': 'Ket shows only the document type and final four digits. Staff prepare the declaration on an official channel; the system retains only the time, operator, evidence reference, and comparison hash.',
1384
+ 'stayNotice.section.queue': 'Work queue',
1385
+ 'stayNotice.section.queueHint': 'A record is prepared after check-in. Notice is due by 23:00 that day, or 08:00 the next day when the guest arrives after 23:00.',
1386
+ 'stayNotice.section.selected': 'Selected record',
1387
+ 'stayNotice.section.selectedHint': 'Record submission only after staff have completed it on an official channel and hold verifiable evidence.',
1388
+ 'stayNotice.col.guest': 'Guest',
1389
+ 'stayNotice.col.document': 'Masked document',
1390
+ 'stayNotice.col.due': 'Notice due',
1391
+ 'stayNotice.col.readiness': 'Readiness',
1392
+ 'stayNotice.state.all': 'All states',
1393
+ 'stayNotice.state.attention': 'Needs information',
1394
+ 'stayNotice.state.ready': 'Ready to submit',
1395
+ 'stayNotice.state.submitted': 'Submission recorded',
1396
+ 'stayNotice.state.confirmed': 'Confirmed',
1397
+ 'stayNotice.reason.tourism': 'Tourism',
1398
+ 'stayNotice.reason.business': 'Business',
1399
+ 'stayNotice.reason.family': 'Family visit',
1400
+ 'stayNotice.reason.other': 'Other reason',
1401
+ 'stayNotice.reason.select': 'Select a reason for stay',
1402
+ 'stayNotice.channel.online': 'Online public-service portal',
1403
+ 'stayNotice.channel.vneid': 'VNeID',
1404
+ 'stayNotice.channel.email': 'Email',
1405
+ 'stayNotice.channel.phone': 'Phone',
1406
+ 'stayNotice.channel.software': 'Stay-notice software',
1407
+ 'stayNotice.field.reason': 'Reason for stay',
1408
+ 'stayNotice.field.channel': 'Channel used',
1409
+ 'stayNotice.field.evidenceRef': 'Evidence reference',
1410
+ 'stayNotice.field.evidenceRefHint': 'Enter a receipt, case, logbook, or internal reference that can be verified later.',
1411
+ 'stayNotice.field.receiptRef': 'Confirmation receipt',
1412
+ 'stayNotice.action.refresh': 'Check data again',
1413
+ 'stayNotice.action.recordSubmission': 'Record submission',
1414
+ 'stayNotice.action.confirm': 'Confirm completion',
1415
+ 'stayNotice.issue.guest_partner_missing': 'guest profile is not linked',
1416
+ 'stayNotice.issue.document_missing': 'document is missing',
1417
+ 'stayNotice.issue.document_number_missing': 'document number is missing',
1418
+ 'stayNotice.issue.document_birth_date_missing': 'date of birth is missing',
1419
+ 'stayNotice.issue.property_address_missing': 'property address is incomplete',
1420
+ 'stayNotice.issue.stay_duration_over_30_days': 'the stay exceeds the 30-day limit',
1421
+ 'stayNotice.issue.notice_source_missing': 'source data is missing',
1422
+ 'stayNotice.value.complete': 'All required data is present',
1423
+ 'stayNotice.value.missing': 'Not available',
1424
+ 'stayNotice.feedback.refreshed': 'Data check requested',
1425
+ 'stayNotice.feedback.refreshedHint': 'The worker will prepare the record again from current data.',
1426
+ 'stayNotice.feedback.submitted': 'Submission recorded',
1427
+ 'stayNotice.feedback.submittedHint': 'The time, operator, and evidence reference have been retained.',
1428
+ 'stayNotice.feedback.confirmed': 'Completion confirmed',
1429
+ 'stayNotice.feedback.confirmedHint': 'The record now has confirmation evidence for later review.',
1430
+ 'stayNotice.feedback.invalidHint': 'The action could not be completed. Check its state, required data, and evidence reference.',
1431
+ 'stayNotice.empty.property': 'There is no property for stay-notice operations.',
1432
+ 'stayNotice.empty.propertyHint': 'Create a property before checking guests in.',
1433
+ 'stayNotice.empty.rows': 'No record matches this filter.',
1434
+ 'stayNotice.empty.rowsHint': 'Records appear after check-in and worker preparation.',
1435
+ 'services.metric.fees': 'Configured fees',
1436
+ 'services.metric.extras': 'Service intentions',
1437
+ 'services.metric.posted': 'Posted charges',
1438
+ 'services.metric.postedValue': 'Posted value',
1439
+ 'services.section.fees': 'Property fees',
1440
+ 'services.section.feesHint': 'Declare public fees once so OTA connections can read them from the same source of truth.',
1441
+ 'services.section.intentions': 'Service intentions',
1442
+ 'services.section.intentionsHint': 'Attach a service product to a reservation or stay before it is actually consumed.',
1443
+ 'services.section.post': 'Post an occurrence',
1444
+ 'services.section.postHint': 'Every post has an idempotency key; an operational charge cannot be rewritten afterward.',
1445
+ 'services.section.ledger': 'Operational service ledger',
1446
+ 'services.section.ledgerHint': 'This is the operational folio record; accounting entries and invoices will be connected later.',
1447
+ 'services.form.fee': 'Declare a property fee',
1448
+ 'services.form.intention': 'Add a service intention',
1449
+ 'services.action.saveFee': 'Save fee',
1450
+ 'services.action.addIntention': 'Add service',
1451
+ 'services.action.post': 'Post occurrence',
1452
+ 'services.col.target': 'Target',
1453
+ 'services.col.service': 'Service',
1454
+ 'services.col.recurrence': 'Recurrence',
1455
+ 'services.col.unitPrice': 'Unit price',
1456
+ 'services.col.materialized': 'Posted',
1457
+ 'services.col.folio': 'Folio',
1458
+ 'services.field.target': 'Reservation / stay',
1459
+ 'services.field.product': 'Service product',
1460
+ 'services.field.description': 'Description',
1461
+ 'services.field.descriptionHint': 'Leave blank to use the product name',
1462
+ 'services.field.unitPriceHint': 'Leave blank to use the product list price.',
1463
+ 'services.field.intention': 'Service intention',
1464
+ 'services.field.serviceDate': 'Service date',
1465
+ 'services.field.serviceDateHint': 'Required for per-night services.',
1466
+ 'services.field.postQuantityHint': 'Required for per-unit services.',
1467
+ 'services.target.reservation': 'Reservation',
1468
+ 'services.target.stay': 'Stay',
1469
+ 'services.value.pending': 'Not posted',
1470
+ 'services.value.posted': '{count} posts · {amount}',
1471
+ 'services.empty.fees': 'No property fee has been declared.',
1472
+ 'services.empty.feesHint': 'Active fees become available to the OTA content flow.',
1473
+ 'services.empty.catalogue': 'There is not enough data to add a service.',
1474
+ 'services.empty.catalogueHint': 'A sellable product and an active reservation are required.',
1475
+ 'services.empty.intentions': 'No service intention has been added.',
1476
+ 'services.empty.intentionsHint': 'Add minibar, breakfast, spa or another guest service.',
1477
+ 'services.empty.post': 'No active service is ready to post.',
1478
+ 'services.empty.postHint': 'Create a service intention before posting an occurrence.',
1479
+ 'services.empty.ledger': 'No service occurrence has been posted.',
1480
+ 'services.empty.ledgerHint': 'Charges posted to operational folios appear here.',
1481
+ 'metric.properties': 'Active properties',
1482
+ 'metric.rooms': 'Total rooms',
1483
+ 'metric.available': 'Ready rooms',
1484
+ 'metric.occupied': 'Occupied rooms',
1485
+ 'metric.attention': 'Needs attention',
1486
+ 'metric.arrivals': 'Arrivals today',
1487
+ 'metric.inHouse': 'In house',
1488
+ 'metric.departures': 'Departures today',
1489
+ 'metric.overdue': 'Overdue departures',
1490
+ 'metric.openFolios': 'Open folios',
1491
+ 'metric.inventoryDays': 'Days',
1492
+ 'metric.minimumAvailable': 'Lowest availability',
1493
+ 'metric.sold': 'Room nights sold',
1494
+ 'metric.blocked': 'Room nights blocked',
1495
+ 'content.metric.target': 'Selected target',
1496
+ 'content.metric.images': 'Images',
1497
+ 'content.metric.completeness': 'Completeness',
1498
+ 'content.metric.fields': '{completed}/{total} content groups available',
1499
+ 'content.target.none': 'Not selected',
1500
+ 'content.target.property': 'General property content',
1501
+ 'content.target.roomType': 'Room type',
1502
+ 'content.field.property': 'Property',
1503
+ 'content.field.target': 'Content target',
1504
+ 'content.field.category': 'Image category',
1505
+ 'content.field.caption': 'Caption',
1506
+ 'content.category.exterior': 'Exterior',
1507
+ 'content.category.lobby': 'Lobby',
1508
+ 'content.category.room': 'Room',
1509
+ 'content.category.bathroom': 'Bathroom',
1510
+ 'content.category.restaurant': 'Restaurant',
1511
+ 'content.category.pool': 'Pool',
1512
+ 'content.category.other': 'Other',
1513
+ 'content.media.empty': 'No image has been added for this target.',
1514
+ 'content.media.primary': 'Primary image',
1515
+ 'content.media.makePrimary': 'Set as primary',
1516
+ 'content.media.moveUp': 'Move earlier',
1517
+ 'content.media.moveDown': 'Move later',
1518
+ 'content.media.remove': 'Remove image',
1519
+ 'content.media.choose': 'Choose an image',
1520
+ 'content.media.add': 'Add image',
1521
+ 'content.metadata.group': 'Image descriptions',
1522
+ 'content.action.saveMetadata': 'Save description',
1523
+ 'content.feedback.saved': 'Content updated',
1524
+ 'content.feedback.savedHint': 'The change is now available for each OTA connection to process independently.',
1525
+ 'content.feedback.invalid': 'Content was not updated',
1526
+ 'content.feedback.invalidHint': 'Review the image category and description.',
1527
+ 'col.code': 'Code',
1528
+ 'col.name': 'Name',
1529
+ 'col.type': 'Type',
1530
+ 'col.location': 'Location',
1531
+ 'col.stars': 'Stars',
1532
+ 'col.roomType': 'Room type',
1533
+ 'col.capacity': 'Capacity',
1534
+ 'col.status': 'Status',
1535
+ 'col.rooms': 'Rooms',
1536
+ 'col.baseRate': 'Base rate',
1537
+ 'col.published': 'Published',
1538
+ 'col.scope': 'Scope',
1539
+ 'col.policy': 'Policy',
1540
+ 'col.freeCancellation': 'Free cancellation',
1541
+ 'col.penalty': 'Penalty',
1542
+ 'col.guest': 'Guest',
1543
+ 'col.provider': 'Source',
1544
+ 'col.checkIn': 'Check-in',
1545
+ 'col.checkOut': 'Check-out',
1546
+ 'col.amount': 'Amount',
1547
+ 'col.room': 'Room',
1548
+ 'col.guests': 'Guests',
1549
+ 'col.folio': 'Folio',
1550
+ 'col.stays': 'Stays',
1551
+ 'col.assignee': 'Assignee',
1552
+ 'col.requestedAt': 'Requested at',
1553
+ 'col.priority': 'Priority',
1554
+ 'col.rateType': 'Rate cycle',
1555
+ 'col.mealPlan': 'Meal plan',
1556
+ 'col.los': 'Min / Max LOS',
1557
+ 'col.default': 'Default',
1558
+ 'col.date': 'Date',
1559
+ 'col.total': 'Sellable total',
1560
+ 'col.sold': 'Sold',
1561
+ 'col.blocked': 'Blocked',
1562
+ 'col.available': 'Available',
1563
+ 'col.restrictions': 'Restrictions',
1564
+ 'col.quantity': 'Quantity',
1565
+ 'value.yes': 'Yes',
1566
+ 'value.no': 'No',
1567
+ 'value.active': 'Active',
1568
+ 'value.inactive': 'Inactive',
1569
+ 'value.published': 'Published',
1570
+ 'value.draft': 'Draft',
1571
+ 'value.hours': '{count} hours',
1572
+ 'value.percent': '{count}%',
1573
+ 'accommodation.hotel': 'Hotel',
1574
+ 'accommodation.resort': 'Resort',
1575
+ 'accommodation.aparthotel': 'Aparthotel',
1576
+ 'accommodation.hostel': 'Hostel',
1577
+ 'accommodation.villa': 'Villa',
1578
+ 'accommodation.homestay': 'Homestay',
1579
+ 'accommodation.boutique': 'Boutique hotel',
1580
+ 'accommodation.serviced_apartment': 'Serviced apartment',
1581
+ 'roomStatus.available': 'Ready',
1582
+ 'roomStatus.occupied': 'Occupied',
1583
+ 'roomStatus.dirty': 'Dirty',
1584
+ 'roomStatus.cleaning': 'Cleaning',
1585
+ 'roomStatus.maintenance': 'Maintenance',
1586
+ 'roomStatus.out_of_order': 'Out of order',
1587
+ 'roomStatus.all': 'All states',
1588
+ 'cleaningType.checkout_clean': 'Checkout clean',
1589
+ 'cleaningType.daily_clean': 'Daily clean',
1590
+ 'cleaningType.maintenance': 'Maintenance',
1591
+ 'cleaningType.inspection': 'Inspection',
1592
+ 'cleaningPriority.normal': 'Normal',
1593
+ 'cleaningPriority.urgent': 'Urgent',
1594
+ 'cleaningState.all': 'All states',
1595
+ 'cleaningState.todo': 'To do',
1596
+ 'cleaningState.in_progress': 'In progress',
1597
+ 'cleaningState.done': 'Done',
1598
+ 'cleaningState.cancelled': 'Cancelled',
1599
+ 'amenityScope.property': 'Property',
1600
+ 'amenityScope.room': 'Room',
1601
+ 'bed.single': 'Single bed',
1602
+ 'bed.double': 'Double bed',
1603
+ 'bed.queen': 'Queen bed',
1604
+ 'bed.king': 'King bed',
1605
+ 'bed.sofa': 'Sofa bed',
1606
+ 'bed.bunk': 'Bunk bed',
1607
+ 'policy.flexible': 'Flexible',
1608
+ 'policy.moderate': 'Moderate',
1609
+ 'policy.strict': 'Strict',
1610
+ 'policy.non_refundable': 'Non-refundable',
1611
+ 'contact.general': 'General contact',
1612
+ 'contact.frontdesk': 'Front desk',
1613
+ 'contact.reservation': 'Reservations',
1614
+ 'propertyCharge.parking': 'Parking fee',
1615
+ 'propertyCharge.city_tax': 'City tax',
1616
+ 'propertyCharge.internet': 'Internet fee',
1617
+ 'propertyCharge.resort_fee': 'Resort fee',
1618
+ 'propertyCharge.other': 'Other fee',
1619
+ 'extraRecurrence.once': 'Once',
1620
+ 'extraRecurrence.per_night': 'Per night',
1621
+ 'extraRecurrence.per_unit': 'Per unit',
1622
+ 'chargeState.active': 'Posted',
1623
+ 'chargeState.void': 'Voided',
1624
+ 'bookingType.nightly': 'Nightly',
1625
+ 'bookingType.hourly': 'Hourly',
1626
+ 'bookingType.weekly': 'Weekly',
1627
+ 'bookingType.monthly': 'Monthly',
1628
+ 'reservation.feedback.saved': 'Reservation confirmed',
1629
+ 'reservation.feedback.savedHint': 'The reservation, stay, folio, and inventory were recorded in one transaction.',
1630
+ 'reservation.feedback.quoted': 'Rate and availability checked',
1631
+ 'reservation.feedback.quotedHint': 'This quote is a current snapshot; inventory is checked again at confirmation.',
1632
+ 'reservation.feedback.invalidHint': 'Review the guest, dates, rate, and sales restrictions shown below.',
1633
+ 'reservation.feedback.checkedIn': 'Guest checked in',
1634
+ 'reservation.feedback.checkedInHint': 'The room is assigned, the stay is open, and the stay notice is being prepared.',
1635
+ 'reservation.feedback.checkedOut': 'Guest checked out',
1636
+ 'reservation.feedback.checkedOutHint': 'The stay is closed, the room is awaiting service, and a housekeeping task was created.',
1637
+ 'reservation.feedback.checkedOutEarly': 'Guest checked out early',
1638
+ 'reservation.feedback.checkedOutEarlyHint': 'Inventory for the remaining nights was released; current charges were retained for front-desk reconciliation.',
1639
+ 'reservation.feedback.cancelled': 'Reservation cancelled',
1640
+ 'reservation.feedback.cancelledHint': 'Room inventory was released and unfinished charges were voided.',
1641
+ 'reservation.feedback.amended': 'Reservation updated',
1642
+ 'reservation.feedback.amendedHint': 'The stay schedule, inventory, lead guest, and room charge were updated in one transaction.',
1643
+ 'reservation.feedback.departureAdjusted': 'Departure updated',
1644
+ 'reservation.feedback.departureAdjustedHint': 'The stay schedule, inventory, and room charge were synchronized in one transaction.',
1645
+ 'reservation.feedback.noShow': 'Guest marked as no-show',
1646
+ 'reservation.feedback.noShowHint': 'Inventory was released, the stay was closed, and existing charges were retained for reconciliation.',
1647
+ 'reservation.field.property': 'Property',
1648
+ 'reservation.field.code': 'Reservation code',
1649
+ 'reservation.field.codeHint': 'You can change this to match the front desk convention.',
1650
+ 'reservation.field.guest': 'Lead guest',
1651
+ 'reservation.field.roomType': 'Room type',
1652
+ 'reservation.field.bookingType': 'Booking cycle',
1653
+ 'reservation.field.adults': 'Adults',
1654
+ 'reservation.field.children': 'Children',
1655
+ 'reservation.field.rate': 'Unit rate',
1656
+ 'reservation.field.rateHint': 'Leave empty to use the active default rate.',
1657
+ 'reservation.field.room': 'Physical room',
1658
+ 'reservation.field.billingMode': 'Billing mode',
1659
+ 'reservation.field.folio': 'Folio',
1660
+ 'reservation.field.cancelReason': 'Cancellation reason',
1661
+ 'reservation.field.cancelReasonHint': 'Keep a reason for front desk and sales follow-up.',
1662
+ 'reservation.field.noShowReason': 'No-show note',
1663
+ 'reservation.field.noShowReasonHint': 'Record the evidence so the next shift and sales team can reconcile the case.',
1664
+ 'reservation.value.selectGuest': 'Select a guest',
1665
+ 'reservation.value.unassigned': 'Not assigned',
1666
+ 'reservation.action.quote': 'Check rate and rooms',
1667
+ 'reservation.action.create': 'Confirm reservation',
1668
+ 'reservation.action.back': 'Back to reservations',
1669
+ 'reservation.action.checkIn': 'Check in',
1670
+ 'reservation.action.checkInHint': 'Select a ready room matching the booked type, then confirm arrival.',
1671
+ 'reservation.action.checkOut': 'Check out',
1672
+ 'reservation.action.checkOutHint': 'Close the stay, move the room to awaiting service, and create the housekeeping task.',
1673
+ 'reservation.action.adjustDeparture': 'Adjust departure',
1674
+ 'reservation.action.adjustDepartureHint': 'Extend or shorten the in-house stay; availability and the room charge are checked again.',
1675
+ 'reservation.action.cancel': 'Cancel reservation',
1676
+ 'reservation.action.cancelHint': 'Cancelling releases inventory and closes the related operating records.',
1677
+ 'reservation.action.amend': 'Update reservation',
1678
+ 'reservation.action.amendHint': 'Change a direct reservation before check-in; restrictions and availability are checked again.',
1679
+ 'reservation.action.noShow': 'Mark guest as no-show',
1680
+ 'reservation.action.noShowHint': 'Available from check-in time; inventory is released while current charges remain for reconciliation.',
1681
+ 'reservation.detail.title': 'Reservation {code}',
1682
+ 'reservation.detail.kicker': 'Reservation record',
1683
+ 'reservation.detail.stay': 'Stay information',
1684
+ 'reservation.detail.stayHint': 'Sales, guest, room, and folio details for this reservation.',
1685
+ 'reservation.section.intake': 'Direct reservation intake',
1686
+ 'reservation.section.intakeHint': 'Nightly, weekly, and monthly bookings are supported. Hourly booking will open with slot inventory.',
1687
+ 'reservation.section.quote': 'Quote ready',
1688
+ 'reservation.section.quoteHint': 'Confirmation rechecks restrictions and claims inventory in an oversell-safe transaction.',
1689
+ 'reservation.section.list': 'Reservation list',
1690
+ 'reservation.section.listHint': 'Direct and OTA bookings share one operational ledger.',
1691
+ 'reservation.quote.rate': 'Applied rate',
1692
+ 'reservation.quote.quantity': 'Billing periods',
1693
+ 'reservation.quote.availability': 'Minimum rooms left',
1694
+ 'reservation.quote.total': 'Room total',
1695
+ 'reservation.empty.partners': 'There is no guest to lead the reservation.',
1696
+ 'reservation.empty.partnersHint': 'Create a customer in Contacts before taking a reservation.',
1697
+ 'reservation.empty.roomTypes': 'This property has no room type to sell.',
1698
+ 'reservation.empty.roomTypesHint': 'Create a room type and physical rooms before taking reservations.',
1699
+ 'reservation.empty.availableRooms': 'No ready room matches the booked type.',
1700
+ 'reservation.empty.availableRoomsHint': 'Review the room board or finish housekeeping before checking the guest in.',
1701
+ 'stay.detail.title': 'Stay {code}',
1702
+ 'stay.detail.kicker': 'Stay record',
1703
+ 'stay.action.back': 'Back to stays',
1704
+ 'stay.action.moveRoom': 'Move room',
1705
+ 'stay.action.addGuest': 'Add staying guest',
1706
+ 'stay.action.saveDocument': 'Save identity document',
1707
+ 'stay.feedback.guestAdded': 'Staying guest added',
1708
+ 'stay.feedback.guestAddedHint': 'The guest list was updated; stay notices will be prepared again when the guest is in house.',
1709
+ 'stay.feedback.documentSaved': 'Identity document saved',
1710
+ 'stay.feedback.documentSavedHint': 'The front-desk record was updated; the full document number is not shown in operational lists.',
1711
+ 'stay.feedback.roomMoved': 'Room moved',
1712
+ 'stay.feedback.roomMovedHint': 'The new assignment is active; the previous room awaits service and a housekeeping task was created.',
1713
+ 'stay.field.room': 'Current room',
1714
+ 'stay.field.newRoom': 'Destination room',
1715
+ 'stay.field.moveReason': 'Move reason',
1716
+ 'stay.field.moveReasonHint': 'Record the operational reason in the room-assignment history.',
1717
+ 'stay.field.nextBillDate': 'Next billing date',
1718
+ 'stay.field.reservation': 'Source reservation',
1719
+ 'stay.field.guestName': 'Guest name',
1720
+ 'stay.field.linkedPartner': 'Linked contact',
1721
+ 'stay.field.linkedPartnerHint': 'Optional; use this when the guest already has a contact record.',
1722
+ 'stay.assignment.start': 'Start',
1723
+ 'stay.assignment.end': 'End',
1724
+ 'stay.guest.role': 'Role',
1725
+ 'stay.guest.primary': 'Lead guest',
1726
+ 'stay.guest.companion': 'Companion',
1727
+ 'stay.document.guest': 'Document holder',
1728
+ 'stay.document.type': 'Document type',
1729
+ 'stay.document.number': 'Document number',
1730
+ 'stay.document.numberHint': 'The full number is kept in the protected record and masked on operational screens.',
1731
+ 'stay.document.fullName': 'Name on document',
1732
+ 'stay.document.dateOfBirth': 'Date of birth',
1733
+ 'stay.document.gender': 'Gender',
1734
+ 'stay.document.genderUnknown': 'Not specified',
1735
+ 'stay.document.nationality': 'Nationality',
1736
+ 'stay.document.nationalityHint': 'Use a two-letter country code, for example VN.',
1737
+ 'stay.document.permanentAddress': 'Permanent address',
1738
+ 'stay.document.issueDate': 'Issue date',
1739
+ 'stay.document.issuePlace': 'Issue place',
1740
+ 'stay.document.readiness': 'Readiness',
1741
+ 'stay.document.ready': 'Ready',
1742
+ 'stay.document.attention': 'Needs attention',
1743
+ 'stay.section.information': 'Stay information',
1744
+ 'stay.section.informationHint': 'Schedule, room type, billing mode, and related operating records.',
1745
+ 'stay.section.assignments': 'Room assignment history',
1746
+ 'stay.section.assignmentsHint': 'Each room move appends a new assignment instead of replacing history.',
1747
+ 'stay.section.guests': 'Staying guests',
1748
+ 'stay.section.guestsHint': 'The lead guest and companions share this stay.',
1749
+ 'stay.section.documents': 'Identity documents',
1750
+ 'stay.section.documentsHint': 'Capture documents at the desk for registered staying guests; the list only shows masked data.',
1751
+ 'stay.empty.assignments': 'No room assignment yet.',
1752
+ 'stay.empty.assignmentsHint': 'The first assignment is created when front desk checks the guest in.',
1753
+ 'stay.empty.guests': 'No guest is attached to this stay.',
1754
+ 'stay.empty.guestsHint': 'Add the lead guest or companions to complete the stay record.',
1755
+ 'stay.empty.documents': 'No identity document is recorded.',
1756
+ 'stay.empty.documentsHint': 'Capture a guest document to complete the check-in record.',
1757
+ 'stay.empty.documentGuests': 'No staying guest is linked to Contacts.',
1758
+ 'stay.empty.documentGuestsHint': 'Link the staying guest to a contact before capturing an identity document.',
1759
+ 'stay.empty.availableRooms': 'No ready room is available for a move.',
1760
+ 'stay.empty.availableRoomsHint': 'Review room status or finish housekeeping before moving the guest.',
1761
+ 'stay.value.noLinkedPartner': 'No linked contact',
1762
+ 'stay.validation.moveRequired': 'Select a destination room and enter the move reason.',
1763
+ 'folio.detail.title': 'Folio {code}',
1764
+ 'folio.detail.kicker': 'Operational folio',
1765
+ 'folio.action.back': 'Back to folios',
1766
+ 'folio.action.postCharge': 'Post charge',
1767
+ 'folio.action.voidCharge': 'Void charge',
1768
+ 'folio.feedback.chargePosted': 'Charge posted',
1769
+ 'folio.feedback.chargePostedHint': 'The folio total was updated in the same transaction.',
1770
+ 'folio.feedback.chargeVoided': 'Charge voided',
1771
+ 'folio.feedback.chargeVoidedHint': 'The original row remains as evidence and the folio total was adjusted.',
1772
+ 'folio.notice.operational': 'Operational record only',
1773
+ 'folio.notice.operationalHint': 'These rows are not journal entries, payments, or invoices; accounting integration will be connected later.',
1774
+ 'folio.metric.activeTotal': 'Active total',
1775
+ 'folio.metric.activeCharges': 'Active charges',
1776
+ 'folio.section.information': 'Folio information',
1777
+ 'folio.section.informationHint': 'Payer, opening time, and operational lifecycle state.',
1778
+ 'folio.section.charges': 'Charges',
1779
+ 'folio.section.chargesHint': 'Room, service, and discount lines remain individually auditable.',
1780
+ 'folio.section.correction': 'Correct an error',
1781
+ 'folio.section.correctionHint': 'Void the incorrect row and preserve evidence instead of editing history.',
1782
+ 'folio.section.stays': 'Related stays',
1783
+ 'folio.section.staysHint': 'One folio may collect one or more stays for the same payer.',
1784
+ 'folio.field.openedAt': 'Opened at',
1785
+ 'folio.field.closedAt': 'Closed at',
1786
+ 'folio.field.charge': 'Charge to void',
1787
+ 'folio.field.voidReason': 'Void reason',
1788
+ 'folio.field.voidReasonHint': 'An operational reason is required for later review.',
1789
+ 'folio.charge.occurredAt': 'Occurred at',
1790
+ 'folio.charge.description': 'Description',
1791
+ 'folio.charge.roomDescription': 'Room charge for booked period',
1792
+ 'folio.charge.type': 'Charge type',
1793
+ 'folio.charge.stay': 'Stay',
1794
+ 'folio.charge.quantity': 'Quantity',
1795
+ 'folio.charge.unitPrice': 'Unit price',
1796
+ 'folio.empty.charges': 'No charges yet.',
1797
+ 'folio.empty.chargesHint': 'Room and service charges appear here after posting.',
1798
+ 'folio.empty.stays': 'No related stay yet.',
1799
+ 'folio.empty.staysHint': 'A stay is attached when its reservation is created.',
1800
+ 'folio.value.noStay': 'Whole folio',
1801
+ 'mealPlan.RO': 'Room only',
1802
+ 'mealPlan.BB': 'Bed & breakfast',
1803
+ 'mealPlan.HB': 'Half board',
1804
+ 'mealPlan.FB': 'Full board',
1805
+ 'mealPlan.AI': 'All inclusive',
1806
+ 'restriction.open': 'Open',
1807
+ 'restriction.stopSell': 'Stop sell',
1808
+ 'restriction.cta': 'Closed to arrival (CTA)',
1809
+ 'restriction.ctd': 'Closed to departure (CTD)',
1810
+ 'field.minStay': 'Minimum periods',
1811
+ 'field.maxStay': 'Maximum periods',
1812
+ 'field.isDefault': 'Default rate',
1813
+ 'field.isDefaultHint': 'Only one active default exists for each room type and rate cycle.',
1814
+ 'field.active': 'Active',
1815
+ 'field.from': 'From',
1816
+ 'field.to': 'To',
1817
+ 'field.minLos': 'Minimum nights (MinLOS)',
1818
+ 'field.maxLos': 'Maximum nights (MaxLOS)',
1819
+ 'action.saveRatePlan': 'Save rate plan',
1820
+ 'action.select': 'Select',
1821
+ 'action.cancel': 'Cancel',
1822
+ 'action.apply': 'Apply',
1823
+ 'action.updateAllotment': 'Update allotment',
1824
+ 'action.updateRestrictions': 'Update restrictions',
1825
+ 'feedback.saved': 'Changes saved',
1826
+ 'feedback.savedHint': 'The sales calendar was updated in the same business database.',
1827
+ 'feedback.invalid': 'Changes were not saved',
1828
+ 'feedback.invalidHint': 'Review the values and the capacity already committed to bookings.',
1829
+ 'billing.upfront': 'Upfront',
1830
+ 'billing.recurring': 'Recurring',
1831
+ 'provider.direct': 'Direct',
1832
+ 'provider.booking': 'Booking.com',
1833
+ 'provider.agoda': 'Agoda',
1834
+ 'provider.expedia': 'Expedia',
1835
+ 'provider.traveloka': 'Traveloka',
1836
+ 'provider.airbnb': 'Airbnb',
1837
+ 'reservationState.draft': 'Draft',
1838
+ 'reservationState.confirmed': 'Confirmed',
1839
+ 'reservationState.checked_in': 'Checked in',
1840
+ 'reservationState.checked_out': 'Checked out',
1841
+ 'reservationState.cancelled': 'Cancelled',
1842
+ 'reservationState.no_show': 'No-show',
1843
+ 'stayState.draft': 'Expected',
1844
+ 'stayState.checked_in': 'In house',
1845
+ 'stayState.checked_out': 'Checked out',
1846
+ 'stayState.cancelled': 'Cancelled',
1847
+ 'stayState.no_show': 'No-show',
1848
+ 'folioState.draft': 'Draft',
1849
+ 'folioState.open': 'Open',
1850
+ 'folioState.closed': 'Closed',
1851
+ 'folioState.cancelled': 'Cancelled',
1852
+ 'assignmentState.active': 'Active',
1853
+ 'assignmentState.closed': 'Closed',
1854
+ 'charge.room': 'Room',
1855
+ 'charge.minibar': 'Minibar',
1856
+ 'charge.spa': 'Spa',
1857
+ 'charge.restaurant': 'Restaurant',
1858
+ 'charge.service': 'Service',
1859
+ 'charge.discount': 'Discount',
1860
+ 'document.cccd': 'Citizen identity card',
1861
+ 'document.cmnd': 'Identity card',
1862
+ 'document.passport': 'Passport',
1863
+ 'document.other': 'Other document',
1864
+ 'gender.male': 'Male',
1865
+ 'gender.female': 'Female',
1866
+ 'gender.other': 'Other',
1867
+ 'ocr.pending': 'Pending recognition',
1868
+ 'ocr.done': 'Recognised',
1869
+ 'ocr.failed': 'Recognition failed',
1870
+ 'validation.required': 'This field is required.',
1871
+ 'validation.unique': 'This code or value is already in use.',
1872
+ 'validation.clock': 'Time must use the HH:mm format.',
1873
+ 'validation.timezone': 'Timezone must be a valid IANA name.',
1874
+ 'validation.star_rating': 'Star rating must be between 0 and 5.',
1875
+ 'validation.non_negative': 'Value cannot be negative.',
1876
+ 'validation.decimal': 'Value must be a valid decimal number.',
1877
+ 'validation.positive': 'Value must be greater than zero.',
1878
+ 'validation.percentage': 'Percentage must be between 0 and 100.',
1879
+ 'validation.capacity': 'Capacity must be at least one.',
1880
+ 'validation.capacity_total': 'Default guests cannot exceed the maximum adults and children combined.',
1881
+ 'validation.view_type': 'View type is invalid.',
1882
+ 'validation.color': 'Identity colour must use the #RRGGBB format.',
1883
+ 'validation.accommodation_type': 'Accommodation type is invalid.',
1884
+ 'validation.room_status': 'Room status is invalid.',
1885
+ 'validation.room_status_managed': 'Occupied and cleaning states can only change through the stay or housekeeping-task workflow.',
1886
+ 'validation.room_status_configuration_managed': 'Room settings cannot change status; use the stay or housekeeping workflow.',
1887
+ 'validation.room_status_available_managed': 'A room only becomes available after its housekeeping work is completed.',
1888
+ 'validation.room_status_note_required': 'A reason is required when taking a room out of service.',
1889
+ 'validation.room_archived': 'An archived room cannot change operational status.',
1890
+ 'validation.room_occupied': 'The room is occupied; move or check out the stay first.',
1891
+ 'validation.room_cleaning': 'The room is being cleaned; complete or cancel the task first.',
1892
+ 'validation.room_task_open': 'The room has open housekeeping work; resolve the task first.',
1893
+ 'validation.room_archive_status': 'Only an available room can be archived; finish its operating-status workflow first.',
1894
+ 'validation.room_has_active_stay': 'The room has an active stay; move or check out the guest first.',
1895
+ 'validation.room_has_open_task': 'The room has open housekeeping work; complete or cancel the task first.',
1896
+ 'validation.amenity_scope': 'Amenity scope is invalid.',
1897
+ 'validation.amenity_target': 'Amenity assignment target is invalid.',
1898
+ 'validation.amenity_scope_mismatch': 'The amenity cannot be used for this target.',
1899
+ 'validation.bed_type': 'Bed type is invalid.',
1900
+ 'validation.cancellation_policy_type': 'Cancellation policy type is invalid.',
1901
+ 'validation.contact_type': 'Contact type is invalid.',
1902
+ 'validation.property_missing': 'Property was not found.',
1903
+ 'validation.property_archived': 'The property is archived; restore it first.',
1904
+ 'validation.building_missing': 'Building was not found.',
1905
+ 'validation.floor_missing': 'Floor was not found.',
1906
+ 'validation.room_type_missing': 'Room type was not found.',
1907
+ 'validation.room_type_archived': 'The room type is archived; restore it first.',
1908
+ 'validation.room_missing': 'Room was not found.',
1909
+ 'validation.policy_missing': 'Cancellation policy was not found.',
1910
+ 'validation.amenity_missing': 'Amenity was not found.',
1911
+ 'validation.amenity_category_missing': 'Amenity category was not found.',
1912
+ 'validation.target_missing': 'Assignment target was not found.',
1913
+ 'validation.property_mismatch': 'The record belongs to another property.',
1914
+ 'validation.building_mismatch': 'The floor does not belong to the selected building.',
1915
+ 'validation.location_immutable': 'An existing floor cannot move to another building.',
1916
+ 'validation.location_archived': 'The location is archived; restore it first.',
1917
+ 'validation.location_has_active_floors': 'The building still has active floors; archive each floor first.',
1918
+ 'validation.location_has_active_rooms': 'The location still has active rooms; move or archive the rooms first.',
1919
+ 'validation.booking_type': 'Booking type is invalid.',
1920
+ 'validation.datetime': 'Date and time are invalid.',
1921
+ 'validation.schedule_order': 'Check-out must be after check-in.',
1922
+ 'validation.weekly_minimum': 'A weekly booking must span at least 7 nights.',
1923
+ 'validation.monthly_minimum': 'A monthly booking must span at least 30 nights.',
1924
+ 'validation.nightly_minimum': 'A nightly booking must span at least one night.',
1925
+ 'validation.hourly_minimum': 'An hourly booking must span at least one hour.',
1926
+ 'validation.partner_missing': 'Guest was not found.',
1927
+ 'validation.guest_not_registered': 'This guest is not registered on the stay.',
1928
+ 'validation.document_owner_immutable': 'An existing document cannot move to another guest or stay.',
1929
+ 'validation.booking_provider': 'Booking source is invalid.',
1930
+ 'validation.billing_mode': 'Billing mode is invalid.',
1931
+ 'validation.provider_external_unique': 'This external booking already exists for the selected source.',
1932
+ 'validation.reservation_missing': 'Reservation was not found.',
1933
+ 'validation.reservation_cannot_cancel': 'The reservation cannot be cancelled in its current state.',
1934
+ 'validation.reservation_cannot_amend': 'Only a confirmed reservation can be changed before the guest checks in.',
1935
+ 'validation.reservation_cannot_no_show': 'Only a confirmed reservation that has not checked in can be marked as a no-show.',
1936
+ 'validation.reservation_no_show_too_early': 'The reservation cannot be marked as a no-show before its check-in time.',
1937
+ 'validation.reservation_external_readonly': 'OTA reservations follow channel revisions and cannot have commercial details edited at the front desk.',
1938
+ 'validation.stay_missing': 'Stay was not found.',
1939
+ 'validation.stay_cannot_adjust_departure': 'Departure can only be adjusted while the guest is in house.',
1940
+ 'validation.departure_not_future': 'The new departure must be in the future.',
1941
+ 'validation.stay_cannot_check_in': 'The stay cannot be checked in from its current state.',
1942
+ 'validation.early_check_in': 'The property check-in time has not been reached.',
1943
+ 'validation.no_available_room': 'No ready room remains for the reserved room type.',
1944
+ 'validation.room_type_mismatch': 'The room is not of the reserved room type.',
1945
+ 'validation.room_not_available': 'The room is no longer ready.',
1946
+ 'validation.transition_conflict': 'The record changed; reload it and try again.',
1947
+ 'validation.cleaning_type': 'The cleaning task type is invalid.',
1948
+ 'validation.cleaning_priority': 'The cleaning priority is invalid.',
1949
+ 'validation.cleaning_room_status': 'Maintenance work requires an out-of-service room; other work must wait until the room returns to operations.',
1950
+ 'validation.cleaning_task_missing': 'The cleaning task was not found.',
1951
+ 'validation.cleaning_cannot_start': 'Only a pending task can be started.',
1952
+ 'validation.cleaning_cannot_complete': 'Only an in-progress task can be completed.',
1953
+ 'validation.cleaning_cannot_cancel': 'A completed or cancelled task cannot be cancelled again.',
1954
+ 'validation.stay_cannot_move': 'The stay cannot be moved from its current state.',
1955
+ 'validation.active_assignment_missing': 'No active room assignment was found.',
1956
+ 'validation.assignment_order': 'The change time must be after check-in.',
1957
+ 'validation.stay_cannot_check_out': 'The stay cannot be checked out from its current state.',
1958
+ 'validation.primary_guest_mismatch': 'The primary guest must match the booking contact.',
1959
+ 'validation.primary_guest_unique': 'The stay already has a primary guest.',
1960
+ 'validation.folio_missing': 'Folio was not found.',
1961
+ 'validation.folio_not_open': 'The folio is no longer open.',
1962
+ 'validation.folio_mismatch': 'The charge does not belong to this stay folio.',
1963
+ 'validation.room_charge_missing': 'The active room charge required for this update was not found.',
1964
+ 'validation.charge_missing': 'Charge was not found.',
1965
+ 'validation.charge_not_active': 'The charge is no longer active and cannot be voided.',
1966
+ 'validation.charge_type': 'Charge type is invalid.',
1967
+ 'validation.document_type': 'Document type is invalid.',
1968
+ 'validation.authentication_required': 'Sign in to record this action.',
1969
+ 'validation.stay_notice_missing': 'The stay-notice record was not found.',
1970
+ 'validation.stay_notice_reason': 'The reason for stay is invalid.',
1971
+ 'validation.stay_notice_channel': 'The stay-notice channel is invalid.',
1972
+ 'validation.stay_notice_not_ready': 'Required data is missing, so submission cannot be recorded.',
1973
+ 'validation.stay_notice_not_submitted': 'Record submission before confirming completion.',
1974
+ 'validation.stay_notice_stay_state': 'Prepare a stay notice only after the guest has checked in.',
1975
+ 'validation.gender': 'Gender is invalid.',
1976
+ 'validation.ocr_state': 'Document recognition state is invalid.',
1977
+ 'validation.attachment_missing': 'Attachment was not found.',
1978
+ 'validation.date': 'Date is invalid.',
1979
+ 'validation.audit_future': 'A future business date cannot be audited.',
1980
+ 'validation.date_range_order': 'The end date must be on or after the start date.',
1981
+ 'validation.inventory_horizon': 'Each operation may cover at most {count} days.',
1982
+ 'validation.ledger_missing': 'No inventory row was found for {date}.',
1983
+ 'validation.no_availability': 'No availability on {date}: {available} remains and {required} is required.',
1984
+ 'validation.inventory_change_required': 'Enter either a total or a blocked-room count.',
1985
+ 'validation.inventory_capacity': '{date} already has {committed} committed rooms, above total {total}.',
1986
+ 'validation.rate_type': 'Rate cycle is invalid.',
1987
+ 'validation.los_order': 'Maximum stay must be zero or no lower than minimum stay.',
1988
+ 'validation.meal_plan': 'Meal plan is invalid.',
1989
+ 'validation.default_rate_unique': 'The room type already has an active default for this rate cycle.',
1990
+ 'validation.stop_sell': 'Sales are stopped for the night of {date}.',
1991
+ 'validation.min_los': '{date} requires at least {count} nights; the booking has {actual}.',
1992
+ 'validation.max_los': '{date} allows at most {count} nights; the booking has {actual}.',
1993
+ 'validation.closed_to_arrival': 'Arrival is closed on {date} (CTA).',
1994
+ 'validation.closed_to_departure': 'Departure is closed on {date} (CTD).',
1995
+ 'validation.rate_plan_min_stay': 'The rate plan requires at least {count} periods; the booking has {actual}.',
1996
+ 'validation.rate_plan_max_stay': 'The rate plan allows at most {count} periods; the booking has {actual}.',
1997
+ 'validation.property_charge_type': 'Property fee type is invalid.',
1998
+ 'validation.extra_line_target': 'Select exactly one reservation or stay.',
1999
+ 'validation.extra_line_target_cancelled': 'The reservation or stay ended before the guest arrived.',
2000
+ 'validation.product_missing': 'Service product was not found.',
2001
+ 'validation.product_template_missing': 'Service product details were not found.',
2002
+ 'validation.product_not_saleable': 'This product is no longer saleable.',
2003
+ 'validation.product_uom_mismatch': 'The unit of measure is not available for this product.',
2004
+ 'validation.extra_recurrence': 'Service recurrence is invalid.',
2005
+ 'validation.extra_line_missing': 'Service intention was not found.',
2006
+ 'validation.extra_line_inactive': 'Service intention is inactive.',
2007
+ 'validation.extra_service_date': 'Service date must be inside the stay period.',
2008
+ 'validation.extra_line_materialized': 'A service cannot be edited after an occurrence was posted.',
2009
+ },
2010
+ };
2011
+ //# sourceMappingURL=messages.js.map