@philipe1993/list-color 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.tsx ADDED
@@ -0,0 +1,2 @@
1
+ export { default as ListColor } from "./src/index";
2
+ export { default as colorStore } from "./store/colorStore";
package/package.json CHANGED
@@ -2,16 +2,19 @@
2
2
  "name": "@philipe1993/list-color",
3
3
  "main": "src/index.js",
4
4
  "types": "src/index.d.ts",
5
- "version": "1.0.0",
5
+ "version": "1.0.1",
6
6
  "peerDependencies": {
7
- "react": "^18.3.1",
8
- "mobx": "^6.13.5",
9
- "axios": "^1.7.7",
10
7
  "antd": "^5.22.0",
11
- "tailwindcss": "^3.4.12",
12
- "mobx-react-lite": "^4.0.7"
8
+ "axios": "^1.7.7",
9
+ "mobx": "^6.13.5",
10
+ "mobx-react-lite": "^4.0.7",
11
+ "react": "^18.3.1",
12
+ "tailwindcss": "^3.4.12"
13
13
  },
14
14
  "devDependencies": {
15
15
  "typescript": "^5.6.2"
16
+ },
17
+ "dependencies": {
18
+ "@philipe1993/shared": "^1.0.2"
16
19
  }
17
20
  }
@@ -0,0 +1,56 @@
1
+
2
+ import URLS from '../../shared/src/config/urls';
3
+ import { Color } from '../types/Color';
4
+ import { getAPIInstance } from "@philipe1993/shared";
5
+
6
+
7
+ const api = getAPIInstance();
8
+
9
+ class ColorService {
10
+ async getList(params: any): Promise<any> {
11
+ try {
12
+ const response = await api.get(`${URLS.COLORS}/search`, { params });
13
+ return response; // Retorna a resposta da API
14
+ } catch (e) {
15
+ return { error: "Erro ao trazer listagem" }; // Retorna um objeto de erro
16
+ }
17
+ }
18
+
19
+ async createColor(color: Color): Promise<any> {
20
+ try {
21
+ const response = await api.post(`${URLS.COLORS}`, color);
22
+ return response; // Retorna a resposta da API
23
+ } catch (error) {
24
+ return { error: "Erro ao cadastrar", details: error }; // Retorna um objeto de erro
25
+ }
26
+ }
27
+
28
+ async editColor(color: Color, uuid: string | undefined): Promise<any> {
29
+ try {
30
+ const response = await api.put(`${URLS.COLORS}/${uuid}`, color);
31
+ return response; // Retorna a resposta da API
32
+ } catch (error) {
33
+ return { error: "Erro ao cadastrar", details: error }; // Retorna um objeto de erro
34
+ }
35
+ }
36
+
37
+ async getColorByUuid(uuid: any): Promise<any> {
38
+ try {
39
+ const response = await api.get(`${URLS.COLORS}/${uuid}`);
40
+ return response; // Retorna a resposta da API
41
+ } catch (e) {
42
+ return { error: "Erro ao buscar dados" }; // Retorna um objeto de erro
43
+ }
44
+ }
45
+
46
+ async deleteColor(uuid: any): Promise<any> {
47
+ try {
48
+ const response = await api.delete(`${URLS.COLORS}/${uuid}`);
49
+ return response; // Retorna a resposta da API
50
+ } catch (e) {
51
+ return { error: "Erro ao deletar" }; // Retorna um objeto de erro
52
+ }
53
+ }
54
+ }
55
+
56
+ export default new ColorService();
@@ -0,0 +1,135 @@
1
+ import { message } from 'antd';
2
+ import { makeAutoObservable, runInAction } from 'mobx';
3
+ import { Color } from '../types/Color';
4
+ import ColorService from '../services/ColorService';
5
+ import { DEFAULT_PAGE_SIZE } from "@philipe1993/shared";
6
+
7
+ class ColorStore {
8
+ loading: boolean = false;
9
+ colorList: Color[] = [];
10
+ colorSelectList: any;
11
+ sort?: string = 'created,desc';
12
+ totalPages: number = 0;
13
+ color: Color | undefined;
14
+ page: number = 0;
15
+ totalElements: number = 0;
16
+ size: number = DEFAULT_PAGE_SIZE;
17
+ defaultparams = {
18
+ size: DEFAULT_PAGE_SIZE,
19
+ page: 0,
20
+ sort: 'created,desc',
21
+ search: '',
22
+ }
23
+
24
+ reset() {
25
+ this.color = undefined;
26
+ this.colorList = [];
27
+ this.colorSelectList = [];
28
+ }
29
+
30
+ constructor() {
31
+ makeAutoObservable(this);
32
+ }
33
+
34
+ async getList(params: any) {
35
+ this.loading = true;
36
+ const response = await ColorService.getList(params);
37
+
38
+ runInAction(() => {
39
+ if (!response.error) {
40
+ this.colorList = response.data.content;
41
+ this.totalPages = response.data.totalPages;
42
+ this.page = response.data.number;
43
+ this.totalElements = response.data.totalElements;
44
+ this.size = response.data.size;
45
+ }
46
+ this.loading = false;
47
+ });
48
+
49
+ return response;
50
+ }
51
+
52
+ async createColor(color: Color) {
53
+ this.loading = true;
54
+ const response = await ColorService.createColor(color);
55
+
56
+ runInAction(() => {
57
+ if (response.error) {
58
+ message.error(response?.details?.response?.data?.message);
59
+ this.color = color;
60
+ } else {
61
+ message.success('Cor cadastrado com sucesso!');
62
+ }
63
+ this.loading = false;
64
+ });
65
+
66
+ return response;
67
+ }
68
+
69
+ async editColor(color: Color, uuid: string | undefined) {
70
+ this.loading = true;
71
+ const response = await ColorService.editColor(color, uuid);
72
+
73
+ runInAction(() => {
74
+ if (response.error) {
75
+ message.error(response?.details?.response?.data?.message);
76
+ this.color = color;
77
+ } else {
78
+ message.success('Cor editado com sucesso!');
79
+ }
80
+ this.loading = false;
81
+ });
82
+
83
+ return response;
84
+ }
85
+
86
+ async getColorByUuid(uuid: string) {
87
+ this.loading = true;
88
+ const response = await ColorService.getColorByUuid(uuid);
89
+
90
+ runInAction(() => {
91
+ if (response.error) {
92
+ message.error('Erro ao buscar Cor');
93
+ return;
94
+ }
95
+ this.color = response.data;
96
+ this.loading = false;
97
+ });
98
+
99
+ return response;
100
+ }
101
+
102
+ async deleteColor(uuid: string) {
103
+ this.loading = true;
104
+ const response = await ColorService.deleteColor(uuid);
105
+
106
+ runInAction(() => {
107
+ if (response.error) {
108
+ message.error('Erro ao deletar Cor');
109
+ } else {
110
+ message.success('Cor deletado com sucesso!');
111
+ this.color = undefined;
112
+ }
113
+ this.loading = false;
114
+ });
115
+
116
+ return response;
117
+ }
118
+
119
+ async deleteColorAll(uuid: string) {
120
+ this.loading = true;
121
+ const response = await ColorService.deleteColor(uuid);
122
+
123
+ runInAction(() => {
124
+ if (!response.error) {
125
+ this.color = undefined;
126
+ }
127
+ this.loading = false;
128
+ });
129
+
130
+ return response;
131
+ }
132
+ }
133
+
134
+ const colorStore = new ColorStore();
135
+ export default colorStore;
package/types/Color.ts ADDED
@@ -0,0 +1,10 @@
1
+ export interface Color {
2
+ uuid: string;
3
+ created?: string;
4
+ modified?: string;
5
+ active?: boolean;
6
+ deleted?: boolean;
7
+ hexColorCode: string;
8
+ name: string;
9
+ shortName: string;
10
+ }