shared-ritm 1.2.97 → 1.2.99

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 (119) hide show
  1. package/README.md +103 -103
  2. package/dist/index.css +1 -1
  3. package/dist/shared-ritm.es.js +2051 -2054
  4. package/dist/shared-ritm.umd.js +25 -25
  5. package/dist/types/api/services/UserService.d.ts +7 -0
  6. package/dist/types/api/services/VideoService.d.ts +0 -14
  7. package/dist/types/api/types/Api_Tasks.d.ts +1 -1
  8. package/dist/types/index.d.ts +0 -1
  9. package/package.json +1 -1
  10. package/src/App.vue +2461 -2461
  11. package/src/api/services/AuthService.ts +64 -64
  12. package/src/api/services/CommentsService.ts +24 -24
  13. package/src/api/services/ControlsService.ts +65 -65
  14. package/src/api/services/FileService.ts +17 -17
  15. package/src/api/services/GanttService.ts +17 -17
  16. package/src/api/services/MetricsService.ts +110 -110
  17. package/src/api/services/ProjectsService.ts +68 -68
  18. package/src/api/services/RepairsService.ts +119 -119
  19. package/src/api/services/SearchService.ts +16 -16
  20. package/src/api/services/TasksService.ts +145 -145
  21. package/src/api/services/UserService.ts +101 -87
  22. package/src/api/services/VideoService.ts +0 -19
  23. package/src/api/types/Api_Comment.ts +40 -40
  24. package/src/api/types/Api_Controls.ts +72 -72
  25. package/src/api/types/Api_Files.ts +7 -7
  26. package/src/api/types/Api_Projects.ts +55 -55
  27. package/src/api/types/Api_Repairs.ts +115 -115
  28. package/src/api/types/Api_Search.ts +48 -48
  29. package/src/api/types/Api_Service.ts +9 -9
  30. package/src/api/types/Api_Tasks.ts +315 -315
  31. package/src/common/app-button/AppButton.vue +173 -173
  32. package/src/common/app-checkbox/AppCheckbox.vue +26 -26
  33. package/src/common/app-date-picker/AppDatePicker.vue +81 -81
  34. package/src/common/app-datepicker/AppDatepicker.vue +165 -165
  35. package/src/common/app-dialogs/AppConfirmDialog.vue +99 -99
  36. package/src/common/app-dropdown/AppDropdown.vue +31 -31
  37. package/src/common/app-icon/AppIcon.vue +108 -108
  38. package/src/common/app-input/AppInput.vue +148 -148
  39. package/src/common/app-input-new/AppInputNew.vue +152 -152
  40. package/src/common/app-input-search/AppInputSearch.vue +174 -174
  41. package/src/common/app-layout/AppLayout.vue +84 -84
  42. package/src/common/app-layout/components/AppLayoutHeader.vue +1 -0
  43. package/src/common/app-layout/components/AppLayoutPage.vue +16 -16
  44. package/src/common/app-loader/index.vue +43 -43
  45. package/src/common/app-page-layout/AppPageLayout.vue +122 -122
  46. package/src/common/app-select/AppSelect.vue +157 -157
  47. package/src/common/app-sheet/AppSheet.vue +120 -120
  48. package/src/common/app-sidebar/AppSidebar.vue +168 -168
  49. package/src/common/app-sidebar/components/SidebarMenu.vue +37 -37
  50. package/src/common/app-sidebar/components/SidebarMenuItem.vue +148 -148
  51. package/src/common/app-table/AppTable.vue +1 -8
  52. package/src/common/app-table/AppTableLayout.vue +4 -5
  53. package/src/common/app-table/components/TablePagination.vue +152 -152
  54. package/src/common/app-table/controllers/useColumnSelector.ts +38 -38
  55. package/src/common/app-table/controllers/useTableModel.ts +93 -93
  56. package/src/common/app-toggle/AppToggle.vue +24 -24
  57. package/src/common/app-wrapper/AppWrapper.vue +28 -28
  58. package/src/global.d.ts +1 -1
  59. package/src/icons/components/arrow-down-icon.vue +25 -25
  60. package/src/icons/components/arrow-frame-icon.vue +19 -19
  61. package/src/icons/components/arrow-square.vue +22 -22
  62. package/src/icons/components/table-filter-icon.vue +30 -30
  63. package/src/icons/dialogs/RemoveIcon.vue +12 -12
  64. package/src/icons/dialogs/SafetyIcon.vue +12 -12
  65. package/src/icons/header/NotificationIcon.vue +18 -18
  66. package/src/icons/header/PersonIcon.vue +11 -11
  67. package/src/icons/header/SettingIcon.vue +14 -14
  68. package/src/icons/header/flashIcon.vue +24 -24
  69. package/src/icons/header/searchStatusIcon.vue +24 -24
  70. package/src/icons/header/smallCapsIcon.vue +34 -34
  71. package/src/icons/sidebar/assign-module-icon.vue +36 -36
  72. package/src/icons/sidebar/instrument-history-icon.vue +32 -32
  73. package/src/icons/sidebar/instrument-order-icon.vue +38 -38
  74. package/src/icons/sidebar/instrument-work-zone-icon.vue +18 -18
  75. package/src/icons/sidebar/instruments-icon.vue +45 -45
  76. package/src/icons/sidebar/logo-icon.vue +15 -15
  77. package/src/icons/sidebar/logout-icon.vue +13 -13
  78. package/src/icons/sidebar/modules-icon.vue +16 -16
  79. package/src/icons/sidebar/notifications-icon.vue +24 -24
  80. package/src/icons/sidebar/order-icon.vue +44 -44
  81. package/src/icons/sidebar/pass-icon.vue +38 -38
  82. package/src/icons/sidebar/positions-icon.vue +42 -42
  83. package/src/icons/sidebar/preorder-icon.vue +19 -19
  84. package/src/icons/sidebar/projects-icon.vue +31 -31
  85. package/src/icons/sidebar/repair-object-icon.vue +18 -18
  86. package/src/icons/sidebar/repairs-icon.vue +20 -20
  87. package/src/icons/sidebar/roles-icon.vue +26 -26
  88. package/src/icons/sidebar/status-history-icon.vue +24 -24
  89. package/src/icons/sidebar/tasks-icon.vue +28 -28
  90. package/src/icons/sidebar/tasks_tasks-icon.vue +39 -39
  91. package/src/icons/sidebar/tasks_today-icon.vue +27 -27
  92. package/src/icons/sidebar/teams-icon.vue +32 -32
  93. package/src/icons/sidebar/user-icon.vue +18 -18
  94. package/src/icons/sidebar/users-icon.vue +46 -46
  95. package/src/icons/sidebar/videosources-icon.vue +19 -19
  96. package/src/icons/sidebar/videowall-icon.vue +13 -13
  97. package/src/icons/sidebar/videozones-icon.vue +21 -21
  98. package/src/icons/sidebar/warehouses-icon.vue +43 -43
  99. package/src/icons/sidebar/workshop-icon.vue +100 -100
  100. package/src/icons/sidebar/workzones-icon.vue +22 -22
  101. package/src/icons/task/attention-icon.vue +13 -13
  102. package/src/icons/task/clock-icon.vue +10 -10
  103. package/src/icons/task/delete-icon.vue +10 -10
  104. package/src/icons/task/fire-icon.vue +16 -16
  105. package/src/index.ts +0 -1
  106. package/src/main.ts +28 -28
  107. package/src/quasar-user-options.ts +17 -17
  108. package/src/router/index.ts +10 -10
  109. package/src/shared/styles/general.css +124 -124
  110. package/src/shims-vue.d.ts +5 -5
  111. package/src/utils/confirm.ts +12 -12
  112. package/src/utils/faceApiHelper.ts +137 -137
  113. package/src/utils/helpers.ts +59 -59
  114. package/src/utils/notification.ts +9 -9
  115. package/dist/types/api/services/ComentsServise.d.ts +0 -10
  116. package/dist/types/api/services/PhotoService.d.ts +0 -53
  117. package/dist/types/api/types/Api_Users.d.ts +0 -43
  118. package/dist/types/api/types/Api_Video.d.ts +0 -87
  119. package/src/api/types/Api_Video.ts +0 -90
