Thanks to visit codestin.com
Credit goes to github.com

Skip to content
This repository was archived by the owner on Jun 15, 2025. It is now read-only.

Commit b15b9fb

Browse files
committed
Add usePath to simpleHelper
1 parent d216585 commit b15b9fb

File tree

4 files changed

+22
-7
lines changed

4 files changed

+22
-7
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
build
22
node_modules
3-
package-lock.json
3+
package-lock.json

README.md

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,19 +46,25 @@ Per facilitare la scrittura delle regex di riconoscimento sono disponibili gli _
4646
### simpleHelper
4747
Riconosce semplici path identificati da una stringa iniziale statica.
4848
49-
Il _builder_ accetta un parametro:
49+
Il _builder_ accetta due parametri:
5050
- _base_: stringa iniziale dell'URI
51+
- _usePath_ : indica alla regex se riconoscere come gruppo la stringa che segue _base_
5152

5253
La regex crea un gruppo:
5354

54-
- 1: (opzionale) contiene il path
55+
- 1: (opzionale) contiene il path se _usePath_ è _true_
5556

56-
Ad esempio invocando l'helper `simpleHelper("manuale-servizi/manuale-servizi-v1.0")` otteniamo una regex che restituirà i seguenti valori:
57+
Ad esempio invocando l'helper `simpleHelper("/path_molto_esteso/sotto-path/path_finale")` otteniamo una regex che restituirà i seguenti valori:
5758
5859
| URI | gruppo 1 |
5960
| --- | ------- |
60-
| /manuale-servizi/manuale-servizi-v1.0/changelog | /changelog
61+
| /path_molto_esteso/sotto_path/path_finale | /path_finale
62+
63+
Mentre se invochiamo lo stesso helper `simpleHelper("/path_molto_esteso/sotto-path/path_finale", false)` otteniamo
6164
65+
| URI | gruppo 1 |
66+
| --- | ------- |
67+
| /path_molto_esteso/sotto_path/path_finale | _null_
6268
6369
### versionedHelper
6470
Riconosce path in cui sono presenti informazioni di versione, come ad es. in `/saci/saci-1.2.3`.

spec/rewriter.spec.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,8 @@ describe('IO rules', () => {
112112
it('Should intercept io-guida-tecnica resources that must be redirected', () => {
113113
expect(handler(buildRequest("/io-guida-tecnica"))).toEqual(buildResponse( "https://developer.pagopa.it/app-io/guides/io-guida-tecnica"));
114114
expect(handler(buildRequest("/io-guida-tecnica/changelog"))).toEqual(buildResponse( "https://developer.pagopa.it/app-io/guides/io-guida-tecnica/changelog"));
115+
expect(handler(buildRequest("/io-guida-tecnica/v5.2-preview"))).toEqual(buildResponse( "https://developer.pagopa.it/app-io/guides"));
116+
expect(handler(buildRequest("/io-guida-tecnica/v5.2-preview/changelog"))).toEqual(buildResponse( "https://developer.pagopa.it/app-io/guides"));
115117
expect(handler(buildRequest("/io-guida-tecnica/v5.0"))).toEqual(buildResponse( "https://developer.pagopa.it/app-io/guides/io-guida-tecnica/v5.0"));
116118
expect(handler(buildRequest("/io-guida-tecnica/v5.0/changelog"))).toEqual(buildResponse( "https://developer.pagopa.it/app-io/guides/io-guida-tecnica/v5.0/changelog"));
117119
expect(handler(buildRequest("/io-guida-tecnica/v2.4/changelog"))).toEqual(buildResponse( "https://developer.pagopa.it/app-io/guides/io-guida-tecnica/v2.4/changelog"));

src/rewriter.js

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,12 @@ var stringToRegex = function(strToRegex) {
99
return strToRegex.replaceAll("/", "\\/").replaceAll(".", "\\.")
1010
}
1111

12-
var simpleHelper = function(base) {
13-
var stringRegex = stringToRegex(base) + "(.*)";
12+
var simpleHelper = function(base, usePath) {
13+
var stringRegex = stringToRegex(base);
14+
if (usePath === undefined) {
15+
stringRegex += "(.*)";
16+
}
17+
1418
var regex = new RegExp(stringRegex);
1519
regex._helper = "simpleHelper";
1620
return regex;
@@ -28,6 +32,9 @@ var versionedHelper = function(base, versionPrefix) {
2832
};
2933

3034
var regexPatterns = [
35+
{
36+
regex: simpleHelper("/io-guida-tecnica/v5.2-preview", false), redirectTo: "/app-io/guides"
37+
},
3138
{
3239
regex: versionedHelper("/io-guida-tecnica/io-guida-tecnica-2.3"), redirectTo: "/app-io/guides/io-guida-tecnica/v2.3"
3340
},

0 commit comments

Comments
 (0)