@coopenomics/desktop 2.2.10 → 2025.5.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 (366) hide show
  1. package/.env-example +6 -1
  2. package/.env-testnet +8 -0
  3. package/Dockerfile +12 -0
  4. package/alias-resolver.js +35 -0
  5. package/extensions/market/install.ts +78 -0
  6. package/extensions/market-admin/install.ts +42 -0
  7. package/extensions/participant/install.ts +125 -0
  8. package/extensions/powerup/install.ts +20 -0
  9. package/extensions/soviet/install.ts +83 -0
  10. package/package.json +14 -7
  11. package/quasar.config.cjs +28 -15
  12. package/src/app/App.vue +44 -73
  13. package/src/app/layouts/default.vue +40 -0
  14. package/src/app/layouts/useDefaultLayoutLogic.ts +59 -0
  15. package/src/app/providers/router.ts +4 -3
  16. package/src/app/providers/routes/index.ts +19 -34
  17. package/src/app/styles/style.css +4 -0
  18. package/src/boot/init.ts +6 -0
  19. package/src/boot/sentry.ts +14 -14
  20. package/src/desktops/index.ts +0 -6
  21. package/src/entities/Account/model/index.ts +1 -1
  22. package/src/entities/Agenda/api/index.ts +20 -0
  23. package/src/entities/Agenda/index.ts +2 -0
  24. package/src/entities/Agenda/model/index.ts +2 -0
  25. package/src/entities/Agenda/model/store.ts +36 -0
  26. package/src/entities/Agenda/model/types.ts +4 -0
  27. package/src/entities/Branch/model/index.ts +1 -1
  28. package/src/entities/Desktop/api/index.ts +16 -1
  29. package/src/entities/Desktop/model/store.ts +112 -106
  30. package/src/entities/Desktop/model/types.ts +14 -1
  31. package/src/entities/Document/api/index.ts +24 -0
  32. package/src/entities/Document/index.ts +2 -0
  33. package/src/entities/Document/model/store.ts +117 -0
  34. package/src/entities/Document/model/types.ts +18 -0
  35. package/src/entities/Meet/api/index.ts +58 -0
  36. package/src/entities/Meet/index.ts +2 -0
  37. package/src/entities/Meet/model/store.ts +72 -0
  38. package/src/entities/Meet/types/index.ts +7 -0
  39. package/src/entities/Payment/api/index.ts +20 -0
  40. package/src/entities/Payment/model/index.ts +2 -0
  41. package/src/entities/Payment/model/store.ts +62 -0
  42. package/src/entities/Payment/model/types.ts +7 -0
  43. package/src/entities/Session/model/store.ts +4 -4
  44. package/src/entities/System/model/store.ts +1 -1
  45. package/src/entities/User/model/stores.ts +3 -1
  46. package/src/entities/Wallet/api/index.ts +15 -33
  47. package/src/entities/Wallet/model/stores.ts +3 -23
  48. package/src/entities/Wallet/model/types.ts +2 -3
  49. package/src/env.d.ts +2 -0
  50. package/src/features/Agreementer/SignAgreementDialog/ui/SignAgreementDialog.vue +1 -1
  51. package/src/features/Branch/SelectBranch/index.ts +2 -0
  52. package/src/features/Branch/SelectBranch/ui/SelectBranchOverlay.vue +52 -105
  53. package/src/features/Decision/CreateProject/ui/CreateProjectFreeDecisionButton.vue +1 -1
  54. package/src/features/Decision/ParticipantApplication/model/index.ts +38 -0
  55. package/src/features/FreeDecision/CreateProject/model/index.ts +92 -0
  56. package/src/features/FreeDecision/CreateProject/ui/CreateProjectFreeDecisionButton.vue +51 -0
  57. package/src/features/FreeDecision/CreateProject/ui/index.ts +1 -0
  58. package/src/features/FreeDecision/GenerateDecision/index.ts +1 -0
  59. package/src/features/FreeDecision/GenerateDecision/model/index.ts +36 -0
  60. package/src/features/FreeDecision/index.ts +2 -0
  61. package/src/features/Meet/CloseMeetWithDecision/index.ts +1 -0
  62. package/src/features/Meet/CloseMeetWithDecision/model/index.ts +92 -0
  63. package/src/features/Meet/CreateMeet/index.ts +2 -0
  64. package/src/features/Meet/CreateMeet/model/index.ts +65 -0
  65. package/src/features/Meet/CreateMeet/ui/CreateMeet.vue +34 -0
  66. package/src/features/Meet/CreateMeet/ui/CreateMeetForm.vue +136 -0
  67. package/src/features/Meet/CreateMeet/ui/index.ts +2 -0
  68. package/src/features/Meet/GenerateAgenda/index.ts +1 -0
  69. package/src/features/Meet/GenerateAgenda/model/index.ts +18 -0
  70. package/src/features/Meet/GenerateBallot/index.ts +1 -0
  71. package/src/features/Meet/GenerateBallot/model/index.ts +18 -0
  72. package/src/features/Meet/GenerateNotification/index.ts +1 -0
  73. package/src/features/Meet/GenerateNotification/model/index.ts +18 -0
  74. package/src/features/Meet/GenerateSovietDecision/index.ts +1 -0
  75. package/src/features/Meet/GenerateSovietDecision/model/index.ts +48 -0
  76. package/src/features/Meet/MeetDetailsManagement/index.ts +1 -0
  77. package/src/features/Meet/MeetDetailsManagement/model/index.ts +121 -0
  78. package/src/features/Meet/RestartMeet/index.ts +2 -0
  79. package/src/features/Meet/RestartMeet/model/index.ts +54 -0
  80. package/src/features/Meet/RestartMeet/ui/RestartMeet.vue +46 -0
  81. package/src/features/Meet/RestartMeet/ui/RestartMeetForm.vue +92 -0
  82. package/src/features/Meet/RestartMeet/ui/index.ts +2 -0
  83. package/src/features/Meet/VoteOnMeet/index.ts +1 -0
  84. package/src/features/Meet/VoteOnMeet/model/index.ts +18 -0
  85. package/src/features/Payment/SetStatus/api/index.ts +20 -0
  86. package/src/features/Payment/SetStatus/index.ts +1 -0
  87. package/src/features/Payment/SetStatus/model/index.ts +30 -0
  88. package/src/features/{Order → Payment}/SetStatus/ui/SetOrderPaidStatusButton/SetOrderPaidStatusButton.vue +7 -3
  89. package/src/features/PaymentMethod/AddPaymentMethod/model/index.ts +2 -2
  90. package/src/features/PaymentMethod/AddPaymentMethod/ui/AddPaymentButton.vue +1 -1
  91. package/src/features/PaymentMethod/DeletePaymentMethod/model/index.ts +1 -1
  92. package/src/features/PaymentMethod/DeletePaymentMethod/ui/DeletePaymentMethodButton.vue +3 -1
  93. package/src/features/Request/CancelRequest/ui/CancelButton.vue +1 -1
  94. package/src/features/Request/ConfirmRecieveOnRequest/ui/ConfirmRecieveOnRequest.vue +1 -1
  95. package/src/features/Request/CreateParentOffer/ui/CreateParentOfferForm/CreateParentOfferForm.vue +4 -5
  96. package/src/features/Request/CreateParentOffer/ui/ImageUploaderWithPreview/ImageUploaderWithPreview.vue +5 -3
  97. package/src/features/Request/DisputeOnRequest/ui/DisputeOnRequestButton.vue +1 -1
  98. package/src/features/Request/ModerateRequest/ui/ModerateRequestButton.vue +2 -2
  99. package/src/features/Request/PublishRequest/ui/PublishRequestButton.vue +1 -1
  100. package/src/features/Request/RecieveOnRequest/ui/RecieveOnRequestButton.vue +1 -1
  101. package/src/features/Request/UnpublishRequest/ui/UnpublishRequestButton.vue +1 -1
  102. package/src/features/Union/AddCooperative/model/index.ts +5 -5
  103. package/src/features/Union/AddCooperative/ui/AddCooperativeForm.vue +6 -9
  104. package/src/features/User/AddUser/ui/AddUserDialog/AddUserDialog.vue +4 -4
  105. package/src/features/User/LoginUser/model/index.ts +3 -7
  106. package/src/features/User/LoginUser/ui/LoginForm/LoginForm.vue +0 -6
  107. package/src/features/User/Logout/model/index.ts +2 -1
  108. package/src/features/Wallet/DepositToWallet/ui/DepositButton/DepositButton.vue +10 -7
  109. package/src/features/Wallet/WithdrawFromWallet/ui/withdrawButton.vue +7 -6
  110. package/src/pages/Blank/index.ts +1 -0
  111. package/src/pages/Contacts/ContactsPage.vue +64 -0
  112. package/src/{widgets/Cooperative/Contacts → pages/Cooperative/ChangeContacts}/ui/index.ts +0 -1
  113. package/src/{widgets/Cooperative/Contributions/ui/ChangeContributions.vue → pages/Cooperative/ChangeRegisterPayments/ui/ChangeRegisterPayments.vue} +12 -11
  114. package/src/pages/Cooperative/ChangeRegisterPayments/ui/index.ts +1 -0
  115. package/src/pages/Cooperative/ListOfAgenda/index.ts +1 -0
  116. package/src/pages/Cooperative/ListOfAgenda/ui/ListOfAgendaQuestions.vue +118 -0
  117. package/src/pages/Cooperative/ListOfAgenda/ui/index.ts +1 -0
  118. package/src/pages/Cooperative/ListOfDocuments/ListOfDocumentsPage.vue +24 -0
  119. package/src/pages/Cooperative/ListOfMeets/model/index.ts +1 -0
  120. package/src/pages/Cooperative/ListOfMeets/model/model.ts +117 -0
  121. package/src/pages/Cooperative/ListOfMeets/ui/ListOfMeetsPage.vue +90 -0
  122. package/src/pages/Cooperative/ListOfMeets/ui/index.ts +1 -0
  123. package/src/pages/Cooperative/ListOfOrders/index.ts +1 -1
  124. package/src/pages/Cooperative/ListOfOrders/ui/ListOfOrdersPage.vue +0 -4
  125. package/src/pages/Cooperative/ListOfParticipants/ui/ListOfParticipantsPage.vue +61 -10
  126. package/src/pages/Cooperative/ListOfParticipants/ui/index.ts +1 -1
  127. package/src/pages/Cooperative/MeetDetails/ui/MeetDetailsPage.vue +88 -0
  128. package/src/pages/Cooperative/MeetDetails/ui/index.ts +1 -0
  129. package/src/pages/Cooperative/MemberBranchList/ui/index.ts +1 -0
  130. package/src/pages/Cooperative/Payments/index.ts +1 -0
  131. package/src/pages/Cooperative/Payments/ui/PaymentsPage.vue +7 -0
  132. package/src/pages/{ExtStore → ExtensionStore}/ExtensionPage/ExtensionPage.vue +51 -24
  133. package/src/pages/{ExtStore → ExtensionStore}/ExtensionsShowcase/ExtensionsShowcase.vue +2 -2
  134. package/src/pages/{ExtStore → ExtensionStore}/InstalledExtensions/InstalledExtensions.vue +2 -2
  135. package/src/pages/Marketplace/OfferPage/ui/OfferPage.vue +1 -1
  136. package/src/pages/Marketplace/Showcase/ui/ShowcasePage.vue +1 -1
  137. package/src/pages/Marketplace/SuppliesList/ui/SuppliesListPage.vue +1 -1
  138. package/src/pages/Marketplace/UserParentOffers/ui/UserParentOffersPage.vue +1 -1
  139. package/src/pages/Marketplace/UserSuppliesList/ui/UserSuppliesListPage.vue +1 -1
  140. package/src/pages/PermissionDenied/index.ts +1 -0
  141. package/src/pages/Registrator/SignUp/EmailInput.vue +4 -3
  142. package/src/pages/Registrator/SignUp/GenerateAccount.vue +2 -3
  143. package/src/pages/Registrator/SignUp/PayInitial.vue +1 -1
  144. package/src/pages/Registrator/SignUp/ReadStatement.vue +2 -2
  145. package/src/pages/Registrator/SignUp/SelectBranch.vue +2 -2
  146. package/src/pages/Registrator/SignUp/SignStatement.vue +2 -2
  147. package/src/pages/Registrator/SignUp/SignUp.vue +5 -12
  148. package/src/pages/Registrator/SignUp/WaitingRegistration.vue +1 -5
  149. package/src/pages/Registrator/SignUp/Welcome.vue +6 -3
  150. package/src/pages/Union/ConnectionAgreement/index.ts +1 -0
  151. package/src/pages/Union/ListOfCooperatives/ui/UnionPageListOfCooperatives.vue +139 -6
  152. package/src/pages/User/DocumentsPage/UserDocumentsPage.vue +23 -0
  153. package/src/pages/User/DocumentsPage/index.ts +1 -0
  154. package/src/pages/User/PaymentsPage/ui/UserPayments.vue +11 -0
  155. package/src/pages/User/PaymentsPage/ui/index.ts +1 -0
  156. package/src/pages/User/ProfilePage/index.ts +1 -0
  157. package/src/pages/User/ProfilePage/ui/ProfilePage.vue +114 -0
  158. package/src/pages/User/ProfilePage/ui/index.ts +1 -0
  159. package/src/pages/User/SettingsPage/ui/index.ts +1 -1
  160. package/src/pages/User/WalletPage/index.ts +1 -0
  161. package/src/pages/User/WalletPage/ui/WalletPage.vue +72 -0
  162. package/src/pages/User/WalletPage/ui/index.ts +1 -0
  163. package/src/processes/init-app/index.ts +28 -0
  164. package/src/processes/init-installed-extensions/index.ts +25 -0
  165. package/src/processes/init-wallet/index.ts +40 -0
  166. package/src/processes/navigation-guard-setup/index.ts +45 -0
  167. package/src/processes/process-decisions/index.ts +275 -0
  168. package/src/processes/select-branch/index.ts +80 -0
  169. package/src/processes/watch-branch-overlay/index.ts +38 -0
  170. package/src/processes/watch-desktop-health/index.ts +33 -0
  171. package/src/shared/api/alerts.ts +2 -6
  172. package/src/shared/api/axios.ts +5 -5
  173. package/src/shared/api/client.ts +4 -4
  174. package/src/shared/api/eosio.ts +2 -2
  175. package/src/shared/api/indexDB.ts +3 -0
  176. package/src/shared/api/utils.ts +2 -2
  177. package/src/shared/config/Environment.ts +68 -0
  178. package/src/shared/config/index.ts +2 -1
  179. package/src/shared/hooks/index.ts +2 -0
  180. package/src/shared/hooks/useAgendaPoints.ts +24 -0
  181. package/src/shared/hooks/useWindowSize.ts +13 -0
  182. package/src/shared/lib/composables/useDisplayName.ts +34 -0
  183. package/src/shared/lib/navigation/index.ts +2 -0
  184. package/src/shared/lib/navigation/routeUtils.ts +51 -0
  185. package/src/shared/lib/navigation/useBackButton.ts +63 -0
  186. package/src/shared/lib/proxy/dicebear-collection.cjs +21 -0
  187. package/src/shared/lib/proxy/dicebear-core.cjs +20 -0
  188. package/src/shared/lib/proxy/email-regex.cjs +19 -0
  189. package/src/shared/lib/utils/dates/validateDateWithinRange.ts +23 -0
  190. package/src/shared/ui/BaseDocument/BaseDocument.vue +120 -90
  191. package/src/{components/menu/blockchainStatus.vue → shared/ui/BlockchainStatusBar/BlockchainStatusBar.vue} +1 -0
  192. package/src/shared/ui/BlockchainStatusBar/index.ts +1 -0
  193. package/src/shared/ui/CardStyles/index.scss +61 -0
  194. package/src/shared/ui/ClientOnly/ClientOnly.vue +15 -0
  195. package/src/shared/ui/ClientOnly/index.ts +1 -0
  196. package/src/shared/ui/ComplexDocument/ComplexDocument.vue +31 -8
  197. package/src/shared/ui/CopyableInput/index.ts +1 -0
  198. package/src/shared/ui/CopyableInput/ui/CopyableInput.vue +62 -0
  199. package/src/shared/ui/EditableEntrepreneurCard/EditableEntrepreneurCard.vue +9 -8
  200. package/src/shared/ui/EditableIndividualCard/EditableIndividualCard.vue +10 -10
  201. package/src/shared/ui/EditableOrganizationCard/EditableOrganizationCard.vue +57 -47
  202. package/src/shared/ui/Form/Form.vue +3 -1
  203. package/src/shared/ui/InputStyles/index.scss +29 -0
  204. package/src/shared/ui/TabStyles/index.scss +53 -0
  205. package/src/shared/ui/index.ts +1 -0
  206. package/src/{components/history/AccountEvents.vue → widgets/AccountActions/AccountActionsPage.vue} +2 -2
  207. package/src/widgets/AccountActions/index.ts +1 -0
  208. package/src/widgets/BankDetailsCard/ui/BankDetailsCard.vue +2 -2
  209. package/src/widgets/BranchCard/ui/BranchCard.vue +2 -2
  210. package/src/widgets/Cooperative/Documents/ListOfDocuments/ui/DocumentCard.vue +48 -0
  211. package/src/widgets/Cooperative/Documents/ListOfDocuments/ui/DocumentsTable.vue +162 -0
  212. package/src/widgets/Cooperative/Documents/ListOfDocuments/ui/ListOfDocumentsWidget.vue +77 -120
  213. package/src/widgets/Cooperative/Documents/ListOfDocuments/ui/index.ts +3 -1
  214. package/src/widgets/Cooperative/Orders/ListOfOrders/ui/ListOfOrdersWidget.vue +135 -128
  215. package/src/widgets/Cooperative/Orders/ListOfOrders/ui/OrderCard.vue +74 -0
  216. package/src/widgets/Cooperative/Orders/ListOfOrders/ui/index.ts +2 -1
  217. package/src/widgets/Cooperative/Payments/ListOfPayments/ui/ListOfPaymentsWidget.vue +216 -0
  218. package/src/widgets/Cooperative/Payments/ListOfPayments/ui/PaymentCard.vue +73 -0
  219. package/src/widgets/Cooperative/Payments/ListOfPayments/ui/index.ts +2 -0
  220. package/src/widgets/Cooperative/Payments/index.ts +1 -0
  221. package/src/widgets/Desktop/LeftDrawerMenu/LeftDrawerMenu.vue +3 -2
  222. package/src/widgets/Desktop/SecondLevelMenuList/SecondLevelMenuList.vue +58 -91
  223. package/src/widgets/Desktop/WorkspaceMenu/WorkspaceMenu.vue +114 -59
  224. package/src/widgets/{ExtStore/ExtensionCard → ExtensionCard}/ExtensionCard.vue +12 -7
  225. package/src/widgets/Header/BackButton/BackButton.vue +25 -0
  226. package/src/widgets/Header/BackButton/index.ts +1 -0
  227. package/src/widgets/Header/CommonHeader/CooperativeSettingsHeader.vue +34 -0
  228. package/src/widgets/Header/CommonHeader/ExtstoreHeader.vue +41 -0
  229. package/src/widgets/Header/CommonHeader/Header.vue +33 -198
  230. package/src/widgets/Header/CommonHeader/HeaderStyles.scss +22 -0
  231. package/src/widgets/Header/CommonHeader/MainHeader.vue +88 -0
  232. package/src/widgets/Header/CommonHeader/UserSettingsHeader.vue +29 -0
  233. package/src/widgets/Header/CommonHeader/index.ts +1 -1
  234. package/src/widgets/Header/SettingsDropdown/SettingsDropdown.vue +0 -6
  235. package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/ui/Base/Base.vue +2 -2
  236. package/src/widgets/Meets/MeetDetailsActions/MeetDetailsActions.vue +51 -0
  237. package/src/widgets/Meets/MeetDetailsActions/index.ts +1 -0
  238. package/src/widgets/Meets/MeetDetailsActions/model.ts +46 -0
  239. package/src/widgets/Meets/MeetDetailsAgenda/MeetDetailsAgenda.vue +29 -0
  240. package/src/widgets/Meets/MeetDetailsAgenda/index.ts +1 -0
  241. package/src/widgets/Meets/MeetDetailsHeader/MeetDetailsHeader.vue +40 -0
  242. package/src/widgets/Meets/MeetDetailsHeader/index.ts +1 -0
  243. package/src/widgets/Meets/MeetDetailsVoting/MeetDetailsVoting.vue +77 -0
  244. package/src/widgets/Meets/MeetDetailsVoting/index.ts +1 -0
  245. package/src/widgets/Meets/MeetDetailsVoting/model.ts +117 -0
  246. package/src/widgets/Meets/MeetInfoCard/ui/MeetInfoCard.vue +38 -0
  247. package/src/widgets/Meets/MeetInfoCard/ui/index.ts +1 -0
  248. package/src/widgets/Meets/MeetsTable/ui/MeetsTable.vue +118 -0
  249. package/src/widgets/Meets/MeetsTable/ui/index.ts +1 -0
  250. package/src/widgets/Participants/index.ts +1 -0
  251. package/src/widgets/Participants/ui/ParticipantCard.vue +89 -0
  252. package/src/widgets/Participants/ui/ParticipantDetails.vue +79 -0
  253. package/src/widgets/Participants/ui/ParticipantsTable.vue +129 -0
  254. package/src/widgets/Participants/ui/index.ts +4 -0
  255. package/src/widgets/Questions/index.ts +3 -0
  256. package/src/widgets/Questions/ui/QuestionCard/QuestionCard.vue +109 -0
  257. package/src/widgets/Questions/ui/QuestionCard/index.ts +1 -0
  258. package/src/widgets/Questions/ui/QuestionsTable/QuestionsTable.vue +177 -0
  259. package/src/widgets/Questions/ui/QuestionsTable/index.ts +1 -0
  260. package/src/widgets/Questions/ui/VotingButtons/VotingButtons.vue +75 -0
  261. package/src/widgets/Questions/ui/VotingButtons/index.ts +1 -0
  262. package/src/widgets/Questions/ui/index.ts +3 -0
  263. package/src/widgets/RequireAgreements/index.ts +1 -0
  264. package/src/widgets/User/PaymentMethods/ui/PaymentMethods.vue +81 -85
  265. package/src-ssr/middlewares/injectEnv.ts +49 -0
  266. package/tsconfig.json +1 -1
  267. package/extensions/powerup/boot.ts +0 -17
  268. package/src/app/providers/card/store.ts +0 -42
  269. package/src/boot/branch-selector.ts +0 -40
  270. package/src/boot/init-stores.ts +0 -51
  271. package/src/boot/navigation-guards.ts +0 -46
  272. package/src/components/menu/footerMobileMenu.vue +0 -79
  273. package/src/components/soviet/index.vue +0 -76
  274. package/src/components/soviet/staff.vue +0 -274
  275. package/src/desktops/User/index.ts +0 -1
  276. package/src/desktops/User/model/index.ts +0 -329
  277. package/src/entities/Menu/model/store.ts +0 -69
  278. package/src/entities/Menu/model/types.ts +0 -11
  279. package/src/entities/Menu/ui/index.ts +0 -1
  280. package/src/entities/Order/api/index.ts +0 -14
  281. package/src/entities/Order/model/store.ts +0 -87
  282. package/src/features/Order/SetStatus/api/index.ts +0 -7
  283. package/src/features/Order/SetStatus/model/index.ts +0 -23
  284. package/src/pages/Cooperative/Contacts/ui/ContactsPage.vue +0 -7
  285. package/src/pages/Cooperative/ListOfBranches/ui/index.ts +0 -1
  286. package/src/pages/Documentor/ListOfDocuments/ListOfDocumentsPage.vue +0 -12
  287. package/src/pages/Union/Connection/index.ts +0 -1
  288. package/src/pages/_layouts/blank.vue +0 -24
  289. package/src/pages/_layouts/default.vue +0 -79
  290. package/src/types/index.ts +0 -3
  291. package/src/widgets/Commutator/Commutator.vue +0 -7
  292. package/src/widgets/Commutator/index.ts +0 -1
  293. package/src/widgets/Cooperative/Agenda/ListOfQuestions/ui/ListOfQuestions.vue +0 -273
  294. package/src/widgets/Cooperative/Agenda/ListOfQuestions/ui/index.ts +0 -1
  295. package/src/widgets/Cooperative/Contacts/ui/Contacts.vue +0 -52
  296. package/src/widgets/Cooperative/Contributions/ui/index.ts +0 -1
  297. package/src/widgets/Cooperative/Description/ui/SetDescription.vue +0 -4
  298. package/src/widgets/Cooperative/Description/ui/index.ts +0 -1
  299. package/src/widgets/Cooperative/Participants/ListOfParticipants/ui/ListOfParticipantsWidget.vue +0 -186
  300. package/src/widgets/Cooperative/Participants/ListOfParticipants/ui/index.ts +0 -1
  301. package/src/widgets/Desktop/SecondLevelMenu/SecondLevelMenu.vue +0 -59
  302. package/src/widgets/Desktop/SecondLevelMenu/index.ts +0 -1
  303. package/src/widgets/IndividualCard/ui/IndividualCard.vue +0 -170
  304. package/src/widgets/IndividualCard/ui/index.ts +0 -1
  305. package/src/widgets/OrganizationCard/ui/OrganizationCard.vue +0 -44
  306. package/src/widgets/OrganizationCard/ui/index.ts +0 -1
  307. package/src/widgets/Union/ListOfCooperatives/ui/UnionListOfCooperatives.vue +0 -136
  308. package/src/widgets/Union/ListOfCooperatives/ui/index.ts +0 -1
  309. package/src/entities/{Menu → Document}/model/index.ts +0 -0
  310. package/src/entities/{Order → Meet}/model/index.ts +0 -0
  311. package/src/entities/{Order → Payment}/index.ts +0 -0
  312. package/src/features/{Order/SetStatus → Decision/ParticipantApplication}/index.ts +0 -0
  313. package/src/{widgets/Request/SupplyOrderRequestCard → features/FreeDecision/CreateProject}/index.ts +0 -0
  314. package/src/features/{Order → Payment}/SetStatus/ui/SetOrderCompletedStatusButton/SetOrderCompletedStatusButton.vue +0 -0
  315. package/src/features/{Order → Payment}/SetStatus/ui/SetOrderCompletedStatusButton/index.ts +0 -0
  316. package/src/features/{Order → Payment}/SetStatus/ui/SetOrderPaidStatusButton/index.ts +0 -0
  317. package/src/features/{Order → Payment}/SetStatus/ui/SetOrderRefundedStatusButton/SetOrderRefundedStatusButton.vue +0 -0
  318. package/src/features/{Order → Payment}/SetStatus/ui/SetOrderRefundedStatusButton/index.ts +0 -0
  319. package/src/pages/{blank/blank.vue → Blank/BlankPage.vue} +0 -0
  320. package/src/pages/{Cooperative/Contacts/ui → Contacts}/index.ts +0 -0
  321. package/src/pages/Cooperative/{Contacts → ChangeContacts}/index.ts +0 -0
  322. package/src/{widgets/Cooperative/Contacts → pages/Cooperative/ChangeContacts}/ui/ChangeContacts.vue +0 -0
  323. package/src/pages/Cooperative/{ListOfBranches → ChangeRegisterPayments}/index.ts +0 -0
  324. package/src/pages/{Documentor → Cooperative}/ListOfDocuments/index.ts +0 -0
  325. package/src/pages/{Installer → Cooperative/ListOfMeets}/index.ts +0 -0
  326. package/src/{widgets/Cooperative/Agenda/ListOfQuestions → pages/Cooperative/MeetDetails}/index.ts +0 -0
  327. package/src/{widgets/Cooperative/Contacts → pages/Cooperative/MemberBranchList}/index.ts +0 -0
  328. package/src/pages/Cooperative/{ListOfBranches/ui/ListOfBranchesPage.vue → MemberBranchList/ui/MemberBranchListPage.vue} +0 -0
  329. package/src/pages/{ExtStore → ExtensionStore}/BaseRoute/ExtensionStoreBase.vue +0 -0
  330. package/src/pages/{ExtStore → ExtensionStore}/BaseRoute/index.ts +0 -0
  331. package/src/pages/{ExtStore → ExtensionStore}/ExtensionPage/index.ts +0 -0
  332. package/src/pages/{ExtStore → ExtensionStore}/ExtensionsShowcase/index.ts +0 -0
  333. package/src/pages/{ExtStore → ExtensionStore}/InstalledExtensions/index.ts +0 -0
  334. package/src/pages/{_layouts/permissionDenied.vue → PermissionDenied/PermissionDenied.vue} +0 -0
  335. package/src/pages/Union/{Connection/ConnectionPage.vue → ConnectionAgreement/ConnectionAgreementPage.vue} +0 -0
  336. package/src/{widgets/Cooperative/Contributions → pages/Union/InstallCooperative}/index.ts +0 -0
  337. package/src/pages/{Installer → Union/InstallCooperative}/ui/InstallCooperativePage.vue +0 -0
  338. package/src/pages/{Installer → Union/InstallCooperative}/ui/index.ts +0 -0
  339. package/src/{widgets/Cooperative/Participants/ListOfParticipants → pages/User/PaymentsPage}/index.ts +0 -0
  340. package/src/{components/history → widgets/AccountActions}/AccountLink.vue +0 -0
  341. package/src/{components/history → widgets/AccountActions}/ActionCell.vue +0 -0
  342. package/src/{components/history → widgets/AccountActions}/DataCell.vue +0 -0
  343. package/src/widgets/{IndividualCard → Cooperative/Payments/ListOfPayments}/index.ts +0 -0
  344. package/src/widgets/{ExtStore/ExtensionCard → ExtensionCard}/index.ts +0 -0
  345. package/src/widgets/{Request → Marketplace}/CreateChildOrderCard/CreateChildOrderCard.vue +0 -0
  346. package/src/widgets/{Request → Marketplace}/CreateChildOrderCard/index.ts +0 -0
  347. package/src/widgets/{Request → Marketplace}/RequestCard/RequestCard.vue +0 -0
  348. package/src/widgets/{Request → Marketplace}/RequestCard/index.ts +0 -0
  349. package/src/{entities/Menu → widgets/Marketplace/SupplyOrderRequestCard}/index.ts +1 -1
  350. /package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/model/index.ts +0 -0
  351. /package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/model/types.ts +0 -0
  352. /package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/ui/Base/index.ts +0 -0
  353. /package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/ui/Steps/EightStep.vue +0 -0
  354. /package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/ui/Steps/FifthStep.vue +0 -0
  355. /package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/ui/Steps/FirstStep.vue +0 -0
  356. /package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/ui/Steps/FourthStep.vue +0 -0
  357. /package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/ui/Steps/SecondStep.vue +0 -0
  358. /package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/ui/Steps/SeventhStep.vue +0 -0
  359. /package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/ui/Steps/SixthStep.vue +0 -0
  360. /package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/ui/Steps/ThirdStep.vue +0 -0
  361. /package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/ui/Steps/index.ts +0 -0
  362. /package/src/widgets/{Request → Marketplace}/SupplyOrderRequestCard/ui/index.ts +0 -0
  363. /package/src/widgets/{OrganizationCard → Meets/MeetInfoCard}/index.ts +0 -0
  364. /package/src/widgets/{Union/ListOfCooperatives → Meets/MeetsTable}/index.ts +0 -0
  365. /package/src/widgets/{Agreementer/RequireAgreements → RequireAgreements}/ui/RequireAgreements.vue +0 -0
  366. /package/src/widgets/{Agreementer/RequireAgreements → RequireAgreements}/ui/index.ts +0 -0
