locter 0.6.2 → 0.7.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.
Files changed (30) hide show
  1. package/dist/index.cjs +2 -0
  2. package/dist/index.cjs.map +1 -0
  3. package/dist/{types/index.d.ts → index.d.ts} +0 -0
  4. package/dist/index.mjs +2 -0
  5. package/dist/index.mjs.map +1 -0
  6. package/dist/{types/loader → loader}/file-type/index.d.ts +0 -0
  7. package/dist/{types/loader → loader}/file-type/json.d.ts +2 -2
  8. package/dist/{types/loader → loader}/file-type/script/async.d.ts +2 -2
  9. package/dist/{types/loader → loader}/file-type/script/index.d.ts +0 -0
  10. package/dist/{types/loader → loader}/file-type/script/sync.d.ts +2 -2
  11. package/dist/{types/loader → loader}/file-type/script/type.d.ts +0 -0
  12. package/dist/{types/loader → loader}/file-type/script/utils.d.ts +1 -1
  13. package/dist/{types/loader → loader}/index.d.ts +0 -0
  14. package/dist/{types/loader → loader}/module.d.ts +2 -2
  15. package/dist/{types/loader → loader}/utils.d.ts +0 -0
  16. package/dist/{types/locator → locator}/async.d.ts +0 -0
  17. package/dist/{types/locator → locator}/index.d.ts +0 -0
  18. package/dist/{types/locator → locator}/sync.d.ts +0 -0
  19. package/dist/{types/locator → locator}/type.d.ts +1 -1
  20. package/dist/{types/locator → locator}/utils.d.ts +0 -1
  21. package/dist/utils/error.d.ts +1 -0
  22. package/dist/{types/utils → utils}/file-name.d.ts +0 -0
  23. package/dist/{types/utils → utils}/has-property.d.ts +0 -0
  24. package/dist/{types/utils → utils}/index.d.ts +0 -0
  25. package/dist/{types/utils → utils}/object.d.ts +0 -0
  26. package/dist/{types/utils → utils}/to-array.d.ts +0 -0
  27. package/package.json +23 -11
  28. package/dist/index.cjs.js +0 -1011
  29. package/dist/index.esm.js +0 -946
  30. package/dist/types/utils/error.d.ts +0 -1
