PageSourceSearch

https://soildata.ai/assets/api-Bh-o9seM.js

js soildata.ai collected 2026-10-05 13:56:20 UTC 37,417 bytes, 1 lines download raw bytes

1import{a as e}from"./with-selector-L2AX3cLD.js";var t=e(((e,t)=>{function n(e){return e===void 0}function r(e){return e===null}function i(e){return typeof e==`boolean`}function a(e){return e===Object(e)}function o(e){return Array.isArray(e)}function s(e){return e instanceof Date}function c(e,t){return t?a(e)&&!n(e.uri):a(e)&&typeof e.size==`number`&&typeof e.type==`string`&&typeof e.slice==`function`}function l(e,t){return c(e,t)&&typeof e.name==`string`&&(a(e.lastModifiedDate)||typeof e.lastModified==`number`)}function u(e){return!n(e)&&e}function d(e,t,f,p){t||={},f||=new FormData,t.indices=u(t.indices),t.nullsAsUndefineds=u(t.nullsAsUndefineds),t.booleansAsIntegers=u(t.booleansAsIntegers),t.allowEmptyArrays=u(t.allowEmptyArrays),t.noAttributesWithArrayNotation=u(t.noAttributesWithArrayNotation),t.noFilesWithArrayNotation=u(t.noFilesWithArrayNotation),t.dotsForObjectNotation=u(t.dotsForObjectNotation);let m=typeof f.getParts==`function`;return n(e)||(r(e)?t.nullsAsUndefineds||f.append(p,``):i(e)?t.booleansAsIntegers?f.append(p,+!!e):f.append(p,e):o(e)?e.length?e.forEach((e,n)=>{let r=p+`[`+(t.indices?n:``)+`]`;(t.noAttributesWithArrayNotation||t.noFilesWithArrayNotation&&l(e,m))&&(r=p),d(e,t,f,r)}):t.allowEmptyArrays&&f.append(t.noAttributesWithArrayNotation?p:p+`[]`,``):s(e)?f.append(p,e.toISOString()):a(e)&&!c(e,m)?Object.keys(e).forEach(n=>{let r=e[n];if(o(r))for(;n.length>2&&n.lastIndexOf(`[]`)===n.length-2;)n=n.substring(0,n.length-2);let i=p?t.dotsForObjectNotation?p+`.`+n:p+`[`+n+`]`:n;d(r,t,f,i)}):f.append(p,e)),f}t.exports={serialize:d}}))(),n=class extends Error{response;request;options;constructor(e,t,n){let r=`${e.status||e.status===0?e.status:``} ${e.statusText??``}`.trim(),i=r?`status code ${r}`:`an unknown error`;super(`Request failed with ${i}: ${t.method} ${t.url}`),this.name=`HTTPError`,this.response=e,this.request=t,this.options=n}},r=class extends Error{name=`NonError`;value;constructor(e){let t=`Non-error value was thrown`;try{typeof e==`string`?t=e:e&&typeof e==`object`&&`message`in e&&typeof e.message==`string`&&(t=e.message)}catch{}super(t),this.value=e}},i=class extends Error{name=`ForceRetryError`;customDelay;code;customRequest;constructor(e){let t=e?.cause?e.cause instanceof Error?e.cause:new r(e.cause):void 0;super(e?.code?`Forced retry: ${e.code}`:`Forced retry`,t?{cause:t}:void 0),this.customDelay=e?.delay,this.code=e?.code,this.customRequest=e?.request}},a=(()=>{let e=!1,t=!1,n=typeof globalThis.ReadableStream==`function`,r=typeof globalThis.Request==`function`;if(n&&r)try{t=new globalThis.Request(`https://empty.invalid`,{body:new globalThis.ReadableStream,method:`POST`,get duplex(){return e=!0,`half`}}).headers.has(`Content-Type`)}catch(e){if(e instanceof Error&&e.message===`unsupported BodyInit type`)return!1;throw e}return e&&!t})(),o=typeof globalThis.AbortController==`function`,s=typeof globalThis.AbortSignal==`function`&&typeof globalThis.AbortSignal.any==`function`,c=typeof globalThis.ReadableStream==`function`,l=typeof globalThis.FormData==`function`,u=[`get`,`post`,`put`,`patch`,`head`,`delete`],d={json:`application/json`,text:`text/*`,formData:`multipart/form-data`,arrayBuffer:`*/*`,blob:`*/*`,bytes:`*/*`},f=2147483647,p=new TextEncoder().encode(`------WebKitFormBoundaryaxpyiPgbbPti10Rw`).length,m=Symbol(`stop`),h=class{options;constructor(e){this.options=e}},g=e=>new h(e),_={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,onUploadProgress:!0,fetch:!0,context:!0},v={next:!0},y={method:!0,headers:!0,body:!0,mode:!0,credentials:!0,cache:!0,redirect:!0,referrer:!0,referrerPolicy:!0,integrity:!0,keepalive:!0,signal:!0,window:!0,duplex:!0},b=e=>{if(!e)return 0;if(e instanceof FormData){let t=0;for(let[n,r]of e)t+=p,t+=new TextEncoder().encode(`Content-Disposition: form-data; name="${n}"`).length,t+=typeof r==`string`?new TextEncoder().encode(r).length:r.size;return t}if(e instanceof Blob)return e.size;if(e instanceof ArrayBuffer)return e.byteLength;if(typeof e==`string`)return new TextEncoder().encode(e).length;if(e instanceof URLSearchParams)return new TextEncoder().encode(e.toString()).length;if(`byteLength`in e)return e.byteLength;if(typeof e==`object`&&e)try{let t=JSON.stringify(e);return new TextEncoder().encode(t).length}catch{return 0}return 0},x=(e,t,n)=>{let r,i=0;return e.pipeThrough(new TransformStream({transform(e,a){if(a.enqueue(e),r){i+=r.byteLength;let e=t===0?0:i/t;e>=1&&(e=1-2**-52),n?.({percent:e,totalBytes:Math.max(t,i),transferredBytes:i},r)}r=e},flush(){r&&(i+=r.byteLength,n?.({percent:1,totalBytes:Math.max(t,i),transferredBytes:i},r))}}))},S=(e,t)=>{if(!e.body)return e;if(e.status===204)return new Response(null,{status:e.status,statusText:e.statusText,headers:e.headers});let n=Math.max(0,Number(e.headers.get(`content-length`))||0);return new Response(x(e.body,n,t),{status:e.status,statusText:e.statusText,headers:e.headers})}
1,ee=(e,t,n)=>{if(!e.body)return e;let r=b(n??e.body);return new Request(e,{duplex:`half`,body:x(e.body,r,t)})},C=e=>typeof e==`object`&&!!e,w=(...e)=>{for(let t of e)if((!C(t)||Array.isArray(t))&&t!==void 0)throw TypeError("The `options` argument must be an object");return k({},...e)},T=(e={},t={})=>{let n=new globalThis.Headers(e),r=t instanceof globalThis.Headers,i=new globalThis.Headers(t);for(let[e,t]of i.entries())r&&t===`undefined`||t===void 0?n.delete(e):n.set(e,t);return n};function E(e,t,n){return Object.hasOwn(t,n)&&t[n]===void 0?[]:k(e[n]??[],t[n]??[])}var D=(e={},t={})=>({beforeRequest:E(e,t,`beforeRequest`),beforeRetry:E(e,t,`beforeRetry`),afterResponse:E(e,t,`afterResponse`),beforeError:E(e,t,`beforeError`)}),O=(e,t)=>{let n=new URLSearchParams;for(let r of[e,t])if(r!==void 0){if(r instanceof URLSearchParams)for(let[e,t]of r.entries())n.append(e,t);else if(Array.isArray(r))for(let e of r){if(!Array.isArray(e)||e.length!==2)throw TypeError(`Array search parameters must be provided in [[key, value], ...] format`);n.append(String(e[0]),String(e[1]))}else if(C(r))for(let[e,t]of Object.entries(r))t!==void 0&&n.append(e,String(t));else{let e=new URLSearchParams(r);for(let[t,r]of e.entries())n.append(t,r)}}return n},k=(...e)=>{let t={},n={},r={},i,a=[];for(let o of e)if(Array.isArray(o))Array.isArray(t)||(t=[]),t=[...t,...o];else if(C(o)){for(let[e,n]of Object.entries(o)){if(e===`signal`&&n instanceof globalThis.AbortSignal){a.push(n);continue}if(e===`context`){if(n!=null&&(!C(n)||Array.isArray(n)))throw TypeError("The `context` option must be an object");t={...t,context:n==null?{}:{...t.context,...n}};continue}if(e===`searchParams`){i=n==null?void 0:i===void 0?n:O(i,n);continue}C(n)&&e in t&&(n=k(t[e],n)),t={...t,[e]:n}}C(o.hooks)&&(r=D(r,o.hooks),t.hooks=r),C(o.headers)&&(n=T(n,o.headers),t.headers=n)}return i!==void 0&&(t.searchParams=i),a.length>0&&(a.length===1?t.signal=a[0]:s?t.signal=AbortSignal.any(a):t.signal=a.at(-1)),t},te=e=>u.includes(e)?e.toUpperCase():e,A={limit:2,methods:[`get`,`put`,`head`,`delete`,`options`,`trace`],statusCodes:[408,413,429,500,502,503,504],afterStatusCodes:[413,429,503],maxRetryAfter:1/0,backoffLimit:1/0,delay:e=>.3*2**(e-1)*1e3,jitter:void 0,retryOnTimeout:!1},ne=(e={})=>{if(typeof e==`number`)return{...A,limit:e};if(e.methods&&!Array.isArray(e.methods))throw Error(`retry.methods must be an array`);if(e.methods&&=e.methods.map(e=>e.toLowerCase()),e.statusCodes&&!Array.isArray(e.statusCodes))throw Error(`retry.statusCodes must be an array`);let t=Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0));return{...A,...t}},j=class extends Error{request;constructor(e){super(`Request timed out: ${e.method} ${e.url}`),this.name=`TimeoutError`,this.request=e}};async function M(e,t,n,r){return new Promise((i,a)=>{let o=setTimeout(()=>{n&&n.abort(),a(new j(e))},r.timeout);r.fetch(e,t).then(i).catch(a).then(()=>{clearTimeout(o)})})}async function N(e,{signal:t}){return new Promise((n,r)=>{t&&(t.throwIfAborted(),t.addEventListener(`abort`,i,{once:!0}));function i(){clearTimeout(a),r(t.reason)}let a=setTimeout(()=>{t?.removeEventListener(`abort`,i),n()},e)})}var P=(e,t)=>{let n={};for(let r in t)Object.hasOwn(t,r)&&!(r in y)&&!(r in _)&&(!(r in e)||r in v)&&(n[r]=t[r]);return n},F=e=>e===void 0?!1:Array.isArray(e)?e.length>0:e instanceof URLSearchParams?e.size>0:typeof e==`object`?Object.keys(e).length>0:typeof e==`string`?e.trim().length>0:!!e;function I(e){return e instanceof n||e?.name===n.name}function L(e){return e instanceof j||e?.name===j.name}var R=class e{static create(t,r){let a=new e(t,r),o=a.#p(async()=>{if(typeof a.#i.timeout==`number`&&a.#i.timeout>2147483647)throw RangeError(`The \`timeout\` option cannot be greater than ${f}`);await Promise.resolve();let e=await a.#m();for(let t of a.#i.hooks.afterResponse){let n=a.#u(e.clone()),r;try{r=await t(a.request,a.#h(),n,{retryCount:a.#n})}catch(t){throw a.#f(n),a.#f(e),t}if(r instanceof h)throw a.#f(n),a.#f(e),new i(r.options);let o=r instanceof globalThis.Response?r:e;n!==o&&a.#f(n),e!==o&&a.#f(e),e=o}if(a.#u(e),!e.ok&&(typeof a.#i.throwHttpErrors==`function`?a.#i.throwHttpErrors(e.status):a.#i.throwHttpErrors)){let t=new n(e,a.request,a.#h());for(let e of a.#i.hooks.beforeError)t=await e(t,{retryCount:a.#n});throw t}if(a.#i.onDownloadProgress){if(typeof a.#i.onDownloadProgress!=`function`)throw TypeError("The `onDownloadProgress` option must be a function");if(!c)throw Error("Streams are not supported in your environment. `ReadableStream` is missing.");let t=e.clone();return a.#f(e),S(t,a.#i.onDownloadProgress)}return e}).finally(()=>{let e=a.#a;a.#d(e?.body??void 0),a.#d(a.request.body??void 0)});for(let[e,t]of Object.entries(d))(e!==`bytes`||typeof globalThis.Response?.prototype?.bytes==`function`)&&(o[e]=async()=>{a.request.headers.set(`accept`,a.request.headers.get(`accept`)||t);let n=await o;
1if(e===`json`){if(n.status===204)return``;let e=await n.text();return e===``?``:r.parseJson?r.parseJson(e):JSON.parse(e)}return n[e]()});return o}static#e(e){return e&&typeof e==`object`&&!Array.isArray(e)&&!(e instanceof URLSearchParams)?Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0)):e}request;#t;#n=0;#r;#i;#a;#o;#s;constructor(t,n={}){if(this.#r=t,this.#i={...n,headers:T(this.#r.headers,n.headers),hooks:D({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},n.hooks),method:te(n.method??this.#r.method??`GET`),prefixUrl:String(n.prefixUrl||``),retry:ne(n.retry),throwHttpErrors:n.throwHttpErrors??!0,timeout:n.timeout??1e4,fetch:n.fetch??globalThis.fetch.bind(globalThis),context:n.context??{}},typeof this.#r!=`string`&&!(this.#r instanceof URL||this.#r instanceof globalThis.Request))throw TypeError("`input` must be a string, URL, or Request");if(this.#i.prefixUrl&&typeof this.#r==`string`){if(this.#r.startsWith(`/`))throw Error("`input` must not begin with a slash when using `prefixUrl`");this.#i.prefixUrl.endsWith(`/`)||(this.#i.prefixUrl+=`/`),this.#r=this.#i.prefixUrl+this.#r}o&&s&&(this.#o=this.#i.signal??this.#r.signal,this.#t=new globalThis.AbortController,this.#i.signal=this.#o?AbortSignal.any([this.#o,this.#t.signal]):this.#t.signal),a&&(this.#i.duplex=`half`),this.#i.json!==void 0&&(this.#i.body=this.#i.stringifyJson?.(this.#i.json)??JSON.stringify(this.#i.json),this.#i.headers.set(`content-type`,this.#i.headers.get(`content-type`)??`application/json`));let r=n.headers&&new globalThis.Headers(n.headers).has(`content-type`);if(this.#r instanceof globalThis.Request&&(l&&this.#i.body instanceof globalThis.FormData||this.#i.body instanceof URLSearchParams)&&!r&&this.#i.headers.delete(`content-type`),this.request=new globalThis.Request(this.#r,this.#i),F(this.#i.searchParams)){let t=`?`+(typeof this.#i.searchParams==`string`?this.#i.searchParams.replace(/^\?/,``):new URLSearchParams(e.#e(this.#i.searchParams)).toString()),n=this.request.url.replace(/(?:\?.*?)?(?=#|$)/,t);this.request=new globalThis.Request(n,this.#i)}if(this.#i.onUploadProgress){if(typeof this.#i.onUploadProgress!=`function`)throw TypeError("The `onUploadProgress` option must be a function");if(!a)throw Error("Request streams are not supported in your environment. The `duplex` option for `Request` is not available.");this.request=this.#_(this.request,this.#i.body??void 0)}}#c(){let e=this.#i.retry.delay(this.#n),t=e;this.#i.retry.jitter===!0?t=Math.random()*e:typeof this.#i.retry.jitter==`function`&&(t=this.#i.retry.jitter(e),(!Number.isFinite(t)||t<0)&&(t=e));let n=this.#i.retry.backoffLimit??1/0;return Math.min(n,t)}async#l(e){if(this.#n++,this.#n>this.#i.retry.limit)throw e;let t=e instanceof Error?e:new r(e);if(t instanceof i)return t.customDelay??this.#c();if(!this.#i.retry.methods.includes(this.request.method.toLowerCase()))throw e;if(this.#i.retry.shouldRetry!==void 0){let n=await this.#i.retry.shouldRetry({error:t,retryCount:this.#n});if(n===!1)throw e;if(n===!0)return this.#c()}if(L(e)&&!this.#i.retry.retryOnTimeout)throw e;if(I(e)){if(!this.#i.retry.statusCodes.includes(e.response.status))throw e;let t=e.response.headers.get(`Retry-After`)??e.response.headers.get(`RateLimit-Reset`)??e.response.headers.get(`X-RateLimit-Retry-After`)??e.response.headers.get(`X-RateLimit-Reset`)??e.response.headers.get(`X-Rate-Limit-Reset`);if(t&&this.#i.retry.afterStatusCodes.includes(e.response.status)){let e=Number(t)*1e3;Number.isNaN(e)?e=Date.parse(t)-Date.now():e>=Date.parse(`2024-01-01`)&&(e-=Date.now());let n=this.#i.retry.maxRetryAfter??e;return e<n?e:n}if(e.response.status===413)throw e}return this.#c()}#u(e){return this.#i.parseJson&&(e.json=async()=>this.#i.parseJson(await e.text())),e}#d(e){e&&e.cancel().catch(()=>void 0)}#f(e){this.#d(e.body??void 0)}async#p(e){try{return await e()}catch(t){let n=Math.min(await this.#l(t),f);if(this.#n<1)throw t;if(await N(n,this.#o?{signal:this.#o}:{}),t instanceof i&&t.customRequest){let e=this.#i.signal?new globalThis.Request(t.customRequest,{signal:this.#i.signal}):new globalThis.Request(t.customRequest);this.#g(e)}for(let e of this.#i.hooks.beforeRetry){let n=await e({request:this.request,options:this.#h(),error:t,retryCount:this.#n});if(n instanceof globalThis.Request){this.#g(n);break}if(n instanceof globalThis.Response)return n;if(n===m)return}return this.#p(e)}}async#m(){this.#t?.signal.aborted&&(this.#t=new globalThis.AbortController,this.#i.signal=this.#o?AbortSignal.any([this.#o,this.#t.signal]):this.#t.signal,this.request=new globalThis.Request(this.request,{signal:this.#i.signal}));for(let e of this.#i.hooks.beforeRequest){let t=await e(this.request,this.#h(),{retryCount:this.#n});if(t instanceof Response)return t;if(t instanceof globalThis.Request){this.#g(t);break}}let e=P(this.request,this.#i);return this.#a=this.request,this.request=this.#a.clone(),this.#i.timeout===!1?this.#i.fetch(this.#a,e):M(this.#a,e,this.#t,this.#i)}#h(){if(!this.#s){let{hooks:e,...t}=this.#i;this.#s=Object.freeze(t)}return this.#s}#g(e){this.#s=void 0,this.request=this.#_(e)}#_(e,t){return!this.#i.onUploadProgress||!e.body?e:ee(e,this.#i.onUploadProgress,t??this.#i.body??void 0)}},z=e=>{let t=(t,n)=>R.create(t,w(e,n));for(let n of u)t[n]=(t,r)=>R.create(t,w(e,r,{method:n}));return t.create=e=>z(w(e)),t.extend=t=>(typeof t==`function`&&(t=t(e??{})),z(w(e,t))),t.stop=m,t.retry=g,t},B=z();function V(e,t,n,r,i){if(!n){let n=null;for(let a of Object.keys(e))if(n=V(e,t,a,r,i),n)break;return n}let a=e[n];if(!a)return null;let o=!i,s=!i;return a.find(e=>r&&!e.methods.includes(r)?!1:e.name===t||o&&e.pattern===t?!0:s&&e.handler&&typeof e.handler==`object`?`reference`in e.handler&&e.handler.reference===t:!1)||null}function H(e,t,n,r,i){let a=[],o=Array.isArray(r)?r:null,s=Array.isArray(r)?{}:r??{},c=0;for(let n of t){if(n.type===0){a.push(n.val===`/`?``:`${n.val}${n.end}`);continue}if(n.type===2){let t=o?o.slice(c):s[`*`];if(!Array.isArray(t)||!t.length)throw Error(`Cannot make URL for "${e}". Invalid value provided for the wildcard param`);a.push(`${t.map(e=>encodeURIComponent(String(e))).join(`/`)}${n.end}`);break}let t=n.val,r=o?o[c]:s[t],i=r!=null;if(n.type===1&&!i)throw Error(`Cannot make URL for "${e}". Missing value for the "${t}" param`);i&&a.push(`${encodeURIComponent(String(r))}${n.end}`),c++}let l=`/${a.join(`/`)}`;if(i?.prefixUrl&&(l=`${i?.prefixUrl.replace(/\/$/,``)}${l}`),i?.qs){let e=n(i?.qs);l=e?`${l}?${e}`:l}return l}function U(e,t,n){let r,i;
1function a(a,o,s,c){if(!i){if(i=typeof e==`function`?e():e,!i||typeof i!=`object`)throw Error(`Cannot construct routes. Expected the value to be an object, instead received ${typeof i}`);r||=Object.keys(i).filter(e=>e!==`root`)}let l=r.find(e=>a.startsWith(`${e}@`)),u=l?a.replace(RegExp(`^${l}@`),``):a,d=V(i,u,l,c,!0);if(!d)throw Error(c?`Cannot lookup route "${u}" for method "${c}"`:`Cannot lookup route "${u}"`);let f=n||s?{...n,...s}:void 0;return H(d.name??d.pattern,d.tokens,t,o,f)}let o=function(...[e,t,n]){return a(e,t,n)};return o.get=function(...[e,t,n]){let r=a(e,t,n,`GET`);return{url:r,method:`GET`,toString(){return r},form:{action:r,method:`GET`}}},o.post=function(...[e,t,n]){let r=`POST`,i=a(e,t,n,r);return{url:i,method:r,toString(){return i},form:{action:i,method:r}}},o.put=function(...[e,t,n]){let r=a(e,t,n,`PUT`);return{url:r,method:`PUT`,toString(){return r},form:{action:r,method:`PUT`}}},o.patch=function(...[e,t,n]){let r=`PATCH`,i=a(e,t,n,r);return{url:i,method:r,toString(){return i},form:{action:i,method:r}}},o.delete=function(...[e,t,n]){let r=`DELETE`,i=a(e,t,n,r);return{url:i,method:r,toString(){return i},form:{action:i,method:r}}},o.method=function(e,...[t,n,r]){let i=a(t,n,r,e);return{url:i,method:e,toString(){return i},form:{action:i,method:e}}},o}function W(e){if(!e)return``;let t=[];function n(e,r=``){for(let[i,a]of Object.entries(e)){if(a==null)continue;let e=encodeURIComponent(i),o=r?`${r}[${e}]`:e;Array.isArray(a)?a.forEach((e,r)=>{e!=null&&(e instanceof Date?t.push(`${o}[]=${encodeURIComponent(e.toISOString())}`):typeof e==`object`?n(e,`${o}[${r}]`):t.push(`${o}[]=${encodeURIComponent(e)}`))}):a instanceof Date?t.push(`${o}=${encodeURIComponent(a.toISOString())}`):typeof a==`object`?n(a,o):t.push(`${o}=${encodeURIComponent(a)}`)}}return n(e),t.length?t.join(`&`):``}var G=class e{#e;#t;constructor(e,t){this.#e=e,this.#t=t}static matchesRouteNamePattern(e,t){if(t===e)return!0;if(!t.includes(`*`))return!1;let n=t.split(`.`),r=e.split(`.`);function i(e,t){if(e===n.length)return t===r.length;if(n[e]===`*`){let a=n.length-e-1;for(let n=t+1;n<=r.length-a;n++)if(i(e+1,n))return!0;return!1}return t>=r.length||n[e]!==r[t]?!1:i(e+1,t+1)}return i(0,0)}static matchPathAgainstPattern(e,t){let n=e.split(`/`).filter(Boolean),r=t.split(`/`).filter(Boolean),i={},a=0;for(let e of r){if(e===`*`)return a>=n.length?null:(i[`*`]=n.slice(a).join(`/`),i);if(e.startsWith(`:`)){let t=e.endsWith(`?`),r=e.slice(1,t?-1:void 0);if(a<n.length)i[r]=n[a++];else if(!t)return null;continue}if(a>=n.length||n[a]!==e)return null;a++}return a===n.length?i:null}#n(){if(globalThis.window===void 0)return;let e=globalThis.window.location.pathname,t=new URL(this.#t).pathname;return t!==`/`&&e.startsWith(t)?e.slice(t.length)||`/`:e}#r(e){return e.methods.includes(`GET`)||e.methods.includes(`HEAD`)}#i(t){for(let[n,r]of this.#e)if(this.#r(r)&&e.matchPathAgainstPattern(t,r.pattern))return n}#a(t,n,r){for(let[i,a]of this.#e){if(!this.#r(a)||!e.matchesRouteNamePattern(i,n))continue;let o=e.matchPathAgainstPattern(t,a.pattern);if(o&&!(r?.params&&Object.entries(r.params).some(([e,t])=>o[e]!==String(t)))&&!(r?.query&&!this.#s(globalThis.window.location.search,r.query)))return!0}return!1}#o(e){if(!e||e===`?`)return{};let t={};for(let[n,r]of new URLSearchParams(e)){let e=t[n];if(e===void 0){t[n]=r;continue}t[n]=Array.isArray(e)?[...e,r]:[e,r]}return t}#s(e,t){let n=this.#o(e),r=this.#o(W(t));return Object.entries(r).every(([e,t])=>{let r=n[e];return r===void 0?!1:Array.isArray(t)?Array.isArray(r)?t.length===r.length&&t.every((e,t)=>r[t]===e):t.length===1&&r===t[0]:Array.isArray(r)?r.length===1&&r[0]===t:r===t})}has(t){return this.#e.some(([n])=>e.matchesRouteNamePattern(n,t))}current(e,t){let n=this.#n();return n?e?this.#a(n,e,t):this.#i(n):!e&&void 0}},K=class{[Symbol.toStringTag]=`TuyauPromise`;#e;constructor(e){this.#e=e}then(e,t){return this.#e.then(e,t)}catch(e){return this.#e.catch(e)}finally(e){return this.#e.finally(e)}safe(){return this.#e.then(e=>[e,null],e=>[null,e])}},q=class extends Error{kind;status;rawResponse;rawRequest;response;constructor(e,t){super(e,t),this.status=void 0,this.response=void 0,this.rawResponse=void 0,this.rawRequest=void 0,this.name=`TuyauError`}isStatus(e){return this.kind===`http`&&this.status===e}isValidationError(){return this.isStatus(422)}},J=class extends q{constructor(e,t){let n=e.response?.status,r=n?`status code ${n}`:`an unknown error`,i=e.request?.url.replace(e.options.prefixUrl||``,``),a=e.response?`Request failed with ${r}: ${e.request?.method.toUpperCase()} /${i}`:`Request failed with ${r}`;super(a,{cause:e}),this.kind=`http`,this.rawResponse=e.response,this.response=t,this.status=e.response?.status,this.rawRequest=e.request,this.name=`TuyauHTTPError`}},Y=class extends q{constructor(e,t){let n=t?`Network error: ${t.method.toUpperCase()} ${t.url}`:`Network error occurred`;super(n,{cause:e}),this.kind=`network`,this.name=`TuyauNetworkError`}};function X(e){return e.replace(/^\//,``)}function Z(e){return typeof e==`object`&&!Array.isArray(e)&&e!==null}var re=typeof FileList>`u`,ie=typeof navigator<`u`&&navigator.product===`ReactNative`;function ae(e){return e.map(e=>e.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)).join(`.`)}function oe(e){return e.map(e=>e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)).join(`.`)}async function se(e){if(!e)return;let t=e.headers.get(`Content-Type`)?.split(`;`)[0];return t===`application/json`?await e.json():t===`application/octet-stream`?await e.arrayBuffer():await e.text()}var Q=class{api;urlFor;#e;#t;#n;#r;#i(){return{prefixUrl:this.#n.baseUrl,...this.#n,hooks:{...this.#n.hooks,beforeRequest:[...this.#n.hooks?.beforeRequest||[],this.#s.bind(this)]}}}
1#a(){this.#n.plugins?.forEach(e=>e({options:this.#n}))}#o(){return U({root:this.#e.map(([e,t])=>({name:e,domain:`root`,...t}))},W)}constructor(e){this.#n=e,this.api=this.#h([]),this.#e=Object.entries(this.#n.registry.routes),this.urlFor=this.#o(),this.#r=new G(this.#e,this.#n.baseUrl),this.#a(),this.#t=B.create(this.#i())}#s(e){let t=globalThis.document?.cookie;if(!t)return;let n=t.match(/(?:^|;\s*)XSRF-TOKEN=([^;]+)/)?.[1];if(n)try{e.headers.set(`X-XSRF-TOKEN`,decodeURIComponent(n))}catch{}}#c(e){return ie&&Z(e)&&e.uri?!0:re?e instanceof Blob:e instanceof FileList||e instanceof File}#l(e,t=0){return!e||t>5?!1:Object.values(e).some(e=>this.#c(e)?!0:Array.isArray(e)?e.some(e=>this.#c(e)||Z(e)&&this.#l(e,t+1)):Z(e)?this.#l(e,t+1):!1)}#u(e){return e.toLowerCase()}#d(e,t,n){let r=this.#u(t),i=r===`head`||r===`options`?`get`:r;return this.urlFor[i](e,n?.params||{}).url}#f(e,r,i){return new K((async()=>{let a=this.#d(e,r,i),o=`json`,s=i.body;!(s instanceof FormData)&&this.#l(s)?(s=(0,t.serialize)(s,{indices:!0}),o=`body`):s instanceof FormData&&(o=`body`);let c=[`GET`,`HEAD`].includes(r),{body:l,responseType:u,...d}=i,f={searchParams:W(i?.query||{}),[o]:c?void 0:s,...d};try{let e=await this.#t[this.#u(r)](X(a),f),t;if(u)t=await e[u]();else{let n=e.headers.get(`Content-Type`)?.split(`;`)[0]?.trim();t=n===`application/json`?await e.json():n===`application/octet-stream`?await e.arrayBuffer():await e.text()}return t}catch(e){throw e instanceof n?new J(e,await se(e.response)):new Y(e,{url:a,method:r})}})())}#p(e,t){let[n,r]=this.#e.find(([,n])=>n.methods[0]===e&&n.pattern===t)||[null,null];if(!n||!r)throw Error(`No ${e} ${t}`);return{name:n,endpoint:r}}#m(e,t,n){let{name:r,endpoint:i}=this.#p(e,t);return this.#f(r,i.methods[0],n)}get(e,t){return this.#m(`GET`,e,t)}post(e,t){return this.#m(`POST`,e,t)}put(e,t){return this.#m(`PUT`,e,t)}patch(e,t){return this.#m(`PATCH`,e,t)}delete(e,t){return this.#m(`DELETE`,e,t)}head(e,t){return this.#m(`HEAD`,e,t)}request(e,t){let n=this.#n.registry.routes[e];return this.#f(e,n.methods[0],t)}getRoute(e,t){let n=this.#n.registry.routes[e];if(!n)throw Error(`Route ${String(e)} not found`);return{url:this.#d(e,n.methods[0],t),methods:n.methods}}#h(e){let t=ae(e),n=this.#n.registry.routes[t];if(n||=(t=oe(e),this.#n.registry.routes[t]),n){let r=e=>this.#f(t,n.methods[0],e);return new Proxy(r,{get:(t,n)=>this.#h([...e,String(n)]),apply:(e,t,n)=>r(...n)})}return new Proxy({},{get:(t,n)=>this.#h([...e,String(n)])})}has(e){return this.#r.has(e)}current(e,t){return this.#r.current(e,t)}};function ce(e){return new Q(e)}var $={},le=ce({registry:{routes:{"auth.access_token.store":{methods:[`POST`],pattern:`/api/v1/auth/login`,tokens:[{old:`/api/v1/auth/login`,type:0,val:`api`,end:``},{old:`/api/v1/auth/login`,type:0,val:`v1`,end:``},{old:`/api/v1/auth/login`,type:0,val:`auth`,end:``},{old:`/api/v1/auth/login`,type:0,val:`login`,end:``}],types:$},"auth.access_token.destroy":{methods:[`POST`],pattern:`/api/v1/auth/logout`,tokens:[{old:`/api/v1/auth/logout`,type:0,val:`api`,end:``},{old:`/api/v1/auth/logout`,type:0,val:`v1`,end:``},{old:`/api/v1/auth/logout`,type:0,val:`auth`,end:``},{old:`/api/v1/auth/logout`,type:0,val:`logout`,end:``}],types:$},"auth.password_resets.request":{methods:[`POST`],pattern:`/api/v1/auth/forgot-password`,tokens:[{old:`/api/v1/auth/forgot-password`,type:0,val:`api`,end:``},{old:`/api/v1/auth/forgot-password`,type:0,val:`v1`,end:``},{old:`/api/v1/auth/forgot-password`,type:0,val:`auth`,end:``},{old:`/api/v1/auth/forgot-password`,type:0,val:`forgot-password`,end:``}],types:$},"auth.password_resets.verify":{methods:[`GET`,`HEAD`],pattern:`/api/v1/auth/validate-reset-token`,tokens:[{old:`/api/v1/auth/validate-reset-token`,type:0,val:`api`,end:``},{old:`/api/v1/auth/validate-reset-token`,type:0,val:`v1`,end:``},{old:`/api/v1/auth/validate-reset-token`,type:0,val:`auth`,end:``},{old:`/api/v1/auth/validate-reset-token`,type:0,val:`validate-reset-token`,end:``}],types:$},"auth.password_resets.reset":{methods:[`POST`],pattern:`/api/v1/auth/reset-password`,tokens:[{old:`/api/v1/auth/reset-password`,type:0,val:`api`,end:``},{old:`/api/v1/auth/reset-password`,type:0,val:`v1`,end:``},{old:`/api/v1/auth/reset-password`,type:0,val:`auth`,end:``},{old:`/api/v1/auth/reset-password`,type:0,val:`reset-password`,end:``}],types:$},"profile.profile.show":{methods:[`GET`,`HEAD`],pattern:`/api/v1/account/profile`,tokens:[{old:`/api/v1/account/profile`,type:0,val:`api`,end:``},{old:`/api/v1/account/profile`,type:0,val:`v1`,end:``},{old:`/api/v1/account/profile`,type:0,val:`account`,end:``},{old:`/api/v1/account/profile`,type:0,val:`profile`,end:``}],types:$},"admin.companies.store":{methods:[`POST`],pattern:`/api/v1/admin/companies`,tokens:[{old:`/api/v1/admin/companies`,type:0,val:`api`,end:``},{old:`/api/v1/admin/companies`,type:0,val:`v1`,end:``},{old:`/api/v1/admin/companies`,type:0,val:`admin`,end:``},{old:`/api/v1/admin/companies`,type:0,val:`companies`,end:``}],types:$},"admin.companies.index":{methods:[`GET`,`HEAD`],pattern:`/api/v1/admin/companies`,tokens:[{old:`/api/v1/admin/companies`,type:0,val:`api`,end:``},{old:`/api/v1/admin/companies`,type:0,val:`v1`,end:``},{old:`/api/v1/admin/companies`,type:0,val:`admin`,end:``},{old:`/api/v1/admin/companies`,type:0,val:`companies`,end:``}],types:$},"admin.users.index":{methods:[`GET`,`HEAD`],pattern:`/api/v1/admin/companies/:companyId/users`,tokens:[{old:`/api/v1/admin/companies/:companyId/users`,type:0,val:`api`,end:``},{old:`/api/v1/admin/companies/:companyId/users`,type:0,val:`v1`,end:``},{old:`/api/v1/admin/companies/:companyId/users`,type:0,val:`admin`,end:``},{old:`/api/v1/admin/companies/:companyId/users`,type:0,val:`companies`,end:``},{old:`/api/v1/admin/companies/:companyId/users`,type:1,val:`companyId`,end:``},{old:`/api/v1/admin/companies/:companyId/users`,type:0,val:`users`,end:``}],types:$},"admin.users.store":{methods:[`POST`],pattern:`/api/v1/admin/companies/:companyId/users`,tokens:[{old:`/api/v1/admin/companies/:companyId/users`,type:0,val:`api`,end:``},{old:`/api/v1/admin/companies/:companyId/users`,type:0,val:`v1`,end:``},{old:`/api/v1/admin/companies/:companyId/users`,type:0,val:`admin`,end:``},{old:`/api/v1/admin/companies/:companyId/users`,type:0,val:`companies`,end:``},{old:`/api/v1/admin/companies/:companyId/users`,type:1,val:`companyId`,end:``},{old:`/api/v1/admin/companies/:companyId/users`,type:0,val:`users`,end:``}],types:$},"admin.users.update":{methods:[`PATCH`],pattern:`/api/v1/admin/companies/:companyId/users/:userId`,tokens:[{old:`/api/v1/admin/companies/:companyId/users/:userId`,type:0,val:`api`,end:``},{old:`/api/v1/admin/companies/:companyId/users/:userId`,type:0,val:`v1`,end:``},{old:`/api/v1/admin/companies/:companyId/users/:userId`,type:0,val:`admin`,end:``},{old:`/api/v1/admin/companies/:companyId/users/:userId`,type:0,val:`companies`,end:``},{old:`/api/v1/admin/companies/:companyId/users/:userId`,type:1,val:`companyId`,end:``},{old:`/api/v1/admin/companies/:companyId/users/:userId`,type:0,val:`users`,end:``},{old:`/api/v1/admin/companies/:companyId/users/:userId`,type:1,val:`userId`,end:``}],types:$},"admin.users.force_reset":{methods:[`POST`],pattern:`/api/v1/admin/users/:userId/force-reset`,tokens:[{old:`/api/v1/admin/users/:userId/force-reset`,type:0,val:`api`,end:``},{old:`/api/v1/admin/users/:userId/force-reset`,type:0,val:`v1`,end:``},{old:`/api/v1/admin/users/:userId/force-reset`,type:0,val:`admin`,end:``},{old:`/api/v1/admin/users/:userId/force-reset`,type:0,val:`users`,end:``},{old:`/api/v1/admin/users/:userId/force-reset`,type:1,val:`userId`,end:``},{old:`/api/v1/admin/users/:userId/force-reset`,type:0,val:`force-reset`,end:``}],types:$},"data.sensors.index":{methods:[`GET`,`HEAD`],pattern:`/api/v1/data/sensors`,tokens:[{old:`/api/v1/data/sensors`,type:0,val:`api`,end:``},{old:`/api/v1/data/sensors`,type:0,val:`v1`,end:``},{old:`/api/v1/data/sensors`,type:0,val:`data`,end:``},{old:`/api/v1/data/sensors`,type:0,val:`sensors`,end:``}],types:$},"data.sensors.store":{methods:[`POST`],pattern:`/api/v1/data/sensors`,tokens:[{old:`/api/v1/data/sensors`,type:0,val:`api`,end:``},{old:`/api/v1/data/sensors`,type:0,val:`v1`,end:``},{old:`/api/v1/data/sensors`,type:0,val:`data`,end:``},{old:`/api/v1/data/sensors`,type:0,val:`sensors`,end:``}],types:$},"data.sensors.status":{methods:[`GET`,`HEAD`],pattern:`/api/v1/data/sensors/status`,tokens:[{old:`/api/v1/data/sensors/status`,type:0,val:`api`,end:``},{old:`/api/v1/data/sensors/status`,type:0,val:`v1`,end:``},{old:`/api/v1/data/sensors/status`,type:0,val:`data`,end:``},{old:`/api/v1/data/sensors/status`,type:0,val:`sensors`,end:``},{old:`/api/v1/data/sensors/status`,type:0,val:`status`,end:``}],types:$},"data.sensors.show":{methods:[`GET`,`HEAD`],pattern:`/api/v1/data/sensors/:deviceId`,tokens:[{old:`/api/v1/data/sensors/:deviceId`,type:0,val:`api`,end:``},{old:`/api/v1/data/sensors/:deviceId`,type:0,val:`v1`,end:``},{old:`/api/v1/data/sensors/:deviceId`,type:0,val:`data`,end:``},{old:`/api/v1/data/sensors/:deviceId`,type:0,val:`sensors`,end:``},{old:`/api/v1/data/sensors/:deviceId`,type:1,val:`deviceId`,end:``}],types:$},"data.sensors.update":{methods:[`PATCH`],pattern:`/api/v1/data/sensors/:deviceId`,tokens:[{old:`/api/v1/data/sensors/:deviceId`,type:0,val:`api`,end:``},{old:`/api/v1/data/sensors/:deviceId`,type:0,val:`v1`,end:``},{old:`/api/v1/data/sensors/:deviceId`,type:0,val:`data`,end:``},{old:`/api/v1/data/sensors/:deviceId`,type:0,val:`sensors`,end:``},{old:`/api/v1/data/sensors/:deviceId`,type:1,val:`deviceId`,end:``}],types:$},"data.sensors.regenerate_token":{methods:[`POST`],pattern:`/api/v1/data/sensors/:deviceId/regenerate-token`,tokens:[{old:`/api/v1/data/sensors/:deviceId/regenerate-token`,type:0,val:`api`,end:``},{old:`/api/v1/data/sensors/:deviceId/regenerate-token`,type:0,val:`v1`,end:``},{old:`/api/v1/data/sensors/:deviceId/regenerate-token`,type:0,val:`data`,end:``},{old:`/api/v1/data/sensors/:deviceId/regenerate-token`,type:0,val:`sensors`,end:``},{old:`/api/v1/data/sensors/:deviceId/regenerate-token`,type:1,val:`deviceId`,end:``},{old:`/api/v1/data/sensors/:deviceId/regenerate-token`,type:0,val:`regenerate-token`,end:``}],types:$},"data.sensor_observations.index":{methods:[`GET`,`HEAD`],pattern:`/api/v1/data/sensors/:deviceId/observations`,tokens:[{old:`/api/v1/data/sensors/:deviceId/observations`,type:0,val:`api`,end:``},{old:`/api/v1/data/sensors/:deviceId/observations`,type:0,val:`v1`,end:``},{old:`/api/v1/data/sensors/:deviceId/observations`,type:0,val:`data`,end:``},{old:`/api/v1/data/sensors/:deviceId/observations`,type:0,val:`sensors`,end:``},{old:`/api/v1/data/sensors/:deviceId/observations`,type:1,val:`deviceId`,end:``},{old:`/api/v1/data/sensors/:deviceId/observations`,type:0,val:`observations`,end:``}],types:$},"data.sensor_errors.index":{methods:[`GET`,`HEAD`],pattern:`/api/v1/data/sensor-errors`,tokens:[{old:`/api/v1/data/sensor-errors`,type:0,val:`api`,end:``},{old:`/api/v1/data/sensor-errors`,type:0,val:`v1`,end:``},{old:`/api/v1/data/sensor-errors`,type:0,val:`data`,end:``},{old:`/api/v1/data/sensor-errors`,type:0,val:`sensor-errors`,end:``}],types:$},"ingest.sensor_ingest.observations":{methods:[`POST`],pattern:`/api/v1/ingest/observations`,tokens:[{old:`/api/v1/ingest/observations`,type:0,val:`api`,end:``},{old:`/api/v1/ingest/observations`,type:0,val:`v1`,end:``},{old:`/api/v1/ingest/observations`,type:0,val:`ingest`,end:``},{old:`/api/v1/ingest/observations`,type:0,val:`observations`,end:``}],types:$},"ingest.sensor_ingest.errors":{methods:[`POST`],pattern:`/api/v1/ingest/errors`,tokens:[{old:`/api/v1/ingest/errors`,type:0,val:`api`,end:``},{old:`/api/v1/ingest/errors`,type:0,val:`v1`,end:``},{old:`/api/v1/ingest/errors`,type:0,val:`ingest`,end:``},{old:`/api/v1/ingest/errors`,type:0,val:`errors`,end:``}],types:$},"admin.companyadmin.users.companyadmin_force_reset":{methods:[`POST`],pattern:`/api/v1/admin/companies/:companyId/users/:userId/force-reset`,tokens:[{old:`/api/v1/admin/companies/:companyId/users/:userId/force-reset`,type:0,val:`api`,end:``},{old:`/api/v1/admin/companies/:companyId/users/:userId/force-reset`,type:0,val:`v1`,end:``},{old:`/api/v1/admin/companies/:companyId/users/:userId/force-reset`,type:0,val:`admin`,end:``},{old:`/api/v1/admin/companies/:companyId/users/:userId/force-reset`,type:0,val:`companies`,end:``},{old:`/api/v1/admin/companies/:companyId/users/:userId/force-reset`,type:1,val:`companyId`,end:``},{old:`/api/v1/admin/companies/:companyId/users/:userId/force-reset`,type:0,val:`users`,end:``},{old:`/api/v1/admin/companies/:companyId/users/:userId/force-reset`,type:1,val:`userId`,end:``},{old:`/api/v1/admin/companies/:companyId/users/:userId/force-reset`,type:0,val:`force-reset`,end:``}],types:$},"admin.companyadmin.sensor_api_tokens.index":{methods:[`GET`,`HEAD`],pattern:`/api/v1/admin/companies/:companyId/sensor-tokens`,tokens:[{old:`/api/v1/admin/companies/:companyId/sensor-tokens`,type:0,val:`api`,end:``},{old:`/api/v1/admin/companies/:companyId/sensor-tokens`,type:0,val:`v1`,end:``},{old:`/api/v1/admin/companies/:companyId/sensor-tokens`,type:0,val:`admin`,end:``},{old:`/api/v1/admin/companies/:companyId/sensor-tokens`,type:0,val:`companies`,end:``},{old:`/api/v1/admin/companies/:companyId/sensor-tokens`,type:1,val:`companyId`,end:``},{old:`/api/v1/admin/companies/:companyId/sensor-tokens`,type:0,val:`sensor-tokens`,end:``}],types:$},"admin.companyadmin.sensor_api_tokens.destroy":{methods:[`DELETE`],pattern:`/api/v1/admin/companies/:companyId/sensor-tokens/:tokenId`,tokens:[{old:`/api/v1/admin/companies/:companyId/sensor-tokens/:tokenId`,type:0,val:`api`,end:``},{old:`/api/v1/admin/companies/:companyId/sensor-tokens/:tokenId`,type:0,val:`v1`,end:``},{old:`/api/v1/admin/companies/:companyId/sensor-tokens/:tokenId`,type:0,val:`admin`,end:``},{old:`/api/v1/admin/companies/:companyId/sensor-tokens/:tokenId`,type:0,val:`companies`,end:``},{old:`/api/v1/admin/companies/:companyId/sensor-tokens/:tokenId`,type:1,val:`companyId`,end:``},{old:`/api/v1/admin/companies/:companyId/sensor-tokens/:tokenId`,type:0,val:`sensor-tokens`,end:``},{old:`/api/v1/admin/companies/:companyId/sensor-tokens/:tokenId`,type:1,val:`tokenId`,end:``}],types:$},"admin.companyadmin.sensors.unregister":{methods:[`POST`],pattern:`/api/v1/admin/companies/:companyId/sensors/:deviceId/unregister`,tokens:[{old:`/api/v1/admin/companies/:companyId/sensors/:deviceId/unregister`,type:0,val:`api`,end:``},{old:`/api/v1/admin/companies/:companyId/sensors/:deviceId/unregister`,type:0,val:`v1`,end:``},{old:`/api/v1/admin/companies/:companyId/sensors/:deviceId/unregister`,type:0,val:`admin`,end:``},{old:`/api/v1/admin/companies/:companyId/sensors/:deviceId/unregister`,type:0,val:`companies`,end:``},{old:`/api/v1/admin/companies/:companyId/sensors/:deviceId/unregister`,type:1,val:`companyId`,end:``},{old:`/api/v1/admin/companies/:companyId/sensors/:deviceId/unregister`,type:0,val:`sensors`,end:``},{old:`/api/v1/admin/companies/:companyId/sensors/:deviceId/unregister`,type:1,val:`deviceId`,end:``},{old:`/api/v1/admin/companies/:companyId/sensors/:deviceId/unregister`,type:0,val:`unregister`,end:``}],types:$}},$tree:{}},baseUrl:`https://api.soildata.ai`,hooks:{beforeRequest:[e=>{let t=localStorage.getItem(`token`);t&&e.headers.set(`Authorization`,`Bearer ${t}`)}]}});
1export{J as n,le as t};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.