@based/client 0.7.1 → 0.9.1

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.
@@ -0,0 +1,6 @@
1
+ import { Based } from '..';
2
+ import { FileUploadOptions } from '../types';
3
+ declare const _default: (client: Based, url: string, options: FileUploadOptions) => {
4
+ id: string;
5
+ };
6
+ export default _default;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = (client, url, options) => {
4
+ fetch(url + '/file', {
5
+ method: 'POST',
6
+ cache: 'no-cache',
7
+ headers: {
8
+ 'Content-Type': options.mimeType || 'text/plain',
9
+ 'File-Id': options.id,
10
+ 'File-Is-Raw': options.raw ? '1' : '0',
11
+ 'File-Name': options.name || '',
12
+ 'Function-Name': options.functionName || '',
13
+ Authorization: client.getToken(),
14
+ },
15
+ body: options.contents,
16
+ })
17
+ .then((v) => { })
18
+ .catch((err) => {
19
+ console.error('Error while uploading file', err);
20
+ });
21
+ return { id: options.id };
22
+ };
23
+ //# sourceMappingURL=fetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../src/file/fetch.ts"],"names":[],"mappings":";;AAGA,kBAAe,CACb,MAAa,EACb,GAAW,EACX,OAA0B,EACV,EAAE;IAClB,KAAK,CAAC,GAAG,GAAG,OAAO,EAAE;QACnB,MAAM,EAAE,MAAM;QACd,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE;YACP,cAAc,EAAE,OAAO,CAAC,QAAQ,IAAI,YAAY;YAChD,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;YACtC,WAAW,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE;YAC/B,eAAe,EAAE,OAAO,CAAC,YAAY,IAAI,EAAE;YAC3C,aAAa,EAAE,MAAM,CAAC,QAAQ,EAAE;SACjC;QACD,IAAI,EAAE,OAAO,CAAC,QAAQ;KACvB,CAAC;SACC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,GAAE,CAAC,CAAC;SACf,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACb,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAA;IAClD,CAAC,CAAC,CAAA;IACJ,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAA;AAC3B,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { Based } from '..';
2
+ import { FileUploadOptions, FileUploadStream, FileUploadPath } from '../types';
3
+ declare const getUrl: (client: Based, options: FileUploadOptions | FileUploadStream | FileUploadPath) => Promise<string>;
4
+ export default getUrl;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const get_service_1 = __importDefault(require("@based/get-service"));
7
+ const memoize = {};
8
+ const inProgress = {};
9
+ const getUrl = async (client, options) => {
10
+ if (options.url) {
11
+ return typeof options.url === 'string' ? options.url : await options.url();
12
+ }
13
+ if (!client.opts.env && client.opts.url) {
14
+ return typeof client.opts.url === 'string'
15
+ ? client.opts.url
16
+ : await client.opts.url();
17
+ }
18
+ const { env, project, org } = client.opts;
19
+ const id = env + '/' + project + '/' + org + '/' + client.opts.cluster;
20
+ if (memoize[id]) {
21
+ return memoize[id];
22
+ }
23
+ if (inProgress[id]) {
24
+ const r = await inProgress[id];
25
+ return r.url;
26
+ }
27
+ const r = await (inProgress[id] = (0, get_service_1.default)({
28
+ env,
29
+ project,
30
+ org,
31
+ name: '@based/hub',
32
+ key: 'file-upload',
33
+ optionalKey: true,
34
+ }, 0, client.opts.cluster));
35
+ delete inProgress[id];
36
+ setTimeout(() => {
37
+ delete memoize[id];
38
+ }, 2e3);
39
+ return (memoize[id] = r.url);
40
+ };
41
+ exports.default = getUrl;
42
+ //# sourceMappingURL=getUrl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getUrl.js","sourceRoot":"","sources":["../../src/file/getUrl.ts"],"names":[],"mappings":";;;;;AAEA,qEAA2C;AAE3C,MAAM,OAAO,GAAG,EAAE,CAAA;AAClB,MAAM,UAAU,GAAG,EAAE,CAAA;AAErB,MAAM,MAAM,GAAG,KAAK,EAClB,MAAa,EACb,OAA8D,EAC7C,EAAE;IACnB,IAAI,OAAO,CAAC,GAAG,EAAE;QACf,OAAO,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,EAAE,CAAA;KAC3E;IAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;QACvC,OAAO,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,QAAQ;YACxC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG;YACjB,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;KAC5B;IAED,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,IAAI,CAAA;IAEzC,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,OAAO,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAA;IAEtE,IAAI,OAAO,CAAC,EAAE,CAAC,EAAE;QACf,OAAO,OAAO,CAAC,EAAE,CAAC,CAAA;KACnB;IAED,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE;QAClB,MAAM,CAAC,GAAG,MAAM,UAAU,CAAC,EAAE,CAAC,CAAA;QAC9B,OAAO,CAAC,CAAC,GAAG,CAAA;KACb;IAED,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,IAAA,qBAAU,EAC1C;QACE,GAAG;QACH,OAAO;QACP,GAAG;QACH,IAAI,EAAE,YAAY;QAClB,GAAG,EAAE,aAAa;QAClB,WAAW,EAAE,IAAI;KAClB,EACD,CAAC,EACD,MAAM,CAAC,IAAI,CAAC,OAAO,CACpB,CAAC,CAAA;IAEF,OAAO,UAAU,CAAC,EAAE,CAAC,CAAA;IAErB,UAAU,CAAC,GAAG,EAAE;QACd,OAAO,OAAO,CAAC,EAAE,CAAC,CAAA;IACpB,CAAC,EAAE,GAAG,CAAC,CAAA;IAEP,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;AAC9B,CAAC,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { Based, FileUploadPath, FileUploadStream } from '..';
2
+ import { FileUploadOptions, FileUploadSrc } from '../types';
3
+ declare const _default: (client: Based, options: FileUploadOptions | FileUploadSrc | FileUploadStream | FileUploadPath) => Promise<{
4
+ id: string;
5
+ }>;
6
+ export default _default;
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const uploadFileBrowser_1 = __importDefault(require("./uploadFileBrowser"));
7
+ const getUrl_1 = __importDefault(require("./getUrl"));
8
+ const fetch_1 = __importDefault(require("./fetch"));
9
+ const stream_1 = require("./stream");
10
+ const isBrowser = typeof window !== 'undefined';
11
+ const isFileUploadSrc = (options) => {
12
+ return 'src' in options && typeof options.src === 'string';
13
+ };
14
+ const isFileUploadPath = (options) => {
15
+ return 'path' in options && typeof options.path === 'string';
16
+ };
17
+ const isFileUploadStream = (options) => {
18
+ return 'contents' in options && (0, stream_1.isStream)(options.contents);
19
+ };
20
+ exports.default = async (client, options) => {
21
+ if (isFileUploadSrc(options)) {
22
+ const payload = options.id ? { $id: options.id } : { type: 'file' };
23
+ if (options.src) {
24
+ payload.src = options.src;
25
+ payload.origin = options.src;
26
+ if (options.size) {
27
+ payload.size = options.size;
28
+ }
29
+ if (options.name) {
30
+ payload.name = options.name;
31
+ }
32
+ return await client.set(payload);
33
+ }
34
+ return;
35
+ }
36
+ let id = options.id;
37
+ if (!id) {
38
+ const payload = { type: 'file', progress: 0 };
39
+ if (options.name) {
40
+ payload.name = options.name;
41
+ }
42
+ else if (global.File &&
43
+ 'contents' in options &&
44
+ options.contents instanceof global.File) {
45
+ payload.name = options.contents.name;
46
+ }
47
+ const r = await client.set(payload);
48
+ id = r.id;
49
+ }
50
+ options.id = id;
51
+ const url = (await (0, getUrl_1.default)(client, options)).replace(/^ws/, 'http');
52
+ if (isFileUploadPath(options)) {
53
+ (0, stream_1.uploadFilePath)(client, url, options);
54
+ return { id };
55
+ }
56
+ if (isFileUploadStream(options)) {
57
+ (0, stream_1.uploadFileStream)(client, url, options);
58
+ return { id };
59
+ }
60
+ if (options.contents instanceof ArrayBuffer) {
61
+ options.contents = isBrowser
62
+ ? new global.Blob([options.contents], {
63
+ type: options.mimeType || 'text/plain',
64
+ })
65
+ : global.Buffer.from(options.contents);
66
+ return (0, fetch_1.default)(client, url + '/file', options);
67
+ }
68
+ if (isBrowser && options.contents instanceof global.Blob) {
69
+ if (!options.mimeType) {
70
+ options.mimeType = options.contents.type;
71
+ }
72
+ return (0, fetch_1.default)(client, url + '/file', options);
73
+ }
74
+ if (typeof options.contents === 'string' ||
75
+ (!isBrowser && options.contents instanceof global.Buffer)) {
76
+ return (0, fetch_1.default)(client, url + '/file', options);
77
+ }
78
+ // this is abit more strange
79
+ if (isBrowser && options.contents instanceof File) {
80
+ (0, uploadFileBrowser_1.default)(client, options.contents, url, options.id, options.raw || false, options.name, options.functionName);
81
+ return { id };
82
+ }
83
+ // remove the file you created here...
84
+ if (!options.id) {
85
+ await client.delete({ $id: id });
86
+ }
87
+ throw new Error(`Invalid contents for file api ${JSON.stringify(options, null, 2)}`);
88
+ };
89
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/file/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { FileUploadStream, FileUploadPath } from '../../types';
2
+ import type { Readable } from 'stream';
3
+ import { Based } from '../..';
4
+ export declare const isStream: (contents: any) => contents is Readable;
5
+ export declare const uploadFileStream: (client: Based, url: string, options: FileUploadStream) => void;
6
+ export declare const uploadFilePath: (client: Based, url: string, options: FileUploadPath) => void;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.uploadFilePath = exports.uploadFileStream = exports.isStream = void 0;
4
+ const isStream = (contents) => {
5
+ return typeof contents === 'object' && contents.read;
6
+ };
7
+ exports.isStream = isStream;
8
+ const uploadFileStream = (client, url, options) => {
9
+ console.info('streams not supported in the browser');
10
+ };
11
+ exports.uploadFileStream = uploadFileStream;
12
+ const uploadFilePath = (client, url, options) => {
13
+ // can support urls
14
+ console.info('paths not yet implemented in browser');
15
+ };
16
+ exports.uploadFilePath = uploadFilePath;
17
+ //# sourceMappingURL=browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/file/stream/browser.ts"],"names":[],"mappings":";;;AAIO,MAAM,QAAQ,GAAG,CAAC,QAAa,EAAwB,EAAE;IAC9D,OAAO,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAA;AACtD,CAAC,CAAA;AAFY,QAAA,QAAQ,YAEpB;AAEM,MAAM,gBAAgB,GAAG,CAC9B,MAAa,EACb,GAAW,EACX,OAAyB,EACzB,EAAE;IACF,OAAO,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAA;AACtD,CAAC,CAAA;AANY,QAAA,gBAAgB,oBAM5B;AAEM,MAAM,cAAc,GAAG,CAC5B,MAAa,EACb,GAAW,EACX,OAAuB,EACvB,EAAE;IACF,mBAAmB;IACnB,OAAO,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAA;AACtD,CAAC,CAAA;AAPY,QAAA,cAAc,kBAO1B"}
@@ -0,0 +1,6 @@
1
+ import { FileUploadStream } from '../../types';
2
+ import { Readable } from 'stream';
3
+ import { Based, FileUploadPath } from '../..';
4
+ export declare const isStream: (contents: any) => contents is Readable;
5
+ export declare const uploadFilePath: (client: Based, url: string, options: FileUploadPath) => Promise<void>;
6
+ export declare const uploadFileStream: (client: Based, url: string, options: FileUploadStream) => void;
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.uploadFileStream = exports.uploadFilePath = exports.isStream = void 0;
7
+ const stream_1 = require("stream");
8
+ const http_1 = require("http");
9
+ const https_1 = require("https");
10
+ const fs_1 = __importDefault(require("fs"));
11
+ const util_1 = require("util");
12
+ const stat = (0, util_1.promisify)(fs_1.default.stat);
13
+ const checkFile = async (path) => {
14
+ try {
15
+ const s = await stat(path);
16
+ return {
17
+ size: s.size,
18
+ };
19
+ }
20
+ catch (err) { }
21
+ };
22
+ const isStream = (contents) => {
23
+ return contents instanceof stream_1.Readable;
24
+ };
25
+ exports.isStream = isStream;
26
+ const parsUrlRe = /^(?:(tcp|wss?|https?):\/\/)?([a-z0-9.-]*)(?::(\d+))?$/;
27
+ const uploadFilePath = async (client, url, options) => {
28
+ const info = await checkFile(options.path);
29
+ if (info) {
30
+ return (0, exports.uploadFileStream)(client, url, {
31
+ contents: fs_1.default.createReadStream(options.path),
32
+ mimeType: options.mimeType,
33
+ extension: !options.mimeType
34
+ ? options.path.match(/\.(.*?)$/)?.[1]
35
+ : undefined,
36
+ size: info.size,
37
+ id: options.id,
38
+ functionName: options.functionName,
39
+ raw: options.raw,
40
+ });
41
+ }
42
+ else {
43
+ throw new Error(`File does not exist ${options.path}`);
44
+ }
45
+ };
46
+ exports.uploadFilePath = uploadFilePath;
47
+ const uploadFileStream = (client, url, options) => {
48
+ if (!(options.contents instanceof stream_1.Readable)) {
49
+ throw new Error('File Contents has to be an instance of "Readable"');
50
+ }
51
+ const [, protocol, host, port] = parsUrlRe.exec(url);
52
+ const headers = {
53
+ 'Content-Length': options.size,
54
+ 'Req-Type': 'blob',
55
+ 'File-Is-Raw': options.raw ? '1' : '0',
56
+ 'File-Id': options.id,
57
+ 'File-Name': options.name || '',
58
+ 'Function-Name': options.functionName || '',
59
+ Authorization: client.getToken() || '',
60
+ };
61
+ if (options.mimeType) {
62
+ headers['Content-Type'] = options.mimeType;
63
+ }
64
+ else if (options.extension) {
65
+ headers['File-Extension'] = options.extension;
66
+ }
67
+ else {
68
+ headers['Content-Type'] = 'text/plain';
69
+ }
70
+ const httpOptions = {
71
+ port,
72
+ host: host,
73
+ path: '/file',
74
+ method: 'POST',
75
+ headers,
76
+ };
77
+ const onReady = () => {
78
+ console.info('file uploaded');
79
+ };
80
+ const req = protocol === 'wss' || protocol === 'https'
81
+ ? (0, https_1.request)(httpOptions, onReady)
82
+ : (0, http_1.request)(httpOptions, onReady);
83
+ options.contents.pipe(req);
84
+ };
85
+ exports.uploadFileStream = uploadFileStream;
86
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/file/stream/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Based } from '..';
2
+ declare const _default: (client: Based, file: File, url: string, id: string, raw: boolean, name?: string, functionName?: string) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const inProgress = {};
4
+ const queue = {};
5
+ const drainQueue = (url, authorization) => {
6
+ if (!inProgress[url]) {
7
+ inProgress[url] = true;
8
+ setTimeout(() => {
9
+ console.info('Drain file q');
10
+ inProgress[url] = false;
11
+ const q = queue[url];
12
+ queue[url] = [];
13
+ const body = new global.FormData();
14
+ for (const f of q) {
15
+ const { raw, name, id, file, functionName } = f;
16
+ const meta = `${functionName || ''}|${raw ? 1 : 0}|${id}|${file.size}${name ? `|${name}` : ''}`;
17
+ body.append(meta, file);
18
+ }
19
+ try {
20
+ const xhr = new global.XMLHttpRequest();
21
+ xhr.upload.onprogress = (p) => {
22
+ const progress =
23
+ // @ts-ignore
24
+ (100 * (p.loaded || p.position)) / (p.totalSize || p.total);
25
+ console.info(progress, 'upload...');
26
+ };
27
+ xhr.onerror = (p) => {
28
+ console.error('error!', p, 'flap', xhr.responseText);
29
+ };
30
+ xhr.timeout = 1e3 * 60 * 60 * 24;
31
+ xhr.onabort = (p) => {
32
+ console.error('abort', p);
33
+ };
34
+ xhr.ontimeout = (p) => {
35
+ console.error('on timeout', p);
36
+ };
37
+ xhr.onload = () => {
38
+ let res = {};
39
+ try {
40
+ res = JSON.parse(xhr.response);
41
+ console.info('SUCCESS', res);
42
+ }
43
+ catch (err) {
44
+ console.error('something wrong with file upload', err);
45
+ }
46
+ };
47
+ xhr.open('POST', url + '/file');
48
+ xhr.setRequestHeader('Content-Type', 'multipart/form-data');
49
+ xhr.setRequestHeader('Authorization', authorization);
50
+ xhr.send(body);
51
+ }
52
+ catch (err) {
53
+ /* handle error */
54
+ console.error('Something wrong with xhr upload', err);
55
+ }
56
+ }, 500);
57
+ }
58
+ };
59
+ exports.default = async (client, file, url, id, raw, name, functionName) => {
60
+ if (!queue[url]) {
61
+ queue[url] = [];
62
+ }
63
+ queue[url].push({
64
+ file,
65
+ id,
66
+ url,
67
+ raw,
68
+ name,
69
+ functionName,
70
+ });
71
+ drainQueue(url, client.getToken());
72
+ };
73
+ //# sourceMappingURL=uploadFileBrowser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uploadFileBrowser.js","sourceRoot":"","sources":["../../src/file/uploadFileBrowser.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import Emitter from './Emitter';
2
- import { GenericObject, Configuration, Query, DigestOptions, SetOptions, Copy, SendTokenOptions, TrackOpts, AnalyticsTypes, AnalyticsResult, AnalyticsOpts, AnalyticsTypesOpts, AnalyticsHistoryOpts, AnalyticsHistoryResult } from './types';
2
+ import { GenericObject, Configuration, Query, DigestOptions, SetOptions, Copy, SendTokenOptions, TrackOpts, AnalyticsTypes, AnalyticsResult, AnalyticsOpts, AnalyticsTypesOpts, AnalyticsHistoryOpts, FileUploadOptions, FileUploadSrc, FileUploadPath, FileUploadStream, AnalyticsHistoryResult } from './types';
3
3
  import { addSubscriber, generateSubscriptionId, addGetSubscriber, removeSubscriber } from './subscriptions';