package/dist/index.cjs ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";var t=require("ebec"),r=require("node:url"),e=require("glob"),n=require("node:util"),o=require("node:path"),i=require("node:fs");function a(t,r){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable}))),e.push.apply(e,n)}return e}function c(t){for(var r=1;r<arguments.length;r++){var e=null!=arguments[r]?arguments[r]:{};r%2?a(Object(e),!0).forEach((function(r){l(t,r,e[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):a(Object(e)).forEach((function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}))}return t}function u(){u=function(){return t};var t={},r=Object.prototype,e=r.hasOwnProperty,n=Object.defineProperty||function(t,r,e){t[r]=e.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function s(t,r,e){return Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}),t[r]}try{s({},"")}catch(t){s=function(t,r,e){return t[r]=e}}function f(t,r,e,o){var i=r&&r.prototype instanceof h?r:h,a=Object.create(i.prototype),c=new j(o||[]);return n(a,"_invoke",{value:E(t,e,c)}),a}function p(t,r,e){try{return{type:"normal",arg:t.call(r,e)}}catch(t){return{type:"throw",arg:t}}}t.wrap=f;var l={};function h(){}function y(){}function d(){}var v={};s(v,i,(function(){return this}));var g=Object.getPrototypeOf,b=g&&g(g(k([])));b&&b!==r&&e.call(b,i)&&(v=b);var w=d.prototype=h.prototype=Object.create(v);function x(t){["next","throw","return"].forEach((function(r){s(t,r,(function(t){return this._invoke(r,t)}))}))}function m(t,r){function o(n,i,a,c){var u=p(t[n],t,i);if("throw"!==u.type){var s=u.arg,f=s.value;return f&&"object"==typeof f&&e.call(f,"__await")?r.resolve(f.__await).then((function(t){o("next",t,a,c)}),(function(t){o("throw",t,a,c)})):r.resolve(f).then((function(t){s.value=t,a(s)}),(function(t){return o("throw",t,a,c)}))}c(u.arg)}var i;n(this,"_invoke",{value:function(t,e){function n(){return new r((function(r,n){o(t,e,r,n)}))}return i=i?i.then(n,n):n()}})}function E(t,r,e){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return _()}for(e.method=o,e.arg=i;;){var a=e.delegate;if(a){var c=O(a,e);if(c){if(c===l)continue;return c}}if("next"===e.method)e.sent=e._sent=e.arg;else if("throw"===e.method){if("suspendedStart"===n)throw n="completed",e.arg;e.dispatchException(e.arg)}else"return"===e.method&&e.abrupt("return",e.arg);n="executing";var u=p(t,r,e);if("normal"===u.type){if(n=e.done?"completed":"suspendedYield",u.arg===l)continue;return{value:u.arg,done:e.done}}"throw"===u.type&&(n="completed",e.method="throw",e.arg=u.arg)}}}function O(t,r){var e=r.method,n=t.iterator[e];if(void 0===n)return r.delegate=null,"throw"===e&&t.iterator.return&&(r.method="return",r.arg=void 0,O(t,r),"throw"===r.method)||"return"!==e&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+e+"' method")),l;var o=p(n,t.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,l;var i=o.arg;return i?i.done?(r[t.resultName]=i.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=void 0),r.delegate=null,l):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,l)}function L(t){var r={tryLoc:t[0]};1 in t&&(r.catchLoc=t[1]),2 in t&&(r.finallyLoc=t[2],r.afterLoc=t[3]),this.tryEntries.push(r)}function S(t){var r=t.completion||{};r.type="normal",delete r.arg,t.completion=r}function j(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(L,this),this.reset(!0)}function k(t){if(t){var r=t[i];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function r(){for(;++n<t.length;)if(e.call(t,n))return r.value=t[n],r.done=!1,r;return r.value=void 0,r.done=!0,r};return o.next=o}}return{next:_}}function _(){return{value:void 0,done:!0}}return y.prototype=d,n(w,"constructor",{value:d,configurable:!0}),n(d,"constructor",{value:y,configurable:!0}),y.displayName=s(d,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var r="function"==typeof t&&t.constructor;return!!r&&(r===y||"GeneratorFunction"===(r.displayName||r.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,d):(t.__proto__=d,s(t,c,"GeneratorFunction")),t.prototype=Object.create(w),t},t.awrap=function(t){return{__await:t}},x(m.prototype),s(m.prototype,a,(function(){return this})),t.AsyncIterator=m,t.async=function(r,e,n,o,i){void 0===i&&(i=Promise);var a=new m(f(r,e,n,o),i);return t.isGeneratorFunction(e)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},x(w),s(w,c,"Generator"),s(w,i,(function(){return this})),s(w,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var r=Object(t),e=[];for(var n in r)e.push(n);return e.reverse(),function t(){for(;e.length;){var n=e.pop();if(n in r)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=k,j.prototype={constructor:j,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(S),!t)for(var r in this)"t"===r.charAt(0)&&e.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function n(e,n){return a.type="throw",a.arg=t,r.next=e,n&&(r.method="next",r.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=e.call(i,"catchLoc"),u=e.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,r){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&e.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=r&&r<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=r,i?(this.method="next",this.next=i.finallyLoc,l):this.complete(a)},complete:function(t,r){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&r&&(this.next=r),l},finish:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.finallyLoc===t)return this.complete(e.completion,e.afterLoc),S(e),l}},catch:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.tryLoc===t){var n=e.completion;if("throw"===n.type){var o=n.arg;S(e)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,e){return this.delegate={iterator:k(t),resultName:r,nextLoc:e},"next"===this.method&&(this.arg=void 0),l}},t}function s(t){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},s(t)}function f(t,r,e,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void e(t)}c.done?r(u):Promise.resolve(u).then(n,o)}function p(t){return function(){var r=this,e=arguments;return new Promise((function(n,o){var i=t.apply(r,e);function a(t){f(i,n,o,a,c,"next",t)}function c(t){f(i,n,o,a,c,"throw",t)}a(void 0)}))}}function l(t,r,e){return(r=function(t){var r=function(t,r){if("object"!=typeof t||null===t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,r||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(t)}(t,"string");return"symbol"==typeof r?r:String(r)}(r))in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}function h(t){if(t instanceof Error)throw t;if("string"==typeof t)throw new Error(t);throw new Error("Cannot determine file loading error.")}function y(t,r){return Object.prototype.hasOwnProperty.call(t,r)}function d(t,r){return y(t,r)&&"string"==typeof t[r]}function v(t){return!!t&&"object"===s(t)&&!Array.isArray(t)}function g(t){return Array.isArray(t)?t:[t]}function b(t){var r,e;return(t=t||{}).path=t.path||[],t.path=g(t.path),0===t.path.length&&t.path.push(process.cwd()),null!==(e=(r=t).ignore)&&void 0!==e||(r.ignore=[]),t}function w(t,r){r||o.isAbsolute(t)||(t=o.resolve(process.cwd(),t));var e=o.parse(t);return{path:e.dir.split("/").join(o.sep),name:e.name,extension:e.ext}}var x=n.promisify(e);function m(){return(m=p(u().mark((function t(r,e){var n,o,i,a,c,s;return u().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:e=b(e),n=Array.isArray(r)?r:[r],o=[],i=0;case 4:if(!(i<n.length)){t.next=17;break}a=0;case 6:if(!(a<e.path.length)){t.next=14;break}return t.next=9,x(n[i],{absolute:!0,cwd:e.path[a],nodir:!0,ignore:e.ignore});case 9:for(c=t.sent,s=0;s<c.length;s++)o.push(w(c[s],!0));case 11:a++,t.next=6;break;case 14:i++,t.next=4;break;case 17:return t.abrupt("return",o);case 18:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function E(){return(E=p(u().mark((function t(r,e){var n,o,i,a,c;return u().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:e=b(e),n=Array.isArray(r)?r:[r],o=0;case 3:if(!(o<n.length)){t.next=18;break}i=0;case 5:if(!(i<e.path.length)){t.next=15;break}return t.next=8,x(n[o],{absolute:!0,cwd:e.path[i],nodir:!0,ignore:e.ignore});case 8:if(a=t.sent,!(c=a.shift())){t.next=12;break}return t.abrupt("return",w(c,!0));case 12:i++,t.next=5;break;case 15:o++,t.next=3;break;case 18:return t.abrupt("return",void 0);case 19:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function O(t,r){return r?o.join(t.path,t.name)+t.extension:o.join(t.path,t.name)}function L(r,e){if(e){for(var n=Object.keys(r),o=0;o<n.length;o++)if(e(n[o],r[n[o]]))return{key:n[o],value:r[n[o]]};throw new t.BaseError("Cannot find specific module export.")}return{key:"default",value:y(r,"default")?r.default:r}}function S(t,r){return j.apply(this,arguments)}function j(){return(j=p(u().mark((function e(n,o){var i,a;return u().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i="string"==typeof n?w(n):n,a=O(i,(o=o||{}).withExtension),o.withFilePrefix&&(a=r.pathToFileURL(a).href),e.prev=4,e.next=7,import(a);case 7:return e.abrupt("return",e.sent);case 10:if(e.prev=10,e.t0=e.catch(4),!v(e.t0)||!d(e.t0,"code")){e.next=18;break}if(o.withExtension||"ERR_MODULE_NOT_FOUND"!==e.t0.code&&"MODULE_NOT_FOUND"!==e.t0.code){e.next=15;break}return e.abrupt("return",S(i,c(c({},o),{},{withExtension:!0})));case 15:if(o.withFilePrefix||"ERR_UNSUPPORTED_ESM_URL_SCHEME"!==e.t0.code&&"UNSUPPORTED_ESM_URL_SCHEME"!==e.t0.code){e.next=17;break}return e.abrupt("return",S(i,c(c({},o),{},{withFilePrefix:!0})));case 17:throw new t.BaseError({code:e.t0.code,message:d(e.t0,"message")?e.t0.message:void 0,stack:d(e.t0,"stack")?e.t0.stack:void 0});case 18:return e.abrupt("return",h(e.t0));case 19:case"end":return e.stop()}}),e,null,[[4,10]])})))).apply(this,arguments)}function k(){return(k=p(u().mark((function r(e,n){var o;return u().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,S(e);case 2:if("object"!==s(o=r.sent)||!o){r.next=5;break}return r.abrupt("return",L(o,n));case 5:throw new t.BaseError("Cannot extract specific module export");case 6:case"end":return r.stop()}}),r)})))).apply(this,arguments)}function _(r,e){var n,o=O(n="string"==typeof r?w(r):r,(e=e||{}).withExtension);try{return require(o)}catch(r){if(v(r)&&d(r,"code")){if(!e.withExtension&&("ERR_MODULE_NOT_FOUND"===r.code||"MODULE_NOT_FOUND"===r.code))return _(n,c(c({},e),{},{withExtension:!0}));throw new t.BaseError({code:r.code,message:d(r,"message")?r.message:void 0,stack:d(r,"stack")?r.stack:void 0})}return h(r)}}function P(t){return F.apply(this,arguments)}function F(){return(F=p(u().mark((function t(r){var e,n;return u().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="string"==typeof r?o.isAbsolute(r)?r:o.resolve(process.cwd(),r):O(r,!0),t.prev=1,t.next=4,i.promises.readFile(e);case 4:return n=t.sent,t.abrupt("return",JSON.parse(n.toString("utf-8")));case 8:return t.prev=8,t.t0=t.catch(1),t.abrupt("return",h(t.t0));case 11:case"end":return t.stop()}}),t,null,[[1,8]])})))).apply(this,arguments)}function N(t){var r;r="string"==typeof t?o.isAbsolute(t)?t:o.resolve(process.cwd(),t):O(t,!0);try{var e=i.readFileSync(r);return JSON.parse(e.toString("utf-8"))}catch(t){return h(t)}}function A(){return(A=p(u().mark((function t(r){var e;return u().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(".json"!==(e="string"==typeof r?w(r):r).extension){t.next=3;break}return t.abrupt("return",P(e));case 3:return t.abrupt("return",S(e));case 4:case"end":return t.stop()}}),t)})))).apply(this,arguments)}exports.buildLoaderFilePath=O,exports.buildLocatorOptions=b,exports.getExportItem=L,exports.handleFileLoadError=h,exports.hasOwnProperty=y,exports.hasStringProperty=d,exports.isObject=v,exports.loadFile=function(t){return A.apply(this,arguments)},exports.loadFileSync=function(t){var r;return".json"===(r="string"==typeof t?w(t):t).extension?N(r):_(r)},exports.loadJsonFile=P,exports.loadJsonFileSync=N,exports.loadScriptFile=S,exports.loadScriptFileExport=function(t,r){return k.apply(this,arguments)},exports.loadScriptFileExportSync=function(r,e){var n=_(r);if("object"===s(n)&&n)return L(n,e);throw new t.BaseError("Cannot extract specific module export")},exports.loadScriptFileSync=_,exports.locateFile=function(t,r){return E.apply(this,arguments)},exports.locateFileSync=function(t,r){r=b(r);for(var n=Array.isArray(t)?t:[t],o=0;o<n.length;o++)for(var i=0;i<r.path.length;i++){var a=e.sync(n[o],{absolute:!0,cwd:r.path[i],nodir:!0,ignore:r.ignore}).shift();if(a)return w(a,!0)}},exports.locateFiles=function(t,r){return m.apply(this,arguments)},exports.locateFilesSync=function(t,r){r=b(r);for(var n=Array.isArray(t)?t:[t],o=[],i=0;i<n.length;i++)for(var a=0;a<r.path.length;a++)for(var c=e.sync(n[i],{absolute:!0,cwd:r.path[a],nodir:!0,ignore:r.ignore}),u=0;u<c.length;u++)o.push(w(c[u],!0));return o},exports.pathToLocatorInfo=w,exports.removeFileNameExtension=function(t,r){if(t.includes(".")){var e=t.lastIndexOf("."),n=t.substring(e,t.length);void 0!==r&&-1===r.indexOf(n)||(t=t.substring(0,e))}return t},exports.toArray=g;
2
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sources":["../src/utils/error.ts","../src/utils/has-property.ts","../src/utils/object.ts","../src/utils/to-array.ts","../src/locator/utils.ts","../src/locator/async.ts","../src/loader/utils.ts","../src/loader/file-type/script/utils.ts","../src/loader/file-type/script/async.ts","../src/loader/file-type/script/sync.ts","../src/loader/file-type/json.ts","../src/loader/module.ts","../src/locator/sync.ts","../src/utils/file-name.ts"],"sourcesContent":["/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\n/* istanbul ignore next */\nexport function handleFileLoadError(e: unknown) : void {\n if (e instanceof Error) {\n throw e;\n }\n\n if (typeof e === 'string') {\n throw new Error(e);\n }\n\n throw new Error('Cannot determine file loading error.');\n}\n","export function hasOwnProperty<X extends Record<string, any>, Y extends PropertyKey>(obj: X, prop: Y): obj is X & Record<Y, unknown> {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nexport function hasStringProperty<X extends Record<string, any>, Y extends PropertyKey>(obj: X, prop: Y): obj is X & Record<Y, string> {\n return hasOwnProperty(obj, prop) && typeof obj[prop] === 'string';\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function isObject(item: unknown) : item is Record<string, any> {\n return (\n !!item &&\n typeof item === 'object' &&\n !Array.isArray(item)\n );\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function toArray(input: string | string[]) : string[] {\n return Array.isArray(input) ? input : [input];\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport path from 'node:path';\nimport { LocatorInfo, LocatorOptions } from './type';\nimport { toArray } from '../utils';\n\nexport function buildLocatorOptions(options?: Partial<LocatorOptions>) : LocatorOptions {\n options = options || {};\n\n options.path = options.path || [];\n options.path = toArray(options.path);\n if (options.path.length === 0) {\n options.path.push(process.cwd());\n }\n\n options.ignore ??= [];\n\n return options as LocatorOptions;\n}\n\nexport function pathToLocatorInfo(\n input: string,\n skipResolve?: boolean,\n) : LocatorInfo {\n if (!skipResolve && !path.isAbsolute(input)) {\n input = path.resolve(process.cwd(), input);\n }\n\n const info = path.parse(input);\n\n return {\n path: info.dir.split('/').join(path.sep),\n name: info.name,\n extension: info.ext,\n };\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport glob from 'glob';\nimport { promisify } from 'node:util';\nimport { LocatorInfo, LocatorOptions } from './type';\nimport { buildLocatorOptions, pathToLocatorInfo } from './utils';\n\nconst globAsync = promisify(glob);\n\nexport async function locateFiles(\n pattern: string | string[],\n options?: Partial<LocatorOptions>,\n) : Promise<LocatorInfo[]> {\n options = buildLocatorOptions(options);\n\n const patterns = Array.isArray(pattern) ?\n pattern :\n [pattern];\n\n const items : LocatorInfo[] = [];\n\n for (let i = 0; i < patterns.length; i++) {\n for (let j = 0; j < (options as LocatorOptions).path.length; j++) {\n const files = await globAsync(patterns[i] as string, {\n absolute: true,\n cwd: (options as LocatorOptions).path[j],\n nodir: true,\n ignore: options.ignore,\n });\n\n for (let k = 0; k < files.length; k++) {\n items.push(pathToLocatorInfo(files[k] as string, true));\n }\n }\n }\n\n return items;\n}\n\nexport async function locateFile(\n pattern: string | string[],\n options?: Partial<LocatorOptions>,\n) : Promise<LocatorInfo | undefined> {\n options = buildLocatorOptions(options);\n\n const patterns = Array.isArray(pattern) ?\n pattern :\n [pattern];\n\n for (let i = 0; i < patterns.length; i++) {\n for (let j = 0; j < (options as LocatorOptions).path.length; j++) {\n const files = await globAsync(patterns[i] as string, {\n absolute: true,\n cwd: (options as LocatorOptions).path[j],\n nodir: true,\n ignore: options.ignore,\n });\n\n const element = files.shift();\n if (element) {\n return pathToLocatorInfo(element, true);\n }\n }\n }\n\n return undefined;\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport path from 'node:path';\nimport { LocatorInfo } from '../locator';\n\nexport function buildLoaderFilePath(info: LocatorInfo, withExtension?: boolean) {\n if (withExtension) {\n return path.join(info.path, info.name) + info.extension;\n }\n\n return path.join(info.path, info.name);\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { BaseError } from 'ebec';\nimport { hasOwnProperty } from '../../../utils';\nimport { LoaderFilterFn, ScriptFileExportItem } from './type';\n\nexport function getExportItem(\n data: Record<string, any>,\n filterFn?: LoaderFilterFn,\n) : ScriptFileExportItem {\n if (filterFn) {\n const keys = Object.keys(data);\n for (let i = 0; i < keys.length; i++) {\n if (filterFn(keys[i] as string, data[keys[i] as string])) {\n return {\n key: keys[i] as string,\n value: data[keys[i] as string],\n };\n }\n }\n\n throw new BaseError('Cannot find specific module export.');\n }\n\n return {\n key: 'default',\n value: hasOwnProperty(data, 'default') ? data.default : data,\n };\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { BaseError } from 'ebec';\nimport { pathToFileURL } from 'node:url';\nimport { LocatorInfo, pathToLocatorInfo } from '../../../locator';\nimport {\n handleFileLoadError, hasStringProperty, isObject,\n} from '../../../utils';\nimport { buildLoaderFilePath } from '../../utils';\nimport { LoaderFilterFn, ScriptFileExportItem, ScriptFileLoadOptions } from './type';\nimport { getExportItem } from './utils';\n\nexport async function loadScriptFile(\n data: LocatorInfo | string,\n options?: ScriptFileLoadOptions,\n) : Promise<unknown> {\n let locatorInfo : LocatorInfo;\n\n if (typeof data === 'string') {\n locatorInfo = pathToLocatorInfo(data);\n } else {\n locatorInfo = data;\n }\n\n options = options || {};\n\n let filePath = buildLoaderFilePath(locatorInfo, options.withExtension);\n if (options.withFilePrefix) {\n filePath = pathToFileURL(filePath).href;\n }\n\n try {\n return await import(filePath);\n } catch (e) {\n /* istanbul ignore next */\n if (\n isObject(e) &&\n hasStringProperty(e, 'code')\n ) {\n if (\n !options.withExtension &&\n (\n e.code === 'ERR_MODULE_NOT_FOUND' ||\n e.code === 'MODULE_NOT_FOUND'\n )\n ) {\n return loadScriptFile(locatorInfo, {\n ...options,\n withExtension: true,\n });\n }\n\n if (\n !options.withFilePrefix &&\n (\n e.code === 'ERR_UNSUPPORTED_ESM_URL_SCHEME' ||\n e.code === 'UNSUPPORTED_ESM_URL_SCHEME'\n )\n ) {\n return loadScriptFile(locatorInfo, {\n ...options,\n withFilePrefix: true,\n });\n }\n\n throw new BaseError({\n code: e.code,\n message: hasStringProperty(e, 'message') ? e.message : undefined,\n stack: hasStringProperty(e, 'stack') ? e.stack : undefined,\n });\n }\n\n /* istanbul ignore next */\n return handleFileLoadError(e);\n }\n}\n\nexport async function loadScriptFileExport(\n data: LocatorInfo | string,\n filterFn?: LoaderFilterFn,\n) : Promise<ScriptFileExportItem> {\n const output = await loadScriptFile(data);\n\n if (typeof output === 'object' && !!output) {\n return getExportItem(output, filterFn);\n }\n\n throw new BaseError('Cannot extract specific module export');\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { BaseError } from 'ebec';\nimport { LoaderFilterFn, ScriptFileExportItem, ScriptFileLoadOptions } from './type';\nimport { getExportItem } from './utils';\nimport { LocatorInfo, pathToLocatorInfo } from '../../../locator';\nimport { buildLoaderFilePath } from '../../utils';\nimport {\n handleFileLoadError, hasStringProperty, isObject,\n} from '../../../utils';\n\nexport function loadScriptFileSync(\n data: LocatorInfo | string,\n options?: ScriptFileLoadOptions,\n) : unknown {\n let locatorInfo : LocatorInfo;\n\n if (typeof data === 'string') {\n locatorInfo = pathToLocatorInfo(data);\n } else {\n locatorInfo = data;\n }\n\n options = options || {};\n\n const filePath = buildLoaderFilePath(locatorInfo, options.withExtension);\n\n try {\n // eslint-disable-next-line global-require,import/no-dynamic-require\n return require(filePath);\n } catch (e) {\n /* istanbul ignore next */\n if (\n isObject(e) &&\n hasStringProperty(e, 'code')\n ) {\n if (\n !options.withExtension &&\n (\n e.code === 'ERR_MODULE_NOT_FOUND' ||\n e.code === 'MODULE_NOT_FOUND'\n )\n ) {\n return loadScriptFileSync(locatorInfo, {\n ...options,\n withExtension: true,\n });\n }\n\n throw new BaseError({\n code: e.code,\n message: hasStringProperty(e, 'message') ? e.message : undefined,\n stack: hasStringProperty(e, 'stack') ? e.stack : undefined,\n });\n }\n\n return handleFileLoadError(e);\n }\n}\n\nexport function loadScriptFileExportSync(\n data: LocatorInfo | string,\n filterFn?: LoaderFilterFn,\n) : ScriptFileExportItem {\n const output = loadScriptFileSync(data);\n\n if (typeof output === 'object' && !!output) {\n return getExportItem(output, filterFn);\n }\n\n throw new BaseError('Cannot extract specific module export');\n}\n","/*\n * Copyright (c) 2022-2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport fs from 'node:fs';\nimport path from 'node:path';\nimport { LocatorInfo } from '../../locator';\nimport { handleFileLoadError } from '../../utils';\nimport { buildLoaderFilePath } from '../utils';\n\nexport async function loadJsonFile(input: LocatorInfo | string) : Promise<unknown> {\n let filePath : string;\n\n if (typeof input === 'string') {\n filePath = path.isAbsolute(input) ? input : path.resolve(process.cwd(), input);\n } else {\n filePath = buildLoaderFilePath(input, true);\n }\n\n try {\n const file = await fs.promises.readFile(filePath);\n return JSON.parse(file.toString('utf-8'));\n } catch (e) {\n return handleFileLoadError(e);\n }\n}\n\nexport function loadJsonFileSync(input: LocatorInfo | string) : unknown {\n let filePath : string;\n\n if (typeof input === 'string') {\n filePath = path.isAbsolute(input) ? input : path.resolve(process.cwd(), input);\n } else {\n filePath = buildLoaderFilePath(input, true);\n }\n\n try {\n const file = fs.readFileSync(filePath);\n return JSON.parse(file.toString('utf-8'));\n } catch (e) {\n return handleFileLoadError(e);\n }\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { LocatorInfo, pathToLocatorInfo } from '../locator';\nimport {\n loadJsonFile,\n loadJsonFileSync,\n loadScriptFile,\n loadScriptFileSync,\n} from './file-type';\n\nexport async function loadFile(input: LocatorInfo | string) : Promise<unknown> {\n let info : LocatorInfo;\n if (typeof input === 'string') {\n info = pathToLocatorInfo(input);\n } else {\n info = input;\n }\n\n if (info.extension === '.json') {\n return loadJsonFile(info);\n }\n\n return loadScriptFile(info);\n}\n\nexport function loadFileSync(input: LocatorInfo | string) : unknown {\n let info : LocatorInfo;\n if (typeof input === 'string') {\n info = pathToLocatorInfo(input);\n } else {\n info = input;\n }\n\n if (info.extension === '.json') {\n return loadJsonFileSync(info);\n }\n\n return loadScriptFileSync(info);\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport glob from 'glob';\nimport { LocatorInfo, LocatorOptions } from './type';\nimport { buildLocatorOptions, pathToLocatorInfo } from './utils';\n\nexport function locateFilesSync(\n pattern: string | string[],\n options?: Partial<LocatorOptions>,\n) : LocatorInfo[] {\n options = buildLocatorOptions(options);\n\n const patterns = Array.isArray(pattern) ?\n pattern :\n [pattern];\n\n const items : LocatorInfo[] = [];\n\n for (let i = 0; i < patterns.length; i++) {\n for (let j = 0; j < (options as LocatorOptions).path.length; j++) {\n const files = glob.sync(patterns[i] as string, {\n absolute: true,\n cwd: (options as LocatorOptions).path[j],\n nodir: true,\n ignore: options.ignore,\n });\n\n for (let k = 0; k < files.length; k++) {\n items.push(pathToLocatorInfo(files[k] as string, true));\n }\n }\n }\n\n return items;\n}\n\nexport function locateFileSync(\n pattern: string | string[],\n options?: Partial<LocatorOptions>,\n) : LocatorInfo | undefined {\n options = buildLocatorOptions(options);\n\n const patterns = Array.isArray(pattern) ?\n pattern :\n [pattern];\n\n for (let i = 0; i < patterns.length; i++) {\n for (let j = 0; j < (options as LocatorOptions).path.length; j++) {\n const files = glob.sync(patterns[i] as string, {\n absolute: true,\n cwd: (options as LocatorOptions).path[j],\n nodir: true,\n ignore: options.ignore,\n });\n\n const element = files.shift();\n if (element) {\n return pathToLocatorInfo(element, true);\n }\n }\n }\n\n return undefined;\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function removeFileNameExtension(\n input: string,\n extensions?: string[],\n) {\n if (input.includes('.')) {\n const position = input.lastIndexOf('.');\n const extension = input.substring(\n position,\n input.length,\n );\n\n if (\n typeof extensions === 'undefined' ||\n extensions.indexOf(extension) !== -1\n ) {\n input = input.substring(0, position);\n }\n }\n\n return input;\n}\n"],"names":["handleFileLoadError","e","Error","hasOwnProperty","obj","prop","Object","prototype","call","hasStringProperty","isObject","item","_typeof","Array","isArray","toArray","input","buildLocatorOptions","options","_options","_options$ignore","path","length","push","process","cwd","ignore","pathToLocatorInfo","skipResolve","isAbsolute","resolve","info","parse","dir","split","join","sep","name","extension","ext","globAsync","promisify","glob","_locateFiles","_asyncToGenerator","_regeneratorRuntime","mark","_callee","pattern","patterns","items","i","j","files","k","wrap","_context","prev","next","absolute","nodir","sent","abrupt","stop","apply","this","arguments","_locateFile","_callee2","element","_context2","shift","undefined","buildLoaderFilePath","withExtension","getExportItem","data","filterFn","keys","key","value","BaseError","loadScriptFile","_x","_x2","_loadScriptFile","locatorInfo","filePath","withFilePrefix","pathToFileURL","href","import","t0","code","_objectSpread","message","stack","_loadScriptFileExport","output","loadScriptFileSync","require","loadJsonFile","_loadJsonFile","file","fs","promises","readFile","JSON","toString","loadJsonFileSync","readFileSync","_loadFile","_x3","_x4","sync","extensions","includes","position","lastIndexOf","substring","indexOf"],"mappings":"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"}
File without changes
package/dist/index.mjs ADDED
@@ -0,0 +1,2 @@
1
+ import{BaseError as t}from"ebec";import{pathToFileURL as r}from"node:url";import e from"glob";import{promisify as n}from"node:util";import o from"node:path";import i from"node:fs";import a from"url";import c from"path";import u from"module";const s=a.fileURLToPath(import.meta.url),f=(c.dirname(s),u.createRequire(import.meta.url));function p(t,r){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable}))),e.push.apply(e,n)}return e}function l(t){for(var r=1;r<arguments.length;r++){var e=null!=arguments[r]?arguments[r]:{};r%2?p(Object(e),!0).forEach((function(r){g(t,r,e[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):p(Object(e)).forEach((function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}))}return t}function h(){h=function(){return t};var t={},r=Object.prototype,e=r.hasOwnProperty,n=Object.defineProperty||function(t,r,e){t[r]=e.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,r,e){return Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}),t[r]}try{u({},"")}catch(t){u=function(t,r,e){return t[r]=e}}function s(t,r,e,o){var i=r&&r.prototype instanceof l?r:l,a=Object.create(i.prototype),c=new L(o||[]);return n(a,"_invoke",{value:O(t,e,c)}),a}function f(t,r,e){try{return{type:"normal",arg:t.call(r,e)}}catch(t){return{type:"throw",arg:t}}}t.wrap=s;var p={};function l(){}function y(){}function v(){}var d={};u(d,i,(function(){return this}));var g=Object.getPrototypeOf,m=g&&g(g(_([])));m&&m!==r&&e.call(m,i)&&(d=m);var w=v.prototype=l.prototype=Object.create(d);function b(t){["next","throw","return"].forEach((function(r){u(t,r,(function(t){return this._invoke(r,t)}))}))}function x(t,r){function o(n,i,a,c){var u=f(t[n],t,i);if("throw"!==u.type){var s=u.arg,p=s.value;return p&&"object"==typeof p&&e.call(p,"__await")?r.resolve(p.__await).then((function(t){o("next",t,a,c)}),(function(t){o("throw",t,a,c)})):r.resolve(p).then((function(t){s.value=t,a(s)}),(function(t){return o("throw",t,a,c)}))}c(u.arg)}var i;n(this,"_invoke",{value:function(t,e){function n(){return new r((function(r,n){o(t,e,r,n)}))}return i=i?i.then(n,n):n()}})}function O(t,r,e){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return P()}for(e.method=o,e.arg=i;;){var a=e.delegate;if(a){var c=E(a,e);if(c){if(c===p)continue;return c}}if("next"===e.method)e.sent=e._sent=e.arg;else if("throw"===e.method){if("suspendedStart"===n)throw n="completed",e.arg;e.dispatchException(e.arg)}else"return"===e.method&&e.abrupt("return",e.arg);n="executing";var u=f(t,r,e);if("normal"===u.type){if(n=e.done?"completed":"suspendedYield",u.arg===p)continue;return{value:u.arg,done:e.done}}"throw"===u.type&&(n="completed",e.method="throw",e.arg=u.arg)}}}function E(t,r){var e=r.method,n=t.iterator[e];if(void 0===n)return r.delegate=null,"throw"===e&&t.iterator.return&&(r.method="return",r.arg=void 0,E(t,r),"throw"===r.method)||"return"!==e&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+e+"' method")),p;var o=f(n,t.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,p;var i=o.arg;return i?i.done?(r[t.resultName]=i.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=void 0),r.delegate=null,p):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,p)}function k(t){var r={tryLoc:t[0]};1 in t&&(r.catchLoc=t[1]),2 in t&&(r.finallyLoc=t[2],r.afterLoc=t[3]),this.tryEntries.push(r)}function j(t){var r=t.completion||{};r.type="normal",delete r.arg,t.completion=r}function L(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function _(t){if(t){var r=t[i];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function r(){for(;++n<t.length;)if(e.call(t,n))return r.value=t[n],r.done=!1,r;return r.value=void 0,r.done=!0,r};return o.next=o}}return{next:P}}function P(){return{value:void 0,done:!0}}return y.prototype=v,n(w,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:y,configurable:!0}),y.displayName=u(v,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var r="function"==typeof t&&t.constructor;return!!r&&(r===y||"GeneratorFunction"===(r.displayName||r.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,v):(t.__proto__=v,u(t,c,"GeneratorFunction")),t.prototype=Object.create(w),t},t.awrap=function(t){return{__await:t}},b(x.prototype),u(x.prototype,a,(function(){return this})),t.AsyncIterator=x,t.async=function(r,e,n,o,i){void 0===i&&(i=Promise);var a=new x(s(r,e,n,o),i);return t.isGeneratorFunction(e)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},b(w),u(w,c,"Generator"),u(w,i,(function(){return this})),u(w,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var r=Object(t),e=[];for(var n in r)e.push(n);return e.reverse(),function t(){for(;e.length;){var n=e.pop();if(n in r)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=_,L.prototype={constructor:L,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(j),!t)for(var r in this)"t"===r.charAt(0)&&e.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function n(e,n){return a.type="throw",a.arg=t,r.next=e,n&&(r.method="next",r.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=e.call(i,"catchLoc"),u=e.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,r){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&e.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=r&&r<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=r,i?(this.method="next",this.next=i.finallyLoc,p):this.complete(a)},complete:function(t,r){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&r&&(this.next=r),p},finish:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.finallyLoc===t)return this.complete(e.completion,e.afterLoc),j(e),p}},catch:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.tryLoc===t){var n=e.completion;if("throw"===n.type){var o=n.arg;j(e)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,e){return this.delegate={iterator:_(t),resultName:r,nextLoc:e},"next"===this.method&&(this.arg=void 0),p}},t}function y(t){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},y(t)}function v(t,r,e,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void e(t)}c.done?r(u):Promise.resolve(u).then(n,o)}function d(t){return function(){var r=this,e=arguments;return new Promise((function(n,o){var i=t.apply(r,e);function a(t){v(i,n,o,a,c,"next",t)}function c(t){v(i,n,o,a,c,"throw",t)}a(void 0)}))}}function g(t,r,e){return(r=function(t){var r=function(t,r){if("object"!=typeof t||null===t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,r||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(t)}(t,"string");return"symbol"==typeof r?r:String(r)}(r))in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}function m(t){if(t instanceof Error)throw t;if("string"==typeof t)throw new Error(t);throw new Error("Cannot determine file loading error.")}function w(t,r){if(t.includes(".")){var e=t.lastIndexOf("."),n=t.substring(e,t.length);void 0!==r&&-1===r.indexOf(n)||(t=t.substring(0,e))}return t}function b(t,r){return Object.prototype.hasOwnProperty.call(t,r)}function x(t,r){return b(t,r)&&"string"==typeof t[r]}function O(t){return!!t&&"object"===y(t)&&!Array.isArray(t)}function E(t){return Array.isArray(t)?t:[t]}function k(t){var r,e;return(t=t||{}).path=t.path||[],t.path=E(t.path),0===t.path.length&&t.path.push(process.cwd()),null!==(e=(r=t).ignore)&&void 0!==e||(r.ignore=[]),t}function j(t,r){r||o.isAbsolute(t)||(t=o.resolve(process.cwd(),t));var e=o.parse(t);return{path:e.dir.split("/").join(o.sep),name:e.name,extension:e.ext}}var L=n(e);function _(t,r){return P.apply(this,arguments)}function P(){return(P=d(h().mark((function t(r,e){var n,o,i,a,c,u;return h().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:e=k(e),n=Array.isArray(r)?r:[r],o=[],i=0;case 4:if(!(i<n.length)){t.next=17;break}a=0;case 6:if(!(a<e.path.length)){t.next=14;break}return t.next=9,L(n[i],{absolute:!0,cwd:e.path[a],nodir:!0,ignore:e.ignore});case 9:for(c=t.sent,u=0;u<c.length;u++)o.push(j(c[u],!0));case 11:a++,t.next=6;break;case 14:i++,t.next=4;break;case 17:return t.abrupt("return",o);case 18:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function S(t,r){return N.apply(this,arguments)}function N(){return(N=d(h().mark((function t(r,e){var n,o,i,a,c;return h().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:e=k(e),n=Array.isArray(r)?r:[r],o=0;case 3:if(!(o<n.length)){t.next=18;break}i=0;case 5:if(!(i<e.path.length)){t.next=15;break}return t.next=8,L(n[o],{absolute:!0,cwd:e.path[i],nodir:!0,ignore:e.ignore});case 8:if(a=t.sent,!(c=a.shift())){t.next=12;break}return t.abrupt("return",j(c,!0));case 12:i++,t.next=5;break;case 15:o++,t.next=3;break;case 18:return t.abrupt("return",void 0);case 19:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function A(t,r){r=k(r);for(var n=Array.isArray(t)?t:[t],o=[],i=0;i<n.length;i++)for(var a=0;a<r.path.length;a++)for(var c=e.sync(n[i],{absolute:!0,cwd:r.path[a],nodir:!0,ignore:r.ignore}),u=0;u<c.length;u++)o.push(j(c[u],!0));return o}function U(t,r){r=k(r);for(var n=Array.isArray(t)?t:[t],o=0;o<n.length;o++)for(var i=0;i<r.path.length;i++){var a=e.sync(n[o],{absolute:!0,cwd:r.path[i],nodir:!0,ignore:r.ignore}).shift();if(a)return j(a,!0)}}function D(t,r){return r?o.join(t.path,t.name)+t.extension:o.join(t.path,t.name)}function F(r,e){if(e){for(var n=Object.keys(r),o=0;o<n.length;o++)if(e(n[o],r[n[o]]))return{key:n[o],value:r[n[o]]};throw new t("Cannot find specific module export.")}return{key:"default",value:b(r,"default")?r.default:r}}function T(t,r){return R.apply(this,arguments)}function R(){return(R=d(h().mark((function e(n,o){var i,a;return h().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i="string"==typeof n?j(n):n,a=D(i,(o=o||{}).withExtension),o.withFilePrefix&&(a=r(a).href),e.prev=4,e.next=7,import(a);case 7:return e.abrupt("return",e.sent);case 10:if(e.prev=10,e.t0=e.catch(4),!O(e.t0)||!x(e.t0,"code")){e.next=18;break}if(o.withExtension||"ERR_MODULE_NOT_FOUND"!==e.t0.code&&"MODULE_NOT_FOUND"!==e.t0.code){e.next=15;break}return e.abrupt("return",T(i,l(l({},o),{},{withExtension:!0})));case 15:if(o.withFilePrefix||"ERR_UNSUPPORTED_ESM_URL_SCHEME"!==e.t0.code&&"UNSUPPORTED_ESM_URL_SCHEME"!==e.t0.code){e.next=17;break}return e.abrupt("return",T(i,l(l({},o),{},{withFilePrefix:!0})));case 17:throw new t({code:e.t0.code,message:x(e.t0,"message")?e.t0.message:void 0,stack:x(e.t0,"stack")?e.t0.stack:void 0});case 18:return e.abrupt("return",m(e.t0));case 19:case"end":return e.stop()}}),e,null,[[4,10]])})))).apply(this,arguments)}function G(t,r){return M.apply(this,arguments)}function M(){return(M=d(h().mark((function r(e,n){var o;return h().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,T(e);case 2:if("object"!==y(o=r.sent)||!o){r.next=5;break}return r.abrupt("return",F(o,n));case 5:throw new t("Cannot extract specific module export");case 6:case"end":return r.stop()}}),r)})))).apply(this,arguments)}function C(r,e){var n,o=D(n="string"==typeof r?j(r):r,(e=e||{}).withExtension);try{return f(o)}catch(r){if(O(r)&&x(r,"code")){if(!e.withExtension&&("ERR_MODULE_NOT_FOUND"===r.code||"MODULE_NOT_FOUND"===r.code))return C(n,l(l({},e),{},{withExtension:!0}));throw new t({code:r.code,message:x(r,"message")?r.message:void 0,stack:x(r,"stack")?r.stack:void 0})}return m(r)}}function I(r,e){var n=C(r);if("object"===y(n)&&n)return F(n,e);throw new t("Cannot extract specific module export")}function H(t){return J.apply(this,arguments)}function J(){return(J=d(h().mark((function t(r){var e,n;return h().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="string"==typeof r?o.isAbsolute(r)?r:o.resolve(process.cwd(),r):D(r,!0),t.prev=1,t.next=4,i.promises.readFile(e);case 4:return n=t.sent,t.abrupt("return",JSON.parse(n.toString("utf-8")));case 8:return t.prev=8,t.t0=t.catch(1),t.abrupt("return",m(t.t0));case 11:case"end":return t.stop()}}),t,null,[[1,8]])})))).apply(this,arguments)}function Y(t){var r;r="string"==typeof t?o.isAbsolute(t)?t:o.resolve(process.cwd(),t):D(t,!0);try{var e=i.readFileSync(r);return JSON.parse(e.toString("utf-8"))}catch(t){return m(t)}}function q(t){return z.apply(this,arguments)}function z(){return(z=d(h().mark((function t(r){var e;return h().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(".json"!==(e="string"==typeof r?j(r):r).extension){t.next=3;break}return t.abrupt("return",H(e));case 3:return t.abrupt("return",T(e));case 4:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function B(t){var r;return".json"===(r="string"==typeof t?j(t):t).extension?Y(r):C(r)}export{D as buildLoaderFilePath,k as buildLocatorOptions,F as getExportItem,m as handleFileLoadError,b as hasOwnProperty,x as hasStringProperty,O as isObject,q as loadFile,B as loadFileSync,H as loadJsonFile,Y as loadJsonFileSync,T as loadScriptFile,G as loadScriptFileExport,I as loadScriptFileExportSync,C as loadScriptFileSync,S as locateFile,U as locateFileSync,_ as locateFiles,A as locateFilesSync,j as pathToLocatorInfo,w as removeFileNameExtension,E as toArray};
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../src/utils/error.ts","../src/utils/file-name.ts","../src/utils/has-property.ts","../src/utils/object.ts","../src/utils/to-array.ts","../src/locator/utils.ts","../src/locator/async.ts","../src/locator/sync.ts","../src/loader/utils.ts","../src/loader/file-type/script/utils.ts","../src/loader/file-type/script/async.ts","../src/loader/file-type/script/sync.ts","../src/loader/file-type/json.ts","../src/loader/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\n/* istanbul ignore next */\nexport function handleFileLoadError(e: unknown) : void {\n if (e instanceof Error) {\n throw e;\n }\n\n if (typeof e === 'string') {\n throw new Error(e);\n }\n\n throw new Error('Cannot determine file loading error.');\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function removeFileNameExtension(\n input: string,\n extensions?: string[],\n) {\n if (input.includes('.')) {\n const position = input.lastIndexOf('.');\n const extension = input.substring(\n position,\n input.length,\n );\n\n if (\n typeof extensions === 'undefined' ||\n extensions.indexOf(extension) !== -1\n ) {\n input = input.substring(0, position);\n }\n }\n\n return input;\n}\n","export function hasOwnProperty<X extends Record<string, any>, Y extends PropertyKey>(obj: X, prop: Y): obj is X & Record<Y, unknown> {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nexport function hasStringProperty<X extends Record<string, any>, Y extends PropertyKey>(obj: X, prop: Y): obj is X & Record<Y, string> {\n return hasOwnProperty(obj, prop) && typeof obj[prop] === 'string';\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function isObject(item: unknown) : item is Record<string, any> {\n return (\n !!item &&\n typeof item === 'object' &&\n !Array.isArray(item)\n );\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function toArray(input: string | string[]) : string[] {\n return Array.isArray(input) ? input : [input];\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport path from 'node:path';\nimport { LocatorInfo, LocatorOptions } from './type';\nimport { toArray } from '../utils';\n\nexport function buildLocatorOptions(options?: Partial<LocatorOptions>) : LocatorOptions {\n options = options || {};\n\n options.path = options.path || [];\n options.path = toArray(options.path);\n if (options.path.length === 0) {\n options.path.push(process.cwd());\n }\n\n options.ignore ??= [];\n\n return options as LocatorOptions;\n}\n\nexport function pathToLocatorInfo(\n input: string,\n skipResolve?: boolean,\n) : LocatorInfo {\n if (!skipResolve && !path.isAbsolute(input)) {\n input = path.resolve(process.cwd(), input);\n }\n\n const info = path.parse(input);\n\n return {\n path: info.dir.split('/').join(path.sep),\n name: info.name,\n extension: info.ext,\n };\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport glob from 'glob';\nimport { promisify } from 'node:util';\nimport { LocatorInfo, LocatorOptions } from './type';\nimport { buildLocatorOptions, pathToLocatorInfo } from './utils';\n\nconst globAsync = promisify(glob);\n\nexport async function locateFiles(\n pattern: string | string[],\n options?: Partial<LocatorOptions>,\n) : Promise<LocatorInfo[]> {\n options = buildLocatorOptions(options);\n\n const patterns = Array.isArray(pattern) ?\n pattern :\n [pattern];\n\n const items : LocatorInfo[] = [];\n\n for (let i = 0; i < patterns.length; i++) {\n for (let j = 0; j < (options as LocatorOptions).path.length; j++) {\n const files = await globAsync(patterns[i] as string, {\n absolute: true,\n cwd: (options as LocatorOptions).path[j],\n nodir: true,\n ignore: options.ignore,\n });\n\n for (let k = 0; k < files.length; k++) {\n items.push(pathToLocatorInfo(files[k] as string, true));\n }\n }\n }\n\n return items;\n}\n\nexport async function locateFile(\n pattern: string | string[],\n options?: Partial<LocatorOptions>,\n) : Promise<LocatorInfo | undefined> {\n options = buildLocatorOptions(options);\n\n const patterns = Array.isArray(pattern) ?\n pattern :\n [pattern];\n\n for (let i = 0; i < patterns.length; i++) {\n for (let j = 0; j < (options as LocatorOptions).path.length; j++) {\n const files = await globAsync(patterns[i] as string, {\n absolute: true,\n cwd: (options as LocatorOptions).path[j],\n nodir: true,\n ignore: options.ignore,\n });\n\n const element = files.shift();\n if (element) {\n return pathToLocatorInfo(element, true);\n }\n }\n }\n\n return undefined;\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport glob from 'glob';\nimport { LocatorInfo, LocatorOptions } from './type';\nimport { buildLocatorOptions, pathToLocatorInfo } from './utils';\n\nexport function locateFilesSync(\n pattern: string | string[],\n options?: Partial<LocatorOptions>,\n) : LocatorInfo[] {\n options = buildLocatorOptions(options);\n\n const patterns = Array.isArray(pattern) ?\n pattern :\n [pattern];\n\n const items : LocatorInfo[] = [];\n\n for (let i = 0; i < patterns.length; i++) {\n for (let j = 0; j < (options as LocatorOptions).path.length; j++) {\n const files = glob.sync(patterns[i] as string, {\n absolute: true,\n cwd: (options as LocatorOptions).path[j],\n nodir: true,\n ignore: options.ignore,\n });\n\n for (let k = 0; k < files.length; k++) {\n items.push(pathToLocatorInfo(files[k] as string, true));\n }\n }\n }\n\n return items;\n}\n\nexport function locateFileSync(\n pattern: string | string[],\n options?: Partial<LocatorOptions>,\n) : LocatorInfo | undefined {\n options = buildLocatorOptions(options);\n\n const patterns = Array.isArray(pattern) ?\n pattern :\n [pattern];\n\n for (let i = 0; i < patterns.length; i++) {\n for (let j = 0; j < (options as LocatorOptions).path.length; j++) {\n const files = glob.sync(patterns[i] as string, {\n absolute: true,\n cwd: (options as LocatorOptions).path[j],\n nodir: true,\n ignore: options.ignore,\n });\n\n const element = files.shift();\n if (element) {\n return pathToLocatorInfo(element, true);\n }\n }\n }\n\n return undefined;\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport path from 'node:path';\nimport { LocatorInfo } from '../locator';\n\nexport function buildLoaderFilePath(info: LocatorInfo, withExtension?: boolean) {\n if (withExtension) {\n return path.join(info.path, info.name) + info.extension;\n }\n\n return path.join(info.path, info.name);\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { BaseError } from 'ebec';\nimport { hasOwnProperty } from '../../../utils';\nimport { LoaderFilterFn, ScriptFileExportItem } from './type';\n\nexport function getExportItem(\n data: Record<string, any>,\n filterFn?: LoaderFilterFn,\n) : ScriptFileExportItem {\n if (filterFn) {\n const keys = Object.keys(data);\n for (let i = 0; i < keys.length; i++) {\n if (filterFn(keys[i] as string, data[keys[i] as string])) {\n return {\n key: keys[i] as string,\n value: data[keys[i] as string],\n };\n }\n }\n\n throw new BaseError('Cannot find specific module export.');\n }\n\n return {\n key: 'default',\n value: hasOwnProperty(data, 'default') ? data.default : data,\n };\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { BaseError } from 'ebec';\nimport { pathToFileURL } from 'node:url';\nimport { LocatorInfo, pathToLocatorInfo } from '../../../locator';\nimport {\n handleFileLoadError, hasStringProperty, isObject,\n} from '../../../utils';\nimport { buildLoaderFilePath } from '../../utils';\nimport { LoaderFilterFn, ScriptFileExportItem, ScriptFileLoadOptions } from './type';\nimport { getExportItem } from './utils';\n\nexport async function loadScriptFile(\n data: LocatorInfo | string,\n options?: ScriptFileLoadOptions,\n) : Promise<unknown> {\n let locatorInfo : LocatorInfo;\n\n if (typeof data === 'string') {\n locatorInfo = pathToLocatorInfo(data);\n } else {\n locatorInfo = data;\n }\n\n options = options || {};\n\n let filePath = buildLoaderFilePath(locatorInfo, options.withExtension);\n if (options.withFilePrefix) {\n filePath = pathToFileURL(filePath).href;\n }\n\n try {\n return await import(filePath);\n } catch (e) {\n /* istanbul ignore next */\n if (\n isObject(e) &&\n hasStringProperty(e, 'code')\n ) {\n if (\n !options.withExtension &&\n (\n e.code === 'ERR_MODULE_NOT_FOUND' ||\n e.code === 'MODULE_NOT_FOUND'\n )\n ) {\n return loadScriptFile(locatorInfo, {\n ...options,\n withExtension: true,\n });\n }\n\n if (\n !options.withFilePrefix &&\n (\n e.code === 'ERR_UNSUPPORTED_ESM_URL_SCHEME' ||\n e.code === 'UNSUPPORTED_ESM_URL_SCHEME'\n )\n ) {\n return loadScriptFile(locatorInfo, {\n ...options,\n withFilePrefix: true,\n });\n }\n\n throw new BaseError({\n code: e.code,\n message: hasStringProperty(e, 'message') ? e.message : undefined,\n stack: hasStringProperty(e, 'stack') ? e.stack : undefined,\n });\n }\n\n /* istanbul ignore next */\n return handleFileLoadError(e);\n }\n}\n\nexport async function loadScriptFileExport(\n data: LocatorInfo | string,\n filterFn?: LoaderFilterFn,\n) : Promise<ScriptFileExportItem> {\n const output = await loadScriptFile(data);\n\n if (typeof output === 'object' && !!output) {\n return getExportItem(output, filterFn);\n }\n\n throw new BaseError('Cannot extract specific module export');\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { BaseError } from 'ebec';\nimport { LoaderFilterFn, ScriptFileExportItem, ScriptFileLoadOptions } from './type';\nimport { getExportItem } from './utils';\nimport { LocatorInfo, pathToLocatorInfo } from '../../../locator';\nimport { buildLoaderFilePath } from '../../utils';\nimport {\n handleFileLoadError, hasStringProperty, isObject,\n} from '../../../utils';\n\nexport function loadScriptFileSync(\n data: LocatorInfo | string,\n options?: ScriptFileLoadOptions,\n) : unknown {\n let locatorInfo : LocatorInfo;\n\n if (typeof data === 'string') {\n locatorInfo = pathToLocatorInfo(data);\n } else {\n locatorInfo = data;\n }\n\n options = options || {};\n\n const filePath = buildLoaderFilePath(locatorInfo, options.withExtension);\n\n try {\n // eslint-disable-next-line global-require,import/no-dynamic-require\n return require(filePath);\n } catch (e) {\n /* istanbul ignore next */\n if (\n isObject(e) &&\n hasStringProperty(e, 'code')\n ) {\n if (\n !options.withExtension &&\n (\n e.code === 'ERR_MODULE_NOT_FOUND' ||\n e.code === 'MODULE_NOT_FOUND'\n )\n ) {\n return loadScriptFileSync(locatorInfo, {\n ...options,\n withExtension: true,\n });\n }\n\n throw new BaseError({\n code: e.code,\n message: hasStringProperty(e, 'message') ? e.message : undefined,\n stack: hasStringProperty(e, 'stack') ? e.stack : undefined,\n });\n }\n\n return handleFileLoadError(e);\n }\n}\n\nexport function loadScriptFileExportSync(\n data: LocatorInfo | string,\n filterFn?: LoaderFilterFn,\n) : ScriptFileExportItem {\n const output = loadScriptFileSync(data);\n\n if (typeof output === 'object' && !!output) {\n return getExportItem(output, filterFn);\n }\n\n throw new BaseError('Cannot extract specific module export');\n}\n","/*\n * Copyright (c) 2022-2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport fs from 'node:fs';\nimport path from 'node:path';\nimport { LocatorInfo } from '../../locator';\nimport { handleFileLoadError } from '../../utils';\nimport { buildLoaderFilePath } from '../utils';\n\nexport async function loadJsonFile(input: LocatorInfo | string) : Promise<unknown> {\n let filePath : string;\n\n if (typeof input === 'string') {\n filePath = path.isAbsolute(input) ? input : path.resolve(process.cwd(), input);\n } else {\n filePath = buildLoaderFilePath(input, true);\n }\n\n try {\n const file = await fs.promises.readFile(filePath);\n return JSON.parse(file.toString('utf-8'));\n } catch (e) {\n return handleFileLoadError(e);\n }\n}\n\nexport function loadJsonFileSync(input: LocatorInfo | string) : unknown {\n let filePath : string;\n\n if (typeof input === 'string') {\n filePath = path.isAbsolute(input) ? input : path.resolve(process.cwd(), input);\n } else {\n filePath = buildLoaderFilePath(input, true);\n }\n\n try {\n const file = fs.readFileSync(filePath);\n return JSON.parse(file.toString('utf-8'));\n } catch (e) {\n return handleFileLoadError(e);\n }\n}\n","/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { LocatorInfo, pathToLocatorInfo } from '../locator';\nimport {\n loadJsonFile,\n loadJsonFileSync,\n loadScriptFile,\n loadScriptFileSync,\n} from './file-type';\n\nexport async function loadFile(input: LocatorInfo | string) : Promise<unknown> {\n let info : LocatorInfo;\n if (typeof input === 'string') {\n info = pathToLocatorInfo(input);\n } else {\n info = input;\n }\n\n if (info.extension === '.json') {\n return loadJsonFile(info);\n }\n\n return loadScriptFile(info);\n}\n\nexport function loadFileSync(input: LocatorInfo | string) : unknown {\n let info : LocatorInfo;\n if (typeof input === 'string') {\n info = pathToLocatorInfo(input);\n } else {\n info = input;\n }\n\n if (info.extension === '.json') {\n return loadJsonFileSync(info);\n }\n\n return loadScriptFileSync(info);\n}\n"],"names":["handleFileLoadError","e","Error","removeFileNameExtension","input","extensions","includes","position","lastIndexOf","indexOf","extension","hasOwnProperty","obj","prop","hasStringProperty","isObject","item","_typeof","Array","isArray","toArray","buildLocatorOptions","options","_options","_options$ignore","path","length","ignore","pathToLocatorInfo","skipResolve","info","parse","globAsync","promisify","glob","locateFiles","_x","_x2","_locateFiles","apply","this","arguments","patterns","items","i","j","files","k","_regeneratorRuntime","wrap","_context","prev","next","absolute","cwd","nodir","abrupt","stop","_callee","locateFile","_x3","_x4","_locateFile","element","_context2","undefined","_callee2","locateFilesSync","pattern","locateFileSync","shift","buildLoaderFilePath","withExtension","join","name","getExportItem","data","filterFn","keys","Object","key","value","BaseError","loadScriptFile","_loadScriptFile","locatorInfo","filePath","sent","t0","code","_objectSpread2","withFilePrefix","loadScriptFileExport","_loadScriptFileExport","output","loadScriptFileSync","message","loadScriptFileExportSync","loadJsonFile","_loadJsonFile","_asyncToGenerator","mark","file","fs","promises","readFile","loadJsonFileSync","readFileSync","loadFile","_loadFile","loadFileSync"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  import { LocatorInfo } from '../../locator';
2
- export declare function loadJsonFile(input: LocatorInfo | string): Promise<unknown | undefined>;
3
- export declare function loadJsonFileSync(input: LocatorInfo | string): unknown | undefined;
2
+ export declare function loadJsonFile(input: LocatorInfo | string): Promise<unknown>;
3
+ export declare function loadJsonFileSync(input: LocatorInfo | string): unknown;
@@ -1,4 +1,4 @@
1
1
  import { LocatorInfo } from '../../../locator';
2
2
  import { LoaderFilterFn, ScriptFileExportItem, ScriptFileLoadOptions } from './type';
3
- export declare function loadScriptFile(data: LocatorInfo | string, options?: ScriptFileLoadOptions): Promise<unknown | undefined>;
4
- export declare function loadScriptFileExport(data: LocatorInfo | string, filterFn?: LoaderFilterFn): Promise<ScriptFileExportItem | undefined>;
3
+ export declare function loadScriptFile(data: LocatorInfo | string, options?: ScriptFileLoadOptions): Promise<unknown>;
4
+ export declare function loadScriptFileExport(data: LocatorInfo | string, filterFn?: LoaderFilterFn): Promise<ScriptFileExportItem>;
@@ -1,4 +1,4 @@
1
1
  import { LoaderFilterFn, ScriptFileExportItem, ScriptFileLoadOptions } from './type';
2
2
  import { LocatorInfo } from '../../../locator';
3
- export declare function loadScriptFileSync(data: LocatorInfo | string, options?: ScriptFileLoadOptions): unknown | undefined;
4
- export declare function loadScriptFileExportSync(data: LocatorInfo | string, filterFn?: LoaderFilterFn): ScriptFileExportItem | undefined;
3
+ export declare function loadScriptFileSync(data: LocatorInfo | string, options?: ScriptFileLoadOptions): unknown;
4
+ export declare function loadScriptFileExportSync(data: LocatorInfo | string, filterFn?: LoaderFilterFn): ScriptFileExportItem;
@@ -1,2 +1,2 @@
1
1
  import { LoaderFilterFn, ScriptFileExportItem } from './type';
2
- export declare function getExportItem(data: Record<string, any>, filterFn: LoaderFilterFn): ScriptFileExportItem | undefined;
2
+ export declare function getExportItem(data: Record<string, any>, filterFn?: LoaderFilterFn): ScriptFileExportItem;
File without changes
@@ -1,3 +1,3 @@
1
1
  import { LocatorInfo } from '../locator';
2
- export declare function loadFile(input: LocatorInfo | string): Promise<unknown | undefined>;
3
- export declare function loadFileSync(input: LocatorInfo | string): unknown | undefined;
2
+ export declare function loadFile(input: LocatorInfo | string): Promise<unknown>;
3
+ export declare function loadFileSync(input: LocatorInfo | string): unknown;
File without changes
File without changes
File without changes
File without changes
@@ -1,7 +1,7 @@
1
1
  export type LocatorInfo = {
2
2
  path: string;
3
3
  name: string;
4
- extension: '.js' | '.ts' | '.json' | string;
4
+ extension: '.js' | '.cjs' | '.mjs' | '.ts' | '.json' | string;
5
5
  };
6
6
  export type LocatorOptions = {
7
7
  path: string | string[];
@@ -1,4 +1,3 @@
1
1
  import { LocatorInfo, LocatorOptions } from './type';
2
2
  export declare function buildLocatorOptions(options?: Partial<LocatorOptions>): LocatorOptions;
3
- export declare function isLocatorInfo(data: unknown): data is LocatorInfo;
4
3
  export declare function pathToLocatorInfo(input: string, skipResolve?: boolean): LocatorInfo;
@@ -0,0 +1 @@
1
+ export declare function handleFileLoadError(e: unknown): void;
File without changes
File without changes
File without changes
File without changes
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "locter",
3
- "version": "0.6.2",
3
+ "version": "0.7.1",
4
4
  "description": "A library to locate a file by criteria and load it",
5
5
  "author": {
6
6
  "name": "Peter Placzek",
@@ -11,9 +11,16 @@
11
11
  "type": "git",
12
12
  "url": "https://github.com/tada5hi/locter.git"
13
13
  },
14
- "main": "dist/index.cjs.js",
15
- "module": "dist/index.esm.js",
16
- "types": "dist/types/index.d.ts",
14
+ "main": "dist/index.cjs",
15
+ "module": "dist/index.mjs",
16
+ "types": "dist/index.d.ts",
17
+ "exports": {
18
+ "./package.json": "./package.json",
19
+ ".": {
20
+ "require": "./dist/index.cjs",
21
+ "import": "./dist/index.mjs"
22
+ }
23
+ },
17
24
  "files": [
18
25
  "dist/"
19
26
  ],
@@ -40,12 +47,13 @@
40
47
  "@babel/core": "^7.20.12",
41
48
  "@babel/preset-env": "^7.20.2",
42
49
  "@babel/preset-typescript": "^7.18.6",
43
- "@commitlint/cli": "^17.3.0",
50
+ "@commitlint/cli": "^17.4.2",
44
51
  "@commitlint/config-angular": "^17.4.0",
45
- "@commitlint/config-conventional": "^17.4.0",
46
- "@commitlint/cz-commitlint": "^17.4.0",
52
+ "@commitlint/config-conventional": "^17.4.2",
53
+ "@commitlint/cz-commitlint": "^17.4.2",
47
54
  "@rollup/plugin-babel": "^6.0.3",
48
55
  "@rollup/plugin-node-resolve": "^15.0.0",
56
+ "@rollup/plugin-terser": "^0.3.0",
49
57
  "@semantic-release/changelog": "^6.0.2",
50
58
  "@semantic-release/commit-analyzer": "^9.0.2",
51
59
  "@semantic-release/git": "^10.0.1",
@@ -53,6 +61,7 @@
53
61
  "@semantic-release/npm": "^9.0.1",
54
62
  "@semantic-release/release-notes-generator": "^10.0.3",
55
63
  "@tada5hi/eslint-config-typescript": "^1.1.0",
64
+ "@tada5hi/tsconfig": "^0.1.0",
56
65
  "@types/glob": "^8.0.0",
57
66
  "@types/is-file-esm": "^1.0.0",
58
67
  "@types/jest": "^27.5.0",
@@ -61,19 +70,22 @@
61
70
  "babel-plugin-dynamic-import-node": "^2.3.3",
62
71
  "coveralls": "^3.1.0",
63
72
  "cross-env": "^7.0.3",
64
- "eslint": "^8.31.0",
73
+ "eslint": "^8.32.0",
65
74
  "husky": "^8.0.3",
66
75
  "jest": "^27.5.1",
67
- "rimraf": "^3.0.2",
68
- "rollup": "^3.9.1",
76
+ "magic-string": "^0.27.0",
77
+ "mlly": "^1.1.0",
78
+ "rimraf": "^4.1.0",
79
+ "rollup": "^3.10.0",
69
80
  "semantic-release": "^19.0.5",
81
+ "sourcemap-codec": "^1.4.8",
70
82
  "ts-jest": "^27.1.4",
71
83
  "ts-node": "^10.9.1",
72
84
  "typescript": "^4.9.4"
73
85
  },
74
86
  "dependencies": {
75
87
  "ebec": "^0.1.0",
76
- "glob": "^8.0.3"
88
+ "glob": "^8.1.0"
77
89
  },
78
90
  "config": {
79
91
  "commitizen": {