hl-core 0.0.8-beta.34 → 0.0.8-beta.36

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 (38) hide show
  1. package/api/index.ts +11 -1
  2. package/components/Button/Btn.vue +1 -1
  3. package/components/Button/ScrollButtons.vue +2 -2
  4. package/components/Complex/Page.vue +1 -1
  5. package/components/Dialog/Dialog.vue +3 -3
  6. package/components/Dialog/FamilyDialog.vue +7 -4
  7. package/components/Form/FormBlock.vue +10 -10
  8. package/components/Form/FormToggle.vue +2 -3
  9. package/components/Form/ManagerAttachment.vue +17 -17
  10. package/components/Form/ProductConditionsBlock.vue +8 -8
  11. package/components/Input/Datepicker.vue +1 -1
  12. package/components/Input/FileInput.vue +2 -2
  13. package/components/Input/FormInput.vue +3 -3
  14. package/components/Input/PanelInput.vue +1 -1
  15. package/components/Input/RoundedInput.vue +2 -2
  16. package/components/Input/RoundedSelect.vue +1 -1
  17. package/components/Layout/Drawer.vue +2 -2
  18. package/components/Layout/Loader.vue +1 -1
  19. package/components/Layout/SettingsPanel.vue +16 -10
  20. package/components/Menu/MenuHover.vue +1 -1
  21. package/components/Menu/MenuNav.vue +2 -3
  22. package/components/Menu/MenuNavItem.vue +1 -1
  23. package/components/Pages/Anketa.vue +13 -18
  24. package/components/Pages/Auth.vue +18 -25
  25. package/components/Pages/Documents.vue +3 -3
  26. package/components/Pages/InvoiceInfo.vue +4 -4
  27. package/components/Pages/MemberForm.vue +154 -151
  28. package/components/Pages/ProductAgreement.vue +4 -2
  29. package/components/Pages/ProductConditions.vue +117 -94
  30. package/components/Panel/PanelHandler.vue +22 -23
  31. package/components/Utilities/JsonViewer.vue +1 -1
  32. package/layouts/default.vue +3 -3
  33. package/locales/en.json +2 -1
  34. package/locales/kz.json +2 -1
  35. package/locales/ru.json +2 -1
  36. package/package.json +14 -1
  37. package/pages/500.vue +1 -1
  38. package/store/data.store.js +11 -1
package/api/index.ts CHANGED
@@ -155,7 +155,10 @@ export class ApiClass {
155
155
  }
156
156
 
157
157
  async getInsurancePay(): Promise<Value[]> {
158
- return this.axiosCall({ method: Methods.GET, url: '/Arm/api/Dictionary/GetDictionaryItems/DicBeneficiaryInsurancePay' });
158
+ return this.axiosCall({
159
+ method: Methods.GET,
160
+ url: '/Arm/api/Dictionary/GetDictionaryItems/DicBeneficiaryInsurancePay',
161
+ });
159
162
  }
160
163
 
161
164
  async getQuestionList(surveyType: string, processInstanceId: string, insuredId: number | string): Promise<AnketaFirst> {
@@ -601,4 +604,11 @@ export class ApiClass {
601
604
  url: `/Ekk/api/ContragentInsis/AgentByName?fullName=${name}`,
602
605
  });
603
606
  }
607
+
608
+ async isCourseChanged(processInstanceId: string): Promise<boolean> {
609
+ return this.axiosCall({
610
+ method: Methods.GET,
611
+ url: `/${this.productUrl}/api/Application/IsCourseChanged?processInstanceId=${processInstanceId}`,
612
+ });
613
+ }
604
614
  }
@@ -11,7 +11,7 @@
11
11
  $libStyles[`btnH${$capitalize(size)}` as keyof typeof $libStyles],
12
12
  ]"
13
13
  >
14
- <base-loader v-if="loading" :size="24" color="#FFF" bg-color="" :width="2"></base-loader>
14
+ <base-loader v-if="loading" :size="24" color="#FFF" bg-color="" :width="2" />
15
15
  <span v-if="!loading">{{ text }}</span>
16
16
  </button>
17
17
  </template>
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div class="absolute bottom-[12%] right-1 flex flex-col gap-4">
3
- <v-btn style="backdrop-filter: blur(5px)" color="#A0B3D8" variant="outlined" icon="mdi mdi-arrow-up" @click="$emit('up')"></v-btn>
4
- <v-btn style="backdrop-filter: blur(5px)" color="#A0B3D8" variant="outlined" icon="mdi mdi-arrow-down" @click="$emit('down')"></v-btn>
3
+ <v-btn style="backdrop-filter: blur(5px)" color="#A0B3D8" variant="outlined" icon="mdi mdi-arrow-up" @click="$emit('up')" />
4
+ <v-btn style="backdrop-filter: blur(5px)" color="#A0B3D8" variant="outlined" icon="mdi mdi-arrow-down" @click="$emit('down')" />
5
5
  </div>