4
4
  import { addRequest } from './request';
5
5
  import { BasedClient } from './Client';
@@ -26,6 +26,7 @@ export declare class Based extends Emitter {
26
26
  private _url;
27
27
  opts: BasedOpts;
28
28
  disconnect(): void;
29
+ observeUntil(query: Query, condition: (data: GenericObject, checksum: number) => boolean, onData?: (data: any, checksum: number) => void): Promise<GenericObject>;
29
30
  observe(query: Query, onData: (data: any, checksum: number) => void, onErr?: (err: Error) => void): Promise<() => void>;
30
31
  observe(name: string, onData: (data: any, checksum: number) => void, onErr?: (err: Error) => void): Promise<() => void>;
31
32
  observe(name: string, payload: any, onData: (data: any, checksum: number) => void, onErr?: (err: Error) => void): Promise<() => void>;
@@ -35,6 +36,7 @@ export declare class Based extends Emitter {
35
36
  observeSchema(onData: (data: any, checksum: number) => void, onErr?: (err: Error) => void): Promise<() => void>;
36
37
  get(query: Query): Promise<GenericObject>;
37
38
  get(name: string, payload?: any): Promise<GenericObject>;
39
+ file(opts: FileUploadOptions | File | FileUploadSrc | FileUploadPath | FileUploadStream): Promise<any>;
38
40
  call(name: string, payload?: any): Promise<any>;
39
41
  id(type: string, opts?: any): Promise<string>;
40
42
  digest(payload: DigestOptions): Promise<{
package/dist/index.js CHANGED
@@ -36,10 +36,8 @@ Object.defineProperty(exports, "addGetSubscriber", { enumerable: true, get: func
36
36
  Object.defineProperty(exports, "removeSubscriber", { enumerable: true, get: function () { return subscriptions_1.removeSubscriber; } });
37
37
  const request_1 = require("./request");
38
38
  Object.defineProperty(exports, "addRequest", { enumerable: true, get: function () { return request_1.addRequest; } });
39
- const cross_fetch_1 = __importDefault(require("cross-fetch"));
40
39
  const Client_1 = require("./Client");
41
40
  Object.defineProperty(exports, "BasedClient", { enumerable: true, get: function () { return Client_1.BasedClient; } });
42
- const utils_1 = require("@saulx/utils");
43
41
  const findPrefix_1 = __importDefault(require("./findPrefix"));
44
42
  const createError_1 = __importDefault(require("./createError"));
45
43
  const hash_1 = require("@saulx/hash");
@@ -48,6 +46,8 @@ const track_1 = __importStar(require("./track"));
48
46
  Object.defineProperty(exports, "generateTrackingKey", { enumerable: true, get: function () { return track_1.genKey; } });
49
47
  const observable_1 = require("./observable");
50
48
  Object.defineProperty(exports, "Observable", { enumerable: true, get: function () { return observable_1.Observable; } });
49
+ const file_1 = __importDefault(require("./file"));
50
+ const get_service_1 = __importStar(require("@based/get-service"));
51
51
  __exportStar(require("./types"), exports);
52
52
  class Based extends Emitter_1.default {
53
53
  constructor(opts) {
@@ -86,6 +86,35 @@ class Based extends Emitter_1.default {
86
86
  }
87
87
  this.client.connected = false;
88
88
  }
89
+ observeUntil(query, condition, onData) {
90
+ return new Promise((resolve, reject) => {
91
+ let close;
92
+ let isResolved = false;
93
+ this.observe(query, (d, checksum) => {
94
+ if (onData) {
95
+ onData(d, checksum);
96
+ }
97
+ if (condition(d, checksum)) {
98
+ isResolved = true;
99
+ if (close) {
100
+ close();
101
+ }
102
+ resolve(d);
103
+ }
104
+ })
105
+ .then((c) => {
106
+ if (isResolved) {
107
+ close();
108
+ }
109
+ else {
110
+ close = c;
111
+ }
112
+ })
113
+ .catch((err) => {
114
+ reject(err);
115
+ });
116
+ });
117
+ }
89
118
  observe(a, b, c, d) {
90
119
  if (typeof a === 'string') {
91
120
  return new Promise((resolve, reject) => {
@@ -170,6 +199,13 @@ class Based extends Emitter_1.default {
170
199
  });
171
200
  }
172
201
  }
202
+ file(opts) {
203
+ if (global.File && opts instanceof File) {
204
+ opts = { contents: opts };
205
+ }
206
+ // @ts-ignore
207
+ return (0, file_1.default)(this, opts);
208
+ }
173
209
  call(name, payload) {
174
210
  return new Promise((resolve, reject) => {
175
211
  (0, request_1.addRequest)(this.client, types_1.RequestTypes.Call, payload, resolve, reject, name);
@@ -319,50 +355,18 @@ const addParamsToUrl = (url, params) => {
319
355
  return url;
320
356
  };
321
357
  const based = (opts, BasedClass = Based) => {
322
- let { env, project, org, url, key, name = '@based/hub', cluster = 'https://dg194mksjrqfz.cloudfront.net', // yes
323
- params, } = opts;
358
+ let { env, project, org, url, key, name = '@based/hub', cluster, params, } = opts;
324
359
  if (!url) {
325
- const getUrl = async () => {
326
- if (cluster.indexOf('http') === -1) {
327
- cluster = `https://${cluster}`;
328
- }
329
- try {
330
- const list = await Promise.race([
331
- (0, cross_fetch_1.default)(cluster).then((t) => t.json()),
332
- (0, utils_1.wait)(4e3),
333
- ]);
334
- if (!list) {
335
- throw new Error();
336
- }
337
- const selectUrl = list[Math.floor(Math.random() * list.length)];
338
- try {
339
- const url = key
340
- ? `${selectUrl}/${org}.${project}.${env}.${name}.${key}`
341
- : `${selectUrl}/${org}.${project}.${env}.${name}`;
342
- const realURl = await Promise.race([
343
- (0, cross_fetch_1.default)(url).then((t) => t.text()),
344
- (0, utils_1.wait)(4e3),
345
- ]);
346
- if (!realURl) {
347
- await (0, utils_1.wait)(500);
348
- return getUrl();
349
- }
350
- else {
351
- return addParamsToUrl(realURl, params);
352
- }
353
- }
354
- catch (err) {
355
- console.info(err);
356
- await (0, utils_1.wait)(500);
357
- return getUrl();
358
- }
359
- }
360
- catch (err) {
361
- await (0, utils_1.wait)(500);
362
- return getUrl();
363
- }
360
+ url = async () => {
361
+ const { url } = await (0, get_service_1.default)({
362
+ env,
363
+ project,
364
+ org,
365
+ key,
366
+ name,
367
+ }, 0, (0, get_service_1.getClusterUrl)(cluster));
368
+ return addParamsToUrl(url, params);
364
369
  };
365
- url = getUrl;
366
370
  }
367
371
  if (url) {
368
372
  const client = new BasedClass();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,8 @@ import { Query } from '../types';
3
3
  declare class Subscription {
4
4
  private subscriberId;
5
5
  private client;
6
- constructor(client: BasedClient, subscriberId: number);
6
+ private subId;
7
+ constructor(client: BasedClient, subscriberId: number, subId: number);
7
8
  unsubscribe(): void;
8
9
  closed: boolean;
9
10
  }
@@ -3,14 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Observable = void 0;
4
4
  const subscriptions_1 = require("../subscriptions");
5
5
  class Subscription {
6
- constructor(client, subscriberId) {
6
+ constructor(client, subscriberId, subId) {
7
7
  this.closed = false;
8
8
  this.client = client;
9
+ this.subId = subId;
9
10
  this.subscriberId = subscriberId;
10
11
  }
11
12
  unsubscribe() {
12
13
  this.closed = true;
13
- (0, subscriptions_1.removeSubscriber)(this.client, this.subscriberId);
14
+ (0, subscriptions_1.removeSubscriber)(this.client, this.subId, this.subscriberId);
14
15
  }
15
16
  }
16
17
  class Observable {
@@ -32,7 +33,7 @@ class Observable {
32
33
  }
33
34
  }
34
35
  }, onError, this.subId, this.name);
35
- return new Subscription(this.client, subscriberId);
36
+ return new Subscription(this.client, subscriberId, this.subId);
36
37
  }
37
38
  }
38
39
  exports.Observable = Observable;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/observable/index.ts"],"names":[],"mappings":";;;AAIA,oDAIyB;AAEzB,MAAM,YAAY;IAGhB,YAAY,MAAmB,EAAE,YAAoB;QAU9C,WAAM,GAAY,KAAK,CAAA;QAT5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;IAClC,CAAC;IAED,WAAW;QACT,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;QAClB,IAAA,gCAAgB,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;IAClD,CAAC;CAGF;AAID,MAAa,UAAU;IAarB,YAAY,MAAmB,EAAE,CAAiB,EAAE,CAAO;QACzD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,KAAK;YACR,OAAO,CAAC,KAAK,QAAQ;gBACnB,CAAC,CAAC,IAAA,sCAAsB,EAAC,CAAC,EAAE,CAAC,CAAC;gBAC9B,CAAC,CAAC,IAAA,sCAAsB,EAAC,CAAC,CAAC,CAAA;QAE/B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAE5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9C,CAAC;IAED,SAAS,CACP,MAAsB,EACtB,OAA8B,EAC9B,UAA8B;QAE9B,MAAM,CAAC,EAAE,YAAY,CAAC,GAAG,IAAA,6BAAa,EACpC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,MAAM,EACN,CAAC,GAAG,EAAE,EAAE;YACN,IAAI,GAAG,EAAE;gBACP,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBAClB,IAAI,OAAO,EAAE;oBACX,OAAO,CAAC,GAAG,CAAC,CAAA;iBACb;aACF;QACH,CAAC,EACD,OAAO,EACP,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,IAAI,CACV,CAAA;QACD,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IACpD,CAAC;CAUF;AAzDD,gCAyDC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/observable/index.ts"],"names":[],"mappings":";;;AAIA,oDAIyB;AAEzB,MAAM,YAAY;IAIhB,YAAY,MAAmB,EAAE,YAAoB,EAAE,KAAa;QAW7D,WAAM,GAAY,KAAK,CAAA;QAV5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;IAClC,CAAC;IAED,WAAW;QACT,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;QAClB,IAAA,gCAAgB,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;IAC9D,CAAC;CAGF;AAID,MAAa,UAAU;IAarB,YAAY,MAAmB,EAAE,CAAiB,EAAE,CAAO;QACzD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,KAAK;YACR,OAAO,CAAC,KAAK,QAAQ;gBACnB,CAAC,CAAC,IAAA,sCAAsB,EAAC,CAAC,EAAE,CAAC,CAAC;gBAC9B,CAAC,CAAC,IAAA,sCAAsB,EAAC,CAAC,CAAC,CAAA;QAC/B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAC5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9C,CAAC;IAED,SAAS,CACP,MAAsB,EACtB,OAA8B,EAC9B,UAA8B;QAE9B,MAAM,CAAC,EAAE,YAAY,CAAC,GAAG,IAAA,6BAAa,EACpC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,MAAM,EACN,CAAC,GAAG,EAAE,EAAE;YACN,IAAI,GAAG,EAAE;gBACP,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBAClB,IAAI,OAAO,EAAE;oBACX,OAAO,CAAC,GAAG,CAAC,CAAA;iBACb;aACF;QACH,CAAC,EACD,OAAO,EACP,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,IAAI,CACV,CAAA;QACD,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAChE,CAAC;CAUF;AAvDD,gCAuDC"}
package/dist/types.d.ts CHANGED
@@ -1,6 +1,8 @@
1
+ /// <reference types="node" />
1
2
  import type { GetOptions } from './selvaTypes/get';
2
3
  import type { SetOptions } from './selvaTypes/set';
3
4
  import type { Schema } from './selvaTypes/schema';
5
+ import { Readable } from 'stream';
4
6
  export { GetOptions, SetOptions, Schema };
5
7
  export declare type DigestOptions = string;
6
8
  export declare enum RequestTypes {
@@ -182,3 +184,40 @@ export declare type AnalyticsHistoryOpts = {
182
184
  $geo?: string[] | boolean;
183
185
  $history: boolean | number;
184
186
  };
187
+ export declare type FileUploadOptions = {
188
+ contents: Buffer | ArrayBuffer | string | File | Blob;
189
+ mimeType?: string;
190
+ name?: string;
191
+ url?: string | (() => Promise<string>);
192
+ id?: string;
193
+ raw?: boolean;
194
+ functionName?: string;
195
+ };
196
+ export declare type FileUploadStream = {
197
+ contents: Readable;
198
+ mimeType?: string;
199
+ extension?: string;
200
+ size: number;
201
+ name?: string;
202
+ url?: string | (() => Promise<string>);
203
+ id?: string;
204
+ raw?: boolean;
205
+ functionName?: string;
206
+ };
207
+ export declare type FileUploadPath = {
208
+ path: string;
209
+ mimeType?: string;
210
+ extension?: string;
211
+ name?: string;
212
+ url?: string | (() => Promise<string>);
213
+ id?: string;
214
+ raw?: boolean;
215
+ functionName?: string;
216
+ };
217
+ export declare type FileUploadSrc = {
218
+ src: string;
219
+ mimeType?: string;
220
+ name?: string;
221
+ id?: string;
222
+ size?: number;
223
+ };
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAQA,2BAA2B;AAC3B,IAAY,YA+BX;AA/BD,WAAY,YAAY;IACtB,2BAA2B;IAC3B,+DAAgB,CAAA;IAChB,2BAA2B;IAC3B,uEAAoB,CAAA;IACpB,2BAA2B;IAC3B,+EAAwB,CAAA;IACxB,2BAA2B;IAC3B,6DAAe,CAAA;IACf,2BAA2B;IAC3B,6CAAO,CAAA;IACP,2BAA2B;IAC3B,6CAAO,CAAA;IACP,2BAA2B;IAC3B,iEAAiB,CAAA;IACjB,2BAA2B;IAC3B,uEAAoB,CAAA;IACpB,2BAA2B;IAC3B,+CAAQ,CAAA;IACR,2BAA2B;IAC3B,sEAAoB,CAAA;IACpB,2BAA2B;IAC3B,oDAAW,CAAA;IACX,2BAA2B;IAC3B,gDAAS,CAAA;IACT,2BAA2B;IAC3B,oDAAW,CAAA;IACX,2BAA2B;IAC3B,kDAAU,CAAA;IACV,2BAA2B;IAC3B,kDAAU,CAAA;AACZ,CAAC,EA/BW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QA+BvB;AAuND,SAAgB,oBAAoB,CAClC,IAAwC;IAExC,OAAQ,IAA2B,CAAC,MAAM,KAAK,IAAI,CAAA;AACrD,CAAC;AAJD,oDAIC;AAED,SAAgB,sBAAsB,CACpC,IAAwC;IAExC,MAAM,UAAU,GAAI,IAA6B,CAAC,QAAQ,CAAA;IAC1D,OAAO,CAAC,CAAC,UAAU,CAAA;AACrB,CAAC;AALD,wDAKC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AASA,2BAA2B;AAC3B,IAAY,YA+BX;AA/BD,WAAY,YAAY;IACtB,2BAA2B;IAC3B,+DAAgB,CAAA;IAChB,2BAA2B;IAC3B,uEAAoB,CAAA;IACpB,2BAA2B;IAC3B,+EAAwB,CAAA;IACxB,2BAA2B;IAC3B,6DAAe,CAAA;IACf,2BAA2B;IAC3B,6CAAO,CAAA;IACP,2BAA2B;IAC3B,6CAAO,CAAA;IACP,2BAA2B;IAC3B,iEAAiB,CAAA;IACjB,2BAA2B;IAC3B,uEAAoB,CAAA;IACpB,2BAA2B;IAC3B,+CAAQ,CAAA;IACR,2BAA2B;IAC3B,sEAAoB,CAAA;IACpB,2BAA2B;IAC3B,oDAAW,CAAA;IACX,2BAA2B;IAC3B,gDAAS,CAAA;IACT,2BAA2B;IAC3B,oDAAW,CAAA;IACX,2BAA2B;IAC3B,kDAAU,CAAA;IACV,2BAA2B;IAC3B,kDAAU,CAAA;AACZ,CAAC,EA/BW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QA+BvB;AAuND,SAAgB,oBAAoB,CAClC,IAAwC;IAExC,OAAQ,IAA2B,CAAC,MAAM,KAAK,IAAI,CAAA;AACrD,CAAC;AAJD,oDAIC;AAED,SAAgB,sBAAsB,CACpC,IAAwC;IAExC,MAAM,UAAU,GAAI,IAA6B,CAAC,QAAQ,CAAA;IAC1D,OAAO,CAAC,CAAC,UAAU,CAAA;AACrB,CAAC;AALD,wDAKC"}
package/package.json CHANGED
@@ -1,7 +1,10 @@
1
1
  {
2
2
  "name": "@based/client",
3
- "version": "0.7.1",
3
+ "version": "0.9.1",
4
4
  "main": "dist/index.js",
5
+ "browser": {
6
+ "./dist/file/stream/index.js": "./dist/file/stream/browser.js"
7
+ },
5
8
  "scripts": {
6
9
  "build": "yarn tsconfig && tsc -b",
7
10
  "watch": "yarn build -w",
@@ -10,6 +13,7 @@
10
13
  },
11
14
  "sideEffects": false,
12
15
  "dependencies": {
16
+ "@based/get-service": "^0.2.1",
13
17
  "@saulx/diff": "^1.1.3",
14
18
  "@saulx/hash": "^1.1.0",
15
19
  "@saulx/utils": "^2.0.1",
@@ -33,7 +37,7 @@
33
37
  "@based/server": "*",
34
38
  "@based/tsconfig": "*",
35
39
  "@saulx/hash": "^1.1.0",
36
- "@saulx/selva": "9.1.6",
40
+ "@saulx/selva": "10.1.0",
37
41
  "@saulx/utils": "^2.0.1",
38
42
  "@types/jsonwebtoken": "^8.5.6",
39
43
  "@types/node": "^16.3.1",
package/dist/auth.d.ts DELETED
@@ -1,4 +0,0 @@
1
- import { AuthData, BasedClient } from '.';
2
- import { LoginOpts } from './types';
3
- export declare const login: (client: BasedClient, opts: LoginOpts) => Promise<string>;
4
- export declare const incomingAuthRequest: (client: BasedClient, data: AuthData) => void;
package/dist/auth.js DELETED
@@ -1,40 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.incomingAuthRequest = exports.login = void 0;
7
- const _1 = require(".");
8
- const queue_1 = require("./queue");
9
- const createError_1 = __importDefault(require("./createError"));
10
- const token_1 = __importDefault(require("./token"));
11
- let loginCbId = 0;
12
- const login = (client, opts) => {
13
- const reqId = ++loginCbId;
14
- (0, queue_1.addToQueue)(client, [_1.RequestTypes.Auth, _1.AuthRequestTypes.Login, reqId, opts]);
15
- return new Promise((resolve, reject) => {
16
- client.authCallbacks[reqId] = {
17
- resolve: (token) => {
18
- (0, token_1.default)(client, token);
19
- resolve(token);
20
- },
21
- reject,
22
- };
23
- });
24
- };
25
- exports.login = login;
26
- const incomingAuthRequest = (client, data) => {
27
- const [, reqId, payload, err] = data;
28
- const cb = client.authCallbacks[reqId];
29
- if (cb) {
30
- delete client.authCallbacks[reqId];
31
- if (err) {
32
- cb.reject((0, createError_1.default)(err));
33
- }
34
- else {
35
- cb.resolve(payload);
36
- }
37
- }
38
- };
39
- exports.incomingAuthRequest = incomingAuthRequest;
40
- //# sourceMappingURL=auth.js.map
package/dist/auth.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":";;;;;;AAAA,wBAAyE;AACzE,mCAAoC;AAEpC,gEAAuC;AACvC,oDAA+B;AAE/B,IAAI,SAAS,GAAG,CAAC,CAAA;AAEV,MAAM,KAAK,GAAG,CACnB,MAAmB,EACnB,IAAe,EACE,EAAE;IACnB,MAAM,KAAK,GAAG,EAAE,SAAS,CAAA;IACzB,IAAA,kBAAU,EAAC,MAAM,EAAE,CAAC,eAAY,CAAC,IAAI,EAAE,mBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAA;IAC5E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG;YAC5B,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACjB,IAAA,eAAS,EAAC,MAAM,EAAE,KAAK,CAAC,CAAA;gBACxB,OAAO,CAAC,KAAK,CAAC,CAAA;YAChB,CAAC;YACD,MAAM;SACP,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAfY,QAAA,KAAK,SAejB;AAEM,MAAM,mBAAmB,GAAG,CAAC,MAAmB,EAAE,IAAc,EAAE,EAAE;IACzE,MAAM,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,GAAG,IAAI,CAAA;IACpC,MAAM,EAAE,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;IACtC,IAAI,EAAE,EAAE;QACN,OAAO,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAClC,IAAI,GAAG,EAAE;YACP,EAAE,CAAC,MAAM,CAAC,IAAA,qBAAW,EAAC,GAAG,CAAC,CAAC,CAAA;SAC5B;aAAM;YACL,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;SACpB;KACF;AACH,CAAC,CAAA;AAXY,QAAA,mBAAmB,uBAW/B"}
package/dist/login.d.ts DELETED
@@ -1,4 +0,0 @@
1
- import { BasedClient } from '.';
2
- import { LoginOpts } from './types';
3
- declare const sendToken: (client: BasedClient, opts: LoginOpts) => Promise<string>;
4
- export default sendToken;
package/dist/login.js DELETED
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const sendToken = async (client, opts) => {
4
- return 'flappiue';
5
- };
6
- exports.default = sendToken;
7
- //# sourceMappingURL=login.js.map
package/dist/login.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"login.js","sourceRoot":"","sources":["../src/login.ts"],"names":[],"mappings":";;AAGA,MAAM,SAAS,GAAG,KAAK,EACrB,MAAmB,EACnB,IAAe,EACE,EAAE;IACnB,OAAO,UAAU,CAAA;AACnB,CAAC,CAAA;AAED,kBAAe,SAAS,CAAA"}