hart-estate-widget 0.0.66 → 0.0.69

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 (45) hide show
  1. package/README.md +3 -0
  2. package/build/assets/css/index.css +2 -0
  3. package/build/assets/img/floor-dark.jpg +0 -0
  4. package/build/assets/img/floor-white.jpg +0 -0
  5. package/build/assets/img/grass.jpg +0 -0
  6. package/build/bundle.js +2 -0
  7. package/build/components/Application.js +2 -135
  8. package/build/components/Buttons/FullScreenButton.js +2 -50
  9. package/build/components/Buttons/TabButton.js +2 -24
  10. package/build/components/Instructions.js +2 -54
  11. package/build/components/Loader.js +2 -22
  12. package/build/components/ModelTab.js +2 -213
  13. package/build/components/PanoramaTab.js +2 -620
  14. package/build/components/RotationTab/DefaultView.js +2 -124
  15. package/build/components/RotationTab/ThreesixtyView.js +2 -45
  16. package/build/components/RotationTab/index.js +2 -194
  17. package/build/components/Widget.js +2 -110
  18. package/build/config/defaultConfig.js +2 -32
  19. package/build/enums/deviceOrientationStatuses.js +2 -11
  20. package/build/enums/deviceWidth.js +2 -21
  21. package/build/enums/imageExtentions.js +2 -16
  22. package/build/enums/rotationModes.js +2 -11
  23. package/build/index.css +1 -1
  24. package/build/index.js +2 -75
  25. package/build/locale/index.js +2 -71
  26. package/build/store/apiStore.js +2 -231
  27. package/build/store/deviceStore.js +2 -60
  28. package/build/store/fullScreenStore.js +2 -159
  29. package/build/store/houseStore.js +2 -952
  30. package/build/store/index.js +2 -124
  31. package/build/store/modelStore.js +2 -338
  32. package/build/threesixty/events.js +2 -220
  33. package/build/threesixty/index.js +2 -264
  34. package/build/utils/csg/csg-lib.js +2 -472
  35. package/build/utils/csg/csg-worker.js +2 -84
  36. package/build/utils/csg/three-csg.js +2 -277
  37. package/build/utils/helpers.js +2 -12
  38. package/build/utils/modelHelpers.js +2 -161
  39. package/build/utils/panoramaHelpers.js +2 -117
  40. package/package.json +17 -5
  41. package/build/assets/css/app.css +0 -1
  42. package/build/assets/css/app.css.map +0 -1
  43. package/build/assets/img/floor-dark.png +0 -0
  44. package/build/assets/img/floor-white.png +0 -0
  45. package/build/assets/img/grass.png +0 -0
