@algolia/autocomplete-plugin-redirect-url 1.8.0
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/README.md +15 -0
- package/dist/esm/createRedirectUrlPlugin.d.ts +4 -0
- package/dist/esm/createRedirectUrlPlugin.js +213 -0
- package/dist/esm/index.d.ts +3 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/templates.d.ts +9 -0
- package/dist/esm/templates.js +47 -0
- package/dist/esm/types/Redirect.d.ts +23 -0
- package/dist/esm/types/Redirect.js +1 -0
- package/dist/esm/types/index.d.ts +1 -0
- package/dist/esm/types/index.js +1 -0
- package/dist/umd/index.development.js +332 -0
- package/dist/umd/index.development.js.map +1 -0
- package/dist/umd/index.production.js +3 -0
- package/dist/umd/index.production.js.map +1 -0
- package/package.json +47 -0
package/README.md
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# @algolia/autocomplete-plugin-redirect-url
|
|
2
|
+
|
|
3
|
+
The Redirect URL plugin adds redirect functionality to your autocomplete.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
yarn add @algolia/autocomplete-plugin-redirect-url
|
|
9
|
+
# or
|
|
10
|
+
npm install @algolia/autocomplete-plugin-redirect-url
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Documentation
|
|
14
|
+
|
|
15
|
+
See [**Documentation**](https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-redirect-url).
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { BaseItem } from '@algolia/autocomplete-core';
|
|
2
|
+
import { AutocompletePlugin } from '@algolia/autocomplete-js';
|
|
3
|
+
import { CreateRedirectUrlPluginParams, RedirectUrlItem } from './types';
|
|
4
|
+
export declare function createRedirectUrlPlugin<TItem extends BaseItem>(options?: CreateRedirectUrlPluginParams<TItem>): AutocompletePlugin<RedirectUrlItem, undefined>;
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
|
+
|
|
3
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
|
+
|
|
5
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
|
+
|
|
7
|
+
import { warn } from '@algolia/autocomplete-shared';
|
|
8
|
+
import { defaultTemplates } from './templates';
|
|
9
|
+
|
|
10
|
+
function defaultTransformResponse(response) {
|
|
11
|
+
var _renderingContent, _renderingContent$red;
|
|
12
|
+
|
|
13
|
+
return (_renderingContent = response.renderingContent) === null || _renderingContent === void 0 ? void 0 : (_renderingContent$red = _renderingContent.redirect) === null || _renderingContent$red === void 0 ? void 0 : _renderingContent$red.url;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
function defaultOnRedirect(redirects, _ref) {
|
|
17
|
+
var _item$urls;
|
|
18
|
+
|
|
19
|
+
var event = _ref.event,
|
|
20
|
+
navigator = _ref.navigator,
|
|
21
|
+
state = _ref.state;
|
|
22
|
+
var item = redirects[0];
|
|
23
|
+
var itemUrl = item === null || item === void 0 ? void 0 : (_item$urls = item.urls) === null || _item$urls === void 0 ? void 0 : _item$urls[0];
|
|
24
|
+
|
|
25
|
+
if (!itemUrl) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
if (event.metaKey || event.ctrlKey) {
|
|
30
|
+
navigator.navigateNewTab({
|
|
31
|
+
itemUrl: itemUrl,
|
|
32
|
+
item: item,
|
|
33
|
+
state: state
|
|
34
|
+
});
|
|
35
|
+
} else if (event.shiftKey) {
|
|
36
|
+
navigator.navigateNewWindow({
|
|
37
|
+
itemUrl: itemUrl,
|
|
38
|
+
item: item,
|
|
39
|
+
state: state
|
|
40
|
+
});
|
|
41
|
+
} else {
|
|
42
|
+
navigator.navigate({
|
|
43
|
+
itemUrl: itemUrl,
|
|
44
|
+
item: item,
|
|
45
|
+
state: state
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
function getOptions(options) {
|
|
51
|
+
return _objectSpread({
|
|
52
|
+
transformResponse: defaultTransformResponse,
|
|
53
|
+
templates: defaultTemplates,
|
|
54
|
+
onRedirect: defaultOnRedirect
|
|
55
|
+
}, options);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
function getRedirectData(_ref2) {
|
|
59
|
+
var _redirectUrlPlugin$da;
|
|
60
|
+
|
|
61
|
+
var state = _ref2.state;
|
|
62
|
+
var redirectUrlPlugin = state.context.redirectUrlPlugin;
|
|
63
|
+
return (_redirectUrlPlugin$da = redirectUrlPlugin === null || redirectUrlPlugin === void 0 ? void 0 : redirectUrlPlugin.data) !== null && _redirectUrlPlugin$da !== void 0 ? _redirectUrlPlugin$da : [];
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export function createRedirectUrlPlugin() {
|
|
67
|
+
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
68
|
+
|
|
69
|
+
var _getOptions = getOptions(options),
|
|
70
|
+
transformResponse = _getOptions.transformResponse,
|
|
71
|
+
templates = _getOptions.templates,
|
|
72
|
+
onRedirect = _getOptions.onRedirect;
|
|
73
|
+
|
|
74
|
+
function createRedirects(_ref3) {
|
|
75
|
+
var _state$context$redire, _state$context$redire2;
|
|
76
|
+
|
|
77
|
+
var results = _ref3.results,
|
|
78
|
+
source = _ref3.source,
|
|
79
|
+
state = _ref3.state;
|
|
80
|
+
var redirect = {
|
|
81
|
+
sourceId: source.sourceId,
|
|
82
|
+
urls: results.map(function (result) {
|
|
83
|
+
return transformResponse(result);
|
|
84
|
+
}).filter(function (url) {
|
|
85
|
+
return url !== undefined;
|
|
86
|
+
})
|
|
87
|
+
};
|
|
88
|
+
var redirects = (_state$context$redire = (_state$context$redire2 = state.context.redirectUrlPlugin) === null || _state$context$redire2 === void 0 ? void 0 : _state$context$redire2.data) !== null && _state$context$redire !== void 0 ? _state$context$redire : [];
|
|
89
|
+
var existingRedirectIndex = redirects.findIndex(function (r) {
|
|
90
|
+
return r.sourceId === source.sourceId;
|
|
91
|
+
});
|
|
92
|
+
|
|
93
|
+
if (existingRedirectIndex !== -1) {
|
|
94
|
+
if (redirect.urls.length === 0) {
|
|
95
|
+
redirects.splice(existingRedirectIndex, 1);
|
|
96
|
+
} else {
|
|
97
|
+
redirects[existingRedirectIndex] = redirect;
|
|
98
|
+
}
|
|
99
|
+
} else if (redirect.urls.length > 0) {
|
|
100
|
+
redirects.push(redirect);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
return redirects;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
return {
|
|
107
|
+
name: 'aa.redirectUrlPlugin',
|
|
108
|
+
subscribe: function subscribe(_ref4) {
|
|
109
|
+
var onResolve = _ref4.onResolve,
|
|
110
|
+
setContext = _ref4.setContext;
|
|
111
|
+
onResolve(function (_ref5) {
|
|
112
|
+
var results = _ref5.results,
|
|
113
|
+
source = _ref5.source,
|
|
114
|
+
state = _ref5.state;
|
|
115
|
+
setContext(_objectSpread(_objectSpread({}, state.context), {}, {
|
|
116
|
+
redirectUrlPlugin: {
|
|
117
|
+
data: createRedirects({
|
|
118
|
+
results: results,
|
|
119
|
+
source: source,
|
|
120
|
+
state: state
|
|
121
|
+
})
|
|
122
|
+
}
|
|
123
|
+
}));
|
|
124
|
+
});
|
|
125
|
+
},
|
|
126
|
+
reshape: function reshape(_ref6) {
|
|
127
|
+
var _data, _state$context$redire3;
|
|
128
|
+
|
|
129
|
+
var state = _ref6.state,
|
|
130
|
+
sourcesBySourceId = _ref6.sourcesBySourceId;
|
|
131
|
+
var redirects = (_data = (_state$context$redire3 = state.context.redirectUrlPlugin) === null || _state$context$redire3 === void 0 ? void 0 : _state$context$redire3.data) !== null && _data !== void 0 ? _data : [];
|
|
132
|
+
redirects.forEach(function (redirect) {
|
|
133
|
+
var source = sourcesBySourceId[redirect.sourceId];
|
|
134
|
+
|
|
135
|
+
if (source === undefined) {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
sourcesBySourceId[redirect.sourceId] = _objectSpread(_objectSpread({}, source), {}, {
|
|
140
|
+
getItems: function getItems() {
|
|
141
|
+
return source.getItems().filter(function (item) {
|
|
142
|
+
if (source.getItemInputValue.__default) {
|
|
143
|
+
process.env.NODE_ENV !== 'production' ? warn(false, "The source ".concat(JSON.stringify(source.sourceId), " does not have a `getItemInputValue` function. It's required to be able to filter out the redirect item.") + '\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getiteminputvalue') : void 0;
|
|
144
|
+
return true;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
var itemInputValue = source.getItemInputValue({
|
|
148
|
+
item: item,
|
|
149
|
+
state: state
|
|
150
|
+
});
|
|
151
|
+
|
|
152
|
+
if (itemInputValue === undefined) {
|
|
153
|
+
process.env.NODE_ENV !== 'production' ? warn(false, "The source ".concat(JSON.stringify(source.sourceId), " does not return a string from the `getItemInputValue` function. It's required to be able to filter out the redirect item.") + '\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getiteminputvalue') : void 0;
|
|
154
|
+
return true;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
return itemInputValue.toLowerCase() !== state.query.toLowerCase();
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
});
|
|
161
|
+
});
|
|
162
|
+
var redirectSource = {
|
|
163
|
+
sourceId: 'redirectUrlPlugin',
|
|
164
|
+
templates: templates,
|
|
165
|
+
getItemUrl: function getItemUrl(_ref7) {
|
|
166
|
+
var item = _ref7.item;
|
|
167
|
+
return item.urls[0];
|
|
168
|
+
},
|
|
169
|
+
onSelect: function onSelect(_ref8) {
|
|
170
|
+
var event = _ref8.event,
|
|
171
|
+
item = _ref8.item,
|
|
172
|
+
state = _ref8.state,
|
|
173
|
+
navigator = _ref8.navigator;
|
|
174
|
+
onRedirect([item], {
|
|
175
|
+
event: event,
|
|
176
|
+
navigator: navigator,
|
|
177
|
+
state: state
|
|
178
|
+
});
|
|
179
|
+
},
|
|
180
|
+
getItemInputValue: function getItemInputValue() {
|
|
181
|
+
return state.query;
|
|
182
|
+
},
|
|
183
|
+
onActive: function onActive() {},
|
|
184
|
+
getItems: function getItems() {
|
|
185
|
+
return getRedirectData({
|
|
186
|
+
state: state
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
};
|
|
190
|
+
process.env.NODE_ENV !== 'production' ? warn(sourcesBySourceId.redirect === undefined, 'A source with `sourceId: "redirect"` already exists. This source will be overridden.') : void 0;
|
|
191
|
+
return {
|
|
192
|
+
sourcesBySourceId: _objectSpread({
|
|
193
|
+
// Our source has templates, but reshape only accepts sources without templates (autocomplete-core)
|
|
194
|
+
redirect: redirectSource
|
|
195
|
+
}, sourcesBySourceId),
|
|
196
|
+
state: state
|
|
197
|
+
};
|
|
198
|
+
},
|
|
199
|
+
onSubmit: function onSubmit(_ref9) {
|
|
200
|
+
var event = _ref9.event,
|
|
201
|
+
navigator = _ref9.navigator,
|
|
202
|
+
state = _ref9.state;
|
|
203
|
+
onRedirect(getRedirectData({
|
|
204
|
+
state: state
|
|
205
|
+
}), {
|
|
206
|
+
event: event,
|
|
207
|
+
navigator: navigator,
|
|
208
|
+
state: state
|
|
209
|
+
});
|
|
210
|
+
},
|
|
211
|
+
__autocomplete_pluginOptions: options
|
|
212
|
+
};
|
|
213
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/** @jsxRuntime classic */
|
|
2
|
+
|
|
3
|
+
/** @jsx createElement */
|
|
4
|
+
export var defaultTemplates = {
|
|
5
|
+
item: function item(_ref) {
|
|
6
|
+
var createElement = _ref.createElement,
|
|
7
|
+
item = _ref.item,
|
|
8
|
+
state = _ref.state;
|
|
9
|
+
return createElement("div", {
|
|
10
|
+
className: "aa-ItemWrapper"
|
|
11
|
+
}, createElement("div", {
|
|
12
|
+
className: "aa-ItemContent"
|
|
13
|
+
}, createElement("div", {
|
|
14
|
+
className: "aa-ItemIcon aa-ItemIcon--noBorder"
|
|
15
|
+
}, createElement("svg", {
|
|
16
|
+
viewBox: "0 0 24 24",
|
|
17
|
+
fill: "currentColor"
|
|
18
|
+
}, createElement("path", {
|
|
19
|
+
d: "M16.041 15.856c-0.034 0.026-0.067 0.055-0.099 0.087s-0.060 0.064-0.087 0.099c-1.258 1.213-2.969 1.958-4.855 1.958-1.933 0-3.682-0.782-4.95-2.050s-2.050-3.017-2.050-4.95 0.782-3.682 2.050-4.95 3.017-2.050 4.95-2.050 3.682 0.782 4.95 2.050 2.050 3.017 2.050 4.95c0 1.886-0.745 3.597-1.959 4.856zM21.707 20.293l-3.675-3.675c1.231-1.54 1.968-3.493 1.968-5.618 0-2.485-1.008-4.736-2.636-6.364s-3.879-2.636-6.364-2.636-4.736 1.008-6.364 2.636-2.636 3.879-2.636 6.364 1.008 4.736 2.636 6.364 3.879 2.636 6.364 2.636c2.125 0 4.078-0.737 5.618-1.968l3.675 3.675c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414z"
|
|
20
|
+
}))), createElement("div", {
|
|
21
|
+
className: "aa-ItemContentBody"
|
|
22
|
+
}, createElement("div", {
|
|
23
|
+
className: "aa-ItemContentTitle"
|
|
24
|
+
}, createElement("a", {
|
|
25
|
+
className: "aa-ItemLink",
|
|
26
|
+
href: item.urls[0]
|
|
27
|
+
}, state.query)))), createElement("div", {
|
|
28
|
+
className: "aa-ItemActions"
|
|
29
|
+
}, createElement("div", {
|
|
30
|
+
className: "aa-ItemActionButton"
|
|
31
|
+
}, createElement("svg", {
|
|
32
|
+
viewBox: "0 0 24 24",
|
|
33
|
+
fill: "none",
|
|
34
|
+
stroke: "currentColor",
|
|
35
|
+
strokeWidth: "2",
|
|
36
|
+
strokeLinecap: "round",
|
|
37
|
+
strokeLinejoin: "round"
|
|
38
|
+
}, createElement("line", {
|
|
39
|
+
x1: "5",
|
|
40
|
+
y1: "12",
|
|
41
|
+
x2: "19",
|
|
42
|
+
y2: "12"
|
|
43
|
+
}), createElement("polyline", {
|
|
44
|
+
points: "12 5 19 12 12 19"
|
|
45
|
+
})))));
|
|
46
|
+
}
|
|
47
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { AutocompleteState, BaseItem, InternalAutocompleteOptions } from '@algolia/autocomplete-core';
|
|
2
|
+
import { SourceTemplates } from '@algolia/autocomplete-js';
|
|
3
|
+
import { SearchForFacetValuesResponse, SearchResponse } from '@algolia/autocomplete-preset-algolia';
|
|
4
|
+
export interface RedirectUrlPlugin {
|
|
5
|
+
data: RedirectUrlState[];
|
|
6
|
+
}
|
|
7
|
+
export interface RedirectUrlState {
|
|
8
|
+
sourceId: string;
|
|
9
|
+
urls: string[];
|
|
10
|
+
}
|
|
11
|
+
export interface RedirectUrlItem extends RedirectUrlState, BaseItem {
|
|
12
|
+
}
|
|
13
|
+
export declare type OnRedirectOptions<TItem extends RedirectUrlItem> = {
|
|
14
|
+
event: any;
|
|
15
|
+
navigator: InternalAutocompleteOptions<TItem>['navigator'];
|
|
16
|
+
state: AutocompleteState<TItem>;
|
|
17
|
+
};
|
|
18
|
+
export declare type TransformResponseParams<TItem> = SearchResponse<TItem> | SearchForFacetValuesResponse;
|
|
19
|
+
export declare type CreateRedirectUrlPluginParams<TItem extends BaseItem> = {
|
|
20
|
+
transformResponse?(response: TransformResponseParams<TItem>): string | undefined;
|
|
21
|
+
onRedirect?(redirects: RedirectUrlItem[], options: OnRedirectOptions<RedirectUrlItem>): void;
|
|
22
|
+
templates?: SourceTemplates<RedirectUrlItem>;
|
|
23
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Redirect';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Redirect';
|
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
/*! @algolia/autocomplete-plugin-redirect-url 1.8.0 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */
|
|
2
|
+
(function (global, factory) {
|
|
3
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
|
|
4
|
+
typeof define === 'function' && define.amd ? define(['exports'], factory) :
|
|
5
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["@algolia/autocomplete-plugin-redirect-url"] = {}));
|
|
6
|
+
})(this, (function (exports) { 'use strict';
|
|
7
|
+
|
|
8
|
+
function ownKeys(object, enumerableOnly) {
|
|
9
|
+
var keys = Object.keys(object);
|
|
10
|
+
|
|
11
|
+
if (Object.getOwnPropertySymbols) {
|
|
12
|
+
var symbols = Object.getOwnPropertySymbols(object);
|
|
13
|
+
enumerableOnly && (symbols = symbols.filter(function (sym) {
|
|
14
|
+
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
15
|
+
})), keys.push.apply(keys, symbols);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return keys;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function _objectSpread2(target) {
|
|
22
|
+
for (var i = 1; i < arguments.length; i++) {
|
|
23
|
+
var source = null != arguments[i] ? arguments[i] : {};
|
|
24
|
+
i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
|
|
25
|
+
_defineProperty(target, key, source[key]);
|
|
26
|
+
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
|
|
27
|
+
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
return target;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
function _defineProperty(obj, key, value) {
|
|
35
|
+
if (key in obj) {
|
|
36
|
+
Object.defineProperty(obj, key, {
|
|
37
|
+
value: value,
|
|
38
|
+
enumerable: true,
|
|
39
|
+
configurable: true,
|
|
40
|
+
writable: true
|
|
41
|
+
});
|
|
42
|
+
} else {
|
|
43
|
+
obj[key] = value;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
return obj;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
var warnCache = {
|
|
50
|
+
current: {}
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Logs a warning if the condition is not met.
|
|
54
|
+
* This is used to log issues in development environment only.
|
|
55
|
+
*/
|
|
56
|
+
|
|
57
|
+
function warn(condition, message) {
|
|
58
|
+
|
|
59
|
+
if (condition) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
var sanitizedMessage = message.trim();
|
|
64
|
+
var hasAlreadyPrinted = warnCache.current[sanitizedMessage];
|
|
65
|
+
|
|
66
|
+
if (!hasAlreadyPrinted) {
|
|
67
|
+
warnCache.current[sanitizedMessage] = true; // eslint-disable-next-line no-console
|
|
68
|
+
|
|
69
|
+
console.warn("[Autocomplete] ".concat(sanitizedMessage));
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/** @jsxRuntime classic */
|
|
74
|
+
|
|
75
|
+
/** @jsx createElement */
|
|
76
|
+
var defaultTemplates = {
|
|
77
|
+
item: function item(_ref) {
|
|
78
|
+
var createElement = _ref.createElement,
|
|
79
|
+
item = _ref.item,
|
|
80
|
+
state = _ref.state;
|
|
81
|
+
return createElement("div", {
|
|
82
|
+
className: "aa-ItemWrapper"
|
|
83
|
+
}, createElement("div", {
|
|
84
|
+
className: "aa-ItemContent"
|
|
85
|
+
}, createElement("div", {
|
|
86
|
+
className: "aa-ItemIcon aa-ItemIcon--noBorder"
|
|
87
|
+
}, createElement("svg", {
|
|
88
|
+
viewBox: "0 0 24 24",
|
|
89
|
+
fill: "currentColor"
|
|
90
|
+
}, createElement("path", {
|
|
91
|
+
d: "M16.041 15.856c-0.034 0.026-0.067 0.055-0.099 0.087s-0.060 0.064-0.087 0.099c-1.258 1.213-2.969 1.958-4.855 1.958-1.933 0-3.682-0.782-4.95-2.050s-2.050-3.017-2.050-4.95 0.782-3.682 2.050-4.95 3.017-2.050 4.95-2.050 3.682 0.782 4.95 2.050 2.050 3.017 2.050 4.95c0 1.886-0.745 3.597-1.959 4.856zM21.707 20.293l-3.675-3.675c1.231-1.54 1.968-3.493 1.968-5.618 0-2.485-1.008-4.736-2.636-6.364s-3.879-2.636-6.364-2.636-4.736 1.008-6.364 2.636-2.636 3.879-2.636 6.364 1.008 4.736 2.636 6.364 3.879 2.636 6.364 2.636c2.125 0 4.078-0.737 5.618-1.968l3.675 3.675c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414z"
|
|
92
|
+
}))), createElement("div", {
|
|
93
|
+
className: "aa-ItemContentBody"
|
|
94
|
+
}, createElement("div", {
|
|
95
|
+
className: "aa-ItemContentTitle"
|
|
96
|
+
}, createElement("a", {
|
|
97
|
+
className: "aa-ItemLink",
|
|
98
|
+
href: item.urls[0]
|
|
99
|
+
}, state.query)))), createElement("div", {
|
|
100
|
+
className: "aa-ItemActions"
|
|
101
|
+
}, createElement("div", {
|
|
102
|
+
className: "aa-ItemActionButton"
|
|
103
|
+
}, createElement("svg", {
|
|
104
|
+
viewBox: "0 0 24 24",
|
|
105
|
+
fill: "none",
|
|
106
|
+
stroke: "currentColor",
|
|
107
|
+
strokeWidth: "2",
|
|
108
|
+
strokeLinecap: "round",
|
|
109
|
+
strokeLinejoin: "round"
|
|
110
|
+
}, createElement("line", {
|
|
111
|
+
x1: "5",
|
|
112
|
+
y1: "12",
|
|
113
|
+
x2: "19",
|
|
114
|
+
y2: "12"
|
|
115
|
+
}), createElement("polyline", {
|
|
116
|
+
points: "12 5 19 12 12 19"
|
|
117
|
+
})))));
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
function defaultTransformResponse(response) {
|
|
122
|
+
var _renderingContent, _renderingContent$red;
|
|
123
|
+
|
|
124
|
+
return (_renderingContent = response.renderingContent) === null || _renderingContent === void 0 ? void 0 : (_renderingContent$red = _renderingContent.redirect) === null || _renderingContent$red === void 0 ? void 0 : _renderingContent$red.url;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
function defaultOnRedirect(redirects, _ref) {
|
|
128
|
+
var _item$urls;
|
|
129
|
+
|
|
130
|
+
var event = _ref.event,
|
|
131
|
+
navigator = _ref.navigator,
|
|
132
|
+
state = _ref.state;
|
|
133
|
+
var item = redirects[0];
|
|
134
|
+
var itemUrl = item === null || item === void 0 ? void 0 : (_item$urls = item.urls) === null || _item$urls === void 0 ? void 0 : _item$urls[0];
|
|
135
|
+
|
|
136
|
+
if (!itemUrl) {
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
if (event.metaKey || event.ctrlKey) {
|
|
141
|
+
navigator.navigateNewTab({
|
|
142
|
+
itemUrl: itemUrl,
|
|
143
|
+
item: item,
|
|
144
|
+
state: state
|
|
145
|
+
});
|
|
146
|
+
} else if (event.shiftKey) {
|
|
147
|
+
navigator.navigateNewWindow({
|
|
148
|
+
itemUrl: itemUrl,
|
|
149
|
+
item: item,
|
|
150
|
+
state: state
|
|
151
|
+
});
|
|
152
|
+
} else {
|
|
153
|
+
navigator.navigate({
|
|
154
|
+
itemUrl: itemUrl,
|
|
155
|
+
item: item,
|
|
156
|
+
state: state
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
function getOptions(options) {
|
|
162
|
+
return _objectSpread2({
|
|
163
|
+
transformResponse: defaultTransformResponse,
|
|
164
|
+
templates: defaultTemplates,
|
|
165
|
+
onRedirect: defaultOnRedirect
|
|
166
|
+
}, options);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
function getRedirectData(_ref2) {
|
|
170
|
+
var _redirectUrlPlugin$da;
|
|
171
|
+
|
|
172
|
+
var state = _ref2.state;
|
|
173
|
+
var redirectUrlPlugin = state.context.redirectUrlPlugin;
|
|
174
|
+
return (_redirectUrlPlugin$da = redirectUrlPlugin === null || redirectUrlPlugin === void 0 ? void 0 : redirectUrlPlugin.data) !== null && _redirectUrlPlugin$da !== void 0 ? _redirectUrlPlugin$da : [];
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
function createRedirectUrlPlugin() {
|
|
178
|
+
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
179
|
+
|
|
180
|
+
var _getOptions = getOptions(options),
|
|
181
|
+
transformResponse = _getOptions.transformResponse,
|
|
182
|
+
templates = _getOptions.templates,
|
|
183
|
+
onRedirect = _getOptions.onRedirect;
|
|
184
|
+
|
|
185
|
+
function createRedirects(_ref3) {
|
|
186
|
+
var _state$context$redire, _state$context$redire2;
|
|
187
|
+
|
|
188
|
+
var results = _ref3.results,
|
|
189
|
+
source = _ref3.source,
|
|
190
|
+
state = _ref3.state;
|
|
191
|
+
var redirect = {
|
|
192
|
+
sourceId: source.sourceId,
|
|
193
|
+
urls: results.map(function (result) {
|
|
194
|
+
return transformResponse(result);
|
|
195
|
+
}).filter(function (url) {
|
|
196
|
+
return url !== undefined;
|
|
197
|
+
})
|
|
198
|
+
};
|
|
199
|
+
var redirects = (_state$context$redire = (_state$context$redire2 = state.context.redirectUrlPlugin) === null || _state$context$redire2 === void 0 ? void 0 : _state$context$redire2.data) !== null && _state$context$redire !== void 0 ? _state$context$redire : [];
|
|
200
|
+
var existingRedirectIndex = redirects.findIndex(function (r) {
|
|
201
|
+
return r.sourceId === source.sourceId;
|
|
202
|
+
});
|
|
203
|
+
|
|
204
|
+
if (existingRedirectIndex !== -1) {
|
|
205
|
+
if (redirect.urls.length === 0) {
|
|
206
|
+
redirects.splice(existingRedirectIndex, 1);
|
|
207
|
+
} else {
|
|
208
|
+
redirects[existingRedirectIndex] = redirect;
|
|
209
|
+
}
|
|
210
|
+
} else if (redirect.urls.length > 0) {
|
|
211
|
+
redirects.push(redirect);
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
return redirects;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
return {
|
|
218
|
+
name: 'aa.redirectUrlPlugin',
|
|
219
|
+
subscribe: function subscribe(_ref4) {
|
|
220
|
+
var onResolve = _ref4.onResolve,
|
|
221
|
+
setContext = _ref4.setContext;
|
|
222
|
+
onResolve(function (_ref5) {
|
|
223
|
+
var results = _ref5.results,
|
|
224
|
+
source = _ref5.source,
|
|
225
|
+
state = _ref5.state;
|
|
226
|
+
setContext(_objectSpread2(_objectSpread2({}, state.context), {}, {
|
|
227
|
+
redirectUrlPlugin: {
|
|
228
|
+
data: createRedirects({
|
|
229
|
+
results: results,
|
|
230
|
+
source: source,
|
|
231
|
+
state: state
|
|
232
|
+
})
|
|
233
|
+
}
|
|
234
|
+
}));
|
|
235
|
+
});
|
|
236
|
+
},
|
|
237
|
+
reshape: function reshape(_ref6) {
|
|
238
|
+
var _data, _state$context$redire3;
|
|
239
|
+
|
|
240
|
+
var state = _ref6.state,
|
|
241
|
+
sourcesBySourceId = _ref6.sourcesBySourceId;
|
|
242
|
+
var redirects = (_data = (_state$context$redire3 = state.context.redirectUrlPlugin) === null || _state$context$redire3 === void 0 ? void 0 : _state$context$redire3.data) !== null && _data !== void 0 ? _data : [];
|
|
243
|
+
redirects.forEach(function (redirect) {
|
|
244
|
+
var source = sourcesBySourceId[redirect.sourceId];
|
|
245
|
+
|
|
246
|
+
if (source === undefined) {
|
|
247
|
+
return;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
sourcesBySourceId[redirect.sourceId] = _objectSpread2(_objectSpread2({}, source), {}, {
|
|
251
|
+
getItems: function getItems() {
|
|
252
|
+
return source.getItems().filter(function (item) {
|
|
253
|
+
if (source.getItemInputValue.__default) {
|
|
254
|
+
"development" !== 'production' ? warn(false, "The source ".concat(JSON.stringify(source.sourceId), " does not have a `getItemInputValue` function. It's required to be able to filter out the redirect item.") + '\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getiteminputvalue') : void 0;
|
|
255
|
+
return true;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
var itemInputValue = source.getItemInputValue({
|
|
259
|
+
item: item,
|
|
260
|
+
state: state
|
|
261
|
+
});
|
|
262
|
+
|
|
263
|
+
if (itemInputValue === undefined) {
|
|
264
|
+
"development" !== 'production' ? warn(false, "The source ".concat(JSON.stringify(source.sourceId), " does not return a string from the `getItemInputValue` function. It's required to be able to filter out the redirect item.") + '\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getiteminputvalue') : void 0;
|
|
265
|
+
return true;
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
return itemInputValue.toLowerCase() !== state.query.toLowerCase();
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
});
|
|
272
|
+
});
|
|
273
|
+
var redirectSource = {
|
|
274
|
+
sourceId: 'redirectUrlPlugin',
|
|
275
|
+
templates: templates,
|
|
276
|
+
getItemUrl: function getItemUrl(_ref7) {
|
|
277
|
+
var item = _ref7.item;
|
|
278
|
+
return item.urls[0];
|
|
279
|
+
},
|
|
280
|
+
onSelect: function onSelect(_ref8) {
|
|
281
|
+
var event = _ref8.event,
|
|
282
|
+
item = _ref8.item,
|
|
283
|
+
state = _ref8.state,
|
|
284
|
+
navigator = _ref8.navigator;
|
|
285
|
+
onRedirect([item], {
|
|
286
|
+
event: event,
|
|
287
|
+
navigator: navigator,
|
|
288
|
+
state: state
|
|
289
|
+
});
|
|
290
|
+
},
|
|
291
|
+
getItemInputValue: function getItemInputValue() {
|
|
292
|
+
return state.query;
|
|
293
|
+
},
|
|
294
|
+
onActive: function onActive() {},
|
|
295
|
+
getItems: function getItems() {
|
|
296
|
+
return getRedirectData({
|
|
297
|
+
state: state
|
|
298
|
+
});
|
|
299
|
+
}
|
|
300
|
+
};
|
|
301
|
+
"development" !== 'production' ? warn(sourcesBySourceId.redirect === undefined, 'A source with `sourceId: "redirect"` already exists. This source will be overridden.') : void 0;
|
|
302
|
+
return {
|
|
303
|
+
sourcesBySourceId: _objectSpread2({
|
|
304
|
+
// Our source has templates, but reshape only accepts sources without templates (autocomplete-core)
|
|
305
|
+
redirect: redirectSource
|
|
306
|
+
}, sourcesBySourceId),
|
|
307
|
+
state: state
|
|
308
|
+
};
|
|
309
|
+
},
|
|
310
|
+
onSubmit: function onSubmit(_ref9) {
|
|
311
|
+
var event = _ref9.event,
|
|
312
|
+
navigator = _ref9.navigator,
|
|
313
|
+
state = _ref9.state;
|
|
314
|
+
onRedirect(getRedirectData({
|
|
315
|
+
state: state
|
|
316
|
+
}), {
|
|
317
|
+
event: event,
|
|
318
|
+
navigator: navigator,
|
|
319
|
+
state: state
|
|
320
|
+
});
|
|
321
|
+
},
|
|
322
|
+
__autocomplete_pluginOptions: options
|
|
323
|
+
};
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
exports.createRedirectUrlPlugin = createRedirectUrlPlugin;
|
|
327
|
+
exports.defaultTemplates = defaultTemplates;
|
|
328
|
+
|
|
329
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
330
|
+
|
|
331
|
+
}));
|
|
332
|
+
//# sourceMappingURL=index.development.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.development.js","sources":["../../../autocomplete-shared/dist/esm/warn.js","../../src/templates.tsx","../../src/createRedirectUrlPlugin.ts"],"sourcesContent":["export var warnCache = {\n current: {}\n};\n/**\n * Logs a warning if the condition is not met.\n * This is used to log issues in development environment only.\n */\n\nexport function warn(condition, message) {\n if (!(process.env.NODE_ENV !== 'production')) {\n return;\n }\n\n if (condition) {\n return;\n }\n\n var sanitizedMessage = message.trim();\n var hasAlreadyPrinted = warnCache.current[sanitizedMessage];\n\n if (!hasAlreadyPrinted) {\n warnCache.current[sanitizedMessage] = true; // eslint-disable-next-line no-console\n\n console.warn(\"[Autocomplete] \".concat(sanitizedMessage));\n }\n}","/** @jsxRuntime classic */\n/** @jsx createElement */\n\nexport const defaultTemplates = {\n item({ createElement, item, state }) {\n return (\n <div className=\"aa-ItemWrapper\">\n <div className=\"aa-ItemContent\">\n <div className=\"aa-ItemIcon aa-ItemIcon--noBorder\">\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M16.041 15.856c-0.034 0.026-0.067 0.055-0.099 0.087s-0.060 0.064-0.087 0.099c-1.258 1.213-2.969 1.958-4.855 1.958-1.933 0-3.682-0.782-4.95-2.050s-2.050-3.017-2.050-4.95 0.782-3.682 2.050-4.95 3.017-2.050 4.95-2.050 3.682 0.782 4.95 2.050 2.050 3.017 2.050 4.95c0 1.886-0.745 3.597-1.959 4.856zM21.707 20.293l-3.675-3.675c1.231-1.54 1.968-3.493 1.968-5.618 0-2.485-1.008-4.736-2.636-6.364s-3.879-2.636-6.364-2.636-4.736 1.008-6.364 2.636-2.636 3.879-2.636 6.364 1.008 4.736 2.636 6.364 3.879 2.636 6.364 2.636c2.125 0 4.078-0.737 5.618-1.968l3.675 3.675c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414z\" />\n </svg>\n </div>\n <div className=\"aa-ItemContentBody\">\n <div className=\"aa-ItemContentTitle\">\n <a className=\"aa-ItemLink\" href={item.urls[0]}>\n {state.query}\n </a>\n </div>\n </div>\n </div>\n <div className=\"aa-ItemActions\">\n <div className=\"aa-ItemActionButton\">\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\" />\n <polyline points=\"12 5 19 12 12 19\" />\n </svg>\n </div>\n </div>\n </div>\n );\n },\n};\n","import {\n BaseItem,\n OnSelectParams,\n OnSubmitParams,\n} from '@algolia/autocomplete-core';\nimport { AutocompletePlugin } from '@algolia/autocomplete-js';\nimport { warn } from '@algolia/autocomplete-shared';\n\nimport { defaultTemplates } from './templates';\nimport {\n CreateRedirectUrlPluginParams,\n OnRedirectOptions,\n RedirectUrlItem,\n RedirectUrlPlugin as RedirectUrlPluginData,\n TransformResponseParams,\n} from './types';\n\nfunction defaultTransformResponse<THit>(\n response: TransformResponseParams<THit>\n): string | undefined {\n return (response as Record<string, any>).renderingContent?.redirect?.url;\n}\n\nfunction defaultOnRedirect(\n redirects: RedirectUrlItem[],\n { event, navigator, state }: OnRedirectOptions<RedirectUrlItem>\n) {\n const item = redirects[0];\n const itemUrl = item?.urls?.[0];\n\n if (!itemUrl) {\n return;\n }\n\n if (event.metaKey || event.ctrlKey) {\n navigator.navigateNewTab({ itemUrl, item, state });\n } else if (event.shiftKey) {\n navigator.navigateNewWindow({ itemUrl, item, state });\n } else {\n navigator.navigate({ itemUrl, item, state });\n }\n}\n\nfunction getOptions<TItem extends BaseItem>(\n options: CreateRedirectUrlPluginParams<TItem>\n) {\n return {\n transformResponse: defaultTransformResponse,\n templates: defaultTemplates,\n onRedirect: defaultOnRedirect,\n ...options,\n };\n}\n\nfunction getRedirectData({ state }) {\n const redirectUrlPlugin = state.context\n .redirectUrlPlugin as RedirectUrlPluginData;\n return (redirectUrlPlugin?.data ?? []) as RedirectUrlItem[];\n}\n\nexport function createRedirectUrlPlugin<TItem extends BaseItem>(\n options: CreateRedirectUrlPluginParams<TItem> = {}\n): AutocompletePlugin<RedirectUrlItem, undefined> {\n const { transformResponse, templates, onRedirect } = getOptions(options);\n\n function createRedirects({ results, source, state }): RedirectUrlItem[] {\n const redirect: RedirectUrlItem = {\n sourceId: source.sourceId,\n urls: results\n .map((result) => transformResponse(result))\n .filter((url) => url !== undefined),\n };\n\n const redirects: RedirectUrlItem[] =\n state.context.redirectUrlPlugin?.data ?? [];\n const existingRedirectIndex = redirects.findIndex(\n (r) => r.sourceId === source.sourceId\n );\n\n if (existingRedirectIndex !== -1) {\n if (redirect.urls.length === 0) {\n redirects.splice(existingRedirectIndex, 1);\n } else {\n redirects[existingRedirectIndex] = redirect;\n }\n } else if (redirect.urls.length > 0) {\n redirects.push(redirect);\n }\n\n return redirects;\n }\n\n return {\n name: 'aa.redirectUrlPlugin',\n subscribe({ onResolve, setContext }) {\n onResolve(({ results, source, state }) => {\n setContext({\n ...state.context,\n redirectUrlPlugin: {\n data: createRedirects({ results, source, state }),\n },\n });\n });\n },\n reshape({ state, sourcesBySourceId }) {\n const redirects =\n (state.context.redirectUrlPlugin as RedirectUrlPluginData)?.data ?? [];\n\n redirects.forEach((redirect) => {\n const source = sourcesBySourceId[redirect.sourceId];\n if (source === undefined) {\n return;\n }\n\n sourcesBySourceId[redirect.sourceId] = {\n ...source,\n getItems: () =>\n source.getItems().filter((item) => {\n if (source.getItemInputValue!.__default) {\n warn(\n false,\n `The source ${JSON.stringify(\n source.sourceId\n )} does not have a \\`getItemInputValue\\` function. It's required to be able to filter out the redirect item.` +\n '\\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getiteminputvalue'\n );\n return true;\n }\n\n const itemInputValue = source.getItemInputValue!({\n item,\n state,\n });\n\n if (itemInputValue === undefined) {\n warn(\n false,\n `The source ${JSON.stringify(\n source.sourceId\n )} does not return a string from the \\`getItemInputValue\\` function. It's required to be able to filter out the redirect item.` +\n '\\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getiteminputvalue'\n );\n return true;\n }\n\n return itemInputValue.toLowerCase() !== state.query.toLowerCase();\n }),\n };\n });\n\n const redirectSource = {\n sourceId: 'redirectUrlPlugin',\n templates,\n getItemUrl({ item }) {\n return item.urls[0];\n },\n onSelect({\n event,\n item,\n state,\n navigator,\n }: OnSelectParams<RedirectUrlItem>) {\n onRedirect([item], { event, navigator, state });\n },\n getItemInputValue() {\n return state.query;\n },\n onActive() {},\n getItems() {\n return getRedirectData({ state });\n },\n };\n\n warn(\n sourcesBySourceId.redirect === undefined,\n 'A source with `sourceId: \"redirect\"` already exists. This source will be overridden.'\n );\n\n return {\n sourcesBySourceId: {\n // Our source has templates, but reshape only accepts sources without templates (autocomplete-core)\n redirect: (redirectSource as unknown) as typeof sourcesBySourceId[string],\n ...sourcesBySourceId,\n },\n state,\n };\n },\n onSubmit({ event, navigator, state }: OnSubmitParams<RedirectUrlItem>) {\n onRedirect(getRedirectData({ state }), { event, navigator, state });\n },\n __autocomplete_pluginOptions: options,\n };\n}\n"],"names":["warnCache","current","warn","condition","message","sanitizedMessage","trim","hasAlreadyPrinted","console","concat","defaultTemplates","item","createElement","state","urls","query","defaultTransformResponse","response","renderingContent","redirect","url","defaultOnRedirect","redirects","event","navigator","itemUrl","metaKey","ctrlKey","navigateNewTab","shiftKey","navigateNewWindow","navigate","getOptions","options","_objectSpread","transformResponse","templates","onRedirect","getRedirectData","redirectUrlPlugin","context","data","createRedirectUrlPlugin","createRedirects","results","source","sourceId","map","result","filter","undefined","existingRedirectIndex","findIndex","r","length","splice","push","name","subscribe","onResolve","setContext","reshape","sourcesBySourceId","forEach","getItems","getItemInputValue","__default","process","JSON","stringify","itemInputValue","toLowerCase","redirectSource","getItemUrl","onSelect","onActive","onSubmit","__autocomplete_pluginOptions"],"mappings":"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A,CAAA;EAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAf,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAf,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAf,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAC,CAAb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAyB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAA9B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAR,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CADF,CAAA,CADF,CADF,EAME,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA;EAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,C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,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CALA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAOA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,IAAP,CAAA;EACD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;AAED,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAMwB,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGzB,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAACoB,iBAAP,CAA0B,CAAA;EAC/CtD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,EAAJA,CAD+C,CAAA,CAAA,CAAA,CAAA;EAE/CE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAALA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AAF+C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA1B,CAAvB,CAAA;;AAKA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIyD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc,CAAKpB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAvB,CAAkC,CAAA,CAAA;AAtIhDiB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,aAAA,CAAyB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAuIT,CAAAjE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CACF,CAAA,CAAA,CAAA,CAAA,CADE,CAEF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAckE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CAAA,CAAA,CAAA,CAACC,CAAL,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACZxB,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAACC,QADK,CAAd,CAAA,CAGE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CALA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAOA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,IAAP,CAAA;EACD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;AAED,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOwB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAf,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiC1D,CAAK,CAAA,CAAA,CAAA,CAAA,CAACE,CAAN,CAAA,CAAA,CAAA,CAAA,CAAYwD,CAAZ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAxC,CAAA;AACD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CA7BD,CADQ,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAFZ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAkCD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAxCD,CAAA,CAAA;EA0CA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,cAAc,CAAG,CAAA,CAAA,CAAA;EACrB1B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAAE,CADW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAErBV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,EAATA,CAFqB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAGrBqC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,UAHqB,CAGA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAR9D,IAAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,OAARA,IAAQ,CAAA;AACnB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAOA,CAAI,CAAA,CAAA,CAAA,CAACG,IAAL,CAAU,CAAV,CAAP,CAAA;EACD,CALoB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAMrB4D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,QANqB,CAWe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAJlCnD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAIkC,SAJlCA,CAIkC,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAHlCZ,CAGkC,CAAA,CAAA,CAAA,CAAA,CAAA,OAHlCA,CAGkC,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAFlCE,CAEkC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAFlCA,CAEkC,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CADlCW,CACkC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OADlCA,SACkC,CAAA;AAClCa,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC1B,CAAAA,CAAAA,CAAAA,CAAD,CAAD,CAAS,CAAA,CAAA;EAAEY,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAALA,CAAF,CAAA,CAAA,CAAA,CAAA,CAAA;EAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,EAATA,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAoBX,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAALA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AAApB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAT,CAAV,CAAA;EACD,CAboB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAcrBoD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAdqB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAcD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAClB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOpD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACE,CAAAA,CAAAA,CAAAA,CAAAA,CAAb,CAAA;EACD,CAhBoB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAiBrB4D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAjBqB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAiBV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAjBU,CAAA,CAAA;AAkBrBX,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAlBqB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAkBV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO1B,eAAe,CAAC,CAAA;EAAEzB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAALA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AAAF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAD,CAAtB,CAAA;EACD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AApBoB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAvB,CAAA;EAtJNsD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,aAAA,CAAyB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CA6KnB,GAAAjE,CAAI,CAAA,CAAA,CAAA,CACF4D,iBAAiB,CAAC3C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAlB,KAA+B+B,CAD7B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAEF,sFAFE,CAAJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAKA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACLY,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAAA5B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA;AACf,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACAf,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAAGqD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;EAFI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAGZV,iBAHY,CADZ,CAAA;EAMLjD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAALA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AANK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAP,CAAA;EAQD,CA9FI,CAAA,CAAA,CAAA,CAAA,CAAA;AA+FL+D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,QA/FK,CA+FkE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA5DrD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAA4D,SAA5DA,CAA4D,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAArDC,CAAqD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAArDA,CAAqD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA1CX,CAA0C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAA1CA,KAA0C,CAAA;EACrEwB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,CAAC,CAAA;EAAEzB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAALA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AAAF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAD,CAAhB,CAA6B,CAAA,CAAA;EAAEU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAALA,CAAF,CAAA,CAAA,CAAA,CAAA,CAAA;EAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,EAATA,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAoBX,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAALA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AAApB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA7B,CAAV,CAAA;EACD,CAjGI,CAAA,CAAA,CAAA,CAAA,CAAA;EAkGLgE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAA4B,EAAE5C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AAlGzB,CAAA,CAAA,CAAA,CAAA,CAAP,CAAA;AAoGD,CAAA,CAAA,CAAA;;;;;;;"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! @algolia/autocomplete-plugin-redirect-url 1.8.0 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */
|
|
2
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@algolia/autocomplete-plugin-redirect-url"]={})}(this,(function(e){"use strict";function t(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function r(e){for(var r=1;r<arguments.length;r++){var o=null!=arguments[r]?arguments[r]:{};r%2?t(Object(o),!0).forEach((function(t){n(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):t(Object(o)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))}))}return e}function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var o={item:function(e){var t=e.createElement,r=e.item,n=e.state;return t("div",{className:"aa-ItemWrapper"},t("div",{className:"aa-ItemContent"},t("div",{className:"aa-ItemIcon aa-ItemIcon--noBorder"},t("svg",{viewBox:"0 0 24 24",fill:"currentColor"},t("path",{d:"M16.041 15.856c-0.034 0.026-0.067 0.055-0.099 0.087s-0.060 0.064-0.087 0.099c-1.258 1.213-2.969 1.958-4.855 1.958-1.933 0-3.682-0.782-4.95-2.050s-2.050-3.017-2.050-4.95 0.782-3.682 2.050-4.95 3.017-2.050 4.95-2.050 3.682 0.782 4.95 2.050 2.050 3.017 2.050 4.95c0 1.886-0.745 3.597-1.959 4.856zM21.707 20.293l-3.675-3.675c1.231-1.54 1.968-3.493 1.968-5.618 0-2.485-1.008-4.736-2.636-6.364s-3.879-2.636-6.364-2.636-4.736 1.008-6.364 2.636-2.636 3.879-2.636 6.364 1.008 4.736 2.636 6.364 3.879 2.636 6.364 2.636c2.125 0 4.078-0.737 5.618-1.968l3.675 3.675c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414z"}))),t("div",{className:"aa-ItemContentBody"},t("div",{className:"aa-ItemContentTitle"},t("a",{className:"aa-ItemLink",href:r.urls[0]},n.query)))),t("div",{className:"aa-ItemActions"},t("div",{className:"aa-ItemActionButton"},t("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},t("line",{x1:"5",y1:"12",x2:"19",y2:"12"}),t("polyline",{points:"12 5 19 12 12 19"})))))}};function i(e){var t,r;return null===(t=e.renderingContent)||void 0===t||null===(r=t.redirect)||void 0===r?void 0:r.url}function a(e,t){var r,n=t.event,o=t.navigator,i=t.state,a=e[0],u=null==a||null===(r=a.urls)||void 0===r?void 0:r[0];u&&(n.metaKey||n.ctrlKey?o.navigateNewTab({itemUrl:u,item:a,state:i}):n.shiftKey?o.navigateNewWindow({itemUrl:u,item:a,state:i}):o.navigate({itemUrl:u,item:a,state:i}))}function u(e){return r({transformResponse:i,templates:o,onRedirect:a},e)}function s(e){var t,r=e.state.context.redirectUrlPlugin;return null!==(t=null==r?void 0:r.data)&&void 0!==t?t:[]}e.createRedirectUrlPlugin=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=u(e),n=t.transformResponse,o=t.templates,i=t.onRedirect;function a(e){var t,r,o=e.results,i=e.source,a=e.state,u={sourceId:i.sourceId,urls:o.map((function(e){return n(e)})).filter((function(e){return void 0!==e}))},s=null!==(t=null===(r=a.context.redirectUrlPlugin)||void 0===r?void 0:r.data)&&void 0!==t?t:[],c=s.findIndex((function(e){return e.sourceId===i.sourceId}));return-1!==c?0===u.urls.length?s.splice(c,1):s[c]=u:u.urls.length>0&&s.push(u),s}return{name:"aa.redirectUrlPlugin",subscribe:function(e){var t=e.onResolve,n=e.setContext;t((function(e){var t=e.results,o=e.source,i=e.state;n(r(r({},i.context),{},{redirectUrlPlugin:{data:a({results:t,source:o,state:i})}}))}))},reshape:function(e){var t,n,a=e.state,u=e.sourcesBySourceId;return(null!==(t=null===(n=a.context.redirectUrlPlugin)||void 0===n?void 0:n.data)&&void 0!==t?t:[]).forEach((function(e){var t=u[e.sourceId];void 0!==t&&(u[e.sourceId]=r(r({},t),{},{getItems:function(){return t.getItems().filter((function(e){if(t.getItemInputValue.__default)return!0;var r=t.getItemInputValue({item:e,state:a});return void 0===r||r.toLowerCase()!==a.query.toLowerCase()}))}}))})),{sourcesBySourceId:r({redirect:{sourceId:"redirectUrlPlugin",templates:o,getItemUrl:function(e){return e.item.urls[0]},onSelect:function(e){var t=e.event,r=e.item,n=e.state,o=e.navigator;i([r],{event:t,navigator:o,state:n})},getItemInputValue:function(){return a.query},onActive:function(){},getItems:function(){return s({state:a})}}},u),state:a}},onSubmit:function(e){var t=e.event,r=e.navigator,n=e.state;i(s({state:n}),{event:t,navigator:r,state:n})},__autocomplete_pluginOptions:e}},e.defaultTemplates=o,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
3
|
+
//# sourceMappingURL=index.production.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.production.js","sources":["../../src/templates.tsx","../../src/createRedirectUrlPlugin.ts"],"sourcesContent":["/** @jsxRuntime classic */\n/** @jsx createElement */\n\nexport const defaultTemplates = {\n item({ createElement, item, state }) {\n return (\n <div className=\"aa-ItemWrapper\">\n <div className=\"aa-ItemContent\">\n <div className=\"aa-ItemIcon aa-ItemIcon--noBorder\">\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M16.041 15.856c-0.034 0.026-0.067 0.055-0.099 0.087s-0.060 0.064-0.087 0.099c-1.258 1.213-2.969 1.958-4.855 1.958-1.933 0-3.682-0.782-4.95-2.050s-2.050-3.017-2.050-4.95 0.782-3.682 2.050-4.95 3.017-2.050 4.95-2.050 3.682 0.782 4.95 2.050 2.050 3.017 2.050 4.95c0 1.886-0.745 3.597-1.959 4.856zM21.707 20.293l-3.675-3.675c1.231-1.54 1.968-3.493 1.968-5.618 0-2.485-1.008-4.736-2.636-6.364s-3.879-2.636-6.364-2.636-4.736 1.008-6.364 2.636-2.636 3.879-2.636 6.364 1.008 4.736 2.636 6.364 3.879 2.636 6.364 2.636c2.125 0 4.078-0.737 5.618-1.968l3.675 3.675c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414z\" />\n </svg>\n </div>\n <div className=\"aa-ItemContentBody\">\n <div className=\"aa-ItemContentTitle\">\n <a className=\"aa-ItemLink\" href={item.urls[0]}>\n {state.query}\n </a>\n </div>\n </div>\n </div>\n <div className=\"aa-ItemActions\">\n <div className=\"aa-ItemActionButton\">\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\" />\n <polyline points=\"12 5 19 12 12 19\" />\n </svg>\n </div>\n </div>\n </div>\n );\n },\n};\n","import {\n BaseItem,\n OnSelectParams,\n OnSubmitParams,\n} from '@algolia/autocomplete-core';\nimport { AutocompletePlugin } from '@algolia/autocomplete-js';\nimport { warn } from '@algolia/autocomplete-shared';\n\nimport { defaultTemplates } from './templates';\nimport {\n CreateRedirectUrlPluginParams,\n OnRedirectOptions,\n RedirectUrlItem,\n RedirectUrlPlugin as RedirectUrlPluginData,\n TransformResponseParams,\n} from './types';\n\nfunction defaultTransformResponse<THit>(\n response: TransformResponseParams<THit>\n): string | undefined {\n return (response as Record<string, any>).renderingContent?.redirect?.url;\n}\n\nfunction defaultOnRedirect(\n redirects: RedirectUrlItem[],\n { event, navigator, state }: OnRedirectOptions<RedirectUrlItem>\n) {\n const item = redirects[0];\n const itemUrl = item?.urls?.[0];\n\n if (!itemUrl) {\n return;\n }\n\n if (event.metaKey || event.ctrlKey) {\n navigator.navigateNewTab({ itemUrl, item, state });\n } else if (event.shiftKey) {\n navigator.navigateNewWindow({ itemUrl, item, state });\n } else {\n navigator.navigate({ itemUrl, item, state });\n }\n}\n\nfunction getOptions<TItem extends BaseItem>(\n options: CreateRedirectUrlPluginParams<TItem>\n) {\n return {\n transformResponse: defaultTransformResponse,\n templates: defaultTemplates,\n onRedirect: defaultOnRedirect,\n ...options,\n };\n}\n\nfunction getRedirectData({ state }) {\n const redirectUrlPlugin = state.context\n .redirectUrlPlugin as RedirectUrlPluginData;\n return (redirectUrlPlugin?.data ?? []) as RedirectUrlItem[];\n}\n\nexport function createRedirectUrlPlugin<TItem extends BaseItem>(\n options: CreateRedirectUrlPluginParams<TItem> = {}\n): AutocompletePlugin<RedirectUrlItem, undefined> {\n const { transformResponse, templates, onRedirect } = getOptions(options);\n\n function createRedirects({ results, source, state }): RedirectUrlItem[] {\n const redirect: RedirectUrlItem = {\n sourceId: source.sourceId,\n urls: results\n .map((result) => transformResponse(result))\n .filter((url) => url !== undefined),\n };\n\n const redirects: RedirectUrlItem[] =\n state.context.redirectUrlPlugin?.data ?? [];\n const existingRedirectIndex = redirects.findIndex(\n (r) => r.sourceId === source.sourceId\n );\n\n if (existingRedirectIndex !== -1) {\n if (redirect.urls.length === 0) {\n redirects.splice(existingRedirectIndex, 1);\n } else {\n redirects[existingRedirectIndex] = redirect;\n }\n } else if (redirect.urls.length > 0) {\n redirects.push(redirect);\n }\n\n return redirects;\n }\n\n return {\n name: 'aa.redirectUrlPlugin',\n subscribe({ onResolve, setContext }) {\n onResolve(({ results, source, state }) => {\n setContext({\n ...state.context,\n redirectUrlPlugin: {\n data: createRedirects({ results, source, state }),\n },\n });\n });\n },\n reshape({ state, sourcesBySourceId }) {\n const redirects =\n (state.context.redirectUrlPlugin as RedirectUrlPluginData)?.data ?? [];\n\n redirects.forEach((redirect) => {\n const source = sourcesBySourceId[redirect.sourceId];\n if (source === undefined) {\n return;\n }\n\n sourcesBySourceId[redirect.sourceId] = {\n ...source,\n getItems: () =>\n source.getItems().filter((item) => {\n if (source.getItemInputValue!.__default) {\n warn(\n false,\n `The source ${JSON.stringify(\n source.sourceId\n )} does not have a \\`getItemInputValue\\` function. It's required to be able to filter out the redirect item.` +\n '\\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getiteminputvalue'\n );\n return true;\n }\n\n const itemInputValue = source.getItemInputValue!({\n item,\n state,\n });\n\n if (itemInputValue === undefined) {\n warn(\n false,\n `The source ${JSON.stringify(\n source.sourceId\n )} does not return a string from the \\`getItemInputValue\\` function. It's required to be able to filter out the redirect item.` +\n '\\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getiteminputvalue'\n );\n return true;\n }\n\n return itemInputValue.toLowerCase() !== state.query.toLowerCase();\n }),\n };\n });\n\n const redirectSource = {\n sourceId: 'redirectUrlPlugin',\n templates,\n getItemUrl({ item }) {\n return item.urls[0];\n },\n onSelect({\n event,\n item,\n state,\n navigator,\n }: OnSelectParams<RedirectUrlItem>) {\n onRedirect([item], { event, navigator, state });\n },\n getItemInputValue() {\n return state.query;\n },\n onActive() {},\n getItems() {\n return getRedirectData({ state });\n },\n };\n\n warn(\n sourcesBySourceId.redirect === undefined,\n 'A source with `sourceId: \"redirect\"` already exists. This source will be overridden.'\n );\n\n return {\n sourcesBySourceId: {\n // Our source has templates, but reshape only accepts sources without templates (autocomplete-core)\n redirect: (redirectSource as unknown) as typeof sourcesBySourceId[string],\n ...sourcesBySourceId,\n },\n state,\n };\n },\n onSubmit({ event, navigator, state }: OnSubmitParams<RedirectUrlItem>) {\n onRedirect(getRedirectData({ state }), { event, navigator, state });\n },\n __autocomplete_pluginOptions: options,\n };\n}\n"],"names":["defaultTemplates","item","_ref","createElement","state","className","viewBox","fill","d","href","urls","query","stroke","strokeWidth","strokeLinecap","strokeLinejoin","x1","y1","x2","y2","points","defaultTransformResponse","response","_renderingContent","_renderingContent$red","renderingContent","redirect","url","defaultOnRedirect","redirects","_item$urls","event","navigator","itemUrl","metaKey","ctrlKey","navigateNewTab","shiftKey","navigateNewWindow","navigate","getOptions","options","_objectSpread","transformResponse","templates","onRedirect","getRedirectData","_ref2","_redirectUrlPlugin$da","redirectUrlPlugin","context","data","createRedirects","_ref3","_state$context$redire","_state$context$redire2","results","source","sourceId","map","result","filter","undefined","existingRedirectIndex","findIndex","r","length","splice","push","name","subscribe","_ref4","onResolve","setContext","_ref5","reshape","_ref6","_data","_state$context$redire3","sourcesBySourceId","forEach","getItems","getItemInputValue","__default","itemInputValue","toLowerCase","getItemUrl","_ref7","onSelect","_ref8","onActive","onSubmit","_ref9","__autocomplete_pluginOptions"],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@algolia/autocomplete-plugin-redirect-url",
|
|
3
|
+
"description": "A plugin to add redirect URL functionality to Algolia Autocomplete.",
|
|
4
|
+
"version": "1.8.0",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"homepage": "https://github.com/algolia/autocomplete",
|
|
7
|
+
"repository": "algolia/autocomplete",
|
|
8
|
+
"author": {
|
|
9
|
+
"name": "Algolia, Inc.",
|
|
10
|
+
"url": "https://www.algolia.com"
|
|
11
|
+
},
|
|
12
|
+
"source": "src/index.ts",
|
|
13
|
+
"types": "dist/esm/index.d.ts",
|
|
14
|
+
"module": "dist/esm/index.js",
|
|
15
|
+
"main": "dist/umd/index.production.js",
|
|
16
|
+
"umd:main": "dist/umd/index.production.js",
|
|
17
|
+
"unpkg": "dist/umd/index.production.js",
|
|
18
|
+
"jsdelivr": "dist/umd/index.production.js",
|
|
19
|
+
"sideEffects": false,
|
|
20
|
+
"files": [
|
|
21
|
+
"dist/"
|
|
22
|
+
],
|
|
23
|
+
"scripts": {
|
|
24
|
+
"build:clean": "rm -rf ./dist",
|
|
25
|
+
"build:esm": "babel src --root-mode upward --extensions '.ts,.tsx' --out-dir dist/esm --ignore '**/*/__tests__/'",
|
|
26
|
+
"build:types": "tsc -p ./tsconfig.declaration.json --outDir ./dist/esm",
|
|
27
|
+
"build:umd": "rollup --config",
|
|
28
|
+
"build": "rm -rf ./dist && yarn build:umd && yarn build:esm && yarn build:types",
|
|
29
|
+
"on:change": "concurrently \"yarn build:esm\" \"yarn build:types\"",
|
|
30
|
+
"prepare": "yarn run build:esm && yarn build:types",
|
|
31
|
+
"watch": "watch \"yarn on:change\" --ignoreDirectoryPattern \"/dist/\""
|
|
32
|
+
},
|
|
33
|
+
"dependencies": {
|
|
34
|
+
"@algolia/autocomplete-core": "1.8.0",
|
|
35
|
+
"@algolia/autocomplete-js": "1.8.0",
|
|
36
|
+
"@algolia/autocomplete-preset-algolia": "1.8.0",
|
|
37
|
+
"@algolia/autocomplete-shared": "1.8.0"
|
|
38
|
+
},
|
|
39
|
+
"devDependencies": {
|
|
40
|
+
"@algolia/client-search": "4.14.3",
|
|
41
|
+
"algoliasearch": "4.14.3"
|
|
42
|
+
},
|
|
43
|
+
"peerDependencies": {
|
|
44
|
+
"@algolia/client-search": ">= 4.5.1 < 6",
|
|
45
|
+
"algoliasearch": ">= 4.5.1 < 6"
|
|
46
|
+
}
|
|
47
|
+
}
|