@open-tender/store 0.7.18 → 0.8.3

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.
@@ -1,4 +1,4 @@
1
- import { KioskBrand, KioskContent, ThemeCloud, RequestError, RequestStatus, Store } from '../types';
1
+ import { KioskBrand, KioskContent, RequestError, RequestStatus, Store, Devices, KioskStyles } from '../types';
2
2
  import { AppState } from '../app';
3
3
  export interface KioskApp {
4
4
  apiUrl: string;
@@ -6,13 +6,12 @@ export interface KioskApp {
6
6
  export interface KioskState {
7
7
  app: KioskApp | null;
8
8
  version?: string | null;
9
+ devices: Devices | null;
9
10
  store: Store | null;
10
- revenueCenterId: number | null;
11
11
  brand: KioskBrand | null;
12
12
  content: KioskContent | null;
13
- theme: ThemeCloud | null;
13
+ styles: KioskStyles | null;
14
14
  ratio: number;
15
- displaySettings: any;
16
15
  loading: RequestStatus;
17
16
  error: RequestError | null;
18
17
  retries: number;
@@ -32,15 +31,62 @@ export declare const fetchKioskConfig: import("@reduxjs/toolkit").AsyncThunk<Kio
32
31
  fulfilledMeta?: unknown;
33
32
  rejectedMeta?: unknown;
34
33
  }>;
35
- export declare const resetKiosk: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"kiosk/resetKiosk">, resetKioskRetries: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"kiosk/resetKioskRetries">, incrementKioskRetries: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"kiosk/incrementKioskRetries">, setKioskVersion: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "kiosk/setKioskVersion">, setKioskRatio: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "kiosk/setKioskRatio">;
34
+ export declare const resetKiosk: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"kiosk/resetKiosk">, resetKioskRetries: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"kiosk/resetKioskRetries">, incrementKioskRetries: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"kiosk/incrementKioskRetries">, setKioskVersion: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "kiosk/setKioskVersion">, setKioskRatio: import("@reduxjs/toolkit").ActionCreatorWithPayload<number, "kiosk/setKioskRatio">, setKioskStyles: import("@reduxjs/toolkit").ActionCreatorWithPayload<KioskStyles | null, "kiosk/setKioskStyles">;
36
35
  export declare const selectKiosk: (state: AppState) => KioskState;
37
36
  export declare const selectKioskVersion: (state: AppState) => string | null | undefined;
38
37
  export declare const selectKioskStore: (state: AppState) => Store | null;
39
- export declare const selectKioskRcId: (state: AppState) => number | null;
40
38
  export declare const selectKioskBrand: (state: AppState) => KioskBrand | null;
41
39
  export declare const selectKioskContent: (state: AppState) => KioskContent | null;
42
- export declare const selectKioskTheme: (state: AppState) => ThemeCloud | null;
40
+ export declare const selectKioskContentSection: (page: string) => ((state: {
41
+ alerts: import("../types").Alerts;
42
+ arrivals: import("./arrivals").ArrivalsState;
43
+ checkout: import("./checkout").CheckoutState;
44
+ completedOrders: import("./completedOrders").CompletedOrdersState;
45
+ config: import("./config").ConfigState;
46
+ discounts: import("./discounts").DiscountsState;
47
+ errorAlerts: import("./errorAlerts").ErrorAlertsState;
48
+ kds: import("./kds").KdsState;
49
+ kiosk: KioskState;
50
+ menu: import("./menu").MenuState;
51
+ menuPages: import("./menuPages").MenuPagesState;
52
+ modal: import("./modal").ModalState;
53
+ notifications: import("../types").Notifications;
54
+ offlineAuths: import("./offlineAuths").OfflineAuthsState;
55
+ order: import("./order").OrderState;
56
+ pos: import("./pos").PosState;
57
+ punches: import("./punches").PunchesState;
58
+ refund: import("./refund").RefundState;
59
+ settings: import("./settings").SettingsState;
60
+ sidebar: import("./sidebar").SidebarState;
61
+ surcharges: import("./surcharges").SurchargesState;
62
+ taxes: import("./taxes").TaxesState;
63
+ }) => unknown) & {
64
+ clearCache: () => void;
65
+ resultsCount: () => number;
66
+ resetResultsCount: () => void;
67
+ } & {
68
+ resultFunc: (resultFuncArgs_0: {
69
+ content: KioskContent | null;
70
+ }) => unknown;
71
+ memoizedResultFunc: ((resultFuncArgs_0: {
72
+ content: KioskContent | null;
73
+ }) => unknown) & {
74
+ clearCache: () => void;
75
+ resultsCount: () => number;
76
+ resetResultsCount: () => void;
77
+ };
78
+ lastResult: () => unknown;
79
+ dependencies: [(state: AppState) => {
80
+ content: KioskContent | null;
81
+ }];
82
+ recomputations: () => number;
83
+ resetRecomputations: () => void;
84
+ dependencyRecomputations: () => number;
85
+ resetDependencyRecomputations: () => void;
86
+ } & {
87
+ argsMemoize: typeof import("reselect").weakMapMemoize;
88
+ memoize: typeof import("reselect").weakMapMemoize;
89
+ };
90
+ export declare const selectKioskStyles: (state: AppState) => KioskStyles | null;
43
91
  export declare const selectKioskRatio: (state: AppState) => number;
44
- export declare const selectKioskDisplay: (state: AppState) => any;
45
- export declare const selectKioskContentSection: (page: string) => (state: AppState) => unknown;
46
92
  export declare const kioskReducer: import("redux").Reducer<KioskState>;
@@ -1,24 +1,22 @@
1
1
  "use strict";
2
2
  var _a;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.kioskReducer = exports.selectKioskContentSection = exports.selectKioskDisplay = exports.selectKioskRatio = exports.selectKioskTheme = exports.selectKioskContent = exports.selectKioskBrand = exports.selectKioskRcId = exports.selectKioskStore = exports.selectKioskVersion = exports.selectKiosk = exports.setKioskRatio = exports.setKioskVersion = exports.incrementKioskRetries = exports.resetKioskRetries = exports.resetKiosk = exports.fetchKioskConfig = exports.KioskActionType = void 0;
4
+ exports.kioskReducer = exports.selectKioskRatio = exports.selectKioskStyles = exports.selectKioskContentSection = exports.selectKioskContent = exports.selectKioskBrand = exports.selectKioskStore = exports.selectKioskVersion = exports.selectKiosk = exports.setKioskStyles = exports.setKioskRatio = exports.setKioskVersion = exports.incrementKioskRetries = exports.resetKioskRetries = exports.resetKiosk = exports.fetchKioskConfig = exports.KioskActionType = void 0;
5
5
  var tslib_1 = require("tslib");
6
6
  var toolkit_1 = require("@reduxjs/toolkit");
7
7
  var services_1 = require("../services");
8
8
  var types_1 = require("./types");
9
9
  var errors_1 = require("../services/errors");
10
10
  var config_1 = require("./config");
11
- var utils_1 = require("../utils");
12
11
  var initialState = {
13
12
  app: null,
14
13
  version: null,
14
+ devices: null,
15
15
  store: null,
16
- revenueCenterId: null,
17
16
  brand: null,
18
17
  content: null,
19
- theme: null,
20
- ratio: 2,
21
- displaySettings: null,
18
+ styles: null,
19
+ ratio: 1,
22
20
  loading: 'idle',
23
21
  error: null,
24
22
  retries: 0
@@ -27,57 +25,44 @@ var KioskActionType;
27
25
  (function (KioskActionType) {
28
26
  KioskActionType["FetchKiosk"] = "kiosk/getKiosk";
29
27
  })(KioskActionType || (exports.KioskActionType = KioskActionType = {}));
30
- var enhanceTheme = function (theme) {
31
- var icons = tslib_1.__assign(tslib_1.__assign({}, theme.icons), { strokeLinejoin: 'miter', strokeLinecap: 'square' });
32
- var kiosk = {
33
- padding: '2rem',
34
- gutter: '1rem',
35
- gutterSmall: '0.5rem'
36
- };
37
- return tslib_1.__assign(tslib_1.__assign({}, theme), { icons: icons, kiosk: kiosk });
38
- };
39
28
  exports.fetchKioskConfig = (0, toolkit_1.createAsyncThunk)(KioskActionType.FetchKiosk, function (_a, _b) {
40
29
  var apiUrl = _a.apiUrl;
41
30
  var dispatch = _b.dispatch, rejectWithValue = _b.rejectWithValue;
42
31
  return tslib_1.__awaiter(void 0, void 0, void 0, function () {
43
- var app, api, _c, kioskConfig, store, err, brand, content, theme, settings, ratio, displaySettings, revenueCenterId, themeEnhanced, themeDevice, err_1;
44
- return tslib_1.__generator(this, function (_d) {
45
- switch (_d.label) {
32
+ var app, api, _c, _d, devicesList, _e, stores, store, devices, err, err_1;
33
+ return tslib_1.__generator(this, function (_f) {
34
+ switch (_f.label) {
46
35
  case 0:
47
- _d.trys.push([0, 2, , 3]);
36
+ _f.trys.push([0, 2, , 3]);
48
37
  app = { apiUrl: apiUrl };
49
38
  api = new services_1.PosAPI(app);
50
39
  return [4 /*yield*/, Promise.all([
51
- api.getKioskConfig(),
52
- api.getStore()
40
+ api.getSettings('DEVICES'),
41
+ api.getSettings('STORE')
53
42
  ])];
54
43
  case 1:
55
- _c = _d.sent(), kioskConfig = _c[0], store = _c[1];
56
- if (!kioskConfig || !store) {
44
+ _c = _f.sent(), _d = _c[0], devicesList = _d === void 0 ? [] : _d, _e = _c[1], stores = _e === void 0 ? [] : _e;
45
+ store = stores[0] || null;
46
+ devices = devicesList[0] || null;
47
+ if (!store || !devices) {
57
48
  err = errors_1.errorsApi.internalServerError;
58
49
  return [2 /*return*/, rejectWithValue(err)];
59
50
  }
60
51
  dispatch((0, config_1.setApi)(api));
61
- brand = kioskConfig.brand, content = kioskConfig.content, theme = kioskConfig.theme, settings = kioskConfig.settings;
62
- ratio = settings.ratio, displaySettings = settings.displaySettings;
63
- revenueCenterId = store.revenue_center_id;
64
- themeEnhanced = enhanceTheme(theme);
65
- themeDevice = (0, utils_1.decorateTheme)(themeEnhanced, ratio);
66
52
  return [2 /*return*/, {
67
53
  app: app,
54
+ devices: devices,
68
55
  store: store,
69
- revenueCenterId: revenueCenterId,
70
- brand: brand,
71
- content: content,
72
- theme: themeDevice,
73
- ratio: ratio,
74
- displaySettings: displaySettings,
56
+ brand: null,
57
+ content: null,
58
+ styles: null,
59
+ ratio: 1,
75
60
  error: null,
76
61
  loading: 'idle',
77
62
  retries: 0
78
63
  }];
79
64
  case 2:
80
- err_1 = _d.sent();
65
+ err_1 = _f.sent();
81
66
  return [2 /*return*/, rejectWithValue(err_1)];
82
67
  case 3: return [2 /*return*/];
83
68
  }
@@ -100,20 +85,22 @@ var kioskSlice = (0, toolkit_1.createSlice)({
100
85
  },
101
86
  setKioskRatio: function (state, action) {
102
87
  state.ratio = action.payload;
88
+ },
89
+ setKioskStyles: function (state, action) {
90
+ state.styles = action.payload;
103
91
  }
104
92
  },
105
93
  extraReducers: function (builder) {
106
94
  builder
107
95
  .addCase(exports.fetchKioskConfig.fulfilled, function (state, action) {
108
- var _a = action.payload, app = _a.app, store = _a.store, revenueCenterId = _a.revenueCenterId, brand = _a.brand, content = _a.content, theme = _a.theme, ratio = _a.ratio, displaySettings = _a.displaySettings;
96
+ var _a = action.payload, app = _a.app, devices = _a.devices, store = _a.store, brand = _a.brand, content = _a.content, styles = _a.styles, ratio = _a.ratio;
109
97
  state.app = app;
98
+ state.devices = devices;
110
99
  state.store = store;
111
- state.revenueCenterId = revenueCenterId;
112
100
  state.brand = brand;
113
101
  state.content = content;
114
- state.theme = theme;
102
+ state.styles = styles;
115
103
  state.ratio = ratio;
116
- state.displaySettings = displaySettings;
117
104
  state.loading = 'idle';
118
105
  state.retries = 0;
119
106
  state.error = null;
@@ -127,30 +114,28 @@ var kioskSlice = (0, toolkit_1.createSlice)({
127
114
  });
128
115
  }
129
116
  });
130
- exports.resetKiosk = (_a = kioskSlice.actions, _a.resetKiosk), exports.resetKioskRetries = _a.resetKioskRetries, exports.incrementKioskRetries = _a.incrementKioskRetries, exports.setKioskVersion = _a.setKioskVersion, exports.setKioskRatio = _a.setKioskRatio;
117
+ exports.resetKiosk = (_a = kioskSlice.actions, _a.resetKiosk), exports.resetKioskRetries = _a.resetKioskRetries, exports.incrementKioskRetries = _a.incrementKioskRetries, exports.setKioskVersion = _a.setKioskVersion, exports.setKioskRatio = _a.setKioskRatio, exports.setKioskStyles = _a.setKioskStyles;
131
118
  var selectKiosk = function (state) { return state.kiosk; };
132
119
  exports.selectKiosk = selectKiosk;
133
120
  var selectKioskVersion = function (state) { return state.kiosk.version; };
134
121
  exports.selectKioskVersion = selectKioskVersion;
135
122
  var selectKioskStore = function (state) { return state.kiosk.store; };
136
123
  exports.selectKioskStore = selectKioskStore;
137
- var selectKioskRcId = function (state) { return state.kiosk.revenueCenterId; };
138
- exports.selectKioskRcId = selectKioskRcId;
139
124
  var selectKioskBrand = function (state) { return state.kiosk.brand; };
140
125
  exports.selectKioskBrand = selectKioskBrand;
141
126
  var selectKioskContent = function (state) { return state.kiosk.content; };
142
127
  exports.selectKioskContent = selectKioskContent;
143
- var selectKioskTheme = function (state) { return state.kiosk.theme; };
144
- exports.selectKioskTheme = selectKioskTheme;
145
- var selectKioskRatio = function (state) { return state.kiosk.ratio; };
146
- exports.selectKioskRatio = selectKioskRatio;
147
- var selectKioskDisplay = function (state) {
148
- return state.kiosk.displaySettings;
128
+ var selectKioskContentSection = function (page) {
129
+ return (0, toolkit_1.createSelector)(function (state) {
130
+ var content = state.kiosk.content;
131
+ return { content: content };
132
+ }, function (content) {
133
+ return content === null || content === void 0 ? void 0 : content[page];
134
+ });
149
135
  };
150
- exports.selectKioskDisplay = selectKioskDisplay;
151
- var selectKioskContentSection = function (page) { return function (state) {
152
- var _a;
153
- return (_a = state.kiosk.content) === null || _a === void 0 ? void 0 : _a[page];
154
- }; };
155
136
  exports.selectKioskContentSection = selectKioskContentSection;
137
+ var selectKioskStyles = function (state) { return state.kiosk.styles; };
138
+ exports.selectKioskStyles = selectKioskStyles;
139
+ var selectKioskRatio = function (state) { return state.kiosk.ratio; };
140
+ exports.selectKioskRatio = selectKioskRatio;
156
141
  exports.kioskReducer = kioskSlice.reducer;
@@ -5,6 +5,7 @@ export interface Dimensions {
5
5
  }
6
6
  export type KioskBrand = Record<string, unknown>;
7
7
  export type KioskContent = Record<string, unknown>;
8
+ export type KioskStyles = Record<string, string | number>;
8
9
  export interface KioskSettings {
9
10
  ratio: number;
10
11
  displaySettings: any;
@@ -1,4 +1,4 @@
1
- import { KioskBrand, KioskContent, ThemeCloud, RequestError, RequestStatus, Store } from '../types';
1
+ import { KioskBrand, KioskContent, RequestError, RequestStatus, Store, Devices, KioskStyles } from '../types';
2
2
  import { AppState } from '../app';
3
3
  export interface KioskApp {
4
4
  apiUrl: string;
@@ -6,13 +6,12 @@ export interface KioskApp {
6
6
  export interface KioskState {
7
7
  app: KioskApp | null;
8
8
  version?: string | null;
9
+ devices: Devices | null;
9
10
  store: Store | null;
10
- revenueCenterId: number | null;
11
11
  brand: KioskBrand | null;
12
12
  content: KioskContent | null;
13
- theme: ThemeCloud | null;
13
+ styles: KioskStyles | null;
14
14
  ratio: number;
15
- displaySettings: any;
16
15
  loading: RequestStatus;
17
16
  error: RequestError | null;
18
17
  retries: number;
@@ -32,15 +31,62 @@ export declare const fetchKioskConfig: import("@reduxjs/toolkit").AsyncThunk<Kio
32
31
  fulfilledMeta?: unknown;
33
32
  rejectedMeta?: unknown;
34
33
  }>;
35
- export declare const resetKiosk: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"kiosk/resetKiosk">, resetKioskRetries: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"kiosk/resetKioskRetries">, incrementKioskRetries: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"kiosk/incrementKioskRetries">, setKioskVersion: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "kiosk/setKioskVersion">, setKioskRatio: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "kiosk/setKioskRatio">;
34
+ export declare const resetKiosk: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"kiosk/resetKiosk">, resetKioskRetries: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"kiosk/resetKioskRetries">, incrementKioskRetries: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"kiosk/incrementKioskRetries">, setKioskVersion: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "kiosk/setKioskVersion">, setKioskRatio: import("@reduxjs/toolkit").ActionCreatorWithPayload<number, "kiosk/setKioskRatio">, setKioskStyles: import("@reduxjs/toolkit").ActionCreatorWithPayload<KioskStyles | null, "kiosk/setKioskStyles">;
36
35
  export declare const selectKiosk: (state: AppState) => KioskState;
37
36
  export declare const selectKioskVersion: (state: AppState) => string | null | undefined;
38
37
  export declare const selectKioskStore: (state: AppState) => Store | null;
39
- export declare const selectKioskRcId: (state: AppState) => number | null;
40
38
  export declare const selectKioskBrand: (state: AppState) => KioskBrand | null;
41
39
  export declare const selectKioskContent: (state: AppState) => KioskContent | null;
42
- export declare const selectKioskTheme: (state: AppState) => ThemeCloud | null;
40
+ export declare const selectKioskContentSection: (page: string) => ((state: {
41
+ alerts: import("../types").Alerts;
42
+ arrivals: import("./arrivals").ArrivalsState;
43
+ checkout: import("./checkout").CheckoutState;
44
+ completedOrders: import("./completedOrders").CompletedOrdersState;
45
+ config: import("./config").ConfigState;
46
+ discounts: import("./discounts").DiscountsState;
47
+ errorAlerts: import("./errorAlerts").ErrorAlertsState;
48
+ kds: import("./kds").KdsState;
49
+ kiosk: KioskState;
50
+ menu: import("./menu").MenuState;
51
+ menuPages: import("./menuPages").MenuPagesState;
52
+ modal: import("./modal").ModalState;
53
+ notifications: import("../types").Notifications;
54
+ offlineAuths: import("./offlineAuths").OfflineAuthsState;
55
+ order: import("./order").OrderState;
56
+ pos: import("./pos").PosState;
57
+ punches: import("./punches").PunchesState;
58
+ refund: import("./refund").RefundState;
59
+ settings: import("./settings").SettingsState;
60
+ sidebar: import("./sidebar").SidebarState;
61
+ surcharges: import("./surcharges").SurchargesState;
62
+ taxes: import("./taxes").TaxesState;
63
+ }) => unknown) & {
64
+ clearCache: () => void;
65
+ resultsCount: () => number;
66
+ resetResultsCount: () => void;
67
+ } & {
68
+ resultFunc: (resultFuncArgs_0: {
69
+ content: KioskContent | null;
70
+ }) => unknown;
71
+ memoizedResultFunc: ((resultFuncArgs_0: {
72
+ content: KioskContent | null;
73
+ }) => unknown) & {
74
+ clearCache: () => void;
75
+ resultsCount: () => number;
76
+ resetResultsCount: () => void;
77
+ };
78
+ lastResult: () => unknown;
79
+ dependencies: [(state: AppState) => {
80
+ content: KioskContent | null;
81
+ }];
82
+ recomputations: () => number;
83
+ resetRecomputations: () => void;
84
+ dependencyRecomputations: () => number;
85
+ resetDependencyRecomputations: () => void;
86
+ } & {
87
+ argsMemoize: typeof import("reselect").weakMapMemoize;
88
+ memoize: typeof import("reselect").weakMapMemoize;
89
+ };
90
+ export declare const selectKioskStyles: (state: AppState) => KioskStyles | null;
43
91
  export declare const selectKioskRatio: (state: AppState) => number;
44
- export declare const selectKioskDisplay: (state: AppState) => any;
45
- export declare const selectKioskContentSection: (page: string) => (state: AppState) => unknown;
46
92
  export declare const kioskReducer: import("redux").Reducer<KioskState>;
@@ -1,21 +1,19 @@
1
1
  var _a;
2
- import { __assign, __awaiter, __generator } from "tslib";
3
- import { createSlice, createAsyncThunk } from '@reduxjs/toolkit';
2
+ import { __awaiter, __generator } from "tslib";
3
+ import { createSlice, createAsyncThunk, createSelector } from '@reduxjs/toolkit';
4
4
  import { PosAPI } from '../services';
5
5
  import { ReducerType } from './types';
6
6
  import { errorsApi } from '../services/errors';
7
7
  import { setApi } from './config';
8
- import { decorateTheme } from '../utils';
9
8
  var initialState = {
10
9
  app: null,
11
10
  version: null,
11
+ devices: null,
12
12
  store: null,
13
- revenueCenterId: null,
14
13
  brand: null,
15
14
  content: null,
16
- theme: null,
17
- ratio: 2,
18
- displaySettings: null,
15
+ styles: null,
16
+ ratio: 1,
19
17
  loading: 'idle',
20
18
  error: null,
21
19
  retries: 0
@@ -24,57 +22,44 @@ export var KioskActionType;
24
22
  (function (KioskActionType) {
25
23
  KioskActionType["FetchKiosk"] = "kiosk/getKiosk";
26
24
  })(KioskActionType || (KioskActionType = {}));
27
- var enhanceTheme = function (theme) {
28
- var icons = __assign(__assign({}, theme.icons), { strokeLinejoin: 'miter', strokeLinecap: 'square' });
29
- var kiosk = {
30
- padding: '2rem',
31
- gutter: '1rem',
32
- gutterSmall: '0.5rem'
33
- };
34
- return __assign(__assign({}, theme), { icons: icons, kiosk: kiosk });
35
- };
36
25
  export var fetchKioskConfig = createAsyncThunk(KioskActionType.FetchKiosk, function (_a, _b) {
37
26
  var apiUrl = _a.apiUrl;
38
27
  var dispatch = _b.dispatch, rejectWithValue = _b.rejectWithValue;
39
28
  return __awaiter(void 0, void 0, void 0, function () {
40
- var app, api, _c, kioskConfig, store, err, brand, content, theme, settings, ratio, displaySettings, revenueCenterId, themeEnhanced, themeDevice, err_1;
41
- return __generator(this, function (_d) {
42
- switch (_d.label) {
29
+ var app, api, _c, _d, devicesList, _e, stores, store, devices, err, err_1;
30
+ return __generator(this, function (_f) {
31
+ switch (_f.label) {
43
32
  case 0:
44
- _d.trys.push([0, 2, , 3]);
33
+ _f.trys.push([0, 2, , 3]);
45
34
  app = { apiUrl: apiUrl };
46
35
  api = new PosAPI(app);
47
36
  return [4 /*yield*/, Promise.all([
48
- api.getKioskConfig(),
49
- api.getStore()
37
+ api.getSettings('DEVICES'),
38
+ api.getSettings('STORE')
50
39
  ])];
51
40
  case 1:
52
- _c = _d.sent(), kioskConfig = _c[0], store = _c[1];
53
- if (!kioskConfig || !store) {
41
+ _c = _f.sent(), _d = _c[0], devicesList = _d === void 0 ? [] : _d, _e = _c[1], stores = _e === void 0 ? [] : _e;
42
+ store = stores[0] || null;
43
+ devices = devicesList[0] || null;
44
+ if (!store || !devices) {
54
45
  err = errorsApi.internalServerError;
55
46
  return [2 /*return*/, rejectWithValue(err)];
56
47
  }
57
48
  dispatch(setApi(api));
58
- brand = kioskConfig.brand, content = kioskConfig.content, theme = kioskConfig.theme, settings = kioskConfig.settings;
59
- ratio = settings.ratio, displaySettings = settings.displaySettings;
60
- revenueCenterId = store.revenue_center_id;
61
- themeEnhanced = enhanceTheme(theme);
62
- themeDevice = decorateTheme(themeEnhanced, ratio);
63
49
  return [2 /*return*/, {
64
50
  app: app,
51
+ devices: devices,
65
52
  store: store,
66
- revenueCenterId: revenueCenterId,
67
- brand: brand,
68
- content: content,
69
- theme: themeDevice,
70
- ratio: ratio,
71
- displaySettings: displaySettings,
53
+ brand: null,
54
+ content: null,
55
+ styles: null,
56
+ ratio: 1,
72
57
  error: null,
73
58
  loading: 'idle',
74
59
  retries: 0
75
60
  }];
76
61
  case 2:
77
- err_1 = _d.sent();
62
+ err_1 = _f.sent();
78
63
  return [2 /*return*/, rejectWithValue(err_1)];
79
64
  case 3: return [2 /*return*/];
80
65
  }
@@ -97,20 +82,22 @@ var kioskSlice = createSlice({
97
82
  },
98
83
  setKioskRatio: function (state, action) {
99
84
  state.ratio = action.payload;
85
+ },
86
+ setKioskStyles: function (state, action) {
87
+ state.styles = action.payload;
100
88
  }
101
89
  },
102
90
  extraReducers: function (builder) {
103
91
  builder
104
92
  .addCase(fetchKioskConfig.fulfilled, function (state, action) {
105
- var _a = action.payload, app = _a.app, store = _a.store, revenueCenterId = _a.revenueCenterId, brand = _a.brand, content = _a.content, theme = _a.theme, ratio = _a.ratio, displaySettings = _a.displaySettings;
93
+ var _a = action.payload, app = _a.app, devices = _a.devices, store = _a.store, brand = _a.brand, content = _a.content, styles = _a.styles, ratio = _a.ratio;
106
94
  state.app = app;
95
+ state.devices = devices;
107
96
  state.store = store;
108
- state.revenueCenterId = revenueCenterId;
109
97
  state.brand = brand;
110
98
  state.content = content;
111
- state.theme = theme;
99
+ state.styles = styles;
112
100
  state.ratio = ratio;
113
- state.displaySettings = displaySettings;
114
101
  state.loading = 'idle';
115
102
  state.retries = 0;
116
103
  state.error = null;
@@ -124,20 +111,20 @@ var kioskSlice = createSlice({
124
111
  });
125
112
  }
126
113
  });
127
- export var resetKiosk = (_a = kioskSlice.actions, _a.resetKiosk), resetKioskRetries = _a.resetKioskRetries, incrementKioskRetries = _a.incrementKioskRetries, setKioskVersion = _a.setKioskVersion, setKioskRatio = _a.setKioskRatio;
114
+ export var resetKiosk = (_a = kioskSlice.actions, _a.resetKiosk), resetKioskRetries = _a.resetKioskRetries, incrementKioskRetries = _a.incrementKioskRetries, setKioskVersion = _a.setKioskVersion, setKioskRatio = _a.setKioskRatio, setKioskStyles = _a.setKioskStyles;
128
115
  export var selectKiosk = function (state) { return state.kiosk; };
129
116
  export var selectKioskVersion = function (state) { return state.kiosk.version; };
130
117
  export var selectKioskStore = function (state) { return state.kiosk.store; };
131
- export var selectKioskRcId = function (state) { return state.kiosk.revenueCenterId; };
132
118
  export var selectKioskBrand = function (state) { return state.kiosk.brand; };
133
119
  export var selectKioskContent = function (state) { return state.kiosk.content; };
134
- export var selectKioskTheme = function (state) { return state.kiosk.theme; };
135
- export var selectKioskRatio = function (state) { return state.kiosk.ratio; };
136
- export var selectKioskDisplay = function (state) {
137
- return state.kiosk.displaySettings;
120
+ export var selectKioskContentSection = function (page) {
121
+ return createSelector(function (state) {
122
+ var content = state.kiosk.content;
123
+ return { content: content };
124
+ }, function (content) {
125
+ return content === null || content === void 0 ? void 0 : content[page];
126
+ });
138
127
  };
139
- export var selectKioskContentSection = function (page) { return function (state) {
140
- var _a;
141
- return (_a = state.kiosk.content) === null || _a === void 0 ? void 0 : _a[page];
142
- }; };
128
+ export var selectKioskStyles = function (state) { return state.kiosk.styles; };
129
+ export var selectKioskRatio = function (state) { return state.kiosk.ratio; };
143
130
  export var kioskReducer = kioskSlice.reducer;
@@ -5,6 +5,7 @@ export interface Dimensions {
5
5
  }
6
6
  export type KioskBrand = Record<string, unknown>;
7
7
  export type KioskContent = Record<string, unknown>;
8
+ export type KioskStyles = Record<string, string | number>;
8
9
  export interface KioskSettings {
9
10
  ratio: number;
10
11
  displaySettings: any;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-tender/store",
3
- "version": "0.7.18",
3
+ "version": "0.8.3",
4
4
  "description": "A library of hooks, reducers, utility functions, and types for use with Open Tender applications that utilize our in-store POS API",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",