@atlasauth/cli 0.23.0 → 0.25.0
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/CHANGELOG.md +13 -0
- package/package.json +3 -3
- package/dist/args.d.ts +0 -601
- package/dist/args.js +0 -289
- package/dist/args.js.map +0 -1
- package/dist/cli.d.ts +0 -2
- package/dist/cli.js +0 -19
- package/dist/cli.js.map +0 -1
- package/dist/commands/actions-gallery.d.ts +0 -8
- package/dist/commands/actions-gallery.js +0 -197
- package/dist/commands/actions-gallery.js.map +0 -1
- package/dist/commands/actions.d.ts +0 -13
- package/dist/commands/actions.js +0 -135
- package/dist/commands/actions.js.map +0 -1
- package/dist/commands/admin.d.ts +0 -49
- package/dist/commands/admin.js +0 -353
- package/dist/commands/admin.js.map +0 -1
- package/dist/commands/api-keys.d.ts +0 -4
- package/dist/commands/api-keys.js +0 -96
- package/dist/commands/api-keys.js.map +0 -1
- package/dist/commands/auth.d.ts +0 -25
- package/dist/commands/auth.js +0 -102
- package/dist/commands/auth.js.map +0 -1
- package/dist/commands/config.d.ts +0 -90
- package/dist/commands/config.js +0 -1430
- package/dist/commands/config.js.map +0 -1
- package/dist/commands/csp.d.ts +0 -32
- package/dist/commands/csp.js +0 -180
- package/dist/commands/csp.js.map +0 -1
- package/dist/commands/dev.d.ts +0 -8
- package/dist/commands/dev.js +0 -84
- package/dist/commands/dev.js.map +0 -1
- package/dist/commands/fga.d.ts +0 -10
- package/dist/commands/fga.js +0 -146
- package/dist/commands/fga.js.map +0 -1
- package/dist/commands/golive.d.ts +0 -40
- package/dist/commands/golive.js +0 -285
- package/dist/commands/golive.js.map +0 -1
- package/dist/commands/id-accounts.d.ts +0 -13
- package/dist/commands/id-accounts.js +0 -195
- package/dist/commands/id-accounts.js.map +0 -1
- package/dist/commands/import-better-auth.d.ts +0 -3
- package/dist/commands/import-better-auth.js +0 -164
- package/dist/commands/import-better-auth.js.map +0 -1
- package/dist/commands/import.d.ts +0 -3
- package/dist/commands/import.js +0 -123
- package/dist/commands/import.js.map +0 -1
- package/dist/commands/info.d.ts +0 -75
- package/dist/commands/info.js +0 -362
- package/dist/commands/info.js.map +0 -1
- package/dist/commands/init.d.ts +0 -3
- package/dist/commands/init.js +0 -438
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/integrations.d.ts +0 -8
- package/dist/commands/integrations.js +0 -112
- package/dist/commands/integrations.js.map +0 -1
- package/dist/commands/listen.d.ts +0 -17
- package/dist/commands/listen.js +0 -223
- package/dist/commands/listen.js.map +0 -1
- package/dist/commands/mcp.d.ts +0 -38
- package/dist/commands/mcp.js +0 -111
- package/dist/commands/mcp.js.map +0 -1
- package/dist/commands/migrate.d.ts +0 -16
- package/dist/commands/migrate.js +0 -114
- package/dist/commands/migrate.js.map +0 -1
- package/dist/commands/move-origin.d.ts +0 -11
- package/dist/commands/move-origin.js +0 -95
- package/dist/commands/move-origin.js.map +0 -1
- package/dist/commands/operator.d.ts +0 -18
- package/dist/commands/operator.js +0 -238
- package/dist/commands/operator.js.map +0 -1
- package/dist/commands/orgs.d.ts +0 -4
- package/dist/commands/orgs.js +0 -72
- package/dist/commands/orgs.js.map +0 -1
- package/dist/commands/pages.d.ts +0 -14
- package/dist/commands/pages.js +0 -113
- package/dist/commands/pages.js.map +0 -1
- package/dist/commands/partner-platforms.d.ts +0 -10
- package/dist/commands/partner-platforms.js +0 -157
- package/dist/commands/partner-platforms.js.map +0 -1
- package/dist/commands/project-commands.d.ts +0 -38
- package/dist/commands/project-commands.js +0 -361
- package/dist/commands/project-commands.js.map +0 -1
- package/dist/commands/referrals.d.ts +0 -69
- package/dist/commands/referrals.js +0 -1056
- package/dist/commands/referrals.js.map +0 -1
- package/dist/commands/resources.d.ts +0 -44
- package/dist/commands/resources.js +0 -234
- package/dist/commands/resources.js.map +0 -1
- package/dist/commands/sessions.d.ts +0 -4
- package/dist/commands/sessions.js +0 -28
- package/dist/commands/sessions.js.map +0 -1
- package/dist/commands/shared.d.ts +0 -38
- package/dist/commands/shared.js +0 -69
- package/dist/commands/shared.js.map +0 -1
- package/dist/commands/status.d.ts +0 -3
- package/dist/commands/status.js +0 -77
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/users.d.ts +0 -4
- package/dist/commands/users.js +0 -100
- package/dist/commands/users.js.map +0 -1
- package/dist/commands/webhooks.d.ts +0 -34
- package/dist/commands/webhooks.js +0 -301
- package/dist/commands/webhooks.js.map +0 -1
- package/dist/config-http.d.ts +0 -29
- package/dist/config-http.js +0 -64
- package/dist/config-http.js.map +0 -1
- package/dist/config.d.ts +0 -64
- package/dist/config.js +0 -69
- package/dist/config.js.map +0 -1
- package/dist/context.d.ts +0 -72
- package/dist/context.js +0 -27
- package/dist/context.js.map +0 -1
- package/dist/errors.d.ts +0 -15
- package/dist/errors.js +0 -25
- package/dist/errors.js.map +0 -1
- package/dist/help.d.ts +0 -8
- package/dist/help.js +0 -868
- package/dist/help.js.map +0 -1
- package/dist/import/csv.d.ts +0 -6
- package/dist/import/csv.js +0 -63
- package/dist/import/csv.js.map +0 -1
- package/dist/import/vendors.d.ts +0 -57
- package/dist/import/vendors.js +0 -568
- package/dist/import/vendors.js.map +0 -1
- package/dist/index.d.ts +0 -32
- package/dist/index.js +0 -79
- package/dist/index.js.map +0 -1
- package/dist/io.d.ts +0 -21
- package/dist/io.js +0 -28
- package/dist/io.js.map +0 -1
- package/dist/migrate/appwrite/plugin.d.ts +0 -2
- package/dist/migrate/appwrite/plugin.js +0 -103
- package/dist/migrate/appwrite/plugin.js.map +0 -1
- package/dist/migrate/auth0/plugin.d.ts +0 -2
- package/dist/migrate/auth0/plugin.js +0 -126
- package/dist/migrate/auth0/plugin.js.map +0 -1
- package/dist/migrate/authentik/plugin.d.ts +0 -2
- package/dist/migrate/authentik/plugin.js +0 -135
- package/dist/migrate/authentik/plugin.js.map +0 -1
- package/dist/migrate/azure-ad-b2c/plugin.d.ts +0 -8
- package/dist/migrate/azure-ad-b2c/plugin.js +0 -165
- package/dist/migrate/azure-ad-b2c/plugin.js.map +0 -1
- package/dist/migrate/better-auth/integration.d.ts +0 -59
- package/dist/migrate/better-auth/integration.js +0 -81
- package/dist/migrate/better-auth/integration.js.map +0 -1
- package/dist/migrate/better-auth/orchestrator.d.ts +0 -43
- package/dist/migrate/better-auth/orchestrator.js +0 -525
- package/dist/migrate/better-auth/orchestrator.js.map +0 -1
- package/dist/migrate/better-auth/output.d.ts +0 -20
- package/dist/migrate/better-auth/output.js +0 -146
- package/dist/migrate/better-auth/output.js.map +0 -1
- package/dist/migrate/better-auth/translate.d.ts +0 -77
- package/dist/migrate/better-auth/translate.js +0 -1989
- package/dist/migrate/better-auth/translate.js.map +0 -1
- package/dist/migrate/clerk/plugin.d.ts +0 -2
- package/dist/migrate/clerk/plugin.js +0 -76
- package/dist/migrate/clerk/plugin.js.map +0 -1
- package/dist/migrate/cognito/plugin.d.ts +0 -5
- package/dist/migrate/cognito/plugin.js +0 -170
- package/dist/migrate/cognito/plugin.js.map +0 -1
- package/dist/migrate/corbado/plugin.d.ts +0 -2
- package/dist/migrate/corbado/plugin.js +0 -63
- package/dist/migrate/corbado/plugin.js.map +0 -1
- package/dist/migrate/descope/plugin.d.ts +0 -2
- package/dist/migrate/descope/plugin.js +0 -83
- package/dist/migrate/descope/plugin.js.map +0 -1
- package/dist/migrate/entra-external-id/plugin.d.ts +0 -8
- package/dist/migrate/entra-external-id/plugin.js +0 -12
- package/dist/migrate/entra-external-id/plugin.js.map +0 -1
- package/dist/migrate/export/appwrite-config.d.ts +0 -28
- package/dist/migrate/export/appwrite-config.js +0 -170
- package/dist/migrate/export/appwrite-config.js.map +0 -1
- package/dist/migrate/export/appwrite.d.ts +0 -51
- package/dist/migrate/export/appwrite.js +0 -288
- package/dist/migrate/export/appwrite.js.map +0 -1
- package/dist/migrate/export/auth0-config.d.ts +0 -29
- package/dist/migrate/export/auth0-config.js +0 -249
- package/dist/migrate/export/auth0-config.js.map +0 -1
- package/dist/migrate/export/auth0.d.ts +0 -62
- package/dist/migrate/export/auth0.js +0 -575
- package/dist/migrate/export/auth0.js.map +0 -1
- package/dist/migrate/export/authentik-config.d.ts +0 -45
- package/dist/migrate/export/authentik-config.js +0 -357
- package/dist/migrate/export/authentik-config.js.map +0 -1
- package/dist/migrate/export/authentik.d.ts +0 -110
- package/dist/migrate/export/authentik.js +0 -838
- package/dist/migrate/export/authentik.js.map +0 -1
- package/dist/migrate/export/azure-config.d.ts +0 -58
- package/dist/migrate/export/azure-config.js +0 -344
- package/dist/migrate/export/azure-config.js.map +0 -1
- package/dist/migrate/export/azure.d.ts +0 -85
- package/dist/migrate/export/azure.js +0 -373
- package/dist/migrate/export/azure.js.map +0 -1
- package/dist/migrate/export/clerk-config.d.ts +0 -26
- package/dist/migrate/export/clerk-config.js +0 -227
- package/dist/migrate/export/clerk-config.js.map +0 -1
- package/dist/migrate/export/clerk.d.ts +0 -46
- package/dist/migrate/export/clerk.js +0 -486
- package/dist/migrate/export/clerk.js.map +0 -1
- package/dist/migrate/export/cognito-config.d.ts +0 -25
- package/dist/migrate/export/cognito-config.js +0 -273
- package/dist/migrate/export/cognito-config.js.map +0 -1
- package/dist/migrate/export/cognito.d.ts +0 -103
- package/dist/migrate/export/cognito.js +0 -441
- package/dist/migrate/export/cognito.js.map +0 -1
- package/dist/migrate/export/corbado-config.d.ts +0 -20
- package/dist/migrate/export/corbado-config.js +0 -63
- package/dist/migrate/export/corbado-config.js.map +0 -1
- package/dist/migrate/export/corbado.d.ts +0 -37
- package/dist/migrate/export/corbado.js +0 -132
- package/dist/migrate/export/corbado.js.map +0 -1
- package/dist/migrate/export/descope.d.ts +0 -35
- package/dist/migrate/export/descope.js +0 -208
- package/dist/migrate/export/descope.js.map +0 -1
- package/dist/migrate/export/fake-vendor.test-helper.d.ts +0 -27
- package/dist/migrate/export/fake-vendor.test-helper.js +0 -41
- package/dist/migrate/export/fake-vendor.test-helper.js.map +0 -1
- package/dist/migrate/export/firebase-config.d.ts +0 -24
- package/dist/migrate/export/firebase-config.js +0 -215
- package/dist/migrate/export/firebase-config.js.map +0 -1
- package/dist/migrate/export/firebase.d.ts +0 -102
- package/dist/migrate/export/firebase.js +0 -464
- package/dist/migrate/export/firebase.js.map +0 -1
- package/dist/migrate/export/frameworks/app-users.d.ts +0 -42
- package/dist/migrate/export/frameworks/app-users.js +0 -161
- package/dist/migrate/export/frameworks/app-users.js.map +0 -1
- package/dist/migrate/export/frameworks/authjs.d.ts +0 -41
- package/dist/migrate/export/frameworks/authjs.js +0 -146
- package/dist/migrate/export/frameworks/authjs.js.map +0 -1
- package/dist/migrate/export/frameworks/devise.d.ts +0 -39
- package/dist/migrate/export/frameworks/devise.js +0 -218
- package/dist/migrate/export/frameworks/devise.js.map +0 -1
- package/dist/migrate/export/frameworks/django.d.ts +0 -45
- package/dist/migrate/export/frameworks/django.js +0 -315
- package/dist/migrate/export/frameworks/django.js.map +0 -1
- package/dist/migrate/export/frameworks/lucia.d.ts +0 -42
- package/dist/migrate/export/frameworks/lucia.js +0 -263
- package/dist/migrate/export/frameworks/lucia.js.map +0 -1
- package/dist/migrate/export/frameworks/tables.d.ts +0 -90
- package/dist/migrate/export/frameworks/tables.js +0 -325
- package/dist/migrate/export/frameworks/tables.js.map +0 -1
- package/dist/migrate/export/frameworks/webauthn.d.ts +0 -25
- package/dist/migrate/export/frameworks/webauthn.js +0 -130
- package/dist/migrate/export/frameworks/webauthn.js.map +0 -1
- package/dist/migrate/export/frontegg-config.d.ts +0 -29
- package/dist/migrate/export/frontegg-config.js +0 -238
- package/dist/migrate/export/frontegg-config.js.map +0 -1
- package/dist/migrate/export/frontegg.d.ts +0 -67
- package/dist/migrate/export/frontegg.js +0 -410
- package/dist/migrate/export/frontegg.js.map +0 -1
- package/dist/migrate/export/fusionauth-config.d.ts +0 -26
- package/dist/migrate/export/fusionauth-config.js +0 -226
- package/dist/migrate/export/fusionauth-config.js.map +0 -1
- package/dist/migrate/export/fusionauth.d.ts +0 -99
- package/dist/migrate/export/fusionauth.js +0 -642
- package/dist/migrate/export/fusionauth.js.map +0 -1
- package/dist/migrate/export/hanko-config.d.ts +0 -27
- package/dist/migrate/export/hanko-config.js +0 -265
- package/dist/migrate/export/hanko-config.js.map +0 -1
- package/dist/migrate/export/hanko.d.ts +0 -52
- package/dist/migrate/export/hanko.js +0 -605
- package/dist/migrate/export/hanko.js.map +0 -1
- package/dist/migrate/export/keycloak-config.d.ts +0 -19
- package/dist/migrate/export/keycloak-config.js +0 -219
- package/dist/migrate/export/keycloak-config.js.map +0 -1
- package/dist/migrate/export/keycloak.d.ts +0 -155
- package/dist/migrate/export/keycloak.js +0 -878
- package/dist/migrate/export/keycloak.js.map +0 -1
- package/dist/migrate/export/kinde-descope-config.d.ts +0 -38
- package/dist/migrate/export/kinde-descope-config.js +0 -172
- package/dist/migrate/export/kinde-descope-config.js.map +0 -1
- package/dist/migrate/export/kinde.d.ts +0 -57
- package/dist/migrate/export/kinde.js +0 -333
- package/dist/migrate/export/kinde.js.map +0 -1
- package/dist/migrate/export/ldap.d.ts +0 -53
- package/dist/migrate/export/ldap.js +0 -277
- package/dist/migrate/export/ldap.js.map +0 -1
- package/dist/migrate/export/logto-config.d.ts +0 -27
- package/dist/migrate/export/logto-config.js +0 -264
- package/dist/migrate/export/logto-config.js.map +0 -1
- package/dist/migrate/export/logto.d.ts +0 -150
- package/dist/migrate/export/logto.js +0 -809
- package/dist/migrate/export/logto.js.map +0 -1
- package/dist/migrate/export/magic-config.d.ts +0 -14
- package/dist/migrate/export/magic-config.js +0 -28
- package/dist/migrate/export/magic-config.js.map +0 -1
- package/dist/migrate/export/magic.d.ts +0 -31
- package/dist/migrate/export/magic.js +0 -93
- package/dist/migrate/export/magic.js.map +0 -1
- package/dist/migrate/export/mini-yaml.d.ts +0 -19
- package/dist/migrate/export/mini-yaml.js +0 -581
- package/dist/migrate/export/mini-yaml.js.map +0 -1
- package/dist/migrate/export/nhost-config.d.ts +0 -26
- package/dist/migrate/export/nhost-config.js +0 -360
- package/dist/migrate/export/nhost-config.js.map +0 -1
- package/dist/migrate/export/nhost.d.ts +0 -64
- package/dist/migrate/export/nhost.js +0 -304
- package/dist/migrate/export/nhost.js.map +0 -1
- package/dist/migrate/export/okta-config.d.ts +0 -30
- package/dist/migrate/export/okta-config.js +0 -205
- package/dist/migrate/export/okta-config.js.map +0 -1
- package/dist/migrate/export/okta.d.ts +0 -43
- package/dist/migrate/export/okta.js +0 -337
- package/dist/migrate/export/okta.js.map +0 -1
- package/dist/migrate/export/onelogin.d.ts +0 -22
- package/dist/migrate/export/onelogin.js +0 -123
- package/dist/migrate/export/onelogin.js.map +0 -1
- package/dist/migrate/export/ory-config.d.ts +0 -58
- package/dist/migrate/export/ory-config.js +0 -451
- package/dist/migrate/export/ory-config.js.map +0 -1
- package/dist/migrate/export/ory.d.ts +0 -81
- package/dist/migrate/export/ory.js +0 -555
- package/dist/migrate/export/ory.js.map +0 -1
- package/dist/migrate/export/password-detect.d.ts +0 -29
- package/dist/migrate/export/password-detect.js +0 -81
- package/dist/migrate/export/password-detect.js.map +0 -1
- package/dist/migrate/export/pingone.d.ts +0 -36
- package/dist/migrate/export/pingone.js +0 -218
- package/dist/migrate/export/pingone.js.map +0 -1
- package/dist/migrate/export/plugin-kit.d.ts +0 -25
- package/dist/migrate/export/plugin-kit.js +0 -82
- package/dist/migrate/export/plugin-kit.js.map +0 -1
- package/dist/migrate/export/pocketbase-config.d.ts +0 -28
- package/dist/migrate/export/pocketbase-config.js +0 -180
- package/dist/migrate/export/pocketbase-config.js.map +0 -1
- package/dist/migrate/export/pocketbase.d.ts +0 -52
- package/dist/migrate/export/pocketbase.js +0 -243
- package/dist/migrate/export/pocketbase.js.map +0 -1
- package/dist/migrate/export/project-files.d.ts +0 -15
- package/dist/migrate/export/project-files.js +0 -43
- package/dist/migrate/export/project-files.js.map +0 -1
- package/dist/migrate/export/propelauth-config.d.ts +0 -18
- package/dist/migrate/export/propelauth-config.js +0 -58
- package/dist/migrate/export/propelauth-config.js.map +0 -1
- package/dist/migrate/export/propelauth-harness.test-helper.d.ts +0 -62
- package/dist/migrate/export/propelauth-harness.test-helper.js +0 -109
- package/dist/migrate/export/propelauth-harness.test-helper.js.map +0 -1
- package/dist/migrate/export/propelauth.d.ts +0 -48
- package/dist/migrate/export/propelauth.js +0 -255
- package/dist/migrate/export/propelauth.js.map +0 -1
- package/dist/migrate/export/record-set.d.ts +0 -44
- package/dist/migrate/export/record-set.js +0 -98
- package/dist/migrate/export/record-set.js.map +0 -1
- package/dist/migrate/export/source-lines.d.ts +0 -17
- package/dist/migrate/export/source-lines.js +0 -43
- package/dist/migrate/export/source-lines.js.map +0 -1
- package/dist/migrate/export/sso-metadata.d.ts +0 -47
- package/dist/migrate/export/sso-metadata.js +0 -180
- package/dist/migrate/export/sso-metadata.js.map +0 -1
- package/dist/migrate/export/stytch-config.d.ts +0 -22
- package/dist/migrate/export/stytch-config.js +0 -102
- package/dist/migrate/export/stytch-config.js.map +0 -1
- package/dist/migrate/export/stytch.d.ts +0 -68
- package/dist/migrate/export/stytch.js +0 -510
- package/dist/migrate/export/stytch.js.map +0 -1
- package/dist/migrate/export/supabase-config.d.ts +0 -48
- package/dist/migrate/export/supabase-config.js +0 -408
- package/dist/migrate/export/supabase-config.js.map +0 -1
- package/dist/migrate/export/supabase.d.ts +0 -86
- package/dist/migrate/export/supabase.js +0 -524
- package/dist/migrate/export/supabase.js.map +0 -1
- package/dist/migrate/export/supertokens-config.d.ts +0 -20
- package/dist/migrate/export/supertokens-config.js +0 -150
- package/dist/migrate/export/supertokens-config.js.map +0 -1
- package/dist/migrate/export/supertokens.d.ts +0 -125
- package/dist/migrate/export/supertokens.js +0 -464
- package/dist/migrate/export/supertokens.js.map +0 -1
- package/dist/migrate/export/table.d.ts +0 -35
- package/dist/migrate/export/table.js +0 -248
- package/dist/migrate/export/table.js.map +0 -1
- package/dist/migrate/export/translate-kit.d.ts +0 -46
- package/dist/migrate/export/translate-kit.js +0 -148
- package/dist/migrate/export/translate-kit.js.map +0 -1
- package/dist/migrate/export/userfront-config.d.ts +0 -15
- package/dist/migrate/export/userfront-config.js +0 -49
- package/dist/migrate/export/userfront-config.js.map +0 -1
- package/dist/migrate/export/userfront.d.ts +0 -38
- package/dist/migrate/export/userfront.js +0 -189
- package/dist/migrate/export/userfront.js.map +0 -1
- package/dist/migrate/export/vendor-http.d.ts +0 -46
- package/dist/migrate/export/vendor-http.js +0 -138
- package/dist/migrate/export/vendor-http.js.map +0 -1
- package/dist/migrate/export/workos-config.d.ts +0 -23
- package/dist/migrate/export/workos-config.js +0 -125
- package/dist/migrate/export/workos-config.js.map +0 -1
- package/dist/migrate/export/workos.d.ts +0 -46
- package/dist/migrate/export/workos.js +0 -272
- package/dist/migrate/export/workos.js.map +0 -1
- package/dist/migrate/export/zip.d.ts +0 -8
- package/dist/migrate/export/zip.js +0 -66
- package/dist/migrate/export/zip.js.map +0 -1
- package/dist/migrate/export/zitadel-config.d.ts +0 -37
- package/dist/migrate/export/zitadel-config.js +0 -279
- package/dist/migrate/export/zitadel-config.js.map +0 -1
- package/dist/migrate/export/zitadel.d.ts +0 -82
- package/dist/migrate/export/zitadel.js +0 -447
- package/dist/migrate/export/zitadel.js.map +0 -1
- package/dist/migrate/firebase/plugin.d.ts +0 -2
- package/dist/migrate/firebase/plugin.js +0 -152
- package/dist/migrate/firebase/plugin.js.map +0 -1
- package/dist/migrate/framework/builtins.d.ts +0 -2
- package/dist/migrate/framework/builtins.js +0 -52
- package/dist/migrate/framework/builtins.js.map +0 -1
- package/dist/migrate/framework/commands.d.ts +0 -20
- package/dist/migrate/framework/commands.js +0 -58
- package/dist/migrate/framework/commands.js.map +0 -1
- package/dist/migrate/framework/custom.d.ts +0 -12
- package/dist/migrate/framework/custom.js +0 -96
- package/dist/migrate/framework/custom.js.map +0 -1
- package/dist/migrate/framework/orchestrator.d.ts +0 -113
- package/dist/migrate/framework/orchestrator.js +0 -532
- package/dist/migrate/framework/orchestrator.js.map +0 -1
- package/dist/migrate/framework/plugin.d.ts +0 -167
- package/dist/migrate/framework/plugin.js +0 -3
- package/dist/migrate/framework/plugin.js.map +0 -1
- package/dist/migrate/framework/registry.d.ts +0 -11
- package/dist/migrate/framework/registry.js +0 -44
- package/dist/migrate/framework/registry.js.map +0 -1
- package/dist/migrate/framework/report.d.ts +0 -17
- package/dist/migrate/framework/report.js +0 -103
- package/dist/migrate/framework/report.js.map +0 -1
- package/dist/migrate/frameworks/plugins.d.ts +0 -29
- package/dist/migrate/frameworks/plugins.js +0 -402
- package/dist/migrate/frameworks/plugins.js.map +0 -1
- package/dist/migrate/frameworks/report.d.ts +0 -92
- package/dist/migrate/frameworks/report.js +0 -207
- package/dist/migrate/frameworks/report.js.map +0 -1
- package/dist/migrate/frameworks/translate-js.d.ts +0 -5
- package/dist/migrate/frameworks/translate-js.js +0 -503
- package/dist/migrate/frameworks/translate-js.js.map +0 -1
- package/dist/migrate/frameworks/translate-rails-django.d.ts +0 -3
- package/dist/migrate/frameworks/translate-rails-django.js +0 -1391
- package/dist/migrate/frameworks/translate-rails-django.js.map +0 -1
- package/dist/migrate/frontegg/plugin.d.ts +0 -2
- package/dist/migrate/frontegg/plugin.js +0 -78
- package/dist/migrate/frontegg/plugin.js.map +0 -1
- package/dist/migrate/fusionauth/plugin.d.ts +0 -2
- package/dist/migrate/fusionauth/plugin.js +0 -109
- package/dist/migrate/fusionauth/plugin.js.map +0 -1
- package/dist/migrate/hanko/plugin.d.ts +0 -2
- package/dist/migrate/hanko/plugin.js +0 -100
- package/dist/migrate/hanko/plugin.js.map +0 -1
- package/dist/migrate/keycloak/plugin.d.ts +0 -2
- package/dist/migrate/keycloak/plugin.js +0 -148
- package/dist/migrate/keycloak/plugin.js.map +0 -1
- package/dist/migrate/kinde/plugin.d.ts +0 -2
- package/dist/migrate/kinde/plugin.js +0 -105
- package/dist/migrate/kinde/plugin.js.map +0 -1
- package/dist/migrate/ldap/plugin.d.ts +0 -2
- package/dist/migrate/ldap/plugin.js +0 -73
- package/dist/migrate/ldap/plugin.js.map +0 -1
- package/dist/migrate/logto/plugin.d.ts +0 -2
- package/dist/migrate/logto/plugin.js +0 -131
- package/dist/migrate/logto/plugin.js.map +0 -1
- package/dist/migrate/magic/plugin.d.ts +0 -2
- package/dist/migrate/magic/plugin.js +0 -56
- package/dist/migrate/magic/plugin.js.map +0 -1
- package/dist/migrate/nhost/plugin.d.ts +0 -2
- package/dist/migrate/nhost/plugin.js +0 -115
- package/dist/migrate/nhost/plugin.js.map +0 -1
- package/dist/migrate/oidc/plugin.d.ts +0 -2
- package/dist/migrate/oidc/plugin.js +0 -73
- package/dist/migrate/oidc/plugin.js.map +0 -1
- package/dist/migrate/okta/plugin.d.ts +0 -2
- package/dist/migrate/okta/plugin.js +0 -105
- package/dist/migrate/okta/plugin.js.map +0 -1
- package/dist/migrate/onelogin/plugin.d.ts +0 -2
- package/dist/migrate/onelogin/plugin.js +0 -61
- package/dist/migrate/onelogin/plugin.js.map +0 -1
- package/dist/migrate/ory/plugin.d.ts +0 -2
- package/dist/migrate/ory/plugin.js +0 -186
- package/dist/migrate/ory/plugin.js.map +0 -1
- package/dist/migrate/ping-identity/plugin.d.ts +0 -2
- package/dist/migrate/ping-identity/plugin.js +0 -100
- package/dist/migrate/ping-identity/plugin.js.map +0 -1
- package/dist/migrate/pocketbase/plugin.d.ts +0 -2
- package/dist/migrate/pocketbase/plugin.js +0 -99
- package/dist/migrate/pocketbase/plugin.js.map +0 -1
- package/dist/migrate/propelauth/plugin.d.ts +0 -2
- package/dist/migrate/propelauth/plugin.js +0 -65
- package/dist/migrate/propelauth/plugin.js.map +0 -1
- package/dist/migrate/saml/plugin.d.ts +0 -2
- package/dist/migrate/saml/plugin.js +0 -79
- package/dist/migrate/saml/plugin.js.map +0 -1
- package/dist/migrate/stytch/plugin.d.ts +0 -2
- package/dist/migrate/stytch/plugin.js +0 -97
- package/dist/migrate/stytch/plugin.js.map +0 -1
- package/dist/migrate/supabase/plugin.d.ts +0 -2
- package/dist/migrate/supabase/plugin.js +0 -149
- package/dist/migrate/supabase/plugin.js.map +0 -1
- package/dist/migrate/supertokens/plugin.d.ts +0 -2
- package/dist/migrate/supertokens/plugin.js +0 -114
- package/dist/migrate/supertokens/plugin.js.map +0 -1
- package/dist/migrate/user-table/plugin.d.ts +0 -2
- package/dist/migrate/user-table/plugin.js +0 -62
- package/dist/migrate/user-table/plugin.js.map +0 -1
- package/dist/migrate/userfront/plugin.d.ts +0 -2
- package/dist/migrate/userfront/plugin.js +0 -60
- package/dist/migrate/userfront/plugin.js.map +0 -1
- package/dist/migrate/workos/plugin.d.ts +0 -2
- package/dist/migrate/workos/plugin.js +0 -81
- package/dist/migrate/workos/plugin.js.map +0 -1
- package/dist/migrate/zitadel/plugin.d.ts +0 -2
- package/dist/migrate/zitadel/plugin.js +0 -114
- package/dist/migrate/zitadel/plugin.js.map +0 -1
- package/dist/output.d.ts +0 -41
- package/dist/output.js +0 -72
- package/dist/output.js.map +0 -1
- package/dist/project.d.ts +0 -64
- package/dist/project.js +0 -86
- package/dist/project.js.map +0 -1
- package/dist/prompt.d.ts +0 -15
- package/dist/prompt.js +0 -46
- package/dist/prompt.js.map +0 -1
- package/dist/run.d.ts +0 -12
- package/dist/run.js +0 -157
- package/dist/run.js.map +0 -1
- package/dist/secrets.d.ts +0 -41
- package/dist/secrets.js +0 -142
- package/dist/secrets.js.map +0 -1
- package/dist/serialize.d.ts +0 -30
- package/dist/serialize.js +0 -131
- package/dist/serialize.js.map +0 -1
- package/dist/version.d.ts +0 -7
- package/dist/version.js +0 -21
- package/dist/version.js.map +0 -1
package/dist/commands/fga.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fga.js","sourceRoot":"","sources":["../../src/commands/fga.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { type ParsedArgs } from '../args';
|
|
2
|
-
import type { ConfigHttp } from '../config-http';
|
|
3
|
-
import type { RunContext } from '../context';
|
|
4
|
-
/**
|
|
5
|
-
* `atlas golive --origin <url>`: take an instance from "configured" to "live"
|
|
6
|
-
* for one app origin. Runs the steps in order and stops at the first failure,
|
|
7
|
-
* printing the fix. `--dry-run` sends every write with `?dry_run=true`, so the
|
|
8
|
-
* server validates it and nothing changes.
|
|
9
|
-
*/
|
|
10
|
-
/** One result line. `ok: false` carries the fix. */
|
|
11
|
-
export interface CheckResult {
|
|
12
|
-
id: string;
|
|
13
|
-
ok: boolean;
|
|
14
|
-
detail: string;
|
|
15
|
-
fix?: string;
|
|
16
|
-
}
|
|
17
|
-
interface Domain {
|
|
18
|
-
id: string;
|
|
19
|
-
role: string;
|
|
20
|
-
host: string;
|
|
21
|
-
status: string;
|
|
22
|
-
method?: 'cname' | 'path';
|
|
23
|
-
base_path?: string | null;
|
|
24
|
-
action?: string | null;
|
|
25
|
-
failure_reason?: string | null;
|
|
26
|
-
verified?: boolean;
|
|
27
|
-
}
|
|
28
|
-
/** The cookies the SDKs read: a consent manager that does not declare them may block sign-in. */
|
|
29
|
-
export declare const SDK_COOKIES: readonly ["__session", "__atlas_uat", "__atlas_rt", "__client"];
|
|
30
|
-
/** Parse `--origin` to a bare origin (scheme + host + port). */
|
|
31
|
-
export declare function parseOrigin(raw: string | undefined, command: string): URL;
|
|
32
|
-
/** The custom domain serving this origin's host: an exact host match, else the Frontend API domain. */
|
|
33
|
-
export declare function domainFor(domains: Domain[], host: string): Domain | undefined;
|
|
34
|
-
export declare function preflightCheck(api: ConfigHttp): Promise<CheckResult>;
|
|
35
|
-
export declare function loginReadinessCheck(api: ConfigHttp, origin: string): Promise<CheckResult>;
|
|
36
|
-
/** A path mount on the origin's host: verified (active) or the step still to do. */
|
|
37
|
-
export declare function pathMountCheck(api: ConfigHttp, host: string): Promise<CheckResult>;
|
|
38
|
-
export declare function declaredCookiesCheck(api: ConfigHttp): Promise<CheckResult>;
|
|
39
|
-
export declare function golive(ctx: RunContext, args: ParsedArgs): Promise<number>;
|
|
40
|
-
export {};
|
package/dist/commands/golive.js
DELETED
|
@@ -1,285 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SDK_COOKIES = void 0;
|
|
4
|
-
exports.parseOrigin = parseOrigin;
|
|
5
|
-
exports.domainFor = domainFor;
|
|
6
|
-
exports.preflightCheck = preflightCheck;
|
|
7
|
-
exports.loginReadinessCheck = loginReadinessCheck;
|
|
8
|
-
exports.pathMountCheck = pathMountCheck;
|
|
9
|
-
exports.declaredCookiesCheck = declaredCookiesCheck;
|
|
10
|
-
exports.golive = golive;
|
|
11
|
-
const backend_1 = require("@atlasauth/backend");
|
|
12
|
-
const args_1 = require("../args");
|
|
13
|
-
const errors_1 = require("../errors");
|
|
14
|
-
const output_1 = require("../output");
|
|
15
|
-
const project_1 = require("../project");
|
|
16
|
-
const project_commands_1 = require("./project-commands");
|
|
17
|
-
const shared_1 = require("./shared");
|
|
18
|
-
/** The cookies the SDKs read: a consent manager that does not declare them may block sign-in. */
|
|
19
|
-
exports.SDK_COOKIES = ['__session', '__atlas_uat', '__atlas_rt', '__client'];
|
|
20
|
-
/** Parse `--origin` to a bare origin (scheme + host + port). */
|
|
21
|
-
function parseOrigin(raw, command) {
|
|
22
|
-
if (!raw)
|
|
23
|
-
throw new errors_1.CliError(`${command} needs --origin <https://your-app.example.com>.`);
|
|
24
|
-
let u;
|
|
25
|
-
try {
|
|
26
|
-
u = new URL(raw);
|
|
27
|
-
}
|
|
28
|
-
catch {
|
|
29
|
-
throw new errors_1.CliError(`--origin must be a full origin such as https://app.example.com, got '${raw}'.`);
|
|
30
|
-
}
|
|
31
|
-
if (u.protocol !== 'https:' && u.protocol !== 'http:')
|
|
32
|
-
throw new errors_1.CliError(`--origin must be http(s), got '${raw}'.`);
|
|
33
|
-
return new URL(u.origin);
|
|
34
|
-
}
|
|
35
|
-
/** The custom domain serving this origin's host: an exact host match, else the Frontend API domain. */
|
|
36
|
-
function domainFor(domains, host) {
|
|
37
|
-
return domains.find((d) => d.host === host) ?? domains.find((d) => d.role === 'fapi');
|
|
38
|
-
}
|
|
39
|
-
async function preflightCheck(api) {
|
|
40
|
-
const report = await api.get('/v1/instance/preflight');
|
|
41
|
-
const errors = (report.findings ?? []).filter((f) => f.severity === 'error' && !f.acknowledged);
|
|
42
|
-
if (!errors.length)
|
|
43
|
-
return { id: 'preflight', ok: true, detail: 'no error findings' };
|
|
44
|
-
return {
|
|
45
|
-
id: 'preflight',
|
|
46
|
-
ok: false,
|
|
47
|
-
detail: errors.map((f) => `${f.code}: ${f.message}`).join('; '),
|
|
48
|
-
fix: errors.map((f) => `${f.code}: ${f.fix}`).join(' | '),
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
async function loginReadinessCheck(api, origin) {
|
|
52
|
-
const r = await api.get(`/v1/diagnostics/login_readiness?origin=${encodeURIComponent(origin)}&live=true`);
|
|
53
|
-
if (r.ready)
|
|
54
|
-
return { id: 'login_readiness', ok: true, detail: `ready for ${origin}` };
|
|
55
|
-
const failing = (r.checks ?? []).filter((c) => !c.pass && c.applies !== false);
|
|
56
|
-
return {
|
|
57
|
-
id: 'login_readiness',
|
|
58
|
-
ok: false,
|
|
59
|
-
detail: `not ready for ${origin} (${failing.map((c) => c.name).join(', ') || 'unknown hop'})`,
|
|
60
|
-
fix: failing.map((c) => c.detail).join(' ') || 'See GET /v1/diagnostics/login_readiness for the failing hop.',
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
/** A path mount on the origin's host: verified (active) or the step still to do. */
|
|
64
|
-
async function pathMountCheck(api, host) {
|
|
65
|
-
const { data } = await api.get('/v1/domains');
|
|
66
|
-
const mount = data.find((d) => d.method === 'path' && d.host === host);
|
|
67
|
-
if (!mount)
|
|
68
|
-
return { id: 'path_mount', ok: true, detail: `no path mount on ${host}` };
|
|
69
|
-
if (mount.status === 'active')
|
|
70
|
-
return { id: 'path_mount', ok: true, detail: `${host}${mount.base_path ?? ''} verified` };
|
|
71
|
-
return {
|
|
72
|
-
id: 'path_mount',
|
|
73
|
-
ok: false,
|
|
74
|
-
detail: `${host}${mount.base_path ?? ''} is ${mount.status}${mount.failure_reason ? `: ${mount.failure_reason}` : ''}`,
|
|
75
|
-
fix: mount.action ?? `Publish the verification file, then POST /v1/domains/${mount.id}/verify.`,
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
async function declaredCookiesCheck(api) {
|
|
79
|
-
const cc = await api.get('/v1/instance/cookie_consent');
|
|
80
|
-
const names = new Set((cc.declared_cookies ?? []).map((c) => c.name));
|
|
81
|
-
const missing = exports.SDK_COOKIES.filter((n) => !names.has(n));
|
|
82
|
-
if (!missing.length)
|
|
83
|
-
return { id: 'declared_cookies', ok: true, detail: `declares ${exports.SDK_COOKIES.join(', ')}` };
|
|
84
|
-
return {
|
|
85
|
-
id: 'declared_cookies',
|
|
86
|
-
ok: false,
|
|
87
|
-
detail: `cookie declaration is missing ${missing.join(', ')}`,
|
|
88
|
-
fix: 'Re-import the storage declaration (GET /v1/instance/storage_declaration) into your consent manager as strictly necessary.',
|
|
89
|
-
};
|
|
90
|
-
}
|
|
91
|
-
class StepFailed extends Error {
|
|
92
|
-
step;
|
|
93
|
-
problem;
|
|
94
|
-
fix;
|
|
95
|
-
constructor(step, problem, fix) {
|
|
96
|
-
super(problem);
|
|
97
|
-
this.step = step;
|
|
98
|
-
this.problem = problem;
|
|
99
|
-
this.fix = fix;
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
const trimSlash = (s) => s.replace(/\/+$/, '');
|
|
103
|
-
async function golive(ctx, args) {
|
|
104
|
-
const v = args.values;
|
|
105
|
-
const origin = parseOrigin((0, args_1.str)(v, 'origin'), 'golive');
|
|
106
|
-
const dry = v['dry-run'] === true;
|
|
107
|
-
const json = (0, shared_1.wantsJson)(v);
|
|
108
|
-
const api = (0, project_1.httpFor)(ctx, (0, project_commands_1.instanceCredential)(ctx, args));
|
|
109
|
-
const fetchImpl = ctx.fetch ?? globalThis.fetch;
|
|
110
|
-
const q = (path) => (dry ? `${path}${path.includes('?') ? '&' : '?'}dry_run=true` : path);
|
|
111
|
-
const results = [];
|
|
112
|
-
let current = 'domains';
|
|
113
|
-
const pass = (id, detail) => {
|
|
114
|
-
results.push({ id, ok: true, detail });
|
|
115
|
-
if (!json)
|
|
116
|
-
ctx.io.out(`✓ ${id} — ${detail}`);
|
|
117
|
-
};
|
|
118
|
-
const fail = (problem, fix) => {
|
|
119
|
-
throw new StepFailed(current, problem, fix);
|
|
120
|
-
};
|
|
121
|
-
const check = (r) => (r.ok ? pass(r.id, r.detail) : fail(r.detail, r.fix ?? ''));
|
|
122
|
-
const would = (done, planned) => (dry ? `would ${planned} (dry run)` : done);
|
|
123
|
-
try {
|
|
124
|
-
// (1) domains
|
|
125
|
-
const listed = await api.get('/v1/domains');
|
|
126
|
-
let domain = domainFor(listed.data ?? [], origin.host);
|
|
127
|
-
if (!domain) {
|
|
128
|
-
if (listed.required)
|
|
129
|
-
fail(`no custom domain for ${origin.host}, and this instance needs one`, 'Add one: POST /v1/domains {"host": "auth.<your-domain>"} (or a path mount on your app host), then publish its DNS record or file.');
|
|
130
|
-
pass('domains', 'no custom domain (not required for this instance)');
|
|
131
|
-
}
|
|
132
|
-
else if (domain.status === 'active') {
|
|
133
|
-
pass('domains', `${domain.host}${domain.base_path ?? ''} verified`);
|
|
134
|
-
}
|
|
135
|
-
else {
|
|
136
|
-
const res = await api.post(q(`/v1/domains/${domain.id}/verify`), {});
|
|
137
|
-
if (dry)
|
|
138
|
-
pass('domains', would('', `verify ${domain.host}`));
|
|
139
|
-
else if (!res.verified)
|
|
140
|
-
fail(`${domain.host} is not verified yet (${res.status})`, res.action ?? res.failure_reason ?? 'Publish the DNS record or verification file, then run golive again.');
|
|
141
|
-
else {
|
|
142
|
-
domain = { ...domain, ...res };
|
|
143
|
-
pass('domains', `${domain.host} verified`);
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
// (2) issuer
|
|
147
|
-
current = 'issuer';
|
|
148
|
-
const instance = await api.get('/v1/instance');
|
|
149
|
-
const expected = instance.issuer ? trimSlash(instance.issuer) : null;
|
|
150
|
-
if (!expected)
|
|
151
|
-
fail('the instance reports no issuer', 'Check GET /v1/instance; a verified Frontend API domain sets it.');
|
|
152
|
-
const base = domain?.method === 'path' && domain.host === origin.host
|
|
153
|
-
? `${origin.origin}${domain.base_path ?? ''}`
|
|
154
|
-
: domain
|
|
155
|
-
? `https://${domain.host}${domain.base_path ?? ''}`
|
|
156
|
-
: expected;
|
|
157
|
-
const discoveryUrl = `${trimSlash(base)}/.well-known/openid-configuration`;
|
|
158
|
-
let served;
|
|
159
|
-
try {
|
|
160
|
-
const res = await fetchImpl(discoveryUrl, { headers: { accept: 'application/json' } });
|
|
161
|
-
if (!res.ok)
|
|
162
|
-
fail(`${discoveryUrl} answered ${res.status}`, 'Route that path to your Atlas Frontend API (see the domain instructions in GET /v1/domains).');
|
|
163
|
-
served = (await res.json()).issuer;
|
|
164
|
-
}
|
|
165
|
-
catch (err) {
|
|
166
|
-
if (err instanceof StepFailed)
|
|
167
|
-
throw err;
|
|
168
|
-
fail(`${discoveryUrl} is unreachable (${err instanceof Error ? err.message : String(err)})`, 'Check DNS, TLS and the proxy rule for that host.');
|
|
169
|
-
}
|
|
170
|
-
if (!served || trimSlash(served) !== expected) {
|
|
171
|
-
fail(`${discoveryUrl} serves issuer ${served ?? '(none)'}, expected ${expected}`, 'Point that host/path at this instance\'s Frontend API, or verify the domain so the instance issues tokens for it.');
|
|
172
|
-
}
|
|
173
|
-
pass('issuer', `${expected}`);
|
|
174
|
-
// (3) Sign in with Atlas
|
|
175
|
-
current = 'sign_in_with_atlas';
|
|
176
|
-
const siwa = await api.get('/v1/instance/sign_in_with_atlas');
|
|
177
|
-
const declared = !siwa.turned_off_by_you && (siwa.connection_id !== null || (siwa.candidates?.length ?? 0) > 0);
|
|
178
|
-
if (siwa.enabled)
|
|
179
|
-
pass('sign_in_with_atlas', 'enabled');
|
|
180
|
-
else if (!declared)
|
|
181
|
-
pass('sign_in_with_atlas', 'not declared, skipped');
|
|
182
|
-
else {
|
|
183
|
-
if (siwa.available === false)
|
|
184
|
-
fail('declared, but Sign in with Atlas is not available on this Atlas', 'Remove the declaration, or contact your Atlas operator.');
|
|
185
|
-
const body = { enabled: true, ...(siwa.connection_id ? {} : { connection_id: siwa.candidates[0].id }) };
|
|
186
|
-
const after = await api.patch(q('/v1/instance/sign_in_with_atlas'), body);
|
|
187
|
-
if (!dry && !after.enabled)
|
|
188
|
-
fail('could not turn Sign in with Atlas on', 'PATCH /v1/instance/sign_in_with_atlas {"enabled": true} and read the error.');
|
|
189
|
-
pass('sign_in_with_atlas', would('turned on', 'turn it on'));
|
|
190
|
-
}
|
|
191
|
-
// (4) webhooks: an inactive endpoint is turned on only after its test delivery succeeds.
|
|
192
|
-
current = 'webhooks';
|
|
193
|
-
const endpoints = (await api.get('/v1/webhook_endpoints')).data ?? [];
|
|
194
|
-
const inactive = endpoints.filter((e) => !e.active);
|
|
195
|
-
for (const e of inactive) {
|
|
196
|
-
const t = await api.post(q(`/v1/webhook_endpoints/${e.id}/test?wait=10s`), {});
|
|
197
|
-
if (!dry && t.status !== 'success') {
|
|
198
|
-
fail(`test delivery to ${e.url} failed (${t.http_status ?? t.error ?? t.status ?? 'no answer'})`, `Fix the receiver, then 'atlas webhooks test ${e.id}' and run golive again.`);
|
|
199
|
-
}
|
|
200
|
-
await api.patch(q(`/v1/webhook_endpoints/${e.id}`), { active: true });
|
|
201
|
-
pass('webhooks', would(`${e.url} tested and activated`, `test and activate ${e.url}`));
|
|
202
|
-
}
|
|
203
|
-
if (!inactive.length)
|
|
204
|
-
pass('webhooks', `${endpoints.length} endpoint(s), none inactive`);
|
|
205
|
-
// (5) hooks
|
|
206
|
-
current = 'hooks';
|
|
207
|
-
const hookPath = '/v1/instance/hooks/before_user_create';
|
|
208
|
-
const hook = await api.get(hookPath);
|
|
209
|
-
if (hook.enabled)
|
|
210
|
-
pass('hooks', 'before_user_create enabled');
|
|
211
|
-
else if (!hook.url || !hook.signing_secret_set)
|
|
212
|
-
pass('hooks', 'no hook configured');
|
|
213
|
-
else {
|
|
214
|
-
const t = await api.post(q(`${hookPath}/test`), {});
|
|
215
|
-
if (!dry && !t.ok)
|
|
216
|
-
fail(`before_user_create test call failed: ${t.error?.message ?? 'no answer'}`, `Fix the endpoint (GET ${hookPath}/calls?status=failed), then run golive again.`);
|
|
217
|
-
await api.patch(q(hookPath), { enabled: true });
|
|
218
|
-
pass('hooks', would('before_user_create tested and enabled', 'test and enable before_user_create'));
|
|
219
|
-
}
|
|
220
|
-
// (6) preflight + login readiness
|
|
221
|
-
current = 'preflight';
|
|
222
|
-
check(await preflightCheck(api));
|
|
223
|
-
current = 'login_readiness';
|
|
224
|
-
check(await loginReadinessCheck(api, origin.origin));
|
|
225
|
-
// (7) integrations: only those the instance declares.
|
|
226
|
-
current = 'integrations';
|
|
227
|
-
const referrals = await optional(() => api.get('/v1/instance/referrals'));
|
|
228
|
-
if (referrals && (referrals.endpoint_url || referrals.connection_id)) {
|
|
229
|
-
current = 'integrations/referrals';
|
|
230
|
-
if (!referrals.signing_secret_set)
|
|
231
|
-
fail('referral connection has no signing secret', "Run 'atlas referrals connect' to finish it.");
|
|
232
|
-
if (referrals.connection?.last_test?.ok === true)
|
|
233
|
-
pass(current, 'connected');
|
|
234
|
-
else {
|
|
235
|
-
const t = await api.post(q('/v1/instance/referrals/test'), {});
|
|
236
|
-
if (!dry && !t.ok)
|
|
237
|
-
fail(`connection test failed: ${t.error?.message ?? 'no answer'}`, "Run 'atlas referrals status' for details.");
|
|
238
|
-
pass(current, would('connection tested', 'test the connection'));
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
const privacy = await optional(() => api.get('/v1/instance/privacy_integrations'));
|
|
242
|
-
if (privacy?.preset) {
|
|
243
|
-
current = 'integrations/privacy';
|
|
244
|
-
if (!privacy.connected) {
|
|
245
|
-
fail(`${privacy.preset} is declared but not connected`, 'Finish it in the dashboard, or POST /v1/instance/privacy_integrations/connect with the orchestrator key and completion webhook URL.');
|
|
246
|
-
}
|
|
247
|
-
pass(current, `${privacy.preset} connected`);
|
|
248
|
-
}
|
|
249
|
-
const identity = (await optional(() => api.get('/v1/instance/integrations')))?.data ?? [];
|
|
250
|
-
for (const i of identity.filter((x) => x.connected))
|
|
251
|
-
pass(`integrations/${i.id}`, i.enabled ? 'on' : 'off');
|
|
252
|
-
}
|
|
253
|
-
catch (err) {
|
|
254
|
-
const failed = err instanceof StepFailed
|
|
255
|
-
? err
|
|
256
|
-
: err instanceof backend_1.AtlasApiError
|
|
257
|
-
? new StepFailed(current, `API error (HTTP ${err.status})${err.code ? ` [${err.code}]` : ''}: ${err.message}`, 'Check the key has the scopes this step needs, then run golive again.')
|
|
258
|
-
: null;
|
|
259
|
-
if (!failed)
|
|
260
|
-
throw err;
|
|
261
|
-
results.push({ id: failed.step, ok: false, detail: failed.problem, fix: failed.fix });
|
|
262
|
-
if (json)
|
|
263
|
-
(0, output_1.printJson)(ctx.io, { ok: false, dry_run: dry, origin: origin.origin, steps: results });
|
|
264
|
-
else
|
|
265
|
-
ctx.io.out(`✗ ${failed.step} — ${failed.problem}\n fix: ${failed.fix}`);
|
|
266
|
-
return 1;
|
|
267
|
-
}
|
|
268
|
-
if (json)
|
|
269
|
-
(0, output_1.printJson)(ctx.io, { ok: true, dry_run: dry, origin: origin.origin, steps: results });
|
|
270
|
-
else if (dry)
|
|
271
|
-
ctx.io.out('Dry run: nothing was written.');
|
|
272
|
-
return 0;
|
|
273
|
-
}
|
|
274
|
-
/** A read that is absent on this instance (404) is "not declared". */
|
|
275
|
-
async function optional(read) {
|
|
276
|
-
try {
|
|
277
|
-
return await read();
|
|
278
|
-
}
|
|
279
|
-
catch (err) {
|
|
280
|
-
if (err instanceof backend_1.AtlasApiError && err.status === 404)
|
|
281
|
-
return undefined;
|
|
282
|
-
throw err;
|
|
283
|
-
}
|
|
284
|
-
}
|
|
285
|
-
//# sourceMappingURL=golive.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"golive.js","sourceRoot":"","sources":["../../src/commands/golive.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { type ParsedArgs } from '../args';
|
|
2
|
-
import type { RunContext } from '../context';
|
|
3
|
-
/**
|
|
4
|
-
* `atlas id-accounts provision|list|rotate|remove --app <app id>`: test and
|
|
5
|
-
* review accounts for a Sign in with Atlas app (a directory reviewer login, CI,
|
|
6
|
-
* a demo). Takes a platform key with `platform:atlas_id_apps:provision`, or a
|
|
7
|
-
* per-app key scoped `atlas_id_apps:<app id>:provision`.
|
|
8
|
-
*
|
|
9
|
-
* The password (yours, via `--password-file`, or one Atlas generates) is
|
|
10
|
-
* returned once. It is written to a 0600 file next to the CLI's other secrets
|
|
11
|
-
* and never printed, except with the explicit `--print-secret` opt-out.
|
|
12
|
-
*/
|
|
13
|
-
export declare function idAccounts(ctx: RunContext, args: ParsedArgs): Promise<number>;
|
|
@@ -1,195 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.idAccounts = idAccounts;
|
|
4
|
-
const backend_1 = require("@atlasauth/backend");
|
|
5
|
-
const args_1 = require("../args");
|
|
6
|
-
const errors_1 = require("../errors");
|
|
7
|
-
const output_1 = require("../output");
|
|
8
|
-
const project_1 = require("../project");
|
|
9
|
-
const secrets_1 = require("../secrets");
|
|
10
|
-
const shared_1 = require("./shared");
|
|
11
|
-
const MIN_PASSWORD_LENGTH = 12;
|
|
12
|
-
const COLUMNS = [
|
|
13
|
-
{ header: 'ID', get: (a) => a.id },
|
|
14
|
-
{ header: 'EMAIL', get: (a) => a.email ?? '' },
|
|
15
|
-
{ header: 'LABEL', get: (a) => a.label },
|
|
16
|
-
{ header: 'KIND', get: (a) => a.kind },
|
|
17
|
-
{ header: '2FA', get: (a) => (a.two_factor_exempt ? 'exempt' : 'required') },
|
|
18
|
-
{ header: 'EXPIRES', get: (a) => (a.expires_at ? (a.expired ? `${(0, output_1.fmtTime)(a.expires_at)} (expired)` : (0, output_1.fmtTime)(a.expires_at)) : 'never') },
|
|
19
|
-
{ header: 'LAST SIGN-IN', get: (a) => (a.last_sign_in_at ? (0, output_1.fmtTime)(a.last_sign_in_at) : '') },
|
|
20
|
-
];
|
|
21
|
-
const isPlatformKey = (key) => Boolean(key && (key.startsWith('psk_') || /^atlas_(live|test)_psk_/.test(key)));
|
|
22
|
-
/**
|
|
23
|
-
* The platform key (or a per-app scoped platform key) and API URL:
|
|
24
|
-
* ATLAS_PLATFORM_KEY, else ATLAS_SECRET_KEY when it is a platform key, else the
|
|
25
|
-
* profile's stored platform key.
|
|
26
|
-
*/
|
|
27
|
-
function platformAuth(ctx, args) {
|
|
28
|
-
const file = ctx.config.load();
|
|
29
|
-
const profile = (0, args_1.str)(args.values, 'profile') || file.active_profile || 'default';
|
|
30
|
-
const stored = file.profiles[profile];
|
|
31
|
-
const candidates = [ctx.env.ATLAS_PLATFORM_KEY?.trim(), ctx.env.ATLAS_SECRET_KEY?.trim(), stored?.secret_key];
|
|
32
|
-
const key = candidates.find(isPlatformKey);
|
|
33
|
-
if (!key) {
|
|
34
|
-
throw new errors_1.CliError("id-accounts needs a platform key with the provision scope: platform:atlas_id_apps:provision, or atlas_id_apps:<app id>:provision for one app. Set ATLAS_PLATFORM_KEY, or store one with 'atlas login --secret-key psk_…'.");
|
|
35
|
-
}
|
|
36
|
-
return { secretKey: key, apiUrl: (0, shared_1.envApiUrl)(ctx.env) || stored?.api_url || backend_1.DEFAULT_API_URL };
|
|
37
|
-
}
|
|
38
|
-
/** The first non-comment line of a file (or stdin), `NAME=value` or a bare value. */
|
|
39
|
-
function readPasswordFile(ctx, file) {
|
|
40
|
-
const where = file === '-' ? 'stdin' : file;
|
|
41
|
-
let text;
|
|
42
|
-
try {
|
|
43
|
-
text = ctx.readFile(file === '-' ? '/dev/stdin' : file);
|
|
44
|
-
}
|
|
45
|
-
catch {
|
|
46
|
-
throw new errors_1.CliError(`Could not read the password from ${where}.`);
|
|
47
|
-
}
|
|
48
|
-
const line = text.split(/\r?\n/).find((l) => l.trim() && !l.trim().startsWith('#')) ?? '';
|
|
49
|
-
const m = /^[A-Za-z_][A-Za-z0-9_]*=(.*)$/.exec(line.trim());
|
|
50
|
-
const password = (m ? m[1] : line).replace(/[\r\n]+$/, '').replace(/^"(.*)"$/, '$1');
|
|
51
|
-
if (!password)
|
|
52
|
-
throw new errors_1.CliError(`No password found in ${where}.`);
|
|
53
|
-
if (password.length < MIN_PASSWORD_LENGTH)
|
|
54
|
-
throw new errors_1.CliError(`The password in ${where} must be at least ${MIN_PASSWORD_LENGTH} characters.`);
|
|
55
|
-
return password;
|
|
56
|
-
}
|
|
57
|
-
/** `--expires-at` as the API takes it: epoch ms/seconds stay numeric, anything else is an ISO date. */
|
|
58
|
-
function expiresAt(raw) {
|
|
59
|
-
if (/^\d+$/.test(raw))
|
|
60
|
-
return Number(raw);
|
|
61
|
-
if (Number.isNaN(Date.parse(raw)))
|
|
62
|
-
throw new errors_1.CliError(`--expires-at must be an ISO 8601 date (2026-12-31) or epoch milliseconds, got '${raw}'.`);
|
|
63
|
-
return raw;
|
|
64
|
-
}
|
|
65
|
-
/** The response with the password removed: what is safe to print or log. */
|
|
66
|
-
function withoutSecrets(account) {
|
|
67
|
-
const { password: _p, sealed_password: _s, ...rest } = account;
|
|
68
|
-
void _p;
|
|
69
|
-
void _s;
|
|
70
|
-
return rest;
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* `atlas id-accounts provision|list|rotate|remove --app <app id>`: test and
|
|
74
|
-
* review accounts for a Sign in with Atlas app (a directory reviewer login, CI,
|
|
75
|
-
* a demo). Takes a platform key with `platform:atlas_id_apps:provision`, or a
|
|
76
|
-
* per-app key scoped `atlas_id_apps:<app id>:provision`.
|
|
77
|
-
*
|
|
78
|
-
* The password (yours, via `--password-file`, or one Atlas generates) is
|
|
79
|
-
* returned once. It is written to a 0600 file next to the CLI's other secrets
|
|
80
|
-
* and never printed, except with the explicit `--print-secret` opt-out.
|
|
81
|
-
*/
|
|
82
|
-
async function idAccounts(ctx, args) {
|
|
83
|
-
const sub = args.positionals[1];
|
|
84
|
-
const v = args.values;
|
|
85
|
-
const json = (0, shared_1.wantsJson)(v);
|
|
86
|
-
const http = () => {
|
|
87
|
-
const auth = platformAuth(ctx, args);
|
|
88
|
-
return (0, project_1.httpFor)(ctx, auth);
|
|
89
|
-
};
|
|
90
|
-
const appId = () => {
|
|
91
|
-
const app = (0, args_1.str)(v, 'app');
|
|
92
|
-
if (!app)
|
|
93
|
-
throw new errors_1.CliError(`id-accounts ${sub} needs --app <Sign in with Atlas app id>.`);
|
|
94
|
-
return app;
|
|
95
|
-
};
|
|
96
|
-
const base = (app) => `/v1/platform/atlas_id_apps/${encodeURIComponent(app)}/provisioned_accounts`;
|
|
97
|
-
const accountArg = () => {
|
|
98
|
-
const id = args.positionals[2];
|
|
99
|
-
if (!id)
|
|
100
|
-
throw new errors_1.CliError(`id-accounts ${sub} needs the test account id (see: atlas id-accounts list --app <id>).`);
|
|
101
|
-
return id;
|
|
102
|
-
};
|
|
103
|
-
const deliverPassword = (account, label) => {
|
|
104
|
-
if (!account.password) {
|
|
105
|
-
if (account.sealed_password) {
|
|
106
|
-
ctx.io.err('The password came back sealed to your secret recipient; open it with your key. Nothing was written.');
|
|
107
|
-
}
|
|
108
|
-
return undefined;
|
|
109
|
-
}
|
|
110
|
-
const entries = {
|
|
111
|
-
ATLAS_ID_TEST_EMAIL: account.email ?? '',
|
|
112
|
-
ATLAS_ID_TEST_PASSWORD: account.password,
|
|
113
|
-
};
|
|
114
|
-
const io = json ? { out: () => undefined, err: ctx.io.err } : ctx.io;
|
|
115
|
-
return (0, secrets_1.deliverSecret)({
|
|
116
|
-
io,
|
|
117
|
-
env: ctx.env,
|
|
118
|
-
product: (0, args_1.str)(v, 'product') ?? 'atlasauth',
|
|
119
|
-
fileName: `id-account-${account.id}.env`,
|
|
120
|
-
entries,
|
|
121
|
-
label,
|
|
122
|
-
printSecret: v['print-secret'] === true,
|
|
123
|
-
// A rotation always replaces; a fresh account has a fresh id, so nothing to clobber.
|
|
124
|
-
force: true,
|
|
125
|
-
comment: `Sign in with Atlas test account ${account.email ?? account.id} (${account.label}). Use it only with the app it was created for.`,
|
|
126
|
-
}).path;
|
|
127
|
-
};
|
|
128
|
-
switch (sub) {
|
|
129
|
-
case 'list': {
|
|
130
|
-
const page = await http().get(base(appId()));
|
|
131
|
-
if (json)
|
|
132
|
-
(0, output_1.printJson)(ctx.io, page);
|
|
133
|
-
else {
|
|
134
|
-
ctx.io.out((0, output_1.renderTable)(COLUMNS, page.data));
|
|
135
|
-
ctx.io.out(`${page.total} of ${page.limit} test accounts used across your apps.`);
|
|
136
|
-
}
|
|
137
|
-
return 0;
|
|
138
|
-
}
|
|
139
|
-
case 'provision': {
|
|
140
|
-
const app = appId();
|
|
141
|
-
const email = (0, args_1.str)(v, 'email');
|
|
142
|
-
const label = (0, args_1.str)(v, 'label');
|
|
143
|
-
if (!email || !label)
|
|
144
|
-
throw new errors_1.CliError('id-accounts provision needs --email <address> and --label <what it is for, e.g. reviewer>.');
|
|
145
|
-
const passwordFile = (0, args_1.str)(v, 'password-file');
|
|
146
|
-
const expires = (0, args_1.str)(v, 'expires-at');
|
|
147
|
-
const body = {
|
|
148
|
-
email,
|
|
149
|
-
label,
|
|
150
|
-
email_verified: v.unverified === true ? false : true,
|
|
151
|
-
...(passwordFile ? { password: readPasswordFile(ctx, passwordFile) } : {}),
|
|
152
|
-
...(v['two-factor-exempt'] === true ? { two_factor_exempt: true } : {}),
|
|
153
|
-
...(expires ? { expires_at: expiresAt(expires) } : {}),
|
|
154
|
-
};
|
|
155
|
-
const created = await http().post(base(app), body);
|
|
156
|
-
const path = deliverPassword(created, `The password for ${created.email ?? email}`);
|
|
157
|
-
if (json)
|
|
158
|
-
(0, output_1.printJson)(ctx.io, { ...withoutSecrets(created), ...(path ? { secret_file: path } : {}) });
|
|
159
|
-
else {
|
|
160
|
-
ctx.io.out(`Created ${created.email ?? email} (${created.id}) for app ${app}${created.two_factor_exempt ? ', exempt from two-factor sign-in' : ''}${created.expires_at ? `, expires ${(0, output_1.fmtTime)(created.expires_at)}` : ', never expires'}.`);
|
|
161
|
-
if (created.two_factor_exempt) {
|
|
162
|
-
ctx.io.out('Two-factor exemption: anyone holding this password can sign in to the app. Share it only with the review team.');
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
return 0;
|
|
166
|
-
}
|
|
167
|
-
case 'rotate': {
|
|
168
|
-
const app = appId();
|
|
169
|
-
const id = accountArg();
|
|
170
|
-
const passwordFile = (0, args_1.str)(v, 'password-file');
|
|
171
|
-
const rotated = await http().post(`${base(app)}/${encodeURIComponent(id)}/password`, passwordFile ? { password: readPasswordFile(ctx, passwordFile) } : {});
|
|
172
|
-
const path = deliverPassword(rotated, `The new password for ${rotated.email ?? id}`);
|
|
173
|
-
if (json)
|
|
174
|
-
(0, output_1.printJson)(ctx.io, { ...withoutSecrets(rotated), ...(path ? { secret_file: path } : {}) });
|
|
175
|
-
else
|
|
176
|
-
ctx.io.out('Existing sessions stay signed in; remove the account to end them.');
|
|
177
|
-
return 0;
|
|
178
|
-
}
|
|
179
|
-
case 'remove': {
|
|
180
|
-
const app = appId();
|
|
181
|
-
const id = accountArg();
|
|
182
|
-
await http().delete(`${base(app)}/${encodeURIComponent(id)}`);
|
|
183
|
-
if (json)
|
|
184
|
-
(0, output_1.printJson)(ctx.io, { id, removed: true });
|
|
185
|
-
else
|
|
186
|
-
ctx.io.out(`Removed ${id}: the account is deleted and its sessions and grants are revoked.`);
|
|
187
|
-
return 0;
|
|
188
|
-
}
|
|
189
|
-
default:
|
|
190
|
-
throw new errors_1.CliError(sub
|
|
191
|
-
? `Unknown subcommand 'id-accounts ${sub}'. Try: provision, list, rotate, remove.`
|
|
192
|
-
: 'id-accounts needs a subcommand: provision, list, rotate, remove.');
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
//# sourceMappingURL=id-accounts.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"id-accounts.js","sourceRoot":"","sources":["../../src/commands/id-accounts.ts"],"names":[],"mappings":";;AAqFA,gCA6GC;AAlMD,gDAAyH;AACzH,kCAA+C;AAE/C,sCAAqC;AACrC,sCAAyE;AACzE,wCAAqC;AACrC,wCAA2C;AAC3C,qCAAgD;AAEhD,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAE/B,MAAM,OAAO,GAAwC;IACnD,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;IAClC,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE;IAC9C,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE;IACxC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE;IACtC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE;IAC5E,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAA,gBAAO,EAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,IAAA,gBAAO,EAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;IACxI,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAA,gBAAO,EAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;CAC9F,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,GAAuB,EAAiB,EAAE,CAC/D,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAElF;;;;GAIG;AACH,SAAS,YAAY,CAAC,GAAe,EAAE,IAAgB;IACrD,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAG,IAAA,UAAG,EAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC,cAAc,IAAI,SAAS,CAAC;IAChF,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IAC9G,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC3C,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,iBAAQ,CAChB,2NAA2N,CAC5N,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,IAAA,kBAAS,EAAC,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,EAAE,OAAO,IAAI,yBAAe,EAAE,CAAC;AAC9F,CAAC;AAED,qFAAqF;AACrF,SAAS,gBAAgB,CAAC,GAAe,EAAE,IAAY;IACrD,MAAM,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,iBAAQ,CAAC,oCAAoC,KAAK,GAAG,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1F,MAAM,CAAC,GAAG,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACtF,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,iBAAQ,CAAC,wBAAwB,KAAK,GAAG,CAAC,CAAC;IACpE,IAAI,QAAQ,CAAC,MAAM,GAAG,mBAAmB;QAAE,MAAM,IAAI,iBAAQ,CAAC,mBAAmB,KAAK,qBAAqB,mBAAmB,cAAc,CAAC,CAAC;IAC9I,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,uGAAuG;AACvG,SAAS,SAAS,CAAC,GAAW;IAC5B,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1C,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAAE,MAAM,IAAI,iBAAQ,CAAC,kFAAkF,GAAG,IAAI,CAAC,CAAC;IACjJ,OAAO,GAAG,CAAC;AACb,CAAC;AAED,4EAA4E;AAC5E,SAAS,cAAc,CAAC,OAAkC;IACxD,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAC/D,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,UAAU,CAAC,GAAe,EAAE,IAAgB;IAChE,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAChC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IACtB,MAAM,IAAI,GAAG,IAAA,kBAAS,EAAC,CAAC,CAAC,CAAC;IAC1B,MAAM,IAAI,GAAG,GAAG,EAAE;QAChB,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACrC,OAAO,IAAA,iBAAO,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,MAAM,GAAG,GAAG,IAAA,UAAG,EAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,iBAAQ,CAAC,eAAe,GAAG,2CAA2C,CAAC,CAAC;QAC5F,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,8BAA8B,kBAAkB,CAAC,GAAG,CAAC,uBAAuB,CAAC;IAC3G,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,iBAAQ,CAAC,eAAe,GAAG,sEAAsE,CAAC,CAAC;QACtH,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,OAAkC,EAAE,KAAa,EAAsB,EAAE;QAChG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACtB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;gBAC5B,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,qGAAqG,CAAC,CAAC;YACpH,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,OAAO,GAA2B;YACtC,mBAAmB,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;YACxC,sBAAsB,EAAE,OAAO,CAAC,QAAQ;SACzC,CAAC;QACF,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QACrE,OAAO,IAAA,uBAAa,EAAC;YACnB,EAAE;YACF,GAAG,EAAE,GAAG,CAAC,GAAG;YACZ,OAAO,EAAE,IAAA,UAAG,EAAC,CAAC,EAAE,SAAS,CAAC,IAAI,WAAW;YACzC,QAAQ,EAAE,cAAc,OAAO,CAAC,EAAE,MAAM;YACxC,OAAO;YACP,KAAK;YACL,WAAW,EAAE,CAAC,CAAC,cAAc,CAAC,KAAK,IAAI;YACvC,qFAAqF;YACrF,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,mCAAmC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,EAAE,KAAK,OAAO,CAAC,KAAK,iDAAiD;SAC3I,CAAC,CAAC,IAAI,CAAC;IACV,CAAC,CAAC;IAEF,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,IAAI,EAAE,CAAC,GAAG,CAAgC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC5E,IAAI,IAAI;gBAAE,IAAA,kBAAS,EAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;iBAC7B,CAAC;gBACJ,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAA,oBAAW,EAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC5C,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,uCAAuC,CAAC,CAAC;YACpF,CAAC;YACD,OAAO,CAAC,CAAC;QACX,CAAC;QACD,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,GAAG,GAAG,KAAK,EAAE,CAAC;YACpB,MAAM,KAAK,GAAG,IAAA,UAAG,EAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAC9B,MAAM,KAAK,GAAG,IAAA,UAAG,EAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,iBAAQ,CAAC,4FAA4F,CAAC,CAAC;YACvI,MAAM,YAAY,GAAG,IAAA,UAAG,EAAC,CAAC,EAAE,eAAe,CAAC,CAAC;YAC7C,MAAM,OAAO,GAAG,IAAA,UAAG,EAAC,CAAC,EAAE,YAAY,CAAC,CAAC;YACrC,MAAM,IAAI,GAAG;gBACX,KAAK;gBACL,KAAK;gBACL,cAAc,EAAE,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;gBACpD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,gBAAgB,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1E,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvD,CAAC;YACF,MAAM,OAAO,GAAG,MAAM,IAAI,EAAE,CAAC,IAAI,CAA4B,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;YAC9E,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,EAAE,oBAAoB,OAAO,CAAC,KAAK,IAAI,KAAK,EAAE,CAAC,CAAC;YACpF,IAAI,IAAI;gBAAE,IAAA,kBAAS,EAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;iBAC/F,CAAC;gBACJ,GAAG,CAAC,EAAE,CAAC,GAAG,CACR,WAAW,OAAO,CAAC,KAAK,IAAI,KAAK,KAAK,OAAO,CAAC,EAAE,aAAa,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,IAAA,gBAAO,EAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,GAAG,CAChO,CAAC;gBACF,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;oBAC9B,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,gHAAgH,CAAC,CAAC;gBAC/H,CAAC;YACH,CAAC;YACD,OAAO,CAAC,CAAC;QACX,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,GAAG,GAAG,KAAK,EAAE,CAAC;YACpB,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;YACxB,MAAM,YAAY,GAAG,IAAA,UAAG,EAAC,CAAC,EAAE,eAAe,CAAC,CAAC;YAC7C,MAAM,OAAO,GAAG,MAAM,IAAI,EAAE,CAAC,IAAI,CAA4B,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,gBAAgB,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACvL,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,EAAE,wBAAwB,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC;YACrF,IAAI,IAAI;gBAAE,IAAA,kBAAS,EAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;;gBAC/F,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,mEAAmE,CAAC,CAAC;YACrF,OAAO,CAAC,CAAC;QACX,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,GAAG,GAAG,KAAK,EAAE,CAAC;YACpB,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;YACxB,MAAM,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9D,IAAI,IAAI;gBAAE,IAAA,kBAAS,EAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;;gBAC9C,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,mEAAmE,CAAC,CAAC;YAClG,OAAO,CAAC,CAAC;QACX,CAAC;QACD;YACE,MAAM,IAAI,iBAAQ,CAChB,GAAG;gBACD,CAAC,CAAC,mCAAmC,GAAG,0CAA0C;gBAClF,CAAC,CAAC,kEAAkE,CACvE,CAAC;IACN,CAAC;AACH,CAAC"}
|