@algolia/client-common 5.0.0-beta.4 → 5.0.0-beta.5

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.
@@ -388,8 +388,7 @@ function serializeUrl(host, path, queryParameters) {
388
388
  return url;
389
389
  }
390
390
  function serializeQueryParameters(parameters) {
391
- const isObjectOrArray = value => Object.prototype.toString.call(value) === '[object Object]' || Object.prototype.toString.call(value) === '[object Array]';
392
- return Object.keys(parameters).map(key => `${key}=${encodeURIComponent(isObjectOrArray(parameters[key]) ? JSON.stringify(parameters[key]) : parameters[key]).replaceAll('+', '%20')}`).join('&');
391
+ return Object.keys(parameters).filter(key => parameters[key] !== undefined).sort().map(key => `${key}=${encodeURIComponent(Object.prototype.toString.call(parameters[key]) === '[object Array]' ? parameters[key].join(',') : parameters[key]).replaceAll('+', '%20')}`).join('&');
393
392
  }
394
393
  function serializeData(request, requestOptions) {
395
394
  if (request.method === 'GET' || request.data === undefined && requestOptions.data === undefined) {
@@ -386,8 +386,7 @@ function serializeUrl(host, path, queryParameters) {
386
386
  return url;
387
387
  }
388
388
  function serializeQueryParameters(parameters) {
389
- const isObjectOrArray = value => Object.prototype.toString.call(value) === '[object Object]' || Object.prototype.toString.call(value) === '[object Array]';
390
- return Object.keys(parameters).map(key => `${key}=${encodeURIComponent(isObjectOrArray(parameters[key]) ? JSON.stringify(parameters[key]) : parameters[key]).replaceAll('+', '%20')}`).join('&');
389
+ return Object.keys(parameters).filter(key => parameters[key] !== undefined).sort().map(key => `${key}=${encodeURIComponent(Object.prototype.toString.call(parameters[key]) === '[object Array]' ? parameters[key].join(',') : parameters[key]).replaceAll('+', '%20')}`).join('&');
391
390
  }
392
391
  function serializeData(request, requestOptions) {
393
392
  if (request.method === 'GET' || request.data === undefined && requestOptions.data === undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/transporter/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,IAAI,EACJ,eAAe,EACf,OAAO,EACP,cAAc,EACd,QAAQ,EACR,UAAU,EACX,MAAM,UAAU,CAAC;AAIlB,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,CAYtD;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,eAAe,GAC/B,MAAM,CAWR;AAED,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,eAAe,GAAG,MAAM,CAe5E;AAED,wBAAgB,aAAa,CAC3B,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,cAAc,GAC7B,MAAM,GAAG,SAAS,CAapB;AAED,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,OAAO,EACpB,cAAc,EAAE,OAAO,EACvB,qBAAqB,CAAC,EAAE,OAAO,GAC9B,OAAO,CAeT;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAMvE;AAED,wBAAgB,kBAAkB,CAChC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAC7B,UAAU,EAAE,UAAU,EAAE,GACvB,KAAK,CAgBP"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/transporter/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,IAAI,EACJ,eAAe,EACf,OAAO,EACP,cAAc,EACd,QAAQ,EACR,UAAU,EACX,MAAM,UAAU,CAAC;AAIlB,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,CAYtD;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,eAAe,GAC/B,MAAM,CAWR;AAED,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,eAAe,GAAG,MAAM,CAa5E;AAED,wBAAgB,aAAa,CAC3B,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,cAAc,GAC7B,MAAM,GAAG,SAAS,CAapB;AAED,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,OAAO,EACpB,cAAc,EAAE,OAAO,EACvB,qBAAqB,CAAC,EAAE,OAAO,GAC9B,OAAO,CAeT;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAMvE;AAED,wBAAgB,kBAAkB,CAChC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAC7B,UAAU,EAAE,UAAU,EAAE,GACvB,KAAK,CAgBP"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@algolia/client-common",
3
- "version": "5.0.0-beta.4",
3
+ "version": "5.0.0-beta.5",
4
4
  "description": "Common package for the Algolia JavaScript API client.",
5
5
  "repository": "algolia/algoliasearch-client-javascript",
6
6
  "license": "MIT",
@@ -26,7 +26,7 @@
26
26
  "@types/node": "20.14.2",
27
27
  "jest": "29.7.0",
28
28
  "jest-environment-jsdom": "29.7.0",
29
- "ts-jest": "29.1.4",
29
+ "ts-jest": "29.1.5",
30
30
  "typescript": "5.4.5"
31
31
  },
32
32
  "engines": {
@@ -112,7 +112,7 @@ describe('createIterablePromise', () => {
112
112
  await expect(promise).resolves.toEqual('success #2');
113
113
 
114
114
  expect(Date.now() - before).toBeGreaterThanOrEqual(0);
115
- expect(Date.now() - before).toBeLessThanOrEqual(10);
115
+ expect(Date.now() - before).toBeLessThanOrEqual(20);
116
116
  expect(calls).toBe(2);
117
117
  });
118
118
 
@@ -133,7 +133,7 @@ describe('createIterablePromise', () => {
133
133
  await expect(promise).resolves.toEqual('success #2');
134
134
 
135
135
  expect(Date.now() - before).toBeGreaterThanOrEqual(2000);
136
- expect(Date.now() - before).toBeLessThanOrEqual(2010);
136
+ expect(Date.now() - before).toBeLessThanOrEqual(2020);
137
137
  expect(calls).toBe(2);
138
138
  });
139
139
  });
@@ -42,16 +42,14 @@ export function serializeUrl(
42
42
  }
43
43
 
44
44
  export function serializeQueryParameters(parameters: QueryParameters): string {
45
- const isObjectOrArray = (value: any): boolean =>
46
- Object.prototype.toString.call(value) === '[object Object]' ||
47
- Object.prototype.toString.call(value) === '[object Array]';
48
-
49
45
  return Object.keys(parameters)
46
+ .filter((key) => parameters[key] !== undefined)
47
+ .sort()
50
48
  .map(
51
49
  (key) =>
52
50
  `${key}=${encodeURIComponent(
53
- isObjectOrArray(parameters[key])
54
- ? JSON.stringify(parameters[key])
51
+ Object.prototype.toString.call(parameters[key]) === '[object Array]'
52
+ ? parameters[key].join(',')
55
53
  : parameters[key]
56
54
  ).replaceAll('+', '%20')}`
57
55
  )