@@ -1,38 +1,38 @@
1
- import { computed, ref } from 'vue'
2
-
3
- export interface ColumnConfig {
4
- name: string
5
- label: string
6
- [key: string]: any
7
- }
8
-
9
- export function useColumnSelector(allColumns: ColumnConfig[], fixedColumnNames: string[] = []) {
10
- const selectedColumnNames = ref<string[]>([...new Set([...fixedColumnNames, ...allColumns.map(col => col.name)])])
11
-
12
- const visibleColumns = computed(() => allColumns.filter(col => selectedColumnNames.value.includes(col.name)))
13
-
14
- function openColumnSelectorDialog($q: any) {
15
- $q.dialog({
16
- title: 'Выберите колонки',
17
- options: {
18
- type: 'checkbox',
19
- model: [...selectedColumnNames.value],
20
- items: allColumns.map(col => ({
21
- label: col.label,
22
- value: col.name,
23
- disable: fixedColumnNames.includes(col.name),
24
- })),
25
- },
26
- cancel: true,
27
- persistent: true,
28
- }).onOk((val: string[]) => {
29
- selectedColumnNames.value = Array.from(new Set([...val, ...fixedColumnNames]))
30
- })
31
- }
32
-
33
- return {
34
- selectedColumnNames,
35
- visibleColumns,
36
- openColumnSelectorDialog,
37
- }
38
- }
1
+ import { computed, ref } from 'vue'
2
+
3
+ export interface ColumnConfig {
4
+ name: string
5
+ label: string
6
+ [key: string]: any
7
+ }
8
+
9
+ export function useColumnSelector(allColumns: ColumnConfig[], fixedColumnNames: string[] = []) {
10
+ const selectedColumnNames = ref<string[]>([...new Set([...fixedColumnNames, ...allColumns.map(col => col.name)])])
11
+
12
+ const visibleColumns = computed(() => allColumns.filter(col => selectedColumnNames.value.includes(col.name)))
13
+
14
+ function openColumnSelectorDialog($q: any) {
15
+ $q.dialog({
16
+ title: 'Выберите колонки',
17
+ options: {
18
+ type: 'checkbox',
19
+ model: [...selectedColumnNames.value],
20
+ items: allColumns.map(col => ({
21
+ label: col.label,
22
+ value: col.name,
23
+ disable: fixedColumnNames.includes(col.name),
24
+ })),
25
+ },
26
+ cancel: true,
27
+ persistent: true,
28
+ }).onOk((val: string[]) => {
29
+ selectedColumnNames.value = Array.from(new Set([...val, ...fixedColumnNames]))
30
+ })
31
+ }
32
+
33
+ return {
34
+ selectedColumnNames,
35
+ visibleColumns,
36
+ openColumnSelectorDialog,
37
+ }
38
+ }
@@ -1,93 +1,93 @@
1
- import { Ref, computed, ref } from 'vue'
2
-
3
- export interface TableColumn {
4
- name: string
5
- label: string
6
- style?: string
7
- headerStyle?: string
8
- field?: string | ((row: any) => any)
9
- sortable?: boolean
10
- filterType?: 'single' | 'multi' | null
11
- align?: 'left' | 'center' | 'right'
12
- badge?: {
13
- true?: string
14
- false?: string
15
- colorTrue?: string
16
- colorFalse?: string
17
- }
18
- format?: (val: any) => any
19
- html?: boolean
20
- }
21
-
22
- export interface FilterOption {
23
- id: string
24
- name: string
25
- }
26
-
27
- export interface TableModel<T = any> {
28
- columns: TableColumn[]
29
- rows: T[] | Ref<T[]>
30
- filtersOptions?: Ref<Record<string, FilterOption[]>>
31
- }
32
-
33
- export const useTableModel = <T = any>(model: TableModel<T>) => {
34
- const columnFilters = ref<Record<string, string | string[] | undefined>>({})
35
- const filterMenus = ref<Record<string, boolean>>({})
36
-
37
- model.columns.forEach(({ name, filterType }) => {
38
- if (filterType) {
39
- columnFilters.value[name] = filterType === 'multi' ? [] : undefined
40
- filterMenus.value[name] = false
41
- }
42
- })
43
-
44
- const resolvedRows = computed(() => (Array.isArray(model.rows) ? model.rows : model.rows.value))
45
-
46
- const toggleFilterValue = (colName: string, value: string) => {
47
- const col = model.columns.find(c => c.name === colName)
48
- if (col?.filterType === 'multi') {
49
- const current = columnFilters.value[colName] as string[]
50
- const index = current.indexOf(value)
51
- index > -1 ? current.splice(index, 1) : current.push(value)
52
- columnFilters.value[colName] = [...current]
53
- } else {
54
- columnFilters.value[colName] = value
55
- filterMenus.value[colName] = false
56
- }
57
- }
58
-
59
- const selectedFilters = computed(() => {
60
- const result: Record<string, string[]> = {}
61
- for (const col of model.columns) {
62
- const filter = columnFilters.value[col.name]
63
- const options = model.filtersOptions?.value[col.name] || []
64
-
65
- if (filter) {
66
- result[col.name] = Array.isArray(filter)
67
- ? options.filter(opt => filter.includes(opt.name)).map(opt => opt.id)
68
- : options.filter(opt => opt.name === filter).map(opt => opt.id)
69
- }
70
- }
71
- return result
72
- })
73
-
74
- const clearFilter = (colName: string) => {
75
- const col = model.columns.find(c => c.name === colName)
76
- columnFilters.value[colName] = col?.filterType === 'multi' ? [] : undefined
77
- }
78
-
79
- const openFilterMenu = (colName: string, isOpen: boolean) => {
80
- filterMenus.value[colName] = isOpen
81
- }
82
-
83
- return {
84
- rows: resolvedRows,
85
- columns: computed(() => model.columns),
86
- columnFilters,
87
- filterMenus,
88
- toggleFilterValue,
89
- clearFilter,
90
- openFilterMenu,
91
- selectedFilters,
92
- }
93
- }
1
+ import { Ref, computed, ref } from 'vue'
2
+
3
+ export interface TableColumn {
4
+ name: string
5
+ label: string
6
+ style?: string
7
+ headerStyle?: string
8
+ field?: string | ((row: any) => any)
9
+ sortable?: boolean
10
+ filterType?: 'single' | 'multi' | null
11
+ align?: 'left' | 'center' | 'right'
12
+ badge?: {
13
+ true?: string
14
+ false?: string
15
+ colorTrue?: string
16
+ colorFalse?: string
17
+ }
18
+ format?: (val: any) => any
19
+ html?: boolean
20
+ }
21
+
22
+ export interface FilterOption {
23
+ id: string
24
+ name: string
25
+ }
26
+
27
+ export interface TableModel<T = any> {
28
+ columns: TableColumn[]
29
+ rows: T[] | Ref<T[]>
30
+ filtersOptions?: Ref<Record<string, FilterOption[]>>
31
+ }
32
+
33
+ export const useTableModel = <T = any>(model: TableModel<T>) => {
34
+ const columnFilters = ref<Record<string, string | string[] | undefined>>({})
35
+ const filterMenus = ref<Record<string, boolean>>({})
36
+
37
+ model.columns.forEach(({ name, filterType }) => {
38
+ if (filterType) {
39
+ columnFilters.value[name] = filterType === 'multi' ? [] : undefined
40
+ filterMenus.value[name] = false
41
+ }
42
+ })
43
+
44
+ const resolvedRows = computed(() => (Array.isArray(model.rows) ? model.rows : model.rows.value))
45
+
46
+ const toggleFilterValue = (colName: string, value: string) => {
47
+ const col = model.columns.find(c => c.name === colName)
48
+ if (col?.filterType === 'multi') {
49
+ const current = columnFilters.value[colName] as string[]
50
+ const index = current.indexOf(value)
51
+ index > -1 ? current.splice(index, 1) : current.push(value)
52
+ columnFilters.value[colName] = [...current]
53
+ } else {
54
+ columnFilters.value[colName] = value
55
+ filterMenus.value[colName] = false
56
+ }
57
+ }
58
+
59
+ const selectedFilters = computed(() => {
60
+ const result: Record<string, string[]> = {}
61
+ for (const col of model.columns) {
62
+ const filter = columnFilters.value[col.name]
63
+ const options = model.filtersOptions?.value[col.name] || []
64
+
65
+ if (filter) {
66
+ result[col.name] = Array.isArray(filter)
67
+ ? options.filter(opt => filter.includes(opt.name)).map(opt => opt.id)
68
+ : options.filter(opt => opt.name === filter).map(opt => opt.id)
69
+ }
70
+ }
71
+ return result
72
+ })
73
+
74
+ const clearFilter = (colName: string) => {
75
+ const col = model.columns.find(c => c.name === colName)
76
+ columnFilters.value[colName] = col?.filterType === 'multi' ? [] : undefined
77
+ }
78
+
79
+ const openFilterMenu = (colName: string, isOpen: boolean) => {
80
+ filterMenus.value[colName] = isOpen
81
+ }
82
+
83
+ return {
84
+ rows: resolvedRows,
85
+ columns: computed(() => model.columns),
86
+ columnFilters,
87
+ filterMenus,
88
+ toggleFilterValue,
89
+ clearFilter,
90
+ openFilterMenu,
91
+ selectedFilters,
92
+ }
93
+ }
@@ -1,24 +1,24 @@
1
- <template>
2
- <div>
3
- <q-toggle v-model="value" :disable="disable" />
4
- </div>
5
- </template>
6
-
7
- <script setup lang="ts">
8
- import { computed, defineProps, defineEmits } from 'vue'
9
-
10
- interface Props {
11
- modelValue: any
12
- disable?: boolean
13
- }
14
-
15
- const props = defineProps<Props>()
16
- const emit = defineEmits(['update:modelValue', 'number'])
17
-
18
- const value = computed({
19
- get: () => props.modelValue,
20
- set: (newValue: any) => emit('update:modelValue', newValue),
21
- })
22
- </script>
23
-
24
- <style module lang="scss"></style>
1
+ <template>
2
+ <div>
3
+ <q-toggle v-model="value" :disable="disable" />
4
+ </div>
5
+ </template>
6
+
7
+ <script setup lang="ts">
8
+ import { computed, defineProps, defineEmits } from 'vue'
9
+
10
+ interface Props {
11
+ modelValue: any
12
+ disable?: boolean
13
+ }
14
+
15
+ const props = defineProps<Props>()
16
+ const emit = defineEmits(['update:modelValue', 'number'])
17
+
18
+ const value = computed({
19
+ get: () => props.modelValue,
20
+ set: (newValue: any) => emit('update:modelValue', newValue),
21
+ })
22
+ </script>
23
+
24
+ <style module lang="scss"></style>
@@ -1,28 +1,28 @@
1
- <template>
2
- <div class="app-wrapper">
3
- <slot />
4
- </div>
5
- </template>
6
- <script setup lang="ts"></script>
7
- <style scoped lang="scss">
8
- .app-wrapper {
9
- width: 100%;
10
- height: 100%;
11
- margin: 20px 0 12px 0;
12
- padding: 30px;
13
- border-radius: 8px;
14
- background: #fff;
15
- outline: 4px solid #598dd5;
16
- outline-offset: -3px;
17
- box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25), 0px 4px 4px 0px #c4d7f1 inset,
18
- 0px 0px 6.4px 3px rgba(31, 82, 159, 0.5), 0px 6px 58px 0px rgba(0, 49, 122, 0.1);
19
- }
20
-
21
- @media (max-width: 1440px) {
22
- .app-wrapper {
23
- margin: 10px 0;
24
- padding: 14px;
25
- border-radius: 8px;
26
- }
27
- }
28
- </style>
1
+ <template>
2
+ <div class="app-wrapper">
3
+ <slot />
4
+ </div>
5
+ </template>
6
+ <script setup lang="ts"></script>
7
+ <style scoped lang="scss">
8
+ .app-wrapper {
9
+ width: 100%;
10
+ height: 100%;
11
+ margin: 20px 0 12px 0;
12
+ padding: 30px;
13
+ border-radius: 8px;
14
+ background: #fff;
15
+ outline: 4px solid #598dd5;
16
+ outline-offset: -3px;
17
+ box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25), 0px 4px 4px 0px #c4d7f1 inset,
18
+ 0px 0px 6.4px 3px rgba(31, 82, 159, 0.5), 0px 6px 58px 0px rgba(0, 49, 122, 0.1);
19
+ }
20
+
21
+ @media (max-width: 1440px) {
22
+ .app-wrapper {
23
+ margin: 10px 0;
24
+ padding: 14px;
25
+ border-radius: 8px;
26
+ }
27
+ }
28
+ </style>
package/src/global.d.ts CHANGED
@@ -1 +1 @@
1
- declare module 'shared-ritm'
1
+ declare module 'shared-ritm'
@@ -1,25 +1,25 @@
1
- <script>
2
- export default {
3
- name: 'ArrowDownIcon',
4
- }
5
- </script>
6
-
7
- <template>
8
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
9
- <path
10
- d="M12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2Z"
11
- stroke="#3F8CFF"
12
- stroke-width="1.5"
13
- stroke-miterlimit="10"
14
- stroke-linecap="round"
15
- stroke-linejoin="round"
16
- />
17
- <path
18
- d="M15.53 10.74L12 14.26L8.47003 10.74"
19
- stroke="#3F8CFF"
20
- stroke-width="1.5"
21
- stroke-linecap="round"
22
- stroke-linejoin="round"
23
- />
24
- </svg>
25
- </template>
1
+ <script>
2
+ export default {
3
+ name: 'ArrowDownIcon',
4
+ }
5
+ </script>
6
+
7
+ <template>
8
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
9
+ <path
10
+ d="M12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2Z"
11
+ stroke="#3F8CFF"
12
+ stroke-width="1.5"
13
+ stroke-miterlimit="10"
14
+ stroke-linecap="round"
15
+ stroke-linejoin="round"
16
+ />
17
+ <path
18
+ d="M15.53 10.74L12 14.26L8.47003 10.74"
19
+ stroke="#3F8CFF"
20
+ stroke-width="1.5"
21
+ stroke-linecap="round"
22
+ stroke-linejoin="round"
23
+ />
24
+ </svg>
25
+ </template>
@@ -1,19 +1,19 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
3
- <path
4
- d="M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z"
5
- stroke="currentStroke"
6
- stroke-width="1.5"
7
- stroke-miterlimit="10"
8
- stroke-linecap="round"
9
- stroke-linejoin="round"
10
- />
11
- <path
12
- d="M8.46997 13.26L12 9.73999L15.53 13.26"
13
- stroke="currentStroke"
14
- stroke-width="1.5"
15
- stroke-linecap="round"
16
- stroke-linejoin="round"
17
- />
18
- </svg>
19
- </template>
1
+ <template>
2
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
3
+ <path
4
+ d="M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z"
5
+ stroke="currentStroke"
6
+ stroke-width="1.5"
7
+ stroke-miterlimit="10"
8
+ stroke-linecap="round"
9
+ stroke-linejoin="round"
10
+ />
11
+ <path
12
+ d="M8.46997 13.26L12 9.73999L15.53 13.26"
13
+ stroke="currentStroke"
14
+ stroke-width="1.5"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ />
18
+ </svg>
19
+ </template>
@@ -1,22 +1,22 @@
1
- <script setup lang="ts"></script>
2
-
3
- <template>
4
- <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
5
- <path
6
- d="M9 22H15C20 22 22 20 22 15V9C22 4 20 2 15 2H9C4 2 2 4 2 9V15C2 20 4 22 9 22Z"
7
- stroke="#3F8CFF"
8
- stroke-width="1.5"
9
- stroke-linecap="round"
10
- stroke-linejoin="round"
11
- />
12
- <path
13
- d="M10.7402 15.53L14.2602 12L10.7402 8.46997"
14
- stroke="#3F8CFF"
15
- stroke-width="1.5"
16
- stroke-linecap="round"
17
- stroke-linejoin="round"
18
- />
19
- </svg>
20
- </template>
21
-
22
- <style scoped lang="scss"></style>
1
+ <script setup lang="ts"></script>
2
+
3
+ <template>
4
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
5
+ <path
6
+ d="M9 22H15C20 22 22 20 22 15V9C22 4 20 2 15 2H9C4 2 2 4 2 9V15C2 20 4 22 9 22Z"
7
+ stroke="#3F8CFF"
8
+ stroke-width="1.5"
9
+ stroke-linecap="round"
10
+ stroke-linejoin="round"
11
+ />
12
+ <path
13
+ d="M10.7402 15.53L14.2602 12L10.7402 8.46997"
14
+ stroke="#3F8CFF"
15
+ stroke-width="1.5"
16
+ stroke-linecap="round"
17
+ stroke-linejoin="round"
18
+ />
19
+ </svg>
20
+ </template>
21
+
22
+ <style scoped lang="scss"></style>
@@ -1,30 +1,30 @@
1
- <script setup lang="ts"></script>
2
-
3
- <template>
4
- <svg xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none">
5
- <path
6
- d="M11.9328 16.1547C11.9328 16.663 11.5995 17.3297 11.1745 17.588L9.99948 18.3463C8.90781 19.0213 7.39114 18.263 7.39114 16.913V12.4547C7.39114 11.863 7.05781 11.1047 6.71615 10.688L3.51612 7.32131C3.09112 6.89631 2.75781 6.14632 2.75781 5.63799V3.70465C2.75781 2.69632 3.51616 1.93799 4.44116 1.93799H15.5578C16.4828 1.93799 17.2411 2.69631 17.2411 3.62131V5.47131C17.2411 6.14631 16.8161 6.98799 16.3995 7.40465"
7
- stroke="#A4B4CF"
8
- stroke-width="1.5"
9
- stroke-miterlimit="10"
10
- stroke-linecap="round"
11
- stroke-linejoin="round"
12
- />
13
- <path
14
- d="M13.3923 14.0301C14.865 14.0301 16.0589 12.8362 16.0589 11.3635C16.0589 9.89069 14.865 8.69678 13.3923 8.69678C11.9195 8.69678 10.7256 9.89069 10.7256 11.3635C10.7256 12.8362 11.9195 14.0301 13.3923 14.0301Z"
15
- stroke="#A4B4CF"
16
- stroke-width="1.5"
17
- stroke-linecap="round"
18
- stroke-linejoin="round"
19
- />
20
- <path
21
- d="M16.5589 14.5301L15.7256 13.6968"
22
- stroke="#A4B4CF"
23
- stroke-width="1.5"
24
- stroke-linecap="round"
25
- stroke-linejoin="round"
26
- />
27
- </svg>
28
- </template>
29
-
30
- <style scoped lang="scss"></style>
1
+ <script setup lang="ts"></script>
2
+
3
+ <template>
4
+ <svg xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none">
5
+ <path
6
+ d="M11.9328 16.1547C11.9328 16.663 11.5995 17.3297 11.1745 17.588L9.99948 18.3463C8.90781 19.0213 7.39114 18.263 7.39114 16.913V12.4547C7.39114 11.863 7.05781 11.1047 6.71615 10.688L3.51612 7.32131C3.09112 6.89631 2.75781 6.14632 2.75781 5.63799V3.70465C2.75781 2.69632 3.51616 1.93799 4.44116 1.93799H15.5578C16.4828 1.93799 17.2411 2.69631 17.2411 3.62131V5.47131C17.2411 6.14631 16.8161 6.98799 16.3995 7.40465"
7
+ stroke="#A4B4CF"
8
+ stroke-width="1.5"
9
+ stroke-miterlimit="10"
10
+ stroke-linecap="round"
11
+ stroke-linejoin="round"
12
+ />
13
+ <path
14
+ d="M13.3923 14.0301C14.865 14.0301 16.0589 12.8362 16.0589 11.3635C16.0589 9.89069 14.865 8.69678 13.3923 8.69678C11.9195 8.69678 10.7256 9.89069 10.7256 11.3635C10.7256 12.8362 11.9195 14.0301 13.3923 14.0301Z"
15
+ stroke="#A4B4CF"
16
+ stroke-width="1.5"
17
+ stroke-linecap="round"
18
+ stroke-linejoin="round"
19
+ />
20
+ <path
21
+ d="M16.5589 14.5301L15.7256 13.6968"
22
+ stroke="#A4B4CF"
23
+ stroke-width="1.5"
24
+ stroke-linecap="round"
25
+ stroke-linejoin="round"
26
+ />
27
+ </svg>
28
+ </template>
29
+
30
+ <style scoped lang="scss"></style>
@@ -1,12 +1,12 @@
1
- <template>
2
- <svg xmlns="http://www.w3.org/2000/svg" width="50" height="50" viewBox="0 0 60 60" fill="none">
3
- <path
4
- fill-rule="evenodd"
5
- clip-rule="evenodd"
6
- d="M35 2.5C38.9942 2.5 42.2592 5.6223 42.4873 9.55932L42.5 10V12.5H47.5H52.5C53.8807 12.5 55 13.6193 55 15C55 16.2821 54.0349 17.3388 52.7916 17.4832L52.5 17.5H50V50C50 53.9942 46.8777 57.2592 42.9407 57.4873L42.5 57.5H17.5C13.5058 57.5 10.2408 54.3777 10.0127 50.4407L10 50V17.5H7.5C6.11929 17.5 5 16.3807 5 15C5 13.7179 5.9651 12.6612 7.20845 12.5168L7.5 12.5H12.5H17.5V10C17.5 6.0058 20.6223 2.74085 24.5593 2.51273L25 2.5H35ZM15 17.5V50C15 51.2821 15.9651 52.3388 17.2084 52.4832L17.5 52.5H42.5C43.7821 52.5 44.8388 51.5349 44.9832 50.2916L45 50V17.5H40H20H15ZM37.5 12.5H22.5V10L22.5168 9.70845C22.6612 8.4651 23.7179 7.5 25 7.5H35L35.2916 7.51682C36.5349 7.66123 37.5 8.71791 37.5 10V12.5ZM25 25C26.2821 25 27.3388 25.9651 27.4832 27.2084L27.5 27.5V42.5C27.5 43.8807 26.3807 45 25 45C23.7179 45 22.6612 44.0349 22.5168 42.7916L22.5 42.5V27.5C22.5 26.1193 23.6193 25 25 25ZM37.4832 27.2084C37.3388 25.9651 36.2821 25 35 25C33.6193 25 32.5 26.1193 32.5 27.5V42.5L32.5168 42.7916C32.6612 44.0349 33.7179 45 35 45C36.3807 45 37.5 43.8807 37.5 42.5V27.5L37.4832 27.2084Z"
7
- fill="#F65160"
8
- />
9
- </svg>
10
- </template>
11
-
12
- <style scoped lang="scss"></style>
1
+ <template>
2
+ <svg xmlns="http://www.w3.org/2000/svg" width="50" height="50" viewBox="0 0 60 60" fill="none">
3
+ <path
4
+ fill-rule="evenodd"
5
+ clip-rule="evenodd"
6
+ d="M35 2.5C38.9942 2.5 42.2592 5.6223 42.4873 9.55932L42.5 10V12.5H47.5H52.5C53.8807 12.5 55 13.6193 55 15C55 16.2821 54.0349 17.3388 52.7916 17.4832L52.5 17.5H50V50C50 53.9942 46.8777 57.2592 42.9407 57.4873L42.5 57.5H17.5C13.5058 57.5 10.2408 54.3777 10.0127 50.4407L10 50V17.5H7.5C6.11929 17.5 5 16.3807 5 15C5 13.7179 5.9651 12.6612 7.20845 12.5168L7.5 12.5H12.5H17.5V10C17.5 6.0058 20.6223 2.74085 24.5593 2.51273L25 2.5H35ZM15 17.5V50C15 51.2821 15.9651 52.3388 17.2084 52.4832L17.5 52.5H42.5C43.7821 52.5 44.8388 51.5349 44.9832 50.2916L45 50V17.5H40H20H15ZM37.5 12.5H22.5V10L22.5168 9.70845C22.6612 8.4651 23.7179 7.5 25 7.5H35L35.2916 7.51682C36.5349 7.66123 37.5 8.71791 37.5 10V12.5ZM25 25C26.2821 25 27.3388 25.9651 27.4832 27.2084L27.5 27.5V42.5C27.5 43.8807 26.3807 45 25 45C23.7179 45 22.6612 44.0349 22.5168 42.7916L22.5 42.5V27.5C22.5 26.1193 23.6193 25 25 25ZM37.4832 27.2084C37.3388 25.9651 36.2821 25 35 25C33.6193 25 32.5 26.1193 32.5 27.5V42.5L32.5168 42.7916C32.6612 44.0349 33.7179 45 35 45C36.3807 45 37.5 43.8807 37.5 42.5V27.5L37.4832 27.2084Z"
7
+ fill="#F65160"
8
+ />
9
+ </svg>
10
+ </template>
11
+
12
+ <style scoped lang="scss"></style>
@@ -1,12 +1,12 @@
1
- <template>
2
- <svg width="60" height="60" viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg">
3
- <path
4
- fill-rule="evenodd"
5
- clip-rule="evenodd"
6
- d="M47.5 2.5H12.5C6.97715 2.5 2.5 6.97715 2.5 12.5V25C2.5 35.9165 9.14893 45.4216 22.0963 53.4484C26.938 56.45 33.062 56.45 37.9037 53.4484L38.8284 52.8657C51.1712 44.9576 57.5 35.6473 57.5 25V12.5C57.5 6.97715 53.0228 2.5 47.5 2.5ZM12.5 7.5H47.5C50.2614 7.5 52.5 9.73858 52.5 12.5V25C52.5 33.7331 47.1592 41.5899 36.1469 48.6456L35.2535 49.2085C32.0413 51.1999 27.9586 51.1999 24.7309 49.1988C13.1268 42.0048 7.5 33.9609 7.5 25V12.5C7.5 9.73858 9.73858 7.5 12.5 7.5ZM44.2833 15.7258C43.3072 14.7492 41.7243 14.7488 40.7477 15.7248L27.5 28.9625L21.7783 23.2302L21.543 23.0221C20.5629 22.2587 19.1448 22.3268 18.2428 23.2273C17.2657 24.2028 17.2643 25.7857 18.2398 26.7628L25.7308 34.2663L25.9662 34.4745C26.9467 35.2382 28.3655 35.1696 29.2673 34.2682L44.2823 19.2613L44.4904 19.0258C45.2532 18.0453 45.1842 16.6272 44.2833 15.7258Z"
7
- fill="#00D097"
8
- />
9
- </svg>
10
- </template>
11
-
12
- <style scoped lang="scss"></style>
1
+ <template>
2
+ <svg width="60" height="60" viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg">
3
+ <path
4
+ fill-rule="evenodd"
5
+ clip-rule="evenodd"
6
+ d="M47.5 2.5H12.5C6.97715 2.5 2.5 6.97715 2.5 12.5V25C2.5 35.9165 9.14893 45.4216 22.0963 53.4484C26.938 56.45 33.062 56.45 37.9037 53.4484L38.8284 52.8657C51.1712 44.9576 57.5 35.6473 57.5 25V12.5C57.5 6.97715 53.0228 2.5 47.5 2.5ZM12.5 7.5H47.5C50.2614 7.5 52.5 9.73858 52.5 12.5V25C52.5 33.7331 47.1592 41.5899 36.1469 48.6456L35.2535 49.2085C32.0413 51.1999 27.9586 51.1999 24.7309 49.1988C13.1268 42.0048 7.5 33.9609 7.5 25V12.5C7.5 9.73858 9.73858 7.5 12.5 7.5ZM44.2833 15.7258C43.3072 14.7492 41.7243 14.7488 40.7477 15.7248L27.5 28.9625L21.7783 23.2302L21.543 23.0221C20.5629 22.2587 19.1448 22.3268 18.2428 23.2273C17.2657 24.2028 17.2643 25.7857 18.2398 26.7628L25.7308 34.2663L25.9662 34.4745C26.9467 35.2382 28.3655 35.1696 29.2673 34.2682L44.2823 19.2613L44.4904 19.0258C45.2532 18.0453 45.1842 16.6272 44.2833 15.7258Z"
7
+ fill="#00D097"
8
+ />
9
+ </svg>
10
+ </template>
11
+
12
+ <style scoped lang="scss"></style>