@reifydb/core 0.1.6 → 0.1.7

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 (138) hide show
  1. package/package.json +1 -1
  2. package/dist/constant.d.ts +0 -7
  3. package/dist/constant.d.ts.map +0 -1
  4. package/dist/constant.js +0 -7
  5. package/dist/constant.js.map +0 -1
  6. package/dist/decoder.d.ts +0 -8
  7. package/dist/decoder.d.ts.map +0 -1
  8. package/dist/decoder.js +0 -59
  9. package/dist/decoder.js.map +0 -1
  10. package/dist/index.d.ts.map +0 -1
  11. package/dist/schema/builder.d.ts +0 -45
  12. package/dist/schema/builder.d.ts.map +0 -1
  13. package/dist/schema/builder.js +0 -114
  14. package/dist/schema/builder.js.map +0 -1
  15. package/dist/schema/index.d.ts +0 -11
  16. package/dist/schema/index.d.ts.map +0 -1
  17. package/dist/schema/index.js +0 -12
  18. package/dist/schema/index.js.map +0 -1
  19. package/dist/schema/inference.d.ts +0 -16
  20. package/dist/schema/inference.d.ts.map +0 -1
  21. package/dist/schema/inference.js +0 -7
  22. package/dist/schema/inference.js.map +0 -1
  23. package/dist/schema/parser.d.ts +0 -8
  24. package/dist/schema/parser.d.ts.map +0 -1
  25. package/dist/schema/parser.js +0 -96
  26. package/dist/schema/parser.js.map +0 -1
  27. package/dist/schema/simple-test.d.ts +0 -7
  28. package/dist/schema/simple-test.d.ts.map +0 -1
  29. package/dist/schema/simple-test.js +0 -26
  30. package/dist/schema/simple-test.js.map +0 -1
  31. package/dist/schema/test-refactor.d.ts +0 -7
  32. package/dist/schema/test-refactor.d.ts.map +0 -1
  33. package/dist/schema/test-refactor.js +0 -97
  34. package/dist/schema/test-refactor.js.map +0 -1
  35. package/dist/schema/types.d.ts +0 -27
  36. package/dist/schema/types.d.ts.map +0 -1
  37. package/dist/schema/types.js +0 -7
  38. package/dist/schema/types.js.map +0 -1
  39. package/dist/schema/validator.d.ts +0 -8
  40. package/dist/schema/validator.d.ts.map +0 -1
  41. package/dist/schema/validator.js +0 -79
  42. package/dist/schema/validator.js.map +0 -1
  43. package/dist/value/blob.d.ts +0 -85
  44. package/dist/value/blob.d.ts.map +0 -1
  45. package/dist/value/blob.js +0 -255
  46. package/dist/value/blob.js.map +0 -1
  47. package/dist/value/bool.d.ts +0 -16
  48. package/dist/value/bool.d.ts.map +0 -1
  49. package/dist/value/bool.js +0 -46
  50. package/dist/value/bool.js.map +0 -1
  51. package/dist/value/date.d.ts +0 -71
  52. package/dist/value/date.d.ts.map +0 -1
  53. package/dist/value/date.js +0 -261
  54. package/dist/value/date.js.map +0 -1
  55. package/dist/value/datetime.d.ts +0 -99
  56. package/dist/value/datetime.d.ts.map +0 -1
  57. package/dist/value/datetime.js +0 -401
  58. package/dist/value/datetime.js.map +0 -1
  59. package/dist/value/float4.d.ts +0 -19
  60. package/dist/value/float4.d.ts.map +0 -1
  61. package/dist/value/float4.js +0 -68
  62. package/dist/value/float4.js.map +0 -1
  63. package/dist/value/float8.d.ts +0 -16
  64. package/dist/value/float8.d.ts.map +0 -1
  65. package/dist/value/float8.js +0 -44
  66. package/dist/value/float8.js.map +0 -1
  67. package/dist/value/index.d.ts +0 -38
  68. package/dist/value/index.d.ts.map +0 -1
  69. package/dist/value/index.js +0 -31
  70. package/dist/value/index.js.map +0 -1
  71. package/dist/value/int1.d.ts +0 -18
  72. package/dist/value/int1.d.ts.map +0 -1
  73. package/dist/value/int1.js +0 -46
  74. package/dist/value/int1.js.map +0 -1
  75. package/dist/value/int16.d.ts +0 -18
  76. package/dist/value/int16.d.ts.map +0 -1
  77. package/dist/value/int16.js +0 -67
  78. package/dist/value/int16.js.map +0 -1
  79. package/dist/value/int2.d.ts +0 -18
  80. package/dist/value/int2.d.ts.map +0 -1
  81. package/dist/value/int2.js +0 -46
  82. package/dist/value/int2.js.map +0 -1
  83. package/dist/value/int4.d.ts +0 -18
  84. package/dist/value/int4.d.ts.map +0 -1
  85. package/dist/value/int4.js +0 -46
  86. package/dist/value/int4.js.map +0 -1
  87. package/dist/value/int8.d.ts +0 -18
  88. package/dist/value/int8.d.ts.map +0 -1
  89. package/dist/value/int8.js +0 -53
  90. package/dist/value/int8.js.map +0 -1
  91. package/dist/value/interval.d.ts +0 -144
  92. package/dist/value/interval.d.ts.map +0 -1
  93. package/dist/value/interval.js +0 -357
  94. package/dist/value/interval.js.map +0 -1
  95. package/dist/value/rowid.d.ts +0 -18
  96. package/dist/value/rowid.d.ts.map +0 -1
  97. package/dist/value/rowid.js +0 -53
  98. package/dist/value/rowid.js.map +0 -1
  99. package/dist/value/time.d.ts +0 -74
  100. package/dist/value/time.d.ts.map +0 -1
  101. package/dist/value/time.js +0 -214
  102. package/dist/value/time.js.map +0 -1
  103. package/dist/value/uint1.d.ts +0 -18
  104. package/dist/value/uint1.d.ts.map +0 -1
  105. package/dist/value/uint1.js +0 -46
  106. package/dist/value/uint1.js.map +0 -1
  107. package/dist/value/uint16.d.ts +0 -18
  108. package/dist/value/uint16.d.ts.map +0 -1
  109. package/dist/value/uint16.js +0 -67
  110. package/dist/value/uint16.js.map +0 -1
  111. package/dist/value/uint2.d.ts +0 -18
  112. package/dist/value/uint2.d.ts.map +0 -1
  113. package/dist/value/uint2.js +0 -46
  114. package/dist/value/uint2.js.map +0 -1
  115. package/dist/value/uint4.d.ts +0 -18
  116. package/dist/value/uint4.d.ts.map +0 -1
  117. package/dist/value/uint4.js +0 -46
  118. package/dist/value/uint4.js.map +0 -1
  119. package/dist/value/uint8.d.ts +0 -19
  120. package/dist/value/uint8.d.ts.map +0 -1
  121. package/dist/value/uint8.js +0 -58
  122. package/dist/value/uint8.js.map +0 -1
  123. package/dist/value/undefined.d.ts +0 -48
  124. package/dist/value/undefined.d.ts.map +0 -1
  125. package/dist/value/undefined.js +0 -77
  126. package/dist/value/undefined.js.map +0 -1
  127. package/dist/value/utf8.d.ts +0 -16
  128. package/dist/value/utf8.d.ts.map +0 -1
  129. package/dist/value/utf8.js +0 -39
  130. package/dist/value/utf8.js.map +0 -1
  131. package/dist/value/uuid4.d.ts +0 -69
  132. package/dist/value/uuid4.d.ts.map +0 -1
  133. package/dist/value/uuid4.js +0 -162
  134. package/dist/value/uuid4.js.map +0 -1
  135. package/dist/value/uuid7.d.ts +0 -74
  136. package/dist/value/uuid7.d.ts.map +0 -1
  137. package/dist/value/uuid7.js +0 -175
  138. package/dist/value/uuid7.js.map +0 -1
