@stndrds/schema 1.0.0-alpha.128 → 1.0.0-alpha.129

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.
@@ -13,7 +13,7 @@ var chunkACQ3TUFK_js = require('./chunk-ACQ3TUFK.js');
13
13
  var chunkDC7YYE3U_js = require('./chunk-DC7YYE3U.js');
14
14
  var chunkROAZLZA2_js = require('./chunk-ROAZLZA2.js');
15
15
  var chunkCCB4OY2O_js = require('./chunk-CCB4OY2O.js');
16
- var chunkN7T66JVY_js = require('./chunk-N7T66JVY.js');
16
+ var chunk7A3Y6O32_js = require('./chunk-7A3Y6O32.js');
17
17
  var chunkP2BE2A2G_js = require('./chunk-P2BE2A2G.js');
18
18
  var chunkT225DB55_js = require('./chunk-T225DB55.js');
19
19
  var zod = require('zod');
@@ -49,7 +49,7 @@ function createAttributeValidator(attr, messages = chunkT225DB55_js.DEFAULT_VALI
49
49
  case "date":
50
50
  return chunkJ5HRK3WD_js.createDateValidator(attr, messages);
51
51
  case "phone":
52
- return chunkN7T66JVY_js.createPhoneValidator(attr, messages);
52
+ return chunk7A3Y6O32_js.createPhoneValidator(attr, messages);
53
53
  case "currency":
54
54
  return chunkDC7YYE3U_js.createCurrencyValidator(attr, messages);
55
55
  case "status":
@@ -11,7 +11,7 @@ import { createRollupValidator } from './chunk-OLJLCVNY.mjs';
11
11
  import { createCurrencyValidator } from './chunk-TEQNVO7W.mjs';
12
12
  import { createFileValidator } from './chunk-4TC27SMF.mjs';
13
13
  import { createLocationValidator } from './chunk-TBYXYSGA.mjs';
14
- import { createPhoneValidator } from './chunk-5XL3JP73.mjs';
14
+ import { createPhoneValidator } from './chunk-Z75P63VF.mjs';
15
15
  import { createRelationValidator } from './chunk-R4CJHCC4.mjs';
16
16
  import { DEFAULT_VALIDATION_MESSAGES, formatZodErrors } from './chunk-UQVW4KPP.mjs';
17
17
  import { z } from 'zod';
@@ -31,23 +31,6 @@ function normalizePhoneNumber(phoneNumber, countryIso3) {
31
31
  }
32
32
  return digits;
33
33
  }
34
- function validatePhoneNumber(phoneNumber, countryIso3) {
35
- if (!phoneNumber) return false;
36
- const iso2 = getIso2(countryIso3);
37
- if (!iso2) return false;
38
- const country = constants.getCountryByIso3(countryIso3);
39
- if (!country) return false;
40
- const trunkPrefix = country.phoneTrunkPrefix ?? "";
41
- const digits = digitsOnly(phoneNumber);
42
- const withTrunk = trunkPrefix + digits;
43
- const parsed = libphonenumberJs.parsePhoneNumberFromString(withTrunk, iso2);
44
- if (parsed?.isValid()) return true;
45
- const parsedDirect = libphonenumberJs.parsePhoneNumberFromString(phoneNumber, iso2);
46
- if (parsedDirect?.isValid()) return true;
47
- const maxDigits = country.phoneMaxDigits ?? 15;
48
- const expectedWithoutTrunk = maxDigits - trunkPrefix.length;
49
- return digits.length === expectedWithoutTrunk || digits.length === maxDigits;
50
- }
51
34
  function formatPhoneForDisplay(phone) {
52
35
  if (!phone.phoneNumber) return "";
53
36
  const iso2 = getIso2(phone.countryCode);
@@ -77,9 +60,7 @@ function createPhoneValidator(attr, messages = chunkT225DB55_js.DEFAULT_VALIDATI
77
60
  }).transform((val) => ({
78
61
  countryCode: val.countryCode,
79
62
  phoneNumber: normalizePhoneNumber(val.phoneNumber, val.countryCode)
80
- })).refine((val) => validatePhoneNumber(val.phoneNumber, val.countryCode), {
81
- message: messages.invalidPhone(attr)
82
- });
63
+ }));
83
64
  }