@@ -1,14 +1,65 @@
1
1
  <template lang="pug">
2
- ListOfParticipantsWidget
3
- template(#top)
4
- AddUserDialog
5
-
6
- template(#default="{ expand, receiver }")
7
- ListOfDocumentsWidget(v-if="expand" :filter="{receiver: receiver}")
2
+ q-page.padding
3
+ ParticipantsTable(
4
+ :accounts="accountStore.accounts.items"
5
+ :loading="onLoading"
6
+ @toggle-expand="toggleExpand"
7
+ @update="update"
8
+ )
9
+ template(#top)
10
+ AddUserDialog
8
11
  </template>
9
12
 
10
- <script lang="ts" setup>
11
- import { ListOfParticipantsWidget } from 'src/widgets/Cooperative/Participants/ListOfParticipants';
12
- import { ListOfDocumentsWidget } from 'src/widgets/Cooperative/Documents/ListOfDocuments';
13
- import { AddUserDialog } from 'src/features/User/AddUser/ui/AddUserDialog';
13
+ <script setup lang="ts">
14
+ import { ref, reactive } from 'vue'
15
+ import { Notify } from 'quasar'
16
+ import { useAccountStore } from 'src/entities/Account/model'
17
+ import { AddUserDialog } from 'src/features/User/AddUser/ui/AddUserDialog'
18
+ import { ParticipantsTable } from 'src/widgets/Participants'
19
+ import {
20
+ AccountTypes,
21
+ type IAccount,
22
+ type IIndividualData,
23
+ type IOrganizationData,
24
+ type IEntrepreneurData
25
+ } from 'src/entities/Account/types'
26
+
27
+ const accountStore = useAccountStore()
28
+ const onLoading = ref(false)
29
+ const expanded = reactive(new Map<string, boolean>())
30
+ const currentTab = reactive<Record<string, string>>({})
31
+
32
+ const toggleExpand = (id: string) => {
33
+ expanded.set(id, !expanded.get(id))
34
+ if (!currentTab[id]) currentTab[id] = 'info'
35
+ }
36
+
37
+ const loadParticipants = async () => {
38
+ try {
39
+ onLoading.value = true
40
+ await accountStore.getAccounts({ options: { page: 1, limit: 1000, sortOrder: 'DESC' } })
41
+ } catch (e: any) {
42
+ Notify.create({ message: e.message, type: 'negative' })
43
+ } finally {
44
+ onLoading.value = false
45
+ }
46
+ }
47
+ loadParticipants()
48
+
49
+ const update = (account: IAccount, newData: IIndividualData | IOrganizationData | IEntrepreneurData) => {
50
+ switch (account.private_account?.type) {
51
+ case AccountTypes.Individual:
52
+ account.private_account.individual_data = {
53
+ ...newData as IIndividualData,
54
+ passport: (newData as IIndividualData).passport ?? undefined
55
+ }
56
+ break
57
+ case AccountTypes.Entrepreneur:
58
+ account.private_account.entrepreneur_data = newData as IEntrepreneurData
59
+ break
60
+ case AccountTypes.Organization:
61
+ account.private_account.organization_data = newData as IOrganizationData
62
+ break
63
+ }
64
+ }
14
65
  </script>
@@ -1 +1 @@
1
- export {default as ListOfParticipantsPage} from './ListOfParticipantsPage.vue'
1
+ export { default as ListOfParticipantsPage } from './ListOfParticipantsPage.vue'
@@ -0,0 +1,88 @@
1
+ <template lang="pug">
2
+ div.q-pa-md
3
+ div(v-if="loading")
4
+ q-skeleton(type="rect" height="200px" class="q-mb-md")
5
+ q-skeleton(type="rect" height="100px" v-for="i in 3" :key="i" class="q-mb-md")
6
+
7
+ div(v-else-if="!meet")
8
+ div.text-h5.text-center Собрание не найдено
9
+
10
+ div(v-else)
11
+ MeetDetailsHeader(:meet="meet")
12
+
13
+ MeetDetailsActions(
14
+ :meet="meet"
15
+ :coopname="coopname"
16
+ :meet-hash="meetHash"
17
+ class="q-mt-md"
18
+ )
19
+
20
+ MeetDetailsAgenda(
21
+ :meet="meet"
22
+ class="q-mt-md"
23
+ )
24
+
25
+ MeetDetailsVoting(
26
+ :meet="meet"
27
+ :coopname="coopname"
28
+ :meet-hash="meetHash"
29
+ class="q-mt-md"
30
+ )
31
+ </template>
32
+
33
+ <script setup lang="ts">
34
+ import { onMounted, ref, computed } from 'vue'
35
+ import { useRoute } from 'vue-router'
36
+ import { MeetDetailsHeader } from 'src/widgets/Meets/MeetDetailsHeader'
37
+ import { MeetDetailsActions } from 'src/widgets/Meets/MeetDetailsActions'
38
+ import { MeetDetailsAgenda } from 'src/widgets/Meets/MeetDetailsAgenda'
39
+ import { MeetDetailsVoting } from 'src/widgets/Meets/MeetDetailsVoting'
40
+ import { useMeetStore } from 'src/entities/Meet'
41
+ import { FailAlert } from 'src/shared/api'
42
+ import type { IMeet } from 'src/entities/Meet'
43
+ import { useDesktopStore } from 'src/entities/Desktop/model'
44
+ import { useBackButton } from 'src/shared/lib/navigation'
45
+
46
+ const route = useRoute()
47
+ const meetStore = useMeetStore()
48
+ const desktopStore = useDesktopStore()
49
+
50
+ const coopname = computed(() => route.params.coopname as string)
51
+ const meetHash = computed(() => route.params.hash as string)
52
+
53
+ const meet = ref<IMeet | null>(null)
54
+ const loading = ref(true)
55
+
56
+ const loadMeetDetails = async () => {
57
+ loading.value = true
58
+ try {
59
+ const result = await meetStore.loadMeet({
60
+ coopname: coopname.value,
61
+ hash: meetHash.value
62
+ })
63
+ meet.value = result
64
+ } catch (error: any) {
65
+ FailAlert(error)
66
+ } finally {
67
+ loading.value = false
68
+ }
69
+ }
70
+
71
+ // Настройка кнопки навигации
72
+ const workspace = computed(() => desktopStore.activeWorkspaceName)
73
+ const buttonText = computed(() => workspace.value === 'soviet' ? 'Собрания' : 'Мои Собрания')
74
+ const targetRouteName = computed(() => workspace.value === 'soviet' ? 'meets' : 'user-meets')
75
+
76
+ // Используем хук для управления кнопкой
77
+ useBackButton({
78
+ text: buttonText.value,
79
+ routeName: targetRouteName.value,
80
+ params: { coopname: coopname.value },
81
+ componentId: 'meet-details-' + meetHash.value
82
+ })
83
+
84
+ // Загрузка деталей собрания
85
+ onMounted(() => {
86
+ loadMeetDetails()
87
+ })
88
+ </script>
@@ -0,0 +1 @@
1
+ export { default as MeetDetailsPage } from './MeetDetailsPage.vue'
@@ -0,0 +1 @@
1
+ export {default as MemberBranchList} from './MemberBranchListPage.vue'
@@ -0,0 +1 @@
1
+ export { default as PaymentsPage } from './ui/PaymentsPage.vue'
@@ -0,0 +1,7 @@
1
+ <template lang="pug">
2
+ ListOfPaymentsWidget
3
+ </template>
4
+
5
+ <script lang="ts" setup>
6
+ import { ListOfPaymentsWidget } from 'src/widgets/Cooperative/Payments';
7
+ </script>
@@ -5,41 +5,46 @@ div(v-if="extension").row
5
5
  div.q-mt-md
6
6
  div(v-if="isSettings").row
7
7
  q-btn( v-if="!isEmpty" color="teal" @click="save").full-width сохранить
8
- q-btn( v-if="isEmpty" @click="cancel").full-width назад
9
- div(v-if="isMain && !extension.installed").q-gutter-sm.text-center
8
+ q-btn( v-if="isEmpty" @click="cancel" flat icon="fas fa-arrow-left").full-width назад
9
+ div(v-if="isMain && !extension.is_installed").q-gutter-sm.text-center
10
10
  q-btn(color="teal" @click="router.push({name: 'extension-install'})").full-width установить
11
11
 
12
- div(v-if="isInstall && !extension.installed").q-gutter-sm.text-center
12
+ div(v-if="isInstall && !extension.is_installed").q-gutter-sm.text-center
13
13
  // это установка
14
14
  q-btn(color="teal" @click="install").full-width включить
15
15
 
16
- div(v-if="isMain && extension.installed").row
16
+ div(v-if="isMain && extension.is_installed")
17
17
  q-btn(color="teal" @click="openSettings").full-width настройки
18
-
19
- div.col-6.q-pa-sm
20
- q-btn(v-if="extension.enabled" size="sm" @click="disable" flat ).full-width
21
- q-icon(name="fa-solid fa-toggle-off").text-grey
22
- span.q-ml-xs отключить
23
- q-btn( size="sm" @click="enable" v-if="!extension.enabled" flat).full-width
24
- q-icon(name="fa-solid fa-toggle-on")
25
- span.q-ml-xs включить
26
-
27
- div.col-6.q-pa-sm
28
- q-btn( size="sm" @click="uninstall" v-if="extension.installed" flat ).full-width
29
- q-icon(name="delete").text-grey
30
- span.q-ml-xs удалить
18
+ div(v-if="extension.is_builtin").q-mt-sm
19
+ p.text-center.text-grey минимальное расширение
20
+ div(v-else).row
21
+ div.col-6.q-pa-sm
22
+ q-btn(v-if="extension.enabled" size="sm" @click="disable" flat :disabled="extension.is_builtin").full-width
23
+ q-icon(name="fa-solid fa-toggle-on")
24
+ span.q-ml-xs включено
25
+
26
+ q-btn( size="sm" @click="enable" v-if="!extension.enabled" flat :disabled="extension.is_builtin").full-width
27
+ q-icon(name="fa-solid fa-toggle-off").text-grey
28
+ span.q-ml-xs отключено
29
+
30
+ div.col-6.q-pa-sm
31
+ q-btn( size="sm" @click="uninstall" v-if="extension.is_installed" flat :disabled="extension.is_builtin").full-width
32
+ q-icon(name="delete").text-grey
33
+ span.q-ml-xs удалить
31
34
 
32
35
  div.col-md-9.col-sm-8.col-xs-12.q-pa-md
33
36
  div(v-if="isMain")
34
37
  div
35
38
  span.text-h1 {{extension.title}}
36
- q-chip(square dense size="sm" color="green" outline v-if="extension.installed && extension.enabled").q-ml-sm активно
37
- q-chip(square dense size="sm" color="orange" outline v-if="extension.installed && !extension.enabled").q-ml-sm отключено
38
- q-chip(size="sm" dense color="orange" v-if="!extension.available" outline) в разработке
39
+ //- q-chip(square dense size="sm" color="green" outline v-if="extension.is_installed && extension.enabled").q-ml-sm установлено
40
+ //- q-chip(square dense size="sm" color="orange" outline v-if="extension.is_installed && !extension.enabled").q-ml-sm отключено
41
+ q-chip(size="sm" dense color="orange" v-if="!extension.is_available" outline) в разработке
39
42
  div
40
43
  q-chip(outline v-for="tag in extension.tags" v-bind:key="tag" dense size="sm") {{tag}}
41
44
 
42
- vue-markdown(:source="extension.readme").description.q-mt-md
45
+ ClientOnly
46
+ template(#default)
47
+ vue-markdown(:source="extension.readme").description.q-mt-md
43
48
  div(v-if="(isSettings || isInstall) && extension.schema")
44
49
  q-form(ref="myFormRef")
45
50
  div(v-if="isEmpty && !isInstall")
@@ -47,26 +52,38 @@ div(v-if="extension").row
47
52
  p.text-h6 Нет настроек
48
53
  span Расширение не предоставило настроек для изменения.
49
54
  div(v-if="!isEmpty")
50
- vue-markdown(:source="extension.instructions").description.q-mt-md
55
+
56
+ //- vue-markdown(:source="extension.instructions").description.q-mt-md
57
+ ClientOnly
58
+ template(#default)
59
+ vue-markdown(v-if="extension.instructions" :source="extension.instructions").description.q-mt-md
51
60
  ZodForm(:schema="extension.schema" v-model="data")
52
61
 
53
62
  </template>
54
63
  <script lang="ts" setup>
55
64
  import { useExtensionStore } from 'src/entities/Extension/model';
56
- import { computed, onMounted, ref, watch } from 'vue';
65
+ import { computed, onMounted, ref, watch, defineAsyncComponent } from 'vue';
57
66
  import { useRoute, useRouter } from 'vue-router';
58
67
  import { ZodForm } from 'src/shared/ui/ZodForm';
59
- import VueMarkdown from 'vue-markdown-render'
68
+ // import VueMarkdown from 'vue-markdown-render'
60
69
  import { extractGraphQLErrorMessages, FailAlert, SuccessAlert } from 'src/shared/api';
61
70
  import { useUpdateExtension } from 'src/features/Extension/UpdateExtension';
62
71
  import { useUninstallExtension } from 'src/features/Extension/UninstallExtension';
63
72
  import { useInstallExtension } from 'src/features/Extension/InstallExtension';
73
+ import { useDesktopStore } from 'src/entities/Desktop/model';
74
+ import { ClientOnly } from 'src/shared/ui/ClientOnly';
75
+
76
+ // Клиентский компонент для markdown, загружаемый только на клиенте
77
+ const VueMarkdown = defineAsyncComponent(() =>
78
+ import('vue-markdown-render').then(mod => mod.default)
79
+ );
64
80
 
65
81
  const route = useRoute();
66
82
  const router = useRouter();
67
83
  const extStore = useExtensionStore();
68
84
  const data = ref({});
69
85
  const myFormRef = ref();
86
+ const desktop = useDesktopStore()
70
87
 
71
88
  onMounted(async () => {
72
89
  if (route.params.name) {
@@ -119,6 +136,7 @@ const install = async () => {
119
136
  try {
120
137
  await installExtension(extension.value.name, true, data.value);
121
138
  router.push({ name: 'one-extension' });
139
+ desktop.loadDesktop()
122
140
  SuccessAlert('Расширение установлено');
123
141
  } catch (e: unknown) {
124
142
  FailAlert(`Ошибка установки расширения: ${extractGraphQLErrorMessages(e)}`);
@@ -131,6 +149,9 @@ const disable = async () => {
131
149
  if (extension.value) {
132
150
  try {
133
151
  await updateExtension(extension.value.name, false, extension.value.config);
152
+ // Если расширение отключено, удаляем его workspace
153
+ desktop.removeWorkspace(extension.value.name);
154
+
134
155
  SuccessAlert('Расширение обновлено');
135
156
  } catch (e: unknown) {
136
157
  FailAlert(`Ошибка отключения расширения: ${extractGraphQLErrorMessages(e)}`);
@@ -143,6 +164,10 @@ const enable = async () => {
143
164
  if (extension.value) {
144
165
  try {
145
166
  await updateExtension(extension.value.name, true, extension.value.config);
167
+
168
+ // Перезагружаем desktop с сервера, чтобы включённое расширение появилось
169
+ await desktop.loadDesktop();
170
+
146
171
  SuccessAlert('Расширение обновлено');
147
172
  } catch (e: any) {
148
173
  FailAlert(`Ошибка включения расширения: ${extractGraphQLErrorMessages(e)}`);
@@ -150,12 +175,14 @@ const enable = async () => {
150
175
  }
151
176
  };
152
177
 
178
+
153
179
  const uninstall = async () => {
154
180
  const { uninstallExtension } = useUninstallExtension();
155
181
  if (extension.value) {
156
182
  try {
157
183
  await uninstallExtension(extension.value.name);
158
184
  router.push({ name: 'one-extension' });
185
+ desktop.loadDesktop()
159
186
  SuccessAlert('Расширение удалено');
160
187
  } catch (e: any) {
161
188
  FailAlert(`Ошибка удаления расширения: ${extractGraphQLErrorMessages(e)}`);
@@ -1,13 +1,13 @@
1
1
  <template lang="pug">
2
2
  div.row
3
- div(v-for="extension in extStore.extensions" v-bind:key="extension.name").col-md-3.col-xs-12
3
+ div(v-for="extension in extStore.extensions" v-bind:key="extension.name").col-md-3.col-sm-6.col-xs-12
4
4
  ExtensionCard(:extension="extension")
5
5
 
6
6
  </template>
7
7
  <script lang="ts" setup>
8
8
  import { useExtensionStore } from 'src/entities/Extension/model';
9
9
  import { onMounted } from 'vue';
10
- import { ExtensionCard } from 'src/widgets/ExtStore/ExtensionCard';
10
+ import { ExtensionCard } from 'src/widgets/ExtensionCard';
11
11
 
12
12
  const extStore = useExtensionStore()
13
13
 
@@ -7,12 +7,12 @@
7
7
  <script lang="ts" setup>
8
8
  import { useExtensionStore } from 'src/entities/Extension/model'
9
9
  import { onMounted } from 'vue';
10
- import { ExtensionCard } from 'src/widgets/ExtStore/ExtensionCard'
10
+ import { ExtensionCard } from 'src/widgets/ExtensionCard'
11
11
 
12
12
  const extStore = useExtensionStore()
13
13
 
14
14
  onMounted(async () => {
15
- extStore.loadExtensions({ installed: true })
15
+ extStore.loadExtensions({ is_installed: true })
16
16
  })
17
17
 
18
18
  </script>
@@ -63,7 +63,7 @@ div(v-if="localRequest").row.justify-around.q-pt-lg
63
63
  import { computed, ref, watch } from 'vue'
64
64
  import { useRouter } from 'vue-router'
65
65
  import { ImageCarousel } from 'src/shared/ui/ImageCarousel'
66
- import { CreateChildOrderCard } from 'src/widgets/Request/CreateChildOrderCard'
66
+ import { CreateChildOrderCard } from 'src/widgets/Marketplace/CreateChildOrderCard'
67
67
 
68
68
  import { PublishRequestButton } from 'src/features/Request/PublishRequest'
69
69
  import { UnpublishRequestButton } from 'src/features/Request/UnpublishRequest'
@@ -1,6 +1,6 @@
1
1
  <script lang="ts" setup>
2
2
  import { useRequestStore } from 'src/entities/Request/model/stores'
3
- import { RequestCard } from 'src/widgets/Request/RequestCard'
3
+ import { RequestCard } from 'src/widgets/Marketplace/RequestCard'
4
4
  import { OfferPage } from 'src/pages/Marketplace/OfferPage'
5
5
  import { computed } from 'vue'
6
6
  import { useRoute, useRouter } from 'vue-router'
@@ -1,6 +1,6 @@
1
1
  <script lang="ts" setup>
2
2
  import { useRequestStore } from 'src/entities/Request/model/stores'
3
- import { SupplyOrderRequest } from 'src/widgets/Request/SupplyOrderRequestCard'
3
+ import { SupplyOrderRequest } from 'src/widgets/Marketplace/SupplyOrderRequestCard'
4
4
  import { computed } from 'vue'
5
5
  import { useRoute } from 'vue-router'
6
6
  const requestsStore = useRequestStore()
@@ -2,7 +2,7 @@
2
2
  import { useRequestStore } from 'src/entities/Request/model/stores'
3
3
  import { computed } from 'vue'
4
4
  import { useRoute, useRouter } from 'vue-router'
5
- import { RequestCard } from 'src/widgets/Request/RequestCard'
5
+ import { RequestCard } from 'src/widgets/Marketplace/RequestCard'
6
6
  import { OfferPage } from 'src/pages/Marketplace/OfferPage'
7
7
 
8
8
  import type { IRequestData } from 'src/entities/Request'
@@ -1,6 +1,6 @@
1
1
  <script lang="ts" setup>
2
2
  import { useRequestStore } from 'src/entities/Request/model/stores'
3
- import { SupplyOrderRequest } from 'src/widgets/Request/SupplyOrderRequestCard'
3
+ import { SupplyOrderRequest } from 'src/widgets/Marketplace/SupplyOrderRequestCard'
4
4
  import { computed } from 'vue'
5
5
  import { useRoute } from 'vue-router'
6
6
 
@@ -0,0 +1 @@
1
+ export { default as PermissionDenied} from './PermissionDenied.vue'
@@ -1,7 +1,7 @@
1
1
  <template lang='pug'>
2
2
  div
3
3
  q-step(:name="store.steps.EmailInput", title='Введите электронную почту', :done="store.isStepDone('EmailInput')")
4
- p Добро пожаловать в {{ COOP_SHORT_NAME }}! Для начала регистрации, пожалуйста, введите вашу электронную почту:
4
+ p Добро пожаловать в {{ coopTitle }}! Для начала регистрации, пожалуйста, введите вашу электронную почту:
5
5
 
6
6
  q-input.q-mt-lg(
7
7
  v-model.trim='email',
@@ -27,14 +27,15 @@ div
27
27
  import { ref, computed, watch } from 'vue'
28
28
  import { useCreateUser } from 'src/features/User/CreateUser'
29
29
  import { debounce } from 'quasar'
30
- import { COOP_SHORT_NAME } from 'src/shared/config'
31
30
  import { useRegistratorStore } from 'src/entities/Registrator'
31
+ import { env } from 'src/shared/config'
32
+
32
33
  const store = useRegistratorStore()
33
34
 
34
35
  const api = useCreateUser()
35
36
 
36
37
  watch(() => store.state.email, () => email.value = store.state.email)
37
-
38
+ const coopTitle = computed(() => env.COOP_SHORT_NAME)
38
39
  const email = ref(store.state.email)
39
40
 
40
41
  const inLoading = ref(false)
@@ -9,9 +9,8 @@ div
9
9
 
10
10
  q-input.q-mt-lg(
11
11
  v-if='account.private_key',
12
- v-model='account.private_key',
13
- label='Приватный ключ',
14
- :readonly='true'
12
+ :model-value='account.private_key',
13
+ label='Приватный ключ'
15
14
  )
16
15
 
17
16
  q-checkbox(v-model="i_save", label="Я сохранил имя и ключ в надёжном месте")
@@ -5,7 +5,7 @@ div(v-if="store?.state?.payment?.details?.amount_without_fee")
5
5
  p Пожалуйста, совершите оплату регистрационного взноса {{ formatAssetToReadable(store.state.payment.details.amount_without_fee) }}. Комиссия провайдера {{ store.state.payment.details.fact_fee_percent }}%, всего к оплате: {{ store.state.payment.details.amount_plus_fee }}.
6
6
  div.q-mt-md
7
7
  span.text-bold Внимание!
8
- span.q-ml-xs Оплату необходимо произвести с банковского счета, который принадлежит именно Вам. При поступлении средств с другого счета, оплата будет аннулирована, а вступление в кооператив приостановлено.
8
+ span.q-ml-xs Оплату необходимо произвести с банковского счета пайщика, который вступает в кооператив. При поступлении средств с другого счета, оплата будет аннулирована, а вступление в кооператив приостановлено.
9
9
  PayWithProvider(:payment-order="store.state.payment" @payment-fail="paymentFail" @payment-success="paymentSuccess")
10
10
 
11
11
  </template>
@@ -43,7 +43,7 @@ div
43
43
  <script lang="ts" setup>
44
44
  import { ref, computed, watch, onMounted } from 'vue'
45
45
  import { useCreateUser } from 'src/features/User/CreateUser'
46
- import { failAlert } from 'src/shared/api';
46
+ import { FailAlert } from 'src/shared/api';
47
47
  import { Loader } from 'src/shared/ui/Loader';
48
48
  import { ReadAgreementDialog } from 'src/features/Agreementer/ReadAgreementDialog';
49
49
  import { useAgreementStore } from 'src/entities/Agreement'
@@ -70,7 +70,7 @@ const loadStatement = async (): Promise<void> => {
70
70
  isLoading.value = false
71
71
  } catch (e: any) {
72
72
  isLoading.value = false
73
- failAlert(e.message)
73
+ FailAlert(e.message)
74
74
  }
75
75
  }
76
76
  const back = () => {
@@ -21,7 +21,7 @@ div(v-if="store")
21
21
  <script lang="ts" setup>
22
22
  import { useBranchStore } from 'src/entities/Branch/model'
23
23
  import { useRegistratorStore } from 'src/entities/Registrator'
24
- import { failAlert } from 'src/shared/api';
24
+ import { FailAlert } from 'src/shared/api';
25
25
  import { useSystemStore } from 'src/entities/System/model';
26
26
  const { info } = useSystemStore()
27
27
 
@@ -36,7 +36,7 @@ const load = async () => {
36
36
  try{
37
37
  await branchStore.loadPublicBranches({ coopname: info.coopname })
38
38
  } catch(e: any){
39
- failAlert(e)
39
+ FailAlert(e)
40
40
  }
41
41
  }
42
42
 
@@ -28,7 +28,7 @@
28
28
  <script lang="ts" setup>
29
29
  import { ref, onMounted, onBeforeUnmount, watch, nextTick } from 'vue'
30
30
  import { Notify } from 'quasar'
31
- import { failAlert, FailAlert } from 'src/shared/api'
31
+ import { FailAlert } from 'src/shared/api'
32
32
  import { Loader } from 'src/shared/ui/Loader'
33
33
  import { useRegistratorStore } from 'src/entities/Registrator'
34
34
  import { useCreateUser } from 'src/features/User/CreateUser'
@@ -151,7 +151,7 @@ import { client } from 'src/shared/api/client'
151
151
  store.next()
152
152
  } catch (err: any) {
153
153
  onSign.value = false
154
- failAlert(err)
154
+ FailAlert(err)
155
155
  }
156
156
  }
157
157
  </script>
@@ -20,7 +20,6 @@
20
20
 
21
21
  WaitingRegistration
22
22
 
23
- Welcome
24
23
  q-btn(@click="out" dense size="sm" flat) начать с начала
25
24
 
26
25
 
@@ -35,7 +34,6 @@ import SignStatement from './SignStatement.vue'
35
34
  import ReadStatement from './ReadStatement.vue'
36
35
  import PayInitial from './PayInitial.vue'
37
36
  import WaitingRegistration from './WaitingRegistration.vue'
38
- import Welcome from './Welcome.vue'
39
37
  import SelectBranch from './SelectBranch.vue'
40
38
 
41
39
  import { useSystemStore } from 'src/entities/System/model';
@@ -47,18 +45,15 @@ import { useRegistratorStore } from 'src/entities/Registrator'
47
45
  import { useLogoutUser } from 'src/features/User/Logout'
48
46
  import { useSessionStore } from 'src/entities/Session'
49
47
  import { useAgreementStore } from 'src/entities/Agreement'
50
- import { useWalletStore } from 'src/entities/Wallet'
51
48
 
52
49
  import { useRouter } from 'vue-router';
50
+ import { useInitWalletProcess } from 'src/processes/init-wallet'
53
51
 
54
52
  const currentUser = useCurrentUserStore()
55
53
  const router = useRouter()
56
54
  const { state, clearUserData, steps } = useRegistratorStore()
57
- const session = useSessionStore()
58
55
  const store = state
59
- const username = computed(() => session.username)
60
56
  const agreementer = useAgreementStore()
61
- const wallet = useWalletStore()
62
57
 
63
58
  onMounted(() => {
64
59
  agreementer.loadCooperativeAgreements(info.coopname)
@@ -75,9 +70,6 @@ onMounted(() => {
75
70
  const out = async () => {
76
71
  const { logout } = await useLogoutUser()
77
72
  await logout()
78
-
79
- clearUserData()
80
-
81
73
  window.location.reload()
82
74
  }
83
75
 
@@ -90,7 +82,7 @@ onBeforeUnmount(() => {
90
82
  watch(() => currentUser.participantAccount, (newValue) => {
91
83
  if (newValue) {
92
84
  clearUserData()
93
- store.step = steps.Welcome
85
+ router.push({name: 'index'})
94
86
  }
95
87
  })
96
88
 
@@ -98,8 +90,9 @@ watch(
98
90
  () => [store.step, store.email, store.account, store.userData],
99
91
  () => {
100
92
  if (store.step >= steps.GenerateAccount && store.step < steps.WaitingRegistration) {
101
- currentUser.loadProfile(username.value, info.coopname)
102
- wallet.loadUserWalet({coopname: info.coopname, username: username.value})
93
+ useInitWalletProcess().run()
94
+ // currentUser.loadProfile(username.value, info.coopname)
95
+ // wallet.loadUserWallet({coopname: info.coopname, username: username.value})
103
96
  }
104
97
  }
105
98
  )
@@ -22,6 +22,7 @@ const { info } = useSystemStore()
22
22
 
23
23
  import { Loader } from 'src/shared/ui/Loader';
24
24
  import { useRegistratorStore } from 'src/entities/Registrator'
25
+
25
26
  const store = useRegistratorStore()
26
27
 
27
28
  const currentStep = store.steps.WaitingRegistration
@@ -63,9 +64,4 @@ const update = async () => {
63
64
  }
64
65
  }
65
66
 
66
- watch(() => participantAccount, (newValue) => {
67
- if (newValue) store.next()
68
- })
69
-
70
-
71
67
  </script>
@@ -2,11 +2,11 @@
2
2
  div
3
3
  q-step(
4
4
  :name="store.steps.Welcome"
5
- :title="'Добро пожаловать в ' + COOP_SHORT_NAME"
5
+ :title="'Добро пожаловать в ' + coopTitle"
6
6
  :done="store.isStepDone('Welcome')"
7
7
  )
8
8
 
9
- p Совет кооператива {{ COOP_SHORT_NAME }} принял положительное решение о приёме Вас в пайщики, выдал удостоверение и создал цифровой кошелёк для Вас.
9
+ p Совет кооператива {{ coopTitle }} принял положительное решение о приёме Вас в пайщики, выдал удостоверение и создал цифровой кошелёк для Вас.
10
10
 
11
11
  div.q-mt-lg
12
12
  q-btn(
@@ -17,11 +17,14 @@ div
17
17
  </template>
18
18
 
19
19
  <script lang="ts" setup>
20
- import { COOP_SHORT_NAME } from 'src/shared/config'
20
+ import { computed } from 'vue'
21
21
  import { useRouter } from 'vue-router';
22
22
  import { useRegistratorStore } from 'src/entities/Registrator';
23
+ import { env } from 'src/shared/config';
24
+
23
25
  const router = useRouter()
24
26
  const store = useRegistratorStore()
27
+ const coopTitle = computed(() => env.COOP_SHORT_NAME)
25
28
 
26
29
  const next = () => {
27
30
  router.push({ name: 'index' })