client-personalization.cjs.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. 'use strict';
  2. Object.defineProperty(exports, '__esModule', { value: true });
  3. var clientCommon = require('@algolia/client-common');
  4. var transporter = require('@algolia/transporter');
  5. var requesterCommon = require('@algolia/requester-common');
  6. const createPersonalizationClient = options => {
  7. const region = options.region || 'us';
  8. const auth = clientCommon.createAuth(clientCommon.AuthMode.WithinHeaders, options.appId, options.apiKey);
  9. const transporter$1 = transporter.createTransporter({
  10. hosts: [{ url: `personalization.${region}.algolia.com` }],
  11. ...options,
  12. headers: {
  13. ...auth.headers(),
  14. ...{ 'content-type': 'application/json' },
  15. ...options.headers,
  16. },
  17. queryParameters: {
  18. ...auth.queryParameters(),
  19. ...options.queryParameters,
  20. },
  21. });
  22. return clientCommon.addMethods({ appId: options.appId, transporter: transporter$1 }, options.methods);
  23. };
  24. const getPersonalizationStrategy = (base) => {
  25. return (requestOptions) => {
  26. return base.transporter.read({
  27. method: requesterCommon.MethodEnum.Get,
  28. path: '1/strategies/personalization',
  29. }, requestOptions);
  30. };
  31. };
  32. const setPersonalizationStrategy = (base) => {
  33. return (personalizationStrategy, requestOptions) => {
  34. return base.transporter.write({
  35. method: requesterCommon.MethodEnum.Post,
  36. path: '1/strategies/personalization',
  37. data: personalizationStrategy,
  38. }, requestOptions);
  39. };
  40. };
  41. exports.createPersonalizationClient = createPersonalizationClient;
  42. exports.getPersonalizationStrategy = getPersonalizationStrategy;
  43. exports.setPersonalizationStrategy = setPersonalizationStrategy;