6
6
  </template>
@@ -9,7 +9,7 @@
9
9
  :title="title"
10
10
  @onBack="$emit('onBack')"
11
11
  @onMore="$emit('onMore')"
12
- ></base-header>
12
+ />
13
13
  <slot></slot>
14
14
  </base-content>
15
15
  </template>
@@ -4,15 +4,15 @@
4
4
  <v-card-title>
5
5
  <slot v-if="!title" name="title"></slot>
6
6
  {{ title }}
7
- <v-btn class="!absolute top-2 right-3" icon="mdi mdi-window-close" variant="plain" @click="$emit('update:modelValue', null)"></v-btn>
7
+ <v-btn class="!absolute top-2 right-3" icon="mdi mdi-window-close" variant="plain" @click="$emit('update:modelValue', null)" />
8
8
  </v-card-title>
9
9
  <v-card-subtitle>
10
10
  <slot v-if="!subtitle" name="subtitle"></slot>
11
11
  {{ subtitle }}
12
12
  </v-card-subtitle>
13
13
  <v-card-actions class="gap-[16px] m-2">
14
- <base-btn v-if="actions === 'default'" class="!w-fit px-6" size="sm" :text="$t('confirm.yes')" :btn="$libStyles.blueBtn" @click="$emit('yes')"></base-btn>
15
- <base-btn v-if="actions === 'default'" class="!w-fit px-6" size="sm" :text="$t('confirm.no')" :btn="$libStyles.blueBtn" @click="$emit('no')" />
14
+ <base-btn v-if="actions === 'default'" class="!w-fit px-6" size="sm" :text="$dataStore.t('confirm.yes')" :btn="$libStyles.blueBtn" @click="$emit('yes')" />
15
+ <base-btn v-if="actions === 'default'" class="!w-fit px-6" size="sm" :text="$dataStore.t('confirm.no')" :btn="$libStyles.blueBtn" @click="$emit('no')" />
16
16
  <slot v-if="actions !== 'default'" name="actions"></slot>
17
17
  </v-card-actions>
18
18
  </v-card>
@@ -1,7 +1,10 @@
1
1
  <template>
2
2
  <v-list lines="two" v-if="formStore.birthInfos && formStore.birthInfos.length" class="w-full !py-0">
3
- <v-list-item @click="$emit('reset')" :append-icon="selected && Object.keys(selected).length === 0 ? `mdi-radiobox-marked ${$libStyles.greenText}` : 'mdi-radiobox-blank text-[#636363]'">
4
- <v-list-item-title :class="[$libStyles.greenText, $libStyles.textTitle]">{{ $t('form.notChosen') }}</v-list-item-title>
3
+ <v-list-item
4
+ @click="$emit('reset')"
5
+ :append-icon="selected && Object.keys(selected).length === 0 ? `mdi-radiobox-marked ${$libStyles.greenText}` : 'mdi-radiobox-blank text-[#636363]'"
6
+ >
7
+ <v-list-item-title :class="[$libStyles.greenText, $libStyles.textTitle]">{{ $dataStore.t('form.notChosen') }}</v-list-item-title>
5
8
  </v-list-item>
6
9
  <v-list-item
7
10
  v-for="familyMember of formStore.birthInfos"
@@ -13,12 +16,12 @@
13
16
  `${familyMember.childSurName} ${familyMember.childName} ${familyMember.childPatronymic ? familyMember.childPatronymic : ''}`
14
17
  }}</v-list-item-title>
15
18
  <v-list-item-subtitle :class="[$libStyles.textSimple]"
16
- ><span>{{ `${$t('form.iin')}:` }}</span
19
+ ><span>{{ `${$dataStore.t('form.iin')}:` }}</span
17
20
  >{{ ` ${$reformatIin(familyMember.childIIN!)}` }}</v-list-item-subtitle
18
21
  >
19
22
  </v-list-item>
20
23
  </v-list>
21
- <base-list-empty class="w-full" v-else></base-list-empty>
24
+ <base-list-empty class="w-full" v-else />
22
25
  </template>
23
26
 
24
27
  <script lang="ts">
@@ -9,7 +9,7 @@
9
9
  class="hidden lg:flex transition-all rounded-lg h-[36px] flex items-center font-medium justify-center opacity-50 hover:opacity-90 w-[120px]"
10
10
  @click="!disabled && memberStore.addMember(whichForm)"
11
11
  >
12
- {{ $t('buttons.add') }}
12
+ {{ $dataStore.t('buttons.add') }}
13
13
  </div>
14
14
  </div>
15
15
  <p v-if="!!subtitle" :class="[$libStyles.greyText, $libStyles.textSimple]">{{ subtitle }}</p>
@@ -18,12 +18,12 @@
18
18
  class="ml-5 mt-6 grid auto-rows-fr items-center"
