@bairock/lenz 0.0.15 → 0.0.17

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 (134) hide show
  1. package/README.md +195 -19
  2. package/dist/cli/commands/generate/crud.d.ts +3 -0
  3. package/dist/cli/commands/generate/crud.d.ts.map +1 -0
  4. package/dist/cli/commands/generate/crud.js +123 -0
  5. package/dist/cli/commands/generate/crud.js.map +1 -0
  6. package/dist/cli/commands/generate/index.d.ts +3 -0
  7. package/dist/cli/commands/generate/index.d.ts.map +1 -0
  8. package/dist/cli/commands/generate/index.js +8 -0
  9. package/dist/cli/commands/generate/index.js.map +1 -0
  10. package/dist/cli/commands/generate/orm.d.ts +3 -0
  11. package/dist/cli/commands/generate/orm.d.ts.map +1 -0
  12. package/dist/cli/commands/generate/orm.js +107 -0
  13. package/dist/cli/commands/generate/orm.js.map +1 -0
  14. package/dist/cli/commands/generate.d.ts.map +1 -1
  15. package/dist/cli/commands/generate.js +34 -8
  16. package/dist/cli/commands/generate.js.map +1 -1
  17. package/dist/cli/commands/init.d.ts.map +1 -1
  18. package/dist/cli/commands/init.js +0 -2
  19. package/dist/cli/commands/init.js.map +1 -1
  20. package/dist/cli/index.js +1 -3
  21. package/dist/cli/index.js.map +1 -1
  22. package/dist/config/index.d.ts +4 -6
  23. package/dist/config/index.d.ts.map +1 -1
  24. package/dist/config/index.js +24 -3
  25. package/dist/config/index.js.map +1 -1
  26. package/dist/engine/CodeGenerator.d.ts +8 -28
  27. package/dist/engine/CodeGenerator.d.ts.map +1 -1
  28. package/dist/engine/CodeGenerator.js +28 -1969
  29. package/dist/engine/CodeGenerator.js.map +1 -1
  30. package/dist/engine/GraphQLParseHelpers.d.ts +25 -0
  31. package/dist/engine/GraphQLParseHelpers.d.ts.map +1 -0
  32. package/dist/engine/GraphQLParseHelpers.js +128 -0
  33. package/dist/engine/GraphQLParseHelpers.js.map +1 -0
  34. package/dist/engine/GraphQLParser.d.ts +23 -10
  35. package/dist/engine/GraphQLParser.d.ts.map +1 -1
  36. package/dist/engine/GraphQLParser.js +154 -240
  37. package/dist/engine/GraphQLParser.js.map +1 -1
  38. package/dist/engine/GraphQLRelationAnalyzer.d.ts +10 -0
  39. package/dist/engine/GraphQLRelationAnalyzer.d.ts.map +1 -0
  40. package/dist/engine/GraphQLRelationAnalyzer.js +117 -0
  41. package/dist/engine/GraphQLRelationAnalyzer.js.map +1 -0
  42. package/dist/engine/LenzEngine.d.ts +1 -1
  43. package/dist/engine/LenzEngine.d.ts.map +1 -1
  44. package/dist/engine/LenzEngine.js +33 -13
  45. package/dist/engine/LenzEngine.js.map +1 -1
  46. package/dist/engine/SchemaRelationValidator.d.ts +15 -0
  47. package/dist/engine/SchemaRelationValidator.d.ts.map +1 -0
  48. package/dist/engine/SchemaRelationValidator.js +133 -0
  49. package/dist/engine/SchemaRelationValidator.js.map +1 -0
  50. package/dist/engine/SchemaValidator.d.ts +11 -10
  51. package/dist/engine/SchemaValidator.d.ts.map +1 -1
  52. package/dist/engine/SchemaValidator.js +151 -169
  53. package/dist/engine/SchemaValidator.js.map +1 -1
  54. package/dist/engine/directives.d.ts +10 -0
  55. package/dist/engine/directives.d.ts.map +1 -1
  56. package/dist/engine/directives.js +152 -6
  57. package/dist/engine/directives.js.map +1 -1
  58. package/dist/engine/generators/ClientGenerator.d.ts +7 -0
  59. package/dist/engine/generators/ClientGenerator.d.ts.map +1 -0
  60. package/dist/engine/generators/ClientGenerator.js +386 -0
  61. package/dist/engine/generators/ClientGenerator.js.map +1 -0
  62. package/dist/engine/generators/CrudModuleGenerator.d.ts +10 -0
  63. package/dist/engine/generators/CrudModuleGenerator.d.ts.map +1 -0
  64. package/dist/engine/generators/CrudModuleGenerator.js +141 -0
  65. package/dist/engine/generators/CrudModuleGenerator.js.map +1 -0
  66. package/dist/engine/generators/DelegateGenerator.d.ts +9 -0
  67. package/dist/engine/generators/DelegateGenerator.d.ts.map +1 -0
  68. package/dist/engine/generators/DelegateGenerator.js +453 -0
  69. package/dist/engine/generators/DelegateGenerator.js.map +1 -0
  70. package/dist/engine/generators/DelegateHelpers.d.ts +7 -0
  71. package/dist/engine/generators/DelegateHelpers.d.ts.map +1 -0
  72. package/dist/engine/generators/DelegateHelpers.js +144 -0
  73. package/dist/engine/generators/DelegateHelpers.js.map +1 -0
  74. package/dist/engine/generators/DelegateRelations.d.ts +11 -0
  75. package/dist/engine/generators/DelegateRelations.d.ts.map +1 -0
  76. package/dist/engine/generators/DelegateRelations.js +794 -0
  77. package/dist/engine/generators/DelegateRelations.js.map +1 -0
  78. package/dist/engine/generators/DelegateTemplateBody.d.ts +8 -0
  79. package/dist/engine/generators/DelegateTemplateBody.d.ts.map +1 -0
  80. package/dist/engine/generators/DelegateTemplateBody.js +776 -0
  81. package/dist/engine/generators/DelegateTemplateBody.js.map +1 -0
  82. package/dist/engine/generators/GenerateRuntimeErrors.d.ts +2 -0
  83. package/dist/engine/generators/GenerateRuntimeErrors.d.ts.map +1 -0
  84. package/dist/engine/generators/GenerateRuntimeErrors.js +140 -0
  85. package/dist/engine/generators/GenerateRuntimeErrors.js.map +1 -0
  86. package/dist/engine/generators/GenerateRuntimeIndex.d.ts +2 -0
  87. package/dist/engine/generators/GenerateRuntimeIndex.d.ts.map +1 -0
  88. package/dist/engine/generators/GenerateRuntimeIndex.js +21 -0
  89. package/dist/engine/generators/GenerateRuntimeIndex.js.map +1 -0
  90. package/dist/engine/generators/GenerateRuntimeLogger.d.ts +2 -0
  91. package/dist/engine/generators/GenerateRuntimeLogger.d.ts.map +1 -0
  92. package/dist/engine/generators/GenerateRuntimeLogger.js +125 -0
  93. package/dist/engine/generators/GenerateRuntimeLogger.js.map +1 -0
  94. package/dist/engine/generators/GenerateRuntimePagination.d.ts +2 -0
  95. package/dist/engine/generators/GenerateRuntimePagination.d.ts.map +1 -0
  96. package/dist/engine/generators/GenerateRuntimePagination.js +159 -0
  97. package/dist/engine/generators/GenerateRuntimePagination.js.map +1 -0
  98. package/dist/engine/generators/GenerateRuntimeQuery.d.ts +2 -0
  99. package/dist/engine/generators/GenerateRuntimeQuery.d.ts.map +1 -0
  100. package/dist/engine/generators/GenerateRuntimeQuery.js +427 -0
  101. package/dist/engine/generators/GenerateRuntimeQuery.js.map +1 -0
  102. package/dist/engine/generators/GenerateRuntimeRelations.d.ts +2 -0
  103. package/dist/engine/generators/GenerateRuntimeRelations.d.ts.map +1 -0
  104. package/dist/engine/generators/GenerateRuntimeRelations.js +130 -0
  105. package/dist/engine/generators/GenerateRuntimeRelations.js.map +1 -0
  106. package/dist/engine/generators/RuntimeGenerator.d.ts +16 -0
  107. package/dist/engine/generators/RuntimeGenerator.d.ts.map +1 -0
  108. package/dist/engine/generators/RuntimeGenerator.js +16 -0
  109. package/dist/engine/generators/RuntimeGenerator.js.map +1 -0
  110. package/dist/engine/generators/SDLInputTypesGenerator.d.ts +6 -0
  111. package/dist/engine/generators/SDLInputTypesGenerator.d.ts.map +1 -0
  112. package/dist/engine/generators/SDLInputTypesGenerator.js +763 -0
  113. package/dist/engine/generators/SDLInputTypesGenerator.js.map +1 -0
  114. package/dist/engine/generators/TypeFilterTypes.d.ts +2 -0
  115. package/dist/engine/generators/TypeFilterTypes.d.ts.map +1 -0
  116. package/dist/engine/generators/TypeFilterTypes.js +220 -0
  117. package/dist/engine/generators/TypeFilterTypes.js.map +1 -0
  118. package/dist/engine/generators/TypeGenerator.d.ts +16 -0
  119. package/dist/engine/generators/TypeGenerator.d.ts.map +1 -0
  120. package/dist/engine/generators/TypeGenerator.js +493 -0
  121. package/dist/engine/generators/TypeGenerator.js.map +1 -0
  122. package/dist/engine/generators/helpers.d.ts +13 -0
  123. package/dist/engine/generators/helpers.d.ts.map +1 -0
  124. package/dist/engine/generators/helpers.js +316 -0
  125. package/dist/engine/generators/helpers.js.map +1 -0
  126. package/dist/errors/index.d.ts +3 -0
  127. package/dist/errors/index.d.ts.map +1 -1
  128. package/dist/errors/index.js +11 -1
  129. package/dist/errors/index.js.map +1 -1
  130. package/dist/index.d.ts +0 -1
  131. package/dist/index.d.ts.map +1 -1
  132. package/dist/index.js +2 -4
  133. package/dist/index.js.map +1 -1
  134. package/package.json +10 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DelegateTemplateBody.js","sourceRoot":"","sources":["../../../src/engine/generators/DelegateTemplateBody.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function generateRuntimeErrors(): string;
