@gobizweb/core 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (211) hide show
  1. package/README.md +56 -0
  2. package/assets/icons/arrow_left.svg +1 -0
  3. package/assets/icons/right_pointing.svg +1 -0
  4. package/assets/icons/thumb-up.svg +1 -0
  5. package/assets/images/server_error_dino.svg +1 -0
  6. package/assets/images/spot_hero_empty_list.svg +1 -0
  7. package/lib/bootstrap.js +39 -0
  8. package/lib/components/AccordionSelect/AccordionSelect.component.js +131 -0
  9. package/lib/components/AccordionSelect/AccordionSelect.styled.js +18 -0
  10. package/lib/components/AccordionSelect/index.js +13 -0
  11. package/lib/components/AlertBox/AlertBox.component.js +54 -0
  12. package/lib/components/AlertBox/AlertBox.styled.js +32 -0
  13. package/lib/components/AlertBox/index.js +13 -0
  14. package/lib/components/AlertDialog/AlertDialog.js +66 -0
  15. package/lib/components/AlertDialog/AlertDialog.styled.js +13 -0
  16. package/lib/components/AlertDialog/index.js +13 -0
  17. package/lib/components/Asphalt/Input.component.js +59 -0
  18. package/lib/components/Asphalt/index.js +13 -0
  19. package/lib/components/AsphaltPolyfill/AsphaltPolyfill.component.js +26 -0
  20. package/lib/components/AsphaltPolyfill/AsphaltPolyfill.loader.js +8 -0
  21. package/lib/components/AsphaltPolyfill/index.js +13 -0
  22. package/lib/components/Box/index.js +51 -0
  23. package/lib/components/Breakpoint/Breakpoint.component.js +63 -0
  24. package/lib/components/Breakpoint/index.js +13 -0
  25. package/lib/components/Button/Button.js +109 -0
  26. package/lib/components/Button/index.js +13 -0
  27. package/lib/components/Card/Card.js +75 -0
  28. package/lib/components/Card/Card.styled.js +60 -0
  29. package/lib/components/Card/index.js +13 -0
  30. package/lib/components/CardList/CardList.component.js +55 -0
  31. package/lib/components/CardList/index.js +13 -0
  32. package/lib/components/Checkbox/Checkbox.js +60 -0
  33. package/lib/components/Checkbox/index.js +13 -0
  34. package/lib/components/Container/Container.js +74 -0
  35. package/lib/components/Container/index.js +13 -0
  36. package/lib/components/DatePicker/Datepicker.component.js +57 -0
  37. package/lib/components/DatePicker/index.js +13 -0
  38. package/lib/components/Dropdown/Dropdown.component.js +63 -0
  39. package/lib/components/Dropdown/index.js +13 -0
  40. package/lib/components/EmptyState/EmptyState.component.js +47 -0
  41. package/lib/components/EmptyState/index.js +13 -0
  42. package/lib/components/ErrorModal/ErrorModal.component.js +41 -0
  43. package/lib/components/ErrorModal/ErrorModal.store.js +43 -0
  44. package/lib/components/ErrorModal/index.js +14 -0
  45. package/lib/components/ErrorScreen/ErrorScreen.js +19 -0
  46. package/lib/components/ErrorScreen/index.js +13 -0
  47. package/lib/components/FilterModal/FilterModal.js +41 -0
  48. package/lib/components/FilterModal/FilterModal.state.js +139 -0
  49. package/lib/components/FilterModal/index.js +13 -0
  50. package/lib/components/GlobalFilter/GlobalFilter.component.js +32 -0
  51. package/lib/components/GlobalFilter/GlobalFilter.component.state.js +116 -0
  52. package/lib/components/GlobalFilter/GlobalFilter.constant.js +17 -0
  53. package/lib/components/GlobalFilter/GlobalFilter.date.component.js +34 -0
  54. package/lib/components/GlobalFilter/GlobalFilter.interface.js +2 -0
  55. package/lib/components/GlobalFilter/GlobalFilter.provider.js +169 -0
  56. package/lib/components/GlobalFilter/GlobalFilter.styled.js +16 -0
  57. package/lib/components/GlobalFilter/index.js +16 -0
  58. package/lib/components/Guard/Guard.component.js +18 -0
  59. package/lib/components/Guard/index.js +13 -0
  60. package/lib/components/IframeLoader/IframeLoader.js +47 -0
  61. package/lib/components/IframeLoader/index.js +13 -0
  62. package/lib/components/Input/Input.component.js +167 -0
  63. package/lib/components/Input/index.js +13 -0
  64. package/lib/components/LanguageSwitcher/LanguageSwitcher.component.js +78 -0
  65. package/lib/components/LanguageSwitcher/LanguageSwitcher.state.js +20 -0
  66. package/lib/components/LanguageSwitcher/LanguageSwitcher.styled.js +40 -0
  67. package/lib/components/LanguageSwitcher/index.js +13 -0
  68. package/lib/components/List/List.js +46 -0
  69. package/lib/components/List/index.js +13 -0
  70. package/lib/components/ListSelector/ListSelector.component.js +22 -0
  71. package/lib/components/ListSelector/ListSelector.state.js +11 -0
  72. package/lib/components/ListSelector/ListSelector.styled.js +15 -0
  73. package/lib/components/ListSelector/index.js +13 -0
  74. package/lib/components/Loading/Loading.js +52 -0
  75. package/lib/components/Loading/Loading.styled.js +45 -0
  76. package/lib/components/Loading/index.js +13 -0
  77. package/lib/components/LoadingModule/LoadingModule.component.js +49 -0
  78. package/lib/components/LoadingModule/index.js +13 -0
  79. package/lib/components/MobileAppBar/MobileAppBar.js +90 -0
  80. package/lib/components/MobileAppBar/MobileAppBar.styled.js +36 -0
  81. package/lib/components/MobileAppBar/WithMobileAppBar.js +43 -0
  82. package/lib/components/MobileAppBar/index.js +14 -0
  83. package/lib/components/Modal/Modal.js +149 -0
  84. package/lib/components/Modal/ModalManager.context.js +6 -0
  85. package/lib/components/Modal/ModalManager.js +118 -0
  86. package/lib/components/Modal/index.js +15 -0
  87. package/lib/components/Navigation/Navigation.component.js +25 -0
  88. package/lib/components/Navigation/Navigation.provider.js +69 -0
  89. package/lib/components/Navigation/Navigation.styled.js +33 -0
  90. package/lib/components/Navigation/index.js +14 -0
  91. package/lib/components/PageTitle/PageTitle.component.js +47 -0
  92. package/lib/components/PageTitle/index.js +13 -0
  93. package/lib/components/Pagination/Pagination.component.js +49 -0
  94. package/lib/components/Pagination/index.js +13 -0
  95. package/lib/components/Radio/Radio.component.js +69 -0
  96. package/lib/components/Radio/Radio.styled.js +44 -0
  97. package/lib/components/Radio/RadioGroup.component.js +24 -0
  98. package/lib/components/Radio/RadioGroup.context.js +6 -0
  99. package/lib/components/Radio/index.js +15 -0
  100. package/lib/components/Separator/Separator.component.js +59 -0
  101. package/lib/components/Separator/index.js +13 -0
  102. package/lib/components/Skeleton/SkeletonApp.component.js +90 -0
  103. package/lib/components/Skeleton/SkeletonTable.component.js +36 -0
  104. package/lib/components/Skeleton/SkeletonText.component.js +62 -0
  105. package/lib/components/Skeleton/SkeletonWrapper.component.js +46 -0
  106. package/lib/components/Skeleton/index.js +16 -0
  107. package/lib/components/Stepper/Stepper.component.js +126 -0
  108. package/lib/components/Stepper/WithStepper.js +65 -0
  109. package/lib/components/Stepper/index.js +16 -0
  110. package/lib/components/Table/Table.component.js +71 -0
  111. package/lib/components/Table/Table.styled.js +51 -0
  112. package/lib/components/Table/index.js +13 -0
  113. package/lib/components/TableContainer/TableContainer.js +32 -0
  114. package/lib/components/TableContainer/index.js +13 -0
  115. package/lib/components/Text/Text.component.js +90 -0
  116. package/lib/components/Text/index.js +13 -0
  117. package/lib/components/Toast/Toast.component.js +65 -0
  118. package/lib/components/Toast/Toast.interface.js +2 -0
  119. package/lib/components/Toast/Toast.manager.js +61 -0
  120. package/lib/components/Toast/Toast.provider.js +85 -0
  121. package/lib/components/Toast/Toast.styled.js +18 -0
  122. package/lib/components/Toast/index.js +15 -0
  123. package/lib/components/Tours/index.js +100 -0
  124. package/lib/components/index.js +51 -0
  125. package/lib/constants/AndroidVersions.js +6 -0
  126. package/lib/constants/AppNames.js +10 -0
  127. package/lib/constants/AsphaltTheme.js +43 -0
  128. package/lib/constants/GobizApp.js +11 -0
  129. package/lib/constants/MediaQueries.js +30 -0
  130. package/lib/constants/PostalCodes.js +8382 -0
  131. package/lib/constants/PubsubEvents.js +12 -0
  132. package/lib/constants/TnCFiles.js +77 -0
  133. package/lib/constants/ValidationRegex.js +6 -0
  134. package/lib/constants/cookies.js +38 -0
  135. package/lib/constants/datetime.js +103 -0
  136. package/lib/constants/index.js +24 -0
  137. package/lib/constants/roles.js +17 -0
  138. package/lib/contexts/AppTheme.js +221 -0
  139. package/lib/decorators/utility-classes.js +78 -0
  140. package/lib/decorators/withStyles.js +73 -0
  141. package/lib/helpers/BrowserEnvironment.js +22 -0
  142. package/lib/helpers/ESQuery.js +98 -0
  143. package/lib/helpers/chart.js +251 -0
  144. package/lib/helpers/cleanObject.js +15 -0
  145. package/lib/helpers/conversion.js +4 -0
  146. package/lib/helpers/cookies.js +54 -0
  147. package/lib/helpers/copywrite.js +15 -0
  148. package/lib/helpers/currency.js +73 -0
  149. package/lib/helpers/dateFormat.js +47 -0
  150. package/lib/helpers/datePresets.js +77 -0
  151. package/lib/helpers/debounce.js +31 -0
  152. package/lib/helpers/deepMerge.js +81 -0
  153. package/lib/helpers/downloadURL.js +11 -0
  154. package/lib/helpers/enumReverseMap.js +12 -0
  155. package/lib/helpers/env.js +18 -0
  156. package/lib/helpers/fileDownloader.js +33 -0
  157. package/lib/helpers/formatNumber.js +10 -0
  158. package/lib/helpers/formatPercentage.js +13 -0
  159. package/lib/helpers/gobizApp.js +27 -0
  160. package/lib/helpers/identityValidator.js +6 -0
  161. package/lib/helpers/index.js +50 -0
  162. package/lib/helpers/json.js +17 -0
  163. package/lib/helpers/logger.js +93 -0
  164. package/lib/helpers/maskAccount.js +26 -0
  165. package/lib/helpers/numbers.js +6 -0
  166. package/lib/helpers/path.js +27 -0
  167. package/lib/helpers/paymentTypeHuman.js +62 -0
  168. package/lib/helpers/refreshConfig.js +12 -0
  169. package/lib/helpers/refreshToken.js +108 -0
  170. package/lib/helpers/safeParse.js +31 -0
  171. package/lib/helpers/scrollToTop.js +9 -0
  172. package/lib/helpers/shortID.js +17 -0
  173. package/lib/helpers/textParser.js +10 -0
  174. package/lib/helpers/time.js +54 -0
  175. package/lib/helpers/tour.js +38 -0
  176. package/lib/helpers/transform.js +24 -0
  177. package/lib/helpers/url.js +30 -0
  178. package/lib/helpers/wildcardToRegEx.js +15 -0
  179. package/lib/hooks/index.js +26 -0
  180. package/lib/hooks/useBreakpoint.js +35 -0
  181. package/lib/hooks/useCurrency.js +27 -0
  182. package/lib/hooks/useDatesFromTimeRange.js +40 -0
  183. package/lib/hooks/useEventListener.js +24 -0
  184. package/lib/hooks/useFormValidator.js +38 -0
  185. package/lib/hooks/useHttpOptions.js +104 -0
  186. package/lib/hooks/useLogger.js +57 -0
  187. package/lib/hooks/useNavigation.js +16 -0
  188. package/lib/hooks/usePhone.js +14 -0
  189. package/lib/hooks/useQueryInit.js +21 -0
  190. package/lib/hooks/useQueryParams.js +95 -0
  191. package/lib/hooks/useShowGlobalFilter.js +101 -0
  192. package/lib/hooks/useWebview.js +48 -0
  193. package/lib/hooks/useWindow.js +19 -0
  194. package/lib/models/AuthUser.model.js +159 -0
  195. package/lib/models/Outlet.model.js +274 -0
  196. package/lib/models/User.model.js +106 -0
  197. package/lib/models/index.js +15 -0
  198. package/lib/providers/Alert.provider.js +65 -0
  199. package/lib/providers/AppTheme.provider.js +75 -0
  200. package/lib/providers/Auth.provider.js +239 -0
  201. package/lib/providers/Clevertap.provider.js +117 -0
  202. package/lib/providers/GoogleAnalytics.provider.js +113 -0
  203. package/lib/providers/Host.provider.js +71 -0
  204. package/lib/providers/Language.provider.js +127 -0
  205. package/lib/providers/Logger.provider.js +32 -0
  206. package/lib/providers/MicroApp.provider.js +63 -0
  207. package/lib/providers/Outlets.provider.js +180 -0
  208. package/lib/providers/Token.provider.js +101 -0
  209. package/lib/providers/Translation.provider.js +56 -0
  210. package/lib/providers/index.js +24 -0
  211. package/package.json +47 -0
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.LoggerProvider = exports.LoggerContext = void 0;
7
+ var react_1 = __importDefault(require("react"));
8
+ var react_2 = require("react");
9
+ var useMount_1 = __importDefault(require("react-use/lib/useMount"));
10
+ var env_1 = require("../helpers/env");
11
+ var BrowserEnvironment_1 = require("../helpers/BrowserEnvironment");
12
+ exports.LoggerContext = react_2.createContext({});
13
+ exports.LoggerProvider = function (_a) {
14
+ var _b;
15
+ var raygunKey = _a.raygunKey, children = _a.children, injectedTags = _a.tags;
16
+ rg4js("enableCrashReporting", true);
17
+ rg4js("logContentsOfXhrCalls", true);
18
+ var raygunInstance = (_b = rg4js("getRaygunInstance")) === null || _b === void 0 ? void 0 : _b.constructNewRaygun();
19
+ useMount_1.default(function () {
20
+ if (raygunKey) {
21
+ var tags = ["v2"];
22
+ injectedTags && tags.push.apply(tags, injectedTags);
23
+ BrowserEnvironment_1.isWebView() && tags.push("webview");
24
+ BrowserEnvironment_1.isIFrame() && tags.push("iframe");
25
+ raygunInstance === null || raygunInstance === void 0 ? void 0 : raygunInstance.init(raygunKey);
26
+ raygunInstance === null || raygunInstance === void 0 ? void 0 : raygunInstance.setVersion(env_1.env("REACT_APP_DOCKER_IMAGE_TAG"));
27
+ raygunInstance === null || raygunInstance === void 0 ? void 0 : raygunInstance.withTags(tags);
28
+ raygunInstance === null || raygunInstance === void 0 ? void 0 : raygunInstance.disableAutoBreadcrumbs();
29
+ }
30
+ });
31
+ return (react_1.default.createElement(exports.LoggerContext.Provider, { value: { raygunKey: raygunKey, raygunInstance: raygunInstance } }, children));
32
+ };
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
16
+ }) : (function(o, m, k, k2) {
17
+ if (k2 === undefined) k2 = k;
18
+ o[k2] = m[k];
19
+ }));
20
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
21
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
22
+ }) : function(o, v) {
23
+ o["default"] = v;
24
+ });
25
+ var __importStar = (this && this.__importStar) || function (mod) {
26
+ if (mod && mod.__esModule) return mod;
27
+ var result = {};
28
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
29
+ __setModuleDefault(result, mod);
30
+ return result;
31
+ };
32
+ Object.defineProperty(exports, "__esModule", { value: true });
33
+ exports.MicroAppProvider = exports.useMicroApp = exports.MicroAppContext = void 0;
34
+ var react_router_dom_1 = require("react-router-dom");
35
+ var react_1 = __importStar(require("react"));
36
+ var useQueryInit_1 = require("../hooks/useQueryInit");
37
+ var Language_provider_1 = require("./Language.provider");
38
+ var GlobalFilter_provider_1 = require("../components/GlobalFilter/GlobalFilter.provider");
39
+ var Navigation_provider_1 = require("../components/Navigation/Navigation.provider");
40
+ exports.MicroAppContext = react_1.createContext({});
41
+ exports.useMicroApp = function () { return react_1.useContext(exports.MicroAppContext); };
42
+ exports.MicroAppProvider = function (props) {
43
+ var _a, _b;
44
+ var _c = props.routePrefix, routePrefix = _c === void 0 ? "" : _c, _d = props.appName, appName = _d === void 0 ? "" : _d;
45
+ var history = react_router_dom_1.useHistory();
46
+ useQueryInit_1.useQueryInit();
47
+ var resolveUrl = function (url) {
48
+ return (("/" + routePrefix + "/" + url)
49
+ // replace multiple slashes with single slash
50
+ .replace(/\/+/g, "/"));
51
+ };
52
+ var context = {
53
+ appName: appName,
54
+ basename: routePrefix,
55
+ resolveUrl: resolveUrl,
56
+ history: __assign(__assign({}, history), { push: function (url) { return history.push(resolveUrl(url)); }, replace: function (url) { return history.replace(resolveUrl(url)); } }),
57
+ isWebView: (_b = (_a = navigator === null || navigator === void 0 ? void 0 : navigator.userAgent) === null || _a === void 0 ? void 0 : _a.toLowerCase) === null || _b === void 0 ? void 0 : _b.call(_a).includes("wv"),
58
+ };
59
+ return (react_1.default.createElement(exports.MicroAppContext.Provider, { value: context },
60
+ react_1.default.createElement(GlobalFilter_provider_1.GlobalFilterProvider, { asMicroApp: true },
61
+ react_1.default.createElement(Navigation_provider_1.NavigationProvider, { asMicroApp: true },
62
+ react_1.default.createElement(Language_provider_1.LanguageProvider, __assign({}, props, { asMicroApp: true }))))));
63
+ };
@@ -0,0 +1,180 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
22
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
23
+ return new (P || (P = Promise))(function (resolve, reject) {
24
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
25
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
26
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
27
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
28
+ });
29
+ };
30
+ var __generator = (this && this.__generator) || function (thisArg, body) {
31
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
32
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
33
+ function verb(n) { return function (v) { return step([n, v]); }; }
34
+ function step(op) {
35
+ if (f) throw new TypeError("Generator is already executing.");
36
+ while (_) try {
37
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
38
+ if (y = 0, t) op = [op[0] & 2, t.value];
39
+ switch (op[0]) {
40
+ case 0: case 1: t = op; break;
41
+ case 4: _.label++; return { value: op[1], done: false };
42
+ case 5: _.label++; y = op[1]; op = [0]; continue;
43
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
44
+ default:
45
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
46
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
47
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
48
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
49
+ if (t[2]) _.ops.pop();
50
+ _.trys.pop(); continue;
51
+ }
52
+ op = body.call(thisArg, _);
53
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
54
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
55
+ }
56
+ };
57
+ var __importDefault = (this && this.__importDefault) || function (mod) {
58
+ return (mod && mod.__esModule) ? mod : { "default": mod };
59
+ };
60
+ Object.defineProperty(exports, "__esModule", { value: true });
61
+ exports.OutletsProvider = exports.useOutlets = exports.OutletsContext = void 0;
62
+ var react_1 = __importStar(require("react"));
63
+ var Outlet_model_1 = require("../models/Outlet.model");
64
+ var useMount_1 = __importDefault(require("react-use/lib/useMount"));
65
+ var use_http_1 = __importStar(require("use-http"));
66
+ var env_1 = require("../helpers/env");
67
+ var _1 = require(".");
68
+ exports.OutletsContext = react_1.createContext({});
69
+ exports.useOutlets = function () { return react_1.useContext(exports.OutletsContext); };
70
+ var baseIndexFilter = {
71
+ from: 0,
72
+ size: 1000,
73
+ _source: [
74
+ "id",
75
+ "director_name",
76
+ "merchant_name",
77
+ "email",
78
+ "feature_types",
79
+ "phone",
80
+ "outlet_address",
81
+ "outlet_name",
82
+ "outlet_city",
83
+ "payment_settings.GOPAY",
84
+ "tags",
85
+ "bank_account",
86
+ "applications",
87
+ "pops",
88
+ "aspi",
89
+ "business_type",
90
+ "metadata",
91
+ "id_type",
92
+ "merchant_type",
93
+ ],
94
+ };
95
+ exports.OutletsProvider = function (props) {
96
+ var _a = react_1.useState(new Outlet_model_1.Outlet()), outlet = _a[0], setOutlet = _a[1];
97
+ var _b = react_1.useState([]), outlets = _b[0], setOutlets = _b[1];
98
+ var _c = react_1.useState(true), initLoading = _c[0], setInitLoading = _c[1];
99
+ var authContext = _1.useAuth();
100
+ var authUser = props.authUser || authContext.authUser;
101
+ var _d = use_http_1.default(env_1.env("REACT_APP_MARS_API_HOST") + "/v1/merchants/search", {
102
+ cachePolicy: use_http_1.CachePolicies.NO_CACHE,
103
+ loading: true,
104
+ }), queryAllOutlets = _d.post, response = _d.response, loading = _d.loading;
105
+ var fetchOutlets = function () { return __awaiter(void 0, void 0, void 0, function () {
106
+ var outlets_1, userOutlet;
107
+ var _a;
108
+ return __generator(this, function (_b) {
109
+ switch (_b.label) {
110
+ case 0: return [4 /*yield*/, queryAllOutlets(baseIndexFilter)];
111
+ case 1:
112
+ _b.sent();
113
+ if (response.ok && response.data) {
114
+ outlets_1 = (_a = response.data.hits) === null || _a === void 0 ? void 0 : _a.map(function (outlet) {
115
+ return Outlet_model_1.Outlet.fromJSON(outlet);
116
+ });
117
+ setOutlets(outlets_1);
118
+ if (!!outlets_1.length) {
119
+ userOutlet = outlets_1.find(function (outlet) { return outlet.id === (authUser === null || authUser === void 0 ? void 0 : authUser.merchantId); }) ||
120
+ outlets_1[0];
121
+ setOutlet(userOutlet);
122
+ }
123
+ }
124
+ return [2 /*return*/];
125
+ }
126
+ });
127
+ }); };
128
+ var getPopDetails = function (merchantId, popId) {
129
+ var outlet = outlets.find(function (outlet) { return outlet.id === merchantId; });
130
+ return outlet
131
+ ? outlet.pops.find(function (pop) { return pop.receiverId === popId; })
132
+ : undefined;
133
+ };
134
+ var getEnabledProductsFor = react_1.useCallback(function (outlet) {
135
+ var products = {
136
+ GORESTO: false,
137
+ GOPAY: false,
138
+ POS: false,
139
+ MIDTRANS: false,
140
+ GOMART: false,
141
+ LOMBOK: false,
142
+ };
143
+ var productKeys = Object.keys(products);
144
+ var getEnabledProduct = function (product) { return function (outlet) { return (outlet && outlet.enabledProducts.includes(product)) || false; }; };
145
+ productKeys.forEach(function (key) {
146
+ var outletsToFilter = (outlet && [outlet]) || outlets;
147
+ outletsToFilter.filter(getEnabledProduct(key)).length > 0
148
+ ? (products[key] = true)
149
+ : delete products[key];
150
+ });
151
+ return products;
152
+ }, [outlets]);
153
+ var isMultiOutlet = react_1.useMemo(function () { return (outlets === null || outlets === void 0 ? void 0 : outlets.length) > 1; }, [outlets]);
154
+ var enabledProductsList = react_1.useMemo(function () { return Object.keys(getEnabledProductsFor()); }, [getEnabledProductsFor]);
155
+ useMount_1.default(function () { return __awaiter(void 0, void 0, void 0, function () {
156
+ return __generator(this, function (_a) {
157
+ switch (_a.label) {
158
+ case 0: return [4 /*yield*/, fetchOutlets()];
159
+ case 1:
160
+ _a.sent();
161
+ setInitLoading(false);
162
+ return [2 /*return*/];
163
+ }
164
+ });
165
+ }); });
166
+ var context = {
167
+ loading: loading,
168
+ outlets: outlets,
169
+ outlet: outlet,
170
+ isMultiOutlet: isMultiOutlet,
171
+ enabledProductsList: enabledProductsList,
172
+ refreshOutlets: fetchOutlets,
173
+ getPopDetails: getPopDetails,
174
+ getEnabledProductsFor: getEnabledProductsFor,
175
+ };
176
+ if (initLoading) {
177
+ return null;
178
+ }
179
+ return react_1.default.createElement(exports.OutletsContext.Provider, { children: props.children, value: context });
180
+ };
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.TokenProvider = exports.useToken = exports.TokenContext = void 0;
23
+ var react_1 = __importStar(require("react"));
24
+ var helpers_1 = require("../helpers");
25
+ var constants_1 = require("../constants");
26
+ exports.TokenContext = react_1.createContext({});
27
+ exports.useToken = function () { return react_1.useContext(exports.TokenContext); };
28
+ exports.TokenProvider = function (_a) {
29
+ var children = _a.children, _b = _a.asMicroApp, asMicroApp = _b === void 0 ? false : _b, redirectionCallback = _a.redirectionCallback;
30
+ var PUBLISHER_TOPIC = asMicroApp ? constants_1.TOKENIZE_PF : constants_1.TOKENIZE_MF;
31
+ var _c = react_1.useState(helpers_1.getCookie(constants_1.CookieNames.AccessToken) || ""), token = _c[0], _setToken = _c[1];
32
+ var _d = react_1.useState(helpers_1.getCookie(constants_1.CookieNames.RefreshToken) || ""), refreshToken = _d[0], _setRefreshToken = _d[1];
33
+ var setToken = function (token) {
34
+ var _a;
35
+ helpers_1.setCookie(constants_1.CookieNames.AccessToken, token);
36
+ _setToken(token);
37
+ (_a = window.$pubsubPublish) === null || _a === void 0 ? void 0 : _a.call(window, PUBLISHER_TOPIC, {
38
+ token: token,
39
+ });
40
+ };
41
+ var setRefreshToken = function (refreshToken) {
42
+ var _a;
43
+ helpers_1.setCookie(constants_1.CookieNames.RefreshToken, refreshToken);
44
+ _setRefreshToken(refreshToken);
45
+ (_a = window.$pubsubPublish) === null || _a === void 0 ? void 0 : _a.call(window, PUBLISHER_TOPIC, {
46
+ refreshToken: refreshToken,
47
+ });
48
+ };
49
+ var clearTokens = function () {
50
+ var _a;
51
+ helpers_1.deleteCookie(constants_1.CookieNames.AccessToken);
52
+ helpers_1.deleteCookie(constants_1.CookieNames.RefreshToken);
53
+ _setToken("");
54
+ _setRefreshToken("");
55
+ (_a = window.$pubsubPublish) === null || _a === void 0 ? void 0 : _a.call(window, PUBLISHER_TOPIC, {
56
+ token: "",
57
+ refreshToken: "",
58
+ });
59
+ };
60
+ var onPubSubEvent = function (data) {
61
+ if (data.token !== undefined)
62
+ setToken(data.token);
63
+ if (data.refreshToken !== undefined)
64
+ setRefreshToken(data.refreshToken);
65
+ };
66
+ var onPubSubRedirection = function (data) {
67
+ if (data.doRedirection && redirectionCallback && !asMicroApp) {
68
+ redirectionCallback();
69
+ }
70
+ };
71
+ var executeCallback = function () {
72
+ var _a;
73
+ if (asMicroApp) {
74
+ (_a = window.$pubsubPublish) === null || _a === void 0 ? void 0 : _a.call(window, constants_1.TOKEN_PROVIDER_CALLBACK, {
75
+ doRedirection: true,
76
+ });
77
+ }
78
+ };
79
+ react_1.useEffect(function () {
80
+ var _a, _b;
81
+ var SUBSCRIBER_TOPIC = asMicroApp ? constants_1.TOKENIZE_MF : constants_1.TOKENIZE_PF;
82
+ (_a = window.$pubsubSubscribe) === null || _a === void 0 ? void 0 : _a.call(window, SUBSCRIBER_TOPIC, onPubSubEvent);
83
+ (_b = window.$pubsubSubscribe) === null || _b === void 0 ? void 0 : _b.call(window, constants_1.TOKEN_PROVIDER_CALLBACK, onPubSubRedirection);
84
+ return function () {
85
+ var _a, _b;
86
+ (_a = window.$pubsubUnsubscribe) === null || _a === void 0 ? void 0 : _a.call(window, SUBSCRIBER_TOPIC, onPubSubEvent);
87
+ (_b = window.$pubsubUnsubscribe) === null || _b === void 0 ? void 0 : _b.call(window, constants_1.TOKEN_PROVIDER_CALLBACK, onPubSubRedirection);
88
+ };
89
+ // eslint-disable-next-line react-hooks/exhaustive-deps
90
+ }, []);
91
+ var context = {
92
+ token: token,
93
+ refreshToken: refreshToken,
94
+ setToken: setToken,
95
+ setRefreshToken: setRefreshToken,
96
+ clearTokens: clearTokens,
97
+ redirectionCallback: redirectionCallback,
98
+ executeCallback: executeCallback,
99
+ };
100
+ return (react_1.default.createElement(exports.TokenContext.Provider, { value: context }, children));
101
+ };
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.TranslationProvider = exports.useTranslation = exports.TranslationsContext = void 0;
23
+ var react_1 = __importStar(require("react"));
24
+ var deepMerge_1 = require("../helpers/deepMerge");
25
+ var json_1 = require("../helpers/json");
26
+ var logger_1 = require("../helpers/logger");
27
+ var textParser_1 = require("../helpers/textParser");
28
+ var Language_provider_1 = require("./Language.provider");
29
+ exports.TranslationsContext = react_1.createContext({});
30
+ exports.useTranslation = function (translationFile) {
31
+ if (translationFile === void 0) { translationFile = {}; }
32
+ var language = Language_provider_1.useLanguage().language;
33
+ var translationContext = react_1.useContext(exports.TranslationsContext);
34
+ var genericTranslation = require("../../assets/translations/generic.translations.json");
35
+ var mergedTranslation = deepMerge_1.unsafe_deepMerge(genericTranslation, translationContext, translationFile);
36
+ var isDevelopment = process.env.NODE_ENV === "development";
37
+ var fallBackLanguage = "en";
38
+ var isTest = process.env.NODE_ENV === "test";
39
+ return function (path, params) {
40
+ if (params === void 0) { params = []; }
41
+ var splitByDot = path.split(".");
42
+ var lastPath = splitByDot.slice(-1)[0];
43
+ var translated = json_1.JSONTry(mergedTranslation, language + "." + path, isDevelopment ? "missing_translation:" + path : lastPath);
44
+ if (translated === lastPath) {
45
+ translated = json_1.JSONTry(mergedTranslation, fallBackLanguage + "." + path, lastPath);
46
+ }
47
+ if (translated === lastPath && isTest) {
48
+ logger_1.Logger.info("Missing translation: " + path);
49
+ }
50
+ return textParser_1.textParamsParser(translated, params);
51
+ };
52
+ };
53
+ exports.TranslationProvider = function (props) {
54
+ var languageFile = props.languageFile, children = props.children;
55
+ return (react_1.default.createElement(exports.TranslationsContext.Provider, { value: languageFile }, children));
56
+ };
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./Auth.provider"), exports);
14
+ __exportStar(require("./Clevertap.provider"), exports);
15
+ __exportStar(require("./GoogleAnalytics.provider"), exports);
16
+ __exportStar(require("./Language.provider"), exports);
17
+ __exportStar(require("./MicroApp.provider"), exports);
18
+ __exportStar(require("./Outlets.provider"), exports);
19
+ __exportStar(require("./AppTheme.provider"), exports);
20
+ __exportStar(require("./GoogleAnalytics.provider"), exports);
21
+ __exportStar(require("./Translation.provider"), exports);
22
+ __exportStar(require("./Host.provider"), exports);
23
+ __exportStar(require("./Logger.provider"), exports);
24
+ __exportStar(require("./Alert.provider"), exports);
package/package.json ADDED
@@ -0,0 +1,47 @@
1
+ {
2
+ "name": "@gobizweb/core",
3
+ "version": "0.0.7",
4
+ "private": false,
5
+ "description": "",
6
+ "license": "MIT",
7
+ "author": "hg0biz",
8
+ "main": "lib/bootstrap.js",
9
+ "scripts": {
10
+ "build": "npm run mkdir",
11
+ "test": "exit 0"
12
+ },
13
+ "dependencies": {
14
+ "@asphalt-react/button": "^1.13.0",
15
+ "@asphalt-react/checkbox": "^1.13.0",
16
+ "@asphalt-react/dropdown": "^1.13.0",
17
+ "@asphalt-react/iconpack": "^1.13.0",
18
+ "@asphalt-react/icontuner": "^1.13.0",
19
+ "@asphalt-react/loader": "^1.13.0",
20
+ "@asphalt-react/logo": "^1.13.0",
21
+ "@asphalt-react/pagination": "^1.13.0",
22
+ "@asphalt-react/radio": "^1.13.0",
23
+ "@asphalt-react/textfield": "^1.13.0",
24
+ "@asphalt-react/theme-provider": "^1.13.0",
25
+ "abortcontroller-polyfill": "^1.7.3",
26
+ "classnames": "^2.3.1",
27
+ "file-saver": "^2.0.5",
28
+ "libphonenumber-js": "^1.9.53",
29
+ "mobx-react-lite": "^3.4.0",
30
+ "moment": "^2.29.3",
31
+ "query-string": "^7.1.1",
32
+ "react": "^16.8.6",
33
+ "react-dom": "^16.8.6",
34
+ "react-ga": "^3.3.0",
35
+ "react-router-dom": "^6.3.0",
36
+ "react-spring": "^9.4.5",
37
+ "react-use": "~17.3.2",
38
+ "styled-components": "^5.3.5",
39
+ "stylis-plugin-extra-scope": "^0.3.0",
40
+ "typeface-fira-mono": "^1.1.13",
41
+ "use-http": "^1.0.26",
42
+ "web-vitals": "^2.1.4"
43
+ },
44
+ "publishConfig": {
45
+ "access": "public"
46
+ }
47
+ }