string-le 0.1.0

Extract every string value from a codebase so a person can read them
{
	"documents": [
		{
			"name": "strings.json as json",
			"file": "strings.json",
			"fileType": "json",
			"options": {},
			"expected": [
				"Welcome Home",
				"https://example.com/path?query=1",
				"usr_8f3k2j4h5g6",
				"line one\nline two",
				"trimmed value",
				"Nested message",
				"first item",
				"second item"
			]
		},
		{
			"name": "strings.yaml as yaml",
			"file": "strings.yaml",
			"fileType": "yaml",
			"options": {},
			"expected": [
				"Unquoted plain scalar",
				"Double quoted value",
				"Single quoted value",
				"plain item",
				"quoted item",
				"Block scalar line one\nBlock scalar line two",
				"Folded scalar text",
				"inline quoted",
				"bare"
			]
		},
		{
			"name": "strings.yaml as yml",
			"file": "strings.yaml",
			"fileType": "yml",
			"options": {},
			"expected": [
				"Unquoted plain scalar",
				"Double quoted value",
				"Single quoted value",
				"plain item",
				"quoted item",
				"Block scalar line one\nBlock scalar line two",
				"Folded scalar text",
				"inline quoted",
				"bare"
			]
		},
		{
			"name": "strings.csv as csv",
			"file": "strings.csv",
			"fileType": "csv",
			"options": {},
			"expected": [
				"name",
				"message",
				"count",
				"Alice",
				"Hello, world",
				"1",
				"Bob",
				"She said \"hi\"",
				"2",
				"empty first cell",
				"3",
				"Dave",
				"4",
				"Eve",
				"plain text",
				"5"
			]
		},
		{
			"name": "strings.csv as csv {\"csvHasHeader\":true}",
			"file": "strings.csv",
			"fileType": "csv",
			"options": {
				"csvHasHeader": true
			},
			"expected": [
				"Alice",
				"Hello, world",
				"1",
				"Bob",
				"She said \"hi\"",
				"2",
				"empty first cell",
				"3",
				"Dave",
				"4",
				"Eve",
				"plain text",
				"5"
			]
		},
		{
			"name": "strings.csv as csv {\"csvHasHeader\":true,\"csvColumnIndex\":1}",
			"file": "strings.csv",
			"fileType": "csv",
			"options": {
				"csvHasHeader": true,
				"csvColumnIndex": 1
			},
			"expected": [
				"Hello, world",
				"She said \"hi\"",
				"empty first cell",
				"plain text"
			]
		},
		{
			"name": "strings.toml as toml",
			"file": "strings.toml",
			"fileType": "toml",
			"options": {},
			"expected": [
				"TOML Example",
				"literal string",
				"Tom Preston-Werner",
				"Multi-line\nbasic string",
				"alpha",
				"beta",
				"value with # hash"
			]
		},
		{
			"name": "strings.ini as ini",
			"file": "strings.ini",
			"fileType": "ini",
			"options": {},
			"expected": [
				"John Doe",
				"Quoted Value",
				"C:\\Users\\test",
				"plain text value",
				"single quoted greeting",
				"8080"
			]
		},
		{
			"name": "strings.env as env",
			"file": "strings.env",
			"fileType": "env",
			"options": {},
			"expected": [
				"https://api.example.com",
				"quoted value",
				"single value",
				"value",
				"value # not a comment",
				"padded value",
				"12345"
			]
		},
		{
			"name": "strings.txt as fallback",
			"file": "strings.txt",
			"fileType": "fallback",
			"options": {},
			"expected": [
				"double quoted",
				"single quoted",
				"backtick quoted",
				"escaped \\\"inner\\\" quote",
				"spaces"
			]
		},
		{
			"name": "messages.ts as fallback",
			"file": "messages.ts",
			"fileType": "fallback",
			"options": {},
			"expected": [
				"Delete this permanently?",
				"This can't be undone",
				"Removing ${count} items",
				"It\\'s fine",
				"quoted text"
			]
		},
		{
			"name": "escapes.json as json",
			"file": "escapes.json",
			"fileType": "json",
			"options": {},
			"expected": [
				"readable",
				"first\nsecond",
				"she said \"hi\"",
				"café",
				"readable"
			]
		}
	]
}