@yanit/jsondb 0.1.1

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/README.md +903 -0
  2. package/dist/bin/cli-export.d.ts +7 -0
  3. package/dist/bin/cli-export.d.ts.map +1 -0
  4. package/dist/bin/cli-export.js +318 -0
  5. package/dist/bin/cli-export.js.map +1 -0
  6. package/dist/bin/cli-import.d.ts +7 -0
  7. package/dist/bin/cli-import.d.ts.map +1 -0
  8. package/dist/bin/cli-import.js +298 -0
  9. package/dist/bin/cli-import.js.map +1 -0
  10. package/dist/bin/server.d.ts +7 -0
  11. package/dist/bin/server.d.ts.map +1 -0
  12. package/dist/bin/server.js +92 -0
  13. package/dist/bin/server.js.map +1 -0
  14. package/dist/examples/sql-example.d.ts +7 -0
  15. package/dist/examples/sql-example.d.ts.map +1 -0
  16. package/dist/examples/sql-example.js +131 -0
  17. package/dist/examples/sql-example.js.map +1 -0
  18. package/dist/src/BulkOp.d.ts +74 -0
  19. package/dist/src/BulkOp.d.ts.map +1 -0
  20. package/dist/src/BulkOp.js +143 -0
  21. package/dist/src/BulkOp.js.map +1 -0
  22. package/dist/src/Collection.d.ts +232 -0
  23. package/dist/src/Collection.d.ts.map +1 -0
  24. package/dist/src/Collection.js +705 -0
  25. package/dist/src/Collection.js.map +1 -0
  26. package/dist/src/Cursor.d.ts +94 -0
  27. package/dist/src/Cursor.d.ts.map +1 -0
  28. package/dist/src/Cursor.js +259 -0
  29. package/dist/src/Cursor.js.map +1 -0
  30. package/dist/src/Database.d.ts +98 -0
  31. package/dist/src/Database.d.ts.map +1 -0
  32. package/dist/src/Database.js +198 -0
  33. package/dist/src/Database.js.map +1 -0
  34. package/dist/src/Operators.d.ts +73 -0
  35. package/dist/src/Operators.d.ts.map +1 -0
  36. package/dist/src/Operators.js +339 -0
  37. package/dist/src/Operators.js.map +1 -0
  38. package/dist/src/QueryCache.d.ts +87 -0
  39. package/dist/src/QueryCache.d.ts.map +1 -0
  40. package/dist/src/QueryCache.js +155 -0
  41. package/dist/src/QueryCache.js.map +1 -0
  42. package/dist/src/SQLExecutor.d.ts +60 -0
  43. package/dist/src/SQLExecutor.d.ts.map +1 -0
  44. package/dist/src/SQLExecutor.js +317 -0
  45. package/dist/src/SQLExecutor.js.map +1 -0
  46. package/dist/src/SQLParser.d.ts +181 -0
  47. package/dist/src/SQLParser.d.ts.map +1 -0
  48. package/dist/src/SQLParser.js +640 -0
  49. package/dist/src/SQLParser.js.map +1 -0
  50. package/dist/src/Schema.d.ts +92 -0
  51. package/dist/src/Schema.d.ts.map +1 -0
  52. package/dist/src/Schema.js +253 -0
  53. package/dist/src/Schema.js.map +1 -0
  54. package/dist/src/Transaction.d.ts +118 -0
  55. package/dist/src/Transaction.d.ts.map +1 -0
  56. package/dist/src/Transaction.js +233 -0
  57. package/dist/src/Transaction.js.map +1 -0
  58. package/dist/src/Utils.d.ts +68 -0
  59. package/dist/src/Utils.d.ts.map +1 -0
  60. package/dist/src/Utils.js +187 -0
  61. package/dist/src/Utils.js.map +1 -0
  62. package/dist/src/errors.d.ts +58 -0
  63. package/dist/src/errors.d.ts.map +1 -0
  64. package/dist/src/errors.js +85 -0
  65. package/dist/src/errors.js.map +1 -0
  66. package/dist/src/index.d.ts +39 -0
  67. package/dist/src/index.d.ts.map +1 -0
  68. package/dist/src/index.js +44 -0
  69. package/dist/src/index.js.map +1 -0
  70. package/dist/test/basic.test.d.ts +5 -0
  71. package/dist/test/basic.test.d.ts.map +1 -0
  72. package/dist/test/basic.test.js +283 -0
  73. package/dist/test/basic.test.js.map +1 -0
  74. package/dist/test/index.test.d.ts +5 -0
  75. package/dist/test/index.test.d.ts.map +1 -0
  76. package/dist/test/index.test.js +126 -0
  77. package/dist/test/index.test.js.map +1 -0
  78. package/dist/test/jsonb.test.d.ts +5 -0
  79. package/dist/test/jsonb.test.d.ts.map +1 -0
  80. package/dist/test/jsonb.test.js +165 -0
  81. package/dist/test/jsonb.test.js.map +1 -0
  82. package/dist/test/optimization.test.d.ts +6 -0
  83. package/dist/test/optimization.test.d.ts.map +1 -0
  84. package/dist/test/optimization.test.js +196 -0
  85. package/dist/test/optimization.test.js.map +1 -0
  86. package/dist/test/schema.test.d.ts +5 -0
  87. package/dist/test/schema.test.d.ts.map +1 -0
  88. package/dist/test/schema.test.js +197 -0
  89. package/dist/test/schema.test.js.map +1 -0
  90. package/dist/test/sql.test.d.ts +7 -0
  91. package/dist/test/sql.test.d.ts.map +1 -0
  92. package/dist/test/sql.test.js +21 -0
  93. package/dist/test/sql.test.js.map +1 -0
  94. package/package.json +73 -0
  95. package/src/BulkOp.js +181 -0
  96. package/src/BulkOp.ts +191 -0
  97. package/src/Collection.js +843 -0
  98. package/src/Collection.ts +896 -0
  99. package/src/Cursor.js +315 -0
  100. package/src/Cursor.ts +319 -0
  101. package/src/Database.js +244 -0
  102. package/src/Database.ts +268 -0
  103. package/src/Operators.js +382 -0
  104. package/src/Operators.ts +375 -0
  105. package/src/QueryCache.js +190 -0
  106. package/src/QueryCache.ts +208 -0
  107. package/src/SQLExecutor.ts +391 -0
  108. package/src/SQLParser.ts +814 -0
  109. package/src/Schema.js +292 -0
  110. package/src/Schema.ts +317 -0
  111. package/src/Transaction.js +291 -0
  112. package/src/Transaction.ts +313 -0
  113. package/src/Utils.js +205 -0
  114. package/src/Utils.ts +205 -0
  115. package/src/errors.js +93 -0
  116. package/src/errors.ts +93 -0
  117. package/src/index.js +90 -0
  118. package/src/index.ts +106 -0
