@coopenomics/desktop 2.2.2

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 (784) hide show
  1. package/.editorconfig +9 -0
  2. package/.env-example +3 -0
  3. package/.eslintignore +8 -0
  4. package/.eslintrc.cjs +91 -0
  5. package/.prettierrc +7 -0
  6. package/.vscode/extensions.json +15 -0
  7. package/.vscode/settings.json +14 -0
  8. package/CHANGELOG.md +495 -0
  9. package/Env-example.ts +12 -0
  10. package/README.md +38 -0
  11. package/extensions/powerup/boot.ts +17 -0
  12. package/extensions/powerup/src/Powerup.vue +3 -0
  13. package/index.html +78 -0
  14. package/package.json +98 -0
  15. package/postcss.config.cjs +27 -0
  16. package/public/documents/privacy_policy.pdf +0 -0
  17. package/public/documents/regulation_on_the_cpp_wallet.pdf +0 -0
  18. package/public/documents/regulation_on_the_procedure_and_rules_for_using_a_simple_electronic_signature.pdf +0 -0
  19. package/public/documents/user_agreement.pdf +0 -0
  20. package/public/documents/ustav.pdf +0 -0
  21. package/public/icons/favicon-128x128.png +0 -0
  22. package/public/icons/favicon-16x16.png +0 -0
  23. package/public/icons/favicon-32x32.png +0 -0
  24. package/public/icons/favicon-96x96.png +0 -0
  25. package/public/logo.svg +1 -0
  26. package/public/open.ttf +0 -0
  27. package/public/pwa/pwa_icon_128x128.png +0 -0
  28. package/public/pwa/pwa_icon_144x144.png +0 -0
  29. package/public/pwa/pwa_icon_152x152.png +0 -0
  30. package/public/pwa/pwa_icon_192x192.png +0 -0
  31. package/public/pwa/pwa_icon_256x256.png +0 -0
  32. package/public/pwa/pwa_icon_384x384.png +0 -0
  33. package/public/pwa/pwa_icon_48x48.png +0 -0
  34. package/public/pwa/pwa_icon_512x512.png +0 -0
  35. package/public/pwa/pwa_icon_72x72.png +0 -0
  36. package/public/pwa/pwa_icon_96x96.png +0 -0
  37. package/public/roboto.ttf +0 -0
  38. package/public/service-worker.js +17 -0
  39. package/public/ubuntu.ttf +0 -0
  40. package/quasar.config.cjs +256 -0
  41. package/src/app/App.vue +85 -0
  42. package/src/app/config/index.ts +188 -0
  43. package/src/app/providers/card/store.ts +39 -0
  44. package/src/app/providers/router.ts +28 -0
  45. package/src/app/providers/routes/index.ts +288 -0
  46. package/src/app/service-worker.js +12 -0
  47. package/src/app/styles/app.scss +29 -0
  48. package/src/app/styles/quasar-variables.sass +556 -0
  49. package/src/app/styles/style.css +388 -0
  50. package/src/assets/anime.svg +187 -0
  51. package/src/assets/bizsystem.svg +1 -0
  52. package/src/assets/blockchain.svg +1 -0
  53. package/src/assets/buycheaper.svg +1 -0
  54. package/src/assets/cart.svg +3 -0
  55. package/src/assets/club1.svg +1 -0
  56. package/src/assets/club2.svg +1 -0
  57. package/src/assets/clubs.png +0 -0
  58. package/src/assets/clubs.svg +1 -0
  59. package/src/assets/crown.svg +3 -0
  60. package/src/assets/dacom.png +0 -0
  61. package/src/assets/dacom2.png +0 -0
  62. package/src/assets/dacom_night.svg +1 -0
  63. package/src/assets/dacom_night2.png +0 -0
  64. package/src/assets/dao_free.svg +1 -0
  65. package/src/assets/flow1.svg +1 -0
  66. package/src/assets/flow2.svg +1 -0
  67. package/src/assets/flow3.svg +1 -0
  68. package/src/assets/flow4.svg +1 -0
  69. package/src/assets/header-logo.svg +25 -0
  70. package/src/assets/history.svg +4 -0
  71. package/src/assets/logo-white.png +0 -0
  72. package/src/assets/logo.png +0 -0
  73. package/src/assets/main.svg +1 -0
  74. package/src/assets/menu.svg +3 -0
  75. package/src/assets/order.svg +5 -0
  76. package/src/assets/pin.svg +4 -0
  77. package/src/assets/quasar-logo-vertical.svg +15 -0
  78. package/src/assets/sellmore.svg +1 -0
  79. package/src/assets/star.svg +4 -0
  80. package/src/assets/systemadmin.svg +1 -0
  81. package/src/assets/systemfunds.svg +1 -0
  82. package/src/assets/systemgoals.svg +1 -0
  83. package/src/assets/systemgov.svg +1 -0
  84. package/src/assets/systemprojects.svg +1 -0
  85. package/src/assets/systemtasks.svg +1 -0
  86. package/src/assets/ticket.svg +1 -0
  87. package/src/assets/union.svg +3 -0
  88. package/src/assets/user.png +0 -0
  89. package/src/assets/wallet.svg +4 -0
  90. package/src/assets/welcome.jpeg +0 -0
  91. package/src/boot/.gitkeep +0 -0
  92. package/src/boot/axios.ts +31 -0
  93. package/src/boot/branch-selector.ts +42 -0
  94. package/src/boot/i18n.ts +33 -0
  95. package/src/boot/init-stores.ts +43 -0
  96. package/src/boot/map.ts +7 -0
  97. package/src/boot/navigation-guards.ts +48 -0
  98. package/src/boot/sentry.ts +26 -0
  99. package/src/chainsMain.ts +8 -0
  100. package/src/components/history/AccountEvents.vue +137 -0
  101. package/src/components/history/AccountLink.vue +11 -0
  102. package/src/components/history/ActionCell.vue +96 -0
  103. package/src/components/history/DataCell.vue +84 -0
  104. package/src/components/menu/blockchainStatus.vue +84 -0
  105. package/src/components/menu/footerMobileMenu.vue +77 -0
  106. package/src/components/soviet/index.vue +76 -0
  107. package/src/components/soviet/staff.vue +272 -0
  108. package/src/css/quasar.variables.scss +50 -0
  109. package/src/desktops/Chairman/index.ts +1 -0
  110. package/src/desktops/Chairman/model/index.ts +63 -0
  111. package/src/desktops/Member/index.ts +1 -0
  112. package/src/desktops/Member/model/index.ts +63 -0
  113. package/src/desktops/Setup/index.ts +1 -0
  114. package/src/desktops/Setup/model/index.ts +63 -0
  115. package/src/desktops/User/index.ts +1 -0
  116. package/src/desktops/User/model/index.ts +325 -0
  117. package/src/desktops/index.ts +9 -0
  118. package/src/entities/Account/api/index.ts +17 -0
  119. package/src/entities/Account/index.ts +2 -0
  120. package/src/entities/Account/model/index.ts +1 -0
  121. package/src/entities/Account/model/store.ts +25 -0
  122. package/src/entities/Account/types/index.ts +3 -0
  123. package/src/entities/Agreement/api/index.ts +46 -0
  124. package/src/entities/Agreement/index.ts +2 -0
  125. package/src/entities/Agreement/model/index.ts +1 -0
  126. package/src/entities/Agreement/model/store.ts +49 -0
  127. package/src/entities/Branch/api/index.ts +34 -0
  128. package/src/entities/Branch/index.ts +2 -0
  129. package/src/entities/Branch/model/index.ts +2 -0
  130. package/src/entities/Branch/model/store.ts +36 -0
  131. package/src/entities/Branch/model/types.ts +7 -0
  132. package/src/entities/Cooperative/api/index.ts +106 -0
  133. package/src/entities/Cooperative/index.ts +2 -0
  134. package/src/entities/Cooperative/model/index.ts +2 -0
  135. package/src/entities/Cooperative/model/stores.ts +123 -0
  136. package/src/entities/Cooperative/model/types.ts +19 -0
  137. package/src/entities/Decision/index.ts +1 -0
  138. package/src/entities/Decision/model/index.ts +1 -0
  139. package/src/entities/Decision/model/types.ts +4 -0
  140. package/src/entities/Desktop/api/index.ts +10 -0
  141. package/src/entities/Desktop/index.ts +2 -0
  142. package/src/entities/Desktop/model/index.ts +1 -0
  143. package/src/entities/Desktop/model/store.ts +135 -0
  144. package/src/entities/Desktop/model/types.ts +29 -0
  145. package/src/entities/Extension/api/index.ts +19 -0
  146. package/src/entities/Extension/index.ts +2 -0
  147. package/src/entities/Extension/model/index.ts +2 -0
  148. package/src/entities/Extension/model/store.ts +71 -0
  149. package/src/entities/Extension/model/types.ts +28 -0
  150. package/src/entities/Installer/index.ts +1 -0
  151. package/src/entities/Installer/model/index.ts +1 -0
  152. package/src/entities/Installer/model/store.ts +36 -0
  153. package/src/entities/Menu/index.ts +2 -0
  154. package/src/entities/Menu/model/index.ts +2 -0
  155. package/src/entities/Menu/model/store.ts +69 -0
  156. package/src/entities/Menu/model/types.ts +11 -0
  157. package/src/entities/Menu/ui/index.ts +1 -0
  158. package/src/entities/Order/api/index.ts +14 -0
  159. package/src/entities/Order/index.ts +1 -0
  160. package/src/entities/Order/model/index.ts +1 -0
  161. package/src/entities/Order/model/store.ts +87 -0
  162. package/src/entities/Registrator/index.ts +2 -0
  163. package/src/entities/Registrator/model/index.ts +1 -0
  164. package/src/entities/Registrator/model/store.ts +237 -0
  165. package/src/entities/Registrator/ui/index.ts +1 -0
  166. package/src/entities/Request/api/index.ts +192 -0
  167. package/src/entities/Request/index.ts +3 -0
  168. package/src/entities/Request/model/index.ts +1 -0
  169. package/src/entities/Request/model/stores.ts +123 -0
  170. package/src/entities/Request/model/types.ts +57 -0
  171. package/src/entities/Request/ui/index.ts +1 -0
  172. package/src/entities/Session/api/index.ts +21 -0
  173. package/src/entities/Session/index.ts +2 -0
  174. package/src/entities/Session/model/index.ts +2 -0
  175. package/src/entities/Session/model/store.ts +100 -0
  176. package/src/entities/Session/model/types.ts +1 -0
  177. package/src/entities/Settings/api/index.ts +8 -0
  178. package/src/entities/Settings/index.ts +2 -0
  179. package/src/entities/Settings/model/index.ts +1 -0
  180. package/src/entities/Settings/model/store.ts +24 -0
  181. package/src/entities/System/api/index.ts +12 -0
  182. package/src/entities/System/index.ts +2 -0
  183. package/src/entities/System/model/index.ts +1 -0
  184. package/src/entities/System/model/store.ts +24 -0
  185. package/src/entities/System/types/index.ts +3 -0
  186. package/src/entities/Union/model/index.ts +1 -0
  187. package/src/entities/Union/model/store.ts +19 -0
  188. package/src/entities/User/api/index.ts +75 -0
  189. package/src/entities/User/index.ts +3 -0
  190. package/src/entities/User/model/entity.ts +47 -0
  191. package/src/entities/User/model/index.ts +2 -0
  192. package/src/entities/User/model/stores.ts +49 -0
  193. package/src/entities/User/model/types.ts +36 -0
  194. package/src/entities/User/ui/index.ts +1 -0
  195. package/src/entities/Wallet/api/index.ts +192 -0
  196. package/src/entities/Wallet/index.ts +3 -0
  197. package/src/entities/Wallet/model/index.ts +2 -0
  198. package/src/entities/Wallet/model/stores.ts +108 -0
  199. package/src/entities/Wallet/model/types.ts +77 -0
  200. package/src/entities/Wallet/ui/WalletBalance/WalletBalance.vue +35 -0
  201. package/src/entities/Wallet/ui/WalletBalance/index.ts +1 -0
  202. package/src/entities/Wallet/ui/WalletProgramsList/WalletProgramsList.vue +15 -0
  203. package/src/entities/Wallet/ui/WalletProgramsList/index.ts +1 -0
  204. package/src/entities/Wallet/ui/index.ts +2 -0
  205. package/src/env.d.ts +28 -0
  206. package/src/features/Agreementer/GenerateAgreement/index.ts +1 -0
  207. package/src/features/Agreementer/GenerateAgreement/model/index.ts +24 -0
  208. package/src/features/Agreementer/GenerateAgreement/ui/AgreementReader.vue +37 -0
  209. package/src/features/Agreementer/GenerateAgreement/ui/index.ts +1 -0
  210. package/src/features/Agreementer/ReadAgreementDialog/index.ts +1 -0
  211. package/src/features/Agreementer/ReadAgreementDialog/ui/ReadAgreementDialog.vue +58 -0
  212. package/src/features/Agreementer/ReadAgreementDialog/ui/index.ts +1 -0
  213. package/src/features/Agreementer/SignAgreementDialog/api/index.ts +26 -0
  214. package/src/features/Agreementer/SignAgreementDialog/index.ts +3 -0
  215. package/src/features/Agreementer/SignAgreementDialog/model/index.ts +27 -0
  216. package/src/features/Agreementer/SignAgreementDialog/ui/SignAgreementDialog.vue +73 -0
  217. package/src/features/Agreementer/SignAgreementDialog/ui/index.ts +1 -0
  218. package/src/features/Branch/CreateBranch/api/index.ts +16 -0
  219. package/src/features/Branch/CreateBranch/index.ts +2 -0
  220. package/src/features/Branch/CreateBranch/model/index.ts +49 -0
  221. package/src/features/Branch/CreateBranch/ui/CreateBranchButton.vue +61 -0
  222. package/src/features/Branch/CreateBranch/ui/index.ts +1 -0
  223. package/src/features/Branch/EditBranch/api/index.ts +16 -0
  224. package/src/features/Branch/EditBranch/index.ts +2 -0
  225. package/src/features/Branch/EditBranch/model/index.ts +34 -0
  226. package/src/features/Branch/SelectBranch/api/index.ts +15 -0
  227. package/src/features/Branch/SelectBranch/index.ts +1 -0
  228. package/src/features/Branch/SelectBranch/model/index.ts +18 -0
  229. package/src/features/Branch/SelectBranch/ui/SelectBranchOverlay.vue +109 -0
  230. package/src/features/Branch/SelectBranch/ui/index.ts +1 -0
  231. package/src/features/Cooperative/AddAdmin/index.ts +1 -0
  232. package/src/features/Cooperative/AddAdmin/model/index.ts +27 -0
  233. package/src/features/Cooperative/CreateBoard/index.ts +1 -0
  234. package/src/features/Cooperative/CreateBoard/model/index.ts +27 -0
  235. package/src/features/Cooperative/DeleteAdmin/index.ts +1 -0
  236. package/src/features/Cooperative/DeleteAdmin/model/index.ts +27 -0
  237. package/src/features/Cooperative/SetRights/index.ts +1 -0
  238. package/src/features/Cooperative/SetRights/model/index.ts +27 -0
  239. package/src/features/Cooperative/UpdateBoard/index.ts +1 -0
  240. package/src/features/Cooperative/UpdateBoard/model/index.ts +27 -0
  241. package/src/features/Cooperative/UpdateCoop/index.ts +1 -0
  242. package/src/features/Cooperative/UpdateCoop/model/index.ts +27 -0
  243. package/src/features/Decision/AuthorizeAndExecDecision/index.ts +1 -0
  244. package/src/features/Decision/AuthorizeAndExecDecision/model/index.ts +83 -0
  245. package/src/features/Decision/AutomateDecision/index.ts +1 -0
  246. package/src/features/Decision/AutomateDecision/model/index.ts +27 -0
  247. package/src/features/Decision/CreateProject/index.ts +1 -0
  248. package/src/features/Decision/CreateProject/model/index.ts +84 -0
  249. package/src/features/Decision/CreateProject/ui/CreateProjectFreeDecisionButton.vue +51 -0
  250. package/src/features/Decision/CreateProject/ui/index.ts +1 -0
  251. package/src/features/Decision/DisautomateDecision/index.ts +1 -0
  252. package/src/features/Decision/DisautomateDecision/model/index.ts +27 -0
  253. package/src/features/Decision/GenerateProjectDocument/index.ts +1 -0
  254. package/src/features/Decision/GenerateProjectDocument/model/index.ts +22 -0
  255. package/src/features/Decision/PublishProject/index.ts +1 -0
  256. package/src/features/Decision/PublishProject/model/index.ts +22 -0
  257. package/src/features/Decision/ValidateDecision/index.ts +1 -0
  258. package/src/features/Decision/ValidateDecision/model/index.ts +27 -0
  259. package/src/features/Decision/VoteAgainstDecision/index.ts +1 -0
  260. package/src/features/Decision/VoteAgainstDecision/model/index.ts +27 -0
  261. package/src/features/Decision/VoteForDecision/index.ts +1 -0
  262. package/src/features/Decision/VoteForDecision/model/index.ts +32 -0
  263. package/src/features/Extension/InstallExtension/index.ts +1 -0
  264. package/src/features/Extension/InstallExtension/model/index.ts +25 -0
  265. package/src/features/Extension/UninstallExtension/index.ts +1 -0
  266. package/src/features/Extension/UninstallExtension/model/index.ts +23 -0
  267. package/src/features/Extension/UpdateExtension/index.ts +1 -0
  268. package/src/features/Extension/UpdateExtension/model/index.ts +25 -0
  269. package/src/features/Fund/CreateFund/index.ts +1 -0
  270. package/src/features/Fund/CreateFund/model/index.ts +27 -0
  271. package/src/features/Fund/DeleteFund/index.ts +1 -0
  272. package/src/features/Fund/DeleteFund/model/index.ts +27 -0
  273. package/src/features/Fund/EditFund/index.ts +1 -0
  274. package/src/features/Fund/EditFund/model/index.ts +27 -0
  275. package/src/features/Installer/api/index.ts +13 -0
  276. package/src/features/Installer/index.ts +2 -0
  277. package/src/features/Installer/model/index.ts +20 -0
  278. package/src/features/Installer/ui/RequestKeyForm/RequestKeyForm.vue +57 -0
  279. package/src/features/Installer/ui/RequestKeyForm/index.ts +1 -0
  280. package/src/features/Installer/ui/SetSovietForm/SetSovietForm.vue +71 -0
  281. package/src/features/Installer/ui/SetSovietForm/index.ts +1 -0
  282. package/src/features/Installer/ui/index.ts +2 -0
  283. package/src/features/Order/SetStatus/api/index.ts +7 -0
  284. package/src/features/Order/SetStatus/index.ts +1 -0
  285. package/src/features/Order/SetStatus/model/index.ts +23 -0
  286. package/src/features/Order/SetStatus/ui/SetOrderCompletedStatusButton/SetOrderCompletedStatusButton.vue +48 -0
  287. package/src/features/Order/SetStatus/ui/SetOrderCompletedStatusButton/index.ts +1 -0
  288. package/src/features/Order/SetStatus/ui/SetOrderPaidStatusButton/SetOrderPaidStatusButton.vue +49 -0
  289. package/src/features/Order/SetStatus/ui/SetOrderPaidStatusButton/index.ts +1 -0
  290. package/src/features/Order/SetStatus/ui/SetOrderRefundedStatusButton/SetOrderRefundedStatusButton.vue +49 -0
  291. package/src/features/Order/SetStatus/ui/SetOrderRefundedStatusButton/index.ts +1 -0
  292. package/src/features/PaymentMethod/AddPaymentMethod/index.ts +2 -0
  293. package/src/features/PaymentMethod/AddPaymentMethod/model/index.ts +56 -0
  294. package/src/features/PaymentMethod/AddPaymentMethod/ui/AddPaymentButton.vue +166 -0
  295. package/src/features/PaymentMethod/AddPaymentMethod/ui/index.ts +1 -0
  296. package/src/features/PaymentMethod/DeletePaymentMethod/index.ts +1 -0
  297. package/src/features/PaymentMethod/DeletePaymentMethod/model/index.ts +29 -0
  298. package/src/features/PaymentMethod/DeletePaymentMethod/ui/DeletePaymentMethodButton.vue +67 -0
  299. package/src/features/PaymentMethod/DeletePaymentMethod/ui/index.ts +1 -0
  300. package/src/features/PaymentMethod/UpdateBankAccount/api/index.ts +14 -0
  301. package/src/features/PaymentMethod/UpdateBankAccount/index.ts +1 -0
  302. package/src/features/PaymentMethod/UpdateBankAccount/model/index.ts +34 -0
  303. package/src/features/Request/AcceptRequest/api/index.ts +53 -0
  304. package/src/features/Request/AcceptRequest/index.ts +3 -0
  305. package/src/features/Request/AcceptRequest/model/index.ts +1 -0
  306. package/src/features/Request/AcceptRequest/model/types.ts +5 -0
  307. package/src/features/Request/AcceptRequest/ui/AcceptButton.vue +37 -0
  308. package/src/features/Request/AcceptRequest/ui/index.ts +1 -0
  309. package/src/features/Request/CancelRequest/api/index.ts +44 -0
  310. package/src/features/Request/CancelRequest/index.ts +3 -0
  311. package/src/features/Request/CancelRequest/model/index.ts +1 -0
  312. package/src/features/Request/CancelRequest/model/types.ts +5 -0
  313. package/src/features/Request/CancelRequest/ui/CancelButton.vue +36 -0
  314. package/src/features/Request/CancelRequest/ui/index.ts +1 -0
  315. package/src/features/Request/CompleteOnRequest/api/index.ts +43 -0
  316. package/src/features/Request/CompleteOnRequest/index.ts +3 -0
  317. package/src/features/Request/CompleteOnRequest/model/index.ts +1 -0
  318. package/src/features/Request/CompleteOnRequest/model/types.ts +5 -0
  319. package/src/features/Request/CompleteOnRequest/ui/CompleteOnRequestButton.vue +37 -0
  320. package/src/features/Request/CompleteOnRequest/ui/index.ts +1 -0
  321. package/src/features/Request/ConfirmRecieveOnRequest/api/index.ts +53 -0
  322. package/src/features/Request/ConfirmRecieveOnRequest/index.ts +3 -0
  323. package/src/features/Request/ConfirmRecieveOnRequest/model/index.ts +1 -0
  324. package/src/features/Request/ConfirmRecieveOnRequest/model/types.ts +5 -0
  325. package/src/features/Request/ConfirmRecieveOnRequest/ui/ConfirmRecieveOnRequest.vue +37 -0
  326. package/src/features/Request/ConfirmRecieveOnRequest/ui/index.ts +1 -0
  327. package/src/features/Request/ConfirmSupplyOnRequest/api/index.ts +53 -0
  328. package/src/features/Request/ConfirmSupplyOnRequest/index.ts +3 -0
  329. package/src/features/Request/ConfirmSupplyOnRequest/model/index.ts +1 -0
  330. package/src/features/Request/ConfirmSupplyOnRequest/model/types.ts +5 -0
  331. package/src/features/Request/ConfirmSupplyOnRequest/ui/ConfirmSupplyOnRequestButton.vue +38 -0
  332. package/src/features/Request/ConfirmSupplyOnRequest/ui/index.ts +1 -0
  333. package/src/features/Request/CreateChildOrder/api/index.ts +60 -0
  334. package/src/features/Request/CreateChildOrder/index.ts +3 -0
  335. package/src/features/Request/CreateChildOrder/model/index.ts +1 -0
  336. package/src/features/Request/CreateChildOrder/model/types.ts +17 -0
  337. package/src/features/Request/CreateChildOrder/ui/CreateChildOrderButton/CreateChildOrderButton.vue +30 -0
  338. package/src/features/Request/CreateChildOrder/ui/CreateChildOrderButton/index.ts +1 -0
  339. package/src/features/Request/CreateChildOrder/ui/index.ts +1 -0
  340. package/src/features/Request/CreateParentOffer/api/index.ts +61 -0
  341. package/src/features/Request/CreateParentOffer/index.ts +3 -0
  342. package/src/features/Request/CreateParentOffer/model/index.ts +1 -0
  343. package/src/features/Request/CreateParentOffer/model/types.ts +22 -0
  344. package/src/features/Request/CreateParentOffer/ui/CreateParentOfferForm/CreateParentOfferForm.vue +78 -0
  345. package/src/features/Request/CreateParentOffer/ui/CreateParentOfferForm/index.ts +1 -0
  346. package/src/features/Request/CreateParentOffer/ui/ImageUploaderWithPreview/ImageUploaderWithPreview.vue +48 -0
  347. package/src/features/Request/CreateParentOffer/ui/ImageUploaderWithPreview/index.ts +1 -0
  348. package/src/features/Request/CreateParentOffer/ui/ImagesPreview/ImagesPreview.vue +104 -0
  349. package/src/features/Request/CreateParentOffer/ui/ImagesPreview/index.ts +1 -0
  350. package/src/features/Request/CreateParentOffer/ui/index.ts +3 -0
  351. package/src/features/Request/DeclineRequest/api/index.ts +45 -0
  352. package/src/features/Request/DeclineRequest/index.ts +3 -0
  353. package/src/features/Request/DeclineRequest/model/index.ts +1 -0
  354. package/src/features/Request/DeclineRequest/model/types.ts +5 -0
  355. package/src/features/Request/DeclineRequest/ui/DeclineButton.vue +37 -0
  356. package/src/features/Request/DeclineRequest/ui/index.ts +1 -0
  357. package/src/features/Request/DeliverOnRequest/api/index.ts +43 -0
  358. package/src/features/Request/DeliverOnRequest/index.ts +3 -0
  359. package/src/features/Request/DeliverOnRequest/model/index.ts +1 -0
  360. package/src/features/Request/DeliverOnRequest/model/types.ts +5 -0
  361. package/src/features/Request/DeliverOnRequest/ui/DeliverOnRequestButton.vue +38 -0
  362. package/src/features/Request/DeliverOnRequest/ui/index.ts +1 -0
  363. package/src/features/Request/DisputeOnRequest/api/index.ts +53 -0
  364. package/src/features/Request/DisputeOnRequest/index.ts +3 -0
  365. package/src/features/Request/DisputeOnRequest/model/index.ts +1 -0
  366. package/src/features/Request/DisputeOnRequest/model/types.ts +5 -0
  367. package/src/features/Request/DisputeOnRequest/ui/DisputeOnRequestButton.vue +37 -0
  368. package/src/features/Request/DisputeOnRequest/ui/index.ts +1 -0
  369. package/src/features/Request/ModerateRequest/api/index.ts +43 -0
  370. package/src/features/Request/ModerateRequest/index.ts +3 -0
  371. package/src/features/Request/ModerateRequest/model/index.ts +1 -0
  372. package/src/features/Request/ModerateRequest/model/types.ts +6 -0
  373. package/src/features/Request/ModerateRequest/ui/ModerateRequestButton.vue +40 -0
  374. package/src/features/Request/ModerateRequest/ui/index.ts +1 -0
  375. package/src/features/Request/ProhibitRequest/api/index.ts +43 -0
  376. package/src/features/Request/ProhibitRequest/index.ts +3 -0
  377. package/src/features/Request/ProhibitRequest/model/index.ts +1 -0
  378. package/src/features/Request/ProhibitRequest/model/types.ts +5 -0
  379. package/src/features/Request/ProhibitRequest/ui/ProhibitRequestButton.vue +36 -0
  380. package/src/features/Request/ProhibitRequest/ui/index.ts +1 -0
  381. package/src/features/Request/PublishRequest/api/index.ts +44 -0
  382. package/src/features/Request/PublishRequest/index.ts +3 -0
  383. package/src/features/Request/PublishRequest/model/index.ts +1 -0
  384. package/src/features/Request/PublishRequest/model/types.ts +5 -0
  385. package/src/features/Request/PublishRequest/ui/PublishRequestButton.vue +36 -0
  386. package/src/features/Request/PublishRequest/ui/index.ts +1 -0
  387. package/src/features/Request/RecieveOnRequest/api/index.ts +53 -0
  388. package/src/features/Request/RecieveOnRequest/index.ts +3 -0
  389. package/src/features/Request/RecieveOnRequest/model/index.ts +1 -0
  390. package/src/features/Request/RecieveOnRequest/model/types.ts +5 -0
  391. package/src/features/Request/RecieveOnRequest/ui/RecieveOnRequestButton.vue +37 -0
  392. package/src/features/Request/RecieveOnRequest/ui/index.ts +1 -0
  393. package/src/features/Request/SupplyOnRequest/api/index.ts +53 -0
  394. package/src/features/Request/SupplyOnRequest/index.ts +3 -0
  395. package/src/features/Request/SupplyOnRequest/model/index.ts +1 -0
  396. package/src/features/Request/SupplyOnRequest/model/types.ts +5 -0
  397. package/src/features/Request/SupplyOnRequest/ui/SupplyOnRequestButton.vue +37 -0
  398. package/src/features/Request/SupplyOnRequest/ui/index.ts +1 -0
  399. package/src/features/Request/UnpublishRequest/api/index.ts +44 -0
  400. package/src/features/Request/UnpublishRequest/index.ts +3 -0
  401. package/src/features/Request/UnpublishRequest/model/index.ts +1 -0
  402. package/src/features/Request/UnpublishRequest/model/types.ts +5 -0
  403. package/src/features/Request/UnpublishRequest/ui/UnpublishRequestButton.vue +36 -0
  404. package/src/features/Request/UnpublishRequest/ui/index.ts +1 -0
  405. package/src/features/Request/UpdateRequest/api/index.ts +47 -0
  406. package/src/features/Request/UpdateRequest/index.ts +3 -0
  407. package/src/features/Request/UpdateRequest/model/index.ts +1 -0
  408. package/src/features/Request/UpdateRequest/model/types.ts +10 -0
  409. package/src/features/Request/UpdateRequest/ui/UpdateRequestButton.vue +28 -0
  410. package/src/features/Request/UpdateRequest/ui/index.ts +1 -0
  411. package/src/features/Settings/UpdateSettings/api/index.ts +11 -0
  412. package/src/features/Settings/UpdateSettings/index.ts +2 -0
  413. package/src/features/Settings/UpdateSettings/model/index.ts +16 -0
  414. package/src/features/Settings/index.ts +2 -0
  415. package/src/features/Union/ActivateCooperative/index.ts +1 -0
  416. package/src/features/Union/ActivateCooperative/model/index.ts +33 -0
  417. package/src/features/Union/AddCooperative/index.ts +2 -0
  418. package/src/features/Union/AddCooperative/model/index.ts +33 -0
  419. package/src/features/Union/AddCooperative/ui/AddCooperativeForm.vue +91 -0
  420. package/src/features/Union/AddCooperative/ui/index.ts +1 -0
  421. package/src/features/Union/BlockCooperative/index.ts +1 -0
  422. package/src/features/Union/BlockCooperative/model/index.ts +33 -0
  423. package/src/features/Union/DeleteCooperative/index.ts +1 -0
  424. package/src/features/Union/DeleteCooperative/model/index.ts +32 -0
  425. package/src/features/Union/LoadCooperatives/api/index.ts +33 -0
  426. package/src/features/Union/LoadCooperatives/index.ts +2 -0
  427. package/src/features/Union/LoadCooperatives/model/index.ts +16 -0
  428. package/src/features/User/AddUser/api/index.ts +11 -0
  429. package/src/features/User/AddUser/index.ts +3 -0
  430. package/src/features/User/AddUser/model/index.ts +59 -0
  431. package/src/features/User/AddUser/ui/AddUserDialog/AddUserDialog.vue +232 -0
  432. package/src/features/User/AddUser/ui/AddUserDialog/index.ts +1 -0
  433. package/src/features/User/AddUser/ui/index.ts +1 -0
  434. package/src/features/User/CreateUser/api/index.ts +65 -0
  435. package/src/features/User/CreateUser/index.ts +2 -0
  436. package/src/features/User/CreateUser/model/index.ts +237 -0
  437. package/src/features/User/LoginUser/api/index.ts +20 -0
  438. package/src/features/User/LoginUser/index.ts +2 -0
  439. package/src/features/User/LoginUser/model/index.ts +69 -0
  440. package/src/features/User/LoginUser/ui/LoginForm/LoginForm.vue +78 -0
  441. package/src/features/User/LoginUser/ui/LoginForm/index.ts +1 -0
  442. package/src/features/User/Logout/api/index.ts +16 -0
  443. package/src/features/User/Logout/index.ts +2 -0
  444. package/src/features/User/Logout/model/index.ts +21 -0
  445. package/src/features/User/LostKey/api/index.ts +9 -0
  446. package/src/features/User/LostKey/index.ts +2 -0
  447. package/src/features/User/LostKey/model/index.ts +11 -0
  448. package/src/features/User/ResetKey/api/index.ts +9 -0
  449. package/src/features/User/ResetKey/index.ts +2 -0
  450. package/src/features/User/ResetKey/model/index.ts +11 -0
  451. package/src/features/User/UpdateMeta/index.ts +1 -0
  452. package/src/features/User/UpdateMeta/model/index.ts +34 -0
  453. package/src/features/Wallet/DepositToWallet/index.ts +1 -0
  454. package/src/features/Wallet/DepositToWallet/ui/DepositButton/DepositButton.vue +79 -0
  455. package/src/features/Wallet/DepositToWallet/ui/DepositButton/index.ts +1 -0
  456. package/src/features/Wallet/DepositToWallet/ui/index.ts +1 -0
  457. package/src/features/Wallet/WithdrawFromWallet/index.ts +1 -0
  458. package/src/features/Wallet/WithdrawFromWallet/ui/index.ts +1 -0
  459. package/src/features/Wallet/WithdrawFromWallet/ui/withdrawButton.vue +54 -0
  460. package/src/i18n/index.ts +5 -0
  461. package/src/i18n/ru-RU/index.ts +7 -0
  462. package/src/index.ts +1 -0
  463. package/src/pages/Cooperative/Contacts/index.ts +1 -0
  464. package/src/pages/Cooperative/Contacts/ui/ContactsPage.vue +7 -0
  465. package/src/pages/Cooperative/Contacts/ui/index.ts +1 -0
  466. package/src/pages/Cooperative/ListOfBranches/index.ts +1 -0
  467. package/src/pages/Cooperative/ListOfBranches/ui/ListOfBranchesPage.vue +101 -0
  468. package/src/pages/Cooperative/ListOfBranches/ui/index.ts +1 -0
  469. package/src/pages/Cooperative/ListOfOrders/index.ts +1 -0
  470. package/src/pages/Cooperative/ListOfOrders/ui/ListOfOrdersPage.vue +12 -0
  471. package/src/pages/Cooperative/ListOfOrders/ui/index.ts +1 -0
  472. package/src/pages/Cooperative/ListOfParticipants/index.ts +1 -0
  473. package/src/pages/Cooperative/ListOfParticipants/ui/ListOfParticipantsPage.vue +14 -0
  474. package/src/pages/Cooperative/ListOfParticipants/ui/index.ts +1 -0
  475. package/src/pages/Cooperative/MembersPage/MembersPage.vue +10 -0
  476. package/src/pages/Cooperative/MembersPage/index.ts +1 -0
  477. package/src/pages/Cooperative/SettingsPage/CooperativeSettingsPage.vue +5 -0
  478. package/src/pages/Cooperative/SettingsPage/index.ts +1 -0
  479. package/src/pages/Documentor/ListOfDocuments/ListOfDocumentsPage.vue +10 -0
  480. package/src/pages/Documentor/ListOfDocuments/index.ts +1 -0
  481. package/src/pages/ExtStore/BaseRoute/ExtensionStoreBase.vue +5 -0
  482. package/src/pages/ExtStore/BaseRoute/index.ts +1 -0
  483. package/src/pages/ExtStore/ExtensionPage/ExtensionPage.vue +205 -0
  484. package/src/pages/ExtStore/ExtensionPage/index.ts +1 -0
  485. package/src/pages/ExtStore/ExtensionsShowcase/ExtensionsShowcase.vue +18 -0
  486. package/src/pages/ExtStore/ExtensionsShowcase/index.ts +1 -0
  487. package/src/pages/ExtStore/InstalledExtensions/InstalledExtensions.vue +18 -0
  488. package/src/pages/ExtStore/InstalledExtensions/index.ts +1 -0
  489. package/src/pages/Installer/index.ts +1 -0
  490. package/src/pages/Installer/ui/InstallCooperativePage.vue +9 -0
  491. package/src/pages/Installer/ui/index.ts +1 -0
  492. package/src/pages/Marketplace/CreateParentOffer/index.ts +1 -0
  493. package/src/pages/Marketplace/CreateParentOffer/ui/CreateParentOfferPage.vue +13 -0
  494. package/src/pages/Marketplace/CreateParentOffer/ui/index.ts +1 -0
  495. package/src/pages/Marketplace/MainPage/index.ts +1 -0
  496. package/src/pages/Marketplace/MainPage/ui/MainPage.vue +36 -0
  497. package/src/pages/Marketplace/MainPage/ui/index.ts +1 -0
  498. package/src/pages/Marketplace/Moderation/index.ts +1 -0
  499. package/src/pages/Marketplace/Moderation/ui/ModerationPage.vue +59 -0
  500. package/src/pages/Marketplace/Moderation/ui/index.ts +1 -0
  501. package/src/pages/Marketplace/OfferPage/index.ts +1 -0
  502. package/src/pages/Marketplace/OfferPage/ui/OfferPage.vue +162 -0
  503. package/src/pages/Marketplace/OfferPage/ui/index.ts +1 -0
  504. package/src/pages/Marketplace/Showcase/index.ts +1 -0
  505. package/src/pages/Marketplace/Showcase/ui/ShowcasePage.vue +42 -0
  506. package/src/pages/Marketplace/Showcase/ui/index.ts +1 -0
  507. package/src/pages/Marketplace/SuppliesList/index.ts +1 -0
  508. package/src/pages/Marketplace/SuppliesList/ui/SuppliesListPage.vue +18 -0
  509. package/src/pages/Marketplace/SuppliesList/ui/index.ts +1 -0
  510. package/src/pages/Marketplace/UserParentOffers/index.ts +1 -0
  511. package/src/pages/Marketplace/UserParentOffers/ui/UserParentOffersPage.vue +44 -0
  512. package/src/pages/Marketplace/UserParentOffers/ui/index.ts +1 -0
  513. package/src/pages/Marketplace/UserSuppliesList/index.ts +1 -0
  514. package/src/pages/Marketplace/UserSuppliesList/ui/UserSuppliesListPage.vue +29 -0
  515. package/src/pages/Marketplace/UserSuppliesList/ui/index.ts +1 -0
  516. package/src/pages/Registrator/LostKey/index.ts +1 -0
  517. package/src/pages/Registrator/LostKey/ui/LostKeyPage.vue +13 -0
  518. package/src/pages/Registrator/LostKey/ui/index.ts +1 -0
  519. package/src/pages/Registrator/ResetKey/index.ts +1 -0
  520. package/src/pages/Registrator/ResetKey/ui/ResetKeyPage.vue +9 -0
  521. package/src/pages/Registrator/ResetKey/ui/index.ts +1 -0
  522. package/src/pages/Registrator/SignIn/index.ts +1 -0
  523. package/src/pages/Registrator/SignIn/ui/SignInPage.vue +26 -0
  524. package/src/pages/Registrator/SignIn/ui/index.ts +1 -0
  525. package/src/pages/Registrator/SignUp/EmailInput.vue +74 -0
  526. package/src/pages/Registrator/SignUp/GenerateAccount.vue +82 -0
  527. package/src/pages/Registrator/SignUp/PayInitial.vue +70 -0
  528. package/src/pages/Registrator/SignUp/ReadStatement.vue +103 -0
  529. package/src/pages/Registrator/SignUp/SelectBranch.vue +50 -0
  530. package/src/pages/Registrator/SignUp/SetUserData.vue +64 -0
  531. package/src/pages/Registrator/SignUp/SignStatement.vue +189 -0
  532. package/src/pages/Registrator/SignUp/SignUp.vue +119 -0
  533. package/src/pages/Registrator/SignUp/WaitingRegistration.vue +69 -0
  534. package/src/pages/Registrator/SignUp/Welcome.vue +30 -0
  535. package/src/pages/Registrator/SignUp/index.ts +1 -0
  536. package/src/pages/Support/SupportPage.vue +38 -0
  537. package/src/pages/Support/index.ts +1 -0
  538. package/src/pages/Union/Connection/ConnectionPage.vue +107 -0
  539. package/src/pages/Union/Connection/index.ts +1 -0
  540. package/src/pages/Union/ListOfCooperatives/index.ts +1 -0
  541. package/src/pages/Union/ListOfCooperatives/ui/UnionPageListOfCooperatives.vue +8 -0
  542. package/src/pages/Union/ListOfCooperatives/ui/index.ts +1 -0
  543. package/src/pages/User/CardPage/index.ts +1 -0
  544. package/src/pages/User/CardPage/ui/CoopCardPage.vue +8 -0
  545. package/src/pages/User/CardPage/ui/index.ts +1 -0
  546. package/src/pages/User/IdentityPage/index.ts +1 -0
  547. package/src/pages/User/IdentityPage/ui/IdentityPage.vue +15 -0
  548. package/src/pages/User/IdentityPage/ui/index.ts +1 -0
  549. package/src/pages/User/PaymentMethodsPage/index.ts +1 -0
  550. package/src/pages/User/PaymentMethodsPage/ui/PaymentMethods.vue +15 -0
  551. package/src/pages/User/PaymentMethodsPage/ui/index.ts +1 -0
  552. package/src/pages/User/SettingsPage/index.ts +1 -0
  553. package/src/pages/User/SettingsPage/ui/UserSettingsPage.vue +5 -0
  554. package/src/pages/User/SettingsPage/ui/index.ts +1 -0
  555. package/src/pages/User/WalletPage/index.ts +1 -0
  556. package/src/pages/User/WalletPage/ui/WalletPage.vue +14 -0
  557. package/src/pages/User/WalletPage/ui/index.ts +1 -0
  558. package/src/pages/_layouts/blank.vue +24 -0
  559. package/src/pages/_layouts/default.vue +78 -0
  560. package/src/pages/_layouts/permissionDenied.vue +20 -0
  561. package/src/pages/blank/blank.vue +9 -0
  562. package/src/pages/index.vue +5 -0
  563. package/src/quasar.d.ts +9 -0
  564. package/src/shared/api/alerts.ts +27 -0
  565. package/src/shared/api/axios.ts +72 -0
  566. package/src/shared/api/client.ts +13 -0
  567. package/src/shared/api/crypto.ts +86 -0
  568. package/src/shared/api/eosio.ts +122 -0
  569. package/src/shared/api/errors.ts +40 -0
  570. package/src/shared/api/index.ts +5 -0
  571. package/src/shared/api/indexDB.ts +39 -0
  572. package/src/shared/api/sleep.ts +1 -0
  573. package/src/shared/api/utils.ts +9 -0
  574. package/src/shared/api/wif.ts +9 -0
  575. package/src/shared/config/ActionsList.ts +23 -0
  576. package/src/shared/config/ContractsList.ts +32 -0
  577. package/src/shared/config/LimitsList.ts +7 -0
  578. package/src/shared/config/SecondaryIndexesNumbersList.ts +15 -0
  579. package/src/shared/config/SecondaryIndexesTypesList.ts +7 -0
  580. package/src/shared/config/TablesList.ts +12 -0
  581. package/src/shared/config/index.ts +6 -0
  582. package/src/shared/lib/composables/useEditableData.ts +58 -0
  583. package/src/shared/lib/composables/useEditableTableRows.ts +89 -0
  584. package/src/shared/lib/consts/workspaces/index.ts +1 -0
  585. package/src/shared/lib/document/api/index.ts +12 -0
  586. package/src/shared/lib/document/index.ts +2 -0
  587. package/src/shared/lib/document/model/entity.ts +64 -0
  588. package/src/shared/lib/document/model/index.ts +2 -0
  589. package/src/shared/lib/document/model/types.ts +9 -0
  590. package/src/shared/lib/types/crypto/index.ts +5 -0
  591. package/src/shared/lib/types/document/index.ts +15 -0
  592. package/src/shared/lib/types/errors/base.ts +5 -0
  593. package/src/shared/lib/types/errors/index.ts +1 -0
  594. package/src/shared/lib/types/graphql/index.ts +14 -0
  595. package/src/shared/lib/types/payments/index.ts +23 -0
  596. package/src/shared/lib/types/user/IUserData.ts +28 -0
  597. package/src/shared/lib/types/user/index.ts +53 -0
  598. package/src/shared/lib/utils/dates/formatToFromNow.ts +6 -0
  599. package/src/shared/lib/utils/dates/formatToHumanDate.ts +6 -0
  600. package/src/shared/lib/utils/dates/moment.ts +6 -0
  601. package/src/shared/lib/utils/formatAssetToReadable.ts +10 -0
  602. package/src/shared/lib/utils/formatDateForEos.ts +6 -0
  603. package/src/shared/lib/utils/formatToAsset.ts +4 -0
  604. package/src/shared/lib/utils/generateUsername.ts +9 -0
  605. package/src/shared/lib/utils/getNameFromUserData.ts +9 -0
  606. package/src/shared/lib/utils/index.ts +6 -0
  607. package/src/shared/lib/utils/isDomainRule.ts +4 -0
  608. package/src/shared/lib/utils/notEmptyPhoneRule.ts +3 -0
  609. package/src/shared/lib/utils/notEmptyRule.ts +3 -0
  610. package/src/shared/lib/utils/validEmailRule.ts +6 -0
  611. package/src/shared/lib/utils/validatePersonalNameRule.ts +3 -0
  612. package/src/shared/locales/ru/base.yml +12 -0
  613. package/src/shared/locales/ru.ts +12 -0
  614. package/src/shared/store/index.ts +202 -0
  615. package/src/shared/ui/AutoAvatar/AutoAvatar.vue +37 -0
  616. package/src/shared/ui/AutoAvatar/index.ts +1 -0
  617. package/src/shared/ui/BaseDocument/BaseDocument.vue +202 -0
  618. package/src/shared/ui/BaseDocument/index.ts +1 -0
  619. package/src/shared/ui/BranchSelector/BranchSelector.vue +47 -0
  620. package/src/shared/ui/BranchSelector/index.ts +1 -0
  621. package/src/shared/ui/ComplexDocument/ComplexDocument.vue +25 -0
  622. package/src/shared/ui/ComplexDocument/index.ts +1 -0
  623. package/src/shared/ui/DocumentHtmlReader/DocumentHtmlReader.vue +57 -0
  624. package/src/shared/ui/DocumentHtmlReader/index.ts +1 -0
  625. package/src/shared/ui/EditableActions/EditableActions.vue +34 -0
  626. package/src/shared/ui/EditableActions/index.ts +1 -0
  627. package/src/shared/ui/Footer/Contacts.vue +24 -0
  628. package/src/shared/ui/Footer/index.ts +1 -0
  629. package/src/shared/ui/Form/Form.vue +33 -0
  630. package/src/shared/ui/Form/index.ts +1 -0
  631. package/src/shared/ui/ImageCarousel/ImageCarousel.vue +68 -0
  632. package/src/shared/ui/ImageCarousel/index.ts +1 -0
  633. package/src/shared/ui/Loader/Loader.vue +19 -0
  634. package/src/shared/ui/Loader/index.ts +1 -0
  635. package/src/shared/ui/Map/Map.vue +52 -0
  636. package/src/shared/ui/Map/index.ts +1 -0
  637. package/src/shared/ui/ModalBase/ModalBase.vue +26 -0
  638. package/src/shared/ui/ModalBase/index.ts +1 -0
  639. package/src/shared/ui/PayWithProvider/PayWithProvider.vue +19 -0
  640. package/src/shared/ui/PayWithProvider/index.ts +1 -0
  641. package/src/shared/ui/Providers/Bank/Bank.vue +105 -0
  642. package/src/shared/ui/Providers/Bank/index.ts +1 -0
  643. package/src/shared/ui/Providers/Yookassa/Yookassa.vue +57 -0
  644. package/src/shared/ui/Providers/Yookassa/index.ts +1 -0
  645. package/src/shared/ui/ToogleDarkLight/ToogleDarkLight.vue +34 -0
  646. package/src/shared/ui/ToogleDarkLight/index.ts +1 -0
  647. package/src/shared/ui/UserDataForm/EntrepreneurDataForm/EntrepreneurDataForm.vue +115 -0
  648. package/src/shared/ui/UserDataForm/EntrepreneurDataForm/index.ts +1 -0
  649. package/src/shared/ui/UserDataForm/IndividualDataForm/IndividualDataForm.vue +40 -0
  650. package/src/shared/ui/UserDataForm/IndividualDataForm/index.ts +1 -0
  651. package/src/shared/ui/UserDataForm/OrganizationDataForm/OrganizationDataForm.vue +129 -0
  652. package/src/shared/ui/UserDataForm/OrganizationDataForm/index.ts +1 -0
  653. package/src/shared/ui/UserDataForm/UserDataForm/UserDataForm.vue +47 -0
  654. package/src/shared/ui/UserDataForm/UserDataForm/index.ts +1 -0
  655. package/src/shared/ui/ZodForm/ZodForm.vue +169 -0
  656. package/src/shared/ui/ZodForm/index.ts +1 -0
  657. package/src/shims-vue.d.ts +10 -0
  658. package/src/stores/index.ts +34 -0
  659. package/src/stores/store-flag.d.ts +10 -0
  660. package/src/types/index.ts +3 -0
  661. package/src/widgets/Agreementer/RequireAgreements/ui/RequireAgreements.vue +71 -0
  662. package/src/widgets/Agreementer/RequireAgreements/ui/index.ts +1 -0
  663. package/src/widgets/BankDetailsCard/index.ts +1 -0
  664. package/src/widgets/BankDetailsCard/ui/BankDetailsCard.vue +107 -0
  665. package/src/widgets/BankDetailsCard/ui/index.ts +1 -0
  666. package/src/widgets/BranchCard/index.ts +1 -0
  667. package/src/widgets/BranchCard/ui/BranchCard.vue +100 -0
  668. package/src/widgets/BranchCard/ui/index.ts +1 -0
  669. package/src/widgets/Commutator/Commutator.vue +7 -0
  670. package/src/widgets/Commutator/index.ts +1 -0
  671. package/src/widgets/Cooperative/Agenda/ListOfQuestions/index.ts +1 -0
  672. package/src/widgets/Cooperative/Agenda/ListOfQuestions/ui/ListOfQuestions.vue +265 -0
  673. package/src/widgets/Cooperative/Agenda/ListOfQuestions/ui/index.ts +1 -0
  674. package/src/widgets/Cooperative/Contacts/index.ts +1 -0
  675. package/src/widgets/Cooperative/Contacts/ui/ChangeContacts.vue +56 -0
  676. package/src/widgets/Cooperative/Contacts/ui/Contacts.vue +52 -0
  677. package/src/widgets/Cooperative/Contacts/ui/index.ts +2 -0
  678. package/src/widgets/Cooperative/Contributions/index.ts +1 -0
  679. package/src/widgets/Cooperative/Contributions/ui/ChangeContributions.vue +88 -0
  680. package/src/widgets/Cooperative/Contributions/ui/index.ts +1 -0
  681. package/src/widgets/Cooperative/Description/ui/SetDescription.vue +4 -0
  682. package/src/widgets/Cooperative/Description/ui/index.ts +1 -0
  683. package/src/widgets/Cooperative/Details/index.ts +1 -0
  684. package/src/widgets/Cooperative/Details/ui/Details.vue +32 -0
  685. package/src/widgets/Cooperative/Details/ui/index.ts +1 -0
  686. package/src/widgets/Cooperative/Documents/ListOfDocuments/index.ts +1 -0
  687. package/src/widgets/Cooperative/Documents/ListOfDocuments/ui/ListOfDocumentsWidget.vue +156 -0
  688. package/src/widgets/Cooperative/Documents/ListOfDocuments/ui/index.ts +1 -0
  689. package/src/widgets/Cooperative/Funds/index.ts +1 -0
  690. package/src/widgets/Cooperative/Funds/ui/AccumulationFunds.vue +121 -0
  691. package/src/widgets/Cooperative/Funds/ui/AddAccumulationFund.vue +79 -0
  692. package/src/widgets/Cooperative/Funds/ui/AddExpenseFund.vue +76 -0
  693. package/src/widgets/Cooperative/Funds/ui/ChangeFunds.vue +11 -0
  694. package/src/widgets/Cooperative/Funds/ui/ExpenseFunds.vue +113 -0
  695. package/src/widgets/Cooperative/Funds/ui/index.ts +3 -0
  696. package/src/widgets/Cooperative/Install/InstallWidgetBase/index.ts +1 -0
  697. package/src/widgets/Cooperative/Install/InstallWidgetBase/ui/InstallWidgetBase.vue +29 -0
  698. package/src/widgets/Cooperative/Install/InstallWidgetBase/ui/index.ts +1 -0
  699. package/src/widgets/Cooperative/Members/index.ts +1 -0
  700. package/src/widgets/Cooperative/Members/ui/Members.vue +220 -0
  701. package/src/widgets/Cooperative/Members/ui/index.ts +1 -0
  702. package/src/widgets/Cooperative/Orders/ListOfOrders/index.ts +1 -0
  703. package/src/widgets/Cooperative/Orders/ListOfOrders/ui/ListOfOrdersWidget.vue +209 -0
  704. package/src/widgets/Cooperative/Orders/ListOfOrders/ui/index.ts +1 -0
  705. package/src/widgets/Cooperative/Participants/ExitCard/index.ts +1 -0
  706. package/src/widgets/Cooperative/Participants/ExitCard/ui/ExitCard.vue +15 -0
  707. package/src/widgets/Cooperative/Participants/ExitCard/ui/index.ts +1 -0
  708. package/src/widgets/Cooperative/Participants/ListOfParticipants/index.ts +1 -0
  709. package/src/widgets/Cooperative/Participants/ListOfParticipants/ui/ListOfParticipantsWidget.vue +103 -0
  710. package/src/widgets/Cooperative/Participants/ListOfParticipants/ui/index.ts +1 -0
  711. package/src/widgets/Desktop/LeftDrawerMenu/LeftDrawerMenu.vue +10 -0
  712. package/src/widgets/Desktop/LeftDrawerMenu/index.ts +1 -0
  713. package/src/widgets/Desktop/SecondLevelMenu/SecondLevelMenu.vue +57 -0
  714. package/src/widgets/Desktop/SecondLevelMenu/index.ts +1 -0
  715. package/src/widgets/Desktop/SecondLevelMenuList/SecondLevelMenuList.vue +86 -0
  716. package/src/widgets/Desktop/SecondLevelMenuList/index.ts +1 -0
  717. package/src/widgets/Desktop/WorkspaceMenu/WorkspaceMenu.vue +94 -0
  718. package/src/widgets/Desktop/WorkspaceMenu/index.ts +1 -0
  719. package/src/widgets/ExtStore/ExtensionCard/ExtensionCard.vue +38 -0
  720. package/src/widgets/ExtStore/ExtensionCard/index.ts +1 -0
  721. package/src/widgets/Header/CommonHeader/Header.vue +203 -0
  722. package/src/widgets/Header/CommonHeader/index.ts +1 -0
  723. package/src/widgets/Header/SettingsDropdown/SettingsDropdown.vue +86 -0
  724. package/src/widgets/Header/SettingsDropdown/index.ts +1 -0
  725. package/src/widgets/IndividualCard/index.ts +1 -0
  726. package/src/widgets/IndividualCard/ui/IndividualCard.vue +170 -0
  727. package/src/widgets/IndividualCard/ui/index.ts +1 -0
  728. package/src/widgets/OrganizationCard/index.ts +1 -0
  729. package/src/widgets/OrganizationCard/ui/OrganizationCard.vue +44 -0
  730. package/src/widgets/OrganizationCard/ui/index.ts +1 -0
  731. package/src/widgets/Registrator/AlreadyRegistered/AlreadyRegistered.vue +19 -0
  732. package/src/widgets/Registrator/AlreadyRegistered/index.ts +1 -0
  733. package/src/widgets/Registrator/LostKey/index.ts +1 -0
  734. package/src/widgets/Registrator/LostKey/ui/LostKey.vue +63 -0
  735. package/src/widgets/Registrator/LostKey/ui/index.ts +1 -0
  736. package/src/widgets/Registrator/ResetKey/index.ts +1 -0
  737. package/src/widgets/Registrator/ResetKey/ui/ResetKey.vue +89 -0
  738. package/src/widgets/Registrator/ResetKey/ui/index.ts +1 -0
  739. package/src/widgets/Registrator/SignIn/SignIn.vue +12 -0
  740. package/src/widgets/Registrator/SignIn/index.ts +1 -0
  741. package/src/widgets/Request/CreateChildOrderCard/CreateChildOrderCard.vue +57 -0
  742. package/src/widgets/Request/CreateChildOrderCard/index.ts +1 -0
  743. package/src/widgets/Request/RequestCard/RequestCard.vue +37 -0
  744. package/src/widgets/Request/RequestCard/index.ts +1 -0
  745. package/src/widgets/Request/SupplyOrderRequestCard/index.ts +2 -0
  746. package/src/widgets/Request/SupplyOrderRequestCard/model/index.ts +1 -0
  747. package/src/widgets/Request/SupplyOrderRequestCard/model/types.ts +10 -0
  748. package/src/widgets/Request/SupplyOrderRequestCard/ui/Base/Base.vue +93 -0
  749. package/src/widgets/Request/SupplyOrderRequestCard/ui/Base/index.ts +1 -0
  750. package/src/widgets/Request/SupplyOrderRequestCard/ui/Steps/EightStep.vue +28 -0
  751. package/src/widgets/Request/SupplyOrderRequestCard/ui/Steps/FifthStep.vue +34 -0
  752. package/src/widgets/Request/SupplyOrderRequestCard/ui/Steps/FirstStep.vue +39 -0
  753. package/src/widgets/Request/SupplyOrderRequestCard/ui/Steps/FourthStep.vue +37 -0
  754. package/src/widgets/Request/SupplyOrderRequestCard/ui/Steps/SecondStep.vue +18 -0
  755. package/src/widgets/Request/SupplyOrderRequestCard/ui/Steps/SeventhStep.vue +37 -0
  756. package/src/widgets/Request/SupplyOrderRequestCard/ui/Steps/SixthStep.vue +37 -0
  757. package/src/widgets/Request/SupplyOrderRequestCard/ui/Steps/ThirdStep.vue +51 -0
  758. package/src/widgets/Request/SupplyOrderRequestCard/ui/Steps/index.ts +8 -0
  759. package/src/widgets/Request/SupplyOrderRequestCard/ui/index.ts +1 -0
  760. package/src/widgets/Union/ListOfCooperatives/index.ts +1 -0
  761. package/src/widgets/Union/ListOfCooperatives/ui/UnionListOfCooperatives.vue +136 -0
  762. package/src/widgets/Union/ListOfCooperatives/ui/index.ts +1 -0
  763. package/src/widgets/User/CoopCard/index.ts +1 -0
  764. package/src/widgets/User/CoopCard/ui/CoopCard.vue +111 -0
  765. package/src/widgets/User/CoopCard/ui/index.ts +1 -0
  766. package/src/widgets/User/LogoutCard/index.ts +1 -0
  767. package/src/widgets/User/LogoutCard/ui/LogoutCard.vue +31 -0
  768. package/src/widgets/User/LogoutCard/ui/index.ts +1 -0
  769. package/src/widgets/User/PaymentMethods/index.ts +1 -0
  770. package/src/widgets/User/PaymentMethods/ui/PaymentMethods.vue +116 -0
  771. package/src/widgets/User/PaymentMethods/ui/index.ts +1 -0
  772. package/src/widgets/User/PersonalCard/index.ts +1 -0
  773. package/src/widgets/User/PersonalCard/ui/PersonalCard.vue +109 -0
  774. package/src/widgets/User/PersonalCard/ui/UserQR.vue +5 -0
  775. package/src/widgets/User/PersonalCard/ui/index.ts +2 -0
  776. package/src/widgets/User/WalletCard/index.ts +1 -0
  777. package/src/widgets/User/WalletCard/ui/WalletCard.vue +26 -0
  778. package/src/widgets/User/WalletCard/ui/index.ts +1 -0
  779. package/src-ssr/middlewares/render.ts +59 -0
  780. package/src-ssr/server.ts +134 -0
  781. package/src-ssr/ssr-flag.d.ts +10 -0
  782. package/tsconfig.json +25 -0
  783. package/tsconfig.vue-tsc.json +9 -0
  784. package/vite.111config.js +37 -0
