@stackframe/stack-shared 2.8.51 → 2.8.54

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/apps/apps-ui.d.mts +26 -0
  3. package/dist/apps/apps-ui.d.ts +26 -0
  4. package/dist/apps/apps-ui.js +110 -0
  5. package/dist/apps/apps-ui.js.map +1 -0
  6. package/dist/config/schema.js +2 -1
  7. package/dist/config/schema.js.map +1 -1
  8. package/dist/esm/apps/apps-ui.js +83 -0
  9. package/dist/esm/apps/apps-ui.js.map +1 -0
  10. package/dist/esm/config/schema.js +2 -1
  11. package/dist/esm/config/schema.js.map +1 -1
  12. package/dist/esm/helpers/emails.js +9 -7
  13. package/dist/esm/helpers/emails.js.map +1 -1
  14. package/dist/esm/index.js.map +1 -1
  15. package/dist/esm/interface/admin-interface.js +14 -0
  16. package/dist/esm/interface/admin-interface.js.map +1 -1
  17. package/dist/esm/interface/crud/projects.js +6 -2
  18. package/dist/esm/interface/crud/projects.js.map +1 -1
  19. package/dist/esm/interface/crud/svix-token.js +2 -1
  20. package/dist/esm/interface/crud/svix-token.js.map +1 -1
  21. package/dist/esm/interface/crud/transactions.js +107 -13
  22. package/dist/esm/interface/crud/transactions.js.map +1 -1
  23. package/dist/esm/known-errors.js +62 -0
  24. package/dist/esm/known-errors.js.map +1 -1
  25. package/dist/esm/schema-fields.js +22 -2
  26. package/dist/esm/schema-fields.js.map +1 -1
  27. package/dist/helpers/emails.d.mts +1 -1
  28. package/dist/helpers/emails.d.ts +1 -1
  29. package/dist/helpers/emails.js +9 -7
  30. package/dist/helpers/emails.js.map +1 -1
  31. package/dist/index.js.map +1 -1
  32. package/dist/interface/admin-interface.d.mts +9 -3
  33. package/dist/interface/admin-interface.d.ts +9 -3
  34. package/dist/interface/admin-interface.js +14 -0
  35. package/dist/interface/admin-interface.js.map +1 -1
  36. package/dist/interface/crud/products.d.mts +2 -2
  37. package/dist/interface/crud/products.d.ts +2 -2
  38. package/dist/interface/crud/projects.d.mts +42 -14
  39. package/dist/interface/crud/projects.d.ts +42 -14
  40. package/dist/interface/crud/projects.js +6 -2
  41. package/dist/interface/crud/projects.js.map +1 -1
  42. package/dist/interface/crud/svix-token.d.mts +4 -0
  43. package/dist/interface/crud/svix-token.d.ts +4 -0
  44. package/dist/interface/crud/svix-token.js +2 -1
  45. package/dist/interface/crud/svix-token.js.map +1 -1
  46. package/dist/interface/crud/transactions.d.mts +160 -39
  47. package/dist/interface/crud/transactions.d.ts +160 -39
  48. package/dist/interface/crud/transactions.js +99 -13
  49. package/dist/interface/crud/transactions.js.map +1 -1
  50. package/dist/known-errors.d.mts +15 -0
  51. package/dist/known-errors.d.ts +15 -0
  52. package/dist/known-errors.js +62 -0
  53. package/dist/known-errors.js.map +1 -1
  54. package/dist/schema-fields.d.mts +6 -3
  55. package/dist/schema-fields.d.ts +6 -3
  56. package/dist/schema-fields.js +26 -3
  57. package/dist/schema-fields.js.map +1 -1
  58. package/dist/sessions.d.mts +1 -1
  59. package/dist/sessions.d.ts +1 -1
  60. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/interface/crud/projects.ts"],"sourcesContent":["import { CrudTypeOf, createCrud } from \"../../crud\";\nimport * as schemaFields from \"../../schema-fields\";\nimport { yupArray, yupObject, yupString } from \"../../schema-fields\";\n\nconst teamPermissionSchema = yupObject({\n id: yupString().defined(),\n}).defined();\n\nconst oauthProviderReadSchema = yupObject({\n provider_config_id: schemaFields.yupString().defined(),\n id: schemaFields.oauthIdSchema.defined(),\n type: schemaFields.oauthTypeSchema.defined(),\n client_id: schemaFields.yupDefinedAndNonEmptyWhen(\n schemaFields.oauthClientIdSchema,\n { type: 'standard' },\n ),\n client_secret: schemaFields.yupDefinedAndNonEmptyWhen(\n schemaFields.oauthClientSecretSchema,\n { type: 'standard' },\n ),\n\n // extra params\n facebook_config_id: schemaFields.oauthFacebookConfigIdSchema.optional(),\n microsoft_tenant_id: schemaFields.oauthMicrosoftTenantIdSchema.optional(),\n});\n\nconst oauthProviderWriteSchema = oauthProviderReadSchema.omit(['provider_config_id']);\n\nconst enabledOAuthProviderSchema = yupObject({\n id: schemaFields.oauthIdSchema.defined(),\n});\n\nexport const emailConfigSchema = yupObject({\n type: schemaFields.emailTypeSchema.defined(),\n host: schemaFields.yupDefinedAndNonEmptyWhen(schemaFields.emailHostSchema, {\n type: 'standard',\n }),\n port: schemaFields.yupDefinedWhen(schemaFields.emailPortSchema, {\n type: 'standard',\n }),\n username: schemaFields.yupDefinedAndNonEmptyWhen(schemaFields.emailUsernameSchema, {\n type: 'standard',\n }),\n password: schemaFields.yupDefinedAndNonEmptyWhen(schemaFields.emailPasswordSchema, {\n type: 'standard',\n }),\n sender_name: schemaFields.yupDefinedAndNonEmptyWhen(schemaFields.emailSenderNameSchema, {\n type: 'standard',\n }),\n sender_email: schemaFields.yupDefinedAndNonEmptyWhen(schemaFields.emailSenderEmailSchema, {\n type: 'standard',\n }),\n});\n\nexport const emailConfigWithoutPasswordSchema = emailConfigSchema.pick(['type', 'host', 'port', 'username', 'sender_name', 'sender_email']);\n\nconst domainSchema = yupObject({\n domain: schemaFields.urlSchema.defined()\n .matches(/^https?:\\/\\//, 'URL must start with http:// or https://')\n .meta({ openapiField: { description: 'URL. Must start with http:// or https://', exampleValue: 'https://example.com' } }),\n handler_path: schemaFields.handlerPathSchema.defined(),\n});\n\nexport const projectsCrudAdminReadSchema = yupObject({\n id: schemaFields.projectIdSchema.defined(),\n display_name: schemaFields.projectDisplayNameSchema.defined(),\n description: schemaFields.projectDescriptionSchema.nonNullable().defined(),\n logo_url: schemaFields.projectLogoUrlSchema.nullable().optional(),\n full_logo_url: schemaFields.projectFullLogoUrlSchema.nullable().optional(),\n created_at_millis: schemaFields.projectCreatedAtMillisSchema.defined(),\n is_production_mode: schemaFields.projectIsProductionModeSchema.defined(),\n owner_team_id: schemaFields.yupString().nullable().defined(),\n /** @deprecated */\n config: yupObject({\n allow_localhost: schemaFields.projectAllowLocalhostSchema.defined(),\n sign_up_enabled: schemaFields.projectSignUpEnabledSchema.defined(),\n credential_enabled: schemaFields.projectCredentialEnabledSchema.defined(),\n magic_link_enabled: schemaFields.projectMagicLinkEnabledSchema.defined(),\n passkey_enabled: schemaFields.projectPasskeyEnabledSchema.defined(),\n // TODO: remove this\n client_team_creation_enabled: schemaFields.projectClientTeamCreationEnabledSchema.defined(),\n client_user_deletion_enabled: schemaFields.projectClientUserDeletionEnabledSchema.defined(),\n allow_user_api_keys: schemaFields.yupBoolean().defined(),\n allow_team_api_keys: schemaFields.yupBoolean().defined(),\n oauth_providers: yupArray(oauthProviderReadSchema.defined()).defined(),\n enabled_oauth_providers: yupArray(enabledOAuthProviderSchema.defined()).defined().meta({ openapiField: { hidden: true } }),\n domains: yupArray(domainSchema.defined()).defined(),\n email_config: emailConfigSchema.defined(),\n email_theme: schemaFields.emailThemeSchema.defined(),\n create_team_on_sign_up: schemaFields.projectCreateTeamOnSignUpSchema.defined(),\n team_creator_default_permissions: yupArray(teamPermissionSchema.defined()).defined(),\n team_member_default_permissions: yupArray(teamPermissionSchema.defined()).defined(),\n user_default_permissions: yupArray(teamPermissionSchema.defined()).defined(),\n oauth_account_merge_strategy: schemaFields.oauthAccountMergeStrategySchema.defined(),\n }).defined().meta({ openapiField: { hidden: true } }),\n}).defined();\n\nexport const projectsCrudClientReadSchema = yupObject({\n id: schemaFields.projectIdSchema.defined(),\n display_name: schemaFields.projectDisplayNameSchema.defined(),\n config: yupObject({\n sign_up_enabled: schemaFields.projectSignUpEnabledSchema.defined(),\n credential_enabled: schemaFields.projectCredentialEnabledSchema.defined(),\n magic_link_enabled: schemaFields.projectMagicLinkEnabledSchema.defined(),\n passkey_enabled: schemaFields.projectPasskeyEnabledSchema.defined(),\n client_team_creation_enabled: schemaFields.projectClientTeamCreationEnabledSchema.defined(),\n client_user_deletion_enabled: schemaFields.projectClientUserDeletionEnabledSchema.defined(),\n allow_user_api_keys: schemaFields.yupBoolean().defined(),\n allow_team_api_keys: schemaFields.yupBoolean().defined(),\n enabled_oauth_providers: yupArray(enabledOAuthProviderSchema.defined()).defined().meta({ openapiField: { hidden: true } }),\n domains: yupArray(domainSchema.defined()).defined(),\n }).defined().meta({ openapiField: { hidden: true } }),\n}).defined();\n\n\nexport const projectsCrudAdminUpdateSchema = yupObject({\n display_name: schemaFields.projectDisplayNameSchema.optional(),\n description: schemaFields.projectDescriptionSchema.optional(),\n logo_url: schemaFields.projectLogoUrlSchema.nullable().optional(),\n full_logo_url: schemaFields.projectFullLogoUrlSchema.nullable().optional(),\n is_production_mode: schemaFields.projectIsProductionModeSchema.optional(),\n config: yupObject({\n sign_up_enabled: schemaFields.projectSignUpEnabledSchema.optional(),\n credential_enabled: schemaFields.projectCredentialEnabledSchema.optional(),\n magic_link_enabled: schemaFields.projectMagicLinkEnabledSchema.optional(),\n passkey_enabled: schemaFields.projectPasskeyEnabledSchema.optional(),\n client_team_creation_enabled: schemaFields.projectClientTeamCreationEnabledSchema.optional(),\n client_user_deletion_enabled: schemaFields.projectClientUserDeletionEnabledSchema.optional(),\n allow_localhost: schemaFields.projectAllowLocalhostSchema.optional(),\n allow_user_api_keys: schemaFields.yupBoolean().optional(),\n allow_team_api_keys: schemaFields.yupBoolean().optional(),\n email_config: emailConfigSchema.optional().default(undefined),\n email_theme: schemaFields.emailThemeSchema.optional(),\n domains: yupArray(domainSchema.defined()).optional().default(undefined),\n oauth_providers: yupArray(oauthProviderWriteSchema.defined()).optional().default(undefined),\n create_team_on_sign_up: schemaFields.projectCreateTeamOnSignUpSchema.optional(),\n team_creator_default_permissions: yupArray(teamPermissionSchema.defined()).optional(),\n team_member_default_permissions: yupArray(teamPermissionSchema.defined()).optional(),\n user_default_permissions: yupArray(teamPermissionSchema.defined()).optional(),\n oauth_account_merge_strategy: schemaFields.oauthAccountMergeStrategySchema.optional(),\n }).optional().default(undefined),\n}).defined();\n\nexport const projectsCrudAdminCreateSchema = projectsCrudAdminUpdateSchema.concat(yupObject({\n display_name: schemaFields.projectDisplayNameSchema.defined(),\n owner_team_id: schemaFields.yupString().uuid().defined(),\n}).defined());\n\nexport const projectsCrudAdminDeleteSchema = schemaFields.yupMixed();\n\nexport const clientProjectsCrud = createCrud({\n clientReadSchema: projectsCrudClientReadSchema,\n docs: {\n clientRead: {\n summary: 'Get the current project',\n description: 'Get the current project information including display name, OAuth providers and authentication methods. Useful for displaying the available login options to the user.',\n tags: ['Projects'],\n },\n },\n});\nexport type ClientProjectsCrud = CrudTypeOf<typeof clientProjectsCrud>;\n\nexport const projectsCrud = createCrud({\n adminReadSchema: projectsCrudAdminReadSchema,\n adminUpdateSchema: projectsCrudAdminUpdateSchema,\n adminDeleteSchema: projectsCrudAdminDeleteSchema,\n docs: {\n adminRead: {\n summary: 'Get the current project',\n description: 'Get the current project information and configuration including display name, OAuth providers, email configuration, etc.',\n tags: ['Projects'],\n },\n adminUpdate: {\n summary: 'Update the current project',\n description: 'Update the current project information and configuration including display name, OAuth providers, email configuration, etc.',\n tags: ['Projects'],\n },\n adminDelete: {\n summary: 'Delete the current project',\n description: 'Delete the current project and all associated data (including users, teams, API keys, project configs, etc.). Be careful, this action is irreversible.',\n tags: ['Projects'],\n },\n },\n});\nexport type ProjectsCrud = CrudTypeOf<typeof projectsCrud>;\n\nexport const adminUserProjectsCrud = createCrud({\n clientReadSchema: projectsCrudAdminReadSchema,\n clientCreateSchema: projectsCrudAdminCreateSchema,\n docs: {\n clientList: {\n hidden: true,\n },\n clientCreate: {\n hidden: true,\n },\n },\n});\nexport type AdminUserProjectsCrud = CrudTypeOf<typeof adminUserProjectsCrud>;\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/interface/crud/projects.ts"],"sourcesContent":["import { CrudTypeOf, createCrud } from \"../../crud\";\nimport * as schemaFields from \"../../schema-fields\";\nimport { yupArray, yupObject, yupString } from \"../../schema-fields\";\n\nconst teamPermissionSchema = yupObject({\n id: yupString().defined(),\n}).defined();\n\nconst oauthProviderReadSchema = yupObject({\n provider_config_id: schemaFields.yupString().defined(),\n id: schemaFields.oauthIdSchema.defined(),\n type: schemaFields.oauthTypeSchema.defined(),\n client_id: schemaFields.yupDefinedAndNonEmptyWhen(\n schemaFields.oauthClientIdSchema,\n { type: 'standard' },\n ),\n client_secret: schemaFields.yupDefinedAndNonEmptyWhen(\n schemaFields.oauthClientSecretSchema,\n { type: 'standard' },\n ),\n\n // extra params\n facebook_config_id: schemaFields.oauthFacebookConfigIdSchema.optional(),\n microsoft_tenant_id: schemaFields.oauthMicrosoftTenantIdSchema.optional(),\n});\n\nconst oauthProviderWriteSchema = oauthProviderReadSchema.omit(['provider_config_id']);\n\nconst enabledOAuthProviderSchema = yupObject({\n id: schemaFields.oauthIdSchema.defined(),\n});\n\nexport const emailConfigSchema = yupObject({\n type: schemaFields.emailTypeSchema.defined(),\n host: schemaFields.yupDefinedAndNonEmptyWhen(schemaFields.emailHostSchema, {\n type: 'standard',\n }),\n port: schemaFields.yupDefinedWhen(schemaFields.emailPortSchema, {\n type: 'standard',\n }),\n username: schemaFields.yupDefinedAndNonEmptyWhen(schemaFields.emailUsernameSchema, {\n type: 'standard',\n }),\n password: schemaFields.yupDefinedAndNonEmptyWhen(schemaFields.emailPasswordSchema, {\n type: 'standard',\n }),\n sender_name: schemaFields.yupDefinedAndNonEmptyWhen(schemaFields.emailSenderNameSchema, {\n type: 'standard',\n }),\n sender_email: schemaFields.yupDefinedAndNonEmptyWhen(schemaFields.emailSenderEmailSchema, {\n type: 'standard',\n }),\n});\n\nexport const emailConfigWithoutPasswordSchema = emailConfigSchema.pick(['type', 'host', 'port', 'username', 'sender_name', 'sender_email']);\n\nconst domainSchema = yupObject({\n domain: schemaFields.urlSchema.defined()\n .matches(/^https?:\\/\\//, 'URL must start with http:// or https://')\n .meta({ openapiField: { description: 'URL. Must start with http:// or https://', exampleValue: 'https://example.com' } }),\n handler_path: schemaFields.handlerPathSchema.defined(),\n});\n\nexport const projectsCrudAdminReadSchema = yupObject({\n id: schemaFields.projectIdSchema.defined(),\n display_name: schemaFields.projectDisplayNameSchema.defined(),\n description: schemaFields.projectDescriptionSchema.nonNullable().defined(),\n logo_url: schemaFields.projectLogoUrlSchema.nullable().optional(),\n logo_full_url: schemaFields.projectLogoFullUrlSchema.nullable().optional(),\n logo_dark_mode_url: schemaFields.projectLogoDarkModeUrlSchema.nullable().optional(),\n logo_full_dark_mode_url: schemaFields.projectLogoFullDarkModeUrlSchema.nullable().optional(),\n created_at_millis: schemaFields.projectCreatedAtMillisSchema.defined(),\n is_production_mode: schemaFields.projectIsProductionModeSchema.defined(),\n owner_team_id: schemaFields.yupString().nullable().defined(),\n /** @deprecated */\n config: yupObject({\n allow_localhost: schemaFields.projectAllowLocalhostSchema.defined(),\n sign_up_enabled: schemaFields.projectSignUpEnabledSchema.defined(),\n credential_enabled: schemaFields.projectCredentialEnabledSchema.defined(),\n magic_link_enabled: schemaFields.projectMagicLinkEnabledSchema.defined(),\n passkey_enabled: schemaFields.projectPasskeyEnabledSchema.defined(),\n // TODO: remove this\n client_team_creation_enabled: schemaFields.projectClientTeamCreationEnabledSchema.defined(),\n client_user_deletion_enabled: schemaFields.projectClientUserDeletionEnabledSchema.defined(),\n allow_user_api_keys: schemaFields.yupBoolean().defined(),\n allow_team_api_keys: schemaFields.yupBoolean().defined(),\n oauth_providers: yupArray(oauthProviderReadSchema.defined()).defined(),\n enabled_oauth_providers: yupArray(enabledOAuthProviderSchema.defined()).defined().meta({ openapiField: { hidden: true } }),\n domains: yupArray(domainSchema.defined()).defined(),\n email_config: emailConfigSchema.defined(),\n email_theme: schemaFields.emailThemeSchema.defined(),\n create_team_on_sign_up: schemaFields.projectCreateTeamOnSignUpSchema.defined(),\n team_creator_default_permissions: yupArray(teamPermissionSchema.defined()).defined(),\n team_member_default_permissions: yupArray(teamPermissionSchema.defined()).defined(),\n user_default_permissions: yupArray(teamPermissionSchema.defined()).defined(),\n oauth_account_merge_strategy: schemaFields.oauthAccountMergeStrategySchema.defined(),\n }).defined().meta({ openapiField: { hidden: true } }),\n}).defined();\n\nexport const projectsCrudClientReadSchema = yupObject({\n id: schemaFields.projectIdSchema.defined(),\n display_name: schemaFields.projectDisplayNameSchema.defined(),\n config: yupObject({\n sign_up_enabled: schemaFields.projectSignUpEnabledSchema.defined(),\n credential_enabled: schemaFields.projectCredentialEnabledSchema.defined(),\n magic_link_enabled: schemaFields.projectMagicLinkEnabledSchema.defined(),\n passkey_enabled: schemaFields.projectPasskeyEnabledSchema.defined(),\n client_team_creation_enabled: schemaFields.projectClientTeamCreationEnabledSchema.defined(),\n client_user_deletion_enabled: schemaFields.projectClientUserDeletionEnabledSchema.defined(),\n allow_user_api_keys: schemaFields.yupBoolean().defined(),\n allow_team_api_keys: schemaFields.yupBoolean().defined(),\n enabled_oauth_providers: yupArray(enabledOAuthProviderSchema.defined()).defined().meta({ openapiField: { hidden: true } }),\n domains: yupArray(domainSchema.defined()).defined(),\n }).defined().meta({ openapiField: { hidden: true } }),\n}).defined();\n\n\nexport const projectsCrudAdminUpdateSchema = yupObject({\n display_name: schemaFields.projectDisplayNameSchema.optional(),\n description: schemaFields.projectDescriptionSchema.optional(),\n logo_url: schemaFields.projectLogoUrlSchema.nullable().optional(),\n logo_full_url: schemaFields.projectLogoFullUrlSchema.nullable().optional(),\n logo_dark_mode_url: schemaFields.projectLogoDarkModeUrlSchema.nullable().optional(),\n logo_full_dark_mode_url: schemaFields.projectLogoFullDarkModeUrlSchema.nullable().optional(),\n is_production_mode: schemaFields.projectIsProductionModeSchema.optional(),\n config: yupObject({\n sign_up_enabled: schemaFields.projectSignUpEnabledSchema.optional(),\n credential_enabled: schemaFields.projectCredentialEnabledSchema.optional(),\n magic_link_enabled: schemaFields.projectMagicLinkEnabledSchema.optional(),\n passkey_enabled: schemaFields.projectPasskeyEnabledSchema.optional(),\n client_team_creation_enabled: schemaFields.projectClientTeamCreationEnabledSchema.optional(),\n client_user_deletion_enabled: schemaFields.projectClientUserDeletionEnabledSchema.optional(),\n allow_localhost: schemaFields.projectAllowLocalhostSchema.optional(),\n allow_user_api_keys: schemaFields.yupBoolean().optional(),\n allow_team_api_keys: schemaFields.yupBoolean().optional(),\n email_config: emailConfigSchema.optional().default(undefined),\n email_theme: schemaFields.emailThemeSchema.optional(),\n domains: yupArray(domainSchema.defined()).optional().default(undefined),\n oauth_providers: yupArray(oauthProviderWriteSchema.defined()).optional().default(undefined),\n create_team_on_sign_up: schemaFields.projectCreateTeamOnSignUpSchema.optional(),\n team_creator_default_permissions: yupArray(teamPermissionSchema.defined()).optional(),\n team_member_default_permissions: yupArray(teamPermissionSchema.defined()).optional(),\n user_default_permissions: yupArray(teamPermissionSchema.defined()).optional(),\n oauth_account_merge_strategy: schemaFields.oauthAccountMergeStrategySchema.optional(),\n }).optional().default(undefined),\n}).defined();\n\nexport const projectsCrudAdminCreateSchema = projectsCrudAdminUpdateSchema.concat(yupObject({\n display_name: schemaFields.projectDisplayNameSchema.defined(),\n owner_team_id: schemaFields.yupString().uuid().defined(),\n}).defined());\n\nexport const projectsCrudAdminDeleteSchema = schemaFields.yupMixed();\n\nexport const clientProjectsCrud = createCrud({\n clientReadSchema: projectsCrudClientReadSchema,\n docs: {\n clientRead: {\n summary: 'Get the current project',\n description: 'Get the current project information including display name, OAuth providers and authentication methods. Useful for displaying the available login options to the user.',\n tags: ['Projects'],\n },\n },\n});\nexport type ClientProjectsCrud = CrudTypeOf<typeof clientProjectsCrud>;\n\nexport const projectsCrud = createCrud({\n adminReadSchema: projectsCrudAdminReadSchema,\n adminUpdateSchema: projectsCrudAdminUpdateSchema,\n adminDeleteSchema: projectsCrudAdminDeleteSchema,\n docs: {\n adminRead: {\n summary: 'Get the current project',\n description: 'Get the current project information and configuration including display name, OAuth providers, email configuration, etc.',\n tags: ['Projects'],\n },\n adminUpdate: {\n summary: 'Update the current project',\n description: 'Update the current project information and configuration including display name, OAuth providers, email configuration, etc.',\n tags: ['Projects'],\n },\n adminDelete: {\n summary: 'Delete the current project',\n description: 'Delete the current project and all associated data (including users, teams, API keys, project configs, etc.). Be careful, this action is irreversible.',\n tags: ['Projects'],\n },\n },\n});\nexport type ProjectsCrud = CrudTypeOf<typeof projectsCrud>;\n\nexport const adminUserProjectsCrud = createCrud({\n clientReadSchema: projectsCrudAdminReadSchema,\n clientCreateSchema: projectsCrudAdminCreateSchema,\n docs: {\n clientList: {\n hidden: true,\n },\n clientCreate: {\n hidden: true,\n },\n },\n});\nexport type AdminUserProjectsCrud = CrudTypeOf<typeof adminUserProjectsCrud>;\n"],"mappings":"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","names":[]}
