aquameta-datum
Version:
Service layer for the Aquameta database API
48 lines (40 loc) • 4.44 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.endpoint = endpoint;
exports.connection = exports.isInvalidClient = exports.isConnectionClient = exports.isEndpointClient = void 0;
const defaultConfig = {
url: 'api',
version: 'v1',
sessionCookie: 'SESSION_ID',
cacheRequestMilliseconds: 5000,
sockets: false,
rawResponse: false
};
const ENDPOINT = Symbol.for('endpoint');
const CONNECTION = Symbol.for('connection');
const isEndpointClient = client => {
return client.type === ENDPOINT;
};
exports.isEndpointClient = isEndpointClient;
const isConnectionClient = false ? client => {
return client.type === CONNECTION;
} : null;
exports.isConnectionClient = isConnectionClient;
const isInvalidClient = client => !(isEndpointClient(client) || isConnectionClient(client));
exports.isInvalidClient = isInvalidClient;
function endpoint(config) {
return createClient(ENDPOINT, config);
}
const connection = false ? function connection(config) {
return createClient(CONNECTION, config);
} : null;
exports.connection = connection;
function createClient(type, config) {
return { ...defaultConfig,
...config,
type
};
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNsaWVudC5qcyJdLCJuYW1lcyI6WyJkZWZhdWx0Q29uZmlnIiwidXJsIiwidmVyc2lvbiIsInNlc3Npb25Db29raWUiLCJjYWNoZVJlcXVlc3RNaWxsaXNlY29uZHMiLCJzb2NrZXRzIiwicmF3UmVzcG9uc2UiLCJFTkRQT0lOVCIsIlN5bWJvbCIsImZvciIsIkNPTk5FQ1RJT04iLCJpc0VuZHBvaW50Q2xpZW50IiwiY2xpZW50IiwidHlwZSIsImlzQ29ubmVjdGlvbkNsaWVudCIsImlzSW52YWxpZENsaWVudCIsImVuZHBvaW50IiwiY29uZmlnIiwiY3JlYXRlQ2xpZW50IiwiY29ubmVjdGlvbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLE1BQU1BLGFBQTRCLEdBQUc7QUFDbkNDLEVBQUFBLEdBQUcsRUFBRSxLQUQ4QjtBQUVuQ0MsRUFBQUEsT0FBTyxFQUFFLElBRjBCO0FBR25DQyxFQUFBQSxhQUFhLEVBQUUsWUFIb0I7QUFJbkNDLEVBQUFBLHdCQUF3QixFQUFFLElBSlM7QUFLbkNDLEVBQUFBLE9BQU8sRUFBRSxLQUwwQjtBQU1uQ0MsRUFBQUEsV0FBVyxFQUFFO0FBTnNCLENBQXJDO0FBU0EsTUFBTUMsUUFBUSxHQUFHQyxNQUFNLENBQUNDLEdBQVAsQ0FBVyxVQUFYLENBQWpCO0FBQ0EsTUFBTUMsVUFBVSxHQUFHRixNQUFNLENBQUNDLEdBQVAsQ0FBVyxZQUFYLENBQW5COztBQUVPLE1BQU1FLGdCQUFnQixHQUFJQyxNQUFELElBQTZCO0FBQzNELFNBQU9BLE1BQU0sQ0FBQ0MsSUFBUCxLQUFnQk4sUUFBdkI7QUFDRCxDQUZNOzs7QUFJQSxNQUFNTyxrQkFBa0IsR0FBRyxRQUFZRixNQUFELElBQTZCO0FBQ3hFLFNBQU9BLE1BQU0sQ0FBQ0MsSUFBUCxLQUFnQkgsVUFBdkI7QUFDRCxDQUZpQyxHQUU5QixJQUZHOzs7QUFJQSxNQUFNSyxlQUFlLEdBQUlILE1BQUQsSUFDN0IsRUFBRUQsZ0JBQWdCLENBQUNDLE1BQUQsQ0FBaEIsSUFBNEJFLGtCQUFrQixDQUFDRixNQUFELENBQWhELENBREs7Ozs7QUFHQSxTQUFTSSxRQUFULENBQWtCQyxNQUFsQixFQUFrRDtBQUN2RCxTQUFPQyxZQUFZLENBQUNYLFFBQUQsRUFBV1UsTUFBWCxDQUFuQjtBQUNEOztBQUVNLE1BQU1FLFVBQVUsR0FBRyxRQUFXLFNBQVNBLFVBQVQsQ0FBb0JGLE1BQXBCLEVBQW9EO0FBQ3ZGLFNBQU9DLFlBQVksQ0FBQ1IsVUFBRCxFQUFhTyxNQUFiLENBQW5CO0FBQ0QsQ0FGeUIsR0FFdEIsSUFGRzs7O0FBSVAsU0FBU0MsWUFBVCxDQUFzQkwsSUFBdEIsRUFBb0NJLE1BQXBDLEVBQW9FO0FBQ2xFLFNBQU8sRUFDTCxHQUFHakIsYUFERTtBQUVMLE9BQUdpQixNQUZFO0FBR0xKLElBQUFBO0FBSEssR0FBUDtBQUtEIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQGZsb3dcblxuaW1wb3J0IHR5cGUge0NsaWVudCwgQ2xpZW50T3B0aW9uc30gZnJvbSAnLi90eXBlcy5qcyc7XG5cbmNvbnN0IGRlZmF1bHRDb25maWc6IENsaWVudE9wdGlvbnMgPSB7XG4gIHVybDogJ2FwaScsXG4gIHZlcnNpb246ICd2MScsXG4gIHNlc3Npb25Db29raWU6ICdTRVNTSU9OX0lEJyxcbiAgY2FjaGVSZXF1ZXN0TWlsbGlzZWNvbmRzOiA1MDAwLFxuICBzb2NrZXRzOiBmYWxzZSxcbiAgcmF3UmVzcG9uc2U6IGZhbHNlLFxufTtcblxuY29uc3QgRU5EUE9JTlQgPSBTeW1ib2wuZm9yKCdlbmRwb2ludCcpO1xuY29uc3QgQ09OTkVDVElPTiA9IFN5bWJvbC5mb3IoJ2Nvbm5lY3Rpb24nKTtcblxuZXhwb3J0IGNvbnN0IGlzRW5kcG9pbnRDbGllbnQgPSAoY2xpZW50OiBDbGllbnQpOiBib29sZWFuID0+IHtcbiAgcmV0dXJuIGNsaWVudC50eXBlID09PSBFTkRQT0lOVDtcbn07XG5cbmV4cG9ydCBjb25zdCBpc0Nvbm5lY3Rpb25DbGllbnQgPSBfX05PREVfXyA/IChjbGllbnQ6IENsaWVudCk6IGJvb2xlYW4gPT4ge1xuICByZXR1cm4gY2xpZW50LnR5cGUgPT09IENPTk5FQ1RJT047XG59IDogbnVsbDtcblxuZXhwb3J0IGNvbnN0IGlzSW52YWxpZENsaWVudCA9IChjbGllbnQ6IENsaWVudCk6IGJvb2xlYW4gPT5cbiAgIShpc0VuZHBvaW50Q2xpZW50KGNsaWVudCkgfHwgaXNDb25uZWN0aW9uQ2xpZW50KGNsaWVudCkpO1xuXG5leHBvcnQgZnVuY3Rpb24gZW5kcG9pbnQoY29uZmlnPzogQ2xpZW50T3B0aW9ucyk6IENsaWVudCB7XG4gIHJldHVybiBjcmVhdGVDbGllbnQoRU5EUE9JTlQsIGNvbmZpZyk7XG59XG5cbmV4cG9ydCBjb25zdCBjb25uZWN0aW9uID0gX19OT0RFX18gPyBmdW5jdGlvbiBjb25uZWN0aW9uKGNvbmZpZz86IENsaWVudE9wdGlvbnMpOiBDbGllbnQge1xuICByZXR1cm4gY3JlYXRlQ2xpZW50KENPTk5FQ1RJT04sIGNvbmZpZyk7XG59IDogbnVsbDtcblxuZnVuY3Rpb24gY3JlYXRlQ2xpZW50KHR5cGU6IE9iamVjdCwgY29uZmlnOiA/Q2xpZW50T3B0aW9ucyk6IENsaWVudCB7XG4gIHJldHVybiB7XG4gICAgLi4uZGVmYXVsdENvbmZpZyxcbiAgICAuLi5jb25maWcsXG4gICAgdHlwZSxcbiAgfTtcbn1cbiJdfQ==