shared-ritm 1.3.36 → 1.3.38

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 (86) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/shared-ritm.es.js +9088 -8988
  3. package/dist/shared-ritm.umd.js +342 -342
  4. package/dist/types/api/services/PhotoService.d.ts +38 -51
  5. package/dist/types/api/services/RepairsService.d.ts +1 -1
  6. package/dist/types/api/services/VideoService.d.ts +2 -1
  7. package/dist/types/api/settings/ApiService.d.ts +1 -1
  8. package/dist/types/api/types/Api_Tasks.d.ts +1 -0
  9. package/dist/types/api/types/Api_Video.d.ts +5 -4
  10. package/dist/types/common/app-button/Button.stories.d.ts +13 -0
  11. package/dist/types/common/app-checkbox/Checkbox.stories.d.ts +8 -0
  12. package/dist/types/common/app-date-picker/DatePicker.stories.d.ts +7 -0
  13. package/dist/types/common/app-datepicker/Datepicker.stories.d.ts +10 -0
  14. package/dist/types/common/app-dialogs/Confirm.stories.d.ts +8 -0
  15. package/dist/types/common/app-dropdown/Dropdown.stories.d.ts +8 -0
  16. package/dist/types/common/app-file/File.stories.d.ts +8 -0
  17. package/dist/types/common/app-icon/Icon.stories.d.ts +7 -0
  18. package/dist/types/common/app-input/Input.stories.d.ts +9 -0
  19. package/dist/types/common/app-input-new/InputNew.stories.d.ts +12 -0
  20. package/dist/types/common/app-input-search/InputSearch.stories.d.ts +8 -0
  21. package/dist/types/common/app-loader/Loader.stories.d.ts +8 -0
  22. package/dist/types/common/app-select/Select.stories.d.ts +7 -0
  23. package/dist/types/common/app-table/components/ModalSelect.stories.d.ts +10 -0
  24. package/dist/types/common/app-toggle/Toggle.stories.d.ts +8 -0
  25. package/dist/types/configs/storybook.d.ts +1 -0
  26. package/dist/types/stories/Button.stories.d.ts +13 -0
  27. package/dist/types/stories/Checkbox.stories.d.ts +7 -0
  28. package/dist/types/stories/Confirm.stories.d.ts +8 -0
  29. package/dist/types/stories/DatePicker.stories.d.ts +8 -0
  30. package/dist/types/stories/Dropdown.stories.d.ts +8 -0
  31. package/dist/types/stories/File.stories.d.ts +8 -0
  32. package/dist/types/stories/Icon.stories.d.ts +7 -0
  33. package/dist/types/stories/Input.stories.d.ts +11 -0
  34. package/dist/types/stories/InputNew.stories.d.ts +12 -0
  35. package/dist/types/stories/InputSearch.stories.d.ts +10 -0
  36. package/dist/types/stories/Loader.stories.d.ts +8 -0
  37. package/dist/types/stories/Select.stories.d.ts +7 -0
  38. package/dist/types/stories/Toggle.stories.d.ts +8 -0
  39. package/package.json +64 -64
  40. package/src/App.vue +2461 -2461
  41. package/src/api/services/BrigadesService.ts +32 -32
  42. package/src/api/services/ControlsService.ts +96 -96
  43. package/src/api/services/EquipmentService.ts +29 -29
  44. package/src/api/services/InstrumentsService.ts +68 -68
  45. package/src/api/services/MetricsService.ts +123 -123
  46. package/src/api/services/ModulesService.ts +27 -27
  47. package/src/api/services/ProjectsService.ts +83 -83
  48. package/src/api/services/RepairsService.ts +111 -111
  49. package/src/api/services/ScheduleService.ts +69 -69
  50. package/src/api/services/SearchService.ts +22 -22
  51. package/src/api/services/UserService.ts +123 -123
  52. package/src/api/services/VideoService.ts +118 -113
  53. package/src/api/settings/ApiService.ts +124 -124
  54. package/src/api/types/Api_Auth.ts +105 -105
  55. package/src/api/types/Api_Brigades.ts +36 -36
  56. package/src/api/types/Api_Controls.ts +111 -111
  57. package/src/api/types/Api_Equipment.ts +3 -3
  58. package/src/api/types/Api_Instruments.ts +156 -156
  59. package/src/api/types/Api_Metrics.ts +5 -5
  60. package/src/api/types/Api_Modules.ts +21 -21
  61. package/src/api/types/Api_Projects.ts +62 -62
  62. package/src/api/types/Api_Repairs.ts +186 -186
  63. package/src/api/types/Api_Schedule.ts +64 -64
  64. package/src/api/types/Api_Search.ts +80 -80
  65. package/src/api/types/Api_Tasks.ts +1 -0
  66. package/src/api/types/Api_User.ts +146 -146
  67. package/src/api/types/Api_Video.ts +244 -241
  68. package/src/common/app-datepicker/AppDatepicker.vue +218 -218
  69. package/src/common/app-dropdown/AppDropdown.vue +37 -37
  70. package/src/common/app-input-new/AppInputNew.vue +179 -179
  71. package/src/common/app-layout/AppLayout.vue +84 -84
  72. package/src/common/app-modal/index.vue +96 -96
  73. package/src/common/app-sheet-new/AppSheetNew.vue +244 -244
  74. package/src/common/app-sidebar/AppSidebar.vue +174 -174
  75. package/src/common/app-sidebar/components/SidebarMenuItem.vue +149 -149
  76. package/src/common/app-table/AppTable.vue +313 -313
  77. package/src/common/app-table/AppTableLayout.vue +137 -137
  78. package/src/common/app-table/components/ModalSelect.vue +302 -298
  79. package/src/common/app-table/controllers/useBaseTable.ts +45 -45
  80. package/src/common/app-table/controllers/useTableModel.ts +102 -102
  81. package/src/icons/dialogs/SafetyIcon.vue +12 -12
  82. package/src/index.ts +131 -131
  83. package/src/styles/variables.sass +12 -12
  84. package/src/utils/files.ts +19 -19
  85. package/dist/types/api/services/ComentsServise.d.ts +0 -10
  86. package/dist/types/api/types/Api_Users.d.ts +0 -43
