hart-estate-widget 0.0.62 → 0.0.65

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 (33) hide show
  1. package/README.md +33 -23
  2. package/build/assets/css/app.css +1 -1
  3. package/build/assets/css/app.css.map +1 -1
  4. package/build/assets/icons/arrow-left.svg +4 -0
  5. package/build/assets/icons/arrow-right.svg +4 -0
  6. package/build/assets/icons/plan.svg +5 -0
  7. package/build/assets/icons/render.svg +7 -0
  8. package/build/assets/icons/surface.svg +5 -0
  9. package/build/assets/sass/components/instructions.sass +10 -10
  10. package/build/assets/sass/components/loader.sass +33 -32
  11. package/build/assets/sass/components/model.sass +1 -1
  12. package/build/assets/sass/components/panorama.sass +14 -16
  13. package/build/assets/sass/components/rotation.sass +202 -0
  14. package/build/assets/sass/components/tabs.sass +6 -112
  15. package/build/assets/sass/index.sass +13 -40
  16. package/build/assets/sass/mixin.sass +37 -1
  17. package/build/assets/sass/vars.sass +4 -5
  18. package/build/components/Application.js +22 -20
  19. package/build/components/PanoramaTab.js +34 -60
  20. package/build/components/RotationTab/DefaultView.js +124 -0
  21. package/build/components/RotationTab/ThreesixtyView.js +45 -0
  22. package/build/components/{RotationTab.js → RotationTab/index.js} +90 -55
  23. package/build/components/Widget.js +38 -22
  24. package/build/config/defaultConfig.js +8 -4
  25. package/build/enums/deviceWidth.js +12 -3
  26. package/build/enums/rotationModes.js +11 -0
  27. package/build/index.js +8 -8
  28. package/build/store/apiStore.js +51 -19
  29. package/build/store/fullScreenStore.js +36 -1
  30. package/build/store/index.js +13 -1
  31. package/build/store/modelStore.js +10 -5
  32. package/package.json +1 -1
  33. package/build/components/ImageTab.js +0 -23
@@ -3,10 +3,19 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.deviceWidth = void 0;
6
+ exports.getDevicesByWidth = exports.deviceWidth = void 0;
7
7
  var deviceWidth = {
8
+ smallMobile: 374,
8
9
  mobile: 545,
9
- tablet: 900,
10
+ tablet: 1100,
10
11
  laptop: 1440
11
12
  };
12
- exports.deviceWidth = deviceWidth;
13
+ exports.deviceWidth = deviceWidth;
14
+
15
+ var getDevicesByWidth = function getDevicesByWidth(width) {
16
+ return Object.keys(deviceWidth).filter(function (key) {
17
+ return width <= deviceWidth[key];
18
+ });
19
+ };
20
+
21
+ exports.getDevicesByWidth = getDevicesByWidth;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.rotationModes = void 0;
7
+ var rotationModes = {
8
+ DEFAULT: 0,
9
+ THREESIXTY: 1
10
+ };
11
+ exports.rotationModes = rotationModes;
package/build/index.js CHANGED
@@ -9,12 +9,6 @@ Object.defineProperty(exports, "ApiStore", {
9
9
  return _apiStore.default;
10
10
  }
11
11
  });
12
- Object.defineProperty(exports, "ImageTab", {
13
- enumerable: true,
14
- get: function get() {
15
- return _ImageTab.default;
16
- }
17
- });
18
12
  Object.defineProperty(exports, "Instructions", {
19
13
  enumerable: true,
20
14
  get: function get() {
@@ -51,6 +45,12 @@ Object.defineProperty(exports, "Widget", {
51
45
  return _Widget.default;
52
46
  }
53
47
  });
48
+ Object.defineProperty(exports, "rotationModes", {
49
+ enumerable: true,
50
+ get: function get() {
51
+ return _rotationModes.rotationModes;
52
+ }
53
+ });
54
54
 
55
55
  var _react = _interopRequireDefault(require("react"));
56
56
 
@@ -58,8 +58,6 @@ require("./index.css");
58
58
 
59
59
  var _apiStore = _interopRequireDefault(require("./store/apiStore"));
60
60
 
61
- var _ImageTab = _interopRequireDefault(require("./components/ImageTab"));
62
-
63
61
  var _Instructions = _interopRequireDefault(require("./components/Instructions"));
64
62
 
65
63
  var _Loader = _interopRequireDefault(require("./components/Loader"));
@@ -72,4 +70,6 @@ var _RotationTab = _interopRequireDefault(require("./components/RotationTab"));
72
70
 
73
71
  var _Widget = _interopRequireDefault(require("./components/Widget"));
74
72
 
73
+ var _rotationModes = require("./enums/rotationModes");
74
+
75
75
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -64,14 +64,14 @@ var ApiStore = /*#__PURE__*/_createClass(function ApiStore(API_URL) {
64
64
  }, _callee);
65
65
  })));