package/src/index.ts ADDED
@@ -0,0 +1,106 @@
1
+ /**
2
+ * JSONDB - 基于 Node.js 的轻量级 JSON 数据库
3
+ * 支持 MongoDB 风格语法和 SQL 查询
4
+ *
5
+ * @example
6
+ * import { Database } from 'jsondb';
7
+ *
8
+ * const db = new Database('./data/mydb');
9
+ * await db.open();
10
+ *
11
+ * const users = db.collection('users');
12
+ * await users.insertOne({ name: 'Alice', age: 25 });
13
+ *
14
+ * // SQL 查询
15
+ * const result = await users.sql('SELECT * FROM users WHERE age > 20');
16
+ *
17
+ * await db.close();
18
+ */
19
+
20
+ export { Database } from './Database.js';
21
+ export { Collection } from './Collection.js';
22
+ export type { IndexInfo } from './Collection.js';
23
+ export { Cursor } from './Cursor.js';
24
+
25
+ // 导出 SQL 相关
26
+ export { SQLParser, parseSQL } from './SQLParser.js';
27
+ export { SQLExecutor, executeSQL } from './SQLExecutor.js';
28
+ export type {
29
+ SQLStatement,
30
+ SelectStatement,
31
+ InsertStatement,
32
+ UpdateStatement,
33
+ DeleteStatement
34
+ } from './SQLParser.js';
35
+ export type { SQLExecutionResult } from './SQLExecutor.js';
36
+
37
+ // 导出错误类
38
+ export {
39
+ JSONDBError,
40
+ DatabaseNotFoundError,
41
+ DatabaseExistsError,
42
+ CollectionNotFoundError,
43
+ CollectionExistsError,
44
+ DocumentNotFoundError,
45
+ IndexError,
46
+ QueryError,
47
+ ValidationError
48
+ } from './errors.js';
49
+
50
+ // 导出工具函数
51
+ export {
52
+ generateId,
53
+ deepClone,
54
+ getNestedValue,
55
+ setNestedValue,
56
+ deleteNestedValue
57
+ } from './Utils.js';
58
+
59
+ // 导出查询操作符
60
+ export {
61
+ matchQuery,
62
+ applyUpdate,
63
+ comparisonOperators,
64
+ logicalOperators,
65
+ elementOperators,
66
+ arrayOperators
67
+ } from './Operators.js';
68
+
69
+ // 导出 Schema 验证
70
+ export {
71
+ Schema,
72
+ createSchema,
73
+ createValidator,
74
+ validators
75
+ } from './Schema.js';
76
+
77
+ // 导出批量操作
78
+ export {
79
+ BulkOperation,
80
+ createBulkOp,
81
+ bulkInsert,
82
+ bulkUpdate,
83
+ bulkDelete
84
+ } from './BulkOp.js';
85
+
86
+ // 导出查询缓存
87
+ export {
88
+ QueryCache,
89
+ globalQueryCache,
90
+ cacheQuery
91
+ } from './QueryCache.js';
92
+
93
+ // 导出事务
94
+ export {
95
+ Transaction,
96
+ TransactionStatus,
97
+ OperationType,
98
+ createTransaction,
99
+ withTransaction
100
+ } from './Transaction.js';
101
+
102
+ /**
103
+ * 默认导出
104
+ */
105
+ import { Database } from './Database.js';
106
+ export default Database;