@@ -1,261 +0,0 @@
1
- /**
2
- * MIT License
3
- * Copyright (c) 2025 ReifyDB
4
- * See license.md file for full license text
5
- */
6
- import { UNDEFINED_VALUE } from "../constant";
7
- /**
8
- * A date value representing a calendar date (year, month, day) without time information.
9
- * Always interpreted in UTC.
10
- * Internally stored as months and days.
11
- */
12
- export class DateValue {
13
- constructor(value) {
14
- this.type = "Date";
15
- if (value !== undefined) {
16
- if (value instanceof Date) {
17
- // Remove time component - set to UTC midnight
18
- const year = value.getUTCFullYear();
19
- const month = value.getUTCMonth() + 1; // Convert to 1-based
20
- const day = value.getUTCDate();
21
- this.months = year * 12 + (month - 1);
22
- this.days = day;
23
- }
24
- else if (typeof value === 'string') {
25
- // Parse YYYY-MM-DD format
26
- const parsed = DateValue.parseDate(value);
27
- if (!parsed) {
28
- throw new Error(`Invalid date string: ${value}`);
29
- }
30
- this.months = parsed.months;
31
- this.days = parsed.days;
32
- }
33
- else if (typeof value === 'number') {
34
- // Interpret as days since epoch
35
- const date = DateValue.fromDaysSinceEpochToComponents(value);
36
- if (!date) {
37
- throw new Error(`Invalid days since epoch: ${value}`);
38
- }
39
- this.months = date.months;
40
- this.days = date.days;
41
- }
42
- else {
43
- throw new Error(`Date value must be a Date, string, or number, got ${typeof value}`);
44
- }
45
- }
46
- else {
47
- this.months = undefined;
48
- this.days = undefined;
49
- }
50
- }
51
- /**
52
- * Create a DateValue from year, month (1-12), and day (1-31)
53
- */
54
- static fromYMD(year, month, day) {
55
- // Validate the date is valid
56
- if (!DateValue.isValidDate(year, month, day)) {
57
- throw new Error(`Invalid date: ${year}-${String(month).padStart(2, '0')}-${String(day).padStart(2, '0')}`);
58
- }
59
- const result = new DateValue(undefined);
60
- result.months = year * 12 + (month - 1);
61
- result.days = day;
62
- return result;
63
- }
64
- /**
65
- * Get today's date (in UTC)
66
- */
67
- static today() {
68
- const now = new Date();
69
- return DateValue.fromYMD(now.getUTCFullYear(), now.getUTCMonth() + 1, now.getUTCDate());
70
- }
71
- /**
72
- * Parse a date string in YYYY-MM-DD format
73
- */
74
- static parse(str) {
75
- const trimmed = str.trim();
76
- if (trimmed === '' || trimmed === UNDEFINED_VALUE) {
77
- return new DateValue(undefined);
78
- }
79
- const parsed = DateValue.parseDate(trimmed);
80
- if (!parsed) {
81
- throw new Error(`Cannot parse "${str}" as Date`);
82
- }
83
- const result = new DateValue(undefined);
84
- result.months = parsed.months;
85
- result.days = parsed.days;
86
- return result;
87
- }
88
- /**
89
- * Convert to days since Unix epoch (1970-01-01) for storage
90
- */
91
- toDaysSinceEpoch() {
92
- if (this.months === undefined || this.days === undefined) {
93
- return undefined;
94
- }
95
- const year = Math.floor(this.months / 12);
96
- // Handle negative months correctly
97
- let m = this.months % 12;
98
- if (m < 0)
99
- m += 12;
100
- const month = m + 1;
101
- // Create date with special handling for years < 100
102
- let date;
103
- if (year >= 0 && year < 100) {
104
- date = new Date(Date.UTC(2000, month - 1, this.days));
105
- date.setUTCFullYear(year);
106
- }
107
- else {
108
- date = new Date(Date.UTC(year, month - 1, this.days));
109
- }
110
- const epoch = new Date(Date.UTC(1970, 0, 1));
111
- const diffMs = date.getTime() - epoch.getTime();
112
- return Math.floor(diffMs / (1000 * 60 * 60 * 24));
113
- }
114
- /**
115
- * Create from days since Unix epoch
116
- */
117
- static fromDaysSinceEpochToComponents(days) {
118
- const epoch = new Date(Date.UTC(1970, 0, 1));
119
- const ms = days * 24 * 60 * 60 * 1000;
120
- const date = new Date(epoch.getTime() + ms);
121
- // Check for valid date
122
- if (!isFinite(date.getTime())) {
123
- return null;
124
- }
125
- const year = date.getUTCFullYear();
126
- const month = date.getUTCMonth() + 1;
127
- const day = date.getUTCDate();
128
- return {
129
- months: year * 12 + (month - 1),
130
- days: day
131
- };
132
- }
133
- /**
134
- * Get the year component
135
- */
136
- year() {
137
- if (this.months === undefined)
138
- return undefined;
139
- return Math.floor(this.months / 12);
140
- }
141
- /**
142
- * Get the month component (1-12)
143
- */
144
- month() {
145
- if (this.months === undefined)
146
- return undefined;
147
- // Handle negative months correctly
148
- let m = this.months % 12;
149
- if (m < 0)
150
- m += 12;
151
- return m + 1;
152
- }
153
- /**
154
- * Get the day component (1-31)
155
- */
156
- day() {
157
- return this.days;
158
- }
159
- /**
160
- * Format as YYYY-MM-DD string
161
- */
162
- toString() {
163
- if (this.months === undefined || this.days === undefined) {
164
- return 'undefined';
165
- }
166
- const year = Math.floor(this.months / 12);
167
- // Handle negative months correctly
168
- let m = this.months % 12;
169
- if (m < 0)
170
- m += 12;
171
- const month = String(m + 1).padStart(2, '0');
172
- const day = String(this.days).padStart(2, '0');
173
- // Handle negative years (BC dates)
174
- if (year < 0) {
175
- const absYear = Math.abs(year);
176
- return `-${String(absYear).padStart(4, '0')}-${month}-${day}`;
177
- }
178
- else {
179
- return `${String(year).padStart(4, '0')}-${month}-${day}`;
180
- }
181
- }
182
- valueOf() {
183
- if (this.months === undefined || this.days === undefined) {
184
- return undefined;
185
- }
186
- const year = Math.floor(this.months / 12);
187
- // Handle negative months correctly
188
- let m = this.months % 12;
189
- if (m < 0)
190
- m += 12;
191
- const month = m + 1;
192
- // Handle years < 100 specially
193
- let date;
194
- if (year >= 0 && year < 100) {
195
- date = new Date(Date.UTC(2000, month - 1, this.days));
196
- date.setUTCFullYear(year);
197
- }
198
- else {
199
- date = new Date(Date.UTC(year, month - 1, this.days));
200
- }
201
- return date;
202
- }
203
- /**
204
- * Get the internal representation
205
- */
206
- get value() {
207
- return this.valueOf();
208
- }
209
- /**
210
- * Helper to parse YYYY-MM-DD format
211
- */
212
- static parseDate(str) {
213
- // Match YYYY-MM-DD format, including negative years
214
- const match = str.match(/^(-?\d{1,4})-(\d{2})-(\d{2})$/);
215
- if (!match) {
216
- return null;
217
- }
218
- const year = parseInt(match[1], 10);
219
- const month = parseInt(match[2], 10);
220
- const day = parseInt(match[3], 10);
221
- // Validate month and day ranges
222
- if (month < 1 || month > 12) {
223
- return null;
224
- }
225
- if (day < 1 || day > 31) {
226
- return null;
227
- }
228
- // Validate the date is valid (e.g., no Feb 30)
229
- if (!DateValue.isValidDate(year, month, day)) {
230
- return null;
231
- }
232
- return {
233
- months: year * 12 + (month - 1),
234
- days: day
235
- };
236
- }
237
- /**
238
- * Helper to validate a date
239
- */
240
- static isValidDate(year, month, day) {
241
- // Create a date and check if components match
242
- let date;
243
- if (year >= 0 && year < 100) {
244
- date = new Date(Date.UTC(2000, month - 1, day));
245
- date.setUTCFullYear(year);
246
- }
247
- else {
248
- date = new Date(Date.UTC(year, month - 1, day));
249
- }
250
- return date.getUTCFullYear() === year &&
251
- date.getUTCMonth() === month - 1 &&
252
- date.getUTCDate() === day;
253
- }
254
- encode() {
255
- return {
256
- type: this.type,
257
- value: this.value === undefined ? UNDEFINED_VALUE : this.toString()
258
- };
259
- }
260
- }
261
- //# sourceMappingURL=date.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"date.js","sourceRoot":"","sources":["../../src/value/date.ts"],"names":[],"mappings":"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"}
@@ -1,99 +0,0 @@
1
- /**
2
- * MIT License
3
- * Copyright (c) 2025 ReifyDB
4
- * See license.md file for full license text
5
- */
6
- import { Type, Value, TypeValuePair } from ".";
7
- import { DateValue } from "./date";
8
- import { TimeValue } from "./time";
9
- /**
10
- * A date and time value with nanosecond precision.
11
- * Always in UTC timezone.
12
- * Internally stored as months, days, and nanoseconds.
13
- */
14
- export declare class DateTimeValue implements Value {
15
- readonly type: Type;
16
- private readonly months?;
17
- private readonly days?;
18
- private readonly nanos?;
19
- constructor(value?: Date | string | number | bigint);
20
- /**
21
- * Create a DateTimeValue from year, month, day, hour, minute, second, nanosecond
22
- */
23
- static fromYMDHMSN(year: number, month: number, day: number, hour: number, minute: number, second: number, nano?: number): DateTimeValue;
24
- /**
25
- * Create a DateTimeValue from year, month, day, hour, minute, second (no fractional)
26
- */
27
- static fromYMDHMS(year: number, month: number, day: number, hour: number, minute: number, second: number): DateTimeValue;
28
- /**
29
- * Create from Unix timestamp in seconds
30
- */
31
- static fromTimestamp(seconds: number): DateTimeValue;
32
- /**
33
- * Create from Unix timestamp in milliseconds
34
- */
35
- static fromTimestampMillis(millis: number): DateTimeValue;
36
- /**
37
- * Create from nanoseconds since Unix epoch
38
- */
39
- static fromNanosSinceEpoch(nanos: bigint): DateTimeValue;
40
- /**
41
- * Create from separate seconds and nanoseconds
42
- */
43
- static fromParts(seconds: number, nanos: number): DateTimeValue;
44
- /**
45
- * Get current datetime
46
- */
47
- static now(): DateTimeValue;
48
- /**
49
- * Get default datetime (Unix epoch)
50
- */
51
- static default(): DateTimeValue;
52
- /**
53
- * Parse a datetime string in ISO 8601 format
54
- */
55
- static parse(str: string): DateTimeValue;
56
- /**
57
- * Get Unix timestamp in seconds
58
- */
59
- timestamp(): number | undefined;
60
- /**
61
- * Get Unix timestamp in nanoseconds
62
- */
63
- timestampNanos(): bigint | undefined;
64
- /**
65
- * Convert to nanoseconds since Unix epoch for storage
66
- */
67
- toNanosSinceEpoch(): bigint | undefined;
68
- /**
69
- * Get separate seconds and nanoseconds for storage
70
- */
71
- toParts(): [number, number] | undefined;
72
- /**
73
- * Get the date component
74
- */
75
- date(): DateValue | undefined;
76
- /**
77
- * Get the time component
78
- */
79
- time(): TimeValue | undefined;
80
- /**
81
- * Format as ISO 8601 string with nanosecond precision and Z suffix
82
- */
83
- toString(): string;
84
- valueOf(): Date | undefined;
85
- /**
86
- * Get the internal representation as a Date
87
- */
88
- get value(): Date | undefined;
89
- /**
90
- * Helper to parse ISO 8601 datetime format
91
- */
92
- private static parseDateTime;
93
- /**
94
- * Helper to validate a date
95
- */
96
- private static isValidDate;
97
- encode(): TypeValuePair;
98
- }
99
- //# sourceMappingURL=datetime.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"datetime.d.ts","sourceRoot":"","sources":["../../src/value/datetime.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,IAAI,EAAE,KAAK,EAAE,aAAa,EAAC,MAAM,GAAG,CAAC;AAE7C,OAAO,EAAC,SAAS,EAAC,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAC,SAAS,EAAC,MAAM,QAAQ,CAAC;AAEjC;;;;GAIG;AACH,qBAAa,aAAc,YAAW,KAAK;IACvC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAuB;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAS;gBAEpB,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM;IA2EnD;;OAEG;IACH,MAAM,CAAC,WAAW,CACd,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,MAAU,GACjB,aAAa;IA8BhB;;OAEG;IACH,MAAM,CAAC,UAAU,CACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACf,aAAa;IAIhB;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa;IAIpD;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa;IAIzD;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa;IAIxD;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,aAAa;IAe/D;;OAEG;IACH,MAAM,CAAC,GAAG,IAAI,aAAa;IAI3B;;OAEG;IACH,MAAM,CAAC,OAAO,IAAI,aAAa;IAI/B;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa;IAmBxC;;OAEG;IACH,SAAS,IAAI,MAAM,GAAG,SAAS;IAM/B;;OAEG;IACH,cAAc,IAAI,MAAM,GAAG,SAAS;IAcpC;;OAEG;IACH,iBAAiB,IAAI,MAAM,GAAG,SAAS;IAIvC;;OAEG;IACH,OAAO,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS;IAWvC;;OAEG;IACH,IAAI,IAAI,SAAS,GAAG,SAAS;IAU7B;;OAEG;IACH,IAAI,IAAI,SAAS,GAAG,SAAS;IAK7B;;OAEG;IACH,QAAQ,IAAI,MAAM;IAsClB,OAAO,IAAI,IAAI,GAAG,SAAS;IAiC3B;;OAEG;IACH,IAAI,KAAK,IAAI,IAAI,GAAG,SAAS,CAE5B;IAED;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IAqD5B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IAe1B,MAAM,IAAI,aAAa;CAM1B"}