@lilaquadrat/studio 9.15.2 → 9.15.4

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 (391) hide show
  1. package/lib/cjs/errors.d.ts +5 -0
  2. package/lib/cjs/errors.js +15 -0
  3. package/lib/cjs/errors.js.map +1 -0
  4. package/lib/cjs/helpers.d.ts +14 -0
  5. package/lib/cjs/helpers.js +36 -0
  6. package/lib/cjs/helpers.js.map +1 -0
  7. package/lib/cjs/main.d.ts +17 -0
  8. package/lib/cjs/main.js +73 -0
  9. package/lib/cjs/main.js.map +1 -0
  10. package/lib/cjs/models.d.ts +35 -0
  11. package/lib/cjs/models.js +75 -0
  12. package/lib/cjs/models.js.map +1 -0
  13. package/lib/cjs/services.d.ts +33 -0
  14. package/lib/cjs/services.js +105 -0
  15. package/lib/cjs/services.js.map +1 -0
  16. package/lib/cjs/src/AzureBlobStorage.share.d.ts +18 -0
  17. package/lib/cjs/src/AzureBlobStorage.share.js +157 -0
  18. package/lib/cjs/src/AzureBlobStorage.share.js.map +1 -0
  19. package/lib/cjs/src/AzureFileStorage.share.d.ts +21 -0
  20. package/lib/cjs/src/AzureFileStorage.share.js +144 -0
  21. package/lib/cjs/src/AzureFileStorage.share.js.map +1 -0
  22. package/lib/cjs/src/AzureVault.d.ts +14 -0
  23. package/lib/cjs/src/AzureVault.js +30 -0
  24. package/lib/cjs/src/AzureVault.js.map +1 -0
  25. package/lib/cjs/src/Filesystem.share.d.ts +15 -0
  26. package/lib/cjs/src/Filesystem.share.js +87 -0
  27. package/lib/cjs/src/Filesystem.share.js.map +1 -0
  28. package/lib/cjs/src/Immutable.class.d.ts +56 -0
  29. package/lib/cjs/src/Immutable.class.js +228 -0
  30. package/lib/cjs/src/Immutable.class.js.map +1 -0
  31. package/lib/cjs/src/Mock.share.d.ts +14 -0
  32. package/lib/cjs/src/Mock.share.js +36 -0
  33. package/lib/cjs/src/Mock.share.js.map +1 -0
  34. package/lib/cjs/src/ShareClientFactory.class.d.ts +7 -0
  35. package/lib/cjs/src/ShareClientFactory.class.js +34 -0
  36. package/lib/cjs/src/ShareClientFactory.class.js.map +1 -0
  37. package/lib/cjs/src/Timeseries.class.d.ts +11 -0
  38. package/lib/cjs/src/Timeseries.class.js +16 -0
  39. package/lib/cjs/src/Timeseries.class.js.map +1 -0
  40. package/lib/cjs/src/aggegations/childData.aggregation.d.ts +194 -0
  41. package/lib/cjs/src/aggegations/childData.aggregation.js +102 -0
  42. package/lib/cjs/src/aggegations/childData.aggregation.js.map +1 -0
  43. package/lib/cjs/src/aggegations/genericData.aggregation.d.ts +76 -0
  44. package/lib/cjs/src/aggegations/genericData.aggregation.js +79 -0
  45. package/lib/cjs/src/aggegations/genericData.aggregation.js.map +1 -0
  46. package/lib/cjs/src/aggegations/partial.aggregation.d.ts +88 -0
  47. package/lib/cjs/src/aggegations/partial.aggregation.js +68 -0
  48. package/lib/cjs/src/aggegations/partial.aggregation.js.map +1 -0
  49. package/lib/cjs/src/aggegations/publishData.aggregation.d.ts +89 -0
  50. package/lib/cjs/src/aggegations/publishData.aggregation.js +79 -0
  51. package/lib/cjs/src/aggegations/publishData.aggregation.js.map +1 -0
  52. package/lib/cjs/src/aggegations/resultData.aggregation.d.ts +151 -0
  53. package/lib/cjs/src/aggegations/resultData.aggregation.js +124 -0
  54. package/lib/cjs/src/aggegations/resultData.aggregation.js.map +1 -0
  55. package/lib/cjs/src/aggegations/structures.aggregation.d.ts +143 -0
  56. package/lib/cjs/src/aggegations/structures.aggregation.js +72 -0
  57. package/lib/cjs/src/aggegations/structures.aggregation.js.map +1 -0
  58. package/lib/cjs/src/aggegations/user.aggregation.d.ts +2 -0
  59. package/lib/cjs/src/aggegations/user.aggregation.js +38 -0
  60. package/lib/cjs/src/aggegations/user.aggregation.js.map +1 -0
  61. package/lib/cjs/src/classes/ControllerBase.class.d.ts +115 -0
  62. package/lib/cjs/src/classes/ControllerBase.class.js +274 -0
  63. package/lib/cjs/src/classes/ControllerBase.class.js.map +1 -0
  64. package/lib/cjs/src/classes/TimeseriesModel.class.d.ts +28 -0
  65. package/lib/cjs/src/classes/TimeseriesModel.class.js +72 -0
  66. package/lib/cjs/src/classes/TimeseriesModel.class.js.map +1 -0
  67. package/lib/cjs/src/classes/cache.class.d.ts +31 -0
  68. package/lib/cjs/src/classes/cache.class.js +71 -0
  69. package/lib/cjs/src/classes/cache.class.js.map +1 -0
  70. package/lib/cjs/src/classes/errors/Agreements.error.d.ts +6 -0
  71. package/lib/cjs/src/classes/errors/Agreements.error.js +12 -0
  72. package/lib/cjs/src/classes/errors/Agreements.error.js.map +1 -0
  73. package/lib/cjs/src/classes/errors/History.error.d.ts +6 -0
  74. package/lib/cjs/src/classes/errors/History.error.js +12 -0
  75. package/lib/cjs/src/classes/errors/History.error.js.map +1 -0
  76. package/lib/cjs/src/classes/errors/Immutable.error.d.ts +6 -0
  77. package/lib/cjs/src/classes/errors/Immutable.error.js +12 -0
  78. package/lib/cjs/src/classes/errors/Immutable.error.js.map +1 -0
  79. package/lib/cjs/src/classes/errors/InvalidId.error.d.ts +6 -0
  80. package/lib/cjs/src/classes/errors/InvalidId.error.js +12 -0
  81. package/lib/cjs/src/classes/errors/InvalidId.error.js.map +1 -0
  82. package/lib/cjs/src/classes/models.class.d.ts +13 -0
  83. package/lib/cjs/src/classes/models.class.js +46 -0
  84. package/lib/cjs/src/classes/models.class.js.map +1 -0
  85. package/lib/cjs/src/classes/modelv2.class.d.ts +82 -0
  86. package/lib/cjs/src/classes/modelv2.class.js +149 -0
  87. package/lib/cjs/src/classes/modelv2.class.js.map +1 -0
  88. package/lib/cjs/src/classes/mongo.class.d.ts +24 -0
  89. package/lib/cjs/src/classes/mongo.class.js +100 -0
  90. package/lib/cjs/src/classes/mongo.class.js.map +1 -0
  91. package/lib/cjs/src/dns.challenge.class.d.ts +17 -0
  92. package/lib/cjs/src/dns.challenge.class.js +47 -0
  93. package/lib/cjs/src/dns.challenge.class.js.map +1 -0
  94. package/lib/cjs/src/docker-compose.class.d.ts +14 -0
  95. package/lib/cjs/src/docker-compose.class.js +88 -0
  96. package/lib/cjs/src/docker-compose.class.js.map +1 -0
  97. package/lib/cjs/src/filterMergeModules.d.ts +3 -0
  98. package/lib/cjs/src/filterMergeModules.js +31 -0
  99. package/lib/cjs/src/filterMergeModules.js.map +1 -0
  100. package/lib/cjs/src/functions/handleError.d.ts +5 -0
  101. package/lib/cjs/src/functions/handleError.js +46 -0
  102. package/lib/cjs/src/functions/handleError.js.map +1 -0
  103. package/lib/cjs/src/functions/optionsHelper.d.ts +6 -0
  104. package/lib/cjs/src/functions/optionsHelper.js +16 -0
  105. package/lib/cjs/src/functions/optionsHelper.js.map +1 -0
  106. package/lib/cjs/src/functions/respondCode.d.ts +3 -0
  107. package/lib/cjs/src/functions/respondCode.js +5 -0
  108. package/lib/cjs/src/functions/respondCode.js.map +1 -0
  109. package/lib/cjs/src/helpers/HttpStatusCode.enum.d.ts +318 -0
  110. package/lib/cjs/src/helpers/HttpStatusCode.enum.js +324 -0
  111. package/lib/cjs/src/helpers/HttpStatusCode.enum.js.map +1 -0
  112. package/lib/cjs/src/helpers/cleanObject.d.ts +5 -0
  113. package/lib/cjs/src/helpers/cleanObject.js +9 -0
  114. package/lib/cjs/src/helpers/cleanObject.js.map +1 -0
  115. package/lib/cjs/src/helpers/companyRights.d.ts +3 -0
  116. package/lib/cjs/src/helpers/companyRights.js +18 -0
  117. package/lib/cjs/src/helpers/companyRights.js.map +1 -0
  118. package/lib/cjs/src/helpers/convertCountryISO2.d.ts +2 -0
  119. package/lib/cjs/src/helpers/convertCountryISO2.js +248 -0
  120. package/lib/cjs/src/helpers/convertCountryISO2.js.map +1 -0
  121. package/lib/cjs/src/helpers/countries.d.ts +4 -0
  122. package/lib/cjs/src/helpers/countries.js +14 -0
  123. package/lib/cjs/src/helpers/countries.js.map +1 -0
  124. package/lib/cjs/src/helpers/createError.d.ts +7 -0
  125. package/lib/cjs/src/helpers/createError.js +16 -0
  126. package/lib/cjs/src/helpers/createError.js.map +1 -0
  127. package/lib/cjs/src/helpers/createSasToken.d.ts +2 -0
  128. package/lib/cjs/src/helpers/createSasToken.js +36 -0
  129. package/lib/cjs/src/helpers/createSasToken.js.map +1 -0
  130. package/lib/cjs/src/helpers/findObjetcsWithKeys.d.ts +13 -0
  131. package/lib/cjs/src/helpers/findObjetcsWithKeys.js +34 -0
  132. package/lib/cjs/src/helpers/findObjetcsWithKeys.js.map +1 -0
  133. package/lib/cjs/src/helpers/getSecrets.d.ts +4 -0
  134. package/lib/cjs/src/helpers/getSecrets.js +20 -0
  135. package/lib/cjs/src/helpers/getSecrets.js.map +1 -0
  136. package/lib/cjs/src/helpers/hardCopy.d.ts +2 -0
  137. package/lib/cjs/src/helpers/hardCopy.js +5 -0
  138. package/lib/cjs/src/helpers/hardCopy.js.map +1 -0
  139. package/lib/cjs/src/helpers/isDeepEmpty.d.ts +1 -0
  140. package/lib/cjs/src/helpers/isDeepEmpty.js +23 -0
  141. package/lib/cjs/src/helpers/isDeepEmpty.js.map +1 -0
  142. package/lib/cjs/src/helpers/isValidObjectId.d.ts +15 -0
  143. package/lib/cjs/src/helpers/isValidObjectId.js +22 -0
  144. package/lib/cjs/src/helpers/isValidObjectId.js.map +1 -0
  145. package/lib/cjs/src/helpers/matchSortArray.d.ts +2 -0
  146. package/lib/cjs/src/helpers/matchSortArray.js +20 -0
  147. package/lib/cjs/src/helpers/matchSortArray.js.map +1 -0
  148. package/lib/cjs/src/helpers/safeObjectId.d.ts +8 -0
  149. package/lib/cjs/src/helpers/safeObjectId.js +18 -0
  150. package/lib/cjs/src/helpers/safeObjectId.js.map +1 -0
  151. package/lib/cjs/src/helpers/updateMappedId.d.ts +2 -0
  152. package/lib/cjs/src/helpers/updateMappedId.js +8 -0
  153. package/lib/cjs/src/helpers/updateMappedId.js.map +1 -0
  154. package/lib/cjs/src/http.challenge.class.d.ts +33 -0
  155. package/lib/cjs/src/http.challenge.class.js +64 -0
  156. package/lib/cjs/src/http.challenge.class.js.map +1 -0
  157. package/lib/cjs/src/logger.d.ts +2 -0
  158. package/lib/cjs/src/logger.js +45 -0
  159. package/lib/cjs/src/logger.js.map +1 -0
  160. package/lib/cjs/src/models/access.model.d.ts +4 -0
  161. package/lib/cjs/src/models/access.model.js +16 -0
  162. package/lib/cjs/src/models/access.model.js.map +1 -0
  163. package/lib/cjs/src/models/app.model.d.ts +4 -0
  164. package/lib/cjs/src/models/app.model.js +86 -0
  165. package/lib/cjs/src/models/app.model.js.map +1 -0
  166. package/lib/cjs/src/models/cache.model.d.ts +4 -0
  167. package/lib/cjs/src/models/cache.model.js +15 -0
  168. package/lib/cjs/src/models/cache.model.js.map +1 -0
  169. package/lib/cjs/src/models/cart.model.d.ts +4 -0
  170. package/lib/cjs/src/models/cart.model.js +76 -0
  171. package/lib/cjs/src/models/cart.model.js.map +1 -0
  172. package/lib/cjs/src/models/certificate-action.model.d.ts +5 -0
  173. package/lib/cjs/src/models/certificate-action.model.js +235 -0
  174. package/lib/cjs/src/models/certificate-action.model.js.map +1 -0
  175. package/lib/cjs/src/models/certificate.model.d.ts +4 -0
  176. package/lib/cjs/src/models/certificate.model.js +101 -0
  177. package/lib/cjs/src/models/certificate.model.js.map +1 -0
  178. package/lib/cjs/src/models/company.model.d.ts +4 -0
  179. package/lib/cjs/src/models/company.model.js +84 -0
  180. package/lib/cjs/src/models/company.model.js.map +1 -0
  181. package/lib/cjs/src/models/customers.model.d.ts +7 -0
  182. package/lib/cjs/src/models/customers.model.js +199 -0
  183. package/lib/cjs/src/models/customers.model.js.map +1 -0
  184. package/lib/cjs/src/models/domain.model.d.ts +4 -0
  185. package/lib/cjs/src/models/domain.model.js +90 -0
  186. package/lib/cjs/src/models/domain.model.js.map +1 -0
  187. package/lib/cjs/src/models/editor.model.d.ts +4 -0
  188. package/lib/cjs/src/models/editor.model.js +174 -0
  189. package/lib/cjs/src/models/editor.model.js.map +1 -0
  190. package/lib/cjs/src/models/editorBase.model.d.ts +4 -0
  191. package/lib/cjs/src/models/editorBase.model.js +44 -0
  192. package/lib/cjs/src/models/editorBase.model.js.map +1 -0
  193. package/lib/cjs/src/models/history.model.d.ts +4 -0
  194. package/lib/cjs/src/models/history.model.js +54 -0
  195. package/lib/cjs/src/models/history.model.js.map +1 -0
  196. package/lib/cjs/src/models/hosting.model.d.ts +4 -0
  197. package/lib/cjs/src/models/hosting.model.js +44 -0
  198. package/lib/cjs/src/models/hosting.model.js.map +1 -0
  199. package/lib/cjs/src/models/hostingCommand.model.d.ts +4 -0
  200. package/lib/cjs/src/models/hostingCommand.model.js +30 -0
  201. package/lib/cjs/src/models/hostingCommand.model.js.map +1 -0
  202. package/lib/cjs/src/models/hostingSettings.model.d.ts +4 -0
  203. package/lib/cjs/src/models/hostingSettings.model.js +29 -0
  204. package/lib/cjs/src/models/hostingSettings.model.js.map +1 -0
  205. package/lib/cjs/src/models/id.model.d.ts +12 -0
  206. package/lib/cjs/src/models/id.model.js +28 -0
  207. package/lib/cjs/src/models/id.model.js.map +1 -0
  208. package/lib/cjs/src/models/import.model.d.ts +4 -0
  209. package/lib/cjs/src/models/import.model.js +40 -0
  210. package/lib/cjs/src/models/import.model.js.map +1 -0
  211. package/lib/cjs/src/models/lists.model.d.ts +4 -0
  212. package/lib/cjs/src/models/lists.model.js +183 -0
  213. package/lib/cjs/src/models/lists.model.js.map +1 -0
  214. package/lib/cjs/src/models/listsParticipants.model.d.ts +4 -0
  215. package/lib/cjs/src/models/listsParticipants.model.js +87 -0
  216. package/lib/cjs/src/models/listsParticipants.model.js.map +1 -0
  217. package/lib/cjs/src/models/mailFrom.model.d.ts +4 -0
  218. package/lib/cjs/src/models/mailFrom.model.js +37 -0
  219. package/lib/cjs/src/models/mailFrom.model.js.map +1 -0
  220. package/lib/cjs/src/models/me.model.d.ts +4 -0
  221. package/lib/cjs/src/models/me.model.js +42 -0
  222. package/lib/cjs/src/models/me.model.js.map +1 -0
  223. package/lib/cjs/src/models/media.model.d.ts +4 -0
  224. package/lib/cjs/src/models/media.model.js +139 -0
  225. package/lib/cjs/src/models/media.model.js.map +1 -0
  226. package/lib/cjs/src/models/payment-provider.model.d.ts +4 -0
  227. package/lib/cjs/src/models/payment-provider.model.js +72 -0
  228. package/lib/cjs/src/models/payment-provider.model.js.map +1 -0
  229. package/lib/cjs/src/models/payment.model.d.ts +4 -0
  230. package/lib/cjs/src/models/payment.model.js +66 -0
  231. package/lib/cjs/src/models/payment.model.js.map +1 -0
  232. package/lib/cjs/src/models/permissions.model.d.ts +9 -0
  233. package/lib/cjs/src/models/permissions.model.js +264 -0
  234. package/lib/cjs/src/models/permissions.model.js.map +1 -0
  235. package/lib/cjs/src/models/project.model.d.ts +4 -0
  236. package/lib/cjs/src/models/project.model.js +80 -0
  237. package/lib/cjs/src/models/project.model.js.map +1 -0
  238. package/lib/cjs/src/models/publish-method.model.d.ts +4 -0
  239. package/lib/cjs/src/models/publish-method.model.js +452 -0
  240. package/lib/cjs/src/models/publish-method.model.js.map +1 -0
  241. package/lib/cjs/src/models/publish.model.d.ts +4 -0
  242. package/lib/cjs/src/models/publish.model.js +188 -0
  243. package/lib/cjs/src/models/publish.model.js.map +1 -0
  244. package/lib/cjs/src/models/secrets.model.d.ts +4 -0
  245. package/lib/cjs/src/models/secrets.model.js +42 -0
  246. package/lib/cjs/src/models/secrets.model.js.map +1 -0
  247. package/lib/cjs/src/models/settings.model.d.ts +4 -0
  248. package/lib/cjs/src/models/settings.model.js +21 -0
  249. package/lib/cjs/src/models/settings.model.js.map +1 -0
  250. package/lib/cjs/src/models/structure.model.d.ts +4 -0
  251. package/lib/cjs/src/models/structure.model.js +187 -0
  252. package/lib/cjs/src/models/structure.model.js.map +1 -0
  253. package/lib/cjs/src/models/tracker.model.d.ts +4 -0
  254. package/lib/cjs/src/models/tracker.model.js +59 -0
  255. package/lib/cjs/src/models/tracker.model.js.map +1 -0
  256. package/lib/cjs/src/models/universal.model.d.ts +4 -0
  257. package/lib/cjs/src/models/universal.model.js +9 -0
  258. package/lib/cjs/src/models/universal.model.js.map +1 -0
  259. package/lib/cjs/src/models/webhook-call.model.d.ts +4 -0
  260. package/lib/cjs/src/models/webhook-call.model.js +31 -0
  261. package/lib/cjs/src/models/webhook-call.model.js.map +1 -0
  262. package/lib/cjs/src/nginx.class.d.ts +11 -0
  263. package/lib/cjs/src/nginx.class.js +49 -0
  264. package/lib/cjs/src/nginx.class.js.map +1 -0
  265. package/lib/cjs/src/prepareContent.d.ts +7 -0
  266. package/lib/cjs/src/prepareContent.js +89 -0
  267. package/lib/cjs/src/prepareContent.js.map +1 -0
  268. package/lib/cjs/src/services/access.service.d.ts +37 -0
  269. package/lib/cjs/src/services/access.service.js +115 -0
  270. package/lib/cjs/src/services/access.service.js.map +1 -0
  271. package/lib/cjs/src/services/cart.service.d.ts +39 -0
  272. package/lib/cjs/src/services/cart.service.js +196 -0
  273. package/lib/cjs/src/services/cart.service.js.map +1 -0
  274. package/lib/cjs/src/services/certificates.service.d.ts +56 -0
  275. package/lib/cjs/src/services/certificates.service.js +177 -0
  276. package/lib/cjs/src/services/certificates.service.js.map +1 -0
  277. package/lib/cjs/src/services/certificatesAction.service.d.ts +41 -0
  278. package/lib/cjs/src/services/certificatesAction.service.js +195 -0
  279. package/lib/cjs/src/services/certificatesAction.service.js.map +1 -0
  280. package/lib/cjs/src/services/conf.service.d.ts +35 -0
  281. package/lib/cjs/src/services/conf.service.js +189 -0
  282. package/lib/cjs/src/services/conf.service.js.map +1 -0
  283. package/lib/cjs/src/services/customers.service.d.ts +74 -0
  284. package/lib/cjs/src/services/customers.service.js +397 -0
  285. package/lib/cjs/src/services/customers.service.js.map +1 -0
  286. package/lib/cjs/src/services/domains.service.d.ts +115 -0
  287. package/lib/cjs/src/services/domains.service.js +635 -0
  288. package/lib/cjs/src/services/domains.service.js.map +1 -0
  289. package/lib/cjs/src/services/editor.service.d.ts +65 -0
  290. package/lib/cjs/src/services/editor.service.js +532 -0
  291. package/lib/cjs/src/services/editor.service.js.map +1 -0
  292. package/lib/cjs/src/services/editorBase.service.d.ts +46 -0
  293. package/lib/cjs/src/services/editorBase.service.js +163 -0
  294. package/lib/cjs/src/services/editorBase.service.js.map +1 -0
  295. package/lib/cjs/src/services/handleFile.service.d.ts +9 -0
  296. package/lib/cjs/src/services/handleFile.service.js +52 -0
  297. package/lib/cjs/src/services/handleFile.service.js.map +1 -0
  298. package/lib/cjs/src/services/history.service.d.ts +37 -0
  299. package/lib/cjs/src/services/history.service.js +268 -0
  300. package/lib/cjs/src/services/history.service.js.map +1 -0
  301. package/lib/cjs/src/services/hosting.service.d.ts +38 -0
  302. package/lib/cjs/src/services/hosting.service.js +221 -0
  303. package/lib/cjs/src/services/hosting.service.js.map +1 -0
  304. package/lib/cjs/src/services/hostingAdmin.service.d.ts +11 -0
  305. package/lib/cjs/src/services/hostingAdmin.service.js +21 -0
  306. package/lib/cjs/src/services/hostingAdmin.service.js.map +1 -0
  307. package/lib/cjs/src/services/hostingCommands.service.d.ts +17 -0
  308. package/lib/cjs/src/services/hostingCommands.service.js +80 -0
  309. package/lib/cjs/src/services/hostingCommands.service.js.map +1 -0
  310. package/lib/cjs/src/services/id.service.d.ts +4 -0
  311. package/lib/cjs/src/services/id.service.js +18 -0
  312. package/lib/cjs/src/services/id.service.js.map +1 -0
  313. package/lib/cjs/src/services/import.service.d.ts +33 -0
  314. package/lib/cjs/src/services/import.service.js +99 -0
  315. package/lib/cjs/src/services/import.service.js.map +1 -0
  316. package/lib/cjs/src/services/listParticipants.service.d.ts +242 -0
  317. package/lib/cjs/src/services/listParticipants.service.js +907 -0
  318. package/lib/cjs/src/services/listParticipants.service.js.map +1 -0
  319. package/lib/cjs/src/services/lists.service.d.ts +40 -0
  320. package/lib/cjs/src/services/lists.service.js +626 -0
  321. package/lib/cjs/src/services/lists.service.js.map +1 -0
  322. package/lib/cjs/src/services/mailFrom.service.d.ts +10 -0
  323. package/lib/cjs/src/services/mailFrom.service.js +53 -0
  324. package/lib/cjs/src/services/mailFrom.service.js.map +1 -0
  325. package/lib/cjs/src/services/me.service.d.ts +68 -0
  326. package/lib/cjs/src/services/me.service.js +350 -0
  327. package/lib/cjs/src/services/me.service.js.map +1 -0
  328. package/lib/cjs/src/services/media.service.d.ts +34 -0
  329. package/lib/cjs/src/services/media.service.js +422 -0
  330. package/lib/cjs/src/services/media.service.js.map +1 -0
  331. package/lib/cjs/src/services/paymentProviders.service.d.ts +13 -0
  332. package/lib/cjs/src/services/paymentProviders.service.js +33 -0
  333. package/lib/cjs/src/services/paymentProviders.service.js.map +1 -0
  334. package/lib/cjs/src/services/payments.service.d.ts +70 -0
  335. package/lib/cjs/src/services/payments.service.js +151 -0
  336. package/lib/cjs/src/services/payments.service.js.map +1 -0
  337. package/lib/cjs/src/services/permissions.service.d.ts +35 -0
  338. package/lib/cjs/src/services/permissions.service.js +739 -0
  339. package/lib/cjs/src/services/permissions.service.js.map +1 -0
  340. package/lib/cjs/src/services/publish.service.d.ts +40 -0
  341. package/lib/cjs/src/services/publish.service.js +366 -0
  342. package/lib/cjs/src/services/publish.service.js.map +1 -0
  343. package/lib/cjs/src/services/publishData.service.d.ts +18 -0
  344. package/lib/cjs/src/services/publishData.service.js +120 -0
  345. package/lib/cjs/src/services/publishData.service.js.map +1 -0
  346. package/lib/cjs/src/services/publishMethod.service.d.ts +16 -0
  347. package/lib/cjs/src/services/publishMethod.service.js +64 -0
  348. package/lib/cjs/src/services/publishMethod.service.js.map +1 -0
  349. package/lib/cjs/src/services/secret.service.d.ts +17 -0
  350. package/lib/cjs/src/services/secret.service.js +50 -0
  351. package/lib/cjs/src/services/secret.service.js.map +1 -0
  352. package/lib/cjs/src/services/spamAnalasys.service.d.ts +15 -0
  353. package/lib/cjs/src/services/spamAnalasys.service.js +100 -0
  354. package/lib/cjs/src/services/spamAnalasys.service.js.map +1 -0
  355. package/lib/cjs/src/services/structures.service.d.ts +40 -0
  356. package/lib/cjs/src/services/structures.service.js +267 -0
  357. package/lib/cjs/src/services/structures.service.js.map +1 -0
  358. package/lib/cjs/src/services/universal.service.d.ts +17 -0
  359. package/lib/cjs/src/services/universal.service.js +145 -0
  360. package/lib/cjs/src/services/universal.service.js.map +1 -0
  361. package/lib/cjs/src/services/webhooks-calls.service.d.ts +13 -0
  362. package/lib/cjs/src/services/webhooks-calls.service.js +59 -0
  363. package/lib/cjs/src/services/webhooks-calls.service.js.map +1 -0
  364. package/lib/cjs/tests/editorService.spec.d.ts +1 -0
  365. package/lib/cjs/tests/editorService.spec.js +49 -0
  366. package/lib/cjs/tests/editorService.spec.js.map +1 -0
  367. package/lib/cjs/tests/getUnsetObject.spec.d.ts +1 -0
  368. package/lib/cjs/tests/getUnsetObject.spec.js +68 -0
  369. package/lib/cjs/tests/getUnsetObject.spec.js.map +1 -0
  370. package/lib/esm/frontend.d.ts +7 -0
  371. package/lib/esm/frontend.js +8 -0
  372. package/lib/esm/frontend.js.map +1 -0
  373. package/lib/esm/src/filterMergeModules.d.ts +3 -0
  374. package/lib/esm/src/filterMergeModules.js +29 -0
  375. package/lib/esm/src/filterMergeModules.js.map +1 -0
  376. package/lib/esm/src/helpers/convertCountryISO2.d.ts +2 -0
  377. package/lib/esm/src/helpers/convertCountryISO2.js +246 -0
  378. package/lib/esm/src/helpers/convertCountryISO2.js.map +1 -0
  379. package/lib/esm/src/helpers/findObjetcsWithKeys.d.ts +13 -0
  380. package/lib/esm/src/helpers/findObjetcsWithKeys.js +31 -0
  381. package/lib/esm/src/helpers/findObjetcsWithKeys.js.map +1 -0
  382. package/lib/esm/src/helpers/hardCopy.d.ts +2 -0
  383. package/lib/esm/src/helpers/hardCopy.js +3 -0
  384. package/lib/esm/src/helpers/hardCopy.js.map +1 -0
  385. package/lib/esm/src/helpers/isDeepEmpty.d.ts +1 -0
  386. package/lib/esm/src/helpers/isDeepEmpty.js +20 -0
  387. package/lib/esm/src/helpers/isDeepEmpty.js.map +1 -0
  388. package/lib/esm/src/prepareContent.d.ts +7 -0
  389. package/lib/esm/src/prepareContent.js +83 -0
  390. package/lib/esm/src/prepareContent.js.map +1 -0
  391. package/package.json +5 -4
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PublishMethodService = void 0;
7
+ const Immutable_class_1 = __importDefault(require("../Immutable.class"));
8
+ const publish_method_model_1 = __importDefault(require("../models/publish-method.model"));
9
+ class PublishMethodService extends Immutable_class_1.default {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.model = publish_method_model_1.default;
13
+ }
14
+ getValidationType(action, type) {
15
+ if (!['create', 'change'].includes(action))
16
+ throw new Error('UNSUPPORTED_ACTION');
17
+ if (!['ftp', 'webhook', 'internal', 'pdf', 'email'].includes(type))
18
+ throw new Error('UNSUPPORTED_ACTION');
19
+ return `${action}${type[0].toUpperCase() + type.slice(1)}`;
20
+ }
21
+ single(internalId, company, project) {
22
+ return this.model.db.findOne({ _id: internalId, company, project });
23
+ }
24
+ /**
25
+ * get all available publish methods for this app
26
+ */
27
+ active(app, contentGroups, options) {
28
+ const query = {
29
+ availableForApps: { $in: [app] },
30
+ active: true,
31
+ company: options.company,
32
+ project: options.project,
33
+ };
34
+ if (contentGroups) {
35
+ query.availableForContentGroups = { $in: contentGroups };
36
+ }
37
+ return this.model.db.find(query, {
38
+ projection: {
39
+ label: 1,
40
+ type: 1,
41
+ availableForApps: 1,
42
+ availableForContentGroups: 1,
43
+ affectedStates: 1,
44
+ },
45
+ })
46
+ .sort({ label: 1 })
47
+ .toArray();
48
+ }
49
+ getEmailMethod(options) {
50
+ const query = {
51
+ active: true,
52
+ company: options.company,
53
+ project: options.project,
54
+ type: 'email',
55
+ };
56
+ return this.model.db.findOne(query);
57
+ }
58
+ export(options) {
59
+ return this.model.db.find({ company: options.company, project: options.project }).toArray();
60
+ }
61
+ }
62
+ exports.PublishMethodService = PublishMethodService;
63
+ exports.default = new PublishMethodService();
64
+ //# sourceMappingURL=publishMethod.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publishMethod.service.js","sourceRoot":"","sources":["../../../../src/services/publishMethod.service.ts"],"names":[],"mappings":";;;;;;AACA,yEAA2C;AAC3C,0FAAgE;AAGhE,MAAa,oBAAqB,SAAQ,yBAAwB;IAAlE;;QAEE,UAAK,GAAG,8BAAkB,CAAC;IAuE7B,CAAC;IArEC,iBAAiB,CAAC,MAA2B,EAAE,IAA2B;QAExE,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAClF,IAAI,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAE1G,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAE7D,CAAC;IAED,MAAM,CAAC,UAAoB,EAAE,OAAe,EAAE,OAAe;QAE3D,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAEtE,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,GAAW,EAAE,aAAgD,EAAE,OAAgB;QAEpF,MAAM,KAAK,GAA4B;YACrC,gBAAgB,EAAE,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE;YAChC,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC;QAEF,IAAI,aAAa,EAAE,CAAC;YAElB,KAAK,CAAC,yBAAyB,GAAG,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC;QAE3D,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CACvB,KAAK,EACL;YACE,UAAU,EAAE;gBACV,KAAK,EAAE,CAAC;gBACR,IAAI,EAAE,CAAC;gBACP,gBAAgB,EAAE,CAAC;gBACnB,yBAAyB,EAAE,CAAC;gBAC5B,cAAc,EAAE,CAAC;aAClB;SACF,CACF;aACE,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;aAClB,OAAO,EAAE,CAAC;IAEf,CAAC;IAED,cAAc,CAAC,OAAgB;QAE7B,MAAM,KAAK,GAA4B;YACrC,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,OAAO;SACd,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAEtC,CAAC;IAED,MAAM,CAAC,OAAgB;QAErB,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IAE9F,CAAC;CAEF;AAzED,oDAyEC;AAED,kBAAe,IAAI,oBAAoB,EAAE,CAAC"}
@@ -0,0 +1,17 @@
1
+ import Immutable from '../Immutable.class';
2
+ import { Secret } from '@lilaquadrat/interfaces';
3
+ export declare class SecretService extends Immutable<Secret> {
4
+ model: import("../classes/modelv2.class").default<Secret, string>;
5
+ single(company: string, project: string, app: string, model: string, id: string): Promise<import("mongodb").WithId<Secret> | null>;
6
+ singleUpsert(company: string, project: string, affectedApp: string | undefined, model: string | undefined, id: string, bytes: number | undefined, user: string, source: string): Promise<Secret>;
7
+ refresh(company: string, project: string, affectedApp: string | undefined, model: string | undefined, id: string, bytes: number | undefined, user: string, source: string): Promise<{
8
+ company: string;
9
+ project: string;
10
+ affectedApp: string | undefined;
11
+ model: string | undefined;
12
+ id: string;
13
+ key: string;
14
+ }>;
15
+ }
16
+ declare const _default: SecretService;
17
+ export default _default;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SecretService = void 0;
7
+ const crypto_1 = __importDefault(require("crypto"));
8
+ const Immutable_class_1 = __importDefault(require("../Immutable.class"));
9
+ const cleanObject_1 = __importDefault(require("../helpers/cleanObject"));
10
+ const models_1 = require("../../models");
11
+ class SecretService extends Immutable_class_1.default {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.model = models_1.SecretsModel;
15
+ }
16
+ single(company, project, app, model, id) {
17
+ return models_1.SecretsModel.db.findOne({
18
+ company, project, app, model, id,
19
+ });
20
+ }
21
+ async singleUpsert(company, project, affectedApp, model, id, bytes = 32, user, source) {
22
+ const secret = await models_1.SecretsModel.db.findOne({
23
+ company, project, affectedApp, model, id,
24
+ });
25
+ if (secret)
26
+ return secret;
27
+ const newSecret = {
28
+ company, project, affectedApp, model, id, key: crypto_1.default.randomBytes(bytes).toString('hex'),
29
+ };
30
+ (0, cleanObject_1.default)(newSecret);
31
+ await this.create(newSecret, user, source);
32
+ return newSecret;
33
+ }
34
+ async refresh(company, project, affectedApp, model, id, bytes = 32, user, source) {
35
+ const secret = await models_1.SecretsModel.db.findOne({
36
+ company, project, affectedApp, model, id,
37
+ });
38
+ if (!secret)
39
+ throw new Error('SECRET_NOT_FOUND');
40
+ const newSecret = {
41
+ company, project, affectedApp, model, id, key: crypto_1.default.randomBytes(bytes).toString('hex'),
42
+ };
43
+ (0, cleanObject_1.default)(newSecret);
44
+ await this.immutable({ _id: secret._id }, { key: newSecret.key }, user, 'change', source, undefined, undefined, 'refresh');
45
+ return newSecret;
46
+ }
47
+ }
48
+ exports.SecretService = SecretService;
49
+ exports.default = new SecretService();
50
+ //# sourceMappingURL=secret.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret.service.js","sourceRoot":"","sources":["../../../../src/services/secret.service.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAC5B,yEAA2C;AAC3C,yEAAiD;AACjD,yCAA4C;AAG5C,MAAa,aAAc,SAAQ,yBAAiB;IAApD;;QAEE,UAAK,GAAG,qBAAY,CAAC;IAuEvB,CAAC;IArEC,MAAM,CAAC,OAAe,EAAE,OAAe,EAAE,GAAW,EAAE,KAAa,EAAE,EAAU;QAE7E,OAAO,qBAAY,CAAC,EAAE,CAAC,OAAO,CAAC;YAC7B,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;SACjC,CAAC,CAAC;IAEL,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,OAAe,EACf,OAAe,EACf,WAA+B,EAC/B,KAAyB,EACzB,EAAU,EACV,QAAgB,EAAE,EAClB,IAAY,EACZ,MAAc;QAGd,MAAM,MAAM,GAAG,MAAM,qBAAY,CAAC,EAAE,CAAC,OAAO,CAAC;YAC3C,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE;SACzC,CAAC,CAAC;QAEH,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAE1B,MAAM,SAAS,GAAW;YACxB,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,gBAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;SACzF,CAAC;QAEF,IAAA,qBAAW,EAAC,SAAS,CAAC,CAAC;QAEvB,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAE3C,OAAO,SAAS,CAAC;IAEnB,CAAC;IAED,KAAK,CAAC,OAAO,CACX,OAAe,EACf,OAAe,EACf,WAA+B,EAC/B,KAAyB,EACzB,EAAU,EACV,QAAgB,EAAE,EAClB,IAAY,EACZ,MAAc;QAGd,MAAM,MAAM,GAAG,MAAM,qBAAY,CAAC,EAAE,CAAC,OAAO,CAAC;YAC3C,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE;SACzC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAEjD,MAAM,SAAS,GAAG;YAChB,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,gBAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;SACzF,CAAC;QAEF,IAAA,qBAAW,EAAC,SAAS,CAAC,CAAC;QAEvB,MAAM,IAAI,CAAC,SAAS,CAClB,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,EACnB,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAChF,CAAC;QAEF,OAAO,SAAS,CAAC;IAEnB,CAAC;CAEF;AAzED,sCAyEC;AAED,kBAAe,IAAI,aAAa,EAAE,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { CustomerPersonWithEmail } from '@lilaquadrat/interfaces';
2
+ import OpenAI from 'openai';
3
+ export declare class SpamAnalasys {
4
+ openai: OpenAI;
5
+ assistant: string;
6
+ constructor(assistant: string);
7
+ checkEmailDns(email: string): Promise<boolean>;
8
+ getDomainFromEMail(email: string): string | null;
9
+ check(person: CustomerPersonWithEmail, message: string): Promise<{
10
+ useful: boolean;
11
+ explanation: string;
12
+ }>;
13
+ }
14
+ declare const _default: SpamAnalasys;
15
+ export default _default;
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SpamAnalasys = void 0;
7
+ const dns_1 = __importDefault(require("dns"));
8
+ const openai_1 = __importDefault(require("openai"));
9
+ const dns = dns_1.default.promises;
10
+ class SpamAnalasys {
11
+ constructor(assistant) {
12
+ if (process.env.OPENAI_API_KEY) {
13
+ this.openai = new openai_1.default();
14
+ }
15
+ this.assistant = assistant;
16
+ }
17
+ async checkEmailDns(email) {
18
+ const domain = this.getDomainFromEMail(email);
19
+ let records;
20
+ let mx;
21
+ let spf;
22
+ if (!domain)
23
+ return false;
24
+ try {
25
+ records = await dns.resolveTxt(domain);
26
+ mx = await dns.resolveMx(domain);
27
+ }
28
+ catch (error) {
29
+ return false;
30
+ }
31
+ if (!mx.length)
32
+ return false;
33
+ records.forEach((single) => {
34
+ single.map((singleEntry) => {
35
+ if (singleEntry.includes('v=spf1'))
36
+ spf = singleEntry;
37
+ });
38
+ });
39
+ if (!spf)
40
+ return false;
41
+ return true;
42
+ }
43
+ getDomainFromEMail(email) {
44
+ if (!email.includes('@'))
45
+ return null;
46
+ const splitEmail = email.split('@');
47
+ return splitEmail[1].includes('.')
48
+ ? splitEmail[1]
49
+ : null;
50
+ }
51
+ async check(person, message) {
52
+ const chatResponse = await this.openai.chat.completions.create({
53
+ model: 'gpt-4o-mini',
54
+ store: true,
55
+ messages: [
56
+ {
57
+ role: 'system',
58
+ content: `i will provide the data as a json in this format:
59
+
60
+ {
61
+ "name": "LASTNAME",
62
+ "prename": "FIRSTNAME",
63
+ "message": "MESSAGE"
64
+ }
65
+
66
+ classify the message as useful with a boolean
67
+
68
+ factor 1: anything that is not a form of a contact attempt is not useful
69
+ factor 2: nonsensical names are not useful
70
+
71
+ the matter of the contact attempt can be anything
72
+
73
+ the nature of real and wanted messages are contact message from a contact form from a website.
74
+
75
+ the contact will be always from a person or a company to another company. therefore everything that is not in a manner of communication between two human parties
76
+
77
+ please keep the answer in one sentence and as json in this format:
78
+
79
+ {
80
+ "useful": BOOLEAN,
81
+ "explanation": "EXPLANATION"
82
+ }`,
83
+ },
84
+ {
85
+ role: 'user',
86
+ content: JSON.stringify({
87
+ name: person.name,
88
+ prename: person.prename,
89
+ message,
90
+ }),
91
+ },
92
+ ],
93
+ });
94
+ const response = JSON.parse(chatResponse.choices[0].message?.content);
95
+ return response;
96
+ }
97
+ }
98
+ exports.SpamAnalasys = SpamAnalasys;
99
+ exports.default = new SpamAnalasys(process.env.OPENAI_ASSISTANT);
100
+ //# sourceMappingURL=spamAnalasys.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spamAnalasys.service.js","sourceRoot":"","sources":["../../../../src/services/spamAnalasys.service.ts"],"names":[],"mappings":";;;;;;AAEA,8CAA+B;AAC/B,oDAA4B;AAE5B,MAAM,GAAG,GAAG,aAAY,CAAC,QAAQ,CAAC;AAElC,MAAa,YAAY;IAMvB,YAAY,SAAiB;QAE3B,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;YAE/B,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAM,EAAE,CAAC;QAE7B,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAE7B,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,KAAa;QAE/B,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,OAAmB,CAAC;QACxB,IAAI,EAA2B,CAAC;QAChC,IAAI,GAAuB,CAAC;QAE5B,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAE1B,IAAI,CAAC;YAEH,OAAO,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACvC,EAAE,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAEnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAEf,OAAO,KAAK,CAAC;QAEf,CAAC;QAED,IAAI,CAAC,EAAE,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAE7B,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAEzB,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;gBAEzB,IAAI,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAAE,GAAG,GAAG,WAAW,CAAC;YAExD,CAAC,CAAC,CAAC;QAEL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG;YAAE,OAAO,KAAK,CAAC;QAEvB,OAAO,IAAI,CAAC;IAEd,CAAC;IAED,kBAAkB,CAAC,KAAa;QAE9B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QAEtC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEpC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;YAChC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YACf,CAAC,CAAC,IAAI,CAAC;IAEX,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAA+B,EAAE,OAAe;QAE1D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YAC7D,KAAK,EAAE,aAAa;YACpB,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE;;;;;;;;;;;;;;;;;;;;;;;;EAwBjB;iBACO;gBACD;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;wBACtB,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,OAAO;qBACR,CAAC;iBACH;aACF;SACK,CAAC,CAAC;QAEV,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,OAAiB,CAA6C,CAAC;QAC5H,OAAO,QAAQ,CAAC;IAElB,CAAC;CAEF;AArHD,oCAqHC;AAED,kBAAe,IAAI,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,gBAA0B,CAAC,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { ObjectId } from 'mongodb';
2
+ import Immutable from '../Immutable.class';
3
+ import { BasicData, HistoryReason, ObjectIdString, Options, SkipLimitSort, Structure, UserAppWithOptions } from '@lilaquadrat/interfaces';
4
+ import Ajv, { SchemaObject, ValidateFunction } from 'ajv';
5
+ import Model from '../classes/modelv2.class';
6
+ export declare class StructureService extends Immutable<Structure> {
7
+ model: Model<Structure, string>;
8
+ ajv: Ajv;
9
+ injectAjv(ajv: Ajv): void;
10
+ getByModel(model: Structure['model'], options: Options): Promise<import("mongodb").WithId<Structure>[]>;
11
+ listByModels(models: string[], filter: {
12
+ search?: string;
13
+ } | undefined, options: UserAppWithOptions & SkipLimitSort): Promise<{
14
+ all: number;
15
+ data: any[] | undefined;
16
+ count: number | undefined;
17
+ }>;
18
+ validateWithStructure(data: Record<string, any>, required: string[], structures: Structure[], baseSchema?: SchemaObject): Promise<true | import("ajv").ErrorObject<string, Record<string, any>, unknown>[] | null | undefined>;
19
+ createValidator(data: Record<string, any>, required: string[], structures: Structure[], baseSchema?: SchemaObject): ValidateFunction;
20
+ byInternalId(id: ObjectIdString, options: Options): Promise<import("mongodb").WithId<Structure> | null>;
21
+ byMultipleInternalIds(ids: ObjectIdString[], options: Options): Promise<BasicData<Structure>[]>;
22
+ createSchema(structures: Structure[], required: string[], baseSchema?: SchemaObject): {
23
+ type: string;
24
+ properties: Record<string, any>;
25
+ additionalProperties: boolean;
26
+ required: unknown[];
27
+ };
28
+ private mapType;
29
+ /**
30
+ * create structures by model and separate the input data by model
31
+ * input that does not match a structure will be not added to the response
32
+ */
33
+ groupStructuresByModel(structures: BasicData<Structure>[], data: Record<string, string>): {
34
+ structuresByModel: Record<string, Structure[]>;
35
+ structuresInputByModel: Record<string, Record<string, any>>;
36
+ };
37
+ updateWithType(internalId: ObjectId, body: Structure, userId: string, reason: HistoryReason, app: string): Promise<import("mongodb").UpdateResult<BasicData<Structure>>>;
38
+ }
39
+ declare const _default: StructureService;
40
+ export default _default;
@@ -0,0 +1,267 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.StructureService = void 0;
7
+ const mongodb_1 = require("mongodb");
8
+ const Immutable_class_1 = __importDefault(require("../Immutable.class"));
9
+ const structure_model_1 = __importDefault(require("../models/structure.model"));
10
+ const safeObjectId_1 = __importDefault(require("../helpers/safeObjectId"));
11
+ class StructureService extends Immutable_class_1.default {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.model = structure_model_1.default;
15
+ // createWithUniqueId(
16
+ // data: BasicData<Structure> | Structure,
17
+ // user: string,
18
+ // source: string,
19
+ // partial?: Model<BasicData<Structure>>['actions'],
20
+ // ) {
21
+ // debugger;
22
+ // if(data.options) {
23
+ // }
24
+ // return this.create(data, user, source, undefined, undefined, partial);
25
+ // }
26
+ }
27
+ injectAjv(ajv) {
28
+ this.ajv = ajv;
29
+ }
30
+ async getByModel(model, options) {
31
+ return this.model.db.find({
32
+ model,
33
+ company: options.company,
34
+ project: options.project,
35
+ }, { projection: { history: 0 } }).toArray();
36
+ }
37
+ async listByModels(models, filter, options) {
38
+ const match = {
39
+ $and: [
40
+ { $expr: { $eq: ['$company', options.company] } },
41
+ ],
42
+ };
43
+ // Handle model matching based on input
44
+ if (models && models.length > 0) {
45
+ const modelsSelectOr = [];
46
+ /**
47
+ * select customers structures which dont have a project
48
+ */
49
+ if (models?.includes('customers')) {
50
+ modelsSelectOr.push({ $expr: { $and: [
51
+ { $eq: ['$model', 'customers'] },
52
+ { $eq: ['$company', options.company] },
53
+ ] } });
54
+ }
55
+ /**
56
+ * select listsParticipants structures which have a project
57
+ */
58
+ if (models?.includes('listsParticipants')) {
59
+ modelsSelectOr.push({ $expr: { $and: [
60
+ { $eq: ['$model', 'listsParticipants'] },
61
+ { $eq: ['$company', options.company] },
62
+ { $eq: ['$project', options.project] },
63
+ ] } });
64
+ }
65
+ match.$and.push({
66
+ $or: modelsSelectOr,
67
+ });
68
+ }
69
+ let aggregation = [
70
+ {
71
+ $match: match,
72
+ },
73
+ ];
74
+ aggregation.push({
75
+ $sort: options.sort || { _id: -1 },
76
+ });
77
+ aggregation.push({
78
+ $project: {
79
+ history: 0,
80
+ },
81
+ });
82
+ if (filter?.search) {
83
+ aggregation.unshift({
84
+ $match: {
85
+ $or: [
86
+ { question: { $regex: filter.search, $options: 'i' } },
87
+ ],
88
+ },
89
+ });
90
+ }
91
+ aggregation.push({
92
+ $facet: {
93
+ all: [
94
+ {
95
+ $count: 'all',
96
+ },
97
+ ],
98
+ data: [
99
+ {
100
+ $skip: options.skip,
101
+ },
102
+ {
103
+ $limit: options.limit,
104
+ },
105
+ ],
106
+ },
107
+ }, {
108
+ $unwind: '$all',
109
+ });
110
+ const data = await this.model.db.aggregate(aggregation)
111
+ .toArray();
112
+ return data[0] ? { all: data[0].all.all, data: data[0].data, count: data[0].data?.length } : { all: 0, data: [], count: 0 };
113
+ }
114
+ async validateWithStructure(data, required, structures, baseSchema) {
115
+ const schema = this.createSchema(structures, required, baseSchema);
116
+ const validator = this.ajv.compile(schema);
117
+ const validationResult = validator(data);
118
+ if (!validationResult) {
119
+ return validator.errors;
120
+ }
121
+ return true;
122
+ }
123
+ createValidator(data, required, structures, baseSchema) {
124
+ const schema = this.createSchema(structures, required, baseSchema);
125
+ return this.ajv.compile(schema);
126
+ }
127
+ async byInternalId(id, options) {
128
+ /**
129
+ * if the model is customer we dont check for the project because they are not bound to a project
130
+ * if the model is listsParticipants we check for the project
131
+ */
132
+ const query = { $or: [
133
+ {
134
+ _id: (0, safeObjectId_1.default)(id),
135
+ company: options.company,
136
+ model: 'customers',
137
+ },
138
+ {
139
+ _id: (0, safeObjectId_1.default)(id),
140
+ company: options.company,
141
+ project: options.project,
142
+ },
143
+ ] };
144
+ return this.model.db.findOne(query);
145
+ }
146
+ async byMultipleInternalIds(ids, options) {
147
+ const objectIds = ids.map(id => new mongodb_1.ObjectId(id));
148
+ const query = { $or: [
149
+ {
150
+ _id: { $in: objectIds },
151
+ company: options.company,
152
+ model: 'customers',
153
+ },
154
+ {
155
+ _id: { $in: objectIds },
156
+ company: options.company,
157
+ project: options.project,
158
+ },
159
+ ] };
160
+ return this.model.db.find(query).toArray();
161
+ }
162
+ // async getAllStructures(options: { company: string }) {
163
+ // return this.model.db.find({
164
+ // company: options.company,
165
+ // }).toArray();
166
+ // }
167
+ // async deleteStructure(
168
+ // internalId: ObjectId,
169
+ // options: Required<UserAppWithOptions>,
170
+ // ) {
171
+ // return this.model.db.deleteOne({
172
+ // _id: internalId,
173
+ // company: options.company,
174
+ // });
175
+ // }
176
+ createSchema(structures, required, baseSchema) {
177
+ const properties = baseSchema?.properties || {};
178
+ const allRequired = new Set(baseSchema?.required || []);
179
+ structures.forEach((structure) => {
180
+ let property = {};
181
+ if (structure.type === 'select') {
182
+ if (structure.multiple) {
183
+ property.type = 'array';
184
+ property.items = {
185
+ type: 'string',
186
+ enum: structure.options?.map(option => option.value) || [],
187
+ };
188
+ }
189
+ else {
190
+ property.type = 'string';
191
+ property.enum = structure.options?.map(option => option.value) || [];
192
+ }
193
+ }
194
+ else {
195
+ property.type = this.mapType(structure.type);
196
+ if (structure.max !== undefined) {
197
+ if (structure.type === 'string') {
198
+ property.maxLength = structure.max;
199
+ }
200
+ else if (structure.type === 'number') {
201
+ property.maximum = structure.max;
202
+ }
203
+ }
204
+ if (structure.min !== undefined) {
205
+ if (structure.type === 'string') {
206
+ property.minLength = structure.min;
207
+ }
208
+ else if (structure.type === 'number') {
209
+ property.minimum = structure.min;
210
+ }
211
+ }
212
+ }
213
+ properties[structure.id] = property;
214
+ });
215
+ required.forEach(req => allRequired.add(req));
216
+ return {
217
+ type: 'object',
218
+ properties,
219
+ additionalProperties: false,
220
+ required: Array.from(allRequired),
221
+ };
222
+ }
223
+ mapType(type) {
224
+ switch (type) {
225
+ case 'boolean':
226
+ return 'boolean';
227
+ case 'number':
228
+ return 'number';
229
+ case 'select':
230
+ return 'string';
231
+ default:
232
+ return 'string';
233
+ }
234
+ }
235
+ /**
236
+ * create structures by model and separate the input data by model
237
+ * input that does not match a structure will be not added to the response
238
+ */
239
+ groupStructuresByModel(structures, data) {
240
+ const structuresByModel = {};
241
+ const structuresInputByModel = {};
242
+ structures.forEach((structure) => {
243
+ if (structure.model) {
244
+ if (!structuresByModel[structure.model])
245
+ structuresByModel[structure.model] = [];
246
+ if (!structuresInputByModel[structure.model])
247
+ structuresInputByModel[structure.model] = {};
248
+ structuresByModel[structure.model].push(structure);
249
+ structuresInputByModel[structure.model][structure.id] = data[structure.id];
250
+ }
251
+ });
252
+ return {
253
+ structuresByModel,
254
+ structuresInputByModel,
255
+ };
256
+ }
257
+ async updateWithType(internalId, body, userId, reason, app) {
258
+ const dbStrucure = await this.model.db.findOne(internalId, { projection: { type: 1 } });
259
+ if (!dbStrucure) {
260
+ throw new Error('Structure not found');
261
+ }
262
+ return this.immutable(internalId, body, userId, reason, app, undefined, undefined, `change-${dbStrucure.type}`);
263
+ }
264
+ }
265
+ exports.StructureService = StructureService;
266
+ exports.default = new StructureService();
267
+ //# sourceMappingURL=structures.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structures.service.js","sourceRoot":"","sources":["../../../../src/services/structures.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { Filter, WithId, ObjectId } from 'mongodb';
2
+ import { Immutable, Modelv2 } from '../../main';
3
+ import { BasicData, Content, DatabaseQueryOptions, Universal } from '@lilaquadrat/interfaces';
4
+ export default class UniversalService extends Immutable<Universal> {
5
+ limit: number;
6
+ search: string[];
7
+ constructor(model: Modelv2<Universal>);
8
+ single(stringOrObjectID: BasicData<Content>['_id'] | string | number, company: string, project: string, app: string, model: string, affectedStates?: Content['state'][]): Promise<WithId<BasicData<Universal>> | null>;
9
+ existsById(id: string | number, company: string, project: string, app: string, model: string): Promise<boolean>;
10
+ getByInternalId(_id: ObjectId, company: string, project: string, app: string, model: string, affectedStates?: Content['state'][]): Promise<WithId<BasicData<Universal>> | null>;
11
+ list(query: Filter<WithId<Universal>>, select: Record<string, number>, site: number, limit: number, model: Modelv2<Universal>, sort?: string, order?: number): Promise<{
12
+ data: WithId<Universal>[];
13
+ all: number;
14
+ count: number;
15
+ }>;
16
+ buildQuery(query: Filter<WithId<Universal>>, company?: string, project?: string | boolean, options?: DatabaseQueryOptions): Filter<WithId<Universal>>;
17
+ }