19
19
  :class="[isShort ? 'grid-cols-2 md:gap-5 md:grid-cols-2 lg:grid-cols-2 mb-6' : 'grid-cols-4 md:gap-5 md:grid-cols-4 lg:grid-cols-7 ']"
20
20
  >
21
- <span :class="[$libStyles.textSimple]" class="font-medium">{{ $t('form.fullName') }}</span>
22
- <span :class="[$libStyles.textSimple]" class="font-medium">{{ $t('form.iin') }}</span>
23
- <span v-if="!isShort" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block"> {{ $t('form.gender') }}</span>
24
- <span v-if="!isShort" :class="[$libStyles.textSimple]" class="font-medium"> {{ $t('form.birthDate') }} </span>
25
- <span v-if="!isShort" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block">{{ $t('form.Country') }} </span>
26
- <span v-if="!isShort" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block"> {{ $t('code') }}</span>
21
+ <span :class="[$libStyles.textSimple]" class="font-medium">{{ $dataStore.t('form.fullName') }}</span>
22
+ <span :class="[$libStyles.textSimple]" class="font-medium">{{ $dataStore.t('form.iin') }}</span>
23
+ <span v-if="!isShort" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block"> {{ $dataStore.t('form.gender') }}</span>
24
+ <span v-if="!isShort" :class="[$libStyles.textSimple]" class="font-medium"> {{ $dataStore.t('form.birthDate') }} </span>
25
+ <span v-if="!isShort" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block">{{ $dataStore.t('form.Country') }} </span>
26
+ <span v-if="!isShort" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block"> {{ $dataStore.t('code') }}</span>
27
27
  </div>
28
28
  <div v-if="isMultiple" class="ml-5 flex flex-col" :class="[isShort ? 'mb-6' : '']">
29
29
  <div
@@ -44,7 +44,7 @@
44
44
  :class="[$libStyles.blueBgLight, $libStyles.blueBgLightHover, disabled ? $libStyles.disabled : 'cursor-pointer']"
45
45
  @click="!disabled && $emit('onMore', { whichForm, index })"
46
46
  >
47
- <i class="mdi mdi-dots-vertical text-xl absolute top-[20px] right-[20px]"> </i>
47
+ <i class="mdi mdi-dots-vertical text-xl absolute top-[20px] right-[20px]"></i>
48
48
  </div>
49
49
  </div>
50
50
  </div>
@@ -65,7 +65,7 @@
65
65
  :class="[$libStyles.blueBgLight, $libStyles.blueBgLightHover, disabled ? $libStyles.disabled : 'cursor-pointer']"
66
66
  @click="!disabled && $emit('onMore', { whichForm })"
67
67
  >
68
- <i class="mdi mdi-dots-vertical text-xl absolute top-[20px] right-[20px]"> </i>
68
+ <i class="mdi mdi-dots-vertical text-xl absolute top-[20px] right-[20px]"></i>
69
69
  </div>
70
70
  </div>
71
71
  <div
@@ -74,7 +74,7 @@
74
74
  class="block lg:hidden transition-all rounded-b-lg h-[36px] flex items-center font-medium justify-center opacity-50 hover:opacity-90"
75
75
  @click="!disabled && memberStore.addMember(whichForm)"
76
76
  >
77
- {{ $t('buttons.add') }}
77
+ {{ $dataStore.t('buttons.add') }}
78
78
  </div>
79
79
  </div>
80
80
  </template>
@@ -13,10 +13,9 @@
13
13
  color="#009C73"
14
14
  hide-details
15
15
  :disabled="disabled"
16
- >
17
- </v-switch>
16
+ />
18
17
  <p :class="[$libStyles.textSimple]">{{ `${title}` }}</p>
19
- <p class="mr-3" :class="[modelValue ? $libStyles.greenText : '', $libStyles.textSimple]">{{ `${modelValue ? $t('confirm.yes') : $t('confirm.no')}` }}</p>
18
+ <p class="mr-3" :class="[modelValue ? $libStyles.greenText : '', $libStyles.textSimple]">{{ `${modelValue ? $dataStore.t('confirm.yes') : $dataStore.t('confirm.no')}` }}</p>
20
19
  </div>
21
20
  </template>
22
21
 
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div class="rounded-lg border-[1px]" :class="[$libStyles.whiteBg, disabled && $libStyles.disabled]">
3
3
  <div class="mt-3 ml-5">
4
- <p :class="[$libStyles.textTitle, $libStyles.greenText]">{{ $t('form.attachManager') }}</p>
4
+ <p :class="[$libStyles.textTitle, $libStyles.greenText]">{{ $dataStore.t('form.attachManager') }}</p>
5
5
  </div>
6
6
  <v-form ref="vForm" class="flex flex-col mt-1">
7
7
  <base-panel-input
@@ -10,55 +10,55 @@
10
10
  :value="formStore.SaleChanellPolicy.nameRu"