@@ -1,117 +1,2 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getScale = exports.getRoomCoordinates = exports.getClosestPanorama = exports.getCameraFromSrc = exports.getArrayFromNumber = exports.findWallVertices = exports.cameraIdBeginning = void 0;
7
-
8
- var _react = _interopRequireDefault(require("react"));
9
-
10
- var _geometric = require("geometric");
11
-
12
- var _imageExtentions = require("../enums/imageExtentions");
13
-
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
17
-
18
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
19
-
20
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
21
-
22
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
23
-
24
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
25
-
26
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
27
-
28
- var cameraIdBeginning = 'cameraid';
29
- exports.cameraIdBeginning = cameraIdBeginning;
30
-
31
- var getArrayFromNumber = function getArrayFromNumber(num) {
32
- return _toConsumableArray(Array(num).keys());
33
- };
34
-
35
- exports.getArrayFromNumber = getArrayFromNumber;
36
-
37
- var findWallVertices = function findWallVertices(walls, wall, vertices) {
38
- var currentWall = walls.find(function (el) {
39
- return el.ID === wall;
40
- });
41
- return currentWall.Vertices.map(function (vertexId) {
42
- var vertex = vertices.find(function (el) {
43
- return el.ID === vertexId;
44
- });
45
- return [vertex.Location.X, vertex.Location.Y];
46
- });
47
- };
48
-
49
- exports.findWallVertices = findWallVertices;
50
-
51
- var getRoomCoordinates = function getRoomCoordinates(room, walls, vertices) {
52
- var points = room.Walls.reduce(function (acc, wallId) {
53
- var wall = walls.find(function (wallObject) {
54
- return wallObject.ID === wallId;
55
- });
56
- findWallVertices(walls, wall.ID, vertices).forEach(function (vertex) {
57
- return acc.push(vertex);
58
- });
59
- return acc;
60
- }, []);
61
- return points;
62
- };
63
-
64
- exports.getRoomCoordinates = getRoomCoordinates;
65
-
66
- var getScale = function getScale(_ref, json) {
67
- var width = _ref.width,
68
- height = _ref.height;
69
- if (!json) return {
70
- X: 1,
71
- Y: 1
72
- };
73
- var baseImageWidth = 1024;
74
- var baseImageHeight = height * (baseImageWidth / width);
75
- var deltaX = width / baseImageWidth / json.Scale.X;
76
- var deltaY = height / baseImageHeight / json.Scale.X;
77
- return {
78
- X: deltaX,
79
- Y: deltaY
80
- };
81
- };
82
-
83
- exports.getScale = getScale;
84
-
85
- var getCameraFromSrc = function getCameraFromSrc(json, src) {
86
- var _json$Floors$0$Camera;
87
-
88
- var cameraIdIndex = src.toLowerCase().indexOf(cameraIdBeginning);
89
- if (cameraIdIndex === -1) return null;
90
- var cameraId = (0, _imageExtentions.removeExtention)(src.substring(cameraIdIndex));
91
- return ((_json$Floors$0$Camera = json.Floors[0].CameraPoints) === null || _json$Floors$0$Camera === void 0 ? void 0 : _json$Floors$0$Camera.find(function (_ref2) {
92
- var ID = _ref2.ID;
93
- return ID === cameraId;
94
- })) || null;
95
- };
96
-
97
- exports.getCameraFromSrc = getCameraFromSrc;
98
-
99
- var getClosestPanorama = function getClosestPanorama(point, panoramas) {
100
- return panoramas.reduce(function (closest, current) {
101
- var length = (0, _geometric.lineLength)([point, [current.userData.left, current.userData.top]]);
102
-
103
- if (length < closest.length) {
104
- return {
105
- panorama: current,
106
- length: length
107
- };
108
- }
109
-
110
- return closest;
111
- }, {
112
- length: Infinity,
113
- panorama: null
114
- });
115
- };
116
-
117
- exports.getClosestPanorama = getClosestPanorama;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getScale=exports.getRoomCoordinates=exports.getClosestPanorama=exports.getCameraFromSrc=exports.getArrayFromNumber=exports.findWallVertices=exports.cameraIdBeginning=void 0;var _react=_interopRequireDefault(require("react")),_geometric=require("geometric"),_imageExtentions=require("../enums/imageExtentions");function _interopRequireDefault(r){return r&&r.__esModule?r:{default:r}}function _toConsumableArray(r){return _arrayWithoutHoles(r)||_iterableToArray(r)||_unsupportedIterableToArray(r)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(r,e){if(r){if("string"==typeof r)return _arrayLikeToArray(r,e);var t=Object.prototype.toString.call(r).slice(8,-1);return"Map"===(t="Object"===t&&r.constructor?r.constructor.name:t)||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,e):void 0}}function _iterableToArray(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r)}function _arrayWithoutHoles(r){if(Array.isArray(r))return _arrayLikeToArray(r)}function _arrayLikeToArray(r,e){(null==e||e>r.length)&&(e=r.length);for(var t=0,n=new Array(e);t<e;t++)n[t]=r[t];return n}var cameraIdBeginning="cameraid",getArrayFromNumber=(exports.cameraIdBeginning=cameraIdBeginning,function(r){return _toConsumableArray(Array(r).keys())}),findWallVertices=(exports.getArrayFromNumber=getArrayFromNumber,function(r,e,t){return r.find(function(r){return r.ID===e}).Vertices.map(function(e){var r=t.find(function(r){return r.ID===e});return[r.Location.X,r.Location.Y]})}),getRoomCoordinates=(exports.findWallVertices=findWallVertices,function(r,n,a){return r.Walls.reduce(function(e,t){var r=n.find(function(r){return r.ID===t});return findWallVertices(n,r.ID,a).forEach(function(r){return e.push(r)}),e},[])}),getScale=(exports.getRoomCoordinates=getRoomCoordinates,function(r,e){var t=r.width,r=r.height;if(!e)return{X:1,Y:1};return{X:t/1024/e.Scale.X,Y:r/(r*(1024/t))/e.Scale.X}}),getCameraFromSrc=(exports.getScale=getScale,function(r,e){var t=e.toLowerCase().indexOf(cameraIdBeginning);if(-1===t)return null;var n=(0,_imageExtentions.removeExtention)(e.substring(t));return(null==(e=r.Floors[0].CameraPoints)?void 0:e.find(function(r){return r.ID===n}))||null}),getClosestPanorama=(exports.getCameraFromSrc=getCameraFromSrc,function(n,r){return r.reduce(function(r,e){var t=(0,_geometric.lineLength)([n,[e.userData.left,e.userData.top]]);return t<r.length?{panorama:e,length:t}:r},{length:1/0,panorama:null})});exports.getClosestPanorama=getClosestPanorama;
2
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL3Bhbm9yYW1hSGVscGVycy5qcyJdLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9nZW9tZXRyaWMiLCJfaW1hZ2VFeHRlbnRpb25zIiwiY2FtZXJhSWRCZWdpbm5pbmciLCJnZXRBcnJheUZyb21OdW1iZXIiLCJudW0iLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJBcnJheSIsImtleXMiLCJmaW5kV2FsbFZlcnRpY2VzIiwid2FsbHMiLCJ3YWxsIiwidmVydGljZXMiLCJmaW5kIiwiZWwiLCJJRCIsIlZlcnRpY2VzIiwibWFwIiwidmVydGV4SWQiLCJ2ZXJ0ZXgiLCJMb2NhdGlvbiIsIlgiLCJZIiwiZ2V0Um9vbUNvb3JkaW5hdGVzIiwicm9vbSIsIldhbGxzIiwicmVkdWNlIiwiYWNjIiwid2FsbElkIiwid2FsbE9iamVjdCIsImZvckVhY2giLCJwdXNoIiwiZ2V0U2NhbGUiLCJfcmVmIiwianNvbiIsIndpZHRoIiwiaGVpZ2h0IiwiU2NhbGUiLCJjdXJyZW50V2FsbCIsInNyYyIsImNhbWVyYUlkSW5kZXgiLCJ0b0xvd2VyQ2FzZSIsImluZGV4T2YiLCJjYW1lcmFJZCIsInJlbW92ZUV4dGVudGlvbiIsInN1YnN0cmluZyIsIl9qc29uJEZsb29ycyQwJENhbWVyYSIsImdldENsb3Nlc3RQYW5vcmFtYSIsInBvaW50IiwicGFub3JhbWFzIiwiY2xvc2VzdCIsImN1cnJlbnQiLCJsZW5ndGgiLCJsaW5lTGVuZ3RoIiwidXNlckRhdGEiLCJsZWZ0IiwidG9wIiwiSW5maW5pdHkiLCJwYW5vcmFtYSJdLCJtYXBwaW5ncyI6InlQQUFBLElBQUFBLE9BQUFDLHVCQUFBQyxRQUFBLFVBQ0FDLFdBQUFELFFBQUEsYUFDQUUsaUJBQUFGLFFBQUEsNEIsMGlDQUVPLElBQU1HLGtCQUFvQixXQUVwQkMsb0IsNENBQXFCLFNBQUNDLEdBQUQsT0FBQUMsbUJBQWFDLE1BQU1GLEdBQUtHLFVBRTdDQyxrQiw4Q0FBbUIsU0FBQ0MsRUFBT0MsRUFBTUMsR0FFNUMsT0FURkYsRUFBQUcsS0FBQSxTQUFBQyxHQUFBLE9BQUFBLEVBQUFDLEtBQUFKLElBU3FCSyxTQUFTQyxJQUFJLFNBQUNDLEdBUm5DLElBQUFDLEVBQUFQLEVBQUFDLEtBQUEsU0FBQUMsR0FBQSxPQUFBQSxFQUFBQyxLQUFBRyxJQVVJLE1BQU8sQ0FBQ0MsRUFBT0MsU0FBU0MsRUFBR0YsRUFBT0MsU0FBU0UsT0FJbENDLG9CLDBDQUFxQixTQUFDQyxFQUFNZCxFQUFPRSxHQU05QyxPQUxlWSxFQUFLQyxNQUFNQyxPQUFPLFNBQUNDLEVBQUtDLEdBQ3JDLElBQU1qQixFQUFPRCxFQUFNRyxLQUFLLFNBQUNnQixHQUFELE9BQWdCQSxFQUFXZCxLQUFPYSxJQUUxRCxPQURBbkIsaUJBQWlCQyxFQUFPQyxFQUFLSSxHQUFJSCxHQUFVa0IsUUFBUSxTQUFDWCxHQUFELE9BQVlRLEVBQUlJLEtBQUtaLEtBQ2pFUSxHQUNOLE1BSVFLLFUsOENBQVcsU0FBQUMsRUFBb0JDLEdBQVMsSUFBMUJDLEVBQTBCRixFQUExQkUsTUFBT0MsRUFBbUJILEVBQW5CRyxPQUNoQyxJQUFLRixFQUFNLE1BQU8sQ0FBRWIsRUFBRyxFQUFHQyxFQUFHLEdBUTdCLE1BQU8sQ0FBRUQsRUE1QnVCYyxFQXNCVCxLQXRCc0JELEVBQWJHLE1BQUFoQixFQTRCWkMsRUE1QmZjLEdBdUJtQkEsR0FERCxLQUM0QkQsSUF2QjlDRCxFQUFBRyxNQUFBaEIsS0FHQ2lCLGtCLDBCQUF5QixTQUFBSixFQUFBSyxHQUFBLElBQUFDLEVBQWtCN0IsRUFBbEI4QixjQUFBQyxRQUFBdkMsbUJBQy9CLElBQW1CYSxJQUFuQndCLEVBQW1CeEIsT0FBYSxLQWdDaEMsSUEvQitCMkIsR0FBUSxFQUFBQyxpQkFBQUEsaUJBQVJMLEVBQUFNLFVBQUFMLElBaUMvQixPQWhDRSxPQUFBTSxFQUFBWixFQUFRZixPQUFPQyxHQUFBQSxtQkFBZixFQUFBMEIsRUFBa0MxQixLQUFBQSxTQUFBQSxHQUFBQSxPQUFBQSxFQUFQTCxLQUEzQjRCLE1BQUEsT0FtQ1NJLG9CLDBDQUFxQixTQUFDQyxFQUFPQyxHQUN4QyxPQUFPQSxFQUFVdkIsT0FBTyxTQUFDd0IsRUFBU0MsR0FDaEMsSUFBTUMsR0FBUyxFQUFBQyxXQUFBQSxZQUFXLENBQUNMLEVBQU8sQ0FBQ0csRUFBUUcsU0FBU0MsS0FBTUosRUFBUUcsU0FBU0UsT0FqQ2xFakMsT0FBQUEsRUFBQUEsRUFBcUI2QixPQUNwQixDQUFHNUIsU0FBQTJCLEVBQWtCQyxPQUFBQSxHQUNQRixHQUFYLENBQWJFLE9BQUFLLEVBQUFBLEVBQUFDLFNBQUEiLCJmaWxlIjoidXRpbHMvcGFub3JhbWFIZWxwZXJzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGxpbmVMZW5ndGggfSBmcm9tICdnZW9tZXRyaWMnO1xuaW1wb3J0IHsgcmVtb3ZlRXh0ZW50aW9uIH0gZnJvbSAnLi4vZW51bXMvaW1hZ2VFeHRlbnRpb25zJztcblxuZXhwb3J0IGNvbnN0IGNhbWVyYUlkQmVnaW5uaW5nID0gJ2NhbWVyYWlkJztcblxuZXhwb3J0IGNvbnN0IGdldEFycmF5RnJvbU51bWJlciA9IChudW0pID0+IFsuLi5BcnJheShudW0pLmtleXMoKV07XG5cbmV4cG9ydCBjb25zdCBmaW5kV2FsbFZlcnRpY2VzID0gKHdhbGxzLCB3YWxsLCB2ZXJ0aWNlcykgPT4ge1xuICBjb25zdCBjdXJyZW50V2FsbCA9IHdhbGxzLmZpbmQoKGVsKSA9PiBlbC5JRCA9PT0gd2FsbCk7XG4gIHJldHVybiBjdXJyZW50V2FsbC5WZXJ0aWNlcy5tYXAoKHZlcnRleElkKSA9PiB7XG4gICAgY29uc3QgdmVydGV4ID0gdmVydGljZXMuZmluZCgoZWwpID0+IGVsLklEID09PSB2ZXJ0ZXhJZCk7XG4gICAgcmV0dXJuIFt2ZXJ0ZXguTG9jYXRpb24uWCwgdmVydGV4LkxvY2F0aW9uLlldO1xuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRSb29tQ29vcmRpbmF0ZXMgPSAocm9vbSwgd2FsbHMsIHZlcnRpY2VzKSA9PiB7XG4gIGNvbnN0IHBvaW50cyA9IHJvb20uV2FsbHMucmVkdWNlKChhY2MsIHdhbGxJZCkgPT4ge1xuICAgIGNvbnN0IHdhbGwgPSB3YWxscy5maW5kKCh3YWxsT2JqZWN0KSA9PiB3YWxsT2JqZWN0LklEID09PSB3YWxsSWQpO1xuICAgIGZpbmRXYWxsVmVydGljZXMod2FsbHMsIHdhbGwuSUQsIHZlcnRpY2VzKS5mb3JFYWNoKCh2ZXJ0ZXgpID0+IGFjYy5wdXNoKHZlcnRleCkpO1xuICAgIHJldHVybiBhY2M7XG4gIH0sIFtdKTtcbiAgcmV0dXJuIHBvaW50cztcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRTY2FsZSA9ICh7IHdpZHRoLCBoZWlnaHQgfSwganNvbikgPT4ge1xuICBpZiAoIWpzb24pIHJldHVybiB7IFg6IDEsIFk6IDEgfTtcblxuICBjb25zdCBiYXNlSW1hZ2VXaWR0aCA9IDEwMjQ7XG4gIGNvbnN0IGJhc2VJbWFnZUhlaWdodCA9IGhlaWdodCAqIChiYXNlSW1hZ2VXaWR0aCAvIHdpZHRoKTtcblxuICBjb25zdCBkZWx0YVggPSAod2lkdGggLyBiYXNlSW1hZ2VXaWR0aCkgLyBqc29uLlNjYWxlLlg7XG4gIGNvbnN0IGRlbHRhWSA9IChoZWlnaHQgLyBiYXNlSW1hZ2VIZWlnaHQpIC8ganNvbi5TY2FsZS5YO1xuXG4gIHJldHVybiB7IFg6IGRlbHRhWCwgWTogZGVsdGFZIH07XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q2FtZXJhRnJvbVNyYyA9IChqc29uLCBzcmMpID0+IHtcbiAgY29uc3QgY2FtZXJhSWRJbmRleCA9IHNyYy50b0xvd2VyQ2FzZSgpLmluZGV4T2YoY2FtZXJhSWRCZWdpbm5pbmcpO1xuXG4gIGlmIChjYW1lcmFJZEluZGV4ID09PSAtMSkgcmV0dXJuIG51bGw7XG5cbiAgY29uc3QgY2FtZXJhSWQgPSByZW1vdmVFeHRlbnRpb24oc3JjLnN1YnN0cmluZyhjYW1lcmFJZEluZGV4KSk7XG5cbiAgcmV0dXJuIGpzb24uRmxvb3JzWzBdLkNhbWVyYVBvaW50cz8uZmluZCgoeyBJRCB9KSA9PiBJRCA9PT0gY2FtZXJhSWQpIHx8IG51bGw7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q2xvc2VzdFBhbm9yYW1hID0gKHBvaW50LCBwYW5vcmFtYXMpID0+IHtcbiAgcmV0dXJuIHBhbm9yYW1hcy5yZWR1Y2UoKGNsb3Nlc3QsIGN1cnJlbnQpID0+IHtcbiAgICBjb25zdCBsZW5ndGggPSBsaW5lTGVuZ3RoKFtwb2ludCwgW2N1cnJlbnQudXNlckRhdGEubGVmdCwgY3VycmVudC51c2VyRGF0YS50b3BdXSk7XG4gICAgaWYgKGxlbmd0aCA8IGNsb3Nlc3QubGVuZ3RoKSB7XG4gICAgICByZXR1cm4geyBwYW5vcmFtYTogY3VycmVudCwgbGVuZ3RoIH07XG4gICAgfVxuICAgIHJldHVybiBjbG9zZXN0O1xuICB9LCB7IGxlbmd0aDogSW5maW5pdHksIHBhbm9yYW1hOiBudWxsIH0pO1xufTtcbiJdfQ==
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.66",
6
+ "version": "0.0.69",
7
7
  "private": false,