84
65
 
85
66
  exports.createPhoneValidator = createPhoneValidator;
@@ -29,23 +29,6 @@ function normalizePhoneNumber(phoneNumber, countryIso3) {
29
29
  }
30
30
  return digits;
31
31
  }
32
- function validatePhoneNumber(phoneNumber, countryIso3) {
33
- if (!phoneNumber) return false;
34
- const iso2 = getIso2(countryIso3);
35
- if (!iso2) return false;
36
- const country = getCountryByIso3(countryIso3);
37
- if (!country) return false;
38
- const trunkPrefix = country.phoneTrunkPrefix ?? "";
39
- const digits = digitsOnly(phoneNumber);
40
- const withTrunk = trunkPrefix + digits;
41
- const parsed = parsePhoneNumberFromString(withTrunk, iso2);
42
- if (parsed?.isValid()) return true;
43
- const parsedDirect = parsePhoneNumberFromString(phoneNumber, iso2);
44
- if (parsedDirect?.isValid()) return true;
45
- const maxDigits = country.phoneMaxDigits ?? 15;
46
- const expectedWithoutTrunk = maxDigits - trunkPrefix.length;
47
- return digits.length === expectedWithoutTrunk || digits.length === maxDigits;
48
- }
49
32
  function formatPhoneForDisplay(phone) {
50
33
  if (!phone.phoneNumber) return "";
51
34
  const iso2 = getIso2(phone.countryCode);
@@ -75,9 +58,7 @@ function createPhoneValidator(attr, messages = DEFAULT_VALIDATION_MESSAGES) {
75
58
  }).transform((val) => ({
76
59
  countryCode: val.countryCode,
77
60
  phoneNumber: normalizePhoneNumber(val.phoneNumber, val.countryCode)
78
- })).refine((val) => validatePhoneNumber(val.phoneNumber, val.countryCode), {
79
- message: messages.invalidPhone(attr)
80
- });
61
+ }));
81
62
  }
82
63
 
83
64
  export { createPhoneValidator, formatPhoneForDisplay };
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@
3
3
  var chunkFRCDMQER_js = require('./chunk-FRCDMQER.js');
4
4
  require('./chunk-PGERPYDR.js');
5
5
  var chunkV6DE3MXC_js = require('./chunk-V6DE3MXC.js');
6
- var chunkQ7223YI5_js = require('./chunk-Q7223YI5.js');
6
+ var chunk64R5X3DF_js = require('./chunk-64R5X3DF.js');
7
7
  require('./chunk-MAKSIK3P.js');
8
8
  require('./chunk-J5HRK3WD.js');
9
9
  require('./chunk-TKN73433.js');
@@ -17,7 +17,7 @@ require('./chunk-ACQ3TUFK.js');
17
17
  require('./chunk-DC7YYE3U.js');
18
18
  require('./chunk-ROAZLZA2.js');
19
19
  require('./chunk-CCB4OY2O.js');
20
- var chunkN7T66JVY_js = require('./chunk-N7T66JVY.js');
20
+ var chunk7A3Y6O32_js = require('./chunk-7A3Y6O32.js');
21
21
  require('./chunk-P2BE2A2G.js');
22
22
  var chunkT225DB55_js = require('./chunk-T225DB55.js');
23
23
  var constants = require('@stndrds/constants');
@@ -743,7 +743,7 @@ function formatPhone(value) {
743
743
  if (!("phoneNumber" in phone2)) return String(value);
744
744
  if (!phone2.phoneNumber) return "";
745
745
  if (!phone2.countryCode) return phone2.phoneNumber;
746
- return chunkN7T66JVY_js.formatPhoneForDisplay(phone2);
746
+ return chunk7A3Y6O32_js.formatPhoneForDisplay(phone2);
747
747
  }
