1
1
( function ( ) {
2
2
var INDEXS = { } ;
3
3
4
+ var LOCAL_STORAGE = {
5
+ EXPIRE_KEY : 'docsify.search.expires' ,
6
+ INDEX_KEY : 'docsify.search.index'
7
+ } ;
8
+
9
+ function resolveExpireKey ( namespace ) {
10
+ return namespace ? ( ( LOCAL_STORAGE . EXPIRE_KEY ) + "/" + namespace ) : LOCAL_STORAGE . EXPIRE_KEY
11
+ }
12
+ function resolveIndexKey ( namespace ) {
13
+ return namespace ? ( ( LOCAL_STORAGE . INDEX_KEY ) + "/" + namespace ) : LOCAL_STORAGE . INDEX_KEY
14
+ }
15
+
4
16
function escapeHtml ( string ) {
5
17
var entityMap = {
6
18
'&' : '&' ,
@@ -34,9 +46,9 @@ function getAllPaths(router) {
34
46
return paths
35
47
}
36
48
37
- function saveData ( maxAge ) {
38
- localStorage . setItem ( 'docsify.search.expires' , Date . now ( ) + maxAge ) ;
39
- localStorage . setItem ( 'docsify.search.index' , JSON . stringify ( INDEXS ) ) ;
49
+ function saveData ( maxAge , expireKey , indexKey ) {
50
+ localStorage . setItem ( expireKey , Date . now ( ) + maxAge ) ;
51
+ localStorage . setItem ( indexKey , JSON . stringify ( INDEXS ) ) ;
40
52
}
41
53
42
54
function genIndex ( path , content , router , depth ) {
@@ -154,9 +166,13 @@ function search(query) {
154
166
155
167
function init$1 ( config , vm ) {
156
168
var isAuto = config . paths === 'auto' ;
157
- var isExpired = localStorage . getItem ( 'docsify.search.expires' ) < Date . now ( ) ;
158
169
159
- INDEXS = JSON . parse ( localStorage . getItem ( 'docsify.search.index' ) ) ;
170
+ var expireKey = resolveExpireKey ( config . namespace ) ;
171
+ var indexKey = resolveIndexKey ( config . namespace ) ;
172
+
173
+ var isExpired = localStorage . getItem ( expireKey ) < Date . now ( ) ;
174
+
175
+ INDEXS = JSON . parse ( localStorage . getItem ( indexKey ) ) ;
160
176
161
177
if ( isExpired ) {
162
178
INDEXS = { } ;
@@ -177,7 +193,7 @@ function init$1(config, vm) {
177
193
. get ( vm . router . getFile ( path ) , false , vm . config . requestHeaders )
178
194
. then ( function ( result ) {
179
195
INDEXS [ path ] = genIndex ( path , result , vm . router , config . depth ) ;
180
- len === ++ count && saveData ( config . maxAge ) ;
196
+ len === ++ count && saveData ( config . maxAge , expireKey , indexKey ) ;
181
197
} ) ;
182
198
} ) ;
183
199
}
@@ -311,7 +327,8 @@ var CONFIG = {
311
327
paths : 'auto' ,
312
328
depth : 2 ,
313
329
maxAge : 86400000 , // 1 day
314
- hideOtherSidebarContent : false
330
+ hideOtherSidebarContent : false ,
331
+ namespace : undefined
315
332
} ;
316
333
317
334
var install = function ( hook , vm ) {
@@ -327,6 +344,7 @@ var install = function (hook, vm) {
327
344
CONFIG . noData = opts . noData || CONFIG . noData ;
328
345
CONFIG . depth = opts . depth || CONFIG . depth ;
329
346
CONFIG . hideOtherSidebarContent = opts . hideOtherSidebarContent || CONFIG . hideOtherSidebarContent ;
347
+ CONFIG . namespace = opts . namespace || CONFIG . namespace ;
330
348
}
331
349
332
350
var isAuto = CONFIG . paths === 'auto' ;
0 commit comments