@helpers4/url 1.0.1 → 2.0.0-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +150 -650
- package/README.md +58 -3
- package/lib/index.d.ts +437 -0
- package/lib/index.js +203 -0
- package/lib/index.js.map +1 -0
- package/meta/api.json +449 -0
- package/meta/examples.json +100 -0
- package/meta/licenses.json +4 -0
- package/package.json +40 -102
- package/CHANGELOG.md +0 -7
- package/build/main/helper/url.d.ts +0 -66
- package/build/main/helper/url.js +0 -83
- package/build/main/helper/url.spec.d.ts +0 -1
- package/build/main/helper/url.spec.js +0 -81
- package/build/main/index.d.ts +0 -1
- package/build/main/index.js +0 -18
- package/build/module/helper/url.d.ts +0 -66
- package/build/module/helper/url.js +0 -77
- package/build/module/helper/url.spec.d.ts +0 -1
- package/build/module/helper/url.spec.js +0 -76
- package/build/module/index.d.ts +0 -1
- package/build/module/index.js +0 -2
package/package.json
CHANGED
|
@@ -1,112 +1,50 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@helpers4/url",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "A set of helpers in TS/JS, compatible with tree-shaking,
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
"repository":
|
|
9
|
-
|
|
3
|
+
"version": "2.0.0-alpha.10",
|
|
4
|
+
"description": "A set of helpers in TS/JS, compatible with tree-shaking, for url.",
|
|
5
|
+
"author": "baxyz <baxy@etik.com>",
|
|
6
|
+
"license": "LGPL-3.0",
|
|
7
|
+
"homepage": "https://helpers4.dev/typescript/categories/url/",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git+https://github.com/helpers4/typescript.git"
|
|
11
|
+
},
|
|
12
|
+
"type": "module",
|
|
13
|
+
"sideEffects": false,
|
|
14
|
+
"main": "lib/index.js",
|
|
15
|
+
"types": "lib/index.d.ts",
|
|
16
|
+
"exports": {
|
|
17
|
+
".": {
|
|
18
|
+
"types": "./lib/index.d.ts",
|
|
19
|
+
"import": "./lib/index.js"
|
|
20
|
+
},
|
|
21
|
+
"./meta/api.json": "./meta/api.json",
|
|
22
|
+
"./meta/examples.json": "./meta/examples.json",
|
|
23
|
+
"./meta/licenses.json": "./meta/licenses.json",
|
|
24
|
+
"./package.json": "./package.json"
|
|
25
|
+
},
|
|
10
26
|
"keywords": [
|
|
11
|
-
"
|
|
12
|
-
"string",
|
|
27
|
+
"helpers",
|
|
13
28
|
"url",
|
|
14
|
-
"
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
"
|
|
29
|
+
"cleanPath",
|
|
30
|
+
"extractPureURI",
|
|
31
|
+
"onlyPath",
|
|
32
|
+
"relativeURLToAbsolute",
|
|
33
|
+
"withLeadingSlash",
|
|
34
|
+
"withTrailingSlash",
|
|
35
|
+
"withoutLeadingSlash",
|
|
36
|
+
"withoutTrailingSlash"
|
|
19
37
|
],
|
|
20
|
-
"scripts": {
|
|
21
|
-
"build": "run-p build:*",
|
|
22
|
-
"build:main": "tsc -p tsconfig.json",
|
|
23
|
-
"build:module": "tsc -p tsconfig.module.json",
|
|
24
|
-
"fix": "run-s fix:*",
|
|
25
|
-
"fix:prettier": "prettier \"src/**/*.ts\" --write",
|
|
26
|
-
"fix:lint": "eslint src --ext .ts --fix",
|
|
27
|
-
"test": "run-s build test:*",
|
|
28
|
-
"test:lint": "eslint src --ext .ts",
|
|
29
|
-
"test:prettier": "prettier \"src/**/*.ts\" --list-different",
|
|
30
|
-
"test:spelling": "cspell \"{README.md,.github/*.md,src/**/*.ts}\"",
|
|
31
|
-
"test:unit": "nyc --silent ava",
|
|
32
|
-
"check-cli": "run-s test diff-integration-tests check-integration-tests",
|
|
33
|
-
"check-integration-tests": "run-s check-integration-test:*",
|
|
34
|
-
"diff-integration-tests": "mkdir -p diff && rm -rf diff/test && cp -r test diff/test && rm -rf diff/test/test-*/.git && cd diff && git init --quiet && git add -A && git commit --quiet --no-verify --allow-empty -m 'WIP' && echo '\\n\\nCommitted most recent integration test output in the \"diff\" directory. Review the changes with \"cd diff && git diff HEAD\" or your preferred git diff viewer.'",
|
|
35
|
-
"watch:build": "tsc -p tsconfig.json -w",
|
|
36
|
-
"watch:test": "nyc --silent ava --watch",
|
|
37
|
-
"cov": "run-s build test:unit cov:html cov:lcov && open-cli coverage/index.html",
|
|
38
|
-
"cov:html": "nyc report --reporter=html",
|
|
39
|
-
"cov:lcov": "nyc report --reporter=lcov",
|
|
40
|
-
"cov:send": "run-s cov:lcov && codecov",
|
|
41
|
-
"cov:check": "nyc report && nyc check-coverage --lines 100 --functions 100 --branches 100",
|
|
42
|
-
"doc": "run-s doc:html && open-cli build/docs/index.html",
|
|
43
|
-
"doc:html": "typedoc src/index.ts --out build/docs",
|
|
44
|
-
"doc:json": "typedoc src/index.ts --json build/docs/typedoc.json --pretty",
|
|
45
|
-
"doc:publish": "gh-pages -m \"[ci skip] Updates\" -d build/docs",
|
|
46
|
-
"version": "standard-version",
|
|
47
|
-
"reset-hard": "git clean -dfx && git reset --hard && npm i",
|
|
48
|
-
"prepare-release": "run-s reset-hard test cov:check doc:html version doc:publish"
|
|
49
|
-
},
|
|
50
|
-
"engines": {
|
|
51
|
-
"node": ">=10"
|
|
52
|
-
},
|
|
53
|
-
"devDependencies": {
|
|
54
|
-
"@ava/typescript": "^1.1.1",
|
|
55
|
-
"@istanbuljs/nyc-config-typescript": "^1.0.1",
|
|
56
|
-
"@typescript-eslint/eslint-plugin": "^4.0.1",
|
|
57
|
-
"@typescript-eslint/parser": "^4.0.1",
|
|
58
|
-
"ava": "^4.3.3",
|
|
59
|
-
"codecov": "^3.5.0",
|
|
60
|
-
"cspell": "^4.1.0",
|
|
61
|
-
"cz-conventional-changelog": "^3.3.0",
|
|
62
|
-
"eslint": "^7.8.0",
|
|
63
|
-
"eslint-config-prettier": "^6.11.0",
|
|
64
|
-
"eslint-plugin-eslint-comments": "^3.2.0",
|
|
65
|
-
"eslint-plugin-functional": "^3.0.2",
|
|
66
|
-
"eslint-plugin-import": "^2.22.0",
|
|
67
|
-
"gh-pages": "^3.1.0",
|
|
68
|
-
"npm-run-all": "^4.1.5",
|
|
69
|
-
"nyc": "^15.1.0",
|
|
70
|
-
"open-cli": "^7.0.1",
|
|
71
|
-
"prettier": "^2.1.1",
|
|
72
|
-
"standard-version": "^9.0.0",
|
|
73
|
-
"ts-node": "^9.0.0",
|
|
74
|
-
"typedoc": "^0.23.13",
|
|
75
|
-
"typescript": "^4.0.2"
|
|
76
|
-
},
|
|
77
38
|
"files": [
|
|
78
|
-
"
|
|
79
|
-
"
|
|
80
|
-
"
|
|
81
|
-
"
|
|
82
|
-
"CHANGELOG.md",
|
|
39
|
+
"lib/index.js",
|
|
40
|
+
"lib/index.d.ts",
|
|
41
|
+
"lib/index.js.map",
|
|
42
|
+
"meta/",
|
|
83
43
|
"LICENSE.md",
|
|
44
|
+
"package.json",
|
|
84
45
|
"README.md"
|
|
85
46
|
],
|
|
86
|
-
"
|
|
87
|
-
"
|
|
88
|
-
"timeout": "60s",
|
|
89
|
-
"typescript": {
|
|
90
|
-
"rewritePaths": {
|
|
91
|
-
"src/": "build/main/"
|
|
92
|
-
}
|
|
93
|
-
},
|
|
94
|
-
"files": [
|
|
95
|
-
"!build/module/**"
|
|
96
|
-
]
|
|
97
|
-
},
|
|
98
|
-
"config": {
|
|
99
|
-
"commitizen": {
|
|
100
|
-
"path": "cz-conventional-changelog"
|
|
101
|
-
}
|
|
102
|
-
},
|
|
103
|
-
"prettier": {
|
|
104
|
-
"singleQuote": true
|
|
105
|
-
},
|
|
106
|
-
"nyc": {
|
|
107
|
-
"extends": "@istanbuljs/nyc-config-typescript",
|
|
108
|
-
"exclude": [
|
|
109
|
-
"**/*.spec.js"
|
|
110
|
-
]
|
|
47
|
+
"engines": {
|
|
48
|
+
"node": ">=18.0.0"
|
|
111
49
|
}
|
|
112
|
-
}
|
|
50
|
+
}
|
package/CHANGELOG.md
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
|
-
|
|
5
|
-
### [1.0.1](https://github.com/helpers4/url/compare/v1.0.0...v1.0.1) (2022-09-03)
|
|
6
|
-
|
|
7
|
-
### 1.0.0 (2022-09-03)
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Simple helper method that remove an ending slash `/` if present.
|
|
3
|
-
*
|
|
4
|
-
* ### Example (es module)
|
|
5
|
-
* ```js
|
|
6
|
-
* import { removeEndingSlash } from '@helpers4/url'
|
|
7
|
-
* console.log(removeEndingSlash('https://www.google.com/'))
|
|
8
|
-
* // => 'https://www.google.com'
|
|
9
|
-
* ```
|
|
10
|
-
*
|
|
11
|
-
* ### Example (commonjs)
|
|
12
|
-
* ```js
|
|
13
|
-
* var removeEndingSlash = require('@helpers4/url').removeEndingSlash;
|
|
14
|
-
* console.log(removeEndingSlash('https://www.google.com/'))
|
|
15
|
-
* // => 'https://www.google.com'
|
|
16
|
-
* ```
|
|
17
|
-
*
|
|
18
|
-
* @param url a valid URL
|
|
19
|
-
*/
|
|
20
|
-
export declare function removeEndingSlash(url: string): string;
|
|
21
|
-
/**
|
|
22
|
-
* Simple helper method that add a leading slash `/` if not yet present.
|
|
23
|
-
*
|
|
24
|
-
* ### Example (es module)
|
|
25
|
-
* ```js
|
|
26
|
-
* import { addLeadingSlash } from '@helpers4/url'
|
|
27
|
-
* console.log(addLeadingSlash('/your/path/with/leading/slash'))
|
|
28
|
-
* // => 'your/path/with/leading/slash'
|
|
29
|
-
* ```
|
|
30
|
-
*
|
|
31
|
-
* ### Example (commonjs)
|
|
32
|
-
* ```js
|
|
33
|
-
* var addLeadingSlash = require('@helpers4/url').addLeadingSlash;
|
|
34
|
-
* console.log(addLeadingSlash('/your/path/with/leading/slash'))
|
|
35
|
-
* // => 'your/path/with/leading/slash'
|
|
36
|
-
* ```
|
|
37
|
-
*
|
|
38
|
-
* @param url a valid URL
|
|
39
|
-
*/
|
|
40
|
-
export declare function addLeadingSlash(url: string): string;
|
|
41
|
-
/**
|
|
42
|
-
* Extract only the URI from a path with optional query and fragments.
|
|
43
|
-
*
|
|
44
|
-
* For example, all these parameters will returns `/path`:
|
|
45
|
-
* - `/path`
|
|
46
|
-
* - `/path?query=thing`
|
|
47
|
-
* - `/path#fragment`
|
|
48
|
-
* - `/path?query=thing#fragment`
|
|
49
|
-
*
|
|
50
|
-
* ### Example (es module)
|
|
51
|
-
* ```js
|
|
52
|
-
* import { extractPureURI } from '@helpers4/url'
|
|
53
|
-
* console.log(extractPureURI('https://www.google.com/?q=search'))
|
|
54
|
-
* // => 'https://www.google.com/'
|
|
55
|
-
* ```
|
|
56
|
-
*
|
|
57
|
-
* ### Example (commonjs)
|
|
58
|
-
* ```js
|
|
59
|
-
* var extractPureURI = require('@helpers4/url').extractPureURI;
|
|
60
|
-
* console.log(extractPureURI('https://www.google.com/?q=search'))
|
|
61
|
-
* // => 'https://www.google.com/'
|
|
62
|
-
* ```
|
|
63
|
-
*
|
|
64
|
-
* @param path a complete path without server part.
|
|
65
|
-
*/
|
|
66
|
-
export declare function extractPureURI(path: string): string;
|
package/build/main/helper/url.js
DELETED
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* This program is under the terms of the GNU Affero General Public License version 3
|
|
4
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.extractPureURI = exports.addLeadingSlash = exports.removeEndingSlash = void 0;
|
|
8
|
-
/**
|
|
9
|
-
* Simple helper method that remove an ending slash `/` if present.
|
|
10
|
-
*
|
|
11
|
-
* ### Example (es module)
|
|
12
|
-
* ```js
|
|
13
|
-
* import { removeEndingSlash } from '@helpers4/url'
|
|
14
|
-
* console.log(removeEndingSlash('https://www.google.com/'))
|
|
15
|
-
* // => 'https://www.google.com'
|
|
16
|
-
* ```
|
|
17
|
-
*
|
|
18
|
-
* ### Example (commonjs)
|
|
19
|
-
* ```js
|
|
20
|
-
* var removeEndingSlash = require('@helpers4/url').removeEndingSlash;
|
|
21
|
-
* console.log(removeEndingSlash('https://www.google.com/'))
|
|
22
|
-
* // => 'https://www.google.com'
|
|
23
|
-
* ```
|
|
24
|
-
*
|
|
25
|
-
* @param url a valid URL
|
|
26
|
-
*/
|
|
27
|
-
function removeEndingSlash(url) {
|
|
28
|
-
return url[url.length - 1] === '/' ? url.slice(0, -1) : url;
|
|
29
|
-
}
|
|
30
|
-
exports.removeEndingSlash = removeEndingSlash;
|
|
31
|
-
/**
|
|
32
|
-
* Simple helper method that add a leading slash `/` if not yet present.
|
|
33
|
-
*
|
|
34
|
-
* ### Example (es module)
|
|
35
|
-
* ```js
|
|
36
|
-
* import { addLeadingSlash } from '@helpers4/url'
|
|
37
|
-
* console.log(addLeadingSlash('/your/path/with/leading/slash'))
|
|
38
|
-
* // => 'your/path/with/leading/slash'
|
|
39
|
-
* ```
|
|
40
|
-
*
|
|
41
|
-
* ### Example (commonjs)
|
|
42
|
-
* ```js
|
|
43
|
-
* var addLeadingSlash = require('@helpers4/url').addLeadingSlash;
|
|
44
|
-
* console.log(addLeadingSlash('/your/path/with/leading/slash'))
|
|
45
|
-
* // => 'your/path/with/leading/slash'
|
|
46
|
-
* ```
|
|
47
|
-
*
|
|
48
|
-
* @param url a valid URL
|
|
49
|
-
*/
|
|
50
|
-
function addLeadingSlash(url) {
|
|
51
|
-
return url[0] === '/' ? url : '/' + url;
|
|
52
|
-
}
|
|
53
|
-
exports.addLeadingSlash = addLeadingSlash;
|
|
54
|
-
/**
|
|
55
|
-
* Extract only the URI from a path with optional query and fragments.
|
|
56
|
-
*
|
|
57
|
-
* For example, all these parameters will returns `/path`:
|
|
58
|
-
* - `/path`
|
|
59
|
-
* - `/path?query=thing`
|
|
60
|
-
* - `/path#fragment`
|
|
61
|
-
* - `/path?query=thing#fragment`
|
|
62
|
-
*
|
|
63
|
-
* ### Example (es module)
|
|
64
|
-
* ```js
|
|
65
|
-
* import { extractPureURI } from '@helpers4/url'
|
|
66
|
-
* console.log(extractPureURI('https://www.google.com/?q=search'))
|
|
67
|
-
* // => 'https://www.google.com/'
|
|
68
|
-
* ```
|
|
69
|
-
*
|
|
70
|
-
* ### Example (commonjs)
|
|
71
|
-
* ```js
|
|
72
|
-
* var extractPureURI = require('@helpers4/url').extractPureURI;
|
|
73
|
-
* console.log(extractPureURI('https://www.google.com/?q=search'))
|
|
74
|
-
* // => 'https://www.google.com/'
|
|
75
|
-
* ```
|
|
76
|
-
*
|
|
77
|
-
* @param path a complete path without server part.
|
|
78
|
-
*/
|
|
79
|
-
function extractPureURI(path) {
|
|
80
|
-
return path.split(/[?#]/)[0];
|
|
81
|
-
}
|
|
82
|
-
exports.extractPureURI = extractPureURI;
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hlbHBlci91cmwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7R0FHRzs7O0FBRUg7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQUNILFNBQWdCLGlCQUFpQixDQUFDLEdBQVc7SUFDM0MsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztBQUM5RCxDQUFDO0FBRkQsOENBRUM7QUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0JHO0FBQ0gsU0FBZ0IsZUFBZSxDQUFDLEdBQVc7SUFDekMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7QUFDMUMsQ0FBQztBQUZELDBDQUVDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdCRztBQUNILFNBQWdCLGNBQWMsQ0FBQyxJQUFZO0lBQ3pDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUMvQixDQUFDO0FBRkQsd0NBRUMifQ==
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,81 +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
|
-
/*
|
|
7
|
-
* This program is under the terms of the GNU Affero General Public License version 3
|
|
8
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
9
|
-
*/
|
|
10
|
-
const ava_1 = __importDefault(require("ava"));
|
|
11
|
-
const url_1 = require("./url");
|
|
12
|
-
(0, ava_1.default)('removeEndingSlash should remove ending slash', (t) => {
|
|
13
|
-
t.is((0, url_1.removeEndingSlash)('foo/'), 'foo');
|
|
14
|
-
});
|
|
15
|
-
(0, ava_1.default)('removeEndingSlash should do nothing for empty string', (t) => {
|
|
16
|
-
t.is((0, url_1.removeEndingSlash)(''), '');
|
|
17
|
-
});
|
|
18
|
-
(0, ava_1.default)('removeEndingSlash should return empty string from alone slash', (t) => {
|
|
19
|
-
t.is((0, url_1.removeEndingSlash)('/'), '');
|
|
20
|
-
});
|
|
21
|
-
(0, ava_1.default)('removeEndingSlash should do nothing for string without slash', (t) => {
|
|
22
|
-
t.is((0, url_1.removeEndingSlash)('text-without-slash'), 'text-without-slash');
|
|
23
|
-
});
|
|
24
|
-
(0, ava_1.default)('removeEndingSlash should remove last slash of slashes', (t) => {
|
|
25
|
-
t.is((0, url_1.removeEndingSlash)('/////////'), '////////');
|
|
26
|
-
});
|
|
27
|
-
/*
|
|
28
|
-
test('should throw error', (t) => {
|
|
29
|
-
[null, undefined].forEach((value) => {
|
|
30
|
-
t.throws(removeEndingSlash(value), '');
|
|
31
|
-
});
|
|
32
|
-
});
|
|
33
|
-
*/
|
|
34
|
-
(0, ava_1.default)('addLeadingSlash should do nothing is leading slash is already present', (t) => {
|
|
35
|
-
t.is((0, url_1.addLeadingSlash)('foo'), '/foo');
|
|
36
|
-
});
|
|
37
|
-
(0, ava_1.default)('addLeadingSlash should add leading slash from empty string', (t) => {
|
|
38
|
-
t.is((0, url_1.addLeadingSlash)(''), '/');
|
|
39
|
-
});
|
|
40
|
-
(0, ava_1.default)('addLeadingSlash should add leading slash', (t) => {
|
|
41
|
-
t.is((0, url_1.addLeadingSlash)('text-without-slash'), '/text-without-slash');
|
|
42
|
-
});
|
|
43
|
-
(0, ava_1.default)('addLeadingSlash should add leading slash of slashes', (t) => {
|
|
44
|
-
t.is((0, url_1.addLeadingSlash)('/////////'), '/////////');
|
|
45
|
-
});
|
|
46
|
-
(0, ava_1.default)('addLeadingSlash should do nothing from alone slash', (t) => {
|
|
47
|
-
t.is((0, url_1.addLeadingSlash)('/'), '/');
|
|
48
|
-
});
|
|
49
|
-
/*
|
|
50
|
-
test('should throw error', (t) => {
|
|
51
|
-
[null, undefined].forEach((value) => {
|
|
52
|
-
t.throws(addLeadingSlash(value), '');
|
|
53
|
-
});
|
|
54
|
-
});
|
|
55
|
-
*/
|
|
56
|
-
(0, ava_1.default)('extractPureURI should extract URI from URL with query', (t) => {
|
|
57
|
-
t.is((0, url_1.extractPureURI)('www.foo.com/api/?=bar'), 'www.foo.com/api/');
|
|
58
|
-
});
|
|
59
|
-
(0, ava_1.default)('extractPureURI should extract URI from URL with fragment', (t) => {
|
|
60
|
-
t.is((0, url_1.extractPureURI)('www.foo.com/api/#userInfos'), 'www.foo.com/api/');
|
|
61
|
-
});
|
|
62
|
-
(0, ava_1.default)('extractPureURI should do nothing from empty string', (t) => {
|
|
63
|
-
t.is((0, url_1.extractPureURI)(''), '');
|
|
64
|
-
});
|
|
65
|
-
(0, ava_1.default)('extractPureURI should do nothing from standalone slash', (t) => {
|
|
66
|
-
t.is((0, url_1.extractPureURI)('/'), '/');
|
|
67
|
-
});
|
|
68
|
-
(0, ava_1.default)('extractPureURI should do nothing from simple text', (t) => {
|
|
69
|
-
t.is((0, url_1.extractPureURI)('text-without-slash'), 'text-without-slash');
|
|
70
|
-
});
|
|
71
|
-
(0, ava_1.default)('extractPureURI should do nothing from slashes', (t) => {
|
|
72
|
-
t.is((0, url_1.extractPureURI)('/////////'), '/////////');
|
|
73
|
-
});
|
|
74
|
-
/*
|
|
75
|
-
test('should throw error', (t) => {
|
|
76
|
-
[null, undefined].forEach((value) => {
|
|
77
|
-
t.throws(extractPureURI(value), '');
|
|
78
|
-
});
|
|
79
|
-
});
|
|
80
|
-
*/
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLnNwZWMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaGVscGVyL3VybC5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUE7OztHQUdHO0FBQ0gsOENBQXVCO0FBRXZCLCtCQUEyRTtBQUUzRSxJQUFBLGFBQUksRUFBQyw4Q0FBOEMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQ3pELENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBQSx1QkFBaUIsRUFBQyxNQUFNLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUN6QyxDQUFDLENBQUMsQ0FBQztBQUNILElBQUEsYUFBSSxFQUFDLHNEQUFzRCxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDakUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFBLHVCQUFpQixFQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ2xDLENBQUMsQ0FBQyxDQUFDO0FBQ0gsSUFBQSxhQUFJLEVBQUMsK0RBQStELEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtJQUMxRSxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUEsdUJBQWlCLEVBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDbkMsQ0FBQyxDQUFDLENBQUM7QUFDSCxJQUFBLGFBQUksRUFBQyw4REFBOEQsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQ3pFLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBQSx1QkFBaUIsRUFBQyxvQkFBb0IsQ0FBQyxFQUFFLG9CQUFvQixDQUFDLENBQUM7QUFDdEUsQ0FBQyxDQUFDLENBQUM7QUFDSCxJQUFBLGFBQUksRUFBQyx1REFBdUQsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQ2xFLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBQSx1QkFBaUIsRUFBQyxXQUFXLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztBQUNuRCxDQUFDLENBQUMsQ0FBQztBQUVI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
|
package/build/main/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './helper/url';
|
package/build/main/index.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./helper/url"), exports);
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUE2QiJ9
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Simple helper method that remove an ending slash `/` if present.
|
|
3
|
-
*
|
|
4
|
-
* ### Example (es module)
|
|
5
|
-
* ```js
|
|
6
|
-
* import { removeEndingSlash } from '@helpers4/url'
|
|
7
|
-
* console.log(removeEndingSlash('https://www.google.com/'))
|
|
8
|
-
* // => 'https://www.google.com'
|
|
9
|
-
* ```
|
|
10
|
-
*
|
|
11
|
-
* ### Example (commonjs)
|
|
12
|
-
* ```js
|
|
13
|
-
* var removeEndingSlash = require('@helpers4/url').removeEndingSlash;
|
|
14
|
-
* console.log(removeEndingSlash('https://www.google.com/'))
|
|
15
|
-
* // => 'https://www.google.com'
|
|
16
|
-
* ```
|
|
17
|
-
*
|
|
18
|
-
* @param url a valid URL
|
|
19
|
-
*/
|
|
20
|
-
export declare function removeEndingSlash(url: string): string;
|
|
21
|
-
/**
|
|
22
|
-
* Simple helper method that add a leading slash `/` if not yet present.
|
|
23
|
-
*
|
|
24
|
-
* ### Example (es module)
|
|
25
|
-
* ```js
|
|
26
|
-
* import { addLeadingSlash } from '@helpers4/url'
|
|
27
|
-
* console.log(addLeadingSlash('/your/path/with/leading/slash'))
|
|
28
|
-
* // => 'your/path/with/leading/slash'
|
|
29
|
-
* ```
|
|
30
|
-
*
|
|
31
|
-
* ### Example (commonjs)
|
|
32
|
-
* ```js
|
|
33
|
-
* var addLeadingSlash = require('@helpers4/url').addLeadingSlash;
|
|
34
|
-
* console.log(addLeadingSlash('/your/path/with/leading/slash'))
|
|
35
|
-
* // => 'your/path/with/leading/slash'
|
|
36
|
-
* ```
|
|
37
|
-
*
|
|
38
|
-
* @param url a valid URL
|
|
39
|
-
*/
|
|
40
|
-
export declare function addLeadingSlash(url: string): string;
|
|
41
|
-
/**
|
|
42
|
-
* Extract only the URI from a path with optional query and fragments.
|
|
43
|
-
*
|
|
44
|
-
* For example, all these parameters will returns `/path`:
|
|
45
|
-
* - `/path`
|
|
46
|
-
* - `/path?query=thing`
|
|
47
|
-
* - `/path#fragment`
|
|
48
|
-
* - `/path?query=thing#fragment`
|
|
49
|
-
*
|
|
50
|
-
* ### Example (es module)
|
|
51
|
-
* ```js
|
|
52
|
-
* import { extractPureURI } from '@helpers4/url'
|
|
53
|
-
* console.log(extractPureURI('https://www.google.com/?q=search'))
|
|
54
|
-
* // => 'https://www.google.com/'
|
|
55
|
-
* ```
|
|
56
|
-
*
|
|
57
|
-
* ### Example (commonjs)
|
|
58
|
-
* ```js
|
|
59
|
-
* var extractPureURI = require('@helpers4/url').extractPureURI;
|
|
60
|
-
* console.log(extractPureURI('https://www.google.com/?q=search'))
|
|
61
|
-
* // => 'https://www.google.com/'
|
|
62
|
-
* ```
|
|
63
|
-
*
|
|
64
|
-
* @param path a complete path without server part.
|
|
65
|
-
*/
|
|
66
|
-
export declare function extractPureURI(path: string): string;
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* This program is under the terms of the GNU Affero General Public License version 3
|
|
3
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Simple helper method that remove an ending slash `/` if present.
|
|
7
|
-
*
|
|
8
|
-
* ### Example (es module)
|
|
9
|
-
* ```js
|
|
10
|
-
* import { removeEndingSlash } from '@helpers4/url'
|
|
11
|
-
* console.log(removeEndingSlash('https://www.google.com/'))
|
|
12
|
-
* // => 'https://www.google.com'
|
|
13
|
-
* ```
|
|
14
|
-
*
|
|
15
|
-
* ### Example (commonjs)
|
|
16
|
-
* ```js
|
|
17
|
-
* var removeEndingSlash = require('@helpers4/url').removeEndingSlash;
|
|
18
|
-
* console.log(removeEndingSlash('https://www.google.com/'))
|
|
19
|
-
* // => 'https://www.google.com'
|
|
20
|
-
* ```
|
|
21
|
-
*
|
|
22
|
-
* @param url a valid URL
|
|
23
|
-
*/
|
|
24
|
-
export function removeEndingSlash(url) {
|
|
25
|
-
return url[url.length - 1] === '/' ? url.slice(0, -1) : url;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Simple helper method that add a leading slash `/` if not yet present.
|
|
29
|
-
*
|
|
30
|
-
* ### Example (es module)
|
|
31
|
-
* ```js
|
|
32
|
-
* import { addLeadingSlash } from '@helpers4/url'
|
|
33
|
-
* console.log(addLeadingSlash('/your/path/with/leading/slash'))
|
|
34
|
-
* // => 'your/path/with/leading/slash'
|
|
35
|
-
* ```
|
|
36
|
-
*
|
|
37
|
-
* ### Example (commonjs)
|
|
38
|
-
* ```js
|
|
39
|
-
* var addLeadingSlash = require('@helpers4/url').addLeadingSlash;
|
|
40
|
-
* console.log(addLeadingSlash('/your/path/with/leading/slash'))
|
|
41
|
-
* // => 'your/path/with/leading/slash'
|
|
42
|
-
* ```
|
|
43
|
-
*
|
|
44
|
-
* @param url a valid URL
|
|
45
|
-
*/
|
|
46
|
-
export function addLeadingSlash(url) {
|
|
47
|
-
return url[0] === '/' ? url : '/' + url;
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Extract only the URI from a path with optional query and fragments.
|
|
51
|
-
*
|
|
52
|
-
* For example, all these parameters will returns `/path`:
|
|
53
|
-
* - `/path`
|
|
54
|
-
* - `/path?query=thing`
|
|
55
|
-
* - `/path#fragment`
|
|
56
|
-
* - `/path?query=thing#fragment`
|
|
57
|
-
*
|
|
58
|
-
* ### Example (es module)
|
|
59
|
-
* ```js
|
|
60
|
-
* import { extractPureURI } from '@helpers4/url'
|
|
61
|
-
* console.log(extractPureURI('https://www.google.com/?q=search'))
|
|
62
|
-
* // => 'https://www.google.com/'
|
|
63
|
-
* ```
|
|
64
|
-
*
|
|
65
|
-
* ### Example (commonjs)
|
|
66
|
-
* ```js
|
|
67
|
-
* var extractPureURI = require('@helpers4/url').extractPureURI;
|
|
68
|
-
* console.log(extractPureURI('https://www.google.com/?q=search'))
|
|
69
|
-
* // => 'https://www.google.com/'
|
|
70
|
-
* ```
|
|
71
|
-
*
|
|
72
|
-
* @param path a complete path without server part.
|
|
73
|
-
*/
|
|
74
|
-
export function extractPureURI(path) {
|
|
75
|
-
return path.split(/[?#]/)[0];
|
|
76
|
-
}
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hlbHBlci91cmwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUg7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxHQUFXO0lBQzNDLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7QUFDOUQsQ0FBQztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQkc7QUFDSCxNQUFNLFVBQVUsZUFBZSxDQUFDLEdBQVc7SUFDekMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7QUFDMUMsQ0FBQztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3Qkc7QUFDSCxNQUFNLFVBQVUsY0FBYyxDQUFDLElBQVk7SUFDekMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQy9CLENBQUMifQ==
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* This program is under the terms of the GNU Affero General Public License version 3
|
|
3
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
4
|
-
*/
|
|
5
|
-
import test from 'ava';
|
|
6
|
-
import { addLeadingSlash, extractPureURI, removeEndingSlash } from './url';
|
|
7
|
-
test('removeEndingSlash should remove ending slash', (t) => {
|
|
8
|
-
t.is(removeEndingSlash('foo/'), 'foo');
|
|
9
|
-
});
|
|
10
|
-
test('removeEndingSlash should do nothing for empty string', (t) => {
|
|
11
|
-
t.is(removeEndingSlash(''), '');
|
|
12
|
-
});
|
|
13
|
-
test('removeEndingSlash should return empty string from alone slash', (t) => {
|
|
14
|
-
t.is(removeEndingSlash('/'), '');
|
|
15
|
-
});
|
|
16
|
-
test('removeEndingSlash should do nothing for string without slash', (t) => {
|
|
17
|
-
t.is(removeEndingSlash('text-without-slash'), 'text-without-slash');
|
|
18
|
-
});
|
|
19
|
-
test('removeEndingSlash should remove last slash of slashes', (t) => {
|
|
20
|
-
t.is(removeEndingSlash('/////////'), '////////');
|
|
21
|
-
});
|
|
22
|
-
/*
|
|
23
|
-
test('should throw error', (t) => {
|
|
24
|
-
[null, undefined].forEach((value) => {
|
|
25
|
-
t.throws(removeEndingSlash(value), '');
|
|
26
|
-
});
|
|
27
|
-
});
|
|
28
|
-
*/
|
|
29
|
-
test('addLeadingSlash should do nothing is leading slash is already present', (t) => {
|
|
30
|
-
t.is(addLeadingSlash('foo'), '/foo');
|
|
31
|
-
});
|
|
32
|
-
test('addLeadingSlash should add leading slash from empty string', (t) => {
|
|
33
|
-
t.is(addLeadingSlash(''), '/');
|
|
34
|
-
});
|
|
35
|
-
test('addLeadingSlash should add leading slash', (t) => {
|
|
36
|
-
t.is(addLeadingSlash('text-without-slash'), '/text-without-slash');
|
|
37
|
-
});
|
|
38
|
-
test('addLeadingSlash should add leading slash of slashes', (t) => {
|
|
39
|
-
t.is(addLeadingSlash('/////////'), '/////////');
|
|
40
|
-
});
|
|
41
|
-
test('addLeadingSlash should do nothing from alone slash', (t) => {
|
|
42
|
-
t.is(addLeadingSlash('/'), '/');
|
|
43
|
-
});
|
|
44
|
-
/*
|
|
45
|
-
test('should throw error', (t) => {
|
|
46
|
-
[null, undefined].forEach((value) => {
|
|
47
|
-
t.throws(addLeadingSlash(value), '');
|
|
48
|
-
});
|
|
49
|
-
});
|
|
50
|
-
*/
|
|
51
|
-
test('extractPureURI should extract URI from URL with query', (t) => {
|
|
52
|
-
t.is(extractPureURI('www.foo.com/api/?=bar'), 'www.foo.com/api/');
|
|
53
|
-
});
|
|
54
|
-
test('extractPureURI should extract URI from URL with fragment', (t) => {
|
|
55
|
-
t.is(extractPureURI('www.foo.com/api/#userInfos'), 'www.foo.com/api/');
|
|
56
|
-
});
|
|
57
|
-
test('extractPureURI should do nothing from empty string', (t) => {
|
|
58
|
-
t.is(extractPureURI(''), '');
|
|
59
|
-
});
|
|
60
|
-
test('extractPureURI should do nothing from standalone slash', (t) => {
|
|
61
|
-
t.is(extractPureURI('/'), '/');
|
|
62
|
-
});
|
|
63
|
-
test('extractPureURI should do nothing from simple text', (t) => {
|
|
64
|
-
t.is(extractPureURI('text-without-slash'), 'text-without-slash');
|
|
65
|
-
});
|
|
66
|
-
test('extractPureURI should do nothing from slashes', (t) => {
|
|
67
|
-
t.is(extractPureURI('/////////'), '/////////');
|
|
68
|
-
});
|
|
69
|
-
/*
|
|
70
|
-
test('should throw error', (t) => {
|
|
71
|
-
[null, undefined].forEach((value) => {
|
|
72
|
-
t.throws(extractPureURI(value), '');
|
|
73
|
-
});
|
|
74
|
-
});
|
|
75
|
-
*/
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLnNwZWMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaGVscGVyL3VybC5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUNILE9BQU8sSUFBSSxNQUFNLEtBQUssQ0FBQztBQUV2QixPQUFPLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUUzRSxJQUFJLENBQUMsOENBQThDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtJQUN6RCxDQUFDLENBQUMsRUFBRSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQ3pDLENBQUMsQ0FBQyxDQUFDO0FBQ0gsSUFBSSxDQUFDLHNEQUFzRCxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDakUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUNsQyxDQUFDLENBQUMsQ0FBQztBQUNILElBQUksQ0FBQywrREFBK0QsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQzFFLENBQUMsQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDbkMsQ0FBQyxDQUFDLENBQUM7QUFDSCxJQUFJLENBQUMsOERBQThELEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtJQUN6RSxDQUFDLENBQUMsRUFBRSxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztBQUN0RSxDQUFDLENBQUMsQ0FBQztBQUNILElBQUksQ0FBQyx1REFBdUQsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQ2xFLENBQUMsQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUM7QUFDbkQsQ0FBQyxD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
|
package/build/module/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './helper/url';
|
package/build/module/index.js
DELETED