@@ -1,32 +1,32 @@
1
- import ApiService from '../settings/ApiService'
2
- import { Api_Brigade, Api_Brigade_Create, Api_Brigade_Search } from '../types/Api_Brigades'
3
- import { ResponseApi } from '../types/Api_Service'
4
-
5
- class BrigadesService extends ApiService {
6
- public fetchBrigades(params: any): Promise<ResponseApi<Api_Brigade_Search[]>> {
7
- return this.get<ResponseApi<Api_Brigade_Search[]>>('/search/brigades', { params })
8
- }
9
-
10
- public editBrigade({ id, model }: { id: string; model: Partial<Api_Brigade_Create> }): Promise<Api_Brigade> {
11
- return this.put<Partial<Api_Brigade_Create>, Api_Brigade>(`/brigades/${id}`, model)
12
- }
13
-
14
- public getBrigade(id: string): Promise<Api_Brigade> {
15
- return this.get<Api_Brigade>(`/brigades/${id}`)
16
- }
17
-
18
- public createBrigade(model: Api_Brigade_Create): Promise<Api_Brigade> {
19
- return this.post<Api_Brigade_Create, Api_Brigade>('/brigades', model)
20
- }
21
-
22
- public deleteBrigade(id: string): Promise<{ data: boolean; status: number }> {
23
- return this.delete(`/brigades/${id}`)
24
- }
25
- }
26
-
27
- let api: BrigadesService
28
-
29
- export default function useBrigadesService() {
30
- if (!api) api = new BrigadesService()
31
- return api
32
- }
1
+ import ApiService from '../settings/ApiService'
2
+ import { Api_Brigade, Api_Brigade_Create, Api_Brigade_Search } from '../types/Api_Brigades'
3
+ import { ResponseApi } from '../types/Api_Service'
4
+
5
+ class BrigadesService extends ApiService {
6
+ public fetchBrigades(params: any): Promise<ResponseApi<Api_Brigade_Search[]>> {
7
+ return this.get<ResponseApi<Api_Brigade_Search[]>>('/search/brigades', { params })
8
+ }
9
+
10
+ public editBrigade({ id, model }: { id: string; model: Partial<Api_Brigade_Create> }): Promise<Api_Brigade> {
11
+ return this.put<Partial<Api_Brigade_Create>, Api_Brigade>(`/brigades/${id}`, model)
12
+ }
13
+
14
+ public getBrigade(id: string): Promise<Api_Brigade> {
15
+ return this.get<Api_Brigade>(`/brigades/${id}`)
16
+ }
17
+
18
+ public createBrigade(model: Api_Brigade_Create): Promise<Api_Brigade> {
19
+ return this.post<Api_Brigade_Create, Api_Brigade>('/brigades', model)
20
+ }
21
+
22
+ public deleteBrigade(id: string): Promise<{ data: boolean; status: number }> {
23
+ return this.delete(`/brigades/${id}`)
24
+ }
25
+ }
26
+
27
+ let api: BrigadesService
28
+
29
+ export default function useBrigadesService() {
30
+ if (!api) api = new BrigadesService()
31
+ return api
32
+ }
@@ -1,96 +1,96 @@
1
- import ApiService from '../settings/ApiService'
2
-
3
- import {
4
- Api_ControlLogs_Dto,
5
- Api_ControlZones_Dto,
6
- Api_Instrument_Category,
7
- Api_instrument_Type,
8
- Api_instrument_Type_Create,
9
- Api_Instrument_Type_Search,
10
- } from '../types/Api_Controls'
11
- import { ResponseApi } from '../types/Api_Service'
12
-
13
- class ControlsService extends ApiService {
14
- public fetchControlZones(params: Record<string, any>): Promise<ResponseApi<Api_ControlZones_Dto[]>> {
15
- return this.get('/frame/list', { params })
16
- }
17
-
18
- public async fetchControlZone(id: string): Promise<ResponseApi<Api_ControlZones_Dto>> {
19
- return this.get(`/frame/${id}`)
20
- }
21
-
22
- public createControlZone(params: any): Promise<ResponseApi<any>> {
23
- return this.post<any, ResponseApi<any>>('/frame', params)
24
- }
25
-
26
- public editControlZone(id: string, params: any): Promise<ResponseApi<any>> {
27
- return this.put<any, ResponseApi<any>>(`/frame/${id}`, params)
28
- }
29
-
30
- public deleteControlZone(id: string): Promise<any> {
31
- return this.delete<ResponseApi<any>>(`/frame/${id}`)
32
- }
33
-
34
- public fetchControlLogs(params: Record<string, any>): Promise<ResponseApi<Api_ControlLogs_Dto[]>> {
35
- return this.get('/exposed_equipment_zones/list_for_controller', { params })
36
- }
37
-
38
- public fetchControllers(params?: Record<string, any>): Promise<ResponseApi<Api_ControlLogs_Dto[]>> {
39
- return this.get('/frame/controllers/list', { params })
40
- }
41
-
42
- public fetchUsersWithPasses(): Promise<any> {
43
- return this.get('inspector/users-with-passes')
44
- }
45
-
46
- public fetchWarehousesList(): Promise<any> {
47
- return this.get('tasks/warehouse/list?only_outside_exposed_equipment_zone=1')
48
- }
49
-
50
- public manualEntry(params: any): Promise<ResponseApi<any>> {
51
- return this.post<any, ResponseApi<any>>('exposed_equipment_zones/hand/enter', params)
52
- }
53
-
54
- public manualExit(params: any): Promise<ResponseApi<any>> {
55
- return this.post<any, ResponseApi<any>>('exposed_equipment_zones/hand/exit', params)
56
- }
57
-
58
- public deleteControlLogs(params: any): Promise<any> {
59
- return this.delete<ResponseApi<any>>(`exposed_equipment_zones`, params)
60
- }
61
-
62
- public fetchInstrumentTypeList(params: any): Promise<ResponseApi<Api_Instrument_Type_Search[]>> {
63
- return this.get<ResponseApi<Api_Instrument_Type_Search[]>>('search/instrument_types', { params })
64
- }
65
-
66
- public fetchInstrumentCategoryList(params: { search?: string } = {}): Promise<Api_Instrument_Category[]> {
67
- return this.get<Api_Instrument_Category[]>('instrument_category/list', { params })
68
- }
69
-
70
- public createInstrumentType(body: Api_instrument_Type_Create): Promise<Api_instrument_Type> {
71
- return this.post<Api_instrument_Type_Create, Api_instrument_Type>('admin/instruments', body)
72
- }
73
-
74
- public editInstrumentType(id: string, body: Partial<Api_instrument_Type_Create>): Promise<Api_instrument_Type> {
75
- return this.put<Partial<Api_instrument_Type_Create>, Api_instrument_Type>(`admin/instruments/${id}`, body)
76
- }
77
-
78
- public deleteInstrumentType(id: string): Promise<any> {
79
- return this.delete<ResponseApi<any>>(`admin/instruments/${id}`)
80
- }
81
-
82
- public fetchRpdzLogList(params: Record<string, any>): Promise<ResponseApi<Api_ControlLogs_Dto[]>> {
83
- return this.get('exposed_equipment_zones_history/list', { params })
84
- }
85
-
86
- public exportRpdzLogList(params: Record<string, any>): Promise<Blob> {
87
- return this.get('exposed_equipment_zones_history/list/export', { params, responseType: 'blob' })
88
- }
89
- }
90
-
91
- let api: ControlsService
92
-
93
- export default function useControlsService() {
94
- if (!api) api = new ControlsService()
95
- return api
96
- }
1
+ import ApiService from '../settings/ApiService'
2
+
3
+ import {
4
+ Api_ControlLogs_Dto,
5
+ Api_ControlZones_Dto,
6
+ Api_Instrument_Category,
7
+ Api_instrument_Type,
8
+ Api_instrument_Type_Create,
9
+ Api_Instrument_Type_Search,
10
+ } from '../types/Api_Controls'
11
+ import { ResponseApi } from '../types/Api_Service'
12
+
13
+ class ControlsService extends ApiService {
14
+ public fetchControlZones(params: Record<string, any>): Promise<ResponseApi<Api_ControlZones_Dto[]>> {
15
+ return this.get('/frame/list', { params })
16
+ }
17
+
18
+ public async fetchControlZone(id: string): Promise<ResponseApi<Api_ControlZones_Dto>> {
19
+ return this.get(`/frame/${id}`)
20
+ }
21
+
22
+ public createControlZone(params: any): Promise<ResponseApi<any>> {
23
+ return this.post<any, ResponseApi<any>>('/frame', params)
24
+ }
25
+
26
+ public editControlZone(id: string, params: any): Promise<ResponseApi<any>> {
27
+ return this.put<any, ResponseApi<any>>(`/frame/${id}`, params)
28
+ }
29
+
30
+ public deleteControlZone(id: string): Promise<any> {
31
+ return this.delete<ResponseApi<any>>(`/frame/${id}`)
32
+ }
33
+
34
+ public fetchControlLogs(params: Record<string, any>): Promise<ResponseApi<Api_ControlLogs_Dto[]>> {
35
+ return this.get('/exposed_equipment_zones/list_for_controller', { params })
36
+ }
37
+
38
+ public fetchControllers(params?: Record<string, any>): Promise<ResponseApi<Api_ControlLogs_Dto[]>> {
39
+ return this.get('/frame/controllers/list', { params })
40
+ }
41
+
42
+ public fetchUsersWithPasses(): Promise<any> {
43
+ return this.get('inspector/users-with-passes')
44
+ }
45
+
46
+ public fetchWarehousesList(): Promise<any> {
47
+ return this.get('tasks/warehouse/list?only_outside_exposed_equipment_zone=1')
48
+ }
49
+
50
+ public manualEntry(params: any): Promise<ResponseApi<any>> {
51
+ return this.post<any, ResponseApi<any>>('exposed_equipment_zones/hand/enter', params)
52
+ }
53
+
54
+ public manualExit(params: any): Promise<ResponseApi<any>> {
55
+ return this.post<any, ResponseApi<any>>('exposed_equipment_zones/hand/exit', params)
56
+ }
57
+
58
+ public deleteControlLogs(params: any): Promise<any> {
59
+ return this.delete<ResponseApi<any>>(`exposed_equipment_zones`, params)
60
+ }
61
+
62
+ public fetchInstrumentTypeList(params: any): Promise<ResponseApi<Api_Instrument_Type_Search[]>> {
63
+ return this.get<ResponseApi<Api_Instrument_Type_Search[]>>('search/instrument_types', { params })
64
+ }
65
+
66
+ public fetchInstrumentCategoryList(params: { search?: string } = {}): Promise<Api_Instrument_Category[]> {
67
+ return this.get<Api_Instrument_Category[]>('instrument_category/list', { params })
68
+ }
69
+
70
+ public createInstrumentType(body: Api_instrument_Type_Create): Promise<Api_instrument_Type> {
71
+ return this.post<Api_instrument_Type_Create, Api_instrument_Type>('admin/instruments', body)
72
+ }
73
+
74
+ public editInstrumentType(id: string, body: Partial<Api_instrument_Type_Create>): Promise<Api_instrument_Type> {
75
+ return this.put<Partial<Api_instrument_Type_Create>, Api_instrument_Type>(`admin/instruments/${id}`, body)
76
+ }
77
+
78
+ public deleteInstrumentType(id: string): Promise<any> {
79
+ return this.delete<ResponseApi<any>>(`admin/instruments/${id}`)
80
+ }
81
+
82
+ public fetchRpdzLogList(params: Record<string, any>): Promise<ResponseApi<Api_ControlLogs_Dto[]>> {
83
+ return this.get('exposed_equipment_zones_history/list', { params })
84
+ }
85
+
86
+ public exportRpdzLogList(params: Record<string, any>): Promise<Blob> {
87
+ return this.get('exposed_equipment_zones_history/list/export', { params, responseType: 'blob' })
88
+ }
89
+ }
90
+
91
+ let api: ControlsService
92
+
93
+ export default function useControlsService() {
94
+ if (!api) api = new ControlsService()
95
+ return api
96
+ }
@@ -1,29 +1,29 @@
1
- import ApiService from '../settings/ApiService'
2
- import { ResponseApi } from '../types/Api_Service'
3
- import { Api_Equipment_Full_Dto } from '@/api/types/Api_Repairs'
4
- import { Api_Equipment_Create } from '@/api/types/Api_Equipment'
5
-
6
- class EquipmentService extends ApiService {
7
- public fetchEquipment(params?: any): Promise<ResponseApi<Api_Equipment_Full_Dto[]>> {
8
- return this.get<ResponseApi<Api_Equipment_Full_Dto[]>>('repairs/equipment/list', { params })
9
- }
10
-
11
- public createEquipment(body: Api_Equipment_Create): Promise<Api_Equipment_Full_Dto> {
12
- return this.post<Api_Equipment_Create, Api_Equipment_Full_Dto>('repairs/equipment', body)
13
- }
14
-
15
- public editEquipment(id: string, body: Partial<Api_Equipment_Create>): Promise<Api_Equipment_Full_Dto> {
16
- return this.put<Partial<Api_Equipment_Create>, Api_Equipment_Full_Dto>(`repairs/equipment/${id}`, body)
17
- }
18
-
19
- public deleteEquipment(id: string): Promise<{ data: boolean; status: number }> {
20
- return this.delete(`repairs/equipment/${id}`)
21
- }
22
- }
23
-
24
- let api: EquipmentService
25
-
26
- export default function useEquipmentService() {
27
- if (!api) api = new EquipmentService()
28
- return api
29
- }
1
+ import ApiService from '../settings/ApiService'
2
+ import { ResponseApi } from '../types/Api_Service'
3
+ import { Api_Equipment_Full_Dto } from '@/api/types/Api_Repairs'
4
+ import { Api_Equipment_Create } from '@/api/types/Api_Equipment'
5
+
6
+ class EquipmentService extends ApiService {
7
+ public fetchEquipment(params?: any): Promise<ResponseApi<Api_Equipment_Full_Dto[]>> {
8
+ return this.get<ResponseApi<Api_Equipment_Full_Dto[]>>('repairs/equipment/list', { params })
9
+ }
10
+
11
+ public createEquipment(body: Api_Equipment_Create): Promise<Api_Equipment_Full_Dto> {
12
+ return this.post<Api_Equipment_Create, Api_Equipment_Full_Dto>('repairs/equipment', body)
13
+ }
14
+
15
+ public editEquipment(id: string, body: Partial<Api_Equipment_Create>): Promise<Api_Equipment_Full_Dto> {
16
+ return this.put<Partial<Api_Equipment_Create>, Api_Equipment_Full_Dto>(`repairs/equipment/${id}`, body)
17
+ }
18
+
19
+ public deleteEquipment(id: string): Promise<{ data: boolean; status: number }> {
20
+ return this.delete(`repairs/equipment/${id}`)
21
+ }
22
+ }
23
+
24
+ let api: EquipmentService
25
+
26
+ export default function useEquipmentService() {
27
+ if (!api) api = new EquipmentService()
28
+ return api
29
+ }
@@ -1,68 +1,68 @@
1
- import ApiService from '../settings/ApiService'
2
- import {
3
- Api_Instrument,
4
- Api_instruments_HistoryResponse,
5
- Api_Search_Instrument,
6
- Api_Warehouse_Create,
7
- Api_Warehouse_Search,
8
- Api_Warehouse_Status_History_Item,
9
- } from '../types/Api_Instruments'
10
- import { ResponseApi } from '@/api/types/Api_Service'
11
-
12
- class InstrumentsService extends ApiService {
13
- public async fetchUserInstrumentsHistory(id: string, page?: number): Promise<Api_instruments_HistoryResponse> {
14
- const params = {
15
- status: 'issued',
16
- page,
17
- desc: 'desc',
18
- column: 'issued_in',
19
- }
20
-
21
- return await this.get(`users/${id}/instruments`, { params })
22
- }
23
-
24
- public async fetchWarehouses(params: any): Promise<ResponseApi<Api_Warehouse_Search[]>> {
25
- return await this.get('search/warehouses', { params })
26
- }
27
-
28
- public async fetchWarehouse(id: string): Promise<Api_Instrument> {
29
- return await this.get(`admin/warehouses/${id}`)
30
- }
31
-
32
- public async fetchStatusHistory(id: string): Promise<Api_Warehouse_Status_History_Item[]> {
33
- return await this.get(`warehouses/${id}/history/status`)
34
- }
35
-
36
- public async createWarehouse(model: Api_Warehouse_Create): Promise<Api_Instrument> {
37
- return await this.post('admin/warehouses', model)
38
- }
39
-
40
- public async editWarehouse({
41
- id,
42
- model,
43
- }: {
44
- id: string
45
- model: Partial<Api_Warehouse_Create>
46
- }): Promise<Api_Instrument> {
47
- return await this.put(`admin/warehouses/${id}`, model)
48
- }
49
-
50
- public deleteWarehouse(id: string): Promise<{ data: boolean; status: number }> {
51
- return this.delete(`admin/warehouses/${id}`)
52
- }
53
-
54
- public async unsetWarehouseRfid(model: { warehouses: string[] }): Promise<Api_Warehouse_Search[]> {
55
- return await this.post('warehouses/unset-rfid', model)
56
- }
57
-
58
- public async searchInstruments(params: any): Promise<ResponseApi<Api_Search_Instrument[]>> {
59
- return await this.get('search/instruments', { params })
60
- }
61
- }
62
-
63
- let api: InstrumentsService
64
-
65
- export default function useInstrumentsService() {
66
- if (!api) api = new InstrumentsService()
67
- return api
68
- }
1
+ import ApiService from '../settings/ApiService'
2
+ import {
3
+ Api_Instrument,
4
+ Api_instruments_HistoryResponse,
5
+ Api_Search_Instrument,
6
+ Api_Warehouse_Create,
7
+ Api_Warehouse_Search,
8
+ Api_Warehouse_Status_History_Item,
9
+ } from '../types/Api_Instruments'
10
+ import { ResponseApi } from '@/api/types/Api_Service'
11
+
12
+ class InstrumentsService extends ApiService {
13
+ public async fetchUserInstrumentsHistory(id: string, page?: number): Promise<Api_instruments_HistoryResponse> {
14
+ const params = {
15
+ status: 'issued',
16
+ page,
17
+ desc: 'desc',
18
+ column: 'issued_in',
19
+ }
20
+
21
+ return await this.get(`users/${id}/instruments`, { params })
22
+ }
23
+
24
+ public async fetchWarehouses(params: any): Promise<ResponseApi<Api_Warehouse_Search[]>> {
25
+ return await this.get('search/warehouses', { params })
26
+ }
27
+
28
+ public async fetchWarehouse(id: string): Promise<Api_Instrument> {
29
+ return await this.get(`admin/warehouses/${id}`)
30
+ }
31
+
32
+ public async fetchStatusHistory(id: string): Promise<Api_Warehouse_Status_History_Item[]> {
33
+ return await this.get(`warehouses/${id}/history/status`)
34
+ }
35
+
36
+ public async createWarehouse(model: Api_Warehouse_Create): Promise<Api_Instrument> {
37
+ return await this.post('admin/warehouses', model)
38
+ }
39
+
40
+ public async editWarehouse({
41
+ id,
42
+ model,
43
+ }: {
44
+ id: string
45
+ model: Partial<Api_Warehouse_Create>
46
+ }): Promise<Api_Instrument> {
47
+ return await this.put(`admin/warehouses/${id}`, model)
48
+ }
49
+
50
+ public deleteWarehouse(id: string): Promise<{ data: boolean; status: number }> {
51
+ return this.delete(`admin/warehouses/${id}`)
52
+ }
53
+
54
+ public async unsetWarehouseRfid(model: { warehouses: string[] }): Promise<Api_Warehouse_Search[]> {
55
+ return await this.post('warehouses/unset-rfid', model)
56
+ }
57
+
58
+ public async searchInstruments(params: any): Promise<ResponseApi<Api_Search_Instrument[]>> {
59
+ return await this.get('search/instruments', { params })
60
+ }
61
+ }
62
+
63
+ let api: InstrumentsService
64
+
65
+ export default function useInstrumentsService() {
66
+ if (!api) api = new InstrumentsService()
67
+ return api
68
+ }