recordbase 0.1.0 → 0.2.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.
@@ -1 +1 @@
1
- {"version":3,"file":"GoogleGridProvider.d.ts","sourceRoot":"","sources":["../../src/grid/GoogleGridProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAW,eAAe,EAAc,UAAU,EAAgB,MAAM,SAAS,CAAC;AACzF,OAAO,EAA+B,SAAS,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAa,aAAa,EAA6B,MAAM,aAAa,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAIlF,MAAM,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC;AAmFzC,MAAM,MAAM,yBAAyB,GAAG;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IAC3B,QAAQ,CAAC,EAAE,eAAe,GAAG,gCAAgC,CAAC;CACjE,CAAC;AAGF,MAAM,MAAM,gCAAgC,GAAG;IAC3C,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,IAAI,CAAC,EAAE,eAAe,CAAC;CAC1B,CAAC;AA6FF,qBAAa,kBAAmB,YAAW,YAAY;;gBAQvC,OAAO,EAAE,yBAAyB;IAOxC,IAAI,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IA4L5D,KAAK,CAAC,KAAK,CAAC,QAAQ,SAAS,SAAS,gBAAgB,EAAE,EAC1D,QAAQ,EAAE,QAAQ,GACnB,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAWtC,UAAU,IAAI,IAAI;CAGrB"}
1
+ {"version":3,"file":"GoogleGridProvider.d.ts","sourceRoot":"","sources":["../../src/grid/GoogleGridProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAW,eAAe,EAAc,UAAU,EAAgB,MAAM,SAAS,CAAC;AACzF,OAAO,EAA+B,SAAS,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAa,aAAa,EAA6B,MAAM,aAAa,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAIlF,MAAM,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC;AAuFzC,MAAM,MAAM,yBAAyB,GAAG;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IAC3B,QAAQ,CAAC,EAAE,eAAe,GAAG,gCAAgC,CAAC;CACjE,CAAC;AAGF,MAAM,MAAM,gCAAgC,GAAG;IAC3C,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,IAAI,CAAC,EAAE,eAAe,CAAC;CAC1B,CAAC;AA6FF,qBAAa,kBAAmB,YAAW,YAAY;;gBAQvC,OAAO,EAAE,yBAAyB;IAOxC,IAAI,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IA4L5D,KAAK,CAAC,KAAK,CAAC,QAAQ,SAAS,SAAS,gBAAgB,EAAE,EAC1D,QAAQ,EAAE,QAAQ,GACnB,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAWtC,UAAU,IAAI,IAAI;CAGrB"}
@@ -27,17 +27,20 @@ const toGoogleCellValue = (value) => {
27
27
  return { formulaValue: value.formula.startsWith('=') ? value.formula : `=${value.formula}` };
28
28
  };
29
29
  const toGoogleAppendValue = (value) => {
30
- if (value == null)
30
+ if (value === undefined)
31
+ return null;
32
+ else if (value === null)
31
33
  return '';
32
- if (value instanceof Date)
34
+ else if (value instanceof Date)
33
35
  return dateToSerialNumber(value);
34
- if (typeof value === 'string')
36
+ else if (typeof value === 'string')
35
37
  return value ? `'${value}` : '';
36
- if (typeof value === 'object')
38
+ else if (typeof value === 'object')
37
39
  return value.formula.startsWith('=')
38
40
  ? value.formula
39
41
  : `=${value.formula}`;
40
- return value;
42
+ else
43
+ return value;
41
44
  };
42
45
  const toGoogleWriteRequest = (sheetIds, block) => {
43
46
  const sheetId = sheetIds.get(block.grid);
@@ -1 +1 @@
1
- {"version":3,"file":"GoogleGridProvider.js","sourceRoot":"","sources":["../../src/grid/GoogleGridProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GoogleGridProvider.js","sourceRoot":"","sources":["../../src/grid/GoogleGridProvider.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  import { RecordBook } from '../record/RecordBook';
2
- import { RecordField, RecordFieldBuilder, RecordGroupBuilder, RecordProcessor, RecordSchema } from '../record/RecordSchema';
2
+ import { RecordField, RecordFieldBuilder, RecordGroupBuilder, RecordGroupFactory, RecordProcessor, RecordSchema } from '../record/RecordSchema';
3
3
  import { RecordStore } from '../record/RecordStore';
4
4
  import { RecordTable } from '../record/RecordTable';
5
5
  export declare const book: <const Tables extends readonly RecordTable<any, RecordSchema>[]>(store: RecordStore<Tables>) => RecordBook<Tables>;
6
6
  export declare const table: <const Name extends string, const Schema extends RecordSchema>(name: Name, schema: Schema) => RecordTable<Name, Schema>;
7
- export declare const group: <const Fields extends RecordField<any, any, any>[]>(fields: Fields) => <const Name extends string>(name: Name) => RecordGroupBuilder<Name, Fields, false>;
7
+ export declare function group<const Fields extends RecordField<any, any, any>[]>(fields: Fields): RecordGroupFactory<Fields>;
8
+ export declare function group<const Name extends string, const Fields extends RecordField<any, any, any>[]>(name: Name, fields: Fields): RecordGroupBuilder<Name, Fields, false>;
8
9
  export declare const field: <const Name extends string, Type>(name: Name, processor: RecordProcessor<Type>) => RecordFieldBuilder<Name, Type, false>;
9
- export { booleanField as boolean, numberField as number, currencyField as currency, percentField as percent, stringField as string, enumField as enum, phoneField as phone, dateField as date } from '../record/RecordFields';
10
+ export { booleanField as boolean, numberField as number, stringField as string, dateField as date, datetimeField as datetime, currencyField as currency, percentField as percent, enumField as enum, emailField as email, phoneField as phone, } from '../record/RecordFields';
10
11
  export * as grid from './grid';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC5H,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,eAAO,MAAM,IAAI,GAAI,KAAK,CAAC,MAAM,SAAS,SAAS,WAAW,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,EAAE,OAAO,WAAW,CAAC,MAAM,CAAC,uBACtF,CAAC;AAE1B,eAAO,MAAM,KAAK,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,KAAK,CAAC,MAAM,SAAS,YAAY,EAAE,MAAM,IAAI,EAAE,QAAQ,MAAM,8BAC7E,CAAC;AAElC,eAAO,MAAM,KAAK,GAAI,KAAK,CAAC,MAAM,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,QAAQ,MAAM,MAAM,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,4CACnF,CAAC;AAEhD,eAAO,MAAM,KAAK,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,EAAE,WAAW,eAAe,CAAC,IAAI,CAAC,0CACL,CAAC;AAE/F,OAAO,EACH,YAAY,IAAI,OAAO,EACvB,WAAW,IAAI,MAAM,EACrB,aAAa,IAAI,QAAQ,EACzB,YAAY,IAAI,OAAO,EACvB,WAAW,IAAI,MAAM,EACrB,SAAS,IAAI,IAAI,EACjB,UAAU,IAAI,KAAK,EACnB,SAAS,IAAI,IAAI,EACpB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAY,MAAM,wBAAwB,CAAC;AAC1J,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,eAAO,MAAM,IAAI,GAAI,KAAK,CAAC,MAAM,SAAS,SAAS,WAAW,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,EAAE,OAAO,WAAW,CAAC,MAAM,CAAC,uBACtF,CAAC;AAE1B,eAAO,MAAM,KAAK,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,KAAK,CAAC,MAAM,SAAS,YAAY,EAAE,MAAM,IAAI,EAAE,QAAQ,MAAM,8BAC7E,CAAC;AAElC,wBAAgB,KAAK,CAAC,KAAK,CAAC,MAAM,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;AACrH,wBAAgB,KAAK,CAAC,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,KAAK,CAAC,MAAM,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,EAC9F,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AAczE,eAAO,MAAM,KAAK,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,EAAE,WAAW,eAAe,CAAC,IAAI,CAAC,0CACL,CAAC;AAE/F,OAAO,EACH,YAAY,IAAI,OAAO,EACvB,WAAW,IAAI,MAAM,EACrB,WAAW,IAAI,MAAM,EACrB,SAAS,IAAI,IAAI,EACjB,aAAa,IAAI,QAAQ,EACzB,aAAa,IAAI,QAAQ,EACzB,YAAY,IAAI,OAAO,EACvB,SAAS,IAAI,IAAI,EACjB,UAAU,IAAI,KAAK,EACnB,UAAU,IAAI,KAAK,GACtB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC"}
@@ -33,7 +33,8 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.grid = exports.date = exports.phone = exports.enum = exports.string = exports.percent = exports.currency = exports.number = exports.boolean = exports.field = exports.group = exports.table = exports.book = void 0;
36
+ exports.grid = exports.phone = exports.email = exports.enum = exports.percent = exports.currency = exports.datetime = exports.date = exports.string = exports.number = exports.boolean = exports.field = exports.table = exports.book = void 0;
37
+ exports.group = group;
37
38
  const RecordBook_1 = require("../record/RecordBook");
38
39
  const RecordSchema_1 = require("../record/RecordSchema");
39
40
  const RecordTable_1 = require("../record/RecordTable");
@@ -41,18 +42,24 @@ const book = (store) => new RecordBook_1.RecordBook(store);
41
42
  exports.book = book;
42
43
  const table = (name, schema) => new RecordTable_1.RecordTable(name, schema);
43
44
  exports.table = table;
44
- const group = (fields) => (name) => new RecordSchema_1.RecordGroupBuilder(name, false, fields);
45
- exports.group = group;
45
+ function group(nameOrFields, fields) {
46
+ if (typeof nameOrFields === 'string')
47
+ return new RecordSchema_1.RecordGroupBuilder(nameOrFields, false, fields);
48
+ const factory = (name) => new RecordSchema_1.RecordGroupBuilder(name, false, nameOrFields);
49
+ return Object.defineProperty(factory, 'type', { get: RecordSchema_1.typeOnly });
50
+ }
46
51
  const field = (name, processor) => new RecordSchema_1.RecordFieldBuilder(name, false, processor.validate, processor.parse, processor.encode);
47
52
  exports.field = field;
48
53
  var RecordFields_1 = require("../record/RecordFields");
49
54
  Object.defineProperty(exports, "boolean", { enumerable: true, get: function () { return RecordFields_1.booleanField; } });
50
55
  Object.defineProperty(exports, "number", { enumerable: true, get: function () { return RecordFields_1.numberField; } });
56
+ Object.defineProperty(exports, "string", { enumerable: true, get: function () { return RecordFields_1.stringField; } });
57
+ Object.defineProperty(exports, "date", { enumerable: true, get: function () { return RecordFields_1.dateField; } });
58
+ Object.defineProperty(exports, "datetime", { enumerable: true, get: function () { return RecordFields_1.datetimeField; } });
51
59
  Object.defineProperty(exports, "currency", { enumerable: true, get: function () { return RecordFields_1.currencyField; } });
52
60
  Object.defineProperty(exports, "percent", { enumerable: true, get: function () { return RecordFields_1.percentField; } });
53
- Object.defineProperty(exports, "string", { enumerable: true, get: function () { return RecordFields_1.stringField; } });
54
61
  Object.defineProperty(exports, "enum", { enumerable: true, get: function () { return RecordFields_1.enumField; } });
62
+ Object.defineProperty(exports, "email", { enumerable: true, get: function () { return RecordFields_1.emailField; } });
55
63
  Object.defineProperty(exports, "phone", { enumerable: true, get: function () { return RecordFields_1.phoneField; } });
56
- Object.defineProperty(exports, "date", { enumerable: true, get: function () { return RecordFields_1.dateField; } });
57
64
  exports.grid = __importStar(require("./grid"));
58
65
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAkD;AAClD,yDAA4H;AAE5H,uDAAoD;AAE7C,MAAM,IAAI,GAAG,CAAiE,KAA0B,EAAE,EAAE,CAC/G,IAAI,uBAAU,CAAC,KAAK,CAAC,CAAC;AADb,QAAA,IAAI,QACS;AAEnB,MAAM,KAAK,GAAG,CAA+D,IAAU,EAAE,MAAc,EAAE,EAAE,CAC9G,IAAI,yBAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AADrB,QAAA,KAAK,SACgB;AAE3B,MAAM,KAAK,GAAG,CAAoD,MAAc,EAAE,EAAE,CAAC,CAA4B,IAAU,EAAE,EAAE,CAClI,IAAI,iCAAkB,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AADnC,QAAA,KAAK,SAC8B;AAEzC,MAAM,KAAK,GAAG,CAAkC,IAAU,EAAE,SAAgC,EAAE,EAAE,CACnG,IAAI,iCAAkB,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;AADlF,QAAA,KAAK,SAC6E;AAE/F,uDASgC;AAR5B,uGAAA,YAAY,OAAW;AACvB,sGAAA,WAAW,OAAU;AACrB,wGAAA,aAAa,OAAY;AACzB,uGAAA,YAAY,OAAW;AACvB,sGAAA,WAAW,OAAU;AACrB,oGAAA,SAAS,OAAQ;AACjB,qGAAA,UAAU,OAAS;AACnB,oGAAA,SAAS,OAAQ;AAGrB,+CAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,sBAWC;AAzBD,qDAAkD;AAClD,yDAA0J;AAE1J,uDAAoD;AAE7C,MAAM,IAAI,GAAG,CAAiE,KAA0B,EAAE,EAAE,CAC/G,IAAI,uBAAU,CAAC,KAAK,CAAC,CAAC;AADb,QAAA,IAAI,QACS;AAEnB,MAAM,KAAK,GAAG,CAA+D,IAAU,EAAE,MAAc,EAAE,EAAE,CAC9G,IAAI,yBAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AADrB,QAAA,KAAK,SACgB;AAKlC,SAAgB,KAAK,CACjB,YAAmD,EACnD,MAAqC;IAErC,IAAI,OAAO,YAAY,KAAK,QAAQ;QAChC,OAAO,IAAI,iCAAkB,CAAC,YAAY,EAAE,KAAK,EAAE,MAAO,CAAC,CAAC;IAEhE,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE,CAC7B,IAAI,iCAAkB,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;IAEtD,OAAO,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,uBAAQ,EAAE,CAAC,CAAC;AACrE,CAAC;AAEM,MAAM,KAAK,GAAG,CAAkC,IAAU,EAAE,SAAgC,EAAE,EAAE,CACnG,IAAI,iCAAkB,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;AADlF,QAAA,KAAK,SAC6E;AAE/F,uDAWgC;AAV5B,uGAAA,YAAY,OAAW;AACvB,sGAAA,WAAW,OAAU;AACrB,sGAAA,WAAW,OAAU;AACrB,oGAAA,SAAS,OAAQ;AACjB,wGAAA,aAAa,OAAY;AACzB,wGAAA,aAAa,OAAY;AACzB,uGAAA,YAAY,OAAW;AACvB,oGAAA,SAAS,OAAQ;AACjB,qGAAA,UAAU,OAAS;AACnB,qGAAA,UAAU,OAAS;AAGvB,+CAA+B"}
package/dist/index.js CHANGED
@@ -41,4 +41,12 @@ __exportStar(require("./record"), exports);
41
41
  __exportStar(require("./util"), exports);
42
42
  __exportStar(require("./grid"), exports);
43
43
  exports.rb = __importStar(require("./helpers"));
44
+ const log = (label, result, expected) => {
45
+ const matched = result.success === expected;
46
+ console.log(`\x1b[35m${label.padStart(35)}\x1b[0m \x1b[40m` +
47
+ (matched ? '\x1b[32m✓\x1b[0m' : '\x1b[31m✗\x1b[0m') + ' ' +
48
+ (result.success
49
+ ? `\x1b[32msuccess:\x1b[0m \x1b[33m${result.value}\x1b[0m`
50
+ : `\x1b[31mfailure:\x1b[0m \x1b[36m${result.info}\x1b[0m`));
51
+ };
44
52
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,yCAAuB;AACvB,yCAAuB;AAEvB,gDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,yCAAuB;AACvB,yCAAuB;AAEvB,gDAAgC;AAKhC,MAAM,GAAG,GAAG,CAAC,KAAa,EAAE,MAAwB,EAAE,QAAiB,EAAE,EAAE;IACvE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC;IAE5C,OAAO,CAAC,GAAG,CACP,WAAW,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,mBAAmB;QAChD,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,IAAI;QAC1D,CAAC,MAAM,CAAC,OAAO;YACX,CAAC,CAAC,mCAAmC,MAAM,CAAC,KAAK,SAAS;YAC1D,CAAC,CAAC,mCAAmC,MAAM,CAAC,IAAI,SAAS,CAAC,CACjE,CAAC;AACN,CAAC,CAAC"}
@@ -1,15 +1,30 @@
1
- import { RecordFieldBuilder, RecordParser, RecordProcessor } from "./RecordSchema";
2
- export declare const booleanField: <const Name extends string>(name: Name, processor?: Partial<RecordProcessor<boolean>>) => RecordFieldBuilder<Name, boolean, false>;
3
- export declare const numberField: <const Name extends string>(name: Name, processor?: Partial<RecordProcessor<number>>) => RecordFieldBuilder<Name, number, false>;
4
- export declare const currencyField: <const Name extends string>(name: Name, processor?: Partial<RecordProcessor<number>>) => RecordFieldBuilder<Name, number, false>;
5
- export declare const percentField: <const Name extends string>(name: Name, processor?: Partial<RecordProcessor<number>>) => RecordFieldBuilder<Name, number, false>;
6
- export declare const stringField: <const Name extends string>(name: Name, processor?: Partial<RecordProcessor<string>>) => RecordFieldBuilder<Name, string, false>;
1
+ import { DateTime } from 'luxon';
2
+ import { RecordFieldBuilder } from "./RecordSchema";
3
+ import { IsEmailOptions } from 'validator/lib/isEmail';
4
+ import { IsURLOptions } from 'validator';
5
+ export declare const booleanField: <const Name extends string>(name: Name) => RecordFieldBuilder<Name, boolean, false>;
6
+ export declare const numberField: <const Name extends string>(name: Name) => RecordFieldBuilder<Name, number, false>;
7
+ export declare const integerField: <const Name extends string>(name: Name) => RecordFieldBuilder<Name, number, false>;
8
+ export declare const bigintField: <const Name extends string>(name: Name) => RecordFieldBuilder<Name, bigint, false>;
9
+ export declare const stringField: <const Name extends string>(name: Name) => RecordFieldBuilder<Name, string, false>;
10
+ export declare const dateField: <const Name extends string>(name: Name) => RecordFieldBuilder<Name, Date, false>;
11
+ export type DateTimeOptions = {
12
+ formats?: readonly string[];
13
+ locale?: string;
14
+ zone?: string;
15
+ };
16
+ export declare const datetimeField: <const Name extends string>(name: Name, options?: DateTimeOptions) => RecordFieldBuilder<Name, DateTime<boolean>, false>;
17
+ export declare const currencyField: <const Name extends string>(name: Name) => RecordFieldBuilder<Name, number, false>;
18
+ export declare const percentField: <const Name extends string>(name: Name) => RecordFieldBuilder<Name, number, false>;
7
19
  export declare const enumField: <const Name extends string, const Enum extends readonly string[]>(name: Name, values: Enum, caseSensitive?: boolean) => RecordFieldBuilder<Name, string, false>;
20
+ export type EmailOptions = IsEmailOptions;
21
+ export declare const emailField: <const Name extends string>(name: Name, options?: EmailOptions) => RecordFieldBuilder<Name, string, false>;
22
+ export type UrlOptions = IsURLOptions;
23
+ export declare const urlField: <const Name extends string>(name: Name, options?: UrlOptions) => RecordFieldBuilder<Name, string, false>;
8
24
  export type PhoneFormatter = (phone: {
9
25
  area: string;
10
26
  start: string;
11
27
  end: string;
12
28
  }) => string;
13
29
  export declare const phoneField: <const Name extends string>(name: Name, format?: PhoneFormatter) => RecordFieldBuilder<Name, string, false>;
14
- export declare const dateField: <const Name extends string>(name: Name, parser?: RecordParser<Date>) => RecordFieldBuilder<Name, Date, false>;
15
30
  //# sourceMappingURL=RecordFields.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RecordFields.d.ts","sourceRoot":"","sources":["../../src/record/RecordFields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAQnF,eAAO,MAAM,YAAY,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,EAAE,YAAY,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,6CAO5G,CAAC;AAGN,eAAO,MAAM,WAAW,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,EAAE,YAAY,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,4CAa1G,CAAC;AAGN,eAAO,MAAM,aAAa,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,EAAE,YAAY,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,4CAa5G,CAAC;AAGN,eAAO,MAAM,YAAY,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,EAAE,YAAY,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,4CAc3G,CAAC;AAGN,eAAO,MAAM,WAAW,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,EAAE,YAAY,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,4CAO1G,CAAC;AAoBN,eAAO,MAAM,SAAS,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,KAAK,CAAC,IAAI,SAAS,SAAS,MAAM,EAAE,EAAE,MAAM,IAAI,EAAE,QAAQ,IAAI,EAAE,gBAAe,OAAe,4CAIlJ,CAAC;AAGF,MAAM,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;CAAE,KAAK,MAAM,CAAC;AAyB9F,eAAO,MAAM,UAAU,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,EAAE,SAAS,cAAc,4CAIxF,CAAC;AAWF,eAAO,MAAM,SAAS,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,EAAE,SAAS,YAAY,CAAC,IAAI,CAAC,0CAOvF,CAAC"}
1
+ {"version":3,"file":"RecordFields.d.ts","sourceRoot":"","sources":["../../src/record/RecordFields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAgB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAwCzC,eAAO,MAAM,YAAY,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,6CAO7D,CAAC;AAEN,eAAO,MAAM,WAAW,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,4CAS5D,CAAC;AAEN,eAAO,MAAM,YAAY,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,4CAS7D,CAAC;AAEN,eAAO,MAAM,WAAW,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,4CAc5D,CAAC;AAEN,eAAO,MAAM,WAAW,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,4CAO5D,CAAC;AAKN,eAAO,MAAM,SAAS,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,0CAU1D,CAAC;AAGN,MAAM,MAAM,eAAe,GAAG;IAC1B,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAyBF,eAAO,MAAM,aAAa,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EACnD,MAAM,IAAI,EACV,UAAS,eAAoB,uDAahC,CAAC;AAIF,eAAO,MAAM,aAAa,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,4CAuB9D,CAAC;AAEN,eAAO,MAAM,YAAY,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,4CAuB7D,CAAC;AAsBN,eAAO,MAAM,SAAS,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,KAAK,CAAC,IAAI,SAAS,SAAS,MAAM,EAAE,EAAE,MAAM,IAAI,EAAE,QAAQ,IAAI,EAAE,gBAAe,OAAe,4CAIlJ,CAAC;AAIF,MAAM,MAAM,YAAY,GAAG,cAAc,CAAC;AAM1C,eAAO,MAAM,UAAU,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,EAAE,UAAU,YAAY,4CAUvF,CAAC;AAGF,MAAM,MAAM,UAAU,GAAG,YAAY,CAAC;AAMtC,eAAO,MAAM,QAAQ,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,EAAE,UAAU,UAAU,4CAUnF,CAAC;AAIF,MAAM,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;CAAE,KAAK,MAAM,CAAC;AAyB9F,eAAO,MAAM,UAAU,GAAI,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI,EAAE,SAAS,cAAc,4CAIxF,CAAC"}
@@ -1,35 +1,119 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.dateField = exports.phoneField = exports.enumField = exports.stringField = exports.percentField = exports.currencyField = exports.numberField = exports.booleanField = void 0;
6
+ exports.phoneField = exports.urlField = exports.emailField = exports.enumField = exports.percentField = exports.currencyField = exports.datetimeField = exports.dateField = exports.stringField = exports.bigintField = exports.integerField = exports.numberField = exports.booleanField = void 0;
7
+ const luxon_1 = require("luxon");
4
8
  const RecordSchema_1 = require("./RecordSchema");
5
9
  const util_1 = require("../util");
10
+ const isEmail_1 = __importDefault(require("validator/lib/isEmail"));
11
+ const isURL_1 = __importDefault(require("validator/lib/isURL"));
12
+ /* Helpers */
6
13
  const expected = (received, ...expected) => util_1.Result.failure(`Expected ${expected.length === 1 ? expected[0] : expected.join('|')}, but received '${received}'`);
7
- const booleanField = (name, processor) => new RecordSchema_1.RecordFieldBuilder(name, false, processor?.validate ?? (value => typeof value === 'boolean' ? util_1.Result.success(value) : expected(value, 'a boolean')), processor?.parse ?? (value => value === 'TRUE' ? util_1.Result.success(true) : value === 'FALSE' ? util_1.Result.success(false) : expected(value, 'TRUE', 'FALSE')), processor?.encode ?? (value => value));
14
+ const numberPattern = /^[+-]?(?:(?:\d{1,3}(?:,\d{3})+|\d+)(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i;
15
+ const parseNumber = (value) => {
16
+ const text = value.trim();
17
+ if (!numberPattern.test(text))
18
+ return expected(value, 'a number');
19
+ const parsed = Number(text.replaceAll(',', ''));
20
+ return Number.isFinite(parsed)
21
+ ? util_1.Result.success(parsed)
22
+ : expected(value, 'a number');
23
+ };
24
+ const integerPattern = /^[+-]?(?:\d{1,3}(?:,\d{3})+|\d+)$/;
25
+ const parseInteger = (value) => {
26
+ const text = value.trim();
27
+ if (!integerPattern.test(text))
28
+ return expected(value, 'a safe integer');
29
+ const parsed = Number(text.replaceAll(',', ''));
30
+ return Number.isSafeInteger(parsed)
31
+ ? util_1.Result.success(parsed)
32
+ : expected(value, 'a safe integer');
33
+ };
34
+ /* Primitive Fields */
35
+ const booleanField = (name) => new RecordSchema_1.RecordFieldBuilder(name, false, (value => typeof value === 'boolean' ? util_1.Result.success(value) : expected(value, 'a boolean')), (value => value === 'TRUE' ? util_1.Result.success(true) : value === 'FALSE' ? util_1.Result.success(false) : expected(value, 'TRUE', 'FALSE')), (value => value));
8
36
  exports.booleanField = booleanField;
9
- const numberField = (name, processor) => new RecordSchema_1.RecordFieldBuilder(name, false, processor?.validate ?? (value => typeof value === 'number' ? util_1.Result.success(value) : expected(value, 'a number')), processor?.parse ?? (value => {
10
- const parsed = parseFloat(value.replaceAll(',', ''));
11
- return isNaN(parsed)
12
- ? expected(value, 'a number')
13
- : util_1.Result.success(parsed);
14
- }), processor?.encode ?? (value => value));
37
+ const numberField = (name) => new RecordSchema_1.RecordFieldBuilder(name, false, value => typeof value === 'number' && Number.isFinite(value)
38
+ ? util_1.Result.success(value)
39
+ : expected(value, 'a number'), parseNumber, value => value);
15
40
  exports.numberField = numberField;
16
- const currencyField = (name, processor) => new RecordSchema_1.RecordFieldBuilder(name, false, processor?.validate ?? (value => typeof value === 'number' ? util_1.Result.success(value) : expected(value, 'a number')), processor?.parse ?? (value => {
17
- const parsed = parseFloat(value.replace('$', '').replaceAll(',', ''));
18
- return isNaN(parsed)
19
- ? expected(value, 'a number')
20
- : util_1.Result.success(parsed);
21
- }), processor?.encode ?? (value => value));
41
+ const integerField = (name) => new RecordSchema_1.RecordFieldBuilder(name, false, value => typeof value === 'number' && Number.isSafeInteger(value)
42
+ ? util_1.Result.success(value)
43
+ : expected(value, 'a safe integer'), parseInteger, value => value);
44
+ exports.integerField = integerField;
45
+ const bigintField = (name) => new RecordSchema_1.RecordFieldBuilder(name, false, value => typeof value === 'bigint'
46
+ ? util_1.Result.success(value)
47
+ : expected(value, 'a bigint'), value => {
48
+ if (typeof value !== 'string' || !integerPattern.test(value.trim()))
49
+ return expected(value, 'a bigint');
50
+ return util_1.Result.success(BigInt(value.trim().replaceAll(',', '')));
51
+ }, value => value == null ? value : value.toString());
52
+ exports.bigintField = bigintField;
53
+ const stringField = (name) => new RecordSchema_1.RecordFieldBuilder(name, false, (value => typeof value === 'string' ? util_1.Result.success(value) : expected(value, 'a string')), (value => util_1.Result.success(value)), (value => value));
54
+ exports.stringField = stringField;
55
+ /* Temporal Fields */
56
+ // JS Date
57
+ const dateField = (name) => new RecordSchema_1.RecordFieldBuilder(name, false, value => value instanceof Date && !isNaN(value.getTime()) ? util_1.Result.success(value) : expected(value, 'a date'), (value) => {
58
+ const parsed = new Date(value);
59
+ return isNaN(parsed.getTime()) ? expected(value, 'a date') : util_1.Result.success(parsed);
60
+ }, value => value);
61
+ exports.dateField = dateField;
62
+ const datetimeParser = ({ formats = [], locale = 'en-US', zone = 'UTC' }) => (value) => {
63
+ if (typeof value !== 'string')
64
+ return expected(value, 'a date/time');
65
+ const iso = luxon_1.DateTime.fromISO(value, { zone, setZone: true });
66
+ if (iso.isValid)
67
+ return util_1.Result.success(iso);
68
+ for (const format of formats) {
69
+ const parsed = luxon_1.DateTime.fromFormat(value, format, {
70
+ locale,
71
+ zone,
72
+ setZone: true
73
+ });
74
+ if (parsed.isValid)
75
+ return util_1.Result.success(parsed);
76
+ }
77
+ return expected(value, 'a date/time');
78
+ };
79
+ const datetimeField = (name, options = {}) => {
80
+ const parser = datetimeParser(options);
81
+ return new RecordSchema_1.RecordFieldBuilder(name, false, value => luxon_1.DateTime.isDateTime(value) && value.isValid
82
+ ? util_1.Result.success(value)
83
+ : expected(value, 'a valid DateTime'), parser, value => value == null ? value : value.toISO({ extendedZone: true }));
84
+ };
85
+ exports.datetimeField = datetimeField;
86
+ /* Specialized Number Fields */
87
+ const currencyField = (name) => new RecordSchema_1.RecordFieldBuilder(name, false, value => typeof value === 'number' && Number.isFinite(value)
88
+ ? util_1.Result.success(value)
89
+ : expected(value, 'a number'), value => {
90
+ if (typeof value !== 'string')
91
+ return expected(value, 'a currency amount');
92
+ const text = value.trim();
93
+ // Allow an optional sign before the dollar symbol, never after it.
94
+ const match = /^([+-]?)\$([\d.,]+)$/.exec(text);
95
+ const result = parseNumber(match ? `${match[1]}${match[2]}` : text);
96
+ return result.success
97
+ ? result
98
+ : expected(value, 'a currency amount');
99
+ }, value => value);
22
100
  exports.currencyField = currencyField;
23
- const percentField = (name, processor) => new RecordSchema_1.RecordFieldBuilder(name, false, processor?.validate ?? (value => typeof value === 'number' ? util_1.Result.success(value) : expected(value, 'a number')), processor?.parse ?? (value => {
24
- const hasPercent = value.endsWith('%');
25
- const parsed = parseFloat(value.replace('%', '').replaceAll(',', ''));
26
- return isNaN(parsed)
27
- ? expected(value, 'a number')
28
- : util_1.Result.success(parsed / (hasPercent ? 100 : 1));
29
- }), processor?.encode ?? (value => value));
101
+ const percentField = (name) => new RecordSchema_1.RecordFieldBuilder(name, false, value => typeof value === 'number' && Number.isFinite(value)
102
+ ? util_1.Result.success(value)
103
+ : expected(value, 'a number'), value => {
104
+ if (typeof value !== 'string')
105
+ return expected(value, 'a percentage');
106
+ const text = value.trim();
107
+ // Only allow a percent sign immediately after the number.
108
+ const match = /^([+-]?[\d.,]+)%$/.exec(text);
109
+ const result = parseNumber(match ? match[1] : text);
110
+ return result.success
111
+ ? util_1.Result.success(result.value / (match ? 100 : 1))
112
+ : expected(value, 'a percentage');
113
+ }, value => value);
30
114
  exports.percentField = percentField;
31
- const stringField = (name, processor) => new RecordSchema_1.RecordFieldBuilder(name, false, processor?.validate ?? (value => typeof value === 'string' ? util_1.Result.success(value) : expected(value, 'a string')), processor?.parse ?? (value => util_1.Result.success(value)), processor?.encode ?? (value => value));
32
- exports.stringField = stringField;
115
+ /* Specialized String Fields */
116
+ // Enum
33
117
  const enumParser = (values, caseSensitive) => {
34
118
  const find = caseSensitive
35
119
  ? (value) => values.find(item => item === value)
@@ -48,6 +132,18 @@ const enumField = (name, values, caseSensitive = false) => {
48
132
  return new RecordSchema_1.RecordFieldBuilder(name, false, parser, parser, value => value);
49
133
  };
50
134
  exports.enumField = enumField;
135
+ const makeEmailParser = (options) => (value) => typeof value === 'string' && (0, isEmail_1.default)(value, options) ? util_1.Result.success(value) : expected(value, 'an email address');
136
+ const emailField = (name, options) => {
137
+ const parser = makeEmailParser(options);
138
+ return new RecordSchema_1.RecordFieldBuilder(name, false, parser, parser, value => value);
139
+ };
140
+ exports.emailField = emailField;
141
+ const makeUrlParser = (options) => (value) => typeof value === 'string' && (0, isURL_1.default)(value, options) ? util_1.Result.success(value) : expected(value, 'a Url');
142
+ const urlField = (name, options) => {
143
+ const parser = makeUrlParser(options);
144
+ return new RecordSchema_1.RecordFieldBuilder(name, false, parser, parser, value => value);
145
+ };
146
+ exports.urlField = urlField;
51
147
  const defaultPhoneFormat = ({ area, start, end }) => `(${area}) ${start}-${end}`;
52
148
  const getPhoneNumber = (text, format = defaultPhoneFormat) => {
53
149
  const [result, area, start, end] = text.match(/^ *\((\d{3})\) *(\d{3}) *-? *(\d{4}) *$/) ||
@@ -69,12 +165,4 @@ const phoneField = (name, format) => {
69
165
  return new RecordSchema_1.RecordFieldBuilder(name, false, parser, parser, value => value);
70
166
  };
71
167
  exports.phoneField = phoneField;
72
- const defaultDateParser = (value) => {
73
- const parsed = new Date(value);
74
- return isNaN(parsed.getTime())
75
- ? expected(value, 'a date')
76
- : util_1.Result.success(parsed);
77
- };
78
- const dateField = (name, parser) => new RecordSchema_1.RecordFieldBuilder(name, false, value => value instanceof Date && !isNaN(value.getTime()) ? util_1.Result.success(value) : expected(value, 'a date'), parser ?? defaultDateParser, value => value);
79
- exports.dateField = dateField;
80
168
  //# sourceMappingURL=RecordFields.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RecordFields.js","sourceRoot":"","sources":["../../src/record/RecordFields.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RecordFields.js","sourceRoot":"","sources":["../../src/record/RecordFields.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,7 @@ export declare const RecordElement: Readonly<{
26
26
  isField: (element: RecordElement) => element is RecordField;
27
27
  }>;
28
28
  export type RecordSchema = RecordElement[];
29
+ export declare const typeOnly: () => never;
29
30
  export declare class RecordFieldBuilder<const Name extends string, const Type, Optional extends boolean = false> implements RecordField<Name, Type, Optional> {
30
31
  readonly name: Name;
31
32
  readonly isOptional: Optional;
@@ -33,6 +34,7 @@ export declare class RecordFieldBuilder<const Name extends string, const Type, O
33
34
  readonly parse: RecordParser<Type>;
34
35
  readonly encode: RecordEncoder<Type>;
35
36
  constructor(name: Name, isOptional: Optional, validate: RecordValidator<Type>, parse: RecordParser<Type>, encode: RecordEncoder<Type>);
37
+ get type(): Type;
36
38
  optional(): RecordFieldBuilder<Name, Type, true>;
37
39
  validator(validator: RecordValidator<Type>): RecordFieldBuilder<Name, Type, Optional>;
38
40
  parser(parser: RecordParser<Type>): RecordFieldBuilder<Name, Type, Optional>;
@@ -46,4 +48,7 @@ export declare class RecordGroupBuilder<const Name extends string, const Fields
46
48
  get type(): RecordGroupData<Fields>;
47
49
  optional(): RecordGroupBuilder<Name, Fields, true>;
48
50
  }
51
+ export type RecordGroupFactory<Fields extends RecordField<any, any, any>[]> = (<const Name extends string>(name: Name) => RecordGroupBuilder<Name, Fields, false>) & {
52
+ readonly type: RecordGroupBuilder<string, Fields, false>['type'];
53
+ };
49
54
  //# sourceMappingURL=RecordSchema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RecordSchema.d.ts","sourceRoot":"","sources":["../../src/record/RecordSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RecordSchema.d.ts","sourceRoot":"","sources":["../../src/record/RecordSchema.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RecordGroupBuilder = exports.RecordFieldBuilder = exports.RecordElement = void 0;
3
+ exports.RecordGroupBuilder = exports.RecordFieldBuilder = exports.typeOnly = exports.RecordElement = void 0;
4
4
  const util_1 = require("../util");
5
5
  exports.RecordElement = Object.freeze({
6
6
  isGroup: (element) => 'fields' in element,
7
7
  isField: (element) => !('fields' in element)
8
8
  });
9
9
  /* Builders */
10
+ const typeOnly = () => { throw new Error('Type-only property cannot be accessed at runtime'); };
11
+ exports.typeOnly = typeOnly;
10
12
  class RecordFieldBuilder {
11
13
  name;
12
14
  isOptional;
@@ -21,6 +23,9 @@ class RecordFieldBuilder {
21
23
  this.encode = encode;
22
24
  (0, util_1.freeze)(this);
23
25
  }
26
+ get type() {
27
+ return (0, exports.typeOnly)();
28
+ }
24
29
  optional() {
25
30
  return new RecordFieldBuilder(this.name, true, this.validate, this.parse, this.encode);
26
31
  }
@@ -47,7 +52,7 @@ class RecordGroupBuilder {
47
52
  (0, util_1.freeze)(this);
48
53
  }
49
54
  get type() {
50
- throw new Error('This is a type helper and should not be used at runtime');
55
+ return (0, exports.typeOnly)();
51
56
  }
52
57
  optional() {
53
58
  return new RecordGroupBuilder(this.name, true, this.fields);
@@ -1 +1 @@
1
- {"version":3,"file":"RecordSchema.js","sourceRoot":"","sources":["../../src/record/RecordSchema.ts"],"names":[],"mappings":";;;AACA,kCAAyC;AAyC5B,QAAA,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;IACvC,OAAO,EAAE,CAAC,OAAsB,EAA0B,EAAE,CACxD,QAAQ,IAAI,OAAO;IAEvB,OAAO,EAAE,CAAC,OAAsB,EAA0B,EAAE,CACxD,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC;CAC7B,CAAC,CAAC;AAIH,cAAc;AACd,MAAa,kBAAkB;IAMP;IACA;IACA;IACA;IACA;IALpB,YACoB,IAAU,EACV,UAAoB,EACpB,QAA+B,EAC/B,KAAyB,EACzB,MAA2B;QAJ3B,SAAI,GAAJ,IAAI,CAAM;QACV,eAAU,GAAV,UAAU,CAAU;QACpB,aAAQ,GAAR,QAAQ,CAAuB;QAC/B,UAAK,GAAL,KAAK,CAAoB;QACzB,WAAM,GAAN,MAAM,CAAqB;QAC3C,IAAA,aAAM,EAAC,IAAI,CAAC,CAAC;IAAC,CAAC;IAEnB,QAAQ;QACJ,OAAO,IAAI,kBAAkB,CACzB,IAAI,CAAC,IAAI,EACT,IAAI,EACJ,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,CACd,CAAC;IACN,CAAC;IAED,SAAS,CAAC,SAAgC;QACtC,OAAO,IAAI,kBAAkB,CACzB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,EACf,SAAS,EACT,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,CACd,CAAC;IACN,CAAC;IAED,MAAM,CAAC,MAA0B;QAC7B,OAAO,IAAI,kBAAkB,CACzB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,QAAQ,EACb,MAAM,EACN,IAAI,CAAC,MAAM,CACd,CAAC;IACN,CAAC;IAED,OAAO,CAAC,OAA4B;QAChC,OAAO,IAAI,kBAAkB,CACzB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,KAAK,EACV,OAAO,CACV,CAAC;IACN,CAAC;CACJ;AApDD,gDAoDC;AAED,MAAa,kBAAkB;IAMP;IACA;IACA;IAHpB,YACoB,IAAU,EACV,UAAoB,EACpB,MAAc;QAFd,SAAI,GAAJ,IAAI,CAAM;QACV,eAAU,GAAV,UAAU,CAAU;QACpB,WAAM,GAAN,MAAM,CAAQ;QAE9B,IAAI,CAAC,MAAM,GAAG,IAAA,aAAM,EAAC,CAAC,GAAG,MAAM,CAAC,CAAsB,CAAC;QACvD,IAAA,aAAM,EAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,IAAI;QACJ,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC/E,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAChE,CAAC;CACJ;AArBD,gDAqBC"}
1
+ {"version":3,"file":"RecordSchema.js","sourceRoot":"","sources":["../../src/record/RecordSchema.ts"],"names":[],"mappings":";;;AACA,kCAAyC;AAyC5B,QAAA,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;IACvC,OAAO,EAAE,CAAC,OAAsB,EAA0B,EAAE,CACxD,QAAQ,IAAI,OAAO;IAEvB,OAAO,EAAE,CAAC,OAAsB,EAA0B,EAAE,CACxD,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC;CAC7B,CAAC,CAAC;AAIH,cAAc;AAEP,MAAM,QAAQ,GAAG,GAAU,EAAE,GAAG,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC,CAAC,CAAC,CAAC;AAAjG,QAAA,QAAQ,YAAyF;AAE9G,MAAa,kBAAkB;IAMP;IACA;IACA;IACA;IACA;IALpB,YACoB,IAAU,EACV,UAAoB,EACpB,QAA+B,EAC/B,KAAyB,EACzB,MAA2B;QAJ3B,SAAI,GAAJ,IAAI,CAAM;QACV,eAAU,GAAV,UAAU,CAAU;QACpB,aAAQ,GAAR,QAAQ,CAAuB;QAC/B,UAAK,GAAL,KAAK,CAAoB;QACzB,WAAM,GAAN,MAAM,CAAqB;QAC3C,IAAA,aAAM,EAAC,IAAI,CAAC,CAAC;IAAC,CAAC;IAEnB,IAAI,IAAI;QACJ,OAAO,IAAA,gBAAQ,GAAE,CAAC;IACtB,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,kBAAkB,CACzB,IAAI,CAAC,IAAI,EACT,IAAI,EACJ,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,CACd,CAAC;IACN,CAAC;IAED,SAAS,CAAC,SAAgC;QACtC,OAAO,IAAI,kBAAkB,CACzB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,EACf,SAAS,EACT,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,CACd,CAAC;IACN,CAAC;IAED,MAAM,CAAC,MAA0B;QAC7B,OAAO,IAAI,kBAAkB,CACzB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,QAAQ,EACb,MAAM,EACN,IAAI,CAAC,MAAM,CACd,CAAC;IACN,CAAC;IAED,OAAO,CAAC,OAA4B;QAChC,OAAO,IAAI,kBAAkB,CACzB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,KAAK,EACV,OAAO,CACV,CAAC;IACN,CAAC;CACJ;AAxDD,gDAwDC;AAED,MAAa,kBAAkB;IAMP;IACA;IACA;IAHpB,YACoB,IAAU,EACV,UAAoB,EACpB,MAAc;QAFd,SAAI,GAAJ,IAAI,CAAM;QACV,eAAU,GAAV,UAAU,CAAU;QACpB,WAAM,GAAN,MAAM,CAAQ;QAE9B,IAAI,CAAC,MAAM,GAAG,IAAA,aAAM,EAAC,CAAC,GAAG,MAAM,CAAC,CAAsB,CAAC;QACvD,IAAA,aAAM,EAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAA,gBAAQ,GAAE,CAAC;IACtB,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAChE,CAAC;CACJ;AArBD,gDAqBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"RecordTable.d.ts","sourceRoot":"","sources":["../../src/record/RecordTable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,qBAAa,WAAW,CACpB,KAAK,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EAClC,KAAK,CAAC,MAAM,SAAS,YAAY,GAAG,YAAY;aAG5B,IAAI,EAAE,IAAI;aACV,MAAM,EAAE,MAAM;gBADd,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM;IAGlC,IAAI,IAAI,IAAI,UAAU,CAAC,MAAM,CAAC,CAE7B;CACJ;AAED,MAAM,MAAM,iBAAiB,CAAC,KAAK,SAAS,WAAW,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;AAE3E,MAAM,MAAM,eAAe,CAAC,KAAK,SAAS,WAAW,IAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;AAErF,MAAM,MAAM,gBAAgB,CAAC,KAAK,SAAS,WAAW,IAAI,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;AAEvF,MAAM,MAAM,gBAAgB,CAAC,KAAK,SAAS,WAAW,IAAI,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"RecordTable.d.ts","sourceRoot":"","sources":["../../src/record/RecordTable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,YAAY,EAAY,MAAM,gBAAgB,CAAC;AAExD,qBAAa,WAAW,CACpB,KAAK,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EAClC,KAAK,CAAC,MAAM,SAAS,YAAY,GAAG,YAAY;aAG5B,IAAI,EAAE,IAAI;aACV,MAAM,EAAE,MAAM;gBADd,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM;IAGlC,IAAI,IAAI,IAAI,UAAU,CAAC,MAAM,CAAC,CAE7B;CACJ;AAED,MAAM,MAAM,iBAAiB,CAAC,KAAK,SAAS,WAAW,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;AAE3E,MAAM,MAAM,eAAe,CAAC,KAAK,SAAS,WAAW,IAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;AAErF,MAAM,MAAM,gBAAgB,CAAC,KAAK,SAAS,WAAW,IAAI,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;AAEvF,MAAM,MAAM,gBAAgB,CAAC,KAAK,SAAS,WAAW,IAAI,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RecordTable = void 0;
4
+ const RecordSchema_1 = require("./RecordSchema");
4
5
  class RecordTable {
5
6
  name;
6
7
  schema;
@@ -9,7 +10,7 @@ class RecordTable {
9
10
  this.schema = schema;
10
11
  }
11
12
  get type() {
12
- throw new Error('This is a type helper and should not be used at runtime');
13
+ return (0, RecordSchema_1.typeOnly)();
13
14
  }
14
15
  }
15
16
  exports.RecordTable = RecordTable;
@@ -1 +1 @@
1
- {"version":3,"file":"RecordTable.js","sourceRoot":"","sources":["../../src/record/RecordTable.ts"],"names":[],"mappings":";;;AAGA,MAAa,WAAW;IAKA;IACA;IAFpB,YACoB,IAAU,EACV,MAAc;QADd,SAAI,GAAJ,IAAI,CAAM;QACV,WAAM,GAAN,MAAM,CAAQ;IAC9B,CAAC;IAEL,IAAI,IAAI;QACJ,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC/E,CAAC;CACJ;AAZD,kCAYC"}
1
+ {"version":3,"file":"RecordTable.js","sourceRoot":"","sources":["../../src/record/RecordTable.ts"],"names":[],"mappings":";;;AACA,iDAAwD;AAExD,MAAa,WAAW;IAKA;IACA;IAFpB,YACoB,IAAU,EACV,MAAc;QADd,SAAI,GAAJ,IAAI,CAAM;QACV,WAAM,GAAN,MAAM,CAAQ;IAC9B,CAAC;IAEL,IAAI,IAAI;QACJ,OAAO,IAAA,uBAAQ,GAAE,CAAC;IACtB,CAAC;CACJ;AAZD,kCAYC"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "recordbase",
3
3
  "description": "Typed Record Tables over Spreadsheets, JSON, SQL or other storage backends.",
4
4
  "author": "lemfraust",
5
- "version": "0.1.0",
5
+ "version": "0.2.0",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "git@github.com:lemfraust/recordbase.git"
@@ -25,10 +25,14 @@
25
25
  "dist"
26
26
  ],
27
27
  "dependencies": {
28
- "@googleapis/sheets": "^18.1.1"
28
+ "@googleapis/sheets": "^18.1.1",
29
+ "luxon": "^3.7.2",
30
+ "validator": "^13.15.35"
29
31
  },
30
32
  "devDependencies": {
33
+ "@types/luxon": "^3.7.6",
31
34
  "@types/node": "^26.6.3",
35
+ "@types/validator": "^13.15.10",
32
36
  "tsx": "^4.23.15",
33
37
  "typescript": "~6.0.2",
34
38
  "vitest": "^5.0.4"