11
11
  :readonly="isReadonly"
12
12
  :clearable="!isReadonly"
13
- :label="$t('form.salesChanell')"
13
+ :label="$dataStore.t('form.salesChanell')"
14
14
  :rules="$rules.objectRequired"
15
15
  append-inner-icon="mdi mdi-chevron-right"
16
- @append="openPanel('SaleChanellPolicy', $t('form.salesChanell'))"
17
- ></base-panel-input>
16
+ @append="openPanel('SaleChanellPolicy', $dataStore.t('form.salesChanell'))"
17
+ />
18
18
  <base-panel-input
19
19
  class="pl-1"
20
20
  v-model="formStore.RegionPolicy"
21
21
  :value="formStore.RegionPolicy.nameRu"
22
22
  :readonly="isReadonly"
23
23
  :clearable="!isReadonly"
24
- :label="$t('form.Region')"
24
+ :label="$dataStore.t('form.Region')"
25
25
  :rules="$rules.objectRequired"
26
26
  append-inner-icon="mdi mdi-chevron-right"
27
- @append="openPanel('RegionPolicy', $t('form.Region'))"
28
- ></base-panel-input>
27
+ @append="openPanel('RegionPolicy', $dataStore.t('form.Region'))"
28
+ />
29
29
  <base-panel-input
30
30
  class="pl-1"
31
31
  v-model="formStore.ManagerPolicy"
32
32
  :value="formStore.ManagerPolicy.nameRu"
33
33
  :readonly="isReadonly"
34
34
  :clearable="!isReadonly"
35
- :label="$t('form.manager')"
35
+ :label="$dataStore.t('form.manager')"
36
36
  :rules="$rules.objectRequired"
37
37
  append-inner-icon="mdi mdi-chevron-right"
38
- @append="openPanel('ManagerPolicy', $t('form.manager'))"
39
- ></base-panel-input>
38
+ @append="openPanel('ManagerPolicy', $dataStore.t('form.manager'))"
39
+ />
40
40
  <base-panel-input
41
41
  class="pl-1"
42
42
  v-model="formStore.AgentData"
43
43
  :value="formStore.AgentData.fullName"
44
44
  :readonly="isReadonly"
45
45
  :clearable="!isReadonly"
46
- :label="$t('form.agent')"
46
+ :label="$dataStore.t('form.agent')"
47
47
  :rules="$rules.agentDataRequired"
48
48
  append-inner-icon="mdi mdi-chevron-right"
49
- @append="openPanel('AgentData', $t('form.agent'))"
50
- ></base-panel-input>
49
+ @append="openPanel('AgentData', $dataStore.t('form.agent'))"
50
+ />
51
51
  </v-form>
52
52
  <Teleport v-if="isPanelOpen" to="#panel-actions">
53
53
  <div :class="[$libStyles.scrollPage]" class="flex flex-col items-center">
54
54
  <base-rounded-input
55
55
  v-model.trim="searchQuery"
56
- :label="$t('labels.search')"
56
+ :label="$dataStore.t('labels.search')"
57
57
  class="w-full p-2"
58
58
  :hide-details="true"
59
59
  :append-inner-icon="currentDictName === 'AgentData' ? 'mdi mdi-magnify' : ''"
60
60
  @append="searchAgent"
61
- ></base-rounded-input>
61
+ />
62
62
  <div v-if="dictList && isPanelLoading === false" class="w-full flex flex-col gap-2 p-2">
63
63
  <div v-for="(item, index) in dictList" :key="item.id">
64
64
  <base-panel-select-item
@@ -66,10 +66,10 @@
66
66
  :text="currentDictName === 'AgentData' ? item.fullName : (item.nameRu as string)"
67
67
  :selected="currentDictName === 'AgentData' ? item.fullName === panelValue.fullName : item.nameRu === panelValue.nameRu"
68
68
  @click="pickPanelValue(item)"
69
- ></base-panel-select-item>
69
+ />
70
70
  </div>
71
71
  </div>
72
- <base-loader v-if="isPanelLoading" class="absolute mt-10" :size="50"></base-loader>
72
+ <base-loader v-if="isPanelLoading" class="absolute mt-10" :size="50" />
73
73
  </div>
74
74
  </Teleport>
75
75
  </div>
@@ -2,17 +2,17 @@
2
2
  <div class="pt-3 pl-5 rounded-lg border-[1px]" :class="[$libStyles.whiteBg, disabled && $libStyles.disabled]">
3
3
  <div>
4
4
  <p :class="[$libStyles.textTitle, $libStyles.greenText]">
5
- {{ $t('productConditions') }}
5
+ {{ $dataStore.t('productConditions') }}
6
6
  </p>
7
7
  <p v-if="!!subtitle" :class="[$libStyles.greyText, $libStyles.textSimple]">{{ subtitle }}</p>
8
8
  </div>
