11import { EJSON } from 'bson' ;
22import { AtlasUserData , FileUserData } from '@mongodb-js/compass-user-data' ;
3- import { UserDataType } from '@mongodb-js/atlas-service/provider' ;
43import { RecentQuerySchema , FavoriteQuerySchema } from './query-storage-schema' ;
54import { PipelineSchema } from './pipeline-storage-schema' ;
65import {
@@ -21,50 +20,38 @@ export type WebStorageOptions = {
2120} ;
2221
2322export function createWebRecentQueryStorage ( options : WebStorageOptions ) {
24- const userData = new AtlasUserData (
25- RecentQuerySchema ,
26- UserDataType . RECENT_QUERIES ,
27- {
28- orgId : options . orgId ,
29- projectId : options . projectId ,
30- getResourceUrl : options . getResourceUrl ,
31- authenticatedFetch : options . authenticatedFetch ,
32- serialize : ( content ) => EJSON . stringify ( content ) ,
33- deserialize : ( content : string ) => EJSON . parse ( content ) ,
34- }
35- ) ;
23+ const userData = new AtlasUserData ( RecentQuerySchema , 'recentQueries' , {
24+ orgId : options . orgId ,
25+ projectId : options . projectId ,
26+ getResourceUrl : options . getResourceUrl ,
27+ authenticatedFetch : options . authenticatedFetch ,
28+ serialize : ( content ) => EJSON . stringify ( content ) ,
29+ deserialize : ( content : string ) => EJSON . parse ( content ) ,
30+ } ) ;
3631 return new BaseCompassRecentQueryStorage ( userData ) ;
3732}
3833
3934export function createWebFavoriteQueryStorage ( options : WebStorageOptions ) {
40- const userData = new AtlasUserData (
41- FavoriteQuerySchema ,
42- UserDataType . FAVORITE_QUERIES ,
43- {
44- orgId : options . orgId ,
45- projectId : options . projectId ,
46- getResourceUrl : options . getResourceUrl ,
47- authenticatedFetch : options . authenticatedFetch ,
48- serialize : ( content ) => EJSON . stringify ( content ) ,
49- deserialize : ( content : string ) => EJSON . parse ( content ) ,
50- }
51- ) ;
35+ const userData = new AtlasUserData ( FavoriteQuerySchema , 'favoriteQueries' , {
36+ orgId : options . orgId ,
37+ projectId : options . projectId ,
38+ getResourceUrl : options . getResourceUrl ,
39+ authenticatedFetch : options . authenticatedFetch ,
40+ serialize : ( content ) => EJSON . stringify ( content ) ,
41+ deserialize : ( content : string ) => EJSON . parse ( content ) ,
42+ } ) ;
5243 return new BaseCompassFavoriteQueryStorage ( userData ) ;
5344}
5445
5546export function createWebPipelineStorage ( options : WebStorageOptions ) {
56- const userData = new AtlasUserData (
57- PipelineSchema ,
58- UserDataType . FAVORITE_AGGREGATIONS ,
59- {
60- orgId : options . orgId ,
61- projectId : options . projectId ,
62- getResourceUrl : options . getResourceUrl ,
63- authenticatedFetch : options . authenticatedFetch ,
64- serialize : ( content ) => EJSON . stringify ( content ) ,
65- deserialize : ( content : string ) => EJSON . parse ( content ) ,
66- }
67- ) ;
47+ const userData = new AtlasUserData ( PipelineSchema , 'favoriteAggregations' , {
48+ orgId : options . orgId ,
49+ projectId : options . projectId ,
50+ getResourceUrl : options . getResourceUrl ,
51+ authenticatedFetch : options . authenticatedFetch ,
52+ serialize : ( content ) => EJSON . stringify ( content ) ,
53+ deserialize : ( content : string ) => EJSON . parse ( content ) ,
54+ } ) ;
6855 return new BaseCompassPipelineStorage < typeof PipelineSchema > ( userData ) ;
6956}
7057
0 commit comments