Skip to content

Commit c45181d

Browse files
committed
Merge branch 'main' into feat/hook-generators
2 parents bac86fb + 80af64c commit c45181d

File tree

34 files changed

+4007
-3154
lines changed

34 files changed

+4007
-3154
lines changed

.github/actions/restore-artifacts/action.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,13 @@ runs:
5252
name: client-javascript-utils-requester-node-http
5353
path: clients/algoliasearch-client-javascript/packages/requester-node-http/
5454

55+
- name: client-javascript-utils-requester-fetch
56+
if: ${{ (inputs.javascript == 'true' && inputs.type == 'all') || inputs.type == 'js_utils' }}
57+
uses: actions/download-artifact@v3
58+
with:
59+
name: client-javascript-utils-requester-fetch
60+
path: clients/algoliasearch-client-javascript/packages/requester-fetch/
61+
5562
# JavaScript
5663
- name: Download clients-javascript artifact
5764
if: ${{ inputs.javascript == 'true' && inputs.type == 'all' }}

.github/workflows/check.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,7 @@ jobs:
134134
- client-common
135135
- requester-browser-xhr
136136
- requester-node-http
137+
- requester-fetch
137138
steps:
138139
- uses: actions/checkout@v2
139140

.yarn/releases/yarn-3.2.1.cjs

Lines changed: 0 additions & 786 deletions
This file was deleted.

.yarn/releases/yarn-3.2.2.cjs

Lines changed: 783 additions & 0 deletions
Large diffs are not rendered by default.

.yarnrc.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@ plugins:
44
- path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
55
spec: "@yarnpkg/plugin-interactive-tools"
66

7-
yarnPath: .yarn/releases/yarn-3.2.1.cjs
7+
yarnPath: .yarn/releases/yarn-3.2.2.cjs

clients/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,9 @@ This folder hosts the generated clients.
1919
- [@algolia/client-query-suggestions](./algoliasearch-client-javascript/packages/client-query-suggestions/): The Algolia query suggestions client.
2020
- [@algolia/client-search](./algoliasearch-client-javascript/packages/client-search/): The Algolia search client.
2121
- [@algolia/recommend](./algoliasearch-client-javascript/packages/recommend/): The Algolia recommend client.
22-
- [@algolia/sources](./algoliasearch-client-javascript/packages/client-sources/): The Algolia sources client.
22+
- [@algolia/client-sources](./algoliasearch-client-javascript/packages/client-sources/): The Algolia sources client.
2323
- [@algolia/predict](./algoliasearch-client-javascript/packages/predict/): The Algolia predict client.
2424
- [@algolia/client-common](./algoliasearch-client-javascript/packages/client-common/): The JavaScript clients common files.
2525
- [@algolia/requester-browser-xhr](./algoliasearch-client-javascript/packages/requester-browser-xhr/): Browser XHR requester for the Algolia JavaScript clients.
26+
- [@algolia/requester-fetch](./algoliasearch-client-javascript/packages/requester-fetch/): Requester for the Algolia JavaScript clients using Fetch.
2627
- [@algolia/requester-node-http](./algoliasearch-client-javascript/packages/requester-node-http/): Node.js HTTP requester for the Algolia JavaScript clients.

clients/algoliasearch-client-javascript/.yarn/releases/yarn-3.2.1.cjs

Lines changed: 0 additions & 786 deletions
This file was deleted.

clients/algoliasearch-client-javascript/.yarn/releases/yarn-3.2.2.cjs

Lines changed: 783 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
nodeLinker: node-modules
22

3-
yarnPath: .yarn/releases/yarn-3.2.1.cjs
3+
yarnPath: .yarn/releases/yarn-3.2.2.cjs

