@dreamcommerce/aurora 3.0.0-45 → 3.0.0-47

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 (24) hide show
  1. package/build/cjs/packages/aurora/src/hooks/search/use_search.js +39 -0
  2. package/build/cjs/packages/aurora/src/hooks/search/use_search.js.map +1 -0
  3. package/build/cjs/packages/aurora/src/index.js +2 -0
  4. package/build/cjs/packages/aurora/src/index.js.map +1 -1
  5. package/build/cjs/packages/aurora/src/utilities/fuzzy_search.js +65 -0
  6. package/build/cjs/packages/aurora/src/utilities/fuzzy_search.js.map +1 -0
  7. package/build/esm/packages/aurora/src/hooks/search/use_search.js +34 -13
  8. package/build/esm/packages/aurora/src/hooks/search/use_search.js.map +1 -1
  9. package/build/esm/packages/aurora/src/index.d.ts +1 -0
  10. package/build/esm/packages/aurora/src/index.js +1 -0
  11. package/build/esm/packages/aurora/src/index.js.map +1 -1
  12. package/build/esm/packages/aurora/src/utilities/fuzzy_search.js +55 -61
  13. package/build/esm/packages/aurora/src/utilities/fuzzy_search.js.map +1 -1
  14. package/build/index.css +1 -1
  15. package/package.json +1 -1
  16. package/build/esm/packages/aurora/src/assets/icons/lock_icon.d.ts +0 -1
  17. package/build/esm/packages/aurora/src/assets/icons/lock_icon.js +0 -3
  18. package/build/esm/packages/aurora/src/assets/icons/lock_icon.js.map +0 -1
  19. package/build/esm/packages/aurora/src/assets/icons/lock_unlock_ikon.d.ts +0 -1
  20. package/build/esm/packages/aurora/src/assets/icons/lock_unlock_ikon.js +0 -3
  21. package/build/esm/packages/aurora/src/assets/icons/lock_unlock_ikon.js.map +0 -1
  22. package/build/esm/packages/aurora/src/components/values_syncer/values_syncer.d.ts +0 -16
  23. package/build/esm/packages/aurora/src/components/values_syncer/values_syncer.js +0 -41
  24. package/build/esm/packages/aurora/src/components/values_syncer/values_syncer.js.map +0 -1
@@ -0,0 +1,39 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var _rollupPluginBabelHelpers = require('../../../../../_virtual/_rollupPluginBabelHelpers.js');
7
+ var fuzzy_search = require('../../utilities/fuzzy_search.js');
8
+
9
+ var useSearch = function useSearch(_ref) {
10
+ var items = _ref.items,
11
+ searchKey = _ref.searchKey,
12
+ _ref$searchStrategy = _ref.searchStrategy,
13
+ searchStrategy = _ref$searchStrategy === void 0 ? fuzzy_search.fuzzySearch : _ref$searchStrategy;
14
+ var _useState = React.useState(items),
15
+ _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
16
+ _items = _useState2[0],
17
+ setItems = _useState2[1];
18
+ var _useState3 = React.useState(''),
19
+ _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
20
+ query = _useState4[0],
21
+ setQuery = _useState4[1];
22
+ React.useEffect(function () {
23
+ setItems(items);
24
+ setItems(searchStrategy(query, items, searchKey));
25
+ }, [items]);
26
+ React.useEffect(function () {
27
+ setItems(searchStrategy(query, items, searchKey));
28
+ }, [query]);
29
+ var search = function search(query) {
30
+ setQuery(query);
31
+ };
32
+ return {
33
+ search: search,
34
+ items: _items
35
+ };
36
+ };
37
+
38
+ exports.useSearch = useSearch;
39
+ //# sourceMappingURL=use_search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -82,6 +82,7 @@ var drawer_trigger = require('./components/drawer/components/drawer_trigger.js')
82
82
  var drawer_content = require('./components/drawer/components/drawer_content.js');
83
83
  var drawer_close = require('./components/drawer/components/drawer_close.js');
84
84
  var drawer_title = require('./components/drawer/components/drawer_title.js');
85
+ var use_search = require('./hooks/search/use_search.js');
85
86
  var tag_constants = require('./components/tag/tag_constants.js');
86
87
  var tag = require('./components/tag/tag.js');
87
88
  var _switch = require('./components/switch/switch.js');
@@ -188,6 +189,7 @@ exports.DrawerTrigger = drawer_trigger.DrawerTrigger;
188
189
  exports.DrawerContent = drawer_content.DrawerContent;
189
190
  exports.DrawerClose = drawer_close.DrawerClose;
190
191
  exports.DrawerTitle = drawer_title.DrawerTitle;