66
66
 
67
- _defineProperty(this, "loadWidgetData", /*#__PURE__*/function () {
68
- var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(planId) {
67
+ _defineProperty(this, "loadCrmWidgetData", /*#__PURE__*/function () {
68
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(crmPlanId) {
69
69
  var path, response;
70
70
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
71
71
  while (1) {
72
72
  switch (_context2.prev = _context2.next) {
73
73
  case 0:
74
- path = "".concat(_this.API_URL, "/api/plans/").concat(planId, "/widget");
74
+ path = "".concat(_this.API_URL, "/api/crm/plans/").concat(crmPlanId, "/widget");
75
75
  _context2.next = 3;
76
76
  return fetch(path);
77
77
 
@@ -96,14 +96,14 @@ var ApiStore = /*#__PURE__*/_createClass(function ApiStore(API_URL) {
96
96
  };
97
97
  }());
98
98
 
99
- _defineProperty(this, "loadEditorData", /*#__PURE__*/function () {
100
- var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(planId, token) {
99
+ _defineProperty(this, "loadWidgetData", /*#__PURE__*/function () {
100
+ var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(planId) {
101
101
  var path, response;
102
102
  return _regeneratorRuntime().wrap(function _callee3$(_context3) {
103
103
  while (1) {
104
104
  switch (_context3.prev = _context3.next) {
105
105
  case 0:
106
- path = "".concat(_this.API_URL, "/api/plans/").concat(planId, "/editor?token=").concat(token);
106
+ path = "".concat(_this.API_URL, "/api/plans/").concat(planId, "/widget");
107
107
  _context3.next = 3;
108
108
  return fetch(path);
109
109
 
@@ -123,19 +123,19 @@ var ApiStore = /*#__PURE__*/_createClass(function ApiStore(API_URL) {
123
123
  }, _callee3);
124
124
  }));
125
125
 
126
- return function (_x2, _x3) {
126
+ return function (_x2) {
127
127
  return _ref3.apply(this, arguments);
128
128
  };
129
129
  }());
130
130
 
131
- _defineProperty(this, "loadPanoramaData", /*#__PURE__*/function () {
132
- var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(planId) {
131
+ _defineProperty(this, "loadEditorData", /*#__PURE__*/function () {
132
+ var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(planId, token) {
133
133
  var path, response;
134
134
  return _regeneratorRuntime().wrap(function _callee4$(_context4) {
135
135
  while (1) {
136
136
  switch (_context4.prev = _context4.next) {
137
137
  case 0:
138
- path = "".concat(_this.API_URL, "/api/plans/").concat(planId, "/panorama");
138
+ path = "".concat(_this.API_URL, "/api/plans/").concat(planId, "/editor?token=").concat(token);
139
139
  _context4.next = 3;
140
140
  return fetch(path);
141
141
 
@@ -155,30 +155,31 @@ var ApiStore = /*#__PURE__*/_createClass(function ApiStore(API_URL) {
155
155
  }, _callee4);
156
156
  }));
157
157
 
158
- return function (_x4) {
158
+ return function (_x3, _x4) {
159
159
  return _ref4.apply(this, arguments);
160
160
  };
161
161
  }());
162
162
 
163
- _defineProperty(this, "loadJson", /*#__PURE__*/function () {
164
- var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(path) {
165
- var response;
163
+ _defineProperty(this, "loadPanoramaData", /*#__PURE__*/function () {
164
+ var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(planId) {
165
+ var path, response;
166
166
  return _regeneratorRuntime().wrap(function _callee5$(_context5) {
167
167
  while (1) {
168
168
  switch (_context5.prev = _context5.next) {
169
169
  case 0:
170
- _context5.next = 2;
170
+ path = "".concat(_this.API_URL, "/api/plans/").concat(planId, "/panorama");
171
+ _context5.next = 3;
171
172
  return fetch(path);
172
173
 
173
- case 2:
174
+ case 3:
174
175
  response = _context5.sent;
175
- _context5.next = 5;
176
+ _context5.next = 6;
176
177
  return response.json();
177
178
 
178
- case 5:
179
+ case 6:
179
180
  return _context5.abrupt("return", _context5.sent);
180
181
 
181
- case 6:
182
+ case 7:
182
183
  case "end":
183
184
  return _context5.stop();
184
185
  }
@@ -191,6 +192,37 @@ var ApiStore = /*#__PURE__*/_createClass(function ApiStore(API_URL) {
191
192
  };
192
193
  }());
193
194
 
195
+ _defineProperty(this, "loadJson", /*#__PURE__*/function () {
196
+ var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(path) {
197
+ var response;
198
+ return _regeneratorRuntime().wrap(function _callee6$(_context6) {
199
+ while (1) {
200
+ switch (_context6.prev = _context6.next) {
201
+ case 0:
202
+ _context6.next = 2;
203
+ return fetch(path);
204
+
205
+ case 2:
206
+ response = _context6.sent;
207
+ _context6.next = 5;
208
+ return response.json();
209
+
210
+ case 5:
211
+ return _context6.abrupt("return", _context6.sent);
212
+
213
+ case 6:
214
+ case "end":
215
+ return _context6.stop();
216
+ }
217
+ }
218
+ }, _callee6);
219
+ }));
220
+
221
+ return function (_x6) {
222
+ return _ref6.apply(this, arguments);
223
+ };
224
+ }());
225
+
194
226
  (0, _mobx.makeAutoObservable)(this);
195
227
  this.API_URL = API_URL;
196
228
  });
@@ -9,6 +9,8 @@ exports.default = void 0;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ var _store = _interopRequireDefault(require("../store"));
13
+
12
14
  var _mobx = require("mobx");
13
15
 
14
16
  var _screenfull = _interopRequireDefault(require("screenfull"));
@@ -21,6 +23,10 @@ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try
21
23
 
22
24
  function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
23
25
 
26
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
27
+
28
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
29
+
24
30
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
25
31
 
26
32
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
@@ -43,6 +49,10 @@ var FullscreenStore = /*#__PURE__*/function () {
43
49
 
44
50
  _defineProperty(this, "element", null);
45
51
 
52
+ _defineProperty(this, "width", null);
53
+
54
+ _defineProperty(this, "height", null);
55
+
46
56
  (0, _mobx.makeAutoObservable)(this);
47
57
  }
48
58
 
@@ -53,9 +63,26 @@ var FullscreenStore = /*#__PURE__*/function () {
53
63
 
54
64
  this.element = document.querySelector('#widget-application');
55
65
  if (!this.enabled) return;
66
+ this.resize(_store.default.config);
56
67
 
57
68
  _screenfull.default.on('change', function () {
58
- return _this.active = _screenfull.default.isFullscreen;
69
+ setTimeout(function () {
70
+ _this.active = _screenfull.default.isFullscreen;
71
+
72
+ if (_this.active) {
73
+ _store.default.setConfig(_objectSpread(_objectSpread({}, _store.default.config), {}, {
74
+ width: window.innerWidth,
75
+ height: window.innerHeight
76
+ }));
77
+
78
+ return;
79
+ }
80
+
81
+ _store.default.setConfig(_objectSpread(_objectSpread({}, _store.default.config), {}, {
82
+ width: _this.width,
83
+ height: _this.height
84
+ }));
85
+ }, 100);
59
86
  });
60
87
  }
61
88
  }, {
@@ -114,6 +141,14 @@ var FullscreenStore = /*#__PURE__*/function () {
114
141
 
115
142
  return exit;
116
143
  }()
144
+ }, {
145
+ key: "resize",
146
+ value: function resize(_ref) {
147
+ var width = _ref.width,
148
+ height = _ref.height;
149
+ this.width = width;
150
+ this.height = height;
151
+ }
117
152
  }]);
118
153
 
119
154
  return FullscreenStore;
@@ -7,6 +7,8 @@ exports.default = void 0;
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
10
+ var _locale = _interopRequireDefault(require("../locale"));
11
+
10
12
  var _mobx = require("mobx");
11
13
 
12
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -42,7 +44,9 @@ var Store = /*#__PURE__*/function () {
42
44
 
43
45
  _defineProperty(this, "config", null);
44
46
 
45
- _defineProperty(this, "listeners", {});
47
+ _defineProperty(this, "listeners", {
48
+ 'resize': []
49
+ });
46
50
 
47
51
  _defineProperty(this, "controlsVisible", true);
48
52
 
@@ -77,6 +81,13 @@ var Store = /*#__PURE__*/function () {
77
81
  key: "setConfig",
78
82
  value: function setConfig(config) {
79
83
  this.config = config;
84
+
85
+ _locale.default.setCurrentLocale(config.locale);
86
+
87
+ this.dispatchEvent('resize', {
88
+ width: config.width,
89
+ height: config.height
90
+ });
80
91
  }
81
92
  }, {
82
93
  key: "hideControls",
@@ -98,6 +109,7 @@ var Store = /*#__PURE__*/function () {
98
109
  key: "dispatchEvent",
99
110
  value: function dispatchEvent(event) {
100
111
  var value = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
112
+ if (!this.listeners[event]) return;
101
113
  this.listeners[event].forEach(function (callback) {
102
114
  return callback(value);
103
115
  });
@@ -15,12 +15,16 @@ var THREE = _interopRequireWildcard(require("three"));
15
15
 
16
16
  var _cameraControls = _interopRequireDefault(require("camera-controls"));
17
17
 
18
+ var _store = _interopRequireDefault(require("../store"));
19
+
18
20
  var _houseStore = _interopRequireDefault(require("../store/houseStore"));
19
21
 
20
22
  var _grass = _interopRequireDefault(require("../assets/img/grass.png"));
21
23
 
22
24
  var _modelHelpers = require("../utils/modelHelpers");
23
25
 
26
+ var _defaultConfig = _interopRequireDefault(require("../config/defaultConfig"));
27
+
24
28
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
29
 
26
30
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -163,11 +167,12 @@ var ModelStore = /*#__PURE__*/function () {
163
167
 
164
168
  _this.camera.position.set(0, 0, 0);
165
169
 
166
- window.addEventListener('resize', function () {
170
+ _store.default.addEventListener('resize', function () {
167
171
  _this.updateCameraSize();
168
172
 
169
173
  _this.updateRendererSize();
170
174
  });
175
+
171
176
  return _this;
172
177
  });
173
178
 
@@ -300,16 +305,16 @@ var ModelStore = /*#__PURE__*/function () {
300
305
  _createClass(ModelStore, [{
301
306
  key: "width",
302
307
  get: function get() {
303
- var _this$container;
308
+ var _store$config;
304
309
 
305
- return ((_this$container = this.container) === null || _this$container === void 0 ? void 0 : _this$container.offsetWidth) || window.innerWidth;
310
+ return ((_store$config = _store.default.config) === null || _store$config === void 0 ? void 0 : _store$config.width) || _defaultConfig.default.width;
306
311
  }
307
312
  }, {
308
313
  key: "height",
309
314
  get: function get() {
310
- var _this$container2;
315
+ var _store$config2;
311
316
 
312
- return ((_this$container2 = this.container) === null || _this$container2 === void 0 ? void 0 : _this$container2.offsetHeight) || window.innerHeight;
317
+ return ((_store$config2 = _store.default.config) === null || _store$config2 === void 0 ? void 0 : _store$config2.height) || _defaultConfig.default.height;
313
318
  }
314
319
  }, {
315
320
  key: "loadTexture",
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "HART Estate widget",
4
4
  "author": "HART",
5
5
  "keywords": [],
6
- "version": "0.0.62",
6
+ "version": "0.0.65",
7
7
  "private": false,
8
8
  "main": "build/index.js",
9
9
  "module": "build/index.js",
@@ -1,23 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _react = _interopRequireDefault(require("react"));
9
-
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
-
12
- var ImageTab = function ImageTab(_ref) {
13
- var image = _ref.image,
14
- alt = _ref.alt;
15
- return /*#__PURE__*/_react.default.createElement("img", {
16
- className: "widget-tab__image",
17
- src: image,
18
- alt: alt
19
- });
20
- };
21
-
22
- var _default = ImageTab;
23
- exports.default = _default;