@bonlineza/luxity-lib 2.36.2 → 2.36.4
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/AddProductInterest.js +10 -133
- package/GraphQLDropdownSelector.js +10 -132
- package/Interests.js +10 -133
- package/LuxityDesktopHeader.js +1 -1
- package/LuxityGraphQLDropdownSelector.js +10 -132
- package/LuxityMobileHeader.js +23 -3
- package/MaterialSelector.js +10 -132
- package/ModelSelector.js +10 -132
- package/build/bundle.css +1 -1
- package/build/bundle.js +34 -136
- package/package.json +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react'), require('styled-components'), require('@bonlineza/b-lib/EllipsisLoader'), require('@bonlineza/b-lib/PageReady'), require('react-animate-height'), require('numeral'), require('stylis-rule-sheet'), require('react-dom'), require('prop-types'), require('raf'), require('react-input-autosize'), require('react-transition-group'), require('@bonlineza/b-lib/functions'), require('rc-slider'), require('react-notify-toast'), require('axios')
|
|
3
|
-
typeof define === 'function' && define.amd ? define(['react', 'styled-components', '@bonlineza/b-lib/EllipsisLoader', '@bonlineza/b-lib/PageReady', 'react-animate-height', 'numeral', 'stylis-rule-sheet', 'react-dom', 'prop-types', 'raf', 'react-input-autosize', 'react-transition-group', '@bonlineza/b-lib/functions', 'rc-slider', 'react-notify-toast', 'axios'
|
|
4
|
-
(global = global || self, global.LuxityGraphQLDropdownSelector = factory(global.React, global.styled, global.EllipsisLoader, global.PageReady, global.AnimateHeight, global.numeral, global['stylis-rule-sheet'], global.reactDom, global.PropTypes, global.raf, global['react-input-autosize'], global['react-transition-group'], global.function, global.rcSlider, global['react-notify-toast'], global.axios
|
|
5
|
-
}(this, (function (React, styled, EllipsisLoader, PageReady, AnimateHeight, numeral, stylisRuleSheet, reactDom, PropTypes, raf, AutosizeInput, reactTransitionGroup, functions, rcSlider, Notifications, axios
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react'), require('styled-components'), require('@bonlineza/b-lib/EllipsisLoader'), require('@bonlineza/b-lib/PageReady'), require('react-animate-height'), require('numeral'), require('stylis-rule-sheet'), require('react-dom'), require('prop-types'), require('raf'), require('react-input-autosize'), require('react-transition-group'), require('@bonlineza/b-lib/functions'), require('rc-slider'), require('react-notify-toast'), require('axios')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define(['react', 'styled-components', '@bonlineza/b-lib/EllipsisLoader', '@bonlineza/b-lib/PageReady', 'react-animate-height', 'numeral', 'stylis-rule-sheet', 'react-dom', 'prop-types', 'raf', 'react-input-autosize', 'react-transition-group', '@bonlineza/b-lib/functions', 'rc-slider', 'react-notify-toast', 'axios'], factory) :
|
|
4
|
+
(global = global || self, global.LuxityGraphQLDropdownSelector = factory(global.React, global.styled, global.EllipsisLoader, global.PageReady, global.AnimateHeight, global.numeral, global['stylis-rule-sheet'], global.reactDom, global.PropTypes, global.raf, global['react-input-autosize'], global['react-transition-group'], global.function, global.rcSlider, global['react-notify-toast'], global.axios));
|
|
5
|
+
}(this, (function (React, styled, EllipsisLoader, PageReady, AnimateHeight, numeral, stylisRuleSheet, reactDom, PropTypes, raf, AutosizeInput, reactTransitionGroup, functions, rcSlider, Notifications, axios) { 'use strict';
|
|
6
6
|
|
|
7
7
|
var React__default = 'default' in React ? React['default'] : React;
|
|
8
8
|
var styled__default = 'default' in styled ? styled['default'] : styled;
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
AutosizeInput = AutosizeInput && Object.prototype.hasOwnProperty.call(AutosizeInput, 'default') ? AutosizeInput['default'] : AutosizeInput;
|
|
17
17
|
var Notifications__default = 'default' in Notifications ? Notifications['default'] : Notifications;
|
|
18
18
|
axios = axios && Object.prototype.hasOwnProperty.call(axios, 'default') ? axios['default'] : axios;
|
|
19
|
-
Cookies = Cookies && Object.prototype.hasOwnProperty.call(Cookies, 'default') ? Cookies['default'] : Cookies;
|
|
20
19
|
|
|
21
20
|
function ownKeys(object, enumerableOnly) {
|
|
22
21
|
var keys = Object.keys(object);
|
|
@@ -11009,127 +11008,6 @@
|
|
|
11009
11008
|
}));
|
|
11010
11009
|
});
|
|
11011
11010
|
|
|
11012
|
-
function getToken() {
|
|
11013
|
-
var _Cookies$get;
|
|
11014
|
-
|
|
11015
|
-
return (_Cookies$get = Cookies.get('_tk')) === null || _Cookies$get === void 0 ? void 0 : _Cookies$get.replace('*', 'Bearer ');
|
|
11016
|
-
}
|
|
11017
|
-
function setToken(value) {
|
|
11018
|
-
Cookies.set('_tk', value, 30);
|
|
11019
|
-
}
|
|
11020
|
-
|
|
11021
|
-
/** @format */
|
|
11022
|
-
|
|
11023
|
-
function getEncodedSearch(currentUrl) {
|
|
11024
|
-
var splitUrl = currentUrl.split('?');
|
|
11025
|
-
var baseUrl = splitUrl[0];
|
|
11026
|
-
var nextUrlSegments = splitUrl[1].split('&');
|
|
11027
|
-
var nextQueryString = splitUrl[1];
|
|
11028
|
-
|
|
11029
|
-
if (nextUrlSegments.length > 0) {
|
|
11030
|
-
nextQueryString = nextUrlSegments.map(function (v) {
|
|
11031
|
-
var nextValue = v;
|
|
11032
|
-
|
|
11033
|
-
if (v.includes('search=')) {
|
|
11034
|
-
var temp = v.split('=');
|
|
11035
|
-
nextValue = "".concat(temp[0], "=").concat(encodeURIComponent(temp[1]));
|
|
11036
|
-
}
|
|
11037
|
-
|
|
11038
|
-
return nextValue;
|
|
11039
|
-
}).join('&');
|
|
11040
|
-
}
|
|
11041
|
-
|
|
11042
|
-
return "".concat(baseUrl, "?").concat(nextQueryString);
|
|
11043
|
-
}
|
|
11044
|
-
/**
|
|
11045
|
-
* Gets an instance of Axios that is configured with the custom failure handlers
|
|
11046
|
-
* @param {Function} onAuthFailed - callback triggers when auth fails - ie, server error is one of ['token_invalid', 'token_not_provided', 'user_not_found', 'token_expired'] or http status is one of [401, 503, 400]
|
|
11047
|
-
* @param {Function} onForbidden - callback triggers when http status = 403
|
|
11048
|
-
*/
|
|
11049
|
-
|
|
11050
|
-
|
|
11051
|
-
var axiosInstance = function axiosInstance(onAuthFailed, onForbidden) {
|
|
11052
|
-
var instance = axios.create({
|
|
11053
|
-
validateStatus: function validateStatus(status) {
|
|
11054
|
-
return status >= 200 && status < 300;
|
|
11055
|
-
}
|
|
11056
|
-
});
|
|
11057
|
-
var token = getToken();
|
|
11058
|
-
|
|
11059
|
-
if (token !== '') {
|
|
11060
|
-
instance.defaults.headers.common.Authorization = token;
|
|
11061
|
-
}
|
|
11062
|
-
|
|
11063
|
-
instance.defaults.headers.common['Content-Type'] = 'application/json;charset=UTF-8'; // Add a request interceptor
|
|
11064
|
-
|
|
11065
|
-
instance.interceptors.request.use(function (request, error) {
|
|
11066
|
-
if (error) {
|
|
11067
|
-
return Promise.reject(error.response);
|
|
11068
|
-
}
|
|
11069
|
-
|
|
11070
|
-
if (request.url.includes('search') && request.url.includes('?')) {
|
|
11071
|
-
// do some uri manipulation for ie
|
|
11072
|
-
// https://stackoverflow.com/questions/18220057
|
|
11073
|
-
// eslint-disable-next-line no-param-reassign
|
|
11074
|
-
request.url = getEncodedSearch(request.url);
|
|
11075
|
-
} // eslint-disable-next-line no-param-reassign
|
|
11076
|
-
|
|
11077
|
-
|
|
11078
|
-
request.headers.common['Content-Type'] = 'application/json; charset=utf-8';
|
|
11079
|
-
|
|
11080
|
-
if (typeof request.body === 'undefined') {
|
|
11081
|
-
request.body = {};
|
|
11082
|
-
}
|
|
11083
|
-
|
|
11084
|
-
token = getToken();
|
|
11085
|
-
|
|
11086
|
-
if (token !== '') {
|
|
11087
|
-
// eslint-disable-next-line no-param-reassign
|
|
11088
|
-
request.headers.common.Authorization = token;
|
|
11089
|
-
}
|
|
11090
|
-
|
|
11091
|
-
return request;
|
|
11092
|
-
}, function (error) {
|
|
11093
|
-
return Promise.reject(error.message);
|
|
11094
|
-
}); // Add a response interceptor
|
|
11095
|
-
|
|
11096
|
-
instance.interceptors.response.use(function (response, error) {
|
|
11097
|
-
if (error) {
|
|
11098
|
-
return Promise.reject(error.response);
|
|
11099
|
-
}
|
|
11100
|
-
|
|
11101
|
-
if (response.headers.authorization) {
|
|
11102
|
-
setToken(response.headers.authorization);
|
|
11103
|
-
}
|
|
11104
|
-
|
|
11105
|
-
return response;
|
|
11106
|
-
}, function (error) {
|
|
11107
|
-
if (error.response) {
|
|
11108
|
-
// network error
|
|
11109
|
-
if (error.response.data && error.response.data.error && (error.response.data.error === 'token_invalid' || error.response.data.error === 'token_not_provided' || error.response.data.error === 'user_not_found' || error.response.data.error === 'token_expired') || error.response.status === 401 || error.response.status === 503 || error.response.status === 400) {
|
|
11110
|
-
onAuthFailed();
|
|
11111
|
-
} // if (error.response.status === 500) {
|
|
11112
|
-
// // INTERNAL SERVER ERROR
|
|
11113
|
-
// store.dispatch({
|
|
11114
|
-
// type: AppConstants.OVERLAY.SERVER_ERROR,
|
|
11115
|
-
// });
|
|
11116
|
-
// return Promise.reject(error.response);
|
|
11117
|
-
// }
|
|
11118
|
-
|
|
11119
|
-
|
|
11120
|
-
if (error.response.status === 403) {
|
|
11121
|
-
// FORBIDDEN
|
|
11122
|
-
onForbidden();
|
|
11123
|
-
}
|
|
11124
|
-
|
|
11125
|
-
return Promise.reject(error.response);
|
|
11126
|
-
}
|
|
11127
|
-
|
|
11128
|
-
return Promise.reject(error);
|
|
11129
|
-
});
|
|
11130
|
-
return instance;
|
|
11131
|
-
}; // NOTE: this to be instanciated with params: onAuthFailed, onForbidden
|
|
11132
|
-
|
|
11133
11011
|
var _excluded$8 = ["children"];
|
|
11134
11012
|
|
|
11135
11013
|
var DropdownSelector = function DropdownSelector(_ref) {
|
|
@@ -11351,7 +11229,7 @@
|
|
|
11351
11229
|
case 0:
|
|
11352
11230
|
_context.prev = 0;
|
|
11353
11231
|
_context.next = 3;
|
|
11354
|
-
return
|
|
11232
|
+
return requestInstance.post("".concat(baseGraphApi, "?id=getBrands"), {
|
|
11355
11233
|
query: getBrandsGraphQuery(1000, 1, 'id|desc')
|
|
11356
11234
|
});
|
|
11357
11235
|
|
|
@@ -11382,7 +11260,7 @@
|
|
|
11382
11260
|
}
|
|
11383
11261
|
}
|
|
11384
11262
|
}, _callee, null, [[0, 7]]);
|
|
11385
|
-
})), [baseGraphApi, getBrandsGraphQuery]);
|
|
11263
|
+
})), [baseGraphApi, getBrandsGraphQuery, requestInstance]);
|
|
11386
11264
|
var fetchModels = React.useCallback( /*#__PURE__*/function () {
|
|
11387
11265
|
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(brandId) {
|
|
11388
11266
|
var _response$data2, _response$data2$data, _response$data2$data$, response, formattedModels;
|
|
@@ -11393,7 +11271,7 @@
|
|
|
11393
11271
|
case 0:
|
|
11394
11272
|
_context2.prev = 0;
|
|
11395
11273
|
_context2.next = 3;
|
|
11396
|
-
return
|
|
11274
|
+
return requestInstance.post("".concat(baseGraphApi, "?id=getModels"), {
|
|
11397
11275
|
query: getModelsGraphQuery(brandId)
|
|
11398
11276
|
});
|
|
11399
11277
|
|
|
@@ -11429,7 +11307,7 @@
|
|
|
11429
11307
|
return function (_x) {
|
|
11430
11308
|
return _ref3.apply(this, arguments);
|
|
11431
11309
|
};
|
|
11432
|
-
}(), [baseGraphApi, getModelsGraphQuery]);
|
|
11310
|
+
}(), [baseGraphApi, getModelsGraphQuery, requestInstance]);
|
|
11433
11311
|
var fetchMaterials = React.useCallback( /*#__PURE__*/function () {
|
|
11434
11312
|
var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(brandId) {
|
|
11435
11313
|
var _response$data3, _response$data3$data, _response$data3$data$, response, formattedMaterials;
|
|
@@ -11440,7 +11318,7 @@
|
|
|
11440
11318
|
case 0:
|
|
11441
11319
|
_context3.prev = 0;
|
|
11442
11320
|
_context3.next = 3;
|
|
11443
|
-
return
|
|
11321
|
+
return requestInstance.post("".concat(baseGraphApi, "?id=getMaterials"), {
|
|
11444
11322
|
query: getMaterialsGraphQuery(brandId)
|
|
11445
11323
|
});
|
|
11446
11324
|
|
|
@@ -11476,7 +11354,7 @@
|
|
|
11476
11354
|
return function (_x2) {
|
|
11477
11355
|
return _ref4.apply(this, arguments);
|
|
11478
11356
|
};
|
|
11479
|
-
}(), [baseGraphApi, getMaterialsGraphQuery]);
|
|
11357
|
+
}(), [baseGraphApi, getMaterialsGraphQuery, requestInstance]);
|
|
11480
11358
|
React.useEffect(function () {
|
|
11481
11359
|
fetchBrands();
|
|
11482
11360
|
}, [fetchBrands]);
|
package/LuxityMobileHeader.js
CHANGED
|
@@ -1310,7 +1310,8 @@
|
|
|
1310
1310
|
LinkComponent = _ref.LinkComponent,
|
|
1311
1311
|
shop = _ref.shop,
|
|
1312
1312
|
app = _ref.app,
|
|
1313
|
-
categoryConfig = _ref.categoryConfig
|
|
1313
|
+
categoryConfig = _ref.categoryConfig,
|
|
1314
|
+
name = _ref.name;
|
|
1314
1315
|
|
|
1315
1316
|
var _useSearch = useSearch({
|
|
1316
1317
|
endpoint: endpoint,
|
|
@@ -1486,6 +1487,14 @@
|
|
|
1486
1487
|
var handleBlogClick = onBlogClick ? function () {
|
|
1487
1488
|
return handleClick(onBlogClick);
|
|
1488
1489
|
} : undefined;
|
|
1490
|
+
|
|
1491
|
+
var getInitials = function getInitials(fullName) {
|
|
1492
|
+
if (!fullName) return '';
|
|
1493
|
+
return fullName.split(' ').map(function (n) {
|
|
1494
|
+
return n[0];
|
|
1495
|
+
}).join('').slice(0, 2);
|
|
1496
|
+
};
|
|
1497
|
+
|
|
1489
1498
|
return /*#__PURE__*/React__default.createElement(React.Fragment, null, /*#__PURE__*/React__default.createElement("div", {
|
|
1490
1499
|
className: "navbar navbar__mobile-wrapper"
|
|
1491
1500
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
@@ -1531,9 +1540,20 @@
|
|
|
1531
1540
|
alt: "cart-icon",
|
|
1532
1541
|
width: 20,
|
|
1533
1542
|
height: 20
|
|
1534
|
-
}), shop && /*#__PURE__*/React__default.createElement("div", {
|
|
1543
|
+
}), shop && cartCount > 0 && /*#__PURE__*/React__default.createElement("div", {
|
|
1535
1544
|
className: "navbar__cart-count"
|
|
1536
|
-
}, cartCount))
|
|
1545
|
+
}, cartCount)), shop && /*#__PURE__*/React__default.createElement("button", {
|
|
1546
|
+
type: "button",
|
|
1547
|
+
className: "navbar__icon",
|
|
1548
|
+
onClick: handleAccountClick
|
|
1549
|
+
}, name ? /*#__PURE__*/React__default.createElement("div", {
|
|
1550
|
+
className: "navbar__account-initials"
|
|
1551
|
+
}, getInitials(name)) : /*#__PURE__*/React__default.createElement("img", {
|
|
1552
|
+
src: accountIcon,
|
|
1553
|
+
alt: "account-icon",
|
|
1554
|
+
width: 20,
|
|
1555
|
+
height: 20
|
|
1556
|
+
}))))), showSearchBar && /*#__PURE__*/React__default.createElement("div", {
|
|
1537
1557
|
className: "navbar__search-container"
|
|
1538
1558
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
1539
1559
|
className: "navbar__product-search-wrapper"
|
package/MaterialSelector.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react'), require('styled-components'), require('@bonlineza/b-lib/EllipsisLoader'), require('@bonlineza/b-lib/PageReady'), require('react-animate-height'), require('numeral'), require('stylis-rule-sheet'), require('react-dom'), require('prop-types'), require('raf'), require('react-input-autosize'), require('react-transition-group'), require('@bonlineza/b-lib/functions'), require('rc-slider'), require('react-notify-toast'), require('axios')
|
|
3
|
-
typeof define === 'function' && define.amd ? define(['react', 'styled-components', '@bonlineza/b-lib/EllipsisLoader', '@bonlineza/b-lib/PageReady', 'react-animate-height', 'numeral', 'stylis-rule-sheet', 'react-dom', 'prop-types', 'raf', 'react-input-autosize', 'react-transition-group', '@bonlineza/b-lib/functions', 'rc-slider', 'react-notify-toast', 'axios'
|
|
4
|
-
(global = global || self, global.MaterialSelector = factory(global.React, global.styled, global.EllipsisLoader, global.PageReady, global.AnimateHeight, global.numeral, global['stylis-rule-sheet'], global.reactDom, global.PropTypes, global.raf, global['react-input-autosize'], global['react-transition-group'], global.function, global.rcSlider, global['react-notify-toast'], global.axios
|
|
5
|
-
}(this, (function (React, styled, EllipsisLoader, PageReady, AnimateHeight, numeral, stylisRuleSheet, reactDom, PropTypes, raf, AutosizeInput, reactTransitionGroup, functions, rcSlider, Notifications, axios
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react'), require('styled-components'), require('@bonlineza/b-lib/EllipsisLoader'), require('@bonlineza/b-lib/PageReady'), require('react-animate-height'), require('numeral'), require('stylis-rule-sheet'), require('react-dom'), require('prop-types'), require('raf'), require('react-input-autosize'), require('react-transition-group'), require('@bonlineza/b-lib/functions'), require('rc-slider'), require('react-notify-toast'), require('axios')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define(['react', 'styled-components', '@bonlineza/b-lib/EllipsisLoader', '@bonlineza/b-lib/PageReady', 'react-animate-height', 'numeral', 'stylis-rule-sheet', 'react-dom', 'prop-types', 'raf', 'react-input-autosize', 'react-transition-group', '@bonlineza/b-lib/functions', 'rc-slider', 'react-notify-toast', 'axios'], factory) :
|
|
4
|
+
(global = global || self, global.MaterialSelector = factory(global.React, global.styled, global.EllipsisLoader, global.PageReady, global.AnimateHeight, global.numeral, global['stylis-rule-sheet'], global.reactDom, global.PropTypes, global.raf, global['react-input-autosize'], global['react-transition-group'], global.function, global.rcSlider, global['react-notify-toast'], global.axios));
|
|
5
|
+
}(this, (function (React, styled, EllipsisLoader, PageReady, AnimateHeight, numeral, stylisRuleSheet, reactDom, PropTypes, raf, AutosizeInput, reactTransitionGroup, functions, rcSlider, Notifications, axios) { 'use strict';
|
|
6
6
|
|
|
7
7
|
var React__default = 'default' in React ? React['default'] : React;
|
|
8
8
|
var styled__default = 'default' in styled ? styled['default'] : styled;
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
AutosizeInput = AutosizeInput && Object.prototype.hasOwnProperty.call(AutosizeInput, 'default') ? AutosizeInput['default'] : AutosizeInput;
|
|
17
17
|
var Notifications__default = 'default' in Notifications ? Notifications['default'] : Notifications;
|
|
18
18
|
axios = axios && Object.prototype.hasOwnProperty.call(axios, 'default') ? axios['default'] : axios;
|
|
19
|
-
Cookies = Cookies && Object.prototype.hasOwnProperty.call(Cookies, 'default') ? Cookies['default'] : Cookies;
|
|
20
19
|
|
|
21
20
|
function ownKeys(object, enumerableOnly) {
|
|
22
21
|
var keys = Object.keys(object);
|
|
@@ -11009,127 +11008,6 @@
|
|
|
11009
11008
|
}));
|
|
11010
11009
|
});
|
|
11011
11010
|
|
|
11012
|
-
function getToken() {
|
|
11013
|
-
var _Cookies$get;
|
|
11014
|
-
|
|
11015
|
-
return (_Cookies$get = Cookies.get('_tk')) === null || _Cookies$get === void 0 ? void 0 : _Cookies$get.replace('*', 'Bearer ');
|
|
11016
|
-
}
|
|
11017
|
-
function setToken(value) {
|
|
11018
|
-
Cookies.set('_tk', value, 30);
|
|
11019
|
-
}
|
|
11020
|
-
|
|
11021
|
-
/** @format */
|
|
11022
|
-
|
|
11023
|
-
function getEncodedSearch(currentUrl) {
|
|
11024
|
-
var splitUrl = currentUrl.split('?');
|
|
11025
|
-
var baseUrl = splitUrl[0];
|
|
11026
|
-
var nextUrlSegments = splitUrl[1].split('&');
|
|
11027
|
-
var nextQueryString = splitUrl[1];
|
|
11028
|
-
|
|
11029
|
-
if (nextUrlSegments.length > 0) {
|
|
11030
|
-
nextQueryString = nextUrlSegments.map(function (v) {
|
|
11031
|
-
var nextValue = v;
|
|
11032
|
-
|
|
11033
|
-
if (v.includes('search=')) {
|
|
11034
|
-
var temp = v.split('=');
|
|
11035
|
-
nextValue = "".concat(temp[0], "=").concat(encodeURIComponent(temp[1]));
|
|
11036
|
-
}
|
|
11037
|
-
|
|
11038
|
-
return nextValue;
|
|
11039
|
-
}).join('&');
|
|
11040
|
-
}
|
|
11041
|
-
|
|
11042
|
-
return "".concat(baseUrl, "?").concat(nextQueryString);
|
|
11043
|
-
}
|
|
11044
|
-
/**
|
|
11045
|
-
* Gets an instance of Axios that is configured with the custom failure handlers
|
|
11046
|
-
* @param {Function} onAuthFailed - callback triggers when auth fails - ie, server error is one of ['token_invalid', 'token_not_provided', 'user_not_found', 'token_expired'] or http status is one of [401, 503, 400]
|
|
11047
|
-
* @param {Function} onForbidden - callback triggers when http status = 403
|
|
11048
|
-
*/
|
|
11049
|
-
|
|
11050
|
-
|
|
11051
|
-
var axiosInstance = function axiosInstance(onAuthFailed, onForbidden) {
|
|
11052
|
-
var instance = axios.create({
|
|
11053
|
-
validateStatus: function validateStatus(status) {
|
|
11054
|
-
return status >= 200 && status < 300;
|
|
11055
|
-
}
|
|
11056
|
-
});
|
|
11057
|
-
var token = getToken();
|
|
11058
|
-
|
|
11059
|
-
if (token !== '') {
|
|
11060
|
-
instance.defaults.headers.common.Authorization = token;
|
|
11061
|
-
}
|
|
11062
|
-
|
|
11063
|
-
instance.defaults.headers.common['Content-Type'] = 'application/json;charset=UTF-8'; // Add a request interceptor
|
|
11064
|
-
|
|
11065
|
-
instance.interceptors.request.use(function (request, error) {
|
|
11066
|
-
if (error) {
|
|
11067
|
-
return Promise.reject(error.response);
|
|
11068
|
-
}
|
|
11069
|
-
|
|
11070
|
-
if (request.url.includes('search') && request.url.includes('?')) {
|
|
11071
|
-
// do some uri manipulation for ie
|
|
11072
|
-
// https://stackoverflow.com/questions/18220057
|
|
11073
|
-
// eslint-disable-next-line no-param-reassign
|
|
11074
|
-
request.url = getEncodedSearch(request.url);
|
|
11075
|
-
} // eslint-disable-next-line no-param-reassign
|
|
11076
|
-
|
|
11077
|
-
|
|
11078
|
-
request.headers.common['Content-Type'] = 'application/json; charset=utf-8';
|
|
11079
|
-
|
|
11080
|
-
if (typeof request.body === 'undefined') {
|
|
11081
|
-
request.body = {};
|
|
11082
|
-
}
|
|
11083
|
-
|
|
11084
|
-
token = getToken();
|
|
11085
|
-
|
|
11086
|
-
if (token !== '') {
|
|
11087
|
-
// eslint-disable-next-line no-param-reassign
|
|
11088
|
-
request.headers.common.Authorization = token;
|
|
11089
|
-
}
|
|
11090
|
-
|
|
11091
|
-
return request;
|
|
11092
|
-
}, function (error) {
|
|
11093
|
-
return Promise.reject(error.message);
|
|
11094
|
-
}); // Add a response interceptor
|
|
11095
|
-
|
|
11096
|
-
instance.interceptors.response.use(function (response, error) {
|
|
11097
|
-
if (error) {
|
|
11098
|
-
return Promise.reject(error.response);
|
|
11099
|
-
}
|
|
11100
|
-
|
|
11101
|
-
if (response.headers.authorization) {
|
|
11102
|
-
setToken(response.headers.authorization);
|
|
11103
|
-
}
|
|
11104
|
-
|
|
11105
|
-
return response;
|
|
11106
|
-
}, function (error) {
|
|
11107
|
-
if (error.response) {
|
|
11108
|
-
// network error
|
|
11109
|
-
if (error.response.data && error.response.data.error && (error.response.data.error === 'token_invalid' || error.response.data.error === 'token_not_provided' || error.response.data.error === 'user_not_found' || error.response.data.error === 'token_expired') || error.response.status === 401 || error.response.status === 503 || error.response.status === 400) {
|
|
11110
|
-
onAuthFailed();
|
|
11111
|
-
} // if (error.response.status === 500) {
|
|
11112
|
-
// // INTERNAL SERVER ERROR
|
|
11113
|
-
// store.dispatch({
|
|
11114
|
-
// type: AppConstants.OVERLAY.SERVER_ERROR,
|
|
11115
|
-
// });
|
|
11116
|
-
// return Promise.reject(error.response);
|
|
11117
|
-
// }
|
|
11118
|
-
|
|
11119
|
-
|
|
11120
|
-
if (error.response.status === 403) {
|
|
11121
|
-
// FORBIDDEN
|
|
11122
|
-
onForbidden();
|
|
11123
|
-
}
|
|
11124
|
-
|
|
11125
|
-
return Promise.reject(error.response);
|
|
11126
|
-
}
|
|
11127
|
-
|
|
11128
|
-
return Promise.reject(error);
|
|
11129
|
-
});
|
|
11130
|
-
return instance;
|
|
11131
|
-
}; // NOTE: this to be instanciated with params: onAuthFailed, onForbidden
|
|
11132
|
-
|
|
11133
11011
|
var _excluded$8 = ["children"];
|
|
11134
11012
|
|
|
11135
11013
|
var DropdownSelector = function DropdownSelector(_ref) {
|
|
@@ -11351,7 +11229,7 @@
|
|
|
11351
11229
|
case 0:
|
|
11352
11230
|
_context.prev = 0;
|
|
11353
11231
|
_context.next = 3;
|
|
11354
|
-
return
|
|
11232
|
+
return requestInstance.post("".concat(baseGraphApi, "?id=getBrands"), {
|
|
11355
11233
|
query: getBrandsGraphQuery(1000, 1, 'id|desc')
|
|
11356
11234
|
});
|
|
11357
11235
|
|
|
@@ -11382,7 +11260,7 @@
|
|
|
11382
11260
|
}
|
|
11383
11261
|
}
|
|
11384
11262
|
}, _callee, null, [[0, 7]]);
|
|
11385
|
-
})), [baseGraphApi, getBrandsGraphQuery]);
|
|
11263
|
+
})), [baseGraphApi, getBrandsGraphQuery, requestInstance]);
|
|
11386
11264
|
var fetchModels = React.useCallback( /*#__PURE__*/function () {
|
|
11387
11265
|
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(brandId) {
|
|
11388
11266
|
var _response$data2, _response$data2$data, _response$data2$data$, response, formattedModels;
|
|
@@ -11393,7 +11271,7 @@
|
|
|
11393
11271
|
case 0:
|
|
11394
11272
|
_context2.prev = 0;
|
|
11395
11273
|
_context2.next = 3;
|
|
11396
|
-
return
|
|
11274
|
+
return requestInstance.post("".concat(baseGraphApi, "?id=getModels"), {
|
|
11397
11275
|
query: getModelsGraphQuery(brandId)
|
|
11398
11276
|
});
|
|
11399
11277
|
|
|
@@ -11429,7 +11307,7 @@
|
|
|
11429
11307
|
return function (_x) {
|
|
11430
11308
|
return _ref3.apply(this, arguments);
|
|
11431
11309
|
};
|
|
11432
|
-
}(), [baseGraphApi, getModelsGraphQuery]);
|
|
11310
|
+
}(), [baseGraphApi, getModelsGraphQuery, requestInstance]);
|
|
11433
11311
|
var fetchMaterials = React.useCallback( /*#__PURE__*/function () {
|
|
11434
11312
|
var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(brandId) {
|
|
11435
11313
|
var _response$data3, _response$data3$data, _response$data3$data$, response, formattedMaterials;
|
|
@@ -11440,7 +11318,7 @@
|
|
|
11440
11318
|
case 0:
|
|
11441
11319
|
_context3.prev = 0;
|
|
11442
11320
|
_context3.next = 3;
|
|
11443
|
-
return
|
|
11321
|
+
return requestInstance.post("".concat(baseGraphApi, "?id=getMaterials"), {
|
|
11444
11322
|
query: getMaterialsGraphQuery(brandId)
|
|
11445
11323
|
});
|
|
11446
11324
|
|
|
@@ -11476,7 +11354,7 @@
|
|
|
11476
11354
|
return function (_x2) {
|
|
11477
11355
|
return _ref4.apply(this, arguments);
|
|
11478
11356
|
};
|
|
11479
|
-
}(), [baseGraphApi, getMaterialsGraphQuery]);
|
|
11357
|
+
}(), [baseGraphApi, getMaterialsGraphQuery, requestInstance]);
|
|
11480
11358
|
React.useEffect(function () {
|
|
11481
11359
|
fetchBrands();
|
|
11482
11360
|
}, [fetchBrands]);
|
package/ModelSelector.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react'), require('styled-components'), require('@bonlineza/b-lib/EllipsisLoader'), require('@bonlineza/b-lib/PageReady'), require('react-animate-height'), require('numeral'), require('stylis-rule-sheet'), require('react-dom'), require('prop-types'), require('raf'), require('react-input-autosize'), require('react-transition-group'), require('@bonlineza/b-lib/functions'), require('rc-slider'), require('react-notify-toast'), require('axios')
|
|
3
|
-
typeof define === 'function' && define.amd ? define(['react', 'styled-components', '@bonlineza/b-lib/EllipsisLoader', '@bonlineza/b-lib/PageReady', 'react-animate-height', 'numeral', 'stylis-rule-sheet', 'react-dom', 'prop-types', 'raf', 'react-input-autosize', 'react-transition-group', '@bonlineza/b-lib/functions', 'rc-slider', 'react-notify-toast', 'axios'
|
|
4
|
-
(global = global || self, global.ModelSelector = factory(global.React, global.styled, global.EllipsisLoader, global.PageReady, global.AnimateHeight, global.numeral, global['stylis-rule-sheet'], global.reactDom, global.PropTypes, global.raf, global['react-input-autosize'], global['react-transition-group'], global.function, global.rcSlider, global['react-notify-toast'], global.axios
|
|
5
|
-
}(this, (function (React, styled, EllipsisLoader, PageReady, AnimateHeight, numeral, stylisRuleSheet, reactDom, PropTypes, raf, AutosizeInput, reactTransitionGroup, functions, rcSlider, Notifications, axios
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react'), require('styled-components'), require('@bonlineza/b-lib/EllipsisLoader'), require('@bonlineza/b-lib/PageReady'), require('react-animate-height'), require('numeral'), require('stylis-rule-sheet'), require('react-dom'), require('prop-types'), require('raf'), require('react-input-autosize'), require('react-transition-group'), require('@bonlineza/b-lib/functions'), require('rc-slider'), require('react-notify-toast'), require('axios')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define(['react', 'styled-components', '@bonlineza/b-lib/EllipsisLoader', '@bonlineza/b-lib/PageReady', 'react-animate-height', 'numeral', 'stylis-rule-sheet', 'react-dom', 'prop-types', 'raf', 'react-input-autosize', 'react-transition-group', '@bonlineza/b-lib/functions', 'rc-slider', 'react-notify-toast', 'axios'], factory) :
|
|
4
|
+
(global = global || self, global.ModelSelector = factory(global.React, global.styled, global.EllipsisLoader, global.PageReady, global.AnimateHeight, global.numeral, global['stylis-rule-sheet'], global.reactDom, global.PropTypes, global.raf, global['react-input-autosize'], global['react-transition-group'], global.function, global.rcSlider, global['react-notify-toast'], global.axios));
|
|
5
|
+
}(this, (function (React, styled, EllipsisLoader, PageReady, AnimateHeight, numeral, stylisRuleSheet, reactDom, PropTypes, raf, AutosizeInput, reactTransitionGroup, functions, rcSlider, Notifications, axios) { 'use strict';
|
|
6
6
|
|
|
7
7
|
var React__default = 'default' in React ? React['default'] : React;
|
|
8
8
|
var styled__default = 'default' in styled ? styled['default'] : styled;
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
AutosizeInput = AutosizeInput && Object.prototype.hasOwnProperty.call(AutosizeInput, 'default') ? AutosizeInput['default'] : AutosizeInput;
|
|
17
17
|
var Notifications__default = 'default' in Notifications ? Notifications['default'] : Notifications;
|
|
18
18
|
axios = axios && Object.prototype.hasOwnProperty.call(axios, 'default') ? axios['default'] : axios;
|
|
19
|
-
Cookies = Cookies && Object.prototype.hasOwnProperty.call(Cookies, 'default') ? Cookies['default'] : Cookies;
|
|
20
19
|
|
|
21
20
|
function ownKeys(object, enumerableOnly) {
|
|
22
21
|
var keys = Object.keys(object);
|
|
@@ -11009,127 +11008,6 @@
|
|
|
11009
11008
|
}));
|
|
11010
11009
|
});
|
|
11011
11010
|
|
|
11012
|
-
function getToken() {
|
|
11013
|
-
var _Cookies$get;
|
|
11014
|
-
|
|
11015
|
-
return (_Cookies$get = Cookies.get('_tk')) === null || _Cookies$get === void 0 ? void 0 : _Cookies$get.replace('*', 'Bearer ');
|
|
11016
|
-
}
|
|
11017
|
-
function setToken(value) {
|
|
11018
|
-
Cookies.set('_tk', value, 30);
|
|
11019
|
-
}
|
|
11020
|
-
|
|
11021
|
-
/** @format */
|
|
11022
|
-
|
|
11023
|
-
function getEncodedSearch(currentUrl) {
|
|
11024
|
-
var splitUrl = currentUrl.split('?');
|
|
11025
|
-
var baseUrl = splitUrl[0];
|
|
11026
|
-
var nextUrlSegments = splitUrl[1].split('&');
|
|
11027
|
-
var nextQueryString = splitUrl[1];
|
|
11028
|
-
|
|
11029
|
-
if (nextUrlSegments.length > 0) {
|
|
11030
|
-
nextQueryString = nextUrlSegments.map(function (v) {
|
|
11031
|
-
var nextValue = v;
|
|
11032
|
-
|
|
11033
|
-
if (v.includes('search=')) {
|
|
11034
|
-
var temp = v.split('=');
|
|
11035
|
-
nextValue = "".concat(temp[0], "=").concat(encodeURIComponent(temp[1]));
|
|
11036
|
-
}
|
|
11037
|
-
|
|
11038
|
-
return nextValue;
|
|
11039
|
-
}).join('&');
|
|
11040
|
-
}
|
|
11041
|
-
|
|
11042
|
-
return "".concat(baseUrl, "?").concat(nextQueryString);
|
|
11043
|
-
}
|
|
11044
|
-
/**
|
|
11045
|
-
* Gets an instance of Axios that is configured with the custom failure handlers
|
|
11046
|
-
* @param {Function} onAuthFailed - callback triggers when auth fails - ie, server error is one of ['token_invalid', 'token_not_provided', 'user_not_found', 'token_expired'] or http status is one of [401, 503, 400]
|
|
11047
|
-
* @param {Function} onForbidden - callback triggers when http status = 403
|
|
11048
|
-
*/
|
|
11049
|
-
|
|
11050
|
-
|
|
11051
|
-
var axiosInstance = function axiosInstance(onAuthFailed, onForbidden) {
|
|
11052
|
-
var instance = axios.create({
|
|
11053
|
-
validateStatus: function validateStatus(status) {
|
|
11054
|
-
return status >= 200 && status < 300;
|
|
11055
|
-
}
|
|
11056
|
-
});
|
|
11057
|
-
var token = getToken();
|
|
11058
|
-
|
|
11059
|
-
if (token !== '') {
|
|
11060
|
-
instance.defaults.headers.common.Authorization = token;
|
|
11061
|
-
}
|
|
11062
|
-
|
|
11063
|
-
instance.defaults.headers.common['Content-Type'] = 'application/json;charset=UTF-8'; // Add a request interceptor
|
|
11064
|
-
|
|
11065
|
-
instance.interceptors.request.use(function (request, error) {
|
|
11066
|
-
if (error) {
|
|
11067
|
-
return Promise.reject(error.response);
|
|
11068
|
-
}
|
|
11069
|
-
|
|
11070
|
-
if (request.url.includes('search') && request.url.includes('?')) {
|
|
11071
|
-
// do some uri manipulation for ie
|
|
11072
|
-
// https://stackoverflow.com/questions/18220057
|
|
11073
|
-
// eslint-disable-next-line no-param-reassign
|
|
11074
|
-
request.url = getEncodedSearch(request.url);
|
|
11075
|
-
} // eslint-disable-next-line no-param-reassign
|
|
11076
|
-
|
|
11077
|
-
|
|
11078
|
-
request.headers.common['Content-Type'] = 'application/json; charset=utf-8';
|
|
11079
|
-
|
|
11080
|
-
if (typeof request.body === 'undefined') {
|
|
11081
|
-
request.body = {};
|
|
11082
|
-
}
|
|
11083
|
-
|
|
11084
|
-
token = getToken();
|
|
11085
|
-
|
|
11086
|
-
if (token !== '') {
|
|
11087
|
-
// eslint-disable-next-line no-param-reassign
|
|
11088
|
-
request.headers.common.Authorization = token;
|
|
11089
|
-
}
|
|
11090
|
-
|
|
11091
|
-
return request;
|
|
11092
|
-
}, function (error) {
|
|
11093
|
-
return Promise.reject(error.message);
|
|
11094
|
-
}); // Add a response interceptor
|
|
11095
|
-
|
|
11096
|
-
instance.interceptors.response.use(function (response, error) {
|
|
11097
|
-
if (error) {
|
|
11098
|
-
return Promise.reject(error.response);
|
|
11099
|
-
}
|
|
11100
|
-
|
|
11101
|
-
if (response.headers.authorization) {
|
|
11102
|
-
setToken(response.headers.authorization);
|
|
11103
|
-
}
|
|
11104
|
-
|
|
11105
|
-
return response;
|
|
11106
|
-
}, function (error) {
|
|
11107
|
-
if (error.response) {
|
|
11108
|
-
// network error
|
|
11109
|
-
if (error.response.data && error.response.data.error && (error.response.data.error === 'token_invalid' || error.response.data.error === 'token_not_provided' || error.response.data.error === 'user_not_found' || error.response.data.error === 'token_expired') || error.response.status === 401 || error.response.status === 503 || error.response.status === 400) {
|
|
11110
|
-
onAuthFailed();
|
|
11111
|
-
} // if (error.response.status === 500) {
|
|
11112
|
-
// // INTERNAL SERVER ERROR
|
|
11113
|
-
// store.dispatch({
|
|
11114
|
-
// type: AppConstants.OVERLAY.SERVER_ERROR,
|
|
11115
|
-
// });
|
|
11116
|
-
// return Promise.reject(error.response);
|
|
11117
|
-
// }
|
|
11118
|
-
|
|
11119
|
-
|
|
11120
|
-
if (error.response.status === 403) {
|
|
11121
|
-
// FORBIDDEN
|
|
11122
|
-
onForbidden();
|
|
11123
|
-
}
|
|
11124
|
-
|
|
11125
|
-
return Promise.reject(error.response);
|
|
11126
|
-
}
|
|
11127
|
-
|
|
11128
|
-
return Promise.reject(error);
|
|
11129
|
-
});
|
|
11130
|
-
return instance;
|
|
11131
|
-
}; // NOTE: this to be instanciated with params: onAuthFailed, onForbidden
|
|
11132
|
-
|
|
11133
11011
|
var _excluded$8 = ["children"];
|
|
11134
11012
|
|
|
11135
11013
|
var DropdownSelector = function DropdownSelector(_ref) {
|
|
@@ -11351,7 +11229,7 @@
|
|
|
11351
11229
|
case 0:
|
|
11352
11230
|
_context.prev = 0;
|
|
11353
11231
|
_context.next = 3;
|
|
11354
|
-
return
|
|
11232
|
+
return requestInstance.post("".concat(baseGraphApi, "?id=getBrands"), {
|
|
11355
11233
|
query: getBrandsGraphQuery(1000, 1, 'id|desc')
|
|
11356
11234
|
});
|
|
11357
11235
|
|
|
@@ -11382,7 +11260,7 @@
|
|
|
11382
11260
|
}
|
|
11383
11261
|
}
|
|
11384
11262
|
}, _callee, null, [[0, 7]]);
|
|
11385
|
-
})), [baseGraphApi, getBrandsGraphQuery]);
|
|
11263
|
+
})), [baseGraphApi, getBrandsGraphQuery, requestInstance]);
|
|
11386
11264
|
var fetchModels = React.useCallback( /*#__PURE__*/function () {
|
|
11387
11265
|
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(brandId) {
|
|
11388
11266
|
var _response$data2, _response$data2$data, _response$data2$data$, response, formattedModels;
|
|
@@ -11393,7 +11271,7 @@
|
|
|
11393
11271
|
case 0:
|
|
11394
11272
|
_context2.prev = 0;
|
|
11395
11273
|
_context2.next = 3;
|
|
11396
|
-
return
|
|
11274
|
+
return requestInstance.post("".concat(baseGraphApi, "?id=getModels"), {
|
|
11397
11275
|
query: getModelsGraphQuery(brandId)
|
|
11398
11276
|
});
|
|
11399
11277
|
|
|
@@ -11429,7 +11307,7 @@
|
|
|
11429
11307
|
return function (_x) {
|
|
11430
11308
|
return _ref3.apply(this, arguments);
|
|
11431
11309
|
};
|
|
11432
|
-
}(), [baseGraphApi, getModelsGraphQuery]);
|
|
11310
|
+
}(), [baseGraphApi, getModelsGraphQuery, requestInstance]);
|
|
11433
11311
|
var fetchMaterials = React.useCallback( /*#__PURE__*/function () {
|
|
11434
11312
|
var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(brandId) {
|
|
11435
11313
|
var _response$data3, _response$data3$data, _response$data3$data$, response, formattedMaterials;
|
|
@@ -11440,7 +11318,7 @@
|
|
|
11440
11318
|
case 0:
|
|
11441
11319
|
_context3.prev = 0;
|
|
11442
11320
|
_context3.next = 3;
|
|
11443
|
-
return
|
|
11321
|
+
return requestInstance.post("".concat(baseGraphApi, "?id=getMaterials"), {
|
|
11444
11322
|
query: getMaterialsGraphQuery(brandId)
|
|
11445
11323
|
});
|
|
11446
11324
|
|
|
@@ -11476,7 +11354,7 @@
|
|
|
11476
11354
|
return function (_x2) {
|
|
11477
11355
|
return _ref4.apply(this, arguments);
|
|
11478
11356
|
};
|
|
11479
|
-
}(), [baseGraphApi, getMaterialsGraphQuery]);
|
|
11357
|
+
}(), [baseGraphApi, getMaterialsGraphQuery, requestInstance]);
|
|
11480
11358
|
React.useEffect(function () {
|
|
11481
11359
|
fetchBrands();
|
|
11482
11360
|
}, [fetchBrands]);
|