@dextinity/brevo-api 2.0.0-canary-20260729062014
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/LICENSE +24 -0
- package/lib/blacklisted-contacts/blacklisted-contacts.module.d.ts +12 -0
- package/lib/blacklisted-contacts/blacklisted-contacts.module.d.ts.map +1 -0
- package/lib/blacklisted-contacts/blacklisted-contacts.module.js +28 -0
- package/lib/blacklisted-contacts/blacklisted-contacts.module.js.map +1 -0
- package/lib/blacklisted-contacts/blacklisted-contacts.service.d.ts +13 -0
- package/lib/blacklisted-contacts/blacklisted-contacts.service.d.ts.map +1 -0
- package/lib/blacklisted-contacts/blacklisted-contacts.service.js +55 -0
- package/lib/blacklisted-contacts/blacklisted-contacts.service.js.map +1 -0
- package/lib/blacklisted-contacts/entity/blacklisted-contacts.entity.factory.d.ts +12 -0
- package/lib/blacklisted-contacts/entity/blacklisted-contacts.entity.factory.d.ts.map +1 -0
- package/lib/blacklisted-contacts/entity/blacklisted-contacts.entity.factory.js +63 -0
- package/lib/blacklisted-contacts/entity/blacklisted-contacts.entity.factory.js.map +1 -0
- package/lib/blocks/newsletter-image.block.d.ts +11 -0
- package/lib/blocks/newsletter-image.block.d.ts.map +1 -0
- package/lib/blocks/newsletter-image.block.js +32 -0
- package/lib/blocks/newsletter-image.block.js.map +1 -0
- package/lib/brevo-api/brevo-api-campaigns.service.d.ts +42 -0
- package/lib/brevo-api/brevo-api-campaigns.service.d.ts.map +1 -0
- package/lib/brevo-api/brevo-api-campaigns.service.js +188 -0
- package/lib/brevo-api/brevo-api-campaigns.service.js.map +1 -0
- package/lib/brevo-api/brevo-api-client.factory.d.ts +10 -0
- package/lib/brevo-api/brevo-api-client.factory.d.ts.map +1 -0
- package/lib/brevo-api/brevo-api-client.factory.js +48 -0
- package/lib/brevo-api/brevo-api-client.factory.js.map +1 -0
- package/lib/brevo-api/brevo-api-contact.service.d.ts +49 -0
- package/lib/brevo-api/brevo-api-contact.service.d.ts.map +1 -0
- package/lib/brevo-api/brevo-api-contact.service.js +265 -0
- package/lib/brevo-api/brevo-api-contact.service.js.map +1 -0
- package/lib/brevo-api/brevo-api-folders.service.d.ts +9 -0
- package/lib/brevo-api/brevo-api-folders.service.d.ts.map +1 -0
- package/lib/brevo-api/brevo-api-folders.service.js +43 -0
- package/lib/brevo-api/brevo-api-folders.service.js.map +1 -0
- package/lib/brevo-api/brevo-api-sender.service.d.ts +9 -0
- package/lib/brevo-api/brevo-api-sender.service.d.ts.map +1 -0
- package/lib/brevo-api/brevo-api-sender.service.js +35 -0
- package/lib/brevo-api/brevo-api-sender.service.js.map +1 -0
- package/lib/brevo-api/brevo-api-transactional-mails.service.d.ts +14 -0
- package/lib/brevo-api/brevo-api-transactional-mails.service.d.ts.map +1 -0
- package/lib/brevo-api/brevo-api-transactional-mails.service.js +55 -0
- package/lib/brevo-api/brevo-api-transactional-mails.service.js.map +1 -0
- package/lib/brevo-api/brevo-api.module.d.ts +3 -0
- package/lib/brevo-api/brevo-api.module.d.ts.map +1 -0
- package/lib/brevo-api/brevo-api.module.js +37 -0
- package/lib/brevo-api/brevo-api.module.js.map +1 -0
- package/lib/brevo-api/brevo-api.utils.d.ts +4 -0
- package/lib/brevo-api/brevo-api.utils.d.ts.map +1 -0
- package/lib/brevo-api/brevo-api.utils.js +18 -0
- package/lib/brevo-api/brevo-api.utils.js.map +1 -0
- package/lib/brevo-api/dto/brevo-api-campaign-statistics.d.ts +15 -0
- package/lib/brevo-api/dto/brevo-api-campaign-statistics.d.ts.map +1 -0
- package/lib/brevo-api/dto/brevo-api-campaign-statistics.js +70 -0
- package/lib/brevo-api/dto/brevo-api-campaign-statistics.js.map +1 -0
- package/lib/brevo-api/dto/brevo-api-campaign.d.ts +30 -0
- package/lib/brevo-api/dto/brevo-api-campaign.d.ts.map +1 -0
- package/lib/brevo-api/dto/brevo-api-campaign.js +3 -0
- package/lib/brevo-api/dto/brevo-api-campaign.js.map +1 -0
- package/lib/brevo-api/dto/brevo-api-contact-list.d.ts +11 -0
- package/lib/brevo-api/dto/brevo-api-contact-list.d.ts.map +1 -0
- package/lib/brevo-api/dto/brevo-api-contact-list.js +52 -0
- package/lib/brevo-api/dto/brevo-api-contact-list.js.map +1 -0
- package/lib/brevo-api/dto/brevo-api-email-templates-list.d.ts +25 -0
- package/lib/brevo-api/dto/brevo-api-email-templates-list.d.ts.map +1 -0
- package/lib/brevo-api/dto/brevo-api-email-templates-list.js +99 -0
- package/lib/brevo-api/dto/brevo-api-email-templates-list.js.map +1 -0
- package/lib/brevo-api/dto/brevo-api-folder.d.ts +5 -0
- package/lib/brevo-api/dto/brevo-api-folder.d.ts.map +1 -0
- package/lib/brevo-api/dto/brevo-api-folder.js +28 -0
- package/lib/brevo-api/dto/brevo-api-folder.js.map +1 -0
- package/lib/brevo-api/dto/brevo-api-sender.d.ts +14 -0
- package/lib/brevo-api/dto/brevo-api-sender.d.ts.map +1 -0
- package/lib/brevo-api/dto/brevo-api-sender.js +57 -0
- package/lib/brevo-api/dto/brevo-api-sender.js.map +1 -0
- package/lib/brevo-config/brevo-config.module.d.ts +12 -0
- package/lib/brevo-config/brevo-config.module.d.ts.map +1 -0
- package/lib/brevo-config/brevo-config.module.js +29 -0
- package/lib/brevo-config/brevo-config.module.js.map +1 -0
- package/lib/brevo-config/brevo-config.resolver.d.ts +8 -0
- package/lib/brevo-config/brevo-config.resolver.d.ts.map +1 -0
- package/lib/brevo-config/brevo-config.resolver.js +184 -0
- package/lib/brevo-config/brevo-config.resolver.js.map +1 -0
- package/lib/brevo-config/dto/brevo-config.input.d.ts +13 -0
- package/lib/brevo-config/dto/brevo-config.input.d.ts.map +1 -0
- package/lib/brevo-config/dto/brevo-config.input.js +64 -0
- package/lib/brevo-config/dto/brevo-config.input.js.map +1 -0
- package/lib/brevo-config/entities/brevo-config-entity.factory.d.ts +22 -0
- package/lib/brevo-config/entities/brevo-config-entity.factory.d.ts.map +1 -0
- package/lib/brevo-config/entities/brevo-config-entity.factory.js +91 -0
- package/lib/brevo-config/entities/brevo-config-entity.factory.js.map +1 -0
- package/lib/brevo-contact/brevo-contact-import.console.d.ts +6 -0
- package/lib/brevo-contact/brevo-contact-import.console.d.ts.map +1 -0
- package/lib/brevo-contact/brevo-contact-import.console.js +176 -0
- package/lib/brevo-contact/brevo-contact-import.console.js.map +1 -0
- package/lib/brevo-contact/brevo-contact-import.resolver.d.ts +8 -0
- package/lib/brevo-contact/brevo-contact-import.resolver.d.ts.map +1 -0
- package/lib/brevo-contact/brevo-contact-import.resolver.js +91 -0
- package/lib/brevo-contact/brevo-contact-import.resolver.js.map +1 -0
- package/lib/brevo-contact/brevo-contact-import.service.d.ts +44 -0
- package/lib/brevo-contact/brevo-contact-import.service.d.ts.map +1 -0
- package/lib/brevo-contact/brevo-contact-import.service.js +277 -0
- package/lib/brevo-contact/brevo-contact-import.service.js.map +1 -0
- package/lib/brevo-contact/brevo-contact.console.d.ts +12 -0
- package/lib/brevo-contact/brevo-contact.console.d.ts.map +1 -0
- package/lib/brevo-contact/brevo-contact.console.js +62 -0
- package/lib/brevo-contact/brevo-contact.console.js.map +1 -0
- package/lib/brevo-contact/brevo-contact.module.d.ts +17 -0
- package/lib/brevo-contact/brevo-contact.module.d.ts.map +1 -0
- package/lib/brevo-contact/brevo-contact.module.js +73 -0
- package/lib/brevo-contact/brevo-contact.module.js.map +1 -0
- package/lib/brevo-contact/brevo-contact.resolver.d.ts +15 -0
- package/lib/brevo-contact/brevo-contact.resolver.d.ts.map +1 -0
- package/lib/brevo-contact/brevo-contact.resolver.js +330 -0
- package/lib/brevo-contact/brevo-contact.resolver.js.map +1 -0
- package/lib/brevo-contact/brevo-contacts.service.d.ts +49 -0
- package/lib/brevo-contact/brevo-contacts.service.d.ts.map +1 -0
- package/lib/brevo-contact/brevo-contacts.service.js +158 -0
- package/lib/brevo-contact/brevo-contacts.service.js.map +1 -0
- package/lib/brevo-contact/dto/brevo-contact-import.args.d.ts +15 -0
- package/lib/brevo-contact/dto/brevo-contact-import.args.d.ts.map +1 -0
- package/lib/brevo-contact/dto/brevo-contact-import.args.js +49 -0
- package/lib/brevo-contact/dto/brevo-contact-import.args.js.map +1 -0
- package/lib/brevo-contact/dto/brevo-contact-input.factory.d.ts +21 -0
- package/lib/brevo-contact/dto/brevo-contact-input.factory.d.ts.map +1 -0
- package/lib/brevo-contact/dto/brevo-contact-input.factory.js +106 -0
- package/lib/brevo-contact/dto/brevo-contact-input.factory.js.map +1 -0
- package/lib/brevo-contact/dto/brevo-contact.factory.d.ts +19 -0
- package/lib/brevo-contact/dto/brevo-contact.factory.d.ts.map +1 -0
- package/lib/brevo-contact/dto/brevo-contact.factory.js +74 -0
- package/lib/brevo-contact/dto/brevo-contact.factory.js.map +1 -0
- package/lib/brevo-contact/dto/brevo-contacts.args.d.ts +16 -0
- package/lib/brevo-contact/dto/brevo-contacts.args.d.ts.map +1 -0
- package/lib/brevo-contact/dto/brevo-contacts.args.js +45 -0
- package/lib/brevo-contact/dto/brevo-contacts.args.js.map +1 -0
- package/lib/brevo-contact/dto/brevo-test-contact-input.factory.d.ts +14 -0
- package/lib/brevo-contact/dto/brevo-test-contact-input.factory.d.ts.map +1 -0
- package/lib/brevo-contact/dto/brevo-test-contact-input.factory.js +62 -0
- package/lib/brevo-contact/dto/brevo-test-contact-input.factory.js.map +1 -0
- package/lib/brevo-contact/dto/manually-assigned-brevo-contacts.args.d.ts +6 -0
- package/lib/brevo-contact/dto/manually-assigned-brevo-contacts.args.d.ts.map +1 -0
- package/lib/brevo-contact/dto/manually-assigned-brevo-contacts.args.js +32 -0
- package/lib/brevo-contact/dto/manually-assigned-brevo-contacts.args.js.map +1 -0
- package/lib/brevo-contact/dto/subscribe-input.factory.d.ts +14 -0
- package/lib/brevo-contact/dto/subscribe-input.factory.d.ts.map +1 -0
- package/lib/brevo-contact/dto/subscribe-input.factory.js +55 -0
- package/lib/brevo-contact/dto/subscribe-input.factory.js.map +1 -0
- package/lib/brevo-contact/dto/subscribe-response.enum.d.ts +9 -0
- package/lib/brevo-contact/dto/subscribe-response.enum.d.ts.map +1 -0
- package/lib/brevo-contact/dto/subscribe-response.enum.js +17 -0
- package/lib/brevo-contact/dto/subscribe-response.enum.js.map +1 -0
- package/lib/brevo-contact/ecg-rtr-list/ecg-rtr-list.service.d.ts +8 -0
- package/lib/brevo-contact/ecg-rtr-list/ecg-rtr-list.service.d.ts.map +1 -0
- package/lib/brevo-contact/ecg-rtr-list/ecg-rtr-list.service.js +80 -0
- package/lib/brevo-contact/ecg-rtr-list/ecg-rtr-list.service.js.map +1 -0
- package/lib/brevo-contact/validator/redirect-url.validator.d.ts +14 -0
- package/lib/brevo-contact/validator/redirect-url.validator.d.ts.map +1 -0
- package/lib/brevo-contact/validator/redirect-url.validator.js +61 -0
- package/lib/brevo-contact/validator/redirect-url.validator.js.map +1 -0
- package/lib/brevo-email-import-log/brevo-email-import-log.module.d.ts +12 -0
- package/lib/brevo-email-import-log/brevo-email-import-log.module.d.ts.map +1 -0
- package/lib/brevo-email-import-log/brevo-email-import-log.module.js +30 -0
- package/lib/brevo-email-import-log/brevo-email-import-log.module.js.map +1 -0
- package/lib/brevo-email-import-log/brevo-email-import-log.service.d.ts +12 -0
- package/lib/brevo-email-import-log/brevo-email-import-log.service.d.ts.map +1 -0
- package/lib/brevo-email-import-log/brevo-email-import-log.service.js +52 -0
- package/lib/brevo-email-import-log/brevo-email-import-log.service.js.map +1 -0
- package/lib/brevo-email-import-log/entity/brevo-email-import-log.entity.factory.d.ts +19 -0
- package/lib/brevo-email-import-log/entity/brevo-email-import-log.entity.factory.d.ts.map +1 -0
- package/lib/brevo-email-import-log/entity/brevo-email-import-log.entity.factory.js +87 -0
- package/lib/brevo-email-import-log/entity/brevo-email-import-log.entity.factory.js.map +1 -0
- package/lib/brevo-module.d.ts +10 -0
- package/lib/brevo-module.d.ts.map +1 -0
- package/lib/brevo-module.js +93 -0
- package/lib/brevo-module.js.map +1 -0
- package/lib/config/brevo-module.config.d.ts +43 -0
- package/lib/config/brevo-module.config.d.ts.map +1 -0
- package/lib/config/brevo-module.config.js +3 -0
- package/lib/config/brevo-module.config.js.map +1 -0
- package/lib/config/brevo-module.constants.d.ts +2 -0
- package/lib/config/brevo-module.constants.d.ts.map +1 -0
- package/lib/config/brevo-module.constants.js +5 -0
- package/lib/config/brevo-module.constants.js.map +1 -0
- package/lib/config/config.module.d.ts +6 -0
- package/lib/config/config.module.d.ts.map +1 -0
- package/lib/config/config.module.js +32 -0
- package/lib/config/config.module.js.map +1 -0
- package/lib/email-campaign/dto/email-campaign-args.factory.d.ts +19 -0
- package/lib/email-campaign/dto/email-campaign-args.factory.d.ts.map +1 -0
- package/lib/email-campaign/dto/email-campaign-args.factory.js +56 -0
- package/lib/email-campaign/dto/email-campaign-args.factory.js.map +1 -0
- package/lib/email-campaign/dto/email-campaign-input.factory.d.ts +15 -0
- package/lib/email-campaign/dto/email-campaign-input.factory.d.ts.map +1 -0
- package/lib/email-campaign/dto/email-campaign-input.factory.js +66 -0
- package/lib/email-campaign/dto/email-campaign-input.factory.js.map +1 -0
- package/lib/email-campaign/dto/email-campaign.filter.d.ts +16 -0
- package/lib/email-campaign/dto/email-campaign.filter.d.ts.map +1 -0
- package/lib/email-campaign/dto/email-campaign.filter.js +85 -0
- package/lib/email-campaign/dto/email-campaign.filter.js.map +1 -0
- package/lib/email-campaign/dto/email-campaign.sort.d.ts +14 -0
- package/lib/email-campaign/dto/email-campaign.sort.d.ts.map +1 -0
- package/lib/email-campaign/dto/email-campaign.sort.js +46 -0
- package/lib/email-campaign/dto/email-campaign.sort.js.map +1 -0
- package/lib/email-campaign/dto/send-test-email-campaign.args.d.ts +4 -0
- package/lib/email-campaign/dto/send-test-email-campaign.args.d.ts.map +1 -0
- package/lib/email-campaign/dto/send-test-email-campaign.args.js +26 -0
- package/lib/email-campaign/dto/send-test-email-campaign.args.js.map +1 -0
- package/lib/email-campaign/email-campaign.module.d.ts +18 -0
- package/lib/email-campaign/email-campaign.module.d.ts.map +1 -0
- package/lib/email-campaign/email-campaign.module.js +48 -0
- package/lib/email-campaign/email-campaign.module.js.map +1 -0
- package/lib/email-campaign/email-campaign.resolver.d.ts +13 -0
- package/lib/email-campaign/email-campaign.resolver.d.ts.map +1 -0
- package/lib/email-campaign/email-campaign.resolver.js +272 -0
- package/lib/email-campaign/email-campaign.resolver.js.map +1 -0
- package/lib/email-campaign/email-campaigns.service.d.ts +32 -0
- package/lib/email-campaign/email-campaigns.service.d.ts.map +1 -0
- package/lib/email-campaign/email-campaigns.service.js +152 -0
- package/lib/email-campaign/email-campaigns.service.js.map +1 -0
- package/lib/email-campaign/entities/email-campaign-entity.factory.d.ts +27 -0
- package/lib/email-campaign/entities/email-campaign-entity.factory.d.ts.map +1 -0
- package/lib/email-campaign/entities/email-campaign-entity.factory.js +95 -0
- package/lib/email-campaign/entities/email-campaign-entity.factory.js.map +1 -0
- package/lib/email-campaign/sending-state.enum.d.ts +6 -0
- package/lib/email-campaign/sending-state.enum.d.ts.map +1 -0
- package/lib/email-campaign/sending-state.enum.js +14 -0
- package/lib/email-campaign/sending-state.enum.js.map +1 -0
- package/lib/index.d.ts +19 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +28 -0
- package/lib/index.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240115095733.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20240115095733.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240115095733.js +11 -0
- package/lib/mikro-orm/migrations/Migration20240115095733.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240118144808.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20240118144808.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240118144808.js +12 -0
- package/lib/mikro-orm/migrations/Migration20240118144808.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240123145606.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20240123145606.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240123145606.js +13 -0
- package/lib/mikro-orm/migrations/Migration20240123145606.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240527112204.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20240527112204.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240527112204.js +11 -0
- package/lib/mikro-orm/migrations/Migration20240527112204.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240619092554.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20240619092554.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240619092554.js +11 -0
- package/lib/mikro-orm/migrations/Migration20240619092554.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240619145217.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20240619145217.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240619145217.js +11 -0
- package/lib/mikro-orm/migrations/Migration20240619145217.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240621102349.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20240621102349.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240621102349.js +19 -0
- package/lib/mikro-orm/migrations/Migration20240621102349.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240819214939.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20240819214939.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240819214939.js +19 -0
- package/lib/mikro-orm/migrations/Migration20240819214939.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240830112400.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20240830112400.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20240830112400.js +12 -0
- package/lib/mikro-orm/migrations/Migration20240830112400.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20241016123307.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20241016123307.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20241016123307.js +11 -0
- package/lib/mikro-orm/migrations/Migration20241016123307.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20241018110515.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20241018110515.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20241018110515.js +11 -0
- package/lib/mikro-orm/migrations/Migration20241018110515.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20241022144400.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20241022144400.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20241022144400.js +11 -0
- package/lib/mikro-orm/migrations/Migration20241022144400.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20241024071748.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20241024071748.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20241024071748.js +11 -0
- package/lib/mikro-orm/migrations/Migration20241024071748.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20241119101706.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20241119101706.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20241119101706.js +12 -0
- package/lib/mikro-orm/migrations/Migration20241119101706.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20250221073825.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20250221073825.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20250221073825.js +11 -0
- package/lib/mikro-orm/migrations/Migration20250221073825.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20250317131301.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20250317131301.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20250317131301.js +11 -0
- package/lib/mikro-orm/migrations/Migration20250317131301.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20250321132034.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20250321132034.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20250321132034.js +11 -0
- package/lib/mikro-orm/migrations/Migration20250321132034.js.map +1 -0
- package/lib/mikro-orm/migrations/Migration20250703155205.d.ts +5 -0
- package/lib/mikro-orm/migrations/Migration20250703155205.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20250703155205.js +16 -0
- package/lib/mikro-orm/migrations/Migration20250703155205.js.map +1 -0
- package/lib/mikro-orm/migrations/migrations.d.ts +3 -0
- package/lib/mikro-orm/migrations/migrations.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/migrations.js +42 -0
- package/lib/mikro-orm/migrations/migrations.js.map +1 -0
- package/lib/permissions/brevo-permission.enum.d.ts +5 -0
- package/lib/permissions/brevo-permission.enum.d.ts.map +1 -0
- package/lib/permissions/brevo-permission.enum.js +15 -0
- package/lib/permissions/brevo-permission.enum.js.map +1 -0
- package/lib/target-group/dto/add-brevo-contacts.input.d.ts +4 -0
- package/lib/target-group/dto/add-brevo-contacts.input.d.ts.map +1 -0
- package/lib/target-group/dto/add-brevo-contacts.input.js +27 -0
- package/lib/target-group/dto/add-brevo-contacts.input.js.map +1 -0
- package/lib/target-group/dto/remove-brevo-contact.input.d.ts +4 -0
- package/lib/target-group/dto/remove-brevo-contact.input.d.ts.map +1 -0
- package/lib/target-group/dto/remove-brevo-contact.input.js +26 -0
- package/lib/target-group/dto/remove-brevo-contact.input.js.map +1 -0
- package/lib/target-group/dto/target-group-args.factory.d.ts +19 -0
- package/lib/target-group/dto/target-group-args.factory.d.ts.map +1 -0
- package/lib/target-group/dto/target-group-args.factory.js +56 -0
- package/lib/target-group/dto/target-group-args.factory.js.map +1 -0
- package/lib/target-group/dto/target-group-input.factory.d.ts +12 -0
- package/lib/target-group/dto/target-group-input.factory.d.ts.map +1 -0
- package/lib/target-group/dto/target-group-input.factory.js +66 -0
- package/lib/target-group/dto/target-group-input.factory.js.map +1 -0
- package/lib/target-group/dto/target-group.filter.d.ts +10 -0
- package/lib/target-group/dto/target-group.filter.d.ts.map +1 -0
- package/lib/target-group/dto/target-group.filter.js +65 -0
- package/lib/target-group/dto/target-group.filter.js.map +1 -0
- package/lib/target-group/dto/target-group.sort.d.ts +12 -0
- package/lib/target-group/dto/target-group.sort.d.ts.map +1 -0
- package/lib/target-group/dto/target-group.sort.js +44 -0
- package/lib/target-group/dto/target-group.sort.js.map +1 -0
- package/lib/target-group/entity/target-group-entity.factory.d.ts +24 -0
- package/lib/target-group/entity/target-group-entity.factory.d.ts.map +1 -0
- package/lib/target-group/entity/target-group-entity.factory.js +112 -0
- package/lib/target-group/entity/target-group-entity.factory.js.map +1 -0
- package/lib/target-group/target-group.module.d.ts +13 -0
- package/lib/target-group/target-group.module.d.ts.map +1 -0
- package/lib/target-group/target-group.module.js +39 -0
- package/lib/target-group/target-group.module.js.map +1 -0
- package/lib/target-group/target-group.resolver.d.ts +11 -0
- package/lib/target-group/target-group.resolver.d.ts.map +1 -0
- package/lib/target-group/target-group.resolver.js +227 -0
- package/lib/target-group/target-group.resolver.js.map +1 -0
- package/lib/target-group/target-groups.service.d.ts +26 -0
- package/lib/target-group/target-groups.service.d.ts.map +1 -0
- package/lib/target-group/target-groups.service.js +175 -0
- package/lib/target-group/target-groups.service.js.map +1 -0
- package/lib/tsconfig.build.tsbuildinfo +1 -0
- package/lib/types.d.ts +4 -0
- package/lib/types.d.ts.map +1 -0
- package/lib/types.js +3 -0
- package/lib/types.js.map +1 -0
- package/lib/util/hash.util.d.ts +2 -0
- package/lib/util/hash.util.d.ts.map +1 -0
- package/lib/util/hash.util.js +13 -0
- package/lib/util/hash.util.js.map +1 -0
- package/lib/validation/dynamic-dto-validation.pipe.d.ts +5 -0
- package/lib/validation/dynamic-dto-validation.pipe.d.ts.map +1 -0
- package/lib/validation/dynamic-dto-validation.pipe.js +18 -0
- package/lib/validation/dynamic-dto-validation.pipe.js.map +1 -0
- package/package.json +101 -0
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.createBrevoContactImportResolver = createBrevoContactImportResolver;
|
|
16
|
+
const cms_api_1 = require("@dextinity/cms-api");
|
|
17
|
+
const nestjs_1 = require("@mikro-orm/nestjs");
|
|
18
|
+
const postgresql_1 = require("@mikro-orm/postgresql");
|
|
19
|
+
const common_1 = require("@nestjs/common");
|
|
20
|
+
const graphql_1 = require("@nestjs/graphql");
|
|
21
|
+
const stream_1 = require("stream");
|
|
22
|
+
const uuid_1 = require("uuid");
|
|
23
|
+
const brevo_module_constants_1 = require("../config/brevo-module.constants");
|
|
24
|
+
const brevo_contact_import_service_1 = require("./brevo-contact-import.service");
|
|
25
|
+
const brevo_contact_import_args_1 = require("./dto/brevo-contact-import.args");
|
|
26
|
+
function createBrevoContactImportResolver({ Scope, BrevoContact, }) {
|
|
27
|
+
let BrevoContactImportArgs = class BrevoContactImportArgs extends brevo_contact_import_args_1.BrevoContactImportArgsFactory.create({ Scope }) {
|
|
28
|
+
};
|
|
29
|
+
BrevoContactImportArgs = __decorate([
|
|
30
|
+
(0, graphql_1.ArgsType)()
|
|
31
|
+
], BrevoContactImportArgs);
|
|
32
|
+
let BrevoContactImportResolver = class BrevoContactImportResolver {
|
|
33
|
+
constructor(config, brevoContactImportService, fileUploadRepository, entityManager, fileUploadsService) {
|
|
34
|
+
this.config = config;
|
|
35
|
+
this.brevoContactImportService = brevoContactImportService;
|
|
36
|
+
this.fileUploadRepository = fileUploadRepository;
|
|
37
|
+
this.entityManager = entityManager;
|
|
38
|
+
this.fileUploadsService = fileUploadsService;
|
|
39
|
+
}
|
|
40
|
+
async startBrevoContactImport({ fileId, targetGroupIds, scope, sendDoubleOptIn }, user) {
|
|
41
|
+
const importId = (0, uuid_1.v4)();
|
|
42
|
+
const fileUpload = await this.fileUploadRepository.findOne(fileId);
|
|
43
|
+
if (!fileUpload) {
|
|
44
|
+
throw new Error("File not found");
|
|
45
|
+
}
|
|
46
|
+
try {
|
|
47
|
+
const fileContent = await this.fileUploadsService.getFileContent(fileUpload);
|
|
48
|
+
const redirectUrl = this.config.brevo.resolveConfig(scope).redirectUrlForImport;
|
|
49
|
+
const result = await this.brevoContactImportService.importContactsFromCsv({
|
|
50
|
+
fileStream: stream_1.Readable.from(fileContent),
|
|
51
|
+
scope,
|
|
52
|
+
redirectUrl,
|
|
53
|
+
targetGroupIds,
|
|
54
|
+
sendDoubleOptIn,
|
|
55
|
+
responsibleUserId: user.id,
|
|
56
|
+
importId,
|
|
57
|
+
});
|
|
58
|
+
await this.fileUploadsService.delete(fileUpload);
|
|
59
|
+
await this.entityManager.flush();
|
|
60
|
+
return result;
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
await this.fileUploadsService.delete(fileUpload);
|
|
64
|
+
await this.entityManager.flush();
|
|
65
|
+
throw error;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
__decorate([
|
|
70
|
+
(0, graphql_1.Mutation)(() => brevo_contact_import_service_1.CsvImportInformation),
|
|
71
|
+
__param(0, (0, graphql_1.Args)()),
|
|
72
|
+
__param(1, (0, cms_api_1.GetCurrentUser)()),
|
|
73
|
+
__metadata("design:type", Function),
|
|
74
|
+
__metadata("design:paramtypes", [BrevoContactImportArgs,
|
|
75
|
+
cms_api_1.CurrentUser]),
|
|
76
|
+
__metadata("design:returntype", Promise)
|
|
77
|
+
], BrevoContactImportResolver.prototype, "startBrevoContactImport", null);
|
|
78
|
+
BrevoContactImportResolver = __decorate([
|
|
79
|
+
(0, graphql_1.Resolver)(() => BrevoContact),
|
|
80
|
+
(0, cms_api_1.RequiredPermission)(["brevoNewsletter"], { skipScopeCheck: true }),
|
|
81
|
+
__param(0, (0, common_1.Inject)(brevo_module_constants_1.BREVO_MODULE_CONFIG)),
|
|
82
|
+
__param(1, (0, common_1.Inject)(brevo_contact_import_service_1.BrevoContactImportService)),
|
|
83
|
+
__param(2, (0, nestjs_1.InjectRepository)(cms_api_1.FileUpload)),
|
|
84
|
+
__metadata("design:paramtypes", [Object, brevo_contact_import_service_1.BrevoContactImportService,
|
|
85
|
+
postgresql_1.EntityRepository,
|
|
86
|
+
postgresql_1.EntityManager,
|
|
87
|
+
cms_api_1.FileUploadsService])
|
|
88
|
+
], BrevoContactImportResolver);
|
|
89
|
+
return BrevoContactImportResolver;
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=brevo-contact-import.resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brevo-contact-import.resolver.js","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact-import.resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAeA,4EA8DC;AA7ED,gDAAqH;AACrH,8CAAqD;AACrD,sDAAwE;AACxE,2CAA8C;AAC9C,6CAAqE;AACrE,mCAAkC;AAClC,+BAAkC;AAGlC,6EAAuE;AAEvE,iFAAiG;AAEjG,+EAAgF;AAEhF,SAAgB,gCAAgC,CAAC,EAC7C,KAAK,EACL,YAAY,GAIf;IAEG,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,yDAA6B,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;KAAG,CAAA;IAAjF,sBAAsB;QAD3B,IAAA,kBAAQ,GAAE;OACL,sBAAsB,CAA2D;IAEvF,IAEM,0BAA0B,GAFhC,MAEM,0BAA0B;QAC5B,YACkD,MAAyB,EACnB,yBAAoD,EACzD,oBAAkD,EAChF,aAA4B,EAC5B,kBAAsC;YAJT,WAAM,GAAN,MAAM,CAAmB;YACnB,8BAAyB,GAAzB,yBAAyB,CAA2B;YACzD,yBAAoB,GAApB,oBAAoB,CAA8B;YAChF,kBAAa,GAAb,aAAa,CAAe;YAC5B,uBAAkB,GAAlB,kBAAkB,CAAoB;QACxD,CAAC;QAGE,AAAN,KAAK,CAAC,uBAAuB,CACjB,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,eAAe,EAA0B,EAChE,IAAiB;YAEnC,MAAM,QAAQ,GAAW,IAAA,SAAI,GAAE,CAAC;YAChC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAEnE,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;YACtC,CAAC;YAED,IAAI,CAAC;gBACD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;gBAC7E,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,oBAAoB,CAAC;gBAEhF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,qBAAqB,CAAC;oBACtE,UAAU,EAAE,iBAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;oBACtC,KAAK;oBACL,WAAW;oBACX,cAAc;oBACd,eAAe;oBACf,iBAAiB,EAAE,IAAI,CAAC,EAAE;oBAC1B,QAAQ;iBACX,CAAC,CAAC;gBAEH,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACjD,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;gBAEjC,OAAO,MAAM,CAAC;YAClB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAEb,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACjD,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;gBAEjC,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC;KACJ,CAAA;IArCS;QADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,mDAAoB,CAAC;QAEhC,WAAA,IAAA,cAAI,GAAE,CAAA;QACN,WAAA,IAAA,wBAAc,GAAE,CAAA;;yCAD2C,sBAAsB;YAC1D,qBAAW;;6EAkCtC;IA9CC,0BAA0B;QAF/B,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,YAAY,CAAC;QAC5B,IAAA,4BAAkB,EAAC,CAAC,iBAAiB,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;QAGzD,WAAA,IAAA,eAAM,EAAC,4CAAmB,CAAC,CAAA;QAC3B,WAAA,IAAA,eAAM,EAAC,wDAAyB,CAAC,CAAA;QACjC,WAAA,IAAA,yBAAgB,EAAC,oBAAU,CAAC,CAAA;iDADkD,wDAAyB;YACnC,6BAAgB;YACrD,0BAAa;YACR,4BAAkB;OANzD,0BAA0B,CA+C/B;IAED,OAAO,0BAA0B,CAAC;AACtC,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { EntityRepository } from "@mikro-orm/postgresql";
|
|
2
|
+
import { BrevoConfigInterface } from "src/brevo-config/entities/brevo-config-entity.factory";
|
|
3
|
+
import { TargetGroupInterface } from "src/target-group/entity/target-group-entity.factory";
|
|
4
|
+
import { Readable } from "stream";
|
|
5
|
+
import { BrevoApiContactsService } from "../brevo-api/brevo-api-contact.service";
|
|
6
|
+
import { BrevoContactsService } from "../brevo-contact/brevo-contacts.service";
|
|
7
|
+
import { BrevoModuleConfig } from "../config/brevo-module.config";
|
|
8
|
+
import { TargetGroupsService } from "../target-group/target-groups.service";
|
|
9
|
+
import { EmailCampaignScopeInterface } from "../types";
|
|
10
|
+
export declare class CsvImportInformation {
|
|
11
|
+
created: number;
|
|
12
|
+
updated: number;
|
|
13
|
+
failed: number;
|
|
14
|
+
blacklisted: number;
|
|
15
|
+
failedColumns: Record<string, string>[];
|
|
16
|
+
blacklistedColumns: Record<string, string>[];
|
|
17
|
+
errorMessage?: string;
|
|
18
|
+
}
|
|
19
|
+
interface ImportContactsFromCsvParams {
|
|
20
|
+
fileStream: Readable;
|
|
21
|
+
scope: EmailCampaignScopeInterface;
|
|
22
|
+
redirectUrl: string;
|
|
23
|
+
sendDoubleOptIn: boolean;
|
|
24
|
+
targetGroupIds?: string[];
|
|
25
|
+
isAdminImport?: boolean;
|
|
26
|
+
responsibleUserId?: string;
|
|
27
|
+
importId?: string;
|
|
28
|
+
}
|
|
29
|
+
export declare class BrevoContactImportService {
|
|
30
|
+
private readonly config;
|
|
31
|
+
private readonly brevoApiContactsService;
|
|
32
|
+
private readonly brevoContactsService;
|
|
33
|
+
private readonly targetGroupsService;
|
|
34
|
+
private readonly targetGroupRepository;
|
|
35
|
+
private readonly brevoConfigRepository;
|
|
36
|
+
constructor(config: BrevoModuleConfig, brevoApiContactsService: BrevoApiContactsService, brevoContactsService: BrevoContactsService, targetGroupsService: TargetGroupsService, targetGroupRepository: EntityRepository<TargetGroupInterface>, brevoConfigRepository: EntityRepository<BrevoConfigInterface>);
|
|
37
|
+
importContactsFromCsv({ fileStream, scope, redirectUrl, sendDoubleOptIn, targetGroupIds, isAdminImport, responsibleUserId, importId, }: ImportContactsFromCsvParams): Promise<CsvImportInformation>;
|
|
38
|
+
private createOrUpdateBrevoContact;
|
|
39
|
+
private parseValue;
|
|
40
|
+
private processCsvRow;
|
|
41
|
+
private createValidateableCsvRowClass;
|
|
42
|
+
}
|
|
43
|
+
export {};
|
|
44
|
+
//# sourceMappingURL=brevo-contact-import.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brevo-contact-import.service.d.ts","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact-import.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAMzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAC7F,OAAO,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAC;AAC3F,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,OAAO,EAAE,uBAAuB,EAAgC,MAAM,wCAAwC,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAE/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAUvD,qBACa,oBAAoB;IAE7B,OAAO,EAAE,MAAM,CAAC;IAGhB,OAAO,EAAE,MAAM,CAAC;IAGhB,MAAM,EAAE,MAAM,CAAC;IAGf,WAAW,EAAE,MAAM,CAAC;IAGpB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAGxC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAG7C,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,UAAU,2BAA2B;IACjC,UAAU,EAAE,QAAQ,CAAC;IACrB,KAAK,EAAE,2BAA2B,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBACa,yBAAyB;IAED,OAAO,CAAC,QAAQ,CAAC,MAAM;IACpD,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACE,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBALzB,MAAM,EAAE,iBAAiB,EACtD,uBAAuB,EAAE,uBAAuB,EAChD,oBAAoB,EAAE,oBAAoB,EAC1C,mBAAmB,EAAE,mBAAmB,EACF,qBAAqB,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,EAClE,qBAAqB,EAAE,gBAAgB,CAAC,oBAAoB,CAAC;IAG7G,qBAAqB,CAAC,EACxB,UAAU,EACV,KAAK,EACL,WAAW,EACX,eAAe,EACf,cAAmB,EACnB,aAAqB,EACrB,iBAAiB,EACjB,QAAQ,GACX,EAAE,2BAA2B,GAAG,OAAO,CAAC,oBAAoB,CAAC;YAsFhD,0BAA0B;IAmDxC,OAAO,CAAC,UAAU;YAYJ,aAAa;IA4B3B,OAAO,CAAC,6BAA6B;CAexC"}
|
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
19
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
20
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
21
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
22
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
23
|
+
};
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
41
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
42
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
43
|
+
};
|
|
44
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
45
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
46
|
+
};
|
|
47
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
48
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
49
|
+
};
|
|
50
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
51
|
+
exports.BrevoContactImportService = exports.CsvImportInformation = void 0;
|
|
52
|
+
const csv = __importStar(require("@fast-csv/parse"));
|
|
53
|
+
const nestjs_1 = require("@mikro-orm/nestjs");
|
|
54
|
+
const postgresql_1 = require("@mikro-orm/postgresql");
|
|
55
|
+
const common_1 = require("@nestjs/common");
|
|
56
|
+
const graphql_1 = require("@nestjs/graphql");
|
|
57
|
+
const class_validator_1 = require("class-validator");
|
|
58
|
+
const graphql_scalars_1 = require("graphql-scalars");
|
|
59
|
+
const lodash_isequal_1 = __importDefault(require("lodash.isequal"));
|
|
60
|
+
const brevo_api_contact_service_1 = require("../brevo-api/brevo-api-contact.service");
|
|
61
|
+
const brevo_contacts_service_1 = require("../brevo-contact/brevo-contacts.service");
|
|
62
|
+
const brevo_email_import_log_entity_factory_1 = require("../brevo-email-import-log/entity/brevo-email-import-log.entity.factory");
|
|
63
|
+
const brevo_module_constants_1 = require("../config/brevo-module.constants");
|
|
64
|
+
const target_groups_service_1 = require("../target-group/target-groups.service");
|
|
65
|
+
class BasicValidateableRow {
|
|
66
|
+
}
|
|
67
|
+
__decorate([
|
|
68
|
+
(0, class_validator_1.IsEmail)(),
|
|
69
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
70
|
+
__metadata("design:type", String)
|
|
71
|
+
], BasicValidateableRow.prototype, "email", void 0);
|
|
72
|
+
let CsvImportInformation = class CsvImportInformation {
|
|
73
|
+
};
|
|
74
|
+
exports.CsvImportInformation = CsvImportInformation;
|
|
75
|
+
__decorate([
|
|
76
|
+
(0, graphql_1.Field)(() => graphql_1.Int),
|
|
77
|
+
__metadata("design:type", Number)
|
|
78
|
+
], CsvImportInformation.prototype, "created", void 0);
|
|
79
|
+
__decorate([
|
|
80
|
+
(0, graphql_1.Field)(() => graphql_1.Int),
|
|
81
|
+
__metadata("design:type", Number)
|
|
82
|
+
], CsvImportInformation.prototype, "updated", void 0);
|
|
83
|
+
__decorate([
|
|
84
|
+
(0, graphql_1.Field)(() => graphql_1.Int),
|
|
85
|
+
__metadata("design:type", Number)
|
|
86
|
+
], CsvImportInformation.prototype, "failed", void 0);
|
|
87
|
+
__decorate([
|
|
88
|
+
(0, graphql_1.Field)(() => graphql_1.Int),
|
|
89
|
+
__metadata("design:type", Number)
|
|
90
|
+
], CsvImportInformation.prototype, "blacklisted", void 0);
|
|
91
|
+
__decorate([
|
|
92
|
+
(0, graphql_1.Field)(() => [graphql_scalars_1.GraphQLJSONObject], { nullable: true }),
|
|
93
|
+
__metadata("design:type", Array)
|
|
94
|
+
], CsvImportInformation.prototype, "failedColumns", void 0);
|
|
95
|
+
__decorate([
|
|
96
|
+
(0, graphql_1.Field)(() => [graphql_scalars_1.GraphQLJSONObject], { nullable: true }),
|
|
97
|
+
__metadata("design:type", Array)
|
|
98
|
+
], CsvImportInformation.prototype, "blacklistedColumns", void 0);
|
|
99
|
+
__decorate([
|
|
100
|
+
(0, graphql_1.Field)({ nullable: true }),
|
|
101
|
+
__metadata("design:type", String)
|
|
102
|
+
], CsvImportInformation.prototype, "errorMessage", void 0);
|
|
103
|
+
exports.CsvImportInformation = CsvImportInformation = __decorate([
|
|
104
|
+
(0, graphql_1.ObjectType)()
|
|
105
|
+
], CsvImportInformation);
|
|
106
|
+
let BrevoContactImportService = class BrevoContactImportService {
|
|
107
|
+
constructor(config, brevoApiContactsService, brevoContactsService, targetGroupsService, targetGroupRepository, brevoConfigRepository) {
|
|
108
|
+
this.config = config;
|
|
109
|
+
this.brevoApiContactsService = brevoApiContactsService;
|
|
110
|
+
this.brevoContactsService = brevoContactsService;
|
|
111
|
+
this.targetGroupsService = targetGroupsService;
|
|
112
|
+
this.targetGroupRepository = targetGroupRepository;
|
|
113
|
+
this.brevoConfigRepository = brevoConfigRepository;
|
|
114
|
+
}
|
|
115
|
+
async importContactsFromCsv({ fileStream, scope, redirectUrl, sendDoubleOptIn, targetGroupIds = [], isAdminImport = false, responsibleUserId, importId, }) {
|
|
116
|
+
const failedColumns = [];
|
|
117
|
+
const blacklistedColumns = [];
|
|
118
|
+
const targetGroups = await this.targetGroupRepository.find({ id: { $in: targetGroupIds } });
|
|
119
|
+
const contactSource = brevo_email_import_log_entity_factory_1.ContactSource.csvImport;
|
|
120
|
+
for (const targetGroup of targetGroups) {
|
|
121
|
+
if (targetGroup.isMainList) {
|
|
122
|
+
throw new Error("Main lists are not allowed as target groups for import");
|
|
123
|
+
}
|
|
124
|
+
if (!(0, lodash_isequal_1.default)(targetGroup.scope, scope)) {
|
|
125
|
+
throw new Error("Target group scope does not match the scope of the import file");
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
const manuallyAssignedBrevoContacts = await Promise.all(targetGroups.map((targetGroup) => {
|
|
129
|
+
return this.targetGroupsService.createIfNotExistsManuallyAssignedContactsTargetGroup(targetGroup);
|
|
130
|
+
}));
|
|
131
|
+
const targetGroupBrevoIds = [...targetGroups.map((targetGroup) => targetGroup.brevoId), ...manuallyAssignedBrevoContacts];
|
|
132
|
+
const rows = fileStream.pipe(csv.parse({ headers: true, delimiter: ";", ignoreEmpty: true })).on("error", (error) => {
|
|
133
|
+
throw error;
|
|
134
|
+
});
|
|
135
|
+
let created = 0;
|
|
136
|
+
let updated = 0;
|
|
137
|
+
let failed = 0;
|
|
138
|
+
let blacklisted = 0;
|
|
139
|
+
for await (const row of rows) {
|
|
140
|
+
if (isAdminImport && created + updated + failed + blacklisted > 100) {
|
|
141
|
+
return {
|
|
142
|
+
created,
|
|
143
|
+
updated,
|
|
144
|
+
failed,
|
|
145
|
+
blacklisted,
|
|
146
|
+
failedColumns,
|
|
147
|
+
blacklistedColumns,
|
|
148
|
+
errorMessage: "Too many contacts. Currently we only support 100 contacts at once, the first 100 contacts were handled. Please split the file and try again with the remaining contacts.",
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
try {
|
|
152
|
+
const contactData = await this.processCsvRow(row, redirectUrl);
|
|
153
|
+
const result = await this.createOrUpdateBrevoContact(contactData, scope, targetGroupBrevoIds, sendDoubleOptIn, responsibleUserId, contactSource, importId);
|
|
154
|
+
switch (result) {
|
|
155
|
+
case "created":
|
|
156
|
+
created++;
|
|
157
|
+
break;
|
|
158
|
+
case "updated":
|
|
159
|
+
updated++;
|
|
160
|
+
break;
|
|
161
|
+
case "blacklisted":
|
|
162
|
+
blacklistedColumns.push(row);
|
|
163
|
+
blacklisted++;
|
|
164
|
+
break;
|
|
165
|
+
case "error":
|
|
166
|
+
failedColumns.push(row);
|
|
167
|
+
failed++;
|
|
168
|
+
break;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
catch (validationError) {
|
|
172
|
+
console.error(validationError);
|
|
173
|
+
failedColumns.push(row);
|
|
174
|
+
failed++;
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
if (created + updated + failed === 0) {
|
|
178
|
+
return { created, updated, failed, blacklisted, failedColumns, blacklistedColumns, errorMessage: "No contacts found." };
|
|
179
|
+
}
|
|
180
|
+
return { created, updated, failed, blacklisted, failedColumns, blacklistedColumns };
|
|
181
|
+
}
|
|
182
|
+
async createOrUpdateBrevoContact(contact, scope, targetGroupBrevoIds, sendDoubleOptIn, responsibleUserId, contactSource, importId) {
|
|
183
|
+
try {
|
|
184
|
+
const brevoContact = await this.brevoApiContactsService.findContact(contact.email, scope);
|
|
185
|
+
const mainTargetGroupForScope = await this.targetGroupsService.createIfNotExistMainTargetGroupForScope(scope);
|
|
186
|
+
if (brevoContact && !brevoContact.emailBlacklisted) {
|
|
187
|
+
const updatedBrevoContact = await this.brevoApiContactsService.updateContact(brevoContact.id, { ...contact, listIds: [mainTargetGroupForScope.brevoId, ...targetGroupBrevoIds, ...brevoContact.listIds] }, scope, sendDoubleOptIn, responsibleUserId, contactSource, importId);
|
|
188
|
+
if (updatedBrevoContact) {
|
|
189
|
+
return "updated";
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
else if (!brevoContact) {
|
|
193
|
+
const brevoConfig = await this.brevoConfigRepository.findOneOrFail({ scope });
|
|
194
|
+
const success = await this.brevoContactsService.createContact({
|
|
195
|
+
...contact,
|
|
196
|
+
scope,
|
|
197
|
+
templateId: brevoConfig.doubleOptInTemplateId,
|
|
198
|
+
listIds: [mainTargetGroupForScope.brevoId, ...targetGroupBrevoIds],
|
|
199
|
+
sendDoubleOptIn,
|
|
200
|
+
responsibleUserId,
|
|
201
|
+
contactSource,
|
|
202
|
+
});
|
|
203
|
+
if (!success) {
|
|
204
|
+
return "blacklisted";
|
|
205
|
+
}
|
|
206
|
+
if (success) {
|
|
207
|
+
return "created";
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
catch (err) {
|
|
212
|
+
console.error(err);
|
|
213
|
+
}
|
|
214
|
+
return "error";
|
|
215
|
+
}
|
|
216
|
+
parseValue({ value, key }) {
|
|
217
|
+
if (this.config.brevo.BrevoContactAttributes) {
|
|
218
|
+
const designType = Reflect.getMetadata("design:type", this.config.brevo.BrevoContactAttributes.prototype, key.toUpperCase())?.name;
|
|
219
|
+
if (designType === "Array") {
|
|
220
|
+
return value.trim() === "" ? [] : value.split(",").map((item) => item.trim());
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
return value;
|
|
224
|
+
}
|
|
225
|
+
async processCsvRow(row, redirectUrlForImport) {
|
|
226
|
+
const mappedRow = this.createValidateableCsvRowClass();
|
|
227
|
+
for (const key in row) {
|
|
228
|
+
if (key.toLowerCase() === "email") {
|
|
229
|
+
mappedRow.email = row[key];
|
|
230
|
+
}
|
|
231
|
+
else {
|
|
232
|
+
mappedRow[key.toUpperCase()] = this.parseValue({ value: row[key], key });
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
const errors = (0, class_validator_1.validateSync)(mappedRow);
|
|
236
|
+
if (errors.length > 0) {
|
|
237
|
+
throw errors;
|
|
238
|
+
}
|
|
239
|
+
const { email, ...data } = mappedRow;
|
|
240
|
+
return {
|
|
241
|
+
email: mappedRow.email,
|
|
242
|
+
redirectionUrl: redirectUrlForImport,
|
|
243
|
+
attributes: { ...data },
|
|
244
|
+
};
|
|
245
|
+
}
|
|
246
|
+
createValidateableCsvRowClass() {
|
|
247
|
+
if (this.config.brevo.BrevoContactAttributes) {
|
|
248
|
+
const BrevoContactAttributesClass = this.config.brevo.BrevoContactAttributes;
|
|
249
|
+
class ValidateableRow extends BrevoContactAttributesClass {
|
|
250
|
+
}
|
|
251
|
+
__decorate([
|
|
252
|
+
(0, class_validator_1.IsEmail)(),
|
|
253
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
254
|
+
__metadata("design:type", String)
|
|
255
|
+
], ValidateableRow.prototype, "email", void 0);
|
|
256
|
+
return new ValidateableRow();
|
|
257
|
+
}
|
|
258
|
+
else {
|
|
259
|
+
class ValidateableRow extends BasicValidateableRow {
|
|
260
|
+
}
|
|
261
|
+
return new ValidateableRow();
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
};
|
|
265
|
+
exports.BrevoContactImportService = BrevoContactImportService;
|
|
266
|
+
exports.BrevoContactImportService = BrevoContactImportService = __decorate([
|
|
267
|
+
(0, common_1.Injectable)(),
|
|
268
|
+
__param(0, (0, common_1.Inject)(brevo_module_constants_1.BREVO_MODULE_CONFIG)),
|
|
269
|
+
__param(4, (0, nestjs_1.InjectRepository)("BrevoTargetGroup")),
|
|
270
|
+
__param(5, (0, nestjs_1.InjectRepository)("BrevoConfig")),
|
|
271
|
+
__metadata("design:paramtypes", [Object, brevo_api_contact_service_1.BrevoApiContactsService,
|
|
272
|
+
brevo_contacts_service_1.BrevoContactsService,
|
|
273
|
+
target_groups_service_1.TargetGroupsService,
|
|
274
|
+
postgresql_1.EntityRepository,
|
|
275
|
+
postgresql_1.EntityRepository])
|
|
276
|
+
], BrevoContactImportService);
|
|
277
|
+
//# sourceMappingURL=brevo-contact-import.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brevo-contact-import.service.js","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact-import.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { MikroORM } from "@mikro-orm/postgresql";
|
|
2
|
+
import { CommandRunner } from "nest-commander";
|
|
3
|
+
import { BrevoApiContactsService } from "../brevo-api/brevo-api-contact.service";
|
|
4
|
+
import { TargetGroupsService } from "../target-group/target-groups.service";
|
|
5
|
+
export declare class DeleteUnsubscribedBrevoContactsConsole extends CommandRunner {
|
|
6
|
+
private readonly brevoApiContactsService;
|
|
7
|
+
private readonly targetGroupsService;
|
|
8
|
+
private readonly orm;
|
|
9
|
+
constructor(brevoApiContactsService: BrevoApiContactsService, targetGroupsService: TargetGroupsService, orm: MikroORM);
|
|
10
|
+
run(): Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=brevo-contact.console.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brevo-contact.console.d.ts","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact.console.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAW,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAE5E,qBAIa,sCAAuC,SAAQ,aAAa;IAEjE,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAFH,uBAAuB,EAAE,uBAAuB,EAChD,mBAAmB,EAAE,mBAAmB,EACxC,GAAG,EAAE,QAAQ;IAM5B,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA2B7B"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.DeleteUnsubscribedBrevoContactsConsole = void 0;
|
|
13
|
+
const postgresql_1 = require("@mikro-orm/postgresql");
|
|
14
|
+
const nest_commander_1 = require("nest-commander");
|
|
15
|
+
const brevo_api_contact_service_1 = require("../brevo-api/brevo-api-contact.service");
|
|
16
|
+
const target_groups_service_1 = require("../target-group/target-groups.service");
|
|
17
|
+
let DeleteUnsubscribedBrevoContactsConsole = class DeleteUnsubscribedBrevoContactsConsole extends nest_commander_1.CommandRunner {
|
|
18
|
+
constructor(brevoApiContactsService, targetGroupsService, orm) {
|
|
19
|
+
super();
|
|
20
|
+
this.brevoApiContactsService = brevoApiContactsService;
|
|
21
|
+
this.targetGroupsService = targetGroupsService;
|
|
22
|
+
this.orm = orm;
|
|
23
|
+
}
|
|
24
|
+
async run() {
|
|
25
|
+
const offset = 0;
|
|
26
|
+
const limit = 50;
|
|
27
|
+
const where = { isMainList: true };
|
|
28
|
+
const [targetGroups] = await this.targetGroupsService.findTargetGroups({ offset, limit, where });
|
|
29
|
+
for (const targetGroup of targetGroups) {
|
|
30
|
+
let hasMoreContacts = false;
|
|
31
|
+
let offset = 0;
|
|
32
|
+
do {
|
|
33
|
+
const contacts = await this.brevoApiContactsService.findContacts(limit, offset, {
|
|
34
|
+
scope: targetGroup.scope,
|
|
35
|
+
});
|
|
36
|
+
const blacklistedContacts = contacts.filter((contact) => contact.emailBlacklisted === true);
|
|
37
|
+
if (blacklistedContacts.length > 0) {
|
|
38
|
+
await this.brevoApiContactsService.deleteContacts(blacklistedContacts, { scope: targetGroup.scope });
|
|
39
|
+
}
|
|
40
|
+
hasMoreContacts = !(contacts.length < limit);
|
|
41
|
+
offset += limit;
|
|
42
|
+
} while (hasMoreContacts);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
exports.DeleteUnsubscribedBrevoContactsConsole = DeleteUnsubscribedBrevoContactsConsole;
|
|
47
|
+
__decorate([
|
|
48
|
+
(0, postgresql_1.CreateRequestContext)(),
|
|
49
|
+
__metadata("design:type", Function),
|
|
50
|
+
__metadata("design:paramtypes", []),
|
|
51
|
+
__metadata("design:returntype", Promise)
|
|
52
|
+
], DeleteUnsubscribedBrevoContactsConsole.prototype, "run", null);
|
|
53
|
+
exports.DeleteUnsubscribedBrevoContactsConsole = DeleteUnsubscribedBrevoContactsConsole = __decorate([
|
|
54
|
+
(0, nest_commander_1.Command)({
|
|
55
|
+
name: "delete-unsubscribed-brevo-contacts",
|
|
56
|
+
description: "deletes unsubscribed contacts",
|
|
57
|
+
}),
|
|
58
|
+
__metadata("design:paramtypes", [brevo_api_contact_service_1.BrevoApiContactsService,
|
|
59
|
+
target_groups_service_1.TargetGroupsService,
|
|
60
|
+
postgresql_1.MikroORM])
|
|
61
|
+
], DeleteUnsubscribedBrevoContactsConsole);
|
|
62
|
+
//# sourceMappingURL=brevo-contact.console.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brevo-contact.console.js","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact.console.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAuE;AACvE,mDAAwD;AAExD,sFAAiF;AACjF,iFAA4E;AAMrE,IAAM,sCAAsC,GAA5C,MAAM,sCAAuC,SAAQ,8BAAa;IACrE,YACqB,uBAAgD,EAChD,mBAAwC,EACxC,GAAa;QAE9B,KAAK,EAAE,CAAC;QAJS,4BAAuB,GAAvB,uBAAuB,CAAyB;QAChD,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,QAAG,GAAH,GAAG,CAAU;IAGlC,CAAC;IAGK,AAAN,KAAK,CAAC,GAAG;QACL,MAAM,MAAM,GAAG,CAAC,CAAC;QACjB,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,KAAK,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QAEnC,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAEjG,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACrC,IAAI,eAAe,GAAG,KAAK,CAAC;YAC5B,IAAI,MAAM,GAAG,CAAC,CAAC;YAEf,GAAG,CAAC;gBACA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE;oBAC5E,KAAK,EAAE,WAAW,CAAC,KAAK;iBAC3B,CAAC,CAAC;gBAEH,MAAM,mBAAmB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,gBAAgB,KAAK,IAAI,CAAC,CAAC;gBAE5F,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjC,MAAM,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;gBACzG,CAAC;gBAED,eAAe,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;gBAC7C,MAAM,IAAI,KAAK,CAAC;YACpB,CAAC,QAAQ,eAAe,EAAE;QAC9B,CAAC;IACL,CAAC;CACJ,CAAA;AArCY,wFAAsC;AAUzC;IADL,IAAA,iCAAoB,GAAE;;;;iEA2BtB;iDApCQ,sCAAsC;IAJlD,IAAA,wBAAO,EAAC;QACL,IAAI,EAAE,oCAAoC;QAC1C,WAAW,EAAE,+BAA+B;KAC/C,CAAC;qCAGgD,mDAAuB;QAC3B,2CAAmB;QACnC,qBAAQ;GAJzB,sCAAsC,CAqClD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { DynamicModule, Type } from "@nestjs/common";
|
|
2
|
+
import { BlacklistedContactsInterface } from "../blacklisted-contacts/entity/blacklisted-contacts.entity.factory";
|
|
3
|
+
import { BrevoEmailImportLogInterface } from "../brevo-email-import-log/entity/brevo-email-import-log.entity.factory";
|
|
4
|
+
import { TargetGroupInterface } from "../target-group/entity/target-group-entity.factory";
|
|
5
|
+
import { BrevoContactAttributesInterface, EmailCampaignScopeInterface } from "../types";
|
|
6
|
+
interface BrevoContactModuleConfig {
|
|
7
|
+
BrevoContactAttributes?: Type<BrevoContactAttributesInterface>;
|
|
8
|
+
Scope: Type<EmailCampaignScopeInterface>;
|
|
9
|
+
BrevoTargetGroup: Type<TargetGroupInterface>;
|
|
10
|
+
BlacklistedContacts?: Type<BlacklistedContactsInterface>;
|
|
11
|
+
BrevoEmailImportLog?: Type<BrevoEmailImportLogInterface>;
|
|
12
|
+
}
|
|
13
|
+
export declare class BrevoContactModule {
|
|
14
|
+
static register({ BrevoContactAttributes, Scope, BrevoTargetGroup, BlacklistedContacts, BrevoEmailImportLog, }: BrevoContactModuleConfig): DynamicModule;
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=brevo-contact.module.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brevo-contact.module.d.ts","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact.module.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAU,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE7D,OAAO,EAAE,4BAA4B,EAAE,MAAM,oEAAoE,CAAC;AAKlH,OAAO,EAAE,4BAA4B,EAAE,MAAM,wEAAwE,CAAC;AAEtH,OAAO,EAAE,oBAAoB,EAAE,MAAM,oDAAoD,CAAC;AAC1F,OAAO,EAAE,+BAA+B,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAYxF,UAAU,wBAAwB;IAC9B,sBAAsB,CAAC,EAAE,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAC/D,KAAK,EAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACzC,gBAAgB,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC7C,mBAAmB,CAAC,EAAE,IAAI,CAAC,4BAA4B,CAAC,CAAC;IACzD,mBAAmB,CAAC,EAAE,IAAI,CAAC,4BAA4B,CAAC,CAAC;CAC5D;AAED,qBACa,kBAAkB;IAC3B,MAAM,CAAC,QAAQ,CAAC,EACZ,sBAAsB,EACtB,KAAK,EACL,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,GACtB,EAAE,wBAAwB,GAAG,aAAa;CA0C9C"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var BrevoContactModule_1;
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.BrevoContactModule = void 0;
|
|
11
|
+
const cms_api_1 = require("@dextinity/cms-api");
|
|
12
|
+
const nestjs_1 = require("@mikro-orm/nestjs");
|
|
13
|
+
const common_1 = require("@nestjs/common");
|
|
14
|
+
const brevo_api_module_1 = require("../brevo-api/brevo-api.module");
|
|
15
|
+
const brevo_contact_import_console_1 = require("../brevo-contact/brevo-contact-import.console");
|
|
16
|
+
const brevo_contact_import_service_1 = require("../brevo-contact/brevo-contact-import.service");
|
|
17
|
+
const brevo_email_import_log_module_1 = require("../brevo-email-import-log/brevo-email-import-log.module");
|
|
18
|
+
const config_module_1 = require("../config/config.module");
|
|
19
|
+
const brevo_contact_console_1 = require("./brevo-contact.console");
|
|
20
|
+
const brevo_contact_resolver_1 = require("./brevo-contact.resolver");
|
|
21
|
+
const brevo_contact_import_resolver_1 = require("./brevo-contact-import.resolver");
|
|
22
|
+
const brevo_contacts_service_1 = require("./brevo-contacts.service");
|
|
23
|
+
const brevo_contact_factory_1 = require("./dto/brevo-contact.factory");
|
|
24
|
+
const brevo_contact_input_factory_1 = require("./dto/brevo-contact-input.factory");
|
|
25
|
+
const brevo_test_contact_input_factory_1 = require("./dto/brevo-test-contact-input.factory");
|
|
26
|
+
const subscribe_input_factory_1 = require("./dto/subscribe-input.factory");
|
|
27
|
+
const ecg_rtr_list_service_1 = require("./ecg-rtr-list/ecg-rtr-list.service");
|
|
28
|
+
const redirect_url_validator_1 = require("./validator/redirect-url.validator");
|
|
29
|
+
let BrevoContactModule = BrevoContactModule_1 = class BrevoContactModule {
|
|
30
|
+
static register({ BrevoContactAttributes, Scope, BrevoTargetGroup, BlacklistedContacts, BrevoEmailImportLog, }) {
|
|
31
|
+
const BrevoContact = brevo_contact_factory_1.BrevoContactFactory.create({ BrevoContactAttributes });
|
|
32
|
+
const BrevoContactSubscribeInput = subscribe_input_factory_1.SubscribeInputFactory.create({ BrevoContactAttributes, Scope });
|
|
33
|
+
const [BrevoContactInput, BrevoContactUpdateInput] = brevo_contact_input_factory_1.BrevoContactInputFactory.create({ BrevoContactAttributes, Scope });
|
|
34
|
+
const [BrevoTestContactInput] = brevo_test_contact_input_factory_1.BrevoTestContactInputFactory.create({ BrevoContactAttributes, Scope });
|
|
35
|
+
const BrevoContactResolver = (0, brevo_contact_resolver_1.createBrevoContactResolver)({
|
|
36
|
+
BrevoContact,
|
|
37
|
+
BrevoContactSubscribeInput,
|
|
38
|
+
Scope,
|
|
39
|
+
BrevoContactInput,
|
|
40
|
+
BrevoContactUpdateInput,
|
|
41
|
+
BrevoTestContactInput,
|
|
42
|
+
});
|
|
43
|
+
const BrevoContactImportResolver = (0, brevo_contact_import_resolver_1.createBrevoContactImportResolver)({ Scope, BrevoContact });
|
|
44
|
+
const BrevoContactImportConsole = (0, brevo_contact_import_console_1.createBrevoContactImportConsole)({ Scope });
|
|
45
|
+
const mikroOrmEntities = [BrevoTargetGroup, cms_api_1.FileUpload, "BrevoConfig", ...(BlacklistedContacts ? ["BrevoBlacklistedContacts"] : [])];
|
|
46
|
+
const imports = [
|
|
47
|
+
brevo_api_module_1.BrevoApiModule,
|
|
48
|
+
config_module_1.ConfigModule,
|
|
49
|
+
nestjs_1.MikroOrmModule.forFeature(mikroOrmEntities),
|
|
50
|
+
...(BrevoEmailImportLog ? [brevo_email_import_log_module_1.BrevoEmailImportLogModule] : []),
|
|
51
|
+
];
|
|
52
|
+
return {
|
|
53
|
+
module: BrevoContactModule_1,
|
|
54
|
+
imports: imports,
|
|
55
|
+
providers: [
|
|
56
|
+
brevo_contact_import_service_1.BrevoContactImportService,
|
|
57
|
+
brevo_contacts_service_1.BrevoContactsService,
|
|
58
|
+
BrevoContactResolver,
|
|
59
|
+
BrevoContactImportResolver,
|
|
60
|
+
ecg_rtr_list_service_1.EcgRtrListService,
|
|
61
|
+
redirect_url_validator_1.IsValidRedirectURLConstraint,
|
|
62
|
+
brevo_contact_console_1.DeleteUnsubscribedBrevoContactsConsole,
|
|
63
|
+
BrevoContactImportConsole,
|
|
64
|
+
],
|
|
65
|
+
exports: [brevo_contacts_service_1.BrevoContactsService, brevo_contact_import_service_1.BrevoContactImportService],
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
exports.BrevoContactModule = BrevoContactModule;
|
|
70
|
+
exports.BrevoContactModule = BrevoContactModule = BrevoContactModule_1 = __decorate([
|
|
71
|
+
(0, common_1.Module)({})
|
|
72
|
+
], BrevoContactModule);
|
|
73
|
+
//# sourceMappingURL=brevo-contact.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brevo-contact.module.js","sourceRoot":"","sources":["../../src/brevo-contact/brevo-contact.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,gDAAgD;AAChD,8CAAmD;AACnD,2CAA6D;AAG7D,oEAA+D;AAC/D,gGAAgG;AAChG,gGAA0F;AAC1F,2GAAoG;AAEpG,2DAAuD;AAGvD,mEAAiF;AACjF,qEAAsE;AACtE,mFAAmF;AACnF,qEAAgE;AAChE,uEAAkE;AAClE,mFAA6E;AAC7E,6FAAsF;AACtF,2EAAsE;AACtE,8EAAwE;AACxE,+EAAkF;AAW3E,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IAC3B,MAAM,CAAC,QAAQ,CAAC,EACZ,sBAAsB,EACtB,KAAK,EACL,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,GACI;QACvB,MAAM,YAAY,GAAG,2CAAmB,CAAC,MAAM,CAAC,EAAE,sBAAsB,EAAE,CAAC,CAAC;QAC5E,MAAM,0BAA0B,GAAG,+CAAqB,CAAC,MAAM,CAAC,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,CAAC;QACnG,MAAM,CAAC,iBAAiB,EAAE,uBAAuB,CAAC,GAAG,sDAAwB,CAAC,MAAM,CAAC,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,CAAC;QACxH,MAAM,CAAC,qBAAqB,CAAC,GAAG,+DAA4B,CAAC,MAAM,CAAC,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,CAAC;QAEvG,MAAM,oBAAoB,GAAG,IAAA,mDAA0B,EAAC;YACpD,YAAY;YACZ,0BAA0B;YAC1B,KAAK;YACL,iBAAiB;YACjB,uBAAuB;YACvB,qBAAqB;SACxB,CAAC,CAAC;QAEH,MAAM,0BAA0B,GAAG,IAAA,gEAAgC,EAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QAC7F,MAAM,yBAAyB,GAAG,IAAA,8DAA+B,EAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAE7E,MAAM,gBAAgB,GAAG,CAAC,gBAAgB,EAAE,oBAAU,EAAE,aAAa,EAAE,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAErI,MAAM,OAAO,GAAG;YACZ,iCAAc;YACd,4BAAY;YACZ,uBAAc,CAAC,UAAU,CAAC,gBAAgB,CAAC;YAC3C,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,yDAAyB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9D,CAAC;QACF,OAAO;YACH,MAAM,EAAE,oBAAkB;YAC1B,OAAO,EAAE,OAAO;YAChB,SAAS,EAAE;gBACP,wDAAyB;gBACzB,6CAAoB;gBACpB,oBAAoB;gBACpB,0BAA0B;gBAC1B,wCAAiB;gBACjB,qDAA4B;gBAC5B,8DAAsC;gBACtC,yBAAyB;aAC5B;YACD,OAAO,EAAE,CAAC,6CAAoB,EAAE,wDAAyB,CAAC;SAC7D,CAAC;IACN,CAAC;CACJ,CAAA;AAjDY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,kBAAkB,CAiD9B"}
|