@nhtio/validation 0.1.0-master-87fc6cd7 → 0.1.0-master-1d06eb16

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.
package/index.mjs CHANGED
@@ -37170,7 +37170,7 @@ var require_messages = __commonJSMin((exports) => {
37170
37170
  var require_extend = __commonJSMin((exports) => {
37171
37171
  const { assert: assert$23, clone: clone$10 } = require_lib$4();
37172
37172
  const Common$19 = require_common();
37173
- const Messages$5 = require_messages();
37173
+ const Messages$6 = require_messages();
37174
37174
  const internals$21 = {};
37175
37175
  exports.type = function(from$2, options) {
37176
37176
  const base$3 = Object.getPrototypeOf(from$2);
@@ -37180,7 +37180,7 @@ var require_extend = __commonJSMin((exports) => {
37180
37180
  delete def.base;
37181
37181
  prototype._definition = def;
37182
37182
  const parent = base$3._definition || {};
37183
- def.messages = Messages$5.merge(parent.messages, def.messages);
37183
+ def.messages = Messages$6.merge(parent.messages, def.messages);
37184
37184
  def.properties = Object.assign({}, parent.properties, def.properties);
37185
37185
  schema$2.type = def.type;
37186
37186
  def.flags = Object.assign({}, parent.flags, def.flags);
@@ -37323,7 +37323,7 @@ var require_manifest = __commonJSMin((exports) => {
37323
37323
  init_dist();
37324
37324
  const { assert: assert$22, clone: clone$9 } = require_lib$4();
37325
37325
  const Common$18 = require_common();
37326
- const Messages$4 = require_messages();
37326
+ const Messages$5 = require_messages();
37327
37327
  const Ref$6 = require_ref();
37328
37328
  const Template$5 = require_template();
37329
37329
  let Schemas$3;
@@ -37340,7 +37340,7 @@ var require_manifest = __commonJSMin((exports) => {
37340
37340
  if (schema$2._preferences) {
37341
37341
  desc$1.preferences = clone$9(schema$2._preferences, { shallow: ["messages"] });
37342
37342
  delete desc$1.preferences[Common$18.symbols.prefs];
37343
- if (desc$1.preferences.messages) desc$1.preferences.messages = Messages$4.decompile(desc$1.preferences.messages);
37343
+ if (desc$1.preferences.messages) desc$1.preferences.messages = Messages$5.decompile(desc$1.preferences.messages);
37344
37344
  }
37345
37345
  if (schema$2._valids) desc$1.allow = schema$2._valids.describe();
37346
37346
  if (schema$2._invalids) desc$1.invalid = schema$2._invalids.describe();
@@ -38621,7 +38621,7 @@ var require_base = __commonJSMin((exports, module) => {
38621
38621
  const Errors$5 = require_errors();
38622
38622
  const Extend$2 = require_extend();
38623
38623
  const Manifest$2 = require_manifest();
38624
- const Messages$3 = require_messages();
38624
+ const Messages$4 = require_messages();
38625
38625
  const Modify = require_modify();
38626
38626
  const Ref$4 = require_ref();
38627
38627
  const Trace$2 = require_trace();
@@ -39026,7 +39026,7 @@ var require_base = __commonJSMin((exports, module) => {
39026
39026
  }
39027
39027
  $_createError(code$2, value, local, state, prefs, options = {}) {
39028
39028
  const flags = options.flags !== false ? this._flags : {};
39029
- const messages$3 = options.messages ? Messages$3.merge(this._definition.messages, options.messages) : this._definition.messages;
39029
+ const messages$3 = options.messages ? Messages$4.merge(this._definition.messages, options.messages) : this._definition.messages;
39030
39030
  return new Errors$5.Report(code$2, value, local, flags, messages$3, state, prefs);
39031
39031
  }
39032
39032
  $_getFlag(name$2) {
@@ -39295,7 +39295,7 @@ var require_any = __commonJSMin((exports, module) => {
39295
39295
  const { assert: assert$17 } = require_lib$4();
39296
39296
  const Base = require_base();
39297
39297
  const Common$12 = require_common();
39298
- const Messages$2 = require_messages();
39298
+ const Messages$3 = require_messages();
39299
39299
  module.exports = Base.extend({
39300
39300
  type: "any",
39301
39301
  flags: { only: { default: false } },
@@ -39367,7 +39367,7 @@ var require_any = __commonJSMin((exports, module) => {
39367
39367
  rule.keep = enabled;
39368
39368
  },
39369
39369
  message(rule, message) {
39370
- rule.message = Messages$2.compile(message);
39370
+ rule.message = Messages$3.compile(message);
39371
39371
  },
39372
39372
  warn(rule, enabled = true) {
39373
39373
  rule.warn = enabled;
@@ -45243,7 +45243,7 @@ var require_schemas = __commonJSMin((exports) => {
45243
45243
  var require_common = __commonJSMin((exports) => {
45244
45244
  const { assert: Assert, AssertError } = require_lib$4();
45245
45245
  const Pkg = (init_package(), __toCommonJS(package_exports).default);
45246
- let Messages$1;
45246
+ let Messages$2;
45247
45247
  let Schemas$1;
45248
45248
  const internals$1 = { isoDate: /^(?:[-+]\d{2})?(?:\d{4}(?!\d{2}\b))(?:(-?)(?:(?:0[1-9]|1[0-2])(?:\1(?:[12]\d|0[1-9]|3[01]))?|W(?:[0-4]\d|5[0-2])(?:-?[1-7])?|(?:00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[1-6])))(?![T]$|[T][\d]+Z$)(?:[T\s](?:(?:(?:[01]\d|2[0-3])(?:(:?)[0-5]\d)?|24\:?00)(?:[.,]\d+(?!:))?)(?:\2[0-5]\d(?:[.,]\d+)?)?(?:[Z]|(?:[+-])(?:[01]\d|2[0-3])(?::?[0-5]\d)?)?)?)?$/ };
45249
45249
  exports.version = Pkg.version;
@@ -45333,7 +45333,7 @@ var require_common = __commonJSMin((exports) => {
45333
45333
  return Number.isSafeInteger(value) && value >= 0;
45334
45334
  };
45335
45335
  exports.preferences = function(target, source) {
45336
- Messages$1 = Messages$1 || require_messages();
45336
+ Messages$2 = Messages$2 || require_messages();
45337
45337
  target = target || {};
45338
45338
  source = source || {};
45339
45339
  const merged = Object.assign({}, target, source);
@@ -45341,7 +45341,7 @@ var require_common = __commonJSMin((exports) => {
45341
45341
  merged.errors = Object.assign({}, target.errors, source.errors);
45342
45342
  merged.errors.wrap = Object.assign({}, target.errors.wrap, source.errors.wrap);
45343
45343
  }
45344
- if (source.messages) merged.messages = Messages$1.compile(source.messages, target.messages);
45344
+ if (source.messages) merged.messages = Messages$2.compile(source.messages, target.messages);
45345
45345
  delete merged[exports.symbols.prefs];
45346
45346
  return merged;
45347
45347
  };
@@ -45811,7 +45811,7 @@ var RootFactory = class RootFactory {
45811
45811
  return instance;
45812
45812
  }
45813
45813
  };
45814
- var import_messages = __toESM(require_messages());
45814
+ var import_messages$1 = __toESM(require_messages());
45815
45815
  const knexMessages = {
45816
45816
  "knex.unique": "The {{#label}} has already been taken",
45817
45817
  "knex.exists": "The selected {{#label}} is invalid",
@@ -45859,7 +45859,7 @@ const resolveQueryBuilder = (connection, table$2) => {
45859
45859
  query: conn.table(table$2)
45860
45860
  };
45861
45861
  };
45862
- const getMergableMessages = (schema$2) => {
45862
+ const getMergableMessages$1 = (schema$2) => {
45863
45863
  if ("_definition" in schema$2) {
45864
45864
  const def = schema$2._definition;
45865
45865
  if ("messages" in def && def.messages) if ("string" === typeof def.messages) return {};
@@ -45906,8 +45906,8 @@ function findKnexConnection() {
45906
45906
  }
45907
45907
  const knex = (schema$2, root$11, args$1) => {
45908
45908
  const prototype = Object.getPrototypeOf(schema$2);
45909
- const originalMessages = getMergableMessages(schema$2);
45910
- const mergedMessages = import_messages.merge(originalMessages, knexMessages);
45909
+ const originalMessages = getMergableMessages$1(schema$2);
45910
+ const mergedMessages = import_messages$1.merge(originalMessages, knexMessages);
45911
45911
  prototype._definition.messages = mergedMessages;
45912
45912
  prototype._definition.flags.knexConnection = {
45913
45913
  default: void 0,
@@ -46051,6 +46051,43 @@ const knex = (schema$2, root$11, args$1) => {
46051
46051
  };
46052
46052
  return RootFactory.generate(root$11, schema$2, args$1);
46053
46053
  };
46054
+ var import_messages = __toESM(require_messages());
46055
+ const fqdnMessages = { "string.fqdn": "{{#label}} must be a valid fully qualified domain name" };
46056
+ const getMergableMessages = (schema$2) => {
46057
+ if ("_definition" in schema$2) {
46058
+ const def = schema$2._definition;
46059
+ if ("messages" in def && def.messages) if ("string" === typeof def.messages) return {};
46060
+ else return def.messages;
46061
+ }
46062
+ return {};
46063
+ };
46064
+ const fqdn = (schema$2, root$11, args$1) => {
46065
+ if (schema$2.type !== "string") return schema$2;
46066
+ const prototype = Object.getPrototypeOf(schema$2);
46067
+ const originalMessages = getMergableMessages(schema$2);
46068
+ const mergedMessages = import_messages.merge(originalMessages, fqdnMessages);
46069
+ prototype._definition.messages = mergedMessages;
46070
+ prototype._definition.rules.fqdn = {
46071
+ method() {
46072
+ return this.addRule("fqdn");
46073
+ },
46074
+ validate(value, helpers$8) {
46075
+ if ("string" !== typeof value || value.trim().length === 0) return void 0;
46076
+ if (value.includes("..")) return helpers$8.error("string.fqdn");
46077
+ const labels = value.split(".");
46078
+ for (const label of labels) {
46079
+ if (label.length === 0 || label.length > 63) return helpers$8.error("string.fqdn");
46080
+ if (label.startsWith("-") || label.endsWith("-")) return helpers$8.error("string.fqdn");
46081
+ if (!/^[a-zA-Z0-9-]+$/.test(label)) return helpers$8.error("string.fqdn");
46082
+ }
46083
+ return value;
46084
+ }
46085
+ };
46086
+ if (!prototype.fqdn) prototype.fqdn = function() {
46087
+ return this.$_addRule({ name: "fqdn" });
46088
+ };
46089
+ return RootFactory.generate(root$11, schema$2, args$1);
46090
+ };
46054
46091
  var De = (t$7) => {
46055
46092
  throw TypeError(t$7);
46056
46093
  };
@@ -140544,7 +140581,8 @@ const knownMessages = {
140544
140581
  ...messages$1,
140545
140582
  ...messages$2,
140546
140583
  ...messages,
140547
- ...knexMessages
140584
+ ...knexMessages,
140585
+ ...fqdnMessages
140548
140586
  };
140549
140587
  countries.forEach((name$2, iso) => {
140550
140588
  knownMessages[`country.${iso}`] = name$2;
@@ -140735,6 +140773,7 @@ const i18n = (toPatch) => {
140735
140773
  "string.uriCustomScheme": $t("string.uriCustomScheme"),
140736
140774
  "string.uriRelativeOnly": $t("string.uriRelativeOnly"),
140737
140775
  "string.uppercase": $t("string.uppercase"),
140776
+ ...fqdnMessages,
140738
140777
  ...knexTranslations
140739
140778
  });
140740
140779
  case "symbol": return applyMessagesToSchema(schema$2, {
@@ -143080,7 +143119,7 @@ const encode = (schema$2, options = {}) => {
143080
143119
  });
143081
143120
  }
143082
143121
  const json$1 = JSON.stringify({
143083
- version: "0.1.0-master-87fc6cd7",
143122
+ version: "0.1.0-master-1d06eb16",
143084
143123
  schema: description$2
143085
143124
  }, (key, value) => {
143086
143125
  if (typeof value === "bigint") return value.toString();
@@ -143128,14 +143167,14 @@ const decode = (base64, options = {}) => {
143128
143167
  });
143129
143168
  if (!isPlainObject(description$2) || !("version" in description$2) || !("schema" in description$2) || typeof description$2.version !== "string" || !isPlainObject(description$2.schema)) throw new TypeError("Not a valid encoded schema");
143130
143169
  const { version: schemaVersion, schema: schema$2 } = description$2;
143131
- if (import_semver.valid("0.1.0-master-87fc6cd7")) {
143170
+ if (import_semver.valid("0.1.0-master-1d06eb16")) {
143132
143171
  if (!import_semver.valid(import_semver.coerce(schemaVersion))) throw new TypeError(`Invalid schema version: ${schemaVersion}`);
143133
- if (import_semver.gt(import_semver.coerce(schemaVersion), "0.1.0-master-87fc6cd7")) throw new TypeError(`Schema version ${schemaVersion} is not compatible with current version 0.1.0-master-87fc6cd7`);
143172
+ if (import_semver.gt(import_semver.coerce(schemaVersion), "0.1.0-master-1d06eb16")) throw new TypeError(`Schema version ${schemaVersion} is not compatible with current version 0.1.0-master-1d06eb16`);
143134
143173
  }
143135
143174
  return validator.build(schema$2);
143136
143175
  };
143137
143176
  const Joi = RootFactory.create({
143138
- schemaTypeModifiers: [knex],
143177
+ schemaTypeModifiers: [knex, fqdn],
143139
143178
  shortcutsModifiers: []
143140
143179
  });
143141
143180
  const validator = patch(Joi.extend(bigint).extend(datetime).extend(phone));
@@ -144584,7 +144623,7 @@ init_esm();
144584
144623
  var import_lib = __toESM(require_lib$3());
144585
144624
  var import_lib$1 = __toESM(require_lib$2());
144586
144625
  var import_lib$2 = __toESM(require_lib());
144587
- const version = "0.1.0-master-87fc6cd7";
144626
+ const version = "0.1.0-master-1d06eb16";
144588
144627
  var ValidationError = import_lib$2.ValidationError;
144589
144628
  var location = import_lib$1.location;
144590
144629
  export { ValidationError, esm_exports as address, decode, encode, import_lib as formula, location, tlds, validator, version };