@columnus/shared 0.1.47 → 0.1.49

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.
@@ -446,6 +446,63 @@ var require_papaparse_min = __commonJS({
446
446
  }
447
447
  });
448
448
 
449
+ // packages/@columnus/shared/src/dateValues.ts
450
+ function pad2(n) {
451
+ return String(n).padStart(2, "0");
452
+ }
453
+ function dateInputValue(ms) {
454
+ const d = new Date(ms);
455
+ return `${d.getFullYear()}-${pad2(d.getMonth() + 1)}-${pad2(d.getDate())}`;
456
+ }
457
+ function parseDateInput(s) {
458
+ const m = /^(\d{4})-(\d{2})-(\d{2})$/.exec(s.trim());
459
+ if (!m) return null;
460
+ const y = Number(m[1]);
461
+ const mo = Number(m[2]) - 1;
462
+ const d = Number(m[3]);
463
+ const dt = new Date(y, mo, d);
464
+ if (dt.getFullYear() !== y || dt.getMonth() !== mo || dt.getDate() !== d) return null;
465
+ return dt.getTime();
466
+ }
467
+ function parseDateTimeInput(s) {
468
+ const m = /^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2})$/.exec(s.trim());
469
+ if (!m) return null;
470
+ const y = Number(m[1]);
471
+ const mo = Number(m[2]) - 1;
472
+ const d = Number(m[3]);
473
+ const h = Number(m[4]);
474
+ const min = Number(m[5]);
475
+ const dt = new Date(y, mo, d, h, min);
476
+ if (dt.getFullYear() !== y || dt.getMonth() !== mo || dt.getDate() !== d || dt.getHours() !== h || dt.getMinutes() !== min) {
477
+ return null;
478
+ }
479
+ return dt.getTime();
480
+ }
481
+ function serializeDateCsv(ms) {
482
+ return dateInputValue(ms);
483
+ }
484
+ function serializeDateTimeCsv(ms) {
485
+ return new Date(ms).toISOString();
486
+ }
487
+ function parseDateCsv(s, kind) {
488
+ const trimmed = s.trim();
489
+ if (!trimmed) return null;
490
+ if (kind === "date") {
491
+ const fromDate = parseDateInput(trimmed);
492
+ if (fromDate !== null) return fromDate;
493
+ const fromIso2 = Date.parse(trimmed);
494
+ if (Number.isFinite(fromIso2)) {
495
+ const d = new Date(fromIso2);
496
+ return new Date(d.getFullYear(), d.getMonth(), d.getDate()).getTime();
497
+ }
498
+ return null;
499
+ }
500
+ const fromLocal = parseDateTimeInput(trimmed);
501
+ if (fromLocal !== null) return fromLocal;
502
+ const fromIso = Date.parse(trimmed);
503
+ return Number.isFinite(fromIso) ? fromIso : null;
504
+ }
505
+
449
506
  // node_modules/zod/v3/external.js
450
507
  var external_exports = {};
451
508
  __export(external_exports, {
@@ -4754,63 +4811,6 @@ function formatMatchLabelFieldType(type) {
4754
4811
  // packages/@columnus/shared/src/csv.ts
4755
4812
  __toESM(require_papaparse_min());
4756
4813
 
4757
- // packages/@columnus/shared/src/dateValues.ts
4758
- function pad2(n) {
4759
- return String(n).padStart(2, "0");
4760
- }
4761
- function dateInputValue(ms) {
4762
- const d = new Date(ms);
4763
- return `${d.getFullYear()}-${pad2(d.getMonth() + 1)}-${pad2(d.getDate())}`;
4764
- }
4765
- function parseDateInput(s) {
4766
- const m = /^(\d{4})-(\d{2})-(\d{2})$/.exec(s.trim());
4767
- if (!m) return null;
4768
- const y = Number(m[1]);
4769
- const mo = Number(m[2]) - 1;
4770
- const d = Number(m[3]);
4771
- const dt = new Date(y, mo, d);
4772
- if (dt.getFullYear() !== y || dt.getMonth() !== mo || dt.getDate() !== d) return null;
4773
- return dt.getTime();
4774
- }
4775
- function parseDateTimeInput(s) {
4776
- const m = /^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2})$/.exec(s.trim());
4777
- if (!m) return null;
4778
- const y = Number(m[1]);
4779
- const mo = Number(m[2]) - 1;
4780
- const d = Number(m[3]);
4781
- const h = Number(m[4]);
4782
- const min = Number(m[5]);
4783
- const dt = new Date(y, mo, d, h, min);
4784
- if (dt.getFullYear() !== y || dt.getMonth() !== mo || dt.getDate() !== d || dt.getHours() !== h || dt.getMinutes() !== min) {
4785
- return null;
4786
- }
4787
- return dt.getTime();
4788
- }
4789
- function serializeDateCsv(ms) {
4790
- return dateInputValue(ms);
4791
- }
4792
- function serializeDateTimeCsv(ms) {
4793
- return new Date(ms).toISOString();
4794
- }
4795
- function parseDateCsv(s, kind) {
4796
- const trimmed = s.trim();
4797
- if (!trimmed) return null;
4798
- if (kind === "date") {
4799
- const fromDate = parseDateInput(trimmed);
4800
- if (fromDate !== null) return fromDate;
4801
- const fromIso2 = Date.parse(trimmed);
4802
- if (Number.isFinite(fromIso2)) {
4803
- const d = new Date(fromIso2);
4804
- return new Date(d.getFullYear(), d.getMonth(), d.getDate()).getTime();
4805
- }
4806
- return null;
4807
- }
4808
- const fromLocal = parseDateTimeInput(trimmed);
4809
- if (fromLocal !== null) return fromLocal;
4810
- const fromIso = Date.parse(trimmed);
4811
- return Number.isFinite(fromIso) ? fromIso : null;
4812
- }
4813
-
4814
4814
  // packages/@columnus/shared/src/schemaTypes.ts
4815
4815
  var IDENT = /^[A-Za-z_][A-Za-z0-9_]*$/;
4816
4816
  var RESERVED_TABLE_NAMES = /* @__PURE__ */ new Set([