@rex0220/kintone-sql-tools 3.29.0 → 3.31.0

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.
@@ -5,29 +5,13 @@
5
5
  "imports": [],
6
6
  "format": "esm"
7
7
  },
8
- "src/lexer/tokens.ts": {
9
- "bytes": 9355,
10
- "imports": [],
11
- "format": "esm"
12
- },
13
- "src/lexer/lexer.ts": {
14
- "bytes": 14244,
15
- "imports": [
16
- {
17
- "path": "src/lexer/tokens.ts",
18
- "kind": "import-statement",
19
- "original": "./tokens"
20
- }
21
- ],
22
- "format": "esm"
23
- },
24
8
  "src/core/exactDecimal.ts": {
25
9
  "bytes": 4428,
26
10
  "imports": [],
27
11
  "format": "esm"
28
12
  },
29
13
  "src/types/ast.ts": {
30
- "bytes": 34493,
14
+ "bytes": 34594,
31
15
  "imports": [
32
16
  {
33
17
  "path": "src/core/exactDecimal.ts",
@@ -42,60 +26,8 @@
42
26
  "imports": [],
43
27
  "format": "esm"
44
28
  },
45
- "src/core/aggregateExpression.ts": {
46
- "bytes": 5204,
47
- "imports": [
48
- {
49
- "path": "src/types/ast.ts",
50
- "kind": "import-statement",
51
- "original": "../types/ast"
52
- }
53
- ],
54
- "format": "esm"
55
- },
56
- "src/core/relativeDateFunction.ts": {
57
- "bytes": 1169,
58
- "imports": [],
59
- "format": "esm"
60
- },
61
- "src/parser/parser.ts": {
62
- "bytes": 166811,
63
- "imports": [
64
- {
65
- "path": "src/lexer/tokens.ts",
66
- "kind": "import-statement",
67
- "original": "../lexer/tokens"
68
- },
69
- {
70
- "path": "src/types/ast.ts",
71
- "kind": "import-statement",
72
- "original": "../types/ast"
73
- },
74
- {
75
- "path": "src/core/grouping.ts",
76
- "kind": "import-statement",
77
- "original": "../core/grouping"
78
- },
79
- {
80
- "path": "src/core/aggregateExpression.ts",
81
- "kind": "import-statement",
82
- "original": "../core/aggregateExpression"
83
- },
84
- {
85
- "path": "src/types/ast.ts",
86
- "kind": "import-statement",
87
- "original": "../types/ast"
88
- },
89
- {
90
- "path": "src/core/relativeDateFunction.ts",
91
- "kind": "import-statement",
92
- "original": "../core/relativeDateFunction"
93
- }
94
- ],
95
- "format": "esm"
96
- },
97
29
  "src/core/dmlGuard.ts": {
98
- "bytes": 9379,
30
+ "bytes": 8747,
99
31
  "imports": [
100
32
  {
101
33
  "path": "src/types/ast.ts",
@@ -110,6 +42,11 @@
110
42
  ],
111
43
  "format": "esm"
112
44
  },
45
+ "src/core/relativeDateFunction.ts": {
46
+ "bytes": 1169,
47
+ "imports": [],
48
+ "format": "esm"
49
+ },
113
50
  "src/core/applyPatchScope.ts": {
114
51
  "bytes": 25751,
115
52
  "imports": [
@@ -158,8 +95,19 @@
158
95
  ],
159
96
  "format": "esm"
160
97
  },
98
+ "src/core/aggregateExpression.ts": {
99
+ "bytes": 5361,
100
+ "imports": [
101
+ {
102
+ "path": "src/types/ast.ts",
103
+ "kind": "import-statement",
104
+ "original": "../types/ast"
105
+ }
106
+ ],
107
+ "format": "esm"
108
+ },
161
109
  "src/converter/selectToKintone.ts": {
162
- "bytes": 28156,
110
+ "bytes": 29571,
163
111
  "imports": [
164
112
  {
165
113
  "path": "../types/ast",
@@ -326,6 +274,58 @@
326
274
  ],
327
275
  "format": "esm"
328
276
  },
277
+ "src/lexer/tokens.ts": {
278
+ "bytes": 9355,
279
+ "imports": [],
280
+ "format": "esm"
281
+ },
282
+ "src/lexer/lexer.ts": {
283
+ "bytes": 14244,
284
+ "imports": [
285
+ {
286
+ "path": "src/lexer/tokens.ts",
287
+ "kind": "import-statement",
288
+ "original": "./tokens"
289
+ }
290
+ ],
291
+ "format": "esm"
292
+ },
293
+ "src/parser/parser.ts": {
294
+ "bytes": 167357,
295
+ "imports": [
296
+ {
297
+ "path": "src/lexer/tokens.ts",
298
+ "kind": "import-statement",
299
+ "original": "../lexer/tokens"
300
+ },
301
+ {
302
+ "path": "src/types/ast.ts",
303
+ "kind": "import-statement",
304
+ "original": "../types/ast"
305
+ },
306
+ {
307
+ "path": "src/core/grouping.ts",
308
+ "kind": "import-statement",
309
+ "original": "../core/grouping"
310
+ },
311
+ {
312
+ "path": "src/core/aggregateExpression.ts",
313
+ "kind": "import-statement",
314
+ "original": "../core/aggregateExpression"
315
+ },
316
+ {
317
+ "path": "src/types/ast.ts",
318
+ "kind": "import-statement",
319
+ "original": "../types/ast"
320
+ },
321
+ {
322
+ "path": "src/core/relativeDateFunction.ts",
323
+ "kind": "import-statement",
324
+ "original": "../core/relativeDateFunction"
325
+ }
326
+ ],
327
+ "format": "esm"
328
+ },
329
329
  "src/core/fieldSemantics.ts": {
330
330
  "bytes": 3603,
331
331
  "imports": [],
@@ -348,7 +348,7 @@
348
348
  "format": "esm"
349
349
  },
350
350
  "src/engine/evalFunc.ts": {
351
- "bytes": 28682,
351
+ "bytes": 28831,
352
352
  "imports": [
353
353
  {
354
354
  "path": "src/types/ast.ts",
@@ -436,7 +436,7 @@
436
436
  "format": "esm"
437
437
  },
438
438
  "src/converter/dmlToKintone.ts": {
439
- "bytes": 26815,
439
+ "bytes": 27109,
440
440
  "imports": [
441
441
  {
442
442
  "path": "src/core/dmlCustomCheck.ts",
@@ -560,7 +560,7 @@
560
560
  "format": "esm"
561
561
  },
562
562
  "src/core/existingRecordValidation.ts": {
563
- "bytes": 6056,
563
+ "bytes": 6562,
564
564
  "imports": [
565
565
  {
566
566
  "path": "src/core/dmlValidationCandidates.ts",
@@ -885,8 +885,13 @@
885
885
  ],
886
886
  "format": "esm"
887
887
  },
888
+ "src/core/emptyWildcardSchema.ts": {
889
+ "bytes": 2525,
890
+ "imports": [],
891
+ "format": "esm"
892
+ },
888
893
  "src/engine/process.ts": {
889
- "bytes": 66581,
894
+ "bytes": 66734,
890
895
  "imports": [
891
896
  {
892
897
  "path": "src/types/ast.ts",
@@ -1161,7 +1166,7 @@
1161
1166
  "format": "esm"
1162
1167
  },
1163
1168
  "src/execute.ts": {
1164
- "bytes": 454115,
1169
+ "bytes": 466368,
1165
1170
  "imports": [
1166
1171
  {
1167
1172
  "path": "src/lexer/lexer.ts",
@@ -1363,6 +1368,11 @@
1363
1368
  "kind": "import-statement",
1364
1369
  "original": "./core/systemFields"
1365
1370
  },
1371
+ {
1372
+ "path": "src/core/emptyWildcardSchema.ts",
1373
+ "kind": "import-statement",
1374
+ "original": "./core/emptyWildcardSchema"
1375
+ },
1366
1376
  {
1367
1377
  "path": "src/core/like.ts",
1368
1378
  "kind": "import-statement",
@@ -1497,13 +1507,18 @@
1497
1507
  "format": "esm"
1498
1508
  },
1499
1509
  "src/engine-library/errors.ts": {
1500
- "bytes": 3714,
1510
+ "bytes": 4234,
1501
1511
  "imports": [
1502
1512
  {
1503
1513
  "path": "src/api/fetchAll.ts",
1504
1514
  "kind": "import-statement",
1505
1515
  "original": "../api/fetchAll"
1506
1516
  },
1517
+ {
1518
+ "path": "src/core/batch.ts",
1519
+ "kind": "import-statement",
1520
+ "original": "../core/batch"
1521
+ },
1507
1522
  {
1508
1523
  "path": "src/execute.ts",
1509
1524
  "kind": "import-statement",
@@ -1665,7 +1680,7 @@
1665
1680
  "format": "esm"
1666
1681
  },
1667
1682
  "src/engine-library/statementGuard.ts": {
1668
- "bytes": 4597,
1683
+ "bytes": 5196,
1669
1684
  "imports": [
1670
1685
  {
1671
1686
  "path": "src/core/sql.ts",
@@ -1696,7 +1711,7 @@
1696
1711
  "format": "esm"
1697
1712
  },
1698
1713
  "src/engine-library/batch.ts": {
1699
- "bytes": 3529,
1714
+ "bytes": 3702,
1700
1715
  "imports": [
1701
1716
  {
1702
1717
  "path": "src/execute.ts",
@@ -1737,7 +1752,7 @@
1737
1752
  "format": "esm"
1738
1753
  },
1739
1754
  "src/engine-library/query.ts": {
1740
- "bytes": 2547,
1755
+ "bytes": 3413,
1741
1756
  "imports": [
1742
1757
  {
1743
1758
  "path": "src/execute.ts",
@@ -1778,7 +1793,7 @@
1778
1793
  "format": "esm"
1779
1794
  },
1780
1795
  "src/engine-library/index.ts": {
1781
- "bytes": 1101,
1796
+ "bytes": 1160,
1782
1797
  "imports": [
1783
1798
  {
1784
1799
  "path": "src/engine-library/errors.ts",
@@ -1834,12 +1849,6 @@
1834
1849
  "src/api/fetchAll.ts": {
1835
1850
  "bytesInOutput": 2625
1836
1851
  },
1837
- "src/lexer/tokens.ts": {
1838
- "bytesInOutput": 2262
1839
- },
1840
- "src/lexer/lexer.ts": {
1841
- "bytesInOutput": 5893
1842
- },
1843
1852
  "src/core/exactDecimal.ts": {
1844
1853
  "bytesInOutput": 1764
1845
1854
  },
@@ -1849,18 +1858,12 @@
1849
1858
  "src/core/grouping.ts": {
1850
1859
  "bytesInOutput": 1284
1851
1860
  },
1852
- "src/core/aggregateExpression.ts": {
1853
- "bytesInOutput": 2592
1861
+ "src/core/dmlGuard.ts": {
1862
+ "bytesInOutput": 2773
1854
1863
  },
1855
1864
  "src/core/relativeDateFunction.ts": {
1856
1865
  "bytesInOutput": 427
1857
1866
  },
1858
- "src/parser/parser.ts": {
1859
- "bytesInOutput": 92192
1860
- },
1861
- "src/core/dmlGuard.ts": {
1862
- "bytesInOutput": 2857
1863
- },
1864
1867
  "src/core/applyPatchScope.ts": {
1865
1868
  "bytesInOutput": 12612
1866
1869
  },
@@ -1873,8 +1876,11 @@
1873
1876
  "src/converter/whereToKintone.ts": {
1874
1877
  "bytesInOutput": 5075
1875
1878
  },
1879
+ "src/core/aggregateExpression.ts": {
1880
+ "bytesInOutput": 2730
1881
+ },
1876
1882
  "src/converter/selectToKintone.ts": {
1877
- "bytesInOutput": 8915
1883
+ "bytesInOutput": 9456
1878
1884
  },
1879
1885
  "src/core/cteInlining.ts": {
1880
1886
  "bytesInOutput": 1224
@@ -1898,7 +1904,16 @@
1898
1904
  "bytesInOutput": 5175
1899
1905
  },
1900
1906
  "src/core/batch.ts": {
1901
- "bytesInOutput": 5499
1907
+ "bytesInOutput": 5518
1908
+ },
1909
+ "src/lexer/tokens.ts": {
1910
+ "bytesInOutput": 2262
1911
+ },
1912
+ "src/lexer/lexer.ts": {
1913
+ "bytesInOutput": 5893
1914
+ },
1915
+ "src/parser/parser.ts": {
1916
+ "bytesInOutput": 92581
1902
1917
  },
1903
1918
  "src/core/fieldSemantics.ts": {
1904
1919
  "bytesInOutput": 1368
@@ -1907,25 +1922,25 @@
1907
1922
  "bytesInOutput": 2804
1908
1923
  },
1909
1924
  "src/engine/evalFunc.ts": {
1910
- "bytesInOutput": 11162
1925
+ "bytesInOutput": 11292
1911
1926
  },
1912
1927
  "src/engine/evalWhere.ts": {
1913
- "bytesInOutput": 5752
1928
+ "bytesInOutput": 5761
1914
1929
  },
1915
1930
  "src/core/dmlCustomCheck.ts": {
1916
- "bytesInOutput": 1250
1931
+ "bytesInOutput": 1251
1917
1932
  },
1918
1933
  "src/converter/dmlToKintone.ts": {
1919
- "bytesInOutput": 10192
1934
+ "bytesInOutput": 10445
1920
1935
  },
1921
1936
  "src/core/applyMultiValuePlan.ts": {
1922
1937
  "bytesInOutput": 1485
1923
1938
  },
1924
1939
  "src/core/applyPatchPlanner.ts": {
1925
- "bytesInOutput": 9946
1940
+ "bytesInOutput": 9947
1926
1941
  },
1927
1942
  "src/converter/applyPatchToKintone.ts": {
1928
- "bytesInOutput": 4478
1943
+ "bytesInOutput": 4501
1929
1944
  },
1930
1945
  "src/core/numberPrecision.ts": {
1931
1946
  "bytesInOutput": 870
@@ -1937,7 +1952,7 @@
1937
1952
  "bytesInOutput": 2802
1938
1953
  },
1939
1954
  "src/core/existingRecordValidation.ts": {
1940
- "bytesInOutput": 3341
1955
+ "bytesInOutput": 3491
1941
1956
  },
1942
1957
  "src/core/postImageValidation.ts": {
1943
1958
  "bytesInOutput": 2207
@@ -2005,8 +2020,11 @@
2005
2020
  "src/core/optimization/plainGroupByPlan.ts": {
2006
2021
  "bytesInOutput": 2656
2007
2022
  },
2023
+ "src/core/emptyWildcardSchema.ts": {
2024
+ "bytesInOutput": 1068
2025
+ },
2008
2026
  "src/engine/process.ts": {
2009
- "bytesInOutput": 19954
2027
+ "bytesInOutput": 20100
2010
2028
  },
2011
2029
  "src/converter/subtableAdapter.ts": {
2012
2030
  "bytesInOutput": 643
@@ -2066,10 +2084,10 @@
2066
2084
  "bytesInOutput": 412
2067
2085
  },
2068
2086
  "src/execute.ts": {
2069
- "bytesInOutput": 173320
2087
+ "bytesInOutput": 182489
2070
2088
  },
2071
2089
  "src/engine-library/errors.ts": {
2072
- "bytesInOutput": 1306
2090
+ "bytesInOutput": 1441
2073
2091
  },
2074
2092
  "src/api/cursorLeaseManager.ts": {
2075
2093
  "bytesInOutput": 1777
@@ -2108,13 +2126,13 @@
2108
2126
  "bytesInOutput": 236
2109
2127
  },
2110
2128
  "src/engine-library/statementGuard.ts": {
2111
- "bytesInOutput": 1704
2129
+ "bytesInOutput": 1779
2112
2130
  },
2113
2131
  "src/engine-library/batch.ts": {
2114
- "bytesInOutput": 896
2132
+ "bytesInOutput": 909
2115
2133
  },
2116
2134
  "src/engine-library/query.ts": {
2117
- "bytesInOutput": 603
2135
+ "bytesInOutput": 950
2118
2136
  },
2119
2137
  "src/engine-library/index.ts": {
2120
2138
  "bytesInOutput": 16
@@ -2126,7 +2144,7 @@
2126
2144
  "bytesInOutput": 127
2127
2145
  }
2128
2146
  },
2129
- "bytes": 524605
2147
+ "bytes": 537128
2130
2148
  }
2131
2149
  }
2132
2150
  }
@@ -31,12 +31,29 @@ export interface ReadonlyAppInfo {
31
31
  name: string;
32
32
  description: string;
33
33
  }
34
+ /**
35
+ * Read-only field metadata supplied to the engine.
36
+ *
37
+ * `VALIDATE` only checks constraints present in this metadata. If a BYO client
38
+ * omits `optionOrder`, `required`, or the min/max metadata below, those
39
+ * constraints are not validated and the result can silently contain zero
40
+ * errors. BYO clients must pass the corresponding values from
41
+ * `/k/v1/app/form/fields.json`.
42
+ *
43
+ * `createReadonlyKintoneClient()` supplies these values automatically, so its
44
+ * users do not need to change their client.
45
+ */
34
46
  export interface ReadonlyFieldInfo {
35
47
  code: string;
36
48
  label: string;
37
49
  fieldType: string;
38
50
  optionOrder?: Record<string, number>;
39
51
  sortKind?: "number" | "string";
52
+ required?: boolean;
53
+ minValue?: string;
54
+ maxValue?: string;
55
+ minLength?: string;
56
+ maxLength?: string;
40
57
  inSubtable?: boolean;
41
58
  subtableCode?: string;
42
59
  }
@@ -112,6 +129,13 @@ export interface QueryMetrics {
112
129
  elapsedMs: number;
113
130
  cursorRecordsScanned: number;
114
131
  }
132
+ export type ValidateConstraintCategory = "required" | "length" | "range" | "choice";
133
+ export interface ValidateConstraintMetadata {
134
+ /** Constraint categories present on the fields targeted by VALIDATE. */
135
+ present: ValidateConstraintCategory[];
136
+ /** Known constraint categories absent from the fields targeted by VALIDATE. */
137
+ absent: ValidateConstraintCategory[];
138
+ }
115
139
  export interface QueryResult {
116
140
  type: "query";
117
141
  rows: readonly Readonly<Record<string, string>>[];
@@ -122,6 +146,7 @@ export interface QueryResult {
122
146
  validateStats?: {
123
147
  errorRecords: number;
124
148
  errorCount: number;
149
+ constraintMetadata?: ValidateConstraintMetadata;
125
150
  };
126
151
  metrics: QueryMetrics;
127
152
  }
@@ -5,7 +5,6 @@ import type { ExplainResult, QueryResult, RunQueryOptions } from "./publicTypes"
5
5
  */
6
6
  export declare function runQuery(sql: string, options: RunQueryOptions): Promise<QueryResult>;
7
7
  /**
8
- * Explains one SELECT, WITH, or UNION query without reading records.
9
- * CREATE TEMP TABLE is not accepted; explain its source SELECT instead.
8
+ * Explains read-only statements and batches without reading records.
10
9
  */
11
10
  export declare function explainQuery(sql: string, options: Omit<RunQueryOptions, "onLimitReached">): Promise<ExplainResult>;