@sanity/google-maps-input 0.147.10-next.23 → 1.0.0-v2-studio.1

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.
Files changed (89) hide show
  1. package/LICENSE +1 -1
  2. package/config.dist.json +1 -0
  3. package/dts/diff/GeopointArrayDiff.d.ts +4 -0
  4. package/dts/diff/GeopointFieldDiff.d.ts +4 -0
  5. package/dts/diff/GeopointFieldDiff.styles.d.ts +1 -0
  6. package/dts/diff/GeopointMove.d.ts +12 -0
  7. package/dts/diff/resolver.d.ts +3 -0
  8. package/dts/input/GeopointInput.d.ts +64 -0
  9. package/dts/input/GeopointInput.styles.d.ts +2 -0
  10. package/dts/input/GeopointSelect.d.ts +52 -0
  11. package/dts/loader/GoogleMapsLoadProxy.d.ts +13 -0
  12. package/dts/loader/LoadError.d.ts +9 -0
  13. package/dts/loader/loadGoogleMapsApi.d.ts +17 -0
  14. package/dts/map/Arrow.d.ts +30 -0
  15. package/dts/map/Map.d.ts +38 -0
  16. package/dts/map/Map.styles.d.ts +1 -0
  17. package/dts/map/Marker.d.ts +38 -0
  18. package/dts/map/SearchInput.d.ts +17 -0
  19. package/dts/map/SearchInput.styles.d.ts +1 -0
  20. package/dts/map/util.d.ts +3 -0
  21. package/dts/types.d.ts +13 -0
  22. package/lib/@types/css.d.js +2 -0
  23. package/lib/@types/css.d.js.map +1 -0
  24. package/lib/diff/GeopointArrayDiff.js +66 -0
  25. package/lib/diff/GeopointArrayDiff.js.map +1 -0
  26. package/lib/diff/GeopointFieldDiff.js +78 -0
  27. package/lib/diff/GeopointFieldDiff.js.map +1 -0
  28. package/lib/diff/GeopointFieldDiff.styles.js +13 -0
  29. package/lib/diff/GeopointFieldDiff.styles.js.map +1 -0
  30. package/lib/diff/GeopointMove.js +49 -0
  31. package/lib/diff/GeopointMove.js.map +1 -0
  32. package/lib/diff/resolver.js +21 -0
  33. package/lib/diff/resolver.js.map +1 -0
  34. package/lib/input/GeopointInput.js +163 -0
  35. package/lib/input/GeopointInput.js.map +1 -0
  36. package/lib/input/GeopointInput.styles.js +15 -0
  37. package/lib/input/GeopointInput.styles.js.map +1 -0
  38. package/lib/input/GeopointSelect.js +81 -0
  39. package/lib/input/GeopointSelect.js.map +1 -0
  40. package/lib/loader/GoogleMapsLoadProxy.js +55 -0
  41. package/lib/loader/GoogleMapsLoadProxy.js.map +1 -0
  42. package/lib/loader/LoadError.js +37 -0
  43. package/lib/loader/LoadError.js.map +1 -0
  44. package/lib/loader/loadGoogleMapsApi.js +65 -0
  45. package/lib/loader/loadGoogleMapsApi.js.map +1 -0
  46. package/lib/map/Arrow.js +79 -0
  47. package/lib/map/Arrow.js.map +1 -0
  48. package/lib/map/Map.js +114 -0
  49. package/lib/map/Map.js.map +1 -0
  50. package/lib/map/Map.styles.js +13 -0
  51. package/lib/map/Map.styles.js.map +1 -0
  52. package/lib/map/Marker.js +125 -0
  53. package/lib/map/Marker.js.map +1 -0
  54. package/lib/map/SearchInput.js +60 -0
  55. package/lib/map/SearchInput.js.map +1 -0
  56. package/lib/map/SearchInput.styles.js +13 -0
  57. package/lib/map/SearchInput.styles.js.map +1 -0
  58. package/lib/map/util.js +14 -0
  59. package/lib/map/util.js.map +1 -0
  60. package/lib/types.js +2 -0
  61. package/lib/types.js.map +1 -0
  62. package/package.json +63 -22
  63. package/sanity.json +5 -1
  64. package/src/@types/css.d.ts +4 -0
  65. package/src/diff/GeopointArrayDiff.tsx +83 -0
  66. package/src/diff/GeopointFieldDiff.styles.tsx +20 -0
  67. package/src/diff/GeopointFieldDiff.tsx +94 -0
  68. package/src/diff/GeopointMove.tsx +49 -0
  69. package/src/diff/resolver.ts +21 -0
  70. package/src/input/GeopointInput.styles.tsx +12 -0
  71. package/src/input/GeopointInput.tsx +231 -0
  72. package/src/input/GeopointSelect.tsx +78 -0
  73. package/src/loader/GoogleMapsLoadProxy.tsx +49 -0
  74. package/src/loader/LoadError.tsx +44 -0
  75. package/src/loader/loadGoogleMapsApi.ts +93 -0
  76. package/src/map/Arrow.tsx +76 -0
  77. package/src/map/Map.styles.tsx +10 -0
  78. package/src/map/Map.tsx +125 -0
  79. package/src/map/Marker.tsx +132 -0
  80. package/src/map/SearchInput.styles.tsx +8 -0
  81. package/src/map/SearchInput.tsx +55 -0
  82. package/src/map/util.ts +14 -0
  83. package/src/types.ts +16 -0
  84. package/lib/GeopointInput.js +0 -170
  85. package/lib/GeopointSelect.js +0 -174
  86. package/lib/GoogleMapsLoadProxy.js +0 -65
  87. package/lib/loadGoogleMapsApi.js +0 -36
  88. package/styles/GeopointInput.css +0 -28
  89. package/styles/GeopointSelect.css +0 -27
