@cyanheads/eurostat-mcp-server 0.11.2 → 0.11.3
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.
- package/AGENTS.md +6 -4
- package/CLAUDE.md +6 -4
- package/README.md +17 -15
- package/changelog/0.11.x/0.11.3.md +45 -0
- package/changelog/template.md +10 -3
- package/dist/config/server-config.js +1 -1
- package/dist/config/server-config.js.map +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-browse-themes.tool.d.ts +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-browse-themes.tool.js +2 -2
- package/dist/mcp-server/tools/definitions/eurostat-browse-themes.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-dataframe-describe.tool.js +2 -2
- package/dist/mcp-server/tools/definitions/eurostat-dataframe-describe.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-dataframe-drop.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-dataframe-drop.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-dataframe-query.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-dataframe-query.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-download-dataset.tool.d.ts +18 -6
- package/dist/mcp-server/tools/definitions/eurostat-download-dataset.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-download-dataset.tool.js +129 -31
- package/dist/mcp-server/tools/definitions/eurostat-download-dataset.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-get-dataset-info.tool.js +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-get-dataset-info.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-get-dimension-values.tool.d.ts +6 -4
- package/dist/mcp-server/tools/definitions/eurostat-get-dimension-values.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-get-dimension-values.tool.js +139 -53
- package/dist/mcp-server/tools/definitions/eurostat-get-dimension-values.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-query-dataset.tool.d.ts +20 -8
- package/dist/mcp-server/tools/definitions/eurostat-query-dataset.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-query-dataset.tool.js +208 -43
- package/dist/mcp-server/tools/definitions/eurostat-query-dataset.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-search-datasets.tool.d.ts +16 -6
- package/dist/mcp-server/tools/definitions/eurostat-search-datasets.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/eurostat-search-datasets.tool.js +62 -23
- package/dist/mcp-server/tools/definitions/eurostat-search-datasets.tool.js.map +1 -1
- package/dist/mcp-server/tools/narrowing-advice.d.ts +64 -3
- package/dist/mcp-server/tools/narrowing-advice.d.ts.map +1 -1
- package/dist/mcp-server/tools/narrowing-advice.js +160 -4
- package/dist/mcp-server/tools/narrowing-advice.js.map +1 -1
- package/dist/mcp-server/tools/notice-text.d.ts +18 -0
- package/dist/mcp-server/tools/notice-text.d.ts.map +1 -0
- package/dist/mcp-server/tools/notice-text.js +40 -0
- package/dist/mcp-server/tools/notice-text.js.map +1 -0
- package/dist/mcp-server/tools/value-list-paging.d.ts +11 -1
- package/dist/mcp-server/tools/value-list-paging.d.ts.map +1 -1
- package/dist/mcp-server/tools/value-list-paging.js +13 -1
- package/dist/mcp-server/tools/value-list-paging.js.map +1 -1
- package/dist/services/eurostat-bulk/eurostat-bulk-service.d.ts +4 -3
- package/dist/services/eurostat-bulk/eurostat-bulk-service.d.ts.map +1 -1
- package/dist/services/eurostat-bulk/eurostat-bulk-service.js +107 -54
- package/dist/services/eurostat-bulk/eurostat-bulk-service.js.map +1 -1
- package/dist/services/eurostat-bulk/types.d.ts +27 -4
- package/dist/services/eurostat-bulk/types.d.ts.map +1 -1
- package/dist/services/eurostat-bulk/types.js.map +1 -1
- package/dist/services/eurostat-catalogue/dimension-value-index.d.ts +81 -0
- package/dist/services/eurostat-catalogue/dimension-value-index.d.ts.map +1 -0
- package/dist/services/eurostat-catalogue/dimension-value-index.js +410 -0
- package/dist/services/eurostat-catalogue/dimension-value-index.js.map +1 -0
- package/dist/services/eurostat-catalogue/eurostat-catalogue-service.d.ts +87 -7
- package/dist/services/eurostat-catalogue/eurostat-catalogue-service.d.ts.map +1 -1
- package/dist/services/eurostat-catalogue/eurostat-catalogue-service.js +333 -81
- package/dist/services/eurostat-catalogue/eurostat-catalogue-service.js.map +1 -1
- package/dist/services/eurostat-catalogue/search-text.d.ts +12 -0
- package/dist/services/eurostat-catalogue/search-text.d.ts.map +1 -0
- package/dist/services/eurostat-catalogue/search-text.js +31 -0
- package/dist/services/eurostat-catalogue/search-text.js.map +1 -0
- package/dist/services/eurostat-catalogue/types.d.ts +11 -0
- package/dist/services/eurostat-catalogue/types.d.ts.map +1 -1
- package/dist/services/eurostat-data/eurostat-data-service.d.ts +26 -5
- package/dist/services/eurostat-data/eurostat-data-service.d.ts.map +1 -1
- package/dist/services/eurostat-data/eurostat-data-service.js +132 -16
- package/dist/services/eurostat-data/eurostat-data-service.js.map +1 -1
- package/dist/services/eurostat-data/sdmx-metadata.d.ts.map +1 -1
- package/dist/services/eurostat-data/sdmx-metadata.js +4 -20
- package/dist/services/eurostat-data/sdmx-metadata.js.map +1 -1
- package/dist/services/eurostat-data/types.d.ts +92 -2
- package/dist/services/eurostat-data/types.d.ts.map +1 -1
- package/dist/services/eurostat-data/types.js.map +1 -1
- package/dist/services/eurostat-filters.d.ts +18 -6
- package/dist/services/eurostat-filters.d.ts.map +1 -1
- package/dist/services/eurostat-filters.js +24 -7
- package/dist/services/eurostat-filters.js.map +1 -1
- package/dist/services/eurostat-periods.d.ts +54 -1
- package/dist/services/eurostat-periods.d.ts.map +1 -1
- package/dist/services/eurostat-periods.js +101 -1
- package/dist/services/eurostat-periods.js.map +1 -1
- package/dist/services/xml-entities.d.ts +13 -0
- package/dist/services/xml-entities.d.ts.map +1 -0
- package/dist/services/xml-entities.js +31 -0
- package/dist/services/xml-entities.js.map +1 -0
- package/package.json +5 -5
- package/server.json +5 -5
- package/skills/eurostat-guide/SKILL.md +6 -6
- package/skills/eurostat-guide/references/sql-analysis.md +5 -5
|
@@ -6,14 +6,17 @@
|
|
|
6
6
|
import { tool, z } from '@cyanheads/mcp-ts-core';
|
|
7
7
|
import { CanvasIdSchema } from '@cyanheads/mcp-ts-core/canvas';
|
|
8
8
|
import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
|
|
9
|
+
import { escapeMarkdownInline } from '@cyanheads/mcp-ts-core/utils';
|
|
9
10
|
import { clampReadLimit } from '../clamp-read-limit.js';
|
|
10
11
|
import { hoistDimensions } from '../hoist-dimensions.js';
|
|
11
|
-
import { dimensionsToNarrow, narrowingAdvice } from '../narrowing-advice.js';
|
|
12
|
+
import { dimensionsToNarrow, dottedValueAdvice, formatValues, narrowingAdvice, RENAME_FILTER_KEYS_HINT, UNKNOWN_FILTER_KEY_WHEN, } from '../narrowing-advice.js';
|
|
13
|
+
import { countOf, listEmptyValues, spanOf } from '../notice-text.js';
|
|
12
14
|
import { acquireCanvas, getCanvas, isCanvasFailure, newTableName, } from '../../../services/canvas-accessor.js';
|
|
13
15
|
import { bulkRowSchema, getEurostatBulkService, } from '../../../services/eurostat-bulk/eurostat-bulk-service.js';
|
|
14
16
|
import { TIME_COLUMN } from '../../../services/eurostat-bulk/types.js';
|
|
15
17
|
import { getEurostatDataService } from '../../../services/eurostat-data/eurostat-data-service.js';
|
|
16
|
-
import {
|
|
18
|
+
import { normalizeFilters } from '../../../services/eurostat-filters.js';
|
|
19
|
+
import { isComextDataset } from '../../../services/eurostat-hosts.js';
|
|
17
20
|
import { outageAnswer } from '../../../services/eurostat-outage.js';
|
|
18
21
|
import { cutNotice, frequenciesOf, PERIOD_FORMS, periodCuts, resolvePeriods, } from '../../../services/eurostat-periods.js';
|
|
19
22
|
/** Upper bound on rows echoed inline, whatever preview_limit asks for. */
|
|
@@ -49,7 +52,7 @@ export const createEurostatDownloadDataset = (clampLimits) => tool('eurostat_dow
|
|
|
49
52
|
filters: z
|
|
50
53
|
.record(z.string(), z.array(z.string()))
|
|
51
54
|
.default({})
|
|
52
|
-
.describe('Dimension filters as a map of dimension code → array of accepted values, applied by Eurostat before the body is sent. Example: {"unit": ["CP_MEUR"], "na_item": ["B1G"], "geo": ["DE", "FR"]}. Omit a dimension or pass an empty array to accept every value for it; a blank or whitespace-only value is likewise unset and dropped ([""] accepts every value, ["", "DE"] is ["DE"]). Dimension codes match in any case ("GEO" is geo). Do not put "time" here — use since_period/until_period. Naming a dimension the dataset does not have is rejected with the dataset\'s dimension list rather than silently ignored.'),
|
|
55
|
+
.describe('Dimension filters as a map of dimension code → array of accepted values, applied by Eurostat before the body is sent. Example: {"unit": ["CP_MEUR"], "na_item": ["B1G"], "geo": ["DE", "FR"]}. Omit a dimension or pass an empty array to accept every value for it; a blank or whitespace-only value is likewise unset and dropped ([""] accepts every value, ["", "DE"] is ["DE"]). A value holding "+" is split into separate values (OR): ["DE+FR"] is ["DE", "FR"]. A value holding "." is rejected as invalid_dimension before any request: no Eurostat code contains one. Dimension codes match in any case ("GEO" is geo). Do not put "time" here — use since_period/until_period. Naming a dimension the dataset does not have is rejected with the dataset\'s dimension list rather than silently ignored. A value Eurostat does not know fails the download as invalid_dimension; a valid value with no observation in the selected periods adds none, and the response names it in emptyValues.'),
|
|
53
56
|
since_period: z
|
|
54
57
|
.string()
|
|
55
58
|
.optional()
|
|
@@ -72,13 +75,17 @@ export const createEurostatDownloadDataset = (clampLimits) => tool('eurostat_dow
|
|
|
72
75
|
.describe('Dimension codes carried by the downloaded rows, in the order Eurostat keys them (e.g., ["freq", "unit", "na_item", "geo"]). Read from the TSV header, so it reflects the response rather than metadata. The period lives in the separate "time" column.'),
|
|
73
76
|
rowCount: z
|
|
74
77
|
.number()
|
|
75
|
-
.describe('Rows expanded from the download, one per non-blank cell. A row carrying a value, a flag, a status or a text value is an observation, a flagged ":" (a value Eurostat reports as unavailable) included. A row holding an unflagged ":" — obs_value null with no flag, status or text — is not: it is a period its series lacks (counted in absentCellCount when the series has an observation of that frequency) or a period of a frequency its series has no observation of.'),
|
|
78
|
+
.describe('Rows expanded from the download, one per non-blank cell. A row carrying a value, a flag, a status or a text value is an observation, a flagged ":" (a value Eurostat reports as unavailable) included. A row holding an unflagged ":" — obs_value null with no flag, status or text — is not: it is a period its series lacks (counted in absentCellCount when the series has an observation of that frequency and the period lies inside that frequency\'s span, from its first to its latest period any downloaded row has an observation in; counted in the notice when it lies outside) or a period of a frequency its series has no observation of.'),
|
|
76
79
|
missingCount: z
|
|
77
80
|
.number()
|
|
78
|
-
.describe('Rows carrying no numeric value (obs_value is null): observations published without a number — a flagged ":" or a text value — and every unflagged ":" row, a period its series lacks or a period of a frequency its series has no observation of.'),
|
|
81
|
+
.describe('Rows carrying no numeric value (obs_value is null): observations published without a number — a flagged ":" or a text value — and every unflagged ":" row, a period its series lacks (inside or outside the span absentCellCount counts) or a period of a frequency its series has no observation of.'),
|
|
79
82
|
absentCellCount: z
|
|
80
83
|
.number()
|
|
81
|
-
.describe('Unflagged ":" rows — obs_value null with no flag, status or text — at a period of a frequency the same series carries in another downloaded row: periods that series lacks, where Eurostat publishes no observation. Unflagged rows at the periods of a frequency the series has no observation of (the padding of a mixed-frequency slice, or a series that is ":" throughout) are left out, and a flagged ":" or a text value is an observation, never counted. Part of rowCount and missingCount, and counted over the rows downloaded, so a budget-cut download counts its prefix.'),
|
|
84
|
+
.describe('Unflagged ":" rows — obs_value null with no flag, status or text — at a period of a frequency the same series carries in another downloaded row: periods that series lacks, where Eurostat publishes no observation. Only periods inside that frequency\'s span count: from its first to its latest period any downloaded row has an observation in. The rows at a period before or after the span, which no downloaded row has an observation in, are counted and named in the notice instead. Unflagged rows at the periods of a frequency the series has no observation of (the padding of a mixed-frequency slice, or a series that is ":" throughout) are left out, and a flagged ":" or a text value is an observation, never counted. Part of rowCount and missingCount, and counted over the rows downloaded, so a budget-cut download counts its prefix and settles the span over it.'),
|
|
85
|
+
emptyValues: z
|
|
86
|
+
.record(z.string(), z.array(z.string()))
|
|
87
|
+
.optional()
|
|
88
|
+
.describe('Filter values the dataset has but no downloaded row carries an observation for — no value, flag, status or text in the selected periods — keyed by filter key, spelled as sent (matching ignores case). Eurostat fails a download naming a code it does not know, so each is a valid value; it can carry data in other periods or beside other filter values. Never a period. Omitted when every filter value has an observation, and when budgetExceeded is true, since the rows not downloaded could hold any of them.'),
|
|
82
89
|
periodRange: z
|
|
83
90
|
.object({
|
|
84
91
|
start: z
|
|
@@ -121,12 +128,12 @@ export const createEurostatDownloadDataset = (clampLimits) => tool('eurostat_dow
|
|
|
121
128
|
enrichment: {
|
|
122
129
|
totalCount: z
|
|
123
130
|
.number()
|
|
124
|
-
.describe('Rows the download produced — equal to rowCount, unflagged ":" rows included: a period their series lacks (absentCellCount) or a period of a frequency their series has no observation of. The inline observations array holds only the first preview_limit of them; budgetExceeded, not this count, says whether the download is the whole dataset.'),
|
|
131
|
+
.describe('Rows the download produced — equal to rowCount, unflagged ":" rows included: a period their series lacks (absentCellCount inside its frequency\'s span of periods with an observation, the notice outside it) or a period of a frequency their series has no observation of. The inline observations array holds only the first preview_limit of them; budgetExceeded, not this count, says whether the download is the whole dataset.'),
|
|
125
132
|
appliedQuery: z
|
|
126
133
|
.object({
|
|
127
134
|
filters: z
|
|
128
135
|
.record(z.string(), z.array(z.string()))
|
|
129
|
-
.describe('Dimension filters sent to Eurostat.
|
|
136
|
+
.describe('Dimension filters sent to Eurostat. A value holding "+" appears as its pieces; blank values and dimensions left with no value are dropped.'),
|
|
130
137
|
sincePeriod: z.string().optional().describe('since_period applied, if any.'),
|
|
131
138
|
untilPeriod: z.string().optional().describe('until_period applied, if any.'),
|
|
132
139
|
url: z
|
|
@@ -137,20 +144,19 @@ export const createEurostatDownloadDataset = (clampLimits) => tool('eurostat_dow
|
|
|
137
144
|
notice: z
|
|
138
145
|
.string()
|
|
139
146
|
.optional()
|
|
140
|
-
.describe('Guidance on every download: the staged table with the required eurostat_dataframe_describe then eurostat_dataframe_query sequence (or, without a canvas, what was returned inline and what was discarded), preceded by a period a bound falls inside when the TSV header shows that frequency, by byte-budget disclosure when the budget stopped the transfer, by what the unflagged ":" rows are
|
|
147
|
+
.describe('Guidance on every download: the staged table with the required eurostat_dataframe_describe then eurostat_dataframe_query sequence (or, without a canvas, what was returned inline and what was discarded), preceded by a period a bound falls inside when the TSV header shows that frequency, by byte-budget disclosure when the budget stopped the transfer, by what the unflagged ":" rows are — the rows at periods no downloaded row has an observation in, before or after a frequency\'s span of periods with one, counted and named per frequency; periods a series lacks inside that span (absentCellCount); the padding of a mixed-frequency slice — by the filter values with no observation (emptyValues), up to 24 named with an omitted count, and by the inline-preview length when preview_limit returns fewer rows than were downloaded.'),
|
|
141
148
|
},
|
|
142
149
|
enrichmentTrailer: {
|
|
143
150
|
appliedQuery: {
|
|
144
151
|
render: (q) => {
|
|
145
152
|
const parts = [];
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
? `- **Filters:** ${keys.map((k) => `${k}=[${(q.filters[k] ?? []).join(', ')}]`).join('; ')}`
|
|
153
|
+
parts.push(Object.keys(q.filters).length > 0
|
|
154
|
+
? `- **Filters:** ${formatValues(q.filters, escapeMarkdownInline)}`
|
|
149
155
|
: '- **Filters:** none (whole dataset)');
|
|
150
156
|
if (q.sincePeriod || q.untilPeriod) {
|
|
151
157
|
parts.push(`- **Period:** ${q.sincePeriod ?? '…'} – ${q.untilPeriod ?? 'latest'}`);
|
|
152
158
|
}
|
|
153
|
-
parts.push(`- **URL:** ${q.url}`);
|
|
159
|
+
parts.push(`- **URL:** ${escapeMarkdownInline(q.url)}`);
|
|
154
160
|
return `**Bulk Request:**\n${parts.join('\n')}`;
|
|
155
161
|
},
|
|
156
162
|
},
|
|
@@ -173,15 +179,14 @@ export const createEurostatDownloadDataset = (clampLimits) => tool('eurostat_dow
|
|
|
173
179
|
{
|
|
174
180
|
reason: 'invalid_dimension',
|
|
175
181
|
code: JsonRpcErrorCode.ValidationError,
|
|
176
|
-
when:
|
|
182
|
+
when: `${UNKNOWN_FILTER_KEY_WHEN}; a filter value contains "." (rejected before any request); or Eurostat rejects a filter value, or the period range selects no period of the dataset (SDMX faultcode 150): it misses the coverage, or holds no whole period. The fault covers both; its TIME_PERIOD clause tells the period range apart.`,
|
|
177
183
|
recovery: 'Check dimension codes with eurostat_get_dataset_info and their values with eurostat_get_dimension_values, and keep the period range inside the dataset coverage, holding a whole period.',
|
|
178
|
-
thrownBy: 'service',
|
|
179
184
|
},
|
|
180
185
|
{
|
|
181
186
|
reason: 'filter_arity',
|
|
182
187
|
code: JsonRpcErrorCode.ValidationError,
|
|
183
188
|
when: 'Eurostat rejected the positional dimension key because it carried the wrong number of positions (SDMX faultcode 140, INVALID_QUERY_NB_FILTERS), meaning the dataset structure has changed since the metadata call.',
|
|
184
|
-
recovery: '
|
|
189
|
+
recovery: 'Re-read the dimensions with eurostat_get_dataset_info and rebuild the filters on them, or retry without filters to download the whole dataset, except a DS-* Comext collection, which Eurostat serves only filtered.',
|
|
185
190
|
thrownBy: 'service',
|
|
186
191
|
},
|
|
187
192
|
{
|
|
@@ -219,6 +224,13 @@ export const createEurostatDownloadDataset = (clampLimits) => tool('eurostat_dow
|
|
|
219
224
|
recovery: 'Retry in a few minutes, or narrow the request with dimension filters.',
|
|
220
225
|
thrownBy: 'service',
|
|
221
226
|
},
|
|
227
|
+
{
|
|
228
|
+
reason: 'retry_deadline_exceeded',
|
|
229
|
+
code: JsonRpcErrorCode.Timeout,
|
|
230
|
+
when: 'The download did not complete within EUROSTAT_BULK_TIMEOUT_MS (120 s by default), every attempt, backoff and the streamed body included; or, for a filtered download, the structure read that orders its filter key did not answer within the request deadline.',
|
|
231
|
+
recovery: 'Add dimension filters or a narrower since_period/until_period range to shrink the transfer, retry a structure read that timed out in a few minutes, or read a slice small enough to return with eurostat_query_dataset.',
|
|
232
|
+
thrownBy: 'service',
|
|
233
|
+
},
|
|
222
234
|
{
|
|
223
235
|
reason: 'canvas_not_found',
|
|
224
236
|
code: JsonRpcErrorCode.NotFound,
|
|
@@ -241,7 +253,21 @@ export const createEurostatDownloadDataset = (clampLimits) => tool('eurostat_dow
|
|
|
241
253
|
throw ctx.fail('invalid_period', periods.message);
|
|
242
254
|
}
|
|
243
255
|
const { since_period: sinceP, until_period: untilP } = periods;
|
|
244
|
-
const filters =
|
|
256
|
+
const filters = normalizeFilters(input.filters);
|
|
257
|
+
/**
|
|
258
|
+
* No Eurostat code contains ".", and in the positional key a dotted value would add a
|
|
259
|
+
* position, so one is refused here, before the structure read: nothing is sent. Every
|
|
260
|
+
* dotted value is named at once, each with its own advice.
|
|
261
|
+
*/
|
|
262
|
+
const dotted = Object.entries(filters).flatMap(([key, values]) => values.filter((value) => value.includes('.')).map((value) => ({ key, value })));
|
|
263
|
+
const [firstDotted, ...otherDotted] = dotted;
|
|
264
|
+
if (firstDotted) {
|
|
265
|
+
const advice = dottedValueAdvice(input.dataset_code, [
|
|
266
|
+
{ dimension: firstDotted.key, value: firstDotted.value },
|
|
267
|
+
...otherDotted.map(({ key, value }) => ({ dimension: key, value })),
|
|
268
|
+
]);
|
|
269
|
+
throw ctx.fail('invalid_dimension', `${dotted.length === 1 ? 'A filter value contains' : `${dotted.length} filter values contain`} ".", so nothing was sent to Eurostat: ${dotted.map(({ key, value }) => `"${value}" in filters.${key}`).join(', ')}.`, { recovery: { hint: advice.hint } }, { literals: [...new Set(advice.literals)] });
|
|
270
|
+
}
|
|
245
271
|
/**
|
|
246
272
|
* The positional key needs every dimension in order, not just the filtered
|
|
247
273
|
* ones, so a filtered download first reads the dataset's structure
|
|
@@ -269,6 +295,7 @@ export const createEurostatDownloadDataset = (clampLimits) => tool('eurostat_dow
|
|
|
269
295
|
throw err;
|
|
270
296
|
throw ctx.fail(mapped.reason, mapped.message, {
|
|
271
297
|
...(mapped.retryable && { retryable: true }),
|
|
298
|
+
...mapped.data,
|
|
272
299
|
recovery: { hint: mapped.hint },
|
|
273
300
|
});
|
|
274
301
|
}
|
|
@@ -379,23 +406,29 @@ export const createEurostatDownloadDataset = (clampLimits) => tool('eurostat_dow
|
|
|
379
406
|
notices.push(cutNotice(cuts, written));
|
|
380
407
|
}
|
|
381
408
|
if (stats.budgetExceeded) {
|
|
382
|
-
notices.push(`The byte budget stopped this transfer after ${stats.bytesRead.toLocaleString()} bytes, so these ${stats.rowCount.toLocaleString()} rows are the start of "${input.dataset_code}" and not all of it. Add dimension filters or a since_period/until_period range to fit the dataset inside the budget, or raise EUROSTAT_BULK_MAX_BYTES.`);
|
|
409
|
+
notices.push(`The byte budget stopped this transfer after ${stats.bytesRead.toLocaleString('en-US')} bytes, so these ${stats.rowCount.toLocaleString('en-US')} rows are the start of "${escapeMarkdownInline(input.dataset_code)}" and not all of it. Add dimension filters or a since_period/until_period range to fit the dataset inside the budget, or raise EUROSTAT_BULK_MAX_BYTES.`);
|
|
410
|
+
}
|
|
411
|
+
// With no observation at all every period lies outside a span, which the sentence below says.
|
|
412
|
+
if (stats.outsideSpans?.rowCount && stats.periodsSeen.length > 0) {
|
|
413
|
+
notices.push(outsideSpanNotice(stats.outsideSpans, stats.rowCount));
|
|
383
414
|
}
|
|
384
415
|
if (stats.absentCellCount > 0) {
|
|
385
|
-
notices.push(`${stats.absentCellCount.toLocaleString()} of the ${stats.rowCount.toLocaleString()} downloaded rows (absentCellCount) ${stats.absentCellCount === 1
|
|
416
|
+
notices.push(`${stats.absentCellCount.toLocaleString('en-US')} of the ${stats.rowCount.toLocaleString('en-US')} downloaded rows (absentCellCount) ${stats.absentCellCount === 1
|
|
386
417
|
? 'is a period its series lacks, not an observation: an unflagged ":" cell'
|
|
387
418
|
: 'are periods their series lacks, not observations: unflagged ":" cells'}, obs_value null with no flag, status or text.`);
|
|
388
419
|
}
|
|
389
420
|
if (stats.periodsSeen.length === 0) {
|
|
390
421
|
notices.push(`No downloaded row carries an observation: ${stats.rowCount === 1
|
|
391
422
|
? 'the row is an unflagged ":" cell'
|
|
392
|
-
: `all ${stats.rowCount.toLocaleString()} rows are unflagged ":" cells`} (obs_value null with no flag, status or text), so periodRange has no bound.`);
|
|
423
|
+
: `all ${stats.rowCount.toLocaleString('en-US')} rows are unflagged ":" cells`} (obs_value null with no flag, status or text), so periodRange has no bound.`);
|
|
393
424
|
}
|
|
394
425
|
if (frequencies.size > 1) {
|
|
395
426
|
notices.push('Frequencies are mixed in this slice, and the TSV gives every series a column for each period of each frequency, so a series also holds unflagged ":" rows (obs_value null with no flag, status or text) at the periods of a frequency it does not carry: they are not observations, and absentCellCount leaves them out.');
|
|
396
427
|
}
|
|
428
|
+
if (stats.emptyValues)
|
|
429
|
+
notices.push(emptyValuesNotice(stats.emptyValues));
|
|
397
430
|
if (stats.rowCount > preview.length) {
|
|
398
|
-
notices.push(`preview_limit=${input.preview_limit.toLocaleString()} returns the first ${preview.length.toLocaleString()} of ${stats.rowCount.toLocaleString()} downloaded rows inline; it does not reduce the download.`);
|
|
431
|
+
notices.push(`preview_limit=${input.preview_limit.toLocaleString('en-US')} returns the first ${preview.length.toLocaleString('en-US')} of ${stats.rowCount.toLocaleString('en-US')} downloaded rows inline; it does not reduce the download.`);
|
|
399
432
|
}
|
|
400
433
|
if (!staged) {
|
|
401
434
|
/**
|
|
@@ -405,13 +438,13 @@ export const createEurostatDownloadDataset = (clampLimits) => tool('eurostat_dow
|
|
|
405
438
|
*/
|
|
406
439
|
const discarded = stats.rowCount - preview.length;
|
|
407
440
|
notices.push(discarded === 0
|
|
408
|
-
? `This deployment runs without a dataframe canvas, so nothing was staged; all ${stats.rowCount.toLocaleString()} downloaded rows are returned inline.`
|
|
409
|
-
: `This deployment runs without a dataframe canvas, so nothing was staged: only the ${preview.length.toLocaleString()} rows returned inline are retained, and the other ${discarded.toLocaleString()} were counted and discarded. ${stats.rowCount <= PREVIEW_MAX
|
|
410
|
-
? `Raise preview_limit to ${stats.rowCount.toLocaleString()} to return every one inline, or set CANVAS_PROVIDER_TYPE=duckdb to keep the download.`
|
|
441
|
+
? `This deployment runs without a dataframe canvas, so nothing was staged; all ${stats.rowCount.toLocaleString('en-US')} downloaded rows are returned inline.`
|
|
442
|
+
: `This deployment runs without a dataframe canvas, so nothing was staged: only the ${preview.length.toLocaleString('en-US')} rows returned inline are retained, and the other ${discarded.toLocaleString('en-US')} were counted and discarded. ${stats.rowCount <= PREVIEW_MAX
|
|
443
|
+
? `Raise preview_limit to ${stats.rowCount.toLocaleString('en-US')} to return every one inline, or set CANVAS_PROVIDER_TYPE=duckdb to keep the download.`
|
|
411
444
|
: 'Set CANVAS_PROVIDER_TYPE=duckdb to keep the download, or use eurostat_query_dataset with dimension filters to fetch a slice small enough to return whole.'}`);
|
|
412
445
|
}
|
|
413
446
|
else {
|
|
414
|
-
notices.push(`All ${staged.stagedRowCount.toLocaleString()} downloaded rows are staged as table
|
|
447
|
+
notices.push(`All ${staged.stagedRowCount.toLocaleString('en-US')} downloaded rows are staged as table \`${staged.tableName}\` on canvas \`${staged.canvasId}\`. Call eurostat_dataframe_describe with that canvas_id first to confirm the table and columns, then call eurostat_dataframe_query.`);
|
|
415
448
|
}
|
|
416
449
|
ctx.enrich.notice(notices.join(' '));
|
|
417
450
|
return {
|
|
@@ -420,6 +453,7 @@ export const createEurostatDownloadDataset = (clampLimits) => tool('eurostat_dow
|
|
|
420
453
|
rowCount: stats.rowCount,
|
|
421
454
|
missingCount: stats.missingCount,
|
|
422
455
|
absentCellCount: stats.absentCellCount,
|
|
456
|
+
...(stats.emptyValues && { emptyValues: stats.emptyValues }),
|
|
423
457
|
periodRange: {
|
|
424
458
|
...(firstPeriod && { start: firstPeriod }),
|
|
425
459
|
...(lastPeriod && { end: lastPeriod }),
|
|
@@ -437,22 +471,30 @@ export const createEurostatDownloadDataset = (clampLimits) => tool('eurostat_dow
|
|
|
437
471
|
const lines = [
|
|
438
472
|
`# Bulk download \`${result.datasetCode}\``,
|
|
439
473
|
`**Rows:** ${result.rowCount} (${result.missingCount} missing) | **Absent cells:** ${result.absentCellCount} | **Period:** ${period}`,
|
|
440
|
-
`**Dimensions:** ${result.dimensionsUsed.join(', ')}`,
|
|
474
|
+
`**Dimensions:** ${result.dimensionsUsed.map(escapeMarkdownInline).join(', ')}`,
|
|
441
475
|
`**Transfer:** ${result.bytesRead} bytes decoded | **Compressed:** ${result.compressed} | **Budget exceeded:** ${result.budgetExceeded}${result.budgetExceeded ? ' — these rows are the start of the dataset, not all of it' : ''}`,
|
|
442
476
|
];
|
|
477
|
+
if (result.emptyValues) {
|
|
478
|
+
lines.push(`**Values with no observation:** ${formatValues(result.emptyValues, escapeMarkdownInline)} — in the dataset but with no value, flag, status or text in this download`);
|
|
479
|
+
}
|
|
443
480
|
lines.push(result.tableName
|
|
444
481
|
? `**Staged:** table \`${result.tableName}\` on canvas \`${result.canvasId}\` (stagedRowCount ${result.stagedRowCount}) — inspect it with eurostat_dataframe_describe first, then query it with eurostat_dataframe_query`
|
|
445
482
|
: '**Staged:** nothing — this deployment runs without a dataframe canvas, so only the rows below are retained');
|
|
446
483
|
lines.push('', `## First ${result.observations.length} rows (\`observations\`)`);
|
|
447
484
|
// dimensionsUsed leaves out the period column, which hoists like any other dimension.
|
|
448
485
|
// The value and flag columns are not candidates, so they stay on every row.
|
|
449
|
-
|
|
486
|
+
// Column names come from the TSV header and codes from its rows, so both are escaped.
|
|
487
|
+
const cell = (col, value) => `${escapeMarkdownInline(col)}=${escapeMarkdownInline(String(value))}`;
|
|
488
|
+
const { header, hoisted } = hoistDimensions(result.observations, [...result.dimensionsUsed, TIME_COLUMN], (row, col) => {
|
|
489
|
+
const value = row[col];
|
|
490
|
+
return value == null ? undefined : cell(col, value);
|
|
491
|
+
});
|
|
450
492
|
if (header)
|
|
451
493
|
lines.push(header, '');
|
|
452
494
|
for (const row of result.observations) {
|
|
453
495
|
lines.push(Object.entries(row)
|
|
454
496
|
.filter(([col]) => !hoisted.has(col))
|
|
455
|
-
.map(([col, value]) =>
|
|
497
|
+
.map(([col, value]) => cell(col, value === null ? 'NULL' : value))
|
|
456
498
|
.join(' | '));
|
|
457
499
|
}
|
|
458
500
|
return [{ type: 'text', text: lines.join('\n') }];
|
|
@@ -460,6 +502,38 @@ export const createEurostatDownloadDataset = (clampLimits) => tool('eurostat_dow
|
|
|
460
502
|
});
|
|
461
503
|
/** Default-on read-limit policy; startup selects the deployment policy explicitly. */
|
|
462
504
|
export const eurostatDownloadDataset = createEurostatDownloadDataset(true);
|
|
505
|
+
/** The filter values with no observation in the download. */
|
|
506
|
+
function emptyValuesNotice(values) {
|
|
507
|
+
const { list, total } = listEmptyValues(values);
|
|
508
|
+
const one = total === 1;
|
|
509
|
+
return `${countOf(total, 'value')} the download selects ${one ? 'exists' : 'exist'} in the dataset but ${one ? 'has' : 'have'} no observation in this download: ${list}. A value can still carry data in other periods or beside other filter values.`;
|
|
510
|
+
}
|
|
511
|
+
/**
|
|
512
|
+
* Count and name the rows at each frequency's periods that no downloaded row has an
|
|
513
|
+
* observation in, outside the span from its first to its latest period with one: the
|
|
514
|
+
* unflagged ":" rows `absentCellCount` leaves out.
|
|
515
|
+
*/
|
|
516
|
+
function outsideSpanNotice(outside, rowCount) {
|
|
517
|
+
let periods = 0;
|
|
518
|
+
const clauses = outside.spans.flatMap((span) => {
|
|
519
|
+
if (span.kind === 'empty') {
|
|
520
|
+
periods += span.periods.length;
|
|
521
|
+
return [
|
|
522
|
+
`${spanOf(span.periods)}, the only ${span.periods.length === 1 ? 'period' : 'periods'} of its frequency in this download`,
|
|
523
|
+
];
|
|
524
|
+
}
|
|
525
|
+
periods += span.before.length + span.after.length;
|
|
526
|
+
return [
|
|
527
|
+
...(span.before.length > 0
|
|
528
|
+
? [`${spanOf(span.before)}, before the first period with one (${span.first})`]
|
|
529
|
+
: []),
|
|
530
|
+
...(span.after.length > 0
|
|
531
|
+
? [`${spanOf(span.after)}, after the latest period with one (${span.last})`]
|
|
532
|
+
: []),
|
|
533
|
+
];
|
|
534
|
+
});
|
|
535
|
+
return `${outside.rowCount.toLocaleString('en-US')} of the ${rowCount.toLocaleString('en-US')} downloaded rows ${outside.rowCount === 1 ? 'is an unflagged ":" cell' : 'are unflagged ":" cells'} in ${periods === 1 ? 'a period' : 'periods'} no downloaded row has an observation in: ${clauses.join('; ')}. absentCellCount leaves them out: it counts only periods from a frequency's first to its latest period with an observation.`;
|
|
536
|
+
}
|
|
463
537
|
/**
|
|
464
538
|
* Translate a service-layer failure into the tool's declared contract.
|
|
465
539
|
*
|
|
@@ -474,11 +548,14 @@ export const eurostatDownloadDataset = createEurostatDownloadDataset(true);
|
|
|
474
548
|
* a too-large refusal name the dimensions still open to filter. `request.endpoint` is
|
|
475
549
|
* the endpoint the failed read went to: each `upstream_fault` hint names it, and on the
|
|
476
550
|
* structure read a fault with no HTTP status is a structure the order cannot be read from.
|
|
551
|
+
* `data` is the failure's own detail the caller acts on, for the error data.
|
|
477
552
|
*/
|
|
478
553
|
function mapBulkFailure(err, datasetCode, request) {
|
|
479
554
|
const data = err.data;
|
|
480
555
|
const reason = data?.reason;
|
|
481
556
|
const message = err.message;
|
|
557
|
+
// A DS-* collection refuses an unfiltered download as too large, so no hint offers one there.
|
|
558
|
+
const offerUnfiltered = !isComextDataset(datasetCode);
|
|
482
559
|
switch (reason) {
|
|
483
560
|
case 'extraction_too_big':
|
|
484
561
|
return {
|
|
@@ -493,6 +570,18 @@ function mapBulkFailure(err, datasetCode, request) {
|
|
|
493
570
|
hint: `Dataset "${datasetCode}" is not available for dissemination. Use eurostat_search_datasets or eurostat_browse_themes to find a valid code.`,
|
|
494
571
|
};
|
|
495
572
|
case 'invalid_dimension':
|
|
573
|
+
// The key builder names every filter key the structure lacks, and the key order.
|
|
574
|
+
if (Array.isArray(data?.unknownDimensions)) {
|
|
575
|
+
return {
|
|
576
|
+
reason,
|
|
577
|
+
message,
|
|
578
|
+
hint: RENAME_FILTER_KEYS_HINT,
|
|
579
|
+
data: {
|
|
580
|
+
unknownDimensions: data.unknownDimensions,
|
|
581
|
+
dimensionOrder: data.dimensionOrder,
|
|
582
|
+
},
|
|
583
|
+
};
|
|
584
|
+
}
|
|
496
585
|
return {
|
|
497
586
|
reason,
|
|
498
587
|
message,
|
|
@@ -505,7 +594,7 @@ function mapBulkFailure(err, datasetCode, request) {
|
|
|
505
594
|
return {
|
|
506
595
|
reason,
|
|
507
596
|
message,
|
|
508
|
-
hint: `Eurostat expected a different number of filter positions for "${datasetCode}" than its metadata reports. Re-read the dimensions with eurostat_get_dataset_info, or retry without filters.`,
|
|
597
|
+
hint: `Eurostat expected a different number of filter positions for "${datasetCode}" than its metadata reports. Re-read the dimensions with eurostat_get_dataset_info${offerUnfiltered ? ', or retry without filters' : ''}.`,
|
|
509
598
|
};
|
|
510
599
|
case 'invalid_period':
|
|
511
600
|
return {
|
|
@@ -519,6 +608,15 @@ function mapBulkFailure(err, datasetCode, request) {
|
|
|
519
608
|
message,
|
|
520
609
|
hint: `Eurostat queued this extraction rather than serving it. Add dimension filters or a since_period/until_period range to make the request cheap enough for "${datasetCode}" to stream inline.`,
|
|
521
610
|
};
|
|
611
|
+
case 'retry_deadline_exceeded':
|
|
612
|
+
return {
|
|
613
|
+
reason,
|
|
614
|
+
message,
|
|
615
|
+
data: { deadlineMs: data?.deadlineMs, elapsedMs: data?.elapsedMs },
|
|
616
|
+
hint: request.endpoint === 'structure'
|
|
617
|
+
? `Eurostat's SDMX structure endpoint did not answer for "${datasetCode}" within the request deadline, every attempt included, so the dimension order a filtered download needs could not be read. Retry in a few minutes, or read the same filters through the Statistics API with eurostat_query_dataset.`
|
|
618
|
+
: `The download of "${datasetCode}" did not finish within the server's bulk allowance, every attempt and the streamed body included. Narrow it with dimension filters or a shorter since_period/until_period range, or read a slice small enough to return with eurostat_query_dataset.`,
|
|
619
|
+
};
|
|
522
620
|
case 'upstream_fault':
|
|
523
621
|
// The services mark an endpoint that was down, not one that answered badly.
|
|
524
622
|
if (data?.retryable === true) {
|
|
@@ -538,7 +636,7 @@ function mapBulkFailure(err, datasetCode, request) {
|
|
|
538
636
|
reason,
|
|
539
637
|
message,
|
|
540
638
|
hint: request.endpoint === 'structure'
|
|
541
|
-
? `Eurostat's SDMX structure endpoint answered HTTP ${data.status} for "${datasetCode}", a status this server does not retry on its own, so the dimension order a filtered download needs could not be read. Retry in a few minutes. If it fails the same way, eurostat_query_dataset takes the same filters through the Statistics API, which does not depend on this structure, and a download without filters skips the read.`
|
|
639
|
+
? `Eurostat's SDMX structure endpoint answered HTTP ${data.status} for "${datasetCode}", a status this server does not retry on its own, so the dimension order a filtered download needs could not be read. Retry in a few minutes. If it fails the same way, eurostat_query_dataset takes the same filters through the Statistics API, which does not depend on this structure${offerUnfiltered ? ', and a download without filters skips the read' : ''}.`
|
|
542
640
|
: `Eurostat's SDMX data endpoint answered HTTP ${data.status} for "${datasetCode}", a status this server does not retry on its own. Retry in a few minutes. If it fails the same way, eurostat_query_dataset reads the observations through the Statistics API, a separate endpoint, for a slice small enough to return.`,
|
|
543
641
|
};
|
|
544
642
|
}
|
|
@@ -547,7 +645,7 @@ function mapBulkFailure(err, datasetCode, request) {
|
|
|
547
645
|
return {
|
|
548
646
|
reason,
|
|
549
647
|
message,
|
|
550
|
-
hint: `Eurostat returned a structure definition for "${datasetCode}" that this server cannot build a positional filter key from, so the filtered download was not sent. Retry in a few minutes. If it fails the same way, eurostat_query_dataset takes the same filters through the Statistics API, which does not depend on this structure, and a download without filters skips the read.`,
|
|
648
|
+
hint: `Eurostat returned a structure definition for "${datasetCode}" that this server cannot build a positional filter key from, so the filtered download was not sent. Retry in a few minutes. If it fails the same way, eurostat_query_dataset takes the same filters through the Statistics API, which does not depend on this structure${offerUnfiltered ? ', and a download without filters skips the read' : ''}.`,
|
|
551
649
|
};
|
|
552
650
|
}
|
|
553
651
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eurostat-download-dataset.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/eurostat-download-dataset.tool.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAiB,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AAC7F,OAAO,EACL,aAAa,EACb,SAAS,EACT,eAAe,EACf,YAAY,GACb,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,aAAa,EACb,sBAAsB,GACvB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAAgB,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EACL,SAAS,EACT,aAAa,EACb,YAAY,EACZ,UAAU,EACV,cAAc,GACf,MAAM,gCAAgC,CAAC;AAExC,0EAA0E;AAC1E,MAAM,WAAW,GAAG,GAAG,CAAC;AAExB;;;;;GAKG;AACH,KAAK,SAAS,CAAC,CAAC,UAAU,CACxB,IAA6B,EAC7B,OAAkB,EAClB,KAAa;IAEb,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,MAAM,GAAG,KAAK;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9C,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,yFAAyF;AACzF,KAAK,SAAS,CAAC,CAAC,OAAO,CAAC,KAAc,EAAE,IAA6B;IACnE,MAAM,KAAK,CAAC;IACZ,KAAK,CAAC,CAAC,IAAI,CAAC;AACd,CAAC;AAED,+DAA+D;AAC/D,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,WAAoB,EAAE,EAAE,CACpE,IAAI,CAAC,2BAA2B,EAAE;IAChC,KAAK,EAAE,2BAA2B;IAClC,WAAW,EACT,06CAA06C;IAC56C,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;IAC9E,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CACP,mTAAmT,CACpT;QACH,OAAO,EAAE,CAAC;aACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;aACvC,OAAO,CAAC,EAAE,CAAC;aACX,QAAQ,CACP,2lBAA2lB,CAC5lB;QACH,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,8EAA8E,YAAY,y1BAAy1B,CACp7B;QACH,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,2cAA2c,CAC5c;QACH,aAAa,EAAE,CAAC,WAAW;YACzB,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACjC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAC3C;aACE,OAAO,CAAC,EAAE,CAAC;aACX,QAAQ,CACP,6EAA6E,WAAW,CAAC,CAAC,CAAC,8DAA8D,CAAC,CAAC,CAAC,yCAAyC,0GAA0G,CAChT;QACH,SAAS,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC3C,gZAAgZ,CACjZ;KACF,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;QAC7D,cAAc,EAAE,CAAC;aACd,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,QAAQ,CACP,yPAAyP,CAC1P;QACH,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,QAAQ,CACP,8cAA8c,CAC/c;QACH,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,CACP,mPAAmP,CACpP;QACH,eAAe,EAAE,CAAC;aACf,MAAM,EAAE;aACR,QAAQ,CACP,wjBAAwjB,CACzjB;QACH,WAAW,EAAE,CAAC;aACX,MAAM,CAAC;YACN,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,sMAAsM,CACvM;YACH,GAAG,EAAE,CAAC;iBACH,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,gJAAgJ,CACjJ;SACJ,CAAC;aACD,QAAQ,CACP,+IAA+I,CAChJ;QACH,SAAS,EAAE,CAAC;aACT,MAAM,EAAE;aACR,QAAQ,CACP,gLAAgL,CACjL;QACH,UAAU,EAAE,CAAC;aACV,OAAO,EAAE;aACT,QAAQ,CACP,sKAAsK,CACvK;QACH,cAAc,EAAE,CAAC;aACd,OAAO,EAAE;aACT,QAAQ,CACP,yMAAyM,CAC1M;QACH,YAAY,EAAE,CAAC;aACZ,KAAK,CACJ,CAAC;aACE,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;aAC/D,QAAQ,CACP,4cAA4c,CAC7c,CACJ;aACA,QAAQ,CACP,gIAAgI,CACjI;QACH,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,wKAAwK,CACzK;QACH,SAAS,EAAE,CAAC;aACT,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,yRAAyR,CAC1R;QACH,cAAc,EAAE,CAAC;aACd,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,kFAAkF,CACnF;KACJ,CAAC;IACF,UAAU,EAAE;QACV,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,QAAQ,CACP,qVAAqV,CACtV;QACH,YAAY,EAAE,CAAC;aACZ,MAAM,CAAC;YACN,OAAO,EAAE,CAAC;iBACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;iBACvC,QAAQ,CACP,iGAAiG,CAClG;YACH,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YAC5E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YAC5E,GAAG,EAAE,CAAC;iBACH,MAAM,EAAE;iBACR,QAAQ,CACP,yJAAyJ,CAC1J;SACJ,CAAC;aACD,QAAQ,CAAC,0CAA0C,CAAC;QACvD,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,4hBAA4hB,CAC7hB;KACJ;IAED,iBAAiB,EAAE;QACjB,YAAY,EAAE;YACZ,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;gBACZ,MAAM,KAAK,GAAa,EAAE,CAAC;gBAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBACpC,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,MAAM,GAAG,CAAC;oBACb,CAAC,CAAC,kBAAkB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBAC7F,CAAC,CAAC,qCAAqC,CAC1C,CAAC;gBACF,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;oBACnC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,WAAW,IAAI,GAAG,MAAM,CAAC,CAAC,WAAW,IAAI,QAAQ,EAAE,CAAC,CAAC;gBACrF,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBAClC,OAAO,sBAAsB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAClD,CAAC;SACF;KACF;IAED,MAAM,EAAE;QACN;YACE,MAAM,EAAE,sBAAsB;YAC9B,IAAI,EAAE,gBAAgB,CAAC,eAAe;YACtC,IAAI,EAAE,kGAAkG;YACxG,QAAQ,EACN,qHAAqH;YACvH,QAAQ,EAAE,SAAS;SACpB;QACD;YACE,MAAM,EAAE,WAAW;YACnB,IAAI,EAAE,gBAAgB,CAAC,QAAQ;YAC/B,IAAI,EAAE,qFAAqF;YAC3F,QAAQ,EACN,sFAAsF;YACxF,QAAQ,EAAE,SAAS;SACpB;QACD;YACE,MAAM,EAAE,mBAAmB;YAC3B,IAAI,EAAE,gBAAgB,CAAC,eAAe;YACtC,IAAI,EAAE,qSAAqS;YAC3S,QAAQ,EACN,0LAA0L;YAC5L,QAAQ,EAAE,SAAS;SACpB;QACD;YACE,MAAM,EAAE,cAAc;YACtB,IAAI,EAAE,gBAAgB,CAAC,eAAe;YACtC,IAAI,EAAE,oNAAoN;YAC1N,QAAQ,EACN,gHAAgH;YAClH,QAAQ,EAAE,SAAS;SACpB;QACD;YACE,MAAM,EAAE,gBAAgB;YACxB,IAAI,EAAE,gBAAgB,CAAC,eAAe;YACtC,IAAI,EAAE,uaAAua;YAC7a,QAAQ,EAAE,sCAAsC,YAAY,2GAA2G;SACxK;QACD;YACE,MAAM,EAAE,cAAc;YACtB,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;YACzC,IAAI,EAAE,oKAAoK;YAC1K,SAAS,EAAE,KAAK;YAChB,QAAQ,EACN,+HAA+H;YACjI,QAAQ,EAAE,SAAS;SACpB;QACD;YACE,MAAM,EAAE,YAAY;YACpB,IAAI,EAAE,gBAAgB,CAAC,QAAQ;YAC/B,IAAI,EAAE,uRAAuR;YAC7R,QAAQ,EACN,+PAA+P;SAClQ;QACD;YACE,MAAM,EAAE,oBAAoB;YAC5B,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;YACzC,IAAI,EAAE,+PAA+P;YACrQ,SAAS,EAAE,KAAK;YAChB,QAAQ,EACN,mJAAmJ;YACrJ,QAAQ,EAAE,SAAS;SACpB;QACD;YACE,MAAM,EAAE,gBAAgB;YACxB,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;YACzC,IAAI,EAAE,qbAAqb;YAC3b,QAAQ,EAAE,uEAAuE;YACjF,QAAQ,EAAE,SAAS;SACpB;QACD;YACE,MAAM,EAAE,kBAAkB;YAC1B,IAAI,EAAE,gBAAgB,CAAC,QAAQ;YAC/B,IAAI,EAAE,kFAAkF;YACxF,QAAQ,EAAE,gFAAgF;SAC3F;KACF;IAED,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG;QACxB,MAAM,YAAY,GAAG,cAAc,CACjC,OAAO,CAAC,aAAa,EACrB,WAAW,EACX,eAAe,EACf,2BAA2B,EAC3B,GAAG,CACJ,CAAC;QACF,MAAM,KAAK,GAAG,EAAE,GAAG,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC;QAChE,MAAM,IAAI,GAAG,sBAAsB,EAAE,CAAC;QACtC,mFAAmF;QACnF,8EAA8E;QAC9E,MAAM,OAAO,GAAG;YACd,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,SAAS;YACrD,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,SAAS;SACtD,CAAC;QACF,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,MAAM,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAC/D,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEhD;;;;;WAKG;QACH,IAAI,cAAc,GAAa,EAAE,CAAC;QAElC;;;WAGG;QACH,MAAM,UAAU,GAAG,KAAK,EAAK,QAAwB,EAAE,GAAqB,EAAc,EAAE;YAC1F,IAAI,CAAC;gBACH,OAAO,MAAM,GAAG,EAAE,CAAC;YACrB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE;oBACrD,UAAU,EACP,GAAgB,CAAC,IAAI,EAAE,MAAM,KAAK,oBAAoB;wBACrD,CAAC,CAAC,MAAM,kBAAkB,CAAC,KAAK,CAAC,YAAY,EAAE,cAAc,EAAE,GAAG,CAAC;wBACnE,CAAC,CAAC,SAAS;oBACf,QAAQ;oBACR,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;iBAC/B,CAAC,CAAC;gBACH,IAAI,CAAC,MAAM;oBAAE,MAAM,GAAG,CAAC;gBACvB,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE;oBAC5C,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;oBAC5C,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;iBAChC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,cAAc,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,GAAG,EAAE,CAClD,sBAAsB,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,CACpE,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,CAC7C,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CACrF,CAAC;QAEF,MAAM,OAAO,GAAc,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;QAEvE,IAAI,MAAmF,CAAC;QACxF;;;;;WAKG;QACH,IAAI,CAAC;YACH;;;;;eAKG;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAChC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACf,MAAM,KAAK,GAAG;oBACZ,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,iBAAiB,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/C,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,iBAAiB,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;iBAChD,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAChB,MAAM,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,oBAAoB,KAAK,CAAC,YAAY,mBAAmB,EAAE;oBACtF,QAAQ,EAAE;wBACR,IAAI,EAAE,0DAA0D,KAAK,CAAC,YAAY,gIAChF,KAAK;4BACH,CAAC,CAAC,oBAAoB,KAAK,6MAA6M;4BACxO,CAAC,CAAC,EACN,EAAE;qBACH;iBACF,CAAC,CAAC;YACL,CAAC;YAED,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,IAAI,MAAM,EAAE,CAAC;gBACX,gFAAgF;gBAChF,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,KAAK,CACtE,CAAC,GAAY,EAAE,EAAE;oBACf,IAAI,eAAe,CAAC,GAAG,EAAE,kBAAkB,CAAC,EAAE,CAAC;wBAC7C,MAAM,GAAG,CAAC,IAAI,CACZ,kBAAkB,EAClB,GAAG,CAAC,OAAO,EACX,EAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,EAC7B,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAC;oBACJ,CAAC;oBACD,MAAM,GAAG,CAAC;gBACZ,CAAC,CACF,CAAC;gBACF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,YAAY,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE;oBACtF,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,SAAS,CAAC;oBACrE,MAAM,EAAE,GAAG,CAAC,MAAM;iBACnB,CAAC,CAAC;gBACH,MAAM,GAAG;oBACP,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oBAC3B,cAAc,EAAE,MAAM,CAAC,QAAQ;oBAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN;;;;;;;mBAOG;gBACH,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;oBAC9B,kEAAkE;gBACpE,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC;QAC3B,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5C,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE;YACrC,WAAW,EAAE,KAAK,CAAC,YAAY;YAC/B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,GAAG,CAAC,MAAM,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;SAC1E,CAAC,CAAC;QAEH,GAAG,CAAC,MAAM,CAAC;YACT,YAAY,EAAE;gBACZ,OAAO;gBACP,GAAG,CAAC,MAAM,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;gBACtC,GAAG,CAAC,MAAM,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;gBACtC,GAAG,EAAE,QAAQ,CAAC,GAAG;aAClB;SACF,CAAC,CAAC;QACH;;;;;WAKG;QACH,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,OAAO,GAAa,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3E,mFAAmF;QACnF,kFAAkF;QAClF,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3D,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;YACrB,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,CAAC;YACrF,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CACV,+CAA+C,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,oBAAoB,KAAK,CAAC,QAAQ,CAAC,cAAc,EAAE,2BAA2B,KAAK,CAAC,YAAY,yJAAyJ,CACzU,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,CAAC,eAAe,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,IAAI,CACV,GAAG,KAAK,CAAC,eAAe,CAAC,cAAc,EAAE,WAAW,KAAK,CAAC,QAAQ,CAAC,cAAc,EAAE,sCACjF,KAAK,CAAC,eAAe,KAAK,CAAC;gBACzB,CAAC,CAAC,yEAAyE;gBAC3E,CAAC,CAAC,uEACN,gDAAgD,CACjD,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CACV,6CACE,KAAK,CAAC,QAAQ,KAAK,CAAC;gBAClB,CAAC,CAAC,kCAAkC;gBACpC,CAAC,CAAC,OAAO,KAAK,CAAC,QAAQ,CAAC,cAAc,EAAE,+BAC5C,8EAA8E,CAC/E,CAAC;QACJ,CAAC;QACD,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CACV,0TAA0T,CAC3T,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YACpC,OAAO,CAAC,IAAI,CACV,iBAAiB,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE,sBAAsB,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,KAAK,CAAC,QAAQ,CAAC,cAAc,EAAE,2DAA2D,CAC5M,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ;;;;eAIG;YACH,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;YAClD,OAAO,CAAC,IAAI,CACV,SAAS,KAAK,CAAC;gBACb,CAAC,CAAC,+EAA+E,KAAK,CAAC,QAAQ,CAAC,cAAc,EAAE,uCAAuC;gBACvJ,CAAC,CAAC,oFAAoF,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,qDAAqD,SAAS,CAAC,cAAc,EAAE,gCAChM,KAAK,CAAC,QAAQ,IAAI,WAAW;oBAC3B,CAAC,CAAC,0BAA0B,KAAK,CAAC,QAAQ,CAAC,cAAc,EAAE,uFAAuF;oBAClJ,CAAC,CAAC,2JACN,EAAE,CACP,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CACV,OAAO,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,yCAAyC,MAAM,CAAC,SAAS,gBAAgB,MAAM,CAAC,QAAQ,qIAAqI,CAC3Q,CAAC;QACJ,CAAC;QACD,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAErC,OAAO;YACL,WAAW,EAAE,KAAK,CAAC,YAAY;YAC/B,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU;YAC1C,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,WAAW,EAAE;gBACX,GAAG,CAAC,WAAW,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;gBAC1C,GAAG,CAAC,UAAU,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC;aACvC;YACD,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,YAAY,EAAE,OAAO;YACrB,GAAG,MAAM;SACV,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;QACjB,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;QAC1C,MAAM,MAAM,GAAG,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,sCAAsC,CAAC;QAC3F,MAAM,KAAK,GAAa;YACtB,qBAAqB,MAAM,CAAC,WAAW,IAAI;YAC3C,aAAa,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,YAAY,iCAAiC,MAAM,CAAC,eAAe,kBAAkB,MAAM,EAAE;YACrI,mBAAmB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACrD,iBAAiB,MAAM,CAAC,SAAS,oCAAoC,MAAM,CAAC,UAAU,2BAA2B,MAAM,CAAC,cAAc,GACpI,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,2DAA2D,CAAC,CAAC,CAAC,EACxF,EAAE;SACH,CAAC;QACF,KAAK,CAAC,IAAI,CACR,MAAM,CAAC,SAAS;YACd,CAAC,CAAC,uBAAuB,MAAM,CAAC,SAAS,kBAAkB,MAAM,CAAC,QAAQ,sBAAsB,MAAM,CAAC,cAAc,oGAAoG;YACzN,CAAC,CAAC,4GAA4G,CACjH,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,MAAM,CAAC,YAAY,CAAC,MAAM,0BAA0B,CAAC,CAAC;QACjF,sFAAsF;QACtF,4EAA4E;QAC5E,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,eAAe,CACzC,MAAM,CAAC,YAAY,EACnB,CAAC,GAAG,MAAM,CAAC,cAAc,EAAE,WAAW,CAAC,EACvC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CACpE,CAAC;QACF,IAAI,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACnC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACtC,KAAK,CAAC,IAAI,CACR,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;iBAChB,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBACpC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;iBAClE,IAAI,CAAC,KAAK,CAAC,CACf,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC;CACF,CAAC,CAAC;AAEL,sFAAsF;AACtF,MAAM,CAAC,MAAM,uBAAuB,GAAG,6BAA6B,CAAC,IAAI,CAAC,CAAC;AAe3E;;;;;;;;;;;;;;GAcG;AACH,SAAS,cAAc,CACrB,GAAY,EACZ,WAAmB,EACnB,OAA2F;IAE3F,MAAM,IAAI,GAAI,GAAgB,CAAC,IAAI,CAAC;IACpC,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC;IAC5B,MAAM,OAAO,GAAI,GAAa,CAAC,OAAO,CAAC;IACvC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,oBAAoB;YACvB,OAAO;gBACL,MAAM;gBACN,OAAO;gBACP,IAAI,EAAE,+CAA+C,WAAW,8CAA8C,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE;aACnL,CAAC;QACJ,KAAK,WAAW;YACd,OAAO;gBACL,MAAM;gBACN,OAAO;gBACP,IAAI,EAAE,YAAY,WAAW,oHAAoH;aAClJ,CAAC;QACJ,KAAK,mBAAmB;YACtB,OAAO;gBACL,MAAM;gBACN,OAAO;gBACP,8FAA8F;gBAC9F,IAAI,EACF,IAAI,EAAE,WAAW,KAAK,IAAI;oBACxB,CAAC,CAAC,yLAAyL,WAAW,+GAA+G;oBACrT,CAAC,CAAC,kCAAkC,WAAW,yJAAyJ;aAC7M,CAAC;QACJ,KAAK,cAAc;YACjB,OAAO;gBACL,MAAM;gBACN,OAAO;gBACP,IAAI,EAAE,iEAAiE,WAAW,+GAA+G;aAClM,CAAC;QACJ,KAAK,gBAAgB;YACnB,OAAO;gBACL,MAAM;gBACN,OAAO;gBACP,IAAI,EAAE,iDAAiD,WAAW,yCAAyC,YAAY,+CAA+C;aACvK,CAAC;QACJ,KAAK,cAAc;YACjB,OAAO;gBACL,MAAM;gBACN,OAAO;gBACP,IAAI,EAAE,4JAA4J,WAAW,qBAAqB;aACnM,CAAC;QACJ,KAAK,gBAAgB;YACnB,4EAA4E;YAC5E,IAAI,IAAI,EAAE,SAAS,KAAK,IAAI,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACzC,OAAO;oBACL,MAAM;oBACN,OAAO;oBACP,SAAS,EAAE,IAAI;oBACf,IAAI,EACF,OAAO,CAAC,QAAQ,KAAK,WAAW;wBAC9B,CAAC,CAAC,sCAAsC,MAAM,SAAS,WAAW,kKAAkK;wBACpO,CAAC,CAAC,iCAAiC,MAAM,SAAS,WAAW,8FAA8F;iBAChK,CAAC;YACJ,CAAC;YACD,wFAAwF;YACxF,IAAI,OAAO,IAAI,EAAE,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACrC,OAAO;oBACL,MAAM;oBACN,OAAO;oBACP,IAAI,EACF,OAAO,CAAC,QAAQ,KAAK,WAAW;wBAC9B,CAAC,CAAC,oDAAoD,IAAI,CAAC,MAAM,SAAS,WAAW,4UAA4U;wBACja,CAAC,CAAC,+CAA+C,IAAI,CAAC,MAAM,SAAS,WAAW,yOAAyO;iBAC9T,CAAC;YACJ,CAAC;YACD,+EAA+E;YAC/E,IAAI,OAAO,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;gBACrC,OAAO;oBACL,MAAM;oBACN,OAAO;oBACP,IAAI,EAAE,iDAAiD,WAAW,0TAA0T;iBAC7X,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,MAAM;gBACN,OAAO;gBACP,IAAI,EAAE,qDAAqD,WAAW,0EAA0E;aACjJ,CAAC;QACJ;YACE,OAAO;IACX,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"eurostat-download-dataset.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/eurostat-download-dataset.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -138,7 +138,7 @@ export const eurostatGetDatasetInfo = tool('eurostat_get_dataset_info', {
|
|
|
138
138
|
`# ${result.label}`,
|
|
139
139
|
`**Code:** ${result.code}`,
|
|
140
140
|
`**Period:** ${start || end ? `${start ?? UNREPORTED} – ${end ?? UNREPORTED}` : UNREPORTED}`,
|
|
141
|
-
`**Observations:** ${result.obsCount?.toLocaleString() ?? UNREPORTED}`,
|
|
141
|
+
`**Observations:** ${result.obsCount?.toLocaleString('en-US') ?? UNREPORTED}`,
|
|
142
142
|
`**Last updated:** ${result.lastUpdated ?? UNREPORTED}`,
|
|
143
143
|
];
|
|
144
144
|
if (result.metadataUrl)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eurostat-get-dataset-info.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/eurostat-get-dataset-info.tool.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"eurostat-get-dataset-info.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/eurostat-get-dataset-info.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@ export declare const createEurostatGetDimensionValues: (clampLimits: boolean) =>
|
|
|
16
16
|
nuts3: "nuts3";
|
|
17
17
|
}>>;
|
|
18
18
|
filter: z.ZodPreprocess<z.ZodOptional<z.ZodString>, unknown>;
|
|
19
|
+
code_prefix: z.ZodPreprocess<z.ZodOptional<z.ZodString>, unknown>;
|
|
19
20
|
limit: z.ZodDefault<z.ZodNumber>;
|
|
20
21
|
cursor: z.ZodPreprocess<z.ZodOptional<z.ZodString>, unknown>;
|
|
21
22
|
canvas_id: z.ZodOptional<z.ZodString>;
|
|
@@ -56,8 +57,8 @@ export declare const createEurostatGetDimensionValues: (clampLimits: boolean) =>
|
|
|
56
57
|
}, {
|
|
57
58
|
readonly reason: "invalid_cursor";
|
|
58
59
|
readonly code: JsonRpcErrorCode.InvalidParams;
|
|
59
|
-
readonly when: "The cursor is malformed, was issued for a different dataset_code, dimension, geo_level or
|
|
60
|
-
readonly recovery: "Call again without cursor, keeping dataset_code, dimension, geo_level and
|
|
60
|
+
readonly when: "The cursor is malformed, was issued for a different dataset_code, dimension, geo_level, filter or code_prefix, or resumes after a code the list no longer holds.";
|
|
61
|
+
readonly recovery: "Call again without cursor, keeping dataset_code, dimension, geo_level, filter and code_prefix, then page with the nextCursor that call returns.";
|
|
61
62
|
}, {
|
|
62
63
|
readonly reason: "upstream_fault";
|
|
63
64
|
readonly code: JsonRpcErrorCode.ServiceUnavailable;
|
|
@@ -84,6 +85,7 @@ export declare const eurostatGetDimensionValues: import("@cyanheads/mcp-ts-core"
|
|
|
84
85
|
nuts3: "nuts3";
|
|
85
86
|
}>>;
|
|
86
87
|
filter: z.ZodPreprocess<z.ZodOptional<z.ZodString>, unknown>;
|
|
88
|
+
code_prefix: z.ZodPreprocess<z.ZodOptional<z.ZodString>, unknown>;
|
|
87
89
|
limit: z.ZodDefault<z.ZodNumber>;
|
|
88
90
|
cursor: z.ZodPreprocess<z.ZodOptional<z.ZodString>, unknown>;
|
|
89
91
|
canvas_id: z.ZodOptional<z.ZodString>;
|
|
@@ -124,8 +126,8 @@ export declare const eurostatGetDimensionValues: import("@cyanheads/mcp-ts-core"
|
|
|
124
126
|
}, {
|
|
125
127
|
readonly reason: "invalid_cursor";
|
|
126
128
|
readonly code: JsonRpcErrorCode.InvalidParams;
|
|
127
|
-
readonly when: "The cursor is malformed, was issued for a different dataset_code, dimension, geo_level or
|
|
128
|
-
readonly recovery: "Call again without cursor, keeping dataset_code, dimension, geo_level and
|
|
129
|
+
readonly when: "The cursor is malformed, was issued for a different dataset_code, dimension, geo_level, filter or code_prefix, or resumes after a code the list no longer holds.";
|
|
130
|
+
readonly recovery: "Call again without cursor, keeping dataset_code, dimension, geo_level, filter and code_prefix, then page with the nextCursor that call returns.";
|
|
129
131
|
}, {
|
|
130
132
|
readonly reason: "upstream_fault";
|
|
131
133
|
readonly code: JsonRpcErrorCode.ServiceUnavailable;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eurostat-get-dimension-values.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/eurostat-get-dimension-values.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAsB,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAiB,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"eurostat-get-dimension-values.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/eurostat-get-dimension-values.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAsB,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAiB,MAAM,+BAA+B,CAAC;AAiNhF,iEAAiE;AACjE,eAAO,MAAM,gCAAgC,gBAAiB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAibjE,CAAC;AAEL,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAyC,CAAC"}
|