robbyson-frontend-library 0.0.1-rc11 → 0.0.1-rc12
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/dist/components/circular-general-level/circular-general-level.interface.js +1 -0
- package/dist/components/circular-indicator-goal/circular-indicator-goal.interface.js +1 -0
- package/dist/components/circular-progress/circular-progress.interface.js +1 -0
- package/dist/components/daily-chart/daily-chart.interface.js +1 -0
- package/dist/components/dropdown/dropdown.interface.js +1 -0
- package/dist/components/insight-chart/insight-chart.interface.js +1 -0
- package/dist/components/mountain-chart/mountain-chart.interface.js +1 -0
- package/dist/components/pages/base-app-page.component.js +11 -1
- package/dist/components/result-chart/result-chart.interface.js +1 -0
- package/dist/components/text-area/text-area.interface.js +1 -0
- package/dist/components/weekly-chart/weekly-chart.interface.js +1 -0
- package/dist/index.js +10 -2
- package/dist/models/agenda-invited-users.model.js +24 -0
- package/dist/models/agenda.model.js +36 -0
- package/dist/models/chat.model.js +11 -0
- package/dist/models/friendship-team-list.model.js +1 -0
- package/dist/models/quiz-answered.model.js +24 -0
- package/dist/models/quiz-not-answered.model.js +24 -0
- package/dist/models/quiz.model.js +24 -0
- package/dist/models/theme-base.js +8 -0
- package/dist/models/user-list.model.js +24 -0
- package/dist/models/user.model.js +24 -0
- package/dist/repositories/agenda.repository.interface.js +1 -0
- package/dist/repositories/chat.repository.interface.js +1 -0
- package/dist/repositories/configuration.repository.interface.js +1 -0
- package/dist/repositories/friendship.repository.interface.js +1 -0
- package/dist/repositories/quiz.repository.interface.js +1 -0
- package/dist/services/agenda.service.interface.js +1 -0
- package/dist/services/chat.service.interface.js +1 -0
- package/dist/services/dtos/agenda.dto.js +1 -0
- package/dist/services/dtos/chat.dto.js +1 -0
- package/dist/services/dtos/friendship.dto.js +1 -0
- package/dist/services/dtos/index.js +5 -0
- package/dist/services/dtos/quiz.dto.js +1 -0
- package/dist/services/dtos/user.dto.js +1 -0
- package/dist/services/friendship.service.interface.js +1 -0
- package/dist/services/quiz.service.interface.js +1 -0
- package/dist/utils/index.js +2 -0
- package/dist/utils/timer.utils.js +22 -0
- package/index.d.ts +13 -0
- package/package.json +2 -2
- package/src/components/basic-button/basic-button.interface.ts +0 -1
- package/src/components/checkbox/checkbox.interface.ts +2 -0
- package/src/components/circular-general-level/circular-general-level.interface.ts +13 -0
- package/src/components/circular-general-level/circular-general-level.types.d.ts +9 -0
- package/src/components/circular-general-level/index.d.ts +1 -0
- package/src/components/circular-indicator-goal/circular-indicator-goal.interface.ts +13 -0
- package/src/components/circular-indicator-goal/circular-indicator-goal.types.d.ts +9 -0
- package/src/components/circular-indicator-goal/index.d.ts +1 -0
- package/src/components/circular-progress/circular-progress.interface.ts +12 -0
- package/src/components/circular-progress/circular-progress.types.d.ts +9 -0
- package/src/components/circular-progress/index.d.ts +1 -0
- package/src/components/daily-chart/daily-chart.interface.ts +22 -0
- package/src/components/daily-chart/daily-chart.types.d.ts +9 -0
- package/src/components/daily-chart/index.d.ts +1 -0
- package/src/components/date-picker/date-picker.interface.ts +4 -2
- package/src/components/dropdown/dropdown.interface.ts +52 -0
- package/src/components/dropdown/dropdown.types.d.ts +9 -0
- package/src/components/dropdown/index.d.ts +1 -0
- package/src/components/filter/filter.interface.tsx +1 -1
- package/src/components/icon-button/icon-button.interface.ts +1 -1
- package/src/components/insight-chart/index.d.ts +1 -0
- package/src/components/insight-chart/insight-chart.interface.ts +23 -0
- package/src/components/insight-chart/insight-chart.types.d.ts +9 -0
- package/src/components/mountain-chart/index.d.ts +1 -0
- package/src/components/mountain-chart/mountain-chart.interface.ts +11 -0
- package/src/components/mountain-chart/mountain-chart.types.d.ts +9 -0
- package/src/components/pages/base-app-page.component.tsx +11 -2
- package/src/components/pagination/pagination.interface.ts +3 -0
- package/src/components/profile-image/profile-image.interface.ts +1 -1
- package/src/components/progress-bar/progress-bar.interface.ts +15 -5
- package/src/components/progress-bar/progress-bar.types.d.ts +1 -1
- package/src/components/result-chart/index.d.ts +1 -0
- package/src/components/result-chart/result-chart.interface.ts +25 -0
- package/src/components/result-chart/result-chart.types.d.ts +9 -0
- package/src/components/scroll-box/scroll-box.interface.ts +3 -1
- package/src/components/tab/tab.interface.ts +1 -0
- package/src/components/tag-expand/tag-expand.interface.ts +1 -0
- package/src/components/text-area/index.d.ts +1 -0
- package/src/components/text-area/text-area.interface.ts +3 -0
- package/src/components/text-area/text-area.types.d.ts +9 -0
- package/src/components/text-field/text-field.interface.ts +11 -2
- package/src/components/toggle-icon-button/toggle-icon-button.interface.ts +0 -3
- package/src/components/tooltip/tooltip.interface.ts +3 -5
- package/src/components/weekly-chart/index.d.ts +1 -0
- package/src/components/weekly-chart/weekly-chart.interface.ts +22 -0
- package/src/components/weekly-chart/weekly-chart.types.d.ts +9 -0
- package/src/index.ts +11 -3
- package/src/models/agenda-invited-users.model.ts +37 -0
- package/src/models/agenda.model.ts +31 -0
- package/src/models/chat.model.ts +28 -0
- package/src/models/friendship-team-list.model.ts +47 -0
- package/src/models/index.d.ts +9 -0
- package/src/models/quiz-answered.model.ts +28 -0
- package/src/models/quiz-not-answered.model.ts +5 -0
- package/src/models/quiz.model.ts +55 -0
- package/src/models/theme-base.ts +38 -28
- package/src/models/user-list.model.ts +26 -0
- package/src/models/user.model.ts +21 -0
- package/src/repositories/agenda.repository.interface.ts +26 -0
- package/src/repositories/chat.repository.interface.ts +10 -0
- package/src/repositories/configuration.repository.interface.ts +5 -0
- package/src/repositories/friendship.repository.interface.ts +6 -0
- package/src/repositories/index.d.ts +12 -7
- package/src/repositories/quiz.repository.interface.ts +14 -0
- package/src/repositories/user.repository.interface.ts +9 -3
- package/src/services/agenda.service.interface.ts +39 -0
- package/src/services/angel-friend.service.interface.ts +1 -1
- package/src/services/chat.service.interface.ts +12 -0
- package/src/services/dtos/agenda.dto.ts +38 -0
- package/src/services/dtos/chat.dto.ts +24 -0
- package/src/services/dtos/friendship.dto.ts +6 -0
- package/src/services/dtos/index.ts +6 -1
- package/src/services/dtos/quiz.dto.ts +10 -0
- package/src/services/dtos/user.dto.ts +24 -0
- package/src/services/friendship.service.interface.ts +6 -0
- package/src/services/index.d.ts +5 -1
- package/src/services/quiz.service.interface.ts +16 -0
- package/src/services/theme.service.interface.ts +1 -1
- package/src/services/user.service.interface.ts +12 -7
- package/src/services/validations.service.interface.ts +1 -0
- package/src/states/main-container/root-app.state.interface.ts +24 -18
- package/src/utils/index.ts +3 -1
- package/src/utils/timer.utils.ts +19 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { BaseRepositoryModel } from "./base.repository.model";
|
|
2
|
+
|
|
3
|
+
export class QuizModel extends BaseRepositoryModel {
|
|
4
|
+
publishNow: boolean;
|
|
5
|
+
done: boolean;
|
|
6
|
+
draft: boolean;
|
|
7
|
+
mandatory: boolean;
|
|
8
|
+
monetizable: boolean;
|
|
9
|
+
_id: string;
|
|
10
|
+
name: string;
|
|
11
|
+
instruction: string;
|
|
12
|
+
reach: "ALL" | "ATTRIBUTES" | "USER";
|
|
13
|
+
createdBy: number;
|
|
14
|
+
publish: string;
|
|
15
|
+
coins: number;
|
|
16
|
+
state: "draft" | "scheduled" | "publishing" | "in_progress" | "closed";
|
|
17
|
+
createdAt: string;
|
|
18
|
+
messageId: string;
|
|
19
|
+
publishedAt: string;
|
|
20
|
+
questions: {
|
|
21
|
+
_id: string;
|
|
22
|
+
body: string;
|
|
23
|
+
noAnswer: boolean;
|
|
24
|
+
time: number;
|
|
25
|
+
alternatives: {
|
|
26
|
+
_id: string;
|
|
27
|
+
body: string;
|
|
28
|
+
}[];
|
|
29
|
+
type: 0 | 1;
|
|
30
|
+
limit: number;
|
|
31
|
+
style: 0 | 1;
|
|
32
|
+
}[];
|
|
33
|
+
attributes: {
|
|
34
|
+
attribute: {
|
|
35
|
+
_id: string;
|
|
36
|
+
name: string;
|
|
37
|
+
primary: boolean;
|
|
38
|
+
};
|
|
39
|
+
_id: string;
|
|
40
|
+
value: string;
|
|
41
|
+
}[];
|
|
42
|
+
levels: {
|
|
43
|
+
_id: number;
|
|
44
|
+
description: string;
|
|
45
|
+
}[];
|
|
46
|
+
kiteLevels: {
|
|
47
|
+
_id: number;
|
|
48
|
+
description: string;
|
|
49
|
+
}[];
|
|
50
|
+
users: {
|
|
51
|
+
_id: number;
|
|
52
|
+
identification: string;
|
|
53
|
+
name: string;
|
|
54
|
+
}[];
|
|
55
|
+
}
|
package/src/models/theme-base.ts
CHANGED
|
@@ -5,6 +5,7 @@ class ThemeBaseColors {
|
|
|
5
5
|
secondary1: string;
|
|
6
6
|
secondary2: string;
|
|
7
7
|
secondary3: string;
|
|
8
|
+
secondary4: string;
|
|
8
9
|
brand1: string;
|
|
9
10
|
brand2: string;
|
|
10
11
|
hover1: string;
|
|
@@ -85,7 +86,9 @@ class ThemeBaseColors {
|
|
|
85
86
|
|
|
86
87
|
}
|
|
87
88
|
|
|
88
|
-
export
|
|
89
|
+
export const ICON_HANDLES = ['active-bold','active-thin', 'avatar-login', 'add-challenge-bold','add-challenge-thin','add-notification-bold','add-notification-thin','add-quiz-bold','add-quiz-thin','angel-friend-add-bold','angel-friend-add-thin','angel-friend-bold','angel-friend-thin','attachment-bold','attachment-thin','auction-bold','auction-thin','available-bold','available-thin','broadcast-bold','broadcast-thin','calendar-bold','calendar-thin','camera-bold','camera-thin','cancel-bold','cancel-thin','challenge-bold','challenge-thin','chat-bold','chatbot-bold','chatbot-thin','chat-fil-bold','chat-fill-thin','chat-smile-bold','chat-smile-thin','chat-thin','check-bold','check-thin','chocolate-menu','chronometer-bold','chronometer-thin','clock-bold','clock-thin','close-bold','close-thin','cloud-bold','cloud-thin','coin-bold','coin-thin','column-view-active-bold','column-view-active-thin','column-view-bold','column-view-thin','contacts-bold','contacts-thin','delete-bold','delete-thin','documents-bold','documents-thin','down-arrow','download-bold','download-thin','downward-arrow-bold','downward-arrow-thin','duplicate-bold','duplicate-thin','eagle-bold','eagle-thin','edit-bold','edit-thin','emoji-bold','emoji-thin','family-bold','family-thin','filter-active-bold','filter-active-thin','filter-inactive-bold','filter-inactive-thin','filter','forward-bold','forward-thin','goal-bold','goal-thin','grid-view-active-bold','grid-view-active-thin','grid-view-bold','grid-view-thin','group-bold','group-brackets-bold','group-brackets-thin','group-fill-bold','group-fill-thin','group-thin','guide-bold','guide-thin','health-bold','health-thin','heart-bold','heart-fill-bold','heart-fill-thin','heart-thin','humor-bold','humor-thin','inactive-bold','inactive-thin','indicator-bold','indicator-thin','info-bold','info-thin','integration-bold','integration-thin','learning-bold','learning-thin','leave-bold','leave-thin','left-arrow-large','left-arrow-small','like-bold','like-fill-bold','like-fill-thin','like-thin','magnifying-glass-bold','magnifying-glass-thin','minus','more-vert','mountain-bold','mountain-thin','new-document-bold','new-document-thin','new-tip-thin-1','new-tip-thin','notification-bold','notification-thin','objetive-bold','objetive-thin','order-bold-1','order-bold','order-thin-1','order-thin','performance-bold','performance-thin','phone-bold','phone-thin','plus','quiz-bold','quiz-thin','raffle-bold','raffle-draw-bold','raffle-draw-thin','raffle-thin','relationship-bold','relationship-thin','reports-bold','reports-thin','right-arrow-large','right-arrow-small','send-bold','send-thin','settings-bold','settings-thin','star-bold','star-thin','store-bold','store-item-bold','store-item-thin','store-thin','tag-bold','tag-thin','test-bold','test-thin','tips-bold','tips-thin','tree-bold','tree-thin','trophy-bold','trophy-thin','up-arrow','upload-bold','upload-thin','upward-arrow-bold','upward-arrow-thin','user-bold','user-thin','variable-pay-bold','variable-pay-thin','view-bold','view-thin','not-view-thin', 'not-view-bold', 'work-bold','working','work-thin', 'no-results-found', 'not-found-bold', 'hamburger-menu', 'cloud-circle', 'mountain-circle', 'star-circle', 'expand-image-bold', 'camera-off-bold' , 'minimize-image-bold' , 'phone-call-bold' , 'microphone-bold' , 'microphone-off-bold' , 'share-screen-bold', 'ead-play-button'] as const;
|
|
90
|
+
|
|
91
|
+
export type IconHandle = typeof ICON_HANDLES[number];
|
|
89
92
|
|
|
90
93
|
class ThemeBaseRect {
|
|
91
94
|
top: string;
|
|
@@ -101,6 +104,7 @@ class ThemeTypography {
|
|
|
101
104
|
letterSpacing: string; //letter-spacing
|
|
102
105
|
lineHeight: string; //line-height
|
|
103
106
|
fontWeight: string; //font-weight
|
|
107
|
+
textDecoration: string; //text-decoration
|
|
104
108
|
}
|
|
105
109
|
|
|
106
110
|
class ThemeTransition {
|
|
@@ -113,6 +117,35 @@ class ThemeAssets {
|
|
|
113
117
|
height: string;
|
|
114
118
|
}
|
|
115
119
|
|
|
120
|
+
class Typography {
|
|
121
|
+
profile: ThemeTypography;
|
|
122
|
+
h1: ThemeTypography;
|
|
123
|
+
h2: ThemeTypography;
|
|
124
|
+
h2Bold: ThemeTypography;
|
|
125
|
+
h3: ThemeTypography;
|
|
126
|
+
h4: ThemeTypography;
|
|
127
|
+
h5: ThemeTypography;
|
|
128
|
+
h6: ThemeTypography;
|
|
129
|
+
h6Bold: ThemeTypography;
|
|
130
|
+
subtitle2: ThemeTypography;
|
|
131
|
+
subtitle1: ThemeTypography;
|
|
132
|
+
body1Medium: ThemeTypography
|
|
133
|
+
body1Book: ThemeTypography
|
|
134
|
+
body1BookItalic: ThemeTypography;
|
|
135
|
+
body1Link: ThemeTypography;
|
|
136
|
+
body2Medium: ThemeTypography;
|
|
137
|
+
body2Book: ThemeTypography;
|
|
138
|
+
body2BookStrikethrough: ThemeTypography;
|
|
139
|
+
body2BookItalic: ThemeTypography;
|
|
140
|
+
button: ThemeTypography;
|
|
141
|
+
chip: ThemeTypography;
|
|
142
|
+
chipMedium: ThemeTypography;
|
|
143
|
+
overline: ThemeTypography;
|
|
144
|
+
small: ThemeTypography;
|
|
145
|
+
smallMedium: ThemeTypography;
|
|
146
|
+
toolTip: ThemeTypography;
|
|
147
|
+
};
|
|
148
|
+
|
|
116
149
|
export class ThemeBase {
|
|
117
150
|
colors: ThemeBaseColors;
|
|
118
151
|
fonts: {
|
|
@@ -122,33 +155,8 @@ export class ThemeBase {
|
|
|
122
155
|
src: string; // src
|
|
123
156
|
}[];
|
|
124
157
|
transitions: ThemeTransition;
|
|
125
|
-
typography:
|
|
126
|
-
|
|
127
|
-
h2: ThemeTypography,
|
|
128
|
-
h2Medium: ThemeTypography,
|
|
129
|
-
mobh2Medium: ThemeTypography,
|
|
130
|
-
h3: ThemeTypography,
|
|
131
|
-
mobh3Medium: ThemeTypography,
|
|
132
|
-
h4: ThemeTypography,
|
|
133
|
-
mobh4Medium: ThemeTypography,
|
|
134
|
-
h5: ThemeTypography,
|
|
135
|
-
mobh5Medium: ThemeTypography,
|
|
136
|
-
h6: ThemeTypography,
|
|
137
|
-
subtitle1: ThemeTypography,
|
|
138
|
-
subtitle2: ThemeTypography,
|
|
139
|
-
body1Medium: ThemeTypography,
|
|
140
|
-
body1Book: ThemeTypography,
|
|
141
|
-
body1BookItalic: ThemeTypography,
|
|
142
|
-
body1Link: ThemeTypography,
|
|
143
|
-
body2Medium: ThemeTypography,
|
|
144
|
-
body2Book: ThemeTypography,
|
|
145
|
-
buttonMedium: ThemeTypography,
|
|
146
|
-
chip: ThemeTypography,
|
|
147
|
-
chipMedium: ThemeTypography,
|
|
148
|
-
overline: ThemeTypography,
|
|
149
|
-
small: ThemeTypography,
|
|
150
|
-
toolTip: ThemeTypography,
|
|
151
|
-
};
|
|
158
|
+
typography: Typography;
|
|
159
|
+
mobileTypography: Typography;
|
|
152
160
|
assets: {
|
|
153
161
|
logoText: ThemeAssets;
|
|
154
162
|
logoComplete: ThemeAssets;
|
|
@@ -163,6 +171,7 @@ export class ThemeBase {
|
|
|
163
171
|
humorImbadCircle: ThemeAssets,
|
|
164
172
|
logoMobile: ThemeAssets;
|
|
165
173
|
loginRobbysonAvatar: ThemeAssets;
|
|
174
|
+
quizThankYouAvatar: ThemeAssets;
|
|
166
175
|
};
|
|
167
176
|
|
|
168
177
|
constructor() {
|
|
@@ -181,6 +190,7 @@ export class ThemeBase {
|
|
|
181
190
|
humorImbadCircle: new ThemeAssets(),
|
|
182
191
|
logoMobile: new ThemeAssets(),
|
|
183
192
|
loginRobbysonAvatar: new ThemeAssets(),
|
|
193
|
+
quizThankYouAvatar: new ThemeAssets(),
|
|
184
194
|
};
|
|
185
195
|
}
|
|
186
196
|
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { BaseRepositoryModel } from "./base.repository.model";
|
|
2
|
+
|
|
3
|
+
export class UserListModel extends BaseRepositoryModel {
|
|
4
|
+
about: string;
|
|
5
|
+
accessed: boolean;
|
|
6
|
+
active: boolean;
|
|
7
|
+
birthDate: string;
|
|
8
|
+
email: string;
|
|
9
|
+
externalKey: string;
|
|
10
|
+
gender: string;
|
|
11
|
+
identification: string;
|
|
12
|
+
loginFailures: number;
|
|
13
|
+
name: string;
|
|
14
|
+
nickname: string;
|
|
15
|
+
passHash: string;
|
|
16
|
+
phone: string;
|
|
17
|
+
registered: boolean;
|
|
18
|
+
robbysonUser_id: number;
|
|
19
|
+
role_id: number | null;
|
|
20
|
+
systems: System[];
|
|
21
|
+
_id: number;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface System {
|
|
25
|
+
_id: number;
|
|
26
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { BaseRepositoryModel } from "./base.repository.model";
|
|
2
|
+
|
|
3
|
+
export class UserModel extends BaseRepositoryModel {
|
|
4
|
+
hasAccessed: boolean
|
|
5
|
+
active: boolean
|
|
6
|
+
_id: number
|
|
7
|
+
gender: string
|
|
8
|
+
name: string
|
|
9
|
+
summary: string
|
|
10
|
+
robbyson_user_id: number
|
|
11
|
+
externalKey: string
|
|
12
|
+
systems: System[]
|
|
13
|
+
isRegistered: boolean
|
|
14
|
+
nickname: string
|
|
15
|
+
forceAvatarDisplay: boolean
|
|
16
|
+
phone: string
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
interface System {
|
|
20
|
+
_id: number
|
|
21
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { AgendaModel } from "../models";
|
|
2
|
+
import { AgendaDTO } from "../services";
|
|
3
|
+
|
|
4
|
+
export interface IAgendaRepository {
|
|
5
|
+
getUserAppointments(params: {
|
|
6
|
+
start: string;
|
|
7
|
+
end: string;
|
|
8
|
+
}): Promise<AgendaModel[]>;
|
|
9
|
+
|
|
10
|
+
getAppointmentDetails(params: { id: string }): Promise<AgendaModel>;
|
|
11
|
+
|
|
12
|
+
confirmParticipation(
|
|
13
|
+
params: { id: string },
|
|
14
|
+
body: {
|
|
15
|
+
confirmation: AgendaModel["confirmation"];
|
|
16
|
+
}
|
|
17
|
+
): Promise<void>;
|
|
18
|
+
|
|
19
|
+
cancelAppointment(params: { id: string }): Promise<void>;
|
|
20
|
+
|
|
21
|
+
insertAppointment(
|
|
22
|
+
params: AgendaDTO.IInsertAppointmentDTO
|
|
23
|
+
): Promise<string>;
|
|
24
|
+
|
|
25
|
+
updateAppointment(params: AgendaDTO.IUpdateAppointmentDTO): Promise<void>;
|
|
26
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ChatModel } from "../models";
|
|
2
|
+
import { ChatDTO, UserDTO } from "../services";
|
|
3
|
+
|
|
4
|
+
export interface IChatRepository {
|
|
5
|
+
getConversations(params: ChatDTO.IGetConversationDTO): Promise<ChatModel[]>;
|
|
6
|
+
createConversation(params: ChatDTO.ICreateConversationDTO): Promise<ChatModel>;
|
|
7
|
+
addUsersToConversation(conversationId: string, users: UserDTO.GetUserDTO[]): Promise<void>;
|
|
8
|
+
deleteConversation(conversationId: string): Promise<void>;
|
|
9
|
+
removeUserFromConversation(conversationId: string, robbysonUserId: number): Promise<void>;
|
|
10
|
+
}
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export * from
|
|
3
|
-
export * from
|
|
4
|
-
export * from
|
|
5
|
-
export * from
|
|
6
|
-
export * from
|
|
1
|
+
export * from "./authentication.repository.interface";
|
|
2
|
+
export * from "./locale.repository.interface";
|
|
3
|
+
export * from "./theme.repository.interface";
|
|
4
|
+
export * from "./results.repository.interface";
|
|
5
|
+
export * from "./angel-friend.repository.interface";
|
|
6
|
+
export * from "./user.repository.interface";
|
|
7
7
|
export * from "./terms-of-use.repository.interface";
|
|
8
|
+
export * from "./agenda.repository.interface";
|
|
9
|
+
export * from "./chat.repository.interface";
|
|
10
|
+
export * from "./friendship.repository.interface";
|
|
8
11
|
export * from "./guidance.repository.interface";
|
|
9
12
|
export * from "./humor.repository.interface";
|
|
10
|
-
export * from "./document.repository.interface";
|
|
13
|
+
export * from "./document.repository.interface";
|
|
14
|
+
export * from "./quiz.repository.interface";
|
|
15
|
+
export * from "./configuration.repository.interface";
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { QuizDTO } from "../services";
|
|
2
|
+
import { QuizAnsweredModel, QuizModel, QuizNotAnsweredModel } from "../models";
|
|
3
|
+
|
|
4
|
+
export interface IQuizRepository {
|
|
5
|
+
getQuizById(quizId: string): Promise<QuizModel>;
|
|
6
|
+
setRefusedQuiz(quizId: string): Promise<void>;
|
|
7
|
+
setAnsweredQuiz(
|
|
8
|
+
quizId: string,
|
|
9
|
+
body: QuizDTO.QuestionAnswerDTO
|
|
10
|
+
): Promise<void>;
|
|
11
|
+
getQuizzesToBeAnsweredLater(): Promise<QuizModel[]>;
|
|
12
|
+
getNotAnsweredQuizzes(): Promise<QuizNotAnsweredModel[]>;
|
|
13
|
+
getAnsweredQuizzes(): Promise<QuizAnsweredModel[]>;
|
|
14
|
+
}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { UserDTO } from "../services";
|
|
2
|
+
import { UserListModel, UserMirrorModel, UserModel } from "../models";
|
|
2
3
|
|
|
3
4
|
export interface IUserRepository {
|
|
4
|
-
|
|
5
|
+
|
|
6
|
+
getUser(id: number): Promise<UserModel>;
|
|
7
|
+
|
|
8
|
+
getUsers(body: {
|
|
5
9
|
filter: {
|
|
6
10
|
robbyson_user_id: number[],
|
|
7
11
|
},
|
|
@@ -10,6 +14,8 @@ export interface IUserRepository {
|
|
|
10
14
|
},
|
|
11
15
|
}): Promise<any>;
|
|
12
16
|
|
|
13
|
-
getUserMirror(
|
|
17
|
+
getUserMirror(id: number): Promise<UserMirrorModel>;
|
|
18
|
+
|
|
19
|
+
getUserList(params: UserDTO.IGetUserListDTO): Promise<UserListModel[]>;
|
|
14
20
|
|
|
15
21
|
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import {
|
|
2
|
+
AgendaModel,
|
|
3
|
+
ChatModel,
|
|
4
|
+
UserListModel,
|
|
5
|
+
FriendShipTeamListModel,
|
|
6
|
+
} from "../models";
|
|
7
|
+
import { AgendaDTO } from "./dtos";
|
|
8
|
+
|
|
9
|
+
export interface IAgendaService {
|
|
10
|
+
getUserAppointments(
|
|
11
|
+
start: string,
|
|
12
|
+
end: string
|
|
13
|
+
): Promise<AgendaModel[]>;
|
|
14
|
+
|
|
15
|
+
getAppointmentDetails(id: string): Promise<AgendaModel>;
|
|
16
|
+
|
|
17
|
+
confirmParticipation(
|
|
18
|
+
id: string,
|
|
19
|
+
body: {
|
|
20
|
+
confirmation: AgendaModel["confirmation"];
|
|
21
|
+
}
|
|
22
|
+
): Promise<void>;
|
|
23
|
+
|
|
24
|
+
cancelAppointment(id: string): Promise<void>;
|
|
25
|
+
|
|
26
|
+
insertAppointment(params: AgendaDTO.IInsertAppointmentDTO): Promise<string>;
|
|
27
|
+
|
|
28
|
+
updateAppointment(params: AgendaDTO.IUpdateAppointmentDTO): Promise<void>;
|
|
29
|
+
|
|
30
|
+
getUsersByName(name: string): Promise<UserListModel[]>;
|
|
31
|
+
|
|
32
|
+
getUsersByIdentification(identification: string): Promise<UserListModel[]>;
|
|
33
|
+
|
|
34
|
+
getTeamByName(search: string): Promise<FriendShipTeamListModel[]>;
|
|
35
|
+
|
|
36
|
+
getGroupsByName(name: string): Promise<ChatModel[]>;
|
|
37
|
+
|
|
38
|
+
createOrGetConversation(params: AgendaDTO.ICreateOrGetConversationDTO): Promise<ChatModel>;
|
|
39
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ChatModel } from "../models";
|
|
2
|
+
import { ChatDTO, UserDTO } from "./dtos";
|
|
3
|
+
|
|
4
|
+
export interface IChatService {
|
|
5
|
+
getConversations(
|
|
6
|
+
parameters: ChatDTO.IGetConversationDTO
|
|
7
|
+
): Promise<ChatModel[]>;
|
|
8
|
+
createConversation(parameters: ChatDTO.ICreateConversationDTO): Promise<ChatModel>;
|
|
9
|
+
addUsersToConversation(conversationId: string, users: UserDTO.GetUserDTO[]): Promise<void>;
|
|
10
|
+
deleteConversation(conversationId: string): Promise<void>;
|
|
11
|
+
removeUserFromConversation(conversationId: string, robbysonUserId: number): Promise<void>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { AgendaModel } from "../../models";
|
|
2
|
+
|
|
3
|
+
export interface IInsertAppointmentDTO {
|
|
4
|
+
title: AgendaModel["title"];
|
|
5
|
+
start: AgendaModel["start"];
|
|
6
|
+
end: AgendaModel["end"];
|
|
7
|
+
conversation_id: AgendaModel["conversation_id"];
|
|
8
|
+
daysOfWeek: AgendaModel["daysOfWeek"];
|
|
9
|
+
description: AgendaModel["description"];
|
|
10
|
+
recurrence: AgendaModel["recurrence"];
|
|
11
|
+
status: AgendaModel["status"];
|
|
12
|
+
type: AgendaModel["type"];
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface IUpdateAppointmentDTO extends IInsertAppointmentDTO {
|
|
16
|
+
_id: AgendaModel["_id"];
|
|
17
|
+
confirmations: {
|
|
18
|
+
identification: AgendaModel["confirmations"][0]["identification"];
|
|
19
|
+
user_id: AgendaModel["confirmations"][0]["user_id"];
|
|
20
|
+
robbyson_user_id: AgendaModel["confirmations"][0]["robbyson_user_id"];
|
|
21
|
+
name: AgendaModel["confirmations"][0]["name"];
|
|
22
|
+
_id?: number;
|
|
23
|
+
}[];
|
|
24
|
+
conversation_id: AgendaModel["conversation_id"];
|
|
25
|
+
owner_identification: AgendaModel["owner_identification"];
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export interface ICreateOrGetConversationDTO {
|
|
29
|
+
name?: string;
|
|
30
|
+
admin?: boolean;
|
|
31
|
+
type: "chat" | "group";
|
|
32
|
+
user: {
|
|
33
|
+
identification: string;
|
|
34
|
+
robbyson_user_id: number;
|
|
35
|
+
user_id: number;
|
|
36
|
+
name: string;
|
|
37
|
+
}[];
|
|
38
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { GetUserDTO } from "./user.dto";
|
|
2
|
+
|
|
3
|
+
export interface IGetConversationDTO {
|
|
4
|
+
page?: number;
|
|
5
|
+
per?: number;
|
|
6
|
+
search?: string;
|
|
7
|
+
name?: string;
|
|
8
|
+
identification?: string;
|
|
9
|
+
classification?: string;
|
|
10
|
+
favorite?: boolean;
|
|
11
|
+
type?: ConversationType;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export interface ICreateConversationDTO {
|
|
15
|
+
name?: string;
|
|
16
|
+
description?: string;
|
|
17
|
+
type?: ConversationType;
|
|
18
|
+
users?: GetUserDTO[];
|
|
19
|
+
temporary?: boolean;
|
|
20
|
+
photo?: string;
|
|
21
|
+
admin?: boolean;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export type ConversationType = "chat" | "group";
|
|
@@ -1 +1,6 @@
|
|
|
1
|
-
export * as ExampleDTO from "./example.dto";
|
|
1
|
+
export * as ExampleDTO from "./example.dto";
|
|
2
|
+
export * as QuizDTO from "./quiz.dto";
|
|
3
|
+
export * as AgendaDTO from "./agenda.dto";
|
|
4
|
+
export * as ChatDTO from "./chat.dto";
|
|
5
|
+
export * as UserDTO from "./user.dto";
|
|
6
|
+
export * as FriendshipDTO from "./friendship.dto";
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface GetUserDTO {
|
|
2
|
+
name?: string;
|
|
3
|
+
identification?: string;
|
|
4
|
+
robbyson_user_id?: number;
|
|
5
|
+
initial?: boolean;
|
|
6
|
+
active?: boolean;
|
|
7
|
+
deleted?: boolean;
|
|
8
|
+
admin?: boolean;
|
|
9
|
+
status?: boolean;
|
|
10
|
+
user_id?: number;
|
|
11
|
+
createdAt?: Date;
|
|
12
|
+
createdBy?: string;
|
|
13
|
+
lastUpdatedAt?: Date;
|
|
14
|
+
lastUpdatedBy?: string;
|
|
15
|
+
photo?: string;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface IGetUserListDTO {
|
|
19
|
+
name?: string;
|
|
20
|
+
identification?: string;
|
|
21
|
+
page?: number;
|
|
22
|
+
per?: number;
|
|
23
|
+
active?: boolean;
|
|
24
|
+
}
|
package/src/services/index.d.ts
CHANGED
|
@@ -9,4 +9,8 @@ export * from "./humor.service.interface";
|
|
|
9
9
|
export * from "./document.service.interface";
|
|
10
10
|
export * from "./guidance.service.interface";
|
|
11
11
|
export * from "./validations.service.interface";
|
|
12
|
-
export * from "./
|
|
12
|
+
export * from "./quiz.service.interface";
|
|
13
|
+
export * from "./dtos";
|
|
14
|
+
export * from "./agenda.service.interface";
|
|
15
|
+
export * from "./chat.service.interface";
|
|
16
|
+
export * from "./friendship.service.interface";
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { QuizAnsweredModel, QuizModel, QuizNotAnsweredModel } from "../models";
|
|
2
|
+
import { QuizDTO } from "./dtos";
|
|
3
|
+
|
|
4
|
+
export interface IQuizService {
|
|
5
|
+
getQuizById(quizId: string): Promise<QuizModel>;
|
|
6
|
+
setRefusedQuiz(quizId: string): Promise<void>;
|
|
7
|
+
setAnsweredQuiz(
|
|
8
|
+
quizId: string,
|
|
9
|
+
body: QuizDTO.QuestionAnswerDTO
|
|
10
|
+
): Promise<void>;
|
|
11
|
+
getQuizzesToBeAnsweredLater(): Promise<QuizModel[]>;
|
|
12
|
+
getNotAnsweredQuizzes(): Promise<QuizNotAnsweredModel[]>;
|
|
13
|
+
getAnsweredQuizzes(): Promise<QuizAnsweredModel[]>;
|
|
14
|
+
getNotAnsweredQuizzesCount(): number;
|
|
15
|
+
getHistory(): Promise<[QuizModel[], QuizAnsweredModel[]]>;
|
|
16
|
+
}
|
|
@@ -2,7 +2,7 @@ import { IconHandle, ThemeBase } from "../models";
|
|
|
2
2
|
|
|
3
3
|
export interface IThemeService {
|
|
4
4
|
setApplicationTheme(contractorId?: number): Promise<Boolean>;
|
|
5
|
-
getIconAssetUrl(iconHandle: IconHandle): string;
|
|
5
|
+
getIconAssetUrl(iconHandle: IconHandle | undefined): string;
|
|
6
6
|
getIconsList(): readonly IconHandle[];
|
|
7
7
|
getIconsPath(): string;
|
|
8
8
|
getApplicationTheme(): ThemeBase| undefined;
|
|
@@ -1,14 +1,19 @@
|
|
|
1
|
-
import { UserMirrorModel } from "../models";
|
|
1
|
+
import { UserListModel, UserMirrorModel, UserModel } from "../models";
|
|
2
|
+
import { UserDTO } from "./dtos";
|
|
2
3
|
|
|
3
4
|
export interface IUserService {
|
|
4
|
-
|
|
5
|
+
getUser(id: number): Promise<UserModel>;
|
|
6
|
+
|
|
7
|
+
getUsers(body: {
|
|
5
8
|
filter: {
|
|
6
|
-
robbyson_user_id: number[]
|
|
7
|
-
}
|
|
9
|
+
robbyson_user_id: number[];
|
|
10
|
+
};
|
|
8
11
|
pagination: {
|
|
9
|
-
limit: number
|
|
10
|
-
}
|
|
12
|
+
limit: number;
|
|
13
|
+
};
|
|
11
14
|
}): Promise<any>;
|
|
12
15
|
|
|
13
16
|
getUserMirror(_id: number): Promise<UserMirrorModel>;
|
|
14
|
-
|
|
17
|
+
|
|
18
|
+
getUserList(params: UserDTO.IGetUserListDTO): Promise<UserListModel[]>;
|
|
19
|
+
}
|