lucid-extension-sdk 0.0.248 → 0.0.250

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.
@@ -90,6 +90,7 @@ export declare function strictObjectValidator<T extends {
90
90
  [key: string]: (p1: unknown) => p1 is unknown;
91
91
  }>(validatorStructure: T): (subject: unknown) => subject is DestructureGuardedTypeObj<T>;
92
92
  export declare function recordValidator<K extends string, V>(keyList: K[], valueValidator: Validator<V>): (x: unknown) => x is Record<K, V>;
93
+ export declare function typedRecordValidator<K extends string | number | symbol, V>(keyValidator: Validator<K>, valueValidator: Validator<V>): (x: unknown) => x is Record<K, V>;
93
94
  export declare function objectOfValidator<T>(subValidator: Validator<T>): (x: unknown) => x is Record<any, T>;
94
95
  /**
95
96
  * Create a validator which allows the target to be either null or satisfy the
@@ -185,6 +186,7 @@ export declare const isRestrictions: (subject: unknown) => subject is Destructur
185
186
  */
186
187
  export declare function isFlag(x: unknown): x is 0 | 1 | boolean;
187
188
  export declare function isTrue(x: unknown): x is true;
189
+ export declare function isFalse(x: unknown): x is false;
188
190
  /**
189
191
  * Returns if an object is a number between 0 and 100.
190
192
  *
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.asAssertion = exports.validatorWithMessage = exports.minLengthValidator = exports.maxLengthValidator = exports.isDate = exports.isPositiveNumber = exports.isSize = exports.isPanelSize = exports.isBoundingBox = exports.isPointLike = exports.isOpacity = exports.isTrue = exports.isFlag = exports.isRestrictions = exports.isStringOrNegativeOne = exports.isBooleanOrEmptyString = exports.isNumberOrEmptyString = exports.isSet = exports.propertyValidator = exports.exclude = exports.both = exports.either = exports.isNullOption = exports.nullableOption = exports.option = exports.nullable = exports.objectOfValidator = exports.recordValidator = exports.strictObjectValidator = exports.partialObjectValidator = exports.objectValidator = exports.mapValidator = exports.someValidator = exports.someValue = exports.tupleValidator = exports.arrayValidator = exports.rangeValidator = exports.enumValidator = exports.stringEnumValidator = void 0;
3
+ exports.asAssertion = exports.validatorWithMessage = exports.minLengthValidator = exports.maxLengthValidator = exports.isDate = exports.isPositiveNumber = exports.isSize = exports.isPanelSize = exports.isBoundingBox = exports.isPointLike = exports.isOpacity = exports.isFalse = exports.isTrue = exports.isFlag = exports.isRestrictions = exports.isStringOrNegativeOne = exports.isBooleanOrEmptyString = exports.isNumberOrEmptyString = exports.isSet = exports.propertyValidator = exports.exclude = exports.both = exports.either = exports.isNullOption = exports.nullableOption = exports.option = exports.nullable = exports.objectOfValidator = exports.typedRecordValidator = exports.recordValidator = exports.strictObjectValidator = exports.partialObjectValidator = exports.objectValidator = exports.mapValidator = exports.someValidator = exports.someValue = exports.tupleValidator = exports.arrayValidator = exports.rangeValidator = exports.enumValidator = exports.stringEnumValidator = void 0;
4
4
  const checks_1 = require("../checks");
5
5
  const object_1 = require("../object");
6
6
  /*********************************************************************************
@@ -192,6 +192,15 @@ function recordValidator(keyList, valueValidator) {
192
192
  };
193
193
  }
194
194
  exports.recordValidator = recordValidator;
195
+ function typedRecordValidator(keyValidator, valueValidator) {
196
+ return (x) => {
197
+ if ((0, checks_1.isArray)(x) || !(0, checks_1.isObject)(x)) {
198
+ return false;
199
+ }
200
+ return Object.keys(x).every((key) => keyValidator(key)) && Object.values(x).every((val) => valueValidator(val));
201
+ };
202
+ }
203
+ exports.typedRecordValidator = typedRecordValidator;
195
204
  function objectOfValidator(subValidator) {
196
205
  return (x) => {
197
206
  if ((0, checks_1.isArray)(x) || !(0, checks_1.isObject)(x)) {
@@ -337,6 +346,10 @@ function isTrue(x) {
337
346
  return x === true;
338
347
  }
339
348
  exports.isTrue = isTrue;
349
+ function isFalse(x) {
350
+ return x === false;
351
+ }
352
+ exports.isFalse = isFalse;
340
353
  /**
341
354
  * Returns if an object is a number between 0 and 100.
342
355
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lucid-extension-sdk",
3
- "version": "0.0.248",
3
+ "version": "0.0.250",
4
4
  "description": "Utility classes for writing Lucid Software editor extensions",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",