Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@findkit/fetch

Package Overview
Dependencies
Maintainers
3
Versions
22
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@findkit/fetch - npm Package Compare versions

Comparing version
2.0.0-dev.6f6a1c6044
to
2.0.0-dev.751ece779c
+14
-14
__tests__/fetch.test.ts

@@ -37,3 +37,3 @@ import { expect, test, describe, beforeEach, afterEach, vi } from "vitest";

test("empty fetch", async () => {
const { findkitFetch } = createFindkitFetcher({
const { fetch: findkitFetch } = createFindkitFetcher({
searchEndpoint: "https://test.invalid/multi-search2",

@@ -53,3 +53,3 @@ });

const res = await findkitFetch({
q: "",
terms: "",
groups: [],

@@ -64,3 +64,3 @@ });

const { findkitFetch } = createFindkitFetcher({
const { fetch: findkitFetch } = createFindkitFetcher({
publicToken: "thetoken",

@@ -84,3 +84,3 @@ });

const res = await findkitFetch({
q: "",
terms: "",
groups: [],

@@ -96,3 +96,3 @@ });

test("when no groups are defined add a default that searches everything", async () => {
const { findkitFetch } = createFindkitFetcher({
const { fetch: findkitFetch } = createFindkitFetcher({
searchEndpoint: "https://test.invalid/multi-search2",

@@ -114,3 +114,3 @@ });

const res = await findkitFetch({
q: "test",
terms: "test",
});

@@ -137,3 +137,3 @@

const { findkitFetch } = createFindkitFetcher({
const { fetch: findkitFetch } = createFindkitFetcher({
searchEndpoint: "https://test.invalid/multi-search2",

@@ -148,3 +148,3 @@ async getJwtToken() {

const res = await findkitFetch({
q: "",
terms: "",
groups: [],

@@ -182,4 +182,4 @@ });

for await (const i of Array(5).keys()) {
await fetcher.findkitFetch({
q: i.toString(),
await fetcher.fetch({
terms: i.toString(),
groups: [],

@@ -224,4 +224,4 @@ });

await fetcher.findkitFetch({
q: "",
await fetcher.fetch({
terms: "",
groups: [],

@@ -232,4 +232,4 @@ });

await fetcher.findkitFetch({
q: "",
await fetcher.fetch({
terms: "",
groups: [],

@@ -236,0 +236,0 @@ });

@@ -27,3 +27,3 @@ "use strict";

(0, vitest_1.test)("empty fetch", async () => {
const { findkitFetch } = (0, index_1.createFindkitFetcher)({
const { fetch: findkitFetch } = (0, index_1.createFindkitFetcher)({
searchEndpoint: "https://test.invalid/multi-search2",

@@ -39,3 +39,3 @@ });

const res = await findkitFetch({
q: "",
terms: "",
groups: [],

@@ -47,3 +47,3 @@ });

const spy = vitest_1.vi.fn();
const { findkitFetch } = (0, index_1.createFindkitFetcher)({
const { fetch: findkitFetch } = (0, index_1.createFindkitFetcher)({
publicToken: "thetoken",

@@ -60,3 +60,3 @@ });

const res = await findkitFetch({
q: "",
terms: "",
groups: [],

@@ -68,3 +68,3 @@ });

(0, vitest_1.test)("when no groups are defined add a default that searches everything", async () => {
const { findkitFetch } = (0, index_1.createFindkitFetcher)({
const { fetch: findkitFetch } = (0, index_1.createFindkitFetcher)({
searchEndpoint: "https://test.invalid/multi-search2",

@@ -82,3 +82,3 @@ });

const res = await findkitFetch({
q: "test",
terms: "test",
});

@@ -98,3 +98,3 @@ (0, vitest_1.expect)(res).toEqual({ duration: 123, groups: [] });

}));
const { findkitFetch } = (0, index_1.createFindkitFetcher)({
const { fetch: findkitFetch } = (0, index_1.createFindkitFetcher)({
searchEndpoint: "https://test.invalid/multi-search2",

@@ -107,3 +107,3 @@ async getJwtToken() {

const res = await findkitFetch({
q: "",
terms: "",
groups: [],

@@ -133,4 +133,4 @@ });

for await (const i of Array(5).keys()) {
await fetcher.findkitFetch({
q: i.toString(),
await fetcher.fetch({
terms: i.toString(),
groups: [],

@@ -166,9 +166,9 @@ });

});
await fetcher.findkitFetch({
q: "",
await fetcher.fetch({
terms: "",
groups: [],
});
expired = true;
await fetcher.findkitFetch({
q: "",
await fetcher.fetch({
terms: "",
groups: [],

@@ -175,0 +175,0 @@ });

@@ -5,3 +5,2 @@ /**

export interface FindkitFetchInit {
staging?: boolean;
logResponseTimes?: boolean;

@@ -45,2 +44,6 @@ publicToken?: string;

message?: string;
/**
* @deprecated use message field instead
*/
error?: string;
}

@@ -72,3 +75,3 @@ /**

export declare function createFindkitFetcher(init?: FindkitFetchInit): {
findkitFetch: FindkitFetch;
fetch: FindkitFetch;
clear: () => void;

@@ -85,4 +88,13 @@ refresh: () => void;

export interface FindkitSearchParams {
q: string;
/**
* Free form text query
*/
terms: string;
/**
* Search groups
*/
groups?: FindkitSearchGroupParams[];
/**
* Abort signal
*/
signal?: AbortSignal;

@@ -94,3 +106,4 @@ }

export interface FindkitSearchGroupParams {
tagQuery: string[][];
tagQuery?: string[][];
tagBoost?: Record<string, number>;
createdDecay?: number;

@@ -103,2 +116,8 @@ modifiedDecay?: number;

lang?: string;
/**
* EXPERIMENTAL
*
* Return content for each hit. Must be explicitly enabled in the findkit.toml file
*/
content?: boolean;
}

@@ -112,3 +131,3 @@ /**

messages?: {
code: "string";
id: string;
message: string;

@@ -134,2 +153,7 @@ }[];

customFields: CustomFields;
/**
* EXPERIMENTAL
* Only present if the content parameter was set in the request
*/
content?: string;
}[];

@@ -136,0 +160,0 @@ }

@@ -1,1 +0,1 @@

{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}

@@ -84,3 +84,3 @@ "use strict";

body: JSON.stringify({
q: options.q,
q: options.terms,
groups: options.groups,

@@ -103,7 +103,7 @@ }),

}
throw new Error("[findkit] Permission denied: " + error.message);
throw new Error("[findkit] Permission denied3: " + (error.message || error.error));
}
if (!res.ok) {
const error = await safeErrorJson(res);
throw new Error(`[findkit] Bad response ${res.status} from search: ${error.message}`);
throw new Error(`[findkit] Bad response ${res.status} from search: ${error.message || error.error}`);
}

@@ -124,3 +124,3 @@ const responses = await res.json();

return {
findkitFetch,
fetch: findkitFetch,
clear,

@@ -148,4 +148,14 @@ refresh,

function createSearchEndpoint(publicToken) {
return `https://search.findkit.com/c/${publicToken}/search?p=${publicToken}`;
let version = "c";
try {
const usp = new URLSearchParams(location.hash.slice(1));
version = usp.get("__findkit_version") || "c";
}
catch {
// May crash for various reasons, no location object on a server, invalid
// query string etc. We really don't care why it fails, since this is for
// internal use only.
}
return `https://search.findkit.com/${version}/${publicToken}/search?p=${publicToken}`;
}
exports.createSearchEndpoint = createSearchEndpoint;

@@ -5,3 +5,2 @@ /**

export interface FindkitFetchInit {
staging?: boolean;
logResponseTimes?: boolean;

@@ -45,2 +44,6 @@ publicToken?: string;

message?: string;
/**
* @deprecated use message field instead
*/
error?: string;
}

@@ -72,3 +75,3 @@ /**

export declare function createFindkitFetcher(init?: FindkitFetchInit): {
findkitFetch: FindkitFetch;
fetch: FindkitFetch;
clear: () => void;

@@ -85,4 +88,13 @@ refresh: () => void;

export interface FindkitSearchParams {
q: string;
/**
* Free form text query
*/
terms: string;
/**
* Search groups
*/
groups?: FindkitSearchGroupParams[];
/**
* Abort signal
*/
signal?: AbortSignal;

@@ -94,3 +106,4 @@ }

export interface FindkitSearchGroupParams {
tagQuery: string[][];
tagQuery?: string[][];
tagBoost?: Record<string, number>;
createdDecay?: number;

@@ -103,2 +116,8 @@ modifiedDecay?: number;

lang?: string;
/**
* EXPERIMENTAL
*
* Return content for each hit. Must be explicitly enabled in the findkit.toml file
*/
content?: boolean;
}

@@ -112,3 +131,3 @@ /**

messages?: {
code: "string";
id: string;
message: string;

@@ -134,2 +153,7 @@ }[];

customFields: CustomFields;
/**
* EXPERIMENTAL
* Only present if the content parameter was set in the request
*/
content?: string;
}[];

@@ -136,0 +160,0 @@ }

@@ -1,1 +0,1 @@

{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC1B;AAED;;GAEG;AACH,oBAAY,YAAY,GAAG;IAC1B,CAAC,WAAW,EAAE,MAAM,GACjB;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAC/B;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAClC;QAAE,IAAI,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GACjC,SAAS,CAAC;CACb,CAAC;AAEF;;GAEG;AACH,UAAU,QAAQ;IACjB,GAAG,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;CAC/D;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,IAAI,CAAC,EAAE,aAAa,GAAG,aAAa,GAAG,uBAAuB,CAAC;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAmBD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC3B,CAAC,OAAO,EAAE;QACT,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,cAAc,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC;CACb;AAmBD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,CAAC,EAAE,gBAAgB;;;;EAiI3D;AAiBD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,UAavD;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAEpC;;OAEG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,oBAAY,qBAAqB,GAAG;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE;QACV,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;KAChB,EAAE,CAAC;CACJ,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,YAAY,EAAE,YAAY,CAAC;QAE3B;;;WAGG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KACjB,EAAE,CAAC;CACJ"}

@@ -84,3 +84,3 @@ "use strict";

body: JSON.stringify({
q: options.q,
q: options.terms,
groups: options.groups,

@@ -103,7 +103,7 @@ }),

}
throw new Error("[findkit] Permission denied: " + error.message);
throw new Error("[findkit] Permission denied3: " + (error.message || error.error));
}
if (!res.ok) {
const error = await safeErrorJson(res);
throw new Error(`[findkit] Bad response ${res.status} from search: ${error.message}`);
throw new Error(`[findkit] Bad response ${res.status} from search: ${error.message || error.error}`);
}

@@ -124,3 +124,3 @@ const responses = await res.json();

return {
findkitFetch,
fetch: findkitFetch,
clear,

@@ -148,4 +148,14 @@ refresh,

function createSearchEndpoint(publicToken) {
return `https://search.findkit.com/c/${publicToken}/search?p=${publicToken}`;
let version = "c";
try {
const usp = new URLSearchParams(location.hash.slice(1));
version = usp.get("__findkit_version") || "c";
}
catch {
// May crash for various reasons, no location object on a server, invalid
// query string etc. We really don't care why it fails, since this is for
// internal use only.
}
return `https://search.findkit.com/${version}/${publicToken}/search?p=${publicToken}`;
}
exports.createSearchEndpoint = createSearchEndpoint;
{
"name": "@findkit/fetch",
"version": "2.0.0-dev.6f6a1c6044",
"version": "2.0.0-dev.751ece779c",
"description": "minimal fetch for findkit",

@@ -5,0 +5,0 @@ "main": "dist/index.js",

# Findkit Fetch
Low level read-only API for Findkit indices used by
[@valu/react-valu-search](https://docs.valusearch.pro/react-valu-search/introduction).
Low level read-only API for Findkit indices used by Findkit UI

@@ -12,82 +11,2 @@ ## Install

In browsers it uses the native `fetch()` but in Node.js you must provide it from
node-fetch and set it as global.
## Usage
```ts
import { findkitFetch } from "@findkit/fetch";
// Returns SearchResponse[]
const responses = await findkitFetch({
// See FindkitFetchOptions below for more details
customer: "wikipedia",
terms: "genie",
apiKey: "your-api-key-here", // Contact your Findkit provider for api key
groups: [
{
tagQuery: [],
size: 10,
from: 0,
},
],
});
```
Each group will add a `SearchResponse` object to the resolved array. The array
order will correspond with the groups order.
## API
`findkitFetch()` takes `FindkitFetchOptions` as request params and returns
`Promise<SearchResponse[]>`.
```ts
function findkitFetch(params: FindkitFetchOptions): Promise<SearchResponse[]>;
interface FindkitFetchOptions {
terms: string;
groups: SearchGroupParams[];
customer?: string;
searchEndpoint?: string;
apiKey: string;
staging?: boolean;
logResponseTimes?: boolean;
}
interface SearchGroupParams {
tagQuery: string[][];
createdDecay?: number;
modifiedDecay?: number;
decayScale?: string;
highlightLength?: number;
size: number;
from: number;
lang?: string;
}
interface SearchResponse {
total: number;
duration?: number;
hits: {
score: number;
title: string;
language: string;
url: string;
domain: string;
created: string;
modified: string;
highlight: string;
tags: string[];
customFields: CustomFields;
}[];
}
type CustomFields = {
[customField: string]:
| { type: "date"; value: string }
| { type: "keyword"; value: string }
| { type: "number"; value: number }
| undefined;
};
```
See https://docs.findkit.com/fetch

@@ -5,3 +5,2 @@ /**

export interface FindkitFetchInit {
staging?: boolean;
logResponseTimes?: boolean;

@@ -44,2 +43,6 @@ publicToken?: string;

message?: string;
/**
* @deprecated use message field instead
*/
error?: string;
}

@@ -165,3 +168,3 @@

body: JSON.stringify({
q: options.q,
q: options.terms,
groups: options.groups,

@@ -192,3 +195,5 @@ }),

throw new Error("[findkit] Permission denied: " + error.message);
throw new Error(
"[findkit] Permission denied3: " + (error.message || error.error)
);
}

@@ -199,3 +204,5 @@

throw new Error(
`[findkit] Bad response ${res.status} from search: ${error.message}`
`[findkit] Bad response ${res.status} from search: ${
error.message || error.error
}`
);

@@ -229,3 +236,3 @@ }

return {
findkitFetch,
fetch: findkitFetch,
clear,

@@ -255,3 +262,14 @@ refresh,

export function createSearchEndpoint(publicToken: string) {
return `https://search.findkit.com/c/${publicToken}/search?p=${publicToken}`;
let version = "c";
try {
const usp = new URLSearchParams(location.hash.slice(1));
version = usp.get("__findkit_version") || "c";
} catch {
// May crash for various reasons, no location object on a server, invalid
// query string etc. We really don't care why it fails, since this is for
// internal use only.
}
return `https://search.findkit.com/${version}/${publicToken}/search?p=${publicToken}`;
}

@@ -263,4 +281,15 @@

export interface FindkitSearchParams {
q: string;
/**
* Free form text query
*/
terms: string;
/**
* Search groups
*/
groups?: FindkitSearchGroupParams[];
/**
* Abort signal
*/
signal?: AbortSignal;

@@ -273,3 +302,4 @@ }

export interface FindkitSearchGroupParams {
tagQuery: string[][];
tagQuery?: string[][];
tagBoost?: Record<string, number>;
createdDecay?: number;

@@ -282,2 +312,9 @@ modifiedDecay?: number;

lang?: string;
/**
* EXPERIMENTAL
*
* Return content for each hit. Must be explicitly enabled in the findkit.toml file
*/
content?: boolean;
}

@@ -292,3 +329,3 @@

messages?: {
code: "string";
id: string;
message: string;

@@ -315,3 +352,9 @@ }[];

customFields: CustomFields;
/**
* EXPERIMENTAL
* Only present if the content parameter was set in the request
*/
content?: string;
}[];
}