@eeplatform/nuxt-layer-common 1.4.3 → 1.4.6

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # @eeplatform/nuxt-layer-common
2
2
 
3
+ ## 1.4.6
4
+
5
+ ### Patch Changes
6
+
7
+ - fe4bc02: Add get all function to enrollment composable
8
+
9
+ ## 1.4.5
10
+
11
+ ### Patch Changes
12
+
13
+ - f413853: Removed enrollment composable present data
14
+
15
+ ## 1.4.4
16
+
17
+ ### Patch Changes
18
+
19
+ - c358eb1: Update dependencies
20
+
3
21
  ## 1.4.3
4
22
 
5
23
  ### Patch Changes
@@ -305,7 +305,7 @@
305
305
  required
306
306
  />
307
307
  <v-col cols="12">
308
- <v-combobox
308
+ <v-autocomplete
309
309
  v-model="enrollment.learnerInfo.placeOfBirth"
310
310
  :rules="[requiredRule]"
311
311
  :items="citiesMunicipalities"
@@ -321,7 +321,7 @@
321
321
  </v-list-item-title>
322
322
  </v-list-item>
323
323
  </template>
324
- </v-combobox>
324
+ </v-autocomplete>
325
325
  </v-col>
326
326
  </v-row>
327
327
  </v-col>
@@ -21,7 +21,7 @@
21
21
  </v-row>
22
22
  </v-col>
23
23
 
24
- <v-col cols="12" class="my-2">
24
+ <v-col cols="12" class="mt-2 mb-4">
25
25
  <v-row no-gutters>
26
26
  <v-col cols="12">
27
27
  <v-input
@@ -9,7 +9,7 @@ export default function useEnrollment() {
9
9
  province: "",
10
10
  cityMunicipality: "",
11
11
  schoolYear: "",
12
- gradeLevel: "K1",
12
+ gradeLevel: "",
13
13
  returningLearner: false,
14
14
  learnerInfo: {
15
15
  psaBirthCertificateNo: "",
@@ -89,8 +89,21 @@ export default function useEnrollment() {
89
89
  });
90
90
  }
91
91
 
92
+ function getAll({
93
+ school = "",
94
+ status = "pending",
95
+ page = 1,
96
+ limit = 10,
97
+ search = "",
98
+ } = {}) {
99
+ return $fetch<Record<string, any>>("/api/basic-education/enrollments", {
100
+ query: { school, status, page, limit, search },
101
+ });
102
+ }
103
+
92
104
  return {
93
105
  enrollment,
94
106
  add,
107
+ getAll,
95
108
  };
96
109
  }
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@eeplatform/nuxt-layer-common",
3
3
  "license": "MIT",
4
4
  "type": "module",
5
- "version": "1.4.3",
5
+ "version": "1.4.6",
6
6
  "main": "./nuxt.config.ts",
7
7
  "publishConfig": {
8
8
  "access": "public"
@@ -23,7 +23,7 @@
23
23
  "typescript": "^5.6.3",
24
24
  "vite-plugin-vuetify": "^2.0.4",
25
25
  "vue": "latest",
26
- "vuetify": "^3.10.8"
26
+ "vuetify": "^3.10.11"
27
27
  },
28
28
  "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e",
29
29
  "dependencies": {
@@ -0,0 +1,29 @@
1
+ <template>
2
+ <v-row no-gutters class="fill-height" align="center" justify="center">
3
+ <v-col cols="12" lg="6" md="6" sm="6" class="text-center text-subtitle-1">
4
+ Membership is required to access this app. Please contact administrator.
5
+ <v-row no-gutters justify="center" align="center" class="mt-2">
6
+ <v-btn
7
+ @click="goToAccount"
8
+ rounded="xl"
9
+ variant="tonal"
10
+ class="text-none text-subtitle-2"
11
+ >
12
+ Go to Account Page
13
+ </v-btn>
14
+ </v-row>
15
+ </v-col>
16
+ </v-row>
17
+ </template>
18
+
19
+ <script setup lang="ts">
20
+ definePageMeta({
21
+ layout: "plain",
22
+ });
23
+
24
+ const { APP_ACCOUNT } = useRuntimeConfig().public;
25
+
26
+ function goToAccount() {
27
+ window.location.href = `${APP_ACCOUNT}/home`;
28
+ }
29
+ </script>
@@ -0,0 +1,45 @@
1
+ export default defineNuxtPlugin(() => {
2
+ const router = useRouter();
3
+ const { getByUserType } = useMember();
4
+ const { getRoleById } = useRole();
5
+
6
+ const { userAppRole, id } = useLocalSetup();
7
+
8
+ router.afterEach((to) => {
9
+ const isMember = to.meta?.member;
10
+ if (!isMember) return;
11
+
12
+ const APP = useRuntimeConfig().public.APP;
13
+ const org = (to.params.org as string) ?? "";
14
+
15
+ const userId = computed(() => useCookie("user").value ?? "");
16
+
17
+ const { data: userMemberData, error: userMemberError } = useLazyAsyncData(
18
+ "get-member-by-id",
19
+ () => getByUserType(userId.value, APP, org),
20
+ { watch: [userId] }
21
+ );
22
+
23
+ watchEffect(() => {
24
+ if (userMemberError.value) {
25
+ navigateTo({
26
+ name: "require-membership",
27
+ });
28
+ }
29
+ });
30
+
31
+ const roleId = computed(() => userMemberData.value?.role ?? "");
32
+
33
+ const { data: getRoleByIdReq } = useLazyAsyncData(
34
+ "get-role-by-id",
35
+ () => getRoleById(roleId.value),
36
+ { watch: [roleId], immediate: false }
37
+ );
38
+
39
+ watchEffect(() => {
40
+ if (getRoleByIdReq.value) {
41
+ userAppRole.value = getRoleByIdReq.value;
42
+ }
43
+ });
44
+ });
45
+ });