@tec.pet/tecpet-sdk 0.0.29

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 (253) hide show
  1. package/.github/workflows/main.yml +152 -0
  2. package/README.md +33 -0
  3. package/changelog.md +8 -0
  4. package/dist/domain/availableTimes/availableTimes.service.d.ts +8 -0
  5. package/dist/domain/availableTimes/availableTimes.service.js +25 -0
  6. package/dist/domain/availableTimes/dto/pa.get-available-time.dto.d.ts +5 -0
  7. package/dist/domain/availableTimes/dto/pa.get-available-time.dto.js +2 -0
  8. package/dist/domain/availableTimes/dto/pa.get-available-times.dto.d.ts +8 -0
  9. package/dist/domain/availableTimes/dto/pa.get-available-times.dto.js +2 -0
  10. package/dist/domain/billingMethod/billingMethod.service.d.ts +8 -0
  11. package/dist/domain/billingMethod/billingMethod.service.js +21 -0
  12. package/dist/domain/billingMethod/dto/pa.get-billing-methods.dto.d.ts +19 -0
  13. package/dist/domain/billingMethod/dto/pa.get-billing-methods.dto.js +2 -0
  14. package/dist/domain/billingMethod/enum/billing-method-type.enum.d.ts +13 -0
  15. package/dist/domain/billingMethod/enum/billing-method-type.enum.js +18 -0
  16. package/dist/domain/billingMethod/index.d.ts +1 -0
  17. package/dist/domain/billingMethod/index.js +17 -0
  18. package/dist/domain/booking/booking.service.d.ts +13 -0
  19. package/dist/domain/booking/booking.service.js +38 -0
  20. package/dist/domain/booking/dto/pa.change-booking-status.dto.d.ts +11 -0
  21. package/dist/domain/booking/dto/pa.change-booking-status.dto.js +8 -0
  22. package/dist/domain/booking/dto/pa.create-booking.dto.d.ts +9 -0
  23. package/dist/domain/booking/dto/pa.create-booking.dto.js +2 -0
  24. package/dist/domain/booking/dto/pa.get-booking.dto.d.ts +21 -0
  25. package/dist/domain/booking/dto/pa.get-booking.dto.js +13 -0
  26. package/dist/domain/booking/dto/pa.get-bookings.dto.d.ts +9 -0
  27. package/dist/domain/booking/dto/pa.get-bookings.dto.js +2 -0
  28. package/dist/domain/booking/index.d.ts +1 -0
  29. package/dist/domain/booking/index.js +17 -0
  30. package/dist/domain/breed/breed.service.d.ts +7 -0
  31. package/dist/domain/breed/breed.service.js +23 -0
  32. package/dist/domain/breed/dto/pa.get-breed.dto.d.ts +10 -0
  33. package/dist/domain/breed/dto/pa.get-breed.dto.js +2 -0
  34. package/dist/domain/breed/dto/pa.get-breeds.dto.d.ts +6 -0
  35. package/dist/domain/breed/dto/pa.get-breeds.dto.js +2 -0
  36. package/dist/domain/chatbot/chatbotService.d.ts +15 -0
  37. package/dist/domain/chatbot/chatbotService.js +45 -0
  38. package/dist/domain/chatbot/dto/chatbot-settings.json.d.ts +257 -0
  39. package/dist/domain/chatbot/dto/chatbot-settings.json.js +8 -0
  40. package/dist/domain/chatbot/dto/get-chatbot-formatted-messages.dto.d.ts +17 -0
  41. package/dist/domain/chatbot/dto/get-chatbot-formatted-messages.dto.js +3 -0
  42. package/dist/domain/chatbot/dto/pa.change-notification-status.dto.d.ts +17 -0
  43. package/dist/domain/chatbot/dto/pa.change-notification-status.dto.js +13 -0
  44. package/dist/domain/chatbot/dto/pa.handle-button-action.dto.d.ts +11 -0
  45. package/dist/domain/chatbot/dto/pa.handle-button-action.dto.js +2 -0
  46. package/dist/domain/chatbot/enum/chatbot-channel-type.enum.d.ts +3 -0
  47. package/dist/domain/chatbot/enum/chatbot-channel-type.enum.js +7 -0
  48. package/dist/domain/chatbot/enum/chatbot-mode.enum.d.ts +5 -0
  49. package/dist/domain/chatbot/enum/chatbot-mode.enum.js +9 -0
  50. package/dist/domain/chatbot/enum/chatbot-platform-type.enum.d.ts +4 -0
  51. package/dist/domain/chatbot/enum/chatbot-platform-type.enum.js +8 -0
  52. package/dist/domain/chatbot/enum/chatbotActionEnums/chatbot-action-mode-type.enum.d.ts +5 -0
  53. package/dist/domain/chatbot/enum/chatbotActionEnums/chatbot-action-mode-type.enum.js +9 -0
  54. package/dist/domain/chatbot/enum/chatbotActionEnums/chatbot-action-schedule-permission.enum.d.ts +5 -0
  55. package/dist/domain/chatbot/enum/chatbotActionEnums/chatbot-action-schedule-permission.enum.js +9 -0
  56. package/dist/domain/chatbot/enum/chatbotActionEnums/chatbot-action-type.enum.d.ts +9 -0
  57. package/dist/domain/chatbot/enum/chatbotActionEnums/chatbot-action-type.enum.js +13 -0
  58. package/dist/domain/chatbot/enum/chatbotActionEnums/media-type.enum.d.ts +5 -0
  59. package/dist/domain/chatbot/enum/chatbotActionEnums/media-type.enum.js +9 -0
  60. package/dist/domain/chatbot/enum/chatbotBehaviorEnums/chatbot-behavior-type.enum.d.ts +4 -0
  61. package/dist/domain/chatbot/enum/chatbotBehaviorEnums/chatbot-behavior-type.enum.js +8 -0
  62. package/dist/domain/chatbot/enum/chatbotBehaviorEnums/chatbot-inactive-employee-action.enum.d.ts +4 -0
  63. package/dist/domain/chatbot/enum/chatbotBehaviorEnums/chatbot-inactive-employee-action.enum.js +8 -0
  64. package/dist/domain/chatbot/enum/chatbotBehaviorEnums/chatbot-timeout-action.enum.d.ts +5 -0
  65. package/dist/domain/chatbot/enum/chatbotBehaviorEnums/chatbot-timeout-action.enum.js +9 -0
  66. package/dist/domain/chatbot/enum/chatbotFluxEnums/chatbot-flux-type.enum.d.ts +10 -0
  67. package/dist/domain/chatbot/enum/chatbotFluxEnums/chatbot-flux-type.enum.js +14 -0
  68. package/dist/domain/chatbot/enum/chatbotGuidanceEnums/chatbot-action-button-type.enum.d.ts +12 -0
  69. package/dist/domain/chatbot/enum/chatbotGuidanceEnums/chatbot-action-button-type.enum.js +16 -0
  70. package/dist/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-info-collection-subtype.enum.d.ts +32 -0
  71. package/dist/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-info-collection-subtype.enum.js +36 -0
  72. package/dist/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-info-collection-type.enum.d.ts +12 -0
  73. package/dist/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-info-collection-type.enum.js +16 -0
  74. package/dist/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-price-display-mode.enum.d.ts +5 -0
  75. package/dist/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-price-display-mode.enum.js +9 -0
  76. package/dist/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-size_display-mode.enum.d.ts +5 -0
  77. package/dist/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-size_display-mode.enum.js +9 -0
  78. package/dist/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-time-display-mode.enum.d.ts +5 -0
  79. package/dist/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-time-display-mode.enum.js +9 -0
  80. package/dist/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-time-selection-behavior.enum.d.ts +4 -0
  81. package/dist/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-time-selection-behavior.enum.js +8 -0
  82. package/dist/domain/chatbot/enum/chatbotSendingInfoItemEnums/chatbot-sending-info-item-type.enum.d.ts +7 -0
  83. package/dist/domain/chatbot/enum/chatbotSendingInfoItemEnums/chatbot-sending-info-item-type.enum.js +11 -0
  84. package/dist/domain/chatbot/enum/chatbotSettingsEnums/chatbot-ai-voice.enum.d.ts +4 -0
  85. package/dist/domain/chatbot/enum/chatbotSettingsEnums/chatbot-ai-voice.enum.js +8 -0
  86. package/dist/domain/chatbot/enum/chatbotSettingsEnums/chatbot-channel-type.enum.d.ts +3 -0
  87. package/dist/domain/chatbot/enum/chatbotSettingsEnums/chatbot-channel-type.enum.js +7 -0
  88. package/dist/domain/chatbot/enum/chatbotSettingsEnums/chatbot-mode.enum.d.ts +5 -0
  89. package/dist/domain/chatbot/enum/chatbotSettingsEnums/chatbot-mode.enum.js +9 -0
  90. package/dist/domain/chatbot/enum/chatbotSettingsEnums/chatbot-platform-type.enum.d.ts +4 -0
  91. package/dist/domain/chatbot/enum/chatbotSettingsEnums/chatbot-platform-type.enum.js +8 -0
  92. package/dist/domain/chatbot/enum/chatbotSettingsEnums/chatbot-settings-ai-personality.enum.d.ts +3 -0
  93. package/dist/domain/chatbot/enum/chatbotSettingsEnums/chatbot-settings-ai-personality.enum.js +7 -0
  94. package/dist/domain/chatbot/enum/chatbotTriggerEnums/chatbot-trigger-pattern-type.enum.d.ts +4 -0
  95. package/dist/domain/chatbot/enum/chatbotTriggerEnums/chatbot-trigger-pattern-type.enum.js +8 -0
  96. package/dist/domain/chatbot/index.d.ts +7 -0
  97. package/dist/domain/chatbot/index.js +23 -0
  98. package/dist/domain/client/client.service.d.ts +13 -0
  99. package/dist/domain/client/client.service.js +42 -0
  100. package/dist/domain/client/dto/pa.create-client.dto.d.ts +10 -0
  101. package/dist/domain/client/dto/pa.create-client.dto.js +2 -0
  102. package/dist/domain/client/dto/pa.edit-client.dto.d.ts +10 -0
  103. package/dist/domain/client/dto/pa.edit-client.dto.js +13 -0
  104. package/dist/domain/client/dto/pa.get-client-summary.dto.d.ts +10 -0
  105. package/dist/domain/client/dto/pa.get-client-summary.dto.js +2 -0
  106. package/dist/domain/client/dto/pa.get-client.dto.d.ts +19 -0
  107. package/dist/domain/client/dto/pa.get-client.dto.js +2 -0
  108. package/dist/domain/client/dto/pa.get-clients.dto.d.ts +9 -0
  109. package/dist/domain/client/dto/pa.get-clients.dto.js +2 -0
  110. package/dist/domain/client/index.d.ts +3 -0
  111. package/dist/domain/client/index.js +19 -0
  112. package/dist/domain/combo/combo.service.d.ts +8 -0
  113. package/dist/domain/combo/combo.service.js +20 -0
  114. package/dist/domain/combo/dto/pa.get-combo-pricing.dto.d.ts +9 -0
  115. package/dist/domain/combo/dto/pa.get-combo-pricing.dto.js +2 -0
  116. package/dist/domain/employee/dto/employee.dto.d.ts +6 -0
  117. package/dist/domain/employee/dto/employee.dto.js +2 -0
  118. package/dist/domain/pet/dto/pa.create-pet.dto.d.ts +12 -0
  119. package/dist/domain/pet/dto/pa.create-pet.dto.js +2 -0
  120. package/dist/domain/pet/dto/pa.edit-pet.dto.d.ts +14 -0
  121. package/dist/domain/pet/dto/pa.edit-pet.dto.js +15 -0
  122. package/dist/domain/pet/dto/pa.get-pet-activity.dto.d.ts +5 -0
  123. package/dist/domain/pet/dto/pa.get-pet-activity.dto.js +2 -0
  124. package/dist/domain/pet/dto/pa.get-pet.dto.d.ts +20 -0
  125. package/dist/domain/pet/dto/pa.get-pet.dto.js +8 -0
  126. package/dist/domain/pet/dto/pa.get-pets.dto.d.ts +6 -0
  127. package/dist/domain/pet/dto/pa.get-pets.dto.js +2 -0
  128. package/dist/domain/pet/index.d.ts +1 -0
  129. package/dist/domain/pet/index.js +17 -0
  130. package/dist/domain/pet/pet.service.d.ts +11 -0
  131. package/dist/domain/pet/pet.service.js +33 -0
  132. package/dist/domain/segment/enum/segment.enum.d.ts +6 -0
  133. package/dist/domain/segment/enum/segment.enum.js +10 -0
  134. package/dist/domain/service/dto/pa.get-service-pricing.dto.d.ts +24 -0
  135. package/dist/domain/service/dto/pa.get-service-pricing.dto.js +13 -0
  136. package/dist/domain/service/service.service.d.ts +8 -0
  137. package/dist/domain/service/service.service.js +21 -0
  138. package/dist/domain/shop/dto/pa.get-shop-configurations.dto.d.ts +88 -0
  139. package/dist/domain/shop/dto/pa.get-shop-configurations.dto.js +2 -0
  140. package/dist/domain/shop/index.d.ts +1 -0
  141. package/dist/domain/shop/index.js +17 -0
  142. package/dist/domain/shop/shop.service.d.ts +7 -0
  143. package/dist/domain/shop/shop.service.js +17 -0
  144. package/dist/domain/specie/dto/pa.get-specie.dto.d.ts +6 -0
  145. package/dist/domain/specie/dto/pa.get-specie.dto.js +2 -0
  146. package/dist/domain/specie/dto/pa.get-species.dto.d.ts +6 -0
  147. package/dist/domain/specie/dto/pa.get-species.dto.js +2 -0
  148. package/dist/domain/specie/enum/specie-type.enum.d.ts +20 -0
  149. package/dist/domain/specie/enum/specie-type.enum.js +25 -0
  150. package/dist/domain/specie/index.d.ts +0 -0
  151. package/dist/domain/specie/index.js +3 -0
  152. package/dist/domain/specie/specie.service.d.ts +7 -0
  153. package/dist/domain/specie/specie.service.js +19 -0
  154. package/dist/domain/token/dto/pa.extract-token.dto.d.ts +7 -0
  155. package/dist/domain/token/dto/pa.extract-token.dto.js +2 -0
  156. package/dist/domain/token/index.d.ts +1 -0
  157. package/dist/domain/token/index.js +17 -0
  158. package/dist/domain/token/token.service.d.ts +7 -0
  159. package/dist/domain/token/token.service.js +17 -0
  160. package/dist/domain/types/pagination.types.d.ts +10 -0
  161. package/dist/domain/types/pagination.types.js +2 -0
  162. package/dist/index.d.ts +34 -0
  163. package/dist/index.js +67 -0
  164. package/dist/infra/http/client.http.d.ts +11 -0
  165. package/dist/infra/http/client.http.js +79 -0
  166. package/dist/infra/logger/logger.interface.d.ts +7 -0
  167. package/dist/infra/logger/logger.interface.js +2 -0
  168. package/dist/infra/logger/stdout.logger.d.ts +15 -0
  169. package/dist/infra/logger/stdout.logger.js +81 -0
  170. package/jest.config.js +14 -0
  171. package/package.json +34 -0
  172. package/scripts/dev-link.sh +45 -0
  173. package/src/domain/availableTimes/availableTimes.service.ts +23 -0
  174. package/src/domain/availableTimes/dto/pa.get-available-time.dto.ts +5 -0
  175. package/src/domain/availableTimes/dto/pa.get-available-times.dto.ts +9 -0
  176. package/src/domain/billingMethod/billingMethod.service.ts +20 -0
  177. package/src/domain/billingMethod/dto/pa.get-billing-methods.dto.ts +22 -0
  178. package/src/domain/billingMethod/enum/billing-method-type.enum.ts +14 -0
  179. package/src/domain/billingMethod/index.ts +1 -0
  180. package/src/domain/booking/booking.service.ts +43 -0
  181. package/src/domain/booking/dto/pa.change-booking-status.dto.ts +13 -0
  182. package/src/domain/booking/dto/pa.create-booking.dto.ts +10 -0
  183. package/src/domain/booking/dto/pa.get-booking.dto.ts +19 -0
  184. package/src/domain/booking/dto/pa.get-bookings.dto.ts +11 -0
  185. package/src/domain/booking/index.ts +1 -0
  186. package/src/domain/breed/breed.service.ts +23 -0
  187. package/src/domain/breed/dto/pa.get-breed.dto.ts +11 -0
  188. package/src/domain/breed/dto/pa.get-breeds.dto.ts +8 -0
  189. package/src/domain/chatbot/chatbotService.ts +57 -0
  190. package/src/domain/chatbot/dto/chatbot-settings.json.ts +254 -0
  191. package/src/domain/chatbot/dto/get-chatbot-formatted-messages.dto.ts +20 -0
  192. package/src/domain/chatbot/dto/pa.change-notification-status.dto.ts +19 -0
  193. package/src/domain/chatbot/dto/pa.handle-button-action.dto.ts +13 -0
  194. package/src/domain/chatbot/enum/chatbotActionEnums/chatbot-action-mode-type.enum.ts +5 -0
  195. package/src/domain/chatbot/enum/chatbotActionEnums/chatbot-action-schedule-permission.enum.ts +5 -0
  196. package/src/domain/chatbot/enum/chatbotActionEnums/chatbot-action-type.enum.ts +9 -0
  197. package/src/domain/chatbot/enum/chatbotActionEnums/media-type.enum.ts +5 -0
  198. package/src/domain/chatbot/enum/chatbotBehaviorEnums/chatbot-behavior-type.enum.ts +4 -0
  199. package/src/domain/chatbot/enum/chatbotBehaviorEnums/chatbot-inactive-employee-action.enum.ts +4 -0
  200. package/src/domain/chatbot/enum/chatbotBehaviorEnums/chatbot-timeout-action.enum.ts +5 -0
  201. package/src/domain/chatbot/enum/chatbotFluxEnums/chatbot-flux-type.enum.ts +10 -0
  202. package/src/domain/chatbot/enum/chatbotGuidanceEnums/chatbot-action-button-type.enum.ts +12 -0
  203. package/src/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-info-collection-subtype.enum.ts +32 -0
  204. package/src/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-info-collection-type.enum.ts +12 -0
  205. package/src/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-price-display-mode.enum.ts +5 -0
  206. package/src/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-size_display-mode.enum.ts +5 -0
  207. package/src/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-time-display-mode.enum.ts +5 -0
  208. package/src/domain/chatbot/enum/chatbotInfoCollectionEnums/chatbot-time-selection-behavior.enum.ts +4 -0
  209. package/src/domain/chatbot/enum/chatbotSendingInfoItemEnums/chatbot-sending-info-item-type.enum.ts +7 -0
  210. package/src/domain/chatbot/enum/chatbotSettingsEnums/chatbot-ai-voice.enum.ts +4 -0
  211. package/src/domain/chatbot/enum/chatbotSettingsEnums/chatbot-channel-type.enum.ts +3 -0
  212. package/src/domain/chatbot/enum/chatbotSettingsEnums/chatbot-mode.enum.ts +5 -0
  213. package/src/domain/chatbot/enum/chatbotSettingsEnums/chatbot-platform-type.enum.ts +4 -0
  214. package/src/domain/chatbot/enum/chatbotSettingsEnums/chatbot-settings-ai-personality.enum.ts +3 -0
  215. package/src/domain/chatbot/enum/chatbotTriggerEnums/chatbot-trigger-pattern-type.enum.ts +4 -0
  216. package/src/domain/chatbot/index.ts +8 -0
  217. package/src/domain/client/client.service.ts +48 -0
  218. package/src/domain/client/dto/pa.create-client.dto.ts +11 -0
  219. package/src/domain/client/dto/pa.edit-client.dto.ts +11 -0
  220. package/src/domain/client/dto/pa.get-client-summary.dto.ts +11 -0
  221. package/src/domain/client/dto/pa.get-client.dto.ts +20 -0
  222. package/src/domain/client/dto/pa.get-clients.dto.ts +11 -0
  223. package/src/domain/client/index.ts +3 -0
  224. package/src/domain/combo/combo.service.ts +20 -0
  225. package/src/domain/combo/dto/pa.get-combo-pricing.dto.ts +10 -0
  226. package/src/domain/employee/dto/employee.dto.ts +6 -0
  227. package/src/domain/pet/dto/pa.create-pet.dto.ts +13 -0
  228. package/src/domain/pet/dto/pa.edit-pet.dto.ts +15 -0
  229. package/src/domain/pet/dto/pa.get-pet-activity.dto.ts +5 -0
  230. package/src/domain/pet/dto/pa.get-pet.dto.ts +22 -0
  231. package/src/domain/pet/dto/pa.get-pets.dto.ts +8 -0
  232. package/src/domain/pet/index.ts +1 -0
  233. package/src/domain/pet/pet.service.ts +36 -0
  234. package/src/domain/segment/enum/segment.enum.ts +6 -0
  235. package/src/domain/service/dto/pa.get-service-pricing.dto.ts +27 -0
  236. package/src/domain/service/service.service.ts +20 -0
  237. package/src/domain/shop/dto/pa.get-shop-configurations.dto.ts +92 -0
  238. package/src/domain/shop/index.ts +1 -0
  239. package/src/domain/shop/shop.service.ts +15 -0
  240. package/src/domain/specie/dto/pa.get-specie.dto.ts +7 -0
  241. package/src/domain/specie/dto/pa.get-species.dto.ts +7 -0
  242. package/src/domain/specie/enum/specie-type.enum.ts +21 -0
  243. package/src/domain/specie/index.ts +2 -0
  244. package/src/domain/specie/specie.service.ts +18 -0
  245. package/src/domain/token/dto/pa.extract-token.dto.ts +4 -0
  246. package/src/domain/token/index.ts +1 -0
  247. package/src/domain/token/token.service.ts +15 -0
  248. package/src/domain/types/pagination.types.ts +10 -0
  249. package/src/index.ts +52 -0
  250. package/src/infra/http/client.http.ts +91 -0
  251. package/src/infra/logger/logger.interface.ts +7 -0
  252. package/src/infra/logger/stdout.logger.ts +85 -0
  253. package/tsconfig.json +17 -0