192
+ exports.useSearch = use_search.useSearch;
191
193
  exports.TAG_VARIANTS = tag_constants.TAG_VARIANTS;
192
194
  exports.Tag = tag.Tag;
193
195
  exports.Switch = _switch.Switch;
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,65 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _rollupPluginBabelHelpers = require('../../../../_virtual/_rollupPluginBabelHelpers.js');
6
+ var union = require('lodash/union');
7
+
8
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
+
10
+ var union__default = /*#__PURE__*/_interopDefaultLegacy(union);
11
+
12
+ /**
13
+ * searches within array of objects by given key, returns filtered array of objects using fuzzy algorithm
14
+ * @param {string} query - the phrase by which it searches
15
+ * @param {Array<Object>} arrayToFilter - array which will be searched
16
+ * @param {string} key - key of object within arrayToFilter where search should be used
17
+ * @example
18
+ * // returns [{id: 1, text: 'polish'}, {id: 2, text: 'portugal'}]
19
+ * fuzzySearch('pol', [
20
+ * {id: 1, text: 'polish'},
21
+ * {id: 2, text: 'portugal'},
22
+ * {id: 3, text: 'english'}
23
+ * ], 'text')
24
+ * @returns {Array} - filtered array
25
+ */
26
+ function fuzzySearch(query, arrayToFilter, key) {
27
+ if (query !== '' && query.search(/[-[\]/{}()*+?.\\^$|]/g) === -1) {
28
+ var exactSearch = new RegExp('^' + query + '$', 'i');
29
+ var firstSearch = new RegExp('^' + query, 'i');
30
+ var looseSearch = new RegExp('.*' + query + '.*', 'i');
31
+ var _fuzzySearch = new RegExp('(^' + query + ')|(' + query + ')|(' + query.replace(/\s+/g, '').split('').join('.*') + ')', 'i');
32
+ var exact = [];
33
+ var first = [];
34
+ var loose = [];
35
+ var fuzzy = [];
36
+ console.log('arrayToFilter', arrayToFilter);
37
+ console.log('key', key);
38
+ arrayToFilter.forEach(function (option) {
39
+ var searchBy = !key ? option.toString() : option[key].toString();
40
+ var textWithoutPolishSigns = searchBy.replace(/ę/gi, 'e').replace(/ó/gi, 'o').replace(/ą/gi, 'a').replace(/ś/gi, 's').replace(/ł/gi, 'l').replace(/ż/gi, 'z').replace(/ź/gi, 'z').replace(/ć/gi, 'c').replace(/ń/gi, 'n');
41
+ if (searchBy.match(exactSearch) || textWithoutPolishSigns.match(exactSearch)) {
42
+ exact.push(option);
43
+ return;
44
+ }
45
+ if (searchBy.match(firstSearch) || textWithoutPolishSigns.match(firstSearch)) {
46
+ first.push(option);
47
+ return;
48
+ }
49
+ if (searchBy.match(looseSearch) || textWithoutPolishSigns.match(looseSearch)) {
50
+ loose.push(option);
51
+ return;
52
+ }
53
+ if (searchBy.match(_fuzzySearch) || textWithoutPolishSigns.match(_fuzzySearch)) {
54
+ fuzzy.push(option);
55
+ return;
56
+ }
57
+ });
58
+ return union__default['default'](exact, first, loose, fuzzy);
59
+ } else {
60
+ return _rollupPluginBabelHelpers.toConsumableArray(arrayToFilter);
61
+ }
62
+ }
63
+
64
+ exports.fuzzySearch = fuzzySearch;
65
+ //# sourceMappingURL=fuzzy_search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -1,14 +1,35 @@
1
- import '@auroraHooks/search/use_search_types';
2
- import { useState } from 'react';
3
- import { fuzzySearch } from '@auroraUtilities/fuzzy_search';
4
- export const useSearch = ({ items, searchKey, searchStrategy = fuzzySearch }) => {
5
- const [_items, setItems] = useState(items);
6
- const search = (query) => {
7
- setItems(searchStrategy(query, items, searchKey));
8
- };
9
- return {
10
- search,
11
- items: _items
12
- };
1
+ import { useState, useEffect } from 'react';
2
+ import { slicedToArray as _slicedToArray } from '../../../../../_virtual/_rollupPluginBabelHelpers.js';
3
+ import { fuzzySearch } from '../../utilities/fuzzy_search.js';
4
+
5
+ var useSearch = function useSearch(_ref) {
6
+ var items = _ref.items,
7
+ searchKey = _ref.searchKey,
8
+ _ref$searchStrategy = _ref.searchStrategy,
9
+ searchStrategy = _ref$searchStrategy === void 0 ? fuzzySearch : _ref$searchStrategy;
10
+ var _useState = useState(items),
11
+ _useState2 = _slicedToArray(_useState, 2),
12
+ _items = _useState2[0],
13
+ setItems = _useState2[1];
14
+ var _useState3 = useState(''),
15
+ _useState4 = _slicedToArray(_useState3, 2),
16
+ query = _useState4[0],
17
+ setQuery = _useState4[1];
18
+ useEffect(function () {
19
+ setItems(items);
20
+ setItems(searchStrategy(query, items, searchKey));
21
+ }, [items]);
22
+ useEffect(function () {
23
+ setItems(searchStrategy(query, items, searchKey));
24
+ }, [query]);
25
+ var search = function search(query) {
26
+ setQuery(query);
27
+ };
28
+ return {
29
+ search: search,
30
+ items: _items
31
+ };
13
32
  };
14
- //# sourceMappingURL=use_search.js.map
33
+
34
+ export { useSearch };
35
+ //# sourceMappingURL=use_search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use_search.js","sourceRoot":"","sources":["../../../../../../../src/hooks/search/use_search.ts"],"names":[],"mappings":"AAAA,OAA4D,sCAAsC,CAAC;AACnG,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAE5D,MAAM,CAAC,MAAM,SAAS,GAAG,CAAsC,EAC3D,KAAK,EACL,SAAS,EACT,cAAc,GAAG,WAAW,EACX,EAAoB,EAAE;IACvC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE3C,MAAM,MAAM,GAAG,CAAC,KAAa,EAAQ,EAAE;QACnC,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC;IAEF,OAAO;QACH,MAAM;QACN,KAAK,EAAE,MAAwB;KAClC,CAAC;AACN,CAAC,CAAC"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -81,6 +81,7 @@ export { DrawerContent } from "./components/drawer/components/drawer_content";
81
81
  export { DrawerTitle } from "./components/drawer/components/drawer_title";
82
82
  export { DrawerClose } from "./components/drawer/components/drawer_close";
83
83
  export { DRAWER_DIRECTIONS } from "./components/drawer/drawer_constants";
84
+ export { useSearch } from "./hooks/search/use_search";
84
85
  export { Tag } from "./components/tag/tag";
85
86
  export { TAG_VARIANTS } from "./components/tag/tag_constants";
86
87
  export { Switch } from "./components/switch/switch";
@@ -78,6 +78,7 @@ export { DrawerTrigger } from './components/drawer/components/drawer_trigger.js'
78
78
  export { DrawerContent } from './components/drawer/components/drawer_content.js';
79
79
  export { DrawerClose } from './components/drawer/components/drawer_close.js';
80
80
  export { DrawerTitle } from './components/drawer/components/drawer_title.js';
81
+ export { useSearch } from './hooks/search/use_search.js';
81
82
  export { TAG_VARIANTS } from './components/tag/tag_constants.js';
82
83
  export { Tag } from './components/tag/tag.js';
83
84
  export { Switch } from './components/switch/switch.js';
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -1,63 +1,57 @@
1
- import { union } from 'lodash';
2
- /**
3
- * searches within array of objects by given key, returns filtered array of objects using fuzzy algorithm
4
- * @param {string} query - the phrase by which it searches
5
- * @param {Array<Object>} arrayToFilter - array which will be searched
6
- * @param {string} key - key of object within arrayToFilter where search should be used
7
- * @example
8
- * // returns [{id: 1, text: 'polish'}, {id: 2, text: 'portugal'}]
9
- * fuzzySearch('pol', [
10
- * {id: 1, text: 'polish'},
11
- * {id: 2, text: 'portugal'},
12
- * {id: 3, text: 'english'}
13
- * ], 'text')
14
- * @returns {Array} - filtered array
1
+ import { toConsumableArray as _toConsumableArray } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import union from 'lodash/union';
3
+
4
+ /**
5
+ * searches within array of objects by given key, returns filtered array of objects using fuzzy algorithm
6
+ * @param {string} query - the phrase by which it searches
7
+ * @param {Array<Object>} arrayToFilter - array which will be searched
8
+ * @param {string} key - key of object within arrayToFilter where search should be used
9
+ * @example
10
+ * // returns [{id: 1, text: 'polish'}, {id: 2, text: 'portugal'}]
11
+ * fuzzySearch('pol', [
12
+ * {id: 1, text: 'polish'},
13
+ * {id: 2, text: 'portugal'},
14
+ * {id: 3, text: 'english'}
15
+ * ], 'text')
16
+ * @returns {Array} - filtered array
15
17
  */
16
- export function fuzzySearch(query, arrayToFilter, key) {
17
- if (query !== '' && query.search(/[-[\]/{}()*+?.\\^$|]/g) === -1) {
18
- const exactSearch = new RegExp('^' + query + '$', 'i');
19
- const firstSearch = new RegExp('^' + query, 'i');
20
- const looseSearch = new RegExp('.*' + query + '.*', 'i');
21
- const fuzzySearch = new RegExp('(^' + query + ')|(' + query + ')|(' + query.replace(/\s+/g, '').split('').join('.*') + ')', 'i');
22
- const exact = [];
23
- const first = [];
24
- const loose = [];
25
- const fuzzy = [];
26
- console.log('arrayToFilter', arrayToFilter);
27
- console.log('key', key);
28
- arrayToFilter.forEach((option) => {
29
- const searchBy = !key ? option.toString() : option[key].toString();
30
- const textWithoutPolishSigns = searchBy
31
- .replace(/ę/gi, 'e')
32
- .replace(/ó/gi, 'o')
33
- .replace(/ą/gi, 'a')
34
- .replace(/ś/gi, 's')
35
- .replace(/ł/gi, 'l')
36
- .replace(/ż/gi, 'z')
37
- .replace(/ź/gi, 'z')
38
- .replace(/ć/gi, 'c')
39
- .replace(/ń/gi, 'n');
40
- if (searchBy.match(exactSearch) || textWithoutPolishSigns.match(exactSearch)) {
41
- exact.push(option);
42
- return;
43
- }
44
- if (searchBy.match(firstSearch) || textWithoutPolishSigns.match(firstSearch)) {
45
- first.push(option);
46
- return;
47
- }
48
- if (searchBy.match(looseSearch) || textWithoutPolishSigns.match(looseSearch)) {
49
- loose.push(option);
50
- return;
51
- }
52
- if (searchBy.match(fuzzySearch) || textWithoutPolishSigns.match(fuzzySearch)) {
53
- fuzzy.push(option);
54
- return;
55
- }
56
- });
57
- return union(exact, first, loose, fuzzy);
58
- }
59
- else {
60
- return [...arrayToFilter];
61
- }
18
+ function fuzzySearch(query, arrayToFilter, key) {
19
+ if (query !== '' && query.search(/[-[\]/{}()*+?.\\^$|]/g) === -1) {
20
+ var exactSearch = new RegExp('^' + query + '$', 'i');
21
+ var firstSearch = new RegExp('^' + query, 'i');
22
+ var looseSearch = new RegExp('.*' + query + '.*', 'i');
23
+ var _fuzzySearch = new RegExp('(^' + query + ')|(' + query + ')|(' + query.replace(/\s+/g, '').split('').join('.*') + ')', 'i');
24
+ var exact = [];
25
+ var first = [];
26
+ var loose = [];
27
+ var fuzzy = [];
28
+ console.log('arrayToFilter', arrayToFilter);
29
+ console.log('key', key);
30
+ arrayToFilter.forEach(function (option) {
31
+ var searchBy = !key ? option.toString() : option[key].toString();
32
+ var textWithoutPolishSigns = searchBy.replace(/ę/gi, 'e').replace(/ó/gi, 'o').replace(/ą/gi, 'a').replace(/ś/gi, 's').replace(/ł/gi, 'l').replace(/ż/gi, 'z').replace(/ź/gi, 'z').replace(/ć/gi, 'c').replace(/ń/gi, 'n');
33
+ if (searchBy.match(exactSearch) || textWithoutPolishSigns.match(exactSearch)) {
34
+ exact.push(option);
35
+ return;
36
+ }
37
+ if (searchBy.match(firstSearch) || textWithoutPolishSigns.match(firstSearch)) {
38
+ first.push(option);
39
+ return;
40
+ }
41
+ if (searchBy.match(looseSearch) || textWithoutPolishSigns.match(looseSearch)) {
42
+ loose.push(option);
43
+ return;
44
+ }
45
+ if (searchBy.match(_fuzzySearch) || textWithoutPolishSigns.match(_fuzzySearch)) {
46
+ fuzzy.push(option);
47
+ return;
48
+ }
49
+ });
50
+ return union(exact, first, loose, fuzzy);
51
+ } else {
52
+ return _toConsumableArray(arrayToFilter);
53
+ }
62
54
  }
63
- //# sourceMappingURL=fuzzy_search.js.map
55
+
56
+ export { fuzzySearch };
57
+ //# sourceMappingURL=fuzzy_search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fuzzy_search.js","sourceRoot":"","sources":["../../../../../../src/utilities/fuzzy_search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}