@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,202 @@
1
+ // store/global.ts
2
+ import { Action, PrivateKey } from '@wharfkit/antelope';
3
+ import { defineStore } from 'pinia';
4
+ import { ref, Ref } from 'vue';
5
+ import { decrypt, encrypt, hashSHA256 } from '../api/crypto';
6
+ import { COOPNAME } from '../config';
7
+ import { IMessageSignature } from '../lib/types/crypto';
8
+ import { useSessionStore } from 'src/entities/Session';
9
+ import { TransactResult } from '@wharfkit/session';
10
+ import { readBlockchain } from '../api';
11
+ import { ITokens } from '../lib/types/user';
12
+ import { getFromIndexedDB, setToIndexedDB } from '../api/indexDB';
13
+ import { client } from '../api/client';
14
+
15
+ interface IGlobalStore {
16
+ hasCreditials: Ref<boolean>;
17
+ username: Ref<string>;
18
+ tokens: Ref<ITokens | undefined>;
19
+ wif: Ref<PrivateKey | undefined>;
20
+ setWif: (newUsername: string, key: string) => Promise<void>;
21
+ setTokens: (newTokens: ITokens) => Promise<void>;
22
+ logout: () => Promise<void>;
23
+ init: () => void;
24
+ signDigest: (digest: string) => IMessageSignature;
25
+ hashMessage: (message: string | Uint8Array) => Promise<string>;
26
+ formActionFromAbi: (action: any) => any;
27
+ transact: (
28
+ actionOrActions: any | any[]
29
+ ) => Promise<TransactResult | undefined>;
30
+ }
31
+
32
+ export const useGlobalStore = defineStore('global', (): IGlobalStore => {
33
+ const username = ref<string>('');
34
+ const wif = ref<PrivateKey | undefined>(undefined);
35
+ const hasCreditials = ref(false);
36
+ const tokens = ref<ITokens | undefined>(undefined);
37
+
38
+ const password = ''; // это временное намеренное решение. Позже заменим на пользовательский пин-код.
39
+
40
+ // Инициализация
41
+ const init = async () => {
42
+
43
+ try {
44
+ // Получите зашифрованный ключ и токены из хранилища
45
+ const encryptedKey = await getFromIndexedDB(
46
+ COOPNAME,
47
+ 'store',
48
+ 'encryptedKey'
49
+ );
50
+ const encryptedTokens = await getFromIndexedDB(
51
+ COOPNAME,
52
+ 'store',
53
+ 'encryptedTokens'
54
+ );
55
+ const encryptedUsername = await getFromIndexedDB(
56
+ COOPNAME,
57
+ 'store',
58
+ 'encryptedUsername'
59
+ );
60
+
61
+ // Если ключ или токены не найдены, выбросите ошибку
62
+ if (!encryptedKey || !encryptedTokens || !encryptedUsername) {
63
+ return;
64
+ }
65
+
66
+ // Расшифруйте ключ и токены
67
+ const decryptedKey = await decrypt(encryptedKey, password);
68
+ const decryptedTokens = await decrypt(encryptedTokens, password);
69
+ const decryptedUsername = await decrypt(encryptedUsername, password);
70
+
71
+ // Установите расшифрованный ключ и токены
72
+ wif.value = PrivateKey.fromString(decryptedKey);
73
+ tokens.value = JSON.parse(decryptedTokens);
74
+ username.value = decryptedUsername;
75
+
76
+ // if (NODE_ENV === 'development')
77
+ // console.log('tokens: ', tokens)
78
+
79
+ // Установите hasCreditials в true
80
+ hasCreditials.value = true;
81
+ console.log('on init', tokens.value?.access.token)
82
+ if (tokens.value?.access.token){
83
+ console.log('on set tokens')
84
+ client.setToken(tokens.value.access.token)
85
+ }
86
+
87
+
88
+ } catch (error: any) {
89
+ await setToIndexedDB(COOPNAME, 'store', 'encryptedKey', '');
90
+ await setToIndexedDB(COOPNAME, 'store', 'encryptedUsername', '');
91
+ await setToIndexedDB(COOPNAME, 'store', 'encryptedTokens', '');
92
+ throw new Error('Ошибка авторизации. Войдите повторно.');
93
+ }
94
+ };
95
+
96
+ const setWif = async (newUsername: string, key: string) => {
97
+ const encryptedKey = await encrypt(key, password);
98
+ const encryptedUsername = await encrypt(newUsername, password);
99
+
100
+ await setToIndexedDB(COOPNAME, 'store', 'encryptedKey', encryptedKey);
101
+ await setToIndexedDB(
102
+ COOPNAME,
103
+ 'store',
104
+ 'encryptedUsername',
105
+ encryptedUsername
106
+ );
107
+
108
+ wif.value = PrivateKey.fromString(key);
109
+ username.value = newUsername;
110
+ };
111
+
112
+ const setTokens = async (newTokens: ITokens) => {
113
+ const encryptedTokens = await encrypt(JSON.stringify(newTokens), password);
114
+ await setToIndexedDB(COOPNAME, 'store', 'encryptedTokens', encryptedTokens);
115
+ tokens.value = newTokens;
116
+ };
117
+
118
+ const logout = async () => {
119
+ username.value = '';
120
+ wif.value = undefined;
121
+ hasCreditials.value = false;
122
+ tokens.value = undefined;
123
+ await setToIndexedDB(COOPNAME, 'store', 'encryptedKey', '');
124
+ await setToIndexedDB(COOPNAME, 'store', 'encryptedUsername', '');
125
+ await setToIndexedDB(COOPNAME, 'store', 'encryptedTokens', '');
126
+ };
127
+
128
+ const signDigest = (digest: string): IMessageSignature => {
129
+ if (!wif.value) throw new Error('ключ не найден');
130
+
131
+ const signed = wif.value.signDigest(digest);
132
+ const verified = signed.verifyDigest(digest, wif.value.toPublic());
133
+
134
+ if (!verified) throw new Error('Подпись не верифицирована');
135
+
136
+ const result: IMessageSignature = {
137
+ message: digest,
138
+ signature: signed.toString(),
139
+ public_key: wif.value.toPublic().toString(),
140
+ };
141
+ return result;
142
+ };
143
+
144
+ const hashMessage = (message: string | Uint8Array) => {
145
+ return hashSHA256(message);
146
+ };
147
+
148
+ async function transact(
149
+ actionOrActions: any | any[],
150
+ broadcast = true
151
+ ): Promise<TransactResult | undefined> {
152
+ if (Array.isArray(actionOrActions)) {
153
+ return await sendActions(actionOrActions, broadcast);
154
+ } else {
155
+ return await sendAction(actionOrActions, broadcast);
156
+ }
157
+ }
158
+ const formActionFromAbi = async (action: any) => {
159
+ const { abi } = (await readBlockchain?.v1.chain.get_abi(action.account)) ?? {
160
+ abi: undefined,
161
+ };
162
+ return Action.from(action, abi);
163
+ };
164
+
165
+ const sendAction = async (action: any, broadcast: boolean) => {
166
+ const session = useSessionStore();
167
+ const formedAction = await formActionFromAbi(action);
168
+
169
+ return session.session?.transact({
170
+ action: formedAction,
171
+ }, { broadcast });
172
+ };
173
+
174
+ const sendActions = async (actions: any[], broadcast: boolean) => {
175
+ const session = useSessionStore();
176
+ const data: Action[] = [];
177
+
178
+ for (const action of actions) {
179
+ const formedAction = await formActionFromAbi(action);
180
+ data.push(formedAction);
181
+ }
182
+
183
+ return session.session?.transact({
184
+ actions: data,
185
+ }, { broadcast });
186
+ };
187
+
188
+ return {
189
+ init,
190
+ username,
191
+ wif,
192
+ hasCreditials,
193
+ tokens,
194
+ setWif,
195
+ setTokens,
196
+ logout,
197
+ signDigest,
198
+ hashMessage,
199
+ transact,
200
+ formActionFromAbi
201
+ };
202
+ });
@@ -0,0 +1,37 @@
1
+ <template lang="pug">
2
+ div
3
+ q-img(:src="ava").bg-grey.rounded-borders
4
+ </template>
5
+
6
+ <script setup lang="ts">
7
+ import { computed, onMounted, ref } from 'vue'
8
+ import { createAvatar } from '@dicebear/core'
9
+ import { rings } from '@dicebear/collection'
10
+
11
+ const ava = ref('')
12
+
13
+ const props = defineProps({
14
+ username: {
15
+ type: String,
16
+ required: true,
17
+ },
18
+ })
19
+
20
+ const username = computed(() => props.username)
21
+
22
+ onMounted(async () => {
23
+ if (username.value) {
24
+ const avatar = createAvatar(rings, {
25
+ seed: username.value,
26
+ ringColor: ['4db6ac'],
27
+ })
28
+ const blob = new Blob([avatar.toString()], { type: 'image/svg+xml' })
29
+ const url = URL.createObjectURL(blob)
30
+
31
+ ava.value = url
32
+
33
+ }
34
+
35
+ })
36
+
37
+ </script>
@@ -0,0 +1 @@
1
+ export {default as AutoAvatar} from './AutoAvatar.vue'
@@ -0,0 +1,202 @@
1
+ <template lang="pug">
2
+ q-card(style="word-break: break-all !important; white-space: normal !important;").q-pa-md.dynamic-padding
3
+ div(v-if="loading").full-width.text-center
4
+ div(style="margin:auto;").flex.q-pa-sm.full-width.text-center
5
+ q-spinner
6
+ span.q-ml-sm.text-grey подговка {{doc.meta.title}}
7
+ div(v-if="!loading")
8
+ div(v-html="safeHtml").description.q-pa-xs
9
+ div.row.q-mt-lg.q-pa-sm.justify-center
10
+ q-card(style="word-break: break-all !important; text-wrap: pretty;" flat).col-md-8.col-xs-12.q-pa-sm.verify-card
11
+ div.q-mr-lg.q-mt-md
12
+ q-badge(:color="doc.hash == regeneratedHash ? 'teal' : 'red'").text-center.q-pa-xs
13
+ q-icon(:name="doc.hash == regeneratedHash ? 'check_circle' : 'cancel'" ).q-mr-sm
14
+ span контрольная сумма
15
+ p.q-mr-lg.q-ml-lg.text-grey {{ doc.hash }}
16
+
17
+ div.q-mr-lg.q-mt-md
18
+ q-badge(:color="signature_verified ? 'teal' : 'red'").text-center.q-pa-xs
19
+ q-icon(:name="signature_verified ? 'check_circle' : 'cancel'" ).q-mr-sm
20
+ span цифровая подпись
21
+ p.q-mr-lg.q-ml-lg.text-grey {{ actionDocumentData?.document?.signature }}
22
+
23
+ div.q-mr-lg.q-mt-md
24
+ q-badge(:color="signature_verified ? 'teal' : 'red'").text-center.q-pa-xs
25
+ q-icon(:name="signature_verified ? 'check_circle' : 'cancel'" ).q-mr-sm
26
+ span публичный ключ
27
+ p.q-mr-lg.q-ml-lg.text-grey {{ actionDocumentData?.document?.public_key }}
28
+
29
+ div.text-center.q-gutter-sm
30
+ q-btn(size="sm" color="primary" icon="download" @click="download") скачать
31
+ //- q-btn(size="sm" color="primary" icon="download" @click="download2") скачать2
32
+
33
+ q-btn(size="sm" color="primary" icon="fa-solid fa-check-double" @click="regenerate" :loading="onRegenerate") сверить
34
+
35
+ </template>
36
+
37
+ <script setup lang="ts">
38
+ import { ref, computed } from 'vue'
39
+ import { Cooperative, SovietContract } from 'cooptypes'
40
+ import { Signature, PublicKey } from '@wharfkit/antelope';
41
+ import { useGlobalStore } from 'src/shared/store';
42
+ import DOMPurify from 'dompurify';
43
+ import { DigitalDocument } from 'src/shared/lib/document';
44
+ import { FailAlert, SuccessAlert } from 'src/shared/api';
45
+
46
+ const props = defineProps({
47
+ action: {
48
+ type: Object as () => Cooperative.Blockchain.IExtendedAction,
49
+ required: true,
50
+ },
51
+ doc: {
52
+ type: Object as () => Cooperative.Document.IGeneratedDocument,
53
+ required: true
54
+ }
55
+ })
56
+
57
+ const actionDocumentData = ref(props.action.data as SovietContract.Actions.Registry.NewSubmitted.INewSubmitted)
58
+ const doc = ref(props.doc)
59
+ const loading = ref(false)
60
+ const signature_verified = ref(false)
61
+
62
+ const regeneratedHash = ref()
63
+ const onRegenerate = ref(false)
64
+ const regenerated = ref()
65
+
66
+ const regenerate = async() => {
67
+ try {
68
+ onRegenerate.value = true
69
+
70
+ regenerated.value = await new DigitalDocument().generate({...doc.value.meta}, {skip_save: true})
71
+
72
+ if (regenerated.value.hash == regeneratedHash.value)
73
+ SuccessAlert('Сверка прошла успешно: аналогичный документ восстановлен из исходных данных')
74
+ else
75
+ FailAlert('Сверка прошла безуспешно: аналогичный документ невозможно получить из исходных данных')
76
+
77
+ onRegenerate.value = false
78
+ } catch(e){
79
+ onRegenerate.value = false
80
+ }
81
+ }
82
+
83
+ // Функция для декодирования и очистки HTML
84
+ function sanitizeHtml(html: string) {
85
+ return DOMPurify.sanitize(html);
86
+ }
87
+
88
+ const safeHtml = computed(() => sanitizeHtml(doc.value.html));
89
+
90
+
91
+ const hashBuffer = async () => {
92
+ // Декодирование из base64
93
+ const binaryString = window.atob(doc.value.binary.toString());
94
+
95
+ const len = binaryString.length;
96
+
97
+ const data = new Uint8Array(len);
98
+ for (let i = 0; i < len; i++) {
99
+ data[i] = binaryString.charCodeAt(i);
100
+ }
101
+
102
+ // Вычисление хэша из декодированных бинарных данных
103
+ regeneratedHash.value = (await useGlobalStore().hashMessage(data)).toUpperCase();
104
+ }
105
+
106
+ hashBuffer()
107
+
108
+
109
+ const verifySignature = () => {
110
+ const public_key = PublicKey.from(actionDocumentData.value.document.public_key)
111
+ const signature = Signature.from(actionDocumentData.value.document.signature)
112
+ const hash = actionDocumentData.value.document.hash
113
+ signature_verified.value = signature.verifyDigest(hash, public_key)
114
+ }
115
+
116
+ verifySignature()
117
+
118
+ // TODO удалить позже
119
+ // использовали для отладки сверки. Позволяет скачать регенерированный документ после нажатия на кнопку сверки.
120
+ // async function download2() {
121
+ // // Преобразование base64 строки в Blob
122
+ // console.log('regenerated: ', regenerated)
123
+ // const binaryData = new Uint8Array(Object.values(regenerated.value.binary));
124
+ // const blob = new Blob([binaryData], { type: 'application/pdf' });
125
+
126
+ // // Создание временной ссылки для скачивания файла
127
+ // const link = document.createElement('a');
128
+ // link.href = URL.createObjectURL(blob);
129
+ // link.download = regenerated.value.full_title ? regenerated.value.full_title : `${regenerated.value.meta.title} - ${regenerated.value.meta.username} - ${regenerated.value.meta.created_at}.pdf`;
130
+
131
+ // // Имитация клика по ссылке для начала скачивания
132
+ // document.body.appendChild(link);
133
+ // link.click();
134
+
135
+ // // Очистка после скачивания
136
+ // document.body.removeChild(link);
137
+ // URL.revokeObjectURL(link.href);
138
+ // }
139
+
140
+
141
+ async function download() {
142
+ // Преобразование base64 строки в Blob
143
+ const response = await fetch(`data:application/pdf;base64,${doc.value.binary.toString()}`);
144
+ const blob = await response.blob();
145
+
146
+ // Создание временной ссылки для скачивания файла
147
+ const link = document.createElement('a');
148
+ link.href = URL.createObjectURL(blob);
149
+ link.download = doc.value.full_title ? doc.value.full_title : `${doc.value.meta.title} - ${doc.value.meta.username} - ${doc.value.meta.created_at}.pdf`;
150
+
151
+ // Имитация клика по ссылке для начала скачивания
152
+ document.body.appendChild(link);
153
+ link.click();
154
+
155
+ // Очистка после скачивания
156
+ document.body.removeChild(link);
157
+ URL.revokeObjectURL(link.href);
158
+ }
159
+
160
+ </script>
161
+ <style>
162
+ .description table {
163
+ width: 100%;
164
+ /* или другая фиксированная ширина */
165
+ table-layout: fixed;
166
+ }
167
+
168
+ .description td {
169
+ word-break: break-all !important;
170
+ word-wrap: break-word !important;
171
+ white-space: normal !important;
172
+ }
173
+
174
+ .digital-document .header {
175
+ text-align: center;
176
+ word-break: break-word !important;
177
+ }
178
+
179
+ .description {
180
+ font-size: 14px;
181
+ white-space: pre-wrap;
182
+ }
183
+
184
+ .description p {
185
+ margin: 0 !important;
186
+ }
187
+
188
+ .verify-card {
189
+ font-size: 10px !important;
190
+ }
191
+
192
+ @media (min-width: 700px) {
193
+ .dynamic-padding {
194
+ padding: 50px !important;
195
+ }
196
+ }
197
+ @media (max-width: 700px) {
198
+ .dynamic-padding {
199
+ padding: 20px !important;
200
+ }
201
+ }
202
+ </style>
@@ -0,0 +1 @@
1
+ export {default as BaseDocument} from './BaseDocument.vue'
@@ -0,0 +1,47 @@
1
+ <template lang="pug">
2
+ div
3
+ q-select(
4
+ label="Кооперативный участок"
5
+ v-model="selectedBranch"
6
+ :options="branches"
7
+ option-value="braname"
8
+ option-label="full_name"
9
+ emit-value
10
+ standout="bg-teal text-white"
11
+ map-options
12
+ @update:model-value="$emit('update:selectedBranch', $event)"
13
+ )
14
+ template(v-slot:option="scope")
15
+ q-item(v-bind="scope.itemProps")
16
+ q-item-section
17
+ q-item-label(style="font-weight: bold;") {{ scope.opt.full_name }}
18
+ q-item-label(caption) {{ scope.opt.full_address }}
19
+
20
+ template(v-slot:selected-item="scope")
21
+ q-avatar(text-color="black" icon="home" size="md")
22
+ q-item-section.q-mt-sm
23
+ q-item-label(style="font-weight: bold;") {{ scope.opt.full_name }}
24
+ q-item-label() {{ scope.opt.full_address }}
25
+ </template>
26
+
27
+ <script lang="ts" setup>
28
+ import { type IPublicBranch } from 'src/entities/Branch/model';
29
+ import { ref, defineProps, watch } from 'vue'
30
+
31
+ const props = defineProps({
32
+ branches: {
33
+ type: Object as () => IPublicBranch[],
34
+ required: true,
35
+ },
36
+ modelValue: {
37
+ type: String,
38
+ required: false,
39
+ },
40
+ })
41
+
42
+ const selectedBranch = ref(props.modelValue)
43
+
44
+ watch(() => props.modelValue, (newVal) => {
45
+ selectedBranch.value = newVal
46
+ })
47
+ </script>
@@ -0,0 +1 @@
1
+ export { default as BranchSelector } from './BranchSelector.vue'
@@ -0,0 +1,25 @@
1
+ <template lang="pug">
2
+ .row.justify-center
3
+ div.documents-gap.col-md-8.col-xs-12
4
+ BaseDocument(:doc="complexDocument.statement.document" :action="complexDocument.statement.action")
5
+ BaseDocument(v-if="complexDocument.decision && complexDocument.decision.document" :doc="complexDocument.decision.document" :action="complexDocument.decision.action")
6
+
7
+ BaseDocument(v-for="doc in complexDocument.links" v-bind:key="doc.hash" :doc="doc" :action="complexDocument.statement.action")
8
+
9
+ </template>
10
+
11
+ <script setup lang="ts">
12
+ import { computed } from 'vue'
13
+ import { BaseDocument } from '../BaseDocument';
14
+ import { Cooperative } from 'cooptypes'
15
+
16
+ const props = defineProps({
17
+ documents: {
18
+ type: Object as () => Cooperative.Document.IComplexDocument,
19
+ required: true
20
+ },
21
+ })
22
+
23
+ const complexDocument = computed(() => props.documents)
24
+
25
+ </script>
@@ -0,0 +1 @@
1
+ export {default as ComplexDocument} from './ComplexDocument.vue'
@@ -0,0 +1,57 @@
1
+ <template lang="pug">
2
+ div(v-html="safeHtml").statement
3
+ </template>
4
+
5
+ <script setup lang="ts">
6
+ import { computed } from 'vue';
7
+ import DOMPurify from 'dompurify';
8
+
9
+ const props = defineProps({
10
+ html: {
11
+ type: String,
12
+ required: true
13
+ }
14
+ })
15
+
16
+ // Функция для декодирования и очистки HTML
17
+ function sanitizeHtml(html: string) {
18
+ return DOMPurify.sanitize(html);
19
+ }
20
+
21
+ const safeHtml = computed(() => sanitizeHtml(props.html));
22
+
23
+ </script>
24
+
25
+ <style>
26
+ .digital-document {
27
+ padding: 0px !important;
28
+ }
29
+
30
+ .statement h1 {
31
+ font-weight: 700 !important;
32
+ line-height: 4.5rem !important;
33
+ font-size: 3rem !important;
34
+ }
35
+
36
+ @media (max-width: 600px) {
37
+ .statement h1 {
38
+ font-size: 1.5rem !important;
39
+ line-height: 2rem !important;
40
+ }
41
+ }
42
+
43
+ .statement h3 {
44
+ font-size: 2rem !important;
45
+ font-weight: 400 !important;
46
+ line-height: 2rem !important;
47
+ letter-spacing: normal !important;
48
+ }
49
+
50
+ @media (max-width: 600px) {
51
+ .statement h3 {
52
+ font-size: 1rem !important;
53
+ line-height: 1.5rem !important;
54
+ /* Добавить или изменить другие стили по мере необходимости */
55
+ }
56
+ }
57
+ </style>
@@ -0,0 +1 @@
1
+ export {default as DocumentHtmlReader} from './DocumentHtmlReader.vue'
@@ -0,0 +1,34 @@
1
+ <template lang="pug">
2
+ div.q-gutter-sm
3
+ q-btn(
4
+ :disabled="isDisabled"
5
+ size="sm"
6
+ v-if="isEditing"
7
+ @click="$emit('save')"
8
+ color="primary"
9
+ label="Сохранить"
10
+ )
11
+ q-btn(
12
+ size="sm"
13
+ flat
14
+ v-if="isEditing"
15
+ @click="$emit('cancel')"
16
+ color="negative"
17
+ label="Отменить"
18
+ )
19
+ </template>
20
+
21
+ <script lang="ts" setup>
22
+ defineProps({
23
+ isEditing: {
24
+ type: Boolean,
25
+ required: true
26
+ },
27
+ isDisabled: {
28
+ type: Boolean,
29
+ required: false,
30
+ }
31
+ });
32
+
33
+ defineEmits(['save', 'cancel']);
34
+ </script>
@@ -0,0 +1 @@
1
+ export {default as EditableActions} from './EditableActions.vue'
@@ -0,0 +1,24 @@
1
+ <template lang='pug'>
2
+ div.contact-footer.q-pa-xs.text-grey-7.text-center {{ text }}
3
+ </template>
4
+
5
+ <script setup lang='ts'>
6
+ import { computed } from 'vue';
7
+
8
+ const props = defineProps({
9
+ text: {
10
+ type: String,
11
+ required: false,
12
+ default: ''
13
+ }
14
+ });
15
+
16
+ const text = computed(() => props.text)
17
+
18
+ </script>
19
+
20
+ <style>
21
+ .contact-footer {
22
+ font-size: 12px !important;
23
+ }
24
+ </style>
@@ -0,0 +1 @@
1
+ export {default as ContactsFooter} from './Contacts.vue'
@@ -0,0 +1,33 @@
1
+ <script setup lang="ts">
2
+ const emit = defineEmits(['cancel'])
3
+ interface IFormProps {
4
+ handlerSubmit: (e?: Event) => Promise<void>
5
+ isSubmitting?: boolean
6
+ showSubmit?: boolean
7
+ showCancel?: boolean
8
+ buttonSubmitTxt?: string
9
+ buttonCancelTxt?: string
10
+ }
11
+
12
+ withDefaults(defineProps<IFormProps>(), {
13
+ isSubmitting: false,
14
+ showCancel: true,
15
+ showSubmit: true,
16
+ buttonSubmitTxt: 'Продолжить',
17
+ buttonCancelTxt: 'Отменить',
18
+ })
19
+
20
+ const cancel = (): void => {
21
+ emit('cancel')
22
+ }
23
+ </script>
24
+
25
+ <template lang="pug">
26
+ q-form(@submit.prevent="handlerSubmit")
27
+ template(#default)
28
+ slot
29
+ div.flex
30
+ q-btn(v-if="showCancel" flat @click="cancel" size="sm") {{ buttonCancelTxt }}
31
+ q-btn(v-if="showSubmit" size="sm" type="submit" :loading="isSubmitting" color="primary") {{ buttonSubmitTxt }}
32
+
33
+ </template>
@@ -0,0 +1 @@
1
+ export { default as Form } from './Form.vue'