chromadb 1.5.8 → 1.5.10

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.
@@ -58,6 +58,29 @@ export declare class BasicAuthCredentialsProvider implements ClientAuthCredentia
58
58
  constructor(_creds: string | undefined);
59
59
  getCredentials(): BasicAuthCredentials;
60
60
  }
61
+ declare class TokenAuthCredentials implements AbstractCredentials<SecretStr> {
62
+ private readonly credentials;
63
+ constructor(_creds: string);
64
+ getCredentials(): SecretStr;
65
+ }
66
+ export declare class TokenCredentialsProvider implements ClientAuthCredentialsProvider<TokenAuthCredentials> {
67
+ private readonly credentials;
68
+ constructor(_creds: string | undefined);
69
+ getCredentials(): TokenAuthCredentials;
70
+ }
71
+ export declare class TokenClientAuthProvider implements ClientAuthProvider {
72
+ private readonly credentialsProvider;
73
+ private readonly providerOptions;
74
+ constructor(options: {
75
+ textCredentials: any;
76
+ credentialsProvider: ClientAuthCredentialsProvider<any> | undefined;
77
+ providerOptions?: {
78
+ headerType: TokenHeaderType;
79
+ };
80
+ });
81
+ authenticate(): ClientAuthResponse;
82
+ }
83
+ type TokenHeaderType = 'AUTHORIZATION' | 'X_CHROMA_TOKEN';
61
84
  export declare class IsomorphicFetchClientAuthProtocolAdapter implements ClientAuthProtocolAdapter<RequestInit> {
62
85
  private api;
63
86
  authProvider: ClientAuthProvider | undefined;
@@ -78,6 +101,7 @@ export type AuthOptions = {
78
101
  credentialsProvider?: ClientAuthCredentialsProvider<any> | undefined;
79
102
  configProvider?: ClientAuthConfigurationProvider<any> | undefined;
80
103
  credentials?: any | undefined;
104
+ providerOptions?: any | undefined;
81
105
  };
82
106
  export {};
83
107
  //# sourceMappingURL=auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,IAAI,UAAU,EAAC,MAAM,aAAa,CAAC;AAEjD,MAAM,WAAW,kBAAkB;IAC/B;;OAEG;IACH,YAAY,IAAI,kBAAkB,CAAC;CACtC;AAED,MAAM,WAAW,+BAA+B,CAAC,CAAC;IAC9C;;OAEG;IACH,SAAS,IAAI,CAAC,CAAC;CAClB;AAED,MAAM,WAAW,6BAA6B,CAAC,CAAC;IAC5C;;;OAGG;IACH,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;CACpC;AAED,aAAK,YAAY;IACb,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,GAAG,QAAQ;IACX,QAAQ,aAAa;CAExB;AAED,MAAM,WAAW,kBAAkB;IAC/B,eAAe,IAAI,YAAY,CAAC;IAEhC,WAAW,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACjD;AAGD,MAAM,WAAW,mBAAmB,CAAC,CAAC;IAClC,cAAc,IAAI,CAAC,CAAC;CACvB;AAED,MAAM,WAAW,yBAAyB,CAAC,CAAC;IACxC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,CAAC;IAE1C,MAAM,IAAI,GAAG,CAAC;CACjB;AAGD,cAAM,SAAS;IACC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM;IAG3C,SAAS,IAAI,MAAM;CAGtB;AAMD,cAAM,oBAAqB,YAAW,mBAAmB,CAAC,SAAS,CAAC;IAChE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAY;gBAE5B,MAAM,EAAE,MAAM;IAI1B,cAAc,IAAI,SAAS;CAI9B;AAgBD,qBAAa,4BAA6B,YAAW,6BAA6B,CAAC,oBAAoB,CAAC;IACpG,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAuB;IAEnD;;;;OAIG;gBAES,MAAM,EAAE,MAAM,GAAG,SAAS;IAKtC,cAAc,IAAI,oBAAoB;CAGzC;AAyBD,qBAAa,wCAAyC,YAAW,yBAAyB,CAAC,WAAW,CAAC;IAUvF,OAAO,CAAC,GAAG;IATvB,YAAY,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAC7C,UAAU,EAAE,UAAU,GAAG,SAAS,CAAC;IAEnC;;;;OAIG;gBAEiB,GAAG,EAAE,UAAU,EAAE,iBAAiB,EAAE,WAAW;IAenE,MAAM,IAAI,UAAU;IAIpB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,EAAE;IAejC,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG;IA8B1B,iBAAiB,CAAC,gBAAgB,EAAE,WAAW,GAAG,WAAW;CAahE;AAGD,MAAM,MAAM,WAAW,GAAG;IACtB,QAAQ,EAAE,kBAAkB,GAAG,MAAM,GAAG,SAAS,CAAC;IAClD,mBAAmB,CAAC,EAAE,6BAA6B,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IACrE,cAAc,CAAC,EAAE,+BAA+B,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAClE,WAAW,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC;CACjC,CAAA"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":"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"}
package/dist/main/auth.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IsomorphicFetchClientAuthProtocolAdapter = exports.BasicAuthCredentialsProvider = void 0;
3
+ exports.IsomorphicFetchClientAuthProtocolAdapter = exports.TokenClientAuthProvider = exports.TokenCredentialsProvider = exports.BasicAuthCredentialsProvider = void 0;
4
4
  var AuthInfoType;
5
5
  (function (AuthInfoType) {
6
6
  AuthInfoType["COOKIE"] = "cookie";
@@ -73,6 +73,67 @@ class BasicAuthClientAuthProvider {
73
73
  return new BasicAuthClientAuthResponse(this.credentialsProvider.getCredentials());
74
74
  }
75
75
  }
76
+ class TokenAuthCredentials {
77
+ constructor(_creds) {
78
+ this.credentials = new SecretStr(_creds);
79
+ }
80
+ getCredentials() {
81
+ return this.credentials;
82
+ }
83
+ }
84
+ class TokenCredentialsProvider {
85
+ constructor(_creds) {
86
+ if (_creds === undefined && !process.env.CHROMA_CLIENT_AUTH_CREDENTIALS)
87
+ throw new Error("Credentials must be supplied via environment variable (CHROMA_CLIENT_AUTH_CREDENTIALS) or passed in as configuration.");
88
+ this.credentials = new TokenAuthCredentials((_creds !== null && _creds !== void 0 ? _creds : process.env.CHROMA_CLIENT_AUTH_CREDENTIALS));
89
+ }
90
+ getCredentials() {
91
+ return this.credentials;
92
+ }
93
+ }
94
+ exports.TokenCredentialsProvider = TokenCredentialsProvider;
95
+ class TokenClientAuthProvider {
96
+ constructor(options) {
97
+ if (!options.credentialsProvider && !options.textCredentials) {
98
+ throw new Error("Either credentials provider or text credentials must be supplied.");
99
+ }
100
+ if (options.providerOptions === undefined || !options.providerOptions.hasOwnProperty("headerType")) {
101
+ this.providerOptions = { headerType: "AUTHORIZATION" };
102
+ }
103
+ else {
104
+ this.providerOptions = { headerType: options.providerOptions.headerType };
105
+ }
106
+ this.credentialsProvider = options.credentialsProvider || new TokenCredentialsProvider(options.textCredentials);
107
+ }
108
+ authenticate() {
109
+ return new TokenClientAuthResponse(this.credentialsProvider.getCredentials(), this.providerOptions.headerType);
110
+ }
111
+ }
112
+ exports.TokenClientAuthProvider = TokenClientAuthProvider;
113
+ const TokenHeader = {
114
+ AUTHORIZATION: (value) => ({ key: "Authorization", value: `Bearer ${value}` }),
115
+ X_CHROMA_TOKEN: (value) => ({ key: "X-Chroma-Token", value: value })
116
+ };
117
+ class TokenClientAuthResponse {
118
+ constructor(credentials, headerType = 'AUTHORIZATION') {
119
+ this.credentials = credentials;
120
+ this.headerType = headerType;
121
+ }
122
+ getAuthInfo() {
123
+ if (this.headerType === 'AUTHORIZATION') {
124
+ return TokenHeader.AUTHORIZATION(this.credentials.getCredentials().getSecret());
125
+ }
126
+ else if (this.headerType === 'X_CHROMA_TOKEN') {
127
+ return TokenHeader.X_CHROMA_TOKEN(this.credentials.getCredentials().getSecret());
128
+ }
129
+ else {
130
+ throw new Error("Invalid header type: " + this.headerType + ". Valid types are: " + Object.keys(TokenHeader).join(", "));
131
+ }
132
+ }
133
+ getAuthInfoType() {
134
+ return AuthInfoType.HEADER;
135
+ }
136
+ }
76
137
  class IsomorphicFetchClientAuthProtocolAdapter {
77
138
  /**
78
139
  * Creates a new adapter of IsomorphicFetchClientAuthProtocolAdapter.
@@ -83,7 +144,17 @@ class IsomorphicFetchClientAuthProtocolAdapter {
83
144
  this.api = api;
84
145
  switch (authConfiguration.provider) {
85
146
  case "basic":
86
- this.authProvider = new BasicAuthClientAuthProvider({ textCredentials: authConfiguration.credentials, credentialsProvider: authConfiguration.credentialsProvider });
147
+ this.authProvider = new BasicAuthClientAuthProvider({
148
+ textCredentials: authConfiguration.credentials,
149
+ credentialsProvider: authConfiguration.credentialsProvider
150
+ });
151
+ break;
152
+ case "token":
153
+ this.authProvider = new TokenClientAuthProvider({
154
+ textCredentials: authConfiguration.credentials,
155
+ credentialsProvider: authConfiguration.credentialsProvider,
156
+ providerOptions: authConfiguration.providerOptions
157
+ });
87
158
  break;
88
159
  default:
89
160
  this.authProvider = undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":"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"}
@@ -58,6 +58,29 @@ export declare class BasicAuthCredentialsProvider implements ClientAuthCredentia
58
58
  constructor(_creds: string | undefined);
59
59
  getCredentials(): BasicAuthCredentials;
60
60
  }
61
+ declare class TokenAuthCredentials implements AbstractCredentials<SecretStr> {
62
+ private readonly credentials;
63
+ constructor(_creds: string);
64
+ getCredentials(): SecretStr;
65
+ }
66
+ export declare class TokenCredentialsProvider implements ClientAuthCredentialsProvider<TokenAuthCredentials> {
67
+ private readonly credentials;
68
+ constructor(_creds: string | undefined);
69
+ getCredentials(): TokenAuthCredentials;
70
+ }
71
+ export declare class TokenClientAuthProvider implements ClientAuthProvider {
72
+ private readonly credentialsProvider;
73
+ private readonly providerOptions;
74
+ constructor(options: {
75
+ textCredentials: any;
76
+ credentialsProvider: ClientAuthCredentialsProvider<any> | undefined;
77
+ providerOptions?: {
78
+ headerType: TokenHeaderType;
79
+ };
80
+ });
81
+ authenticate(): ClientAuthResponse;
82
+ }
83
+ type TokenHeaderType = 'AUTHORIZATION' | 'X_CHROMA_TOKEN';
61
84
  export declare class IsomorphicFetchClientAuthProtocolAdapter implements ClientAuthProtocolAdapter<RequestInit> {
62
85
  private api;
63
86
  authProvider: ClientAuthProvider | undefined;
@@ -78,6 +101,7 @@ export type AuthOptions = {
78
101
  credentialsProvider?: ClientAuthCredentialsProvider<any> | undefined;
79
102
  configProvider?: ClientAuthConfigurationProvider<any> | undefined;
80
103
  credentials?: any | undefined;
104
+ providerOptions?: any | undefined;
81
105
  };
82
106
  export {};
83
107
  //# sourceMappingURL=auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,IAAI,UAAU,EAAC,MAAM,aAAa,CAAC;AAEjD,MAAM,WAAW,kBAAkB;IAC/B;;OAEG;IACH,YAAY,IAAI,kBAAkB,CAAC;CACtC;AAED,MAAM,WAAW,+BAA+B,CAAC,CAAC;IAC9C;;OAEG;IACH,SAAS,IAAI,CAAC,CAAC;CAClB;AAED,MAAM,WAAW,6BAA6B,CAAC,CAAC;IAC5C;;;OAGG;IACH,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;CACpC;AAED,aAAK,YAAY;IACb,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,GAAG,QAAQ;IACX,QAAQ,aAAa;CAExB;AAED,MAAM,WAAW,kBAAkB;IAC/B,eAAe,IAAI,YAAY,CAAC;IAEhC,WAAW,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACjD;AAGD,MAAM,WAAW,mBAAmB,CAAC,CAAC;IAClC,cAAc,IAAI,CAAC,CAAC;CACvB;AAED,MAAM,WAAW,yBAAyB,CAAC,CAAC;IACxC,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,CAAC;IAE1C,MAAM,IAAI,GAAG,CAAC;CACjB;AAGD,cAAM,SAAS;IACC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM;IAG3C,SAAS,IAAI,MAAM;CAGtB;AAMD,cAAM,oBAAqB,YAAW,mBAAmB,CAAC,SAAS,CAAC;IAChE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAY;gBAE5B,MAAM,EAAE,MAAM;IAI1B,cAAc,IAAI,SAAS;CAI9B;AAgBD,qBAAa,4BAA6B,YAAW,6BAA6B,CAAC,oBAAoB,CAAC;IACpG,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAuB;IAEnD;;;;OAIG;gBAES,MAAM,EAAE,MAAM,GAAG,SAAS;IAKtC,cAAc,IAAI,oBAAoB;CAGzC;AAyBD,qBAAa,wCAAyC,YAAW,yBAAyB,CAAC,WAAW,CAAC;IAUvF,OAAO,CAAC,GAAG;IATvB,YAAY,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAC7C,UAAU,EAAE,UAAU,GAAG,SAAS,CAAC;IAEnC;;;;OAIG;gBAEiB,GAAG,EAAE,UAAU,EAAE,iBAAiB,EAAE,WAAW;IAenE,MAAM,IAAI,UAAU;IAIpB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,EAAE;IAejC,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG;IA8B1B,iBAAiB,CAAC,gBAAgB,EAAE,WAAW,GAAG,WAAW;CAahE;AAGD,MAAM,MAAM,WAAW,GAAG;IACtB,QAAQ,EAAE,kBAAkB,GAAG,MAAM,GAAG,SAAS,CAAC;IAClD,mBAAmB,CAAC,EAAE,6BAA6B,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IACrE,cAAc,CAAC,EAAE,+BAA+B,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAClE,WAAW,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC;CACjC,CAAA"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":"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"}
@@ -69,6 +69,65 @@ class BasicAuthClientAuthProvider {
69
69
  return new BasicAuthClientAuthResponse(this.credentialsProvider.getCredentials());
70
70
  }
71
71
  }
72
+ class TokenAuthCredentials {
73
+ constructor(_creds) {
74
+ this.credentials = new SecretStr(_creds);
75
+ }
76
+ getCredentials() {
77
+ return this.credentials;
78
+ }
79
+ }
80
+ export class TokenCredentialsProvider {
81
+ constructor(_creds) {
82
+ if (_creds === undefined && !process.env.CHROMA_CLIENT_AUTH_CREDENTIALS)
83
+ throw new Error("Credentials must be supplied via environment variable (CHROMA_CLIENT_AUTH_CREDENTIALS) or passed in as configuration.");
84
+ this.credentials = new TokenAuthCredentials((_creds !== null && _creds !== void 0 ? _creds : process.env.CHROMA_CLIENT_AUTH_CREDENTIALS));
85
+ }
86
+ getCredentials() {
87
+ return this.credentials;
88
+ }
89
+ }
90
+ export class TokenClientAuthProvider {
91
+ constructor(options) {
92
+ if (!options.credentialsProvider && !options.textCredentials) {
93
+ throw new Error("Either credentials provider or text credentials must be supplied.");
94
+ }
95
+ if (options.providerOptions === undefined || !options.providerOptions.hasOwnProperty("headerType")) {
96
+ this.providerOptions = { headerType: "AUTHORIZATION" };
97
+ }
98
+ else {
99
+ this.providerOptions = { headerType: options.providerOptions.headerType };
100
+ }
101
+ this.credentialsProvider = options.credentialsProvider || new TokenCredentialsProvider(options.textCredentials);
102
+ }
103
+ authenticate() {
104
+ return new TokenClientAuthResponse(this.credentialsProvider.getCredentials(), this.providerOptions.headerType);
105
+ }
106
+ }
107
+ const TokenHeader = {
108
+ AUTHORIZATION: (value) => ({ key: "Authorization", value: `Bearer ${value}` }),
109
+ X_CHROMA_TOKEN: (value) => ({ key: "X-Chroma-Token", value: value })
110
+ };
111
+ class TokenClientAuthResponse {
112
+ constructor(credentials, headerType = 'AUTHORIZATION') {
113
+ this.credentials = credentials;
114
+ this.headerType = headerType;
115
+ }
116
+ getAuthInfo() {
117
+ if (this.headerType === 'AUTHORIZATION') {
118
+ return TokenHeader.AUTHORIZATION(this.credentials.getCredentials().getSecret());
119
+ }
120
+ else if (this.headerType === 'X_CHROMA_TOKEN') {
121
+ return TokenHeader.X_CHROMA_TOKEN(this.credentials.getCredentials().getSecret());
122
+ }
123
+ else {
124
+ throw new Error("Invalid header type: " + this.headerType + ". Valid types are: " + Object.keys(TokenHeader).join(", "));
125
+ }
126
+ }
127
+ getAuthInfoType() {
128
+ return AuthInfoType.HEADER;
129
+ }
130
+ }
72
131
  export class IsomorphicFetchClientAuthProtocolAdapter {
73
132
  /**
74
133
  * Creates a new adapter of IsomorphicFetchClientAuthProtocolAdapter.
@@ -79,7 +138,17 @@ export class IsomorphicFetchClientAuthProtocolAdapter {
79
138
  this.api = api;
80
139
  switch (authConfiguration.provider) {
81
140
  case "basic":
82
- this.authProvider = new BasicAuthClientAuthProvider({ textCredentials: authConfiguration.credentials, credentialsProvider: authConfiguration.credentialsProvider });
141
+ this.authProvider = new BasicAuthClientAuthProvider({
142
+ textCredentials: authConfiguration.credentials,
143
+ credentialsProvider: authConfiguration.credentialsProvider
144
+ });
145
+ break;
146
+ case "token":
147
+ this.authProvider = new TokenClientAuthProvider({
148
+ textCredentials: authConfiguration.credentials,
149
+ credentialsProvider: authConfiguration.credentialsProvider,
150
+ providerOptions: authConfiguration.providerOptions
151
+ });
83
152
  break;
84
153
  default:
85
154
  this.authProvider = undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":"AAwBA,IAAK,YAMJ;AAND,WAAK,YAAY;IACb,iCAAiB,CAAA;IACjB,iCAAiB,CAAA;IACjB,2BAAW,CAAA;IACX,qCAAqB,CAAA;AAEzB,CAAC,EANI,YAAY,KAAZ,YAAY,QAMhB;AAoBD,MAAM,SAAS;IACX,YAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAC3C,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;CACJ;AAED,MAAM,YAAY,GAAG,CAAC,GAAW,EAAU,EAAE;IACzC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF,MAAM,oBAAoB;IAGtB,YAAY,MAAc;QACtB,IAAI,CAAC,WAAW,GAAG,IAAI,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAA;IAC1D,CAAC;IAED,cAAc;QACV,eAAe;QACf,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;CACJ;AAGD,MAAM,2BAA2B;IAC7B,YAA6B,WAAiC;QAAjC,gBAAW,GAAX,WAAW,CAAsB;IAC9D,CAAC;IAED,WAAW;QACP,OAAO,EAAC,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,SAAS,EAAE,EAAC,CAAC;IACnG,CAAC;IAED,eAAe;QACX,OAAO,YAAY,CAAC,MAAM,CAAC;IAC/B,CAAC;CACJ;AAED,MAAM,OAAO,4BAA4B;IAGrC;;;;OAIG;IAEH,YAAY,MAA0B;QAClC,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B;YAAE,MAAM,IAAI,KAAK,CAAC,uHAAuH,CAAC,CAAC;QAClN,IAAI,CAAC,WAAW,GAAG,IAAI,oBAAoB,CAAC,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAW,CAAC,CAAC;IAClH,CAAC;IAED,cAAc;QACV,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;CACJ;AAED,MAAM,2BAA2B;IAG7B;;;;;;OAMG;IAEH,YAAY,OAAsG;QAC9G,IAAI,CAAC,OAAO,CAAC,mBAAmB,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAC1D,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;SACxF;QACD,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,IAAI,IAAI,4BAA4B,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IACxH,CAAC;IAED,YAAY;QACR,OAAO,IAAI,2BAA2B,CAAC,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,CAAC,CAAC;IACtF,CAAC;CACJ;AAED,MAAM,OAAO,wCAAwC;IAIjD;;;;OAIG;IAEH,YAAoB,GAAe,EAAE,iBAA8B;QAA/C,QAAG,GAAH,GAAG,CAAY;QAE/B,QAAQ,iBAAiB,CAAC,QAAQ,EAAE;YAChC,KAAK,OAAO;gBACR,IAAI,CAAC,YAAY,GAAG,IAAI,2BAA2B,CAAC,EAAC,eAAe,EAAE,iBAAiB,CAAC,WAAW,EAAE,mBAAmB,EAAE,iBAAiB,CAAC,mBAAmB,EAAC,CAAC,CAAC;gBAClK,MAAM;YACV;gBACI,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;gBAC9B,MAAM;SACb;QACD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE;YACjC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAChD;IACL,CAAC;IAED,MAAM;;QACF,OAAO,MAAA,IAAI,CAAC,UAAU,mCAAI,IAAI,CAAC,GAAG,CAAC;IACvC,CAAC;IAED,aAAa,CAAC,GAAQ;QAClB,IAAI,OAAO,GAAa,EAAE,CAAC;QAC3B,IAAI,UAAU,GAAG,GAAG,CAAC;QAErB,GAAG;YACC,MAAM,UAAU,GAAG,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC;iBACpD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,UAAU,IAAI,IAAI,KAAK,aAAa,CAAC,CAAC;YAEtF,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACrC,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;SAClD,QAAQ,UAAU,EAAE;QAErB,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,WAAW,CAAC,GAAQ;QAChB,IAAI,IAAI,GAAG,IAAI,CAAC;QAChB,MAAM,WAAW,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;aACrE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,UAAU,IAAI,IAAI,KAAK,aAAa,CAAC,CAAC;QAE/E,OAAO,IAAI,KAAK,CAAC,GAAG,EAAE;YAClB,GAAG,CAAC,MAAM,EAAE,IAAY;gBACpB,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;oBAC5B,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;wBAC3B,KAAK,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI;4BACnB,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gCAChC,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG,EAAE;oCACnD,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAkB,CAAC,CAAC;iCACrD;gCACD,OAAO,GAAG,CAAC;4BACf,CAAC,CAAC,CAAC;4BACH,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;gCACjE,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAiB,CAAC,CAAC;6BACrF;iCAAM;gCACH,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAgB,CAAC,CAAC;6BACxH;4BACD,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;wBAC3C,CAAC;qBACJ,CAAC,CAAC;iBACN;gBACD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;IAED,iBAAiB,CAAC,gBAA6B;;QAC3C,MAAM,QAAQ,GAAG,MAAA,IAAI,CAAC,YAAY,0CAAE,YAAY,GAAG,WAAW,EAAE,CAAC;QACjE,IAAI,QAAQ,EAAE;YACV,MAAM,EAAC,GAAG,EAAE,KAAK,EAAC,GAAG,QAAQ,CAAC;YAC9B,gBAAgB,mCACT,gBAAgB,KACnB,OAAO,EAAE;oBACL,CAAC,GAAG,CAAC,EAAE,KAAK;iBACf,GACJ,CAAA;SACJ;QACD,OAAO,gBAAgB,CAAC;IAC5B,CAAC;CACJ"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chromadb",
3
- "version": "1.5.8",
3
+ "version": "1.5.10",
4
4
  "description": "A JavaScript interface for chroma",
5
5
  "keywords": [],
6
6
  "author": "",
@@ -29,16 +29,26 @@
29
29
  "dist"
30
30
  ],
31
31
  "scripts": {
32
- "test": "run-s db:clean db:run test:runfull db:clean db:run-auth test:runfull-authonly db:clean",
32
+ "test": "run-s db:clean db:cleanauth db:run test:runfull db:clean db:run-auth test:runfull-authonly db:cleanauth",
33
+ "testnoauth": "run-s db:clean db:run test:runfull db:clean",
34
+ "testauth": "run-s db:cleanauth db:run-auth test:runfull-authonly db:cleanauth",
33
35
  "test:set-port": "cross-env URL=localhost:8001",
34
- "test:run": "jest --runInBand --testPathIgnorePatterns=test/auth.basic.test.ts",
35
- "test:run-auth": "jest --runInBand --testPathPattern=test/auth.basic.test.ts",
36
- "test:runfull": "PORT=8001 jest --runInBand --testPathIgnorePatterns=test/auth.basic.test.ts",
37
- "test:runfull-authonly": "PORT=8001 jest --runInBand --testPathPattern=test/auth.basic.test.ts",
36
+ "test:run": "jest --runInBand --testPathIgnorePatterns=test/auth.*.test.ts",
37
+ "test:run-auth-basic": "jest --runInBand --testPathPattern=test/auth.basic.test.ts",
38
+ "test:run-auth-token": "jest --runInBand --testPathPattern=test/auth.token.test.ts",
39
+ "test:run-auth-xtoken": "XTOKEN_TEST=true jest --runInBand --testPathPattern=test/auth.token.test.ts",
40
+ "test:runfull": "PORT=8001 jest --runInBand --testPathIgnorePatterns=test/auth.*.test.ts",
41
+ "test:runfull-authonly": "run-s db:run-auth-basic test:runfull-authonly-basic db:clean db:run-auth-token test:runfull-authonly-token db:clean db:run-auth-xtoken test:runfull-authonly-xtoken db:clean",
42
+ "test:runfull-authonly-basic": "PORT=8001 jest --runInBand --testPathPattern=test/auth.basic.test.ts",
43
+ "test:runfull-authonly-token": "PORT=8001 jest --runInBand --testPathPattern=test/auth.token.test.ts",
44
+ "test:runfull-authonly-xtoken": "PORT=8001 XTOKEN_TEST=true jest --runInBand --testPathPattern=test/auth.token.test.ts",
38
45
  "test:update": "run-s db:clean db:run && jest --runInBand --updateSnapshot && run-s db:clean",
39
46
  "db:clean": "cd ../.. && CHROMA_PORT=8001 docker-compose -f docker-compose.test.yml down --volumes",
47
+ "db:cleanauth": "cd ../.. && CHROMA_PORT=8001 docker-compose -f docker-compose.test-auth.yml down --volumes",
40
48
  "db:run": "cd ../.. && CHROMA_PORT=8001 docker-compose -f docker-compose.test.yml up --detach && sleep 5",
41
- "db:run-auth": "cd ../.. && CHROMA_PORT=8001 docker-compose -f docker-compose.test-auth.yml up --detach && sleep 5",
49
+ "db:run-auth-basic": "cd ../.. && docker run --rm --entrypoint htpasswd httpd:2 -Bbn admin admin > server.htpasswd && echo \"CHROMA_SERVER_AUTH_CREDENTIALS_FILE=/chroma/server.htpasswd\\nCHROMA_SERVER_AUTH_CREDENTIALS_PROVIDER=chromadb.auth.providers.HtpasswdFileServerAuthCredentialsProvider\\nCHROMA_SERVER_AUTH_PROVIDER=chromadb.auth.basic.BasicAuthServerProvider\\nCHROMA_PORT=8001\" > .chroma_env && docker-compose -f docker-compose.test-auth.yml --env-file ./.chroma_env up --detach && sleep 5",
50
+ "db:run-auth-token": "cd ../.. && echo \"CHROMA_SERVER_AUTH_CREDENTIALS=test-token\nCHROMA_SERVER_AUTH_CREDENTIALS_PROVIDER=chromadb.auth.token.TokenConfigServerAuthCredentialsProvider\nCHROMA_SERVER_AUTH_PROVIDER=chromadb.auth.token.TokenAuthServerProvider\\nCHROMA_PORT=8001\" > .chroma_env && docker-compose -f docker-compose.test-auth.yml --env-file ./.chroma_env up --detach && sleep 5",
51
+ "db:run-auth-xtoken": "cd ../.. && echo \"CHROMA_SERVER_AUTH_TOKEN_TRANSPORT_HEADER=X_CHROMA_TOKEN\nCHROMA_SERVER_AUTH_CREDENTIALS=test-token\nCHROMA_SERVER_AUTH_CREDENTIALS_PROVIDER=chromadb.auth.token.TokenConfigServerAuthCredentialsProvider\nCHROMA_SERVER_AUTH_PROVIDER=chromadb.auth.token.TokenAuthServerProvider\\nCHROMA_PORT=8001\" > .chroma_env && docker-compose -f docker-compose.test-auth.yml --env-file ./.chroma_env up --detach && sleep 5",
42
52
  "clean": "rimraf dist",
43
53
  "build": "run-s clean build:*",
44
54
  "build:main": "tsc -p tsconfig.json",
@@ -55,22 +65,10 @@
55
65
  "isomorphic-fetch": "^3.0.0"
56
66
  },
57
67
  "peerDependencies": {
58
- "@visheratin/web-ai": "^1.0.0",
59
- "@visheratin/web-ai-node": "^1.0.0",
60
- "@xenova/transformers": "^2.0.0",
61
- "cohere-ai": "^6.0.0",
62
- "openai": "^3.0.0 | ^4.0.0"
68
+ "cohere-ai": "^5.1.0",
69
+ "openai": "^3.0.0 || ^4.0.0"
63
70
  },
64
71
  "peerDependenciesMeta": {
65
- "@visheratin/web-ai": {
66
- "optional": true
67
- },
68
- "@visheratin/web-ai-node": {
69
- "optional": true
70
- },
71
- "@xenova/transformers": {
72
- "optional": true
73
- },
74
72
  "cohere-ai": {
75
73
  "optional": true
76
74
  },
package/src/auth.ts CHANGED
@@ -118,7 +118,10 @@ class BasicAuthClientAuthProvider implements ClientAuthProvider {
118
118
  * @throws {Error} If neither credentials provider or text credentials are supplied.
119
119
  */
120
120
 
121
- constructor(options: { textCredentials: any; credentialsProvider: ClientAuthCredentialsProvider<any> | undefined }) {
121
+ constructor(options: {
122
+ textCredentials: any;
123
+ credentialsProvider: ClientAuthCredentialsProvider<any> | undefined
124
+ }) {
122
125
  if (!options.credentialsProvider && !options.textCredentials) {
123
126
  throw new Error("Either credentials provider or text credentials must be supplied.");
124
127
  }
@@ -130,6 +133,85 @@ class BasicAuthClientAuthProvider implements ClientAuthProvider {
130
133
  }
131
134
  }
132
135
 
136
+ class TokenAuthCredentials implements AbstractCredentials<SecretStr> {
137
+ private readonly credentials: SecretStr;
138
+
139
+ constructor(_creds: string) {
140
+ this.credentials = new SecretStr(_creds)
141
+ }
142
+
143
+ getCredentials(): SecretStr {
144
+ return this.credentials;
145
+ }
146
+ }
147
+
148
+ export class TokenCredentialsProvider implements ClientAuthCredentialsProvider<TokenAuthCredentials> {
149
+ private readonly credentials: TokenAuthCredentials;
150
+
151
+ constructor(_creds: string | undefined) {
152
+ if (_creds === undefined && !process.env.CHROMA_CLIENT_AUTH_CREDENTIALS) throw new Error("Credentials must be supplied via environment variable (CHROMA_CLIENT_AUTH_CREDENTIALS) or passed in as configuration.");
153
+ this.credentials = new TokenAuthCredentials((_creds ?? process.env.CHROMA_CLIENT_AUTH_CREDENTIALS) as string);
154
+ }
155
+
156
+ getCredentials(): TokenAuthCredentials {
157
+ return this.credentials;
158
+ }
159
+ }
160
+
161
+ export class TokenClientAuthProvider implements ClientAuthProvider {
162
+ private readonly credentialsProvider: ClientAuthCredentialsProvider<any>;
163
+ private readonly providerOptions: { headerType: TokenHeaderType };
164
+
165
+ constructor(options: {
166
+ textCredentials: any;
167
+ credentialsProvider: ClientAuthCredentialsProvider<any> | undefined,
168
+ providerOptions?: { headerType: TokenHeaderType }
169
+ }) {
170
+ if (!options.credentialsProvider && !options.textCredentials) {
171
+ throw new Error("Either credentials provider or text credentials must be supplied.");
172
+ }
173
+ if (options.providerOptions === undefined || !options.providerOptions.hasOwnProperty("headerType")) {
174
+ this.providerOptions = {headerType: "AUTHORIZATION"};
175
+ } else {
176
+ this.providerOptions = {headerType: options.providerOptions.headerType};
177
+ }
178
+ this.credentialsProvider = options.credentialsProvider || new TokenCredentialsProvider(options.textCredentials);
179
+ }
180
+
181
+ authenticate(): ClientAuthResponse {
182
+ return new TokenClientAuthResponse(this.credentialsProvider.getCredentials(), this.providerOptions.headerType);
183
+ }
184
+
185
+ }
186
+
187
+
188
+ type TokenHeaderType = 'AUTHORIZATION' | 'X_CHROMA_TOKEN';
189
+
190
+ const TokenHeader: Record<TokenHeaderType, (value: string) => { key: string; value: string; }> = {
191
+ AUTHORIZATION: (value: string) => ({key: "Authorization", value: `Bearer ${value}`}),
192
+ X_CHROMA_TOKEN: (value: string) => ({key: "X-Chroma-Token", value: value})
193
+ }
194
+
195
+ class TokenClientAuthResponse implements ClientAuthResponse {
196
+ constructor(private readonly credentials: TokenAuthCredentials, private readonly headerType: TokenHeaderType = 'AUTHORIZATION') {
197
+ }
198
+
199
+ getAuthInfo(): { key: string; value: string } {
200
+ if (this.headerType === 'AUTHORIZATION') {
201
+ return TokenHeader.AUTHORIZATION(this.credentials.getCredentials().getSecret());
202
+ } else if (this.headerType === 'X_CHROMA_TOKEN') {
203
+ return TokenHeader.X_CHROMA_TOKEN(this.credentials.getCredentials().getSecret());
204
+ } else {
205
+ throw new Error("Invalid header type: " + this.headerType + ". Valid types are: " + Object.keys(TokenHeader).join(", "));
206
+ }
207
+ }
208
+
209
+ getAuthInfoType(): AuthInfoType {
210
+ return AuthInfoType.HEADER;
211
+ }
212
+ }
213
+
214
+
133
215
  export class IsomorphicFetchClientAuthProtocolAdapter implements ClientAuthProtocolAdapter<RequestInit> {
134
216
  authProvider: ClientAuthProvider | undefined;
135
217
  wrapperApi: DefaultApi | undefined;
@@ -144,7 +226,17 @@ export class IsomorphicFetchClientAuthProtocolAdapter implements ClientAuthProto
144
226
 
145
227
  switch (authConfiguration.provider) {
146
228
  case "basic":
147
- this.authProvider = new BasicAuthClientAuthProvider({textCredentials: authConfiguration.credentials, credentialsProvider: authConfiguration.credentialsProvider});
229
+ this.authProvider = new BasicAuthClientAuthProvider({
230
+ textCredentials: authConfiguration.credentials,
231
+ credentialsProvider: authConfiguration.credentialsProvider
232
+ });
233
+ break;
234
+ case "token":
235
+ this.authProvider = new TokenClientAuthProvider({
236
+ textCredentials: authConfiguration.credentials,
237
+ credentialsProvider: authConfiguration.credentialsProvider,
238
+ providerOptions: authConfiguration.providerOptions
239
+ });
148
240
  break;
149
241
  default:
150
242
  this.authProvider = undefined;
@@ -225,4 +317,5 @@ export type AuthOptions = {
225
317
  credentialsProvider?: ClientAuthCredentialsProvider<any> | undefined,
226
318
  configProvider?: ClientAuthConfigurationProvider<any> | undefined,
227
319
  credentials?: any | undefined,
320
+ providerOptions?: any | undefined
228
321
  }