@telia-ace/knowledge-widget-components-search 1.0.4 → 1.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{lib-esm → dist}/filter-badges.d.ts +0 -0
- package/{lib-esm → dist}/index.d.ts +0 -0
- package/dist/index.js +234 -0
- package/dist/index.js.map +1 -0
- package/{lib-esm → dist}/quick-filter-item-list.d.ts +0 -0
- package/{lib-esm → dist}/quick-filter.d.ts +0 -0
- package/{lib-esm → dist}/search-component.d.ts +0 -0
- package/{lib-esm → dist}/search.d.ts +0 -0
- package/dist/search.js +1063 -0
- package/dist/search.js.map +1 -0
- package/{lib-esm → dist}/use-search.d.ts +0 -0
- package/{lib-esm → dist}/utils.d.ts +0 -0
- package/package.json +12 -13
- package/lib/filter-badges.d.ts +0 -10
- package/lib/filter-badges.js +0 -235
- package/lib/index.d.ts +0 -2
- package/lib/index.js +0 -7
- package/lib/quick-filter-item-list.d.ts +0 -17
- package/lib/quick-filter-item-list.js +0 -228
- package/lib/quick-filter.d.ts +0 -7
- package/lib/quick-filter.js +0 -93
- package/lib/search-component.d.ts +0 -42
- package/lib/search-component.js +0 -274
- package/lib/search.d.ts +0 -7
- package/lib/search.js +0 -194
- package/lib/use-search.d.ts +0 -10
- package/lib/use-search.js +0 -99
- package/lib/utils.d.ts +0 -3
- package/lib/utils.js +0 -53
- package/lib-esm/filter-badges.js +0 -210
- package/lib-esm/index.js +0 -2
- package/lib-esm/quick-filter-item-list.js +0 -200
- package/lib-esm/quick-filter.js +0 -65
- package/lib-esm/search-component.js +0 -249
- package/lib-esm/search.js +0 -166
- package/lib-esm/use-search.js +0 -97
- package/lib-esm/utils.js +0 -48
package/lib/search.js
DELETED
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
-
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
-
return cooked;
|
|
5
|
-
};
|
|
6
|
-
var __assign = (this && this.__assign) || function () {
|
|
7
|
-
__assign = Object.assign || function(t) {
|
|
8
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
9
|
-
s = arguments[i];
|
|
10
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
11
|
-
t[p] = s[p];
|
|
12
|
-
}
|
|
13
|
-
return t;
|
|
14
|
-
};
|
|
15
|
-
return __assign.apply(this, arguments);
|
|
16
|
-
};
|
|
17
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
-
if (k2 === undefined) k2 = k;
|
|
19
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
21
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
22
|
-
}
|
|
23
|
-
Object.defineProperty(o, k2, desc);
|
|
24
|
-
}) : (function(o, m, k, k2) {
|
|
25
|
-
if (k2 === undefined) k2 = k;
|
|
26
|
-
o[k2] = m[k];
|
|
27
|
-
}));
|
|
28
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
29
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
30
|
-
}) : function(o, v) {
|
|
31
|
-
o["default"] = v;
|
|
32
|
-
});
|
|
33
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
34
|
-
if (mod && mod.__esModule) return mod;
|
|
35
|
-
var result = {};
|
|
36
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
37
|
-
__setModuleDefault(result, mod);
|
|
38
|
-
return result;
|
|
39
|
-
};
|
|
40
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
41
|
-
var t = {};
|
|
42
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
43
|
-
t[p] = s[p];
|
|
44
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
45
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
46
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
47
|
-
t[p[i]] = s[p[i]];
|
|
48
|
-
}
|
|
49
|
-
return t;
|
|
50
|
-
};
|
|
51
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
52
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
53
|
-
if (!m) return o;
|
|
54
|
-
var i = m.call(o), r, ar = [], e;
|
|
55
|
-
try {
|
|
56
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
57
|
-
}
|
|
58
|
-
catch (error) { e = { error: error }; }
|
|
59
|
-
finally {
|
|
60
|
-
try {
|
|
61
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
62
|
-
}
|
|
63
|
-
finally { if (e) throw e.error; }
|
|
64
|
-
}
|
|
65
|
-
return ar;
|
|
66
|
-
};
|
|
67
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
68
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
69
|
-
};
|
|
70
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
71
|
-
var knowledge_widget_types_grid_1 = require("@telia-ace/knowledge-widget-types-grid");
|
|
72
|
-
var knowledge_widget_ui_1 = require("@telia-ace/knowledge-widget-ui");
|
|
73
|
-
var widget_utilities_1 = require("@telia-ace/widget-utilities");
|
|
74
|
-
var react_1 = __importStar(require("react"));
|
|
75
|
-
var styled_components_1 = __importStar(require("styled-components"));
|
|
76
|
-
var filter_badges_1 = __importDefault(require("./filter-badges"));
|
|
77
|
-
var quick_filter_1 = __importDefault(require("./quick-filter"));
|
|
78
|
-
var use_search_1 = __importDefault(require("./use-search"));
|
|
79
|
-
var Search = function (_a) {
|
|
80
|
-
var className = _a.className, other = __rest(_a, ["className"]);
|
|
81
|
-
var _b = (0, knowledge_widget_ui_1.useProperties)(), showSearchButton = _b.showSearchButton, showClearButton = _b.showClearButton, _c = _b.role, role = _c === void 0 ? 'search' : _c, autoFocus = _b.autoFocus, placeholder = _b.placeholder, searchButtonLabel = _b.searchButtonLabel, clearButtonLabel = _b.clearButtonLabel, ariaLabel = _b.ariaLabel, _d = _b.route, searchRoute = _d === void 0 ? 'search' : _d, _e = _b.incremental, incremental = _e === void 0 ? true : _e, _f = _b.showChildren, showChildren = _f === void 0 ? false : _f, quickFilter = _b.quickFilter, quickFiltersEnabled = _b.quickFilters, filterBadges = _b.filterBadges;
|
|
82
|
-
var params = (0, knowledge_widget_ui_1.useRouteData)().params;
|
|
83
|
-
var _g = __read((0, react_1.useState)(false), 2), hasFocus = _g[0], setHasFocus = _g[1];
|
|
84
|
-
var _h = __read((0, react_1.useState)(params.phrase || ''), 2), phrase = _h[0], setPhrase = _h[1];
|
|
85
|
-
var _j = __read((0, react_1.useState)({
|
|
86
|
-
guideCategory: false,
|
|
87
|
-
tag: false,
|
|
88
|
-
}), 2), showFilterBadges = _j[0], setShowFilterBadges = _j[1];
|
|
89
|
-
var container = (0, knowledge_widget_ui_1.useContainer)();
|
|
90
|
-
var children = (0, knowledge_widget_ui_1.useChildren)();
|
|
91
|
-
var dispatch = (0, knowledge_widget_ui_1.useDispatch)();
|
|
92
|
-
var _k = (typeof filterBadges === 'object' ? filterBadges : {}).position, filterBadgePosition = _k === void 0 ? 'inside' : _k;
|
|
93
|
-
(0, react_1.useEffect)(function () {
|
|
94
|
-
var guideCategory = params.guideCategory, tag = params.tag;
|
|
95
|
-
var showGuideCategory = typeof filterBadges === 'object' ? !!filterBadges.guideCategory : !!filterBadges;
|
|
96
|
-
var showTag = typeof filterBadges === 'object' ? !!filterBadges.tag : !!filterBadges;
|
|
97
|
-
setShowFilterBadges({
|
|
98
|
-
guideCategory: showGuideCategory && !!guideCategory,
|
|
99
|
-
tag: showTag && !!tag,
|
|
100
|
-
});
|
|
101
|
-
}, [filterBadges, params]);
|
|
102
|
-
// Remove quick-filter symbol, quick-filter phrase
|
|
103
|
-
// and close quick-filter when route changed
|
|
104
|
-
(0, knowledge_widget_ui_1.useWidgetEvent)('router:changed', function () {
|
|
105
|
-
if (quickFilter) {
|
|
106
|
-
var open_1 = quickFilter.open, symbol = quickFilter.symbol;
|
|
107
|
-
if (open_1) {
|
|
108
|
-
if (symbol) {
|
|
109
|
-
var cleaned = phrase.replace(phrase.slice(phrase.indexOf(symbol)), '');
|
|
110
|
-
setPhrase(cleaned);
|
|
111
|
-
}
|
|
112
|
-
dispatch('quick-filter:close');
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
}, [quickFilter, phrase, setPhrase, dispatch]);
|
|
116
|
-
var _l = __read((0, use_search_1.default)(phrase, params, !!incremental), 3), search = _l[0], clear = _l[1], elem = _l[2];
|
|
117
|
-
(0, react_1.useEffect)(function () {
|
|
118
|
-
setPhrase(params.phrase || '');
|
|
119
|
-
}, [params.phrase]);
|
|
120
|
-
var onChange = (0, react_1.useCallback)(function (value) {
|
|
121
|
-
setPhrase(value);
|
|
122
|
-
}, [setPhrase]);
|
|
123
|
-
var onEscape = (0, react_1.useCallback)(function () {
|
|
124
|
-
dispatch('quick-filter:close').then(function () { return clear(true); });
|
|
125
|
-
}, [dispatch, clear]);
|
|
126
|
-
var autoFocusHandler = (0, react_1.useCallback)(function () {
|
|
127
|
-
var _a, _b;
|
|
128
|
-
if (autoFocus && !hasFocus) {
|
|
129
|
-
(_b = (_a = elem.current) === null || _a === void 0 ? void 0 : _a.getElementsByTagName('input')[0]) === null || _b === void 0 ? void 0 : _b.focus();
|
|
130
|
-
}
|
|
131
|
-
}, [autoFocus, hasFocus, elem]);
|
|
132
|
-
var onClearButtonClick = (0, react_1.useCallback)(function () {
|
|
133
|
-
container.getAsync('router').then(function (router) {
|
|
134
|
-
var initialRoute = router.getInitialRoute();
|
|
135
|
-
var currentRoute = router.getRouteData();
|
|
136
|
-
// if we already are on the initial route
|
|
137
|
-
// and it's not the search route, clear the search instead of navigate
|
|
138
|
-
if ((initialRoute === null || initialRoute === void 0 ? void 0 : initialRoute.name) === currentRoute.name && (initialRoute === null || initialRoute === void 0 ? void 0 : initialRoute.name) !== searchRoute) {
|
|
139
|
-
setPhrase('');
|
|
140
|
-
}
|
|
141
|
-
else {
|
|
142
|
-
clear(true);
|
|
143
|
-
}
|
|
144
|
-
});
|
|
145
|
-
}, [container, setPhrase, clear]);
|
|
146
|
-
var renderFilterBadges = function (position) {
|
|
147
|
-
if (position !== filterBadgePosition) {
|
|
148
|
-
return null;
|
|
149
|
-
}
|
|
150
|
-
if (!!showFilterBadges.guideCategory || !!showFilterBadges.tag) {
|
|
151
|
-
return (react_1.default.createElement(filter_badges_1.default, { position: position, inputHasFocus: hasFocus, showGuideCategory: showFilterBadges.guideCategory, showTag: showFilterBadges.tag, searchContainerRef: elem.current }));
|
|
152
|
-
}
|
|
153
|
-
};
|
|
154
|
-
(0, knowledge_widget_ui_1.useTransitionEnd)(autoFocusHandler);
|
|
155
|
-
var showClear = showClearButton && (showFilterBadges.guideCategory || showFilterBadges.tag || phrase);
|
|
156
|
-
var quickFilterAccessibilityProps = quickFiltersEnabled
|
|
157
|
-
? (0, knowledge_widget_ui_1.convertToStringAttributes)({
|
|
158
|
-
role: 'combobox',
|
|
159
|
-
'aria-autocomplete': 'list',
|
|
160
|
-
autoComplete: 'off',
|
|
161
|
-
'aria-haspopup': 'listbox',
|
|
162
|
-
})
|
|
163
|
-
: {};
|
|
164
|
-
return (react_1.default.createElement(StyledSearchWrapper, __assign({}, other, { ref: elem, role: role, className: (0, widget_utilities_1.appendClassNames)(className, 'humany-search'), "data-has-phrase": !!phrase, "data-has-focus": hasFocus, "data-has-search-symbol": showSearchButton ? 'true' : 'false' }),
|
|
165
|
-
react_1.default.createElement(Inner, { action: ".", onSubmit: function (e) {
|
|
166
|
-
var _a, _b;
|
|
167
|
-
e.preventDefault();
|
|
168
|
-
(_b = (_a = elem.current) === null || _a === void 0 ? void 0 : _a.getElementsByTagName('input')[0]) === null || _b === void 0 ? void 0 : _b.blur();
|
|
169
|
-
}, "data-has-focus": hasFocus },
|
|
170
|
-
showSearchButton && (react_1.default.createElement(SearchButton, { "aria-label": searchButtonLabel, type: "submit", title: searchButtonLabel, disabled: !phrase, onClick: search, "data-has-phrase": !!phrase, "data-has-focus": hasFocus },
|
|
171
|
-
react_1.default.createElement(knowledge_widget_ui_1.SymbolBadge, { size: 32, symbol: { type: 'Svg', content: 'search' } }))),
|
|
172
|
-
renderFilterBadges('inside'),
|
|
173
|
-
react_1.default.createElement(knowledge_widget_ui_1.Input, __assign({ type: "search", "aria-label": ariaLabel }, quickFilterAccessibilityProps, { placeholder: showFilterBadges.guideCategory || showFilterBadges.tag ? '' : placeholder, onFocusChange: setHasFocus, onEscape: onEscape, onEnter: search, onChange: onChange, value: phrase })),
|
|
174
|
-
showClear && (react_1.default.createElement(ClearButton, { "aria-label": clearButtonLabel, type: "reset", hasFocus: hasFocus, title: clearButtonLabel, onClick: onClearButtonClick },
|
|
175
|
-
react_1.default.createElement(knowledge_widget_ui_1.SymbolBadge, { size: 27, symbol: { type: 'Svg', content: 'clear' } }))),
|
|
176
|
-
showChildren &&
|
|
177
|
-
!showClear &&
|
|
178
|
-
children.map(function (child) { return (react_1.default.createElement(knowledge_widget_types_grid_1.Component, { key: child.id, id: child.id, branch: "default" })); }),
|
|
179
|
-
react_1.default.createElement(quick_filter_1.default, { inputHasFocus: hasFocus, phrase: phrase, searchContainerRef: elem.current })),
|
|
180
|
-
renderFilterBadges('below')));
|
|
181
|
-
};
|
|
182
|
-
exports.default = Search;
|
|
183
|
-
var StyledSearchWrapper = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n ", ";\n width: 100%;\n padding: ", ";\n\n input {\n background-color: transparent;\n border: none;\n outline: none;\n min-width: 25%;\n flex: 1;\n font-size: ", ";\n font-weight: 300;\n font-style: italic;\n padding: 1em 0;\n color: ", ";\n -webkit-appearance: none;\n\n ", "\n\n ::placeholder {\n color: ", ";\n }\n /* removes the 'X' from IE */\n &[type='search']::-ms-clear {\n display: none;\n width: 0;\n height: 0;\n }\n &[type='search']::-ms-reveal {\n display: none;\n width: 0;\n height: 0;\n }\n\n /* removes the 'X' from Chrome */\n &[type='search']::-webkit-search-decoration,\n &[type='search']::-webkit-search-cancel-button,\n &[type='search']::-webkit-search-results-button,\n &[type='search']::-webkit-search-results-decoration {\n display: none;\n }\n\n &:focus {\n outline: none;\n }\n }\n\n button {\n background: transparent;\n border: none;\n padding: 0;\n font-size: ", ";\n transition: color 200ms ease-out;\n color: ", ";\n cursor: pointer;\n > svg {\n height: 100%;\n }\n }\n"], ["\n ", ";\n width: 100%;\n padding: ", ";\n\n input {\n background-color: transparent;\n border: none;\n outline: none;\n min-width: 25%;\n flex: 1;\n font-size: ", ";\n font-weight: 300;\n font-style: italic;\n padding: 1em 0;\n color: ", ";\n -webkit-appearance: none;\n\n ", "\n\n ::placeholder {\n color: ", ";\n }\n /* removes the 'X' from IE */\n &[type='search']::-ms-clear {\n display: none;\n width: 0;\n height: 0;\n }\n &[type='search']::-ms-reveal {\n display: none;\n width: 0;\n height: 0;\n }\n\n /* removes the 'X' from Chrome */\n &[type='search']::-webkit-search-decoration,\n &[type='search']::-webkit-search-cancel-button,\n &[type='search']::-webkit-search-results-button,\n &[type='search']::-webkit-search-results-decoration {\n display: none;\n }\n\n &:focus {\n outline: none;\n }\n }\n\n button {\n background: transparent;\n border: none;\n padding: 0;\n font-size: ", ";\n transition: color 200ms ease-out;\n color: ", ";\n cursor: pointer;\n > svg {\n height: 100%;\n }\n }\n"])), knowledge_widget_ui_1.contentBox, function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.large; }, function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.normal; }, function (p) { var _a; return (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.text; }, function (p) { var _a; return p['data-has-search-symbol'] === 'true' && "text-indent: ".concat((_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.normal, ";"); }, function (p) { var _a; return (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.text; }, function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.large; }, function (p) { var _a; return p['data-has-focus'] || p['data-has-phrase'] ? (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.primary : '#000000'; });
|
|
184
|
-
var Inner = styled_components_1.default.form(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n border: ", ";\n border-radius: ", ";\n background-color: #ffffff;\n position: relative;\n padding: 0 ", ";\n\n ", ";\n"], ["\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n border: ", ";\n border-radius: ", ";\n background-color: #ffffff;\n position: relative;\n padding: 0 ", ";\n\n ", ";\n"])), function (p) { return p.theme.inputBorder; }, function (p) { return p.theme.borderRadius; }, function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.normal; }, function (p) {
|
|
185
|
-
return p['data-has-focus'] && (0, styled_components_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n ", "\n "], ["\n ", "\n "])), function (p) {
|
|
186
|
-
var _a, _b;
|
|
187
|
-
return ((_a = p.theme.accessibility) === null || _a === void 0 ? void 0 : _a.isTabbing)
|
|
188
|
-
? knowledge_widget_ui_1.borderTabStyle
|
|
189
|
-
: "\n border-color: ".concat((_b = p.theme.colors) === null || _b === void 0 ? void 0 : _b.primary, ";\n outline: none;\n input {\n outline: none;\n }\n ");
|
|
190
|
-
});
|
|
191
|
-
});
|
|
192
|
-
var SearchButton = (0, styled_components_1.default)(knowledge_widget_ui_1.Button)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n padding: 0;\n height: 2em;\n\n svg {\n circle,\n line {\n stroke: ", ";\n }\n }\n"], ["\n padding: 0;\n height: 2em;\n\n svg {\n circle,\n line {\n stroke: ", ";\n }\n }\n"])), function (p) { var _a; return (p['data-has-focus'] ? (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.primary : '#000000'); });
|
|
193
|
-
var ClearButton = (0, styled_components_1.default)(knowledge_widget_ui_1.Button)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n &:focus svg {\n ", "\n }\n\n svg {\n vertical-align: top;\n\n circle,\n line,\n path {\n stroke: ", ";\n }\n }\n"], ["\n &:focus svg {\n ", "\n }\n\n svg {\n vertical-align: top;\n\n circle,\n line,\n path {\n stroke: ", ";\n }\n }\n"])), function (p) { var _a; return ((_a = p.theme.accessibility) === null || _a === void 0 ? void 0 : _a.isTabbing) && knowledge_widget_ui_1.borderTabStyle; }, function (p) { var _a, _b; return (p.hasFocus ? (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.primary : (_b = p.theme.colors) === null || _b === void 0 ? void 0 : _b.text); });
|
|
194
|
-
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
package/lib/use-search.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
declare type ReturnType = [
|
|
3
|
-
(arg: React.KeyboardEvent | React.MouseEvent | boolean) => void,
|
|
4
|
-
(navigateToHome: boolean) => void,
|
|
5
|
-
React.MutableRefObject<HTMLElement | null>
|
|
6
|
-
];
|
|
7
|
-
declare const _default: (phrase: string, params?: {
|
|
8
|
-
[key: string]: any;
|
|
9
|
-
}, debounce?: boolean) => ReturnType;
|
|
10
|
-
export default _default;
|
package/lib/use-search.js
DELETED
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var knowledge_widget_ui_1 = require("@telia-ace/knowledge-widget-ui");
|
|
4
|
-
var react_1 = require("react");
|
|
5
|
-
var filterChanged = function (newValue, oldValue) {
|
|
6
|
-
if (newValue && !oldValue) {
|
|
7
|
-
return true;
|
|
8
|
-
}
|
|
9
|
-
if (!newValue && oldValue) {
|
|
10
|
-
return true;
|
|
11
|
-
}
|
|
12
|
-
if (newValue && oldValue) {
|
|
13
|
-
if (newValue.id !== oldValue.id) {
|
|
14
|
-
return true;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
return false;
|
|
18
|
-
};
|
|
19
|
-
exports.default = (function (phrase, params, debounce) {
|
|
20
|
-
if (params === void 0) { params = {}; }
|
|
21
|
-
if (debounce === void 0) { debounce = true; }
|
|
22
|
-
var dispatch = (0, knowledge_widget_ui_1.useDispatch)();
|
|
23
|
-
var _a = (0, knowledge_widget_ui_1.useProperties)(), _b = _a.quickFilters, quickFilters = _b === void 0 ? false : _b, _c = _a.quickFilter, quickFilter = _c === void 0 ? { open: false } : _c, activeFilterBadges = _a.activeFilterBadges, _d = _a.filterBadges, filterBadges = _d === void 0 ? false : _d, _e = _a.incremental, incremental = _e === void 0 ? 600 : _e;
|
|
24
|
-
var debouncedPhrase = (0, knowledge_widget_ui_1.useDebounce)(phrase, typeof incremental === 'boolean' ? 600 : incremental);
|
|
25
|
-
var previousDebouncedPhrase = (0, knowledge_widget_ui_1.usePrevious)(debouncedPhrase);
|
|
26
|
-
var previousFilters = (0, knowledge_widget_ui_1.usePrevious)(activeFilterBadges);
|
|
27
|
-
var ref = (0, react_1.useRef)(null);
|
|
28
|
-
var dispatchSearch = (0, react_1.useCallback)(function (value) {
|
|
29
|
-
if (value === void 0) { value = ''; }
|
|
30
|
-
if (filterBadges) {
|
|
31
|
-
var filtersChanged = filterChanged(activeFilterBadges === null || activeFilterBadges === void 0 ? void 0 : activeFilterBadges.guideCategory, previousFilters === null || previousFilters === void 0 ? void 0 : previousFilters.guideCategory) || filterChanged(activeFilterBadges === null || activeFilterBadges === void 0 ? void 0 : activeFilterBadges.tag, previousFilters === null || previousFilters === void 0 ? void 0 : previousFilters.tag);
|
|
32
|
-
return dispatch('search', { value: value, filtersChanged: filtersChanged, filters: activeFilterBadges });
|
|
33
|
-
}
|
|
34
|
-
return dispatch('search', { value: value });
|
|
35
|
-
}, [dispatch, activeFilterBadges]);
|
|
36
|
-
var dispatchClear = (0, react_1.useCallback)(function (navigateToHome) {
|
|
37
|
-
dispatch('clear', { navigateToHome: navigateToHome });
|
|
38
|
-
}, [dispatch]);
|
|
39
|
-
var removeFilterKeywords = function (input) {
|
|
40
|
-
if (quickFilters) {
|
|
41
|
-
return input.replace(/([@#].*)/g, '');
|
|
42
|
-
}
|
|
43
|
-
return input;
|
|
44
|
-
};
|
|
45
|
-
var submitSearch = (0, react_1.useCallback)(function (arg) {
|
|
46
|
-
if (quickFilter.open && arg.preventDefault) {
|
|
47
|
-
arg.preventDefault();
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
var activeElement = document.activeElement;
|
|
51
|
-
var isSearching = ref.current && typeof ref.current.contains === 'function'
|
|
52
|
-
? ref.current.contains(activeElement)
|
|
53
|
-
: false;
|
|
54
|
-
var cleanedPhrase = removeFilterKeywords(phrase);
|
|
55
|
-
if ((typeof arg === 'boolean' && arg) ||
|
|
56
|
-
(cleanedPhrase.length && isSearching) ||
|
|
57
|
-
(activeFilterBadges === null || activeFilterBadges === void 0 ? void 0 : activeFilterBadges.guideCategory) ||
|
|
58
|
-
((activeFilterBadges === null || activeFilterBadges === void 0 ? void 0 : activeFilterBadges.tag) && isSearching)) {
|
|
59
|
-
dispatchSearch(cleanedPhrase);
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
dispatchClear(isSearching);
|
|
63
|
-
}
|
|
64
|
-
}, [ref, phrase, quickFilter, dispatchClear, activeFilterBadges, dispatchSearch]);
|
|
65
|
-
(0, react_1.useEffect)(function () {
|
|
66
|
-
var filtersChanged = filterChanged(activeFilterBadges === null || activeFilterBadges === void 0 ? void 0 : activeFilterBadges.guideCategory, previousFilters === null || previousFilters === void 0 ? void 0 : previousFilters.guideCategory) ||
|
|
67
|
-
filterChanged(activeFilterBadges === null || activeFilterBadges === void 0 ? void 0 : activeFilterBadges.tag, previousFilters === null || previousFilters === void 0 ? void 0 : previousFilters.tag);
|
|
68
|
-
var phrase = debouncedPhrase ? removeFilterKeywords(debouncedPhrase) : debouncedPhrase;
|
|
69
|
-
var previousPhrase = previousDebouncedPhrase
|
|
70
|
-
? removeFilterKeywords(previousDebouncedPhrase)
|
|
71
|
-
: previousDebouncedPhrase;
|
|
72
|
-
if ((typeof previousPhrase !== 'undefined' &&
|
|
73
|
-
previousPhrase !== phrase &&
|
|
74
|
-
phrase !== params.phrase &&
|
|
75
|
-
debounce &&
|
|
76
|
-
!quickFilter.open) ||
|
|
77
|
-
(filtersChanged && !(activeFilterBadges === null || activeFilterBadges === void 0 ? void 0 : activeFilterBadges.initial))) {
|
|
78
|
-
submitSearch(filtersChanged);
|
|
79
|
-
}
|
|
80
|
-
}, [debouncedPhrase, quickFilter.open, activeFilterBadges, submitSearch]);
|
|
81
|
-
(0, react_1.useEffect)(function () {
|
|
82
|
-
if (phrase && quickFilters) {
|
|
83
|
-
var quickFiltersGuideCategory = (typeof quickFilters === 'boolean' && !!quickFilters) ||
|
|
84
|
-
(typeof quickFilters === 'object' && !!quickFilters.guideCategory);
|
|
85
|
-
var quickFiltersTag = (typeof quickFilters === 'boolean' && !!quickFilters) ||
|
|
86
|
-
(typeof quickFilters === 'object' && !!quickFilters.tag);
|
|
87
|
-
if (quickFiltersGuideCategory && phrase.indexOf('@') === phrase.length - 1) {
|
|
88
|
-
dispatch('quick-filter:open', { type: 'guideCategory', symbol: '@' });
|
|
89
|
-
}
|
|
90
|
-
if (quickFiltersTag && phrase.indexOf('#') === phrase.length - 1) {
|
|
91
|
-
dispatch('quick-filter:open', { type: 'tag', symbol: '#' });
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
if (quickFilter.open && phrase.indexOf('@') === -1 && phrase.indexOf('#') === -1) {
|
|
95
|
-
dispatch('quick-filter:close');
|
|
96
|
-
}
|
|
97
|
-
}, [phrase]);
|
|
98
|
-
return [submitSearch, dispatchClear, ref];
|
|
99
|
-
});
|
package/lib/utils.d.ts
DELETED
package/lib/utils.js
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.filterItems = exports.match = void 0;
|
|
4
|
-
var widget_utilities_1 = require("@telia-ace/widget-utilities");
|
|
5
|
-
var match = function (title, phrase) {
|
|
6
|
-
if (!phrase || !title) {
|
|
7
|
-
return true;
|
|
8
|
-
}
|
|
9
|
-
return !!(title.toLowerCase().indexOf(phrase.toLowerCase()) > -1);
|
|
10
|
-
};
|
|
11
|
-
exports.match = match;
|
|
12
|
-
var filterItems = function (items, type, phrase) {
|
|
13
|
-
if (items === void 0) { items = []; }
|
|
14
|
-
if (!phrase) {
|
|
15
|
-
return items;
|
|
16
|
-
}
|
|
17
|
-
var cloned = (0, widget_utilities_1.deepClone)(items);
|
|
18
|
-
if (type === 'tag') {
|
|
19
|
-
return cloned.filter(function (i) { return (0, exports.match)(i.title, phrase); });
|
|
20
|
-
}
|
|
21
|
-
var matchTrail = buildMatchTrail(cloned, phrase);
|
|
22
|
-
var filtered = recursiveFilter(cloned, function (c) { return matchTrail.indexOf(c.id) > -1; });
|
|
23
|
-
return filtered;
|
|
24
|
-
};
|
|
25
|
-
exports.filterItems = filterItems;
|
|
26
|
-
var recursiveFilter = function (items, fn) {
|
|
27
|
-
return items.filter(function (i) {
|
|
28
|
-
if (i.items && i.items.length) {
|
|
29
|
-
i.items = recursiveFilter(i.items, fn);
|
|
30
|
-
}
|
|
31
|
-
return fn(i);
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
|
-
var buildMatchTrail = function (categories, phrase) {
|
|
35
|
-
var flattened = flatten(categories);
|
|
36
|
-
var matching = flattened.filter(function (c) { return (0, exports.match)(c.title, phrase); }).map(function (c) { return c.id; });
|
|
37
|
-
var res = [];
|
|
38
|
-
matching.forEach(function (id) {
|
|
39
|
-
var trail = (0, widget_utilities_1.categoryTrail)(id, categories);
|
|
40
|
-
res = res.concat(trail);
|
|
41
|
-
});
|
|
42
|
-
return res;
|
|
43
|
-
};
|
|
44
|
-
var flatten = function (categories) {
|
|
45
|
-
var result = [];
|
|
46
|
-
categories.forEach(function (category) {
|
|
47
|
-
result.push(category);
|
|
48
|
-
if (Array.isArray(category.items)) {
|
|
49
|
-
result = result.concat(flatten(category.items));
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
return result;
|
|
53
|
-
};
|
package/lib-esm/filter-badges.js
DELETED
|
@@ -1,210 +0,0 @@
|
|
|
1
|
-
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
2
|
-
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
3
|
-
return cooked;
|
|
4
|
-
};
|
|
5
|
-
var __assign = (this && this.__assign) || function () {
|
|
6
|
-
__assign = Object.assign || function(t) {
|
|
7
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
8
|
-
s = arguments[i];
|
|
9
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
10
|
-
t[p] = s[p];
|
|
11
|
-
}
|
|
12
|
-
return t;
|
|
13
|
-
};
|
|
14
|
-
return __assign.apply(this, arguments);
|
|
15
|
-
};
|
|
16
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
17
|
-
var t = {};
|
|
18
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
19
|
-
t[p] = s[p];
|
|
20
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
21
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
22
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
23
|
-
t[p[i]] = s[p[i]];
|
|
24
|
-
}
|
|
25
|
-
return t;
|
|
26
|
-
};
|
|
27
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
28
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
29
|
-
if (!m) return o;
|
|
30
|
-
var i = m.call(o), r, ar = [], e;
|
|
31
|
-
try {
|
|
32
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
33
|
-
}
|
|
34
|
-
catch (error) { e = { error: error }; }
|
|
35
|
-
finally {
|
|
36
|
-
try {
|
|
37
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
38
|
-
}
|
|
39
|
-
finally { if (e) throw e.error; }
|
|
40
|
-
}
|
|
41
|
-
return ar;
|
|
42
|
-
};
|
|
43
|
-
import { borderTabStyle, Link, SymbolBadge, Text, Tooltip, useDispatch, useEventListener, useKeyPress, useProperties, useRouteData, } from '@telia-ace/knowledge-widget-ui';
|
|
44
|
-
import { appendClassNames } from '@telia-ace/widget-utilities';
|
|
45
|
-
import React, { useCallback, useRef, useState } from 'react';
|
|
46
|
-
import styled, { css } from 'styled-components';
|
|
47
|
-
var FilterBadge = function (_a) {
|
|
48
|
-
var text = _a.text, className = _a.className, forceFocusStyle = _a.forceFocusStyle, filterType = _a.filterType, handleClick = _a.handleClick, _b = _a.deleteAriaLabel, deleteAriaLabel = _b === void 0 ? '' : _b, p = __rest(_a, ["text", "className", "forceFocusStyle", "filterType", "handleClick", "deleteAriaLabel"]);
|
|
49
|
-
var ref = useRef();
|
|
50
|
-
return (React.createElement(Text, { className: appendClassNames(className, 'humany-filter-badge'), onKeyDown: function (e) {
|
|
51
|
-
if (e.key === 'Enter') {
|
|
52
|
-
handleClick(e, filterType);
|
|
53
|
-
}
|
|
54
|
-
} },
|
|
55
|
-
text,
|
|
56
|
-
React.createElement(Link, __assign({}, p, { ref: ref, tabIndex: 0, role: "button", "aria-label": deleteAriaLabel.replace('{{item}}', text), onClick: function (e) { return handleClick(e, filterType); } }),
|
|
57
|
-
React.createElement(SymbolBadge, { size: 13, symbol: { type: 'Svg', content: 'close' } }))));
|
|
58
|
-
};
|
|
59
|
-
var FilterBadges = function (_a) {
|
|
60
|
-
var inputHasFocus = _a.inputHasFocus, searchContainerRef = _a.searchContainerRef, showTag = _a.showTag, showGuideCategory = _a.showGuideCategory, position = _a.position;
|
|
61
|
-
var _b = useProperties(), _c = _b.activeFilterBadges, activeFilterBadges = _c === void 0 ? {} : _c, _d = _b.deleteFilterBadgeAriaLabel, deleteFilterBadgeAriaLabel = _d === void 0 ? '' : _d;
|
|
62
|
-
var dispatch = useDispatch();
|
|
63
|
-
var _e = useRouteData(), name = _e.name, params = _e.params;
|
|
64
|
-
var _f = __read(useState(false), 2), isNavigatingWithKeyBoard = _f[0], setIsNavigatingWithKeyboard = _f[1];
|
|
65
|
-
var onKeyDown = useCallback(function (event) {
|
|
66
|
-
var key = event.key;
|
|
67
|
-
if (['ArrowLeft', 'ArrowRight'].indexOf(key) === -1) {
|
|
68
|
-
setIsNavigatingWithKeyboard(false);
|
|
69
|
-
}
|
|
70
|
-
}, []);
|
|
71
|
-
useEventListener('keydown', onKeyDown, window);
|
|
72
|
-
useEventListener('click', onKeyDown, window);
|
|
73
|
-
var guideCategory = activeFilterBadges.guideCategory, tag = activeFilterBadges.tag, tooltip = activeFilterBadges.tooltip;
|
|
74
|
-
var getFocusedFilterBadge = function (container) {
|
|
75
|
-
var badges = container.querySelectorAll('.humany-filter-badge');
|
|
76
|
-
return {
|
|
77
|
-
badges: badges,
|
|
78
|
-
index: Array.from(badges).findIndex(function (e) { return document.activeElement === e; }),
|
|
79
|
-
};
|
|
80
|
-
};
|
|
81
|
-
var handleFilterBadgeClick = function (event, filterType) {
|
|
82
|
-
event.preventDefault();
|
|
83
|
-
dispatch('quick-filter:remove', { types: [filterType] });
|
|
84
|
-
};
|
|
85
|
-
var keyboardNavigation = function (direction, inputElem) {
|
|
86
|
-
if (!searchContainerRef) {
|
|
87
|
-
return;
|
|
88
|
-
}
|
|
89
|
-
var _a = getFocusedFilterBadge(searchContainerRef), badges = _a.badges, currentFocusedIndex = _a.index;
|
|
90
|
-
if (badges.length) {
|
|
91
|
-
var toFocus = null;
|
|
92
|
-
if (direction === 'left') {
|
|
93
|
-
if (currentFocusedIndex === -1) {
|
|
94
|
-
// if no badge is focused and direction is left
|
|
95
|
-
// focus last badge
|
|
96
|
-
toFocus = badges.item(badges.length - 1);
|
|
97
|
-
}
|
|
98
|
-
else if (currentFocusedIndex > 0) {
|
|
99
|
-
// if there are more badges to the left, go one step back
|
|
100
|
-
// do nothing if already focusing the most left badge
|
|
101
|
-
toFocus = badges.item(currentFocusedIndex - 1);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
else if (direction === 'right') {
|
|
105
|
-
if (currentFocusedIndex === badges.length - 1) {
|
|
106
|
-
// if currently focusing the last badge, move focus to search input
|
|
107
|
-
inputElem && inputElem.focus();
|
|
108
|
-
}
|
|
109
|
-
else if (badges.item(currentFocusedIndex + 1)) {
|
|
110
|
-
toFocus = badges.item(currentFocusedIndex + 1);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
if (toFocus) {
|
|
114
|
-
toFocus.focus();
|
|
115
|
-
setIsNavigatingWithKeyboard(true);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
};
|
|
119
|
-
useKeyPress('ArrowLeft', useCallback(function () {
|
|
120
|
-
if (!searchContainerRef) {
|
|
121
|
-
return;
|
|
122
|
-
}
|
|
123
|
-
var focusedBadgeIndex = getFocusedFilterBadge(searchContainerRef).index;
|
|
124
|
-
if (inputHasFocus || focusedBadgeIndex > -1) {
|
|
125
|
-
var inputElem = searchContainerRef.querySelector('[data-type="search"]');
|
|
126
|
-
var isAtBeginningOfInput = inputElem && inputElem.selectionStart !== null && inputElem.selectionStart <= 0;
|
|
127
|
-
var isFocusingAFilterBadge = focusedBadgeIndex > -1;
|
|
128
|
-
if (isAtBeginningOfInput || isFocusingAFilterBadge) {
|
|
129
|
-
keyboardNavigation('left', inputElem);
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
}, [inputHasFocus, searchContainerRef]));
|
|
133
|
-
useKeyPress('ArrowRight', useCallback(function () {
|
|
134
|
-
if (!searchContainerRef) {
|
|
135
|
-
return;
|
|
136
|
-
}
|
|
137
|
-
var focusedBadgeIndex = getFocusedFilterBadge(searchContainerRef).index;
|
|
138
|
-
if (focusedBadgeIndex > -1) {
|
|
139
|
-
var inputElem = searchContainerRef.querySelector('[data-type="search"]');
|
|
140
|
-
var isFocusingAFilterBadge = focusedBadgeIndex > -1;
|
|
141
|
-
if (isFocusingAFilterBadge) {
|
|
142
|
-
keyboardNavigation('right', inputElem);
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
}, [searchContainerRef]));
|
|
146
|
-
useKeyPress('Backspace', useCallback(function (event) {
|
|
147
|
-
if (!searchContainerRef) {
|
|
148
|
-
return;
|
|
149
|
-
}
|
|
150
|
-
var filtersToRemove = [];
|
|
151
|
-
var focusedBadgeIndex = getFocusedFilterBadge(searchContainerRef).index;
|
|
152
|
-
var inputElem = searchContainerRef.querySelector('[data-type="search"]');
|
|
153
|
-
var isFocusingAFilterBadge = focusedBadgeIndex > -1;
|
|
154
|
-
if (isFocusingAFilterBadge) {
|
|
155
|
-
if (focusedBadgeIndex === 0) {
|
|
156
|
-
if (showGuideCategory) {
|
|
157
|
-
filtersToRemove = ['guideCategory'];
|
|
158
|
-
}
|
|
159
|
-
else if (showTag) {
|
|
160
|
-
filtersToRemove = ['tag'];
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
else if (focusedBadgeIndex === 1) {
|
|
164
|
-
filtersToRemove = ['tag'];
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
else {
|
|
168
|
-
var isAtBeginningOfInput = inputElem &&
|
|
169
|
-
inputElem.selectionStart !== null &&
|
|
170
|
-
inputElem.selectionStart <= 0;
|
|
171
|
-
if (isAtBeginningOfInput) {
|
|
172
|
-
if (activeFilterBadges === null || activeFilterBadges === void 0 ? void 0 : activeFilterBadges.tag) {
|
|
173
|
-
filtersToRemove = ['tag'];
|
|
174
|
-
}
|
|
175
|
-
else if (activeFilterBadges === null || activeFilterBadges === void 0 ? void 0 : activeFilterBadges.guideCategory) {
|
|
176
|
-
filtersToRemove = ['guideCategory'];
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
if (filtersToRemove.length > 0) {
|
|
181
|
-
event.preventDefault();
|
|
182
|
-
dispatch('quick-filter:remove', { types: filtersToRemove });
|
|
183
|
-
}
|
|
184
|
-
}, [searchContainerRef, activeFilterBadges, showTag, showGuideCategory]));
|
|
185
|
-
var renderBadge = useCallback(function (type) {
|
|
186
|
-
if (type === 'guideCategory' && guideCategory && showGuideCategory) {
|
|
187
|
-
return (React.createElement(StyledFilterBadge, { text: "@".concat(guideCategory.title), routeName: name, filterType: "guideCategory", handleClick: handleFilterBadgeClick, forceFocusStyle: isNavigatingWithKeyBoard, deleteAriaLabel: deleteFilterBadgeAriaLabel, params: __assign(__assign({}, params), { guideCategory: undefined }) }));
|
|
188
|
-
}
|
|
189
|
-
if (type === 'tag' && tag && showTag) {
|
|
190
|
-
return (React.createElement(StyledFilterBadge, { className: "humany-filter-badge", text: "#".concat(tag.title), routeName: name, filterType: "tag", handleClick: handleFilterBadgeClick, forceFocusStyle: isNavigatingWithKeyBoard, deleteAriaLabel: deleteFilterBadgeAriaLabel, params: __assign(__assign({}, params), { tag: undefined }) }));
|
|
191
|
-
}
|
|
192
|
-
return null;
|
|
193
|
-
}, [guideCategory, tag, name, params, showGuideCategory, showTag, isNavigatingWithKeyBoard]);
|
|
194
|
-
if (!guideCategory && !tag) {
|
|
195
|
-
return null;
|
|
196
|
-
}
|
|
197
|
-
return (React.createElement(Wrapper, { className: "humany-filter-badges", position: position },
|
|
198
|
-
guideCategory && tooltip ? (React.createElement(Tooltip, { content: React.createElement(React.Fragment, null, tooltip), sticky: false }, renderBadge('guideCategory'))) : (renderBadge('guideCategory')),
|
|
199
|
-
tag && renderBadge('tag')));
|
|
200
|
-
};
|
|
201
|
-
export default FilterBadges;
|
|
202
|
-
var Wrapper = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n\n ", "\n"], ["\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n\n ", "\n"])), function (p) {
|
|
203
|
-
return p.position === 'inside'
|
|
204
|
-
? css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n &:not(:first-child) {\n margin: 0 0 0 ", ";\n }\n "], ["\n &:not(:first-child) {\n margin: 0 0 0 ", ";\n }\n "])), function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.normal; }) : css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n margin: ", " 0 0 0;\n span:first-child {\n margin-left: 0;\n }\n "], ["\n margin: ", " 0 0 0;\n span:first-child {\n margin-left: 0;\n }\n "])), function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.small; });
|
|
205
|
-
});
|
|
206
|
-
var StyledFilterBadge = styled(FilterBadge)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n padding: ", ";\n background-color: ", ";\n border-radius: ", ";\n font-weight: 300;\n font-size: ", ";\n font-style: italic;\n color: #ffffff;\n text-decoration: none;\n white-space: nowrap;\n\n margin: calc(", " / 2);\n\n &:focus-within {\n ", ";\n a {\n outline: none;\n }\n }\n\n svg {\n width: 17px;\n height: 11px;\n margin: 1px 0 0 ", ";\n path {\n stroke: #ffffff;\n stroke-width: 2px;\n }\n order: 1;\n }\n"], ["\n display: flex;\n align-items: center;\n padding: ", ";\n background-color: ", ";\n border-radius: ", ";\n font-weight: 300;\n font-size: ", ";\n font-style: italic;\n color: #ffffff;\n text-decoration: none;\n white-space: nowrap;\n\n margin: calc(", " / 2);\n\n &:focus-within {\n ", ";\n a {\n outline: none;\n }\n }\n\n svg {\n width: 17px;\n height: 11px;\n margin: 1px 0 0 ", ";\n path {\n stroke: #ffffff;\n stroke-width: 2px;\n }\n order: 1;\n }\n"])), function (p) { var _a, _b; return "".concat((_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.small, " calc(").concat((_b = p.theme.sizes) === null || _b === void 0 ? void 0 : _b.normal, "/2) "); }, function (p) { var _a; return (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.primary; }, function (p) { return p.theme.borderRadius; }, function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.normal; }, function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.small; }, function (p) {
|
|
207
|
-
var _a;
|
|
208
|
-
return (((_a = p.theme.accessibility) === null || _a === void 0 ? void 0 : _a.isTabbing) || p.forceFocusStyle) && css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n ", "\n background-color: transparent;\n\n svg {\n path {\n stroke: ", ";\n }\n }\n "], ["\n ", "\n background-color: transparent;\n\n svg {\n path {\n stroke: ", ";\n }\n }\n "])), borderTabStyle, function (p) { var _a; return (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.primary; });
|
|
209
|
-
}, function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.small; });
|
|
210
|
-
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
package/lib-esm/index.js
DELETED