shared-ritm 1.2.101 → 1.2.102

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 (31) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/shared-ritm.es.js +14 -13
  3. package/dist/shared-ritm.umd.js +6 -6
  4. package/dist/types/api/services/ComentsServise.d.ts +10 -0
  5. package/dist/types/api/services/PhotoService.d.ts +51 -38
  6. package/dist/types/api/services/SearchService.d.ts +2 -1
  7. package/dist/types/api/types/Api_Search.d.ts +9 -0
  8. package/dist/types/api/types/Api_Users.d.ts +43 -0
  9. package/package.json +64 -64
  10. package/src/api/services/EquipmentService.ts +29 -29
  11. package/src/api/services/InstrumentsService.ts +22 -22
  12. package/src/api/services/SearchService.ts +4 -1
  13. package/src/api/services/UserService.ts +101 -101
  14. package/src/api/services/VideoService.ts +62 -62
  15. package/src/api/settings/ApiService.ts +123 -123
  16. package/src/api/types/Api_Equipment.ts +3 -3
  17. package/src/api/types/Api_Instruments.ts +98 -98
  18. package/src/api/types/Api_Search.ts +10 -0
  19. package/src/api/types/Api_User.ts +117 -117
  20. package/src/api/types/Api_Video.ts +123 -123
  21. package/src/common/app-input-new/AppInputNew.vue +167 -167
  22. package/src/common/app-layout/components/AppLayoutHeader.vue +250 -250
  23. package/src/common/app-sheet/AppSheet.vue +1 -1
  24. package/src/common/app-sheet-new/AppSheetNew.vue +246 -246
  25. package/src/common/app-table/AppTable.vue +312 -312
  26. package/src/common/app-table/AppTableLayout.vue +137 -137
  27. package/src/common/app-table/components/ModalSelect.vue +270 -270
  28. package/src/common/app-table/components/TableModal.vue +356 -356
  29. package/src/common/app-table/controllers/useBaseTable.ts +45 -45
  30. package/src/index.ts +116 -116
  31. package/src/styles/variables.sass +12 -12
