@go-mondo/identity-sdk 0.0.2-beta.9 → 0.0.2-beta.91
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/.github/workflows/release.yaml +1 -1
- package/.release-please-manifest.json +1 -1
- package/.tsbuildinfo/cjs.json +1 -1
- package/.tsbuildinfo/esm.json +1 -1
- package/CHANGELOG.md +575 -0
- package/README.md +384 -2
- package/dist/cjs/action/schema/base.d.ts +21 -21
- package/dist/cjs/action/schema/base.d.ts.map +1 -1
- package/dist/cjs/action/schema/base.js +48 -10
- package/dist/cjs/action/schema/base.test.js +50 -35
- package/dist/cjs/action/schema/operations/sign-up-verification.d.ts +21 -21
- package/dist/cjs/action/schema/operations/sign-up-verification.d.ts.map +1 -1
- package/dist/cjs/action/schema/operations/sign-up-verification.js +41 -7
- package/dist/cjs/action/schema/operations/sign-up-verification.test.js +28 -29
- package/dist/cjs/action/schema/operations/sign-up.d.ts +40 -43
- package/dist/cjs/action/schema/operations/sign-up.d.ts.map +1 -1
- package/dist/cjs/action/schema/operations/sign-up.js +57 -15
- package/dist/cjs/action/schema/operations/sign-up.test.js +33 -34
- package/dist/cjs/action/schema/operations/user-attribute-verification.d.ts +19 -19
- package/dist/cjs/action/schema/operations/user-attribute-verification.d.ts.map +1 -1
- package/dist/cjs/action/schema/operations/user-attribute-verification.js +39 -5
- package/dist/cjs/action/schema/operations/user-attribute-verification.test.js +25 -26
- package/dist/cjs/action/schema/schema.d.ts +49 -77
- package/dist/cjs/action/schema/schema.d.ts.map +1 -1
- package/dist/cjs/action/schema/schema.js +7 -5
- package/dist/cjs/action/schema/schema.test.js +31 -58
- package/dist/cjs/activity/resources.d.ts +3 -3
- package/dist/cjs/activity/resources.d.ts.map +1 -1
- package/dist/cjs/activity/resources.js +2 -2
- package/dist/cjs/activity/resources.test.js +14 -13
- package/dist/cjs/activity/schema/base.d.ts +88 -69
- package/dist/cjs/activity/schema/base.d.ts.map +1 -1
- package/dist/cjs/activity/schema/base.js +71 -26
- package/dist/cjs/activity/schema/base.test.js +85 -55
- package/dist/cjs/activity/schema/schema.d.ts +293 -226
- package/dist/cjs/activity/schema/schema.d.ts.map +1 -1
- package/dist/cjs/activity/schema/schema.test.js +47 -48
- package/dist/cjs/activity/schema/types/authentication.d.ts +64 -46
- package/dist/cjs/activity/schema/types/authentication.d.ts.map +1 -1
- package/dist/cjs/activity/schema/types/authentication.js +49 -7
- package/dist/cjs/activity/schema/types/authentication.test.js +37 -38
- package/dist/cjs/activity/schema/types/authorization.d.ts +64 -46
- package/dist/cjs/activity/schema/types/authorization.d.ts.map +1 -1
- package/dist/cjs/activity/schema/types/authorization.js +49 -7
- package/dist/cjs/activity/schema/types/authorization.test.js +41 -42
- package/dist/cjs/activity/schema/types/note.d.ts +83 -70
- package/dist/cjs/activity/schema/types/note.d.ts.map +1 -1
- package/dist/cjs/activity/schema/types/note.js +53 -12
- package/dist/cjs/activity/schema/types/note.test.js +48 -49
- package/dist/cjs/activity/schema/types/operation.d.ts +64 -45
- package/dist/cjs/activity/schema/types/operation.d.ts.map +1 -1
- package/dist/cjs/activity/schema/types/operation.js +52 -8
- package/dist/cjs/activity/schema/types/operation.test.js +34 -35
- package/dist/cjs/activity/schema/types/unknown.d.ts +50 -41
- package/dist/cjs/activity/schema/types/unknown.d.ts.map +1 -1
- package/dist/cjs/activity/schema/types/unknown.js +45 -6
- package/dist/cjs/activity/schema/types/unknown.test.js +29 -30
- package/dist/cjs/app/authorization/resources.d.ts +4 -4
- package/dist/cjs/app/authorization/resources.d.ts.map +1 -1
- package/dist/cjs/app/authorization/resources.js +2 -6
- package/dist/cjs/app/authorization/schema.d.ts +90 -52
- package/dist/cjs/app/authorization/schema.d.ts.map +1 -1
- package/dist/cjs/app/authorization/schema.js +90 -65
- package/dist/cjs/app/authorization/schema.test.js +155 -74
- package/dist/cjs/app/oauth/resources.d.ts +4 -4
- package/dist/cjs/app/oauth/resources.d.ts.map +1 -1
- package/dist/cjs/app/oauth/resources.js +2 -3
- package/dist/cjs/app/oauth/schema.d.ts +34 -41
- package/dist/cjs/app/oauth/schema.d.ts.map +1 -1
- package/dist/cjs/app/oauth/schema.js +56 -17
- package/dist/cjs/app/oauth/schema.test.js +39 -40
- package/dist/cjs/app/oidc/resources.d.ts +6 -6
- package/dist/cjs/app/oidc/resources.d.ts.map +1 -1
- package/dist/cjs/app/oidc/resources.js +4 -5
- package/dist/cjs/app/oidc/schema.d.ts +26 -37
- package/dist/cjs/app/oidc/schema.d.ts.map +1 -1
- package/dist/cjs/app/oidc/schema.js +50 -13
- package/dist/cjs/app/oidc/schema.test.js +46 -27
- package/dist/cjs/app/registration/resources.d.ts +4 -4
- package/dist/cjs/app/registration/resources.d.ts.map +1 -1
- package/dist/cjs/app/registration/resources.js +2 -3
- package/dist/cjs/app/registration/resources.test.js +14 -13
- package/dist/cjs/app/registration/schema.d.ts +24 -31
- package/dist/cjs/app/registration/schema.d.ts.map +1 -1
- package/dist/cjs/app/registration/schema.js +56 -16
- package/dist/cjs/app/registration/schema.test.js +68 -150
- package/dist/cjs/app/resources.d.ts +7 -7
- package/dist/cjs/app/resources.d.ts.map +1 -1
- package/dist/cjs/app/resources.js +6 -6
- package/dist/cjs/app/resources.test.js +14 -13
- package/dist/cjs/app/saml/resources.d.ts +6 -6
- package/dist/cjs/app/saml/resources.d.ts.map +1 -1
- package/dist/cjs/app/saml/resources.js +4 -5
- package/dist/cjs/app/saml/schema.d.ts +26 -37
- package/dist/cjs/app/saml/schema.d.ts.map +1 -1
- package/dist/cjs/app/saml/schema.js +50 -13
- package/dist/cjs/app/schema.d.ts +72 -68
- package/dist/cjs/app/schema.d.ts.map +1 -1
- package/dist/cjs/app/schema.js +76 -35
- package/dist/cjs/app/schema.test.js +128 -42
- package/dist/cjs/association/resources.d.ts +5 -5
- package/dist/cjs/association/resources.d.ts.map +1 -1
- package/dist/cjs/association/resources.js +4 -6
- package/dist/cjs/association/schema.d.ts +270 -182
- package/dist/cjs/association/schema.d.ts.map +1 -1
- package/dist/cjs/association/schema.js +70 -32
- package/dist/cjs/association/schema.test.js +13 -54
- package/dist/cjs/authentication/factors/schema.d.ts +39 -49
- package/dist/cjs/authentication/factors/schema.d.ts.map +1 -1
- package/dist/cjs/authentication/factors/schema.js +59 -20
- package/dist/cjs/authentication/factors/schema.test.js +33 -34
- package/dist/cjs/authentication/index.d.ts +1 -0
- package/dist/cjs/authentication/index.d.ts.map +1 -1
- package/dist/cjs/authentication/index.js +2 -0
- package/dist/cjs/authentication/providers/schema.d.ts +23 -22
- package/dist/cjs/authentication/providers/schema.d.ts.map +1 -1
- package/dist/cjs/authentication/providers/schema.js +44 -9
- package/dist/cjs/authentication/sessions/resources.d.ts +4 -4
- package/dist/cjs/authentication/sessions/resources.d.ts.map +1 -1
- package/dist/cjs/authentication/sessions/resources.js +3 -3
- package/dist/cjs/authentication/sessions/schema.d.ts +96 -74
- package/dist/cjs/authentication/sessions/schema.d.ts.map +1 -1
- package/dist/cjs/authentication/sessions/schema.js +99 -33
- package/dist/cjs/authentication/sessions/schema.test.d.ts +2 -0
- package/dist/cjs/authentication/sessions/schema.test.d.ts.map +1 -0
- package/dist/cjs/authentication/sessions/schema.test.js +65 -0
- package/dist/cjs/authentication/settings/resources.d.ts +4 -4
- package/dist/cjs/authentication/settings/resources.d.ts.map +1 -1
- package/dist/cjs/authentication/settings/resources.js +2 -3
- package/dist/cjs/authentication/settings/schema.d.ts +45 -62
- package/dist/cjs/authentication/settings/schema.d.ts.map +1 -1
- package/dist/cjs/authentication/settings/schema.js +49 -14
- package/dist/cjs/authentication/settings/schema.test.js +409 -22
- package/dist/cjs/authentication/strategies/resources.d.ts +9 -8
- package/dist/cjs/authentication/strategies/resources.d.ts.map +1 -1
- package/dist/cjs/authentication/strategies/resources.js +11 -11
- package/dist/cjs/authentication/strategies/schema/base.d.ts +59 -53
- package/dist/cjs/authentication/strategies/schema/base.d.ts.map +1 -1
- package/dist/cjs/authentication/strategies/schema/base.js +68 -24
- package/dist/cjs/authentication/strategies/schema/schema.d.ts +126 -200
- package/dist/cjs/authentication/strategies/schema/schema.d.ts.map +1 -1
- package/dist/cjs/authentication/strategies/schema/schema.js +39 -6
- package/dist/cjs/authentication/strategies/schema/types/email.d.ts +62 -61
- package/dist/cjs/authentication/strategies/schema/types/email.d.ts.map +1 -1
- package/dist/cjs/authentication/strategies/schema/types/email.js +59 -16
- package/dist/cjs/authentication/strategies/schema/types/email.test.js +49 -49
- package/dist/cjs/authentication/strategies/schema/types/totp.d.ts +108 -95
- package/dist/cjs/authentication/strategies/schema/types/totp.d.ts.map +1 -1
- package/dist/cjs/authentication/strategies/schema/types/totp.js +83 -26
- package/dist/cjs/authorization/permissions/resources.d.ts +7 -7
- package/dist/cjs/authorization/permissions/resources.d.ts.map +1 -1
- package/dist/cjs/authorization/permissions/resources.js +6 -6
- package/dist/cjs/authorization/permissions/schema.d.ts +92 -88
- package/dist/cjs/authorization/permissions/schema.d.ts.map +1 -1
- package/dist/cjs/authorization/permissions/schema.js +78 -37
- package/dist/cjs/authorization/permissions/schema.test.js +54 -62
- package/dist/cjs/authorization/roles/resources.d.ts +7 -7
- package/dist/cjs/authorization/roles/resources.d.ts.map +1 -1
- package/dist/cjs/authorization/roles/resources.js +6 -6
- package/dist/cjs/authorization/roles/schema.d.ts +102 -98
- package/dist/cjs/authorization/roles/schema.d.ts.map +1 -1
- package/dist/cjs/authorization/roles/schema.js +74 -38
- package/dist/cjs/authorization/roles/schema.test.js +55 -62
- package/dist/cjs/authorization/schema.d.ts +7 -6
- package/dist/cjs/authorization/schema.d.ts.map +1 -1
- package/dist/cjs/authorization/schema.js +42 -3
- package/dist/cjs/common/index.d.ts +2 -0
- package/dist/cjs/common/index.d.ts.map +1 -1
- package/dist/cjs/common/resources/authorization.d.ts +18 -1
- package/dist/cjs/common/resources/authorization.d.ts.map +1 -1
- package/dist/cjs/common/resources/authorization.js +6 -0
- package/dist/cjs/common/resources/init.d.ts +28 -11
- package/dist/cjs/common/resources/init.d.ts.map +1 -1
- package/dist/cjs/common/resources/init.js +81 -21
- package/dist/cjs/common/resources/init.test.js +62 -38
- package/dist/cjs/common/resources/operations.d.ts +7 -6
- package/dist/cjs/common/resources/operations.d.ts.map +1 -1
- package/dist/cjs/common/resources/operations.js +44 -21
- package/dist/cjs/common/resources/operations.test.js +47 -17
- package/dist/cjs/common/resources/utils.d.ts +0 -9
- package/dist/cjs/common/resources/utils.d.ts.map +1 -1
- package/dist/cjs/common/resources/utils.js +0 -26
- package/dist/cjs/common/resources/utils.test.js +2 -31
- package/dist/cjs/common/schema/aggregate.d.ts +6 -5
- package/dist/cjs/common/schema/aggregate.d.ts.map +1 -1
- package/dist/cjs/common/schema/aggregate.js +37 -4
- package/dist/cjs/common/schema/aggregate.test.js +21 -22
- package/dist/cjs/common/schema/collection.d.ts +13 -14
- package/dist/cjs/common/schema/collection.d.ts.map +1 -1
- package/dist/cjs/common/schema/collection.js +40 -5
- package/dist/cjs/common/schema/collection.test.js +99 -48
- package/dist/cjs/common/schema/dates.d.ts +43 -26
- package/dist/cjs/common/schema/dates.d.ts.map +1 -1
- package/dist/cjs/common/schema/dates.js +63 -12
- package/dist/cjs/common/schema/dates.test.js +24 -13
- package/dist/cjs/common/schema/id.d.ts +2 -1
- package/dist/cjs/common/schema/id.d.ts.map +1 -1
- package/dist/cjs/common/schema/id.js +35 -2
- package/dist/cjs/common/schema/id.test.js +70 -38
- package/dist/cjs/common/schema/jwt.d.ts +22 -14
- package/dist/cjs/common/schema/jwt.d.ts.map +1 -1
- package/dist/cjs/common/schema/jwt.js +37 -8
- package/dist/cjs/common/schema/jwt.test.js +22 -25
- package/dist/cjs/common/schema/metadata.d.ts +86 -49
- package/dist/cjs/common/schema/metadata.d.ts.map +1 -1
- package/dist/cjs/common/schema/metadata.js +154 -75
- package/dist/cjs/common/schema/metadata.test.js +198 -67
- package/dist/cjs/common/schema/pagination.d.ts +15 -5
- package/dist/cjs/common/schema/pagination.d.ts.map +1 -1
- package/dist/cjs/common/schema/pagination.js +46 -4
- package/dist/cjs/common/schema/pagination.test.js +55 -36
- package/dist/cjs/common/schema/schema.d.ts +4 -4
- package/dist/cjs/common/schema/schema.d.ts.map +1 -1
- package/dist/cjs/common/schema/schema.js +28 -5
- package/dist/cjs/common/schema/schema.test.js +42 -15
- package/dist/cjs/common/schema/sets.d.ts +6 -2
- package/dist/cjs/common/schema/sets.d.ts.map +1 -1
- package/dist/cjs/common/schema/sets.js +50 -7
- package/dist/cjs/common/schema/url.d.ts +21 -0
- package/dist/cjs/common/schema/url.d.ts.map +1 -1
- package/dist/cjs/common/schema/url.js +79 -0
- package/dist/cjs/common/schema/url.test.js +10 -0
- package/dist/cjs/customer/organization/schema.d.ts +59 -46
- package/dist/cjs/customer/organization/schema.d.ts.map +1 -1
- package/dist/cjs/customer/organization/schema.js +76 -26
- package/dist/cjs/customer/schema.d.ts +7 -6
- package/dist/cjs/customer/schema.d.ts.map +1 -1
- package/dist/cjs/customer/schema.js +42 -3
- package/dist/cjs/customer/users/resources.d.ts +7 -7
- package/dist/cjs/customer/users/resources.d.ts.map +1 -1
- package/dist/cjs/customer/users/resources.js +6 -6
- package/dist/cjs/customer/users/schema.d.ts +213 -104
- package/dist/cjs/customer/users/schema.d.ts.map +1 -1
- package/dist/cjs/customer/users/schema.js +141 -56
- package/dist/cjs/customer/users/schema.test.js +591 -60
- package/dist/cjs/customer/users/utils.d.ts +3 -2
- package/dist/cjs/customer/users/utils.d.ts.map +1 -1
- package/dist/cjs/identity/schema.d.ts +5 -1
- package/dist/cjs/identity/schema.d.ts.map +1 -1
- package/dist/cjs/identity/schema.js +38 -2
- package/dist/cjs/identity/schema.test.js +21 -16
- package/dist/cjs/oauth/authorize/schema/grants/authorization-code.d.ts +34 -28
- package/dist/cjs/oauth/authorize/schema/grants/authorization-code.d.ts.map +1 -1
- package/dist/cjs/oauth/authorize/schema/grants/authorization-code.js +93 -38
- package/dist/cjs/oauth/authorize/schema/grants/authorization-code.test.js +47 -48
- package/dist/cjs/oauth/authorize/schema/grants/common.d.ts +6 -0
- package/dist/cjs/oauth/authorize/schema/grants/common.d.ts.map +1 -0
- package/dist/cjs/oauth/authorize/schema/grants/common.js +47 -0
- package/dist/cjs/oauth/authorize/schema/grants/implicit.d.ts +18 -10
- package/dist/cjs/oauth/authorize/schema/grants/implicit.d.ts.map +1 -1
- package/dist/cjs/oauth/authorize/schema/grants/implicit.js +56 -11
- package/dist/cjs/oauth/authorize/schema/schema.d.ts +48 -36
- package/dist/cjs/oauth/authorize/schema/schema.d.ts.map +1 -1
- package/dist/cjs/oauth/authorize/schema/schema.js +4 -2
- package/dist/cjs/oauth/common/schema.d.ts +24 -7
- package/dist/cjs/oauth/common/schema.d.ts.map +1 -1
- package/dist/cjs/oauth/common/schema.js +59 -8
- package/dist/cjs/oauth/common/schema.test.js +22 -30
- package/dist/cjs/oauth/index.d.ts +3 -3
- package/dist/cjs/oauth/index.d.ts.map +1 -1
- package/dist/cjs/oauth/index.js +8 -25
- package/dist/cjs/oauth/token/schema/grants/authorization-code.d.ts +16 -9
- package/dist/cjs/oauth/token/schema/grants/authorization-code.d.ts.map +1 -1
- package/dist/cjs/oauth/token/schema/grants/authorization-code.js +66 -12
- package/dist/cjs/oauth/token/schema/grants/client-credentials.d.ts +16 -17
- package/dist/cjs/oauth/token/schema/grants/client-credentials.d.ts.map +1 -1
- package/dist/cjs/oauth/token/schema/grants/client-credentials.js +53 -16
- package/dist/cjs/oauth/token/schema/grants/common.d.ts +6 -0
- package/dist/cjs/oauth/token/schema/grants/common.d.ts.map +1 -0
- package/dist/cjs/oauth/token/schema/grants/common.js +52 -0
- package/dist/cjs/oauth/token/schema/grants/refresh-token.d.ts +15 -8
- package/dist/cjs/oauth/token/schema/grants/refresh-token.d.ts.map +1 -1
- package/dist/cjs/oauth/token/schema/grants/refresh-token.js +57 -11
- package/dist/cjs/oauth/token/schema/schema.d.ts +48 -21
- package/dist/cjs/oauth/token/schema/schema.d.ts.map +1 -1
- package/dist/cjs/oauth/token/schema/schema.js +79 -2
- package/dist/cjs/oauth/token/schema/schema.test.js +44 -28
- package/dist/cjs/workspace/authorization/schema.d.ts +62 -27
- package/dist/cjs/workspace/authorization/schema.d.ts.map +1 -1
- package/dist/cjs/workspace/authorization/schema.js +58 -13
- package/dist/cjs/workspace/branding/schema.d.ts +47 -37
- package/dist/cjs/workspace/branding/schema.d.ts.map +1 -1
- package/dist/cjs/workspace/branding/schema.js +61 -16
- package/dist/cjs/workspace/membership/schema.d.ts +42 -20
- package/dist/cjs/workspace/membership/schema.d.ts.map +1 -1
- package/dist/cjs/workspace/membership/schema.js +47 -7
- package/dist/cjs/workspace/registration/schema.d.ts +41 -27
- package/dist/cjs/workspace/registration/schema.d.ts.map +1 -1
- package/dist/cjs/workspace/registration/schema.js +63 -14
- package/dist/cjs/workspace/settings/schema.d.ts +20 -19
- package/dist/cjs/workspace/settings/schema.d.ts.map +1 -1
- package/dist/cjs/workspace/settings/schema.js +48 -8
- package/dist/cjs/workspace/settings/schema.test.js +18 -19
- package/dist/cjs/workspace/tenant/schema.d.ts +88 -57
- package/dist/cjs/workspace/tenant/schema.d.ts.map +1 -1
- package/dist/cjs/workspace/tenant/schema.js +59 -13
- package/dist/cjs/workspace/tenant/schema.test.d.ts +2 -0
- package/dist/cjs/workspace/tenant/schema.test.d.ts.map +1 -0
- package/dist/cjs/workspace/tenant/schema.test.js +235 -0
- package/dist/cjs/workspace/user/notifications/schema.d.ts +70 -56
- package/dist/cjs/workspace/user/notifications/schema.d.ts.map +1 -1
- package/dist/cjs/workspace/user/notifications/schema.js +76 -30
- package/dist/cjs/workspace/user/preferences/schema.d.ts +29 -25
- package/dist/cjs/workspace/user/preferences/schema.d.ts.map +1 -1
- package/dist/cjs/workspace/user/preferences/schema.js +57 -12
- package/dist/esm/action/schema/base.d.ts +21 -21
- package/dist/esm/action/schema/base.d.ts.map +1 -1
- package/dist/esm/action/schema/base.js +17 -12
- package/dist/esm/action/schema/base.test.js +51 -36
- package/dist/esm/action/schema/operations/sign-up-verification.d.ts +21 -21
- package/dist/esm/action/schema/operations/sign-up-verification.d.ts.map +1 -1
- package/dist/esm/action/schema/operations/sign-up-verification.js +8 -7
- package/dist/esm/action/schema/operations/sign-up-verification.test.js +28 -29
- package/dist/esm/action/schema/operations/sign-up.d.ts +40 -43
- package/dist/esm/action/schema/operations/sign-up.d.ts.map +1 -1
- package/dist/esm/action/schema/operations/sign-up.js +19 -10
- package/dist/esm/action/schema/operations/sign-up.test.js +33 -34
- package/dist/esm/action/schema/operations/user-attribute-verification.d.ts +19 -19
- package/dist/esm/action/schema/operations/user-attribute-verification.d.ts.map +1 -1
- package/dist/esm/action/schema/operations/user-attribute-verification.js +6 -5
- package/dist/esm/action/schema/operations/user-attribute-verification.test.js +25 -26
- package/dist/esm/action/schema/schema.d.ts +49 -77
- package/dist/esm/action/schema/schema.d.ts.map +1 -1
- package/dist/esm/action/schema/schema.js +7 -5
- package/dist/esm/action/schema/schema.test.js +24 -51
- package/dist/esm/activity/resources.d.ts +3 -3
- package/dist/esm/activity/resources.d.ts.map +1 -1
- package/dist/esm/activity/resources.js +4 -4
- package/dist/esm/activity/resources.test.js +14 -13
- package/dist/esm/activity/schema/base.d.ts +88 -69
- package/dist/esm/activity/schema/base.d.ts.map +1 -1
- package/dist/esm/activity/schema/base.js +38 -26
- package/dist/esm/activity/schema/base.test.js +85 -55
- package/dist/esm/activity/schema/schema.d.ts +293 -226
- package/dist/esm/activity/schema/schema.d.ts.map +1 -1
- package/dist/esm/activity/schema/schema.test.js +47 -48
- package/dist/esm/activity/schema/types/authentication.d.ts +64 -46
- package/dist/esm/activity/schema/types/authentication.d.ts.map +1 -1
- package/dist/esm/activity/schema/types/authentication.js +16 -7
- package/dist/esm/activity/schema/types/authentication.test.js +37 -38
- package/dist/esm/activity/schema/types/authorization.d.ts +64 -46
- package/dist/esm/activity/schema/types/authorization.d.ts.map +1 -1
- package/dist/esm/activity/schema/types/authorization.js +16 -7
- package/dist/esm/activity/schema/types/authorization.test.js +41 -42
- package/dist/esm/activity/schema/types/note.d.ts +83 -70
- package/dist/esm/activity/schema/types/note.d.ts.map +1 -1
- package/dist/esm/activity/schema/types/note.js +20 -12
- package/dist/esm/activity/schema/types/note.test.js +48 -49
- package/dist/esm/activity/schema/types/operation.d.ts +64 -45
- package/dist/esm/activity/schema/types/operation.d.ts.map +1 -1
- package/dist/esm/activity/schema/types/operation.js +19 -8
- package/dist/esm/activity/schema/types/operation.test.js +34 -35
- package/dist/esm/activity/schema/types/unknown.d.ts +50 -41
- package/dist/esm/activity/schema/types/unknown.d.ts.map +1 -1
- package/dist/esm/activity/schema/types/unknown.js +12 -6
- package/dist/esm/activity/schema/types/unknown.test.js +29 -30
- package/dist/esm/app/authorization/resources.d.ts +4 -4
- package/dist/esm/app/authorization/resources.d.ts.map +1 -1
- package/dist/esm/app/authorization/resources.js +3 -7
- package/dist/esm/app/authorization/schema.d.ts +90 -52
- package/dist/esm/app/authorization/schema.d.ts.map +1 -1
- package/dist/esm/app/authorization/schema.js +58 -66
- package/dist/esm/app/authorization/schema.test.js +155 -74
- package/dist/esm/app/oauth/resources.d.ts +4 -4
- package/dist/esm/app/oauth/resources.d.ts.map +1 -1
- package/dist/esm/app/oauth/resources.js +3 -4
- package/dist/esm/app/oauth/schema.d.ts +34 -41
- package/dist/esm/app/oauth/schema.d.ts.map +1 -1
- package/dist/esm/app/oauth/schema.js +25 -19
- package/dist/esm/app/oauth/schema.test.js +39 -40
- package/dist/esm/app/oidc/resources.d.ts +6 -6
- package/dist/esm/app/oidc/resources.d.ts.map +1 -1
- package/dist/esm/app/oidc/resources.js +5 -6
- package/dist/esm/app/oidc/schema.d.ts +26 -37
- package/dist/esm/app/oidc/schema.d.ts.map +1 -1
- package/dist/esm/app/oidc/schema.js +19 -15
- package/dist/esm/app/oidc/schema.test.js +46 -27
- package/dist/esm/app/registration/resources.d.ts +4 -4
- package/dist/esm/app/registration/resources.d.ts.map +1 -1
- package/dist/esm/app/registration/resources.js +3 -4
- package/dist/esm/app/registration/resources.test.js +14 -13
- package/dist/esm/app/registration/schema.d.ts +24 -31
- package/dist/esm/app/registration/schema.d.ts.map +1 -1
- package/dist/esm/app/registration/schema.js +25 -18
- package/dist/esm/app/registration/schema.test.js +68 -150
- package/dist/esm/app/resources.d.ts +7 -7
- package/dist/esm/app/resources.d.ts.map +1 -1
- package/dist/esm/app/resources.js +8 -8
- package/dist/esm/app/resources.test.js +14 -13
- package/dist/esm/app/saml/resources.d.ts +6 -6
- package/dist/esm/app/saml/resources.d.ts.map +1 -1
- package/dist/esm/app/saml/resources.js +5 -6
- package/dist/esm/app/saml/schema.d.ts +26 -37
- package/dist/esm/app/saml/schema.d.ts.map +1 -1
- package/dist/esm/app/saml/schema.js +19 -15
- package/dist/esm/app/schema.d.ts +72 -68
- package/dist/esm/app/schema.d.ts.map +1 -1
- package/dist/esm/app/schema.js +45 -37
- package/dist/esm/app/schema.test.js +129 -43
- package/dist/esm/association/resources.d.ts +5 -5
- package/dist/esm/association/resources.d.ts.map +1 -1
- package/dist/esm/association/resources.js +6 -8
- package/dist/esm/association/schema.d.ts +270 -182
- package/dist/esm/association/schema.d.ts.map +1 -1
- package/dist/esm/association/schema.js +36 -31
- package/dist/esm/association/schema.test.js +14 -55
- package/dist/esm/authentication/factors/schema.d.ts +39 -49
- package/dist/esm/authentication/factors/schema.d.ts.map +1 -1
- package/dist/esm/authentication/factors/schema.js +26 -20
- package/dist/esm/authentication/factors/schema.test.js +33 -34
- package/dist/esm/authentication/index.d.ts +1 -0
- package/dist/esm/authentication/index.d.ts.map +1 -1
- package/dist/esm/authentication/index.js +2 -0
- package/dist/esm/authentication/providers/schema.d.ts +23 -22
- package/dist/esm/authentication/providers/schema.d.ts.map +1 -1
- package/dist/esm/authentication/providers/schema.js +13 -11
- package/dist/esm/authentication/sessions/resources.d.ts +4 -4
- package/dist/esm/authentication/sessions/resources.d.ts.map +1 -1
- package/dist/esm/authentication/sessions/resources.js +5 -5
- package/dist/esm/authentication/sessions/schema.d.ts +96 -74
- package/dist/esm/authentication/sessions/schema.d.ts.map +1 -1
- package/dist/esm/authentication/sessions/schema.js +67 -34
- package/dist/esm/authentication/sessions/schema.test.d.ts +2 -0
- package/dist/esm/authentication/sessions/schema.test.d.ts.map +1 -0
- package/dist/esm/authentication/sessions/schema.test.js +63 -0
- package/dist/esm/authentication/settings/resources.d.ts +4 -4
- package/dist/esm/authentication/settings/resources.d.ts.map +1 -1
- package/dist/esm/authentication/settings/resources.js +3 -4
- package/dist/esm/authentication/settings/schema.d.ts +45 -62
- package/dist/esm/authentication/settings/schema.d.ts.map +1 -1
- package/dist/esm/authentication/settings/schema.js +18 -16
- package/dist/esm/authentication/settings/schema.test.js +409 -22
- package/dist/esm/authentication/strategies/resources.d.ts +9 -8
- package/dist/esm/authentication/strategies/resources.d.ts.map +1 -1
- package/dist/esm/authentication/strategies/resources.js +13 -13
- package/dist/esm/authentication/strategies/schema/base.d.ts +59 -53
- package/dist/esm/authentication/strategies/schema/base.d.ts.map +1 -1
- package/dist/esm/authentication/strategies/schema/base.js +36 -25
- package/dist/esm/authentication/strategies/schema/schema.d.ts +126 -200
- package/dist/esm/authentication/strategies/schema/schema.d.ts.map +1 -1
- package/dist/esm/authentication/strategies/schema/schema.js +17 -6
- package/dist/esm/authentication/strategies/schema/types/email.d.ts +62 -61
- package/dist/esm/authentication/strategies/schema/types/email.d.ts.map +1 -1
- package/dist/esm/authentication/strategies/schema/types/email.js +25 -15
- package/dist/esm/authentication/strategies/schema/types/email.test.js +49 -49
- package/dist/esm/authentication/strategies/schema/types/totp.d.ts +108 -95
- package/dist/esm/authentication/strategies/schema/types/totp.d.ts.map +1 -1
- package/dist/esm/authentication/strategies/schema/types/totp.js +51 -27
- package/dist/esm/authorization/permissions/resources.d.ts +7 -7
- package/dist/esm/authorization/permissions/resources.d.ts.map +1 -1
- package/dist/esm/authorization/permissions/resources.js +8 -8
- package/dist/esm/authorization/permissions/schema.d.ts +92 -88
- package/dist/esm/authorization/permissions/schema.d.ts.map +1 -1
- package/dist/esm/authorization/permissions/schema.js +47 -39
- package/dist/esm/authorization/permissions/schema.test.js +54 -62
- package/dist/esm/authorization/roles/resources.d.ts +7 -7
- package/dist/esm/authorization/roles/resources.d.ts.map +1 -1
- package/dist/esm/authorization/roles/resources.js +8 -8
- package/dist/esm/authorization/roles/schema.d.ts +102 -98
- package/dist/esm/authorization/roles/schema.d.ts.map +1 -1
- package/dist/esm/authorization/roles/schema.js +43 -40
- package/dist/esm/authorization/roles/schema.test.js +55 -62
- package/dist/esm/authorization/schema.d.ts +7 -6
- package/dist/esm/authorization/schema.d.ts.map +1 -1
- package/dist/esm/authorization/schema.js +9 -3
- package/dist/esm/common/index.d.ts +2 -0
- package/dist/esm/common/index.d.ts.map +1 -1
- package/dist/esm/common/resources/authorization.d.ts +18 -1
- package/dist/esm/common/resources/authorization.d.ts.map +1 -1
- package/dist/esm/common/resources/authorization.js +5 -1
- package/dist/esm/common/resources/init.d.ts +28 -11
- package/dist/esm/common/resources/init.d.ts.map +1 -1
- package/dist/esm/common/resources/init.js +47 -21
- package/dist/esm/common/resources/init.test.js +63 -39
- package/dist/esm/common/resources/operations.d.ts +7 -6
- package/dist/esm/common/resources/operations.d.ts.map +1 -1
- package/dist/esm/common/resources/operations.js +41 -19
- package/dist/esm/common/resources/operations.test.js +48 -18
- package/dist/esm/common/resources/utils.d.ts +0 -9
- package/dist/esm/common/resources/utils.d.ts.map +1 -1
- package/dist/esm/common/resources/utils.js +0 -24
- package/dist/esm/common/resources/utils.test.js +3 -32
- package/dist/esm/common/schema/aggregate.d.ts +6 -5
- package/dist/esm/common/schema/aggregate.d.ts.map +1 -1
- package/dist/esm/common/schema/aggregate.js +4 -4
- package/dist/esm/common/schema/aggregate.test.js +21 -22
- package/dist/esm/common/schema/collection.d.ts +13 -14
- package/dist/esm/common/schema/collection.d.ts.map +1 -1
- package/dist/esm/common/schema/collection.js +5 -5
- package/dist/esm/common/schema/collection.test.js +66 -48
- package/dist/esm/common/schema/dates.d.ts +43 -26
- package/dist/esm/common/schema/dates.d.ts.map +1 -1
- package/dist/esm/common/schema/dates.js +29 -11
- package/dist/esm/common/schema/dates.test.js +24 -13
- package/dist/esm/common/schema/id.d.ts +2 -1
- package/dist/esm/common/schema/id.d.ts.map +1 -1
- package/dist/esm/common/schema/id.js +2 -2
- package/dist/esm/common/schema/id.test.js +70 -38
- package/dist/esm/common/schema/jwt.d.ts +22 -14
- package/dist/esm/common/schema/jwt.d.ts.map +1 -1
- package/dist/esm/common/schema/jwt.js +3 -7
- package/dist/esm/common/schema/jwt.test.js +22 -25
- package/dist/esm/common/schema/metadata.d.ts +86 -49
- package/dist/esm/common/schema/metadata.d.ts.map +1 -1
- package/dist/esm/common/schema/metadata.js +120 -74
- package/dist/esm/common/schema/metadata.test.js +199 -68
- package/dist/esm/common/schema/pagination.d.ts +15 -5
- package/dist/esm/common/schema/pagination.d.ts.map +1 -1
- package/dist/esm/common/schema/pagination.js +13 -4
- package/dist/esm/common/schema/pagination.test.js +55 -36
- package/dist/esm/common/schema/schema.d.ts +4 -4
- package/dist/esm/common/schema/schema.d.ts.map +1 -1
- package/dist/esm/common/schema/schema.js +6 -5
- package/dist/esm/common/schema/schema.test.js +9 -15
- package/dist/esm/common/schema/sets.d.ts +6 -2
- package/dist/esm/common/schema/sets.d.ts.map +1 -1
- package/dist/esm/common/schema/sets.js +16 -6
- package/dist/esm/common/schema/url.d.ts +21 -0
- package/dist/esm/common/schema/url.d.ts.map +1 -1
- package/dist/esm/common/schema/url.js +45 -0
- package/dist/esm/common/schema/url.test.js +11 -1
- package/dist/esm/customer/organization/schema.d.ts +59 -46
- package/dist/esm/customer/organization/schema.d.ts.map +1 -1
- package/dist/esm/customer/organization/schema.js +43 -26
- package/dist/esm/customer/schema.d.ts +7 -6
- package/dist/esm/customer/schema.d.ts.map +1 -1
- package/dist/esm/customer/schema.js +9 -3
- package/dist/esm/customer/users/resources.d.ts +7 -7
- package/dist/esm/customer/users/resources.d.ts.map +1 -1
- package/dist/esm/customer/users/resources.js +8 -8
- package/dist/esm/customer/users/schema.d.ts +213 -104
- package/dist/esm/customer/users/schema.d.ts.map +1 -1
- package/dist/esm/customer/users/schema.js +107 -55
- package/dist/esm/customer/users/schema.test.js +592 -61
- package/dist/esm/customer/users/utils.d.ts +3 -2
- package/dist/esm/customer/users/utils.d.ts.map +1 -1
- package/dist/esm/customer/users/utils.test.js +1 -1
- package/dist/esm/identity/schema.d.ts +5 -1
- package/dist/esm/identity/schema.d.ts.map +1 -1
- package/dist/esm/identity/schema.js +5 -2
- package/dist/esm/identity/schema.test.js +21 -16
- package/dist/esm/oauth/authorize/schema/grants/authorization-code.d.ts +34 -28
- package/dist/esm/oauth/authorize/schema/grants/authorization-code.d.ts.map +1 -1
- package/dist/esm/oauth/authorize/schema/grants/authorization-code.js +60 -38
- package/dist/esm/oauth/authorize/schema/grants/authorization-code.test.js +48 -49
- package/dist/esm/oauth/authorize/schema/grants/common.d.ts +6 -0
- package/dist/esm/oauth/authorize/schema/grants/common.d.ts.map +1 -0
- package/dist/esm/oauth/authorize/schema/grants/common.js +11 -0
- package/dist/esm/oauth/authorize/schema/grants/implicit.d.ts +18 -10
- package/dist/esm/oauth/authorize/schema/grants/implicit.d.ts.map +1 -1
- package/dist/esm/oauth/authorize/schema/grants/implicit.js +22 -10
- package/dist/esm/oauth/authorize/schema/schema.d.ts +48 -36
- package/dist/esm/oauth/authorize/schema/schema.d.ts.map +1 -1
- package/dist/esm/oauth/authorize/schema/schema.js +4 -3
- package/dist/esm/oauth/common/schema.d.ts +24 -7
- package/dist/esm/oauth/common/schema.d.ts.map +1 -1
- package/dist/esm/oauth/common/schema.js +25 -7
- package/dist/esm/oauth/common/schema.test.js +23 -31
- package/dist/esm/oauth/index.d.ts +3 -3
- package/dist/esm/oauth/index.d.ts.map +1 -1
- package/dist/esm/oauth/index.js +3 -3
- package/dist/esm/oauth/token/schema/grants/authorization-code.d.ts +16 -9
- package/dist/esm/oauth/token/schema/grants/authorization-code.d.ts.map +1 -1
- package/dist/esm/oauth/token/schema/grants/authorization-code.js +32 -11
- package/dist/esm/oauth/token/schema/grants/client-credentials.d.ts +16 -17
- package/dist/esm/oauth/token/schema/grants/client-credentials.d.ts.map +1 -1
- package/dist/esm/oauth/token/schema/grants/client-credentials.js +19 -15
- package/dist/esm/oauth/token/schema/grants/common.d.ts +6 -0
- package/dist/esm/oauth/token/schema/grants/common.d.ts.map +1 -0
- package/dist/esm/oauth/token/schema/grants/common.js +16 -0
- package/dist/esm/oauth/token/schema/grants/refresh-token.d.ts +15 -8
- package/dist/esm/oauth/token/schema/grants/refresh-token.d.ts.map +1 -1
- package/dist/esm/oauth/token/schema/grants/refresh-token.js +23 -10
- package/dist/esm/oauth/token/schema/schema.d.ts +48 -21
- package/dist/esm/oauth/token/schema/schema.d.ts.map +1 -1
- package/dist/esm/oauth/token/schema/schema.js +59 -4
- package/dist/esm/oauth/token/schema/schema.test.js +45 -29
- package/dist/esm/workspace/authorization/schema.d.ts +62 -27
- package/dist/esm/workspace/authorization/schema.d.ts.map +1 -1
- package/dist/esm/workspace/authorization/schema.js +27 -15
- package/dist/esm/workspace/branding/schema.d.ts +47 -37
- package/dist/esm/workspace/branding/schema.d.ts.map +1 -1
- package/dist/esm/workspace/branding/schema.js +29 -17
- package/dist/esm/workspace/membership/schema.d.ts +42 -20
- package/dist/esm/workspace/membership/schema.d.ts.map +1 -1
- package/dist/esm/workspace/membership/schema.js +14 -7
- package/dist/esm/workspace/registration/schema.d.ts +41 -27
- package/dist/esm/workspace/registration/schema.d.ts.map +1 -1
- package/dist/esm/workspace/registration/schema.js +32 -16
- package/dist/esm/workspace/settings/schema.d.ts +20 -19
- package/dist/esm/workspace/settings/schema.d.ts.map +1 -1
- package/dist/esm/workspace/settings/schema.js +16 -9
- package/dist/esm/workspace/settings/schema.test.js +18 -19
- package/dist/esm/workspace/tenant/schema.d.ts +88 -57
- package/dist/esm/workspace/tenant/schema.d.ts.map +1 -1
- package/dist/esm/workspace/tenant/schema.js +26 -13
- package/dist/esm/workspace/tenant/schema.test.d.ts +2 -0
- package/dist/esm/workspace/tenant/schema.test.d.ts.map +1 -0
- package/dist/esm/workspace/tenant/schema.test.js +233 -0
- package/dist/esm/workspace/user/notifications/schema.d.ts +70 -56
- package/dist/esm/workspace/user/notifications/schema.d.ts.map +1 -1
- package/dist/esm/workspace/user/notifications/schema.js +42 -29
- package/dist/esm/workspace/user/preferences/schema.d.ts +29 -25
- package/dist/esm/workspace/user/preferences/schema.d.ts.map +1 -1
- package/dist/esm/workspace/user/preferences/schema.js +25 -13
- package/package.json +3 -3
- package/dist/cjs/action/schema/operations/set-password.d.ts +0 -31
- package/dist/cjs/action/schema/operations/set-password.d.ts.map +0 -1
- package/dist/cjs/action/schema/operations/set-password.js +0 -18
- package/dist/cjs/action/schema/operations/set-password.test.d.ts +0 -2
- package/dist/cjs/action/schema/operations/set-password.test.d.ts.map +0 -1
- package/dist/cjs/action/schema/operations/set-password.test.js +0 -167
- package/dist/cjs/authentication/strategies/schema/types/password.d.ts +0 -132
- package/dist/cjs/authentication/strategies/schema/types/password.d.ts.map +0 -1
- package/dist/cjs/authentication/strategies/schema/types/password.js +0 -52
- package/dist/cjs/common/schema/sets.test.d.ts +0 -2
- package/dist/cjs/common/schema/sets.test.d.ts.map +0 -1
- package/dist/cjs/common/schema/sets.test.js +0 -84
- package/dist/esm/action/schema/operations/set-password.d.ts +0 -31
- package/dist/esm/action/schema/operations/set-password.d.ts.map +0 -1
- package/dist/esm/action/schema/operations/set-password.js +0 -15
- package/dist/esm/action/schema/operations/set-password.test.d.ts +0 -2
- package/dist/esm/action/schema/operations/set-password.test.d.ts.map +0 -1
- package/dist/esm/action/schema/operations/set-password.test.js +0 -165
- package/dist/esm/authentication/strategies/schema/types/password.d.ts +0 -132
- package/dist/esm/authentication/strategies/schema/types/password.d.ts.map +0 -1
- package/dist/esm/authentication/strategies/schema/types/password.js +0 -49
- package/dist/esm/common/schema/sets.test.d.ts +0 -2
- package/dist/esm/common/schema/sets.test.d.ts.map +0 -1
- package/dist/esm/common/schema/sets.test.js +0 -82
|
@@ -1,83 +1,108 @@
|
|
|
1
|
-
import { type } from 'arktype';
|
|
2
1
|
import { describe, expect, test } from 'vitest';
|
|
3
|
-
import { MetadataMapPropertySchema,
|
|
2
|
+
import { MetadataMapPropertySchema, MetadataMapSchema, MetadataRecordPropertySchema, MetadataRecordSchema, UpsertMetadataPropertySchema, buildMetadataPayload, buildUpsertMetadataPayload, buildUpsertMetadataPayloadFromIterable, } from './metadata.js';
|
|
4
3
|
describe('Common - Metadata', () => {
|
|
5
|
-
describe('
|
|
6
|
-
test('should parse a record to a map',
|
|
7
|
-
const result =
|
|
8
|
-
|
|
4
|
+
describe('MetadataMapSchema', () => {
|
|
5
|
+
test('should parse a record to a map', () => {
|
|
6
|
+
const result = MetadataMapSchema.safeParse({
|
|
7
|
+
enabled: true,
|
|
8
|
+
foo: 'bar',
|
|
9
|
+
version: 2,
|
|
9
10
|
});
|
|
10
|
-
expect(result).
|
|
11
|
-
expect(result?.
|
|
11
|
+
expect(result.data).toBeInstanceOf(Map);
|
|
12
|
+
expect(result.data?.get('foo')).toBe('bar');
|
|
13
|
+
expect(result.data?.get('enabled')).toBe(true);
|
|
14
|
+
expect(result.data?.get('version')).toBe(2);
|
|
12
15
|
});
|
|
13
|
-
test('should parse
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
});
|
|
17
|
-
expect(result).not.toBeInstanceOf(type.errors);
|
|
18
|
-
expect(result?.metadata).toBeInstanceOf(Map);
|
|
16
|
+
test('should parse nullish values to an empty map', () => {
|
|
17
|
+
expect(MetadataMapSchema.parse(undefined).size).toBe(0);
|
|
18
|
+
expect(MetadataMapSchema.parse(null).size).toBe(0);
|
|
19
19
|
});
|
|
20
|
-
test('should parse
|
|
21
|
-
const result =
|
|
22
|
-
expect(result).
|
|
23
|
-
expect(result?.
|
|
20
|
+
test('should parse map to a map', () => {
|
|
21
|
+
const result = MetadataMapSchema.safeParse(new Map([['foo', 'bar']]));
|
|
22
|
+
expect(result.data).toBeInstanceOf(Map);
|
|
23
|
+
expect(result.data?.get('foo')).toBe('bar');
|
|
24
24
|
});
|
|
25
|
-
test('should
|
|
26
|
-
const result =
|
|
27
|
-
|
|
25
|
+
test('should reject unsupported metadata values', () => {
|
|
26
|
+
const result = MetadataMapSchema.safeParse({
|
|
27
|
+
nested: { unsupported: true },
|
|
28
28
|
});
|
|
29
|
-
expect(result).
|
|
30
|
-
expect(result?.metadata).toBeInstanceOf(Map);
|
|
29
|
+
expect(result.success).toBe(false);
|
|
31
30
|
});
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
31
|
+
});
|
|
32
|
+
describe('MetadataMapPropertySchema', () => {
|
|
33
|
+
test('should parse undefined property to a map', () => {
|
|
34
|
+
const result = MetadataMapPropertySchema.safeParse({
|
|
35
|
+
metadata: undefined,
|
|
35
36
|
});
|
|
36
|
-
expect(result).
|
|
37
|
-
expect(result?.metadata).toBeInstanceOf(Map);
|
|
37
|
+
expect(result.data?.metadata).toBeInstanceOf(Map);
|
|
38
38
|
});
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
]),
|
|
39
|
+
test('should parse omitted property to a map', () => {
|
|
40
|
+
const result = MetadataMapPropertySchema.safeParse({});
|
|
41
|
+
expect(result.data?.metadata).toBeInstanceOf(Map);
|
|
42
|
+
});
|
|
43
|
+
test('should parse null property to a map', () => {
|
|
44
|
+
const result = MetadataMapPropertySchema.safeParse({
|
|
45
|
+
metadata: null,
|
|
47
46
|
});
|
|
48
|
-
expect(result).
|
|
49
|
-
expect(result?.metadata?.foo).to.equal('bar');
|
|
50
|
-
expect(result?.metadata?.baz).to.equal(0);
|
|
47
|
+
expect(result.data?.metadata).toBeInstanceOf(Map);
|
|
51
48
|
});
|
|
52
|
-
test('should
|
|
53
|
-
const result =
|
|
54
|
-
metadata:
|
|
49
|
+
test('should parse record property to a map', () => {
|
|
50
|
+
const result = MetadataMapPropertySchema.safeParse({
|
|
51
|
+
metadata: {
|
|
52
|
+
foo: 'bar',
|
|
53
|
+
bar: 'baz',
|
|
54
|
+
},
|
|
55
55
|
});
|
|
56
|
-
expect(result).
|
|
57
|
-
expect(result?.metadata).
|
|
56
|
+
expect(result.data?.metadata).toBeInstanceOf(Map);
|
|
57
|
+
expect(result.data?.metadata.get('foo')).to.equal('bar');
|
|
58
|
+
expect(result.data?.metadata.get('bar')).to.equal('baz');
|
|
58
59
|
});
|
|
59
60
|
});
|
|
60
|
-
describe('
|
|
61
|
-
test('should
|
|
62
|
-
const
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
expect(
|
|
68
|
-
|
|
61
|
+
describe('MetadataRecordSchema', () => {
|
|
62
|
+
test('should parse a record to a record', () => {
|
|
63
|
+
const record = {
|
|
64
|
+
active: true,
|
|
65
|
+
count: 4,
|
|
66
|
+
label: 'test',
|
|
67
|
+
};
|
|
68
|
+
expect(MetadataRecordSchema.parse(record)).toEqual(record);
|
|
69
|
+
});
|
|
70
|
+
test('should parse a map to a record', () => {
|
|
71
|
+
const result = MetadataRecordSchema.safeParse(new Map([
|
|
72
|
+
['foo', 'bar'],
|
|
73
|
+
['baz', 0],
|
|
74
|
+
]));
|
|
75
|
+
expect(result.data?.foo).to.equal('bar');
|
|
76
|
+
expect(result.data?.baz).to.equal(0);
|
|
77
|
+
});
|
|
78
|
+
test('should parse nullish values to an empty record', () => {
|
|
79
|
+
expect(MetadataRecordSchema.parse(undefined)).toEqual({});
|
|
80
|
+
expect(MetadataRecordSchema.parse(null)).toEqual({});
|
|
69
81
|
});
|
|
70
|
-
test('should
|
|
71
|
-
const result =
|
|
82
|
+
test('should omit empty string values from map input', () => {
|
|
83
|
+
const result = MetadataRecordSchema.parse(new Map([
|
|
84
|
+
['empty', ''],
|
|
72
85
|
['foo', 'bar'],
|
|
73
|
-
['bar', 'baz'],
|
|
74
86
|
]));
|
|
75
|
-
expect(result).
|
|
76
|
-
expect(result?.foo).to.equal('bar');
|
|
77
|
-
expect(result?.bar).to.equal('baz');
|
|
87
|
+
expect(result).toEqual({ foo: 'bar' });
|
|
78
88
|
});
|
|
79
|
-
test('should
|
|
80
|
-
const result =
|
|
89
|
+
test('should allow 10 items', () => {
|
|
90
|
+
const result = MetadataRecordSchema.safeParse(new Map([
|
|
91
|
+
['1', '1'],
|
|
92
|
+
['2', '2'],
|
|
93
|
+
['3', '3'],
|
|
94
|
+
['4', '4'],
|
|
95
|
+
['5', '5'],
|
|
96
|
+
['6', '6'],
|
|
97
|
+
['7', '7'],
|
|
98
|
+
['8', '8'],
|
|
99
|
+
['9', '9'],
|
|
100
|
+
['10', '10'],
|
|
101
|
+
]));
|
|
102
|
+
expect(result.success).toBe(true);
|
|
103
|
+
});
|
|
104
|
+
test('should only allow 10 items', () => {
|
|
105
|
+
const result = MetadataRecordSchema.safeParse(new Map([
|
|
81
106
|
['1', '1'],
|
|
82
107
|
['2', '2'],
|
|
83
108
|
['3', '3'],
|
|
@@ -90,20 +115,126 @@ describe('Common - Metadata', () => {
|
|
|
90
115
|
['10', '10'],
|
|
91
116
|
['11', '11'],
|
|
92
117
|
]));
|
|
93
|
-
expect(result).
|
|
118
|
+
expect(result.success).toBe(false);
|
|
119
|
+
});
|
|
120
|
+
test('should reject unsupported metadata values', () => {
|
|
121
|
+
const result = MetadataRecordSchema.safeParse(new Map([['nested', { unsupported: true }]]));
|
|
122
|
+
expect(result.success).toBe(false);
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
describe('MetadataRecordPropertySchema', () => {
|
|
126
|
+
test('should parse map property to record', () => {
|
|
127
|
+
const result = MetadataRecordPropertySchema.safeParse({
|
|
128
|
+
metadata: new Map([
|
|
129
|
+
['foo', 'bar'],
|
|
130
|
+
['baz', 0],
|
|
131
|
+
]),
|
|
132
|
+
});
|
|
133
|
+
expect(result.data?.metadata?.foo).to.equal('bar');
|
|
134
|
+
expect(result.data?.metadata?.baz).to.equal(0);
|
|
135
|
+
});
|
|
136
|
+
test('should return undefined if map is empty', () => {
|
|
137
|
+
const result = MetadataRecordPropertySchema.safeParse({
|
|
138
|
+
metadata: new Map(),
|
|
139
|
+
});
|
|
140
|
+
expect(result.data?.metadata).is.undefined;
|
|
141
|
+
});
|
|
142
|
+
test('should return undefined if record is empty', () => {
|
|
143
|
+
const result = MetadataRecordPropertySchema.safeParse({
|
|
144
|
+
metadata: {},
|
|
145
|
+
});
|
|
146
|
+
expect(result.data?.metadata).is.undefined;
|
|
147
|
+
});
|
|
148
|
+
test('should return undefined if property is null', () => {
|
|
149
|
+
const result = MetadataRecordPropertySchema.safeParse({
|
|
150
|
+
metadata: null,
|
|
151
|
+
});
|
|
152
|
+
expect(result.data?.metadata).is.undefined;
|
|
153
|
+
});
|
|
154
|
+
test('should return undefined if property is omitted', () => {
|
|
155
|
+
const result = MetadataRecordPropertySchema.safeParse({});
|
|
156
|
+
expect(result.data?.metadata).is.undefined;
|
|
94
157
|
});
|
|
95
158
|
});
|
|
96
|
-
describe('
|
|
97
|
-
test('should
|
|
98
|
-
const result =
|
|
159
|
+
describe('UpsertMetadataPropertySchema', () => {
|
|
160
|
+
test('should handle incoming record', () => {
|
|
161
|
+
const result = UpsertMetadataPropertySchema.safeParse({
|
|
99
162
|
metadata: {
|
|
100
163
|
foo: 'bar',
|
|
101
164
|
bar: 'baz',
|
|
102
165
|
},
|
|
103
166
|
});
|
|
104
|
-
expect(result).
|
|
105
|
-
expect(result?.metadata?.
|
|
106
|
-
|
|
167
|
+
expect(result.data?.metadata?.foo).to.equal('bar');
|
|
168
|
+
expect(result.data?.metadata?.bar).to.equal('baz');
|
|
169
|
+
});
|
|
170
|
+
test('should handle incoming map', () => {
|
|
171
|
+
const result = UpsertMetadataPropertySchema.safeParse({
|
|
172
|
+
metadata: new Map([
|
|
173
|
+
['foo', 'bar'],
|
|
174
|
+
['bar', 'baz'],
|
|
175
|
+
]),
|
|
176
|
+
});
|
|
177
|
+
expect(result.data?.metadata?.foo).to.equal('bar');
|
|
178
|
+
expect(result.data?.metadata?.bar).to.equal('baz');
|
|
179
|
+
});
|
|
180
|
+
test('should return null if map is empty', () => {
|
|
181
|
+
const result = UpsertMetadataPropertySchema.safeParse({
|
|
182
|
+
metadata: new Map(),
|
|
183
|
+
});
|
|
184
|
+
expect(result.data?.metadata).is.null;
|
|
185
|
+
});
|
|
186
|
+
test('should return null if record is empty', () => {
|
|
187
|
+
const result = UpsertMetadataPropertySchema.safeParse({
|
|
188
|
+
metadata: {},
|
|
189
|
+
});
|
|
190
|
+
expect(result.data?.metadata).is.null;
|
|
191
|
+
});
|
|
192
|
+
test('should return null if property is null', () => {
|
|
193
|
+
const result = UpsertMetadataPropertySchema.safeParse({
|
|
194
|
+
metadata: null,
|
|
195
|
+
});
|
|
196
|
+
expect(result.data?.metadata).is.null;
|
|
197
|
+
});
|
|
198
|
+
test('should return undefined if property is omitted', () => {
|
|
199
|
+
const result = UpsertMetadataPropertySchema.safeParse({});
|
|
200
|
+
expect(result.data?.metadata).is.undefined;
|
|
201
|
+
});
|
|
202
|
+
});
|
|
203
|
+
describe('metadata payload builders', () => {
|
|
204
|
+
test('should build omitted payloads from empty metadata', () => {
|
|
205
|
+
expect(buildMetadataPayload(new Map())).toBeUndefined();
|
|
206
|
+
expect(buildMetadataPayload({})).toBeUndefined();
|
|
207
|
+
});
|
|
208
|
+
test('should build record payloads while omitting empty map values', () => {
|
|
209
|
+
const result = buildMetadataPayload(new Map([
|
|
210
|
+
['empty', ''],
|
|
211
|
+
['enabled', true],
|
|
212
|
+
['label', 'metadata'],
|
|
213
|
+
]));
|
|
214
|
+
expect(result).toEqual({
|
|
215
|
+
enabled: true,
|
|
216
|
+
label: 'metadata',
|
|
217
|
+
});
|
|
218
|
+
});
|
|
219
|
+
test('should build null upsert payloads from empty metadata', () => {
|
|
220
|
+
expect(buildUpsertMetadataPayload(new Map())).toBeNull();
|
|
221
|
+
expect(buildUpsertMetadataPayload({})).toBeNull();
|
|
222
|
+
});
|
|
223
|
+
test('should build upsert payloads from iterables', () => {
|
|
224
|
+
const result = buildUpsertMetadataPayloadFromIterable([
|
|
225
|
+
['empty', ''],
|
|
226
|
+
['retries', 3],
|
|
227
|
+
['verified', false],
|
|
228
|
+
]);
|
|
229
|
+
expect(result).toEqual({
|
|
230
|
+
retries: 3,
|
|
231
|
+
verified: false,
|
|
232
|
+
});
|
|
233
|
+
});
|
|
234
|
+
test('should return null for null or empty iterable upsert payloads', () => {
|
|
235
|
+
expect(buildUpsertMetadataPayloadFromIterable(null)).toBeNull();
|
|
236
|
+
expect(buildUpsertMetadataPayloadFromIterable([])).toBeNull();
|
|
237
|
+
expect(buildUpsertMetadataPayloadFromIterable([['empty', '']])).toBeNull();
|
|
107
238
|
});
|
|
108
239
|
});
|
|
109
240
|
});
|
|
@@ -1,6 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import * as z from 'zod/v4';
|
|
2
|
+
declare const PaginationPropertiesSchema: z.ZodObject<{
|
|
3
|
+
pageSize: z.ZodOptional<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodNull]>, z.ZodTransform<number | undefined, string | number | null>>>;
|
|
4
|
+
nextToken: z.ZodOptional<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNull]>, z.ZodTransform<string | undefined, string | null>>>;
|
|
5
|
+
}, z.core.$strip>;
|
|
6
|
+
export type Pagination = z.output<typeof PaginationPropertiesSchema>;
|
|
7
|
+
export declare const PaginationSchema: z.ZodObject<{
|
|
8
|
+
pagination: z.ZodOptional<z.ZodObject<{
|
|
9
|
+
pageSize: z.ZodOptional<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodNull]>, z.ZodTransform<number | undefined, string | number | null>>>;
|
|
10
|
+
nextToken: z.ZodOptional<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNull]>, z.ZodTransform<string | undefined, string | null>>>;
|
|
11
|
+
}, z.core.$strip>>;
|
|
12
|
+
}, z.core.$strip>;
|
|
13
|
+
export type PaginationInput = z.input<typeof PaginationSchema>;
|
|
14
|
+
export type PaginationPayload = z.output<typeof PaginationSchema>;
|
|
15
|
+
export {};
|
|
6
16
|
//# sourceMappingURL=pagination.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../../src/common/schema/pagination.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../../src/common/schema/pagination.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,QAAA,MAAM,0BAA0B;;;iBAS9B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAErE,eAAO,MAAM,gBAAgB;;;;;iBAE3B,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC/D,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
|
|
@@ -1,5 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
pageSize:
|
|
4
|
-
|
|
1
|
+
import * as z from 'zod/v4';
|
|
2
|
+
const PaginationPropertiesSchema = z.object({
|
|
3
|
+
pageSize: z
|
|
4
|
+
.union([z.string(), z.number(), z.null()])
|
|
5
|
+
.pipe(z.transform((v) => (v ? Number(v) : undefined)))
|
|
6
|
+
.optional(),
|
|
7
|
+
nextToken: z
|
|
8
|
+
.union([z.string(), z.null()])
|
|
9
|
+
.pipe(z.transform((v) => v || undefined))
|
|
10
|
+
.optional(),
|
|
11
|
+
});
|
|
12
|
+
export const PaginationSchema = z.object({
|
|
13
|
+
pagination: PaginationPropertiesSchema.optional(),
|
|
5
14
|
});
|
|
@@ -1,66 +1,85 @@
|
|
|
1
|
-
import { type } from 'arktype';
|
|
2
1
|
import { describe, expect, test } from 'vitest';
|
|
3
2
|
import { PaginationSchema } from './pagination.js';
|
|
4
3
|
describe('Common Schema - Pagination', () => {
|
|
5
4
|
describe('PaginationSchema', () => {
|
|
6
5
|
test('should accept valid pagination with pageSize as string', () => {
|
|
7
|
-
const result = PaginationSchema({
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
const result = PaginationSchema.safeParse({
|
|
7
|
+
pagination: {
|
|
8
|
+
pageSize: '10',
|
|
9
|
+
nextToken: 'token123',
|
|
10
|
+
},
|
|
10
11
|
});
|
|
11
|
-
|
|
12
|
-
expect(result).toEqual({
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
// Parse succeeds for valid data
|
|
13
|
+
expect(result.data).toEqual({
|
|
14
|
+
pagination: {
|
|
15
|
+
pageSize: 10,
|
|
16
|
+
nextToken: 'token123',
|
|
17
|
+
},
|
|
15
18
|
});
|
|
16
19
|
});
|
|
17
20
|
test('should accept valid pagination with pageSize as number', () => {
|
|
18
|
-
const result = PaginationSchema({
|
|
19
|
-
|
|
20
|
-
|
|
21
|
+
const result = PaginationSchema.safeParse({
|
|
22
|
+
pagination: {
|
|
23
|
+
pageSize: 20,
|
|
24
|
+
nextToken: 'token456',
|
|
25
|
+
},
|
|
21
26
|
});
|
|
22
|
-
|
|
23
|
-
expect(result).toEqual({
|
|
24
|
-
|
|
25
|
-
|
|
27
|
+
// Parse succeeds for valid data
|
|
28
|
+
expect(result.data).toEqual({
|
|
29
|
+
pagination: {
|
|
30
|
+
pageSize: 20,
|
|
31
|
+
nextToken: 'token456',
|
|
32
|
+
},
|
|
26
33
|
});
|
|
27
34
|
});
|
|
28
35
|
test('should accept pagination with only pageSize', () => {
|
|
29
|
-
const result = PaginationSchema({
|
|
30
|
-
|
|
36
|
+
const result = PaginationSchema.safeParse({
|
|
37
|
+
pagination: {
|
|
38
|
+
pageSize: '15',
|
|
39
|
+
},
|
|
31
40
|
});
|
|
32
|
-
|
|
33
|
-
expect(result).toEqual({
|
|
34
|
-
|
|
41
|
+
// Parse succeeds for valid data
|
|
42
|
+
expect(result.data).toEqual({
|
|
43
|
+
pagination: {
|
|
44
|
+
pageSize: 15,
|
|
45
|
+
},
|
|
35
46
|
});
|
|
36
47
|
});
|
|
37
48
|
test('should accept pagination with only nextToken', () => {
|
|
38
|
-
const result = PaginationSchema({
|
|
39
|
-
|
|
49
|
+
const result = PaginationSchema.safeParse({
|
|
50
|
+
pagination: {
|
|
51
|
+
nextToken: 'token789',
|
|
52
|
+
},
|
|
40
53
|
});
|
|
41
|
-
|
|
42
|
-
expect(result).toEqual({
|
|
43
|
-
|
|
54
|
+
// Parse succeeds for valid data
|
|
55
|
+
expect(result.data).toEqual({
|
|
56
|
+
pagination: {
|
|
57
|
+
nextToken: 'token789',
|
|
58
|
+
},
|
|
44
59
|
});
|
|
45
60
|
});
|
|
46
61
|
test('should accept empty pagination object', () => {
|
|
47
|
-
const result = PaginationSchema({});
|
|
48
|
-
|
|
49
|
-
expect(result).toEqual({});
|
|
62
|
+
const result = PaginationSchema.safeParse({});
|
|
63
|
+
// Parse succeeds for valid data
|
|
64
|
+
expect(result.data).toEqual({});
|
|
50
65
|
});
|
|
51
66
|
test('should reject invalid pageSize type', () => {
|
|
52
|
-
const result = PaginationSchema({
|
|
53
|
-
|
|
54
|
-
|
|
67
|
+
const result = PaginationSchema.safeParse({
|
|
68
|
+
pagination: {
|
|
69
|
+
pageSize: true,
|
|
70
|
+
nextToken: 'token123',
|
|
71
|
+
},
|
|
55
72
|
});
|
|
56
|
-
expect(result).
|
|
73
|
+
expect(result.success).toBe(false);
|
|
57
74
|
});
|
|
58
75
|
test('should reject invalid nextToken type', () => {
|
|
59
|
-
const result = PaginationSchema({
|
|
60
|
-
|
|
61
|
-
|
|
76
|
+
const result = PaginationSchema.safeParse({
|
|
77
|
+
pagination: {
|
|
78
|
+
pageSize: 10,
|
|
79
|
+
nextToken: 123,
|
|
80
|
+
},
|
|
62
81
|
});
|
|
63
|
-
expect(result).
|
|
82
|
+
expect(result.success).toBe(false);
|
|
64
83
|
});
|
|
65
84
|
});
|
|
66
85
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as z from 'zod/v4';
|
|
2
2
|
export * from './aggregate.js';
|
|
3
3
|
export * from './collection.js';
|
|
4
4
|
export * from './dates.js';
|
|
@@ -7,7 +7,7 @@ export * from './metadata.js';
|
|
|
7
7
|
export * from './pagination.js';
|
|
8
8
|
export * from './sets.js';
|
|
9
9
|
export * from './url.js';
|
|
10
|
-
export declare const optionallyNullishToUndefined: <
|
|
11
|
-
export declare const optionallyNullish: <
|
|
12
|
-
export declare const optionallyUndefined: <
|
|
10
|
+
export declare const optionallyNullishToUndefined: <T extends z.ZodTypeAny>(t: T) => z.ZodOptional<z.ZodPipe<z.ZodUnion<readonly [T, z.ZodNull, z.ZodUndefined]>, z.ZodTransform<Awaited<NonNullable<z.core.$InferUnionOutput<T>>> | undefined, z.core.$InferUnionOutput<T> | null | undefined>>>;
|
|
11
|
+
export declare const optionallyNullish: <T extends z.ZodTypeAny>(t: T) => z.ZodOptional<z.ZodUnion<readonly [T, z.ZodNull, z.ZodUndefined]>>;
|
|
12
|
+
export declare const optionallyUndefined: <T extends z.ZodTypeAny>(t: T) => z.ZodOptional<z.ZodUnion<readonly [T, z.ZodUndefined]>>;
|
|
13
13
|
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/common/schema/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/common/schema/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AAEzB,eAAO,MAAM,4BAA4B,GAAI,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,GAAG,CAAC,iNAI1D,CAAC;AAEhB,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,GAAG,CAAC,uEACZ,CAAC;AAEnD,eAAO,MAAM,mBAAmB,GAAI,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,GAAG,CAAC,4DACxB,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as z from 'zod/v4';
|
|
1
2
|
export * from './aggregate.js';
|
|
2
3
|
export * from './collection.js';
|
|
3
4
|
export * from './dates.js';
|
|
@@ -6,9 +7,9 @@ export * from './metadata.js';
|
|
|
6
7
|
export * from './pagination.js';
|
|
7
8
|
export * from './sets.js';
|
|
8
9
|
export * from './url.js';
|
|
9
|
-
export const optionallyNullishToUndefined = (t) =>
|
|
10
|
-
.
|
|
11
|
-
.pipe((v) => (v == null ? undefined : v))
|
|
10
|
+
export const optionallyNullishToUndefined = (t) => z
|
|
11
|
+
.union([t, z.null(), z.undefined()])
|
|
12
|
+
.pipe(z.transform((v) => (v == null ? undefined : v)))
|
|
12
13
|
.optional();
|
|
13
|
-
export const optionallyNullish = (t) => t.
|
|
14
|
-
export const optionallyUndefined = (t) => t.
|
|
14
|
+
export const optionallyNullish = (t) => z.union([t, z.null(), z.undefined()]).optional();
|
|
15
|
+
export const optionallyUndefined = (t) => z.union([t, z.undefined()]).optional();
|
|
@@ -1,32 +1,26 @@
|
|
|
1
|
-
import { type } from 'arktype';
|
|
2
1
|
import { describe, expect, test } from 'vitest';
|
|
2
|
+
import * as z from 'zod/v4';
|
|
3
3
|
import { optionallyNullishToUndefined } from './schema.js';
|
|
4
4
|
describe('Common Schema', () => {
|
|
5
5
|
describe('optionallyNullishToUndefined', () => {
|
|
6
6
|
test('should parse null string successfully', async () => {
|
|
7
|
-
const Schema =
|
|
8
|
-
foo: optionallyNullishToUndefined(
|
|
7
|
+
const Schema = z.object({
|
|
8
|
+
foo: optionallyNullishToUndefined(z.string()),
|
|
9
9
|
});
|
|
10
|
-
const result = Schema.
|
|
10
|
+
const result = Schema.parse({
|
|
11
11
|
foo: null,
|
|
12
12
|
});
|
|
13
|
-
|
|
14
|
-
console.log(result.summary);
|
|
15
|
-
}
|
|
16
|
-
expect(result).not.toBeInstanceOf(type.errors);
|
|
13
|
+
// Parse succeeds for valid data
|
|
17
14
|
expect(result.foo).toBeUndefined();
|
|
18
15
|
});
|
|
19
16
|
test('should parse undefined string successfully', async () => {
|
|
20
|
-
const Schema =
|
|
21
|
-
foo: optionallyNullishToUndefined(
|
|
17
|
+
const Schema = z.object({
|
|
18
|
+
foo: optionallyNullishToUndefined(z.string()),
|
|
22
19
|
});
|
|
23
|
-
const result = Schema.
|
|
20
|
+
const result = Schema.parse({
|
|
24
21
|
foo: undefined,
|
|
25
22
|
});
|
|
26
|
-
|
|
27
|
-
console.log(result.summary);
|
|
28
|
-
}
|
|
29
|
-
expect(result).not.toBeInstanceOf(type.errors);
|
|
23
|
+
// Parse succeeds for valid data
|
|
30
24
|
expect(result.foo).toBeUndefined();
|
|
31
25
|
});
|
|
32
26
|
});
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
export declare const
|
|
1
|
+
import * as z from 'zod/v4';
|
|
2
|
+
export declare const StringSetTypeSchema: z.ZodSet<z.ZodString>;
|
|
3
|
+
export declare const SpaceDelimitedStringToArraySchema: z.ZodPipe<z.ZodString, z.ZodTransform<string[], string>>;
|
|
4
|
+
export declare const StringArrayTypeSchema: z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>;
|
|
5
|
+
export declare const UniqueStringArraySchema: z.ZodPipe<z.ZodUnion<readonly [z.ZodUndefined, z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>, z.ZodSet<z.ZodString>]>, z.ZodTransform<string[] | undefined, Set<string> | string[] | undefined>>;
|
|
6
|
+
export declare const UniqueStringSetSchema: z.ZodPipe<z.ZodUnion<readonly [z.ZodUndefined, z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>, z.ZodSet<z.ZodString>]>, z.ZodTransform<Set<string> | undefined, Set<string> | string[] | undefined>>;
|
|
3
7
|
//# sourceMappingURL=sets.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sets.d.ts","sourceRoot":"","sources":["../../../../src/common/schema/sets.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sets.d.ts","sourceRoot":"","sources":["../../../../src/common/schema/sets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,eAAO,MAAM,mBAAmB,uBAAoB,CAAC;AACrD,eAAO,MAAM,iCAAiC,0DAEL,CAAC;AAI1C,eAAO,MAAM,qBAAqB,wEAEgB,CAAC;AAEnD,eAAO,MAAM,uBAAuB,2NAEwC,CAAC;AAE7E,eAAO,MAAM,qBAAqB,8NAEoC,CAAC"}
|
|
@@ -1,6 +1,16 @@
|
|
|
1
|
-
import
|
|
2
|
-
const
|
|
3
|
-
const
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import * as z from 'zod/v4';
|
|
2
|
+
export const StringSetTypeSchema = z.set(z.string());
|
|
3
|
+
export const SpaceDelimitedStringToArraySchema = z
|
|
4
|
+
.string()
|
|
5
|
+
.pipe(z.transform((v) => v.split(' ')));
|
|
6
|
+
// const StringToArraySchema = z.string().pipe(z.transform((v) => v.split(' ')));
|
|
7
|
+
// const UrlStringSchema = type('string.url[]').pipe((v) => v?.filter((i) => !!i));
|
|
8
|
+
export const StringArrayTypeSchema = z
|
|
9
|
+
.array(z.string())
|
|
10
|
+
.pipe(z.transform((v) => v?.filter((i) => !!i)));
|
|
11
|
+
export const UniqueStringArraySchema = z
|
|
12
|
+
.union([z.undefined(), StringArrayTypeSchema, StringSetTypeSchema])
|
|
13
|
+
.pipe(z.transform((v) => (v instanceof Set ? Array.from(v.values()) : v)));
|
|
14
|
+
export const UniqueStringSetSchema = z
|
|
15
|
+
.union([z.undefined(), StringArrayTypeSchema, StringSetTypeSchema])
|
|
16
|
+
.pipe(z.transform((v) => (!v || v instanceof Set ? v : new Set(v))));
|
|
@@ -1,2 +1,23 @@
|
|
|
1
|
+
import * as z from 'zod/v4';
|
|
1
2
|
export declare function appendSearchParams(path: string, params: Map<string, string | undefined | null> | URLSearchParams): string;
|
|
3
|
+
export declare const RelativeUrlPathSchema: z.ZodString;
|
|
4
|
+
export type RelativeUrlPath = z.output<typeof RelativeUrlPathSchema>;
|
|
5
|
+
export declare const WebUrlObjectSchema: z.ZodUnion<[z.ZodPipe<z.ZodURL, z.ZodTransform<URL, string>>, z.ZodCustom<URL, URL>]>;
|
|
6
|
+
export type WebUrlObjectInput = z.input<typeof WebUrlObjectSchema>;
|
|
7
|
+
export type WebUrlObject = z.output<typeof WebUrlObjectSchema>;
|
|
8
|
+
export declare const WebUrlStringSchema: z.ZodUnion<[z.ZodPipe<z.ZodCustom<URL, URL>, z.ZodTransform<string, URL>>, z.ZodURL]>;
|
|
9
|
+
export type WebUrlStringInput = z.input<typeof WebUrlStringSchema>;
|
|
10
|
+
export type WebUrlString = z.output<typeof WebUrlStringSchema>;
|
|
11
|
+
export declare const UniqueWebUrlObjectArraySchema: z.ZodPipe<z.ZodUnion<readonly [z.ZodUndefined, z.ZodPipe<z.ZodArray<z.ZodUnion<[z.ZodPipe<z.ZodURL, z.ZodTransform<URL, string>>, z.ZodCustom<URL, URL>]>>, z.ZodTransform<URL[], URL[]>>, z.ZodCustom<Set<URL>, Set<URL>>]>, z.ZodTransform<URL[] | undefined, Set<URL> | URL[] | undefined>>;
|
|
12
|
+
export type UniqueWebUrlObjectArrayInput = z.input<typeof UniqueWebUrlObjectArraySchema>;
|
|
13
|
+
export type UniqueWebUrlObjectArray = z.output<typeof UniqueWebUrlObjectArraySchema>;
|
|
14
|
+
export declare const UniqueWebUrlStringArraySchema: z.ZodPipe<z.ZodUnion<readonly [z.ZodUndefined, z.ZodPipe<z.ZodArray<z.ZodUnion<[z.ZodPipe<z.ZodURL, z.ZodTransform<URL, string>>, z.ZodCustom<URL, URL>]>>, z.ZodTransform<URL[], URL[]>>, z.ZodCustom<Set<URL>, Set<URL>>]>, z.ZodTransform<string[] | undefined, Set<URL> | URL[] | undefined>>;
|
|
15
|
+
export type UniqueWebUrlStringArrayInput = z.input<typeof UniqueWebUrlStringArraySchema>;
|
|
16
|
+
export type UniqueWebUrlStringArray = z.output<typeof UniqueWebUrlStringArraySchema>;
|
|
17
|
+
export declare const UniqueWebUrlObjectSetSchema: z.ZodPipe<z.ZodUnion<readonly [z.ZodUndefined, z.ZodPipe<z.ZodArray<z.ZodUnion<[z.ZodPipe<z.ZodURL, z.ZodTransform<URL, string>>, z.ZodCustom<URL, URL>]>>, z.ZodTransform<URL[], URL[]>>, z.ZodCustom<Set<URL>, Set<URL>>]>, z.ZodTransform<Set<URL> | undefined, Set<URL> | URL[] | undefined>>;
|
|
18
|
+
export type UniqueWebUrlObjectSetInput = z.input<typeof UniqueWebUrlObjectSetSchema>;
|
|
19
|
+
export type UniqueWebUrlObjectSet = z.output<typeof UniqueWebUrlObjectSetSchema>;
|
|
20
|
+
export declare const UniqueWebUrlStringSetSchema: z.ZodPipe<z.ZodUnion<readonly [z.ZodUndefined, z.ZodPipe<z.ZodArray<z.ZodUnion<[z.ZodPipe<z.ZodURL, z.ZodTransform<URL, string>>, z.ZodCustom<URL, URL>]>>, z.ZodTransform<URL[], URL[]>>, z.ZodCustom<Set<URL>, Set<URL>>]>, z.ZodTransform<Set<string> | undefined, Set<URL> | URL[] | undefined>>;
|
|
21
|
+
export type UniqueWebUrlStringSetInput = z.input<typeof UniqueWebUrlStringSetSchema>;
|
|
22
|
+
export type UniqueWebUrlStringSet = z.output<typeof UniqueWebUrlStringSetSchema>;
|
|
2
23
|
//# sourceMappingURL=url.d.ts.map
|