@23blocks/block-authentication 1.0.4 → 2.0.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.
Files changed (118) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.esm.js +2095 -0
  3. package/dist/src/index.d.ts +5 -0
  4. package/dist/src/index.d.ts.map +1 -0
  5. package/dist/src/lib/authentication.block.d.ts +149 -0
  6. package/dist/src/lib/authentication.block.d.ts.map +1 -0
  7. package/dist/src/lib/mappers/api-key.mapper.d.ts +11 -0
  8. package/dist/src/lib/mappers/api-key.mapper.d.ts.map +1 -0
  9. package/dist/src/lib/mappers/app.mapper.d.ts +15 -0
  10. package/dist/src/lib/mappers/app.mapper.d.ts.map +1 -0
  11. package/dist/src/lib/mappers/company.mapper.d.ts +23 -0
  12. package/dist/src/lib/mappers/company.mapper.d.ts.map +1 -0
  13. package/dist/src/lib/mappers/geography.mapper.d.ts +23 -0
  14. package/dist/src/lib/mappers/geography.mapper.d.ts.map +1 -0
  15. package/dist/src/lib/mappers/guest.mapper.d.ts +27 -0
  16. package/dist/src/lib/mappers/guest.mapper.d.ts.map +1 -0
  17. package/dist/{lib/mappers/index.js → src/lib/mappers/index.d.ts} +2 -11
  18. package/dist/src/lib/mappers/index.d.ts.map +1 -0
  19. package/dist/src/lib/mappers/subscription.mapper.d.ts +15 -0
  20. package/dist/src/lib/mappers/subscription.mapper.d.ts.map +1 -0
  21. package/dist/src/lib/mappers/user.mapper.d.ts +23 -0
  22. package/dist/src/lib/mappers/user.mapper.d.ts.map +1 -0
  23. package/dist/src/lib/mappers/utils.d.ts +21 -0
  24. package/dist/src/lib/mappers/utils.d.ts.map +1 -0
  25. package/dist/src/lib/services/api-keys.service.d.ts +65 -0
  26. package/dist/src/lib/services/api-keys.service.d.ts.map +1 -0
  27. package/dist/src/lib/services/apps.service.d.ts +87 -0
  28. package/dist/src/lib/services/apps.service.d.ts.map +1 -0
  29. package/dist/src/lib/services/auth.service.d.ts +69 -0
  30. package/dist/src/lib/services/auth.service.d.ts.map +1 -0
  31. package/dist/src/lib/services/geography.service.d.ts +125 -0
  32. package/dist/src/lib/services/geography.service.d.ts.map +1 -0
  33. package/dist/src/lib/services/guests.service.d.ts +166 -0
  34. package/dist/src/lib/services/guests.service.d.ts.map +1 -0
  35. package/dist/src/lib/services/index.d.ts +9 -0
  36. package/dist/src/lib/services/index.d.ts.map +1 -0
  37. package/dist/src/lib/services/roles.service.d.ts +82 -0
  38. package/dist/src/lib/services/roles.service.d.ts.map +1 -0
  39. package/dist/src/lib/services/subscriptions.service.d.ts +102 -0
  40. package/dist/src/lib/services/subscriptions.service.d.ts.map +1 -0
  41. package/dist/src/lib/services/users.service.d.ts +85 -0
  42. package/dist/src/lib/services/users.service.d.ts.map +1 -0
  43. package/dist/src/lib/types/api-key.d.ts +71 -0
  44. package/dist/src/lib/types/api-key.d.ts.map +1 -0
  45. package/dist/src/lib/types/app.d.ts +86 -0
  46. package/dist/src/lib/types/app.d.ts.map +1 -0
  47. package/dist/src/lib/types/auth.d.ts +138 -0
  48. package/dist/src/lib/types/auth.d.ts.map +1 -0
  49. package/dist/src/lib/types/company.d.ts +73 -0
  50. package/dist/src/lib/types/company.d.ts.map +1 -0
  51. package/dist/src/lib/types/geography.d.ts +73 -0
  52. package/dist/src/lib/types/geography.d.ts.map +1 -0
  53. package/dist/src/lib/types/guest.d.ts +136 -0
  54. package/dist/src/lib/types/guest.d.ts.map +1 -0
  55. package/dist/src/lib/types/index.d.ts +9 -0
  56. package/dist/src/lib/types/index.d.ts.map +1 -0
  57. package/dist/src/lib/types/subscription.d.ts +78 -0
  58. package/dist/src/lib/types/subscription.d.ts.map +1 -0
  59. package/dist/src/lib/types/user.d.ts +108 -0
  60. package/dist/src/lib/types/user.d.ts.map +1 -0
  61. package/package.json +10 -8
  62. package/dist/index.js +0 -6
  63. package/dist/index.js.map +0 -1
  64. package/dist/lib/authentication.block.js +0 -102
  65. package/dist/lib/authentication.block.js.map +0 -1
  66. package/dist/lib/mappers/api-key.mapper.js +0 -57
  67. package/dist/lib/mappers/api-key.mapper.js.map +0 -1
  68. package/dist/lib/mappers/app.mapper.js +0 -98
  69. package/dist/lib/mappers/app.mapper.js.map +0 -1
  70. package/dist/lib/mappers/company.mapper.js +0 -128
  71. package/dist/lib/mappers/company.mapper.js.map +0 -1
  72. package/dist/lib/mappers/geography.mapper.js +0 -129
  73. package/dist/lib/mappers/geography.mapper.js.map +0 -1
  74. package/dist/lib/mappers/guest.mapper.js +0 -176
  75. package/dist/lib/mappers/guest.mapper.js.map +0 -1
  76. package/dist/lib/mappers/index.js.map +0 -1
  77. package/dist/lib/mappers/subscription.mapper.js +0 -134
  78. package/dist/lib/mappers/subscription.mapper.js.map +0 -1
  79. package/dist/lib/mappers/user.mapper.js +0 -163
  80. package/dist/lib/mappers/user.mapper.js.map +0 -1
  81. package/dist/lib/mappers/utils.js +0 -54
  82. package/dist/lib/mappers/utils.js.map +0 -1
  83. package/dist/lib/services/api-keys.service.js +0 -93
  84. package/dist/lib/services/api-keys.service.js.map +0 -1
  85. package/dist/lib/services/apps.service.js +0 -139
  86. package/dist/lib/services/apps.service.js.map +0 -1
  87. package/dist/lib/services/auth.service.js +0 -147
  88. package/dist/lib/services/auth.service.js.map +0 -1
  89. package/dist/lib/services/geography.service.js +0 -151
  90. package/dist/lib/services/geography.service.js.map +0 -1
  91. package/dist/lib/services/guests.service.js +0 -219
  92. package/dist/lib/services/guests.service.js.map +0 -1
  93. package/dist/lib/services/index.js +0 -14
  94. package/dist/lib/services/index.js.map +0 -1
  95. package/dist/lib/services/roles.service.js +0 -91
  96. package/dist/lib/services/roles.service.js.map +0 -1
  97. package/dist/lib/services/subscriptions.service.js +0 -146
  98. package/dist/lib/services/subscriptions.service.js.map +0 -1
  99. package/dist/lib/services/users.service.js +0 -116
  100. package/dist/lib/services/users.service.js.map +0 -1
  101. package/dist/lib/types/api-key.js +0 -5
  102. package/dist/lib/types/api-key.js.map +0 -1
  103. package/dist/lib/types/app.js +0 -5
  104. package/dist/lib/types/app.js.map +0 -1
  105. package/dist/lib/types/auth.js +0 -5
  106. package/dist/lib/types/auth.js.map +0 -1
  107. package/dist/lib/types/company.js +0 -5
  108. package/dist/lib/types/company.js.map +0 -1
  109. package/dist/lib/types/geography.js +0 -5
  110. package/dist/lib/types/geography.js.map +0 -1
  111. package/dist/lib/types/guest.js +0 -5
  112. package/dist/lib/types/guest.js.map +0 -1
  113. package/dist/lib/types/index.js +0 -4
  114. package/dist/lib/types/index.js.map +0 -1
  115. package/dist/lib/types/subscription.js +0 -5
  116. package/dist/lib/types/subscription.js.map +0 -1
  117. package/dist/lib/types/user.js +0 -13
  118. package/dist/lib/types/user.js.map +0 -1