@@ -1,62 +1,62 @@
1
- import ApiService from '../settings/ApiService'
2
- import { ResponseApi } from '@/api/types/Api_Service'
3
- import {
4
- Api_Video_Source_Create,
5
- Api_Video_Source_Search,
6
- Api_Work_Zone,
7
- Api_Work_Zone_Search,
8
- } from '@/api/types/Api_Video'
9
-
10
- class VideoService extends ApiService {
11
- public async startVideoAnalytics(): Promise<boolean> {
12
- return await this.post('/statanly/start', null)
13
- }
14
-
15
- public reloadVideoAnalytics(ids: string[]): Promise<any> {
16
- return this.post('/horizon/video-source/reload', { video_source_ids: ids })
17
- }
18
-
19
- public async fetchWorkZones(params?: any): Promise<ResponseApi<Api_Work_Zone_Search[]>> {
20
- return await this.get('/search/work_zones', { params })
21
- }
22
-
23
- public async fetchWorkZone(id: string): Promise<ResponseApi<Api_Work_Zone>> {
24
- return await this.get(`/work_zone/get_work_zone/${id}`)
25
- }
26
-
27
- public async editWorkZone(id: string, body: { title: string }): Promise<{ data: Api_Work_Zone; status: number }> {
28
- return await this.put(`/admin/work-zones/${id}`, body)
29
- }
30
-
31
- public async deleteWorkZone(id: string): Promise<{ data: boolean; status: number }> {
32
- return await this.delete(`/admin/work-zones/${id}`)
33
- }
34
-
35
- public async fetchVideoSources(params?: any): Promise<ResponseApi<Api_Video_Source_Search[]>> {
36
- return await this.get('/search/video_sources', { params })
37
- }
38
-
39
- public async createVideoSource(
40
- body: Api_Video_Source_Create,
41
- ): Promise<{ data: Api_Video_Source_Search; status: number }> {
42
- return await this.post('horizon/video-source', body)
43
- }
44
-
45
- public async editVideoSource(
46
- id: string,
47
- body: Partial<Api_Video_Source_Create>,
48
- ): Promise<{ data: Api_Video_Source_Search; status: number }> {
49
- return await this.put(`/horizon/video-source/${id}`, body)
50
- }
51
-
52
- public async deleteVideoSource(id: string): Promise<void> {
53
- await this.delete(`/horizon/video-source/${id}`)
54
- }
55
- }
56
-
57
- let api: VideoService
58
-
59
- export default function useVideoService() {
60
- if (!api) api = new VideoService()
61
- return api
62
- }
1
+ import ApiService from '../settings/ApiService'
2
+ import { ResponseApi } from '@/api/types/Api_Service'
3
+ import {
4
+ Api_Video_Source_Create,
5
+ Api_Video_Source_Search,
6
+ Api_Work_Zone,
7
+ Api_Work_Zone_Search,
8
+ } from '@/api/types/Api_Video'
9
+
10
+ class VideoService extends ApiService {
11
+ public async startVideoAnalytics(): Promise<boolean> {
12
+ return await this.post('/statanly/start', null)
13
+ }
14
+
15
+ public reloadVideoAnalytics(ids: string[]): Promise<any> {
16
+ return this.post('/horizon/video-source/reload', { video_source_ids: ids })
17
+ }
18
+
19
+ public async fetchWorkZones(params?: any): Promise<ResponseApi<Api_Work_Zone_Search[]>> {
20
+ return await this.get('/search/work_zones', { params })
21
+ }
22
+
23
+ public async fetchWorkZone(id: string): Promise<ResponseApi<Api_Work_Zone>> {
24
+ return await this.get(`/work_zone/get_work_zone/${id}`)
25
+ }
26
+
27
+ public async editWorkZone(id: string, body: { title: string }): Promise<{ data: Api_Work_Zone; status: number }> {
28
+ return await this.put(`/admin/work-zones/${id}`, body)
29
+ }
30
+
31
+ public async deleteWorkZone(id: string): Promise<{ data: boolean; status: number }> {
32
+ return await this.delete(`/admin/work-zones/${id}`)
33
+ }
34
+
35
+ public async fetchVideoSources(params?: any): Promise<ResponseApi<Api_Video_Source_Search[]>> {
36
+ return await this.get('/search/video_sources', { params })
37
+ }
38
+
39
+ public async createVideoSource(
40
+ body: Api_Video_Source_Create,
41
+ ): Promise<{ data: Api_Video_Source_Search; status: number }> {
42
+ return await this.post('horizon/video-source', body)
43
+ }
44
+
45
+ public async editVideoSource(
46
+ id: string,
47
+ body: Partial<Api_Video_Source_Create>,
48
+ ): Promise<{ data: Api_Video_Source_Search; status: number }> {
49
+ return await this.put(`/horizon/video-source/${id}`, body)
50
+ }
51
+
52
+ public async deleteVideoSource(id: string): Promise<void> {
53
+ await this.delete(`/horizon/video-source/${id}`)
54
+ }
55
+ }
56
+
57
+ let api: VideoService
58
+
59
+ export default function useVideoService() {
60
+ if (!api) api = new VideoService()
61
+ return api
62
+ }
@@ -1,123 +1,123 @@
1
- import axios, { AxiosError, AxiosInstance, AxiosRequestConfig, AxiosResponse, InternalAxiosRequestConfig } from 'axios'
2
-
3
- export enum ApiServiceType {
4
- SERVICE_AUTH = 'SERVICE_AUTH',
5
- }
6
-
7
- export default class ApiService {
8
- private axiosInstance: AxiosInstance
9
-
10
- constructor() {
11
- this.axiosInstance = axios.create({
12
- baseURL: process.env.VUE_APP_BACKEND,
13
- headers: {
14
- 'Content-Type': 'application/json',
15
- Accept: 'application/json',
16
- },
17
- })
18
-
19
- this.axiosInstance.interceptors.request.use(
20
- (config: InternalAxiosRequestConfig) => {
21
- const token = this.getToken()
22
- if (token && config.headers) {
23
- config.headers.Authorization = `Bearer ${token}`
24
- }
25
- return config
26
- },
27
- (error: AxiosError) => {
28
- return Promise.reject(error)
29
- },
30
- )
31
-
32
- this.axiosInstance.interceptors.response.use(
33
- (response: AxiosResponse) => {
34
- return response.data
35
- },
36
- (error: AxiosError) => {
37
- if (error.response?.status === 401 || error.response?.status === 403) {
38
- this.logout()
39
- }
40
- return Promise.reject(error)
41
- },
42
- )
43
- }
44
-
45
- private getToken() {
46
- return localStorage.getItem('token')
47
- }
48
-
49
- private removeToken() {
50
- localStorage.removeItem('token')
51
- }
52
-
53
- public logout(): void {
54
- this.removeToken()
55
- window.location.href = '/sign-in'
56
- }
57
-
58
- private handleError(error: AxiosError): void {
59
- if (error.response) {
60
- console.error('API Error:', error.response.status, error.response.data)
61
- } else if (error.request) {
62
- console.error('No response received:', error.request)
63
- } else {
64
- console.error('Error during request setup:', error.message)
65
- }
66
- }
67
-
68
- protected async get<T>(url: string, options?: AxiosRequestConfig) {
69
- try {
70
- const response: AxiosResponse<T> = await this.axiosInstance.get<T>(url, options)
71
- if (response?.data === false) return false as unknown as T
72
- return response?.data ?? (response as unknown as T)
73
- } catch (error) {
74
- const axiosError = error as AxiosError
75
- this.handleError(axiosError)
76
- throw error
77
- }
78
- }
79
-
80
- protected async delete<T>(url: string, options?: AxiosRequestConfig) {
81
- try {
82
- return await this.axiosInstance.delete<T>(url, options)
83
- } catch (error) {
84
- const axiosError = error as AxiosError
85
- this.handleError(axiosError)
86
- throw error
87
- }
88
- }
89
-
90
- protected async post<T1, T2>(url: string, payload: T1, options?: AxiosRequestConfig) {
91
- try {
92
- const response: AxiosResponse<T2> = await this.axiosInstance.post<T1, AxiosResponse<T2>>(url, payload, options)
93
- if (response?.data === false) return false
94
- return response?.data || (response as any)
95
- } catch (error) {
96
- const axiosError = error as AxiosError
97
- this.handleError(axiosError)
98
- throw error
99
- }
100
- }
101
-
102
- protected async patch<T1, T2>(url: string, payload: T1, options?: AxiosRequestConfig): Promise<T2> {
103
- try {
104
- const response: AxiosResponse<T2> = await this.axiosInstance.patch<T1, AxiosResponse<T2>>(url, payload, options)
105
- return response.data
106
- } catch (error) {
107
- const axiosError = error as AxiosError
108
- this.handleError(axiosError)
109
- throw error
110
- }
111
- }
112
-
113
- protected async put<T1, T2>(url: string, payload: T1, options?: AxiosRequestConfig) {
114
- try {
115
- const response: AxiosResponse<T2> = await this.axiosInstance.put<T1, AxiosResponse<T2>>(url, payload, options)
116
- return response.data
117
- } catch (error) {
118
- const axiosError = error as AxiosError
119
- this.handleError(axiosError)
120
- throw error
121
- }
122
- }
123
- }
1
+ import axios, { AxiosError, AxiosInstance, AxiosRequestConfig, AxiosResponse, InternalAxiosRequestConfig } from 'axios'
2
+
3
+ export enum ApiServiceType {
4
+ SERVICE_AUTH = 'SERVICE_AUTH',
5
+ }
6
+
7
+ export default class ApiService {
8
+ private axiosInstance: AxiosInstance
9
+
10
+ constructor() {
11
+ this.axiosInstance = axios.create({
12
+ baseURL: process.env.VUE_APP_BACKEND,
13
+ headers: {
14
+ 'Content-Type': 'application/json',
15
+ Accept: 'application/json',
16
+ },
17
+ })
18
+
19
+ this.axiosInstance.interceptors.request.use(
20
+ (config: InternalAxiosRequestConfig) => {
21
+ const token = this.getToken()
22
+ if (token && config.headers) {
23
+ config.headers.Authorization = `Bearer ${token}`
24
+ }
25
+ return config
26
+ },
27
+ (error: AxiosError) => {
28
+ return Promise.reject(error)
29
+ },
30
+ )
31
+
32
+ this.axiosInstance.interceptors.response.use(
33
+ (response: AxiosResponse) => {
34
+ return response.data
35
+ },
36
+ (error: AxiosError) => {
37
+ if (error.response?.status === 401 || error.response?.status === 403) {
38
+ this.logout()
39
+ }
40
+ return Promise.reject(error)
41
+ },
42
+ )
43
+ }
44
+
45
+ private getToken() {
46
+ return localStorage.getItem('token')
47
+ }
48
+
49
+ private removeToken() {
50
+ localStorage.removeItem('token')
51
+ }
52
+
53
+ public logout(): void {
54
+ this.removeToken()
55
+ window.location.href = '/sign-in'
56
+ }
57
+
58
+ private handleError(error: AxiosError): void {
59
+ if (error.response) {
60
+ console.error('API Error:', error.response.status, error.response.data)
61
+ } else if (error.request) {
62
+ console.error('No response received:', error.request)
63
+ } else {
64
+ console.error('Error during request setup:', error.message)
65
+ }
66
+ }
67
+
68
+ protected async get<T>(url: string, options?: AxiosRequestConfig) {
69
+ try {
70
+ const response: AxiosResponse<T> = await this.axiosInstance.get<T>(url, options)
71
+ if (response?.data === false) return false as unknown as T
72
+ return response?.data ?? (response as unknown as T)
73
+ } catch (error) {
74
+ const axiosError = error as AxiosError
75
+ this.handleError(axiosError)
76
+ throw error
77
+ }
78
+ }
79
+
80
+ protected async delete<T>(url: string, options?: AxiosRequestConfig) {
81
+ try {
82
+ return await this.axiosInstance.delete<T>(url, options)
83
+ } catch (error) {
84
+ const axiosError = error as AxiosError
85
+ this.handleError(axiosError)
86
+ throw error
87
+ }
88
+ }
89
+
90
+ protected async post<T1, T2>(url: string, payload: T1, options?: AxiosRequestConfig) {
91
+ try {
92
+ const response: AxiosResponse<T2> = await this.axiosInstance.post<T1, AxiosResponse<T2>>(url, payload, options)
93
+ if (response?.data === false) return false
94
+ return response?.data || (response as any)
95
+ } catch (error) {
96
+ const axiosError = error as AxiosError
97
+ this.handleError(axiosError)
98
+ throw error
99
+ }
100
+ }
101
+
102
+ protected async patch<T1, T2>(url: string, payload: T1, options?: AxiosRequestConfig): Promise<T2> {
103
+ try {
104
+ const response: AxiosResponse<T2> = await this.axiosInstance.patch<T1, AxiosResponse<T2>>(url, payload, options)
105
+ return response.data
106
+ } catch (error) {
107
+ const axiosError = error as AxiosError
108
+ this.handleError(axiosError)
109
+ throw error
110
+ }
111
+ }
112
+
113
+ protected async put<T1, T2>(url: string, payload: T1, options?: AxiosRequestConfig) {
114
+ try {
115
+ const response: AxiosResponse<T2> = await this.axiosInstance.put<T1, AxiosResponse<T2>>(url, payload, options)
116
+ return response.data
117
+ } catch (error) {
118
+ const axiosError = error as AxiosError
119
+ this.handleError(axiosError)
120
+ throw error
121
+ }
122
+ }
123
+ }
@@ -1,3 +1,3 @@
1
- import { Api_Equipment_Full_Dto } from '@/api/types/Api_Repairs'
2
-
3
- export type Api_Equipment_Create = Omit<Api_Equipment_Full_Dto, 'id'>
1
+ import { Api_Equipment_Full_Dto } from '@/api/types/Api_Repairs'
2
+
3
+ export type Api_Equipment_Create = Omit<Api_Equipment_Full_Dto, 'id'>
@@ -1,98 +1,98 @@
1
- import { Api_User } from '../types/Api_User'
2
-
3
- export type Api_Instrument_Storage = {
4
- id: string
5
- created_at: string
6
- deleted_at: string | null
7
- updated_at: string
8
- description: string
9
- name: string
10
- title: string
11
- parent: unknown | null
12
- parents: unknown[]
13
- state_id: unknown | null
14
- }
15
-
16
- export type Api_Instrument_Type = {
17
- id: string
18
- name: string
19
- created_at: string
20
- updated_at: string
21
- deleted_at: string | null
22
- icon: string
23
- storage_id: string
24
- storage: Api_Instrument_Storage
25
- }
26
-
27
- export type Api_Instrument_Location = {
28
- id: string
29
- name: string
30
- title: string
31
- description: string
32
- created_at: string
33
- updated_at: string
34
- deleted_at: string | null
35
- state_id: unknown | null
36
- }
37
-
38
- export type Api_Instrument_Status = {
39
- id: string
40
- description: string
41
- name: string
42
- title: string
43
- created_at: string
44
- updated_at: string
45
- deleted_at: string | null
46
- }
47
-
48
- export type Api_Instrument = {
49
- id: string
50
- RFID: string | null
51
- instrument_id: string
52
- arrival_at: string
53
- created_at: string
54
- supply_at: string
55
- updated_at: string
56
- deleted_at: string | null
57
- inventory_number: string
58
- instrument_type: Api_Instrument_Type
59
- invoice_ref_key: string
60
- last_status_updated_at: string
61
- location_id: string
62
- location: Api_Instrument_Location
63
- misplacement: boolean
64
- module: string | null
65
- module_id: string | null
66
- name: string
67
- pressure: unknown | null
68
- registry_module_id: string
69
- responsible_id: string
70
- responsible: Api_User
71
- status: Api_Instrument_Status
72
- status_id: string
73
- storage: Api_Instrument_Storage
74
- supervisor: unknown | null
75
- supervisor_id: string
76
- type: unknown | null
77
- weight: unknown | null
78
- }
79
-
80
- export type Api_instruments_HistoryResponse = {
81
- data: Api_Instrument[]
82
- from: number
83
- to: number
84
- total: number
85
- per_page: number
86
- current_page: number
87
- total_pages: number
88
- last_page_url: string
89
- first_page_url: string
90
- next_page_url: string | null
91
- prev_page_url: string | null
92
- path: string
93
- links: {
94
- label: string
95
- url: string
96
- active: boolean
97
- }[]
98
- }
1
+ import { Api_User } from '../types/Api_User'
2
+
3
+ export type Api_Instrument_Storage = {
4
+ id: string
5
+ created_at: string
6
+ deleted_at: string | null
7
+ updated_at: string
8
+ description: string
9
+ name: string
10
+ title: string
11
+ parent: unknown | null
12
+ parents: unknown[]
13
+ state_id: unknown | null
14
+ }
15
+
16
+ export type Api_Instrument_Type = {
17
+ id: string
18
+ name: string
19
+ created_at: string
20
+ updated_at: string
21
+ deleted_at: string | null
22
+ icon: string
23
+ storage_id: string
24
+ storage: Api_Instrument_Storage
25
+ }
26
+
27
+ export type Api_Instrument_Location = {
28
+ id: string
29
+ name: string
30
+ title: string
31
+ description: string
32
+ created_at: string
33
+ updated_at: string
34
+ deleted_at: string | null
35
+ state_id: unknown | null
36
+ }
37
+
38
+ export type Api_Instrument_Status = {
39
+ id: string
40
+ description: string
41
+ name: string
42
+ title: string
43
+ created_at: string
44
+ updated_at: string
45
+ deleted_at: string | null
46
+ }
47
+
48
+ export type Api_Instrument = {
49
+ id: string
50
+ RFID: string | null
51
+ instrument_id: string
52
+ arrival_at: string
53
+ created_at: string
54
+ supply_at: string
55
+ updated_at: string
56
+ deleted_at: string | null
57
+ inventory_number: string
58
+ instrument_type: Api_Instrument_Type
59
+ invoice_ref_key: string
60
+ last_status_updated_at: string
61
+ location_id: string
62
+ location: Api_Instrument_Location
63
+ misplacement: boolean
64
+ module: string | null
65
+ module_id: string | null
66
+ name: string
67
+ pressure: unknown | null
68
+ registry_module_id: string
69
+ responsible_id: string
70
+ responsible: Api_User
71
+ status: Api_Instrument_Status
72
+ status_id: string
73
+ storage: Api_Instrument_Storage
74
+ supervisor: unknown | null
75
+ supervisor_id: string
76
+ type: unknown | null
77
+ weight: unknown | null
78
+ }
79
+
80
+ export type Api_instruments_HistoryResponse = {
81
+ data: Api_Instrument[]
82
+ from: number
83
+ to: number
84
+ total: number
85
+ per_page: number
86
+ current_page: number
87
+ total_pages: number
88
+ last_page_url: string
89
+ first_page_url: string
90
+ next_page_url: string | null
91
+ prev_page_url: string | null
92
+ path: string
93
+ links: {
94
+ label: string
95
+ url: string
96
+ active: boolean
97
+ }[]
98
+ }
@@ -46,3 +46,13 @@ export type Api_Search_User = {
46
46
  teams: Api_Search_User_Teams[]
47
47
  photos: Api_Search_User_Photos[]
48
48
  }
49
+
50
+ export type Api_Search_Instruments = {
51
+ id: string
52
+ full_name: string
53
+ last_name: string
54
+ first_name: string
55
+ patronymic: string
56
+ divisions: string
57
+ personnel_number: string
58
+ }