9
9
  <div class="mt-6 grid grid-cols-3 lg:grid-cols-5 auto-rows-fr items-center">
10
- <span v-if="hasSum" :class="[$libStyles.textSimple]" class="font-medium">{{ $t('productConditionsForm.requestedSumInsured') }}</span>
11
- <span v-if="hasPremium" :class="[$libStyles.textSimple]" class="font-medium">{{ $t('productConditionsForm.insurancePremiumPerMonth') }}</span>
12
- <span v-if="hasPolicyNumber" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block">{{ $t('buttons.InsuranceContract') }}</span>
13
- <span v-if="hasContractDate" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block">{{ $t('productConditionsForm.contractDate') }}</span>
14
- <span v-if="hasCoverPeriod" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block">{{ $t('productConditionsForm.coverPeriod') }}</span>
15
- <span v-if="hasPayPeriod" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block">{{ $t('productConditionsForm.payPeriod') }}</span>
10
+ <span v-if="hasSum" :class="[$libStyles.textSimple]" class="font-medium">{{ $dataStore.t('productConditionsForm.requestedSumInsured') }}</span>
11
+ <span v-if="hasPremium" :class="[$libStyles.textSimple]" class="font-medium">{{ $dataStore.t('productConditionsForm.insurancePremiumPerMonth') }}</span>
12
+ <span v-if="hasPolicyNumber" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block">{{ $dataStore.t('buttons.InsuranceContract') }}</span>
13
+ <span v-if="hasContractDate" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block">{{ $dataStore.t('productConditionsForm.contractDate') }}</span>
14
+ <span v-if="hasCoverPeriod" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block">{{ $dataStore.t('productConditionsForm.coverPeriod') }}</span>
15
+ <span v-if="hasPayPeriod" :class="[$libStyles.textSimple]" class="font-medium hidden lg:block">{{ $dataStore.t('productConditionsForm.payPeriod') }}</span>
16
16
  </div>
17
17
  <div class="grid grid-cols-3 lg:grid-cols-5 auto-rows-fr items-center">
18
18
  <span v-if="hasSum" :class="[amount === null && $libStyles.emptyBlockCol]">{{ amount }} </span>
@@ -28,7 +28,7 @@
28
28
  :class="[$libStyles.blueBgLight, $libStyles.blueBgLightHover, disabled ? $libStyles.disabled : 'cursor-pointer']"
29
29
  @click="!disabled && $emit('onMore', { whichForm: 'productConditions' })"
30
30
  >
31
- <i class="mdi mdi-dots-vertical text-xl absolute top-[20px] right-[20px]"> </i>
31
+ <i class="mdi mdi-dots-vertical text-xl absolute top-[20px] right-[20px]"></i>
32
32
  </div>
33
33
  </div>
34
34
  </div>
@@ -17,7 +17,7 @@
17
17
  select-text="Выбрать"
18
18
  >
19
19
  <template #trigger>
20
- <v-icon icon="mdi mdi-calendar-blank-outline cursor-pointer"></v-icon>
20
+ <v-icon icon="mdi mdi-calendar-blank-outline cursor-pointer" />
21
21
  </template>
22
22
  </vue-date-picker>
23
23
  </template>
@@ -12,8 +12,8 @@
12
12
  accept=".pdf,.doc,.jpeg,.jpg,.jpg"
13
13
  truncate-length="15"
14
14
  clear-icon="mdi mdi-close"
15
- :label="$t('labels.chooseDoc')"
16
- ></v-file-input>
15
+ :label="$dataStore.t('labels.chooseDoc')"
16
+ />
17
17
  </template>
18
18
 
19
19
  <script lang="ts">
@@ -34,16 +34,16 @@
34
34
  v-if="appendInnerIcon.includes('mdi-calendar-blank-outline') === false"
35
35
  :icon="appendInnerIcon"
36
36
  @click="appendInnerIcon.includes('mdi-magnify') ? $emit('append') : !props.readonly && $emit('append')"
37
- ></v-icon>
37
+ />
38
38
  <base-datepicker
39
39
  v-if="appendInnerIcon.includes('mdi-calendar-blank-outline') && !props.readonly"
40
40
  :model-value="modelValue"
41
41
  @update:modelValue="$emit('update:modelValue', $event)"
42
42
  :teleport="teleport"
43
- ></base-datepicker>
43
+ />
44
44
  </template>
45
45
  <template v-if="loading" #loader>
46
- <v-progress-linear :active="loading" :color="color" absolute height="1" indeterminate></v-progress-linear>
46
+ <v-progress-linear :active="loading" :color="color" absolute height="1" indeterminate />
47
47
  </template>
48
48
  </v-text-field>
49
49
  </template>
@@ -32,7 +32,7 @@
32
32
  @update:modelValue="$emit('update:modelValue', $event)"
33
33
  >
34
34
  <template v-if="loading" #loader>