@@ -0,0 +1,125 @@
1
+ import type { Transport, PageResult, ListParams } from '@23blocks/contracts';
2
+ import type { Country, State, County, City, Currency } from '../types/index.js';
3
+ import type { AuthenticationBlockConfig } from '../authentication.block.js';
4
+ /**
5
+ * Countries service interface
6
+ */
7
+ export interface CountriesService {
8
+ /**
9
+ * List countries
10
+ */
11
+ list(params?: ListParams): Promise<PageResult<Country>>;
12
+ /**
13
+ * Get a country by ID
14
+ */
15
+ get(id: string): Promise<Country>;
16
+ /**
17
+ * Get a country by ISO code
18
+ */
19
+ getByIsoCode(isoCode: string): Promise<Country>;
20
+ /**
21
+ * Get all countries (no pagination)
22
+ */
23
+ all(): Promise<Country[]>;
24
+ }
25
+ /**
26
+ * States service interface
27
+ */
28
+ export interface StatesService {
29
+ /**
30
+ * List states
31
+ */
32
+ list(params?: ListParams): Promise<PageResult<State>>;
33
+ /**
34
+ * Get a state by ID
35
+ */
36
+ get(id: string): Promise<State>;
37
+ /**
38
+ * Get states for a country
39
+ */
40
+ forCountry(countryId: string): Promise<State[]>;
41
+ }
42
+ /**
43
+ * Counties service interface
44
+ */
45
+ export interface CountiesService {
46
+ /**
47
+ * List counties
48
+ */
49
+ list(params?: ListParams): Promise<PageResult<County>>;
50
+ /**
51
+ * Get a county by ID
52
+ */
53
+ get(id: string): Promise<County>;
54
+ /**
55
+ * Get counties for a state
56
+ */
57
+ forState(stateId: string): Promise<County[]>;
58
+ }
59
+ /**
60
+ * Cities service interface
61
+ */
62
+ export interface CitiesService {
63
+ /**
64
+ * List cities
65
+ */
66
+ list(params?: ListParams): Promise<PageResult<City>>;
67
+ /**
68
+ * Get a city by ID
69
+ */
70
+ get(id: string): Promise<City>;
71
+ /**
72
+ * Get cities for a state
73
+ */
74
+ forState(stateId: string): Promise<City[]>;
75
+ /**
76
+ * Get cities for a county
77
+ */
78
+ forCounty(countyId: string): Promise<City[]>;
79
+ /**
80
+ * Search cities by name
81
+ */
82
+ search(query: string, params?: ListParams): Promise<PageResult<City>>;
83
+ }
84
+ /**
85
+ * Currencies service interface
86
+ */
87
+ export interface CurrenciesService {
88
+ /**
89
+ * List currencies
90
+ */
91
+ list(params?: ListParams): Promise<PageResult<Currency>>;
92
+ /**
93
+ * Get a currency by ID
94
+ */
95
+ get(id: string): Promise<Currency>;
96
+ /**
97
+ * Get a currency by code
98
+ */
99
+ getByCode(code: string): Promise<Currency>;
100
+ /**
101
+ * Get all currencies (no pagination)
102
+ */
103
+ all(): Promise<Currency[]>;
104
+ }
105
+ /**
106
+ * Create the countries service
107
+ */
108
+ export declare function createCountriesService(transport: Transport, _config: AuthenticationBlockConfig): CountriesService;
109
+ /**
110
+ * Create the states service
111
+ */
112
+ export declare function createStatesService(transport: Transport, _config: AuthenticationBlockConfig): StatesService;
113
+ /**
114
+ * Create the counties service
115
+ */
116
+ export declare function createCountiesService(transport: Transport, _config: AuthenticationBlockConfig): CountiesService;
117
+ /**
118
+ * Create the cities service
119
+ */
120
+ export declare function createCitiesService(transport: Transport, _config: AuthenticationBlockConfig): CitiesService;
121
+ /**
122
+ * Create the currencies service
123
+ */
124
+ export declare function createCurrenciesService(transport: Transport, _config: AuthenticationBlockConfig): CurrenciesService;
125
+ //# sourceMappingURL=geography.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geography.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/services/geography.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,166 @@
1
+ import type { Transport, PageResult, ListParams } from '@23blocks/contracts';
2
+ import type { Guest, MagicLink, RefreshToken, UserDevice, TenantUser, MailTemplate, CreateMagicLinkRequest, RegisterDeviceRequest } from '../types/index.js';
3
+ import type { AuthenticationBlockConfig } from '../authentication.block.js';
4
+ /**
5
+ * Guests service interface
6
+ */
7
+ export interface GuestsService {
8
+ /**
9
+ * List guests
10
+ */
11
+ list(params?: ListParams): Promise<PageResult<Guest>>;
12
+ /**
13
+ * Get a guest by ID
14
+ */
15
+ get(id: string): Promise<Guest>;
16
+ /**
17
+ * Track a guest visit
18
+ */
19
+ track(): Promise<Guest>;
20
+ /**
21
+ * Convert guest to user (registration)
22
+ */
23
+ convert(id: string): Promise<Guest>;
24
+ }
25
+ /**
26
+ * Magic links service interface
27
+ */
28
+ export interface MagicLinksService {
29
+ /**
30
+ * List magic links
31
+ */
32
+ list(params?: ListParams): Promise<PageResult<MagicLink>>;
33
+ /**
34
+ * Get a magic link by ID
35
+ */
36
+ get(id: string): Promise<MagicLink>;
37
+ /**
38
+ * Create a magic link
39
+ */
40
+ create(request: CreateMagicLinkRequest): Promise<MagicLink>;
41
+ /**
42
+ * Validate a magic link token
43
+ */
44
+ validate(token: string): Promise<MagicLink>;
45
+ /**
46
+ * Expire a magic link
47
+ */
48
+ expire(id: string): Promise<MagicLink>;
49
+ }
50
+ /**
51
+ * Refresh tokens service interface
52
+ */
53
+ export interface RefreshTokensService {
54
+ /**
55
+ * List refresh tokens for the current user
56
+ */
57
+ list(params?: ListParams): Promise<PageResult<RefreshToken>>;
58
+ /**
59
+ * Get a refresh token by ID
60
+ */
61
+ get(id: string): Promise<RefreshToken>;
62
+ /**
63
+ * Revoke a refresh token
64
+ */
65
+ revoke(id: string): Promise<RefreshToken>;
66
+ /**
67
+ * Revoke all refresh tokens for current user
68
+ */
69
+ revokeAll(): Promise<void>;
70
+ /**
71
+ * Revoke all refresh tokens except current
72
+ */
73
+ revokeOthers(): Promise<void>;
74
+ }
75
+ /**
76
+ * User devices service interface
77
+ */
78
+ export interface UserDevicesService {
79
+ /**
80
+ * List devices for current user
81
+ */
82
+ list(params?: ListParams): Promise<PageResult<UserDevice>>;
83
+ /**
84
+ * Get a device by ID
85
+ */
86
+ get(id: string): Promise<UserDevice>;
87
+ /**
88
+ * Register a new device
89
+ */
90
+ register(request: RegisterDeviceRequest): Promise<UserDevice>;
91
+ /**
92
+ * Update device settings
93
+ */
94
+ update(id: string, request: Partial<RegisterDeviceRequest>): Promise<UserDevice>;
95
+ /**
96
+ * Unregister a device
97
+ */
98
+ unregister(id: string): Promise<void>;
99
+ /**
100
+ * Set default device
101
+ */
102
+ setDefault(id: string): Promise<UserDevice>;
103
+ }
104
+ /**
105
+ * Tenant users service interface
106
+ */
107
+ export interface TenantUsersService {
108
+ /**
109
+ * Get current tenant user context
110
+ */
111
+ current(): Promise<TenantUser>;
112
+ /**
113
+ * Get tenant user by user ID
114
+ */
115
+ get(userUniqueId: string): Promise<TenantUser>;
116
+ /**
117
+ * List tenant users
118
+ */
119
+ list(params?: ListParams): Promise<TenantUser[]>;
120
+ }
121
+ /**
122
+ * Mail templates service interface
123
+ */
124
+ export interface MailTemplatesService {
125
+ /**
126
+ * List mail templates
127
+ */
128
+ list(params?: ListParams): Promise<PageResult<MailTemplate>>;
129
+ /**
130
+ * Get a mail template by ID
131
+ */
132
+ get(id: string): Promise<MailTemplate>;
133
+ /**
134
+ * Get a mail template by event name
135
+ */
136
+ getByEvent(eventName: string): Promise<MailTemplate>;
137
+ /**
138
+ * Update a mail template
139
+ */
140
+ update(id: string, template: Partial<MailTemplate>): Promise<MailTemplate>;
141
+ }
142
+ /**
143
+ * Create the guests service
144
+ */
145
+ export declare function createGuestsService(transport: Transport, _config: AuthenticationBlockConfig): GuestsService;
146
+ /**
147
+ * Create the magic links service
148
+ */
149
+ export declare function createMagicLinksService(transport: Transport, _config: AuthenticationBlockConfig): MagicLinksService;
150
+ /**
151
+ * Create the refresh tokens service
152
+ */
153
+ export declare function createRefreshTokensService(transport: Transport, _config: AuthenticationBlockConfig): RefreshTokensService;
154
+ /**
155
+ * Create the user devices service
156
+ */
157
+ export declare function createUserDevicesService(transport: Transport, _config: AuthenticationBlockConfig): UserDevicesService;
158
+ /**
159
+ * Create the tenant users service
160
+ */
161
+ export declare function createTenantUsersService(transport: Transport, _config: AuthenticationBlockConfig): TenantUsersService;
162
+ /**
163
+ * Create the mail templates service
164
+ */
165
+ export declare function createMailTemplatesService(transport: Transport, _config: AuthenticationBlockConfig): MailTemplatesService;
166
+ //# sourceMappingURL=guests.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guests.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/services/guests.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export { createAuthService, type AuthService } from './auth.service.js';
2
+ export { createUsersService, type UsersService, type UpdateUserRequest, type UpdateProfileRequest } from './users.service.js';
3
+ export { createRolesService, type RolesService, type CreateRoleRequest, type UpdateRoleRequest } from './roles.service.js';
4
+ export { createApiKeysService, type ApiKeysService, type ApiKeyUsageStats } from './api-keys.service.js';
5
+ export { createAppsService, createBlocksService, createServicesRegistryService, type AppsService, type BlocksService, type ServicesRegistryService, } from './apps.service.js';
6
+ export { createSubscriptionModelsService, createUserSubscriptionsService, createCompanySubscriptionsService, type SubscriptionModelsService, type UserSubscriptionsService, type CompanySubscriptionsService, type SubscribeRequest, } from './subscriptions.service.js';
7
+ export { createCountriesService, createStatesService, createCountiesService, createCitiesService, createCurrenciesService, type CountriesService, type StatesService, type CountiesService, type CitiesService, type CurrenciesService, } from './geography.service.js';
8
+ export { createGuestsService, createMagicLinksService, createRefreshTokensService, createUserDevicesService, createTenantUsersService, createMailTemplatesService, type GuestsService, type MagicLinksService, type RefreshTokensService, type UserDevicesService, type TenantUsersService, type MailTemplatesService, } from './guests.service.js';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/services/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,KAAK,YAAY,EAAE,KAAK,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC9H,OAAO,EAAE,kBAAkB,EAAE,KAAK,YAAY,EAAE,KAAK,iBAAiB,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC3H,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGzG,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,6BAA6B,EAC7B,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,uBAAuB,GAC7B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,+BAA+B,EAC/B,8BAA8B,EAC9B,iCAAiC,EACjC,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,gBAAgB,GACtB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,EACvB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,iBAAiB,GACvB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,EAC1B,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,GAC1B,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,82 @@
1
+ import type { Transport, PageResult, ListParams } from '@23blocks/contracts';
2
+ import type { Role, Permission } from '../types/index.js';
3
+ import type { AuthenticationBlockConfig } from '../authentication.block.js';
4
+ /**
5
+ * Create role request
6
+ */
7
+ export interface CreateRoleRequest {
8
+ name: string;
9
+ code: string;
10
+ description?: string;
11
+ payload?: Record<string, unknown>;
12
+ onBoardingUniqueId?: string;
13
+ onBoardingUrl?: string;
14
+ onBoardingPayload?: Record<string, unknown>;
15
+ }
16
+ /**
17
+ * Update role request
18
+ */
19
+ export interface UpdateRoleRequest {
20
+ name?: string;
21
+ code?: string;
22
+ description?: string;
23
+ status?: string;
24
+ payload?: Record<string, unknown>;
25
+ onBoardingUniqueId?: string;
26
+ onBoardingUrl?: string;
27
+ onBoardingPayload?: Record<string, unknown>;
28
+ }
29
+ /**
30
+ * Roles service
31
+ */
32
+ export interface RolesService {
33
+ /**
34
+ * List all roles
35
+ */
36
+ list(params?: ListParams): Promise<PageResult<Role>>;
37
+ /**
38
+ * Get a role by ID
39
+ */
40
+ get(id: string): Promise<Role>;
41
+ /**
42
+ * Get a role by code
43
+ */
44
+ getByCode(code: string): Promise<Role>;
45
+ /**
46
+ * Create a new role
47
+ */
48
+ create(request: CreateRoleRequest): Promise<Role>;
49
+ /**
50
+ * Update a role
51
+ */
52
+ update(id: string, request: UpdateRoleRequest): Promise<Role>;
53
+ /**
54
+ * Delete a role
55
+ */
56
+ delete(id: string): Promise<void>;
57
+ /**
58
+ * Get permissions for a role
59
+ */
60
+ getPermissions(roleId: string): Promise<Permission[]>;
61
+ /**
62
+ * Set permissions for a role
63
+ */
64
+ setPermissions(roleId: string, permissionIds: string[]): Promise<Role>;
65
+ /**
66
+ * Add permission to a role
67
+ */
68
+ addPermission(roleId: string, permissionId: string): Promise<Role>;
69
+ /**
70
+ * Remove permission from a role
71
+ */
72
+ removePermission(roleId: string, permissionId: string): Promise<Role>;
73
+ /**
74
+ * List all permissions
75
+ */
76
+ listPermissions(params?: ListParams): Promise<PageResult<Permission>>;
77
+ }
78
+ /**
79
+ * Create the roles service
80
+ */
81
+ export declare function createRolesService(transport: Transport, _config: AuthenticationBlockConfig): RolesService;
82
+ //# sourceMappingURL=roles.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"roles.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/services/roles.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE7E,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAErD;;OAEG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/B;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvC;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElD;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9D;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElC;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAEtD;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvE;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnE;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtE;;OAEG;IACH,eAAe,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;CACvE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,yBAAyB,GACjC,YAAY,CA+Gd"}
@@ -0,0 +1,102 @@
1
+ import type { Transport, PageResult, ListParams } from '@23blocks/contracts';
2
+ import type { SubscriptionModel, UserSubscription, CompanySubscription } from '../types/index.js';
3
+ import type { AuthenticationBlockConfig } from '../authentication.block.js';
4
+ /**
5
+ * Subscribe request
6
+ */
7
+ export interface SubscribeRequest {
8
+ subscriptionModelCode: string;
9
+ initialPayment?: number;
10
+ }
11
+ /**
12
+ * Subscription models service interface
13
+ */
14
+ export interface SubscriptionModelsService {
15
+ /**
16
+ * List subscription models
17
+ */
18
+ list(params?: ListParams): Promise<PageResult<SubscriptionModel>>;
19
+ /**
20
+ * Get a subscription model by ID
21
+ */
22
+ get(id: string): Promise<SubscriptionModel>;
23
+ /**
24
+ * Get a subscription model by code
25
+ */
26
+ getByCode(code: string): Promise<SubscriptionModel>;
27
+ /**
28
+ * List promotional subscription models
29
+ */
30
+ promotional(): Promise<SubscriptionModel[]>;
31
+ }
32
+ /**
33
+ * User subscriptions service interface
34
+ */
35
+ export interface UserSubscriptionsService {
36
+ /**
37
+ * List user subscriptions
38
+ */
39
+ list(params?: ListParams): Promise<PageResult<UserSubscription>>;
40
+ /**
41
+ * Get a user subscription by ID
42
+ */
43
+ get(id: string): Promise<UserSubscription>;
44
+ /**
45
+ * Get subscriptions for a user
46
+ */
47
+ forUser(userUniqueId: string): Promise<UserSubscription[]>;
48
+ /**
49
+ * Subscribe a user to a plan
50
+ */
51
+ subscribe(userUniqueId: string, request: SubscribeRequest): Promise<UserSubscription>;
52
+ /**
53
+ * Cancel a subscription
54
+ */
55
+ cancel(id: string): Promise<UserSubscription>;
56
+ /**
57
+ * Reactivate a subscription
58
+ */
59
+ reactivate(id: string): Promise<UserSubscription>;
60
+ }
61
+ /**
62
+ * Company subscriptions service interface
63
+ */
64
+ export interface CompanySubscriptionsService {
65
+ /**
66
+ * List company subscriptions
67
+ */
68
+ list(params?: ListParams): Promise<PageResult<CompanySubscription>>;
69
+ /**
70
+ * Get a company subscription by ID
71
+ */
72
+ get(id: string): Promise<CompanySubscription>;
73
+ /**
74
+ * Get subscriptions for a company
75
+ */
76
+ forCompany(companyUniqueId: string): Promise<CompanySubscription[]>;
77
+ /**
78
+ * Subscribe a company to a plan
79
+ */
80
+ subscribe(companyUniqueId: string, request: SubscribeRequest): Promise<CompanySubscription>;
81
+ /**
82
+ * Cancel a subscription
83
+ */
84
+ cancel(id: string): Promise<CompanySubscription>;
85
+ /**
86
+ * Reactivate a subscription
87
+ */
88
+ reactivate(id: string): Promise<CompanySubscription>;
89
+ }
90
+ /**
91
+ * Create the subscription models service
92
+ */
93
+ export declare function createSubscriptionModelsService(transport: Transport, _config: AuthenticationBlockConfig): SubscriptionModelsService;
94
+ /**
95
+ * Create the user subscriptions service
96
+ */
97
+ export declare function createUserSubscriptionsService(transport: Transport, _config: AuthenticationBlockConfig): UserSubscriptionsService;
98
+ /**
99
+ * Create the company subscriptions service
100
+ */
101
+ export declare function createCompanySubscriptionsService(transport: Transport, _config: AuthenticationBlockConfig): CompanySubscriptionsService;
102
+ //# sourceMappingURL=subscriptions.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscriptions.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/services/subscriptions.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAG7E,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAM3B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAElE;;OAEG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAE5C;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAEpD;;OAEG;IACH,WAAW,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEjE;;OAEG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE3C;;OAEG;IACH,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAE3D;;OAEG;IACH,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAEtF;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE9C;;OAEG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAEpE;;OAEG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAE9C;;OAEG;IACH,UAAU,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAEpE;;OAEG;IACH,SAAS,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAE5F;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAEjD;;OAEG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACtD;AAqCD;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,yBAAyB,GACjC,yBAAyB,CA+B3B;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,yBAAyB,GACjC,wBAAwB,CAsD1B;AAED;;GAEG;AACH,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,yBAAyB,GACjC,2BAA2B,CAsD7B"}
@@ -0,0 +1,85 @@
1
+ import type { Transport, PageResult, ListParams } from '@23blocks/contracts';
2
+ import type { User } from '../types/index.js';
3
+ import type { AuthenticationBlockConfig } from '../authentication.block.js';
4
+ /**
5
+ * User update request
6
+ */
7
+ export interface UpdateUserRequest {
8
+ name?: string;
9
+ username?: string;
10
+ nickname?: string;
11
+ bio?: string;
12
+ roleId?: string;
13
+ status?: string;
14
+ }
15
+ /**
16
+ * Profile update request
17
+ */
18
+ export interface UpdateProfileRequest {
19
+ firstName?: string;
20
+ middleName?: string;
21
+ lastName?: string;
22
+ gender?: string;
23
+ zipcode?: string;
24
+ phoneNumber?: string;
25
+ preferredLanguage?: string;
26
+ timeZone?: string;
27
+ webSite?: string;
28
+ twitter?: string;
29
+ fb?: string;
30
+ instagram?: string;
31
+ linkedin?: string;
32
+ youtube?: string;
33
+ blog?: string;
34
+ payload?: Record<string, unknown>;
35
+ }
36
+ /**
37
+ * Users service
38
+ */
39
+ export interface UsersService {
40
+ /**
41
+ * List users with pagination and filtering
42
+ */
43
+ list(params?: ListParams): Promise<PageResult<User>>;
44
+ /**
45
+ * Get a user by ID
46
+ */
47
+ get(id: string): Promise<User>;
48
+ /**
49
+ * Get a user by unique ID
50
+ */
51
+ getByUniqueId(uniqueId: string): Promise<User>;
52
+ /**
53
+ * Update a user
54
+ */
55
+ update(id: string, request: UpdateUserRequest): Promise<User>;
56
+ /**
57
+ * Update user profile
58
+ */
59
+ updateProfile(userId: string, request: UpdateProfileRequest): Promise<User>;
60
+ /**
61
+ * Delete a user
62
+ */
63
+ delete(id: string): Promise<void>;
64
+ /**
65
+ * Activate a user
66
+ */
67
+ activate(id: string): Promise<User>;
68
+ /**
69
+ * Deactivate a user
70
+ */
71
+ deactivate(id: string): Promise<User>;
72
+ /**
73
+ * Change user role
74
+ */
75
+ changeRole(id: string, roleId: string): Promise<User>;
76
+ /**
77
+ * Search users
78
+ */
79
+ search(query: string, params?: ListParams): Promise<PageResult<User>>;
80
+ }
81
+ /**
82
+ * Create the users service
83
+ */
84
+ export declare function createUsersService(transport: Transport, _config: AuthenticationBlockConfig): UsersService;
85
+ //# sourceMappingURL=users.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"users.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/services/users.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE7E,OAAO,KAAK,EAAE,IAAI,EAAe,MAAM,mBAAmB,CAAC;AAE3D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAErD;;OAEG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/B;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/C;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9D;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5E;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElC;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpC;;OAEG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC;;OAEG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtD;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;CACvE;AAqCD;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,yBAAyB,GACjC,YAAY,CAuGd"}
@@ -0,0 +1,71 @@
1
+ import type { IdentityCore, EntityStatus } from '@23blocks/contracts';
2
+ /**
3
+ * API Key entity
4
+ */
5
+ export interface ApiKey extends IdentityCore {
6
+ keyId: string;
7
+ name: string;
8
+ description: string | null;
9
+ status: EntityStatus;
10
+ serviceAccount: boolean;
11
+ scopes: string[];
12
+ expiresAt: Date | null;
13
+ rateLimitPerMinute: number | null;
14
+ rateLimitPerHour: number | null;
15
+ rateLimitPerDay: number | null;
16
+ allowedOrigins: string[];
17
+ allowedIps: string[];
18
+ lastUsedAt: Date | null;
19
+ usageCount: number;
20
+ revokedAt: Date | null;
21
+ revocationReason: string | null;
22
+ payload: Record<string, unknown> | null;
23
+ isExpired: boolean;
24
+ daysUntilExpiry: number | null;
25
+ usageToday: number;
26
+ usageThisWeek: number;
27
+ usageThisMonth: number;
28
+ }
29
+ /**
30
+ * API Key with secret (only returned on create)
31
+ */
32
+ export interface ApiKeyWithSecret extends ApiKey {
33
+ secretKey: string;
34
+ }
35
+ /**
36
+ * Create API key request
37
+ */
38
+ export interface CreateApiKeyRequest {
39
+ name: string;
40
+ description?: string;
41
+ serviceAccount?: boolean;
42
+ scopes?: string[];
43
+ expiresAt?: Date | string;
44
+ rateLimitPerMinute?: number;
45
+ rateLimitPerHour?: number;
46
+ rateLimitPerDay?: number;
47
+ allowedOrigins?: string[];
48
+ allowedIps?: string[];
49
+ payload?: Record<string, unknown>;
50
+ }
51
+ /**
52
+ * Update API key request
53
+ */
54
+ export interface UpdateApiKeyRequest {
55
+ name?: string;
56
+ description?: string;
57
+ scopes?: string[];
58
+ rateLimitPerMinute?: number;
59
+ rateLimitPerHour?: number;
60
+ rateLimitPerDay?: number;
61
+ allowedOrigins?: string[];
62
+ allowedIps?: string[];
63
+ payload?: Record<string, unknown>;
64
+ }
65
+ /**
66
+ * Revoke API key request
67
+ */
68
+ export interface RevokeApiKeyRequest {
69
+ reason?: string;
70
+ }
71
+ //# sourceMappingURL=api-key.d.ts.map