8
8
  "main": "build/index.js",
9
9
  "module": "build/index.js",
@@ -15,10 +15,10 @@
15
15
  "node": "^16.0.0"
16
16
  },
17
17
  "scripts": {
18
- "start": "npm run build:sass && babel src --watch -d build --copy-files",
18
+ "start": "babel src --watch -d build --copy-files",
19
19
  "start-example": "cd ./example && npm run start",
20
- "build": "rm -rf build && NODE_ENV=production babel src -d build --copy-files && npm run build:sass",
21
- "build:sass": "sass src/assets/sass/index.sass:build/assets/css/app.css --style compressed",
20
+ "build": "rm -rf build && gulp build",
21
+ "production": "rm -rf build && gulp production",
22
22
  "local-tunnel": "Lt --port 9000 --subdomain estate-widget --local-host localhost"
23
23
  },
24
24
  "dependencies": {
@@ -43,11 +43,23 @@
43
43
  "@babel/core": "^7.17.0",
44
44
  "@babel/eslint-parser": "^7.16.3",
45
45
  "@babel/preset-env": "^7.16.11",
46
+ "babel-plugin-inline-import-data-uri": "^1.0.1",
47
+ "babelify": "^10.0.0",
48
+ "browserify": "^17.0.0",
46
49
  "eslint": "^8.0.0",
47
50
  "eslint-config-react-app": "^7.0.0",
48
51
  "eslint-plugin-react": "^7.28.0",
52
+ "gulp": "^4.0.2",
53
+ "gulp-babel": "^8.0.0",
54
+ "gulp-clean-css": "^4.3.0",
55
+ "gulp-cli": "^2.3.0",
56
+ "gulp-sass": "^5.1.0",
57
+ "gulp-sourcemaps": "^3.0.0",
58
+ "gulp-streamify": "^1.0.2",
59
+ "gulp-uglify": "^3.0.2",
49
60
  "path": "^0.12.7",
50
- "sass": "^1.46.0"
61
+ "sass": "^1.46.0",
62
+ "vinyl-source-stream": "^2.0.0"
51
63
  },