35
- <v-progress-linear :active="loading" :color="color" absolute height="1" indeterminate></v-progress-linear>
35
+ <v-progress-linear :active="loading" :color="color" absolute height="1" indeterminate />
36
36
  </template>
37
37
  </v-text-field>
38
38
  </template>
@@ -28,7 +28,7 @@
28
28
  @update:modelValue="$emit('update:modelValue', $event)"
29
29
  >
30
30
  <template v-if="loading" #loader>
31
- <v-progress-linear :active="loading" :color="color" absolute height="1" indeterminate></v-progress-linear>
31
+ <v-progress-linear :active="loading" :color="color" absolute height="1" indeterminate />
32
32
  </template>
33
33
  </v-text-field>
34
34
  </template>
@@ -117,7 +117,7 @@ export default defineComponent({
117
117
 
118
118
  return {
119
119
  submitted,
120
- props
120
+ props,
121
121
  };
122
122
  },
123
123
  });
@@ -26,7 +26,7 @@
26
26
  @update:modelValue="$emit('update:modelValue', $event)"
27
27
  >
28
28
  <template v-if="loading" #loader>
29
- <v-progress-linear :active="loading" :color="color" absolute height="1" indeterminate></v-progress-linear>
29
+ <v-progress-linear :active="loading" :color="color" absolute height="1" indeterminate />
30
30
  </template>
31
31
  </v-select>
32
32
  </template>
@@ -8,11 +8,11 @@
8
8
  :disable-resize-watcher="true"
9
9
  :disable-route-watcher="true"
10
10
  >
11
- <base-header :title="panelTitle" :has-back="true" back-icon="mdi-close" class="justify-center" @onBack="closePanel"></base-header>
11
+ <base-header :title="panelTitle" :has-back="true" back-icon="mdi-close" class="justify-center" @onBack="closePanel" />
12
12
  <div v-if="$dataStore.panelAction === null" class="flex flex-col" id="panel-actions">
13
13
  <slot></slot>
14
14
  </div>
15
- <base-panel-handler v-else></base-panel-handler>
15
+ <base-panel-handler v-else />
16
16
  <slot name="panel"></slot>
17
17
  </v-navigation-drawer>
18
18
  </template>
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <v-progress-circular :size="size" :width="width" :indeterminate="indeterminate" :color="color" :bg-color="bgColor"></v-progress-circular>
2
+ <v-progress-circular :size="size" :width="width" :indeterminate="indeterminate" :color="color" :bg-color="bgColor" />
3
3
  </template>
4
4
 
5
5
  <script lang="ts">
@@ -1,20 +1,20 @@
1
1
  <template>
2
2
  <base-drawer :panel-title="$dataStore.menu.title" which-panel="settings">
3
3
  <base-panel-item>
4
- <v-btn size="x-small" icon="mdi-minus" color="#A0B3D8" class="text-white" variant="flat" @click="handleFontSize('decrease')"></v-btn>
4
+ <v-btn size="x-small" icon="mdi-minus" color="#A0B3D8" class="text-white" variant="flat" @click="handleFontSize('decrease')" />
5
5
  Шрифт
6
- <v-btn size="x-small" icon="mdi-plus" color="#A0B3D8" class="text-white" variant="flat" @click="handleFontSize('increase')"></v-btn>
6
+ <v-btn size="x-small" icon="mdi-plus" color="#A0B3D8" class="text-white" variant="flat" @click="handleFontSize('increase')" />
7
7
  </base-panel-item>
8
8
  <base-panel-item>
9
- <v-text-field v-model="$dataStore.user.fullName" :readonly="true" hide-details variant="plain" :label="$dataStore.user.roles?.join(', ')"></v-text-field>
9
+ <v-text-field v-model="$dataStore.user.fullName" :readonly="true" hide-details variant="plain" :label="$dataStore.user.roles?.join(', ')" />
10
10
  <i class="mdi mdi-account-outline text-2xl text-[#A0B3D8]"></i
11
11
  ></base-panel-item>
12
12
  <base-panel-item v-if="$dataStore.isEFO && !isProduction" @click="changeBridge('lka')" class="cursor-pointer">
13
- {{ $t('labels.lkaLong') }}
13
+ {{ $dataStore.t('labels.lkaLong') }}
14
14
  <i class="mdi mdi-chevron-right text-2xl text-[#A0B3D8]"></i
15
15
  ></base-panel-item>
16
16
  <base-panel-item v-if="$dataStore.isLKA" @click="changeBridge('efo')" class="cursor-pointer">
17
- {{ $t('labels.efoLong') }}
17
+ {{ $dataStore.t('labels.efoLong') }}
18
18
  <i class="mdi mdi-web text-2xl text-[#A0B3D8]"></i
19
19
  ></base-panel-item>
20
20
  <base-panel-item
@@ -27,19 +27,25 @@
27
27
  <i v-if="panelItem.icon" class="mdi text-xl text-[#A0B3D8]" :class="[panelItem.icon]"></i>