748
748
  function formatLocation(value, attribute) {
749
749
  if (typeof value !== "object" || value === null) return String(value);
@@ -1196,7 +1196,7 @@ var BaseAttributeBuilder = class {
1196
1196
  * @see https://standardschema.dev/
1197
1197
  */
1198
1198
  get "~standard"() {
1199
- const zodSchema = chunkQ7223YI5_js.createAttributeValidator(this.build());
1199
+ const zodSchema = chunk64R5X3DF_js.createAttributeValidator(this.build());
1200
1200
  return createStandardSchemaProps(zodSchema);
1201
1201
  }
1202
1202
  constructor(type, name, label) {
@@ -2557,7 +2557,7 @@ var ObjectBuilder = class {
2557
2557
  * @see https://standardschema.dev/
2558
2558
  */
2559
2559
  get "~standard"() {
2560
- const zodSchema = chunkQ7223YI5_js.createObjectValidator(this.build());
2560
+ const zodSchema = chunk64R5X3DF_js.createObjectValidator(this.build());
2561
2561
  return createStandardSchemaProps(zodSchema);
2562
2562
  }
2563
2563
  /**
@@ -5206,23 +5206,23 @@ Object.defineProperty(exports, "parseAttributeConfig", {
5206
5206
  });
5207
5207
  Object.defineProperty(exports, "computeRecordStatus", {
5208
5208
  enumerable: true,
5209
- get: function () { return chunkQ7223YI5_js.computeRecordStatus; }
5209
+ get: function () { return chunk64R5X3DF_js.computeRecordStatus; }
5210
5210
  });
5211
5211
  Object.defineProperty(exports, "createFormAttributeValidator", {
5212
5212
  enumerable: true,
5213
- get: function () { return chunkQ7223YI5_js.createFormAttributeValidator; }
5213
+ get: function () { return chunk64R5X3DF_js.createFormAttributeValidator; }
5214
5214
  });
5215
5215
  Object.defineProperty(exports, "validateDraftOrThrow", {
5216
5216
  enumerable: true,
5217
- get: function () { return chunkQ7223YI5_js.validateDraftOrThrow; }
5217
+ get: function () { return chunk64R5X3DF_js.validateDraftOrThrow; }
5218
5218
  });
5219
5219
  Object.defineProperty(exports, "validateObject", {
5220
5220
  enumerable: true,
5221
- get: function () { return chunkQ7223YI5_js.validateObject; }
5221
+ get: function () { return chunk64R5X3DF_js.validateObject; }
5222
5222
  });
5223
5223
  Object.defineProperty(exports, "validateObjectOrThrow", {
5224
5224
  enumerable: true,
5225
- get: function () { return chunkQ7223YI5_js.validateObjectOrThrow; }
5225
+ get: function () { return chunk64R5X3DF_js.validateObjectOrThrow; }
5226
5226
  });
5227
5227
  Object.defineProperty(exports, "DEFAULT_VALIDATION_MESSAGES", {
5228
5228
  enumerable: true,
package/dist/index.mjs CHANGED
@@ -2,8 +2,8 @@ import { generateId } from './chunk-QY6QFRRV.mjs';
2
2
  export { asTenantId, asUserId, deepEqual, generateId, indexBy } from './chunk-QY6QFRRV.mjs';
3
3
  import './chunk-SP3PNHYF.mjs';
4
4
  export { parseAttributeConfig } from './chunk-SS2NR6DH.mjs';
5
- import { createObjectValidator, createAttributeValidator } from './chunk-OEIPJZUO.mjs';
6
- export { computeRecordStatus, createFormAttributeValidator, validateDraftOrThrow, validateObject, validateObjectOrThrow } from './chunk-OEIPJZUO.mjs';
5
+ import { createObjectValidator, createAttributeValidator } from './chunk-6JEQE4IP.mjs';
6
+ export { computeRecordStatus, createFormAttributeValidator, validateDraftOrThrow, validateObject, validateObjectOrThrow } from './chunk-6JEQE4IP.mjs';
7
7
  import './chunk-TMYBEXBT.mjs';
8
8
  import './chunk-4KRLCWJM.mjs';
9
9
  import './chunk-KNYZH2WD.mjs';
@@ -17,7 +17,7 @@ import './chunk-OLJLCVNY.mjs';
17
17
  import './chunk-TEQNVO7W.mjs';
18
18
  import './chunk-4TC27SMF.mjs';
19
19
  import './chunk-TBYXYSGA.mjs';
20
- import { formatPhoneForDisplay } from './chunk-5XL3JP73.mjs';
20
+ import { formatPhoneForDisplay } from './chunk-Z75P63VF.mjs';
21
21
  import './chunk-R4CJHCC4.mjs';
22
22
  export { DEFAULT_VALIDATION_MESSAGES, formatZodErrors } from './chunk-UQVW4KPP.mjs';
23
23
  import { ICONS, getCountryDisplayNameByIso3 } from '@stndrds/constants';
@@ -2,7 +2,7 @@
2
2
 
3
3
  require('../chunk-PGERPYDR.js');
4
4
  var chunkV6DE3MXC_js = require('../chunk-V6DE3MXC.js');
5
- var chunkQ7223YI5_js = require('../chunk-Q7223YI5.js');
5
+ var chunk64R5X3DF_js = require('../chunk-64R5X3DF.js');
6
6
  require('../chunk-MAKSIK3P.js');
7
7
  require('../chunk-J5HRK3WD.js');
8
8
  require('../chunk-TKN73433.js');
@@ -16,7 +16,7 @@ require('../chunk-ACQ3TUFK.js');
16
16
  require('../chunk-DC7YYE3U.js');
17
17
  require('../chunk-ROAZLZA2.js');
18
18
  require('../chunk-CCB4OY2O.js');
19
- require('../chunk-N7T66JVY.js');
19
+ require('../chunk-7A3Y6O32.js');
20
20
  require('../chunk-P2BE2A2G.js');
21
21
  var chunkT225DB55_js = require('../chunk-T225DB55.js');
22
22
 
@@ -28,23 +28,23 @@ Object.defineProperty(exports, "parseAttributeConfig", {
28
28
  });
29
29
  Object.defineProperty(exports, "computeRecordStatus", {
30
30
  enumerable: true,
31
- get: function () { return chunkQ7223YI5_js.computeRecordStatus; }
31
+ get: function () { return chunk64R5X3DF_js.computeRecordStatus; }
32
32
  });
33
33
  Object.defineProperty(exports, "createFormAttributeValidator", {
34
34
  enumerable: true,
35
- get: function () { return chunkQ7223YI5_js.createFormAttributeValidator; }
35
+ get: function () { return chunk64R5X3DF_js.createFormAttributeValidator; }
36
36
  });
37
37
  Object.defineProperty(exports, "validateDraftOrThrow", {
38
38
  enumerable: true,
39
- get: function () { return chunkQ7223YI5_js.validateDraftOrThrow; }
39
+ get: function () { return chunk64R5X3DF_js.validateDraftOrThrow; }
40
40
  });
41
41
  Object.defineProperty(exports, "validateObject", {
42
42
  enumerable: true,
43
- get: function () { return chunkQ7223YI5_js.validateObject; }
43
+ get: function () { return chunk64R5X3DF_js.validateObject; }
44
44
  });
45
45
  Object.defineProperty(exports, "validateObjectOrThrow", {
46
46
  enumerable: true,
47
- get: function () { return chunkQ7223YI5_js.validateObjectOrThrow; }
47
+ get: function () { return chunk64R5X3DF_js.validateObjectOrThrow; }
48
48
  });
49
49
  Object.defineProperty(exports, "DEFAULT_VALIDATION_MESSAGES", {
50
50
  enumerable: true,
@@ -1,6 +1,6 @@
1
1
  import '../chunk-SP3PNHYF.mjs';
2
2
  export { parseAttributeConfig } from '../chunk-SS2NR6DH.mjs';
3
- export { computeRecordStatus, createFormAttributeValidator, validateDraftOrThrow, validateObject, validateObjectOrThrow } from '../chunk-OEIPJZUO.mjs';
3
+ export { computeRecordStatus, createFormAttributeValidator, validateDraftOrThrow, validateObject, validateObjectOrThrow } from '../chunk-6JEQE4IP.mjs';
4
4
  import '../chunk-TMYBEXBT.mjs';
5
5
  import '../chunk-4KRLCWJM.mjs';
6
6
  import '../chunk-KNYZH2WD.mjs';
@@ -14,6 +14,6 @@ import '../chunk-OLJLCVNY.mjs';
14
14
  import '../chunk-TEQNVO7W.mjs';
15
15
  import '../chunk-4TC27SMF.mjs';
16
16
  import '../chunk-TBYXYSGA.mjs';
17
- import '../chunk-5XL3JP73.mjs';
17
+ import '../chunk-Z75P63VF.mjs';
18
18
  import '../chunk-R4CJHCC4.mjs';
19
19
  export { DEFAULT_VALIDATION_MESSAGES, formatZodErrors } from '../chunk-UQVW4KPP.mjs';
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var chunkN7T66JVY_js = require('../../chunk-N7T66JVY.js');
3
+ var chunk7A3Y6O32_js = require('../../chunk-7A3Y6O32.js');
4
4
  require('../../chunk-T225DB55.js');
5
5
 
6
6
 
7
7
 
8
8
  Object.defineProperty(exports, "createPhoneValidator", {
9
9
  enumerable: true,
10
- get: function () { return chunkN7T66JVY_js.createPhoneValidator; }
10
+ get: function () { return chunk7A3Y6O32_js.createPhoneValidator; }
11
11
  });
@@ -1,2 +1,2 @@
1
- export { createPhoneValidator } from '../../chunk-5XL3JP73.mjs';
1
+ export { createPhoneValidator } from '../../chunk-Z75P63VF.mjs';
2
2
  import '../../chunk-UQVW4KPP.mjs';
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkQ7223YI5_js = require('../../chunk-Q7223YI5.js');
3
+ var chunk64R5X3DF_js = require('../../chunk-64R5X3DF.js');
4
4
  require('../../chunk-MAKSIK3P.js');
5
5
  require('../../chunk-J5HRK3WD.js');
6
6
  require('../../chunk-TKN73433.js');
@@ -14,7 +14,7 @@ require('../../chunk-ACQ3TUFK.js');
14
14
  require('../../chunk-DC7YYE3U.js');
15
15
  require('../../chunk-ROAZLZA2.js');
16
16
  require('../../chunk-CCB4OY2O.js');
17
- require('../../chunk-N7T66JVY.js');
17
+ require('../../chunk-7A3Y6O32.js');
18
18
  require('../../chunk-P2BE2A2G.js');
19
19
  require('../../chunk-T225DB55.js');
20
20
 
@@ -22,49 +22,49 @@ require('../../chunk-T225DB55.js');
22
22
 
23
23
  Object.defineProperty(exports, "computeRecordStatus", {
24
24
  enumerable: true,
25
- get: function () { return chunkQ7223YI5_js.computeRecordStatus; }
25
+ get: function () { return chunk64R5X3DF_js.computeRecordStatus; }
26
26
  });
27
27
  Object.defineProperty(exports, "createAttributeValidator", {
28
28
  enumerable: true,
29
- get: function () { return chunkQ7223YI5_js.createAttributeValidator; }
29
+ get: function () { return chunk64R5X3DF_js.createAttributeValidator; }
30
30
  });
31
31
  Object.defineProperty(exports, "createDraftValidator", {
32
32
  enumerable: true,
33
- get: function () { return chunkQ7223YI5_js.createDraftValidator; }
33
+ get: function () { return chunk64R5X3DF_js.createDraftValidator; }
34
34
  });
35
35
  Object.defineProperty(exports, "createFormAttributeValidator", {
36
36
  enumerable: true,
37
- get: function () { return chunkQ7223YI5_js.createFormAttributeValidator; }
37
+ get: function () { return chunk64R5X3DF_js.createFormAttributeValidator; }
38
38
  });
39
39
  Object.defineProperty(exports, "createObjectValidator", {
40
40
  enumerable: true,
41
- get: function () { return chunkQ7223YI5_js.createObjectValidator; }
41
+ get: function () { return chunk64R5X3DF_js.createObjectValidator; }
42
42
  });
43
43
  Object.defineProperty(exports, "getMissingRequiredAttributes", {
44
44
  enumerable: true,
45
- get: function () { return chunkQ7223YI5_js.getMissingRequiredAttributes; }
45
+ get: function () { return chunk64R5X3DF_js.getMissingRequiredAttributes; }
46
46
  });
47
47
  Object.defineProperty(exports, "isRecordComplete", {
48
48
  enumerable: true,
49
- get: function () { return chunkQ7223YI5_js.isRecordComplete; }
49
+ get: function () { return chunk64R5X3DF_js.isRecordComplete; }
50
50
  });
51
51
  Object.defineProperty(exports, "validateAttribute", {
52
52
  enumerable: true,
53
- get: function () { return chunkQ7223YI5_js.validateAttribute; }
53
+ get: function () { return chunk64R5X3DF_js.validateAttribute; }
54
54
  });
55
55
  Object.defineProperty(exports, "validateDraft", {
56
56
  enumerable: true,
57
- get: function () { return chunkQ7223YI5_js.validateDraft; }
57
+ get: function () { return chunk64R5X3DF_js.validateDraft; }
58
58
  });
59
59
  Object.defineProperty(exports, "validateDraftOrThrow", {
60
60
  enumerable: true,
61
- get: function () { return chunkQ7223YI5_js.validateDraftOrThrow; }
61
+ get: function () { return chunk64R5X3DF_js.validateDraftOrThrow; }
62
62
  });
63
63
  Object.defineProperty(exports, "validateObject", {
64
64
  enumerable: true,
65
- get: function () { return chunkQ7223YI5_js.validateObject; }
65
+ get: function () { return chunk64R5X3DF_js.validateObject; }
66
66
  });
67
67
  Object.defineProperty(exports, "validateObjectOrThrow", {
68
68
  enumerable: true,
69
- get: function () { return chunkQ7223YI5_js.validateObjectOrThrow; }
69
+ get: function () { return chunk64R5X3DF_js.validateObjectOrThrow; }
70
70
  });
@@ -1,4 +1,4 @@
1
- export { computeRecordStatus, createAttributeValidator, createDraftValidator, createFormAttributeValidator, createObjectValidator, getMissingRequiredAttributes, isRecordComplete, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from '../../chunk-OEIPJZUO.mjs';
1
+ export { computeRecordStatus, createAttributeValidator, createDraftValidator, createFormAttributeValidator, createObjectValidator, getMissingRequiredAttributes, isRecordComplete, validateAttribute, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from '../../chunk-6JEQE4IP.mjs';
2
2
  import '../../chunk-TMYBEXBT.mjs';
3
3
  import '../../chunk-4KRLCWJM.mjs';
4
4
  import '../../chunk-KNYZH2WD.mjs';
@@ -12,6 +12,6 @@ import '../../chunk-OLJLCVNY.mjs';
12
12
  import '../../chunk-TEQNVO7W.mjs';
13
13
  import '../../chunk-4TC27SMF.mjs';
14
14
  import '../../chunk-TBYXYSGA.mjs';
15
- import '../../chunk-5XL3JP73.mjs';
15
+ import '../../chunk-Z75P63VF.mjs';
16
16
  import '../../chunk-R4CJHCC4.mjs';
17
17
  import '../../chunk-UQVW4KPP.mjs';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stndrds/schema",
3
- "version": "1.0.0-alpha.128",
3
+ "version": "1.0.0-alpha.129",
4
4
  "description": "Standard schema definitions and utilities",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -131,7 +131,7 @@
131
131
  "expr-eval": "^2.0.2",
132
132
  "libphonenumber-js": "^1.12.31",
133
133
  "zod": "^4.2.1",
134
- "@stndrds/constants": "1.0.0-alpha.128"
134
+ "@stndrds/constants": "1.0.0-alpha.129"
135
135
  },
136
136
  "devDependencies": {
137
137
  "@types/node": "^25.0.3",