52
64
  "browserslist": [
53
65
  ">0.2%",
@@ -1 +0,0 @@
1
- .widget-application{width:100%;height:100%;flex:none;overflow:hidden;position:relative;z-index:1;background-color:#fff;font-size:20px}.widget-application *,.widget-application *:before,.widget-application *:after{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:"Roboto Mono",sans-serif;text-decoration:none;font-weight:700;color:#413e3e;outline:none;padding:0;margin:0;box-sizing:border-box;-webkit-box-sizing:border-box}.widget-application .widget-logo{position:absolute;left:45px;top:30px;z-index:3}.widget-application--tablet.widget-application .widget-logo{left:20px;top:30px}.widget-application--smallMobile.widget-application .widget-logo{top:25px}.widget-application .widget-logo img{display:block;width:82px;height:82px;object-fit:contain;object-position:center}.widget-application--tablet.widget-application .widget-logo img{width:65px;height:65px}.widget-application--mobile.widget-application .widget-logo img{width:42px;height:42px}.widget-application--smallMobile.widget-application .widget-logo img{width:36px;height:36px}.widget-application .widget-tab__panorama-close-map{position:absolute;right:45px;top:36px;z-index:3;padding:10px;touch-action:none;ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer}.widget-application--tablet.widget-application .widget-tab__panorama-close-map{right:17px;top:35px}.widget-application--mobile.widget-application .widget-tab__panorama-close-map{padding:5px;right:20px}.widget-application--smallMobile.widget-application .widget-tab__panorama-close-map{top:25px}.widget-application .widget-tab__panorama-close-map img{display:block;width:50px;height:50px;object-fit:contain;object-position:center}.widget-application--tablet.widget-application .widget-tab__panorama-close-map img{width:40px;height:40px}.widget-application--mobile.widget-application .widget-tab__panorama-close-map img{width:32px;height:32px}.widget-application--smallMobile.widget-application .widget-tab__panorama-close-map img{width:26px;height:26px}.widget-application .widget-enter-fullscreen{position:absolute;right:45px;top:36px;z-index:3;padding:10px;touch-action:none;ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer}.widget-application--tablet.widget-application .widget-enter-fullscreen{right:17px;top:35px}.widget-application--mobile.widget-application .widget-enter-fullscreen{padding:5px;right:20px}.widget-application--smallMobile.widget-application .widget-enter-fullscreen{top:25px}.widget-application .widget-enter-fullscreen img{display:block;width:50px;height:50px;object-fit:contain;object-position:center}.widget-application--tablet.widget-application .widget-enter-fullscreen img{width:40px;height:40px}.widget-application--mobile.widget-application .widget-enter-fullscreen img{width:32px;height:32px}.widget-application--smallMobile.widget-application .widget-enter-fullscreen img{width:26px;height:26px}.widget-application .widget-exit-fullscreen{position:absolute;right:45px;top:36px;z-index:3;padding:10px;touch-action:none;ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer}.widget-application--tablet.widget-application .widget-exit-fullscreen{right:17px;top:35px}.widget-application--mobile.widget-application .widget-exit-fullscreen{padding:5px;right:20px}.widget-application--smallMobile.widget-application .widget-exit-fullscreen{top:25px}.widget-application .widget-exit-fullscreen img{display:block;width:50px;height:50px;object-fit:contain;object-position:center}.widget-application--tablet.widget-application .widget-exit-fullscreen img{width:40px;height:40px}.widget-application--mobile.widget-application .widget-exit-fullscreen img{width:32px;height:32px}.widget-application--smallMobile.widget-application .widget-exit-fullscreen img{width:26px;height:26px}.widget-application .widget-tab-buttons{position:absolute;z-index:3;right:44px;bottom:35px;display:flex;align-items:center;justify-content:flex-end}.widget-application--tablet.widget-application .widget-tab-buttons{right:20px;bottom:35px}.widget-application--smallMobile.widget-application .widget-tab-buttons{bottom:30px}.widget-application .widget-tab-button{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:#eaeaea;color:#413e3e;font-size:28px;line-height:120%;font-weight:bold;margin-left:40px}.widget-application--tablet.widget-application .widget-tab-button{margin-left:20px;width:60px;height:60px;font-size:22px}.widget-application--mobile.widget-application .widget-tab-button{margin-left:10px;font-size:17px;width:44px;height:44px}.widget-application--smallMobile.widget-application .widget-tab-button{width:36px;height:36px;font-size:14px}.widget-application .widget-tab-button--active{background-color:#fac62d}.widget-application .widget-tab{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:60px 30px}.widget-application--smallMobile.widget-application .widget-tab{padding:60px 20px}.widget-application .widget-tab-menu{position:absolute;z-index:3;left:15px;top:15px;max-height:100%;overflow-y:auto;padding-bottom:30px}.widget-application .widget-tab-menu__wallpapers{display:flex;flex-wrap:wrap;align-items:flex-start;margin-top:10px;width:100%}.widget-application .widget-tab-menu__wallpapers img{width:30px;height:30px;display:block;object-fit:cover;cursor:pointer;margin-right:10px;margin-block-end:10px}.widget-application .widget-tab-menu ul{list-style-type:none}.widget-application .widget-tab-menu ul li{color:#413e3e;background-color:#fac62d;padding:5px 15px;border-radius:10px;font-size:.7rem;border:none;cursor:pointer;margin-bottom:15px;width:200px;user-select:none;-webkit-user-select:none;user-drag:none;-webkit-user-drag:none}.widget-application .widget-tab-menu ul li label{display:flex;cursor:inherit;width:100%}.widget-application .widget-tab-menu ul li input[type=color]{cursor:pointer;margin-left:auto;width:50px;height:20px;border:0;border-radius:5px}.widget-application .widget-tab-menu ul li input[type=color]::-webkit-color-swatch-wrapper{display:none !important}.widget-application .widget-tab-menu ul li input[type=file]{display:none}.widget-application .widget-tab-menu ul li:nth-child(1){position:relative}.widget-application .widget-tab-menu ul li:nth-child(1)::after{--bar-width: 2px;content:"";width:20px;height:15px;display:block;background:repeating-linear-gradient(180deg, #000000, #000000 var(--bar-width), rgba(0, 0, 0, 0) var(--bar-width), rgba(0, 0, 0, 0) calc(var(--bar-width) * 3));position:absolute;right:10px;top:50%;transform:translateY(-50%)}.widget-application .widget-instructions{position:absolute;z-index:2;left:0;top:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-position:center;background-repeat:no-repeat;background-size:cover}.widget-application .widget-instructions__content{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background-color:rgba(234,234,234,.85);border-radius:20px;overflow:hidden;width:400px;max-width:calc(100% - 60px);padding:36px 30px 30px 30px;backdrop-filter:blur(5px);-moz-backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.widget-application--mobile.widget-application .widget-instructions__content{width:280px;padding:26px 20px 20px 20px}.widget-application .widget-instructions__steps{display:flex;align-items:flex-start;justify-content:center}.widget-application .widget-instructions__step{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;margin:0 15px}.widget-application--tablet.widget-application .widget-instructions__step{margin:0 10px}.widget-application .widget-instructions__step img{display:block;width:52px;height:80px;object-fit:contain;object-position:center}.widget-application--mobile.widget-application .widget-instructions__step img{width:40px;height:60px}.widget-application--smallMobile.widget-application .widget-instructions__step img{width:35px}.widget-application .widget-instructions__step p{color:#413e3e;font-size:20px;font-weight:bold;text-align:center;margin-top:10px;max-width:130px}.widget-application--tablet.widget-application .widget-instructions__step p{font-size:18px;max-width:115px}.widget-application--mobile.widget-application .widget-instructions__step p{font-size:16px}.widget-application--smallMobile.widget-application .widget-instructions__step p{font-size:14px}.widget-application .widget-instructions button{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;display:flex;align-items:center;justify-content:center;height:44px;padding:0 33px;border-radius:52px;background-color:#fac62d;color:#413e3e;font-size:24px;font-weight:bold;text-transform:uppercase;margin:25px auto 0 auto}.widget-application--tablet.widget-application .widget-instructions button{font-size:18px;height:40px}.widget-application--mobile.widget-application .widget-instructions button{font-size:16px;height:35px}.widget-application--smallMobile.widget-application .widget-instructions button{font-size:14px;height:26px;padding:0 25px}.widget-application .widget-tab__panorama{width:100%;height:100%;position:absolute;left:0;top:0;z-index:2}.widget-application .widget-tab__panorama-overlay{width:100%;height:100%;overflow:hidden;background:#fff !important}.widget-application .widget-tab__panorama-overlay *{display:none !important}.widget-application .widget-tab__panorama-overlay canvas{display:block !important}.widget-application .widget-tab__panorama-controls{position:absolute;z-index:2;left:50%;bottom:35px;display:flex;align-items:center;justify-content:center;padding:8px;border-radius:38px;background-color:rgba(0,0,0,.2);transform:translateX(-50%);backdrop-filter:blur(5px);-moz-backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.widget-application--mobile.widget-application .widget-tab__panorama-controls{padding:5px}.widget-application--smallMobile.widget-application .widget-tab__panorama-controls{bottom:30px}.widget-application .widget-tab__panorama-controls-button{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;width:55px;height:55px;border-radius:50%;background-color:#fff;display:flex;align-items:center;justify-content:center;margin-right:18px}.widget-application--tablet.widget-application .widget-tab__panorama-controls-button{width:44px;height:44px}.widget-application--mobile.widget-application .widget-tab__panorama-controls-button{margin-right:10px;width:33px;height:33px}.widget-application--smallMobile.widget-application .widget-tab__panorama-controls-button{width:26px;height:26px}.widget-application .widget-tab__panorama-controls-button img{display:block}.widget-application--tablet.widget-application .widget-tab__panorama-controls-button img{transform:scale(0.7)}.widget-application--mobile.widget-application .widget-tab__panorama-controls-button img{transform:scale(0.52)}.widget-application--smallMobile.widget-application .widget-tab__panorama-controls-button img{transform:scale(0.45)}.widget-application .widget-tab__panorama-controls-button:nth-last-child(1){margin-right:0}.widget-application .widget-tab__panorama-close-map{z-index:4}.widget-application .widget-tab__panorama-map{position:absolute;left:45px;bottom:35px;z-index:3;border-radius:10px;opacity:1;transition:opacity .5s;touch-action:none;-webkit-touch-action:none}.widget-application .widget-tab__panorama-map::before{content:"";position:absolute;z-index:-1;left:50%;top:50%;transform:translate(-50%, -50%);width:calc(100% + 16px);height:calc(100% + 16px);border-radius:inherit;background-color:#fff}.widget-application--tablet.widget-application .widget-tab__panorama-map{left:20px;transform:scale(0.6);transform-origin:0% 100%}.widget-application--mobile.widget-application .widget-tab__panorama-map{transform:scale(0.4)}.widget-application--smallMobile.widget-application .widget-tab__panorama-map{bottom:30px;transform:scale(0.35)}.widget-application--tablet.widget-application .widget-tab__panorama-map--scaled{transform:scale(1.4) translate(-50%, 50%);left:50%;bottom:50%}.widget-application--tablet.widget-application .widget-tab__panorama-map--scaled::after{content:"";position:absolute;z-index:-2;left:50%;top:50%;transform:translate(-50%, -50%);width:100vw;height:100vh;background-color:rgba(196,196,196,.8)}.widget-application--tablet.widget-application .widget-tab__panorama-map--scaled svg polygon:active{opacity:.3 !important}.widget-application--mobile.widget-application .widget-tab__panorama-map--scaled{transform:scale(1) translate(-50%, 50%)}.widget-application .widget-tab__panorama-map--hidden{opacity:0;pointer-events:none}.widget-application .widget-tab__panorama-map img{width:200px;border-radius:none;display:block;user-select:none;-webkit-user-select:none;user-drag:none;-webkit-user-drag:none;-webkit-backface-visibility:hidden;-ms-transform:translateZ(0);-webkit-transform:translateZ(0);transform:translateZ(0)}.widget-application .widget-tab__panorama-map img:hover{box-shadow:1px 1px 10px rgba(0,0,0,.15)}.widget-application .widget-tab__panorama-map svg{position:absolute;left:0;top:0;width:200px;height:100%;z-index:3;display:block;border-radius:inherit}.widget-application .widget-tab__panorama-map svg polygon{opacity:0;fill:#fac62d;cursor:pointer}.widget-application .widget-tab__panorama-map svg polygon:hover{opacity:.3}.widget-application .widget-tab__panorama-map__fov{position:absolute;left:0;top:0;width:0px;height:0px;border-radius:50%;border-left:30px solid rgba(250,198,45,0);border-right:30px solid rgba(250,198,45,0);border-bottom:30px solid rgba(250,198,45,0);border-top:40px solid rgba(250,198,45,.4);transform:translate(-50%, -50%) rotate(0rad);transform-origin:50% 50%;z-index:4;pointer-events:none}.widget-application .widget-tab__panorama-map__fov::before{content:"";position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%, -50%) translateY(-5px);width:15px;height:15px;background-color:#fac62d;border-radius:50%;border:2px solid #fac62d;box-shadow:inset 0 0 0 2px #fff}.widget-application .widget-tab__rotation{width:100%;height:100%}.widget-application .widget-tab__rotation-start{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;position:absolute;left:50%;bottom:35px;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;padding:0 25px 0 10px;background-color:#eaeaea;border-radius:38px;height:72px;width:202px}.widget-application--tablet.widget-application .widget-tab__rotation-start{height:60px;width:166px;padding:0 20px 0 8px;bottom:35px}.widget-application--mobile.widget-application .widget-tab__rotation-start{height:44px;width:115px;padding:0 10px 0 6px}.widget-application--smallMobile.widget-application .widget-tab__rotation-start{height:36px;width:85px;padding:0 8px 0 6px;bottom:30px}.widget-application .widget-tab__rotation-start-icon{display:flex;align-items:center;justify-content:center;border-radius:50%;background-color:#fff;margin-right:18px;padding:10px}.widget-application--tablet.widget-application .widget-tab__rotation-start-icon{padding:7px;margin-right:15px}.widget-application--mobile.widget-application .widget-tab__rotation-start-icon{margin-right:7px}.widget-application--smallMobile.widget-application .widget-tab__rotation-start-icon{padding:6px;margin-right:5px}.widget-application .widget-tab__rotation-start-icon img{display:block;position:relative;top:2px;width:34px}.widget-application--tablet.widget-application .widget-tab__rotation-start-icon img{width:30px;top:1px}.widget-application--mobile.widget-application .widget-tab__rotation-start-icon img{width:19px;top:0}.widget-application--smallMobile.widget-application .widget-tab__rotation-start-icon img{width:15px}.widget-application .widget-tab__rotation-start span{font-size:24px;font-weight:bold;color:#413e3e;text-transform:uppercase;width:100%;display:block;text-align:center;position:relative;top:1px}.widget-application--tablet.widget-application .widget-tab__rotation-start span{font-size:20px}.widget-application--mobile.widget-application .widget-tab__rotation-start span{font-size:14px}.widget-application--smallMobile.widget-application .widget-tab__rotation-start span{font-size:10px;top:0}.widget-application .widget-tab__threesixty,.widget-application .widget-tab__isometry{width:100%;height:100%;touch-action:none;-webkit-touch-action:none}.widget-application .widget-tab__threesixty-container,.widget-application .widget-tab__isometry-container{width:100% !important;height:100% !important;position:relative;background-image:none !important}.widget-application .widget-tab__threesixty-container img,.widget-application .widget-tab__isometry-container img{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);max-width:100%;max-height:100%;width:600px;height:600px;object-fit:contain;opacity:0;pointer-events:none;user-select:none;-webkit-user-select:none;user-drag:none;-webkit-user-drag:none}.widget-application .widget-tab__threesixty-container img.active,.widget-application .widget-tab__isometry-container img.active{opacity:1}.widget-application .widget-tab__threesixty--active{cursor:move}.widget-application .widget-tab__isometry-arrows{position:absolute;z-index:3;left:50%;bottom:35px;transform:translateX(-50%);height:72px;display:flex;align-items:center;justify-content:center}.widget-application--tablet.widget-application .widget-tab__isometry-arrows{bottom:35px;height:60px}.widget-application--mobile.widget-application .widget-tab__isometry-arrows{height:44px}.widget-application--smallMobile.widget-application .widget-tab__isometry-arrows{bottom:30px;height:36px}.widget-application .widget-tab__isometry-arrows span{font-size:28px;font-weight:bold;display:block;margin:0 9px}.widget-application--tablet.widget-application .widget-tab__isometry-arrows span{font-size:22px}.widget-application--mobile.widget-application .widget-tab__isometry-arrows span{font-size:17px;margin:0 3px}.widget-application--smallMobile.widget-application .widget-tab__isometry-arrows span{font-size:14px;margin:0}.widget-application .widget-tab__isometry-arrow{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:5px}.widget-application .widget-tab__isometry-arrow img{width:32px}.widget-application--tablet.widget-application .widget-tab__isometry-arrow img{width:24px}.widget-application--mobile.widget-application .widget-tab__isometry-arrow img{width:18px}.widget-application--smallMobile.widget-application .widget-tab__isometry-arrow img{width:14px}.widget-application .widget-tab__isometry-buttons{position:absolute;z-index:3;left:44px;bottom:35px;display:flex;align-items:center;justify-content:flex-end}.widget-application--tablet.widget-application .widget-tab__isometry-buttons{left:20px;bottom:35px}.widget-application--smallMobile.widget-application .widget-tab__isometry-buttons{bottom:30px}.widget-application .widget-tab__isometry-button{ouline:none;border:none;box-shadow:none;background:rgba(0,0,0,0);cursor:pointer;width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:#eaeaea;margin-top:40px}.widget-application--tablet.widget-application .widget-tab__isometry-button{margin-top:20px;width:60px;height:60px}.widget-application--mobile.widget-application .widget-tab__isometry-button{margin-top:10px;width:44px;height:44px}.widget-application--smallMobile.widget-application .widget-tab__isometry-button{width:36px;height:36px}.widget-application .widget-tab__isometry-button img{display:block;width:50px}.widget-application--tablet.widget-application .widget-tab__isometry-button img{width:40px}.widget-application--mobile.widget-application .widget-tab__isometry-button img{width:30px}.widget-application--smallMobile.widget-application .widget-tab__isometry-button img{width:25px}.widget-application .widget-loader{display:block;position:relative;width:80px;height:80px}.widget-application .widget-loader--absolute{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.widget-application .widget-loader--sm{transform:translate(-50%, -50%) scale(0.75)}.widget-application .widget-loader div{position:absolute;top:33px;width:13px;height:13px;border-radius:50%;background:#fac62d;animation-timing-function:cubic-bezier(0, 1, 1, 0)}.widget-application .widget-loader div:nth-child(1){left:8px;animation:widget-loader-1 .6s infinite}.widget-application .widget-loader div:nth-child(2){left:8px;animation:widget-loader-2 .6s infinite}.widget-application .widget-loader div:nth-child(3){left:32px;animation:widget-loader-2 .6s infinite}.widget-application .widget-loader div:nth-child(4){left:56px;animation:widget-loader-3 .6s infinite}@keyframes widget-loader-1{0%{transform:scale(0)}100%{transform:scale(1)}}@keyframes widget-loader-3{0%{transform:scale(1)}100%{transform:scale(0)}}@keyframes widget-loader-2{0%{transform:translate(0, 0)}100%{transform:translate(24px, 0)}}.widget-application .widget-tab__model{width:100%;height:100%;position:absolute;left:0;top:0;z-index:2}.widget-application .widget-tab__model-scene{width:100%;height:100%;display:block}.widget-application .widget-tab__model-joystick{position:absolute;left:100px;bottom:100px;opacity:0;pointer-events:none}.widget-application--mobile.widget-application .widget-tab__model-joystick{left:50%;transform:translateX(-50%)}.widget-application .widget-tab__model-joystick--active{opacity:1;pointer-events:unset}/*# sourceMappingURL=app.css.map */
@@ -1 +0,0 @@
1
- {"version":3,"sourceRoot":"","sources":["../../../src/assets/sass/index.sass","../../../src/assets/sass/vars.sass","../../../src/assets/sass/mixin.sass","../../../src/assets/sass/components/tabs.sass","../../../src/assets/sass/components/instructions.sass","../../../src/assets/sass/components/panorama.sass","../../../src/assets/sass/components/rotation.sass","../../../src/assets/sass/components/loader.sass","../../../src/assets/sass/components/model.sass"],"names":[],"mappings":"AAGA,oBACE,WACA,YACA,UACA,gBACA,kBACA,UACA,iBCLM,KDMN,eAEA,+EACE,mCACA,kCACA,qCACA,qBACA,gBACA,MCRQ,QDSR,aACA,UACA,SACA,sBACA,8BAEF,iCACE,kBACA,UACA,SACA,UEhBO,4DFkBL,UACA,SEnBK,iEFqBL,SACF,qCACE,cACA,WACA,YACA,mBACA,uBE3BK,gEF6BH,WACA,YE9BG,gEFgCH,WACA,YEjCG,qEFmCH,WACA,YAEN,oDElCA,kBACA,WACA,SACA,UACA,aACA,kBAtBA,YACA,YACA,gBACA,yBACA,eASS,+EAYP,WACA,SAbO,+EAeP,YACA,WAhBO,oFAkBP,SACF,wDACE,cACA,WACA,YACA,mBACA,uBAxBO,mFA0BL,WACA,YA3BK,mFA6BL,WACA,YA9BK,wFAgCL,WACA,YFOJ,6CEpCA,kBACA,WACA,SACA,UACA,aACA,kBAtBA,YACA,YACA,gBACA,yBACA,eASS,wEAYP,WACA,SAbO,wEAeP,YACA,WAhBO,6EAkBP,SACF,iDACE,cACA,WACA,YACA,mBACA,uBAxBO,4EA0BL,WACA,YA3BK,4EA6BL,WACA,YA9BK,iFAgCL,WACA,YFSJ,4CEtCA,kBACA,WACA,SACA,UACA,aACA,kBAtBA,YACA,YACA,gBACA,yBACA,eASS,uEAYP,WACA,SAbO,uEAeP,YACA,WAhBO,4EAkBP,SACF,gDACE,cACA,WACA,YACA,mBACA,uBAxBO,2EA0BL,WACA,YA3BK,2EA6BL,WACA,YA9BK,gFAgCL,WACA,YC3CJ,wCACE,kBACA,UACA,WACA,YACA,aACA,mBACA,yBDGO,mECDL,WACA,oFAEA,YACJ,uCDhBA,YACA,YACA,gBACA,yBACA,eCcE,WACA,YACA,kBACA,aACA,mBACA,uBACA,iBFlBG,QEmBH,MFfQ,QEgBR,eACA,iBACA,iBACA,iBDhBO,kECkBL,iBACA,WACA,YACA,eDrBK,kECuBL,iBACA,eACA,WACA,YD1BK,uEC4BL,WACA,YACA,eACF,+CACE,iBFrCM,QEuCV,gCACE,WACA,YACA,aACA,mBACA,uBACA,kBDxCO,gEC0CL,kBACF,qCACE,kBACA,UACA,UACA,SACA,gBACA,gBACA,oBACA,iDACE,aACA,eACA,uBACA,gBACA,WACA,qDACE,WACA,YACA,cACA,iBACA,eACA,kBACA,sBACJ,wCACE,qBACA,2CACE,MFvEE,QEwEF,iBF1EE,QE2EF,iBACA,mBACA,gBACA,YACA,eACA,mBACA,YF5ER,iBACA,yBACA,eACA,uBE2EQ,iDACE,aACA,eACA,WAEA,6DACE,eACA,iBACA,WACA,YACA,SACA,kBACA,2FACE,wBACJ,4DACE,aACJ,wDACE,kBACA,+DACE,iBACA,WACA,WACA,YACA,cACA,gKACA,kBACA,WACA,QACA,2BCpHZ,yCACE,kBACA,UACA,OACA,MACA,WACA,YACA,aACA,mBACA,uBACA,2BACA,4BACA,sBAEA,kDACE,aACA,sBACA,mBACA,2BACA,uCACA,mBACA,gBACA,YACA,4BACA,4BFpBJ,0BACA,+BACA,kCAIS,6EEiBH,YACA,4BACJ,gDACE,aACA,uBACA,uBACF,+CACE,aACA,sBACA,mBACA,2BACA,cF5BK,0EE8BH,cACF,mDACE,cACA,WACA,YACA,mBACA,uBFpCG,8EEsCD,WACA,YFvCC,mFEyCD,WACJ,iDACE,MH9CI,QG+CJ,eACA,iBACA,kBACA,gBACA,gBFhDG,4EEkDD,eACA,gBFnDC,4EEqDD,eFrDC,iFEuDD,eACN,gDFrEF,YACA,YACA,gBACA,yBACA,eEmEI,aACA,mBACA,uBACA,YACA,eACA,mBACA,iBHrEM,QGsEN,MHpEM,QGqEN,eACA,iBACA,yBACA,wBFrEK,2EEuEH,eACA,YFxEG,2EE0EH,eACA,YF3EG,gFE6EH,eACA,YACA,eCxFJ,0CACE,WACA,YACA,kBACA,OACA,MACA,UACA,kDACE,WACA,YACA,gBACA,2BACA,oDACE,wBACF,yDACE,yBACJ,mDACE,kBACA,UACA,SACA,YACA,aACA,mBACA,uBACA,YACA,mBACA,gCACA,2BHxBN,0BACA,+BACA,kCAIS,8EGqBD,YHrBC,mFGuBD,YACF,0DHrCN,YACA,YACA,gBACA,yBACA,eGmCQ,WACA,YACA,kBACA,iBJtCF,KIuCE,aACA,mBACA,uBACA,kBHjCC,qFGmCC,WACA,YHpCD,qFGsCC,kBACA,WACA,YHxCD,0FG0CC,WACA,YACF,8DACE,cH7CD,yFG+CG,qBH/CH,yFGiDG,sBHjDH,8FGmDG,sBACJ,4EACE,eACN,oDACE,UACF,8CACE,kBACA,UACA,YACA,UACA,mBACA,UACA,uBJzDN,kBACA,0BI0DM,sDACE,WACA,kBACA,WACA,SACA,QACA,gCACA,wBACA,yBACA,sBACA,iBJpFF,KCSG,yEG6ED,UACA,qBACA,yBH/EC,yEGiFD,qBHjFC,8EGmFD,YACA,sBHpFC,iFGuFC,0CACA,SACA,WACA,wFACE,WACA,kBACA,WACA,SACA,QACA,gCACA,YACA,aACA,sCAGE,oGACE,sBHvGP,iFGyGC,wCACJ,sDACE,UACA,oBACF,kDACE,YACA,mBACA,cJhHR,iBACA,yBACA,eACA,uBAOA,mCACA,4BACA,gCACA,wBIsGQ,wDACE,wCACJ,kDACE,kBACA,OACA,MACA,YACA,YACA,UACA,cACA,sBACA,0DACE,UACA,KJrIA,QIsIA,eACA,gEACE,WACN,mDACE,kBACA,OACA,MACA,UACA,WACA,kBACA,0CACA,2CACA,4CACA,0CACA,6CACA,yBACA,UACA,oBACA,2DACE,WACA,kBACA,UACA,SACA,QACA,iDACA,WACA,YACA,iBJjKA,QIkKA,kBACA,yBACA,gCCxKR,0CACE,WACA,YACA,gDJPJ,YACA,YACA,gBACA,yBACA,eIKM,kBACA,SACA,YACA,2BACA,aACA,mBACA,uBACA,sBACA,iBLXD,QKYC,mBACA,YACA,YJPG,2EISD,YACA,YACA,qBACA,YJZC,2EIcD,YACA,YACA,qBJhBC,gFIkBD,YACA,WACA,oBACA,YACF,qDACE,aACA,mBACA,uBACA,kBACA,iBLpCF,KKqCE,kBACA,aJ7BC,gFI+BC,YACA,kBJhCD,gFIkCC,iBJlCD,qFIoCC,YACA,iBACF,yDACE,cACA,kBACA,QACA,WJ1CD,oFI4CG,WACA,QJ7CH,oFI+CG,WACA,MJhDH,yFIkDG,WACN,qDACE,eACA,iBACA,MLzDE,QK0DF,yBACA,WACA,cACA,kBACA,kBACA,QJ5DC,gFI8DC,eJ9DD,gFIgEC,eJhED,qFIkEC,eACA,MAER,sFAEE,WACA,YLlEJ,kBACA,0BKmEI,0GACE,sBACA,uBACA,kBACA,iCACA,kHACE,kBACA,SACA,QACA,gCACA,eACA,gBACA,YACA,aACA,mBACA,UACA,oBL1FR,iBACA,yBACA,eACA,uBKyFQ,gIACE,UAGN,oDACE,YAGF,iDACE,kBACA,UACA,SACA,YACA,2BACA,YACA,aACA,mBACA,uBJ7GG,4EI+GD,YACA,YJhHC,4EIkHD,YJlHC,iFIoHD,YACA,YACF,sDACE,eACA,iBACA,cACA,aJ1HC,iFI4HC,eJ5HD,iFI8HC,eACA,aJ/HD,sFIiIC,eACA,SACN,gDJhJJ,YACA,YACA,gBACA,yBACA,eI8IM,aACA,mBACA,uBACA,YACA,oDACE,WJ1IC,+EI4IC,WJ5ID,+EI8IC,WJ9ID,oFIgJC,WACN,kDACE,kBACA,UACA,UACA,YACA,aACA,mBACA,yBJxJG,6EI0JD,UACA,YJ3JC,kFI6JD,YACJ,iDJ3KJ,YACA,YACA,gBACA,yBACA,eIyKM,WACA,YACA,kBACA,aACA,mBACA,uBACA,iBL7KD,QK8KC,gBJvKG,4EIyKD,gBACA,WACA,YJ3KC,4EI6KD,gBACA,WACA,YJ/KC,iFIiLD,WACA,YACF,qDACE,cACA,WJrLC,gFIuLC,WJvLD,gFIyLC,WJzLD,qFI2LC,WCtMV,mCACE,cACA,kBACA,WACA,YACA,6CACE,kBACA,SACA,QACA,gCACF,uCACE,4CACF,uCACE,kBACA,SACA,WACA,YACA,kBACA,WNZM,QMaN,mDACA,oDACE,SACA,uCACF,oDACE,SACA,uCACF,oDACE,UACA,uCACF,oDACE,UACA,uCAER,2BACE,GACE,mBACF,KACE,oBAEJ,2BACE,GACE,mBACF,KACE,oBAEJ,2BACE,GACE,0BAEF,KACE,8BCjDA,uCACE,WACA,YACA,kBACA,OACA,MACA,UACA,6CACE,WACA,YACA,cACF,gDACE,kBACA,WACA,aACA,UACA,oBNNG,2EMQD,SACA,2BACF,wDACE,UACA","file":"app.css"}
Binary file
Binary file
Binary file