@silexpert/core 1.3.15 → 1.3.17

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 (125) hide show
  1. package/dist/cjs/api/resources/Ai.d.ts +6 -0
  2. package/dist/cjs/api/resources/Ai.d.ts.map +1 -0
  3. package/dist/cjs/api/resources/Ai.js +11 -0
  4. package/dist/cjs/api/resources/Ai.js.map +1 -0
  5. package/dist/cjs/api/resources.d.ts +2 -0
  6. package/dist/cjs/api/resources.d.ts.map +1 -1
  7. package/dist/cjs/api/resources.js +2 -0
  8. package/dist/cjs/api/resources.js.map +1 -1
  9. package/dist/cjs/types/Enum/AIPrompt.d.ts +13 -0
  10. package/dist/cjs/types/Enum/AIPrompt.d.ts.map +1 -0
  11. package/dist/cjs/types/Enum/AIPrompt.js +43 -0
  12. package/dist/cjs/types/Enum/AIPrompt.js.map +1 -0
  13. package/dist/cjs/types/Enum/CerfaType.d.ts +3 -3
  14. package/dist/cjs/types/Enum/CerfaType.d.ts.map +1 -1
  15. package/dist/cjs/types/Enum/CerfaType.js.map +1 -1
  16. package/dist/cjs/types/Enum/Role.d.ts +2 -1
  17. package/dist/cjs/types/Enum/Role.d.ts.map +1 -1
  18. package/dist/cjs/types/Enum/Role.js +1 -0
  19. package/dist/cjs/types/Enum/Role.js.map +1 -1
  20. package/dist/cjs/types/Enum/RoleDetail.d.ts +10 -0
  21. package/dist/cjs/types/Enum/RoleDetail.d.ts.map +1 -1
  22. package/dist/cjs/types/Enum/RoleDetail.js +10 -0
  23. package/dist/cjs/types/Enum/RoleDetail.js.map +1 -1
  24. package/dist/cjs/types/Enum/TaskResponseType.js +2 -2
  25. package/dist/cjs/types/Enum/TaskResponseType.js.map +1 -1
  26. package/dist/cjs/types/Interface/api/ai/AskQuestionCollaborator.d.ts +4 -0
  27. package/dist/cjs/types/Interface/api/ai/AskQuestionCollaborator.d.ts.map +1 -0
  28. package/dist/cjs/types/Interface/api/ai/AskQuestionCollaborator.js +24 -0
  29. package/dist/cjs/types/Interface/api/ai/AskQuestionCollaborator.js.map +1 -0
  30. package/dist/cjs/types/Interface/api/commercial/QueryGetStats.d.ts +0 -2
  31. package/dist/cjs/types/Interface/api/commercial/QueryGetStats.d.ts.map +1 -1
  32. package/dist/cjs/types/Interface/api/commercial/QueryGetStats.js +0 -14
  33. package/dist/cjs/types/Interface/api/commercial/QueryGetStats.js.map +1 -1
  34. package/dist/cjs/types/Interface/models/IAIQuestion.d.ts +15 -0
  35. package/dist/cjs/types/Interface/models/IAIQuestion.d.ts.map +1 -0
  36. package/dist/cjs/types/Interface/models/IAIQuestion.js +3 -0
  37. package/dist/cjs/types/Interface/models/IAIQuestion.js.map +1 -0
  38. package/dist/cjs/types/Interface/models/IPayment.d.ts +1 -0
  39. package/dist/cjs/types/Interface/models/IPayment.d.ts.map +1 -1
  40. package/dist/cjs/types/Interface/models/IPayment.js.map +1 -1
  41. package/dist/cjs/types/index.d.ts +3 -1
  42. package/dist/cjs/types/index.d.ts.map +1 -1
  43. package/dist/cjs/types/index.js +3 -1
  44. package/dist/cjs/types/index.js.map +1 -1
  45. package/dist/cjs/utils/commercialManagement/document.js +1 -1
  46. package/dist/cjs/utils/commercialManagement/document.js.map +1 -1
  47. package/dist/cjs/utils/commercialManagement/internationalization/choices.js +4 -4
  48. package/dist/cjs/utils/commercialManagement/internationalization/choices.js.map +1 -1
  49. package/dist/cjs/utils/commercialManagement/templates/body.js +1 -1
  50. package/dist/cjs/utils/commercialManagement/templates/body.js.map +1 -1
  51. package/dist/mjs/api/resources/Ai.d.ts +6 -0
  52. package/dist/mjs/api/resources/Ai.d.ts.map +1 -0
  53. package/dist/mjs/api/resources/Ai.js +7 -0
  54. package/dist/mjs/api/resources/Ai.js.map +1 -0
  55. package/dist/mjs/api/resources.d.ts +2 -0
  56. package/dist/mjs/api/resources.d.ts.map +1 -1
  57. package/dist/mjs/api/resources.js +2 -0
  58. package/dist/mjs/api/resources.js.map +1 -1
  59. package/dist/mjs/types/Enum/AIPrompt.d.ts +13 -0
  60. package/dist/mjs/types/Enum/AIPrompt.d.ts.map +1 -0
  61. package/dist/mjs/types/Enum/AIPrompt.js +40 -0
  62. package/dist/mjs/types/Enum/AIPrompt.js.map +1 -0
  63. package/dist/mjs/types/Enum/CerfaType.d.ts +3 -3
  64. package/dist/mjs/types/Enum/CerfaType.d.ts.map +1 -1
  65. package/dist/mjs/types/Enum/CerfaType.js.map +1 -1
  66. package/dist/mjs/types/Enum/Role.d.ts +2 -1
  67. package/dist/mjs/types/Enum/Role.d.ts.map +1 -1
  68. package/dist/mjs/types/Enum/Role.js +1 -0
  69. package/dist/mjs/types/Enum/Role.js.map +1 -1
  70. package/dist/mjs/types/Enum/RoleDetail.d.ts +10 -0
  71. package/dist/mjs/types/Enum/RoleDetail.d.ts.map +1 -1
  72. package/dist/mjs/types/Enum/RoleDetail.js +10 -0
  73. package/dist/mjs/types/Enum/RoleDetail.js.map +1 -1
  74. package/dist/mjs/types/Enum/TaskResponseType.js +2 -2
  75. package/dist/mjs/types/Enum/TaskResponseType.js.map +1 -1
  76. package/dist/mjs/types/Interface/api/ai/AskQuestionCollaborator.d.ts +4 -0
  77. package/dist/mjs/types/Interface/api/ai/AskQuestionCollaborator.d.ts.map +1 -0
  78. package/dist/mjs/types/Interface/api/ai/AskQuestionCollaborator.js +21 -0
  79. package/dist/mjs/types/Interface/api/ai/AskQuestionCollaborator.js.map +1 -0
  80. package/dist/mjs/types/Interface/api/commercial/QueryGetStats.d.ts +0 -2
  81. package/dist/mjs/types/Interface/api/commercial/QueryGetStats.d.ts.map +1 -1
  82. package/dist/mjs/types/Interface/api/commercial/QueryGetStats.js +1 -17
  83. package/dist/mjs/types/Interface/api/commercial/QueryGetStats.js.map +1 -1
  84. package/dist/mjs/types/Interface/models/IAIQuestion.d.ts +15 -0
  85. package/dist/mjs/types/Interface/models/IAIQuestion.d.ts.map +1 -0
  86. package/dist/mjs/types/Interface/models/IAIQuestion.js +2 -0
  87. package/dist/mjs/types/Interface/models/IAIQuestion.js.map +1 -0
  88. package/dist/mjs/types/Interface/models/IPayment.d.ts +1 -0
  89. package/dist/mjs/types/Interface/models/IPayment.d.ts.map +1 -1
  90. package/dist/mjs/types/Interface/models/IPayment.js.map +1 -1
  91. package/dist/mjs/types/index.d.ts +3 -1
  92. package/dist/mjs/types/index.d.ts.map +1 -1
  93. package/dist/mjs/types/index.js +3 -1
  94. package/dist/mjs/types/index.js.map +1 -1
  95. package/dist/mjs/utils/commercialManagement/document.js +1 -1
  96. package/dist/mjs/utils/commercialManagement/document.js.map +1 -1
  97. package/dist/mjs/utils/commercialManagement/internationalization/choices.js +4 -4
  98. package/dist/mjs/utils/commercialManagement/internationalization/choices.js.map +1 -1
  99. package/dist/mjs/utils/commercialManagement/templates/body.js +1 -1
  100. package/dist/mjs/utils/commercialManagement/templates/body.js.map +1 -1
  101. package/package.json +1 -1
  102. package/ts/api/resources/Ai.ts +8 -0
  103. package/ts/api/resources.ts +2 -0
  104. package/ts/types/Enum/AIPrompt.ts +44 -0
  105. package/ts/types/Enum/CerfaType.ts +3 -3
  106. package/ts/types/Enum/Role.ts +1 -0
  107. package/ts/types/Enum/RoleDetail.ts +10 -0
  108. package/ts/types/Enum/TaskResponseType.ts +2 -2
  109. package/ts/types/Interface/api/ai/AskQuestionCollaborator.ts +9 -0
  110. package/ts/types/Interface/api/commercial/QueryGetStats.ts +1 -13
  111. package/ts/types/Interface/models/IAIQuestion.ts +17 -0
  112. package/ts/types/Interface/models/IPayment.ts +1 -0
  113. package/ts/types/index.ts +3 -1
  114. package/ts/utils/commercialManagement/document.ts +1 -1
  115. package/ts/utils/commercialManagement/internationalization/choices.ts +4 -4
  116. package/ts/utils/commercialManagement/templates/body.ts +1 -1
  117. package/dist/cjs/types/Enum/OCRPrompt.d.ts +0 -12
  118. package/dist/cjs/types/Enum/OCRPrompt.d.ts.map +0 -1
  119. package/dist/cjs/types/Enum/OCRPrompt.js +0 -24
  120. package/dist/cjs/types/Enum/OCRPrompt.js.map +0 -1
  121. package/dist/mjs/types/Enum/OCRPrompt.d.ts +0 -12
  122. package/dist/mjs/types/Enum/OCRPrompt.d.ts.map +0 -1
  123. package/dist/mjs/types/Enum/OCRPrompt.js +0 -21
  124. package/dist/mjs/types/Enum/OCRPrompt.js.map +0 -1
  125. package/ts/types/Enum/OCRPrompt.ts +0 -25