28
28
  </base-panel-item>
29
29
  <base-panel-item v-if="hasHistory" @click="openHistory" class="cursor-pointer">
30
- {{ $t('historyStatementsAndStatuses') }}
30
+ {{ $dataStore.t('historyStatementsAndStatuses') }}
31
31
  <i class="mdi mdi-history text-xl text-[#A0B3D8]"></i>
32
32
  </base-panel-item>
33
33
  <base-panel-item @click="dialogSignOut = true" class="cursor-pointer" :class="[$libStyles.redText]">
34
- {{ $t('buttons.logout') }}
34
+ {{ $dataStore.t('buttons.logout') }}
35
35
  <i class="mdi mdi-logout text-xl"></i>
36
36
  </base-panel-item>
37
37
  <div v-if="$dataStore.settings.open" class="absolute bottom-2 w-full flex items-center justify-center opacity-30 text-sm">
38
38
  <p>{{ pkg.version }}</p>
39
39
  </div>
40
- <base-dialog v-model="dialogSignOut" :title="$t('dialog.exit')" :subtitle="$t('dialog.dataWillClear')" actions="default" @yes="logoutUser" @no="dialogSignOut = false">
41
- </base-dialog
42
- ></base-drawer>
40
+ <base-dialog
41
+ v-model="dialogSignOut"
42
+ :title="$dataStore.t('dialog.exit')"
43
+ :subtitle="$dataStore.t('dialog.dataWillClear')"
44
+ actions="default"
45
+ @yes="logoutUser"
46
+ @no="dialogSignOut = false"
47
+ />
48
+ </base-drawer>
43
49
  </template>
44
50
 
45
51
  <script lang="ts" setup>
@@ -2,7 +2,7 @@
2
2
  <v-menu v-if="items.length" :activator="activator" location="bottom center" :offset="top" transition="scale-transition">
3
3
  <base-form-text-section class="p-4 border-[1px] flex flex-col gap-3 elevation-3 w-[250px]">
4
4
  <div v-for="item of items.filter(i => $dataStore.filters.show(i))" :key="item.id">
5
- <base-menu-nav-item :class="[$libStyles.textSimple]" :menu-item="item" @click="$emit(item.id)"></base-menu-nav-item>
5
+ <base-menu-nav-item :class="[$libStyles.textSimple]" :menu-item="item" @click="$emit(item.id)" />
6
6
  </div>
7
7
  </base-form-text-section>
8
8
  </v-menu>
@@ -10,7 +10,7 @@
10
10
  :more-icon="moreIcon"
11
11
  @onBack="$emit('onBack')"
12
12
  @onMore="$emit('onMore')"
13
- ></base-header>
13
+ />
14
14
  <slot key="slot-content" name="content"></slot>
15
15
  <section key="main" :class="[$libStyles.flexColNav]">
16
16
  <slot name="start"></slot>
@@ -42,8 +42,7 @@
42
42
  :disabled="item.disabled"
43
43
  :loading="$dataStore.isButtonsLoading"
44
44
  @click="item.action"
45
- >
46
- </base-btn>
45
+ />
47
46
  </transition>
48
47
  </div></div
49
48
  ></base-fade-transition>
@@ -12,7 +12,7 @@
12
12
  <span>{{ menuItem.title }}</span>
13
13
  <div class="flex items-center">
14
14
  <i v-if="menuItem.icon" class="mdi text-xl pr-4" :class="[menuItem.icon]"></i>
15
- <base-chip :chip="menuItem.chip"></base-chip>
15
+ <base-chip :chip="menuItem.chip" />
16
16
  </div>
17
17
  <v-tooltip v-if="menuItem.description" activator="parent" location="bottom">{{ menuItem.description }}</v-tooltip>
18
18
  </div>
@@ -4,11 +4,11 @@
4
4
  <section :class="[$libStyles.blueBgLight, $libStyles.rounded]" class="mx-[10px] my-[14px] p-4 flex flex-col gap-4">
5
5
  <base-form-toggle
6
6
  v-model="answerToAll"
7
- :title="$t('questionnaireType.answerAllNo')"
7
+ :title="$dataStore.t('questionnaireType.answerAllNo')"
8
8
  :disabled="formStore.isDisabled[whichSurvey] || !$dataStore.isTask()"
9
9
  :has-border="false"
10
10
  @clicked="handleToggler"
11
- ></base-form-toggle>
11
+ />
12
12
  </section>
13
13
  <v-form ref="vForm" class="max-h-[70vh] overflow-y-scroll" @submit="submitForm">
14
14
  <section
@@ -24,7 +24,7 @@
24
24
  :maska="$maska.threeDigit"
25
25
  :readonly="formStore.isDisabled[whichSurvey] || !$dataStore.isTask()"
26
26
  :rules="$rules.required"