@@ -1,174 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
9
-
10
- var _react = _interopRequireDefault(require("react"));
11
-
12
- var _GeopointSelect = _interopRequireDefault(require("../styles/GeopointSelect.css"));
13
-
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
17
-
18
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
19
-
20
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
-
22
- var fallbackLatLng = {
23
- lat: 40.7058254,
24
- lng: -74.1180863
25
- };
26
-
27
- class GeopointSelect extends _react.default.Component {
28
- constructor(props) {
29
- super(props);
30
- this.elementRefs = {};
31
- }
32
-
33
- componentDidMount() {
34
- var _this$props$api = this.props.api,
35
- Circle = _this$props$api.Circle,
36
- places = _this$props$api.places,
37
- event = _this$props$api.event;
38
- var GMap = this.props.api.Map;
39
- var geoPoint = this.getValueLatLng();
40
- var options = {
41
- zoom: this.props.defaultZoom,
42
- center: geoPoint
43
- };
44
- this.mapInstance = new GMap(this.elementRefs.map, options);
45
- this.declareMarker();
46
- var searchBounds = new Circle({
47
- center: geoPoint,
48
- radius: 100
49
- }).getBounds();
50
- var input = this.elementRefs.searchInput;
51
- this.autoComplete = new places.Autocomplete(input, {
52
- bounds: searchBounds,
53
- types: [] // return all kinds of places
54
-
55
- });
56
- event.addListener(this.autoComplete, 'place_changed', this.handlePlaceChanged.bind(this));
57
- event.addListener(this.mapInstance, 'click', clickEvent => {
58
- this.setValue(clickEvent.latLng);
59
- });
60
- }
61
-
62
- getValueLatLng() {
63
- var _this$props = this.props,
64
- api = _this$props.api,
65
- _this$props$value = _this$props.value,
66
- value = _this$props$value === void 0 ? {} : _this$props$value,
67
- _this$props$defaultLo = _this$props.defaultLocation,
68
- defaultLocation = _this$props$defaultLo === void 0 ? {} : _this$props$defaultLo;
69
-
70
- var point = _objectSpread({}, fallbackLatLng, {}, defaultLocation, {}, value);
71
-
72
- return new api.LatLng(point.lat, point.lng);
73
- }
74
-
75
- declareMarker() {
76
- if (this.marker) {
77
- return this.marker;
78
- }
79
-
80
- var _this$props$api2 = this.props.api,
81
- Marker = _this$props$api2.Marker,
82
- event = _this$props$api2.event;
83
- this.marker = new Marker({
84
- position: this.getValueLatLng(),
85
- map: this.mapInstance,
86
- draggable: true
87
- });
88
- event.addListener(this.marker, 'dragend', this.handleMarkerDragEnd.bind(this));
89
- return this.marker;
90
- }
91
-
92
- handlePlaceChanged() {
93
- var place = this.autoComplete.getPlace();
94
-
95
- if (!place.geometry) {
96
- return;
97
- }
98
-
99
- this.setValue(place.geometry.location);
100
- }
101
-
102
- handleMarkerDragEnd(event) {
103
- this.setValue(event.latLng);
104
- }
105
-
106
- setValue(geoPoint) {
107
- this.props.onChange(geoPoint);
108
- }
109
-
110
- componentDidUpdate() {
111
- this.mapInstance.panTo(this.getValueLatLng());
112
- this.marker.setPosition(this.getValueLatLng());
113
- this.elementRefs.searchInput.value = '';
114
- }
115
-
116
- assignReference(type) {
117
- return el => {
118
- this.elementRefs[type] = el;
119
- };
120
- }
121
-
122
- render() {
123
- return _react.default.createElement("div", {
124
- className: _GeopointSelect.default.wrapper
125
- }, _react.default.createElement("div", {
126
- ref: this.assignReference('map'),
127
- className: _GeopointSelect.default.map
128
- }), _react.default.createElement("div", {
129
- className: _GeopointSelect.default.searchInput
130
- }, _react.default.createElement("input", {
131
- name: "place",
132
- ref: this.assignReference('searchInput'),
133
- placeholder: "Search for place or address",
134
- className: _GeopointSelect.default.input
135
- })));
136
- }
137
-
138
- }
139
-
140
- _defineProperty(GeopointSelect, "propTypes", {
141
- onChange: _propTypes.default.func.isRequired,
142
- value: _propTypes.default.shape({
143
- lat: _propTypes.default.number,
144
- lng: _propTypes.default.number
145
- }),
146
- api: _propTypes.default.shape({
147
- Map: _propTypes.default.func.isRequired,
148
- Circle: _propTypes.default.func.isRequired,
149
- Marker: _propTypes.default.func.isRequired,
150
- LatLng: _propTypes.default.func.isRequired,
151
- places: _propTypes.default.shape({
152
- Autocomplete: _propTypes.default.func.isRequired
153
- }),
154
- event: _propTypes.default.shape({
155
- addListener: _propTypes.default.func.isRequired
156
- })
157
- }).isRequired,
158
- defaultLocation: _propTypes.default.shape({
159
- lat: _propTypes.default.number,
160
- lng: _propTypes.default.number
161
- }),
162
- defaultZoom: _propTypes.default.number
163
- });
164
-
165
- _defineProperty(GeopointSelect, "defaultProps", {
166
- defaultZoom: 8,
167
- defaultLocation: {
168
- lng: 10.74609,
169
- lat: 59.91273
170
- }
171
- });
172
-
173
- var _default = GeopointSelect;
174
- exports.default = _default;
@@ -1,65 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
9
-
10
- var _react = _interopRequireDefault(require("react"));
11
-
12
- var _loadGoogleMapsApi = _interopRequireDefault(require("./loadGoogleMapsApi"));
13
-
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
17
-
18
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
19
-
20
- class GoogleMapsLoadProxy extends _react.default.Component {
21
- constructor(props) {
22
- super(props);
23
- this.state = {
24
- loading: true,
25
- error: null
26
- };
27
- }
28
-
29
- componentDidMount() {
30
- (0, _loadGoogleMapsApi.default)(this.props).then(api => this.setState({
31
- loading: false,
32
- api
33
- })).catch(err => this.setState({
34
- error: err
35
- }));
36
- }
37
-
38
- render() {
39
- var _this$state = this.state,
40
- error = _this$state.error,
41
- loading = _this$state.loading,
42
- api = _this$state.api;
43
-
44
- if (error) {
45
- return _react.default.createElement("div", null, "Load error: ", error.stack);
46
- }
47
-
48
- if (loading) {
49
- return _react.default.createElement("div", null, "Loading Google Maps API");
50
- }
51
-
52
- var GeopointSelect = this.props.component;
53
- return _react.default.createElement(GeopointSelect, _extends({}, this.props, {
54
- api: api
55
- }));
56
- }
57
-
58
- }
59
-
60
- _defineProperty(GoogleMapsLoadProxy, "propTypes", {
61
- component: _propTypes.default.func.isRequired
62
- });
63
-
64
- var _default = GoogleMapsLoadProxy;
65
- exports.default = _default;
@@ -1,36 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var loadingPromise = null;
8
-
9
- function loadGoogleMapsApi(props) {
10
- var callbackName = '___sanity_googleMapsApiCallback';
11
- var selectedLocale = props.locale || 'en-US';
12
- var apiKey = props.apiKey;
13
-
14
- if (window.google && window.google.maps) {
15
- return Promise.resolve(window.google.maps);
16
- }
17
-
18
- if (window[callbackName]) {
19
- return loadingPromise;
20
- }
21
-
22
- loadingPromise = new Promise((resolve, reject) => {
23
- window[callbackName] = () => {
24
- delete window[callbackName];
25
- resolve(window.google.maps);
26
- };
27
-
28
- var script = document.createElement('script');
29
- script.src = "https://maps.googleapis.com/maps/api/js?key=".concat(apiKey, "&libraries=places&callback=").concat(callbackName, "&language=").concat(selectedLocale);
30
- document.getElementsByTagName('head')[0].appendChild(script);
31
- });
32
- return loadingPromise;
33
- }
34
-
35
- var _default = loadGoogleMapsApi;
36
- exports.default = _default;
@@ -1,28 +0,0 @@
1
- @import "part:@sanity/base/theme/variables-style";
2
-
3
- .previewImage {
4
- width: 100%;
5
- height: auto;
6
- vertical-align: top;
7
- }
8
-
9
- .dialogInner {
10
- max-width: 100%;
11
- max-height: 100%;
12
- height: 40rem;
13
- width: 50rem;
14
- z-index: 0;
15
- position: relative;
16
- box-sizing: border-box;
17
- border-radius: var(--border-radius-large);
18
- overflow: hidden;
19
- }
20
-
21
- .functions {
22
- composes: functions from 'part:@sanity/components/fieldsets/default-style';
23
- padding-top: var(--small-padding);
24
-
25
- @media (--screen-medium) {
26
- padding-top: var(--medium-padding);
27
- }
28
- }
@@ -1,27 +0,0 @@
1
- @import "part:@sanity/base/theme/variables-style";
2
-
3
- .wrapper {
4
- height: 100%;
5
- width: 100%;
6
- }
7
-
8
- .map {
9
- height: 100%;
10
- width: 100%;
11
- box-sizing: border-box;
12
- }
13
-
14
- .searchInput {
15
- position: absolute;
16
- right: 10px;
17
- top: 10px;
18
- width: 220px;
19
- }
20
-
21
- .input {
22
- composes: textInput from "part:@sanity/base/theme/forms/text-input-style";
23
- }
24
-
25
- :global(.pac-container) {
26
- z-index: calc(var(--zindex-modal) + 1);
27
- }