@@ -1 +1 @@
1
- {"version":3,"file":"document.js","sourceRoot":"","sources":["../../../../ts/utils/commercialManagement/document.ts"],"names":[],"mappings":"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","sourcesContent":["import { orderBy as _orderBy, groupBy as _groupBy, sumBy as _sumBy, uniq as _uniq, round as _round } from 'lodash';\nimport * as dayjs from 'dayjs';\nimport {\n ReadCommercialDocumentTemplate,\n ReadDocumentEditing,\n ReadVatEditing,\n} from '../../types/Interface/api/commercialManagement/Read';\nimport { AccountingCategoryList, FontIds, fontList, InvoiceLanguage } from '../../types/Enum/CommercialManagement';\nimport { EstimateInvoiceType } from '../../types/Enum/EstimateInvoice';\nimport { Vat } from '../../types/Enum/Vat';\nimport { integerToFormattedAmountString, integerToFormattedAmountObject } from '../amount';\nimport { CommercialDocumentCommonHTML, CommercialDocumentMailHTML } from './templates/common';\nimport { bodyTemplate } from './templates/body';\nimport { productToReadProductEditing } from './product';\nimport { vatToReadVatEditing } from './vat';\nimport {\n CreateInvoiceDocument,\n CreateMailHeader,\n CreatePreSaleDocument,\n ReadCommercialMailTemplate,\n} from '../../types';\nimport { thirdPartyToReadThirdPartyEditing } from './thirdParty';\nimport { getBrandConfig } from '../brands';\nimport { internationalizationChoices, internationalizationConsistency } from './internationalization/choices';\n\nimport * as ejs from 'ejs';\n// eslint-disable-next-line @typescript-eslint/no-require-imports\nrequire('dayjs/locale/fr');\n\ntype brandColorType = {\n primary: string;\n primary50: string;\n primary100: string;\n primary300: string;\n primary500: string;\n primary700: string;\n};\n\nexport function generateCommercialDocument(\n idEstimateInvoiceType: EstimateInvoiceType,\n payload: CreateInvoiceDocument | CreatePreSaleDocument,\n shouldHideBrandName = false,\n nodeEnv: string | undefined = undefined,\n): ReadCommercialDocumentTemplate {\n const products = _orderBy(payload.products.map((product) => productToReadProductEditing(product), 'reorder'));\n const vats = _orderBy(\n Object.values(_groupBy(products, 'vatFormatted')).map((v) => vatToReadVatEditing(v), 'value'),\n ).filter((v) => v.id !== Vat.MARGE.id);\n const thirdParty = thirdPartyToReadThirdPartyEditing(payload.thirdParty);\n\n let forcedVats: ReadVatEditing[] | undefined = undefined;\n\n if (payload.advanceProducts?.length) {\n const advanceVats = Object.values(_groupBy(payload.advanceProducts, 'vatFormatted'))\n .map((v) => vatToReadVatEditing(v), 'value')\n .filter((v) => v.id !== Vat.MARGE.id);\n\n forcedVats = vats.map((v) => {\n const base = v.base - (advanceVats.find((a) => a.id === v.id)?.base ?? 0);\n const toPay = v.toPay - (advanceVats.find((a) => a.id === v.id)?.toPay ?? 0);\n return {\n ...v,\n baseFormatted: integerToFormattedAmountString(base),\n amountFormatted: integerToFormattedAmountString(toPay),\n };\n });\n }\n\n const totalTaxIncluded = _sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount');\n\n const locale = payload.language ?? InvoiceLanguage.FR;\n const languageOption = internationalizationChoices[locale];\n\n const accountingCategory = AccountingCategoryList.find((a) => a.id === payload.accountingCategory)?.label ?? null;\n\n const data: ReadDocumentEditing & { brandColors: brandColorType; brandName: string; shouldHideBrandName: boolean } = {\n ...payload,\n thirdParty,\n paymentLink: payload.paymentLink ?? '#',\n idEstimateInvoiceType,\n title: payload.title ?? null,\n penalties: payload.penalties\n ? (internationalizationConsistency(locale, payload.penalties, 'penalties') ?? payload.penalties)\n : null,\n termsOfPayment: payload.termsOfPayment\n ? (internationalizationConsistency(locale, payload.termsOfPayment, 'termsOfPayment') ?? payload.termsOfPayment)\n : null,\n compensation: payload.compensation\n ? (internationalizationConsistency(locale, payload.compensation, 'recoveryCost') ?? payload.compensation)\n : null,\n discount: payload.discount\n ? (internationalizationConsistency(locale, payload.discount, 'discount') ?? payload.discount)\n : null,\n vatMention: payload.vatMention\n ? (internationalizationConsistency(locale, payload.vatMention, 'vatMention') ?? null)\n : null,\n phoneContact: payload.settings?.phoneContact ?? null,\n products,\n vats,\n totalTaxExcluded: _sumBy(products, 'totalTaxExcluded'),\n totalTaxIncluded: _round(totalTaxIncluded),\n totalTaxAndDiscountIncluded: _round(totalTaxIncluded),\n generalDiscountFormatted: payload.generalDiscount2\n ? integerToFormattedAmountString(payload.generalDiscount2)\n : null,\n depositFormatted: payload.deposit ? integerToFormattedAmountString(payload.deposit) : null,\n totalTaxExcludedFormatted: integerToFormattedAmountString(_sumBy(products, 'totalTaxExcluded')),\n totalTaxIncludedFormatted: integerToFormattedAmountString(totalTaxIncluded),\n totalTaxAndDiscountIncludedFormatted: integerToFormattedAmountString(\n totalTaxIncluded - (payload.generalDiscount2 ?? 0) - (payload.deposit ?? 0),\n ),\n totalVatAmountFormatted: integerToFormattedAmountString(_sumBy(vats, 'amount')),\n font: {\n id: payload.settings?.idFont ?? FontIds.CIRCULAR_STD,\n name: fontList.find((f) => f.id === payload.settings?.idFont)?.name ?? fontList[0].name,\n url: fontList.find((f) => f.id === payload.settings?.idFont)?.link ?? fontList[0].link,\n },\n capitalFormatted: payload.capital\n ? `${payload.capital}`\n .split('')\n .reduceRight((acc, char, i, { length }) => `${char}${(length - (i + 1)) % 3 === 0 ? ' ' : ''}${acc}`, '')\n .trim()\n : null,\n dueDateFormatted: payload.dueDate ? dayjs(payload.dueDate).format('DD/MM/YYYY') : null,\n expirationDateFormatted: payload.expirationDate ? dayjs(payload.expirationDate).format('DD/MM/YYYY') : null,\n emissionDateFormatted: payload.emissionDate ? dayjs(payload.emissionDate).format('DD/MM/YYYY') : null,\n shouldDisplayDiscountColumn: !!products.find((p) => p.discount2 && p.discount2 > 0),\n // @ts-ignore\n marginVats: _uniq(products.filter((p) => p.marginVatFormatted !== null).map((p) => p.marginVatFormatted)),\n accountingCategoryFormatted: accountingCategory\n ? (internationalizationConsistency(locale, accountingCategory, 'accountingCategory') ?? null)\n : null,\n // @ts-ignore\n brandColors: getBrandConfig({ objectWaited: 'colors', nodeEnv }) as brandColorType,\n brandName: `${getBrandConfig({ objectWaited: 'name', nodeEnv }) as unknown as string}`,\n shouldHideBrandName,\n paymentType: payload.paymentType\n ? (internationalizationConsistency(locale, payload.paymentType, 'paymentType') ?? payload.paymentType)\n : null,\n languageTemplate: languageOption,\n };\n\n const commonTemplate = new CommercialDocumentCommonHTML();\n const documentFreeText = [EstimateInvoiceType.DEVIS, EstimateInvoiceType.BON].includes(idEstimateInvoiceType)\n ? payload?.settings?.freeEstimateText\n : payload?.settings?.freeInvoiceText;\n\n return {\n header: ejs.render(commonTemplate.header, data),\n body: ejs.render(bodyTemplate, {\n ...data,\n comment: data.comment && typeof data.comment === 'string' ? data.comment?.replace(/\\n/g, '<br/>') : null,\n products: data.products.map((p) => ({\n ...p,\n comment: p.comment && typeof p.comment === 'string' ? p.comment?.replace(/\\n/g, '<br/>') : null,\n // @ts-expect-error\n unitFormatted: internationalizationConsistency(locale, p.unitFormatted, 'unit'),\n })),\n vats: forcedVats ?? vats,\n }),\n footer: ejs.render(commonTemplate.footer, {\n ...data,\n freeText: documentFreeText ?? null,\n }),\n data,\n };\n}\n\nexport function generateMailHeader(\n params: CreateMailHeader,\n shouldHideBrandName = false,\n nodeEnv: string | undefined = undefined,\n): ReadCommercialMailTemplate {\n const locale = params.payload.language ?? InvoiceLanguage.FR;\n const languageOption = internationalizationChoices[locale];\n dayjs.locale('fr');\n const data = {\n ...params.payload,\n totalTaxExcludedFormatted: integerToFormattedAmountObject(params.payload.totalTaxExcluded),\n totalTaxIncludedFormatted: integerToFormattedAmountObject(params.payload.totalTaxIncluded),\n totalVatFormatted: integerToFormattedAmountObject(\n params.payload.totalTaxIncluded - params.payload.totalTaxExcluded,\n ),\n dueDateFormatted: params.payload.dueDate ? dayjs(params.payload.dueDate).format('DD MMMM YYYY') : null,\n hasVat: params.hasVat,\n hostS3: params.hostS3,\n logoUrl: params.logoUrl,\n companyName: params.companyName,\n fileUrl: params.fileUrl,\n // @ts-ignore\n brandColors: getBrandConfig({ objectWaited: 'colors', nodeEnv }) as brandColorType,\n shouldHideBrandName,\n languageMail: languageOption,\n };\n\n const mailTemplate = new CommercialDocumentMailHTML();\n\n return {\n header: ejs.render(mailTemplate.header, data),\n };\n}\n"]}
1
+ {"version":3,"file":"document.js","sourceRoot":"","sources":["../../../../ts/utils/commercialManagement/document.ts"],"names":[],"mappings":"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","sourcesContent":["import { orderBy as _orderBy, groupBy as _groupBy, sumBy as _sumBy, uniq as _uniq, round as _round } from 'lodash';\nimport * as dayjs from 'dayjs';\nimport {\n ReadCommercialDocumentTemplate,\n ReadDocumentEditing,\n ReadVatEditing,\n} from '../../types/Interface/api/commercialManagement/Read';\nimport { AccountingCategoryList, FontIds, fontList, InvoiceLanguage } from '../../types/Enum/CommercialManagement';\nimport { EstimateInvoiceType } from '../../types/Enum/EstimateInvoice';\nimport { Vat } from '../../types/Enum/Vat';\nimport { integerToFormattedAmountString, integerToFormattedAmountObject } from '../amount';\nimport { CommercialDocumentCommonHTML, CommercialDocumentMailHTML } from './templates/common';\nimport { bodyTemplate } from './templates/body';\nimport { productToReadProductEditing } from './product';\nimport { vatToReadVatEditing } from './vat';\nimport {\n CreateInvoiceDocument,\n CreateMailHeader,\n CreatePreSaleDocument,\n ReadCommercialMailTemplate,\n} from '../../types';\nimport { thirdPartyToReadThirdPartyEditing } from './thirdParty';\nimport { getBrandConfig } from '../brands';\nimport { internationalizationChoices, internationalizationConsistency } from './internationalization/choices';\n\nimport * as ejs from 'ejs';\n// eslint-disable-next-line @typescript-eslint/no-require-imports\nrequire('dayjs/locale/fr');\n\ntype brandColorType = {\n primary: string;\n primary50: string;\n primary100: string;\n primary300: string;\n primary500: string;\n primary700: string;\n};\n\nexport function generateCommercialDocument(\n idEstimateInvoiceType: EstimateInvoiceType,\n payload: CreateInvoiceDocument | CreatePreSaleDocument,\n shouldHideBrandName = false,\n nodeEnv: string | undefined = undefined,\n): ReadCommercialDocumentTemplate {\n const products = _orderBy(payload.products.map((product) => productToReadProductEditing(product), 'reorder'));\n const vats = _orderBy(\n Object.values(_groupBy(products, 'vatFormatted')).map((v) => vatToReadVatEditing(v), 'value'),\n ).filter((v) => v.id !== Vat.MARGE.id);\n const thirdParty = thirdPartyToReadThirdPartyEditing(payload.thirdParty);\n\n let forcedVats: ReadVatEditing[] | undefined = undefined;\n\n if (payload.advanceProducts?.length) {\n const advanceVats = Object.values(_groupBy(payload.advanceProducts, 'vatFormatted'))\n .map((v) => vatToReadVatEditing(v), 'value')\n .filter((v) => v.id !== Vat.MARGE.id);\n\n forcedVats = vats.map((v) => {\n const base = v.base - (advanceVats.find((a) => a.id === v.id)?.base ?? 0);\n const toPay = v.toPay - (advanceVats.find((a) => a.id === v.id)?.toPay ?? 0);\n return {\n ...v,\n baseFormatted: integerToFormattedAmountString(base),\n amountFormatted: integerToFormattedAmountString(toPay),\n };\n });\n }\n\n const totalTaxIncluded = _sumBy(products, 'totalTaxExcluded') + _sumBy(vats, 'amount');\n\n const locale = payload.language ?? InvoiceLanguage.FR;\n const languageOption = internationalizationChoices[locale];\n\n const accountingCategory = AccountingCategoryList.find((a) => a.id === payload.accountingCategory)?.label ?? null;\n\n const data: ReadDocumentEditing & { brandColors: brandColorType; brandName: string; shouldHideBrandName: boolean } = {\n ...payload,\n thirdParty,\n paymentLink: payload.paymentLink ?? '#',\n idEstimateInvoiceType,\n title: payload.title ?? null,\n penalties: payload.penalties\n ? (internationalizationConsistency(locale, payload.penalties, 'penalties') ?? payload.penalties)\n : null,\n termsOfPayment: payload.termsOfPayment\n ? (internationalizationConsistency(locale, payload.termsOfPayment, 'termsOfPayment') ?? payload.termsOfPayment)\n : null,\n compensation: payload.compensation\n ? (internationalizationConsistency(locale, payload.compensation, 'recoveryCost') ?? payload.compensation)\n : null,\n discount: payload.discount\n ? (internationalizationConsistency(locale, payload.discount, 'discount') ?? payload.discount)\n : null,\n vatMention: payload.vatMention\n ? (internationalizationConsistency(locale, payload.vatMention, 'vatMention') ?? payload.vatMention)\n : null,\n phoneContact: payload.settings?.phoneContact ?? null,\n products,\n vats,\n totalTaxExcluded: _sumBy(products, 'totalTaxExcluded'),\n totalTaxIncluded: _round(totalTaxIncluded),\n totalTaxAndDiscountIncluded: _round(totalTaxIncluded),\n generalDiscountFormatted: payload.generalDiscount2\n ? integerToFormattedAmountString(payload.generalDiscount2)\n : null,\n depositFormatted: payload.deposit ? integerToFormattedAmountString(payload.deposit) : null,\n totalTaxExcludedFormatted: integerToFormattedAmountString(_sumBy(products, 'totalTaxExcluded')),\n totalTaxIncludedFormatted: integerToFormattedAmountString(totalTaxIncluded),\n totalTaxAndDiscountIncludedFormatted: integerToFormattedAmountString(\n totalTaxIncluded - (payload.generalDiscount2 ?? 0) - (payload.deposit ?? 0),\n ),\n totalVatAmountFormatted: integerToFormattedAmountString(_sumBy(vats, 'amount')),\n font: {\n id: payload.settings?.idFont ?? FontIds.CIRCULAR_STD,\n name: fontList.find((f) => f.id === payload.settings?.idFont)?.name ?? fontList[0].name,\n url: fontList.find((f) => f.id === payload.settings?.idFont)?.link ?? fontList[0].link,\n },\n capitalFormatted: payload.capital\n ? `${payload.capital}`\n .split('')\n .reduceRight((acc, char, i, { length }) => `${char}${(length - (i + 1)) % 3 === 0 ? ' ' : ''}${acc}`, '')\n .trim()\n : null,\n dueDateFormatted: payload.dueDate ? dayjs(payload.dueDate).format('DD/MM/YYYY') : null,\n expirationDateFormatted: payload.expirationDate ? dayjs(payload.expirationDate).format('DD/MM/YYYY') : null,\n emissionDateFormatted: payload.emissionDate ? dayjs(payload.emissionDate).format('DD/MM/YYYY') : null,\n shouldDisplayDiscountColumn: !!products.find((p) => p.discount2 && p.discount2 > 0),\n // @ts-ignore\n marginVats: _uniq(products.filter((p) => p.marginVatFormatted !== null).map((p) => p.marginVatFormatted)),\n accountingCategoryFormatted: accountingCategory\n ? (internationalizationConsistency(locale, accountingCategory, 'accountingCategory') ?? null)\n : null,\n // @ts-ignore\n brandColors: getBrandConfig({ objectWaited: 'colors', nodeEnv }) as brandColorType,\n brandName: `${getBrandConfig({ objectWaited: 'name', nodeEnv }) as unknown as string}`,\n shouldHideBrandName,\n paymentType: payload.paymentType\n ? (internationalizationConsistency(locale, payload.paymentType, 'paymentType') ?? payload.paymentType)\n : null,\n languageTemplate: languageOption,\n };\n\n const commonTemplate = new CommercialDocumentCommonHTML();\n const documentFreeText = [EstimateInvoiceType.DEVIS, EstimateInvoiceType.BON].includes(idEstimateInvoiceType)\n ? payload?.settings?.freeEstimateText\n : payload?.settings?.freeInvoiceText;\n\n return {\n header: ejs.render(commonTemplate.header, data),\n body: ejs.render(bodyTemplate, {\n ...data,\n comment: data.comment && typeof data.comment === 'string' ? data.comment?.replace(/\\n/g, '<br/>') : null,\n products: data.products.map((p) => ({\n ...p,\n comment: p.comment && typeof p.comment === 'string' ? p.comment?.replace(/\\n/g, '<br/>') : null,\n // @ts-expect-error\n unitFormatted: internationalizationConsistency(locale, p.unitFormatted, 'unit'),\n })),\n vats: forcedVats ?? vats,\n }),\n footer: ejs.render(commonTemplate.footer, {\n ...data,\n freeText: documentFreeText ?? null,\n }),\n data,\n };\n}\n\nexport function generateMailHeader(\n params: CreateMailHeader,\n shouldHideBrandName = false,\n nodeEnv: string | undefined = undefined,\n): ReadCommercialMailTemplate {\n const locale = params.payload.language ?? InvoiceLanguage.FR;\n const languageOption = internationalizationChoices[locale];\n dayjs.locale('fr');\n const data = {\n ...params.payload,\n totalTaxExcludedFormatted: integerToFormattedAmountObject(params.payload.totalTaxExcluded),\n totalTaxIncludedFormatted: integerToFormattedAmountObject(params.payload.totalTaxIncluded),\n totalVatFormatted: integerToFormattedAmountObject(\n params.payload.totalTaxIncluded - params.payload.totalTaxExcluded,\n ),\n dueDateFormatted: params.payload.dueDate ? dayjs(params.payload.dueDate).format('DD MMMM YYYY') : null,\n hasVat: params.hasVat,\n hostS3: params.hostS3,\n logoUrl: params.logoUrl,\n companyName: params.companyName,\n fileUrl: params.fileUrl,\n // @ts-ignore\n brandColors: getBrandConfig({ objectWaited: 'colors', nodeEnv }) as brandColorType,\n shouldHideBrandName,\n languageMail: languageOption,\n };\n\n const mailTemplate = new CommercialDocumentMailHTML();\n\n return {\n header: ejs.render(mailTemplate.header, data),\n };\n}\n"]}
@@ -23,8 +23,8 @@ export const internationalizationChoices = {
23
23
  penalties: ['Non applicable', '3 fois le taux légal', 'Taux directeur de la BCE + 10 points'],
24
24
  discount: ['Non applicable', 'Aucun escompte en cas de paiement anticipé'],
25
25
  vatMention: [
26
- 'Non concerné',
27
- 'Non applicable',
26
+ 'TVA: Non concerné',
27
+ 'TVA: Non applicable',
28
28
  'TVA non applicable, art. 293 B du CGI',
29
29
  'TVA non applicable - Exportation hors UE - Art. 259-1 du CGI',
30
30
  "Non soumis à TVA selon l'article 261C du CGI",
@@ -405,8 +405,8 @@ const internationalizationMatching = {
405
405
  { fr: 'Virement bancaire', en: 'Bank transfer' },
406
406
  ],
407
407
  vatMention: [
408
- { fr: 'Non concerné', en: 'Not affected' },
409
- { fr: 'Non applicable', en: 'Not applicable' },
408
+ { fr: 'TVA: Non concerné', en: 'VAT: Not affected' },
409
+ { fr: 'TVA: Non applicable', en: 'VAT: Not applicable' },
410
410
  {
411
411
  fr: 'TVA non applicable, art. 293 B du CGI',
412
412
  en: 'VAT not applicable, art. 293 B of the French General Tax Code (FGTC)',
@@ -1 +1 @@
1
- {"version":3,"file":"choices.js","sourceRoot":"","sources":["../../../../../ts/utils/commercialManagement/internationalization/choices.ts"],"names":[],"mappings":"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","sourcesContent":["import { AccountingCategoryId, InvoiceLanguage } from '../../../types/Enum/CommercialManagement';\nimport { InternationalizationChoicesType } from './type';\n\ntype InternationalizationConsistencyKey =\n | 'penalties'\n | 'discount'\n | 'vatMention'\n | 'recoveryCost'\n | 'paymentType'\n | 'termsOfPayment'\n | 'accountingCategory'\n | 'unit';\n\nexport const internationalizationChoices: InternationalizationChoicesType = {\n fr: {\n inputLists: {\n headers: {\n termsOfPayment: [\n 'À la livraison',\n 'À la commande',\n 'À réception de la facture',\n 'Exigible sous 14 jours',\n 'Exigible sous 30 jours',\n '30 jours à réception de la facture',\n '45 jours à réception de la facture',\n '60 jours à réception de la facture',\n ],\n accountingCategories: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Livraison de biens' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Prestation de services' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Prestation de services et livraison de biens' },\n ],\n },\n options: {\n penalties: ['Non applicable', '3 fois le taux légal', 'Taux directeur de la BCE + 10 points'],\n discount: ['Non applicable', 'Aucun escompte en cas de paiement anticipé'],\n vatMention: [\n 'Non concerné',\n 'Non applicable',\n 'TVA non applicable, art. 293 B du CGI',\n 'TVA non applicable - Exportation hors UE - Art. 259-1 du CGI',\n \"Non soumis à TVA selon l'article 261C du CGI\",\n 'Article 261 D du code général des impôts (CGI)',\n 'Exonération de TVA, article 283-2 du Code général des impôts',\n 'Exonération de la TVA : Article 262 ter I du CGI',\n 'Mention de TVA 261.4.4 1 du CGI',\n \"Régime particulier – Biens d'occasion - article 297 A du CGI et directive communautaire 2006/112/CE\",\n \"Régime particulier – Objets d'art - article 297 A du CGI et directive communautaire 2006/112/CE\",\n \"Régime particulier – Objets de collection ou d'antiquité - article 297 A du CGI et directive communautaire 2006/112/CE\",\n 'Régime particulier – Agences de voyage - article 297 A du CGI et directive communautaire 2006/112/CE',\n 'Facture soumise au régime de l’auto-liquidation de la TVA',\n ],\n recoveryCost: ['Non applicable', '40€'],\n paymentType: ['Carte bancaire', 'Chèque', 'Espèces', 'Prélèvement', 'Virement bancaire'],\n },\n },\n template: {\n common: {\n headers: {\n title: 'Titre',\n emissionDate: \"Date d'émission\",\n accountingCategory: {\n title: \"Catégorie de l'opération\",\n choices: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Livraison de biens' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Prestation de services' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Prestation de services et livraison de biens' },\n ],\n },\n },\n footer: {\n capital: 'au capital de',\n siren: 'immatriculée sous le SIREN',\n vatCode: 'N° TVA',\n marginVat: 'Régime TVA sur marge',\n legalVatMention: 'ART 297-A du CGI ou directive 2006-212 CE',\n shouldPayTaxAfterDebit: \"Option pour le paiement de la taxe d'après les débits\",\n penalties: 'Pénalités en cas de retard',\n discount: 'Escompte',\n recoveryCosts: 'Indemnités forfaitaire en cas de retard',\n generate: 'Généré par',\n },\n options: {\n vatMention: 'Mention TVA',\n paymentType: 'Mode de paiement',\n bank: 'BANQUE',\n approval: 'Bon pour accord',\n comment: 'Commentaire',\n },\n table: {\n headers: {\n product: 'Article',\n quantity: 'Quantité',\n unitPrice: 'P.U HT',\n unitPriceWithoutVat: 'P.U',\n discount: 'Remise',\n vat: 'TVA',\n amount: 'Montant HT',\n amountWithoutVat: 'Montant',\n base: 'Base',\n rate: 'Taux',\n vatAmount: 'Montant TVA',\n recap: 'Récapitulatif',\n },\n lines: {\n totalHt: 'Total HT',\n vat: 'TVA',\n totalTTC: 'Total TTC',\n totalWhitoutVat: 'Total',\n deposit: 'Acompte',\n remainderToPay: 'Reste à payer',\n netToPay: 'Net à payer',\n },\n },\n },\n invoice: {\n headers: {\n title: 'Facture',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n estimate: {\n headers: {\n title: 'Devis',\n dueDate: \"Valide jusqu'au\",\n termsOfPayment: 'Conditions de règlement',\n },\n },\n orderForm: {\n headers: {\n title: 'Bon de commande',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Conditions de règlement',\n },\n },\n deposit: {\n headers: {\n title: \"Facture d'acompte\",\n expirationDate: \"Date d'expiration\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n asset: {\n headers: {\n title: 'Avoir',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n remainder: {\n headers: {\n title: 'Facture de solde',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n draft: {\n headers: {\n title: 'Brouillon',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n },\n mail: {\n common: {\n dueDate: 'Échéance',\n generate: 'Généré par',\n displayDocument: 'Afficher le document',\n totalHt: 'Total HT',\n totalVat: 'Total TVA',\n totalTtc: 'Total TTC',\n send: 'vous adresse',\n },\n invoice: {\n title: 'cette facture',\n subTitle: 'Facture',\n },\n estimate: {\n title: 'ce devis',\n subTitle: 'Devis',\n },\n orderForm: {\n title: 'ce bon de commande',\n subTitle: 'Bon de commande',\n },\n deposit: {\n title: 'cet acompte',\n subTitle: 'Acompte',\n },\n asset: {\n title: 'cet avoir',\n subTitle: 'Avoir',\n },\n remainder: {\n title: 'cette facture',\n subTitle: 'Facture',\n },\n default: {\n title: 'ce document',\n subTitle: 'Document',\n },\n },\n },\n en: {\n inputLists: {\n headers: {\n termsOfPayment: [\n 'On delivery',\n 'On order',\n 'Upon receipt of invoice',\n 'Due within 14 days',\n 'Due within 30 days',\n '30 days upon receipt of invoice',\n '45 days upon receipt of invoice',\n '60 days upon receipt of invoice',\n ],\n accountingCategories: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Delivery of goods' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Services delivery' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Services and goods delivery' },\n ],\n },\n options: {\n penalties: ['Not applicable', '3 times the legal rate', 'ECB key rate + 10 points'],\n discount: ['Not applicable', 'No discount for early payment'],\n vatMention: [\n 'Not affected',\n 'Not applicable',\n 'VAT not applicable, art. 293 B of the French General Tax Code (FGTC)',\n 'VAT not applicable - Exports outside the EU - Art. 259-1 of the French General Tax Code (FGTC)',\n 'Not subject to VAT according to article 261C of the French General Tax Code (FGTC)',\n 'Article 261D of the French General Tax Code (FGTC)',\n 'VAT exemption, article 283-2 of the French General Tax Code (FGTC)',\n 'VAT exemption: Article 262 ter I of the French General Tax Code (FGTC)',\n 'VAT notice 261.4.4 1 of the French General Tax Code (FGTC)',\n 'Specific regime - Second-hand goods - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Specific regime - Works of art - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Specific regime – Collectibles and antiques - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Specific regime - Travel agencies - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Invoice subject to VAT reverse charge system',\n ],\n recoveryCost: ['Not applicable', '40€'],\n paymentType: ['Credit card', 'Check', 'Cash', 'Direct debit', 'Bank transfer'],\n },\n },\n template: {\n common: {\n headers: {\n title: 'Title',\n emissionDate: 'Invoice date',\n accountingCategory: {\n title: 'Transaction type',\n choices: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Supply of goods' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Services provision' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Services provision and supply of goods' },\n ],\n },\n },\n footer: {\n capital: 'with capital of',\n siren: 'registered under SIREN',\n vatCode: 'VAT number',\n marginVat: 'VAT margin scheme',\n legalVatMention: 'ART 297-A of the FGTC or directive 2006-212 EC',\n shouldPayTaxAfterDebit: 'Option to pay tax on debits',\n penalties: 'Late fees',\n discount: 'discount',\n recoveryCosts: 'flat-rate delay compensation',\n generate: 'Created by',\n },\n options: {\n vatMention: 'VAT mention',\n paymentType: 'payment type',\n bank: 'BANK',\n approval: 'Agreed and signed',\n comment: 'Comment',\n },\n table: {\n headers: {\n product: 'Product',\n quantity: 'Quantity',\n unitPrice: 'Excl. tax unit price',\n unitPriceWithoutVat: 'Unit price',\n discount: 'Discount',\n vat: 'VAT',\n amount: 'Amount excl. tax',\n amountWithoutVat: 'Amount',\n base: 'Base',\n rate: 'Rate',\n vatAmount: 'VAT amount',\n recap: 'Summary',\n },\n lines: {\n totalHt: 'Amount excl. tax',\n vat: 'VAT',\n totalTTC: 'Amount incl. tax',\n totalWhitoutVat: 'Amount',\n deposit: 'Deposit',\n remainderToPay: 'Remainder to pay',\n netToPay: 'Net to pay',\n },\n },\n },\n invoice: {\n headers: {\n title: 'Invoice',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n estimate: {\n headers: {\n title: 'Quotation',\n dueDate: 'Valid until',\n termsOfPayment: 'Term of payment',\n },\n },\n orderForm: {\n headers: {\n title: 'Order form',\n dueDate: 'Valid until',\n termsOfPayment: 'Term of payment',\n },\n },\n deposit: {\n headers: {\n title: 'Deposit invoice',\n expirationDate: 'expiry date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n asset: {\n headers: {\n title: 'Credit note',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n remainder: {\n headers: {\n title: 'Balance invoice',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n draft: {\n headers: {\n title: 'Draft',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n },\n mail: {\n common: {\n dueDate: 'Due date',\n generate: 'Created by',\n displayDocument: 'Display document',\n totalHt: 'Total excl. tax',\n totalVat: 'Total VAT',\n totalTtc: 'Total incl. tax',\n send: 'send you',\n },\n invoice: {\n title: 'this invoice',\n subTitle: 'Invoice',\n },\n estimate: {\n title: 'this estimate',\n subTitle: 'Estimate',\n },\n orderForm: {\n title: 'this order form',\n subTitle: 'Order form',\n },\n deposit: {\n title: 'this deposit',\n subTitle: 'Deposit',\n },\n asset: {\n title: 'this asset',\n subTitle: 'Asset',\n },\n remainder: {\n title: 'this invoice',\n subTitle: 'Invoice',\n },\n default: {\n title: 'this document',\n subTitle: 'Document',\n },\n },\n },\n};\n\nconst internationalizationMatching: { [key: string]: { fr: string; en: string }[] } = {\n penalties: [\n { fr: 'Non applicable', en: 'Not applicable' },\n { fr: '3 fois le taux légal', en: '3 times the legal rate' },\n { fr: 'Taux directeur de la BCE + 10 points', en: 'ECB key rate + 10 points' },\n ],\n discount: [\n { fr: 'Non applicable', en: 'Not applicable' },\n { fr: 'Aucun escompte en cas de paiement anticipé', en: 'No discount for early payment' },\n ],\n recoveryCost: [\n { fr: 'Non applicable', en: 'Not applicable' },\n { fr: '40€', en: '40€' },\n ],\n paymentType: [\n { fr: 'Carte bancaire', en: 'Credit card' },\n { fr: 'Chèque', en: 'Check' },\n { fr: 'Espèces', en: 'Cash' },\n { fr: 'Prélèvement', en: 'Direct debit' },\n { fr: 'Virement bancaire', en: 'Bank transfer' },\n ],\n vatMention: [\n { fr: 'Non concerné', en: 'Not affected' },\n { fr: 'Non applicable', en: 'Not applicable' },\n {\n fr: 'TVA non applicable, art. 293 B du CGI',\n en: 'VAT not applicable, art. 293 B of the French General Tax Code (FGTC)',\n },\n {\n fr: 'TVA non applicable - Exportation hors UE - Art. 259-1 du CGI',\n en: 'VAT not applicable - Exports outside the EU - Art. 259-1 of the French General Tax Code (FGTC)',\n },\n {\n fr: \"Non soumis à TVA selon l'article 261C du CGI\",\n en: 'Not subject to VAT according to article 261C of the French General Tax Code (FGTC)',\n },\n { fr: 'Article 261 D du code général des impôts (CGI)', en: 'Article 261D of the French General Tax Code (FGTC)' },\n {\n fr: 'Exonération de TVA, article 283-2 du Code général des impôts',\n en: 'VAT exemption, article 283-2 of the French General Tax Code (FGTC)',\n },\n {\n fr: 'Exonération de la TVA : Article 262 ter I du CGI',\n en: 'VAT exemption: Article 262 ter I of the French General Tax Code (FGTC)',\n },\n { fr: 'Mention de TVA 261.4.4 1 du CGI', en: 'VAT notice 261.4.4 1 of the French General Tax Code (FGTC)' },\n {\n fr: \"Régime particulier – Biens d'occasion - article 297 A du CGI et directive communautaire 2006/112/CE\",\n en: 'Specific regime - Second-hand goods - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: \"Régime particulier – Objets d'art - article 297 A du CGI et directive communautaire 2006/112/CE\",\n en: 'Specific regime - Works of art - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: \"Régime particulier – Objets de collection ou d'antiquité - article 297 A du CGI et directive communautaire 2006/112/CE\",\n en: 'Specific regime – Collectibles and antiques - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: 'Régime particulier – Agences de voyage - article 297 A du CGI et directive communautaire 2006/112/CE',\n en: 'Specific regime - Travel agencies - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: 'Facture soumise au régime de l’auto-liquidation de la TVA',\n en: 'Invoice subject to VAT reverse charge system',\n },\n ],\n termsOfPayment: [\n {\n fr: 'À la livraison',\n en: 'On delivery',\n },\n {\n fr: 'À la command',\n en: 'On order',\n },\n {\n fr: 'À réception de la facture',\n en: 'Upon receipt of invoice',\n },\n {\n fr: 'Exigible sous 14 jours',\n en: 'Due within 14 days',\n },\n {\n fr: 'Exigible sous 30 jours',\n en: 'Due within 30 days',\n },\n {\n fr: '30 jours à réception de la facture',\n en: '30 days upon receipt of invoice',\n },\n {\n fr: '45 jours à réception de la facture',\n en: '45 days upon receipt of invoice',\n },\n {\n fr: '60 jours à réception de la facture',\n en: '60 days upon receipt of invoice',\n },\n ],\n accountingCategory: [\n {\n fr: 'Livraison de biens',\n en: 'Supply of goods',\n },\n {\n fr: 'Prestation de services',\n en: 'Services provision',\n },\n {\n fr: 'Prestation de services et livraison de biens',\n en: 'Services provision and supply of goods',\n },\n ],\n unit: [\n { fr: 'art', en: 'art' },\n { fr: 'h', en: 'h' },\n { fr: 'j', en: 'd' },\n { fr: 'Kg', en: 'kg' },\n { fr: 'l', en: 'l' },\n { fr: 'km', en: 'km' },\n { fr: 'demi j', en: 'half d' },\n { fr: 'an', en: 'year' },\n { fr: 'sem', en: 'week' },\n { fr: 'mois', en: 'month' },\n { fr: 'trim', en: 'quart' },\n { fr: 'p', en: 'p' },\n { fr: 'f', en: 'f' },\n { fr: 'm2', en: 'm2' },\n { fr: 'm3', en: 'm3' },\n { fr: 'Mètre', en: 'meter' },\n { fr: 'abo', en: 'sub' },\n { fr: 'nuit', en: 'night' },\n { fr: 't', en: 't' },\n { fr: 'ha', en: 'ha' },\n ],\n};\n\nexport const internationalizationConsistency = (\n language: InvoiceLanguage,\n value: string,\n key: InternationalizationConsistencyKey,\n): string | undefined => {\n const keyObjectToMacht = internationalizationMatching[key];\n return language === InvoiceLanguage.FR\n ? keyObjectToMacht.find((obj) => obj.fr === value)?.fr\n : keyObjectToMacht.find((obj) => obj.fr === value)?.en;\n};\n"]}
1
+ {"version":3,"file":"choices.js","sourceRoot":"","sources":["../../../../../ts/utils/commercialManagement/internationalization/choices.ts"],"names":[],"mappings":"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","sourcesContent":["import { AccountingCategoryId, InvoiceLanguage } from '../../../types/Enum/CommercialManagement';\nimport { InternationalizationChoicesType } from './type';\n\ntype InternationalizationConsistencyKey =\n | 'penalties'\n | 'discount'\n | 'vatMention'\n | 'recoveryCost'\n | 'paymentType'\n | 'termsOfPayment'\n | 'accountingCategory'\n | 'unit';\n\nexport const internationalizationChoices: InternationalizationChoicesType = {\n fr: {\n inputLists: {\n headers: {\n termsOfPayment: [\n 'À la livraison',\n 'À la commande',\n 'À réception de la facture',\n 'Exigible sous 14 jours',\n 'Exigible sous 30 jours',\n '30 jours à réception de la facture',\n '45 jours à réception de la facture',\n '60 jours à réception de la facture',\n ],\n accountingCategories: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Livraison de biens' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Prestation de services' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Prestation de services et livraison de biens' },\n ],\n },\n options: {\n penalties: ['Non applicable', '3 fois le taux légal', 'Taux directeur de la BCE + 10 points'],\n discount: ['Non applicable', 'Aucun escompte en cas de paiement anticipé'],\n vatMention: [\n 'TVA: Non concerné',\n 'TVA: Non applicable',\n 'TVA non applicable, art. 293 B du CGI',\n 'TVA non applicable - Exportation hors UE - Art. 259-1 du CGI',\n \"Non soumis à TVA selon l'article 261C du CGI\",\n 'Article 261 D du code général des impôts (CGI)',\n 'Exonération de TVA, article 283-2 du Code général des impôts',\n 'Exonération de la TVA : Article 262 ter I du CGI',\n 'Mention de TVA 261.4.4 1 du CGI',\n \"Régime particulier – Biens d'occasion - article 297 A du CGI et directive communautaire 2006/112/CE\",\n \"Régime particulier – Objets d'art - article 297 A du CGI et directive communautaire 2006/112/CE\",\n \"Régime particulier – Objets de collection ou d'antiquité - article 297 A du CGI et directive communautaire 2006/112/CE\",\n 'Régime particulier – Agences de voyage - article 297 A du CGI et directive communautaire 2006/112/CE',\n 'Facture soumise au régime de l’auto-liquidation de la TVA',\n ],\n recoveryCost: ['Non applicable', '40€'],\n paymentType: ['Carte bancaire', 'Chèque', 'Espèces', 'Prélèvement', 'Virement bancaire'],\n },\n },\n template: {\n common: {\n headers: {\n title: 'Titre',\n emissionDate: \"Date d'émission\",\n accountingCategory: {\n title: \"Catégorie de l'opération\",\n choices: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Livraison de biens' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Prestation de services' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Prestation de services et livraison de biens' },\n ],\n },\n },\n footer: {\n capital: 'au capital de',\n siren: 'immatriculée sous le SIREN',\n vatCode: 'N° TVA',\n marginVat: 'Régime TVA sur marge',\n legalVatMention: 'ART 297-A du CGI ou directive 2006-212 CE',\n shouldPayTaxAfterDebit: \"Option pour le paiement de la taxe d'après les débits\",\n penalties: 'Pénalités en cas de retard',\n discount: 'Escompte',\n recoveryCosts: 'Indemnités forfaitaire en cas de retard',\n generate: 'Généré par',\n },\n options: {\n vatMention: 'Mention TVA',\n paymentType: 'Mode de paiement',\n bank: 'BANQUE',\n approval: 'Bon pour accord',\n comment: 'Commentaire',\n },\n table: {\n headers: {\n product: 'Article',\n quantity: 'Quantité',\n unitPrice: 'P.U HT',\n unitPriceWithoutVat: 'P.U',\n discount: 'Remise',\n vat: 'TVA',\n amount: 'Montant HT',\n amountWithoutVat: 'Montant',\n base: 'Base',\n rate: 'Taux',\n vatAmount: 'Montant TVA',\n recap: 'Récapitulatif',\n },\n lines: {\n totalHt: 'Total HT',\n vat: 'TVA',\n totalTTC: 'Total TTC',\n totalWhitoutVat: 'Total',\n deposit: 'Acompte',\n remainderToPay: 'Reste à payer',\n netToPay: 'Net à payer',\n },\n },\n },\n invoice: {\n headers: {\n title: 'Facture',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n estimate: {\n headers: {\n title: 'Devis',\n dueDate: \"Valide jusqu'au\",\n termsOfPayment: 'Conditions de règlement',\n },\n },\n orderForm: {\n headers: {\n title: 'Bon de commande',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Conditions de règlement',\n },\n },\n deposit: {\n headers: {\n title: \"Facture d'acompte\",\n expirationDate: \"Date d'expiration\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n asset: {\n headers: {\n title: 'Avoir',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n remainder: {\n headers: {\n title: 'Facture de solde',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n draft: {\n headers: {\n title: 'Brouillon',\n dueDate: \"Date d'échéance\",\n termsOfPayment: 'Date limite de règlement',\n },\n },\n },\n mail: {\n common: {\n dueDate: 'Échéance',\n generate: 'Généré par',\n displayDocument: 'Afficher le document',\n totalHt: 'Total HT',\n totalVat: 'Total TVA',\n totalTtc: 'Total TTC',\n send: 'vous adresse',\n },\n invoice: {\n title: 'cette facture',\n subTitle: 'Facture',\n },\n estimate: {\n title: 'ce devis',\n subTitle: 'Devis',\n },\n orderForm: {\n title: 'ce bon de commande',\n subTitle: 'Bon de commande',\n },\n deposit: {\n title: 'cet acompte',\n subTitle: 'Acompte',\n },\n asset: {\n title: 'cet avoir',\n subTitle: 'Avoir',\n },\n remainder: {\n title: 'cette facture',\n subTitle: 'Facture',\n },\n default: {\n title: 'ce document',\n subTitle: 'Document',\n },\n },\n },\n en: {\n inputLists: {\n headers: {\n termsOfPayment: [\n 'On delivery',\n 'On order',\n 'Upon receipt of invoice',\n 'Due within 14 days',\n 'Due within 30 days',\n '30 days upon receipt of invoice',\n '45 days upon receipt of invoice',\n '60 days upon receipt of invoice',\n ],\n accountingCategories: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Delivery of goods' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Services delivery' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Services and goods delivery' },\n ],\n },\n options: {\n penalties: ['Not applicable', '3 times the legal rate', 'ECB key rate + 10 points'],\n discount: ['Not applicable', 'No discount for early payment'],\n vatMention: [\n 'Not affected',\n 'Not applicable',\n 'VAT not applicable, art. 293 B of the French General Tax Code (FGTC)',\n 'VAT not applicable - Exports outside the EU - Art. 259-1 of the French General Tax Code (FGTC)',\n 'Not subject to VAT according to article 261C of the French General Tax Code (FGTC)',\n 'Article 261D of the French General Tax Code (FGTC)',\n 'VAT exemption, article 283-2 of the French General Tax Code (FGTC)',\n 'VAT exemption: Article 262 ter I of the French General Tax Code (FGTC)',\n 'VAT notice 261.4.4 1 of the French General Tax Code (FGTC)',\n 'Specific regime - Second-hand goods - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Specific regime - Works of art - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Specific regime – Collectibles and antiques - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Specific regime - Travel agencies - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n 'Invoice subject to VAT reverse charge system',\n ],\n recoveryCost: ['Not applicable', '40€'],\n paymentType: ['Credit card', 'Check', 'Cash', 'Direct debit', 'Bank transfer'],\n },\n },\n template: {\n common: {\n headers: {\n title: 'Title',\n emissionDate: 'Invoice date',\n accountingCategory: {\n title: 'Transaction type',\n choices: [\n { id: AccountingCategoryId.DELIVERY_OF_GOOD, label: 'Supply of goods' },\n { id: AccountingCategoryId.SERVICE_DELIVERY, label: 'Services provision' },\n { id: AccountingCategoryId.GOOD_AND_SERVICE, label: 'Services provision and supply of goods' },\n ],\n },\n },\n footer: {\n capital: 'with capital of',\n siren: 'registered under SIREN',\n vatCode: 'VAT number',\n marginVat: 'VAT margin scheme',\n legalVatMention: 'ART 297-A of the FGTC or directive 2006-212 EC',\n shouldPayTaxAfterDebit: 'Option to pay tax on debits',\n penalties: 'Late fees',\n discount: 'discount',\n recoveryCosts: 'flat-rate delay compensation',\n generate: 'Created by',\n },\n options: {\n vatMention: 'VAT mention',\n paymentType: 'payment type',\n bank: 'BANK',\n approval: 'Agreed and signed',\n comment: 'Comment',\n },\n table: {\n headers: {\n product: 'Product',\n quantity: 'Quantity',\n unitPrice: 'Excl. tax unit price',\n unitPriceWithoutVat: 'Unit price',\n discount: 'Discount',\n vat: 'VAT',\n amount: 'Amount excl. tax',\n amountWithoutVat: 'Amount',\n base: 'Base',\n rate: 'Rate',\n vatAmount: 'VAT amount',\n recap: 'Summary',\n },\n lines: {\n totalHt: 'Amount excl. tax',\n vat: 'VAT',\n totalTTC: 'Amount incl. tax',\n totalWhitoutVat: 'Amount',\n deposit: 'Deposit',\n remainderToPay: 'Remainder to pay',\n netToPay: 'Net to pay',\n },\n },\n },\n invoice: {\n headers: {\n title: 'Invoice',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n estimate: {\n headers: {\n title: 'Quotation',\n dueDate: 'Valid until',\n termsOfPayment: 'Term of payment',\n },\n },\n orderForm: {\n headers: {\n title: 'Order form',\n dueDate: 'Valid until',\n termsOfPayment: 'Term of payment',\n },\n },\n deposit: {\n headers: {\n title: 'Deposit invoice',\n expirationDate: 'expiry date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n asset: {\n headers: {\n title: 'Credit note',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n remainder: {\n headers: {\n title: 'Balance invoice',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n draft: {\n headers: {\n title: 'Draft',\n dueDate: 'Due date',\n termsOfPayment: 'Deadline for payment',\n },\n },\n },\n mail: {\n common: {\n dueDate: 'Due date',\n generate: 'Created by',\n displayDocument: 'Display document',\n totalHt: 'Total excl. tax',\n totalVat: 'Total VAT',\n totalTtc: 'Total incl. tax',\n send: 'send you',\n },\n invoice: {\n title: 'this invoice',\n subTitle: 'Invoice',\n },\n estimate: {\n title: 'this estimate',\n subTitle: 'Estimate',\n },\n orderForm: {\n title: 'this order form',\n subTitle: 'Order form',\n },\n deposit: {\n title: 'this deposit',\n subTitle: 'Deposit',\n },\n asset: {\n title: 'this asset',\n subTitle: 'Asset',\n },\n remainder: {\n title: 'this invoice',\n subTitle: 'Invoice',\n },\n default: {\n title: 'this document',\n subTitle: 'Document',\n },\n },\n },\n};\n\nconst internationalizationMatching: { [key: string]: { fr: string; en: string }[] } = {\n penalties: [\n { fr: 'Non applicable', en: 'Not applicable' },\n { fr: '3 fois le taux légal', en: '3 times the legal rate' },\n { fr: 'Taux directeur de la BCE + 10 points', en: 'ECB key rate + 10 points' },\n ],\n discount: [\n { fr: 'Non applicable', en: 'Not applicable' },\n { fr: 'Aucun escompte en cas de paiement anticipé', en: 'No discount for early payment' },\n ],\n recoveryCost: [\n { fr: 'Non applicable', en: 'Not applicable' },\n { fr: '40€', en: '40€' },\n ],\n paymentType: [\n { fr: 'Carte bancaire', en: 'Credit card' },\n { fr: 'Chèque', en: 'Check' },\n { fr: 'Espèces', en: 'Cash' },\n { fr: 'Prélèvement', en: 'Direct debit' },\n { fr: 'Virement bancaire', en: 'Bank transfer' },\n ],\n vatMention: [\n { fr: 'TVA: Non concerné', en: 'VAT: Not affected' },\n { fr: 'TVA: Non applicable', en: 'VAT: Not applicable' },\n {\n fr: 'TVA non applicable, art. 293 B du CGI',\n en: 'VAT not applicable, art. 293 B of the French General Tax Code (FGTC)',\n },\n {\n fr: 'TVA non applicable - Exportation hors UE - Art. 259-1 du CGI',\n en: 'VAT not applicable - Exports outside the EU - Art. 259-1 of the French General Tax Code (FGTC)',\n },\n {\n fr: \"Non soumis à TVA selon l'article 261C du CGI\",\n en: 'Not subject to VAT according to article 261C of the French General Tax Code (FGTC)',\n },\n { fr: 'Article 261 D du code général des impôts (CGI)', en: 'Article 261D of the French General Tax Code (FGTC)' },\n {\n fr: 'Exonération de TVA, article 283-2 du Code général des impôts',\n en: 'VAT exemption, article 283-2 of the French General Tax Code (FGTC)',\n },\n {\n fr: 'Exonération de la TVA : Article 262 ter I du CGI',\n en: 'VAT exemption: Article 262 ter I of the French General Tax Code (FGTC)',\n },\n { fr: 'Mention de TVA 261.4.4 1 du CGI', en: 'VAT notice 261.4.4 1 of the French General Tax Code (FGTC)' },\n {\n fr: \"Régime particulier – Biens d'occasion - article 297 A du CGI et directive communautaire 2006/112/CE\",\n en: 'Specific regime - Second-hand goods - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: \"Régime particulier – Objets d'art - article 297 A du CGI et directive communautaire 2006/112/CE\",\n en: 'Specific regime - Works of art - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: \"Régime particulier – Objets de collection ou d'antiquité - article 297 A du CGI et directive communautaire 2006/112/CE\",\n en: 'Specific regime – Collectibles and antiques - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: 'Régime particulier – Agences de voyage - article 297 A du CGI et directive communautaire 2006/112/CE',\n en: 'Specific regime - Travel agencies - article 297 A of the French General Tax Code (FGTC) and Community Directive 2006/112/EC',\n },\n {\n fr: 'Facture soumise au régime de l’auto-liquidation de la TVA',\n en: 'Invoice subject to VAT reverse charge system',\n },\n ],\n termsOfPayment: [\n {\n fr: 'À la livraison',\n en: 'On delivery',\n },\n {\n fr: 'À la command',\n en: 'On order',\n },\n {\n fr: 'À réception de la facture',\n en: 'Upon receipt of invoice',\n },\n {\n fr: 'Exigible sous 14 jours',\n en: 'Due within 14 days',\n },\n {\n fr: 'Exigible sous 30 jours',\n en: 'Due within 30 days',\n },\n {\n fr: '30 jours à réception de la facture',\n en: '30 days upon receipt of invoice',\n },\n {\n fr: '45 jours à réception de la facture',\n en: '45 days upon receipt of invoice',\n },\n {\n fr: '60 jours à réception de la facture',\n en: '60 days upon receipt of invoice',\n },\n ],\n accountingCategory: [\n {\n fr: 'Livraison de biens',\n en: 'Supply of goods',\n },\n {\n fr: 'Prestation de services',\n en: 'Services provision',\n },\n {\n fr: 'Prestation de services et livraison de biens',\n en: 'Services provision and supply of goods',\n },\n ],\n unit: [\n { fr: 'art', en: 'art' },\n { fr: 'h', en: 'h' },\n { fr: 'j', en: 'd' },\n { fr: 'Kg', en: 'kg' },\n { fr: 'l', en: 'l' },\n { fr: 'km', en: 'km' },\n { fr: 'demi j', en: 'half d' },\n { fr: 'an', en: 'year' },\n { fr: 'sem', en: 'week' },\n { fr: 'mois', en: 'month' },\n { fr: 'trim', en: 'quart' },\n { fr: 'p', en: 'p' },\n { fr: 'f', en: 'f' },\n { fr: 'm2', en: 'm2' },\n { fr: 'm3', en: 'm3' },\n { fr: 'Mètre', en: 'meter' },\n { fr: 'abo', en: 'sub' },\n { fr: 'nuit', en: 'night' },\n { fr: 't', en: 't' },\n { fr: 'ha', en: 'ha' },\n ],\n};\n\nexport const internationalizationConsistency = (\n language: InvoiceLanguage,\n value: string,\n key: InternationalizationConsistencyKey,\n): string | undefined => {\n const keyObjectToMacht = internationalizationMatching[key];\n return language === InvoiceLanguage.FR\n ? keyObjectToMacht.find((obj) => obj.fr === value)?.fr\n : keyObjectToMacht.find((obj) => obj.fr === value)?.en;\n};\n"]}
@@ -112,7 +112,7 @@ export const bodyTemplate = `<html class="pdf-content">
112
112
  <br/><%= languageTemplate.template.common.options.approval %> : <br/><br/><br/><br/>
113
113
  <% } %>
114
114
 
115
- <% if (cgv && (settings && settings.invoiceCgv) && (idEstimateInvoiceType === ${EstimateInvoiceType.FACTURE} || idEstimateInvoiceType === ${EstimateInvoiceType.ACOMPTE} || idEstimateInvoiceType === ${EstimateInvoiceType.AVOIR} || idEstimateInvoiceType === ${EstimateInvoiceType.RESTE} )) { %>
115
+ <% if (cgv && (settings && settings.invoiceCgv)) { %>
116
116
  <br><div style="page-break-after:always;"></div>
117
117
  <div id="WYSIWYG"><%- cgv %></div>
118
118
  <% } %>
@@ -1 +1 @@
1
- {"version":3,"file":"body.js","sourceRoot":"","sources":["../../../../../ts/utils/commercialManagement/templates/body.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAExD,MAAM,cAAc,GAAG,IAAI,4BAA4B,EAAE,CAAC;AAE1D,MAAM,cAAc,GAAG;;;YAGX,cAAc,CAAC,IAAI;YACnB,cAAc,CAAC,OAAO;;;4CAGU,cAAc,CAAC,OAAO;UACxD,cAAc,CAAC,IAAI;;;;;;;yCAOY,mBAAmB,CAAC,GAAG;;gDAEhB,mBAAmB,CAAC,KAAK;;gDAEzB,mBAAmB,CAAC,OAAO;;gDAE3B,mBAAmB,CAAC,KAAK;;gDAEzB,mBAAmB,CAAC,KAAK;;gDAEzB,mBAAmB,CAAC,OAAO;;;;;mDAKxB,mBAAmB,CAAC,OAAO;;oBAE1D,mBAAmB,CAAC,GAAG,KAAK,mBAAmB,CAAC,KAAK;;;;;;;2DAOd,mBAAmB,CAAC,OAAO;;;;kDAIpC,mBAAmB,CAAC,GAAG,KAAK,mBAAmB,CAAC,KAAK;;;;;;;;;;;;;;;;;SAiB9F,CAAC;AAEV,MAAM,CAAC,MAAM,YAAY,GAAG;;;;IAIxB,cAAc;;;;;;6BAMW,cAAc,CAAC,QAAQ;;;;;YAKxC,cAAc,CAAC,iBAAiB;;;;;;;;;;UAUlC,cAAc,CAAC,oBAAoB;;sCAEP,mBAAmB,CAAC,GAAG,KAAK,mBAAmB,CAAC,KAAK;8DAC7B,cAAc,CAAC,aAAa;;;;;;;;;;;;;;;;;;wEAkBlB,mBAAmB,CAAC,KAAK,iCAAiC,mBAAmB,CAAC,GAAG;;;;oFAIrE,mBAAmB,CAAC,OAAO,iCAAiC,mBAAmB,CAAC,OAAO,iCAAiC,mBAAmB,CAAC,KAAK,iCAAiC,mBAAmB,CAAC,KAAK;;;;;;;QAOvR,cAAc,CAAC,KAAK;;;QAGpB,cAAc,CAAC,YAAY;;QAE3B,CAAC","sourcesContent":["import { EstimateInvoiceType } from '../../../types/Enum/EstimateInvoice';\nimport { CommercialDocumentCommonHTML } from './common';\n\nconst commonTemplate = new CommercialDocumentCommonHTML();\n\nconst headOfDocument = `<div class=\"row space-between\">\n <% if (settings && settings.logoAlignment === 'left') { %>\n <div class=\"society-informations\">\n ${commonTemplate.logo}\n ${commonTemplate.company}\n </div>\n <% } else { %>\n <div class=\"society-informations\">${commonTemplate.company}</div>\n ${commonTemplate.logo}\n <% } %>\n </div>\n\n <div class=\"row space-between items-end\" style=\"margin-top: 10px\">\n <div style=\"width: 45%; margin-top: auto;\">\n <span class=\"document-reference\">\n <% if (idEstimateInvoiceType === ${EstimateInvoiceType.BON}) { %>\n <%= languageTemplate.template.orderForm.headers.title %>\n <% } else if (idEstimateInvoiceType === ${EstimateInvoiceType.DEVIS}) { %>\n <%= languageTemplate.template.estimate.headers.title %>\n <% } else if (idEstimateInvoiceType === ${EstimateInvoiceType.FACTURE}) { %>\n <%= languageTemplate.template.invoice.headers.title %>\n <% } else if (idEstimateInvoiceType === ${EstimateInvoiceType.AVOIR}) { %>\n <%= languageTemplate.template.asset.headers.title %>\n <% } else if (idEstimateInvoiceType === ${EstimateInvoiceType.RESTE}) { %>\n <%= languageTemplate.template.remainder.headers.title %>\n <% } else if (idEstimateInvoiceType === ${EstimateInvoiceType.ACOMPTE}) { %>\n <%= languageTemplate.template.deposit.headers.title %>\n <% } %>\n <%= reference %></span><br/>\n <% if(emissionDate) {%><span class=\"document-emission-date\"> <%= languageTemplate.template.common.headers.emissionDate %> : <%= emissionDateFormatted %></span><br/><% } %>\n <% if(dueDate && idEstimateInvoiceType !== ${EstimateInvoiceType.ACOMPTE}) {%>\n <span class=\"document-due-date\">\n <% if ([${EstimateInvoiceType.BON}, ${EstimateInvoiceType.DEVIS}].includes(idEstimateInvoiceType)) {%>\n <%= languageTemplate.template.estimate.headers.dueDate %> :\n <% } else { %>\n <%= languageTemplate.template.invoice.headers.dueDate %> :\n <% } %>\n <%= dueDateFormatted %></span>\n <% } %>\n <% if (expirationDate && idEstimateInvoiceType === ${EstimateInvoiceType.ACOMPTE}) {%>\n <span class=\"document-due-date\"><%= languageTemplate.template.deposit.headers.expirationDate %> : : <%= expirationDateFormatted %></span>\n <% } %>\n <% if(termsOfPayment) { %>\n <br/><p style=\"margin-bottom: 0px;\"><%= [${EstimateInvoiceType.BON}, ${EstimateInvoiceType.DEVIS}].includes(idEstimateInvoiceType) ? languageTemplate.template.estimate.headers.termsOfPayment : languageTemplate.template.invoice.headers.termsOfPayment %> : <%= termsOfPayment %></p>\n <% } %>\n </div>\n <div style=\"width: 40%; margin-top: auto;\">\n <p></p>\n <% if (thirdParty) { %>\n <div class=\"<%= settings && settings.isCoordinatesFrameDisplayed ? 'customer-border' : '' %>\">\n <% if(thirdParty.company) {%><b><%= thirdParty.company %></b><br/><% } %>\n <% if(thirdParty.fullname) {%><%= thirdParty.fullname %><br/><% } %>\n <% if(thirdParty.address) {%><%= thirdParty.address %><br/><% } %>\n <% if(thirdParty.zipCode) {%><%= thirdParty.zipCode + ' ' %><% } %><%= thirdParty.city %> <%= thirdParty.country %><br/>\n <% if(thirdParty.deliveryAddress && thirdParty.deliveryCity && thirdParty.deliveryZipCode) {%>Adresse de livraison : <%= thirdParty.deliveryAddress %> <%= thirdParty.deliveryZipCode %> <%= thirdParty.deliveryCity %> <%= thirdParty.deliveryCountry %><br/><% } %>\n <% if(thirdParty.nSiret) {%>SIRET : <%= thirdParty.nSiret %><br/><% } %>\n <% if(thirdParty.nTva) {%>N° TVA : <%= thirdParty.nTva %><% } %>\n </div>\n <% } %>\n </div>\n </div>`;\n\nexport const bodyTemplate = `<html class=\"pdf-content\">\n\n <body>\n\n ${headOfDocument}\n\n <div class=\"row mt-25\">\n <% if (title) { %><%=languageTemplate.template.common.headers.title %> : <%= title %><% } %>\n </div>\n\n <div class=\"row mt-10\">${commonTemplate.products}</div>\n\n <div class=\"row space-between mt-20\">\n <div style=\"width: 55%;\">\n <% if (disableVat !== true && vats.length) { %>\n ${commonTemplate.vatRecapitulation}\n <% } %>\n <% if (vatMention) { %><div class=\"vat-mention <%= disableVat !== true ? 'mt-20' : ''%>\"><%= vatMention %></div><% } %>\n <% if (comment) { %>\n <p class=\"mt-20\"><%= languageTemplate.template.common.options.comment %> :<br/>\n <%- comment %>\n <% } %>\n </div>\n\n <div>\n ${commonTemplate.amountRecapitulation}\n\n <% if (isStripeAllowed && ![${EstimateInvoiceType.BON}, ${EstimateInvoiceType.DEVIS}].includes(idEstimateInvoiceType)) { %>\n <div style=\"text-align: right; margin-top: 30px;\">${commonTemplate.paymentButton}</div>\n <% } %>\n </div>\n \n </div>\n\n <% if ((settings && (settings.iban || settings.bic || settings.bank)) || paymentType) { %>\n <div class=\"row mt-30 space-between\" style=\"page-break-inside: avoid !important;\">\n <div>\n <% if ((settings && (settings.iban || settings.bic || settings.bank)) || paymentType) { %>\n <% if(paymentType) { %><%= languageTemplate.template.common.options.paymentType %> : <%= paymentType %><br/><% } %>\n <% if(settings.bank) { %><%= languageTemplate.template.common.options.bank %> : <%= settings.bank %><br/><% } %>\n <% if(settings.iban) { %>IBAN : <%= settings.iban %><br/><% } %>\n <% if(settings.bic) { %>BIC : <%= settings.bic %><% } %>\n <% } %>\n </div>\n </div>\n <% } %>\n <% if (settings && settings.bonPour && (idEstimateInvoiceType === ${EstimateInvoiceType.DEVIS} || idEstimateInvoiceType === ${EstimateInvoiceType.BON})) { %>\n <br/><%= languageTemplate.template.common.options.approval %> : <br/><br/><br/><br/>\n <% } %>\n\n <% if (cgv && (settings && settings.invoiceCgv) && (idEstimateInvoiceType === ${EstimateInvoiceType.FACTURE} || idEstimateInvoiceType === ${EstimateInvoiceType.ACOMPTE} || idEstimateInvoiceType === ${EstimateInvoiceType.AVOIR} || idEstimateInvoiceType === ${EstimateInvoiceType.RESTE} )) { %>\n <br><div style=\"page-break-after:always;\"></div>\n <div id=\"WYSIWYG\"><%- cgv %></div>\n <% } %>\n </body>\n\n <style>\n ${commonTemplate.style}\n </style>\n <style>\n ${commonTemplate.styleWYSIWYG}\n </style>\n</html>`;\n"]}
1
+ {"version":3,"file":"body.js","sourceRoot":"","sources":["../../../../../ts/utils/commercialManagement/templates/body.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAExD,MAAM,cAAc,GAAG,IAAI,4BAA4B,EAAE,CAAC;AAE1D,MAAM,cAAc,GAAG;;;YAGX,cAAc,CAAC,IAAI;YACnB,cAAc,CAAC,OAAO;;;4CAGU,cAAc,CAAC,OAAO;UACxD,cAAc,CAAC,IAAI;;;;;;;yCAOY,mBAAmB,CAAC,GAAG;;gDAEhB,mBAAmB,CAAC,KAAK;;gDAEzB,mBAAmB,CAAC,OAAO;;gDAE3B,mBAAmB,CAAC,KAAK;;gDAEzB,mBAAmB,CAAC,KAAK;;gDAEzB,mBAAmB,CAAC,OAAO;;;;;mDAKxB,mBAAmB,CAAC,OAAO;;oBAE1D,mBAAmB,CAAC,GAAG,KAAK,mBAAmB,CAAC,KAAK;;;;;;;2DAOd,mBAAmB,CAAC,OAAO;;;;kDAIpC,mBAAmB,CAAC,GAAG,KAAK,mBAAmB,CAAC,KAAK;;;;;;;;;;;;;;;;;SAiB9F,CAAC;AAEV,MAAM,CAAC,MAAM,YAAY,GAAG;;;;IAIxB,cAAc;;;;;;6BAMW,cAAc,CAAC,QAAQ;;;;;YAKxC,cAAc,CAAC,iBAAiB;;;;;;;;;;UAUlC,cAAc,CAAC,oBAAoB;;sCAEP,mBAAmB,CAAC,GAAG,KAAK,mBAAmB,CAAC,KAAK;8DAC7B,cAAc,CAAC,aAAa;;;;;;;;;;;;;;;;;;wEAkBlB,mBAAmB,CAAC,KAAK,iCAAiC,mBAAmB,CAAC,GAAG;;;;;;;;;;;QAWjJ,cAAc,CAAC,KAAK;;;QAGpB,cAAc,CAAC,YAAY;;QAE3B,CAAC","sourcesContent":["import { EstimateInvoiceType } from '../../../types/Enum/EstimateInvoice';\nimport { CommercialDocumentCommonHTML } from './common';\n\nconst commonTemplate = new CommercialDocumentCommonHTML();\n\nconst headOfDocument = `<div class=\"row space-between\">\n <% if (settings && settings.logoAlignment === 'left') { %>\n <div class=\"society-informations\">\n ${commonTemplate.logo}\n ${commonTemplate.company}\n </div>\n <% } else { %>\n <div class=\"society-informations\">${commonTemplate.company}</div>\n ${commonTemplate.logo}\n <% } %>\n </div>\n\n <div class=\"row space-between items-end\" style=\"margin-top: 10px\">\n <div style=\"width: 45%; margin-top: auto;\">\n <span class=\"document-reference\">\n <% if (idEstimateInvoiceType === ${EstimateInvoiceType.BON}) { %>\n <%= languageTemplate.template.orderForm.headers.title %>\n <% } else if (idEstimateInvoiceType === ${EstimateInvoiceType.DEVIS}) { %>\n <%= languageTemplate.template.estimate.headers.title %>\n <% } else if (idEstimateInvoiceType === ${EstimateInvoiceType.FACTURE}) { %>\n <%= languageTemplate.template.invoice.headers.title %>\n <% } else if (idEstimateInvoiceType === ${EstimateInvoiceType.AVOIR}) { %>\n <%= languageTemplate.template.asset.headers.title %>\n <% } else if (idEstimateInvoiceType === ${EstimateInvoiceType.RESTE}) { %>\n <%= languageTemplate.template.remainder.headers.title %>\n <% } else if (idEstimateInvoiceType === ${EstimateInvoiceType.ACOMPTE}) { %>\n <%= languageTemplate.template.deposit.headers.title %>\n <% } %>\n <%= reference %></span><br/>\n <% if(emissionDate) {%><span class=\"document-emission-date\"> <%= languageTemplate.template.common.headers.emissionDate %> : <%= emissionDateFormatted %></span><br/><% } %>\n <% if(dueDate && idEstimateInvoiceType !== ${EstimateInvoiceType.ACOMPTE}) {%>\n <span class=\"document-due-date\">\n <% if ([${EstimateInvoiceType.BON}, ${EstimateInvoiceType.DEVIS}].includes(idEstimateInvoiceType)) {%>\n <%= languageTemplate.template.estimate.headers.dueDate %> :\n <% } else { %>\n <%= languageTemplate.template.invoice.headers.dueDate %> :\n <% } %>\n <%= dueDateFormatted %></span>\n <% } %>\n <% if (expirationDate && idEstimateInvoiceType === ${EstimateInvoiceType.ACOMPTE}) {%>\n <span class=\"document-due-date\"><%= languageTemplate.template.deposit.headers.expirationDate %> : : <%= expirationDateFormatted %></span>\n <% } %>\n <% if(termsOfPayment) { %>\n <br/><p style=\"margin-bottom: 0px;\"><%= [${EstimateInvoiceType.BON}, ${EstimateInvoiceType.DEVIS}].includes(idEstimateInvoiceType) ? languageTemplate.template.estimate.headers.termsOfPayment : languageTemplate.template.invoice.headers.termsOfPayment %> : <%= termsOfPayment %></p>\n <% } %>\n </div>\n <div style=\"width: 40%; margin-top: auto;\">\n <p></p>\n <% if (thirdParty) { %>\n <div class=\"<%= settings && settings.isCoordinatesFrameDisplayed ? 'customer-border' : '' %>\">\n <% if(thirdParty.company) {%><b><%= thirdParty.company %></b><br/><% } %>\n <% if(thirdParty.fullname) {%><%= thirdParty.fullname %><br/><% } %>\n <% if(thirdParty.address) {%><%= thirdParty.address %><br/><% } %>\n <% if(thirdParty.zipCode) {%><%= thirdParty.zipCode + ' ' %><% } %><%= thirdParty.city %> <%= thirdParty.country %><br/>\n <% if(thirdParty.deliveryAddress && thirdParty.deliveryCity && thirdParty.deliveryZipCode) {%>Adresse de livraison : <%= thirdParty.deliveryAddress %> <%= thirdParty.deliveryZipCode %> <%= thirdParty.deliveryCity %> <%= thirdParty.deliveryCountry %><br/><% } %>\n <% if(thirdParty.nSiret) {%>SIRET : <%= thirdParty.nSiret %><br/><% } %>\n <% if(thirdParty.nTva) {%>N° TVA : <%= thirdParty.nTva %><% } %>\n </div>\n <% } %>\n </div>\n </div>`;\n\nexport const bodyTemplate = `<html class=\"pdf-content\">\n\n <body>\n\n ${headOfDocument}\n\n <div class=\"row mt-25\">\n <% if (title) { %><%=languageTemplate.template.common.headers.title %> : <%= title %><% } %>\n </div>\n\n <div class=\"row mt-10\">${commonTemplate.products}</div>\n\n <div class=\"row space-between mt-20\">\n <div style=\"width: 55%;\">\n <% if (disableVat !== true && vats.length) { %>\n ${commonTemplate.vatRecapitulation}\n <% } %>\n <% if (vatMention) { %><div class=\"vat-mention <%= disableVat !== true ? 'mt-20' : ''%>\"><%= vatMention %></div><% } %>\n <% if (comment) { %>\n <p class=\"mt-20\"><%= languageTemplate.template.common.options.comment %> :<br/>\n <%- comment %>\n <% } %>\n </div>\n\n <div>\n ${commonTemplate.amountRecapitulation}\n\n <% if (isStripeAllowed && ![${EstimateInvoiceType.BON}, ${EstimateInvoiceType.DEVIS}].includes(idEstimateInvoiceType)) { %>\n <div style=\"text-align: right; margin-top: 30px;\">${commonTemplate.paymentButton}</div>\n <% } %>\n </div>\n \n </div>\n\n <% if ((settings && (settings.iban || settings.bic || settings.bank)) || paymentType) { %>\n <div class=\"row mt-30 space-between\" style=\"page-break-inside: avoid !important;\">\n <div>\n <% if ((settings && (settings.iban || settings.bic || settings.bank)) || paymentType) { %>\n <% if(paymentType) { %><%= languageTemplate.template.common.options.paymentType %> : <%= paymentType %><br/><% } %>\n <% if(settings.bank) { %><%= languageTemplate.template.common.options.bank %> : <%= settings.bank %><br/><% } %>\n <% if(settings.iban) { %>IBAN : <%= settings.iban %><br/><% } %>\n <% if(settings.bic) { %>BIC : <%= settings.bic %><% } %>\n <% } %>\n </div>\n </div>\n <% } %>\n <% if (settings && settings.bonPour && (idEstimateInvoiceType === ${EstimateInvoiceType.DEVIS} || idEstimateInvoiceType === ${EstimateInvoiceType.BON})) { %>\n <br/><%= languageTemplate.template.common.options.approval %> : <br/><br/><br/><br/>\n <% } %>\n\n <% if (cgv && (settings && settings.invoiceCgv)) { %>\n <br><div style=\"page-break-after:always;\"></div>\n <div id=\"WYSIWYG\"><%- cgv %></div>\n <% } %>\n </body>\n\n <style>\n ${commonTemplate.style}\n </style>\n <style>\n ${commonTemplate.styleWYSIWYG}\n </style>\n</html>`;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@silexpert/core",
3
- "version": "1.3.15",
3
+ "version": "1.3.17",
4
4
  "description": "Silex Core perform HTTP Request and object binding. Silex core helps developers to retrieve and return formatted object",
5
5
  "homepage": "https://gitlab.compta-clementine.fr/dev/silex-api",
6
6
  "main": "dist/cjs/index.js",
@@ -0,0 +1,8 @@
1
+ import { IAIQuestion } from '../..';
2
+ import { Resource } from '../Resource';
3
+
4
+ export class Ai extends Resource {
5
+ askCollaborator(question: string, signal?: AbortSignal): Promise<IAIQuestion> {
6
+ return this.axios.$post('/ai/ask/collaborator', { question }, { signal });
7
+ }
8
+ }
@@ -179,6 +179,7 @@ import { StatisticMarketing } from './resources/statistic/Marketing';
179
179
  import { Follow } from './resources/Follow';
180
180
  import { AbsenceRequest } from './resources/AbsenceRequest';
181
181
  import { CompanyMarketingInformation } from './resources/CompanyMarketingInformation';
182
+ import { Ai } from './resources/Ai';
182
183
 
183
184
  export const resources = {
184
185
  simulation: Simulation,
@@ -362,4 +363,5 @@ export const resources = {
362
363
  follow: Follow,
363
364
  absenceRequest: AbsenceRequest,
364
365
  companyMarketingInformation: CompanyMarketingInformation,
366
+ ai: Ai,
365
367
  };
@@ -0,0 +1,44 @@
1
+ export enum AIPromptKey {
2
+ BANK_STATEMENT = 'bank_statement',
3
+ INVOICE = 'invoice',
4
+ INVOICE_CSV = 'invoice_csv',
5
+ ASK_COLLABORATOR = 'ask_collaborator',
6
+ }
7
+
8
+ interface AIPromptInfo {
9
+ userPrompt: string;
10
+ systemPrompt: string;
11
+ }
12
+
13
+ export const AIPrompt: Record<AIPromptKey, AIPromptInfo> = {
14
+ [AIPromptKey.BANK_STATEMENT]: {
15
+ userPrompt: 'Here are some lines from a bank statement (this might be a french one "relevé de comptes"), I need you to extract all the transactions from it.',
16
+ systemPrompt: 'Extract transactions from this bank statement in a json format like this: [{"dateValue": string (format like this YYYY-MM-DD), "label": string | null, "debit": number, "credit": number}, ...]',
17
+ },
18
+ [AIPromptKey.INVOICE]: {
19
+ userPrompt: 'Can you give me the info of this document in json format? (all the articles with their prices)',
20
+ systemPrompt: 'Convert this into a sensible structured json response. The output should be strictly be json with no extra commentary if you find a image in the document this is an invoice and you should return the info of the invoice',
21
+ },
22
+ [AIPromptKey.INVOICE_CSV]: {
23
+ userPrompt: 'Can you give me the info of this document in csv format? (all the articles with their prices)',
24
+ systemPrompt: 'Convert this into a sensible structured csv response (date, label, débit, crédit). The output should be strictly be csv with no extra commentary if you find a image in the document this is an invoice and you should return the info of the invoice'
25
+ },
26
+ [AIPromptKey.ASK_COLLABORATOR]: {
27
+ userPrompt: '', // this is not used
28
+ systemPrompt: `
29
+ Vous êtes un spécialiste reconnu en comptabilité française, droit fiscal, droit des entreprises et droit social.
30
+ Vous êtes parfaitement à jour des dernières lois, réglementations et jurisprudences en vigueur.
31
+ Votre mission est de fournir des réponses précises et professionnelles basées sur le contexte fourni,
32
+ dans un français irréprochable et un style concis.
33
+ Si le contexte ne contient pas les informations pertinentes pour répondre à la question,
34
+ veuillez l'indiquer clairement plutôt que d'inventer des informations.
35
+ Ne citez les sources que si cela est explicitement demandé.
36
+ Vous devez retourner votre réponse sous forme d'un objet JSON avec les champs suivants:
37
+ - 'category': la catégorie principale de la question (comptabilité, fiscalité, législation, sociale, ou autre si nécessaire)
38
+ - 'sub_category': la sous-catégorie spécifique de la question
39
+ - 'response': votre réponse détaillée à la question selon les critères mentionnés ci-dessus
40
+ - 'references': les références utilisées si demandée
41
+ Si la question est en dehors de votre domaine d'expertise, indiquez-le clairement et indiquez que la category et sub_category sont "hors sujet".
42
+ `,
43
+ },
44
+ } as const;
@@ -1,7 +1,7 @@
1
1
  export enum CerfaType {
2
- CERFA_3310 = 1,
3
- CERFA_3514 = 2,
4
- CERFA_3517 = 3,
2
+ CERFA_3310 = 1, // CA3 TVA
3
+ CERFA_3514 = 2, // Acompte de TVA
4
+ CERFA_3517 = 3, // TVA Simplifiée
5
5
  CERFA_2031 = 4,
6
6
  CERFA_2033 = 5,
7
7
  CERFA_2035 = 6,
@@ -52,6 +52,7 @@ export enum Role {
52
52
  RATING = 56,
53
53
  INTERNAL_ACCOUNTANT = 57,
54
54
  MARKETING = 58,
55
+ RECOVERY_MANAGER = 59,
55
56
  }
56
57
 
57
58
  export const RoleAllowedToLogInAsClient = [
@@ -527,4 +527,14 @@ export const RoleDetail = {
527
527
  cnVpn: 'COMPTABLE',
528
528
  isGrade: false,
529
529
  },
530
+ RECOVERY_MANAGER: {
531
+ id: Role.RECOVERY_MANAGER,
532
+ name: 'Gestionnaire Recouvrement',
533
+ colorPrimary: '#8765D0',
534
+ colorSecondary: '#DED7F6',
535
+ handledInUserSocietyPermissionTable: false,
536
+ isService: false,
537
+ subRole: false,
538
+ isGrade: false,
539
+ },
530
540
  };
@@ -267,7 +267,7 @@ export const TaskResponseType = {
267
267
  },
268
268
  {
269
269
  id: 21,
270
- label: 'Satifaction résiliation',
270
+ label: 'Satisfaction résiliation',
271
271
  role: Role.SATISFACTION,
272
272
  deadline: Deadline,
273
273
  isForWholeRole: true,
@@ -278,7 +278,7 @@ export const TaskResponseType = {
278
278
  },
279
279
  {
280
280
  id: 22,
281
- label: 'Satifaction clients',
281
+ label: 'Satisfaction clients',
282
282
  role: Role.SATISFACTION,
283
283
  deadline: Deadline,
284
284
  isForWholeRole: true,
@@ -0,0 +1,9 @@
1
+ import { IsNotEmpty, IsString } from 'class-validator';
2
+ import { ApiProperty } from '../../../../utils';
3
+
4
+ export class AskQuestionCollaborator {
5
+ @ApiProperty()
6
+ @IsString()
7
+ @IsNotEmpty()
8
+ question: string;
9
+ }
@@ -1,6 +1,5 @@
1
- import { IsBoolean, IsInt, IsOptional, IsString } from 'class-validator';
1
+ import { IsInt, IsOptional, IsString } from 'class-validator';
2
2
  import { ApiPropertyOptional } from '../../../../utils';
3
- import { ToBoolean } from '../../../../utils/transforms/boolean.transform';
4
3
 
5
4
  export class QueryGetStats {
6
5
  @ApiPropertyOptional()
@@ -8,12 +7,6 @@ export class QueryGetStats {
8
7
  @IsString()
9
8
  search?: string;
10
9
 
11
- @ApiPropertyOptional()
12
- @IsOptional()
13
- @IsBoolean()
14
- @ToBoolean()
15
- isAdditionalSales?: boolean;
16
-
17
10
  @ApiPropertyOptional()
18
11
  @IsOptional()
19
12
  @IsInt()
@@ -44,11 +37,6 @@ export class QueryGetStats {
44
37
  @IsInt({ each: true })
45
38
  idPrestationList?: number[];
46
39
 
47
- @ApiPropertyOptional()
48
- @IsOptional()
49
- @IsInt({ each: true })
50
- idOfferList?: number[];
51
-
52
40
  @ApiPropertyOptional()
53
41
  @IsOptional()
54
42
  @IsInt({ each: true })
@@ -0,0 +1,17 @@
1
+ import { IUser } from './IUser';
2
+
3
+ export interface IAIQuestion {
4
+ id: number;
5
+ question: string;
6
+ answer: string;
7
+ references?: string | null;
8
+ category?: string | null;
9
+ subCategory?: string | null;
10
+ totalTokens: number;
11
+ idUser: number;
12
+ createdAt?: Date | string;
13
+ updatedAt?: Date | string;
14
+
15
+ // Associations
16
+ user?: IUser;
17
+ }
@@ -34,6 +34,7 @@ export interface IPayment {
34
34
  idFile?: number | null;
35
35
  createdAt?: Date | null;
36
36
  updatedAt?: Date | null;
37
+ deletedAt?: Date | null;
37
38
 
38
39
  // Associations
39
40
  paymentsPrestations?: IPrestation;
package/ts/types/index.ts CHANGED
@@ -347,6 +347,7 @@ export * from './Interface/models/IReminder';
347
347
  export * from './Interface/models/IScheduledReminder';
348
348
  export * from './Interface/models/IReminderAttachment';
349
349
  export * from './Interface/models/IStateBankAccount';
350
+ export * from './Interface/models/IAIQuestion';
350
351
 
351
352
  // Schemas
352
353
  export * from './Interface/schemas/IRegistrationDetail';
@@ -574,7 +575,7 @@ export * from './Enum/QualificationLead';
574
575
  export * from './Enum/Template';
575
576
  export * from './Enum/Marketing';
576
577
  export * from './Enum/EnglishLevel';
577
- export * from './Enum/OCRPrompt';
578
+ export * from './Enum/AIPrompt';
578
579
  export * from './Enum/SocietyTypeExportCsv';
579
580
 
580
581
  // Interfaces API
@@ -1207,3 +1208,4 @@ export * from './Interface/api/regulation/Query';
1207
1208
  export * from './Interface/api/regulation/Read';
1208
1209
  export * from './Interface/api/regulation/Create';
1209
1210
  export * from './Interface/api/marketing/NewLeadSheet';
1211
+ export * from './Interface/api/ai/AskQuestionCollaborator';
@@ -92,7 +92,7 @@ export function generateCommercialDocument(
92
92
  ? (internationalizationConsistency(locale, payload.discount, 'discount') ?? payload.discount)
93
93
  : null,
94
94
  vatMention: payload.vatMention
95
- ? (internationalizationConsistency(locale, payload.vatMention, 'vatMention') ?? null)
95
+ ? (internationalizationConsistency(locale, payload.vatMention, 'vatMention') ?? payload.vatMention)
96
96
  : null,
97
97
  phoneContact: payload.settings?.phoneContact ?? null,
98
98
  products,
@@ -35,8 +35,8 @@ export const internationalizationChoices: InternationalizationChoicesType = {
35
35
  penalties: ['Non applicable', '3 fois le taux légal', 'Taux directeur de la BCE + 10 points'],
36
36
  discount: ['Non applicable', 'Aucun escompte en cas de paiement anticipé'],
37
37
  vatMention: [
38
- 'Non concerné',
39
- 'Non applicable',
38
+ 'TVA: Non concerné',
39
+ 'TVA: Non applicable',
40
40
  'TVA non applicable, art. 293 B du CGI',
41
41
  'TVA non applicable - Exportation hors UE - Art. 259-1 du CGI',
42
42
  "Non soumis à TVA selon l'article 261C du CGI",
@@ -418,8 +418,8 @@ const internationalizationMatching: { [key: string]: { fr: string; en: string }[
418
418
  { fr: 'Virement bancaire', en: 'Bank transfer' },
419
419
  ],
420
420
  vatMention: [
421
- { fr: 'Non concerné', en: 'Not affected' },
422
- { fr: 'Non applicable', en: 'Not applicable' },
421
+ { fr: 'TVA: Non concerné', en: 'VAT: Not affected' },
422
+ { fr: 'TVA: Non applicable', en: 'VAT: Not applicable' },
423
423
  {
424
424
  fr: 'TVA non applicable, art. 293 B du CGI',
425
425
  en: 'VAT not applicable, art. 293 B of the French General Tax Code (FGTC)',
@@ -115,7 +115,7 @@ export const bodyTemplate = `<html class="pdf-content">
115
115
  <br/><%= languageTemplate.template.common.options.approval %> : <br/><br/><br/><br/>
116
116
  <% } %>
117
117
 
118
- <% if (cgv && (settings && settings.invoiceCgv) && (idEstimateInvoiceType === ${EstimateInvoiceType.FACTURE} || idEstimateInvoiceType === ${EstimateInvoiceType.ACOMPTE} || idEstimateInvoiceType === ${EstimateInvoiceType.AVOIR} || idEstimateInvoiceType === ${EstimateInvoiceType.RESTE} )) { %>
118
+ <% if (cgv && (settings && settings.invoiceCgv)) { %>
119
119
  <br><div style="page-break-after:always;"></div>
120
120
  <div id="WYSIWYG"><%- cgv %></div>
121
121
  <% } %>
@@ -1,12 +0,0 @@
1
- export declare enum OCRPromptKey {
2
- BANK_STATEMENT = "bank_statement",
3
- INVOICE = "invoice",
4
- INVOICE_CSV = "invoice_csv"
5
- }
6
- interface OCRPromptInfo {
7
- userPrompt: string;
8
- systemPrompt: string;
9
- }
10
- export declare const OCRPrompt: Record<OCRPromptKey, OCRPromptInfo>;
11
- export {};
12
- //# sourceMappingURL=OCRPrompt.d.ts.map