2
+ //# sourceMappingURL=GenerateRuntimeErrors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenerateRuntimeErrors.d.ts","sourceRoot":"","sources":["../../../src/engine/generators/GenerateRuntimeErrors.ts"],"names":[],"mappings":"AAAA,wBAAgB,qBAAqB,IAAI,MAAM,CA0I9C"}
@@ -0,0 +1,140 @@
1
+ export function generateRuntimeErrors() {
2
+ return `// This file was auto-generated by Lenz. Do not edit manually.
3
+ // @generated
4
+
5
+ /**
6
+ * Base error class for Lenz client runtime errors.
7
+ */
8
+ export class LenzClientError extends Error {
9
+ public readonly code: string
10
+ public readonly details?: Record<string, any>
11
+
12
+ constructor(code: string, message: string, details?: Record<string, any>) {
13
+ super(message)
14
+ this.name = 'LenzClientError'
15
+ this.code = code
16
+ this.details = details
17
+ }
18
+ }
19
+
20
+ /** Duplicate key / unique constraint violation */
21
+ export class UniqueConstraintError extends LenzClientError {
22
+ constructor(key?: string, details?: Record<string, any>) {
23
+ super(
24
+ 'UNIQUE_CONSTRAINT',
25
+ \`Unique constraint violation\${key ? ' on field: ' + key : ''}\`,
26
+ { key, ...details }
27
+ )
28
+ this.name = 'UniqueConstraintError'
29
+ }
30
+ }
31
+
32
+ /** Record not found */
33
+ export class NotFoundError extends LenzClientError {
34
+ constructor(modelName?: string, details?: Record<string, any>) {
35
+ super(
36
+ 'NOT_FOUND',
37
+ \`Record not found\${modelName ? ' in ' + modelName : ''}\`,
38
+ { modelName, ...details }
39
+ )
40
+ this.name = 'NotFoundError'
41
+ }
42
+ }
43
+
44
+ /** Validation error */
45
+ export class ValidationError extends LenzClientError {
46
+ constructor(message: string, details?: Record<string, any>) {
47
+ super('VALIDATION_ERROR', message, details)
48
+ this.name = 'ValidationError'
49
+ }
50
+ }
51
+
52
+ /** Connection / network error */
53
+ export class ConnectionError extends LenzClientError {
54
+ constructor(message: string, details?: Record<string, any>) {
55
+ super('CONNECTION_ERROR', message, details)
56
+ this.name = 'ConnectionError'
57
+ }
58
+ }
59
+
60
+ /** Transaction error */
61
+ export class TransactionError extends LenzClientError {
62
+ constructor(message: string, details?: Record<string, any>) {
63
+ super('TRANSACTION_ERROR', message, details)
64
+ this.name = 'TransactionError'
65
+ }
66
+ }
67
+
68
+ const MONGODB_ERROR_MAP: Record<number, string> = {
69
+ 11000: 'Unique constraint violation: a record with this value already exists',
70
+ 11001: 'Unique constraint violation',
71
+ 121: 'Document failed validation',
72
+ 13: 'Authentication failed: invalid credentials',
73
+ 18: 'Authentication failed',
74
+ 6: 'Host unreachable: could not connect to the database',
75
+ 9001: 'Socket error: connection to the database was lost',
76
+ 43: 'Cursor not found: the query cursor has expired',
77
+ 50: 'Query exceeded maximum execution time',
78
+ 13435: 'Not a primary or secondary: the database is not available for reads',
79
+ 100: 'Cannot replicate: the operation could not be completed',
80
+ 11600: 'Operation interrupted: the database is shutting down',
81
+ 11601: 'Operation interrupted',
82
+ 91: 'Shutdown in progress',
83
+ 133: 'Failed to connect: could not reach the database server',
84
+ 123: 'Operation exceeded the allowed time limit',
85
+ 64: 'Write concern error: not enough replicas to acknowledge the write',
86
+ 10001: 'Write concern failed',
87
+ 16029: 'Query produced a result set that exceeds the maximum allowed size',
88
+ 16819: 'Sort operation used more than the maximum 32 megabytes of RAM',
89
+ 17144: 'Cursor timeout: the cursor timed out due to inactivity',
90
+ }
91
+
92
+ export function wrapMongoError(error: any, context?: string): LenzClientError {
93
+ if (error instanceof LenzClientError) return error
94
+
95
+ const mongoCode = error?.code
96
+ const codeNum = typeof mongoCode === 'number' ? mongoCode : Number(mongoCode)
97
+ const message = error?.message || String(error)
98
+
99
+ if (codeNum && MONGODB_ERROR_MAP[codeNum]) {
100
+ switch (codeNum) {
101
+ case 11000:
102
+ case 11001: {
103
+ const keyMatch = message.match(/dup key:\s*\{\s*([^:}\s]+)/)
104
+ const key = keyMatch ? keyMatch[1].trim() : undefined
105
+ return new UniqueConstraintError(key, { originalError: message, context })
106
+ }
107
+ case 13:
108
+ case 18:
109
+ return new ConnectionError(MONGODB_ERROR_MAP[codeNum] + (context ? ' [' + context + ']' : ''), { originalError: message, context })
110
+ case 6:
111
+ case 9001:
112
+ case 133:
113
+ return new ConnectionError(MONGODB_ERROR_MAP[codeNum], { originalError: message, context })
114
+ default:
115
+ return new LenzClientError('DATABASE_ERROR', MONGODB_ERROR_MAP[codeNum] + (context ? ' [' + context + ']' : ''), {
116
+ code: codeNum,
117
+ originalError: message,
118
+ context
119
+ })
120
+ }
121
+ }
122
+
123
+ if (message.includes('not found') || message.includes('NotFound')) {
124
+ return new NotFoundError(context, { originalError: message })
125
+ }
126
+ if (message.includes('Invalid objectId') || message.includes('ObjectId')) {
127
+ return new ValidationError('Invalid ID format', { originalError: message, context })
128
+ }
129
+ if (message.includes('timed out') || message.includes('timeout')) {
130
+ return new ConnectionError('Database operation timed out', { originalError: message, context })
131
+ }
132
+ if (message.includes('Transaction') && (message.includes('abort') || message.includes('fail'))) {
133
+ return new TransactionError('Transaction failed: ' + message, { originalError: message, context })
134
+ }
135
+
136
+ return new LenzClientError('UNKNOWN_ERROR', message, { context })
137
+ }
138
+ `;
139
+ }
140
+ //# sourceMappingURL=GenerateRuntimeErrors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenerateRuntimeErrors.js","sourceRoot":"","sources":["../../../src/engine/generators/GenerateRuntimeErrors.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,qBAAqB;IACjC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwIV,CAAC;AACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function generateRuntimeIndex(): string;
2
+ //# sourceMappingURL=GenerateRuntimeIndex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenerateRuntimeIndex.d.ts","sourceRoot":"","sources":["../../../src/engine/generators/GenerateRuntimeIndex.ts"],"names":[],"mappings":"AAAA,wBAAgB,oBAAoB,IAAI,MAAM,CAmB7C"}
@@ -0,0 +1,21 @@
1
+ export function generateRuntimeIndex() {
2
+ return `// This file was auto-generated by Lenz. Do not edit manually.
3
+ // @generated
4
+
5
+ export { QueryBuilder } from './query'
6
+ export { PaginationHelper } from './pagination'
7
+ export { RelationResolver } from './relations'
8
+ export { Logger } from './logger'
9
+ export type { LogLevel, LogDefinition, QueryEvent, LogEvent } from './logger'
10
+ export {
11
+ LenzClientError,
12
+ UniqueConstraintError,
13
+ NotFoundError,
14
+ ValidationError,
15
+ ConnectionError,
16
+ TransactionError,
17
+ wrapMongoError
18
+ } from './errors'
19
+ `;
20
+ }
21
+ //# sourceMappingURL=GenerateRuntimeIndex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenerateRuntimeIndex.js","sourceRoot":"","sources":["../../../src/engine/generators/GenerateRuntimeIndex.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB;IAChC,OAAO;;;;;;;;;;;;;;;;;CAiBV,CAAC;AACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function generateRuntimeLogger(): string;
2
+ //# sourceMappingURL=GenerateRuntimeLogger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenerateRuntimeLogger.d.ts","sourceRoot":"","sources":["../../../src/engine/generators/GenerateRuntimeLogger.ts"],"names":[],"mappings":"AAAA,wBAAgB,qBAAqB,IAAI,MAAM,CA2H9C"}
@@ -0,0 +1,125 @@
1
+ export function generateRuntimeLogger() {
2
+ return `// This file was auto-generated by Lenz. Do not edit manually.
3
+ // @generated
4
+
5
+ export type LogLevel = 'query' | 'info' | 'warn' | 'error'
6
+ export type LogEmit = 'stdout' | 'event'
7
+
8
+ export interface LogDefinition {
9
+ emit: LogEmit
10
+ level: LogLevel
11
+ }
12
+
13
+ export interface QueryEvent {
14
+ query: string
15
+ params: any[]
16
+ duration: number
17
+ operation: string
18
+ collection: string
19
+ timestamp: Date
20
+ }
21
+
22
+ export interface LogEvent {
23
+ level: LogLevel
24
+ message: string
25
+ timestamp: Date
26
+ }
27
+
28
+ type LogCallback = (event: QueryEvent | LogEvent) => void
29
+
30
+ export class Logger {
31
+ private logConfig: (LogLevel | LogDefinition)[]
32
+ private eventListeners: Map<string, LogCallback[]> = new Map()
33
+
34
+ constructor(logConfig?: (LogLevel | LogDefinition)[]) {
35
+ this.logConfig = logConfig || []
36
+ }
37
+
38
+ private shouldEmitStdout(level: LogLevel): boolean {
39
+ for (const entry of this.logConfig) {
40
+ if (typeof entry === 'string') {
41
+ if (entry === level) return true
42
+ } else {
43
+ if (entry.level === level && entry.emit === 'stdout') return true
44
+ }
45
+ }
46
+ return false
47
+ }
48
+
49
+ private shouldEmitEvent(level: LogLevel): boolean {
50
+ for (const entry of this.logConfig) {
51
+ if (typeof entry !== 'string' && entry.level === level && entry.emit === 'event') {
52
+ return true
53
+ }
54
+ }
55
+ return false
56
+ }
57
+
58
+ query(event: QueryEvent): void {
59
+ const evt: LogEvent = {
60
+ level: 'query',
61
+ message: \`\${event.operation} \${event.collection} \${event.duration}ms - \${event.query}\`,
62
+ timestamp: event.timestamp
63
+ }
64
+ if (this.shouldEmitStdout('query')) {
65
+ console.log('lenz:query', evt.message)
66
+ }
67
+ if (this.shouldEmitEvent('query')) {
68
+ this.emit('query', event)
69
+ }
70
+ }
71
+
72
+ info(message: string): void {
73
+ if (this.shouldEmitStdout('info')) {
74
+ console.log('lenz:info', message)
75
+ }
76
+ if (this.shouldEmitEvent('info')) {
77
+ this.emit('info', { level: 'info', message, timestamp: new Date() })
78
+ }
79
+ }
80
+
81
+ warn(message: string): void {
82
+ if (this.shouldEmitStdout('warn')) {
83
+ console.warn('lenz:warn', message)
84
+ }
85
+ if (this.shouldEmitEvent('warn')) {
86
+ this.emit('warn', { level: 'warn', message, timestamp: new Date() })
87
+ }
88
+ }
89
+
90
+ error(message: string): void {
91
+ if (this.shouldEmitStdout('error')) {
92
+ console.error('lenz:error', message)
93
+ }
94
+ if (this.shouldEmitEvent('error')) {
95
+ this.emit('error', { level: 'error', message, timestamp: new Date() })
96
+ }
97
+ }
98
+
99
+ on(event: string, callback: LogCallback): void {
100
+ if (!this.eventListeners.has(event)) {
101
+ this.eventListeners.set(event, [])
102
+ }
103
+ this.eventListeners.get(event)!.push(callback)
104
+ }
105
+
106
+ private emit(event: string, data: any): void {
107
+ const listeners = this.eventListeners.get(event)
108
+ if (listeners) {
109
+ for (const cb of listeners) {
110
+ try {
111
+ cb(data)
112
+ } catch { /* swallow listener errors */ }
113
+ }
114
+ }
115
+ }
116
+
117
+ child(context: string): Logger {
118
+ const child = new Logger(this.logConfig)
119
+ child.eventListeners = new Map(this.eventListeners)
120
+ return child
121
+ }
122
+ }
123
+ `;
124
+ }
125
+ //# sourceMappingURL=GenerateRuntimeLogger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenerateRuntimeLogger.js","sourceRoot":"","sources":["../../../src/engine/generators/GenerateRuntimeLogger.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,qBAAqB;IACjC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyHV,CAAC;AACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function generateRuntimePagination(): string;
2
+ //# sourceMappingURL=GenerateRuntimePagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenerateRuntimePagination.d.ts","sourceRoot":"","sources":["../../../src/engine/generators/GenerateRuntimePagination.ts"],"names":[],"mappings":"AAAA,wBAAgB,yBAAyB,IAAI,MAAM,CA6JlD"}
@@ -0,0 +1,159 @@
1
+ export function generateRuntimePagination() {
2
+ return `// This file was auto-generated by Lenz. Do not edit manually.
3
+ // @generated
4
+
5
+ import { ObjectId } from 'mongodb'
6
+
7
+ /**
8
+ * Pagination helper for Lenz ORM
9
+ * Implements both offset-based and cursor-based pagination
10
+ * Similar to Prisma's pagination patterns
11
+ */
12
+ export class PaginationHelper {
13
+ static createCursor(doc: any): string {
14
+ if (!doc) throw new Error('Cannot create cursor from null document')
15
+ const id = doc._id || doc.id
16
+ if (!id) throw new Error('Document must have an id to create cursor')
17
+ return Buffer.from(id.toString()).toString('base64')
18
+ }
19
+
20
+ static parseCursor(cursor: string): string {
21
+ try {
22
+ return Buffer.from(cursor, 'base64').toString('utf8')
23
+ } catch (error) {
24
+ throw new Error('Invalid cursor format')
25
+ }
26
+ }
27
+
28
+ static buildCursorFilter(
29
+ cursor: string,
30
+ orderBy: any = { _id: 'asc' },
31
+ direction: 'forward' | 'backward' = 'forward'
32
+ ): any {
33
+ const cursorId = this.parseCursor(cursor)
34
+ const orderField = Object.keys(orderBy)[0] || '_id'
35
+ const orderDirection = orderBy[orderField] || 'asc'
36
+
37
+ const isAscending = orderDirection === 'asc' || orderDirection === 1
38
+ const isForward = direction === 'forward'
39
+
40
+ let operator: string
41
+ if (isForward) {
42
+ operator = isAscending ? '$gt' : '$lt'
43
+ } else {
44
+ operator = isAscending ? '$lt' : '$gt'
45
+ }
46
+
47
+ const cursorValue = orderField === '_id'
48
+ ? (() => { try { return new ObjectId(cursorId); } catch { return cursorId; } })()
49
+ : cursorId;
50
+ return {
51
+ [orderField]: { [operator]: cursorValue }
52
+ }
53
+ }
54
+
55
+ static calculateSkip(page: number, perPage: number): number {
56
+ if (page < 1) throw new Error('Page must be greater than 0')
57
+ return (page - 1) * perPage
58
+ }
59
+
60
+ static calculateTotalPages(total: number, perPage: number): number {
61
+ if (perPage <= 0) throw new Error('perPage must be greater than 0')
62
+ return Math.ceil(total / perPage)
63
+ }
64
+
65
+ static getPaginationMeta(
66
+ total: number,
67
+ page: number,
68
+ perPage: number,
69
+ dataLength: number
70
+ ): {
71
+ total: number
72
+ page: number
73
+ perPage: number
74
+ totalPages: number
75
+ hasNextPage: boolean
76
+ hasPreviousPage: boolean
77
+ } {
78
+ const totalPages = this.calculateTotalPages(total, perPage)
79
+
80
+ return {
81
+ total,
82
+ page,
83
+ perPage,
84
+ totalPages,
85
+ hasNextPage: page < totalPages,
86
+ hasPreviousPage: page > 1
87
+ }
88
+ }
89
+
90
+ static toConnection<T>(
91
+ data: T[],
92
+ totalCount: number,
93
+ hasNextPage: boolean,
94
+ hasPreviousPage: boolean,
95
+ createCursor: (item: T) => string = (item: any) => this.createCursor(item)
96
+ ): {
97
+ edges: Array<{ node: T; cursor: string }>
98
+ pageInfo: {
99
+ hasNextPage: boolean
100
+ hasPreviousPage: boolean
101
+ startCursor?: string
102
+ endCursor?: string
103
+ }
104
+ totalCount: number
105
+ } {
106
+ const edges = data.map(item => ({
107
+ node: item,
108
+ cursor: createCursor(item)
109
+ }))
110
+
111
+ return {
112
+ edges,
113
+ pageInfo: {
114
+ hasNextPage,
115
+ hasPreviousPage,
116
+ startCursor: edges[0]?.cursor,
117
+ endCursor: edges[edges.length - 1]?.cursor
118
+ },
119
+ totalCount
120
+ }
121
+ }
122
+
123
+ static paginate<T>(
124
+ data: T[],
125
+ page: number = 1,
126
+ perPage: number = 10
127
+ ): {
128
+ data: T[]
129
+ meta: {
130
+ page: number
131
+ perPage: number
132
+ total: number
133
+ totalPages: number
134
+ hasNextPage: boolean
135
+ hasPreviousPage: boolean
136
+ }
137
+ } {
138
+ const startIndex = (page - 1) * perPage
139
+ const endIndex = startIndex + perPage
140
+ const paginatedData = data.slice(startIndex, endIndex)
141
+ const total = data.length
142
+ const totalPages = Math.ceil(total / perPage)
143
+
144
+ return {
145
+ data: paginatedData,
146
+ meta: {
147
+ page,
148
+ perPage,
149
+ total,
150
+ totalPages,
151
+ hasNextPage: page < totalPages,
152
+ hasPreviousPage: page > 1
153
+ }
154
+ }
155
+ }
156
+ }
157
+ `;
158
+ }
159
+ //# sourceMappingURL=GenerateRuntimePagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenerateRuntimePagination.js","sourceRoot":"","sources":["../../../src/engine/generators/GenerateRuntimePagination.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,yBAAyB;IACrC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2JV,CAAC;AACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function generateRuntimeQuery(): string;
2
+ //# sourceMappingURL=GenerateRuntimeQuery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenerateRuntimeQuery.d.ts","sourceRoot":"","sources":["../../../src/engine/generators/GenerateRuntimeQuery.ts"],"names":[],"mappings":"AAAA,wBAAgB,oBAAoB,IAAI,MAAM,CAya7C"}