@beabee/beabee-common 0.0.2 → 0.20.0-alpha.2
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 +126 -0
- package/dist/cjs/data/callout-component-base-type.cjs +35 -0
- package/dist/cjs/data/callout-component-input-selectable-types.cjs +32 -0
- package/dist/cjs/data/callout-component-input-text-types.cjs +32 -0
- package/dist/cjs/data/callout-component-input-types.cjs +46 -0
- package/dist/cjs/data/callout-component-nestable-types.cjs +33 -0
- package/dist/cjs/data/callout-component-type.cjs +50 -0
- package/dist/cjs/data/callout-component-types.cjs +35 -0
- package/dist/cjs/data/contribution-period.cjs +32 -0
- package/dist/cjs/data/contribution-type.cjs +34 -0
- package/dist/cjs/data/index.cjs +48 -0
- package/dist/cjs/data/item-status.cjs +34 -0
- package/dist/cjs/data/membership-status.cjs +34 -0
- package/dist/cjs/data/newsletter-status.cjs +35 -0
- package/dist/cjs/data/payment-method.cjs +34 -0
- package/dist/cjs/data/payment-status.cjs +34 -0
- package/dist/cjs/error/InvalidRule.cjs +35 -0
- package/dist/cjs/error/index.cjs +22 -0
- package/dist/cjs/index.cjs +30 -0
- package/dist/cjs/search/api-keys.cjs +35 -0
- package/dist/cjs/search/callouts.cjs +131 -0
- package/dist/cjs/search/contacts.cjs +105 -0
- package/dist/cjs/search/index.cjs +32 -0
- package/dist/cjs/search/notices.cjs +61 -0
- package/dist/cjs/search/operators.cjs +89 -0
- package/dist/cjs/search/payments.cjs +51 -0
- package/dist/cjs/types/api-key-filter-name.cjs +16 -0
- package/dist/cjs/types/array-filter-args.cjs +16 -0
- package/dist/cjs/types/base-filter-args.cjs +16 -0
- package/dist/cjs/types/base-validated-rule.cjs +16 -0
- package/dist/cjs/types/callout-component-base-input-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-base-input-selectable-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-base-input-text-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-base-map.cjs +16 -0
- package/dist/cjs/types/callout-component-base-nestable-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-base-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-base-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-content-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-address-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-address-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-checkbox-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-checkbox-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-currency-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-currency-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-date-time-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-date-time-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-email-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-email-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-file-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-file-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-number-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-number-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-phone-number-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-phone-number-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-select-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-select-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-selectable-radio-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-selectable-radio-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-selectable-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-selectable-selectboxes-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-selectable-selectboxes-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-signature-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-signature-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-text-area-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-text-field-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-text-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-text-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-time-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-time-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-input-url-rules.cjs +16 -0
- package/dist/cjs/types/callout-component-input-url-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-map.cjs +16 -0
- package/dist/cjs/types/callout-component-nestable-panel-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-nestable-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-nestable-tabs-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-nestable-well-schema.cjs +16 -0
- package/dist/cjs/types/callout-component-schema.cjs +16 -0
- package/dist/cjs/types/callout-filter-name.cjs +16 -0
- package/dist/cjs/types/callout-form-schema.cjs +16 -0
- package/dist/cjs/types/callout-navigation-schema.cjs +16 -0
- package/dist/cjs/types/callout-response-answer-address.cjs +16 -0
- package/dist/cjs/types/callout-response-answer-file-upload.cjs +16 -0
- package/dist/cjs/types/callout-response-answer.cjs +16 -0
- package/dist/cjs/types/callout-response-answers-nestable.cjs +16 -0
- package/dist/cjs/types/callout-response-answers-slide.cjs +16 -0
- package/dist/cjs/types/callout-response-comment-filter-name.cjs +16 -0
- package/dist/cjs/types/callout-response-filter-name.cjs +16 -0
- package/dist/cjs/types/callout-slide-schema.cjs +16 -0
- package/dist/cjs/types/callout-tag-filter-name.cjs +16 -0
- package/dist/cjs/types/date-unit.cjs +16 -0
- package/dist/cjs/types/duration.cjs +16 -0
- package/dist/cjs/types/enum-filter-args.cjs +16 -0
- package/dist/cjs/types/feeable.cjs +16 -0
- package/dist/cjs/types/filter-args.cjs +16 -0
- package/dist/cjs/types/filter-type.cjs +16 -0
- package/dist/cjs/types/filters.cjs +16 -0
- package/dist/cjs/types/index.cjs +208 -0
- package/dist/cjs/types/notice-filter-name.cjs +16 -0
- package/dist/cjs/types/operators-by-type.cjs +16 -0
- package/dist/cjs/types/other-filter-args.cjs +16 -0
- package/dist/cjs/types/paginated-query.cjs +16 -0
- package/dist/cjs/types/paginated.cjs +16 -0
- package/dist/cjs/types/payment-filter-name.cjs +16 -0
- package/dist/cjs/types/role-type.cjs +16 -0
- package/dist/cjs/types/rule-group.cjs +16 -0
- package/dist/cjs/types/rule-operator.cjs +16 -0
- package/dist/cjs/types/rule-opperator-params.cjs +16 -0
- package/dist/cjs/types/rule-value.cjs +16 -0
- package/dist/cjs/types/rule.cjs +16 -0
- package/dist/cjs/types/stripe-fee-country.cjs +16 -0
- package/dist/cjs/types/text-case.cjs +16 -0
- package/dist/cjs/types/unit-matches.cjs +16 -0
- package/dist/cjs/types/validated-boolean-rule.cjs +16 -0
- package/dist/cjs/types/validated-number-rule.cjs +16 -0
- package/dist/cjs/types/validated-rule-group.cjs +16 -0
- package/dist/cjs/types/validated-rule-value.cjs +16 -0
- package/dist/cjs/types/validated-rule.cjs +16 -0
- package/dist/cjs/types/validated-string-rule.cjs +16 -0
- package/dist/cjs/types/validator-callout-component.cjs +16 -0
- package/dist/cjs/types/validator.cjs +16 -0
- package/dist/cjs/utils/callouts.cjs +175 -0
- package/dist/cjs/utils/conversions.cjs +53 -0
- package/dist/cjs/utils/date.cjs +104 -0
- package/dist/cjs/utils/index.cjs +34 -0
- package/dist/cjs/utils/payments.cjs +53 -0
- package/dist/cjs/utils/rules.cjs +109 -0
- package/dist/cjs/utils/slug.cjs +834 -0
- package/dist/cjs/utils/validations.cjs +177 -0
- package/dist/cjs/validators/callout-component-content.validator.cjs +30 -0
- package/dist/cjs/validators/callout-component-input-address.validator.cjs +36 -0
- package/dist/cjs/validators/callout-component-input-checkbox.validator.cjs +34 -0
- package/dist/cjs/validators/callout-component-input-currency.validator.cjs +35 -0
- package/dist/cjs/validators/callout-component-input-date-time.validator.cjs +38 -0
- package/dist/cjs/validators/callout-component-input-email.validator.cjs +39 -0
- package/dist/cjs/validators/callout-component-input-file.validator.cjs +35 -0
- package/dist/cjs/validators/callout-component-input-number.validator.cjs +38 -0
- package/dist/cjs/validators/callout-component-input-phone-number.validator.cjs +35 -0
- package/dist/cjs/validators/callout-component-input-select.validator.cjs +40 -0
- package/dist/cjs/validators/callout-component-input-selectable.validator.cjs +43 -0
- package/dist/cjs/validators/callout-component-input-signature.validator.cjs +32 -0
- package/dist/cjs/validators/callout-component-input-text.validator.cjs +53 -0
- package/dist/cjs/validators/callout-component-input-time.validator.cjs +36 -0
- package/dist/cjs/validators/callout-component-input-url.validator.cjs +39 -0
- package/dist/cjs/validators/callout-component.validator.cjs +104 -0
- package/dist/cjs/validators/index.cjs +52 -0
- package/dist/esm/data/callout-component-base-type.js +11 -0
- package/dist/esm/data/callout-component-input-selectable-types.js +8 -0
- package/dist/esm/data/callout-component-input-text-types.js +8 -0
- package/dist/esm/data/callout-component-input-types.js +22 -0
- package/dist/esm/data/callout-component-nestable-types.js +9 -0
- package/dist/esm/data/callout-component-type.js +26 -0
- package/dist/esm/data/callout-component-types.js +11 -0
- package/dist/esm/data/contribution-period.js +8 -0
- package/dist/esm/data/contribution-type.js +10 -0
- package/dist/esm/data/index.js +14 -0
- package/dist/esm/data/item-status.js +10 -0
- package/dist/esm/data/membership-status.js +10 -0
- package/dist/esm/data/newsletter-status.js +11 -0
- package/dist/esm/data/payment-method.js +10 -0
- package/dist/esm/data/payment-status.js +10 -0
- package/dist/esm/error/InvalidRule.js +11 -0
- package/dist/esm/error/index.js +1 -0
- package/dist/esm/index.js +5 -3
- package/dist/esm/search/api-keys.js +11 -0
- package/dist/esm/search/callouts.js +104 -0
- package/dist/esm/search/contacts.js +84 -0
- package/dist/esm/search/index.js +6 -0
- package/dist/esm/search/notices.js +37 -0
- package/dist/esm/search/operators.js +62 -0
- package/dist/esm/search/payments.js +27 -0
- package/dist/esm/types/api-key-filter-name.js +0 -0
- package/dist/esm/types/array-filter-args.js +0 -0
- package/dist/esm/types/base-filter-args.js +0 -0
- package/dist/esm/types/base-validated-rule.js +0 -0
- package/dist/esm/types/callout-component-base-input-schema.js +0 -0
- package/dist/esm/types/callout-component-base-input-selectable-schema.js +0 -0
- package/dist/esm/types/callout-component-base-input-text-schema.js +0 -0
- package/dist/esm/types/callout-component-base-map.js +0 -0
- package/dist/esm/types/callout-component-base-nestable-schema.js +0 -0
- package/dist/esm/types/callout-component-base-rules.js +0 -0
- package/dist/esm/types/callout-component-base-schema.js +0 -0
- package/dist/esm/types/callout-component-content-schema.js +0 -0
- package/dist/esm/types/callout-component-input-address-rules.js +0 -0
- package/dist/esm/types/callout-component-input-address-schema.js +0 -0
- package/dist/esm/types/callout-component-input-checkbox-rules.js +0 -0
- package/dist/esm/types/callout-component-input-checkbox-schema.js +0 -0
- package/dist/esm/types/callout-component-input-currency-rules.js +0 -0
- package/dist/esm/types/callout-component-input-currency-schema.js +0 -0
- package/dist/esm/types/callout-component-input-date-time-rules.js +0 -0
- package/dist/esm/types/callout-component-input-date-time-schema.js +0 -0
- package/dist/esm/types/callout-component-input-email-rules.js +0 -0
- package/dist/esm/types/callout-component-input-email-schema.js +0 -0
- package/dist/esm/types/callout-component-input-file-rules.js +0 -0
- package/dist/esm/types/callout-component-input-file-schema.js +0 -0
- package/dist/esm/types/callout-component-input-number-rules.js +0 -0
- package/dist/esm/types/callout-component-input-number-schema.js +0 -0
- package/dist/esm/types/callout-component-input-phone-number-rules.js +0 -0
- package/dist/esm/types/callout-component-input-phone-number-schema.js +0 -0
- package/dist/esm/types/callout-component-input-schema.js +0 -0
- package/dist/esm/types/callout-component-input-select-rules.js +0 -0
- package/dist/esm/types/callout-component-input-select-schema.js +0 -0
- package/dist/esm/types/callout-component-input-selectable-radio-rules.js +0 -0
- package/dist/esm/types/callout-component-input-selectable-radio-schema.js +0 -0
- package/dist/esm/types/callout-component-input-selectable-schema.js +0 -0
- package/dist/esm/types/callout-component-input-selectable-selectboxes-rules.js +0 -0
- package/dist/esm/types/callout-component-input-selectable-selectboxes-schema.js +0 -0
- package/dist/esm/types/callout-component-input-signature-rules.js +0 -0
- package/dist/esm/types/callout-component-input-signature-schema.js +0 -0
- package/dist/esm/types/callout-component-input-text-area-schema.js +0 -0
- package/dist/esm/types/callout-component-input-text-field-schema.js +0 -0
- package/dist/esm/types/callout-component-input-text-rules.js +0 -0
- package/dist/esm/types/callout-component-input-text-schema.js +0 -0
- package/dist/esm/types/callout-component-input-time-rules.js +0 -0
- package/dist/esm/types/callout-component-input-time-schema.js +0 -0
- package/dist/esm/types/callout-component-input-url-rules.js +0 -0
- package/dist/esm/types/callout-component-input-url-schema.js +0 -0
- package/dist/esm/types/callout-component-map.js +0 -0
- package/dist/esm/types/callout-component-nestable-panel-schema.js +0 -0
- package/dist/esm/types/callout-component-nestable-schema.js +0 -0
- package/dist/esm/types/callout-component-nestable-tabs-schema.js +0 -0
- package/dist/esm/types/callout-component-nestable-well-schema.js +0 -0
- package/dist/esm/types/callout-component-schema.js +0 -0
- package/dist/esm/types/callout-filter-name.js +0 -0
- package/dist/esm/types/callout-form-schema.js +0 -0
- package/dist/esm/types/callout-navigation-schema.js +0 -0
- package/dist/esm/types/callout-response-answer-address.js +0 -0
- package/dist/esm/types/callout-response-answer-file-upload.js +0 -0
- package/dist/esm/types/callout-response-answer.js +0 -0
- package/dist/esm/types/callout-response-answers-nestable.js +0 -0
- package/dist/esm/types/callout-response-answers-slide.js +0 -0
- package/dist/esm/types/callout-response-comment-filter-name.js +0 -0
- package/dist/esm/types/callout-response-filter-name.js +0 -0
- package/dist/esm/types/callout-slide-schema.js +0 -0
- package/dist/esm/types/callout-tag-filter-name.js +0 -0
- package/dist/esm/types/date-unit.js +0 -0
- package/dist/esm/types/duration.js +0 -0
- package/dist/esm/types/enum-filter-args.js +0 -0
- package/dist/esm/types/feeable.js +0 -0
- package/dist/esm/types/filter-args.js +0 -0
- package/dist/esm/types/filter-type.js +0 -0
- package/dist/esm/types/filters.js +0 -0
- package/dist/esm/types/index.js +94 -0
- package/dist/esm/types/notice-filter-name.js +0 -0
- package/dist/esm/types/operators-by-type.js +0 -0
- package/dist/esm/types/other-filter-args.js +0 -0
- package/dist/esm/types/paginated-query.js +0 -0
- package/dist/esm/types/paginated.js +0 -0
- package/dist/esm/types/payment-filter-name.js +0 -0
- package/dist/esm/types/role-type.js +0 -0
- package/dist/esm/types/rule-group.js +0 -0
- package/dist/esm/types/rule-operator.js +0 -0
- package/dist/esm/types/rule-opperator-params.js +0 -0
- package/dist/esm/types/rule-value.js +0 -0
- package/dist/esm/types/rule.js +0 -0
- package/dist/esm/types/stripe-fee-country.js +0 -0
- package/dist/esm/types/text-case.js +0 -0
- package/dist/esm/types/unit-matches.js +0 -0
- package/dist/esm/types/validated-boolean-rule.js +0 -0
- package/dist/esm/types/validated-number-rule.js +0 -0
- package/dist/esm/types/validated-rule-group.js +0 -0
- package/dist/esm/types/validated-rule-value.js +0 -0
- package/dist/esm/types/validated-rule.js +0 -0
- package/dist/esm/types/validated-string-rule.js +0 -0
- package/dist/esm/types/validator-callout-component.js +0 -0
- package/dist/esm/types/validator.js +0 -0
- package/dist/esm/utils/callouts.js +149 -0
- package/dist/esm/utils/conversions.js +28 -0
- package/dist/esm/utils/date.js +84 -0
- package/dist/esm/utils/index.js +7 -0
- package/dist/esm/utils/payments.js +29 -0
- package/dist/esm/utils/rules.js +80 -0
- package/dist/esm/utils/slug.js +810 -0
- package/dist/esm/utils/validations.js +138 -0
- package/dist/esm/validators/callout-component-content.validator.js +6 -0
- package/dist/esm/validators/callout-component-input-address.validator.js +11 -0
- package/dist/esm/validators/callout-component-input-checkbox.validator.js +9 -0
- package/dist/esm/validators/callout-component-input-currency.validator.js +10 -0
- package/dist/esm/validators/callout-component-input-date-time.validator.js +13 -0
- package/dist/esm/validators/callout-component-input-email.validator.js +14 -0
- package/dist/esm/validators/callout-component-input-file.validator.js +10 -0
- package/dist/esm/validators/callout-component-input-number.validator.js +13 -0
- package/dist/esm/validators/callout-component-input-phone-number.validator.js +10 -0
- package/dist/esm/validators/callout-component-input-select.validator.js +15 -0
- package/dist/esm/validators/callout-component-input-selectable.validator.js +18 -0
- package/dist/esm/validators/callout-component-input-signature.validator.js +8 -0
- package/dist/esm/validators/callout-component-input-text.validator.js +28 -0
- package/dist/esm/validators/callout-component-input-time.validator.js +11 -0
- package/dist/esm/validators/callout-component-input-url.validator.js +14 -0
- package/dist/esm/validators/callout-component.validator.js +79 -0
- package/dist/esm/validators/index.js +16 -0
- package/dist/types/data/callout-component-base-type.d.ts +8 -0
- package/dist/types/data/callout-component-input-selectable-types.d.ts +3 -0
- package/dist/types/data/callout-component-input-text-types.d.ts +3 -0
- package/dist/types/data/callout-component-input-types.d.ts +3 -0
- package/dist/types/data/callout-component-nestable-types.d.ts +3 -0
- package/dist/types/data/callout-component-type.d.ts +23 -0
- package/dist/types/data/callout-component-types.d.ts +3 -0
- package/dist/types/data/contribution-period.d.ts +4 -0
- package/dist/types/data/contribution-type.d.ts +6 -0
- package/dist/types/data/index.d.ts +14 -0
- package/dist/types/data/item-status.d.ts +6 -0
- package/dist/types/data/membership-status.d.ts +6 -0
- package/dist/types/data/newsletter-status.d.ts +7 -0
- package/dist/types/data/payment-method.d.ts +6 -0
- package/dist/types/data/payment-status.d.ts +6 -0
- package/dist/types/error/InvalidRule.d.ts +6 -0
- package/dist/types/error/index.d.ts +1 -0
- package/dist/types/index.d.cts +1 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/search/api-keys.d.ts +8 -0
- package/dist/types/search/callouts.d.ts +93 -0
- package/dist/types/search/contacts.d.ts +66 -0
- package/dist/types/search/index.d.ts +6 -0
- package/dist/types/search/notices.d.ts +29 -0
- package/dist/types/search/operators.d.ts +128 -0
- package/dist/types/search/payments.d.ts +19 -0
- package/dist/types/types/api-key-filter-name.d.ts +2 -0
- package/dist/types/types/array-filter-args.d.ts +5 -0
- package/dist/types/types/base-filter-args.d.ts +5 -0
- package/dist/types/types/base-validated-rule.d.ts +9 -0
- package/dist/types/types/callout-component-base-input-schema.d.ts +9 -0
- package/dist/types/types/callout-component-base-input-selectable-schema.d.ts +11 -0
- package/dist/types/types/callout-component-base-input-text-schema.d.ts +12 -0
- package/dist/types/types/callout-component-base-map.d.ts +16 -0
- package/dist/types/types/callout-component-base-nestable-schema.d.ts +7 -0
- package/dist/types/types/callout-component-base-rules.d.ts +6 -0
- package/dist/types/types/callout-component-base-schema.d.ts +22 -0
- package/dist/types/types/callout-component-content-schema.d.ts +5 -0
- package/dist/types/types/callout-component-input-address-rules.d.ts +2 -0
- package/dist/types/types/callout-component-input-address-schema.d.ts +7 -0
- package/dist/types/types/callout-component-input-checkbox-rules.d.ts +2 -0
- package/dist/types/types/callout-component-input-checkbox-schema.d.ts +11 -0
- package/dist/types/types/callout-component-input-currency-rules.d.ts +2 -0
- package/dist/types/types/callout-component-input-currency-schema.d.ts +17 -0
- package/dist/types/types/callout-component-input-date-time-rules.d.ts +2 -0
- package/dist/types/types/callout-component-input-date-time-schema.d.ts +39 -0
- package/dist/types/types/callout-component-input-email-rules.d.ts +9 -0
- package/dist/types/types/callout-component-input-email-schema.d.ts +11 -0
- package/dist/types/types/callout-component-input-file-rules.d.ts +2 -0
- package/dist/types/types/callout-component-input-file-schema.d.ts +19 -0
- package/dist/types/types/callout-component-input-number-rules.d.ts +9 -0
- package/dist/types/types/callout-component-input-number-schema.d.ts +17 -0
- package/dist/types/types/callout-component-input-phone-number-rules.d.ts +2 -0
- package/dist/types/types/callout-component-input-phone-number-schema.d.ts +7 -0
- package/dist/types/types/callout-component-input-schema.d.ts +3 -0
- package/dist/types/types/callout-component-input-select-rules.d.ts +2 -0
- package/dist/types/types/callout-component-input-select-schema.d.ts +15 -0
- package/dist/types/types/callout-component-input-selectable-radio-rules.d.ts +2 -0
- package/dist/types/types/callout-component-input-selectable-radio-schema.d.ts +6 -0
- package/dist/types/types/callout-component-input-selectable-schema.d.ts +3 -0
- package/dist/types/types/callout-component-input-selectable-selectboxes-rules.d.ts +2 -0
- package/dist/types/types/callout-component-input-selectable-selectboxes-schema.d.ts +6 -0
- package/dist/types/types/callout-component-input-signature-rules.d.ts +2 -0
- package/dist/types/types/callout-component-input-signature-schema.d.ts +7 -0
- package/dist/types/types/callout-component-input-text-area-schema.d.ts +5 -0
- package/dist/types/types/callout-component-input-text-field-schema.d.ts +5 -0
- package/dist/types/types/callout-component-input-text-rules.d.ts +13 -0
- package/dist/types/types/callout-component-input-text-schema.d.ts +3 -0
- package/dist/types/types/callout-component-input-time-rules.d.ts +2 -0
- package/dist/types/types/callout-component-input-time-schema.d.ts +9 -0
- package/dist/types/types/callout-component-input-url-rules.d.ts +9 -0
- package/dist/types/types/callout-component-input-url-schema.d.ts +11 -0
- package/dist/types/types/callout-component-map.d.ts +31 -0
- package/dist/types/types/callout-component-nestable-panel-schema.d.ts +5 -0
- package/dist/types/types/callout-component-nestable-schema.d.ts +2 -0
- package/dist/types/types/callout-component-nestable-tabs-schema.d.ts +5 -0
- package/dist/types/types/callout-component-nestable-well-schema.d.ts +5 -0
- package/dist/types/types/callout-component-schema.d.ts +3 -0
- package/dist/types/types/callout-filter-name.d.ts +2 -0
- package/dist/types/types/callout-form-schema.d.ts +4 -0
- package/dist/types/types/callout-navigation-schema.d.ts +6 -0
- package/dist/types/types/callout-response-answer-address.d.ts +9 -0
- package/dist/types/types/callout-response-answer-file-upload.d.ts +3 -0
- package/dist/types/types/callout-response-answer.d.ts +2 -0
- package/dist/types/types/callout-response-answers-nestable.d.ts +5 -0
- package/dist/types/types/callout-response-answers-slide.d.ts +5 -0
- package/dist/types/types/callout-response-comment-filter-name.d.ts +2 -0
- package/dist/types/types/callout-response-filter-name.d.ts +2 -0
- package/dist/types/types/callout-slide-schema.d.ts +7 -0
- package/dist/types/types/callout-tag-filter-name.d.ts +2 -0
- package/dist/types/types/date-unit.d.ts +2 -0
- package/dist/types/types/duration.d.ts +1 -0
- package/dist/types/types/enum-filter-args.d.ts +5 -0
- package/dist/types/types/feeable.d.ts +6 -0
- package/dist/types/types/filter-args.d.ts +2 -0
- package/dist/types/types/filter-type.d.ts +1 -0
- package/dist/types/types/filters.d.ts +2 -0
- package/dist/types/types/index.d.ts +94 -0
- package/dist/types/types/notice-filter-name.d.ts +2 -0
- package/dist/types/types/operators-by-type.d.ts +2 -0
- package/dist/types/types/other-filter-args.d.ts +4 -0
- package/dist/types/types/paginated-query.d.ts +8 -0
- package/dist/types/types/paginated.d.ts +6 -0
- package/dist/types/types/payment-filter-name.d.ts +2 -0
- package/dist/types/types/role-type.d.ts +2 -0
- package/dist/types/types/rule-group.d.ts +5 -0
- package/dist/types/types/rule-operator.d.ts +2 -0
- package/dist/types/types/rule-opperator-params.d.ts +3 -0
- package/dist/types/types/rule-value.d.ts +1 -0
- package/dist/types/types/rule.d.ts +6 -0
- package/dist/types/types/stripe-fee-country.d.ts +1 -0
- package/dist/types/types/text-case.d.ts +1 -0
- package/dist/types/types/unit-matches.d.ts +2 -0
- package/dist/types/types/validated-boolean-rule.d.ts +2 -0
- package/dist/types/types/validated-number-rule.d.ts +2 -0
- package/dist/types/types/validated-rule-group.d.ts +5 -0
- package/dist/types/types/validated-rule-value.d.ts +2 -0
- package/dist/types/types/validated-rule.d.ts +2 -0
- package/dist/types/types/validated-string-rule.d.ts +2 -0
- package/dist/types/types/validator-callout-component.d.ts +2 -0
- package/dist/types/types/validator.d.ts +1 -0
- package/dist/types/utils/callouts.d.ts +30 -0
- package/dist/types/utils/conversions.d.ts +14 -0
- package/dist/types/utils/date.d.ts +8 -0
- package/dist/types/utils/index.d.ts +7 -0
- package/dist/types/utils/payments.d.ts +2 -0
- package/dist/types/utils/rules.d.ts +4 -0
- package/dist/types/utils/slug.d.ts +16 -0
- package/dist/types/utils/validations.d.ts +90 -0
- package/dist/types/validators/callout-component-content.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-address.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-checkbox.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-currency.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-date-time.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-email.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-file.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-number.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-phone-number.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-select.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-selectable.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-signature.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-text.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-time.validator.d.ts +2 -0
- package/dist/types/validators/callout-component-input-url.validator.d.ts +2 -0
- package/dist/types/validators/callout-component.validator.d.ts +3 -0
- package/dist/types/validators/index.d.ts +16 -0
- package/package.json +39 -9
- package/dist/cjs/index.d.ts +0 -1
- package/dist/cjs/index.js +0 -7
- package/dist/esm/index.d.ts +0 -1
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import {
|
|
2
|
+
add,
|
|
3
|
+
isValid,
|
|
4
|
+
parseISO,
|
|
5
|
+
startOfDay,
|
|
6
|
+
startOfHour,
|
|
7
|
+
startOfMinute,
|
|
8
|
+
startOfMonth,
|
|
9
|
+
startOfSecond,
|
|
10
|
+
startOfYear
|
|
11
|
+
} from "date-fns";
|
|
12
|
+
const dateUnits = ["s", "m", "h", "d", "M", "y"];
|
|
13
|
+
const dateUnitMap = {
|
|
14
|
+
y: "years",
|
|
15
|
+
M: "months",
|
|
16
|
+
d: "days",
|
|
17
|
+
h: "hours",
|
|
18
|
+
m: "minutes",
|
|
19
|
+
s: "seconds"
|
|
20
|
+
};
|
|
21
|
+
const startOf = {
|
|
22
|
+
y: startOfYear,
|
|
23
|
+
M: startOfMonth,
|
|
24
|
+
d: startOfDay,
|
|
25
|
+
h: startOfHour,
|
|
26
|
+
m: startOfMinute,
|
|
27
|
+
s: startOfSecond
|
|
28
|
+
};
|
|
29
|
+
const relativeDate = /^\$now(?<units>\(((y|M|d|h|m|s):(-?\d+),?)+\))?$/;
|
|
30
|
+
const relativeUnit = /(y|M|d|h|m|s):(-?\d+)/g;
|
|
31
|
+
const absoluteDate = /^(?<y>\d{4,})(-(?<M>\d\d)(-(?<d>\d\d)([T ](?<h>\d\d)(:(?<m>\d\d)(:(?<s>\d\d))?)?)?)?)?/;
|
|
32
|
+
function parseDate(value, now = /* @__PURE__ */ new Date()) {
|
|
33
|
+
let date;
|
|
34
|
+
let units;
|
|
35
|
+
const relativeMatch = relativeDate.exec(value);
|
|
36
|
+
if (relativeMatch) {
|
|
37
|
+
date = now;
|
|
38
|
+
const unitsGroup = relativeMatch.groups?.units;
|
|
39
|
+
if (unitsGroup) {
|
|
40
|
+
const unitMatches = unitsGroup.matchAll(relativeUnit);
|
|
41
|
+
units = [];
|
|
42
|
+
for (const [_, unit, delta] of unitMatches) {
|
|
43
|
+
date = add(date, { [dateUnitMap[unit]]: Number(delta) });
|
|
44
|
+
units.push(unit);
|
|
45
|
+
}
|
|
46
|
+
} else {
|
|
47
|
+
units = ["d"];
|
|
48
|
+
}
|
|
49
|
+
} else {
|
|
50
|
+
date = parseISO(value);
|
|
51
|
+
units = Object.entries(absoluteDate.exec(value)?.groups || {}).filter(([_, n]) => !!n).map(([unit]) => unit);
|
|
52
|
+
}
|
|
53
|
+
const minUnit = getMinDateUnit(units) || "s";
|
|
54
|
+
return [startOf[minUnit](date), minUnit];
|
|
55
|
+
}
|
|
56
|
+
function getMinDateUnit(units) {
|
|
57
|
+
return dateUnits.find((unit) => units.includes(unit));
|
|
58
|
+
}
|
|
59
|
+
function isValidDate(s) {
|
|
60
|
+
if (typeof s === "string") {
|
|
61
|
+
return relativeDate.test(s) || isValid(parseISO(s));
|
|
62
|
+
}
|
|
63
|
+
return isValid(s);
|
|
64
|
+
}
|
|
65
|
+
function isDateBetween(date, start, end) {
|
|
66
|
+
let valid = isValidDate(date);
|
|
67
|
+
if (start) {
|
|
68
|
+
start = typeof start === "string" ? parseISO(start) : start;
|
|
69
|
+
valid = valid && date >= start;
|
|
70
|
+
}
|
|
71
|
+
if (end) {
|
|
72
|
+
end = typeof end === "string" ? parseISO(end) : end;
|
|
73
|
+
valid = valid && date <= end;
|
|
74
|
+
}
|
|
75
|
+
return valid;
|
|
76
|
+
}
|
|
77
|
+
export {
|
|
78
|
+
dateUnitMap,
|
|
79
|
+
dateUnits,
|
|
80
|
+
getMinDateUnit,
|
|
81
|
+
isDateBetween,
|
|
82
|
+
isValidDate,
|
|
83
|
+
parseDate
|
|
84
|
+
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { ContributionPeriod, PaymentMethod } from "../data/index.js";
|
|
2
|
+
const stripeFees = {
|
|
3
|
+
gb: {
|
|
4
|
+
[PaymentMethod.StripeCard]: (amount) => 0.2 + 0.015 * amount,
|
|
5
|
+
[PaymentMethod.StripeSEPA]: () => 0.3,
|
|
6
|
+
[PaymentMethod.StripeBACS]: (amount) => Math.min(2, Math.max(0.2, 0.01 * amount))
|
|
7
|
+
},
|
|
8
|
+
eu: {
|
|
9
|
+
[PaymentMethod.StripeCard]: (amount) => 0.25 + 0.015 * amount,
|
|
10
|
+
[PaymentMethod.StripeSEPA]: () => 0.35,
|
|
11
|
+
[PaymentMethod.StripeBACS]: () => 0
|
|
12
|
+
// Not available
|
|
13
|
+
},
|
|
14
|
+
ca: {
|
|
15
|
+
[PaymentMethod.StripeCard]: (amount) => 0.3 + 0.029 * amount,
|
|
16
|
+
[PaymentMethod.StripeSEPA]: () => 0,
|
|
17
|
+
// Not available
|
|
18
|
+
[PaymentMethod.StripeBACS]: () => 0
|
|
19
|
+
// Not available
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
const gcFee = (amount) => 0.2 + amount * 0.01;
|
|
23
|
+
function calcPaymentFee(feeable, country) {
|
|
24
|
+
const feeFn = feeable.paymentMethod === PaymentMethod.GoCardlessDirectDebit ? gcFee : stripeFees[country][feeable.paymentMethod];
|
|
25
|
+
return feeable.period === ContributionPeriod.Annually ? 0 : feeFn(feeable.amount);
|
|
26
|
+
}
|
|
27
|
+
export {
|
|
28
|
+
calcPaymentFee
|
|
29
|
+
};
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { InvalidRule } from "../error/index.js";
|
|
2
|
+
import { nullableOperators, operatorsByTypeMap } from "../search/index.js";
|
|
3
|
+
import { isValidDate } from "./date.js";
|
|
4
|
+
function isRuleGroup(ruleOrGroup) {
|
|
5
|
+
return "condition" in ruleOrGroup;
|
|
6
|
+
}
|
|
7
|
+
function validateRule(filters, rule) {
|
|
8
|
+
const filter = filters[rule.field];
|
|
9
|
+
if (!filter) {
|
|
10
|
+
throw new InvalidRule(rule, `Invalid field: ${rule.field}`);
|
|
11
|
+
}
|
|
12
|
+
let expectedArgs = 0;
|
|
13
|
+
if (rule.operator in nullableOperators) {
|
|
14
|
+
if (!filter.nullable && filter.type !== "text") {
|
|
15
|
+
throw new InvalidRule(
|
|
16
|
+
rule,
|
|
17
|
+
`Invalid nullable operator: field is not nullable`
|
|
18
|
+
);
|
|
19
|
+
}
|
|
20
|
+
} else {
|
|
21
|
+
const operator = operatorsByTypeMap[filter.type][rule.operator];
|
|
22
|
+
if (!operator) {
|
|
23
|
+
throw new InvalidRule(
|
|
24
|
+
rule,
|
|
25
|
+
`Invalid operator for type: ${filter.type} type doesn't define ${rule.operator}`
|
|
26
|
+
);
|
|
27
|
+
}
|
|
28
|
+
expectedArgs = operator.args;
|
|
29
|
+
}
|
|
30
|
+
if (expectedArgs !== rule.value.length) {
|
|
31
|
+
throw new InvalidRule(
|
|
32
|
+
rule,
|
|
33
|
+
`Invalid operator argument count: ${rule.operator} needs ${expectedArgs}, ${rule.value.length} given`
|
|
34
|
+
);
|
|
35
|
+
}
|
|
36
|
+
const expectedType = filter.type === "boolean" || filter.type === "number" ? filter.type : "string";
|
|
37
|
+
if (rule.value.some((v) => typeof v !== expectedType)) {
|
|
38
|
+
throw new InvalidRule(
|
|
39
|
+
rule,
|
|
40
|
+
`Invalid operator argument type: ${rule.operator} needs ${expectedType}, ${rule.value.map(
|
|
41
|
+
(v) => typeof v
|
|
42
|
+
)} given`
|
|
43
|
+
);
|
|
44
|
+
}
|
|
45
|
+
if (filter.type === "date" && rule.value.some((v) => !isValidDate(v))) {
|
|
46
|
+
throw new InvalidRule(
|
|
47
|
+
rule,
|
|
48
|
+
`Invalid operator argument: date type needs valid absolute or relative date, ${rule.value} given`
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
if ((filter.type === "enum" || filter.type === "array") && rule.value.some((v) => filter.options?.indexOf(v) === -1)) {
|
|
52
|
+
throw new InvalidRule(
|
|
53
|
+
rule,
|
|
54
|
+
`Invalid operator argument: ${filter.type} type expected ${filter.options}, ${rule.value} given`
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
return {
|
|
58
|
+
field: rule.field,
|
|
59
|
+
type: filter.type,
|
|
60
|
+
nullable: !!filter.nullable,
|
|
61
|
+
operator: rule.operator,
|
|
62
|
+
value: rule.value
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
function validateRuleGroup(filters, ruleGroup) {
|
|
66
|
+
const validatedRuleGroup = {
|
|
67
|
+
condition: ruleGroup.condition,
|
|
68
|
+
rules: []
|
|
69
|
+
};
|
|
70
|
+
for (const rule of ruleGroup.rules) {
|
|
71
|
+
const valid = isRuleGroup(rule) ? validateRuleGroup(filters, rule) : validateRule(filters, rule);
|
|
72
|
+
validatedRuleGroup.rules.push(valid);
|
|
73
|
+
}
|
|
74
|
+
return validatedRuleGroup;
|
|
75
|
+
}
|
|
76
|
+
export {
|
|
77
|
+
isRuleGroup,
|
|
78
|
+
validateRule,
|
|
79
|
+
validateRuleGroup
|
|
80
|
+
};
|