hypertune
Version:
[Hypertune](https://www.hypertune.com/) is the most flexible platform for feature flags, A/B testing, analytics and app configuration. Built with full end-to-end type-safety, Git-style version control and local, synchronous, in-memory flag evaluation. Opt
102 lines • 4.69 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.DimensionType = exports.LogType = exports.LogLevel = exports.requestTypes = exports.ApplicationExpressionType = exports.VariableExpressionType = exports.FunctionExpressionType = exports.LogEventExpressionType = exports.ContinuousDimensionType = exports.DiscreteDimensionType = exports.SplitExpressionType = exports.GetUrlQueryParameterExpressionType = exports.StringConcatExpressionType = exports.StringifyNumberExpressionType = exports.RoundNumberExpressionType = exports.ArithmeticExpressionType = exports.arithmeticOperators = exports.ComparisonExpressionType = exports.EnumSwitchExpressionType = exports.SwitchExpressionType = exports.ListExpressionType = exports.UpdateObjectExpressionType = exports.GetFieldExpressionType = exports.ObjectExpressionType = exports.EnumExpressionType = exports.RegexExpressionType = exports.StringExpressionType = exports.FloatExpressionType = exports.IntExpressionType = exports.BooleanExpressionType = exports.NoOpExpressionType = void 0;
exports.isQueryVariable = isQueryVariable;
/* eslint-disable unused-imports/no-unused-vars */
/* eslint-disable capitalized-comments */
const constants_1 = require("./constants");
exports.NoOpExpressionType = "NoOpExpression";
exports.BooleanExpressionType = "BooleanExpression";
exports.IntExpressionType = "IntExpression";
exports.FloatExpressionType = "FloatExpression";
exports.StringExpressionType = "StringExpression";
exports.RegexExpressionType = "RegexExpression";
exports.EnumExpressionType = "EnumExpression";
exports.ObjectExpressionType = "ObjectExpression";
exports.GetFieldExpressionType = "GetFieldExpression";
exports.UpdateObjectExpressionType = "UpdateObjectExpression";
exports.ListExpressionType = "ListExpression";
exports.SwitchExpressionType = "SwitchExpression";
exports.EnumSwitchExpressionType = "EnumSwitchExpression";
const comparisonOperators = [
"==",
"!=",
"<",
"<=",
">",
">=",
"AND",
"OR",
"in",
"notIn",
"startsWith",
"notStartsWith",
"endsWith",
"notEndsWith",
"contains",
"notContains",
"matches",
"notMatches",
];
exports.ComparisonExpressionType = "ComparisonExpression";
exports.arithmeticOperators = ["+", "-", "*", "/", "POW", "MOD"];
exports.ArithmeticExpressionType = "ArithmeticExpression";
exports.RoundNumberExpressionType = "RoundNumberExpression";
exports.StringifyNumberExpressionType = "StringifyNumberExpression";
exports.StringConcatExpressionType = "StringConcatExpression";
exports.GetUrlQueryParameterExpressionType = "GetUrlQueryParameterExpression";
exports.SplitExpressionType = "SplitExpression";
exports.DiscreteDimensionType = "discrete";
exports.ContinuousDimensionType = "continuous";
exports.LogEventExpressionType = "LogEventExpression";
exports.FunctionExpressionType = "FunctionExpression";
exports.VariableExpressionType = "VariableExpression";
exports.ApplicationExpressionType = "ApplicationExpression";
function isQueryVariable(value) {
return (typeof value === "object" && value !== null && constants_1.isQueryVariableKey in value);
}
exports.requestTypes = [
"codegen",
"graphql",
"init",
"hash",
"js",
"schema",
];
// Compiler check to ensure the two types remain compatible.
const typedQueryToGeneric = {};
const typedGenericQueryToTyped = {};
// eslint-disable-next-line no-shadow
var LogLevel;
(function (LogLevel) {
LogLevel["Debug"] = "Debug";
LogLevel["Error"] = "Error";
LogLevel["Info"] = "Info";
LogLevel["Warn"] = "Warn";
})(LogLevel || (exports.LogLevel = LogLevel = {}));
// eslint-disable-next-line no-shadow
var LogType;
(function (LogType) {
/** Codegen requests handled by Hypertune Edge */
LogType["Codegen"] = "Codegen";
/** GraphQL requests handled by Hypertune Edge */
LogType["GraphQl"] = "GraphQL";
/** Init requests handled by Hypertune Edge */
LogType["Init"] = "Init";
/** JS requests handled by Hypertune Edge */
LogType["Js"] = "JS";
/** SDK logs that aren't related to a specific Node */
LogType["SdkMessage"] = "SDKMessage";
/** SDK logs related to a specific Node */
LogType["SdkNode"] = "SDKNode";
/** Schema requests handled by Hypertune Edge */
// eslint-disable-next-line no-shadow
LogType["Schema"] = "Schema";
})(LogType || (exports.LogType = LogType = {}));
// eslint-disable-next-line no-shadow
var DimensionType;
(function (DimensionType) {
DimensionType["Continuous"] = "Continuous";
DimensionType["Discrete"] = "Discrete";
})(DimensionType || (exports.DimensionType = DimensionType = {}));
//# sourceMappingURL=types.js.map