@@ -0,0 +1,129 @@
1
+ <template lang="pug">
2
+ div(v-if="userData.organization_data").q-gutter-sm.q-mt-md
3
+ q-select(
4
+ v-model="userData.organization_data.type"
5
+ label="Выберите тип организации"
6
+ standout="bg-teal text-white"
7
+ :options="[{ label: 'Потребительский Кооператив', value: 'coop' }, { label: 'ООО', value: 'ooo' }]"
8
+ emit-value
9
+ map-options).q-mb-md
10
+ q-input(v-model="userData.organization_data.short_name" standout="bg-teal text-white" hint="ПК Ромашка" label="Краткое наименование организации" :rules="[val => notEmpty(val)]" autocomplete="off")
11
+ q-input(v-model="userData.organization_data.full_name" standout="bg-teal text-white" hint="Потребительский Кооператив 'Ромашка'" label="Полное наименование организации" :rules="[val => notEmpty(val)]" autocomplete="off")
12
+ q-input(v-model="userData.organization_data.represented_by.last_name" standout="bg-teal text-white" label="Фамилия представителя" hint="" :rules="[val => notEmpty(val), val => validatePersonalName(val)]" autocomplete="off")
13
+ q-input(v-model="userData.organization_data.represented_by.first_name" standout="bg-teal text-white" label="Имя представителя" hint="" :rules="[val => notEmpty(val), val => validatePersonalName(val)]" autocomplete="off")
14
+ q-input(v-model="userData.organization_data.represented_by.middle_name" standout="bg-teal text-white" label="Отчество представителя" hint="" :rules="[val => validatePersonalName(val)]" autocomplete="off")
15
+
16
+ q-input(v-model="userData.organization_data.represented_by.based_on" standout="bg-teal text-white" label="Представитель действует на основании" hint="решения общего собрания №102 от 01.01.2025 г" :rules="[val => notEmpty(val)]" autocomplete="off")
17
+ q-input(v-model="userData.organization_data.represented_by.position" standout="bg-teal text-white" label="Должность представителя" hint="председатель совета" :rules="[val => notEmpty(val)]" autocomplete="off")
18
+
19
+ q-input(v-model="userData.organization_data.phone" standout="bg-teal text-white" label="Номер телефона представителя" mask="+7 (###) ###-##-##" fill-mask hint="" :rules="[val => notEmpty(val), val => notEmptyPhone(val)]" autocomplete="off")
20
+
21
+ q-select(v-model="userData.organization_data.country" standout="bg-teal text-white" map-options emit-value option-label="label" option-value="value" label="Страна" :options="[{ label: 'Россия', value: 'Russia' }]" :rules="[val => notEmpty(val)]" autocomplete="off")
22
+ q-input(v-model="userData.organization_data.city" standout="bg-teal text-white" label="Город" hint="" :rules="[val => notEmpty(val)]" autocomplete="off")
23
+ q-input(v-model="userData.organization_data.full_address" standout="bg-teal text-white" hint="" label="Юридический адрес регистрации" :rules="[val => notEmpty(val)]" autocomplete="off")
24
+ q-input(v-model="userData.organization_data.fact_address" standout="bg-teal text-white" hint="" label="Фактический адрес" :rules="[val => notEmpty(val)]" autocomplete="off")
25
+ template(v-slot:append)
26
+ q-btn(dense size="sm" color="teal" @click="userData.organization_data.fact_address = userData.organization_data.full_address") совпадает
27
+
28
+ q-input(
29
+ v-model="userData.organization_data.details.inn"
30
+ standout="bg-teal text-white"
31
+ mask="############"
32
+ label="ИНН организации"
33
+ hint="10 или 12 цифр"
34
+ :rules="[val => notEmpty(val), val => (val.length === 10 || val.length === 12) || 'ИНН должен содержать 10 или 12 цифр']"
35
+ autocomplete="off"
36
+ )
37
+
38
+ q-input(
39
+ v-model="userData.organization_data.details.ogrn"
40
+ standout="bg-teal text-white"
41
+ mask="###############"
42
+ label="ОГРН организации"
43
+ hint="13 или 15 цифр"
44
+ :rules="[val => notEmpty(val), val => (val.length === 13 || val.length === 15) || 'ОГРН должен содержать 13 или 15 цифр']"
45
+ autocomplete="off"
46
+ )
47
+
48
+ q-input(
49
+ v-model="userData.organization_data.details.kpp"
50
+ standout="bg-teal text-white"
51
+ mask="#########"
52
+ label="КПП организации"
53
+ hint="9 цифр"
54
+ :rules="[val => notEmpty(val), val => val.length === 9 || 'КПП должен содержать 9 цифр']"
55
+ autocomplete="off"
56
+ )
57
+
58
+
59
+ q-input(
60
+ v-model="userData.organization_data.bank_account.bank_name"
61
+ standout="bg-teal text-white"
62
+ label="Наименование банка"
63
+ hint="ПАО Сбербанк"
64
+ :rules="[val => notEmpty(val)]"
65
+ autocomplete="off"
66
+ )
67
+
68
+ q-input(
69
+ v-model="userData.organization_data.bank_account.details.corr"
70
+ standout="bg-teal text-white"
71
+ mask="####################"
72
+ label="Корреспондентский счет"
73
+ hint="20 цифр"
74
+ :rules="[val => notEmpty(val), val => val.length === 20 || 'Корреспондентский счет должен содержать 20 цифр']"
75
+ autocomplete="off"
76
+ )
77
+ q-input(
78
+ v-model="userData.organization_data.bank_account.details.bik"
79
+ standout="bg-teal text-white"
80
+ mask="#########"
81
+ label="БИК"
82
+ hint="9 цифр"
83
+ :rules="[val => notEmpty(val), val => val.length === 9 || 'БИК должен содержать 9 цифр']"
84
+ autocomplete="off"
85
+ )
86
+
87
+ q-input(
88
+ v-model="userData.organization_data.bank_account.details.kpp"
89
+ standout="bg-teal text-white"
90
+ mask="#########"
91
+ label="КПП (банка)"
92
+ hint="9 цифр"
93
+ :rules="[val => notEmpty(val), val => val.length === 9 || 'КПП должен содержать 9 цифр']"
94
+ autocomplete="off"
95
+ )
96
+
97
+ q-input(
98
+ v-model="userData.organization_data.bank_account.account_number"
99
+ standout="bg-teal text-white"
100
+ mask="####################"
101
+ label="Номер счета"
102
+ hint="20 цифр"
103
+ :rules="[val => notEmpty(val), val => val.length === 20 || 'Номер счета должен содержать 20 цифр']"
104
+ autocomplete="off"
105
+ )
106
+
107
+ q-select(
108
+ v-model="userData.organization_data.bank_account.currency"
109
+ label="Валюта счёта"
110
+ standout="bg-teal text-white"
111
+ :options="[{ label: 'RUB', value: 'RUB' }]"
112
+ emit-value
113
+ :rules="[val => notEmpty(val)]"
114
+ map-options
115
+ )
116
+
117
+ </template>
118
+
119
+ <script setup lang="ts">
120
+ import { validatePersonalName, notEmpty, notEmptyPhone } from 'src/shared/lib/utils';
121
+
122
+ import type { IUserData } from 'src/shared/lib/types/user/IUserData';
123
+ import { ref } from 'vue';
124
+
125
+ const props = defineProps<{ userData: IUserData }>();
126
+
127
+ const userData = ref<IUserData>(props.userData)
128
+
129
+ </script>
@@ -0,0 +1 @@
1
+ export {default as OrganizationDataForm} from './OrganizationDataForm.vue'
@@ -0,0 +1,47 @@
1
+ <template lang="pug">
2
+ div
3
+ q-form(ref="localUserDataForm")
4
+ slot(name="top")
5
+
6
+ div.full-width.text-center
7
+ q-btn-group(flat)
8
+ q-btn(glossy label="Физлицо" :color="userData.type === 'individual' ? 'primary' : undefined" @click="userData.type = 'individual'")
9
+ q-btn(glossy label="Предприниматель" :color="userData.type === 'entrepreneur' ? 'primary' : undefined" @click="userData.type='entrepreneur'")
10
+ q-btn(glossy label="Организация" :color="userData.type === 'organization' ? 'primary' : undefined" @click="userData.type = 'organization'")
11
+
12
+ div(v-if="userData.type === 'individual'")
13
+ IndividualDataForm(v-model:userData="userData")
14
+
15
+ div(v-if="userData.type === 'organization'")
16
+ OrganizationDataForm(v-model:userData="userData")
17
+
18
+ div(v-if="userData.type === 'entrepreneur'")
19
+ EntrepreneurDataForm(v-model:userData="userData")
20
+
21
+ slot(name="bottom" :userDataForm="localUserDataForm")
22
+
23
+
24
+ </template>
25
+
26
+ <script lang="ts" setup>
27
+ import { ref } from 'vue'
28
+ import type { IUserData } from 'src/shared/lib/types/user/IUserData';
29
+ import { IndividualDataForm } from '../IndividualDataForm';
30
+ import { OrganizationDataForm } from '../OrganizationDataForm';
31
+ import { EntrepreneurDataForm } from '../EntrepreneurDataForm';
32
+
33
+ const props = defineProps<{ userData: IUserData }>();
34
+
35
+ const userData = ref<IUserData>(props.userData)
36
+
37
+ if (!userData.value.type)
38
+ userData.value.type = 'individual'
39
+
40
+ const localUserDataForm = ref(null)
41
+
42
+ </script>
43
+ <style>
44
+ .dataInput .q-btn-selected {
45
+ color: teal;
46
+ }
47
+ </style>
@@ -0,0 +1 @@
1
+ export {default as UserDataForm} from './UserDataForm.vue'
@@ -0,0 +1,169 @@
1
+ <template lang="pug">
2
+ div
3
+ q-card(flat v-for="(property, propertyName) in schema.properties" :key="propertyName")
4
+ div(v-if="isVisible(property)")
5
+ component(
6
+ standout="bg-teal text-white"
7
+ :is="getComponentType(property)"
8
+ v-bind="getComponentProps(property, propertyName)"
9
+ ).q-mt-md
10
+ // Слот для prepend, если указано
11
+ template(v-slot:prepend v-if="property.description?.prepend")
12
+ span {{ property.description.prepend }}
13
+
14
+ // Слот для append, если указано
15
+ template(v-slot:append v-if="property.description?.append")
16
+ span {{ property.description.append }}
17
+
18
+ </template>
19
+ <script lang="ts" setup>
20
+ import { defineProps, defineEmits, reactive, watch } from 'vue';
21
+ import { QInput, QCheckbox, QSelect, QCard } from 'quasar';
22
+ import type { IExtensionConfigSchema, ISchemaProperty } from 'src/entities/Extension/model';
23
+
24
+ // Устанавливаем имя компонента для рекурсивного вызова
25
+ defineOptions({
26
+ name: 'DynamicForm'
27
+ });
28
+
29
+ // Определяем пропсы и события компонента
30
+ const props = defineProps<{
31
+ schema: IExtensionConfigSchema;
32
+ modelValue: Record<string, any>;
33
+ }>();
34
+
35
+ const emit = defineEmits(['update:modelValue']);
36
+
37
+ // Инициализируем реактивные данные
38
+ const data = reactive<Record<string, any>>({});
39
+
40
+ // Функция для установки значений по умолчанию
41
+ function setDefaults(schema: ISchemaProperty, obj: any) {
42
+ if (schema.type === 'object' && schema.properties) {
43
+ for (const key in schema.properties) {
44
+ const property = schema.properties[key];
45
+ if (property.default !== undefined) {
46
+ obj[key] = property.default;
47
+ } else if (property.type === 'object') {
48
+ obj[key] = {};
49
+ setDefaults(property, obj[key]);
50
+ } else {
51
+ obj[key] = null;
52
+ }
53
+ }
54
+ }
55
+ }
56
+
57
+ // Инициализация данных
58
+ if (props.modelValue && Object.keys(props.modelValue).length > 0) {
59
+ Object.assign(data, props.modelValue);
60
+ } else {
61
+ setDefaults(props.schema, data);
62
+ }
63
+
64
+ // Отслеживание изменений и обновление данных
65
+ watch(
66
+ data,
67
+ () => {
68
+ emit('update:modelValue', { ...data });
69
+ },
70
+ { deep: true }
71
+ );
72
+
73
+ // Функция для преобразования строковых правил в функции
74
+ function parseRules(rules: string[]): Array<(val: any) => boolean | string> {
75
+ return rules.map(rule => {
76
+ const fn = new Function('val', `return ${rule};`);
77
+ return (val: any) => fn(val) || `Значение должно удовлетворять правилу: ${rule}`;
78
+ });
79
+ }
80
+
81
+ // Функции для получения атрибутов полей
82
+ function getComponentType(property: ISchemaProperty) {
83
+ if (property.enum) {
84
+ return QSelect;
85
+ } else if (property.type === 'number' || property.type === 'integer') {
86
+ return QInput;
87
+ } else if (property.type === 'string') {
88
+ return QInput;
89
+ } else if (property.type === 'boolean') {
90
+ return QCheckbox;
91
+ } else if (property.type === 'object' && property.properties) {
92
+ return 'DynamicForm';
93
+ }
94
+ return 'div';
95
+ }
96
+
97
+ function getComponentProps(property: ISchemaProperty, propertyName: string) {
98
+ const props: Record<string, any> = {
99
+ modelValue: data[propertyName],
100
+ 'onUpdate:modelValue': (value: any) => {
101
+ data[propertyName] = property.type === 'number' ? parseFloat(value) : value;
102
+ },
103
+ label: getLabel(property, propertyName),
104
+ hint: getHint(property)
105
+ };
106
+
107
+
108
+ let rules = parseRules(property.description?.rules || []);
109
+
110
+ const minLength = property.description?.minLength;
111
+ const maxLength = property.description?.maxLength;
112
+
113
+ if (typeof minLength === 'number') {
114
+ rules.push((val: string) => val.length >= minLength || `Минимальная длина: ${minLength}`);
115
+ props.minLength = minLength;
116
+ }
117
+
118
+ if (typeof maxLength === 'number') {
119
+ rules.push((val: string) => val.length <= maxLength || `Максимальная длина: ${maxLength}`);
120
+ props.maxLength = maxLength;
121
+ }
122
+
123
+ props.rules = rules
124
+
125
+ // Добавляем маску и другие настройки, если они указаны
126
+ if (property.description?.mask) {
127
+ props.mask = property.description.mask;
128
+ if (property.description?.fillMask !== undefined) {
129
+ props.fillMask = property.description.fillMask;
130
+ }
131
+ }
132
+
133
+ // Установка типа поля в зависимости от типа property
134
+ if (property.type === 'number') {
135
+ props.type = 'number'; // Поле будет восприниматься как числовое, разрешены только цифры
136
+ } else if (property.type === 'string') {
137
+ props.type = 'text'; // Поле для строк
138
+ // Проверка на многосстрочный ввод
139
+ if (property.description?.maxRows) {
140
+ props.type = 'textarea';
141
+ props.autogrow = true; // Автоматический рост поля при вводе
142
+ props.rows = property.description?.maxRows; // Установка максимального количества строк
143
+ }
144
+ }
145
+
146
+ if (property.enum) {
147
+ props.options = property.enum;
148
+ }
149
+
150
+ if (property.type === 'object') {
151
+ props.schema = property;
152
+ }
153
+
154
+ return props;
155
+ }
156
+
157
+ function getLabel(property: ISchemaProperty, propertyName: string) {
158
+ return property.description?.label || propertyName;
159
+ }
160
+
161
+ function getHint(property: ISchemaProperty) {
162
+ return property.description?.note;
163
+ }
164
+
165
+ function isVisible(property: ISchemaProperty) {
166
+ return property.description?.visible !== false;
167
+ }
168
+
169
+ </script>
@@ -0,0 +1 @@
1
+ export { default as ZodForm } from './ZodForm.vue'
@@ -0,0 +1,10 @@
1
+ /* eslint-disable */
2
+
3
+ /// <reference types="vite/client" />
4
+
5
+ // Mocks all files ending in `.vue` showing them as plain Vue instances
6
+ declare module '*.vue' {
7
+ import type { DefineComponent } from 'vue';
8
+ const component: DefineComponent<{}, {}, any>;
9
+ export default component;
10
+ }
@@ -0,0 +1,34 @@
1
+ import { store } from 'quasar/wrappers';
2
+ import { createPinia } from 'pinia';
3
+ import { Router } from 'vue-router';
4
+ import piniaPluginPersistedstate from 'pinia-plugin-persistedstate';
5
+
6
+ /*
7
+ * When adding new properties to stores, you should also
8
+ * extend the `PiniaCustomProperties` interface.
9
+ * @see https://pinia.vuejs.org/core-concepts/plugins.html#typing-new-store-properties
10
+ */
11
+ declare module 'pinia' {
12
+ export interface PiniaCustomProperties {
13
+ readonly router: Router;
14
+ }
15
+ }
16
+
17
+ /*
18
+ * If not building with SSR mode, you can
19
+ * directly export the Store instantiation;
20
+ *
21
+ * The function below can be async too; either use
22
+ * async/await or return a Promise which resolves
23
+ * with the Store instance.
24
+ */
25
+
26
+ export default store((/* { ssrContext } */) => {
27
+ const pinia = createPinia();
28
+
29
+ // You can add Pinia plugins here
30
+ // pinia.use(SomePiniaPlugin)
31
+ pinia.use(piniaPluginPersistedstate);
32
+
33
+ return pinia;
34
+ });
@@ -0,0 +1,10 @@
1
+ /* eslint-disable */
2
+ // THIS FEATURE-FLAG FILE IS AUTOGENERATED,
3
+ // REMOVAL OR CHANGES WILL CAUSE RELATED TYPES TO STOP WORKING
4
+ import "quasar/dist/types/feature-flag";
5
+
6
+ declare module "quasar/dist/types/feature-flag" {
7
+ interface QuasarFeatureFlags {
8
+ store: true;
9
+ }
10
+ }
@@ -0,0 +1,3 @@
1
+ import { App } from 'vue'
2
+
3
+ export type VueModuleInstaller = (_app: App) => void
@@ -0,0 +1,71 @@
1
+ <template lang="pug">
2
+ div
3
+ SignAgreementDialog(v-for="agreement of required_agreements" v-bind:key="agreement.type" :agreement="agreement" :is_modify="is_modify")
4
+ AgreementReader(:agreement="agreement").q-mb-lg
5
+ </template>
6
+
7
+ <script lang="ts" setup>
8
+ import { SignAgreementDialog } from 'src/features/Agreementer/SignAgreementDialog';
9
+ import { useAgreementStore } from 'src/entities/Agreement';
10
+ import { COOPNAME } from 'src/shared/config';
11
+ import { computed, ref, watch } from 'vue';
12
+ import { useRoute } from 'vue-router';
13
+ import { AgreementReader } from 'src/features/Agreementer/GenerateAgreement';
14
+ import { useWalletStore } from 'src/entities/Wallet';
15
+ import { useSessionStore } from 'src/entities/Session';
16
+
17
+ const route = useRoute()
18
+ const agreementer = useAgreementStore()
19
+ const wallet = useWalletStore()
20
+
21
+ const required = computed(() => (route.meta?.agreements || []))//TODO change to agreements
22
+
23
+ const userAgreements = computed(() => wallet.agreements)
24
+ const templates = computed(() => agreementer.agreementsTemplates)
25
+ const cooperativeAgreements = computed(() => agreementer.cooperativeAgreements)
26
+ const is_modify=ref(false)
27
+
28
+ // Для всех соглашений, которые пользователь должен подписать
29
+ const required_agreements = computed(() => {
30
+ // Получаем подписанные соглашения
31
+ if (!session.loadComplete)
32
+ return []
33
+
34
+ // Фильтруем соглашения, которые необходимы пользователю
35
+ return cooperativeAgreements.value.filter(agreement => {
36
+ // Условие: тип соглашения должен быть в required.value
37
+
38
+ if (required.value.includes(agreement.type)) {
39
+ // Найти, если пользователь уже подписал это соглашение
40
+ const userAgreement = userAgreements.value.find(ua => ua.type === agreement.type);
41
+
42
+ if (userAgreement) {
43
+ // Найти соответствующий шаблон для соглашения
44
+ const template = templates.value.find(t => t.registry_id === agreement.draft_id);
45
+ // Проверить, если версия подписанного соглашения у пользователя отличается от последнего шаблона
46
+ if (template && template.version !== userAgreement.version) {
47
+ is_modify.value = true
48
+ return true; // Добавить соглашение в список
49
+ }
50
+ } else {
51
+ return true; // Пользователь ещё не подписал соглашение
52
+ }
53
+ }
54
+ return false; // Убрать соглашение из списка
55
+ });
56
+ });
57
+
58
+ const init = async () => {
59
+ agreementer.loadCooperativeAgreements(COOPNAME)
60
+ agreementer.loadAgreementTemplates(COOPNAME)
61
+ }
62
+ const session = useSessionStore()
63
+
64
+ watch(() => session.isAuth, (newValue) => {
65
+ if(newValue)
66
+ init()
67
+ })
68
+
69
+ init()
70
+
71
+ </script>
@@ -0,0 +1 @@
1
+ export {default as RequireAgreements} from './RequireAgreements.vue'
@@ -0,0 +1 @@
1
+ export * from './ui'
@@ -0,0 +1,107 @@
1
+ <template lang="pug">
2
+ q-form(ref="form")
3
+ q-input(
4
+ dense
5
+ v-model="data.data.bank_name"
6
+ standout="bg-teal text-white"
7
+ label="Наименование банка"
8
+ placeholder="ПАО Сбербанк"
9
+ :rules="[val => notEmpty(val)]"
10
+ autocomplete="off"
11
+ )
12
+ q-input(
13
+ dense
14
+ v-model="data.data.details.corr"
15
+ standout="bg-teal text-white"
16
+ mask="####################"
17
+ label="Корреспондентский счет"
18
+ placeholder="20 цифр"
19
+ :rules="[val => notEmpty(val), val => val.length === 20 || 'Корреспондентский счет должен содержать 20 цифр']"
20
+ autocomplete="off"
21
+ )
22
+ q-input(
23
+ dense
24
+ v-model="data.data.details.bik"
25
+ standout="bg-teal text-white"
26
+ mask="#########"
27
+ label="БИК"
28
+ placeholder="9 цифр"
29
+ :rules="[val => notEmpty(val), val => val.length === 9 || 'БИК должен содержать 9 цифр']"
30
+ autocomplete="off"
31
+ )
32
+ q-input(
33
+ dense
34
+ v-model="data.data.details.kpp"
35
+ standout="bg-teal text-white"
36
+ mask="#########"
37
+ label="КПП (банка)"
38
+ placeholder="9 цифр"
39
+ :rules="[val => notEmpty(val), val => val.length === 9 || 'КПП должен содержать 9 цифр']"
40
+ autocomplete="off"
41
+ )
42
+ q-input(
43
+ dense
44
+ v-model="data.data.account_number"
45
+ standout="bg-teal text-white"
46
+ mask="####################"
47
+ label="Номер счета"
48
+ placeholder="20 цифр"
49
+ :rules="[val => notEmpty(val), val => val.length === 20 || 'Номер счета должен содержать 20 цифр']"
50
+ autocomplete="off"
51
+ )
52
+ q-select(
53
+ dense
54
+ v-model="data.data.currency"
55
+ label="Валюта счёта"
56
+ standout="bg-teal text-white"
57
+ :options="[{ label: 'RUB', value: 'RUB' }]"
58
+ emit-value
59
+ :rules="[val => notEmpty(val)]"
60
+ map-options
61
+ )
62
+
63
+ EditableActions(
64
+ :isEditing="isEditing"
65
+ :isDisabled="isDisabled"
66
+ @save="saveChanges"
67
+ @cancel="cancelChanges"
68
+ )
69
+ </template>
70
+
71
+ <script lang="ts" setup>
72
+ import { ref } from 'vue';
73
+ import { useEditableData } from 'src/shared/lib/composables/useEditableData';
74
+ import type { Zeus } from '@coopenomics/sdk';
75
+ import { EditableActions } from 'src/shared/ui/EditableActions';
76
+ import { notEmpty } from 'src/shared/lib/utils';
77
+ import { useUpdateBranchBankAccount } from 'src/features/PaymentMethod/UpdateBankAccount/model';
78
+ import { failAlert } from 'src/shared/api';
79
+
80
+ const props = defineProps({
81
+ bankDetails: {
82
+ type: Object as () => Zeus.ModelTypes['BankPaymentMethod'],
83
+ required: true
84
+ }
85
+ });
86
+
87
+ // Ссылка на форму
88
+ const form = ref();
89
+
90
+ // Обработка сохранения
91
+ const handleSave = async (data: Zeus.ModelTypes['BankPaymentMethod']) => {
92
+ try {
93
+ const { updateBankAccount } = useUpdateBranchBankAccount();
94
+ await updateBankAccount(data);
95
+ } catch(e){
96
+ failAlert(e)
97
+ }
98
+ };
99
+
100
+ // Используем composable функцию
101
+ const { editableData: data, isEditing, isDisabled, saveChanges, cancelChanges } = useEditableData(
102
+ props.bankDetails,
103
+ handleSave,
104
+ form // Передаем ссылку на форму
105
+ );
106
+ </script>
107
+
@@ -0,0 +1 @@
1
+ export {default as BankDetailsCard} from './BankDetailsCard.vue'
@@ -0,0 +1 @@
1
+ export * from './ui'