27
- ></base-form-input>
27
+ />
28
28
  </section>
29
29
  <section
30
30
  v-if="firstQuestionList.filter(i => i.first.definedAnswers === 'Y').length"
@@ -39,7 +39,7 @@
39
39
  class="rounded-t-lg pl-6 py-1 cursor-pointer"
40
40
  @click="openFirstPanel(question)"
41
41
  >
42
- {{ $t('questionnaireType.pleaseAnswer', { text: secondQuestionList.length }) }}
42
+ {{ $dataStore.t('questionnaireType.pleaseAnswer', { text: secondQuestionList.length }) }}
43
43
  </div>
44
44
  </base-fade-transition>
45
45
  <span :class="[$libStyles.textTitle]" class="border-b-[1px] border-b-[#F3F6FC] p-6 flex items-center justify-between">
@@ -62,8 +62,8 @@
62
62
  :readonly="formStore.isDisabled[whichSurvey] || !$dataStore.isTask()"
63
63
  inline
64
64
  >
65
- <v-radio label="Да" value="Да"></v-radio>
66
- <v-radio label="Нет" value="Нет"></v-radio>
65
+ <v-radio label="Да" value="Да" />
66
+ <v-radio label="Нет" value="Нет" />
67
67
  </v-radio-group>
68
68
  </div>
69
69
  </base-form-text-section>
@@ -74,8 +74,8 @@
74
74
  :loading="isButtonLoading"
75
75
  :disabled="formStore.isDisabled[whichSurvey] || !$dataStore.isTask()"
76
76
  @click="submitForm"
77
- :text="$t('buttons.save')"
78
- ></base-btn>
77
+ :text="$dataStore.t('buttons.save')"
78
+ />
79
79
  </section>
80
80
  <v-btn
81
81
  v-if="secondQuestionList && secondQuestionList.length && firstPanel"
@@ -85,7 +85,7 @@
85
85
  firstPanel = false;
86
86
  secondPanel = false;
87
87
  "
88
- ></v-btn>
88
+ />
89
89
  <section
90
90
  ref="firstPanelSection"
91
91
  v-if="secondQuestionList && secondQuestionList.length && firstPanel"
@@ -94,12 +94,7 @@
94
94
  >
95
95
  <section v-if="currentQuestion" :class="[$libStyles.blueBgLight, $libStyles.rounded]" class="mx-[10px] mt-[14px] p-4 flex flex-col gap-4">
96
96
  <base-form-text-section v-for="question in currentQuestion.second" :title="question.name" :key="question.name">
97
- <base-form-input
98
- v-if="question.definedAnswers === 'N'"
99
- v-model="question.answerText"
100
- class="border-t-[1px] border-t-[#F3F6FC]"
101
- placeholder="Введите текст"
102
- ></base-form-input>
97
+ <base-form-input v-if="question.definedAnswers === 'N'" v-model="question.answerText" class="border-t-[1px] border-t-[#F3F6FC]" placeholder="Введите текст" />
103
98
  <span v-else class="flex items-center justify-between p-4 cursor-pointer" :class="[$libStyles.textTitle, $libStyles.greenText]" @click="openSecondPanel(question)">
104
99
  {{ question.answerName ? question.answerName : 'Выбрать вариант ответа' }}
105
100
  <i class="mdi mdi-chevron-right text-[28px]"></i>
@@ -110,7 +105,7 @@
110
105
  </base-fade-transition>
111
106
  <Teleport v-if="secondPanel" to="#panel-actions">
112
107
  <div :class="[$libStyles.scrollPage]" class="flex flex-col items-center">
113
- <base-rounded-input v-model="searchQuery" :label="$t('labels.search')" class="w-full p-2" :hide-details="true"></base-rounded-input>
108
+ <base-rounded-input v-model="searchQuery" :label="$dataStore.t('labels.search')" class="w-full p-2" :hide-details="true" />
114
109
  <div v-if="$dataStore.questionRefs && $dataStore.questionRefs.length && isPanelLoading === false" class="w-full flex flex-col gap-2 p-2">
115
110
  <base-panel-select-item
116
111
  v-for="(item, index) of $dataStore.questionRefs.filter(i => i.nameRu && (i.nameRu as string).match(new RegExp(searchQuery, 'i')))"
@@ -118,9 +113,9 @@
118
113
  :text="`${item.nameRu}`"
119
114
  :selected="currentSecond!.answerId === item.ids"
120
115
  @click="closeSecondPanel(item)"
121
- ></base-panel-select-item>
116
+ />
122
117
  </div>
123
- <base-loader v-if="isPanelLoading" class="absolute mt-10" :size="50"></base-loader>
118
+ <base-loader v-if="isPanelLoading" class="absolute mt-10" :size="50" />
124
119
  </div>
125
120
  </Teleport>
126
121
  <base-scroll-buttons @up="scrollForm('up')" @down="scrollForm('down')" />