Skip to content

Commit 03e3402

Browse files
committed
Merge branch 'develop'
2 parents e0ac6fb + 9e301ce commit 03e3402

File tree

81 files changed

+928
-522
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

81 files changed

+928
-522
lines changed

.commitlintrc.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,24 @@ module.exports = {
33
rules: {
44
// Dependabot lines can get quite long unfortunately:
55
'body-max-line-length': () => [2, 'always', 200],
6+
'type-enum': [
7+
2,
8+
'always',
9+
[
10+
'build',
11+
'chore',
12+
'ci',
13+
'deps',
14+
'devdeps',
15+
'docs',
16+
'feat',
17+
'fix',
18+
'perf',
19+
'refactor',
20+
'revert',
21+
'style',
22+
'test',
23+
],
24+
],
625
},
726
}

.github/dependabot.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ updates:
1212
# - https://github.com/angular/angular/blob/master/CONTRIBUTING.md#-commit-message-format
1313
# - https://rathbun.dev/posts/semantic-release-dependabot/
1414
commit-message:
15-
prefix: 'build'
16-
prefix-development: 'build'
17-
include: 'scope'
15+
prefix: 'deps'
16+
prefix-development: 'devdeps'
1817
open-pull-requests-limit: 20

.meta/232.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
## Add a landing page for each converter
2+
3+
By [@recurser](https://github.com/recurser)
4+
5+
Created 2022-03-03 15:40

.releaserc.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@
2929
},
3030
{
3131
"hidden": false,
32-
"section": "Dependencies and Other Build Updates",
33-
"type": "build"
32+
"section": "Dependencies",
33+
"type": "deps"
3434
}
3535
]
3636
}

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ To add a new converter:
6060
4. Check that there is an `output` (under [src/lib/outputs](https://github.com/recurser/string-is/tree/develop/src/lib/outputs)) for the *to* format. An output should should export an `output` function which, given an input string (or possibly object, depending on the conversion taking place) and an `options` object, will convert the input into the desired output string.
6161
5. If you added a new `output` in step (4), make sure to export it in [src/lib/outputs/index.ts](https://github.com/recurser/string-is/tree/develop/src/lib/outputs/index.ts).
6262
6. Add a new `converter` (under [src/lib/converters](https://github.com/recurser/string-is/tree/develop/src/lib/converters)) for the `input` + `output` pair. A converter should export (a) an `operation` function which passes the input string and an `options` object to the appropriate `output`, and (b) an `outputId`, which defines which output is being used.
63-
7. If you added a new `converter` in step (6), make sure to export it in [src/lib/converters/index.ts](https://github.com/recurser/string-is/tree/develop/src/lib/converters/index.ts).
63+
7. If you added a new `converter` in step (6), make sure to export it in [src/lib/converters/index.ts](https://github.com/recurser/string-is/tree/develop/src/lib/converters/index.ts). Also make sure to add entries to [locales/en/pages-converter.json](https://github.com/recurser/string-is/blob/develop/locales/en/pages-converter.json)] so that the auto-generated landing page will have the correct heading, intro text and example.
6464
8. If you defined a new `outputId` in step (6), add a React output component (under [src/components/domain/convert/outputs](https://github.com/recurser/string-is/tree/develop/src/components/domain/convert/outputs)) to render the new kind of output. If you are re-using an existing kind of output (eg. converting to JSON or YAML) you can re-use an existing output component here.
6565
9. If you added a new React component in step (8), make sure to export it in [src/components/domain/convert/outputs](https://github.com/recurser/string-is/tree/develop/src/components/domain/convert/outputs/index.ts).
6666

i18n.js

Lines changed: 26 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,36 @@
11
const common = ['common', 'layout-footer', 'layout-header']
2+
const convert = [
3+
...common,
4+
'domain-convert-converterSelector',
5+
'domain-convert-inputForm',
6+
'domain-convert-outputForm',
7+
'domain-convert-outputs-cssOutput',
8+
'domain-convert-outputs-csvOutput',
9+
'domain-convert-outputs-datetimeOutput',
10+
'domain-convert-outputs-htmlOutput',
11+
'domain-convert-outputs-javaScriptOutput',
12+
'domain-convert-outputs-jsonOutput',
13+
'domain-convert-outputs-jwtOutput',
14+
'domain-convert-outputs-markdownOutput',
15+
'domain-convert-outputs-numberBaseOutput',
16+
'domain-convert-outputs-regexOutput',
17+
'domain-convert-outputs-shaOutput',
18+
'domain-convert-outputs-uuidOutput',
19+
'domain-convert-outputs-yamlOutput',
20+
'domain-convert-useAsInputButton',
21+
'forms-copyButton',
22+
'lib-converters-commands',
23+
'lib-converters-results',
24+
'pages-home',
25+
]
226

327
module.exports = {
428
defaultLocale: 'en',
529
locales: ['en'],
630
pages: {
7-
'/': [
8-
...common,
9-
'domain-convert-converterSelector',
10-
'domain-convert-inputForm',
11-
'domain-convert-outputForm',
12-
'domain-convert-outputs-cssOutput',
13-
'domain-convert-outputs-csvOutput',
14-
'domain-convert-outputs-datetimeOutput',
15-
'domain-convert-outputs-htmlOutput',
16-
'domain-convert-outputs-javaScriptOutput',
17-
'domain-convert-outputs-jsonOutput',
18-
'domain-convert-outputs-jwtOutput',
19-
'domain-convert-outputs-markdownOutput',
20-
'domain-convert-outputs-numberBaseOutput',
21-
'domain-convert-outputs-regexOutput',
22-
'domain-convert-outputs-shaOutput',
23-
'domain-convert-outputs-uuidOutput',
24-
'domain-convert-outputs-yamlOutput',
25-
'domain-convert-useAsInputButton',
26-
'forms-copyButton',
27-
'lib-converters-commands',
28-
'lib-converters-results',
29-
'pages-convert',
30-
],
31+
'/': [...convert],
3132
'/404': [...common, 'pages-errors-notFound'],
33+
'/[converter]': [...convert, 'pages-converter', 'pages-errors-notFound'],
3234
'/about': [...common, 'pages-about'],
3335
'/privacy': [...common, 'pages-privacy'],
3436
'/security': [...common, 'pages-security'],

locales/en/common.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,5 @@
11
{
2+
"meta_description": "A powerful, open-source, privacy-friendly online toolkit for developers, with a focus on security.",
3+
"page_title": "string.is",
4+
"page_title_suffix": " - a privacy-friendly toolkit for developers"
25
}
Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,35 @@
11
{
2-
"base64Decode": "Base64 decode",
3-
"base64Encode": "Base64 encode",
4-
"css": "CSS format",
5-
"csv": "CSV format",
6-
"csvToJson": "CSV to JSON",
7-
"csvToYaml": "CSV to YAML",
8-
"html": "HTML format",
9-
"javaScript": "JavaScript format",
10-
"json": "JSON format",
11-
"jsonToCsv": "JSON to CSV",
12-
"jsonToJavaScript": "JSON to JavaScript",
13-
"jsonToYaml": "JSON to YAML",
14-
"jwt": "JWT",
15-
"less": "LESS format",
16-
"lowerCase": "Lower case",
17-
"markdown": "Markdown format",
18-
"markdownToHtml": "Markdown to HTML",
19-
"md5": "MD5 hash",
20-
"numberBase": "Number base",
21-
"queryStringToJson": "Query string to JSON",
22-
"queryStringToYaml": "Query string to YAML",
23-
"regex": "Regular Expression",
24-
"ripemd": "RIPEMD-160 hash",
25-
"scss": "SCSS format",
26-
"sha": "SHA hash",
27-
"timestamp": "Timestamp",
28-
"upperCase": "Upper case",
29-
"urlDecode": "URL decode",
30-
"urlEncode": "URL encode",
31-
"uuid": "UUID Generator",
32-
"xml": "XML format",
33-
"yaml": "YAML format",
34-
"yamlToJson": "YAML to JSON"
2+
"base64Decoder": "Base64 decode",
3+
"base64Encoder": "Base64 encode",
4+
"cssFormatter": "CSS format",
5+
"csvFormatter": "CSV format",
6+
"csvToJsonConverter": "CSV to JSON",
7+
"csvToYamlConverter": "CSV to YAML",
8+
"htmlFormatter": "HTML format",
9+
"javaScriptFormatter": "JavaScript format",
10+
"jsonFormatter": "JSON format",
11+
"jsonToCsvConverter": "JSON to CSV",
12+
"jsonToJavaScriptConverter": "JSON to JavaScript",
13+
"jsonToYamlConverter": "JSON to YAML",
14+
"jwtDecoder": "JWT decode",
15+
"lessFormatter": "LESS format",
16+
"lowerCaseConverter": "Lower case",
17+
"markdownFormatter": "Markdown format",
18+
"markdownToHtmlConverter": "Markdown to HTML",
19+
"md5Encoder": "MD5 hash",
20+
"numberBaseConverter": "Number base",
21+
"queryStringToJsonConverter": "Query string to JSON",
22+
"queryStringToYamlConverter": "Query string to YAML",
23+
"regexDebugger": "Regular Expression",
24+
"ripemdEncoder": "RIPEMD-160 hash",
25+
"scssFormatter": "SCSS format",
26+
"shaEncoder": "SHA hash",
27+
"timestampConverter": "Timestamp",
28+
"upperCaseConverter": "Upper case",
29+
"urlDecoder": "URL decode",
30+
"urlEncoder": "URL encode",
31+
"uuidGenerator": "UUID Generator",
32+
"xmlFormatter": "XML format",
33+
"yamlFormatter": "YAML format",
34+
"yamlToJsonConverter": "YAML to JSON"
3535
}
Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,35 @@
11
{
2-
"base64Decode": "Base64 decoded",
3-
"base64Encode": "Base64 encoded",
4-
"css": "Formatted CSS",
5-
"csv": "Formatted CSV",
6-
"csvToJson": "Formatted JSON",
7-
"csvToYaml": "Formatted YAML",
8-
"html": "Formatted HTML",
9-
"javaScript": "Formatted JavaScript",
10-
"json": "Formatted JSON",
11-
"jsonToCsv": "Formatted CSV",
12-
"jsonToJavaScript": "Formatted JavaScript",
13-
"jsonToYaml": "Formatted YAML",
14-
"jwt": "Decoded JWT",
15-
"less": "Formatted LESS",
16-
"lowerCase": "To lower case",
17-
"markdown": "Formatted Markdown",
18-
"markdownToHtml": "Formatted HTML",
19-
"md5": "MD5 hash",
20-
"numberBase": "Number in base",
21-
"queryStringToJson": "Formatted JSON",
22-
"queryStringToYaml": "Formatted YAML",
23-
"regex": "Regular Expression matches",
24-
"ripemd": "RIPEMD-160 hash",
25-
"scss": "Formatted SCSS",
26-
"sha": "SHA hash",
27-
"timestamp": "Formatted time",
28-
"upperCase": "To upper case",
29-
"urlDecode": "URL decoded",
30-
"urlEncode": "URL encoded",
31-
"uuid": "Generated UUID",
32-
"xml": "Formatted XML",
33-
"yaml": "Formatted YAML",
34-
"yamlToJson": "Formatted JSON"
2+
"base64Decoder": "Base64 decoded",
3+
"base64Encoder": "Base64 encoded",
4+
"cssFormatter": "Formatted CSS",
5+
"csvFormatter": "Formatted CSV",
6+
"csvToJsonConverter": "Formatted JSON",
7+
"csvToYamlConverter": "Formatted YAML",
8+
"htmlFormatter": "Formatted HTML",
9+
"javaScriptFormatter": "Formatted JavaScript",
10+
"jsonFormatter": "Formatted JSON",
11+
"jsonToCsvConverter": "Formatted CSV",
12+
"jsonToJavaScriptConverter": "Formatted JavaScript",
13+
"jsonToYamlConverter": "Formatted YAML",
14+
"jwtDecoder": "Decoded JWT",
15+
"lessFormatter": "Formatted LESS",
16+
"lowerCaseConverter": "To lower case",
17+
"markdownFormatter": "Formatted Markdown",
18+
"markdownToHtmlConverter": "Formatted HTML",
19+
"md5Encoder": "MD5 hash",
20+
"numberBaseConverter": "Number in base",
21+
"queryStringToJsonConverter": "Formatted JSON",
22+
"queryStringToYamlConverter": "Formatted YAML",
23+
"regexDebugger": "Regular Expression matches",
24+
"ripemdEncoder": "RIPEMD-160 hash",
25+
"scssFormatter": "Formatted SCSS",
26+
"shaEncoder": "SHA hash",
27+
"timestampConverter": "Formatted time",
28+
"upperCaseConverter": "To upper case",
29+
"urlDecoder": "URL decoded",
30+
"urlEncoder": "URL encoded",
31+
"uuidGenerator": "Generated UUID",
32+
"xmlFormatter": "Formatted XML",
33+
"yamlFormatter": "Formatted YAML",
34+
"yamlToJsonConverter": "Formatted JSON"
3535
}

locales/en/pages-about.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,6 @@
1818
"para_built": "string.is was built to meet those goals, and provide a secure, trustworthy string conversion tool.",
1919
"para_contact_twitter": "Twitter: <0>@string__is</0> or <1>@davemetrics</1>",
2020
"para_goals": "I started to wonder what the ideal conversion tool might look like, and came up with some simple goals:",
21-
"para_intro": "string.is is an <0>open-source, privacy-friendly</0> toolkit for developers.",
21+
"para_intro": "string.is is an <0>open-source, privacy-friendly</0> toolkit for developers, with a focus on security.",
2222
"para_paranoid": "Like most developers, I need to perform the same string operations regularly, but I\u2019m paranoid about pasting sensitive data into third-party online tools."
2323
}

0 commit comments

Comments
 (0)