Skip to content

Commit 02f0125

Browse files
committed
refactor: Use adapter-utils filtering in memory adapter
1 parent ff7ee89 commit 02f0125

1 file changed

Lines changed: 3 additions & 20 deletions

File tree

packages/adapter-memory/index.js

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,9 @@
1+
const { filterViews, filterPaths } = require('micro-analytics-adapter-utils');
12
const Observable = require('zen-observable');
23

34
let data = {};
45
let handlers = [];
56

6-
const escapeRegexp = require('escape-regex');
7-
8-
const keyRegex = str => {
9-
str = str.split('*').map(s => escapeRegexp(s)).join('*');
10-
return new RegExp('^' + str.replace('*', '.*'));
11-
};
12-
137
const observable = new Observable(observer => {
148
handlers.push(data => observer.next(data));
159
let index = handlers.length;
@@ -20,13 +14,7 @@ const observable = new Observable(observer => {
2014

2115
function get(key, options) {
2216
const value = data[key] || { views: [] };
23-
return Promise.resolve({
24-
views: value.views.filter(view => {
25-
if (options && options.before && view.time > options.before) return false;
26-
if (options && options.after && view.time < options.after) return false;
27-
return true;
28-
}),
29-
});
17+
return Promise.resolve({ views: filterViews(value.views, options) });
3018
}
3119

3220
function keys() {
@@ -44,12 +32,7 @@ function put(key, value) {
4432

4533
async function getAll(options) {
4634
const value = {};
47-
const _keys = (await keys()).filter(
48-
key =>
49-
options.ignoreWildcard
50-
? key.startsWith(options.pathname)
51-
: key.match(keyRegex(options.pathname))
52-
);
35+
const _keys = filterPaths(await keys(), options);
5336

5437
for (let key of _keys) {
5538
value[key] = await get(key, {

0 commit comments

Comments
 (0)