@nz-open-data-connectors/nz-sources 0.1.0 → 0.1.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/LICENSE +21 -0
- package/README.md +72 -28
- package/dist/adeSearch.d.ts.map +1 -1
- package/dist/adeSearch.js +3 -5
- package/dist/adeSearch.js.map +1 -1
- package/dist/apiKey.d.ts +12 -0
- package/dist/apiKey.d.ts.map +1 -0
- package/dist/apiKey.js +18 -0
- package/dist/apiKey.js.map +1 -0
- package/dist/arcgisHub.d.ts.map +1 -1
- package/dist/arcgisHub.js +4 -9
- package/dist/arcgisHub.js.map +1 -1
- package/dist/dataGovtDatastore.d.ts.map +1 -1
- package/dist/dataGovtDatastore.js +4 -6
- package/dist/dataGovtDatastore.js.map +1 -1
- package/dist/dataGovtNz.d.ts.map +1 -1
- package/dist/dataGovtNz.js +3 -5
- package/dist/dataGovtNz.js.map +1 -1
- package/dist/digitalNz.d.ts.map +1 -1
- package/dist/digitalNz.js +11 -13
- package/dist/digitalNz.js.map +1 -1
- package/dist/errors.d.ts +12 -2
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +8 -4
- package/dist/errors.js.map +1 -1
- package/dist/geonet.d.ts.map +1 -1
- package/dist/geonet.js +5 -5
- package/dist/geonet.js.map +1 -1
- package/dist/http.d.ts +34 -0
- package/dist/http.d.ts.map +1 -0
- package/dist/http.js +83 -0
- package/dist/http.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/lawa.d.ts.map +1 -1
- package/dist/lawa.js +3 -5
- package/dist/lawa.js.map +1 -1
- package/dist/linz.d.ts.map +1 -1
- package/dist/linz.js +8 -6
- package/dist/linz.js.map +1 -1
- package/dist/lris.d.ts.map +1 -1
- package/dist/lris.js +3 -5
- package/dist/lris.js.map +1 -1
- package/dist/mfe.d.ts.map +1 -1
- package/dist/mfe.js +3 -5
- package/dist/mfe.js.map +1 -1
- package/dist/nzor.d.ts.map +1 -1
- package/dist/nzor.js +3 -5
- package/dist/nzor.js.map +1 -1
- package/dist/nzta.d.ts.map +1 -1
- package/dist/nzta.js +4 -5
- package/dist/nzta.js.map +1 -1
- package/dist/nztaOpenData.d.ts +50 -0
- package/dist/nztaOpenData.d.ts.map +1 -0
- package/dist/nztaOpenData.js +107 -0
- package/dist/nztaOpenData.js.map +1 -0
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +2 -0
- package/dist/registry.js.map +1 -1
- package/dist/tradeMe.d.ts.map +1 -1
- package/dist/tradeMe.js +5 -5
- package/dist/tradeMe.js.map +1 -1
- package/package.json +27 -5
package/dist/http.d.ts
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Identifies this client to the public APIs it calls.
|
|
3
|
+
*
|
|
4
|
+
* Several NZ government endpoints sit behind gateways that rate-limit or
|
|
5
|
+
* block clients they cannot identify, so every adapter sends this. The string
|
|
6
|
+
* carries no version, so it cannot go stale between releases.
|
|
7
|
+
*/
|
|
8
|
+
export declare const USER_AGENT = "nz-open-data-connectors (Language=TypeScript)";
|
|
9
|
+
/** Per-request timeout in milliseconds, applied to every adapter. */
|
|
10
|
+
export declare const DEFAULT_TIMEOUT_MS = 30000;
|
|
11
|
+
/** Options shared by the shared HTTP helpers. */
|
|
12
|
+
export interface HttpGetOptions {
|
|
13
|
+
/** Fetch implementation override, used by tests. */
|
|
14
|
+
fetchImpl?: typeof globalThis.fetch | undefined;
|
|
15
|
+
/** Extra request headers, merged over the defaults. */
|
|
16
|
+
headers?: Record<string, string> | undefined;
|
|
17
|
+
/** Overrides {@link DEFAULT_TIMEOUT_MS}. */
|
|
18
|
+
timeoutMs?: number | undefined;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Issues a GET through the shared HTTP layer.
|
|
22
|
+
*
|
|
23
|
+
* Every adapter goes through here so that three things happen the same way
|
|
24
|
+
* for all 14 sources: a `user-agent` identifies the client, a timeout aborts
|
|
25
|
+
* a request that hangs, and a failure carries whether retrying is worthwhile.
|
|
26
|
+
*
|
|
27
|
+
* @param source - Source name used in the error message, e.g. "GeoNet".
|
|
28
|
+
* @param url - Absolute URL or URL object to fetch.
|
|
29
|
+
* @param options - Fetch override, extra headers, and timeout.
|
|
30
|
+
* @returns The response, already checked for a successful status.
|
|
31
|
+
* @throws {NzSourceApiError} On a non-2xx status, an abort, or a network error.
|
|
32
|
+
*/
|
|
33
|
+
export declare function httpGet(source: string, url: string | URL, options?: HttpGetOptions): Promise<Response>;
|
|
34
|
+
//# sourceMappingURL=http.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,kDAAkD,CAAC;AAE1E,qEAAqE;AACrE,eAAO,MAAM,kBAAkB,QAAS,CAAC;AAQzC,iDAAiD;AACjD,MAAM,WAAW,cAAc;IAC7B,oDAAoD;IACpD,SAAS,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,GAAG,SAAS,CAAC;IAChD,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IAC7C,4CAA4C;IAC5C,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AAyBD;;;;;;;;;;;;GAYG;AACH,wBAAsB,OAAO,CAC3B,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,GAAG,GAAG,EACjB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,QAAQ,CAAC,CA8BnB"}
|
package/dist/http.js
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { NzSourceApiError } from './errors.js';
|
|
2
|
+
/**
|
|
3
|
+
* Identifies this client to the public APIs it calls.
|
|
4
|
+
*
|
|
5
|
+
* Several NZ government endpoints sit behind gateways that rate-limit or
|
|
6
|
+
* block clients they cannot identify, so every adapter sends this. The string
|
|
7
|
+
* carries no version, so it cannot go stale between releases.
|
|
8
|
+
*/
|
|
9
|
+
export const USER_AGENT = 'nz-open-data-connectors (Language=TypeScript)';
|
|
10
|
+
/** Per-request timeout in milliseconds, applied to every adapter. */
|
|
11
|
+
export const DEFAULT_TIMEOUT_MS = 30_000;
|
|
12
|
+
/** The one status code worth retrying: the server is asking us to slow down. */
|
|
13
|
+
const HTTP_TOO_MANY_REQUESTS = 429;
|
|
14
|
+
/** The lowest status code that means the server failed rather than the request. */
|
|
15
|
+
const HTTP_INTERNAL_SERVER_ERROR = 500;
|
|
16
|
+
/**
|
|
17
|
+
* Builds the request headers, letting a caller replace the User-Agent.
|
|
18
|
+
*
|
|
19
|
+
* Most adapters send only the default identity. A few sources (the SEC and
|
|
20
|
+
* the National Weather Service, for example) ask for a more descriptive
|
|
21
|
+
* User-Agent of their own, and that one wins. Other headers merge over the
|
|
22
|
+
* defaults.
|
|
23
|
+
*
|
|
24
|
+
* @param extra - Headers supplied by the adapter.
|
|
25
|
+
* @returns The headers for one request.
|
|
26
|
+
*/
|
|
27
|
+
function buildRequestHeaders(extra) {
|
|
28
|
+
const headers = { 'user-agent': USER_AGENT };
|
|
29
|
+
for (const [name, value] of Object.entries(extra ?? {})) {
|
|
30
|
+
if (name.toLowerCase() === 'user-agent') {
|
|
31
|
+
headers['user-agent'] = value;
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
headers[name] = value;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return headers;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Issues a GET through the shared HTTP layer.
|
|
41
|
+
*
|
|
42
|
+
* Every adapter goes through here so that three things happen the same way
|
|
43
|
+
* for all 14 sources: a `user-agent` identifies the client, a timeout aborts
|
|
44
|
+
* a request that hangs, and a failure carries whether retrying is worthwhile.
|
|
45
|
+
*
|
|
46
|
+
* @param source - Source name used in the error message, e.g. "GeoNet".
|
|
47
|
+
* @param url - Absolute URL or URL object to fetch.
|
|
48
|
+
* @param options - Fetch override, extra headers, and timeout.
|
|
49
|
+
* @returns The response, already checked for a successful status.
|
|
50
|
+
* @throws {NzSourceApiError} On a non-2xx status, an abort, or a network error.
|
|
51
|
+
*/
|
|
52
|
+
export async function httpGet(source, url, options = {}) {
|
|
53
|
+
const doFetch = options.fetchImpl ?? globalThis.fetch;
|
|
54
|
+
const timeoutMs = options.timeoutMs ?? DEFAULT_TIMEOUT_MS;
|
|
55
|
+
const controller = new AbortController();
|
|
56
|
+
const timer = setTimeout(() => controller.abort(), timeoutMs);
|
|
57
|
+
let response;
|
|
58
|
+
try {
|
|
59
|
+
response = await doFetch(url, {
|
|
60
|
+
headers: buildRequestHeaders(options.headers),
|
|
61
|
+
signal: controller.signal,
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
if (controller.signal.aborted) {
|
|
66
|
+
throw new NzSourceApiError(source, `request timed out after ${timeoutMs}ms`, {
|
|
67
|
+
retryable: true,
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
throw new NzSourceApiError(source, `request failed: ${String(error)}`, { retryable: true });
|
|
71
|
+
}
|
|
72
|
+
finally {
|
|
73
|
+
clearTimeout(timer);
|
|
74
|
+
}
|
|
75
|
+
if (!response.ok) {
|
|
76
|
+
throw new NzSourceApiError(source, `HTTP ${response.status}`, {
|
|
77
|
+
status: response.status,
|
|
78
|
+
retryable: response.status === HTTP_TOO_MANY_REQUESTS || response.status >= HTTP_INTERNAL_SERVER_ERROR,
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
return response;
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=http.js.map
|
package/dist/http.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,+CAA+C,CAAC;AAE1E,qEAAqE;AACrE,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAEzC,gFAAgF;AAChF,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAEnC,mFAAmF;AACnF,MAAM,0BAA0B,GAAG,GAAG,CAAC;AAYvC;;;;;;;;;;GAUG;AACH,SAAS,mBAAmB,CAAC,KAAyC;IACpE,MAAM,OAAO,GAA2B,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;IACrE,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;QACxD,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,YAAY,EAAE,CAAC;YACxC,OAAO,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACxB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAAc,EACd,GAAiB,EACjB,UAA0B,EAAE;IAE5B,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC;IACtD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,kBAAkB,CAAC;IAC1D,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;IAC9D,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE;YAC5B,OAAO,EAAE,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC;YAC7C,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC9B,MAAM,IAAI,gBAAgB,CAAC,MAAM,EAAE,2BAA2B,SAAS,IAAI,EAAE;gBAC3E,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;QACL,CAAC;QACD,MAAM,IAAI,gBAAgB,CAAC,MAAM,EAAE,mBAAmB,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9F,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,gBAAgB,CAAC,MAAM,EAAE,QAAQ,QAAQ,CAAC,MAAM,EAAE,EAAE;YAC5D,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,SAAS,EACP,QAAQ,CAAC,MAAM,KAAK,sBAAsB,IAAI,QAAQ,CAAC,MAAM,IAAI,0BAA0B;SAC9F,CAAC,CAAC;IACL,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -20,6 +20,8 @@ export { searchDigitalNzRecords, searchDigitalNzMedia, getDigitalNzCategoryFilte
|
|
|
20
20
|
export type { DigitalNzRecord, DigitalNzMediaType } from './digitalNz.js';
|
|
21
21
|
/** Errors shared by every source adapter. */
|
|
22
22
|
export { NzSourceApiError, NzSourceError, NzSourceParseError } from './errors.js';
|
|
23
|
+
/** API error detail type. */
|
|
24
|
+
export type { NzSourceApiErrorDetails } from './errors.js';
|
|
23
25
|
/** GeoNet felt earthquake data. */
|
|
24
26
|
export { fetchGeoNetFeltQuakes, parseGeoNetQuakes, summarizeGeoNetQuakes, geonetAdapter, } from './geonet.js';
|
|
25
27
|
/** GeoNet types. */
|
|
@@ -48,12 +50,22 @@ export type { NzorName, NzorSearchResult } from './nzor.js';
|
|
|
48
50
|
export { parseNztaHolidayHotspots, nztaAdapter } from './nzta.js';
|
|
49
51
|
/** Waka Kotahi types. */
|
|
50
52
|
export type { NztaHolidayHotspot } from './nzta.js';
|
|
53
|
+
/** Waka Kotahi (NZTA) open data hub catalogue (DCAT 1.1). */
|
|
54
|
+
export { fetchNztaOpenDataCatalogue, parseNztaOpenDataCatalogue, nztaOpenDataAdapter, NZTA_OPEN_DATA_SOURCE_ID, } from './nztaOpenData.js';
|
|
55
|
+
/** Waka Kotahi open data types. */
|
|
56
|
+
export type { NztaOpenDataCatalogue, NztaOpenDataDataset, NztaOpenDataDistribution, } from './nztaOpenData.js';
|
|
51
57
|
/** The uniform adapter registry and probe helpers. */
|
|
52
58
|
export { NZ_DATA_SOURCES, getNzDataSource, probeAllNzDataSources, probeNzDataSource, } from './registry.js';
|
|
53
59
|
/** Trade Me category data. */
|
|
54
60
|
export { fetchTradeMeCategories, parseTradeMeCategories, tradeMeAdapter } from './tradeMe.js';
|
|
55
61
|
/** Trade Me types. */
|
|
56
62
|
export type { TradeMeCategory } from './tradeMe.js';
|
|
63
|
+
/** API key normalization shared by adapters, the API, and the CLI. */
|
|
64
|
+
export { normalizeSourceApiKey } from './apiKey.js';
|
|
65
|
+
/** The shared HTTP layer every adapter fetch goes through. */
|
|
66
|
+
export { httpGet, USER_AGENT, DEFAULT_TIMEOUT_MS } from './http.js';
|
|
67
|
+
/** Shared HTTP layer types. */
|
|
68
|
+
export type { HttpGetOptions } from './http.js';
|
|
57
69
|
/** Shared adapter contract types. */
|
|
58
70
|
export type { NzDataAdapter, NzFetchOptions, NzSourceAuth, NzSourceProbe } from './types.js';
|
|
59
71
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -24,8 +24,14 @@ export { parseMfeLayers, mfeAdapter } from './mfe.js';
|
|
|
24
24
|
export { searchNzorNames, parseNzorNames, nzorAdapter } from './nzor.js';
|
|
25
25
|
/** Waka Kotahi holiday journey hotspots. */
|
|
26
26
|
export { parseNztaHolidayHotspots, nztaAdapter } from './nzta.js';
|
|
27
|
+
/** Waka Kotahi (NZTA) open data hub catalogue (DCAT 1.1). */
|
|
28
|
+
export { fetchNztaOpenDataCatalogue, parseNztaOpenDataCatalogue, nztaOpenDataAdapter, NZTA_OPEN_DATA_SOURCE_ID, } from './nztaOpenData.js';
|
|
27
29
|
/** The uniform adapter registry and probe helpers. */
|
|
28
30
|
export { NZ_DATA_SOURCES, getNzDataSource, probeAllNzDataSources, probeNzDataSource, } from './registry.js';
|
|
29
31
|
/** Trade Me category data. */
|
|
30
32
|
export { fetchTradeMeCategories, parseTradeMeCategories, tradeMeAdapter } from './tradeMe.js';
|
|
33
|
+
/** API key normalization shared by adapters, the API, and the CLI. */
|
|
34
|
+
export { normalizeSourceApiKey } from './apiKey.js';
|
|
35
|
+
/** The shared HTTP layer every adapter fetch goes through. */
|
|
36
|
+
export { httpGet, USER_AGENT, DEFAULT_TIMEOUT_MS } from './http.js';
|
|
31
37
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAG1F,mEAAmE;AACnE,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AAQxB,mCAAmC;AACnC,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAGzB,kDAAkD;AAClD,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAGhC,yCAAyC;AACzC,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,EACtB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAGxB,6CAA6C;AAC7C,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAG1F,mEAAmE;AACnE,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AAQxB,mCAAmC;AACnC,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAGzB,kDAAkD;AAClD,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAGhC,yCAAyC;AACzC,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,EACtB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAGxB,6CAA6C;AAC7C,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGlF,mCAAmC;AACnC,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,aAAa,GACd,MAAM,aAAa,CAAC;AAGrB,yBAAyB;AACzB,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAG3E,2CAA2C;AAC3C,OAAO,EAAE,0BAA0B,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAGpE,uCAAuC;AACvC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAGzD,wCAAwC;AACxC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAGtD,yDAAyD;AACzD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAGzE,4CAA4C;AAC5C,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAGlE,6DAA6D;AAC7D,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAO3B,sDAAsD;AACtD,OAAO,EACL,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,8BAA8B;AAC9B,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9F,sEAAsE;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,8DAA8D;AAC9D,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC"}
|
package/dist/lawa.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lawa.d.ts","sourceRoot":"","sources":["../src/lawa.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lawa.d.ts","sourceRoot":"","sources":["../src/lawa.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,0DAA0D;AAC1D,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,cAAc,EAAE,OAAO,CAAC;CACzB;AAiBD;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,OAAO,GAAG,oBAAoB,EAAE,CAkBnF;AAED;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC9C,SAAS,GAAE,OAAO,UAAU,CAAC,KAAwB,GACpD,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAOjC;AAED,6DAA6D;AAC7D,eAAO,MAAM,WAAW,EAAE,aAAa,CAAC,oBAAoB,EAAE,CAS7D,CAAC"}
|
package/dist/lawa.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
2
|
+
import { NzSourceParseError } from './errors.js';
|
|
3
|
+
import { httpGet } from './http.js';
|
|
3
4
|
import { readFixtureJson } from './fixtures.js';
|
|
4
5
|
const LAWA_SITE_SCHEMA = z.object({
|
|
5
6
|
Id: z.number(),
|
|
@@ -48,10 +49,7 @@ export function parseLawaRiverQualitySites(payload) {
|
|
|
48
49
|
* @returns Monitoring site records, excluding region boundary rows.
|
|
49
50
|
*/
|
|
50
51
|
export async function fetchLawaRiverQualitySites(fetchImpl = globalThis.fetch) {
|
|
51
|
-
const response = await
|
|
52
|
-
if (!response.ok) {
|
|
53
|
-
throw new NzSourceApiError('LAWA', `HTTP ${response.status}`);
|
|
54
|
-
}
|
|
52
|
+
const response = await httpGet('LAWA', 'https://www.lawa.org.nz/umbraco/api/mapservice/RiverQualitySites', { fetchImpl: fetchImpl });
|
|
55
53
|
return parseLawaRiverQualitySites(await response.json());
|
|
56
54
|
}
|
|
57
55
|
/** LAWA adapter: river quality monitoring sites, keyless. */
|
package/dist/lawa.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lawa.js","sourceRoot":"","sources":["../src/lawa.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"lawa.js","sourceRoot":"","sources":["../src/lawa.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAgBhD,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;IACrB,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE;IAC9B,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE;IAC3B,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACpD,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B,CAAC,OAAgB;IACzD,MAAM,MAAM,GAAG,oBAAoB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACvD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC,IAAI;SACf,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;SACpC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACd,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;QACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;QACzC,cAAc,EAAE,IAAI,CAAC,cAAc;KACpC,CAAC,CAAC,CAAC;AACR,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,YAAqC,UAAU,CAAC,KAAK;IAErD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAC5B,MAAM,EACN,kEAAkE,EAClE,EAAE,SAAS,EAAE,SAAS,EAAE,CACzB,CAAC;IACF,OAAO,0BAA0B,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,6DAA6D;AAC7D,MAAM,CAAC,MAAM,WAAW,GAA0C;IAChE,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,0BAA0B;IAChC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,uEAAuE;IACpF,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,0BAA0B,CAAC,OAAO,EAAE,SAAS,CAAC;IACtE,KAAK,EAAE,0BAA0B;IACjC,WAAW,EAAE,GAAG,EAAE,CAChB,0BAA0B,CAAC,eAAe,CAAC,0CAA0C,CAAC,CAAC;CAC1F,CAAC"}
|
package/dist/linz.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linz.d.ts","sourceRoot":"","sources":["../src/linz.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"linz.d.ts","sourceRoot":"","sources":["../src/linz.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,iEAAiE;AACjE,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAUD,mEAAmE;AACnE,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,EAAE,CAU7D;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAA;CAAO,GACrE,OAAO,CAAC,SAAS,EAAE,CAAC,CAQtB;AAED,qDAAqD;AACrD,eAAO,MAAM,WAAW,EAAE,aAAa,CAAC,SAAS,EAAE,CAYlD,CAAC"}
|
package/dist/linz.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
2
|
+
import { NzSourceParseError } from './errors.js';
|
|
3
|
+
import { normalizeSourceApiKey } from './apiKey.js';
|
|
4
|
+
import { httpGet } from './http.js';
|
|
3
5
|
import { readFixtureJson } from './fixtures.js';
|
|
4
6
|
const LINZ_LAYER_SCHEMA = z.object({
|
|
5
7
|
id: z.number(),
|
|
@@ -26,12 +28,11 @@ export function parseLinzLayers(payload) {
|
|
|
26
28
|
*/
|
|
27
29
|
export async function searchLinzLayers(query, options = {}) {
|
|
28
30
|
const url = `https://data.linz.govt.nz/services/api/v1/layers?search=${encodeURIComponent(query)}`;
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
+
const apiKey = normalizeSourceApiKey(options.apiKey);
|
|
32
|
+
const response = await httpGet('LINZ', url, {
|
|
33
|
+
fetchImpl: options.fetchImpl,
|
|
34
|
+
...(apiKey === undefined ? {} : { headers: { 'x-api-key': apiKey } }),
|
|
31
35
|
});
|
|
32
|
-
if (!response.ok) {
|
|
33
|
-
throw new NzSourceApiError('LINZ', `HTTP ${response.status}`);
|
|
34
|
-
}
|
|
35
36
|
return parseLinzLayers(await response.json());
|
|
36
37
|
}
|
|
37
38
|
/** LINZ adapter: catalogue layer search, keyless. */
|
|
@@ -41,6 +42,7 @@ export const linzAdapter = {
|
|
|
41
42
|
auth: 'none',
|
|
42
43
|
description: 'Searches LINZ layers (property titles, parcels, boundaries).',
|
|
43
44
|
fetchLive: (options) => searchLinzLayers('property', {
|
|
45
|
+
...(options?.apiKey === undefined ? {} : { apiKey: options.apiKey }),
|
|
44
46
|
...(options?.fetchImpl === undefined ? {} : { fetchImpl: options.fetchImpl }),
|
|
45
47
|
}),
|
|
46
48
|
parse: parseLinzLayers,
|
package/dist/linz.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linz.js","sourceRoot":"","sources":["../src/linz.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"linz.js","sourceRoot":"","sources":["../src/linz.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAUhD,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CACvC,CAAC,CAAC;AAEH,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;AAE/D,mEAAmE;AACnE,MAAM,UAAU,eAAe,CAAC,OAAgB;IAC9C,MAAM,MAAM,GAAG,2BAA2B,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACjC,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,GAAG,EAAE,KAAK,CAAC,GAAG;KACf,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAAa,EACb,UAAoE,EAAE;IAEtE,MAAM,GAAG,GAAG,2DAA2D,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;IACnG,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE;QAC1C,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,CAAC;KACtE,CAAC,CAAC;IACH,OAAO,eAAe,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,qDAAqD;AACrD,MAAM,CAAC,MAAM,WAAW,GAA+B;IACrD,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,6BAA6B;IACnC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,8DAA8D;IAC3E,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CACrB,gBAAgB,CAAC,UAAU,EAAE;QAC3B,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;QACpE,GAAG,CAAC,OAAO,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;KAC9E,CAAC;IACJ,KAAK,EAAE,eAAe;IACtB,WAAW,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,eAAe,CAAC,wBAAwB,CAAC,CAAC;CAC9E,CAAC"}
|
package/dist/lris.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lris.d.ts","sourceRoot":"","sources":["../src/lris.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lris.d.ts","sourceRoot":"","sources":["../src/lris.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,2DAA2D;AAC3D,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;CACtB;AAWD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,EAAE,CAW7D;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,MAAM,EACb,SAAS,GAAE,OAAO,UAAU,CAAC,KAAwB,GACpD,OAAO,CAAC,SAAS,EAAE,CAAC,CAItB;AAED,6DAA6D;AAC7D,eAAO,MAAM,WAAW,EAAE,aAAa,CAAC,SAAS,EAAE,CAQlD,CAAC"}
|
package/dist/lris.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
2
|
+
import { NzSourceParseError } from './errors.js';
|
|
3
|
+
import { httpGet } from './http.js';
|
|
3
4
|
import { readFixtureJson } from './fixtures.js';
|
|
4
5
|
const LRIS_LAYER_SCHEMA = z.object({
|
|
5
6
|
id: z.number(),
|
|
@@ -36,10 +37,7 @@ export function parseLrisLayers(payload) {
|
|
|
36
37
|
*/
|
|
37
38
|
export async function searchLrisLayers(query, fetchImpl = globalThis.fetch) {
|
|
38
39
|
const url = `https://lris.scinfo.org.nz/services/api/v1/layers?search=${encodeURIComponent(query)}`;
|
|
39
|
-
const response = await
|
|
40
|
-
if (!response.ok) {
|
|
41
|
-
throw new NzSourceApiError('LRIS', `HTTP ${response.status}`);
|
|
42
|
-
}
|
|
40
|
+
const response = await httpGet('LRIS', url, { fetchImpl: fetchImpl });
|
|
43
41
|
return parseLrisLayers(await response.json());
|
|
44
42
|
}
|
|
45
43
|
/** LRIS adapter: Landcare Research layer search, keyless. */
|
package/dist/lris.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lris.js","sourceRoot":"","sources":["../src/lris.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"lris.js","sourceRoot":"","sources":["../src/lris.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAWhD,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CACjD,CAAC,CAAC;AAEH,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,OAAgB;IAC9C,MAAM,MAAM,GAAG,2BAA2B,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACjC,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,YAAY,EAAE,KAAK,CAAC,aAAa;KAClC,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAAa,EACb,YAAqC,UAAU,CAAC,KAAK;IAErD,MAAM,GAAG,GAAG,4DAA4D,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;IACpG,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;IACtE,OAAO,eAAe,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,6DAA6D;AAC7D,MAAM,CAAC,MAAM,WAAW,GAA+B;IACrD,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,oCAAoC;IAC1C,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,mEAAmE;IAChF,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC;IACpE,KAAK,EAAE,eAAe;IACtB,WAAW,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,eAAe,CAAC,wCAAwC,CAAC,CAAC;CAC9F,CAAC"}
|
package/dist/mfe.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mfe.d.ts","sourceRoot":"","sources":["../src/mfe.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mfe.d.ts","sourceRoot":"","sources":["../src/mfe.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,mDAAmD;AACnD,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;CACtB;AAWD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,QAAQ,EAAE,CAW3D;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,SAAS,GAAE,OAAO,UAAU,CAAC,KAAwB,GACpD,OAAO,CAAC,QAAQ,EAAE,CAAC,CAIrB;AAED,uEAAuE;AACvE,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,QAAQ,EAAE,CAQhD,CAAC"}
|
package/dist/mfe.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
2
|
+
import { NzSourceParseError } from './errors.js';
|
|
3
|
+
import { httpGet } from './http.js';
|
|
3
4
|
import { readFixtureJson } from './fixtures.js';
|
|
4
5
|
const MFE_LAYER_SCHEMA = z.object({
|
|
5
6
|
id: z.number(),
|
|
@@ -36,10 +37,7 @@ export function parseMfeLayers(payload) {
|
|
|
36
37
|
*/
|
|
37
38
|
export async function searchMfeLayers(query, fetchImpl = globalThis.fetch) {
|
|
38
39
|
const url = `https://data.mfe.govt.nz/services/api/v1/layers?search=${encodeURIComponent(query)}`;
|
|
39
|
-
const response = await
|
|
40
|
-
if (!response.ok) {
|
|
41
|
-
throw new NzSourceApiError('MfE', `HTTP ${response.status}`);
|
|
42
|
-
}
|
|
40
|
+
const response = await httpGet('MfE', url, { fetchImpl: fetchImpl });
|
|
43
41
|
return parseMfeLayers(await response.json());
|
|
44
42
|
}
|
|
45
43
|
/** MfE adapter: Ministry for the Environment layer search, keyless. */
|
package/dist/mfe.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mfe.js","sourceRoot":"","sources":["../src/mfe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"mfe.js","sourceRoot":"","sources":["../src/mfe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAWhD,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CACjD,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAE7D;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,OAAgB;IAC7C,MAAM,MAAM,GAAG,0BAA0B,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC7D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACjC,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,YAAY,EAAE,KAAK,CAAC,aAAa;KAClC,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,KAAa,EACb,YAAqC,UAAU,CAAC,KAAK;IAErD,MAAM,GAAG,GAAG,0DAA0D,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;IAClG,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;IACrE,OAAO,cAAc,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,uEAAuE;AACvE,MAAM,CAAC,MAAM,UAAU,GAA8B;IACnD,EAAE,EAAE,KAAK;IACT,IAAI,EAAE,4BAA4B;IAClC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,sEAAsE;IACnF,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC;IACpE,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,wCAAwC,CAAC,CAAC;CAC7F,CAAC"}
|
package/dist/nzor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nzor.d.ts","sourceRoot":"","sources":["../src/nzor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"nzor.d.ts","sourceRoot":"","sources":["../src/nzor.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,6CAA6C;AAC7C,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,qCAAqC;AACrC,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB;AAOD,8DAA8D;AAC9D,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,CA0BhE;AAED,2DAA2D;AAC3D,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,SAAS,GAAE,OAAO,UAAU,CAAC,KAAwB,GACpD,OAAO,CAAC,gBAAgB,CAAC,CAI3B;AAED,mDAAmD;AACnD,eAAO,MAAM,WAAW,EAAE,aAAa,CAAC,gBAAgB,CAQvD,CAAC"}
|
package/dist/nzor.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { XMLParser } from 'fast-xml-parser';
|
|
2
|
-
import {
|
|
2
|
+
import { NzSourceParseError } from './errors.js';
|
|
3
|
+
import { httpGet } from './http.js';
|
|
3
4
|
import { readFixtureText } from './fixtures.js';
|
|
4
5
|
const NZOR_XML_PARSER = new XMLParser({
|
|
5
6
|
ignoreAttributes: false,
|
|
@@ -34,10 +35,7 @@ export function parseNzorNames(payload) {
|
|
|
34
35
|
/** Searches the NZ Organisms Register. Keyless XML API. */
|
|
35
36
|
export async function searchNzorNames(query, fetchImpl = globalThis.fetch) {
|
|
36
37
|
const url = `https://data.nzor.org.nz/names?q=${encodeURIComponent(query)}`;
|
|
37
|
-
const response = await
|
|
38
|
-
if (!response.ok) {
|
|
39
|
-
throw new NzSourceApiError('NZOR', `HTTP ${response.status}`);
|
|
40
|
-
}
|
|
38
|
+
const response = await httpGet('NZOR', url, { fetchImpl: fetchImpl });
|
|
41
39
|
return parseNzorNames(await response.text());
|
|
42
40
|
}
|
|
43
41
|
/** NZOR adapter: organism name search, keyless. */
|
package/dist/nzor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nzor.js","sourceRoot":"","sources":["../src/nzor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"nzor.js","sourceRoot":"","sources":["../src/nzor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAgBhD,MAAM,eAAe,GAAG,IAAI,SAAS,CAAC;IACpC,gBAAgB,EAAE,KAAK;IACvB,aAAa,EAAE,KAAK;CACrB,CAAC,CAAC;AAEH,8DAA8D;AAC9D,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,CAE3C,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC;IACxC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,kBAAkB,CAAC,MAAM,EAAE,uCAAuC,CAAC,CAAC;IAChF,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,kBAAkB,CAAC,MAAM,EAAE,uCAAuC,CAAC,CAAC;IAChF,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC;IACzC,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,SAAS,KAAK,IAAI,IAAI,OAAO,SAAS,KAAK,QAAQ,CAAC,EAAE,CAAC;QACrF,MAAM,IAAI,kBAAkB,CAAC,MAAM,EAAE,uCAAuC,CAAC,CAAC;IAChF,CAAC;IACD,MAAM,QAAQ,GAAI,SAA4C,EAAE,IAAI,IAAI,EAAE,CAAC;IAC3E,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAC1E,MAAM,IAAI,GAAG,GAA6D,CAAC;QAC3E,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE;YACzB,SAAS,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;YAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;SAC9B,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAC1B,CAAC;AAED,2DAA2D;AAC3D,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,KAAa,EACb,YAAqC,UAAU,CAAC,KAAK;IAErD,MAAM,GAAG,GAAG,oCAAoC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;IAC5E,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;IACtE,OAAO,cAAc,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,mDAAmD;AACnD,MAAM,CAAC,MAAM,WAAW,GAAoC;IAC1D,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,uBAAuB;IAC7B,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,2DAA2D;IACxE,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC;IACnE,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACnD,WAAW,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC;CAC1E,CAAC"}
|
package/dist/nzta.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nzta.d.ts","sourceRoot":"","sources":["../src/nzta.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"nzta.d.ts","sourceRoot":"","sources":["../src/nzta.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,kEAAkE;AAClE,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAsBD;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,kBAAkB,EAAE,CAkB/E;AAED;;;;;;;GAOG;AACH,wBAAsB,wBAAwB,CAC5C,SAAS,GAAE,OAAO,UAAU,CAAC,KAAwB,GACpD,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAM/B;AAED,8DAA8D;AAC9D,eAAO,MAAM,WAAW,EAAE,aAAa,CAAC,kBAAkB,EAAE,CAS3D,CAAC"}
|
package/dist/nzta.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
2
|
+
import { NzSourceParseError } from './errors.js';
|
|
3
|
+
import { httpGet } from './http.js';
|
|
3
4
|
import { readFixtureJson } from './fixtures.js';
|
|
4
5
|
const NZTA_HOTSPOT_SCHEMA = z.object({
|
|
5
6
|
type: z.literal('Feature'),
|
|
@@ -53,12 +54,10 @@ export function parseNztaHolidayHotspots(payload) {
|
|
|
53
54
|
* @returns Holiday hotspot records with holiday, region, and coordinates.
|
|
54
55
|
*/
|
|
55
56
|
export async function fetchNztaHolidayHotspots(fetchImpl = globalThis.fetch) {
|
|
56
|
-
const response = await
|
|
57
|
+
const response = await httpGet('Waka Kotahi', 'https://www.journeys.nzta.govt.nz/api/hotspots', {
|
|
58
|
+
fetchImpl: fetchImpl,
|
|
57
59
|
headers: { Accept: 'application/json' },
|
|
58
60
|
});
|
|
59
|
-
if (!response.ok) {
|
|
60
|
-
throw new NzSourceApiError('Waka Kotahi', `HTTP ${response.status}`);
|
|
61
|
-
}
|
|
62
61
|
return parseNztaHolidayHotspots(await response.json());
|
|
63
62
|
}
|
|
64
63
|
/** Waka Kotahi adapter: holiday journey hotspots, keyless. */
|
package/dist/nzta.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nzta.js","sourceRoot":"","sources":["../src/nzta.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"nzta.js","sourceRoot":"","sources":["../src/nzta.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { NzDataAdapter } from './types.js';
|
|
2
|
+
/** Registry id for the Waka Kotahi (NZTA) open data adapter. */
|
|
3
|
+
export declare const NZTA_OPEN_DATA_SOURCE_ID = "nzta-open-data";
|
|
4
|
+
/** One downloadable representation of a Waka Kotahi open data dataset. */
|
|
5
|
+
export interface NztaOpenDataDistribution {
|
|
6
|
+
title: string;
|
|
7
|
+
format: string;
|
|
8
|
+
mediaType: string;
|
|
9
|
+
accessUrl: string;
|
|
10
|
+
}
|
|
11
|
+
/** One dataset in the Waka Kotahi (NZTA) open data DCAT 1.1 catalogue. */
|
|
12
|
+
export interface NztaOpenDataDataset {
|
|
13
|
+
identifier: string;
|
|
14
|
+
title: string;
|
|
15
|
+
description: string;
|
|
16
|
+
landingPage: string;
|
|
17
|
+
keywords: string[];
|
|
18
|
+
issued: string;
|
|
19
|
+
modified: string;
|
|
20
|
+
publisher: string;
|
|
21
|
+
contactName: string;
|
|
22
|
+
contactEmail: string;
|
|
23
|
+
license: string;
|
|
24
|
+
themes: string[];
|
|
25
|
+
spatial: string;
|
|
26
|
+
distributions: NztaOpenDataDistribution[];
|
|
27
|
+
}
|
|
28
|
+
/** The Waka Kotahi open data catalogue: dataset count plus the rows. */
|
|
29
|
+
export interface NztaOpenDataCatalogue {
|
|
30
|
+
count: number;
|
|
31
|
+
datasets: NztaOpenDataDataset[];
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Parses a Waka Kotahi (NZTA) open data DCAT 1.1 catalogue payload.
|
|
35
|
+
*
|
|
36
|
+
* @param payload - Raw JSON from the NZTA DCAT US 1.1 catalogue feed.
|
|
37
|
+
* @returns Catalogue datasets with their distributions and licence details.
|
|
38
|
+
*/
|
|
39
|
+
export declare function parseNztaOpenDataCatalogue(payload: unknown): NztaOpenDataCatalogue;
|
|
40
|
+
/**
|
|
41
|
+
* Fetches the Waka Kotahi (NZTA) open data DCAT 1.1 catalogue feed. Keyless.
|
|
42
|
+
* Falls back to a committed fixture when the API is unreachable.
|
|
43
|
+
*
|
|
44
|
+
* @param fetchImpl - Fetch implementation override for tests.
|
|
45
|
+
* @returns Catalogue datasets with their distributions and licence details.
|
|
46
|
+
*/
|
|
47
|
+
export declare function fetchNztaOpenDataCatalogue(fetchImpl?: typeof globalThis.fetch): Promise<NztaOpenDataCatalogue>;
|
|
48
|
+
/** Waka Kotahi (NZTA) adapter: open data hub catalogue, keyless. */
|
|
49
|
+
export declare const nztaOpenDataAdapter: NzDataAdapter<NztaOpenDataCatalogue>;
|
|
50
|
+
//# sourceMappingURL=nztaOpenData.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nztaOpenData.d.ts","sourceRoot":"","sources":["../src/nztaOpenData.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,gEAAgE;AAChE,eAAO,MAAM,wBAAwB,mBAAmB,CAAC;AAEzD,0EAA0E;AAC1E,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,0EAA0E;AAC1E,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,wBAAwB,EAAE,CAAC;CAC3C;AAED,wEAAwE;AACxE,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,mBAAmB,EAAE,CAAC;CACjC;AAoDD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,OAAO,GAAG,qBAAqB,CA2BlF;AAED;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC9C,SAAS,GAAE,OAAO,UAAU,CAAC,KAAwB,GACpD,OAAO,CAAC,qBAAqB,CAAC,CAOhC;AAED,oEAAoE;AACpE,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAAC,qBAAqB,CAQpE,CAAC"}
|