@lssm/lib.identity-rbac 0.0.0-canary-20251217083314 → 1.41.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 (148) hide show
  1. package/dist/contracts/index.js +1 -5
  2. package/dist/contracts/organization.js +1 -607
  3. package/dist/contracts/rbac.js +1 -487
  4. package/dist/contracts/user.js +1 -335
  5. package/dist/entities/index.js +1 -35
  6. package/dist/entities/organization.js +1 -151
  7. package/dist/entities/rbac.js +1 -138
  8. package/dist/entities/user.js +1 -194
  9. package/dist/events.js +1 -543
  10. package/dist/identity-rbac.feature.js +1 -186
  11. package/dist/index.js +1 -14
  12. package/dist/policies/engine.js +1 -167
  13. package/dist/policies/index.js +1 -3
  14. package/package.json +18 -19
  15. package/dist/contracts/dist/capabilities/openbanking.js +0 -88
  16. package/dist/contracts/dist/client/index.js +0 -5
  17. package/dist/contracts/dist/client/react/feature-render.js +0 -2
  18. package/dist/contracts/dist/client/react/form-render.js +0 -4
  19. package/dist/contracts/dist/client/react/index.js +0 -4
  20. package/dist/contracts/dist/contract-registry/index.js +0 -1
  21. package/dist/contracts/dist/contract-registry/schemas.js +0 -60
  22. package/dist/contracts/dist/docs/PUBLISHING.docblock.js +0 -16
  23. package/dist/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js +0 -16
  24. package/dist/contracts/dist/docs/index.js +0 -29
  25. package/dist/contracts/dist/docs/presentations.js +0 -71
  26. package/dist/contracts/dist/docs/registry.js +0 -44
  27. package/dist/contracts/dist/docs/tech/PHASE_1_QUICKSTART.docblock.js +0 -16
  28. package/dist/contracts/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.js +0 -16
  29. package/dist/contracts/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.js +0 -16
  30. package/dist/contracts/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.js +0 -16
  31. package/dist/contracts/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.js +0 -16
  32. package/dist/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js +0 -80
  33. package/dist/contracts/dist/docs/tech/contracts/openapi-export.docblock.js +0 -57
  34. package/dist/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js +0 -16
  35. package/dist/contracts/dist/docs/tech/llm/llm-integration.docblock.js +0 -357
  36. package/dist/contracts/dist/docs/tech/mcp-endpoints.docblock.js +0 -37
  37. package/dist/contracts/dist/docs/tech/presentation-runtime.docblock.js +0 -16
  38. package/dist/contracts/dist/docs/tech/schema/README.docblock.js +0 -20
  39. package/dist/contracts/dist/docs/tech/studio/learning-events.docblock.js +0 -48
  40. package/dist/contracts/dist/docs/tech/studio/learning-journeys.docblock.js +0 -79
  41. package/dist/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js +0 -84
  42. package/dist/contracts/dist/docs/tech/studio/project-access-teams.docblock.js +0 -45
  43. package/dist/contracts/dist/docs/tech/studio/project-routing.docblock.js +0 -67
  44. package/dist/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js +0 -40
  45. package/dist/contracts/dist/docs/tech/studio/team-invitations.docblock.js +0 -69
  46. package/dist/contracts/dist/docs/tech/studio/workspace-ops.docblock.js +0 -47
  47. package/dist/contracts/dist/docs/tech/studio/workspaces.docblock.js +0 -62
  48. package/dist/contracts/dist/docs/tech/telemetry-ingest.docblock.js +0 -155
  49. package/dist/contracts/dist/docs/tech/templates/runtime.docblock.js +0 -20
  50. package/dist/contracts/dist/docs/tech/vscode-extension.docblock.js +0 -101
  51. package/dist/contracts/dist/docs/tech/workflows/overview.docblock.js +0 -20
  52. package/dist/contracts/dist/events.js +0 -10
  53. package/dist/contracts/dist/experiments/evaluator.js +0 -1
  54. package/dist/contracts/dist/index.js +0 -71
  55. package/dist/contracts/dist/install.js +0 -2
  56. package/dist/contracts/dist/integrations/contracts.js +0 -377
  57. package/dist/contracts/dist/integrations/index.js +0 -18
  58. package/dist/contracts/dist/integrations/openbanking/contracts/accounts.js +0 -228
  59. package/dist/contracts/dist/integrations/openbanking/contracts/balances.js +0 -159
  60. package/dist/contracts/dist/integrations/openbanking/contracts/index.js +0 -3
  61. package/dist/contracts/dist/integrations/openbanking/contracts/transactions.js +0 -210
  62. package/dist/contracts/dist/integrations/openbanking/models.js +0 -242
  63. package/dist/contracts/dist/integrations/openbanking/telemetry.js +0 -13
  64. package/dist/contracts/dist/integrations/providers/elevenlabs.js +0 -52
  65. package/dist/contracts/dist/integrations/providers/gcs-storage.js +0 -75
  66. package/dist/contracts/dist/integrations/providers/gmail.js +0 -87
  67. package/dist/contracts/dist/integrations/providers/google-calendar.js +0 -66
  68. package/dist/contracts/dist/integrations/providers/index.js +0 -11
  69. package/dist/contracts/dist/integrations/providers/mistral.js +0 -68
  70. package/dist/contracts/dist/integrations/providers/postmark.js +0 -68
  71. package/dist/contracts/dist/integrations/providers/powens.js +0 -116
  72. package/dist/contracts/dist/integrations/providers/qdrant.js +0 -73
  73. package/dist/contracts/dist/integrations/providers/registry.js +0 -10
  74. package/dist/contracts/dist/integrations/providers/stripe.js +0 -83
  75. package/dist/contracts/dist/integrations/providers/twilio-sms.js +0 -61
  76. package/dist/contracts/dist/jsonschema.js +0 -1
  77. package/dist/contracts/dist/knowledge/contracts.js +0 -306
  78. package/dist/contracts/dist/knowledge/index.js +0 -7
  79. package/dist/contracts/dist/knowledge/spaces/email-threads.js +0 -34
  80. package/dist/contracts/dist/knowledge/spaces/financial-docs.js +0 -34
  81. package/dist/contracts/dist/knowledge/spaces/financial-overview.js +0 -38
  82. package/dist/contracts/dist/knowledge/spaces/index.js +0 -6
  83. package/dist/contracts/dist/knowledge/spaces/product-canon.js +0 -34
  84. package/dist/contracts/dist/knowledge/spaces/support-faq.js +0 -37
  85. package/dist/contracts/dist/knowledge/spaces/uploaded-docs.js +0 -34
  86. package/dist/contracts/dist/llm/exporters.js +0 -19
  87. package/dist/contracts/dist/llm/index.js +0 -2
  88. package/dist/contracts/dist/llm/prompts.js +0 -1
  89. package/dist/contracts/dist/onboarding-base.js +0 -196
  90. package/dist/contracts/dist/openapi.js +0 -1
  91. package/dist/contracts/dist/ownership.js +0 -21
  92. package/dist/contracts/dist/presentations.js +0 -1
  93. package/dist/contracts/dist/presentations.v2.js +0 -11
  94. package/dist/contracts/dist/prompt.js +0 -1
  95. package/dist/contracts/dist/promptRegistry.js +0 -1
  96. package/dist/contracts/dist/regenerator/index.js +0 -1
  97. package/dist/contracts/dist/regenerator/service.js +0 -6
  98. package/dist/contracts/dist/registry.js +0 -2
  99. package/dist/contracts/dist/resources.js +0 -1
  100. package/dist/contracts/dist/schema/dist/EnumType.js +0 -2
  101. package/dist/contracts/dist/schema/dist/FieldType.js +0 -49
  102. package/dist/contracts/dist/schema/dist/ScalarTypeEnum.js +0 -236
  103. package/dist/contracts/dist/schema/dist/SchemaModel.js +0 -34
  104. package/dist/contracts/dist/schema/dist/entity/defineEntity.js +0 -1
  105. package/dist/contracts/dist/schema/dist/entity/index.js +0 -2
  106. package/dist/contracts/dist/schema/dist/entity/types.js +0 -1
  107. package/dist/contracts/dist/schema/dist/index.js +0 -6
  108. package/dist/contracts/dist/server/graphql-pothos.js +0 -6
  109. package/dist/contracts/dist/server/index.js +0 -8
  110. package/dist/contracts/dist/server/mcp/createMcpServer.js +0 -4
  111. package/dist/contracts/dist/server/mcp/registerPresentations.js +0 -2
  112. package/dist/contracts/dist/server/mcp/registerPrompts.js +0 -1
  113. package/dist/contracts/dist/server/mcp/registerResources.js +0 -2
  114. package/dist/contracts/dist/server/mcp/registerTools.js +0 -1
  115. package/dist/contracts/dist/server/provider-mcp.js +0 -1
  116. package/dist/contracts/dist/server/rest-elysia.js +0 -1
  117. package/dist/contracts/dist/server/rest-express.js +0 -1
  118. package/dist/contracts/dist/server/rest-generic.js +0 -1
  119. package/dist/contracts/dist/server/rest-next-app.js +0 -1
  120. package/dist/contracts/dist/server/rest-next-pages.js +0 -1
  121. package/dist/contracts/dist/spec.js +0 -34
  122. package/dist/contracts/dist/telemetry/index.js +0 -1
  123. package/dist/contracts/dist/telemetry/tracker.js +0 -1
  124. package/dist/contracts/dist/tests/index.js +0 -1
  125. package/dist/contracts/dist/tests/runner.js +0 -2
  126. package/dist/contracts/dist/workflow/index.js +0 -1
  127. package/dist/contracts/dist/workflow/runner.js +0 -1
  128. package/dist/contracts/index.d.ts +0 -4
  129. package/dist/contracts/organization.d.ts +0 -895
  130. package/dist/contracts/rbac.d.ts +0 -611
  131. package/dist/contracts/user.d.ts +0 -610
  132. package/dist/entities/index.d.ts +0 -176
  133. package/dist/entities/organization.d.ts +0 -86
  134. package/dist/entities/rbac.d.ts +0 -87
  135. package/dist/entities/user.d.ts +0 -87
  136. package/dist/events.d.ts +0 -689
  137. package/dist/identity-rbac.feature.d.ts +0 -11
  138. package/dist/index.d.ts +0 -11
  139. package/dist/policies/engine.d.ts +0 -132
  140. package/dist/policies/index.d.ts +0 -2
  141. package/dist/schema/dist/EnumType.js +0 -2
  142. package/dist/schema/dist/FieldType.js +0 -49
  143. package/dist/schema/dist/ScalarTypeEnum.js +0 -236
  144. package/dist/schema/dist/SchemaModel.js +0 -34
  145. package/dist/schema/dist/entity/defineEntity.js +0 -236
  146. package/dist/schema/dist/entity/index.js +0 -2
  147. package/dist/schema/dist/entity/types.js +0 -1
  148. package/dist/schema/dist/index.js +0 -6