clients/algoliasearch-client-javascript/base.rollup.config.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@ const UTILS = {
1616
external: ['dom'],
1717
dependencies: [`${NPM_ORG}client-common`],
1818
},
19+
'requester-fetch': {
20+
external: ['dom'],
21+
dependencies: [`${NPM_ORG}client-common`],
22+
},
1923
'requester-node-http': {
2024
external: ['https', 'http', 'url'],
2125
dependencies: [`${NPM_ORG}client-common`],

clients/algoliasearch-client-javascript/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
"build:all": "./scripts/build_all.sh",
1010
"build:utils": "yarn build utils",
1111
"clean": "rm -rf packages/*/dist || true",
12-
"clean:utils": "yarn workspace @algolia/client-common clean && yarn workspace @algolia/requester-node-http clean && yarn workspace @algolia/requester-browser-xhr clean",
12+
"clean:utils": "yarn workspace @algolia/client-common clean && yarn workspace @algolia/requester-node-http clean && yarn workspace @algolia/requester-browser-xhr clean && yarn workspace @algolia/requester-fetch clean",
1313
"release:bump": "lerna version ${0:-patch} --no-changelog --no-git-tag-version --no-push --exact --force-publish --yes",
1414
"release:publish": "ts-node --project tsconfig.script.json scripts/publish.ts",
1515
"test:lint": "eslint . --ext .js,.ts",
@@ -30,7 +30,7 @@
3030
"@types/semver": "7.3.10",
3131
"bundlesize2": "0.0.31",
3232
"execa": "5.1.1",
33-
"lerna": "5.1.8",
33+
"lerna": "5.2.0",
3434
"rollup": "2.77.0",
3535
"rollup-plugin-node-globals": "1.4.0",
3636
"rollup-plugin-terser": "7.0.2",

clients/algoliasearch-client-javascript/packages/requester-browser-xhr/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@
2121
"@algolia/client-common": "5.0.0-alpha.0"
2222
},
2323
"devDependencies": {
24-
"@types/jest": "28.1.4",
24+
"@types/jest": "28.1.6",
2525
"@types/node": "16.11.45",
26-
"jest": "28.1.2",
27-
"jest-environment-jsdom": "28.1.2",
26+
"jest": "28.1.3",
27+
"jest-environment-jsdom": "28.1.3",
2828
"ts-jest": "28.0.5",
2929
"typescript": "4.7.4",
3030
"xhr-mock": "2.5.1"

clients/algoliasearch-client-javascript/packages/requester-browser-xhr/src/__tests__/browser-xhr-requester.test.ts

Lines changed: 11 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,20 @@
1-
import http from 'http';
1+
import type http from 'http';
22

3-
import type { EndRequest, Headers } from '@algolia/client-common';
3+
import type { EndRequest } from '@algolia/client-common';
44
import type { MockRequest, MockResponse } from 'xhr-mock';
55
import mock from 'xhr-mock';
66

77
import { createXhrRequester } from '../..';
8+
import {
9+
BASE_URL,
10+
headers,
11+
timeoutRequest,
12+
requestStub,
13+
getStringifiedBody,
14+
createTestServer,
15+
} from '../../../../tests/utils';
816

917
const requester = createXhrRequester();
10-
const BASE_URL = 'https://algolia-dns.net/foo?x-algolia-header=bar';
11-
12-
function getStringifiedBody(
13-
body: Record<string, any> = { foo: 'bar' }
14-
): string {
15-
return JSON.stringify(body);
16-
}
17-
18-
const headers: Headers = {
19-
'content-type': 'text/plain',
20-
};
21-
22-
const timeoutRequest: EndRequest = {
23-
url: 'missing-url-here',
24-
data: '',
25-
headers: {},
26-
method: 'GET',
27-
responseTimeout: 2000,
28-
connectTimeout: 1000,
29-
};
30-
31-
const requestStub: EndRequest = {
32-
url: BASE_URL,
33-
method: 'POST',
34-
headers,
35-
data: getStringifiedBody(),
36-
responseTimeout: 1000,
37-
connectTimeout: 2000,
38-
};
3918

4019
describe('status code handling', () => {
4120
beforeEach(() => mock.setup());
@@ -123,24 +102,7 @@ describe('timeout handling', () => {
123102
let server: http.Server;
124103
// setup http server to test timeout
125104
beforeAll(() => {
126-
server = http.createServer(function (_req, res) {
127-
res.writeHead(200, {
128-
'content-type': 'text/plain',
129-
'access-control-allow-origin': '*',
130-
'x-powered-by': 'nodejs',
131-
});
132-
133-
res.write('{"foo":');
134-
135-
setTimeout(() => {
136-
res.write(' "bar"');
137-
}, 1000);
138-
139-
setTimeout(() => {
140-
res.write('}');
141-
res.end();
142-
}, 5000);
143-
});
105+
server = createTestServer();
144106

145107
server.listen('1111');
146108
});
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export * from './src/createFetchRequester';
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import type { Config } from '@jest/types';
2+
3+
const config: Config.InitialOptions = {
4+
preset: 'ts-jest',
5+
roots: ['src/__tests__'],
6+
testEnvironment: 'jsdom',
7+
};
8+
9+
export default config;
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
{
2+
"name": "@algolia/requester-fetch",
3+
"version": "5.0.0-alpha.0",
4+
"description": "Promise-based request library using Fetch.",
5+
"repository": "algolia/algoliasearch-client-javascript",
6+
"license": "MIT",
7+
"author": "Algolia",
8+
"main": "dist/requester-fetch.cjs.js",
9+
"module": "dist/requester-fetch.esm.node.js",
10+
"types": "dist/index.d.ts",
11+
"files": [
12+
"dist",
13+
"src",
14+
"index.ts"
15+
],
16+
"scripts": {
17+
"clean": "rm -rf dist/",
18+
"test": "jest"
19+
},
20+
"dependencies": {
21+
"@algolia/client-common": "5.0.0-alpha.0"
22+
},
23+
"devDependencies": {
24+
"@types/jest": "28.1.6",
25+
"@types/node": "16.11.45",
26+
"cross-fetch": "3.1.5",
27+
"jest": "28.1.3",
28+
"nock": "13.2.9",
29+
"ts-jest": "28.0.5",
30+
"typescript": "4.7.4"
31+
},
32+
"engines": {
33+
"node": ">= 14.0.0"
34+
}
35+
}

0 commit comments

Comments
 (0)