@@ -5,15 +5,19 @@ import '../../utils/strings.mjs';
5
5
 
6
6
  declare const svixTokenAdminReadSchema: yup.ObjectSchema<{
7
7
  token: string;
8
+ url: string | undefined;
8
9
  }, yup.AnyObject, {
9
10
  token: undefined;
11
+ url: undefined;
10
12
  }, "">;
11
13
  declare const svixTokenAdminCreateSchema: yup.ObjectSchema<{}, yup.AnyObject, {}, "">;
12
14
  declare const svixTokenCrud: CrudSchemaFromOptions<{
13
15
  adminReadSchema: yup.ObjectSchema<{
14
16
  token: string;
17
+ url: string | undefined;
15
18
  }, yup.AnyObject, {
16
19
  token: undefined;
20
+ url: undefined;
17
21
  }, "">;
18
22
  adminCreateSchema: yup.ObjectSchema<{}, yup.AnyObject, {}, "">;
19
23
  docs: {
@@ -5,15 +5,19 @@ import '../../utils/strings.js';
5
5
 
6
6
  declare const svixTokenAdminReadSchema: yup.ObjectSchema<{
7
7
  token: string;
8
+ url: string | undefined;
8
9
  }, yup.AnyObject, {
9
10
  token: undefined;
11
+ url: undefined;
10
12
  }, "">;
11
13
  declare const svixTokenAdminCreateSchema: yup.ObjectSchema<{}, yup.AnyObject, {}, "">;
12
14
  declare const svixTokenCrud: CrudSchemaFromOptions<{
13
15
  adminReadSchema: yup.ObjectSchema<{
14
16
  token: string;
17
+ url: string | undefined;
15
18
  }, yup.AnyObject, {
16
19
  token: undefined;
20
+ url: undefined;
17
21
  }, "">;
18
22
  adminCreateSchema: yup.ObjectSchema<{}, yup.AnyObject, {}, "">;
19
23
  docs: {
@@ -28,7 +28,8 @@ module.exports = __toCommonJS(svix_token_exports);
28
28
  var import_crud = require("../../crud.js");
29
29
  var import_schema_fields = require("../../schema-fields.js");
30
30
  var svixTokenAdminReadSchema = (0, import_schema_fields.yupObject)({
31
- token: (0, import_schema_fields.yupString)().defined()
31
+ token: (0, import_schema_fields.yupString)().defined(),
32
+ url: (0, import_schema_fields.yupString)().optional()
32
33
  }).defined();
33
34
  var svixTokenAdminCreateSchema = (0, import_schema_fields.yupObject)({}).defined();
34
35
  var svixTokenCrud = (0, import_crud.createCrud)({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/interface/crud/svix-token.ts"],"sourcesContent":["import { CrudTypeOf, createCrud } from \"../../crud\";\nimport { yupObject, yupString } from \"../../schema-fields\";\n\nexport const svixTokenAdminReadSchema = yupObject({\n token: yupString().defined(),\n}).defined();\n\nexport const svixTokenAdminCreateSchema = yupObject({}).defined();\n\nexport const svixTokenCrud = createCrud({\n adminReadSchema: svixTokenAdminReadSchema,\n adminCreateSchema: svixTokenAdminCreateSchema,\n docs: {\n adminCreate: {\n hidden: true,\n },\n }\n});\nexport type SvixTokenCrud = CrudTypeOf<typeof svixTokenCrud>;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAuC;AACvC,2BAAqC;AAE9B,IAAM,+BAA2B,gCAAU;AAAA,EAChD,WAAO,gCAAU,EAAE,QAAQ;AAC7B,CAAC,EAAE,QAAQ;AAEJ,IAAM,iCAA6B,gCAAU,CAAC,CAAC,EAAE,QAAQ;AAEzD,IAAM,oBAAgB,wBAAW;AAAA,EACtC,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,MAAM;AAAA,IACJ,aAAa;AAAA,MACX,QAAQ;AAAA,IACV;AAAA,EACF;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../../src/interface/crud/svix-token.ts"],"sourcesContent":["import { CrudTypeOf, createCrud } from \"../../crud\";\nimport { yupObject, yupString } from \"../../schema-fields\";\n\nexport const svixTokenAdminReadSchema = yupObject({\n token: yupString().defined(),\n url: yupString().optional(),\n}).defined();\n\nexport const svixTokenAdminCreateSchema = yupObject({}).defined();\n\nexport const svixTokenCrud = createCrud({\n adminReadSchema: svixTokenAdminReadSchema,\n adminCreateSchema: svixTokenAdminCreateSchema,\n docs: {\n adminCreate: {\n hidden: true,\n },\n }\n});\nexport type SvixTokenCrud = CrudTypeOf<typeof svixTokenCrud>;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAuC;AACvC,2BAAqC;AAE9B,IAAM,+BAA2B,gCAAU;AAAA,EAChD,WAAO,gCAAU,EAAE,QAAQ;AAAA,EAC3B,SAAK,gCAAU,EAAE,SAAS;AAC5B,CAAC,EAAE,QAAQ;AAEJ,IAAM,iCAA6B,gCAAU,CAAC,CAAC,EAAE,QAAQ;AAEzD,IAAM,oBAAgB,wBAAW;AAAA,EACtC,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,MAAM;AAAA,IACJ,aAAa;AAAA,MACX,QAAQ;AAAA,IACV;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -2,16 +2,9 @@ import * as yup from 'yup';
2
2
  import { InferType } from 'yup';
3
3
  import { DayInterval } from '../../utils/dates.mjs';
4
4
 
5
- declare const adminTransaction: yup.ObjectSchema<{
6
- id: string;
7
- type: "subscription" | "one_time" | "item_quantity_change";
8
- created_at_millis: number;
9
- customer_type: "user" | "team" | "custom";
10
- customer_id: string;
11
- quantity: number;
12
- test_mode: boolean;
13
- product_display_name: string | null;
14
- price: {
5
+ declare const transactionEntrySchema: yup.MixedSchema<{
6
+ type: "money_transfer";
7
+ charged_amount: {
15
8
  USD?: string | undefined;
16
9
  EUR?: string | undefined;
17
10
  GBP?: string | undefined;
@@ -19,38 +12,166 @@ declare const adminTransaction: yup.ObjectSchema<{
19
12
  INR?: string | undefined;
20
13
  AUD?: string | undefined;
21
14
  CAD?: string | undefined;
22
- interval?: DayInterval | undefined;
23
- } | null;
24
- status: string | null;
25
- item_id: string | undefined;
26
- description: string | null | undefined;
27
- expires_at_millis: number | null | undefined;
15
+ };
16
+ net_amount: {
17
+ USD: string;
18
+ };
19
+ adjusted_transaction_id: string | null;
20
+ adjusted_entry_index: number | null;
21
+ customer_type: "user" | "team" | "custom";
22
+ customer_id: string;
23
+ } | {
24
+ type: "item_quantity_change";
25
+ adjusted_transaction_id: string | null;
26
+ adjusted_entry_index: number | null;
27
+ customer_type: "user" | "team" | "custom";
28
+ customer_id: string;
29
+ item_id: string;
30
+ quantity: number;
31
+ } | {
32
+ subscription_id?: string | undefined;
33
+ one_time_purchase_id?: string | undefined;
34
+ type: "product_grant";
35
+ adjusted_transaction_id: string | null;
36
+ adjusted_entry_index: number | null;
37
+ customer_type: "user" | "team" | "custom";
38
+ customer_id: string;
39
+ quantity: number;
40
+ product_id: string | null;
41
+ product: {
42
+ client_metadata?: {} | null | undefined;
43
+ client_read_only_metadata?: {} | null | undefined;
44
+ server_metadata?: {} | null | undefined;
45
+ free_trial?: DayInterval | undefined;
46
+ display_name: string;
47
+ customer_type: "user" | "team" | "custom";
48
+ server_only: boolean;
49
+ stackable: boolean;
50
+ prices: Record<string, {
51
+ USD?: string | undefined;
52
+ EUR?: string | undefined;
53
+ GBP?: string | undefined;
54
+ JPY?: string | undefined;
55
+ INR?: string | undefined;
56
+ AUD?: string | undefined;
57
+ CAD?: string | undefined;
58
+ free_trial?: DayInterval | undefined;
59
+ interval?: DayInterval | undefined;
60
+ }>;
61
+ included_items: Record<string, {
62
+ repeat?: "never" | DayInterval | undefined;
63
+ quantity?: number | undefined;
64
+ expires?: "never" | "when-purchase-expires" | "when-repeated" | undefined;
65
+ }>;
66
+ };
67
+ price_id: string | null;
68
+ } | {
69
+ type: "product_revocation";
70
+ adjusted_transaction_id: string;
71
+ adjusted_entry_index: number;
72
+ quantity: number;
73
+ } | {
74
+ type: "product_revocation_reversal";
75
+ adjusted_transaction_id: string;
76
+ adjusted_entry_index: number;
77
+ quantity: number;
78
+ }, yup.AnyObject, undefined, "">;
79
+ type TransactionEntry = InferType<typeof transactionEntrySchema>;
80
+ declare const TRANSACTION_TYPES: readonly ["purchase", "subscription-cancellation", "subscription-renewal", "manual-item-quantity-change", "chargeback", "product-change"];
81
+ type TransactionType = (typeof TRANSACTION_TYPES)[number];
82
+ declare const transactionSchema: yup.ObjectSchema<{
83
+ id: string;
84
+ created_at_millis: number;
85
+ effective_at_millis: number;
86
+ type: "purchase" | "subscription-cancellation" | "subscription-renewal" | "manual-item-quantity-change" | "chargeback" | "product-change" | null;
87
+ entries: ({
88
+ type: "money_transfer";
89
+ charged_amount: {
90
+ USD?: string | undefined;
91
+ EUR?: string | undefined;
92
+ GBP?: string | undefined;
93
+ JPY?: string | undefined;
94
+ INR?: string | undefined;
95
+ AUD?: string | undefined;
96
+ CAD?: string | undefined;
97
+ };
98
+ net_amount: {
99
+ USD: string;
100
+ };
101
+ adjusted_transaction_id: string | null;
102
+ adjusted_entry_index: number | null;
103
+ customer_type: "user" | "team" | "custom";
104
+ customer_id: string;
105
+ } | {
106
+ type: "item_quantity_change";
107
+ adjusted_transaction_id: string | null;
108
+ adjusted_entry_index: number | null;
109
+ customer_type: "user" | "team" | "custom";
110
+ customer_id: string;
111
+ item_id: string;
112
+ quantity: number;
113
+ } | {
114
+ subscription_id?: string | undefined;
115
+ one_time_purchase_id?: string | undefined;
116
+ type: "product_grant";
117
+ adjusted_transaction_id: string | null;
118
+ adjusted_entry_index: number | null;
119
+ customer_type: "user" | "team" | "custom";
120
+ customer_id: string;
121
+ quantity: number;
122
+ product_id: string | null;
123
+ product: {
124
+ client_metadata?: {} | null | undefined;
125
+ client_read_only_metadata?: {} | null | undefined;
126
+ server_metadata?: {} | null | undefined;
127
+ free_trial?: DayInterval | undefined;
128
+ display_name: string;
129
+ customer_type: "user" | "team" | "custom";
130
+ server_only: boolean;
131
+ stackable: boolean;
132
+ prices: Record<string, {
133
+ USD?: string | undefined;
134
+ EUR?: string | undefined;
135
+ GBP?: string | undefined;
136
+ JPY?: string | undefined;
137
+ INR?: string | undefined;
138
+ AUD?: string | undefined;
139
+ CAD?: string | undefined;
140
+ free_trial?: DayInterval | undefined;
141
+ interval?: DayInterval | undefined;
142
+ }>;
143
+ included_items: Record<string, {
144
+ repeat?: "never" | DayInterval | undefined;
145
+ quantity?: number | undefined;
146
+ expires?: "never" | "when-purchase-expires" | "when-repeated" | undefined;
147
+ }>;
148
+ };
149
+ price_id: string | null;
150
+ } | {
151
+ type: "product_revocation";
152
+ adjusted_transaction_id: string;
153
+ adjusted_entry_index: number;
154
+ quantity: number;
155
+ } | {
156
+ type: "product_revocation_reversal";
157
+ adjusted_transaction_id: string;
158
+ adjusted_entry_index: number;
159
+ quantity: number;
160
+ })[];
161
+ adjusted_by: {
162
+ transaction_id: string;
163
+ entry_index: number;
164
+ }[];
165
+ test_mode: boolean;
28
166
  }, yup.AnyObject, {
29
167
  id: undefined;
30
- type: undefined;
31
168
  created_at_millis: undefined;
32
- customer_type: undefined;
33
- customer_id: undefined;
34
- quantity: undefined;
169
+ effective_at_millis: undefined;
170
+ type: undefined;
171
+ entries: undefined;
172
+ adjusted_by: undefined;
35
173
  test_mode: undefined;
36
- product_display_name: undefined;
37
- price: {
38
- interval: undefined;
39
- serverOnly: undefined;
40
- freeTrial: undefined;
41
- USD: undefined;
42
- EUR: undefined;
43
- GBP: undefined;
44
- JPY: undefined;
45
- INR: undefined;
46
- AUD: undefined;
47
- CAD: undefined;
48
- };
49
- status: undefined;
50
- item_id: undefined;
51
- description: undefined;
52
- expires_at_millis: undefined;
53
174
  }, "">;
54
- type AdminTransaction = InferType<typeof adminTransaction>;
175
+ type Transaction = InferType<typeof transactionSchema>;
55
176
 
56
- export { type AdminTransaction, adminTransaction };
177
+ export { TRANSACTION_TYPES, type Transaction, type TransactionEntry, type TransactionType, transactionEntrySchema, transactionSchema };
@@ -2,16 +2,9 @@ import * as yup from 'yup';
2
2
  import { InferType } from 'yup';
3
3
  import { DayInterval } from '../../utils/dates.js';
4
4
 
5
- declare const adminTransaction: yup.ObjectSchema<{
6
- id: string;
7
- type: "subscription" | "one_time" | "item_quantity_change";
8
- created_at_millis: number;
9
- customer_type: "user" | "team" | "custom";
10
- customer_id: string;
11
- quantity: number;
12
- test_mode: boolean;
13
- product_display_name: string | null;
14
- price: {
5
+ declare const transactionEntrySchema: yup.MixedSchema<{
6
+ type: "money_transfer";
7
+ charged_amount: {
15
8
  USD?: string | undefined;
16
9
  EUR?: string | undefined;
17
10
  GBP?: string | undefined;
@@ -19,38 +12,166 @@ declare const adminTransaction: yup.ObjectSchema<{
19
12
  INR?: string | undefined;
20
13
  AUD?: string | undefined;
21
14
  CAD?: string | undefined;
22
- interval?: DayInterval | undefined;
23
- } | null;
24
- status: string | null;
25
- item_id: string | undefined;
26
- description: string | null | undefined;
27
- expires_at_millis: number | null | undefined;
15
+ };
16
+ net_amount: {
17
+ USD: string;
18
+ };
19
+ adjusted_transaction_id: string | null;
20
+ adjusted_entry_index: number | null;
21
+ customer_type: "user" | "team" | "custom";
22
+ customer_id: string;
23
+ } | {
24
+ type: "item_quantity_change";
25
+ adjusted_transaction_id: string | null;
26
+ adjusted_entry_index: number | null;
27
+ customer_type: "user" | "team" | "custom";
28
+ customer_id: string;
29
+ item_id: string;
30
+ quantity: number;
31
+ } | {
32
+ subscription_id?: string | undefined;
33
+ one_time_purchase_id?: string | undefined;
34
+ type: "product_grant";
35
+ adjusted_transaction_id: string | null;
36
+ adjusted_entry_index: number | null;
37
+ customer_type: "user" | "team" | "custom";
38
+ customer_id: string;
39
+ quantity: number;
40
+ product_id: string | null;
41
+ product: {
42
+ client_metadata?: {} | null | undefined;
43
+ client_read_only_metadata?: {} | null | undefined;
44
+ server_metadata?: {} | null | undefined;
45
+ free_trial?: DayInterval | undefined;
46
+ display_name: string;
47
+ customer_type: "user" | "team" | "custom";
48
+ server_only: boolean;
49
+ stackable: boolean;
50
+ prices: Record<string, {
51
+ USD?: string | undefined;
52
+ EUR?: string | undefined;
53
+ GBP?: string | undefined;
54
+ JPY?: string | undefined;
55
+ INR?: string | undefined;
56
+ AUD?: string | undefined;
57
+ CAD?: string | undefined;
58
+ free_trial?: DayInterval | undefined;
59
+ interval?: DayInterval | undefined;
60
+ }>;
61
+ included_items: Record<string, {
62
+ repeat?: "never" | DayInterval | undefined;
63
+ quantity?: number | undefined;
64
+ expires?: "never" | "when-purchase-expires" | "when-repeated" | undefined;
65
+ }>;
66
+ };
67
+ price_id: string | null;
68
+ } | {
69
+ type: "product_revocation";
70
+ adjusted_transaction_id: string;
71
+ adjusted_entry_index: number;
72
+ quantity: number;
73
+ } | {
74
+ type: "product_revocation_reversal";
75
+ adjusted_transaction_id: string;
76
+ adjusted_entry_index: number;
77
+ quantity: number;
78
+ }, yup.AnyObject, undefined, "">;
79
+ type TransactionEntry = InferType<typeof transactionEntrySchema>;
80
+ declare const TRANSACTION_TYPES: readonly ["purchase", "subscription-cancellation", "subscription-renewal", "manual-item-quantity-change", "chargeback", "product-change"];
81
+ type TransactionType = (typeof TRANSACTION_TYPES)[number];
82
+ declare const transactionSchema: yup.ObjectSchema<{
83
+ id: string;
84
+ created_at_millis: number;
85
+ effective_at_millis: number;
86
+ type: "purchase" | "subscription-cancellation" | "subscription-renewal" | "manual-item-quantity-change" | "chargeback" | "product-change" | null;
87
+ entries: ({
88
+ type: "money_transfer";
89
+ charged_amount: {
90
+ USD?: string | undefined;
91
+ EUR?: string | undefined;
92
+ GBP?: string | undefined;
93
+ JPY?: string | undefined;
94
+ INR?: string | undefined;
95
+ AUD?: string | undefined;
96
+ CAD?: string | undefined;
97
+ };
98
+ net_amount: {
99
+ USD: string;
100
+ };
101
+ adjusted_transaction_id: string | null;
102
+ adjusted_entry_index: number | null;
103
+ customer_type: "user" | "team" | "custom";
104
+ customer_id: string;
105
+ } | {
106
+ type: "item_quantity_change";
107
+ adjusted_transaction_id: string | null;
108
+ adjusted_entry_index: number | null;
109
+ customer_type: "user" | "team" | "custom";
110
+ customer_id: string;
111
+ item_id: string;
112
+ quantity: number;
113
+ } | {
114
+ subscription_id?: string | undefined;
115
+ one_time_purchase_id?: string | undefined;
116
+ type: "product_grant";
117
+ adjusted_transaction_id: string | null;
118
+ adjusted_entry_index: number | null;
119
+ customer_type: "user" | "team" | "custom";
120
+ customer_id: string;
121
+ quantity: number;
122
+ product_id: string | null;
123
+ product: {
124
+ client_metadata?: {} | null | undefined;
125
+ client_read_only_metadata?: {} | null | undefined;
126
+ server_metadata?: {} | null | undefined;
127
+ free_trial?: DayInterval | undefined;
128
+ display_name: string;
129
+ customer_type: "user" | "team" | "custom";
130
+ server_only: boolean;
131
+ stackable: boolean;
132
+ prices: Record<string, {
133
+ USD?: string | undefined;
134
+ EUR?: string | undefined;
135
+ GBP?: string | undefined;
136
+ JPY?: string | undefined;
137
+ INR?: string | undefined;
138
+ AUD?: string | undefined;
139
+ CAD?: string | undefined;
140
+ free_trial?: DayInterval | undefined;
141
+ interval?: DayInterval | undefined;
142
+ }>;
143
+ included_items: Record<string, {
144
+ repeat?: "never" | DayInterval | undefined;
145
+ quantity?: number | undefined;
146
+ expires?: "never" | "when-purchase-expires" | "when-repeated" | undefined;
147
+ }>;
148
+ };
149
+ price_id: string | null;
150
+ } | {
151
+ type: "product_revocation";
152
+ adjusted_transaction_id: string;
153
+ adjusted_entry_index: number;
154
+ quantity: number;
155
+ } | {
156
+ type: "product_revocation_reversal";
157
+ adjusted_transaction_id: string;
158
+ adjusted_entry_index: number;
159
+ quantity: number;
160
+ })[];
161
+ adjusted_by: {
162
+ transaction_id: string;
163
+ entry_index: number;
164
+ }[];
165
+ test_mode: boolean;
28
166
  }, yup.AnyObject, {
29
167
  id: undefined;
30
- type: undefined;
31
168
  created_at_millis: undefined;
32
- customer_type: undefined;
33
- customer_id: undefined;
34
- quantity: undefined;
169
+ effective_at_millis: undefined;
170
+ type: undefined;
171
+ entries: undefined;
172
+ adjusted_by: undefined;
35
173
  test_mode: undefined;
36
- product_display_name: undefined;
37
- price: {
38
- interval: undefined;
39
- serverOnly: undefined;
40
- freeTrial: undefined;
41
- USD: undefined;
42
- EUR: undefined;
43
- GBP: undefined;
44
- JPY: undefined;
45
- INR: undefined;
46
- AUD: undefined;
47
- CAD: undefined;
48
- };
49
- status: undefined;
50
- item_id: undefined;
51
- description: undefined;
52
- expires_at_millis: undefined;
53
174
  }, "">;
54
- type AdminTransaction = InferType<typeof adminTransaction>;
175
+ type Transaction = InferType<typeof transactionSchema>;
55
176
 
56
- export { type AdminTransaction, adminTransaction };
177
+ export { TRANSACTION_TYPES, type Transaction, type TransactionEntry, type TransactionType, transactionEntrySchema, transactionSchema };