@@ -1,194 +1 @@
1
- import { defineEntity, field, index } from "../schema/dist/entity/defineEntity.js";
2
- import "../schema/dist/index.js";
3
-
4
- //#region src/entities/user.ts
5
- /**
6
- * User entity - core user profile and authentication.
7
- */
8
- const UserEntity = defineEntity({
9
- name: "User",
10
- description: "A user of the platform. Users hold core profile information and authenticate via Account records.",
11
- schema: "lssm_sigil",
12
- map: "user",
13
- fields: {
14
- id: field.id({ description: "Unique user identifier" }),
15
- email: field.email({
16
- isUnique: true,
17
- description: "User email address"
18
- }),
19
- emailVerified: field.boolean({
20
- default: false,
21
- description: "Whether email has been verified"
22
- }),
23
- name: field.string({
24
- isOptional: true,
25
- description: "Display name"
26
- }),
27
- firstName: field.string({
28
- isOptional: true,
29
- description: "First name"
30
- }),
31
- lastName: field.string({
32
- isOptional: true,
33
- description: "Last name"
34
- }),
35
- locale: field.string({
36
- isOptional: true,
37
- description: "User locale (e.g., \"en-US\")"
38
- }),
39
- timezone: field.string({
40
- isOptional: true,
41
- description: "Olson timezone (e.g., \"Europe/Paris\")"
42
- }),
43
- imageUrl: field.url({
44
- isOptional: true,
45
- description: "URL of avatar or profile picture"
46
- }),
47
- image: field.string({
48
- isOptional: true,
49
- description: "Legacy image field"
50
- }),
51
- metadata: field.json({
52
- isOptional: true,
53
- description: "Arbitrary user metadata"
54
- }),
55
- onboardingCompleted: field.boolean({
56
- default: false,
57
- description: "Whether onboarding is complete"
58
- }),
59
- onboardingStep: field.string({
60
- isOptional: true,
61
- description: "Current onboarding step"
62
- }),
63
- whitelistedAt: field.dateTime({
64
- isOptional: true,
65
- description: "When user was whitelisted"
66
- }),
67
- role: field.string({
68
- isOptional: true,
69
- default: "\"user\"",
70
- description: "User role (user, admin)"
71
- }),
72
- banned: field.boolean({
73
- default: false,
74
- description: "Whether user is banned"
75
- }),
76
- banReason: field.string({
77
- isOptional: true,
78
- description: "Reason for ban"
79
- }),
80
- banExpires: field.dateTime({
81
- isOptional: true,
82
- description: "When ban expires"
83
- }),
84
- phoneNumber: field.string({
85
- isOptional: true,
86
- isUnique: true,
87
- description: "Phone number"
88
- }),
89
- phoneNumberVerified: field.boolean({
90
- default: false,
91
- description: "Whether phone is verified"
92
- }),
93
- createdAt: field.createdAt(),
94
- updatedAt: field.updatedAt(),
95
- sessions: field.hasMany("Session"),
96
- accounts: field.hasMany("Account"),
97
- memberships: field.hasMany("Member"),
98
- invitations: field.hasMany("Invitation"),
99
- teamMemberships: field.hasMany("TeamMember"),
100
- policyBindings: field.hasMany("PolicyBinding"),
101
- apiKeys: field.hasMany("ApiKey"),
102
- passkeys: field.hasMany("Passkey")
103
- }
104
- });
105
- /**
106
- * Session entity - login sessions.
107
- */
108
- const SessionEntity = defineEntity({
109
- name: "Session",
110
- description: "Represents a login session (e.g., web session or API token).",
111
- schema: "lssm_sigil",
112
- map: "session",
113
- fields: {
114
- id: field.id(),
115
- userId: field.foreignKey(),
116
- expiresAt: field.dateTime({ description: "Session expiration time" }),
117
- token: field.string({
118
- isUnique: true,
119
- description: "Session token"
120
- }),
121
- ipAddress: field.string({
122
- isOptional: true,
123
- description: "Client IP address"
124
- }),
125
- userAgent: field.string({
126
- isOptional: true,
127
- description: "Client user agent"
128
- }),
129
- impersonatedBy: field.string({
130
- isOptional: true,
131
- description: "Admin impersonating this session"
132
- }),
133
- activeOrganizationId: field.string({
134
- isOptional: true,
135
- description: "Active org context"
136
- }),
137
- activeTeamId: field.string({
138
- isOptional: true,
139
- description: "Active team context"
140
- }),
141
- createdAt: field.createdAt(),
142
- updatedAt: field.updatedAt(),
143
- user: field.belongsTo("User", ["userId"], ["id"], { onDelete: "Cascade" })
144
- }
145
- });
146
- /**
147
- * Account entity - external authentication accounts.
148
- */
149
- const AccountEntity = defineEntity({
150
- name: "Account",
151
- description: "External authentication accounts (OAuth, password, etc.).",
152
- schema: "lssm_sigil",
153
- map: "account",
154
- fields: {
155
- id: field.id(),
156
- accountId: field.string({ description: "Account ID from provider" }),
157
- providerId: field.string({ description: "Provider identifier" }),
158
- userId: field.foreignKey(),
159
- accessToken: field.string({ isOptional: true }),
160
- refreshToken: field.string({ isOptional: true }),
161
- idToken: field.string({ isOptional: true }),
162
- accessTokenExpiresAt: field.dateTime({ isOptional: true }),
163
- refreshTokenExpiresAt: field.dateTime({ isOptional: true }),
164
- scope: field.string({ isOptional: true }),
165
- password: field.string({
166
- isOptional: true,
167
- description: "Hashed password for password providers"
168
- }),
169
- createdAt: field.createdAt(),
170
- updatedAt: field.updatedAt(),
171
- user: field.belongsTo("User", ["userId"], ["id"], { onDelete: "Cascade" })
172
- },
173
- indexes: [index.unique(["accountId", "providerId"])]
174
- });
175
- /**
176
- * Verification entity - email/phone verification tokens.
177
- */
178
- const VerificationEntity = defineEntity({
179
- name: "Verification",
180
- description: "Verification tokens for email/phone confirmation.",
181
- schema: "lssm_sigil",
182
- map: "verification",
183
- fields: {
184
- id: field.uuid(),
185
- identifier: field.string({ description: "Email or phone being verified" }),
186
- value: field.string({ description: "Verification code/token" }),
187
- expiresAt: field.dateTime({ description: "Token expiration" }),
188
- createdAt: field.createdAt(),
189
- updatedAt: field.updatedAt()
190
- }
191
- });
192
-
193
- //#endregion
194
- export { AccountEntity, SessionEntity, UserEntity, VerificationEntity };
1
+ import{defineEntity as e,field as t,index as n}from"@lssm/lib.schema";const r=e({name:`User`,description:`A user of the platform. Users hold core profile information and authenticate via Account records.`,schema:`lssm_sigil`,map:`user`,fields:{id:t.id({description:`Unique user identifier`}),email:t.email({isUnique:!0,description:`User email address`}),emailVerified:t.boolean({default:!1,description:`Whether email has been verified`}),name:t.string({isOptional:!0,description:`Display name`}),firstName:t.string({isOptional:!0,description:`First name`}),lastName:t.string({isOptional:!0,description:`Last name`}),locale:t.string({isOptional:!0,description:`User locale (e.g., "en-US")`}),timezone:t.string({isOptional:!0,description:`Olson timezone (e.g., "Europe/Paris")`}),imageUrl:t.url({isOptional:!0,description:`URL of avatar or profile picture`}),image:t.string({isOptional:!0,description:`Legacy image field`}),metadata:t.json({isOptional:!0,description:`Arbitrary user metadata`}),onboardingCompleted:t.boolean({default:!1,description:`Whether onboarding is complete`}),onboardingStep:t.string({isOptional:!0,description:`Current onboarding step`}),whitelistedAt:t.dateTime({isOptional:!0,description:`When user was whitelisted`}),role:t.string({isOptional:!0,default:`"user"`,description:`User role (user, admin)`}),banned:t.boolean({default:!1,description:`Whether user is banned`}),banReason:t.string({isOptional:!0,description:`Reason for ban`}),banExpires:t.dateTime({isOptional:!0,description:`When ban expires`}),phoneNumber:t.string({isOptional:!0,isUnique:!0,description:`Phone number`}),phoneNumberVerified:t.boolean({default:!1,description:`Whether phone is verified`}),createdAt:t.createdAt(),updatedAt:t.updatedAt(),sessions:t.hasMany(`Session`),accounts:t.hasMany(`Account`),memberships:t.hasMany(`Member`),invitations:t.hasMany(`Invitation`),teamMemberships:t.hasMany(`TeamMember`),policyBindings:t.hasMany(`PolicyBinding`),apiKeys:t.hasMany(`ApiKey`),passkeys:t.hasMany(`Passkey`)}}),i=e({name:`Session`,description:`Represents a login session (e.g., web session or API token).`,schema:`lssm_sigil`,map:`session`,fields:{id:t.id(),userId:t.foreignKey(),expiresAt:t.dateTime({description:`Session expiration time`}),token:t.string({isUnique:!0,description:`Session token`}),ipAddress:t.string({isOptional:!0,description:`Client IP address`}),userAgent:t.string({isOptional:!0,description:`Client user agent`}),impersonatedBy:t.string({isOptional:!0,description:`Admin impersonating this session`}),activeOrganizationId:t.string({isOptional:!0,description:`Active org context`}),activeTeamId:t.string({isOptional:!0,description:`Active team context`}),createdAt:t.createdAt(),updatedAt:t.updatedAt(),user:t.belongsTo(`User`,[`userId`],[`id`],{onDelete:`Cascade`})}}),a=e({name:`Account`,description:`External authentication accounts (OAuth, password, etc.).`,schema:`lssm_sigil`,map:`account`,fields:{id:t.id(),accountId:t.string({description:`Account ID from provider`}),providerId:t.string({description:`Provider identifier`}),userId:t.foreignKey(),accessToken:t.string({isOptional:!0}),refreshToken:t.string({isOptional:!0}),idToken:t.string({isOptional:!0}),accessTokenExpiresAt:t.dateTime({isOptional:!0}),refreshTokenExpiresAt:t.dateTime({isOptional:!0}),scope:t.string({isOptional:!0}),password:t.string({isOptional:!0,description:`Hashed password for password providers`}),createdAt:t.createdAt(),updatedAt:t.updatedAt(),user:t.belongsTo(`User`,[`userId`],[`id`],{onDelete:`Cascade`})},indexes:[n.unique([`accountId`,`providerId`])]}),o=e({name:`Verification`,description:`Verification tokens for email/phone confirmation.`,schema:`lssm_sigil`,map:`verification`,fields:{id:t.uuid(),identifier:t.string({description:`Email or phone being verified`}),value:t.string({description:`Verification code/token`}),expiresAt:t.dateTime({description:`Token expiration`}),createdAt:t.createdAt(),updatedAt:t.updatedAt()}});export{a as AccountEntity,i as SessionEntity,r as UserEntity,o as VerificationEntity};