bruce-models 1.8.4 → 1.8.5

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.
@@ -2086,6 +2086,7 @@ var Calculator;
2086
2086
  /**
2087
2087
  * Calculates the value of arbitrary field options.
2088
2088
  * The context calling this should validate results and parse stuff if needed.
2089
+ * @deprecated use specific calls: eg GetColor or GetNumber.
2089
2090
  * @param fields
2090
2091
  * @param entity
2091
2092
  * @param tags
@@ -2190,6 +2191,77 @@ var Calculator;
2190
2191
  return null;
2191
2192
  }
2192
2193
  Calculator.GetColor = GetColor;
2194
+ function GetNumber(fields, entity, tags) {
2195
+ if (!tags) {
2196
+ tags = [];
2197
+ }
2198
+ if (!entity) {
2199
+ entity = {};
2200
+ }
2201
+ for (let i = 0; i < fields.length; i++) {
2202
+ const field = fields[i];
2203
+ let value;
2204
+ switch (field.type) {
2205
+ case EValueType.Gradient:
2206
+ value = Number(GetGradientValue(field.value, entity));
2207
+ break;
2208
+ case EValueType.Color:
2209
+ case EValueType.Input:
2210
+ value = Number(GetInputValue(field.value, entity));
2211
+ break;
2212
+ case EValueType.Mapping:
2213
+ value = Number(GetMappingValue(field.value, entity));
2214
+ break;
2215
+ }
2216
+ if (value || value == 0) {
2217
+ return value;
2218
+ }
2219
+ }
2220
+ return null;
2221
+ }
2222
+ Calculator.GetNumber = GetNumber;
2223
+ function GetString(fields, entity, tags) {
2224
+ if (!tags) {
2225
+ tags = [];
2226
+ }
2227
+ if (!entity) {
2228
+ entity = {};
2229
+ }
2230
+ for (let i = 0; i < fields.length; i++) {
2231
+ const field = fields[i];
2232
+ let value;
2233
+ switch (field.type) {
2234
+ case EValueType.Gradient:
2235
+ value = String(GetGradientValue(field.value, entity));
2236
+ break;
2237
+ case EValueType.Color:
2238
+ case EValueType.Input:
2239
+ value = String(GetInputValue(field.value, entity));
2240
+ break;
2241
+ case EValueType.Mapping:
2242
+ value = String(GetMappingValue(field.value, entity));
2243
+ break;
2244
+ case EValueType.RandomColor:
2245
+ var color = Color.RandomColor();
2246
+ value = `rgba(${color.red},${color.green},${color.blue},${color.alpha})`;
2247
+ break;
2248
+ case EValueType.TagColor:
2249
+ for (let i = 0; i < tags.length; i++) {
2250
+ const tag = tags[i];
2251
+ if (tag.Color) {
2252
+ value = tag.Color;
2253
+ break;
2254
+ }
2255
+ }
2256
+ break;
2257
+ }
2258
+ if (value) {
2259
+ return value;
2260
+ }
2261
+ }
2262
+ return null;
2263
+ }
2264
+ Calculator.GetString = GetString;
2193
2265
  function GetMappingValue(value, entity) {
2194
2266
  const attrPath = parseLegacyPath(value.field);
2195
2267
  let eValue = Entity.GetValue({