| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- "use strict";
- // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.safeJSON = exports.maybeCoerceBoolean = exports.maybeCoerceFloat = exports.maybeCoerceInteger = exports.coerceBoolean = exports.coerceFloat = exports.coerceInteger = exports.validatePositiveInteger = exports.ensurePresent = exports.isReadonlyArray = exports.isArray = exports.isAbsoluteURL = void 0;
- exports.maybeObj = maybeObj;
- exports.isEmptyObj = isEmptyObj;
- exports.hasOwn = hasOwn;
- exports.isObj = isObj;
- const error_1 = require("../../core/error.js");
- // https://url.spec.whatwg.org/#url-scheme-string
- const startsWithSchemeRegexp = /^[a-z][a-z0-9+.-]*:/i;
- const isAbsoluteURL = (url) => {
- return startsWithSchemeRegexp.test(url);
- };
- exports.isAbsoluteURL = isAbsoluteURL;
- let isArray = (val) => ((exports.isArray = Array.isArray), (0, exports.isArray)(val));
- exports.isArray = isArray;
- exports.isReadonlyArray = exports.isArray;
- /** Returns an object if the given value isn't an object, otherwise returns as-is */
- function maybeObj(x) {
- if (typeof x !== 'object') {
- return {};
- }
- return x ?? {};
- }
- // https://stackoverflow.com/a/34491287
- function isEmptyObj(obj) {
- if (!obj)
- return true;
- for (const _k in obj)
- return false;
- return true;
- }
- // https://eslint.org/docs/latest/rules/no-prototype-builtins
- function hasOwn(obj, key) {
- return Object.prototype.hasOwnProperty.call(obj, key);
- }
- function isObj(obj) {
- return obj != null && typeof obj === 'object' && !Array.isArray(obj);
- }
- const ensurePresent = (value) => {
- if (value == null) {
- throw new error_1.OpenAIError(`Expected a value to be given but received ${value} instead.`);
- }
- return value;
- };
- exports.ensurePresent = ensurePresent;
- const validatePositiveInteger = (name, n) => {
- if (typeof n !== 'number' || !Number.isInteger(n)) {
- throw new error_1.OpenAIError(`${name} must be an integer`);
- }
- if (n < 0) {
- throw new error_1.OpenAIError(`${name} must be a positive integer`);
- }
- return n;
- };
- exports.validatePositiveInteger = validatePositiveInteger;
- const coerceInteger = (value) => {
- if (typeof value === 'number')
- return Math.round(value);
- if (typeof value === 'string')
- return parseInt(value, 10);
- throw new error_1.OpenAIError(`Could not coerce ${value} (type: ${typeof value}) into a number`);
- };
- exports.coerceInteger = coerceInteger;
- const coerceFloat = (value) => {
- if (typeof value === 'number')
- return value;
- if (typeof value === 'string')
- return parseFloat(value);
- throw new error_1.OpenAIError(`Could not coerce ${value} (type: ${typeof value}) into a number`);
- };
- exports.coerceFloat = coerceFloat;
- const coerceBoolean = (value) => {
- if (typeof value === 'boolean')
- return value;
- if (typeof value === 'string')
- return value === 'true';
- return Boolean(value);
- };
- exports.coerceBoolean = coerceBoolean;
- const maybeCoerceInteger = (value) => {
- if (value == null) {
- return undefined;
- }
- return (0, exports.coerceInteger)(value);
- };
- exports.maybeCoerceInteger = maybeCoerceInteger;
- const maybeCoerceFloat = (value) => {
- if (value == null) {
- return undefined;
- }
- return (0, exports.coerceFloat)(value);
- };
- exports.maybeCoerceFloat = maybeCoerceFloat;
- const maybeCoerceBoolean = (value) => {
- if (value == null) {
- return undefined;
- }
- return (0, exports.coerceBoolean)(value);
- };
- exports.maybeCoerceBoolean = maybeCoerceBoolean;
- const safeJSON = (text) => {
- try {
- return JSON.parse(text);
- }
- catch (err) {
- return undefined;
- }
- };
- exports.safeJSON = safeJSON;
- //# sourceMappingURL=values.js.map
|