@ozdao/prometheus-framework 0.2.48 → 0.2.51
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/auth.server.js +27 -25
- package/dist/auth.server.mjs +27 -25
- package/dist/community.server.js +1 -1
- package/dist/community.server.mjs +1 -1
- package/dist/events.server.js +1 -1
- package/dist/events.server.mjs +1 -1
- package/dist/files.server.js +1 -1
- package/dist/files.server.mjs +1 -1
- package/dist/gallery.server.js +1 -1
- package/dist/gallery.server.mjs +1 -1
- package/dist/index-3981e903.mjs +217 -0
- package/dist/index-4eecfdb9.js +216 -0
- package/dist/main-203b36b6.mjs +13628 -0
- package/dist/main-_b1_i8mt.mjs +13606 -0
- package/dist/main-a7ae4ce5.js +91 -0
- package/dist/main-uiQFxEks.js +91 -0
- package/dist/main.css +1 -1
- package/dist/middlewares.server.js +1 -1
- package/dist/middlewares.server.mjs +1 -1
- package/dist/node_modules/vue-select/dist/vue-select.es.cjs +1 -3
- package/dist/node_modules/vue-select/dist/vue-select.es.js +49 -645
- package/dist/organizations.server.js +35 -43
- package/dist/organizations.server.mjs +35 -43
- package/dist/products.server.js +107 -24
- package/dist/products.server.mjs +107 -24
- package/dist/prometheus-framework/src/components/Button/Button.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/Button/Button.vue.js +2 -225
- package/dist/prometheus-framework/src/components/Button/Button.vue2.cjs +1 -1
- package/dist/prometheus-framework/src/components/Button/Button.vue2.js +225 -2
- package/dist/prometheus-framework/src/components/Checkbox/Checkbox.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/Checkbox/Checkbox.vue.js +61 -2
- package/dist/prometheus-framework/src/components/Checkbox/Checkbox.vue2.cjs +1 -1
- package/dist/prometheus-framework/src/components/Checkbox/Checkbox.vue2.js +2 -61
- package/dist/prometheus-framework/src/components/Field/Field.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/Field/Field.vue.js +2 -76
- package/dist/prometheus-framework/src/components/Field/Field.vue2.cjs +1 -1
- package/dist/prometheus-framework/src/components/Field/Field.vue2.js +76 -2
- package/dist/prometheus-framework/src/components/FieldBig/FieldBig.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/FieldBig/FieldBig.vue.js +1 -1
- package/dist/prometheus-framework/src/components/SelectMulti/SelectMulti.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/SelectMulti/SelectMulti.vue.js +6 -6
- package/dist/prometheus-framework/src/components/Tab/Tab.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/Tab/Tab.vue.js +2 -44
- package/dist/prometheus-framework/src/components/Tab/Tab.vue2.cjs +1 -1
- package/dist/prometheus-framework/src/components/Tab/Tab.vue2.js +44 -2
- package/dist/prometheus-framework/src/modules/auth/components/layouts/Auth.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/layouts/Auth.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/auth/components/pages/EnterCode.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/EnterCode.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/EnterPassword.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/EnterPassword.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/auth/components/pages/Invite.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/Invite.vue.js +44 -32
- package/dist/prometheus-framework/src/modules/auth/components/pages/ResetPassword.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/ResetPassword.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/auth/components/pages/SignIn.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/SignIn.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/auth/components/pages/SignUp.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/components/pages/SignUp.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/auth/store/auth.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/store/auth.js +45 -44
- package/dist/prometheus-framework/src/modules/auth/store/invites.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/store/invites.js +5 -5
- package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Embed.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/constructor/components/elements/Embed.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/gallery/components/sections/GalleryWithCategories.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/gallery/components/sections/GalleryWithCategories.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/globals/components/blocks/CardHeader.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/globals/components/blocks/CardHeader.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/globals/store/globals.cjs +1 -1
- package/dist/prometheus-framework/src/modules/globals/store/globals.js +22 -21
- package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/mobile/components/Menu/Menu.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/mobile/components/Menu/Menu.vue.js +11 -2
- package/dist/prometheus-framework/src/modules/mobile/components/Menu/Menu.vue2.cjs +1 -1
- package/dist/prometheus-framework/src/modules/mobile/components/Menu/Menu.vue2.js +2 -11
- package/dist/prometheus-framework/src/modules/orders/components/pages/EditOrder.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/EditOrder.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/Orders.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/Orders.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormOrderDetails.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormOrderDetails.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardDepartment.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardDepartment.vue.js +17 -17
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/DepartmentMemberModify.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/DepartmentMemberModify.vue.js +49 -42
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/User.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/User.vue.js +48 -15
- package/dist/prometheus-framework/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Department.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Department.vue.js +38 -37
- package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.js +249 -61
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.js +78 -45
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.js +160 -86
- package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.js +52 -54
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.js +20 -26
- package/dist/prometheus-framework/src/modules/organizations/organizations.client.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/organizations.client.js +40 -46
- package/dist/prometheus-framework/src/modules/organizations/store/departments.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/store/departments.js +34 -30
- package/dist/prometheus-framework/src/modules/organizations/store/memberships.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/store/memberships.js +30 -28
- package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.js +18 -18
- package/dist/prometheus-framework/src/modules/products/components/blocks/LeftoverPositions.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/LeftoverPositions.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/ListPositions.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/ListPositions.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/Leftovers.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/Leftovers.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/Product.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/Product.vue.js +33 -28
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.js +123 -113
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductsBackoffice.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductsBackoffice.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/EditModifications.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/EditModifications.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/products/components/sections/FilterProducts.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/FilterProducts.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/store/products.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/store/products.js +1 -1
- package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileBlogposts.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileBlogposts.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEdit.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEvents.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEvents.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/wallet/components/pages/Wallet.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/wallet/components/pages/Wallet.vue.js +1 -1
- package/dist/prometheus-framework.cjs.js +1 -1
- package/dist/prometheus-framework.es.js +1 -1
- package/dist/reports.server.js +1 -1
- package/dist/reports.server.mjs +1 -1
- package/dist/style.css +1 -1
- package/dist/web-7p76PGnO.mjs +55 -0
- package/dist/web-c63f0ecc.js +1 -0
- package/dist/web-d8173758.mjs +55 -0
- package/dist/web-dn8vgptQ.js +1 -0
- package/package.json +1 -1
- package/src/components/SelectMulti/SelectMulti.vue +1 -1
- package/src/modules/auth/components/pages/Invite.vue +17 -6
- package/src/modules/auth/controllers/auth.controller.js +24 -16
- package/src/modules/auth/controllers/invites.controller.js +17 -8
- package/src/modules/auth/store/auth.js +8 -1
- package/src/modules/auth/store/invites.js +1 -0
- package/src/modules/globals/store/globals.js +5 -1
- package/src/modules/landing/components/blocks/MapBlock.vue +37 -0
- package/src/modules/landing/components/pages/404.vue +3 -0
- package/src/modules/landing/components/pages/Governance.vue +155 -0
- package/src/modules/landing/components/pages/Home.vue +52 -0
- package/src/modules/landing/components/pages/Hotel.vue +54 -0
- package/src/modules/landing/components/pages/Page.vue +184 -0
- package/src/modules/landing/components/sections/AboutSection.vue +69 -0
- package/src/modules/landing/components/sections/Examples.vue +90 -0
- package/src/modules/landing/components/sections/FeatureSection.vue +80 -0
- package/src/modules/landing/components/sections/GiftSection.vue +63 -0
- package/src/modules/landing/components/sections/HeroSection.vue +74 -0
- package/src/modules/landing/components/sections/HowItWorksSection.vue +88 -0
- package/src/modules/landing/components/sections/HowToBuyWDR.vue +131 -0
- package/src/modules/landing/components/sections/InstagramSection.vue +181 -0
- package/src/modules/landing/components/sections/MapSection.vue +91 -0
- package/src/modules/landing/components/sections/SectionsSection.vue +69 -0
- package/src/modules/landing/components/sections/SliderFeatures.vue +131 -0
- package/src/modules/landing/components/sections/WhatIsWDRSection.vue +116 -0
- package/src/modules/landing/router/landing.js +34 -0
- package/src/modules/middlewares/server/verifySignUp.js +4 -0
- package/src/modules/mobile/components/BottomNavigation/BottomNavigation.vue +86 -0
- package/src/modules/mobile/components/BottomSheet/BottomSheet.vue +86 -0
- package/src/modules/mobile/components/NavigationBar/NavigationBar.vue +132 -0
- package/src/modules/mobile/components/Walkthrough/Walkthrough.vue +195 -0
- package/src/modules/organizations/components/blocks/CardDepartment.vue +3 -3
- package/src/modules/organizations/components/blocks/DepartmentMemberModify.vue +52 -44
- package/src/modules/organizations/components/blocks/User.vue +42 -10
- package/src/modules/organizations/components/pages/Department.vue +7 -6
- package/src/modules/organizations/components/pages/DepartmentEdit.vue +110 -134
- package/src/modules/organizations/components/pages/Members.vue +85 -26
- package/src/modules/organizations/components/pages/Organization.vue +59 -4
- package/src/modules/organizations/components/sections/MembersAdd.vue +27 -34
- package/src/modules/organizations/components/sections/Organizations.vue +0 -1
- package/src/modules/organizations/controllers/memberships.controller.js +33 -26
- package/src/modules/organizations/controllers/organizations.controller.js +1 -1
- package/src/modules/organizations/models/department.model.js +0 -19
- package/src/modules/organizations/models/membership.model.js +4 -0
- package/src/modules/organizations/organizations.client.js +1 -6
- package/src/modules/organizations/store/departments.js +48 -44
- package/src/modules/organizations/store/memberships.js +11 -3
- package/src/modules/products/components/blocks/CardPosition.vue +2 -2
- package/src/modules/products/components/pages/Product.vue +6 -1
- package/src/modules/products/components/pages/ProductEdit.vue +48 -28
- package/src/modules/products/controllers/products.controller.js +99 -33
- package/src/modules/products/models/product.model.js +16 -1
- package/src/modules/products/store/products.js +1 -1
- package/src/modules/users/components/pages/ProfileOrganizations.vue +41 -7
- package/src/styles/layout.scss +1 -1
- package/src/modules/organizations/components/sections/FeedDepartments.vue +0 -64
- package/src/modules/organizations/components/sections/MembersList.vue +0 -85
- package/src/modules/organizations/store/invites.js +0 -93
@@ -1,184 +1,158 @@
|
|
1
1
|
<template>
|
2
|
-
<div class="for-transition w-100">
|
3
|
-
|
4
|
-
<
|
5
|
-
<
|
6
|
-
|
2
|
+
<div class="for-transition pd-thin w-100">
|
3
|
+
|
4
|
+
<header class="mn-b-thin flex-nowrap flex bg-grey pd-medium radius-big">
|
5
|
+
<h1 v-if="route.params.department" class="mn-r-auto">Edit Department</h1>
|
6
|
+
<h1 v-else class="mn-r-auto">Create Department</h1>
|
7
7
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
<h1 v-else class="mn-r-auto">Create Spot</h1>
|
8
|
+
<section class="flex-nowrap flex pd-thin">
|
9
|
+
<Button :submit="onSubmit" :callback="redirectTo" class="bg-main">Save Department</Button>
|
10
|
+
</section>
|
12
11
|
|
13
|
-
|
14
|
-
<Button :submit="onSubmit" :callback="redirectTo">Save Spot</Button>
|
15
|
-
</section>
|
12
|
+
</header>
|
16
13
|
|
17
|
-
|
14
|
+
<div class="mn-b-thin bg-grey pd-medium o-hidden radius-big">
|
15
|
+
<h3 class="mn-b-semi">Profile</h3>
|
16
|
+
|
17
|
+
<div v-if="departments.state.department.profile" class="radius-small flex-nowrap flex">
|
18
|
+
<UploadImage
|
19
|
+
v-model:photo="departments.state.department.profile.photo"
|
20
|
+
:uploadPath="'organizations/' + departments.state.department.name + '/avatars'"
|
21
|
+
class="w-8r aspect-1x1 o-hidden mn-r-small radius-extra"
|
22
|
+
/>
|
23
|
+
<div class="w-100 flex-child-grow-1 flex-child ">
|
24
|
+
<Field
|
25
|
+
v-model:field="departments.state.department.profile.name"
|
26
|
+
label="Name"
|
27
|
+
placeholder="Department Name"
|
28
|
+
class="mn-b-small bg-white radius-small pd-medium"
|
29
|
+
:validation="organizationName"
|
30
|
+
/>
|
31
|
+
<Field
|
32
|
+
v-model:field="departments.state.department.profile.description"
|
33
|
+
label="Description"
|
34
|
+
placeholder="Department description (max 120 symbols)"
|
35
|
+
class="bg-white radius-small pd-medium"
|
36
|
+
:validation="organizationName"
|
37
|
+
/>
|
38
|
+
</div>
|
39
|
+
</div>
|
18
40
|
</div>
|
19
41
|
|
20
|
-
|
21
|
-
|
22
|
-
|
42
|
+
<Block
|
43
|
+
title="Team"
|
44
|
+
placeholder="No members added yet"
|
45
|
+
:actions="[{
|
46
|
+
label: '+',
|
47
|
+
function: () => openMemberPopup()
|
48
|
+
}]"
|
49
|
+
class="cols-1 gap-thin mn-b-thin"
|
50
|
+
>
|
51
|
+
<User
|
52
|
+
class="bg-grey o-hidden radius-small mn-b-thin"
|
53
|
+
v-for="(member, index) in departments.state.department.members"
|
54
|
+
:key="index"
|
55
|
+
:user="member.user"
|
56
|
+
:position="member.position"
|
57
|
+
@click="openMemberPopup(index)"
|
58
|
+
/>
|
59
|
+
</Block>
|
60
|
+
|
61
|
+
<Popup
|
62
|
+
title="Добавить участника"
|
63
|
+
@close-popup="closeMemberPopup"
|
64
|
+
:isPopupOpen="isOpenAddMemberPopup"
|
65
|
+
>
|
66
|
+
<DepartmentMemberModify
|
67
|
+
:members="departments.state.department.members"
|
68
|
+
:member="selectedMember"
|
69
|
+
:users="memberships.state.memberships"
|
70
|
+
@callback="closeMemberPopup"
|
71
|
+
/>
|
72
|
+
</Popup>
|
73
|
+
|
23
74
|
|
24
|
-
|
25
|
-
|
75
|
+
<div class="cols-2 gap-thin">
|
76
|
+
|
77
|
+
<div class="bg-grey pd-medium o-hidden radius-big">
|
78
|
+
<h3 class="mn-b-semi">Department Settings</h3>
|
26
79
|
|
27
|
-
<
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
80
|
+
<p class="p-medium mn-b-small">Please settings for your department:</p>
|
81
|
+
<div class="cols-1 gap-thin">
|
82
|
+
<h4>Products</h4>
|
83
|
+
<Checkbox
|
84
|
+
label="Hidden department"
|
85
|
+
name="Delivery"
|
86
|
+
value="pickup"
|
87
|
+
class="w-100 mn-r-small bg-white radius-small pd-small"
|
88
|
+
:radio="departments.state.department.delivery"
|
32
89
|
/>
|
33
|
-
<div class="w-100 flex-child-grow-1 flex-child ">
|
34
|
-
<Field
|
35
|
-
v-model:field="departments.state.department.profile.name"
|
36
|
-
label="Name"
|
37
|
-
placeholder="Spot Name"
|
38
|
-
class="mn-b-small bg-white radius-small pd-medium"
|
39
|
-
:validation="organizationName"
|
40
|
-
/>
|
41
|
-
<Field
|
42
|
-
v-model:field="departments.state.department.profile.description"
|
43
|
-
label="Description"
|
44
|
-
placeholder="Spot description (max 120 symbols)"
|
45
|
-
class="bg-white radius-small pd-medium"
|
46
|
-
:validation="organizationName"
|
47
|
-
/>
|
48
|
-
</div>
|
49
90
|
</div>
|
50
91
|
</div>
|
51
92
|
|
52
93
|
<div class="bg-grey pd-medium o-hidden radius-big">
|
53
|
-
<h3 class="mn-b-semi">
|
94
|
+
<h3 class="mn-b-semi">Acessess</h3>
|
95
|
+
|
96
|
+
<p class="p-medium mn-b-small">Please select organization accesses for user in department:</p>
|
54
97
|
|
55
|
-
<
|
56
|
-
|
98
|
+
<div class="cols-1 gap-thin">
|
99
|
+
<h4>Products</h4>
|
57
100
|
<Checkbox
|
58
|
-
label="
|
101
|
+
label="See products"
|
59
102
|
name="Delivery"
|
60
103
|
value="pickup"
|
61
104
|
class="w-100 mn-r-small bg-white radius-small pd-small"
|
62
105
|
:radio="departments.state.department.delivery"
|
63
106
|
/>
|
64
107
|
<Checkbox
|
65
|
-
label="
|
108
|
+
label="Edit products"
|
66
109
|
name="Delivery"
|
67
110
|
value="courier"
|
68
111
|
class="w-100 mn-r-small bg-white radius-small pd-small"
|
69
112
|
:radio="departments.state.department.delivery"
|
70
113
|
/>
|
71
114
|
<Checkbox
|
72
|
-
label="
|
115
|
+
label="Delete orders"
|
73
116
|
name="Delivery"
|
74
117
|
value="post"
|
75
118
|
class="w-100 bg-white radius-small pd-small"
|
76
119
|
:radio="departments.state.department.delivery"
|
77
120
|
/>
|
78
|
-
|
79
|
-
|
80
|
-
<p class="p-medium mn-b-small">Please select the available payment methods:</p>
|
81
|
-
<div class="flex-nowrap flex">
|
121
|
+
<h4>Orders</h4>
|
82
122
|
<Checkbox
|
83
|
-
label="
|
84
|
-
name="
|
85
|
-
value="
|
123
|
+
label="See orders"
|
124
|
+
name="Delivery"
|
125
|
+
value="pickup"
|
86
126
|
class="w-100 mn-r-small bg-white radius-small pd-small"
|
87
|
-
:radio="departments.state.department.
|
127
|
+
:radio="departments.state.department.delivery"
|
88
128
|
/>
|
89
129
|
<Checkbox
|
90
|
-
label="
|
91
|
-
name="
|
92
|
-
value="
|
130
|
+
label="Confirm orders"
|
131
|
+
name="Delivery"
|
132
|
+
value="courier"
|
93
133
|
class="w-100 mn-r-small bg-white radius-small pd-small"
|
94
|
-
:radio="departments.state.department.
|
134
|
+
:radio="departments.state.department.delivery"
|
95
135
|
/>
|
96
136
|
<Checkbox
|
97
|
-
label="
|
98
|
-
name="
|
99
|
-
value="
|
137
|
+
label="Delete orders"
|
138
|
+
name="Delivery"
|
139
|
+
value="post"
|
100
140
|
class="w-100 bg-white radius-small pd-small"
|
101
|
-
:radio="departments.state.department.
|
141
|
+
:radio="departments.state.department.delivery"
|
102
142
|
/>
|
103
143
|
</div>
|
104
144
|
</div>
|
105
|
-
</div>
|
106
145
|
|
107
|
-
<div class="bg-grey pd-medium o-hidden radius-big">
|
108
|
-
<h3 class="mn-b-semi">Location</h3>
|
109
|
-
<Address
|
110
|
-
:apiKey="GOOGLE_MAPS_API_KEY"
|
111
|
-
:address="departments.state.department.address"
|
112
|
-
:location="departments.state.department.location"
|
113
|
-
label="Address"
|
114
|
-
placeholder="Enter delivery address"
|
115
|
-
class="
|
116
|
-
bg-white radius-small pd-small mn-b-small
|
117
|
-
"
|
118
|
-
@update:location="newLocation => {
|
119
|
-
departments.state.department.location = newLocation;
|
120
|
-
}"
|
121
|
-
@update:address="newAddress => {
|
122
|
-
departments.state.department.address = newAddress;
|
123
|
-
}"
|
124
|
-
/>
|
125
|
-
|
126
|
-
<p class="mn-b-small p-medium">Or choose on map:</p>
|
127
|
-
|
128
|
-
<LocationMarker
|
129
|
-
:address="departments.state.department.address"
|
130
|
-
:location="departments.state.department.location"
|
131
|
-
:apiKey="GOOGLE_MAPS_API_KEY"
|
132
|
-
class="radius-big o-hidden"
|
133
|
-
@update:location="newLocation => {
|
134
|
-
departments.state.department.location = newLocation;
|
135
|
-
}"
|
136
|
-
@update:address="newAddress => {
|
137
|
-
departments.state.department.address = newAddress;
|
138
|
-
}"
|
139
|
-
/>
|
140
146
|
|
141
147
|
</div>
|
142
|
-
</div> -->
|
143
148
|
|
144
|
-
<section
|
145
|
-
<Button :submit="onDelete" :callback="redirectToDash" class="bg-grey">Delete
|
149
|
+
<section v-if="route.params.department" class="flex-nowrap flex pd-thin">
|
150
|
+
<Button :submit="onDelete" :callback="redirectToDash" class="bg-grey">Delete Department</Button>
|
146
151
|
</section>
|
147
152
|
|
148
153
|
|
149
154
|
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
<div class="mn-b-regular flex-v-center flex-nowrap flex">
|
154
|
-
<h3 class="mn-r-small">Команда</h3>
|
155
|
-
<div>
|
156
|
-
<a class="t-main h5" @click="openMemberPopup()">+</a>
|
157
|
-
</div>
|
158
|
-
</div>
|
159
|
-
|
160
|
-
<Popup title="Добавить участника" @close-popup="closeMemberPopup" :isPopupOpen="isOpenAddMemberPopup">
|
161
|
-
<DepartmentMemberModify
|
162
|
-
:members="departments.state.department.members"
|
163
|
-
:member="selectedMember"
|
164
|
-
:users="users"
|
165
|
-
@callback="closeMemberPopup"
|
166
|
-
/>
|
167
|
-
</Popup>
|
168
|
-
|
169
|
-
|
170
|
-
<ul class=mn-b-small>
|
171
|
-
<li v-if="departments.state.department.members.length < 1">В отделе еще нет участников</li>
|
172
|
-
<User
|
173
|
-
class="bg-grey o-hidden radius-small mn-b-thin"
|
174
|
-
v-for="(member, index) in departments.state.department.members"
|
175
|
-
:key="index"
|
176
|
-
:user="member.user"
|
177
|
-
:position="member.position"
|
178
|
-
@click="openMemberPopup(index)"
|
179
|
-
/>
|
180
|
-
</ul>
|
181
|
-
|
155
|
+
<div id="dash" class="pd-medium bg-white">
|
182
156
|
|
183
157
|
<Popup title="Добавить подотдел" @close-popup="closeDepartmentPopup" :isPopupOpen="isOpenDepartmentPopup">
|
184
158
|
<DepartmentSubDepartmentModify
|
@@ -208,7 +182,7 @@
|
|
208
182
|
</ul>
|
209
183
|
|
210
184
|
|
211
|
-
</div>
|
185
|
+
</div>
|
212
186
|
</div>
|
213
187
|
</template>
|
214
188
|
|
@@ -219,7 +193,6 @@ import Cookies from "js-cookie";
|
|
219
193
|
import Breadcrumbs from '@pf/src/components/Breadcrumbs/Breadcrumbs.vue'
|
220
194
|
import UploadImage from '@pf/src/components/UploadImage/UploadImage.vue';
|
221
195
|
|
222
|
-
|
223
196
|
import Tab from "@pf/src/components/Tab/Tab.vue";
|
224
197
|
import Field from "@pf/src/components/Field/Field.vue";
|
225
198
|
import Select from "@pf/src/components/Select/Select.vue";
|
@@ -228,6 +201,7 @@ import Address from "@pf/src/components/Address/Address.vue";
|
|
228
201
|
import LocationMarker from "@pf/src/components/LocationMarker/LocationMarker.vue";
|
229
202
|
import Button from "@pf/src/components/Button/Button.vue";
|
230
203
|
import Popup from "@pf/src/components/Popup/Popup.vue";
|
204
|
+
import Block from '@pf/src/components/Block/Block.vue';
|
231
205
|
|
232
206
|
import EditArray from "@pf/src/modules/organizations/components/blocks/EditArray.vue";
|
233
207
|
import DepartmentSub from "@pf/src/modules/organizations/components/blocks/DepartmentSub.vue";
|
@@ -235,9 +209,11 @@ import DepartmentMemberModify from "@pf/src/modules/organizations/components/blo
|
|
235
209
|
import DepartmentSubDepartmentModify from "@pf/src/modules/organizations/components/blocks/DepartmentMemberModify.vue";
|
236
210
|
import User from '@pf/src/modules/organizations/components/blocks/User.vue';
|
237
211
|
|
238
|
-
import * as departments from "@pf/src/modules/
|
212
|
+
import * as departments from "@pf/src/modules/organizations/store/departments";
|
239
213
|
import * as memberships from "@pf/src/modules/organizations/store/memberships";
|
240
214
|
|
215
|
+
|
216
|
+
|
241
217
|
const router = useRouter();
|
242
218
|
const route = useRoute();
|
243
219
|
const tabOrganization = ref("details");
|
@@ -245,7 +221,7 @@ const showAddNew = ref(false);
|
|
245
221
|
|
246
222
|
async function fetchData() {
|
247
223
|
if (route.params.department) {
|
248
|
-
await memberships.actions.read(route.params.
|
224
|
+
await memberships.actions.read({target: route.params._id});
|
249
225
|
}
|
250
226
|
const users = ref(memberships.state.memberships);
|
251
227
|
|
@@ -1,67 +1,126 @@
|
|
1
1
|
<template>
|
2
2
|
<transition name="slide-fade">
|
3
|
-
<div>
|
4
|
-
<section class="mn-b-medium radius-medium pd-semi bg-
|
5
|
-
<h2 class="mn-b-regular"
|
6
|
-
<p class="t-transp p-big"
|
3
|
+
<div class="pd-thin">
|
4
|
+
<section class="mn-b-medium radius-medium pd-semi bg-grey">
|
5
|
+
<h2 class="mn-b-regular">Members</h2>
|
6
|
+
<p class="t-transp p-big">Add new memberships to the group and configure access rights.</p>
|
7
7
|
</section>
|
8
|
-
|
9
|
-
<FeedDepartments
|
10
|
-
:organization="organization.state.current"
|
11
|
-
:memberships="members.state.memberships"
|
12
|
-
/>
|
13
|
-
|
8
|
+
|
14
9
|
<MembersAdd
|
15
10
|
:organization="organizationData"
|
16
11
|
@send-invite="handleSendInvite"
|
17
12
|
/>
|
18
13
|
|
19
|
-
<
|
20
|
-
:
|
21
|
-
|
22
|
-
:
|
23
|
-
|
24
|
-
|
14
|
+
<Tab
|
15
|
+
v-model:selected="tabMemberships"
|
16
|
+
class="mn-b-medium bg-grey radius-small"
|
17
|
+
:tabs="[
|
18
|
+
{ name: 'Members', value: 'members' },
|
19
|
+
{ name: 'Invites', value: 'invites' },
|
20
|
+
]"
|
25
21
|
/>
|
22
|
+
|
23
|
+
<section class="mn-b-big radius-medium bg-white">
|
24
|
+
<!-- Members -->
|
25
|
+
<div
|
26
|
+
v-if="tabMemberships === 'members'"
|
27
|
+
class="cols-1 gap-thin"
|
28
|
+
>
|
29
|
+
<User
|
30
|
+
v-for="(member, index) in memberships.state.memberships"
|
31
|
+
:key="index"
|
32
|
+
:user="member"
|
33
|
+
@click="$router.push(`/app/profile/${member._id}`)"
|
34
|
+
class="bg-grey radius-small flex-nowrap flex pd-medium"
|
35
|
+
|
36
|
+
/>
|
37
|
+
</div>
|
38
|
+
<!-- Invites -->
|
39
|
+
<div
|
40
|
+
v-if="tabMemberships === 'invites'"
|
41
|
+
>
|
42
|
+
<span v-if="invites.length < 1">В организации нет приглашений</span>
|
43
|
+
<div
|
44
|
+
v-for="(invite, index) in invites.state.invites"
|
45
|
+
class="br-grey br-1px br-solid radius-small mn-b-thin flex-nowrap flex-v-center flex pd-medium"
|
46
|
+
>
|
47
|
+
|
48
|
+
<span class="w-100 mn-r-small">{{invite.invitedEmail}} {{invite.invitedPhone}}</span>
|
49
|
+
<span class="t-transp">{{invite.status}}</span>
|
50
|
+
|
51
|
+
<div class="mn-l-medium flex-v-center flex">
|
52
|
+
<button @click="removeInvite(index,invite)" class="button-small button">×</button>
|
53
|
+
</div>
|
54
|
+
|
55
|
+
</div>
|
56
|
+
</div>
|
57
|
+
|
58
|
+
|
59
|
+
</section>
|
26
60
|
</div>
|
27
61
|
</transition>
|
28
62
|
</template>
|
29
63
|
|
30
64
|
<script setup>
|
31
|
-
import { ref,onMounted } from 'vue';
|
65
|
+
import { ref, computed, onMounted } from 'vue';
|
32
66
|
import { useRoute, useRouter } from 'vue-router'
|
33
67
|
|
34
|
-
import
|
68
|
+
import Feed from '@pf/src/components/Feed/Feed.vue'
|
69
|
+
import Tab from '@pf/src/components/Tab/Tab.vue'
|
70
|
+
import Block from '@pf/src/components/Block/Block.vue'
|
71
|
+
|
72
|
+
import PlaceholderUserpic from '@pf/src/modules/icons/placeholders/PlaceholderUserpic.vue'
|
73
|
+
|
35
74
|
import MembersAdd from '@pf/src/modules/organizations/components/sections/MembersAdd.vue';
|
36
|
-
|
75
|
+
|
37
76
|
// Mobile Module
|
38
77
|
import Menu from '@pf/src/modules/mobile/components/Menu/Menu.vue'
|
39
78
|
import MenuItem from '@pf/src/modules/mobile/components/Menu/MenuItem.vue'
|
40
79
|
|
80
|
+
import User from '@pf/src/modules/organizations/components/blocks/User.vue';
|
81
|
+
|
82
|
+
|
41
83
|
import * as auth from '@pf/src/modules/auth/store/auth'
|
42
|
-
import * as invites from '@pf/src/modules/
|
43
|
-
import * as
|
84
|
+
import * as invites from '@pf/src/modules/auth/store/invites';
|
85
|
+
import * as memberships from '@pf/src/modules/organizations/store/memberships';
|
44
86
|
import * as organization from '@pf/src/modules/organizations/store/organizations'
|
87
|
+
import * as departments from '@pf/src/modules/organizations/store/departments';
|
45
88
|
|
46
89
|
const route = useRoute()
|
47
|
-
|
90
|
+
const router = useRouter()
|
48
91
|
const organizationData = ref(null)
|
49
92
|
|
93
|
+
const tabMemberships = ref('members')
|
94
|
+
|
50
95
|
onMounted(async () => {
|
51
96
|
organizationData.value = (await organization.actions.read({_id: route.params._id, user: auth.state.user._id}))[0]
|
52
|
-
await
|
97
|
+
await memberships.actions.read({target: route.params._id});
|
53
98
|
await invites.actions.read(organizationData.value._id);
|
54
99
|
})
|
55
100
|
|
101
|
+
const FirstLevelDepartments = computed(() => {
|
102
|
+
const departmentsState = departments.state.departments;
|
103
|
+
|
104
|
+
const subdepartmentIds = departmentsState.flatMap(department =>
|
105
|
+
department.subdepartments.map(subdepartment => subdepartment._id)
|
106
|
+
);
|
107
|
+
|
108
|
+
return departmentsState.filter(department =>
|
109
|
+
!subdepartmentIds.includes(department._id)
|
110
|
+
);
|
111
|
+
});
|
112
|
+
|
56
113
|
async function handleSendInvite(invite) {
|
57
114
|
await invites.actions.create(organizationData.value._id, invite);
|
58
115
|
}
|
59
116
|
|
60
|
-
async function removeMember(member) {
|
61
|
-
|
117
|
+
async function removeMember(index,member) {
|
118
|
+
memberships.state.memberships.splice(index, 1);
|
119
|
+
await memberships.actions.delete(member._id);
|
62
120
|
}
|
63
121
|
|
64
|
-
async function removeInvite(invite) {
|
122
|
+
async function removeInvite(index,invite) {
|
123
|
+
invites.state.invites.splice(index, 1);
|
65
124
|
await invites.actions.delete(invite._id);
|
66
125
|
}
|
67
126
|
</script>
|
@@ -11,8 +11,7 @@
|
|
11
11
|
/>
|
12
12
|
|
13
13
|
<!-- MEMBERS TAB -->
|
14
|
-
|
15
|
-
<!-- <Menu
|
14
|
+
<Menu
|
16
15
|
class="mn-b-regular bg-grey"
|
17
16
|
>
|
18
17
|
<MenuItem
|
@@ -29,7 +28,58 @@
|
|
29
28
|
{{organization.state.current.numberOfMembers}} members
|
30
29
|
</span>
|
31
30
|
</MenuItem>
|
32
|
-
</Menu>
|
31
|
+
</Menu>
|
32
|
+
|
33
|
+
<div class="cols-2 pd-medium bg-grey radius-bg">
|
34
|
+
|
35
|
+
<Block
|
36
|
+
title="Departments"
|
37
|
+
:actions="[{
|
38
|
+
label: '+',
|
39
|
+
function: () => $router.push(`/organizations/${route.params._id}/departments/create`)
|
40
|
+
}]"
|
41
|
+
>
|
42
|
+
<Feed
|
43
|
+
:states="{
|
44
|
+
empty: {
|
45
|
+
title: 'No Departments Found',
|
46
|
+
description: 'Currently, there are no departments available.'
|
47
|
+
}
|
48
|
+
}"
|
49
|
+
:store="{
|
50
|
+
read: (options) => departments.actions.read(route.params._id),
|
51
|
+
state: null
|
52
|
+
}"
|
53
|
+
:options="{
|
54
|
+
user: auth.state.user._id,
|
55
|
+
sort: 'numberOfMemberships',
|
56
|
+
limit: 10
|
57
|
+
}"
|
58
|
+
v-slot="{
|
59
|
+
items
|
60
|
+
}"
|
61
|
+
>
|
62
|
+
<CardDepartment
|
63
|
+
v-for="(department, index) in items"
|
64
|
+
:key="index"
|
65
|
+
:department="department"
|
66
|
+
:organization="route.params._id"
|
67
|
+
class="radius-big bg-white pos-relative mn-b-thin"
|
68
|
+
/>
|
69
|
+
</Feed>
|
70
|
+
</Block>
|
71
|
+
<div>
|
72
|
+
<User
|
73
|
+
v-for="(member, index) in organization.state.current.memberships"
|
74
|
+
:key="index"
|
75
|
+
:user="member"
|
76
|
+
:position="member.position"
|
77
|
+
class="bg-grey radius-small flex-nowrap flex pd-medium"
|
78
|
+
/>
|
79
|
+
|
80
|
+
</div>
|
81
|
+
</div>
|
82
|
+
|
33
83
|
|
34
84
|
<Tab
|
35
85
|
v-model:selected="tabOrganization"
|
@@ -114,7 +164,6 @@
|
|
114
164
|
|
115
165
|
</transition>
|
116
166
|
|
117
|
-
|
118
167
|
<transition name="slide-fade">
|
119
168
|
<div v-if="tabOrganization === 'spots'">
|
120
169
|
<Feed
|
@@ -173,6 +222,11 @@
|
|
173
222
|
// Mobile Module
|
174
223
|
import Menu from '@pf/src/modules/mobile/components/Menu/Menu.vue'
|
175
224
|
import MenuItem from '@pf/src/modules/mobile/components/Menu/MenuItem.vue'
|
225
|
+
// Organizations
|
226
|
+
import DepartmentSub from '@pf/src/modules/organizations/components/blocks/DepartmentSub.vue';
|
227
|
+
import User from '@pf/src/modules/organizations/components/blocks/User.vue';
|
228
|
+
// Ssds
|
229
|
+
import CardDepartment from '@pf/src/modules/organizations/components/blocks/CardDepartment.vue';
|
176
230
|
// Feeds
|
177
231
|
import FeedEvents from '@pf/src/modules/events/components/sections/Feed.vue';
|
178
232
|
import FeedCommunity from '@pf/src/modules/community/components/sections/Feed.vue';
|
@@ -185,6 +239,7 @@
|
|
185
239
|
import * as auth from '@pf/src/modules/auth/store/auth'
|
186
240
|
import * as organization from '@pf/src/modules/organizations/store/organizations'
|
187
241
|
import * as memberships from '@pf/src/modules/organizations/store/memberships'
|
242
|
+
import * as departments from '@pf/src/modules/organizations/store/departments';
|
188
243
|
// Spots
|
189
244
|
import * as spots from '@pf/src/modules/spots/store/spots';
|
190
245
|
// Init router
|