11let INDEXS = { }
22
3+ const LOCAL_STORAGE = {
4+ EXPIRE_KEY : 'docsify.search.expires' ,
5+ INDEX_KEY : 'docsify.search.index'
6+ }
7+
8+ function resolveExpireKey ( namespace ) {
9+ return namespace ? `${ LOCAL_STORAGE . EXPIRE_KEY } /${ namespace } ` : LOCAL_STORAGE . EXPIRE_KEY
10+ }
11+ function resolveIndexKey ( namespace ) {
12+ return namespace ? `${ LOCAL_STORAGE . INDEX_KEY } /${ namespace } ` : LOCAL_STORAGE . INDEX_KEY
13+ }
14+
315function escapeHtml ( string ) {
416 const entityMap = {
517 '&' : '&' ,
@@ -33,9 +45,9 @@ function getAllPaths(router) {
3345 return paths
3446}
3547
36- function saveData ( maxAge ) {
37- localStorage . setItem ( 'docsify.search.expires' , Date . now ( ) + maxAge )
38- localStorage . setItem ( 'docsify.search.index' , JSON . stringify ( INDEXS ) )
48+ function saveData ( maxAge , expireKey , indexKey ) {
49+ localStorage . setItem ( expireKey , Date . now ( ) + maxAge )
50+ localStorage . setItem ( indexKey , JSON . stringify ( INDEXS ) )
3951}
4052
4153export function genIndex ( path , content = '' , router , depth ) {
@@ -149,9 +161,13 @@ export function search(query) {
149161
150162export function init ( config , vm ) {
151163 const isAuto = config . paths === 'auto'
152- const isExpired = localStorage . getItem ( 'docsify.search.expires' ) < Date . now ( )
153164
154- INDEXS = JSON . parse ( localStorage . getItem ( 'docsify.search.index' ) )
165+ const expireKey = resolveExpireKey ( config . namespace )
166+ const indexKey = resolveIndexKey ( config . namespace )
167+
168+ const isExpired = localStorage . getItem ( expireKey ) < Date . now ( )
169+
170+ INDEXS = JSON . parse ( localStorage . getItem ( indexKey ) )
155171
156172 if ( isExpired ) {
157173 INDEXS = { }
@@ -172,7 +188,7 @@ export function init(config, vm) {
172188 . get ( vm . router . getFile ( path ) , false , vm . config . requestHeaders )
173189 . then ( result => {
174190 INDEXS [ path ] = genIndex ( path , result , vm . router , config . depth )
175- len === ++ count && saveData ( config . maxAge )
191+ len === ++ count && saveData ( config . maxAge , expireKey , indexKey )
176192 } )
177193 } )
178194}
0 commit comments