From f83b51bc417c2cd3a79867e8c05a79a29cf78890 Mon Sep 17 00:00:00 2001 From: AJ ONeal Date: Thu, 1 Sep 2022 00:58:51 -0600 Subject: [PATCH] refactor: mv types.js index.js (and re-export request.js) --- bin/localize-types | 8 ++++---- index.js | 34 ++++++++++++++++++++++++++++++++++ types.js | 35 +++-------------------------------- 3 files changed, 41 insertions(+), 36 deletions(-) create mode 100644 index.js diff --git a/bin/localize-types b/bin/localize-types index 66f102e..f4e718f 100755 --- a/bin/localize-types +++ b/bin/localize-types @@ -1,14 +1,14 @@ #!/bin/sh my_typedefs="$( - grep typedef ./types.js | cut -d ' ' -f5 + grep typedef ./index.js | cut -d ' ' -f5 )" -rm -f ./local-types.js +rm -f ./types.js { echo '/**' for my_type in $my_typedefs; do - echo " * @typedef {import('./types.js').${my_type}} ${my_type}" + echo " * @typedef {import('./').${my_type}} ${my_type}" done echo ' */' -} >> ./local-types.js +} >> ./types.js diff --git a/index.js b/index.js new file mode 100644 index 0000000..b179e44 --- /dev/null +++ b/index.js @@ -0,0 +1,34 @@ +'use strict'; + +module.exports = require('./request.js'); + +/** + * @callback Request + * @param {RequestOptions} opts + * @returns {Response} + */ + +/** + * @typedef {Object} RequestOptions + * @prop {any} [opts.body] + * @prop {Object.} [opts.form] + * @prop {Headers} [opts.headers] + * @prop {String} [opts.method] + * @prop {Boolean | any} [opts.json] + * @prop {String} opts.url + */ + +/** + * @typedef {Object} Response + * @prop {any} body + * @prop {Headers} headers + * @prop {Boolean} ok + * @prop {any} [response] - TODO (browser only) + * @prop {any} [request] - TODO + * @prop {String} status + * @prop {Number} statusCode + */ + +/** + * @typedef {Object.>} Headers + */ diff --git a/types.js b/types.js index 4a75e07..586580a 100644 --- a/types.js +++ b/types.js @@ -1,34 +1,5 @@ -'use strict'; - -module.exports._typesOnly = true; - /** - * @callback Request - * @param {RequestOptions} opts - * @returns {Response} - */ - -/** - * @typedef {Object} RequestOptions - * @prop {any} [opts.body] - * @prop {Object.} [opts.form] - * @prop {Headers} [opts.headers] - * @prop {String} [opts.method] - * @prop {Boolean | any} [opts.json] - * @prop {String} opts.url - */ - -/** - * @typedef {Object} Response - * @prop {any} body - * @prop {Headers} headers - * @prop {Boolean} ok - * @prop {any} [response] - TODO (browser only) - * @prop {any} [request] - TODO - * @prop {String} status - * @prop {Number} statusCode - */ - -/** - * @typedef {Object.>} Headers + * @typedef {import('./').RequestOptions} RequestOptions + * @typedef {import('./').Response} Response + * @typedef {import('./').Headers} Headers */