@@ -0,0 +1,254 @@
1
+ import { ChatbotActionModeTypeEnum } from "../enum/chatbotActionEnums/chatbot-action-mode-type.enum";
2
+ import { ChatBotActionSchedulePermissionEnum } from "../enum/chatbotActionEnums/chatbot-action-schedule-permission.enum";
3
+ import { ChatbotActionTypeEnum } from "../enum/chatbotActionEnums/chatbot-action-type.enum";
4
+ import { MediaTypeEnum } from "../enum/chatbotActionEnums/media-type.enum";
5
+ import { ChatbotBehaviorTypeEnum } from "../enum/chatbotBehaviorEnums/chatbot-behavior-type.enum";
6
+ import { ChatbotInactiveEmployeeActionEnum } from "../enum/chatbotBehaviorEnums/chatbot-inactive-employee-action.enum";
7
+ import { ChatbotTimeoutActionEnum } from "../enum/chatbotBehaviorEnums/chatbot-timeout-action.enum";
8
+ import { ChatbotFluxTypeEnum } from "../enum/chatbotFluxEnums/chatbot-flux-type.enum";
9
+ import { ChatbotActionButtonTypeEnum } from "../enum/chatbotGuidanceEnums/chatbot-action-button-type.enum";
10
+ import { ChatbotPriceDisplayModeEnum } from "../enum/chatbotInfoCollectionEnums/chatbot-price-display-mode.enum";
11
+ import { ChatbotSizeDisplayModeEnum } from "../enum/chatbotInfoCollectionEnums/chatbot-size_display-mode.enum";
12
+ import { ChatbotTimeDisplayModeEnum } from "../enum/chatbotInfoCollectionEnums/chatbot-time-display-mode.enum";
13
+ import {
14
+ ChatbotInfoCollectionBehaviorEnum
15
+ } from "../enum/chatbotInfoCollectionEnums/chatbot-time-selection-behavior.enum";
16
+ import { ChatbotSendingInfoItemTypeEnum } from "../enum/chatbotSendingInfoItemEnums/chatbot-sending-info-item-type.enum";
17
+ import { ChatbotAIVoiceEnum } from "../enum/chatbotSettingsEnums/chatbot-ai-voice.enum";
18
+ import { ChatbotChannelTypeEnum } from "../enum/chatbotSettingsEnums/chatbot-channel-type.enum";
19
+ import { ChatbotModeEnum } from "../enum/chatbotSettingsEnums/chatbot-mode.enum";
20
+ import { ChatbotPlatformTypeEnum } from "../enum/chatbotSettingsEnums/chatbot-platform-type.enum";
21
+ import { ChatbotSettingsAIPersonalityEnum } from "../enum/chatbotSettingsEnums/chatbot-settings-ai-personality.enum";
22
+ import { ChatbotTriggerPatternTypeEnum } from "../enum/chatbotTriggerEnums/chatbot-trigger-pattern-type.enum";
23
+
24
+ export interface Service {
25
+ id: number;
26
+ }
27
+
28
+ export interface PaChatbotSettingsResponse {
29
+ newClientMessage?: string;
30
+ registeredClientMessage?: string;
31
+ onComercialTimeMessage?: string;
32
+ outOfComercialTimeMessage?: string;
33
+ channelType: ChatbotChannelTypeEnum;
34
+ mode: ChatbotModeEnum;
35
+ aiEnabled: boolean;
36
+ aiPersonality: ChatbotSettingsAIPersonalityEnum;
37
+ voiceResponseEnabled: boolean;
38
+ aiVoice: ChatbotAIVoiceEnum;
39
+ platformType: ChatbotPlatformTypeEnum;
40
+ chatbotActions: ChatbotActionJson[];
41
+ chatbotBehaviors: ChatbotBehaviorDto;
42
+ platformSettings: {
43
+ id: string;
44
+ token: string;
45
+ };
46
+ shop: {
47
+ id: number;
48
+ name: string;
49
+ };
50
+ }
51
+
52
+ export class ChatbotBehaviorDto {
53
+ human?: {
54
+ timeoutMessage: string;
55
+ onTimeoutAction: ChatbotTimeoutActionEnum;
56
+ inactiveEmployeeAction: ChatbotInactiveEmployeeActionEnum;
57
+ timeoutNotificationMinutes: number;
58
+ minutesToClosing: number;
59
+ employee: ChatbotEmployee;
60
+ alternativeEmployee: ChatbotEmployee;
61
+ behavior: ChatbotBehaviorTypeEnum;
62
+ };
63
+ bot?: {
64
+ timeoutMessage: string;
65
+ closingMessage: string;
66
+ onTimeoutAction: ChatbotTimeoutActionEnum;
67
+ inactiveEmployeeAction: ChatbotInactiveEmployeeActionEnum;
68
+ timeoutNotificationMinutes: number;
69
+ behavior: ChatbotBehaviorTypeEnum;
70
+ };
71
+ }
72
+
73
+ export interface ChatbotEmployee {
74
+ id: number;
75
+ phoneNumber: string;
76
+ name: string;
77
+ }
78
+
79
+ export interface MediaDto {
80
+ id: string;
81
+ mimeType: string;
82
+ extension: string;
83
+ type: MediaTypeEnum;
84
+ hasThumb: boolean;
85
+ fileName: string;
86
+ link: string;
87
+ }
88
+
89
+ export interface ChatbotSendingInfoItemDto {
90
+ id: string;
91
+ type: ChatbotSendingInfoItemTypeEnum;
92
+ content?: string;
93
+ medias?: MediaDto[];
94
+ }
95
+
96
+ export interface ChatbotActionJson {
97
+ id:string;
98
+ name: string;
99
+ enabled: boolean;
100
+ description: string;
101
+ schedulePermission?: ChatBotActionSchedulePermissionEnum;
102
+ guidanceOptions: ChatbotActionButtonDto[];
103
+ sendingInfoItems: ChatbotSendingInfoItemDto[];
104
+ infoCollectionMenus: InfoCollectionMenuJson;
105
+ mode: ChatbotActionModeTypeEnum;
106
+ actionType: ChatbotActionTypeEnum;
107
+ conclusionMessage?: string;
108
+ chatbotFlux: ChatbotFluxJson;
109
+ }
110
+
111
+ export interface ChatbotFluxJson {
112
+ id: string;
113
+ name: string;
114
+ fluxType: ChatbotFluxTypeEnum;
115
+ }
116
+
117
+ export interface ChatbotActionReference {
118
+ id: string;
119
+ name: string;
120
+ }
121
+
122
+ export interface ChatbotTriggerJson {
123
+ id: string;
124
+
125
+ name: string;
126
+
127
+ enabled: boolean;
128
+
129
+ keyText: string;
130
+
131
+ chatbotAction: ChatbotActionReference;
132
+
133
+ description?: string;
134
+
135
+ limit?: Date;
136
+
137
+ patternType: ChatbotTriggerPatternTypeEnum;
138
+ }
139
+
140
+ export interface ChatbotActionButtonDto {
141
+ id: string;
142
+ buttonTitle: string;
143
+ actionButtonType: ChatbotActionButtonTypeEnum;
144
+ phone: string;
145
+ url: string;
146
+ }
147
+
148
+ export interface InfoCollectionMenuJson {
149
+ petInfo?: {
150
+ petName: {
151
+ enabled: boolean;
152
+ message: string;
153
+ };
154
+ petSpecie: {
155
+ enabled: boolean;
156
+ message: string;
157
+ };
158
+ petBreed: { enabled?: boolean; message: string };
159
+ petSize: { enabled?: boolean; message: string };
160
+ petFur: { enabled?: boolean; message: string; sizeDisplayMode: ChatbotSizeDisplayModeEnum };
161
+ };
162
+ adaptionService?: {
163
+ allowAdaptionService: {
164
+ enabled: boolean;
165
+ message: string;
166
+ service: Service;
167
+ };
168
+ };
169
+ serviceSelection?: {
170
+ service: {
171
+ message: string;
172
+ };
173
+ showServiceValues: { enabled: boolean; priceDisplayMode: ChatbotPriceDisplayModeEnum };
174
+ serviceAddons: { enabled: boolean; message: string };
175
+ serviceProfessionalChoice: { enabled: boolean };
176
+ showServicePromotions: { enabled: boolean };
177
+ };
178
+ takeAndBring?: {
179
+ allowTakeAndBring: { enabled: boolean; message: string; minAdvanceHours: number };
180
+ };
181
+ timeSelection?: {
182
+ timeSelectionBehavior: {
183
+ message: string;
184
+ behavior: ChatbotInfoCollectionBehaviorEnum;
185
+ timeDisplayMode: ChatbotTimeDisplayModeEnum;
186
+ minAdvanceHours: number;
187
+ };
188
+ };
189
+ editBooking?: {
190
+ allowChangeDateAndTime: {
191
+ enabled: boolean;
192
+ };
193
+ allowCancel: {
194
+ enabled: boolean;
195
+ };
196
+ };
197
+ guidance?: {
198
+ guidanceMessage: {
199
+ message: string;
200
+ };
201
+ };
202
+ responseMessage?: {
203
+ onCommercialTime: {
204
+ message: string;
205
+ };
206
+ outOfCommercialTime: {
207
+ message: string;
208
+ };
209
+ };
210
+ healthPlan?: {
211
+ askForHealthPlan: {
212
+ message: string;
213
+ enabled: boolean;
214
+ };
215
+ transferToAttendantIfHealthPlan: {
216
+ enabled: true;
217
+ behavior: ChatbotInfoCollectionBehaviorEnum.SEND_TO_ATTENDANT;
218
+ };
219
+ };
220
+ extraInfo?: {
221
+ confirmClientName: {
222
+ enabled: boolean;
223
+ message: string;
224
+ };
225
+ clientCpf: {
226
+ enabled: boolean;
227
+ message: string;
228
+ };
229
+ scheduleToAnotherPet: {
230
+ enabled: boolean;
231
+ message: string;
232
+ };
233
+ clientAddress: {
234
+ enabled: boolean;
235
+ message: string;
236
+ };
237
+ petGender: {
238
+ enabled: boolean;
239
+ message: string;
240
+ };
241
+ petBirthDate: {
242
+ enabled: boolean;
243
+ message: string;
244
+ };
245
+ petWeight: {
246
+ enabled: boolean;
247
+ message: string;
248
+ };
249
+ petDefaultChecklist: {
250
+ enabled: boolean;
251
+ message: string;
252
+ };
253
+ };
254
+ }
@@ -0,0 +1,20 @@
1
+ export interface ChatbotSettingsTagIds {
2
+ clientId?: number;
3
+ petId?: number;
4
+ invoiceId?: number;
5
+ serviceId?: number;
6
+ bookingId?: number;
7
+ }
8
+
9
+ export interface ChatbotMessagesToFormat {
10
+ text: string;
11
+ };
12
+
13
+ export interface GetChatbotFormattedMessagesInput {
14
+ messages: ChatbotMessagesToFormat[];
15
+ ids: ChatbotSettingsTagIds;
16
+ }
17
+
18
+ export interface PaGetChatbotFormattedMessagesResponse {
19
+ message: string
20
+ }
@@ -0,0 +1,19 @@
1
+ export enum NotificationStatus {
2
+ NEW = 'NEW',
3
+ SENT = 'SENT',
4
+ SENT_WA = 'SENT_WA',
5
+ DELIVERED = 'DELIVERED',
6
+ READ = 'READ',
7
+ ANSWERED = 'ANSWERED',
8
+ CANCELED = 'CANCELED',
9
+ }
10
+
11
+ export interface PaChangeNotificationStatusInput {
12
+ status: NotificationStatus;
13
+ date: Date;
14
+ }
15
+
16
+ export interface PaChangeNotificationStatusResponse {
17
+ success: boolean;
18
+ message: string;
19
+ }
@@ -0,0 +1,13 @@
1
+ import {ChatbotActionButtonTypeEnum} from "../enum/chatbotGuidanceEnums/chatbot-action-button-type.enum";
2
+
3
+ export interface PaHandleButtonActionInput {
4
+ type: ChatbotActionButtonTypeEnum;
5
+ phone?: string;
6
+ clientName?: string;
7
+ invoiceId?: string;
8
+ }
9
+
10
+ export interface PaHandleButtonActionResponse {
11
+ success: boolean;
12
+ message: string;
13
+ }
@@ -0,0 +1,5 @@
1
+ export enum ChatbotActionModeTypeEnum {
2
+ INTERN_FLUX = 'INTERN_FLUX',
3
+ CUSTOM_FLUX = 'CUSTOM_FLUX',
4
+ MESSAGES = 'MESSAGES',
5
+ }
@@ -0,0 +1,5 @@
1
+ export enum ChatBotActionSchedulePermissionEnum {
2
+ ALL = 'ALL',
3
+ CLIENTS = 'CLIENTS',
4
+ NEW_CLIENTS = 'NEW_CLIENTS',
5
+ }
@@ -0,0 +1,9 @@
1
+ export enum ChatbotActionTypeEnum {
2
+ PET_SHOP = 'PET_SHOP',
3
+ CLINIC = 'CLINIC',
4
+ DAY_CARE = 'DAY_CARE',
5
+ HOTEL = 'HOTEL',
6
+ BOOKING = 'BOOKING',
7
+ HUMAN_SUPPORT = 'HUMAN_SUPPORT',
8
+ MESSAGES = 'MESSAGES',
9
+ }
@@ -0,0 +1,5 @@
1
+ export enum MediaTypeEnum {
2
+ DOCUMENT = 'DOCUMENT',
3
+ IMAGE = 'IMAGE',
4
+ VIDEO = 'VIDEO',
5
+ }
@@ -0,0 +1,4 @@
1
+ export enum ChatbotBehaviorTypeEnum {
2
+ HUMAN = 'HUMAN',
3
+ BOT = 'BOT',
4
+ }
@@ -0,0 +1,4 @@
1
+ export enum ChatbotInactiveEmployeeActionEnum {
2
+ DO_NOTHING = 'DO_NOTHING',
3
+ NOTIFY = 'NOTIFY',
4
+ }
@@ -0,0 +1,5 @@
1
+ export enum ChatbotTimeoutActionEnum {
2
+ END = 'END',
3
+ END_AND_MESSAGE = 'END_AND_MESSAGE',
4
+ TRANSFER_TO_HUMAN = 'TRANSFER_TO_HUMAN',
5
+ }
@@ -0,0 +1,10 @@
1
+ export enum ChatbotFluxTypeEnum {
2
+ PET_SHOP = 'PET_SHOP',
3
+ CLINIC = 'CLINIC',
4
+ DAY_CARE = 'DAY_CARE',
5
+ HOTEL = 'HOTEL',
6
+ BOOKING = 'BOOKING',
7
+ HUMAN_SUPPORT = 'HUMAN_SUPPORT',
8
+ MESSAGES = 'MESSAGES',
9
+ AI = 'AI',
10
+ }
@@ -0,0 +1,12 @@
1
+ export enum ChatbotActionButtonTypeEnum {
2
+ NONE = 'NONE',
3
+ BACK_TO_HOME = 'BACK_TO_HOME',
4
+ BOOKING_CONFIRM = 'BOOKING_CONFIRM',
5
+ BOOKING_CANCEL = 'BOOKING_CANCEL',
6
+ BOOKING_RESCHEDULE = 'BOOKING_RESCHEDULE',
7
+ TRANSFER_TO_HUMAN = 'TRANSFER_TO_HUMAN',
8
+ PAY_INVOICE_WITH_VOUCHER = 'PAY_INVOICE_WITH_VOUCHER',
9
+ CALL = 'CALL',
10
+ URL = 'URL',
11
+ END = 'END',
12
+ }
@@ -0,0 +1,32 @@
1
+ export enum ChatbotInfoCollectionSubtypeEnum {
2
+ 'CLIENT_CPF' = 'CLIENT_CPF',
3
+ 'CLIENT_ADDRESS' = 'CLIENT_ADDRESS',
4
+ 'CLIENT_NAME' = 'CLIENT_NAME',
5
+ 'CONFIRM_CLIENT_NAME' = 'CONFIRM_CLIENT_NAME',
6
+ 'ALLOW_TAKE_AND_BRING' = 'ALLOW_TAKE_AND_BRING',
7
+ 'PET_SPECIE' = 'PET_SPECIE',
8
+ 'PET_BREED' = 'PET_BREED',
9
+ 'PET_NAME' = 'PET_NAME',
10
+ 'PET_SIZE' = 'PET_SIZE',
11
+ 'PET_FUR' = 'PET_FUR',
12
+ 'PET_GENDER' = 'PET_GENDER',
13
+ 'PET_BIRTH_DATE' = 'PET_BIRTH_DATE',
14
+ 'PET_DEFAULT_CHECKLIST' = 'PET_DEFAULT_CHECKLIST',
15
+ 'PET_NEUTERED' = 'PET_NEUTERED',
16
+ 'PET_WEIGHT' = 'PET_WEIGHT',
17
+ 'SERVICE' = 'SERVICE',
18
+ 'SHOW_SERVICE_VALUES' = 'SHOW_SERVICE_VALUES',
19
+ 'SERVICE_PROFESSIONAL_CHOICE' = 'SERVICE_PROFESSIONAL_CHOICE',
20
+ 'SERVICE_ADDONS' = 'SERVICE_ADDONS',
21
+ 'SERVICE_SHOW_PROMOTIONS' = 'SERVICE_SHOW_PROMOTIONS',
22
+ 'SCHEDULE_TO_ANOTHER_PET' = 'SCHEDULE_TO_ANOTHER_PET',
23
+ 'ALLOW_CHANGE_DATE_AND_TIME' = 'ALLOW_CHANGE_DATE_AND_TIME',
24
+ 'ALLOW_CANCEL' = 'ALLOW_CANCEL',
25
+ 'ALLOW_ADAPTION_SERVICE' = 'ALLOW_ADAPTION_SERVICE',
26
+ 'ON_COMMERCIAL_TIME' = 'ON_COMMERCIAL_TIME',
27
+ 'OUT_OF_COMMERCIAL_TIME' = 'OUT_OF_COMMERCIAL_TIME',
28
+ 'GUIDANCE_MESSAGE' = 'GUIDANCE_MESSAGE',
29
+ 'TIME_SELECTION_BEHAVIOR' = 'TIME_SELECTION_BEHAVIOR',
30
+ 'ASK_FOR_HEALTH_PLAN' = 'ASK_FOR_HEALTH_PLAN',
31
+ 'TRANSFER_TO_ATTENDANT_IF_HEALTH_PLAN' = 'TRANSFER_TO_ATTENDANT_IF_HEALTH_PLAN',
32
+ }
@@ -0,0 +1,12 @@
1
+ export enum ChatbotInfoCollectionTypeEnum {
2
+ 'PET_INFO' = 'PET_INFO',
3
+ 'SERVICE_SELECTION' = 'SERVICE_SELECTION',
4
+ 'TAKE_AND_BRING' = 'TAKE_AND_BRING',
5
+ 'TIME_SELECTION' = 'TIME_SELECTION',
6
+ 'EDIT_BOOKING' = 'EDIT_BOOKING',
7
+ 'GUINDANCE' = 'GUINDANCE',
8
+ 'ADAPTION_SERVICE' = 'ADAPTION_SERVICE',
9
+ 'RESPONSE_MESSAGE' = 'RESPONSE_MESSAGE',
10
+ 'EXTRA_INFO' = 'EXTRA_INFO',
11
+ 'HEALTH_PLAN' = 'HEALTH_PLAN',
12
+ }
@@ -0,0 +1,5 @@
1
+ export enum ChatbotPriceDisplayModeEnum {
2
+ SHOW = 'SHOW',
3
+ SHOW_FROM = 'SHOW_FROM',
4
+ HIDE = 'HIDE',
5
+ }
@@ -0,0 +1,5 @@
1
+ export enum ChatbotSizeDisplayModeEnum {
2
+ SIZE_NAME = 'SIZE_NAME',
3
+ SIZE_WEIGHT = 'SIZE_WEIGHT',
4
+ SIZE_WEIGHT_AND_NAME = 'SIZE_WEIGHT_AND_NAME',
5
+ }
@@ -0,0 +1,5 @@
1
+ export enum ChatbotTimeDisplayModeEnum {
2
+ ALL = 'ALL',
3
+ THIRTY_MIN = 'THIRTY_MIN',
4
+ ONE_HOUR = 'ONE_HOUR',
5
+ }
@@ -0,0 +1,4 @@
1
+ export enum ChatbotInfoCollectionBehaviorEnum {
2
+ SELECT_ON_BOT = 'SELECT_ON_BOT',
3
+ SEND_TO_ATTENDANT = 'SEND_TO_ATTENDANT',
4
+ }
@@ -0,0 +1,7 @@
1
+ export enum ChatbotSendingInfoItemTypeEnum {
2
+ MESSAGE = 'MESSAGE',
3
+ IMAGE = 'IMAGE',
4
+ VIDEO = 'VIDEO',
5
+ DOCUMENT = 'DOCUMENT',
6
+ AUDIO = 'AUDIO',
7
+ }
@@ -0,0 +1,4 @@
1
+ export enum ChatbotAIVoiceEnum {
2
+ MASCULINE = 'MASCULINE',
3
+ FEMININE = 'FEMININE',
4
+ }
@@ -0,0 +1,3 @@
1
+ export enum ChatbotChannelTypeEnum {
2
+ WHATSAPP = 'WHATSAPP',
3
+ }
@@ -0,0 +1,5 @@
1
+ export enum ChatbotModeEnum {
2
+ DISABLED = 'DISABLED',
3
+ AUTO_REPLY = 'AUTO_REPLY',
4
+ SELF_SERVICE = 'SELF_SERVICE',
5
+ }
@@ -0,0 +1,4 @@
1
+ export enum ChatbotPlatformTypeEnum {
2
+ ZAPI = 'ZAPI',
3
+ TYPEBOT = 'TYPEBOT',
4
+ }
@@ -0,0 +1,3 @@
1
+ export enum ChatbotSettingsAIPersonalityEnum {
2
+ FRIENDLY = 'FRIENDLY',
3
+ }
@@ -0,0 +1,4 @@
1
+ export enum ChatbotTriggerPatternTypeEnum {
2
+ EXACTLY_MATCH = 'EXACTLY_MATCH',
3
+ CONTAIN_TEXT = 'CONTAIN_TEXT',
4
+ }
@@ -0,0 +1,8 @@
1
+ export * from './dto/chatbot-settings.json';
2
+ export * from './dto/pa.change-notification-status.dto';
3
+ export * from './enum/chatbotBehaviorEnums/chatbot-inactive-employee-action.enum';
4
+ export * from './enum/chatbotBehaviorEnums/chatbot-timeout-action.enum';
5
+ export * from './enum/chatbotGuidanceEnums/chatbot-action-button-type.enum';
6
+ export * from './enum/chatbotSettingsEnums/chatbot-platform-type.enum';
7
+ export * from './enum/chatbotActionEnums/chatbot-action-type.enum';
8
+
@@ -0,0 +1,48 @@
1
+ import {PaGetClientsResponse} from "domain/client/dto/pa.get-clients.dto";
2
+ import {HttpClient} from "infra/http/client.http";
3
+ import {PaClientResponse} from "domain/client/dto/pa.get-client.dto";
4
+ import {PaEditClientInput} from "./dto/pa.edit-client.dto";
5
+ import {PaCreateClientInput} from "./dto/pa.create-client.dto";
6
+ import {PaClientSummaryResponse} from "./dto/pa.get-client-summary.dto";
7
+
8
+ export class ClientService {
9
+ constructor(private readonly api: HttpClient) {
10
+ }
11
+
12
+ async getByPhone(phone: string, shopId?: number): Promise<PaClientResponse | null> {
13
+ const response = await this.api.get<PaGetClientsResponse>(`/client`, {
14
+ page: 1,
15
+ limit: 20,
16
+ phone,
17
+ },
18
+ shopId)
19
+ if (response?.data?.length) {
20
+ return response.data[0];
21
+ }
22
+ return null;
23
+ }
24
+
25
+ async edit(clientId: number, body: PaEditClientInput, shopId: number): Promise<PaClientResponse | null> {
26
+ const response = await this.api.put<PaClientResponse>(`/client/${clientId}`, body, shopId)
27
+ if (response) {
28
+ return response;
29
+ }
30
+ return null;
31
+ }
32
+
33
+ async create(body: PaCreateClientInput, shopId: number): Promise<PaClientResponse | null> {
34
+ const response = await this.api.post<PaClientResponse>(`/client`, body, shopId)
35
+ if (response) {
36
+ return response;
37
+ }
38
+ return null;
39
+ }
40
+
41
+ async summary(clientId: number, shopId: number): Promise<PaClientSummaryResponse | null> {
42
+ const response = await this.api.get<PaClientSummaryResponse>(`/client/${clientId}/summary`, {}, shopId)
43
+ if (response) {
44
+ return response;
45
+ }
46
+ return null;
47
+ }
48
+ }
@@ -0,0 +1,11 @@
1
+ import {AddressDto} from "./pa.get-client.dto";
2
+
3
+ export interface PaCreateClientInput {
4
+ name: string;
5
+ address?: AddressDto;
6
+ phoneNumber: string;
7
+ phoneNumberDDI: string;
8
+ cpf?: string;
9
+ birthDate?: string;
10
+ externId?: string;
11
+ }
@@ -0,0 +1,11 @@
1
+ import {AddressDto} from "./pa.get-client.dto";
2
+
3
+ export class PaEditClientInput {
4
+ name?: string;
5
+ address?: AddressDto;
6
+ phoneNumber?: string;
7
+ phoneNumberDDI?: string;
8
+ cpf?: string;
9
+ birthDate?: string;
10
+ externId?: string;
11
+ }
@@ -0,0 +1,11 @@
1
+ import {PaClientResponse} from './pa.get-client.dto';
2
+ import {PaPetResponse} from "../../pet/dto/pa.get-pet.dto";
3
+ import {PaGetBookingResponse} from "../../booking/dto/pa.get-booking.dto";
4
+ import {PaGetPetActivityResponse} from "../../pet/dto/pa.get-pet-activity.dto";
5
+
6
+ export interface PaClientSummaryResponse {
7
+ client: PaClientResponse;
8
+ pets: Array<PaPetResponse>;
9
+ bookings: Array<PaGetBookingResponse>;
10
+ activities: Array<PaGetPetActivityResponse>;
11
+ }
@@ -0,0 +1,20 @@
1
+ export interface PaClientResponse {
2
+ id: number;
3
+ name: string;
4
+ phoneNumberDDI: string;
5
+ phoneNumber: string;
6
+ cpf: string;
7
+ birthDate: string;
8
+ shopId: number;
9
+ address: AddressDto;
10
+ }
11
+
12
+ export interface AddressDto {
13
+ street: string;
14
+ number: string;
15
+ zipCode: string;
16
+ complement: string;
17
+ neighborhood: string;
18
+ city: string;
19
+ uf: string;
20
+ }
@@ -0,0 +1,11 @@
1
+ import {IPaginationGeneric, IPaginationResponse} from "../../types/pagination.types";
2
+ import {PaClientResponse} from "./pa.get-client.dto";
3
+
4
+ export interface PaGetClientsQuery extends IPaginationGeneric {
5
+ phone?: string;
6
+ }
7
+
8
+ export interface PaGetClientsResponse {
9
+ data: PaClientResponse[];
10
+ pagination: IPaginationResponse;
11
+ }
@@ -0,0 +1,3 @@
1
+ export * from '../client/dto/pa.get-client-summary.dto'
2
+ export * from './dto/pa.get-client-summary.dto'
3
+ export * from './dto/pa.get-client.dto'
@@ -0,0 +1,20 @@
1
+ import {HttpClient} from "infra/http/client.http";
2
+ import {ShopSegment} from "../segment/enum/segment.enum";
3
+ import {PaComboPricingResponse, PaGetCombosPricingResponse} from "./dto/pa.get-combo-pricing.dto";
4
+
5
+ export class ComboService {
6
+ constructor(private readonly api: HttpClient) {
7
+ }
8
+
9
+ async pricing(petId: number, segment: ShopSegment, shopId: number): Promise<Array<PaComboPricingResponse> | null> {
10
+ const response = await this.api.get<PaGetCombosPricingResponse>(`/combo/pricing`, {
11
+ petId,
12
+ segment,
13
+ }, shopId)
14
+
15
+ if (response && response.data?.length) {
16
+ return response.data;
17
+ }
18
+ return [];
19
+ }
20
+ }