@nyris/nyris-webapp 0.3.3 → 0.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/build/asset-manifest.json +18 -32
  2. package/build/index.html +1 -1
  3. package/build/{precache-manifest.01ce682577e62add75aa397b2a944b75.js → precache-manifest.bffed513ca17d8ac16af1cc3aaa7d908.js} +13 -89
  4. package/build/service-worker.js +1 -1
  5. package/build/static/css/2.43a1c8b7.chunk.css +2 -0
  6. package/build/static/css/2.43a1c8b7.chunk.css.map +1 -0
  7. package/build/static/css/main.2a76dc8a.chunk.css +2 -0
  8. package/build/static/css/main.2a76dc8a.chunk.css.map +1 -0
  9. package/build/static/js/2.4e9a4ce1.chunk.js +3 -0
  10. package/build/static/js/2.4e9a4ce1.chunk.js.LICENSE.txt +79 -0
  11. package/build/static/js/2.4e9a4ce1.chunk.js.map +1 -0
  12. package/build/static/js/main.ec93aa4d.chunk.js +2 -0
  13. package/build/static/js/main.ec93aa4d.chunk.js.map +1 -0
  14. package/build/static/js/{runtime-main.b418ff16.js → runtime-main.f5553a9b.js} +1 -1
  15. package/build/static/js/{runtime-main.b418ff16.js.map → runtime-main.f5553a9b.js.map} +1 -1
  16. package/package.json +7 -30
  17. package/src/App.css +64 -20
  18. package/src/App.tsx +253 -19
  19. package/src/AppMD.tsx +320 -0
  20. package/src/Demo2.tsx +220 -0
  21. package/src/actions/nyrisAppActions.ts +76 -0
  22. package/src/actions/searchActions.ts +218 -0
  23. package/src/components/ExampleImages.tsx +17 -32
  24. package/src/components/Feedback.tsx +48 -87
  25. package/src/components/FiltersList.tsx +69 -0
  26. package/src/components/Header.tsx +17 -32
  27. package/src/components/Result.tsx +113 -186
  28. package/src/components/Sidebar.tsx +40 -0
  29. package/src/defaults.ts +3 -4
  30. package/src/{Store/epics → epics}/feedback.ts +0 -0
  31. package/src/epics/index.ts +154 -0
  32. package/src/epics/search.ts +203 -0
  33. package/src/{Store/epics → epics}/types.ts +1 -1
  34. package/src/{common/assets/fonts → fonts}/roboto-bold-webfont.woff +0 -0
  35. package/src/{common/assets/fonts → fonts}/roboto-bold-webfont.woff2 +0 -0
  36. package/src/{common/assets/fonts → fonts}/roboto-italic-webfont.woff +0 -0
  37. package/src/{common/assets/fonts → fonts}/roboto-italic-webfont.woff2 +0 -0
  38. package/src/{common/assets/fonts → fonts}/roboto-regular-webfont.woff +0 -0
  39. package/src/{common/assets/fonts → fonts}/roboto-regular-webfont.woff2 +0 -0
  40. package/src/{common/assets/fonts → fonts}/robotocondensed-bold-webfont.woff +0 -0
  41. package/src/{common/assets/fonts → fonts}/robotocondensed-bold-webfont.woff2 +0 -0
  42. package/src/{common/assets/fonts → fonts}/robotocondensed-bolditalic-webfont.woff +0 -0
  43. package/src/{common/assets/fonts → fonts}/robotocondensed-bolditalic-webfont.woff2 +0 -0
  44. package/src/{common/assets/images → images}/fav/android-icon-192x192.png +0 -0
  45. package/src/{common/assets/images → images}/fav/apple-icon-114x114.png +0 -0
  46. package/src/{common/assets/images → images}/fav/apple-icon-120x120.png +0 -0
  47. package/src/{common/assets/images → images}/fav/apple-icon-144x144.png +0 -0
  48. package/src/{common/assets/images → images}/fav/apple-icon-152x152.png +0 -0
  49. package/src/{common/assets/images → images}/fav/apple-icon-180x180.png +0 -0
  50. package/src/{common/assets/images → images}/fav/apple-icon-57x57.png +0 -0
  51. package/src/{common/assets/images → images}/fav/apple-icon-60x60.png +0 -0
  52. package/src/{common/assets/images → images}/fav/apple-icon-72x72.png +0 -0
  53. package/src/{common/assets/images → images}/fav/apple-icon-76x76.png +0 -0
  54. package/src/{common/assets/images → images}/fav/browserconfig.xml +0 -0
  55. package/src/{common/assets/images → images}/fav/favicon-16x16.png +0 -0
  56. package/src/{common/assets/images → images}/fav/favicon-32x32.png +0 -0
  57. package/src/{common/assets/images → images}/fav/favicon-96x96.png +0 -0
  58. package/src/{common/assets/images → images}/fav/manifest.json +0 -0
  59. package/src/{common/assets/images → images}/ic_cam.png +0 -0
  60. package/src/{common/assets/images → images}/ic_cam.svg +0 -0
  61. package/src/{common/assets/images → images}/ic_cam_large.png +0 -0
  62. package/src/{common/assets/images → images}/ic_cam_large.svg +0 -0
  63. package/src/{common/assets/images → images}/ic_cam_large_noimage.png +0 -0
  64. package/src/{common/assets/images → images}/ic_close_feedback.png +0 -0
  65. package/src/{common/assets/images → images}/ic_close_feedback.svg +0 -0
  66. package/src/{common/assets/images → images}/ic_shopNow.png +0 -0
  67. package/src/{common/assets/images → images}/ic_shopNow.svg +0 -0
  68. package/src/{common/assets/images → images}/ic_shopNowLight.png +0 -0
  69. package/src/{common/assets/images → images}/ic_shopNowLight.svg +0 -0
  70. package/src/{common/assets/images → images}/nyris_logo.png +0 -0
  71. package/src/{common/assets/images → images}/rewe.svg +0 -0
  72. package/src/{common/assets/images → images}/sectionTransBack.png +0 -0
  73. package/src/{common/assets/images → images}/sectionTransBack.svg +0 -0
  74. package/src/{common/assets/images → images}/sectionTransTop.png +0 -0
  75. package/src/{common/assets/images → images}/sectionTransTop.svg +0 -0
  76. package/src/index.css +416 -573
  77. package/src/index.tsx +190 -39
  78. package/src/types.ts +3 -43
  79. package/tsconfig.json +8 -3
  80. package/build/js/settings.example.js +0 -31
  81. package/build/js/test.js +0 -56
  82. package/build/static/css/2.8285176a.chunk.css +0 -2
  83. package/build/static/css/2.8285176a.chunk.css.map +0 -1
  84. package/build/static/css/main.6676fe1f.chunk.css +0 -2
  85. package/build/static/css/main.6676fe1f.chunk.css.map +0 -1
  86. package/build/static/js/2.d1562c08.chunk.js +0 -3
  87. package/build/static/js/2.d1562c08.chunk.js.LICENSE.txt +0 -133
  88. package/build/static/js/2.d1562c08.chunk.js.map +0 -1
  89. package/build/static/js/main.5c08aba4.chunk.js +0 -2
  90. package/build/static/js/main.5c08aba4.chunk.js.map +0 -1
  91. package/build/static/media/Fill.37094b44.svg +0 -3
  92. package/build/static/media/Montserrat-Bold.5a052e98.otf +0 -0
  93. package/build/static/media/Montserrat-Light.21789e89.otf +0 -0
  94. package/build/static/media/Montserrat-Medium.a53e0373.otf +0 -0
  95. package/build/static/media/Montserrat-Regular.71cdc681.otf +0 -0
  96. package/build/static/media/Montserrat-SemiBold.f613d915.otf +0 -0
  97. package/build/static/media/Rectangle.4dd8b747.png +0 -0
  98. package/build/static/media/admin.9529c7f6.svg +0 -3
  99. package/build/static/media/bg-support-page.6ac55268.svg +0 -9
  100. package/build/static/media/book_mark.8e294c0b.svg +0 -3
  101. package/build/static/media/icon_dislike.94607ca6.svg +0 -3
  102. package/build/static/media/icon_like.a4fb1b18.svg +0 -3
  103. package/build/static/media/icon_modal_image.3068d0ea.svg +0 -21
  104. package/build/static/media/icon_search_image.c2c728c0.svg +0 -3
  105. package/build/static/media/nyris_logo.22d8f250.svg +0 -3
  106. package/build/static/media/reload_icon.4b579a74.svg +0 -3
  107. package/build/static/media/save_search.bebaeebf.svg +0 -3
  108. package/build/static/media/support.289c3a3c.svg +0 -3
  109. package/build/static/media/translate_icon.f0492297.svg +0 -3
  110. package/public/js/settings.example.js +0 -31
  111. package/public/js/test.js +0 -56
  112. package/src/Router.tsx +0 -97
  113. package/src/Store/Auth.ts +0 -44
  114. package/src/Store/Nyris.ts +0 -77
  115. package/src/Store/Search.ts +0 -269
  116. package/src/Store/Store.ts +0 -46
  117. package/src/Store/common.d.ts +0 -10
  118. package/src/common/assets/fonts/Montserrat_OTF/Montserrat-Bold.otf +0 -0
  119. package/src/common/assets/fonts/Montserrat_OTF/Montserrat-Light.otf +0 -0
  120. package/src/common/assets/fonts/Montserrat_OTF/Montserrat-Medium.otf +0 -0
  121. package/src/common/assets/fonts/Montserrat_OTF/Montserrat-Regular.otf +0 -0
  122. package/src/common/assets/fonts/Montserrat_OTF/Montserrat-SemiBold.otf +0 -0
  123. package/src/common/assets/icons/Fill.png +0 -0
  124. package/src/common/assets/icons/Fill.svg +0 -3
  125. package/src/common/assets/icons/Icon_wechat.png +0 -0
  126. package/src/common/assets/icons/Icon_whatsapp.png +0 -0
  127. package/src/common/assets/icons/admin.png +0 -0
  128. package/src/common/assets/icons/admin.svg +0 -3
  129. package/src/common/assets/icons/book_mark.png +0 -0
  130. package/src/common/assets/icons/book_mark.svg +0 -3
  131. package/src/common/assets/icons/icon_barcode.png +0 -0
  132. package/src/common/assets/icons/icon_camera.png +0 -0
  133. package/src/common/assets/icons/icon_dislike.svg +0 -3
  134. package/src/common/assets/icons/icon_disslike.png +0 -0
  135. package/src/common/assets/icons/icon_email.png +0 -0
  136. package/src/common/assets/icons/icon_like.png +0 -0
  137. package/src/common/assets/icons/icon_like.svg +0 -3
  138. package/src/common/assets/icons/icon_modal_image.png +0 -0
  139. package/src/common/assets/icons/icon_modal_image.svg +0 -21
  140. package/src/common/assets/icons/icon_picture.png +0 -0
  141. package/src/common/assets/icons/icon_search_image.png +0 -0
  142. package/src/common/assets/icons/icon_search_image.svg +0 -3
  143. package/src/common/assets/icons/nyris_logo.svg +0 -3
  144. package/src/common/assets/icons/reload_icon.png +0 -0
  145. package/src/common/assets/icons/reload_icon.svg +0 -3
  146. package/src/common/assets/icons/save_search.png +0 -0
  147. package/src/common/assets/icons/save_search.svg +0 -3
  148. package/src/common/assets/icons/setting_search_icon.png +0 -0
  149. package/src/common/assets/icons/support.png +0 -0
  150. package/src/common/assets/icons/support.svg +0 -3
  151. package/src/common/assets/icons/translate_icon.png +0 -0
  152. package/src/common/assets/icons/translate_icon.svg +0 -3
  153. package/src/common/assets/icons/view_off.png +0 -0
  154. package/src/common/assets/images/Rectangle.png +0 -0
  155. package/src/common/assets/images/bg-support-page.svg +0 -9
  156. package/src/common/assets/images/image_test.png +0 -0
  157. package/src/components/CustomHits/index.tsx +0 -57
  158. package/src/components/DetailItem.tsx +0 -175
  159. package/src/components/DragDropFile.tsx +0 -188
  160. package/src/components/FilterComponent.tsx +0 -33
  161. package/src/components/Footer.tsx +0 -29
  162. package/src/components/FooterMD.tsx +0 -54
  163. package/src/components/FooterNewVersion.tsx +0 -12
  164. package/src/components/FooterResult.tsx +0 -47
  165. package/src/components/HeaderMd.tsx +0 -39
  166. package/src/components/HeaderNewVersion.tsx +0 -92
  167. package/src/components/Layout.tsx +0 -46
  168. package/src/components/LoadingScreen/index.tsx +0 -29
  169. package/src/components/Navigation.tsx +0 -34
  170. package/src/components/Panigation/Pagination.tsx +0 -140
  171. package/src/components/Panigation/cx.js +0 -3
  172. package/src/components/Panigation/isModifierClick.js +0 -10
  173. package/src/components/Saved/AllItem.tsx +0 -32
  174. package/src/components/Saved/Category.tsx +0 -16
  175. package/src/components/carousel/DefaultCarousel.tsx +0 -48
  176. package/src/components/common.d.ts +0 -9
  177. package/src/components/common.scss +0 -54
  178. package/src/components/default-select.tsx +0 -44
  179. package/src/components/hitItem/hits.tsx +0 -50
  180. package/src/components/hitItem/infinitiHits.tsx +0 -33
  181. package/src/components/input/inputSearch.tsx +0 -77
  182. package/src/components/modal/DefaultModal.tsx +0 -28
  183. package/src/components/preview/preview.tsx +0 -433
  184. package/src/components/results/ItemResult.tsx +0 -155
  185. package/src/components/search/ListSearch.tsx +0 -209
  186. package/src/modules/LandingPage/common.scss +0 -1304
  187. package/src/modules/LandingPage/indexApp.tsx +0 -492
  188. package/src/modules/LandingPage/indexAppMD.tsx +0 -501
  189. package/src/modules/LandingPage/indexNewVersion.tsx +0 -117
  190. package/src/page/Auth/login.tsx +0 -7
  191. package/src/page/Exception/404.tsx +0 -11
  192. package/src/page/History/index.tsx +0 -76
  193. package/src/page/Profile/index.tsx +0 -87
  194. package/src/page/Saved/MockData.ts +0 -223
  195. package/src/page/Saved/index.tsx +0 -166
  196. package/src/page/Support/index.tsx +0 -160
  197. package/src/page/result/MockData.ts +0 -36
  198. package/src/page/result/index.tsx +0 -473
  199. package/src/services/Feedback.ts +0 -65
  200. package/src/services/findByImage.ts +0 -24
  201. package/src/services/findRegionsCustom.ts +0 -212
  202. package/src/services/image.ts +0 -110
  203. package/src/services/nyris.ts +0 -123
  204. package/src/services/session.ts +0 -20
  205. package/src/services/types.ts +0 -96
