@dfds-ui/google-places 2.2.0-alpha.e010e72f → 2.2.0-alpha.e82e41de
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.
- package/AddressSelect.d.ts +3 -3
- package/AddressSelect.js +30 -36
- package/GooglePlaces.d.ts +1 -1
- package/GooglePlaces.js +11 -11
- package/cjs/AddressSelect.d.ts +3 -3
- package/cjs/AddressSelect.js +43 -63
- package/cjs/GooglePlaces.d.ts +1 -1
- package/cjs/GooglePlaces.js +18 -32
- package/cjs/index.js +4 -4
- package/package.json +9 -9
package/AddressSelect.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { ILocation, IPrediction } from './GooglePlaces';
|
|
3
|
-
export
|
|
3
|
+
export type AddressSelectProps = {
|
|
4
4
|
components?: any;
|
|
5
5
|
name: string;
|
|
6
6
|
disabled?: boolean;
|
|
@@ -25,5 +25,5 @@ export declare type AddressSelectProps = {
|
|
|
25
25
|
*/
|
|
26
26
|
className?: string;
|
|
27
27
|
};
|
|
28
|
-
declare const AddressSelect: ({ name, disabled, error, size, types, onFocus, onBlur, onChange, location, radius, countries, ...rest }: AddressSelectProps) => JSX.Element;
|
|
28
|
+
declare const AddressSelect: ({ name, disabled, error, size, types, onFocus, onBlur, onChange, location, radius, countries, ...rest }: AddressSelectProps) => React.JSX.Element;
|
|
29
29
|
export default AddressSelect;
|
package/AddressSelect.js
CHANGED
|
@@ -1,30 +1,27 @@
|
|
|
1
1
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
2
|
var _excluded = ["name", "disabled", "error", "size", "types", "onFocus", "onBlur", "onChange", "location", "radius", "countries"];
|
|
3
|
-
function
|
|
4
|
-
function
|
|
5
|
-
function
|
|
6
|
-
function
|
|
7
|
-
function
|
|
8
|
-
function _regeneratorAsyncGen(r, e, t, o, n) { return new _regeneratorAsyncIterator(_regenerator().w(r, e, t, o), n || Promise); }
|
|
9
|
-
function _regeneratorAsyncIterator(t, e) { function n(r, o, i, f) { try { var c = t[r](o), u = c.value; return u instanceof _OverloadYield ? e.resolve(u.v).then(function (t) { n("next", t, i, f); }, function (t) { n("throw", t, i, f); }) : e.resolve(u).then(function (t) { c.value = t, i(c); }, function (t) { return n("throw", t, i, f); }); } catch (t) { f(t); } } var r; this.next || (_regeneratorDefine2(_regeneratorAsyncIterator.prototype), _regeneratorDefine2(_regeneratorAsyncIterator.prototype, "function" == typeof Symbol && Symbol.asyncIterator || "@asyncIterator", function () { return this; })), _regeneratorDefine2(this, "_invoke", function (t, o, i) { function f() { return new e(function (e, r) { n(t, i, e, r); }); } return r = r ? r.then(f, f) : f(); }, !0); }
|
|
3
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
4
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
5
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
6
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
7
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
10
8
|
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
|
|
11
9
|
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
|
|
12
|
-
function _OverloadYield(e, d) { this.v = e, this.k = d; }
|
|
13
10
|
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
|
|
14
11
|
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
|
|
15
12
|
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
16
13
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
17
14
|
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
18
|
-
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++)
|
|
19
|
-
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0)
|
|
15
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
16
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
20
17
|
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
21
|
-
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++)
|
|
22
|
-
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r)
|
|
18
|
+
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
|
19
|
+
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
|
|
23
20
|
import React, { useState } from 'react';
|
|
24
21
|
import { AsyncSearchableSelect } from '@dfds-ui/react-components';
|
|
25
22
|
import debounce from 'lodash.debounce';
|
|
26
23
|
import { useAddressPredictions } from './GooglePlaces';
|
|
27
|
-
import { jsx as
|
|
24
|
+
import { jsx as _jsx } from "@emotion/react/jsx-runtime";
|
|
28
25
|
var AddressSelect = function AddressSelect(_ref) {
|
|
29
26
|
var name = _ref.name,
|
|
30
27
|
disabled = _ref.disabled,
|
|
@@ -55,29 +52,26 @@ var AddressSelect = function AddressSelect(_ref) {
|
|
|
55
52
|
available = _useAddressPrediction.available,
|
|
56
53
|
getPlacePredictions = _useAddressPrediction.getPlacePredictions;
|
|
57
54
|
var loadOptions = /*#__PURE__*/function () {
|
|
58
|
-
var _ref2 = _asyncToGenerator(/*#__PURE__*/
|
|
55
|
+
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(input, callback) {
|
|
59
56
|
var placePredictions, options;
|
|
60
|
-
return
|
|
61
|
-
while (1) {
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
case "end":
|
|
79
|
-
return _context.stop();
|
|
80
|
-
}
|
|
57
|
+
return _regenerator().w(function (_context) {
|
|
58
|
+
while (1) switch (_context.n) {
|
|
59
|
+
case 0:
|
|
60
|
+
_context.n = 1;
|
|
61
|
+
return getPlacePredictions(input);
|
|
62
|
+
case 1:
|
|
63
|
+
placePredictions = _context.v;
|
|
64
|
+
setPredictions(placePredictions);
|
|
65
|
+
options = placePredictions.map(function (prediction) {
|
|
66
|
+
return {
|
|
67
|
+
value: prediction.description,
|
|
68
|
+
label: prediction.description,
|
|
69
|
+
prediction: prediction
|
|
70
|
+
};
|
|
71
|
+
});
|
|
72
|
+
callback(options);
|
|
73
|
+
case 2:
|
|
74
|
+
return _context.a(2);
|
|
81
75
|
}
|
|
82
76
|
}, _callee);
|
|
83
77
|
}));
|
|
@@ -90,7 +84,7 @@ var AddressSelect = function AddressSelect(_ref) {
|
|
|
90
84
|
onChange(value, predictions);
|
|
91
85
|
}
|
|
92
86
|
};
|
|
93
|
-
return
|
|
87
|
+
return _jsx(AsyncSearchableSelect, _objectSpread({
|
|
94
88
|
disabled: disabled || !available,
|
|
95
89
|
name: name,
|
|
96
90
|
error: error,
|
package/GooglePlaces.d.ts
CHANGED
|
@@ -42,7 +42,7 @@ export interface IGooglePlacesAPIProviderProps {
|
|
|
42
42
|
language?: string;
|
|
43
43
|
libraries?: string;
|
|
44
44
|
}
|
|
45
|
-
export declare const GooglePlacesAPIProvider: ({ children, apiKey, language, libraries, }: IGooglePlacesAPIProviderProps) => JSX.Element;
|
|
45
|
+
export declare const GooglePlacesAPIProvider: ({ children, apiKey, language, libraries, }: IGooglePlacesAPIProviderProps) => React.JSX.Element;
|
|
46
46
|
export declare const useGooglePlacesAPI: () => {
|
|
47
47
|
available: boolean;
|
|
48
48
|
};
|
package/GooglePlaces.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
2
2
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
3
|
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
4
|
-
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++)
|
|
5
|
-
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0)
|
|
4
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
5
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
6
6
|
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
7
7
|
/// <reference types="@types/googlemaps" />
|
|
8
8
|
import React, { createContext, useState, useContext, useRef, useEffect } from 'react';
|
|
9
9
|
import { useScript } from '@dfds-ui/hooks';
|
|
10
|
-
import { jsx as
|
|
10
|
+
import { jsx as _jsx } from "@emotion/react/jsx-runtime";
|
|
11
11
|
export var GooglePlacesAPIContext = /*#__PURE__*/createContext({
|
|
12
12
|
available: false
|
|
13
13
|
});
|
|
14
14
|
export var GooglePlacesAPIProvider = function GooglePlacesAPIProvider(_ref) {
|
|
15
|
-
var _window
|
|
15
|
+
var _window;
|
|
16
16
|
var children = _ref.children,
|
|
17
17
|
apiKey = _ref.apiKey,
|
|
18
18
|
language = _ref.language,
|
|
@@ -22,7 +22,7 @@ export var GooglePlacesAPIProvider = function GooglePlacesAPIProvider(_ref) {
|
|
|
22
22
|
var hasWindow = typeof window !== 'undefined';
|
|
23
23
|
|
|
24
24
|
// We want to prevent the google maps api to be loaded more than once
|
|
25
|
-
var isGoogleMapsDefined = hasWindow && Boolean((_window = window) === null || _window === void 0
|
|
25
|
+
var isGoogleMapsDefined = hasWindow && Boolean((_window = window) === null || _window === void 0 || (_window = _window.google) === null || _window === void 0 ? void 0 : _window.maps);
|
|
26
26
|
var languageParam = language ? "&language=".concat(language) : '';
|
|
27
27
|
// NOTE: Google Maps API requires a callback when ran asynchronously. See https://developers.google.com/maps/documentation/javascript/url-params#required_parameters
|
|
28
28
|
// Dummy callback to satisfy Google Maps API.
|
|
@@ -47,11 +47,12 @@ export var GooglePlacesAPIProvider = function GooglePlacesAPIProvider(_ref) {
|
|
|
47
47
|
throw new Error('Google Places API script failed to load');
|
|
48
48
|
}
|
|
49
49
|
}, [loaded, error]);
|
|
50
|
-
return
|
|
50
|
+
return _jsx(GooglePlacesAPIContext.Provider, {
|
|
51
51
|
value: {
|
|
52
52
|
available: available
|
|
53
|
-
}
|
|
54
|
-
|
|
53
|
+
},
|
|
54
|
+
children: children
|
|
55
|
+
});
|
|
55
56
|
};
|
|
56
57
|
export var useGooglePlacesAPI = function useGooglePlacesAPI() {
|
|
57
58
|
var context = useContext(GooglePlacesAPIContext);
|
|
@@ -93,8 +94,7 @@ export var useAddressPredictions = function useAddressPredictions(input, _ref2)
|
|
|
93
94
|
country: components.countries
|
|
94
95
|
}
|
|
95
96
|
}, function (predictions) {
|
|
96
|
-
|
|
97
|
-
predictions = (_predictions = predictions) !== null && _predictions !== void 0 ? _predictions : [];
|
|
97
|
+
predictions = predictions !== null && predictions !== void 0 ? predictions : [];
|
|
98
98
|
setPredictions(predictions);
|
|
99
99
|
resolve(predictions);
|
|
100
100
|
});
|
|
@@ -104,7 +104,7 @@ export var useAddressPredictions = function useAddressPredictions(input, _ref2)
|
|
|
104
104
|
if (input !== '') {
|
|
105
105
|
void getPlacePredictions(input);
|
|
106
106
|
}
|
|
107
|
-
// eslint-disable-next-line react
|
|
107
|
+
// eslint-disable-next-line @eslint-react/exhaustive-deps
|
|
108
108
|
}, [input]);
|
|
109
109
|
return {
|
|
110
110
|
available: available,
|
package/cjs/AddressSelect.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { ILocation, IPrediction } from './GooglePlaces';
|
|
3
|
-
export
|
|
3
|
+
export type AddressSelectProps = {
|
|
4
4
|
components?: any;
|
|
5
5
|
name: string;
|
|
6
6
|
disabled?: boolean;
|
|
@@ -25,5 +25,5 @@ export declare type AddressSelectProps = {
|
|
|
25
25
|
*/
|
|
26
26
|
className?: string;
|
|
27
27
|
};
|
|
28
|
-
declare const AddressSelect: ({ name, disabled, error, size, types, onFocus, onBlur, onChange, location, radius, countries, ...rest }: AddressSelectProps) => JSX.Element;
|
|
28
|
+
declare const AddressSelect: ({ name, disabled, error, size, types, onFocus, onBlur, onChange, location, radius, countries, ...rest }: AddressSelectProps) => React.JSX.Element;
|
|
29
29
|
export default AddressSelect;
|
package/cjs/AddressSelect.js
CHANGED
|
@@ -8,71 +8,51 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
8
8
|
var _reactComponents = require("@dfds-ui/react-components");
|
|
9
9
|
var _lodash = _interopRequireDefault(require("lodash.debounce"));
|
|
10
10
|
var _GooglePlaces = require("./GooglePlaces");
|
|
11
|
-
var
|
|
12
|
-
const _excluded = ["name", "disabled", "error", "size", "types", "onFocus", "onBlur", "onChange", "location", "radius", "countries"];
|
|
11
|
+
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
13
12
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
const
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}
|
|
52
|
-
}),
|
|
53
|
-
available = _useAddressPrediction.available,
|
|
54
|
-
getPlacePredictions = _useAddressPrediction.getPlacePredictions;
|
|
55
|
-
const loadOptions = /*#__PURE__*/function () {
|
|
56
|
-
var _ref2 = _asyncToGenerator(function* (input, callback) {
|
|
57
|
-
const placePredictions = yield getPlacePredictions(input);
|
|
58
|
-
setPredictions(placePredictions);
|
|
59
|
-
const options = placePredictions.map(prediction => ({
|
|
60
|
-
value: prediction.description,
|
|
61
|
-
label: prediction.description,
|
|
62
|
-
prediction
|
|
63
|
-
}));
|
|
64
|
-
callback(options);
|
|
65
|
-
});
|
|
66
|
-
return function loadOptions(_x, _x2) {
|
|
67
|
-
return _ref2.apply(this, arguments);
|
|
68
|
-
};
|
|
69
|
-
}();
|
|
13
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
14
|
+
const AddressSelect = ({
|
|
15
|
+
name,
|
|
16
|
+
disabled,
|
|
17
|
+
error,
|
|
18
|
+
size = 'medium',
|
|
19
|
+
types,
|
|
20
|
+
onFocus,
|
|
21
|
+
onBlur,
|
|
22
|
+
onChange,
|
|
23
|
+
location,
|
|
24
|
+
radius,
|
|
25
|
+
countries = [],
|
|
26
|
+
...rest
|
|
27
|
+
}) => {
|
|
28
|
+
const [predictions, setPredictions] = (0, _react.useState)([]);
|
|
29
|
+
const {
|
|
30
|
+
available,
|
|
31
|
+
getPlacePredictions
|
|
32
|
+
} = (0, _GooglePlaces.useAddressPredictions)('', {
|
|
33
|
+
types,
|
|
34
|
+
location,
|
|
35
|
+
radius,
|
|
36
|
+
components: {
|
|
37
|
+
countries
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
const loadOptions = async (input, callback) => {
|
|
41
|
+
const placePredictions = await getPlacePredictions(input);
|
|
42
|
+
setPredictions(placePredictions);
|
|
43
|
+
const options = placePredictions.map(prediction => ({
|
|
44
|
+
value: prediction.description,
|
|
45
|
+
label: prediction.description,
|
|
46
|
+
prediction
|
|
47
|
+
}));
|
|
48
|
+
callback(options);
|
|
49
|
+
};
|
|
70
50
|
const handleChange = value => {
|
|
71
51
|
if (onChange) {
|
|
72
52
|
onChange(value, predictions);
|
|
73
53
|
}
|
|
74
54
|
};
|
|
75
|
-
return (0,
|
|
55
|
+
return (0, _jsxRuntime.jsx)(_reactComponents.AsyncSearchableSelect, {
|
|
76
56
|
disabled: disabled || !available,
|
|
77
57
|
name: name,
|
|
78
58
|
error: error,
|
|
@@ -80,8 +60,8 @@ const AddressSelect = _ref => {
|
|
|
80
60
|
onChange: handleChange,
|
|
81
61
|
loadOptions: (0, _lodash.default)(loadOptions, 500),
|
|
82
62
|
onFocus: onFocus,
|
|
83
|
-
onBlur: onBlur
|
|
84
|
-
|
|
63
|
+
onBlur: onBlur,
|
|
64
|
+
...rest
|
|
65
|
+
});
|
|
85
66
|
};
|
|
86
|
-
var _default = AddressSelect;
|
|
87
|
-
exports.default = _default;
|
|
67
|
+
var _default = exports.default = AddressSelect;
|
package/cjs/GooglePlaces.d.ts
CHANGED
|
@@ -42,7 +42,7 @@ export interface IGooglePlacesAPIProviderProps {
|
|
|
42
42
|
language?: string;
|
|
43
43
|
libraries?: string;
|
|
44
44
|
}
|
|
45
|
-
export declare const GooglePlacesAPIProvider: ({ children, apiKey, language, libraries, }: IGooglePlacesAPIProviderProps) => JSX.Element;
|
|
45
|
+
export declare const GooglePlacesAPIProvider: ({ children, apiKey, language, libraries, }: IGooglePlacesAPIProviderProps) => React.JSX.Element;
|
|
46
46
|
export declare const useGooglePlacesAPI: () => {
|
|
47
47
|
available: boolean;
|
|
48
48
|
};
|
package/cjs/GooglePlaces.js
CHANGED
|
@@ -6,30 +6,24 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.useGooglePlacesAPI = exports.useAddressPredictions = exports.GooglePlacesAPIProvider = exports.GooglePlacesAPIContext = void 0;
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _hooks = require("@dfds-ui/hooks");
|
|
9
|
-
var
|
|
10
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
15
|
-
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
16
|
-
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } /// <reference types="@types/googlemaps" />
|
|
17
|
-
const GooglePlacesAPIContext = /*#__PURE__*/(0, _react.createContext)({
|
|
9
|
+
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
10
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
11
|
+
/// <reference types="@types/googlemaps" />
|
|
12
|
+
|
|
13
|
+
const GooglePlacesAPIContext = exports.GooglePlacesAPIContext = /*#__PURE__*/(0, _react.createContext)({
|
|
18
14
|
available: false
|
|
19
15
|
});
|
|
20
|
-
exports.GooglePlacesAPIContext = GooglePlacesAPIContext;
|
|
21
16
|
const GooglePlacesAPIProvider = ({
|
|
22
17
|
children,
|
|
23
18
|
apiKey,
|
|
24
19
|
language,
|
|
25
20
|
libraries = 'places'
|
|
26
21
|
}) => {
|
|
27
|
-
var _window, _window$google;
|
|
28
22
|
// On SSR window does not exist.
|
|
29
23
|
const hasWindow = typeof window !== 'undefined';
|
|
30
24
|
|
|
31
25
|
// We want to prevent the google maps api to be loaded more than once
|
|
32
|
-
const isGoogleMapsDefined = hasWindow && Boolean(
|
|
26
|
+
const isGoogleMapsDefined = hasWindow && Boolean(window?.google?.maps);
|
|
33
27
|
const languageParam = language ? `&language=${language}` : '';
|
|
34
28
|
// NOTE: Google Maps API requires a callback when ran asynchronously. See https://developers.google.com/maps/documentation/javascript/url-params#required_parameters
|
|
35
29
|
// Dummy callback to satisfy Google Maps API.
|
|
@@ -40,25 +34,20 @@ const GooglePlacesAPIProvider = ({
|
|
|
40
34
|
if (hasWindow) window.dummyCallback = dummyCallback;
|
|
41
35
|
const callback = hasWindow ? `&callback=dummyCallback` : '';
|
|
42
36
|
const scriptUrl = `https://maps.googleapis.com/maps/api/js?key=${apiKey}&libraries=${libraries}${languageParam}${callback}`;
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
loaded = _useScript2[0],
|
|
46
|
-
error = _useScript2[1];
|
|
47
|
-
const _useState = (0, _react.useState)(false),
|
|
48
|
-
_useState2 = _slicedToArray(_useState, 2),
|
|
49
|
-
available = _useState2[0],
|
|
50
|
-
setAvailable = _useState2[1];
|
|
37
|
+
const [loaded, error] = (0, _hooks.useScript)(scriptUrl, isGoogleMapsDefined);
|
|
38
|
+
const [available, setAvailable] = (0, _react.useState)(false);
|
|
51
39
|
(0, _react.useEffect)(() => {
|
|
52
40
|
setAvailable(loaded && !error);
|
|
53
41
|
if (error) {
|
|
54
42
|
throw new Error('Google Places API script failed to load');
|
|
55
43
|
}
|
|
56
44
|
}, [loaded, error]);
|
|
57
|
-
return (0,
|
|
45
|
+
return (0, _jsxRuntime.jsx)(GooglePlacesAPIContext.Provider, {
|
|
58
46
|
value: {
|
|
59
47
|
available
|
|
60
|
-
}
|
|
61
|
-
|
|
48
|
+
},
|
|
49
|
+
children: children
|
|
50
|
+
});
|
|
62
51
|
};
|
|
63
52
|
exports.GooglePlacesAPIProvider = GooglePlacesAPIProvider;
|
|
64
53
|
const useGooglePlacesAPI = () => {
|
|
@@ -75,12 +64,10 @@ const useAddressPredictions = (input, {
|
|
|
75
64
|
radius,
|
|
76
65
|
components
|
|
77
66
|
}) => {
|
|
78
|
-
const
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
const _useGooglePlacesAPI = useGooglePlacesAPI(),
|
|
83
|
-
available = _useGooglePlacesAPI.available;
|
|
67
|
+
const [predictions, setPredictions] = (0, _react.useState)([]);
|
|
68
|
+
const {
|
|
69
|
+
available
|
|
70
|
+
} = useGooglePlacesAPI();
|
|
84
71
|
const autocomplete = (0, _react.useRef)();
|
|
85
72
|
if (!autocomplete.current && available && typeof window !== 'undefined') {
|
|
86
73
|
autocomplete.current = new google.maps.places.AutocompleteService();
|
|
@@ -99,8 +86,7 @@ const useAddressPredictions = (input, {
|
|
|
99
86
|
country: components.countries
|
|
100
87
|
}
|
|
101
88
|
}, predictions => {
|
|
102
|
-
|
|
103
|
-
predictions = (_predictions = predictions) !== null && _predictions !== void 0 ? _predictions : [];
|
|
89
|
+
predictions = predictions ?? [];
|
|
104
90
|
setPredictions(predictions);
|
|
105
91
|
resolve(predictions);
|
|
106
92
|
});
|
|
@@ -110,7 +96,7 @@ const useAddressPredictions = (input, {
|
|
|
110
96
|
if (input !== '') {
|
|
111
97
|
void getPlacePredictions(input);
|
|
112
98
|
}
|
|
113
|
-
// eslint-disable-next-line react
|
|
99
|
+
// eslint-disable-next-line @eslint-react/exhaustive-deps
|
|
114
100
|
}, [input]);
|
|
115
101
|
return {
|
|
116
102
|
available,
|
package/cjs/index.js
CHANGED
|
@@ -8,7 +8,7 @@ var _exportNames = {
|
|
|
8
8
|
};
|
|
9
9
|
Object.defineProperty(exports, "AddressSelect", {
|
|
10
10
|
enumerable: true,
|
|
11
|
-
get: function
|
|
11
|
+
get: function () {
|
|
12
12
|
return _AddressSelect.default;
|
|
13
13
|
}
|
|
14
14
|
});
|
|
@@ -19,7 +19,7 @@ Object.keys(_GooglePlaces).forEach(function (key) {
|
|
|
19
19
|
if (key in exports && exports[key] === _GooglePlaces[key]) return;
|
|
20
20
|
Object.defineProperty(exports, key, {
|
|
21
21
|
enumerable: true,
|
|
22
|
-
get: function
|
|
22
|
+
get: function () {
|
|
23
23
|
return _GooglePlaces[key];
|
|
24
24
|
}
|
|
25
25
|
});
|
|
@@ -31,9 +31,9 @@ Object.keys(_AddressSelect).forEach(function (key) {
|
|
|
31
31
|
if (key in exports && exports[key] === _AddressSelect[key]) return;
|
|
32
32
|
Object.defineProperty(exports, key, {
|
|
33
33
|
enumerable: true,
|
|
34
|
-
get: function
|
|
34
|
+
get: function () {
|
|
35
35
|
return _AddressSelect[key];
|
|
36
36
|
}
|
|
37
37
|
});
|
|
38
38
|
});
|
|
39
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function
|
|
39
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
package/package.json
CHANGED
|
@@ -3,26 +3,26 @@
|
|
|
3
3
|
"description": "Components using Google places",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"private": false,
|
|
6
|
-
"version": "2.2.0-alpha.
|
|
6
|
+
"version": "2.2.0-alpha.e82e41de",
|
|
7
7
|
"sideEffects": false,
|
|
8
8
|
"main": "./cjs/index.js",
|
|
9
9
|
"module": "./index.js",
|
|
10
10
|
"esnext": "./index.js",
|
|
11
11
|
"typings": "./index.d.ts",
|
|
12
12
|
"peerDependencies": {
|
|
13
|
-
"react": ">=
|
|
14
|
-
"react-dom": ">=
|
|
13
|
+
"react": ">= 18.3.1",
|
|
14
|
+
"react-dom": ">= 18.3.1"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@dfds-ui/colors": "2.2.0-alpha.
|
|
18
|
-
"@dfds-ui/hooks": "2.2.0-alpha.
|
|
19
|
-
"@dfds-ui/icons": "2.2.0-alpha.
|
|
20
|
-
"@dfds-ui/react-components": "2.2.0-alpha.
|
|
17
|
+
"@dfds-ui/colors": "2.2.0-alpha.e82e41de",
|
|
18
|
+
"@dfds-ui/hooks": "2.2.0-alpha.e82e41de",
|
|
19
|
+
"@dfds-ui/icons": "2.2.0-alpha.e82e41de",
|
|
20
|
+
"@dfds-ui/react-components": "2.2.0-alpha.e82e41de",
|
|
21
21
|
"@types/googlemaps": "3.43.3",
|
|
22
|
-
"@types/lodash.debounce": "^4.0.
|
|
22
|
+
"@types/lodash.debounce": "^4.0.9",
|
|
23
23
|
"lodash.debounce": "^4.0.8"
|
|
24
24
|
},
|
|
25
|
-
"gitHead": "
|
|
25
|
+
"gitHead": "e82e41ded28189f4f8e3a7714040b5bcff63deb9",
|
|
26
26
|
"publishConfig": {
|
|
27
27
|
"access": "public"
|
|
28
28
|
}
|