@tinacms/graphql 2.4.3 → 2.4.4

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.
@@ -41,6 +41,7 @@ export type IndexDefinition = {
41
41
  export type PadDefinition = {
42
42
  fillString: string;
43
43
  maxLength: number;
44
+ decimalPrecision?: number;
44
45
  };
45
46
  export type FilterOperand = string | number | boolean | string[] | number[];
46
47
  export type FilterCondition = {
@@ -53,6 +54,8 @@ export declare const REFS_COLLECTIONS_SORT_KEY = "__refs__";
53
54
  export declare const REFS_REFERENCE_FIELD = "__tina_ref__";
54
55
  export declare const REFS_PATH_FIELD = "__tina_ref_path__";
55
56
  export declare const DEFAULT_NUMERIC_LPAD = 4;
57
+ export declare const DEFAULT_NUMERIC_DECIMAL_PRECISION = 3;
58
+ export declare const DEFAULT_NUMERIC_PAD: PadDefinition;
56
59
  export declare const coerceFilterChainOperands: (filterChain: (BinaryFilter | TernaryFilter)[], escapeString?: StringEscaper) => (BinaryFilter | TernaryFilter)[];
57
60
  export declare const makeFilter: ({ filterChain, }: {
58
61
  filterChain?: (BinaryFilter | TernaryFilter)[];
package/dist/index.js CHANGED
@@ -3052,7 +3052,7 @@ var assertCheckboxGroupIsList = (field) => {
3052
3052
  var package_default = {
3053
3053
  name: "@tinacms/graphql",
3054
3054
  type: "module",
3055
- version: "2.4.3",
3055
+ version: "2.4.4",
3056
3056
  main: "dist/index.js",
3057
3057
  module: "./dist/index.js",
3058
3058
  files: [
@@ -3825,6 +3825,12 @@ var REFS_COLLECTIONS_SORT_KEY = "__refs__";
3825
3825
  var REFS_REFERENCE_FIELD = "__tina_ref__";
3826
3826
  var REFS_PATH_FIELD = "__tina_ref_path__";
3827
3827
  var DEFAULT_NUMERIC_LPAD = 4;
3828
+ var DEFAULT_NUMERIC_DECIMAL_PRECISION = 3;
3829
+ var DEFAULT_NUMERIC_PAD = {
3830
+ fillString: "0",
3831
+ maxLength: DEFAULT_NUMERIC_LPAD + 1 + DEFAULT_NUMERIC_DECIMAL_PRECISION,
3832
+ decimalPrecision: DEFAULT_NUMERIC_DECIMAL_PRECISION
3833
+ };
3828
3834
  var ensureUTC = (value) => {
3829
3835
  const s = String(value);
3830
3836
  if (s.includes("T") && !/[Zz]|[+-]\d{2}:\d{2}$/.test(s)) {
@@ -3837,14 +3843,21 @@ var parseDatetimeUTC = (value) => {
3837
3843
  const d = Number.isNaN(n) ? new Date(ensureUTC(String(value))) : new Date(n);
3838
3844
  return Number.isNaN(d.getTime()) ? String(value) : d.toISOString();
3839
3845
  };
3846
+ var padValue = (val, pad) => {
3847
+ if (pad.decimalPrecision !== void 0) {
3848
+ const n = Number(val);
3849
+ if (!Number.isNaN(n)) {
3850
+ return n.toFixed(pad.decimalPrecision).padStart(pad.maxLength, pad.fillString);
3851
+ }
3852
+ }
3853
+ return String(val).padStart(pad.maxLength, pad.fillString);
3854
+ };
3840
3855
  var applyPadding = (input, pad) => {
3841
3856
  if (pad) {
3842
3857
  if (Array.isArray(input)) {
3843
- return input.map(
3844
- (val) => String(val).padStart(pad.maxLength, pad.fillString)
3845
- );
3858
+ return input.map((val) => padValue(val, pad));
3846
3859
  } else {
3847
- return String(input).padStart(pad.maxLength, pad.fillString);
3860
+ return padValue(input, pad);
3848
3861
  }
3849
3862
  }
3850
3863
  return input;
@@ -4165,7 +4178,7 @@ var makeFilterChain = ({
4165
4178
  rightOperand: filterExpression[key1],
4166
4179
  operator: inferOperatorFromFilter(key1),
4167
4180
  type: _type,
4168
- pad: _type === "number" ? { fillString: "0", maxLength: DEFAULT_NUMERIC_LPAD } : void 0
4181
+ pad: _type === "number" ? DEFAULT_NUMERIC_PAD : void 0
4169
4182
  });
4170
4183
  } else if (key1 && key2) {
4171
4184
  const leftFilterOperator = getFilterOperator(filterExpression, "gt") || getFilterOperator(filterExpression, "gte") || getFilterOperator(filterExpression, "after") || void 0;
@@ -4188,7 +4201,7 @@ var makeFilterChain = ({
4188
4201
  leftOperator: inferOperatorFromFilter(leftFilterOperator),
4189
4202
  rightOperator: inferOperatorFromFilter(rightFilterOperator),
4190
4203
  type: _type,
4191
- pad: _type === "number" ? { fillString: "0", maxLength: DEFAULT_NUMERIC_LPAD } : void 0
4204
+ pad: _type === "number" ? DEFAULT_NUMERIC_PAD : void 0
4192
4205
  });
4193
4206
  } else {
4194
4207
  throw new Error(
@@ -7319,7 +7332,7 @@ var Database = class {
7319
7332
  name: field.name,
7320
7333
  type: field.type,
7321
7334
  list: !!field.list,
7322
- pad: field.type === "number" ? { fillString: "0", maxLength: DEFAULT_NUMERIC_LPAD } : void 0
7335
+ pad: field.type === "number" ? DEFAULT_NUMERIC_PAD : void 0
7323
7336
  }
7324
7337
  ]
7325
7338
  };
@@ -7336,7 +7349,7 @@ var Database = class {
7336
7349
  name: indexField.name,
7337
7350
  type: field?.type,
7338
7351
  list: !!field?.list,
7339
- pad: field?.type === "number" ? { fillString: "0", maxLength: DEFAULT_NUMERIC_LPAD } : void 0
7352
+ pad: field?.type === "number" ? DEFAULT_NUMERIC_PAD : void 0
7340
7353
  };
7341
7354
  })
7342
7355
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tinacms/graphql",
3
3
  "type": "module",
4
- "version": "2.4.3",
4
+ "version": "2.4.4",
5
5
  "main": "dist/index.js",
6
6
  "module": "./dist/index.js",
7
7
  "files": [
@@ -43,8 +43,8 @@
43
43
  "normalize-path": "^3.0.0",
44
44
  "readable-stream": "^4.7.0",
45
45
  "yup": "^1.6.1",
46
- "@tinacms/schema-tools": "2.8.1",
47
- "@tinacms/mdx": "2.1.6"
46
+ "@tinacms/mdx": "2.1.6",
47
+ "@tinacms/schema-tools": "2.8.1"
48
48
  },
49
49
  "publishConfig": {
50
50
  "registry": "https://registry.npmjs.org"