@@ -0,0 +1,203 @@
1
+ import {EpicConf} from "./types";
2
+ import {combineEpics, ofType} from "redux-observable";
3
+ import {switchMap, withLatestFrom} from "rxjs/operators";
4
+ import {AppAction} from "../types";
5
+ import {ImageSearchOptions, urlOrBlobToCanvas, isCadFile, isImageFile, Filter } from "@nyris/nyris-api";
6
+ import {imageLoaded, cadFileLoaded} from "../actions/searchActions";
7
+
8
+ const imageSearch: EpicConf = (action$, state$, {api}) => action$.pipe(
9
+ ofType('SEARCH_REQUEST_START'),
10
+ withLatestFrom(state$),
11
+ switchMap(async ([action, state]) : Promise<AppAction> => {
12
+ if (action.type !== 'SEARCH_REQUEST_START') {
13
+ throw new Error(`Wrong action type ${action.type}`);
14
+ }
15
+ console.log("state search ");
16
+ console.log(state.search.selectedFilters);
17
+
18
+ if ('image' in action) {
19
+ let { image, normalizedRect} = action;
20
+ console.log("Selected Filters");
21
+ let selectedFilters = new Array<Filter>();
22
+ if(state.search.selectedFilters.size > 0 ){
23
+ state.search.selectedFilters.forEach((values, key) => {
24
+ let filterObj: Filter ={
25
+ key : key,
26
+ values : values
27
+ }
28
+ selectedFilters.push(filterObj);
29
+ });
30
+ }
31
+
32
+ let options : ImageSearchOptions = {
33
+ cropRect: normalizedRect
34
+ };
35
+
36
+ try {
37
+ if(selectedFilters && selectedFilters.length> 0)
38
+ {
39
+ console.log("With Filters");
40
+ const {results, duration, requestId, categoryPredictions, codes} = await api.findByImageWithFilters(image, options, selectedFilters);
41
+ return ({ type: 'SEARCH_REQUEST_SUCCEED', results, requestId, duration, categoryPredictions, codes });
42
+
43
+ }
44
+ else{
45
+ console.log("Without Filters");
46
+ const {results, duration, requestId, categoryPredictions, codes} = await api.findByImage(image, options);
47
+ return ({ type: 'SEARCH_REQUEST_SUCCEED', results, requestId, duration, categoryPredictions, codes });
48
+ }
49
+ } catch (e) {
50
+ console.warn('search failed', e);
51
+ return ({ type: 'SEARCH_REQUEST_FAIL', reason: e.message, exception: e });
52
+ }
53
+ }
54
+
55
+ if ('file' in action) {
56
+ console.log('file');
57
+ let { file } = action;
58
+
59
+ let options : ImageSearchOptions = { };
60
+
61
+ try {
62
+ const {results, duration, requestId, categoryPredictions, codes} = await api.findByCad(file, options);
63
+ return ({ type: 'SEARCH_REQUEST_SUCCEED', results, requestId, duration, categoryPredictions, codes });
64
+ } catch (e) {
65
+ console.warn('search failed', e);
66
+ return ({ type: 'SEARCH_REQUEST_FAIL', reason: e.message, exception: e });
67
+ }
68
+ }
69
+ throw new Error(`Wrong action content ${action}`);
70
+ })
71
+ );
72
+
73
+ const regionSearch: EpicConf = (action$, state$, {api}) => action$.pipe(
74
+ ofType('REGION_REQUEST_START'),
75
+ withLatestFrom(state$),
76
+ switchMap(async ([action, {settings}]) : Promise<AppAction> => {
77
+ if (action.type !== 'REGION_REQUEST_START') {
78
+ throw new Error(`Wrong action type ${action.type}`);
79
+ }
80
+
81
+ let { image } = action;
82
+
83
+ try {
84
+ let regions = await api.findRegions(image);
85
+ return {type: 'REGION_REQUEST_SUCCEED', regions };
86
+
87
+ } catch (e) {
88
+ console.error(e);
89
+ return {type: 'REGION_REQUEST_FAIL', reason: e.message, exception: e};
90
+ }
91
+ })
92
+ );
93
+
94
+ const loadFile: EpicConf = (action$) => action$.pipe(
95
+ ofType('LOAD_FILE'),
96
+ switchMap(async (action) : Promise<AppAction> => {
97
+ if (action.type !== 'LOAD_FILE') {
98
+ throw new Error(`Wrong action type ${action.type}`);
99
+ }
100
+ const randomId = Math.random().toString();
101
+ if ('file' in action) {
102
+ const file = action.file;
103
+ if (isImageFile(file)) {
104
+ return imageLoaded(await urlOrBlobToCanvas(file), randomId);
105
+ }
106
+ if (isCadFile(file)) {
107
+ return cadFileLoaded(file, randomId);
108
+ }
109
+ }
110
+ throw new Error(`LOAD_FILE action wrong properties ${Object.keys(action).join(',')}`);
111
+ })
112
+ );
113
+
114
+ const loadImage: EpicConf = (action$) => action$.pipe(
115
+ ofType('LOAD_IMAGE'),
116
+ switchMap(async (action) : Promise<AppAction> => {
117
+ if (action.type !== 'LOAD_IMAGE') {
118
+ throw new Error(`Wrong action type ${action.type}`);
119
+ }
120
+ const randomId = Math.random().toString();
121
+ if ('url' in action) {
122
+ return imageLoaded(await urlOrBlobToCanvas(action.url), randomId);
123
+ }
124
+ if ('file' in action) {
125
+ return imageLoaded(await urlOrBlobToCanvas(action.file), randomId);
126
+ }
127
+ if ('image' in action) {
128
+ return imageLoaded(action.image, randomId);
129
+ }
130
+ throw new Error(`LOAD_IMAGE action wrong properties ${Object.keys(action).join(',')}`);
131
+ })
132
+ );
133
+
134
+
135
+ const loadFilters: EpicConf = (action$, state$, {api}) => action$.pipe(
136
+ ofType('LOAD_FILTERS'),
137
+ withLatestFrom(state$),
138
+ switchMap(async ([action, state]) : Promise<AppAction> => {
139
+ if(action.type !== 'LOAD_FILTERS'){
140
+ throw new Error(`Wrong action type ${action.type}`);
141
+ }
142
+ try {
143
+ // use find filters
144
+
145
+ let filters = await api.getFilters();
146
+
147
+ filters= filters.slice(0, 3);
148
+ console.log(filters);
149
+ // let filters : Filter[] = [
150
+ // {
151
+ // filterType: 'MachineType',
152
+ // filterValues : [
153
+ // "MachineType1",
154
+ // "MachineType2",
155
+ // "MachineType3",
156
+ // "MachineType4",
157
+ // "MachineType5"
158
+ // ]
159
+ // },
160
+ // {
161
+ // filterType: 'Color',
162
+ // filterValues :[
163
+ // "Red",
164
+ // "Green",
165
+ // "Blue",
166
+ // "Yellow",
167
+ // "Black"
168
+ // ]
169
+ // }];
170
+ return {type: 'LOAD_FILTERS_SUCCESS', filters };
171
+
172
+ } catch (e) {
173
+ console.error(e);
174
+ return {type: 'LOAD_FILTERS_FAIL', reason: e.message, exception: e};
175
+ }
176
+ })
177
+ );
178
+
179
+ const addToSelectedFilters: EpicConf = (action$) => action$.pipe(
180
+ ofType('ADD_TO_SELECTEDFILTERS'),
181
+ switchMap(async (action) : Promise<AppAction> => {
182
+
183
+ if(action.type !== 'ADD_TO_SELECTEDFILTERS'){
184
+ throw new Error(`Wrong action type ${action.type}`);
185
+ }
186
+ if('key' in action && 'value' in action){
187
+
188
+ let {key, value} = action;
189
+ console.log(key);
190
+ console.log(action);
191
+ return {type : 'ADD_TO_SELECTEDFILTERS_SUCCESS', key , value }
192
+ }
193
+ throw new Error(`Change filters action wrong properties ${Object.keys(action).join(',')}`);
194
+ })
195
+ );
196
+
197
+ export default combineEpics(
198
+ imageSearch,
199
+ regionSearch,
200
+ loadFile,
201
+ loadImage,
202
+ loadFilters,
203
+ addToSelectedFilters);
@@ -1,6 +1,6 @@
1
1
  import NyrisAPI from "@nyris/nyris-api";
2
2
  import {Epic} from "redux-observable";
3
- import {AppAction, AppState} from "../../types";
3
+ import {AppAction, AppState} from "../types";
4
4
  import {History} from "history";
5
5
 
6
6
  export interface EpicsDependencies {
File without changes
File without changes
File without changes