@endevops/peppol-schema 0.1.0-beta.4 → 0.1.0-beta.5
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/README.md +9 -6
- package/dist/constants.d.ts +51 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +48 -0
- package/dist/constants.js.map +1 -0
- package/dist/eas-codes.generated-D8jjHFij.js.map +1 -1
- package/dist/index-CfjMSrpQ.d.ts +3508 -0
- package/dist/index-CfjMSrpQ.d.ts.map +1 -0
- package/dist/index.d.ts +2 -2613
- package/dist/index.js +3121 -1563
- package/dist/index.js.map +1 -1
- package/dist/invoice-response-code-not-needs-schema-p_RKKNLc.js +18 -0
- package/dist/invoice-response-code-not-needs-schema-p_RKKNLc.js.map +1 -0
- package/dist/invoice-response-codes.d.ts +11 -0
- package/dist/invoice-response-codes.d.ts.map +1 -0
- package/dist/invoice-response-codes.js +32 -0
- package/dist/invoice-response-codes.js.map +1 -0
- package/dist/invoice-status-codes.generated-DL-agLdx.d.ts +24 -0
- package/dist/invoice-status-codes.generated-DL-agLdx.d.ts.map +1 -0
- package/dist/message-level-response-profile-id-DBpOW91B.js +9 -0
- package/dist/message-level-response-profile-id-DBpOW91B.js.map +1 -0
- package/dist/peppol-iso-date-string-BXLxzxdz.js +30 -0
- package/dist/peppol-iso-date-string-BXLxzxdz.js.map +1 -0
- package/dist/schematron.d.ts +408 -365
- package/dist/schematron.d.ts.map +1 -1
- package/dist/schematron.js +1975 -1501
- package/dist/schematron.js.map +1 -1
- package/dist/values.d.ts +95 -13218
- package/dist/values.d.ts.map +1 -1
- package/dist/values.js +1 -1
- package/dist/vat-dates.generated-CxFvt7m3.d.ts +68 -0
- package/dist/vat-dates.generated-CxFvt7m3.d.ts.map +1 -0
- package/dist/{vatex-codes.generated-BSgP3n5t.js → vatex-codes.generated-N7wsUrLh.js} +8 -9
- package/dist/vatex-codes.generated-N7wsUrLh.js.map +1 -0
- package/package.json +16 -18
- package/src/constants/transport-profile.ts +5 -1
- package/src/decoders/decode-billing.ts +1 -1
- package/src/decoders/decode-credit-note.ts +2 -4
- package/src/decoders/decode-invoice-response.ts +15 -37
- package/src/decoders/decode-invoice.ts +2 -4
- package/src/decoders/decode-message-level-response.ts +21 -48
- package/src/decoders/encode-credit-note.ts +1 -1
- package/src/decoders/encode-invoice-response.ts +7 -4
- package/src/decoders/encode-invoice.ts +1 -1
- package/src/decoders/encode-message-level-response.ts +4 -10
- package/src/decoders/fields/decode-additional-document-references.ts +1 -1
- package/src/decoders/fields/decode-address.ts +1 -1
- package/src/decoders/fields/decode-allowance-charges.ts +7 -15
- package/src/decoders/fields/decode-amount.ts +2 -2
- package/src/decoders/fields/decode-application-response.ts +21 -0
- package/src/decoders/fields/decode-billing-references.ts +1 -1
- package/src/decoders/fields/decode-contact.ts +1 -1
- package/src/decoders/fields/decode-credit-note-lines.ts +7 -15
- package/src/decoders/fields/decode-delivery.ts +1 -1
- package/src/decoders/fields/decode-electronic-address.ts +1 -1
- package/src/decoders/fields/decode-identifier.ts +1 -1
- package/src/decoders/fields/decode-invoice-line-period.ts +1 -1
- package/src/decoders/fields/decode-invoice-lines.ts +6 -14
- package/src/decoders/fields/decode-invoice-message-document-party.ts +2 -2
- package/src/decoders/fields/decode-invoice-message-party.ts +1 -6
- package/src/decoders/fields/decode-invoice-period.ts +7 -13
- package/src/decoders/fields/decode-legal-monetary-total.ts +1 -1
- package/src/decoders/fields/decode-line-allowance-charges.ts +7 -14
- package/src/decoders/fields/decode-line-price.ts +1 -7
- package/src/decoders/fields/decode-line-shared.ts +2 -4
- package/src/decoders/fields/decode-message-level-party.ts +1 -1
- package/src/decoders/fields/decode-node-list.ts +15 -0
- package/src/decoders/fields/decode-order-reference.ts +1 -1
- package/src/decoders/fields/decode-parties-tax-scheme.ts +1 -1
- package/src/decoders/fields/decode-party-legal-entity.ts +1 -1
- package/src/decoders/fields/decode-party-tax-scheme.ts +1 -1
- package/src/decoders/fields/decode-party.ts +3 -14
- package/src/decoders/fields/decode-payee-party.ts +1 -1
- package/src/decoders/fields/decode-payment-means.ts +2 -2
- package/src/decoders/fields/decode-payment-terms.ts +1 -1
- package/src/decoders/fields/decode-price-allowance-charge.ts +1 -7
- package/src/decoders/fields/decode-quantity.ts +1 -6
- package/src/decoders/fields/decode-simple-identifier.ts +1 -1
- package/src/decoders/fields/decode-tax-category.ts +1 -1
- package/src/decoders/fields/decode-tax-representative-party.ts +1 -1
- package/src/decoders/fields/decode-tax-totals.ts +2 -2
- package/src/decoders/fields/encode-additional-document-references.ts +3 -2
- package/src/decoders/fields/encode-address.ts +1 -1
- package/src/decoders/fields/encode-allowance-charges.ts +3 -2
- package/src/decoders/fields/encode-amount.ts +1 -1
- package/src/decoders/fields/encode-billing-references.ts +2 -2
- package/src/decoders/fields/encode-contact.ts +1 -1
- package/src/decoders/fields/encode-credit-note-lines.ts +2 -2
- package/src/decoders/fields/encode-delivery.ts +1 -1
- package/src/decoders/fields/encode-identifier.ts +1 -1
- package/src/decoders/fields/encode-invoice-line-period.ts +1 -1
- package/src/decoders/fields/encode-invoice-lines.ts +2 -2
- package/src/decoders/fields/encode-invoice-period.ts +1 -1
- package/src/decoders/fields/encode-legal-monetary-total.ts +1 -1
- package/src/decoders/fields/encode-line-allowance-charges.ts +2 -2
- package/src/decoders/fields/encode-line-price.ts +1 -1
- package/src/decoders/fields/encode-line-shared.ts +1 -1
- package/src/decoders/fields/encode-message-party.ts +3 -3
- package/src/decoders/fields/encode-order-reference.ts +1 -1
- package/src/decoders/fields/encode-parties-tax-scheme.ts +1 -1
- package/src/decoders/fields/encode-party-tax-scheme.ts +1 -1
- package/src/decoders/fields/encode-party.ts +1 -1
- package/src/decoders/fields/encode-payee-party.ts +1 -1
- package/src/decoders/fields/encode-payment-means.ts +2 -2
- package/src/decoders/fields/encode-payment-terms.ts +1 -1
- package/src/decoders/fields/encode-price-allowance-charges.ts +1 -1
- package/src/decoders/fields/encode-quantity.ts +1 -1
- package/src/decoders/fields/encode-tax-category.ts +1 -1
- package/src/decoders/fields/encode-tax-representative-party.ts +1 -1
- package/src/decoders/fields/encode-tax-totals.ts +4 -4
- package/src/helpers/bool.ts +9 -12
- package/src/helpers/get-prop.ts +2 -4
- package/src/helpers/str-or-und.ts +3 -4
- package/src/helpers/str.ts +12 -8
- package/src/index.ts +56 -6
- package/src/schemas/fields/peppol-additional-document-reference-schema.ts +123 -0
- package/src/schemas/fields/peppol-address-schema.ts +112 -0
- package/src/schemas/fields/peppol-allowance-charge-schema.ts +104 -0
- package/src/schemas/fields/peppol-amount-schema.ts +23 -0
- package/src/schemas/fields/peppol-base-line-schema.ts +141 -0
- package/src/{effect → schemas}/fields/peppol-billing-reference-schema.ts +25 -20
- package/src/schemas/fields/peppol-binary-object-schema.ts +52 -0
- package/src/schemas/fields/peppol-contact-schema.ts +20 -0
- package/src/schemas/fields/peppol-credit-note-line-schema.ts +44 -0
- package/src/schemas/fields/peppol-delivery-schema.ts +109 -0
- package/src/schemas/fields/peppol-identifier-schema.ts +21 -0
- package/src/schemas/fields/peppol-invoice-line-period-schema.ts +35 -0
- package/src/{effect → schemas}/fields/peppol-invoice-line-schema.ts +10 -10
- package/src/schemas/fields/peppol-invoice-period-schema.ts +31 -0
- package/src/schemas/fields/peppol-item-classification-schema.ts +46 -0
- package/src/schemas/fields/peppol-legal-monetary-total-schema.ts +127 -0
- package/src/schemas/fields/peppol-line-allowance-charge-schema.ts +68 -0
- package/src/schemas/fields/peppol-line-item-schema.ts +196 -0
- package/src/schemas/fields/peppol-line-price-allowance-charge-schema.ts +41 -0
- package/src/schemas/fields/peppol-line-price-schema.ts +32 -0
- package/src/schemas/fields/peppol-order-reference-schema.ts +38 -0
- package/src/schemas/fields/peppol-party-base-schema.ts +145 -0
- package/src/schemas/fields/peppol-party-legal-entity-schema.ts +32 -0
- package/src/schemas/fields/peppol-party-tax-scheme-schema.ts +41 -0
- package/src/schemas/fields/peppol-payee-party-schema.ts +119 -0
- package/src/schemas/fields/peppol-payment-means-schema.ts +224 -0
- package/src/schemas/fields/peppol-payment-terms-schema.ts +25 -0
- package/src/schemas/fields/peppol-quantity-schema.ts +22 -0
- package/src/schemas/fields/peppol-reference-schema.ts +9 -0
- package/src/schemas/fields/peppol-tax-category-schema.ts +47 -0
- package/src/schemas/fields/peppol-tax-representative-schema.ts +26 -0
- package/src/{effect → schemas}/fields/peppol-tax-subtotal-category-schema.ts +7 -6
- package/src/schemas/fields/peppol-tax-subtotal-schema.ts +33 -0
- package/src/schemas/fields/peppol-tax-totals-base-schema.ts +28 -0
- package/src/schemas/peppol-billing-base-schema.ts +366 -0
- package/src/schemas/peppol-credit-note-schema.ts +31 -0
- package/src/schemas/peppol-document-response-document-reference-schema.ts +41 -0
- package/src/schemas/peppol-document-response-document-schema.ts +38 -0
- package/src/schemas/peppol-document-response-line-response-content-schema.ts +49 -0
- package/src/schemas/peppol-document-response-line-response-schema.ts +40 -0
- package/src/schemas/peppol-document-schema.ts +120 -0
- package/src/{effect → schemas}/peppol-invoice-response-document-actual-response-schema.ts +25 -16
- package/src/schemas/peppol-invoice-response-document-actual-response-status-schema.ts +63 -0
- package/src/schemas/peppol-invoice-response-schema.ts +176 -0
- package/src/schemas/peppol-invoice-response-status-reason-code-schema.ts +40 -0
- package/src/schemas/peppol-invoice-schema.ts +45 -0
- package/src/schemas/peppol-iso-date-string.ts +20 -0
- package/src/schemas/peppol-message-level-response-document-response-schema.ts +35 -0
- package/src/schemas/peppol-message-level-response-party-schema.ts +20 -0
- package/src/schemas/peppol-message-level-response-schema.ts +98 -0
- package/src/schemas/utils/format-xsd-time.ts +80 -0
- package/src/{effect → schemas}/utils/index.ts +1 -1
- package/src/schemas/utils/is-valid-process.ts +1 -1
- package/src/schemas/utils/opaque.ts +19 -0
- package/src/schemas/utils/peppol-xsd-time-schema.ts +79 -0
- package/src/schemas/utils/quantity-unit-code-to-intl-unit.ts +2 -2
- package/src/schemas/values/credit-note-type-code-schema.ts +3 -5
- package/src/schemas/values/document-type-schemes-schema.ts +3 -5
- package/src/schemas/values/document-type-values-schema.ts +4 -7
- package/src/{effect → schemas}/values/duty-tax-fee-category-schema.ts +3 -3
- package/src/schemas/values/invoice-type-code-schema.ts +4 -8
- package/src/schemas/values/process-from-document-type-schema.ts +10 -12
- package/src/schemas/values/quantity-unit-codes-schema.ts +4 -8
- package/src/schematron/cen/ae/cen-en16931-br-ae-01.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-02.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-03.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-04.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-05.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-06.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-07.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-08.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-09.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-10.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-01.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-02.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-03.ts +6 -10
- package/src/schematron/cen/af/cen-en16931-br-af-04.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-05.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-06.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-07.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-08.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-09.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-10.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-01.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-02.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-03.ts +6 -10
- package/src/schematron/cen/ag/cen-en16931-br-ag-04.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-05.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-06.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-07.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-08.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-09.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-10.ts +6 -5
- package/src/schematron/cen/b/cen-en16931-br-b-01.ts +6 -5
- package/src/schematron/cen/b/cen-en16931-br-b-02.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-01.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-02.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-03.ts +9 -6
- package/src/schematron/cen/cen-en16931-br-04.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-05.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-06.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-07.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-08.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-09.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-10.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-11.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-12.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-13.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-14.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-15.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-16.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-17.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-18.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-19.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-20.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-21.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-22.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-23.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-24.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-25.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-26.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-27.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-28.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-29.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-30.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-31.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-32.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-33.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-36.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-37.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-38.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-41.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-42.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-43.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-44.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-45.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-46.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-47.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-48.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-49.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-50.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-51.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-52.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-53.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-54.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-55.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-56.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-57.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-61.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-62.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-63.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-64.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-65.ts +6 -5
- package/src/schematron/cen/cl/cen-en16931-br-cl-08.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-03.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-04.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-05.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-06.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-07.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-08.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-09.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-10.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-11.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-12.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-13.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-14.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-15.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-16.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-17.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-18.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-19.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-20.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-21.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-22.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-23.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-24.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-25.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-26.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-01.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-02.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-05.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-06.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-09.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-10.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-11.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-12.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-13.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-14.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-15.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-16.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-17.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-18.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-19.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-20.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-23.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-24.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-25.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-27.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-28.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-01.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-02.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-03.ts +6 -10
- package/src/schematron/cen/e/cen-en16931-br-e-04.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-05.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-06.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-07.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-08.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-09.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-10.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-01.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-02.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-03.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-04.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-05.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-06.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-07.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-08.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-09.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-10.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-01.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-02.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-03.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-04.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-05.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-06.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-07.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-08.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-09.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-10.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-11.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-12.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-01.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-02.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-03.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-04.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-05.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-06.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-07.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-08.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-09.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-10.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-11.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-12.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-13.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-14.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-01.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-02.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-03.ts +6 -10
- package/src/schematron/cen/s/cen-en16931-br-s-04.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-05.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-06.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-07.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-08.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-09.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-10.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-01.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-02.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-03.ts +6 -10
- package/src/schematron/cen/z/cen-en16931-br-z-04.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-05.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-06.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-07.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-08.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-09.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-10.ts +6 -5
- package/src/schematron/de/de-r-001.ts +8 -7
- package/src/schematron/de/de-r-002.ts +8 -7
- package/src/schematron/de/de-r-003.ts +8 -7
- package/src/schematron/de/de-r-004.ts +8 -7
- package/src/schematron/de/de-r-005.ts +8 -7
- package/src/schematron/de/de-r-006.ts +8 -7
- package/src/schematron/de/de-r-007.ts +8 -7
- package/src/schematron/de/de-r-008.ts +8 -7
- package/src/schematron/de/de-r-009.ts +8 -7
- package/src/schematron/de/de-r-010.ts +9 -8
- package/src/schematron/de/de-r-011.ts +9 -8
- package/src/schematron/de/de-r-014.ts +8 -7
- package/src/schematron/de/de-r-015.ts +8 -7
- package/src/schematron/de/de-r-016.ts +9 -8
- package/src/schematron/de/de-r-017.ts +8 -7
- package/src/schematron/de/de-r-018.ts +10 -9
- package/src/schematron/de/de-r-019.ts +8 -7
- package/src/schematron/de/de-r-020.ts +8 -7
- package/src/schematron/de/de-r-022.ts +8 -7
- package/src/schematron/de/de-r-023-1.ts +8 -7
- package/src/schematron/de/de-r-023-2.ts +8 -7
- package/src/schematron/de/de-r-024-1.ts +8 -7
- package/src/schematron/de/de-r-024-2.ts +8 -7
- package/src/schematron/de/de-r-025-1.ts +8 -7
- package/src/schematron/de/de-r-025-2.ts +8 -7
- package/src/schematron/de/de-r-026.ts +9 -8
- package/src/schematron/de/de-r-027.ts +8 -7
- package/src/schematron/de/de-r-028.ts +8 -7
- package/src/schematron/de/de-r-030.ts +9 -8
- package/src/schematron/de/de-r-031.ts +8 -7
- package/src/schematron/dk/dk-r-002.ts +7 -6
- package/src/schematron/dk/dk-r-003.ts +8 -7
- package/src/schematron/dk/dk-r-004.ts +8 -7
- package/src/schematron/dk/dk-r-005.ts +8 -7
- package/src/schematron/dk/dk-r-006.ts +8 -7
- package/src/schematron/dk/dk-r-007.ts +8 -7
- package/src/schematron/dk/dk-r-008.ts +8 -7
- package/src/schematron/dk/dk-r-009.ts +8 -7
- package/src/schematron/dk/dk-r-010.ts +8 -7
- package/src/schematron/dk/dk-r-011.ts +8 -7
- package/src/schematron/dk/dk-r-013.ts +8 -7
- package/src/schematron/dk/dk-r-014.ts +7 -6
- package/src/schematron/dk/dk-r-016.ts +8 -7
- package/src/schematron/dk/dk-r-017.ts +8 -7
- package/src/schematron/errors.ts +17 -0
- package/src/schematron/gr/gr-r-001-1.ts +7 -6
- package/src/schematron/gr/gr-r-001-2.ts +8 -7
- package/src/schematron/gr/gr-r-001-3.ts +14 -9
- package/src/schematron/gr/gr-r-001-4.ts +8 -7
- package/src/schematron/gr/gr-r-001-5.ts +8 -7
- package/src/schematron/gr/gr-r-001-6.ts +7 -6
- package/src/schematron/gr/gr-r-001-7.ts +7 -6
- package/src/schematron/gr/gr-r-002.ts +7 -6
- package/src/schematron/gr/gr-r-003.ts +8 -7
- package/src/schematron/gr/gr-r-004-1.ts +7 -6
- package/src/schematron/gr/gr-r-004-2.ts +7 -6
- package/src/schematron/gr/gr-r-005.ts +7 -6
- package/src/schematron/gr/gr-r-006.ts +8 -7
- package/src/schematron/gr/gr-r-008-2.ts +7 -6
- package/src/schematron/gr/gr-r-008-3.ts +7 -6
- package/src/schematron/gr/gr-r-009.ts +7 -6
- package/src/schematron/gr/gr-r-010.ts +7 -6
- package/src/schematron/gr/gr-s-008-1.ts +7 -6
- package/src/schematron/gr/gr-s-011.ts +8 -7
- package/src/schematron/helpers.ts +36 -11
- package/src/schematron/index.ts +6 -1
- package/src/schematron/is/is-r-001.ts +7 -6
- package/src/schematron/is/is-r-002.ts +7 -6
- package/src/schematron/is/is-r-003.ts +7 -6
- package/src/schematron/is/is-r-004.ts +7 -6
- package/src/schematron/is/is-r-005.ts +7 -6
- package/src/schematron/is/is-r-006.ts +8 -7
- package/src/schematron/is/is-r-007.ts +8 -7
- package/src/schematron/is/is-r-008.ts +8 -7
- package/src/schematron/is/is-r-009.ts +8 -7
- package/src/schematron/is/is-r-010.ts +9 -8
- package/src/schematron/it/it-r-001.ts +7 -6
- package/src/schematron/it/it-r-002.ts +7 -6
- package/src/schematron/it/it-r-003.ts +7 -6
- package/src/schematron/it/it-r-004.ts +7 -6
- package/src/schematron/nl/nl-r-001.ts +7 -6
- package/src/schematron/nl/nl-r-002.ts +7 -6
- package/src/schematron/nl/nl-r-003.ts +8 -7
- package/src/schematron/nl/nl-r-004.ts +7 -6
- package/src/schematron/nl/nl-r-005.ts +8 -7
- package/src/schematron/nl/nl-r-006.ts +8 -7
- package/src/schematron/nl/nl-r-007.ts +8 -7
- package/src/schematron/nl/nl-r-008.ts +7 -6
- package/src/schematron/nl/nl-r-009.ts +8 -7
- package/src/schematron/no/no-r-001.ts +8 -7
- package/src/schematron/no/no-r-002.ts +7 -6
- package/src/schematron/peppol/cl/peppol-en16931-cl001.ts +6 -5
- package/src/schematron/peppol/cl/peppol-en16931-cl002.ts +6 -5
- package/src/schematron/peppol/cl/peppol-en16931-cl003.ts +6 -5
- package/src/schematron/peppol/cl/peppol-en16931-cl006.ts +7 -6
- package/src/schematron/peppol/cl/peppol-en16931-cl007.ts +6 -5
- package/src/schematron/peppol/cl/peppol-en16931-cl008.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r040.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r041.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r042.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r043.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r044.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r045.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r046.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r047.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r049.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r050.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r052.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r053.ts +6 -5
- package/src/schematron/peppol/f/peppol-en16931-f001.ts +20 -13
- package/src/schematron/peppol/p/peppol-en16931-p0100.ts +8 -7
- package/src/schematron/peppol/p/peppol-en16931-p0101.ts +8 -7
- package/src/schematron/peppol/p/peppol-en16931-p0104.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0105.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0106.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0107.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0108.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0109.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0110.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0111.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0112.ts +7 -6
- package/src/schematron/peppol/r/peppol-en16931-r001.ts +11 -13
- package/src/schematron/peppol/r/peppol-en16931-r002.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r003.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r004.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r005.ts +7 -6
- package/src/schematron/peppol/r/peppol-en16931-r007.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r008.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r010.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r020.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r040.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r041.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r042.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r043.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r044.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r046.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r051.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r053.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r054.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r055.ts +8 -7
- package/src/schematron/peppol/r/peppol-en16931-r061.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r100.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r101.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r110.ts +7 -6
- package/src/schematron/peppol/r/peppol-en16931-r111.ts +7 -6
- package/src/schematron/peppol/r/peppol-en16931-r120.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r121.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r130.ts +6 -5
- package/src/schematron/run-all-rules.ts +2 -7
- package/src/schematron/schematron.ts +36 -0
- package/src/schematron/se/se-r-001.ts +7 -6
- package/src/schematron/se/se-r-002.ts +7 -6
- package/src/schematron/se/se-r-003.ts +7 -6
- package/src/schematron/se/se-r-004.ts +7 -6
- package/src/schematron/se/se-r-005.ts +8 -7
- package/src/schematron/se/se-r-006.ts +7 -6
- package/src/schematron/se/se-r-007.ts +7 -6
- package/src/schematron/se/se-r-008.ts +7 -6
- package/src/schematron/se/se-r-009.ts +7 -6
- package/src/schematron/se/se-r-010.ts +7 -6
- package/src/schematron/se/se-r-011.ts +7 -6
- package/src/schematron/se/se-r-012.ts +7 -6
- package/src/schematron/se/se-r-013.ts +7 -6
- package/src/values/additional-document-reference-codes.generated.ts +2 -3
- package/src/values/allowance-charge-reason-codes.generated.ts +1 -1
- package/src/values/application-response-type-codes.generated.ts +1 -1
- package/src/values/charge-reason-codes.generated.ts +1 -1
- package/src/values/country-code.generated.ts +1 -1
- package/src/values/credit-notes-type-codes.generated.ts +1 -1
- package/src/values/currency-code.generated.ts +1 -1
- package/src/values/document-type-codes.generated.ts +1 -1
- package/src/values/document-type.generated.ts +2 -2
- package/src/values/duty-tax-fee-categories.generated.ts +1 -1
- package/src/values/eas-codes.generated.ts +1 -1
- package/src/values/icd-codes.generated.ts +7 -7
- package/src/values/invoice-status-codes.generated.ts +1 -1
- package/src/values/invoice-type-codes.generated.ts +1 -1
- package/src/values/item-classification-code.generated.ts +1 -1
- package/src/values/mime-codes.generated.ts +1 -1
- package/src/values/op-status-action.generated.ts +1 -1
- package/src/values/op-status-reason.generated.ts +1 -1
- package/src/values/participant-identifier-schemes.generated.ts +2 -2
- package/src/values/payment-means-codes.generated.ts +1 -1
- package/src/values/processes.generated.ts +1 -1
- package/src/values/quantity-unit-codes.generated.ts +1 -1
- package/src/values/vat-dates.generated.ts +1 -1
- package/src/values/vatex-codes.generated.ts +1 -1
- package/dist/all-union-fields-CxoyKBpI.d.ts +0 -445
- package/dist/all-union-fields-CxoyKBpI.d.ts.map +0 -1
- package/dist/document-DCcObB-a.d.ts +0 -1466
- package/dist/document-DCcObB-a.d.ts.map +0 -1
- package/dist/effect.d.ts +0 -6291
- package/dist/effect.d.ts.map +0 -1
- package/dist/effect.js +0 -3240
- package/dist/effect.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/is-valid-process-CSWL-q9f.js +0 -1590
- package/dist/is-valid-process-CSWL-q9f.js.map +0 -1
- package/dist/quantity-unit-code-to-intl-unit-15EykjMe.d.ts +0 -168
- package/dist/quantity-unit-code-to-intl-unit-15EykjMe.d.ts.map +0 -1
- package/dist/vat-dates.generated-DTVWQAdn.d.ts +0 -4812
- package/dist/vat-dates.generated-DTVWQAdn.d.ts.map +0 -1
- package/dist/vatex-codes.generated-BSgP3n5t.js.map +0 -1
- package/src/decoders/errors.ts +0 -11
- package/src/document-parser.ts +0 -70
- package/src/document.ts +0 -19
- package/src/effect/fields/default-customization-id.ts +0 -1
- package/src/effect/fields/default-profile-id.ts +0 -1
- package/src/effect/fields/peppol-additional-document-reference-schema.ts +0 -114
- package/src/effect/fields/peppol-address-schema.ts +0 -105
- package/src/effect/fields/peppol-allowance-charge-schema.ts +0 -95
- package/src/effect/fields/peppol-amount-schema.ts +0 -22
- package/src/effect/fields/peppol-base-line-schema.ts +0 -138
- package/src/effect/fields/peppol-binary-object-schema.ts +0 -51
- package/src/effect/fields/peppol-contact-schema.ts +0 -18
- package/src/effect/fields/peppol-credit-note-line-schema.ts +0 -42
- package/src/effect/fields/peppol-delivery-schema.ts +0 -100
- package/src/effect/fields/peppol-identifier-schema.ts +0 -19
- package/src/effect/fields/peppol-invoice-line-period-schema.ts +0 -34
- package/src/effect/fields/peppol-invoice-period-schema.ts +0 -30
- package/src/effect/fields/peppol-item-classification-schema.ts +0 -45
- package/src/effect/fields/peppol-legal-monetary-total-schema.ts +0 -126
- package/src/effect/fields/peppol-line-allowance-charge-schema.ts +0 -64
- package/src/effect/fields/peppol-line-item-schema.ts +0 -185
- package/src/effect/fields/peppol-line-price-allowance-charge-schema.ts +0 -38
- package/src/effect/fields/peppol-line-price-schema.ts +0 -31
- package/src/effect/fields/peppol-order-reference-schema.ts +0 -36
- package/src/effect/fields/peppol-party-base-schema.ts +0 -138
- package/src/effect/fields/peppol-party-legal-entity-schema.ts +0 -29
- package/src/effect/fields/peppol-party-tax-scheme-schema.ts +0 -33
- package/src/effect/fields/peppol-payee-party-schema.ts +0 -112
- package/src/effect/fields/peppol-payment-means-schema.ts +0 -210
- package/src/effect/fields/peppol-payment-terms-schema.ts +0 -23
- package/src/effect/fields/peppol-quantity-schema.ts +0 -21
- package/src/effect/fields/peppol-reference-schema.ts +0 -5
- package/src/effect/fields/peppol-tax-category-schema.ts +0 -42
- package/src/effect/fields/peppol-tax-representative-schema.ts +0 -23
- package/src/effect/fields/peppol-tax-subtotal-schema.ts +0 -32
- package/src/effect/fields/peppol-tax-totals-base-schema.ts +0 -25
- package/src/effect/index.ts +0 -56
- package/src/effect/peppol-billing-base-schema.ts +0 -355
- package/src/effect/peppol-credit-note-schema.ts +0 -30
- package/src/effect/peppol-document-response-document-reference-schema.ts +0 -38
- package/src/effect/peppol-document-response-document-schema.ts +0 -35
- package/src/effect/peppol-document-response-line-response-content-schema.ts +0 -44
- package/src/effect/peppol-document-response-line-response-schema.ts +0 -33
- package/src/effect/peppol-document-schema.ts +0 -142
- package/src/effect/peppol-invoice-response-document-actual-response-status-schema.ts +0 -60
- package/src/effect/peppol-invoice-response-schema.ts +0 -168
- package/src/effect/peppol-invoice-response-status-reason-code-schema.ts +0 -31
- package/src/effect/peppol-invoice-schema.ts +0 -42
- package/src/effect/peppol-iso-date-string-schema.ts +0 -19
- package/src/effect/peppol-message-level-response-document-response-schema.ts +0 -33
- package/src/effect/peppol-message-level-response-party-schema.ts +0 -19
- package/src/effect/peppol-message-level-response-schema.ts +0 -97
- package/src/effect/utils/format-quantity-with-unit.ts +0 -1
- package/src/effect/utils/get-credit-note-type-code-description.ts +0 -1
- package/src/effect/utils/get-invoice-type-code-description.ts +0 -1
- package/src/effect/utils/is-valid-credit-note-type-code.ts +0 -1
- package/src/effect/utils/is-valid-invoice-type-code.ts +0 -1
- package/src/effect/utils/is-valid-process.ts +0 -1
- package/src/effect/utils/peppol-xsd-time-schema.ts +0 -13
- package/src/effect/utils/quantity-unit-code-to-intl-unit.ts +0 -2
- package/src/effect/values/credit-note-type-code-schema.ts +0 -23
- package/src/effect/values/document-type-schemes-schema.ts +0 -14
- package/src/effect/values/document-type-values-schema.ts +0 -16
- package/src/effect/values/invoice-type-code-schema.ts +0 -21
- package/src/effect/values/process-from-document-type-schema.ts +0 -26
- package/src/effect/values/quantity-unit-codes-schema.ts +0 -24
- package/src/helpers/errors.ts +0 -6
- package/src/helpers/is-defined.ts +0 -3
- package/src/schemas/billing-base.ts +0 -362
- package/src/schemas/credit-note.ts +0 -28
- package/src/schemas/document-response-document-reference-schema.ts +0 -37
- package/src/schemas/document-response-document-schema.ts +0 -34
- package/src/schemas/document-response-line-response-content.ts +0 -43
- package/src/schemas/document-response-line-response-schema.ts +0 -33
- package/src/schemas/fields/additional-document-reference-schema.ts +0 -112
- package/src/schemas/fields/address-schema.ts +0 -105
- package/src/schemas/fields/allowance-charge-schema.ts +0 -86
- package/src/schemas/fields/amount-schema.ts +0 -21
- package/src/schemas/fields/base-line-schema.ts +0 -136
- package/src/schemas/fields/billing-references-schema.ts +0 -44
- package/src/schemas/fields/binary-object-schema.ts +0 -45
- package/src/schemas/fields/contact-schema.ts +0 -18
- package/src/schemas/fields/credit-note-line-schema.ts +0 -37
- package/src/schemas/fields/date-only-fn.ts +0 -6
- package/src/schemas/fields/date-only-parser.ts +0 -20
- package/src/schemas/fields/delivery-schema.ts +0 -95
- package/src/schemas/fields/identifier-schema.ts +0 -24
- package/src/schemas/fields/invoice-line-period-schema.ts +0 -31
- package/src/schemas/fields/invoice-line-schema.ts +0 -41
- package/src/schemas/fields/invoice-period-schema.ts +0 -27
- package/src/schemas/fields/legal-monetary-total-schema.ts +0 -125
- package/src/schemas/fields/line-allowance-charge-schema.ts +0 -59
- package/src/schemas/fields/line-item-schema.ts +0 -183
- package/src/schemas/fields/line-price-allowance-charge-schema.ts +0 -33
- package/src/schemas/fields/list-identifier-schema.ts +0 -43
- package/src/schemas/fields/order-reference-schema.ts +0 -36
- package/src/schemas/fields/party-base-schema.ts +0 -131
- package/src/schemas/fields/party-legal-entity-schema.ts +0 -29
- package/src/schemas/fields/party-tax-schema.ts +0 -33
- package/src/schemas/fields/payee-party.ts +0 -107
- package/src/schemas/fields/payment-means-schema.ts +0 -209
- package/src/schemas/fields/payment-terms-schema.ts +0 -23
- package/src/schemas/fields/price-schema.ts +0 -31
- package/src/schemas/fields/quantity-schema.ts +0 -21
- package/src/schemas/fields/reference-schema.ts +0 -4
- package/src/schemas/fields/tax-category-schema.ts +0 -41
- package/src/schemas/fields/tax-representative-party-schema.ts +0 -23
- package/src/schemas/fields/tax-subtotal-category-schema.ts +0 -26
- package/src/schemas/fields/tax-subtotal-schema.ts +0 -32
- package/src/schemas/fields/tax-totals.ts +0 -25
- package/src/schemas/fields/time-only.ts +0 -23
- package/src/schemas/invoice-response-document-actual-response-status.ts +0 -58
- package/src/schemas/invoice-response-document-actual-response.ts +0 -73
- package/src/schemas/invoice-response-schema.ts +0 -155
- package/src/schemas/invoice-response-status-reason-code.ts +0 -30
- package/src/schemas/invoice.ts +0 -43
- package/src/schemas/message-level-response-document-response-schema.ts +0 -33
- package/src/schemas/message-level-response-party-schema.ts +0 -18
- package/src/schemas/message-level-response-schema.ts +0 -96
- package/src/schemas/utils/base-64.ts +0 -34
- package/src/schemas/utils/vat-regex.ts +0 -51
- package/src/schemas/utils/xsd-time.ts +0 -9
- package/src/schemas/values/additional-document-reference-code.ts +0 -27
- package/src/schemas/values/allowance-charge-reason-code.ts +0 -29
- package/src/schemas/values/application-response-type-codes.ts +0 -25
- package/src/schemas/values/charge-reason-code.ts +0 -29
- package/src/schemas/values/country-code.ts +0 -36
- package/src/schemas/values/currency-codes.ts +0 -35
- package/src/schemas/values/document-type-codes.ts +0 -25
- package/src/schemas/values/document-type-schema.ts +0 -49
- package/src/schemas/values/duty-tax-fee-cateogries.ts +0 -28
- package/src/schemas/values/eas-codes.ts +0 -35
- package/src/schemas/values/icd-codes.ts +0 -28
- package/src/schemas/values/invoice-status-codes.ts +0 -25
- package/src/schemas/values/item-classification-code-schema.ts +0 -28
- package/src/schemas/values/mime-code.ts +0 -28
- package/src/schemas/values/op-status-action.ts +0 -25
- package/src/schemas/values/op-status-reason.ts +0 -25
- package/src/schemas/values/participant-identifier-code.ts +0 -25
- package/src/schemas/values/payment-means-codes-schema.ts +0 -36
- package/src/schemas/values/process-schema.ts +0 -41
- package/src/schemas/values/process-xml-identifier-schema.ts +0 -27
- package/src/schemas/values/vat-date-code.ts +0 -15
- package/src/schemas/values/vatex-code.ts +0 -28
- package/src/schemas.ts +0 -97
- /package/src/{effect → schemas}/utils/peppol-base-64-schema.ts +0 -0
- /package/src/{effect → schemas}/utils/peppol-vat-regex-schema.ts +0 -0
- /package/src/{effect → schemas}/values/additional-document-reference-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/allowance-charge-reason-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/application-response-type-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/charge-reason-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/currency-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/electronic-codes-schema.ts +0 -0
- /package/src/{effect → schemas}/values/icd-codes-schema.ts +0 -0
- /package/src/{effect → schemas}/values/index.ts +0 -0
- /package/src/{effect → schemas}/values/invoice-status-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/item-classification-codes-schema.ts +0 -0
- /package/src/{effect → schemas}/values/mime-codes-schema.ts +0 -0
- /package/src/{effect → schemas}/values/op-status-action-schema.ts +0 -0
- /package/src/{effect → schemas}/values/op-status-reason-schema.ts +0 -0
- /package/src/{effect → schemas}/values/participant-identifier-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/payment-means-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/peppol-country-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/peppol-document-type-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/peppol-document-type-schema.ts +0 -0
- /package/src/{effect → schemas}/values/peppol-process-schema.ts +0 -0
- /package/src/{effect → schemas}/values/vat-date-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/vatex-code-schema.ts +0 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
4
|
+
import { currencyCodeSchema } from '#/schemas/values/currency-code-schema';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @summary Monetary amount with mandatory currency
|
|
8
|
+
*
|
|
9
|
+
* @name cbc:* (+ @currencyID)
|
|
10
|
+
*/
|
|
11
|
+
export class PeppolAmount extends opaque<PeppolAmount>()(
|
|
12
|
+
Schema.Struct({
|
|
13
|
+
/**
|
|
14
|
+
* @name \@currencyID
|
|
15
|
+
*/
|
|
16
|
+
currencyId: currencyCodeSchema,
|
|
17
|
+
/**
|
|
18
|
+
* @name #text (value)
|
|
19
|
+
*/
|
|
20
|
+
value: Schema.Finite,
|
|
21
|
+
})
|
|
22
|
+
) {}
|
|
23
|
+
export interface PeppolAmountEncoded extends Schema.Codec.Encoded<typeof PeppolAmount> {}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { Effect, Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { PeppolAmount } from '#/schemas/fields/peppol-amount-schema';
|
|
4
|
+
import { PeppolIdentifier } from '#/schemas/fields/peppol-identifier-schema';
|
|
5
|
+
import { PeppolInvoiceLinePeriod } from '#/schemas/fields/peppol-invoice-line-period-schema';
|
|
6
|
+
import { peppolLineAllowanceChargeSchema } from '#/schemas/fields/peppol-line-allowance-charge-schema';
|
|
7
|
+
import { PeppolLineItem } from '#/schemas/fields/peppol-line-item-schema';
|
|
8
|
+
import { PeppolLinePrice } from '#/schemas/fields/peppol-line-price-schema';
|
|
9
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
10
|
+
|
|
11
|
+
export class PeppolOrderLineReference extends opaque<PeppolOrderLineReference>()(Schema.Struct({ lineId: Schema.String })) {}
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* @description Base of the invoice line and credit note line schemas.
|
|
15
|
+
*/
|
|
16
|
+
export class PeppolBaseLine extends opaque<PeppolBaseLine>()(
|
|
17
|
+
Schema.Struct({
|
|
18
|
+
/**
|
|
19
|
+
* @description A textual value that specifies where to book the relevant data into the Buyer's financial accounts.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* `1287:65464`;
|
|
23
|
+
*
|
|
24
|
+
* @summary Invoice line Buyer accounting reference
|
|
25
|
+
*
|
|
26
|
+
* @name cbc:AccountingCost
|
|
27
|
+
*
|
|
28
|
+
* @cardinality 0..1
|
|
29
|
+
*/
|
|
30
|
+
accountingCost: Schema.optional(Schema.String),
|
|
31
|
+
/**
|
|
32
|
+
* @description A group of business terms providing information about allowances or charges applicable to the individual Invoice line.
|
|
33
|
+
*
|
|
34
|
+
* @summary Invoice line allowances or charges
|
|
35
|
+
*
|
|
36
|
+
* @name cac:AllowanceCharge
|
|
37
|
+
*
|
|
38
|
+
* @cardinality 0..n
|
|
39
|
+
*/
|
|
40
|
+
allowanceCharges: Schema.optional(Schema.Array(peppolLineAllowanceChargeSchema)),
|
|
41
|
+
/**
|
|
42
|
+
* @summary Line object identifier
|
|
43
|
+
*
|
|
44
|
+
* @name cac:DocumentReference
|
|
45
|
+
*
|
|
46
|
+
* @cardinality 0..1
|
|
47
|
+
*/
|
|
48
|
+
documentReference: Schema.optional(
|
|
49
|
+
Schema.Array(
|
|
50
|
+
PeppolIdentifier.pipe(
|
|
51
|
+
Schema.fieldsAssign({
|
|
52
|
+
/**
|
|
53
|
+
* @default 130
|
|
54
|
+
*
|
|
55
|
+
* @name cbc:DocumentTypeCode
|
|
56
|
+
*/
|
|
57
|
+
documentTypeCode: Schema.String.pipe(Schema.withDecodingDefaultType(Effect.succeed('130'))),
|
|
58
|
+
})
|
|
59
|
+
)
|
|
60
|
+
)
|
|
61
|
+
),
|
|
62
|
+
/**
|
|
63
|
+
* @description A unique identifier for the individual line within the Invoice.
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* 12;
|
|
67
|
+
*
|
|
68
|
+
* @summary Invoice line identifier
|
|
69
|
+
*
|
|
70
|
+
* @name cbc:ID
|
|
71
|
+
*
|
|
72
|
+
* @cardinality 1..1
|
|
73
|
+
*/
|
|
74
|
+
id: Schema.String,
|
|
75
|
+
/**
|
|
76
|
+
* @description A group of business terms providing information about the period relevant for the Invoice line.
|
|
77
|
+
*
|
|
78
|
+
* @summary Invoice line period
|
|
79
|
+
*
|
|
80
|
+
* @name cac:InvoicePeriod
|
|
81
|
+
*
|
|
82
|
+
* @cardinality 0..1
|
|
83
|
+
*/
|
|
84
|
+
invoicePeriod: Schema.optional(PeppolInvoiceLinePeriod),
|
|
85
|
+
/**
|
|
86
|
+
* @description A group of business terms providing information about the goods and services invoiced.
|
|
87
|
+
*
|
|
88
|
+
* @summary Item information
|
|
89
|
+
*
|
|
90
|
+
* @name cac:Item
|
|
91
|
+
*
|
|
92
|
+
* @cardinality 1..1
|
|
93
|
+
*/
|
|
94
|
+
item: PeppolLineItem,
|
|
95
|
+
/**
|
|
96
|
+
* @description The total amount of the Invoice line. The amount is “net” without VAT, i.e. inclusive of line level allowances and charges as well as other
|
|
97
|
+
* relevant taxes. Must be rounded to maximum 2 decimals.
|
|
98
|
+
*
|
|
99
|
+
* @example
|
|
100
|
+
* { value: 2145.0, currencyId: "EUR" }
|
|
101
|
+
*
|
|
102
|
+
* @summary Invoice line net amount
|
|
103
|
+
*
|
|
104
|
+
* @name cbc:LineExtensionAmount (+ @currencyID)
|
|
105
|
+
*
|
|
106
|
+
* @cardinality 1..1
|
|
107
|
+
*/
|
|
108
|
+
lineExtensionAmount: PeppolAmount,
|
|
109
|
+
/**
|
|
110
|
+
* @description A textual note that gives unstructured information that is relevant to the Invoice line.
|
|
111
|
+
*
|
|
112
|
+
* @example
|
|
113
|
+
* New article number 12345
|
|
114
|
+
*
|
|
115
|
+
* @summary Invoice line note
|
|
116
|
+
*
|
|
117
|
+
* @name cbc:Note
|
|
118
|
+
*
|
|
119
|
+
* @cardinality 0..1
|
|
120
|
+
*/
|
|
121
|
+
note: Schema.optional(Schema.String),
|
|
122
|
+
/**
|
|
123
|
+
* @summary Order line reference
|
|
124
|
+
*
|
|
125
|
+
* @name cac:OrderLineReference
|
|
126
|
+
*
|
|
127
|
+
* @cardinality 0..1
|
|
128
|
+
*/
|
|
129
|
+
orderLineReference: Schema.optional(PeppolOrderLineReference),
|
|
130
|
+
/**
|
|
131
|
+
* @description A group of business terms providing information about the price applied for the goods and services invoices on the Invoice line.
|
|
132
|
+
*
|
|
133
|
+
* @summary Price Details
|
|
134
|
+
*
|
|
135
|
+
* @name cac:Price
|
|
136
|
+
*
|
|
137
|
+
* @cardinality 1..1
|
|
138
|
+
*/
|
|
139
|
+
price: PeppolLinePrice,
|
|
140
|
+
})
|
|
141
|
+
) {}
|
|
@@ -1,22 +1,10 @@
|
|
|
1
1
|
import { Schema } from 'effect';
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { PeppolIsoDateString } from '#/schemas/peppol-iso-date-string';
|
|
4
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
*
|
|
8
|
-
* @name cac:BillingReference
|
|
9
|
-
*/
|
|
10
|
-
export const peppolBillingReferenceSchema = Schema.Struct({
|
|
11
|
-
/**
|
|
12
|
-
* @example
|
|
13
|
-
* inv123;
|
|
14
|
-
*
|
|
15
|
-
* @summary INVOICE DOCUMENT REFERENCE
|
|
16
|
-
*
|
|
17
|
-
* @name `cac:InvoiceDocumentReference`
|
|
18
|
-
*/
|
|
19
|
-
invoiceDocumentReference: Schema.Struct({
|
|
6
|
+
class PeppolInvoiceDocumentReference extends opaque<PeppolInvoiceDocumentReference>()(
|
|
7
|
+
Schema.Struct({
|
|
20
8
|
/**
|
|
21
9
|
* @description The identification of an Invoice that was previously sent by the seller.
|
|
22
10
|
*
|
|
@@ -40,8 +28,25 @@ export const peppolBillingReferenceSchema = Schema.Struct({
|
|
|
40
28
|
*
|
|
41
29
|
* @name `cbc:IssueDate`
|
|
42
30
|
*/
|
|
43
|
-
issueDate: Schema.optional(
|
|
44
|
-
})
|
|
45
|
-
}
|
|
31
|
+
issueDate: Schema.optional(PeppolIsoDateString),
|
|
32
|
+
})
|
|
33
|
+
) {}
|
|
46
34
|
|
|
47
|
-
|
|
35
|
+
/**
|
|
36
|
+
* @summary PRECEDING INVOICE REFERENCE (0..n)
|
|
37
|
+
*
|
|
38
|
+
* @name cac:BillingReference
|
|
39
|
+
*/
|
|
40
|
+
export class PeppolBillingReference extends opaque<PeppolBillingReference>()(
|
|
41
|
+
Schema.Struct({
|
|
42
|
+
/**
|
|
43
|
+
* @example
|
|
44
|
+
* inv123;
|
|
45
|
+
*
|
|
46
|
+
* @summary INVOICE DOCUMENT REFERENCE
|
|
47
|
+
*
|
|
48
|
+
* @name `cac:InvoiceDocumentReference`
|
|
49
|
+
*/
|
|
50
|
+
invoiceDocumentReference: PeppolInvoiceDocumentReference,
|
|
51
|
+
})
|
|
52
|
+
) {}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
4
|
+
import { peppolBase64Schema } from '#/schemas/utils/peppol-base-64-schema';
|
|
5
|
+
import { mimeCodesSchema } from '#/schemas/values/mime-codes-schema';
|
|
6
|
+
|
|
7
|
+
// RFC 4648 §5 — Base64url Encoding: URL/file-safe alphabet (A-Z a-z 0-9 - _), optional `=` padding.
|
|
8
|
+
// Effect port of `z.base64url()`: keeps the value as a plain string and only validates the shape.
|
|
9
|
+
const base64UrlSchema = Schema.String.check(Schema.isPattern(/^[A-Za-z0-9\-_]+={0,2}$/)).annotate({ message: 'Invalid base64url' });
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @summary Binary object for attachments
|
|
13
|
+
*
|
|
14
|
+
* @name cbc:EmbeddedDocumentBinaryObject (+ @mimeCode, @filename)
|
|
15
|
+
*/
|
|
16
|
+
export class PeppolBinaryObject extends opaque<PeppolBinaryObject>()(
|
|
17
|
+
Schema.Struct({
|
|
18
|
+
/**
|
|
19
|
+
* @description An attached document embedded as binary object (Base64) or sent together with the invoice.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* aHR0cHM6Ly90ZXN0LXZlZmEuZGlmaS5uby9wZXBwb2xiaXMvcG9hY2MvYmlsbGluZy8zLjAvYmlzLw==
|
|
23
|
+
*
|
|
24
|
+
* @summary Attached document
|
|
25
|
+
*
|
|
26
|
+
* @name `#text` (Base64 content)
|
|
27
|
+
*/
|
|
28
|
+
content: Schema.Union([peppolBase64Schema, base64UrlSchema]),
|
|
29
|
+
/**
|
|
30
|
+
* @description The mime code of the attached document.
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* text / csv;
|
|
34
|
+
*
|
|
35
|
+
* @summary Attached document Mime code
|
|
36
|
+
*
|
|
37
|
+
* @name `@mimeCode`
|
|
38
|
+
*/
|
|
39
|
+
mimeCode: mimeCodesSchema,
|
|
40
|
+
/**
|
|
41
|
+
* @description The file name of the attached document.
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* Hours - spent.csv;
|
|
45
|
+
*
|
|
46
|
+
* @summary Attached document Filename
|
|
47
|
+
*
|
|
48
|
+
* @name `@filename`
|
|
49
|
+
*/
|
|
50
|
+
filename: Schema.String,
|
|
51
|
+
})
|
|
52
|
+
) {}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
4
|
+
|
|
5
|
+
export class PeppolContact extends opaque<PeppolContact>()(
|
|
6
|
+
Schema.Struct({
|
|
7
|
+
/**
|
|
8
|
+
* @name cbc:ElectronicMail
|
|
9
|
+
*/
|
|
10
|
+
electronicMail: Schema.optional(Schema.String),
|
|
11
|
+
/**
|
|
12
|
+
* @name cbc:Name
|
|
13
|
+
*/
|
|
14
|
+
name: Schema.optional(Schema.String),
|
|
15
|
+
/**
|
|
16
|
+
* @name cbc:Telephone
|
|
17
|
+
*/
|
|
18
|
+
telephone: Schema.optional(Schema.String),
|
|
19
|
+
})
|
|
20
|
+
) {}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { PeppolBaseLine } from '#/schemas/fields/peppol-base-line-schema';
|
|
4
|
+
import { PeppolQuantity } from '#/schemas/fields/peppol-quantity-schema';
|
|
5
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
6
|
+
import { quantityUnitCodesSchema } from '#/schemas/values/quantity-unit-codes-schema';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* @description Credit note line is identical to Invoice line except the quantity element name.
|
|
10
|
+
*/
|
|
11
|
+
export class PeppolCreditNoteLine extends opaque<PeppolCreditNoteLine>()(
|
|
12
|
+
PeppolBaseLine.pipe(
|
|
13
|
+
Schema.fieldsAssign({
|
|
14
|
+
/**
|
|
15
|
+
* @description Invoiced/Credited quantity.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* { value: 40, unitCode: "C62" }
|
|
19
|
+
*
|
|
20
|
+
* @name cbc:CreditedQuantity (+ @unitCode)
|
|
21
|
+
*/
|
|
22
|
+
creditedQuantity: PeppolQuantity.pipe(
|
|
23
|
+
Schema.fieldsAssign({
|
|
24
|
+
/**
|
|
25
|
+
* @description The unit of measure that applies to the invoiced quantity. Codes for unit of packaging from UNECE Recommendation No. 21 can be used in
|
|
26
|
+
* accordance with the descriptions in the "Intro" section of UN/ECE Recommendation 20, Revision 11 (2015): The 2 character alphanumeric
|
|
27
|
+
* code values in UNECE Recommendation 21 shall be used. To avoid duplication with existing code values in UNECE Recommendation No. 20, each
|
|
28
|
+
* code value from UNECE Recommendation 21 shall be prefixed with an “X”, resulting in a 3 alphanumeric code when used as a unit of
|
|
29
|
+
* measure.
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* `C62`;
|
|
33
|
+
*
|
|
34
|
+
* @summary Invoiced quantity unit of measure
|
|
35
|
+
*
|
|
36
|
+
* @see {@link quantityUnitCodes}
|
|
37
|
+
*/
|
|
38
|
+
unitCode: quantityUnitCodesSchema,
|
|
39
|
+
})
|
|
40
|
+
),
|
|
41
|
+
})
|
|
42
|
+
)
|
|
43
|
+
) {}
|
|
44
|
+
export interface PeppolCreditNoteLineEncoded extends Schema.Codec.Encoded<typeof PeppolCreditNoteLine> {}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { PeppolIsoDateString } from '#/schemas/peppol-iso-date-string';
|
|
4
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
5
|
+
import { icdCodesSchema } from '#/schemas/values/icd-codes-schema';
|
|
6
|
+
|
|
7
|
+
import { PeppolAddress } from './peppol-address-schema';
|
|
8
|
+
import { PeppolIdentifier } from './peppol-identifier-schema';
|
|
9
|
+
|
|
10
|
+
class PeppolDeliveryPartyPartyName extends opaque<PeppolDeliveryPartyPartyName>()(
|
|
11
|
+
Schema.Struct({
|
|
12
|
+
/**
|
|
13
|
+
* @description The name of the party to which the goods and services are delivered.
|
|
14
|
+
*
|
|
15
|
+
* @summary Deliver to party name
|
|
16
|
+
*
|
|
17
|
+
* @name `cbc:Name`
|
|
18
|
+
*/
|
|
19
|
+
name: Schema.String,
|
|
20
|
+
})
|
|
21
|
+
) {}
|
|
22
|
+
|
|
23
|
+
class PeppolDeliveryParty extends opaque<PeppolDeliveryParty>()(
|
|
24
|
+
Schema.Struct({
|
|
25
|
+
/**
|
|
26
|
+
* @summary PARTY NAME
|
|
27
|
+
*
|
|
28
|
+
* @name `cac:PartyName`
|
|
29
|
+
*/
|
|
30
|
+
partyName: PeppolDeliveryPartyPartyName,
|
|
31
|
+
})
|
|
32
|
+
) {}
|
|
33
|
+
|
|
34
|
+
class PeppolDeliveryLocation extends opaque<PeppolDeliveryLocation>()(
|
|
35
|
+
Schema.Struct({
|
|
36
|
+
/**
|
|
37
|
+
* @description An identifier for the location at which the goods and services are delivered.
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* `83745498753497`;
|
|
41
|
+
*
|
|
42
|
+
* @summary Deliver to location identifier
|
|
43
|
+
*
|
|
44
|
+
* @name `cbc:ID`
|
|
45
|
+
*/
|
|
46
|
+
id: Schema.optional(
|
|
47
|
+
PeppolIdentifier.pipe(
|
|
48
|
+
Schema.fieldsAssign({
|
|
49
|
+
/**
|
|
50
|
+
* @description An identifier for the location at which the goods and services are delivered.
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* `83745498753497`;
|
|
54
|
+
*
|
|
55
|
+
* @summary Deliver to location identifier
|
|
56
|
+
*
|
|
57
|
+
* @name `#text`
|
|
58
|
+
*/
|
|
59
|
+
id: Schema.String,
|
|
60
|
+
/**
|
|
61
|
+
* @description The identification scheme identifier of the Deliver to location identifier.
|
|
62
|
+
*
|
|
63
|
+
* @summary Deliver to location identifier identification scheme identifier
|
|
64
|
+
*
|
|
65
|
+
* @name `@schemeID`
|
|
66
|
+
*/
|
|
67
|
+
schemeId: Schema.optional(icdCodesSchema),
|
|
68
|
+
})
|
|
69
|
+
)
|
|
70
|
+
),
|
|
71
|
+
/**
|
|
72
|
+
* @description A groupd of business terms providing infomation about the address to which goods and services invoiced were or are delivered.
|
|
73
|
+
*
|
|
74
|
+
* @summary Deliver to address
|
|
75
|
+
*
|
|
76
|
+
* @name `cac:Address`
|
|
77
|
+
*/
|
|
78
|
+
address: Schema.optional(PeppolAddress),
|
|
79
|
+
})
|
|
80
|
+
) {}
|
|
81
|
+
|
|
82
|
+
export class PeppolDelivery extends opaque<PeppolDelivery>()(
|
|
83
|
+
Schema.Struct({
|
|
84
|
+
/**
|
|
85
|
+
* @description Th edate on which the supply of goods or services was made or completed.
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* 2017 - 12 - 01;
|
|
89
|
+
*
|
|
90
|
+
* @summary Actual delivery date
|
|
91
|
+
*
|
|
92
|
+
* @format `YYYY-MM-DD`
|
|
93
|
+
*
|
|
94
|
+
* @name cbc:ActualDeliveryDate
|
|
95
|
+
*/
|
|
96
|
+
actualDeliveryDate: Schema.optional(PeppolIsoDateString),
|
|
97
|
+
/**
|
|
98
|
+
* @name `cac:DeliveryLocation`
|
|
99
|
+
*/
|
|
100
|
+
deliveryLocation: Schema.optional(PeppolDeliveryLocation),
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* @summary Delivery party
|
|
104
|
+
*
|
|
105
|
+
* @name `cac:DeliveryParty`
|
|
106
|
+
*/
|
|
107
|
+
deliveryParty: Schema.optional(PeppolDeliveryParty),
|
|
108
|
+
})
|
|
109
|
+
) {}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @summary Identifier with optional scheme
|
|
7
|
+
*
|
|
8
|
+
* @name `cbc:ID (+ optional @schemeID)`
|
|
9
|
+
*/
|
|
10
|
+
export class PeppolIdentifier extends opaque<PeppolIdentifier>()(
|
|
11
|
+
Schema.Struct({
|
|
12
|
+
/**
|
|
13
|
+
* @name cbc:ID
|
|
14
|
+
*/
|
|
15
|
+
id: Schema.String,
|
|
16
|
+
/**
|
|
17
|
+
* @name `@schemeID`
|
|
18
|
+
*/
|
|
19
|
+
schemeId: Schema.optional(Schema.String),
|
|
20
|
+
})
|
|
21
|
+
) {}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { PeppolIsoDateString } from '#/schemas/peppol-iso-date-string';
|
|
4
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
5
|
+
|
|
6
|
+
export class PeppolInvoiceLinePeriod extends opaque<PeppolInvoiceLinePeriod>()(
|
|
7
|
+
Schema.Struct({
|
|
8
|
+
/**
|
|
9
|
+
* @description The date when the Invoice period for this Invoice line ends. Format ="YYYY-MM-DD"
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* `2017-10-31`;
|
|
13
|
+
*
|
|
14
|
+
* @summary Invoice line period end date
|
|
15
|
+
*
|
|
16
|
+
* @format "YYYY-MM-DD"
|
|
17
|
+
*
|
|
18
|
+
* @name `cbc:EndDate`
|
|
19
|
+
*/
|
|
20
|
+
endDate: Schema.optional(PeppolIsoDateString),
|
|
21
|
+
/**
|
|
22
|
+
* @description The date when the Invoice period for this Invoice line starts.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* `2017-10-01`;
|
|
26
|
+
*
|
|
27
|
+
* @summary Invoice line period start date
|
|
28
|
+
*
|
|
29
|
+
* @format "YYYY-MM-DD"
|
|
30
|
+
*
|
|
31
|
+
* @name `cbc:StartDate`
|
|
32
|
+
*/
|
|
33
|
+
startDate: Schema.optional(PeppolIsoDateString),
|
|
34
|
+
})
|
|
35
|
+
) {}
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import { Schema } from 'effect';
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { PeppolBaseLine } from '#/schemas/fields/peppol-base-line-schema';
|
|
4
|
+
import { PeppolQuantity } from '#/schemas/fields/peppol-quantity-schema';
|
|
5
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
6
|
+
import { quantityUnitCodesSchema } from '#/schemas/values/quantity-unit-codes-schema';
|
|
6
7
|
|
|
7
8
|
/**
|
|
8
9
|
* @summary Invoice line
|
|
9
10
|
*
|
|
10
11
|
* @name cac:InvoiceLine
|
|
11
12
|
*/
|
|
12
|
-
export
|
|
13
|
-
Schema.
|
|
13
|
+
export class PeppolInvoiceLine extends opaque<PeppolInvoiceLine>()(
|
|
14
|
+
Schema.Struct({
|
|
15
|
+
...PeppolBaseLine.fields,
|
|
14
16
|
/**
|
|
15
17
|
* @description The quantity of items (goods or services) that is charged in the Invoice line.
|
|
16
18
|
*
|
|
@@ -21,7 +23,7 @@ export const peppolInvoiceLineSchema = peppolBaseLineSchema.pipe(
|
|
|
21
23
|
*
|
|
22
24
|
* @name cbc:InvoicedQuantity (+ @unitCode)
|
|
23
25
|
*/
|
|
24
|
-
invoicedQuantity:
|
|
26
|
+
invoicedQuantity: PeppolQuantity.pipe(
|
|
25
27
|
Schema.fieldsAssign({
|
|
26
28
|
/**
|
|
27
29
|
* @description The unit of measure that applies to the invoiced quantity. Codes for unit of packaging from UNECE Recommendation No. 21 can be used in
|
|
@@ -40,7 +42,5 @@ export const peppolInvoiceLineSchema = peppolBaseLineSchema.pipe(
|
|
|
40
42
|
})
|
|
41
43
|
),
|
|
42
44
|
})
|
|
43
|
-
)
|
|
44
|
-
|
|
45
|
-
export interface PeppolInvoiceLine extends Schema.Schema.Type<typeof peppolInvoiceLineSchema> {}
|
|
46
|
-
export interface PeppolInvoiceLineEncoded extends Schema.Codec.Encoded<typeof peppolInvoiceLineSchema> {}
|
|
45
|
+
) {}
|
|
46
|
+
export interface PeppolInvoiceLineEncoded extends Schema.Codec.Encoded<typeof PeppolInvoiceLine> {}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { PeppolInvoiceLinePeriod } from '#/schemas/fields/peppol-invoice-line-period-schema';
|
|
4
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
5
|
+
import { vatDateCodeSchema } from '#/schemas/values/vat-date-code-schema';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @description A group of business terms providing information on the invoice period. Also called delivery period. If the group is used, the invoiceing period
|
|
9
|
+
* start date and/or end date must be used.
|
|
10
|
+
*
|
|
11
|
+
* @summary DELIVERY OR INVOICE PERIOD
|
|
12
|
+
*
|
|
13
|
+
* @name `cac:InvoicePeriod`
|
|
14
|
+
*/
|
|
15
|
+
export class PeppolInvoicePeriod extends opaque<PeppolInvoicePeriod>()(
|
|
16
|
+
PeppolInvoiceLinePeriod.pipe(
|
|
17
|
+
Schema.fieldsAssign({
|
|
18
|
+
/**
|
|
19
|
+
* @description The code of the date when the VAT becomes acccountable for the Seller and the Buyer.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* `35`;
|
|
23
|
+
*
|
|
24
|
+
* @summary Value added tax point date code
|
|
25
|
+
*
|
|
26
|
+
* @name `cbc:DescriptionCode`
|
|
27
|
+
*/
|
|
28
|
+
descriptionCode: Schema.optional(vatDateCodeSchema),
|
|
29
|
+
})
|
|
30
|
+
)
|
|
31
|
+
) {}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
4
|
+
import { itemClassificationCodesSchema } from '#/schemas/values/item-classification-codes-schema';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @description A code for classifying the item by its type or nature.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* `9873242`;
|
|
11
|
+
*
|
|
12
|
+
* @summary Item classification identifier
|
|
13
|
+
*
|
|
14
|
+
* @name `cbc:ItemClassificationCode`
|
|
15
|
+
*/
|
|
16
|
+
export class PeppolItemClassification extends opaque<PeppolItemClassification>()(
|
|
17
|
+
Schema.Struct({
|
|
18
|
+
/**
|
|
19
|
+
* @description A code for classifying the item by its type or nature.
|
|
20
|
+
*
|
|
21
|
+
* @summary Item classification identifier
|
|
22
|
+
*
|
|
23
|
+
* @name `#text`
|
|
24
|
+
*/
|
|
25
|
+
id: Schema.String,
|
|
26
|
+
/**
|
|
27
|
+
* @description The identification scheme identifier of the item classification identifier.
|
|
28
|
+
*
|
|
29
|
+
* @summary Item classification identifier identification scheme identifier
|
|
30
|
+
*
|
|
31
|
+
* @name `@listID`
|
|
32
|
+
*/
|
|
33
|
+
listId: itemClassificationCodesSchema,
|
|
34
|
+
/**
|
|
35
|
+
* @description The identification scheme version identifier of the Item classification identifier.
|
|
36
|
+
*
|
|
37
|
+
* @remarks
|
|
38
|
+
* Only used with danish.
|
|
39
|
+
*
|
|
40
|
+
* @summary Item classification identifier version identification scheme identifier
|
|
41
|
+
*
|
|
42
|
+
* @name `@listVersionID`
|
|
43
|
+
*/
|
|
44
|
+
listVersionId: Schema.optional(Schema.String),
|
|
45
|
+
})
|
|
46
|
+
) {}
|