Skip to content

Commit 4a39f64

Browse files
chore(javascript): use tsup bundler (#3640) (generated) [skip ci]
Co-authored-by: Clément Vannicatte <[email protected]>
1 parent ff0c996 commit 4a39f64

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+1118
-350
lines changed

clients/algoliasearch-client-javascript/base.tsup.config.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,18 +16,18 @@ export function getBaseConfig(cwd: string): Options {
1616
};
1717
}
1818

19-
export function getDependencies(pkg: PKG, env: 'node' | 'browser'): string[] {
19+
export function getDependencies(pkg: PKG, env: 'browser' | 'node'): string[] {
2020
const deps = Object.keys(pkg.dependencies || {}) || [];
2121

22-
if (pkg.name !== "algoliasearch") {
23-
return deps
22+
if (pkg.name !== 'algoliasearch') {
23+
return deps;
2424
}
2525

2626
if (env === 'node') {
27-
return deps.filter(dep => dep !== '@algolia/requester-browser-xhr')
27+
return deps.filter((dep) => dep !== '@algolia/requester-browser-xhr');
2828
}
2929

30-
return deps.filter(dep => dep !== '@algolia/requester-node-http')
30+
return deps.filter((dep) => dep !== '@algolia/requester-node-http');
3131
}
3232

3333
export function getBaseNodeOptions(pkg: PKG, cwd: string): Options {

clients/algoliasearch-client-javascript/packages/algoliasearch/builds/browser.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import type { AbtestingClient, Region as AbtestingRegion } from '@algolia/client
44
import { abtestingClient } from '@algolia/client-abtesting';
55
import type { AnalyticsClient, Region as AnalyticsRegion } from '@algolia/client-analytics';
66
import { analyticsClient } from '@algolia/client-analytics';
7-
import type { ClientOptions } from '@algolia/client-common';
87
import {
98
DEFAULT_CONNECT_TIMEOUT_BROWSER,
109
DEFAULT_READ_TIMEOUT_BROWSER,
@@ -13,19 +12,19 @@ import {
1312
createFallbackableCache,
1413
createMemoryCache,
1514
} from '@algolia/client-common';
15+
import type { ClientOptions } from '@algolia/client-common';
1616
import type { PersonalizationClient, Region as PersonalizationRegion } from '@algolia/client-personalization';
1717
import { personalizationClient } from '@algolia/client-personalization';
18-
import { searchClient, apiClientVersion as searchClientVersion } from '@algolia/client-search';
18+
import { searchClient } from '@algolia/client-search';
1919
import type { RecommendClient } from '@algolia/recommend';
2020
import { recommendClient } from '@algolia/recommend';
2121
import { createXhrRequester } from '@algolia/requester-browser-xhr';
2222

2323
import type { InitClientOptions, InitClientRegion } from './models';
24+
import { apiClientVersion } from './models';
2425

2526
export * from './models';
2627

27-
export const apiClientVersion = searchClientVersion;
28-
2928
/**
3029
* The client type.
3130
*/
@@ -40,7 +39,6 @@ export function algoliasearch(appId: string, apiKey: string, options?: ClientOpt
4039
if (!apiKey || typeof apiKey !== 'string') {
4140
throw new Error('`apiKey` is missing.');
4241
}
43-
4442
function initRecommend(initOptions: InitClientOptions = {}): RecommendClient {
4543
return recommendClient(initOptions.appId || appId, initOptions.apiKey || apiKey, initOptions.options);
4644
}

clients/algoliasearch-client-javascript/packages/algoliasearch/builds/models.ts

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
22

3+
import type { Region as ABTestingRegion } from '@algolia/client-abtesting';
4+
import type { Region as AnalyticsRegion } from '@algolia/client-analytics';
35
import type { ClientOptions } from '@algolia/client-common';
4-
import {
6+
import type {
57
AdvancedSyntaxFeatures,
68
AlternativesAsExact,
79
Anchoring,
@@ -74,19 +76,16 @@ import {
7476
TypoTolerance,
7577
TypoToleranceEnum,
7678
Value,
77-
} from '@algolia/client-search/model';
79+
} from '@algolia/client-search';
80+
import { apiClientVersion } from '@algolia/client-search';
7881

79-
export * from '@algolia/client-search/model';
80-
export * from '@algolia/recommend/model';
81-
export * from '@algolia/client-personalization/model';
82-
export * from '@algolia/client-analytics/model';
83-
export * from '@algolia/client-abtesting/model';
82+
type Region = ABTestingRegion | AnalyticsRegion;
8483

85-
export { SearchClient } from '@algolia/client-search';
86-
export { RecommendClient } from '@algolia/recommend';
87-
export { PersonalizationClient } from '@algolia/client-personalization';
88-
export { AnalyticsClient } from '@algolia/client-analytics';
89-
export { AbtestingClient } from '@algolia/client-abtesting';
84+
export * from '@algolia/client-search';
85+
export * from '@algolia/recommend';
86+
export * from '@algolia/client-personalization';
87+
export * from '@algolia/client-analytics';
88+
export * from '@algolia/client-abtesting';
9089

9190
export {
9291
AdvancedSyntaxFeatures,
@@ -161,6 +160,10 @@ export {
161160
TypoTolerance,
162161
TypoToleranceEnum,
163162
Value,
163+
AnalyticsRegion,
164+
ABTestingRegion,
165+
Region,
166+
apiClientVersion,
164167
};
165168

166169
/**

clients/algoliasearch-client-javascript/packages/algoliasearch/builds/node.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import type { AbtestingClient, Region as AbtestingRegion } from '@algolia/client
66
import { abtestingClient } from '@algolia/client-abtesting';
77
import type { AnalyticsClient, Region as AnalyticsRegion } from '@algolia/client-analytics';
88
import { analyticsClient } from '@algolia/client-analytics';
9-
import type { ClientOptions } from '@algolia/client-common';
109
import {
1110
DEFAULT_CONNECT_TIMEOUT_NODE,
1211
DEFAULT_READ_TIMEOUT_NODE,
@@ -15,9 +14,10 @@ import {
1514
createNullCache,
1615
serializeQueryParameters,
1716
} from '@algolia/client-common';
17+
import type { ClientOptions } from '@algolia/client-common';
1818
import type { PersonalizationClient, Region as PersonalizationRegion } from '@algolia/client-personalization';
1919
import { personalizationClient } from '@algolia/client-personalization';
20-
import { searchClient, apiClientVersion as searchClientVersion } from '@algolia/client-search';
20+
import { searchClient } from '@algolia/client-search';
2121
import type { RecommendClient } from '@algolia/recommend';
2222
import { recommendClient } from '@algolia/recommend';
2323
import { createHttpRequester } from '@algolia/requester-node-http';
@@ -31,8 +31,6 @@ import type {
3131

3232
export * from './models';
3333

34-
export const apiClientVersion = searchClientVersion;
35-
3634
/**
3735
* The client type.
3836
*/
@@ -47,7 +45,6 @@ export function algoliasearch(appId: string, apiKey: string, options?: ClientOpt
4745
if (!apiKey || typeof apiKey !== 'string') {
4846
throw new Error('`apiKey` is missing.');
4947
}
50-
5148
function initRecommend(initOptions: InitClientOptions = {}): RecommendClient {
5249
return recommendClient(initOptions.appId || appId, initOptions.apiKey || apiKey, initOptions.options);
5350
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
// eslint-disable-next-line import/no-unresolved
2-
export * from './dist/algoliasearch/builds/node';
2+
export * from './dist/node';
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
// eslint-disable-next-line import/no-commonjs,import/extensions
2-
module.exports = require('./dist/algoliasearch.cjs');
2+
module.exports = require('./dist/node.cjs');
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
// eslint-disable-next-line import/no-unresolved
2-
export * from './dist/lite/builds/node';
2+
export * from './dist/lite/node';
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
// eslint-disable-next-line import/no-commonjs,import/extensions
2-
module.exports = require('./dist/lite/lite.cjs');
2+
module.exports = require('./dist/lite/builds/node.cjs');

clients/algoliasearch-client-javascript/packages/algoliasearch/package.json

Lines changed: 37 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -7,49 +7,54 @@
77
"type": "module",
88
"license": "MIT",
99
"author": "Algolia",
10-
"types": "./index.d.ts",
10+
"scripts": {
11+
"build": "yarn clean && yarn tsup && yarn rollup -c rollup.config.js",
12+
"clean": "rm -rf ./dist || true",
13+
"test": "jest",
14+
"test:bundle": "publint . && attw --pack ."
15+
},
1116
"name": "algoliasearch",
1217
"description": "A fully-featured and blazing-fast JavaScript API client to interact with Algolia API.",
13-
"jsdelivr": "./dist/algoliasearch.umd.js",
14-
"unpkg": "./dist/algoliasearch.umd.js",
15-
"browser": {
16-
"./index.js": "./dist/algoliasearch.umd.js",
17-
"./lite.js": "./dist/lite/lite.umd.js"
18-
},
1918
"exports": {
2019
".": {
2120
"node": {
22-
"import": "./dist/algoliasearch.esm.node.js",
23-
"module": "./dist/algoliasearch.esm.node.js",
24-
"require": "./dist/algoliasearch.cjs",
25-
"default": "./dist/algoliasearch.cjs",
26-
"types": "./dist/algoliasearch/builds/node.d.ts"
21+
"types": {
22+
"import": "./dist/node.d.ts",
23+
"module": "./dist/node.d.ts",
24+
"require": "./dist/node.d.cts"
25+
},
26+
"import": "./dist/node.js",
27+
"module": "./dist/node.js",
28+
"require": "./dist/node.cjs"
2729
},
28-
"browser": {
29-
"umd": "./dist/algoliasearch.umd.js",
30-
"module": "./dist/algoliasearch.esm.browser.js",
31-
"import": "./dist/algoliasearch.esm.browser.js",
32-
"default": "./dist/algoliasearch.umd.js",
33-
"types": "./dist/algoliasearch/builds/browser.d.ts"
30+
"default": {
31+
"types": "./dist/browser.d.ts",
32+
"module": "./dist/browser.js",
33+
"import": "./dist/browser.js",
34+
"default": "./dist/algoliasearch.umd.js"
3435
}
3536
},
3637
"./lite": {
3738
"node": {
38-
"import": "./dist/lite/lite.esm.node.js",
39-
"module": "./dist/lite/lite.esm.node.js",
40-
"require": "./dist/lite/lite.cjs",
41-
"default": "./dist/lite/lite.cjs",
42-
"types": "./dist/lite/builds/node.d.ts"
39+
"types": {
40+
"import": "./dist/lite/node.d.ts",
41+
"module": "./dist/lite/node.d.ts",
42+
"require": "./dist/lite/node.d.cts"
43+
},
44+
"import": "./dist/lite/builds/node.js",
45+
"module": "./dist/lite/builds/node.js",
46+
"require": "./dist/lite/builds/node.cjs"
4347
},
44-
"browser": {
45-
"umd": "./dist/lite/lite.umd.js",
46-
"module": "./dist/lite/lite.esm.browser.js",
47-
"import": "./dist/lite/lite.esm.browser.js",
48-
"default": "./dist/lite/lite.umd.js",
49-
"types": "./dist/lite/builds/browser.d.ts"
48+
"default": {
49+
"types": "./dist/lite/browser.d.ts",
50+
"module": "./dist/lite/builds/browser.js",
51+
"import": "./dist/lite/builds/browser.js",
52+
"default": "./dist/lite/builds/browser.umd.js"
5053
}
5154
}
5255
},
56+
"jsdelivr": "./dist/algoliasearch.umd.js",
57+
"unpkg": "./dist/algoliasearch.umd.js",
5358
"files": [
5459
"dist",
5560
"builds",
@@ -59,11 +64,6 @@
5964
"lite.js",
6065
"lite.d.ts"
6166
],
62-
"scripts": {
63-
"build": "yarn clean && rollup --config",
64-
"clean": "rm -rf ./dist || true",
65-
"test": "jest"
66-
},
6767
"dependencies": {
6868
"@algolia/client-abtesting": "5.2.4",
6969
"@algolia/client-analytics": "5.2.4",
@@ -75,12 +75,15 @@
7575
"@algolia/requester-node-http": "5.2.4"
7676
},
7777
"devDependencies": {
78+
"@arethetypeswrong/cli": "0.15.4",
7879
"@babel/preset-env": "7.25.4",
7980
"@babel/preset-typescript": "7.24.7",
8081
"@types/jest": "29.5.12",
8182
"@types/node": "22.5.1",
8283
"jest": "29.7.0",
84+
"publint": "0.2.10",
8385
"rollup": "4.21.2",
86+
"tsup": "8.2.4",
8487
"typescript": "5.5.4"
8588
},
8689
"engines": {
Lines changed: 30 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,30 @@
1-
import { buildConfigs } from '../../base.rollup.config.js';
2-
3-
import pkg from './package.json' with { type: 'json' };
4-
5-
export default buildConfigs(pkg);
1+
export default [
2+
{
3+
input: 'dist/lite/builds/browser.min.js',
4+
external: ['dom'],
5+
output: {
6+
esModule: false,
7+
file: 'dist/lite/builds/browser.umd.js',
8+
name: 'lite',
9+
format: 'umd',
10+
sourcemap: false,
11+
globals: {
12+
['lite']: 'lite',
13+
},
14+
},
15+
},
16+
{
17+
input: 'dist/browser.min.js',
18+
external: ['dom'],
19+
output: {
20+
esModule: false,
21+
file: 'dist/algoliasearch.umd.js',
22+
name: 'algoliasearch',
23+
format: 'umd',
24+
sourcemap: false,
25+
globals: {
26+
['algoliasearch']: 'algoliasearch',
27+
},
28+
},
29+
}
30+
]

0 commit comments

Comments
 (0)