@eeplatform/nuxt-layer-common 1.7.31 → 1.7.33

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,17 @@
1
1
  # @eeplatform/nuxt-layer-common
2
2
 
3
+ ## 1.7.33
4
+
5
+ ### Patch Changes
6
+
7
+ - a893a78: Fix birthdate format
8
+
9
+ ## 1.7.32
10
+
11
+ ### Patch Changes
12
+
13
+ - 9403626: Set track/strand names and update autocompletes
14
+
3
15
  ## 1.7.31
4
16
 
5
17
  ### Patch Changes
@@ -378,13 +378,9 @@
378
378
  />
379
379
  </v-col>
380
380
  <v-col cols="12">
381
- <v-mask-input
381
+ <InputMaskDate
382
382
  v-model="enrollment.learnerInfo.birthDate"
383
- mask="##/##/####"
384
- placeholder="MM/DD/YYYY"
385
- density="comfortable"
386
- variant="outlined"
387
- ></v-mask-input>
383
+ ></InputMaskDate>
388
384
  </v-col>
389
385
  </v-row>
390
386
  </v-col>
@@ -1302,6 +1298,9 @@
1302
1298
  <v-col cols="12">
1303
1299
  <v-autocomplete
1304
1300
  v-model="enrollment.seniorHighInfo.track"
1301
+ item-title="title"
1302
+ item-value="value"
1303
+ :return-object="false"
1305
1304
  :items="tracks"
1306
1305
  ></v-autocomplete>
1307
1306
  </v-col>
@@ -1318,6 +1317,9 @@
1318
1317
  <v-col cols="12">
1319
1318
  <v-autocomplete
1320
1319
  v-model="enrollment.seniorHighInfo.strand"
1320
+ item-title="title"
1321
+ item-value="value"
1322
+ :return-object="false"
1321
1323
  :items="selectedTrackStrands"
1322
1324
  ></v-autocomplete>
1323
1325
  </v-col>
@@ -1463,8 +1465,6 @@ const prop = defineProps({
1463
1465
  default: "",
1464
1466
  },
1465
1467
  });
1466
-
1467
- import { VMaskInput } from "vuetify/labs/VMaskInput";
1468
1468
  const { requiredRule, debounce } = useUtils();
1469
1469
 
1470
1470
  const enrollment = defineModel<TTLearner>({
@@ -2252,6 +2252,34 @@ const isSeniorHighSchool = computed(() => {
2252
2252
  return ["grade-11", "grade-12"].includes(gradeLevel);
2253
2253
  });
2254
2254
 
2255
+ // Watch for track selection and set trackName
2256
+ watch(
2257
+ () => enrollment.value.seniorHighInfo?.track,
2258
+ (trackValue) => {
2259
+ if (!trackValue || !enrollment.value.seniorHighInfo) return;
2260
+
2261
+ const selectedTrack = tracks.find((track) => track.value === trackValue);
2262
+ if (selectedTrack && enrollment.value.seniorHighInfo) {
2263
+ enrollment.value.seniorHighInfo.trackName = selectedTrack.title ?? "";
2264
+ }
2265
+ }
2266
+ );
2267
+
2268
+ // Watch for strand selection and set strandName
2269
+ watch(
2270
+ () => enrollment.value.seniorHighInfo?.strand,
2271
+ (strandValue) => {
2272
+ if (!strandValue || !enrollment.value.seniorHighInfo) return;
2273
+
2274
+ const selectedStrand = selectedTrackStrands.value.find(
2275
+ (strand) => strand.value === strandValue
2276
+ );
2277
+ if (selectedStrand && enrollment.value.seniorHighInfo) {
2278
+ enrollment.value.seniorHighInfo.strandName = selectedStrand.title ?? "";
2279
+ }
2280
+ }
2281
+ );
2282
+
2255
2283
  const isKindergarten = computed(() => {
2256
2284
  const gradeLevel = enrollment.value.gradeLevel;
2257
2285
  return gradeLevel === "kindergarten" || gradeLevel === "kinder";
@@ -2500,7 +2528,7 @@ watchEffect(() => {
2500
2528
  import { useMask } from "vuetify";
2501
2529
 
2502
2530
  watchEffect(() => {
2503
- const mask = useMask({ mask: "##/##/####" });
2531
+ const mask = useMask({ mask: "##-##-####" });
2504
2532
  const date = mask.mask(enrollment.value.learnerInfo.birthDate);
2505
2533
  if (
2506
2534
  enrollment.value.learnerInfo.birthDate &&
@@ -0,0 +1,30 @@
1
+ <template>
2
+ <v-mask-input
3
+ v-bind="attrs"
4
+ v-model="formattedValue"
5
+ mask="##-##-####"
6
+ placeholder="MM-DD-YYYY"
7
+ density="comfortable"
8
+ variant="outlined"
9
+ >
10
+ <template v-for="(_, name) in $slots" #[name]="slotProps">
11
+ <slot :name="name" v-bind="slotProps || {}" />
12
+ </template>
13
+ </v-mask-input>
14
+ </template>
15
+
16
+ <script setup lang="ts">
17
+ import { VMaskInput } from "vuetify/labs/VMaskInput";
18
+
19
+ const attrs = useAttrs();
20
+ const formattedValue = ref("");
21
+
22
+ const modelData = defineModel({ type: String });
23
+
24
+ import { useMask } from "vuetify";
25
+
26
+ watch(formattedValue, () => {
27
+ const mask = useMask({ mask: "##-##-####" });
28
+ modelData.value = mask.mask(formattedValue.value);
29
+ });
30
+ </script>
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.7.31",
5
+ "version": "1.7.33",
6
6
  "main": "./nuxt.config.ts",
7
7
  "publishConfig": {
8
8
  "access": "public"